Commit Graph

115 Commits

Author SHA1 Message Date
Tobie Langel
5d37d39988 Fix a the failing ClassCreate test case in IE. 2007-10-13 11:05:29 +00:00
Tobie Langel
d25b863c9a Complete rewrite of the Hash class. 2007-10-13 10:55:52 +00:00
Sam Stephenson
4607e29fa2 prototype: Element#wrap now returns the wrapper instead of the element being wrapped. 2007-10-11 06:11:26 +00:00
Sam Stephenson
115d3e456d prototype: Namespace all custom event names to avoid conflicts with native DOM events. 2007-10-11 06:00:45 +00:00
Sam Stephenson
c35598ca2b prototype: Clean up the new class API. 2007-10-11 05:02:07 +00:00
Sam Stephenson
4b1fb7e03a prototype: Date#toJSON now returns times in UTC for better compatibility with json.js. Closes #9332. 2007-10-08 21:14:24 +00:00
Thomas Fuchs
746a905ef4 Add tests for Object.extend and Object.clone. 2007-10-06 12:24:46 +00:00
Thomas Fuchs
cca235b1eb Prototype: Add a test for Form.Observer. 2007-10-03 17:58:33 +00:00
Sam Stephenson
6ed9095df9 prototype: Simplify Class.create by establishing a prototype chain when subclassing. Closes #9342. 2007-08-23 21:12:02 +00:00
Sam Stephenson
001b54865c prototype: Ensure that classes always have an initialize method. 2007-08-21 16:15:59 +00:00
Sam Stephenson
75b3f3c844 prototype: Change Abstract.TimedObserver to subclass PeriodicalExecuter and tweak its subclasses to use new inheritance functionality. TimedObserver can now be stopped the same way as PeriodicalExecuter. Closes #8589. 2007-08-18 23:04:28 +00:00
Sam Stephenson
b923d6dd52 prototype: Fix superclass method call breakage from [7337]. 2007-08-18 22:55:35 +00:00
Sam Stephenson
702d968841 prototype: Change Class.extend to allow for superclass method resolution and remove Class.inherit. Closes #9274. 2007-08-17 17:35:22 +00:00
Sam Stephenson
b2f884b4fa prototype: Event handlers are now bound to the observed element, not the event's target element. 2007-08-17 16:17:26 +00:00
Thomas Fuchs
aa1a7f5bf0 prototype: Define Node constants conditionally after checking for Node.ELEMENT_NODE presence. Add unit test to check the values of all constants. Closes #7625. 2007-08-17 11:20:56 +00:00
Thomas Fuchs
194fda0b6d prototype: Make sure Enumerable#include doesnt do type comparision. [Mislav Marohnić] 2007-08-17 11:06:07 +00:00
Sam Stephenson
11f25aa995 prototype: Make sure Element#observe is always chainable. 2007-08-11 19:53:39 +00:00
Sam Stephenson
d2974cfca3 prototype: Make sure Element#stopObserving is always chainable. 2007-08-11 19:07:21 +00:00
Sam Stephenson
14ea77ef39 prototype: Event.fire/Element#fire now returns the newly-fired event instead of the event's target element. 2007-08-11 18:46:02 +00:00
Thomas Fuchs
dbdeee63c2 Make IE position unit test work 2007-08-10 14:24:28 +00:00
Thomas Fuchs
5f76c255a1 Fix Element#positionedOffset and Element#getOffsetParent for static elements on IE. DOM unit tests now pass on IE. 2007-08-10 14:19:30 +00:00
Sam Stephenson
2fbb49001c prototype: Make sure event handlers and their wrappers are removed from the cache by Event.stopObserving. 2007-08-09 23:45:59 +00:00
Sam Stephenson
df71a6b54f prototype: Add Object.isString, Object.isNumber, and Object.isUndefined, and clean up the source to make use of Object.isXXX where possible. 2007-08-08 23:19:45 +00:00
Sam Stephenson
ae2ab03294 prototype: Add the document.viewport object for querying dimensions and scroll offsets of the browser viewport. 2007-08-08 20:42:46 +00:00
Sam Stephenson
c488384f90 prototype: Add support for brackets in quoted attribute value selectors. Closes #9157. 2007-08-07 20:33:53 +00:00
Sam Stephenson
30aa7a6532 prototype: Add RegExp.escape for escaping regular expression strings. Closes #9094. 2007-08-04 07:31:52 +00:00
Sam Stephenson
aa4602b459 prototype: Merge -r7242:HEAD from ../branches/1-6-0-events. Adds support for DOM-based custom events with Event.fire/Element.Methods.fire, cross-browser DOMContentLoaded support, extended and normalized event objects, and improvements to the observe and stopObserving APIs. 2007-08-04 07:20:45 +00:00
Sam Stephenson
52cf3f2550 prototype: Merge -r7016:HEAD from ../branches/ajax. Add Ajax.Response object which supports the following methods: responseJSON, headerJSON, getHeader, getAllHeaders and handles browser discrepancies in the other response methods. Add sanitizeJSON, evalJS and evalJSON to Ajax.Request. Closes #8122, #8006, #7295. 2007-08-04 04:40:22 +00:00
Sam Stephenson
281ac64876 prototype: Merge -r6792:HEAD from ../branches/inheritance/{src/base.js,test/base.html}. Robust inheritance support for Class.create. Closes #5459. 2007-08-04 04:03:51 +00:00
Sam Stephenson
90c9c69ff0 prototype: Add Function#argumentNames, which returns an ordered array of the function's named arguments. 2007-07-30 04:38:20 +00:00
Sam Stephenson
82bedcee84 prototype: Optimize Selector#match and Element#match for simple selectors. Closes #9082. 2007-07-24 20:49:55 +00:00
Sam Stephenson
c0735dba77 prototype: Make Element#wrap accept a second argument for setting attributes on the wrapper. Allow wrapping elements which are not part of the document. Closes #9071. 2007-07-24 19:08:55 +00:00
Sam Stephenson
44ef74813b prototype: Improvements for Element#replace, Element#update and Element#insert. Closes #7429, #9060. 2007-07-24 18:52:17 +00:00
Sam Stephenson
7b2ce66e88 prototype: Make Element#setStyle accept a string argument of CSS rules. Deprecate uncamelized style property names when setting styles using an object (for performance reasons). Closes #9059. 2007-07-24 18:14:36 +00:00
Sam Stephenson
c6f3daadaa prototype: Add Element#identify, which returns the element's ID if it exists, or sets and returns a unique, auto-generated ID (of the form 'anonymous_element_' + auto-incremented digit) otherwise. Use this when you need to ensure an element has an ID. Closes #9012. 2007-07-24 17:41:27 +00:00
Sam Stephenson
7e6481bcd7 prototype: Make Element#readAttribute work for cloned elements in IE. Closes #8481. 2007-07-24 17:31:23 +00:00
Sam Stephenson
ff45622e39 prototype: Template enhancements. Closes #8166. 2007-07-24 17:24:25 +00:00
Sam Stephenson
b59399bdd3 prototype: Extended grep semantics. The first argument to Enumerable#grep is now a filter (an object with a match() method) so you can now e.g. filter an array of DOM nodes by CSS selector. Closes #7596. 2007-07-24 16:47:12 +00:00
Sam Stephenson
38fa39af92 prototype: Make String#scan explicitly return a string. Closes #6350. 2007-07-24 16:30:19 +00:00
Thomas Fuchs
513042dd98 Add Array#intersect for set intersection. Returns a new array containing all items common to the array and the argument, with duplicates removed (clone of the Ruby & method). 2007-07-18 21:07:31 +00:00
Thomas Fuchs
cea24d6cc2 Prototype: Rename Element#getElementsBySelector to Element#select and add alias for Element#getElementsBySelector. Add Element#adjacent as a shortcut to selecting all adjacent nodes (and their children) that match a CSS selector. 2007-07-13 08:36:14 +00:00
Sam Stephenson
1c17b6381a prototype: Enhance the Enumerable and Array APIs to more closely match those of JavaScript 1.6 as implemented in Firefox 1.5. Closes #6650, #8409. 2007-07-09 18:55:58 +00:00
Thomas Fuchs
9e7efd5361 Prototype: merges from form branch. Closes #5031, #5902, #7595, #8401, #8483, #8767. [Mislav Marohnić, Tomas, Christophe Porteneuve, Jonathan Viney] 2007-06-27 10:38:54 +00:00
Sam Stephenson
f2d304b3ee prototype: Merge [7066] from branches/1-5-1-1 2007-06-19 23:31:41 +00:00
Sam Stephenson
d6bf5e40ce prototype: Make document.getElementsByClassName match a subset of the WHATWG Web Applications 1.0 specification which was adopted in Firefox 3 (http://www.whatwg.org/specs/web-apps/current-work/#getelementsbyclassname). It now supports multiple class names given as a whitespace-separated list in a string. Array argument is not supported. The method will only return the nodes that match all the class names. In browsers that implement the method natively it will not be overwritten. Closes #8401. 2007-06-19 20:59:14 +00:00
Thomas Fuchs
0894f235b8 Begone, test artifacts 2007-06-17 22:29:44 +00:00
Thomas Fuchs
03ae9dd3ee * Make document.getElementsByClassName match the WHATWG Web Applications 1.0 specification which was adopted in Firefox 3 (http://www.whatwg.org/specs/web-apps/current-work/#getelementsbyclassname). It now supports multiple class names given as an array or a space-separated list in a string. The method will only return the nodes that match all the class names. In browsers that implement the method natively it will not be overwritten. Closes #8401. [Mislav Marohnic] 2007-06-17 22:26:46 +00:00
Thomas Fuchs
9ff57b042d Prevent a crash in Safari when calling String#evalJSON(true) on very large strings. Add String#isJSON. Closes #7834. [Tobie Langel] 2007-06-17 16:03:38 +00:00
Thomas Fuchs
1e13c1d0b7 Prototype: Prevent a crash in Safari 1.3 on String#stripScripts and String#extractScripts. Closes #8332. Allow JSON data to contain line breaks. Closes #8271. 2007-06-13 20:57:19 +00:00
Thomas Fuchs
d5665e0d22 Prototype: add failing unit test (IE) for Element.Methods.getStyle on auto-calculated widths. References #8564. 2007-06-10 12:58:32 +00:00