Commit Graph

255 Commits

Author SHA1 Message Date
Tobie Langel b4735bca7c prototype: Make Element#insert standard-compliant. Fixes an issue in FF3b2 when inserting HTML or text inside DOM nodes which aren't (yet) appended to the document. 2008-01-03 01:50:36 +00:00
Tobie Langel f553d2210e prototype: Add some missing semicolons to the source tree. Closes #10659. 2007-12-31 16:16:14 +00:00
Tobie Langel c9a07576be prototype: Ensure Ajax.Response#getHeader returns null for missing headers in Opera. 2007-12-30 10:59:23 +00:00
Tobie Langel f0d54a48bd prototype: Ensure Ajax.Response#getHeader returns null for missing headers. 2007-12-29 11:09:43 +00:00
Tobie Langel 5a37860ffb prototype: Ensure creates an empty array when its argument's length is undefined. Closes #10574 2007-12-20 15:47:32 +00:00
Tobie Langel 23f7cb642c prototype: Fix incorrect variable declaration in Event.fire. Closes #10329. 2007-12-20 13:10:42 +00:00
Andrew Dupont c691de7810 Fix the way Selector handles [pseudoclass + combinator] with no space in between. Closes #9696. [kangax, fearphage, Andrew Dupont] 2007-12-20 00:17:24 +00:00
Andrew Dupont cb239625b3 Optimize Element#up/down/next/previous. Closes #10353. [Dylan Bruzenak, Nick Stackenburg, Andrew Dupont] 2007-12-19 23:43:48 +00:00
Andrew Dupont 6f0e0ad649 Handle case-sensitivity in Selector tag names better. Closes #5052. [mexx, Andrew Dupont] 2007-12-19 23:32:21 +00:00
Andrew Dupont 4d3ebf0912 Change document.viewport.getDimensions to exclude scrollbars in all cases. Closes #10148, #9288. [Nick Stackenburg] 2007-12-04 04:28:27 +00:00
Andrew Dupont ae76169baf Add logic to Element#getStyle in Opera that fixes inaccurate reporting of computed 'width' and 'height' properties. [Andrew Dupont] 2007-12-04 04:03:56 +00:00
Sam Stephenson 769ae42fcc prototype: Ensure that an Ajax.Request's parameters option can be a Hash. Closes #10172. 2007-11-29 00:24:54 +00:00
Andrew Dupont c85285496b * Ensure no comment nodes are returned in Selector queries (IE improperly returns comment nodes on getElementsByTagName("*")). Change Element#descendants to use Element#getElementsBySelector in order to avoid this issue. Closes #10220. [Jeff Gobel, Andrew Dupont] 2007-11-27 18:43:56 +00:00
Andrew Dupont b01903d92f * Re-enable the XPath approach in Selector for Safari 3. Falls back to the non-XPath version when it sees a problematic token. [Andrew Dupont] 2007-11-27 18:21:50 +00:00
Andrew Dupont 26b8033295 * Fix a bug in the IE-specific Element#descendantOf logic. [Nicholas, Andrew Dupont] 2007-11-27 17:59:46 +00:00
Tobie Langel 23823048d1 prototype: Prevent memory leaks in Ajax.PeriodicalUpdater. Closes #10049 2007-11-15 23:14:36 +00:00
Tobie Langel c371096a71 prototype: Remove useless variable in Selector.handlers.child. Closes #10006. 2007-11-15 22:21:08 +00:00
Tobie Langel d20cc77e0c prototype: Don't redeclare previously declared variables. Closes #10007 2007-11-15 22:15:24 +00:00
Tobie Langel 07a16464e8 prototype: use Object.isUndefined where possible. 2007-11-15 21:53:15 +00:00
Tobie Langel b058e24a05 prototype: Make String#isJSON return false for empty or blank strings. Make Ajax.Response#responseJSON null when Ajax.Response#responseText is empty or blank. 2007-11-15 19:37:26 +00:00
Tobie Langel f8ffe7b40f prototype: Make Ajax.Response#_getResponseJSON use Ajax.Response#responseText. 2007-11-15 14:02:25 +00:00
Tobie Langel 74c005c678 prototype: Remove the now redundant forked declaration of Hash#_each. 2007-11-14 11:56:15 +00:00
Tobie Langel 0b6a6e2f2f prototype: Ensure Event#fire always returns an extended event. Make Event#findElement's expression argument optional. Perf optimizations for Event#findElement. 2007-11-13 21:48:09 +00:00
Sam Stephenson 9b78edb9de prototype: Fix Class#addMethods for "toString" and "valueOf" methods in Internet Explorer. Closes #9901. 2007-11-06 01:44:24 +00:00
Andrew Dupont b14c9afa58 Exclude Opera from using the sourceIndex approach in Element#descendantOf. [Tobie Langel, Andrew Dupont] 2007-11-05 17:54:13 +00:00
Tobie Langel d6b843c9cb Ensure Element#hasClassName always returns a boolean. Closes #10075. 2007-11-05 17:43:56 +00:00
Andrew Dupont 8cd85d12a2 Ensure selectors of the form "[href]" (attribute token with no preceding tag name) work properly. Closes #8870. [chao, kangax, Andrew Dupont] 2007-11-05 17:11:41 +00:00
Andrew Dupont e457edbcf4 Simplified the bitmask in Element#descendantOf. 2007-11-01 19:06:02 +00:00
Andrew Dupont 7cf17c7bec Performance optimizations for Element#descendantOf. Costliness should no longer be dependent on the difference in depth between the parent and the child. [Andrew Dupont] 2007-11-01 15:11:52 +00:00
Thomas Fuchs 916cbbaf4c Apply the workaround for the Firefox "blinking element" opacity=1 bug only to Firefox 1.5. 2007-10-29 23:06:15 +00:00
Andrew Dupont 67cf750956 Add event.stopped, a boolean that is set to when Event#stop is called. 2007-10-26 19:15:35 +00:00
Tobie Langel 4dece6b277 Use String#include wherever possible. 2007-10-22 22:16:32 +00:00
Tobie Langel 16127b024a prototype: In IE, allow opacity to be set on elements not yet attached to the document. Closes #9904. 2007-10-22 13:14:56 +00:00
Tobie Langel f870fba94f prototype: Avoid the try..catch block in Ajax.Response#_getResponseJSON unless required. 2007-10-22 12:04:06 +00:00
Tobie Langel 44c9d8937a prototype: Make the Ajax.Response#headerJSON property correctly decode unicode characters. Closes #9285 2007-10-22 11:20:21 +00:00
Tobie Langel 827c8c6b48 prototype: Prevent a Firefox bug from throwing errors on page load/unload. Closes #5393, #9421. 2007-10-22 01:04:17 +00:00
Tobie Langel 37bab18999 prototype: previous changeset Closes #9917, #9463, #8260. 2007-10-18 15:52:26 +00:00
Tobie Langel 29c0de6937 prototype: Make submitting forms work in Opera < 9.1. 2007-10-18 15:46:30 +00:00
Sam Stephenson b83ae95d90 prototype: Fix template evaluation with empty replacements. Closes #9692. 2007-10-17 14:14:27 +00:00
Sam Stephenson 8327ffd8ae prototype: Hash#toTemplateReplacements is an alias for Hash#toObject so you can once again pass hashes to Template#evaluate and String#interpolate. 2007-10-17 13:39:46 +00:00
Sam Stephenson d114e76e97 prototype: Fix Event#is(Left|Middle|Right)Click in IE. Closes #7520. 2007-10-17 13:26:49 +00:00
Andrew Dupont aada1abb56 * Ensure Event.* generic methods work in IE, even when the event is not extended. [Viktor Kojouharov, Andrew Dupont] 2007-10-16 05:11:42 +00:00
Sam Stephenson bfd5353cbf prototype: Don't translate "keypress" events into "keydown" events. 2007-10-16 03:36:58 +00:00
Andrew Dupont 8d3d6cdb04 * Changed Element#makeClipping to remember the original overflow value, even if it's a non-inline style. [Andrew Dupont] 2007-10-16 03:29:19 +00:00
Sam Stephenson 3dd7bd5b4b prototype: Cross-browser Event#isLeftClick with the addition of is(Middle|Right)Click. Closes #7520. 2007-10-16 03:19:38 +00:00
Andrew Dupont 6cd34be0c4 * Change Selector to use the non-XPath approach for Safari 3 because of bugs in its version of document.evaluate. [Andrew Dupont] 2007-10-16 03:08:31 +00:00
Andrew Dupont 0dd4ba70f6 * Changed the Selector regex that tests whether the selector can be expressed in XPath; added :checked, since XPath can't detect all scenarios in which an <input> is checked. Fixes #9776. [StelardActek, kangax, Andrew Dupont] 2007-10-16 02:28:28 +00:00
Andrew Dupont 88f8d3b9af * Changed Selector pattern match so that descendant combinators after pseudoclass tokens are properly handled. Fixes #9696. [wiktor, kangax, Andrew Dupont] 2007-10-16 02:21:24 +00:00
Tobie Langel 865ac01937 prototype: Make sure $w always returns an array. 2007-10-15 17:19:16 +00:00
Tobie Langel 941359b2f7 Performance enhancements to . Closes #9464 2007-10-14 11:12:08 +00:00
Tobie Langel 7dda50a7c9 Make Function#argumentNames work with named functions. Closes #9826 2007-10-14 10:54:06 +00:00
Tobie Langel 96af1b7579 Add Object.isHash. 2007-10-14 08:08:42 +00:00
Tobie Langel d195111a9d Performance improvements to String#times. 2007-10-13 19:05:19 +00:00
Tobie Langel db371ddb5a Make Ajax.Response#getHeaderJSON and Ajax.Response#getResponseJSON pseudo private instance methods. 2007-10-13 11:37:26 +00:00
Tobie Langel e7bb042aa6 Make ObjectRange use the new Class.create syntax. 2007-10-13 11:24:23 +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 8ca43a5c88 prototype: Fix contentloaded event initialization in IE. Closes #9457, #9488, #9707. 2007-10-08 22:37:15 +00:00
Sam Stephenson c904fe7664 prototype: Deprecate document.getElementsByClassName and Element#getElementsByClassName since native versions return a NodeList and we can only return an Array. Please use $$ or Element#select instead. 2007-10-08 21:29:27 +00:00
Sam Stephenson cf88669931 prototype: Fix missing "var" in selector.js. Closes #9761. 2007-10-08 21:15:46 +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
Sam Stephenson 8cf1f895f7 prototype: Ensure document._getElementsByXPath extends the elements it returns; fixes $$ not returning extended elements in Opera 9.2. Closes #8843. 2007-10-08 19:01:31 +00:00
Sam Stephenson 05e48f6feb prototype: Update Prototype.Browser.MobileSafari for iPod touch compatibility. 2007-10-08 17:30:40 +00:00
Thomas Fuchs 6c94af703d Make sure setting opacity works on elements that have "no layout" in IE. 2007-08-27 18:37:49 +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 5d3fd6f3b7 prototype: Fix Ajax.PeriodicalUpdater for compatibility with Ajax.Response. Closes #9321. 2007-08-21 16:18:07 +00:00
Sam Stephenson 001b54865c prototype: Ensure that classes always have an initialize method. 2007-08-21 16:15:59 +00:00
Sam Stephenson 6086db40a7 prototype: Update Template, Selector, Ajax.*, and ObjectRange classes to use the new class system. 2007-08-18 23:21:29 +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 bfba40e0cd prototype: Fix Class.mixin to extend the class's prototype. 2007-08-18 22:58:13 +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
Thomas Fuchs f86ac770d4 Prototype: Add contextmenu to Event.DOMEvents. 2007-08-14 12:05:20 +00:00
Sam Stephenson d8b8c6586d prototype: Fix readAttribute-related failure in form.html in IE. 2007-08-14 05:08:18 +00:00
Sam Stephenson c27f2de373 prototype: Fix failing dom.html and selector.html tests in IE. 2007-08-14 04:14:22 +00:00
Sam Stephenson c603fc5d42 prototype: Make sure the WebKit redefinition of Element#cumulativeOffset uses Element._returnOffset. Closes #9245. 2007-08-13 15:15:01 +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
Sam Stephenson d7da841c80 prototype: Restrict Event.DOMEvents to include only events that can be supported in all browsers 2007-08-11 18:14:20 +00:00
Sam Stephenson ffa744e4aa prototype: Fix a failing test in base.html in Safari 2. 2007-08-11 01:36:20 +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 e75cd0acdd prototype: Fix Function#argumentNames for IE 2007-08-09 00:27:51 +00:00
Sam Stephenson 220f6379f1 prototype: Fix Function#argumentNames for Opera 2007-08-08 23:50:36 +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 c9a0485b60 prototype: Add some missing semicolons to the source tree. Closes #9140. 2007-08-07 19:41:13 +00:00
Sam Stephenson 12f87a77a7 prototype: We can just use HTMLEvents in every non-IE browser instead of special-casing for Safari 2 2007-08-07 19:33:37 +00:00
Thomas Fuchs cbaec757e2 Prototype: Fix event extensions and custom events firing for Safari 2.0 2007-08-07 14:55:34 +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