| Version | Date | Description |
|---|---|---|
| 1.1 | CVS HEAD | |
| 1.0 | 07/10/2007 | |
| 0.6 | 07/02/2007 | |
| 0.5 | 28/02/2005 | |
| 0.4 | 20/10/2004 | |
| 0.3 | 28/07/2004 | |
| 0.2 | 30/04/2004 | |
| 0.2 | 26/04/2004 |
| Type | Changes | By |
|---|---|---|
| Updated to build with JDK 1.5 | joniles |
| Updated to use Jaxen 1.1.1 for XPath support | joniles |
| Updated to use latest Jacob 1.13 | joniles |
| Updated to use generics | joniles |
| Updated to change package to net.sf.jiffie | joniles |
| Updated to replace references to Tapster Rock with Packwood Software | joniles |
| Type | Changes | By |
|---|---|---|
| Added support for the form attribute on form elements. (Contributed by Joe Ferner). | joniles |
| Updated to implement the full set of events generated by Internet Explorer. Note that events marked as "obsolete" or "not yet implemented" in Microsoft's documentation are not implemented by Jiffie. | joniles |
| Added sample code to demonstrate a method for handling modal and modeless dialogs. | joniles |
| Added an accessor method for the frames property of an IHTMLDocument2. | joniles |
| Checkstyle 4.0 updates. | joniles |
| Updated to use Jacob 1.11.1 | joniles |
| Type | Changes | By |
|---|---|---|
| Implemented support for XPath queries against the Internet Explorer DOM (Contributed by Piran Montford). | joniles |
| Added support for IHTMLHtmlElement. | joniles |
| Updated to use Jacob version 1.8 from SourceForg e, and removed the full Jacob distribution from Jiffie. | joniles |
| Simplified the internal implementation of the InternetExplorer class by removing the use of ActiveXControl. | joniles |
| Made the InternetExplorer class a sub class of IDispatch, and as a result further simplified the implementation of this class. | joniles |
| Updated methods in the ElementContainer class to switch from Object as the return type to IDispatch, as we know that all objects returned by these methods will be subclasses of IDispatch. | joniles |
| Added an isReleased method to the Releaseable interface. This can be called to determine if a releaseable object has been released. | joniles |
| Implemented TrackingElementFactory, which can be used either to debug unreleased entities created by Jiffie, or as a Garbage Collector, which will release unreleased entities for you. | joniles |
| Implemented BlockingEventThread, which performs the same task as BlockingClickThread, but works with arbitrary events rather than mouse clicks. | joniles |
| Implemented IHTMLPopup and IHTMLStyle (Contributed by Justin Law). | joniles |
| Implemented write, writeln, get/setCookie, get/setDomain methods in IHTMLDocument2 (Contributed by Brian Wong). | joniles |
| Implemented IHTMLDocument2.getDocumentElement (Contributed by Matthias Marschall). | joniles |
| Implemented IHTMLTableCellElement.getCellIndex. | joniles |
| Updated to ensure that when element properties are retrieved (e.g. getParentElement) the elements are created using the correct element factory. | joniles |
| Renamed IHTMLTableCellElement to IHTMLTableCell and IHTMLTableR owElement to IHTMLTableRow for consistency with Microsoft's naming. | joniles |
| Implemented the JiffieUtility.executeScript method, which allows arbitrary JavaScript to be executed in the context of an IHTMLDocument (Contributed by Justin Law). | joniles |
| Rewrote the various readState methods so that rather than returning a mixture of int or String values, they all now return instances of the new ReadyState class, which provides an enumeration of the possible values that may be returned from these methods. | joniles |
| Implemented the JiffieTestCase class which provides the basis for Jiffie-based JUnit tests to be written (Contributed by Justin Law). | joniles |
| Rewrote JiffieTest to make it into a TestSuite, and to break up the original tests it contained into individual test classes for each Jiffie class. | joniles |
| Added support for IHTMLDocument2.execCommand (contributed by Brian Wong). | joniles |
| Implemented IHTMLCurrentStyle and IHTMLElement.getCurrentStyle() (contributed by David Carr). | joniles |
| Implemented getNodeName() and getNodeValue in IHTMLDOMNode (contributed by David Carr). | joniles |
| Implemented accessor/modifier methods for HWND, top, left, height and width properties in InternetExplorer (contributed by David Carr). | joniles |
| Updated jacob.dll to add Jacob patch #1105915 to address memory corruption and JVM crash problems. | joniles |
| Implemented JiffieUtility.setEventHandlingEnabled(), JiffieUtility.getEventHandlingEnabled, and InternetExplorer.enableEventHandling(). These methods allow event handling to be disabled by default for all new browser instances, then selectively re-enabled for browser instances which specifically need events. This improves Jiffie's performance and stability. Note that if you need to handle new windows opened by a browser when using Jiffie, you will need to enable event handling. By default event handling is enabled, ensuring that the default behaviour of Jiffie is not changed. | joniles |
| Refactored Jiffie event handling to make it possible to supply user defined event handlers. Two event handler implementations are now supplied, FullEventHandler (which is the default) and NewWindowEventHandler. This facility has been designed to allow Jiffie users to make event handling efficient for their particular applications by defining only the events they are interested in. This improves Jiffie's efficiency and stability. The NewWindowEventHandler is likely to be the most useful as it only receives NewWindow2 events from Internet Explorer. These are the events required to handle any new windows created by Internet Explorer. Use the following code to set the default event handler before creating a new InternetExplorer instance. JiffieUtility.setEventHandlerFactory(new NewWindowEventHandlerFactory()); | joniles |
| Updated IHTMLStyle to allow attributes to be set via specific named methods. | joniles |
| Updated to use Jacob version 1.9. | joniles |
| Type | Changes | By |
|---|---|---|
| Implemented major changes to the API to make handling HTMLElements more flexible. This change includes the removal of the get methods used to retrieve particular HTMLElement types. Please review the JUnit tests to see how these changes have affected the code. (Suggestions and contri butions by Piran Montford) | joniles |
| Modified a number of methods to embed common calls to waitWhileBusy and waitWhileIncomplete. The modified methods now take a boolean parameter to indicate what the method should do. Passing false retains the old behaviour, passing true means that the method will wait until the parent browser is not busy and (if applicable) the parent document is complete. (Suggested by Piran Montford) | joniles |
| Updated JiffieUtility class to allow the status polling rate and timeout to be configured. | joniles |
| Added support for IHTMLBodyElement. | joniles |
| Added support for IHTMLDivElement, IHTMLFrameBase2, IHTMLTableCellElement, and IHTMLTableRowElement (contributed by Mark Richter). | joniles |
| Implemented new window and navigation event handling and support for arbitrary window and navigation event listeners (contributed by Mark Richter) | joniles |
| Added item and tags methods to the ElementCollection class to emulate the behaviour of the IHTMLElementCollection methods of the same name. | joniles |
| Added the convenience methods getElementListByNameAndTag, getElementByTag and getElementByNameAndTag to the ElementContainer class. Updated getElementByName to return null if there are no elements with the requested name. | joniles |
| Modified BlockingClickThread to allow the caller to determine if the thread is still blocked. | joniles |
| Added a new sendKeys method to JiffieUtility to allow the caller to poll and repeatedly send keystrokes avoiding the situation where keystrokes sent to Internet Explorer arrive before the modal dialog they are being sent to is visible. | joniles |
| Added the use of a Rele aseable interface which is implemented by all classes for which the release method should be called when they are no longer required. (suggested by Piran Montford). | joniles |
| Updated the sendKeys method to throw an exception if focus could not be set to the requested window. | joniles |
| Type | Changes | By |
|---|---|---|
| Added support for IHTMLOptionElement (Contributed by Tim Langford) | joniles |
| Added support for IHTMLElement getOuterText, getTagName and getParentElement (Contributed by Darius Cooper) | joniles |
| Added support for IHTMLInput.getType and IHTMLOption.getSelected (Contributed by Darius Cooper) | joniles |
| Modified JiffieTest.elementTest to make it more portable between different versions of IE. (Contributed by Darius Cooper) | joniles |
| Updated to use Maven for documentation. | joniles |
| Type | Changes | By |
|---|---|---|
| Fixed a bug causing arrays of elements generated by the get < type > Array() to contain null elements. | joniles |
| Expanded the JUnit tests to illustrate how new windows are handled. | joniles |
| Expanded the JUnit tests to illustrate how radio buttons are handled. | joniles |
| Renamed some ElementCollection methods for consistency, particularly the getAll method is now getElements. | joniles |
| Implemented additional attributes and methods for IHTMLFormElement. | joniles |
| Added support for retrieval of collections of elements with the same name (e.g. radio buttons, checkboxes). | joniles |