2.37. Version 3.4.3

2.37.1. General
2.37.2. IDE
2.37.3. Qt-specific
2.37.4. Java-specific
2.37.5. Web-specific
2.37.6. Tk-specific
2.37.7. Mac-specific (Cocoa/Carbon edition)
2.37.8. Source Builds

2.37.1. General

  • Added a --apply-mask mode to the convertp utility.

  • Added currentApplicationContext() function in all scripting languages. Will be used when recording in a multiple-application setting.

  • Fixed reading of .tsv (tab-separated values format) files that have empty fields.

  • Marked references to objects of an exited AUT as "dead" to prevent crashes on further access.

  • Fixed a Unicode problem if non-ASCII characters are used in symbolic object names.

  • Allow conversion of Tcl double values (or what the interpreter believes are doubles) to a string.

  • Added a fallback error message for findObject() to avoid crashes on Solaris.

  • Implemented .name and .caller properties on JavaScript function objects that allow assembling a better callstack for improved debugging. Also added a .lineNumber property to exception objects in addition to the .line property for compatibility to the Mozilla JavaScript engine.

  • Let the Python test.verify() function to use the standard Python truth value rules rather than restricting it to just int and long values.

  • Supress "different type" result details for [test compare] when not applicable.

  • Let Python's waitFor() gracefully handle expressions that return a non-integer value.

  • Changed the JavaScript print() output so that it writes to stdout (instead of stderr) and uses the UTF-8 encoding to display non-ASCII characters properly.

  • Fixed crashes that occurred as a result of syntax errors in some Python test scripts.

  • Fixed a Unicode problem in the test result output that can occur in rare circumstances.

  • Fixed a regression when waitForObjectItem() is called on object names that contain a space.

  • Fixed a slight oversight in the improved error reporting. The unmatched properties are now reset when an error is reported and hence don't pollute later error messages.

2.37.2. IDE

  • Made the "End recording" button work if testing with sub AUTs and there are sub AUTs running.

  • Fixed focus problems that occurred when saving a file.

  • Let the Perl variable watcher display the value of mixed string/int and string/double types. Hide reserved variables that are denoted by a leading caret.

  • Prevented the creation of test cases with empty names.

  • src/gui/objectmapeditor.cpp: Allow dots when editing hierarchical names in the objectmap editor.

2.37.3. Qt-specific

  • Instead of treating an access to the .text property of an invalid item view index as an invalid operation (that could cause a crash), an empty string is returned.

  • Fixed a crash caused by an access to an invalid iterator.

  • Avoid parse errors on Object Map name reuse if the map contains a mixture of multi-property and hierarchical names.

  • Fixed a possible source for crashes on 64-bit Windows systems.

  • Improved the detection of statically linked Qt applications.

  • Raise the AUT on playback on Mac OS X with Qt 4.4.

  • Fixed a Spy Unicode problem with Qt 4.

  • Avoid wrong menu activation when replaying menu actions with Qt 4.4 on Mac OS X.

  • Fixed the recording of the QResizeEvent sent at application startup.

2.37.4. Java-specific

  • Fixed the replaying of type("swing-object", "<Ctrl+X>").

  • Fixed the wrong "selection" property of TreeItemProxy. It was always false.

  • Don't record mouseClick() on glass panes if these events are dispatched in the application and trigger a mouse event in the content pane. Mouse clicks on components below a glass pane will be replayed by sending clicks to the glass pane.

  • Let the application context name property of sub-applications be the argv[0] system value rather than using "squish".

  • Stopped FigureCanvas only looking at IFigure and ignoring SWT widget children.

2.37.5. Web-specific

  • Fixed replaying text input on file input fields with Internet Explorer 6.

  • Fixed the recording of backslashes in file input fields with Internet Explorer.

  • Support isBrowserDialogOpen() for Mozilla on X11 systems like Linux.

  • Fixed a communication problem that could cause objects not being found when testing with Safari.

  • Fixed random crashes of the internal webhook tool when doing Safari testing.

  • Fixed the recording and playback of text input on input fields with type "search" (they are understood by Safari).

  • Support for Kiwi Matrix tables.

  • Fixed the handling of strings containing the character sequence 'HTTP'.

2.37.6. Tk-specific

  • Improved support for the Tk "scale" widget. Replaying scrollTo now uses real mouse events so custom bindings to mouse-press will also be triggered.

  • Fixed infinite recursion when dealing with the VTK KWWidget combobox control.

2.37.7. Mac-specific (Cocoa/Carbon edition)

  • Added support for Cocoa toolbars and toolbar items.

  • Fixed the object picker (and highlighter) for Carbon applications: sometimes, it did not manage to find the right objects under the cursor.

  • Fixed the problem that occurred in some Carbon applications when the application menu did not show up (e.g., in the Spy and during recording and playback).

  • Added support for HIDataBrowser. Please view with the wrapperexplorer to see which APIs are supported by the HIDataBrowser and HIDataBrowserCell wrapper classes.

  • Fixed the playback of menus which in some Carbon applications sometimes selected the wrong menu item.

  • Fixed the recording of menu events on Mac OS 10.5 (Leopard) for Carbon applications.

  • Mouse clicks are recorded after the Quit menu option is chosen so that actions on the modification alert can be recorded.

  • Allow picking of objects in a sheet in the Spy.

  • Fixed a race condition which caused random crashes on playback of waitForObject() on sheets (and may have been the cause of other crashes too).

2.37.8. Source Builds

  • Fixed building with Qt 4.5.

  • Fixed the 'Record and insert here' feature for when Squish is built without Tcl support.

  • Fixed the compilation problem in xml2reportgenerator.cpp which occurred when building squishrunner if JavaScript support was disabled.