Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Changeset 7308

Show
Ignore:
Timestamp:
08/11/07 19:53:39 (1 year ago)
Author:
sam
Message:

prototype: Make sure Element#observe is always chainable.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • spinoffs/prototype/trunk/CHANGELOG

    r7307 r7308  
    11*SVN* 
    22 
    3 * Make sure Element#stopObserving is always chainable.  [sam] 
     3* Make sure Element#observe and Element#stopObserving are always chainable.  [sam] 
    44 
    55* Event.fire/Element#fire now returns the newly-fired event instead of the event's target element.  [sam] 
  • spinoffs/prototype/trunk/src/event.js

    r7307 r7308  
    171171       
    172172      var wrapper = createWrapper(id, eventName, handler); 
    173       if (!wrapper) return false
     173      if (!wrapper) return element
    174174       
    175175      if (element.addEventListener) { 
  • spinoffs/prototype/trunk/test/unit/event.html

    r7307 r7308  
    184184    }}, 
    185185     
    186     testStopObservingIsChainable: function() { with(this) { 
     186    testObserveAndStopObservingAreChainable: function() { with(this) { 
    187187      var span = $("span"), observer = function() { }; 
    188       span.observe("somethingHappened", observer); 
     188 
     189      assertEqual(span, span.observe("somethingHappened", observer)); 
    189190      assertEqual(span, span.stopObserving("somethingHappened", observer)); 
     191 
    190192      span.observe("somethingHappened", observer); 
    191193      assertEqual(span, span.stopObserving("somethingHappened")); 
     194 
    192195      span.observe("somethingHappened", observer); 
    193196      assertEqual(span, span.stopObserving()); 
    194197      assertEqual(span, span.stopObserving()); // assert it again, after there are no observers 
     198 
     199      span.observe("somethingHappened", observer); 
     200      assertEqual(span, span.observe("somethingHappened", observer)); // try to reuse the same observer 
     201      span.stopObserving(); 
    195202    }}, 
    196203