|
YUI Library - Event - Release Notes
|
|
2.2.0
|
|
* YAHOO.util.KeyListener was moved from the container package into event.
|
|
* The Safari bug that made it so preventDefault would not work with click
|
and double-click listeners on anchor tags was resolved in version 2.0.4.
|
The workaround (using DOM0 events for these instead of the normal DOM2
|
events) is now only used for releases prior to 2.0.4.
|
|
* getListeners/purgeElement now work correctly with unload listeners
|
|
* When legacyEvents are used (Safari<2.0.4 click events), if there was an
|
existing DOM0 event that the utility replaced, it is executed along with
|
the listeners that were added with the utility.
|
|
* Restored Event.regCE for compatibility with a beta release of the library
|
that in use in an external API.
|
|
* unsubscribe in CustomEvent and EventProvider will remove all listeners
|
if the listener is omitted.
|
|
* Added unsubscribeAll to EventProvider
|
|
* Added Event.lastError which stores the most recent error object if
|
a browser-specific add/remove listener call throws an exception.
|
|
0.12.2
|
|
* Fixed a bug introduced in 0.12.1 release caused nested onAvailable
|
calls to fail.
|
|
0.12.1
|
|
* If an error is thrown during the browser-specific add/remove lister call,
|
addListener/removeListener will catch the error and return false.
|
|
* onAvailable array items are nulled out instead of deleted when completed to
|
get around an Opera issue introduced in a recent version of the browser.
|
|
0.12.0
|
|
* If the function argument is not provided to Event.removeListener, all
|
all listeners for the specified event type on the element will be removed.
|
|
* CustomEvent now has an optional parameter that defines the signature of
|
the listeners for this event. Two signatures are supported:
|
|
YAHOO.util.CustomEvent.LIST:
|
param1: event name
|
param2: array of arguments provided to fire()
|
param3: <optional> the custom object supplied to subscribe()
|
|
YAHOO.util.CustomEvent.FLAT:
|
param1: the first argument provided to fire()
|
param2: <optional> the custom object supplied to subscribe()
|
|
The new flat signature makes it possible to provide a better API
|
when using custom events, and it makes it possible to transparently
|
wrap DOM events.
|
|
* The parameters for overriding scope in both Event.addListener, and
|
CustomEvent.subscribe have been augmented. In addition to the
|
previous behavior where a true value would make the previous parameter
|
the execution scope, an object can be supplied instead. If an object
|
is provided, that object becomes the scope obj. This makes it possible
|
to pass a both a custom object and adjust the scope to a different object.
|
|
* Added EventProvider, which is a wrapper for CustomEvent that makes it
|
possible to subscribe to events by name, whether or not the event has
|
been created. This class was designed to be used with YAHOO.augment.
|
EventProvider custom events are created with the new FLAT listener
|
signature.
|
|
* CustomEvent subscribers can return false to stop the propagation of
|
the event.
|
|
* CustomEvents now have an onSubscribe custom event that can used to the
|
case where a subscriber subscribes to an one-time event that has already
|
happened. Also provides a way for the implementer to defer initialization
|
logic until after the first subscription.
|
|
* Event.getCharCode now always returns keyCode if charCode is not available.
|
|
* Added Event.onContentReady, which is similar to onAvailable, but it also
|
checks simblings to try to determine when the element's children are
|
available.
|
|
0.11.4
|
|
* Fixed a memory leak in IE6 that occurred when the utility was hosted in
|
an iframe.
|
|
* Fixed an issue with Safari click listeners when listeners were removed.
|
|
0.11.3
|
|
* The listener cache is now pruned when events are removed. This fixes
|
a performance issue when adding many listeners, removing them, and
|
adding them again repeatedly.
|
|
* Safari click listeners will work correctly if a bound element is removed
|
from the DOM and a new element with the same ID is added.
|
|
* Removed the code that automatically unsubscribed custom event listeners.
|
|
0.11.0
|
|
* Added Event.purgeElement which will remove all listeners added via
|
addListener from the supplied element. If an optional "type" parameter
|
is supplied, only events of that type will be removed. Optionally, the
|
purge can be performed recursively on the element's children as well.
|
|
* Added Event.getListeners which will return all listeners attached to
|
a given element.. either all listeners or listeners of a specific type.
|
|
* getTarget now automatically resolves text nodes. The optional parameter
|
for this feature is now deprecated.
|
|
* getRelatedTarget now resolves text nodes for the browsers that return the
|
text node rather than its host HTML element.
|
|
* CustomEvent now logs the custom event activity if the logger widget is available
|
|
0.10.0
|
|
* Added Safari dblclick to the list of legacy events.
|
|
* When multiple identical event handlers are defined, multiple calls
|
to removeListener can now remove all of them.
|
|
* removeListener works properly for unload events
|
|
* Legacy event bookkeeping is more efficient, improving the performance for
|
adding Safari click events.
|
|
* _unload() is more efficient, improving the page transition experience in
|
Safari in particular.
|
|
* addListener, removeListener now return false if the function argument is
|
not valid.
|
|
* Fixed an operator precedence issue in getCharCode.
|
|
* Added Event.getXY, which returns [Event.getPageX(e), Event.getPageY(e)]
|
|
* Added Event.onAvailable, which will execute the callback when the element
|
with the supplied id is found. Currently searches periodically until the
|
window load event or for up to 10 seconds after the onAvailable method
|
was executed.
|
|
* The lazy listener attachment process now will poll beyond the window load
|
event in order to better handle the case when a listener is defined
|
late in the page but before the element is in the dom.
|
|
* Fixed browser detection for Opera installations reporting as IE.
|
|
* It is now possible to remove and re-add legacy events (Safari click event).
|