Commit Graph

47 Commits

Author SHA1 Message Date
podivilov@google.com 747ad87c2e Events operator [] shouldn't convert event name to lower case.
R=antonm@google.com

Review URL: https://chromiumcodereview.appspot.com//10445011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9154 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-27 09:36:56 +00:00
vsm@google.com d2624ab46f Enable cross frame window operations
This should get everything working for dart2js besides the location
and history getters.

BUG=3472
TEST=window_open_test

Review URL: https://chromiumcodereview.appspot.com//10601003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8988 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-21 16:36:15 +00:00
sra@google.com 9d51dd1661 Use JavaScriptIndexingBehavior on typed arrays.
Review URL: https://chromiumcodereview.appspot.com//10560018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8882 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-20 00:26:35 +00:00
sra@google.com e3ce628065 Wrap Location object on Firefox.
This is a fix for Issue 3152.
https://code.google.com/p/dart/issues/detail?id=3152

Review URL: https://chromiumcodereview.appspot.com//10534130

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8635 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-13 23:40:30 +00:00
antonm@google.com eaecc7194e Add new events.
TBR=podivilov@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10536113

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8524 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-12 07:22:46 +00:00
sra@google.com e623c9cf5c Put width before height in element constructors.
BUG=3435

Review URL: https://chromiumcodereview.appspot.com//10540110

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8518 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-11 21:44:17 +00:00
podivilov@google.com a93c755ea2 Use original WebKit IDL database for dart:html generation.
This will allow us to use the same database to generate both frog and native implementations.

R=antonm@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10542036

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8458 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-08 18:03:10 +00:00
podivilov@google.com 6fef7739c5 Do not merge IDL interfaces in dartdomgenerator.
The merge is irreversible, and shouldn't be done too early.

R=antonm@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10541029

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8456 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-08 17:41:37 +00:00
sra@google.com 161d21ec06 indexedDB work
Make string 'mode' argument to IDBDatabase.transaction work on older browsers.

Make window.indexedDB available.  Does not yet work of Firefox for other
reasons.

Add interface IDBOpenDBRequest.  IDBFactory.open returns this in the most recent spec, and is implemented by Firefox.

Next, I will try to use the new event kinds on IDBOpenDBRequest to get Firefox to open a database.

Review URL: https://chromiumcodereview.appspot.com//10540016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8369 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-06 23:19:36 +00:00
podivilov@google.com de9c46909b Cleanup NodeSelectors.
Currently, query and queryAll methods generation in dart:html is somehow affected by a combination of the following factors:
1) Document, DocumentFragment, and Element are declared to inherit from NodeSelector interface in dart.idl
2) NodeSelector methods for some of these interfaces are present in_private_html_members, but not all, resulting in generation of $dom_* variants
3) querySelector is renamed to query via _html_library_renames for all interfaces except for Document
4) Some of these methods and their private variants have custom implementations in impl_*.darttemplate's

This patch aims to simplify that logic.

R=jacobr@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10447091

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8240 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-04 09:34:20 +00:00
sra@google.com 4b4991d659 Revert "Revert "Rework Element constructors""
This CL is r8182 plus some other bug fixes to get to green.

The main change is that the first parent of an interface could be a
pure interface.  In that case, it should be treated as a secondary parent
interface, not as the primary implementation inheritance parent.

Review URL: https://chromiumcodereview.appspot.com//10443122

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8184 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-01 07:14:14 +00:00
sra@google.com b4b0bae90d Revert "Rework Element constructors"
Review URL: https://chromiumcodereview.appspot.com//10451105

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8183 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-01 04:25:29 +00:00
sra@google.com 3614cf1500 Rework Element constructors
It turns out we want different types in the frog vs dartium bodies.
We want the implementation type for frog to help with live type analysis.
We can't use the only slightly less general interface type because the language mandates a warning.

So we now generate the factory constructors for each implementation system rather than once for the interfaces system.

I also extended the mechanism to handle multiple element constructors
and used it to generate HeadingElement.h1() through
HeadingElement.h6()

Review URL: https://chromiumcodereview.appspot.com//10442125

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8182 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-01 03:44:47 +00:00
podivilov@google.com aa58f2ceee Wrapperless dart:html for Dartium.
R=antonm@google.com,sra@google.com,vsm@google.com

Review URL: https://chromiumcodereview.appspot.com//10456006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8113 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-30 16:19:05 +00:00
podivilov@google.com 473bedc1ff Apply html renames to native wrappers.
R=antonm@google.com

Review URL: https://chromiumcodereview.appspot.com//10448009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7992 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-25 12:38:23 +00:00
podivilov@google.com aede8eb0d3 Cleanup systemhtml name lists so we can reuse them for generating wrapperless dart:html for Dartium.
R=jacobr@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10444004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7981 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-25 09:02:56 +00:00
podivilov@google.com 1df52df3ed Move dart:dom implementation classes to dart:html library.
Rename dom implementation classes to _<Interface>DOMImpl to avoid clashes with html
implementation classes, and import dom implementation classes directly into dart:html.
Temporary introduce fake dom interfaces for overload dispatching (dom implementation classes
don't implement html interfaces yet).

R=antonm@google.com

Review URL: https://chromiumcodereview.appspot.com//10383302

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7954 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-24 17:05:23 +00:00
sra@google.com 31ab9dec79 Element constructors
Elements with distinct types can now be constructed directly.

Example:
  var div = new DivElement();

There are many elements that cannot be created this way.  For example, the <b>bold</b> element is simply a HTMLElement with styling, not a separate subclass of HTMLElement.

Review URL: https://chromiumcodereview.appspot.com//10384024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7921 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-23 19:25:17 +00:00
antonm@google.com 70fc748687 Add new event renames.
TBR=podivilov@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10388228

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7841 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-22 07:00:06 +00:00
podivilov@google.com 91e5b9d239 Move systems creation to dartdomgenerator.py.
Wrapperless htmldartium system should use a database with html renames
for interface generation, and original database for c++ code generation.
This is hard to achieve with current layout because specific knowledge about html/dom
and frog/native is spread between dartdomgenerator and dartgenerator.

This patch moves all system creation logic to dartdomgenerator while dartgenerator
becomes a collection of helper methods for traversing idl database.

R=antonm@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10392147

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7739 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-18 13:31:39 +00:00
podivilov@google.com c5a1152664 Move html events generation to domimpl.
R=antonm@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10332144

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7692 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-16 15:20:55 +00:00
vsm@google.com 9be4ac00ed Move dart:dom to dart:dom_deprecated
Brian: Can you please look at the editor / dartc changes?

Bob: Can you look at the apidoc changes?

Stephen/Pavel: Can you guys look at the rest?

Pavel: I will update, test, and land your Dartium CL along with this change.

Review URL: https://chromiumcodereview.appspot.com//10389097

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7587 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-13 04:10:43 +00:00
antonm@google.com 3639e3ab3a Better support for the case of typed arrays inheriting from other typed arrays.
R=podivilov@chromium.org,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10388084

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7580 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-12 08:52:09 +00:00
podivilov@google.com 6f795daf22 Remove overload dispatcher from native html implementation.
R=antonm@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10388089

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7553 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-11 16:02:00 +00:00
vsm@google.com bdd5ab5fd8 Minimal fix to get cross frame tests working, take #2.
See patches for minor fixes.

TBR=sra

Review URL: https://chromiumcodereview.appspot.com//10332105

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7528 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-11 04:26:45 +00:00
vsm@google.com 8dab28a81e Revert "Minimal fix to get cross frame tests working."
A couple more complications than I expected on the dartium side.  I'm
reverting and redoing.

TBR=sra

Review URL: https://chromiumcodereview.appspot.com//10356092

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7481 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-10 05:38:36 +00:00
vsm@google.com 5f33455489 Minimal fix to get cross frame tests working.
I'm working on a more general fix that should obsolete this change.

BUG=http://code.google.com/p/dart/issues/detail?id=2774
TEST=cross_frame_test,inner_frame_test

Review URL: https://chromiumcodereview.appspot.com//10384017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7480 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-10 04:09:12 +00:00
antonm@google.com 2806978be7 Rework static method support.
For now I just nuke them from all generators except for systemnative.

However, that remove two methods from DOMURL.  One of those should probably be a ctor.
The second one is funnier as it looks like legetimate static methods.

R=podivilov@chromium.org,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10334003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7320 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-04 11:05:29 +00:00
sra@google.com 149d677ffc Fix for $dom_$dom_svgClassName
Review URL: https://chromiumcodereview.appspot.com//10308002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7213 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-02 04:27:06 +00:00
vsm@google.com 3e370fe74e Enable html_dartium to be built as part of dartium build
Review URL: https://chromiumcodereview.appspot.com//10126002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6752 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-19 16:52:46 +00:00
vsm@google.com 0bcfad872a Update fremontcut with current chrome feature defines
This will bring dart2js / html up to date with Chrome generated dom.

Review URL: https://chromiumcodereview.appspot.com//10035039

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6714 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-18 22:19:12 +00:00
sra@google.com 4a81499920 Map IDBAny and IDBKey to Dynamic
Specialize printing of Dynamic depending on context.
Interfaces try to print it as /*IDLType*/ in operation signatures.
Generated C++ is unchanged.

Replace the arg_info tuple with a ParamInfo object.
Rename arg_infos to param_infos.

   void postMessage(Dynamic message, [List messagePorts]);
-> void postMessage(/*SerializedScriptValue*/ message, [List messagePorts]);

   String createObjectURL(var blob_OR_stream);
-> String createObjectURL(blob_OR_stream);

   final Dynamic key;
-> final /*IDBKey*/ key;

   Dynamic strokeStyle;
-> var strokeStyle;

Review URL: https://chromiumcodereview.appspot.com//10107010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6665 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-17 23:20:28 +00:00
podivilov@google.com 45f10a7f63 Remove EventListener attributes from Dart DOM API.
All idl interfaces that have EventListener attributes are EventTargets and implement
addEventListener/removeEventListener methods. We can safely drop this JavaScript legacy now.

The changes in dom and html libs are due to interfaces that are now treated as EventTargets
(the list of EventTargets in webkit-supplemental were not full).

R=sra@chromium.org,jacobr@google.com

Review URL: https://chromiumcodereview.appspot.com//10014028

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6519 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-13 13:26:49 +00:00
jacobr@google.com af8e09788d Fix ApiDoc to work with new dart:html code. Tweak dart:html generator to generate clearer @domName annotations.
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//10068019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6505 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-13 09:27:20 +00:00
jacobr@google.com 5771e2c98d Add touchenter event even though it doesn't have an ontouchenter method in the DOM.
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9949057

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6289 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-06 18:12:35 +00:00
jacobr@google.com 4c1c8becf3 Add back @domName annotations to dart:html
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9997003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6248 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-05 21:32:39 +00:00
nweiz@google.com d257b17273 Use a better error message when $!MEMBERS isn't used in a template file.
Review URL: https://chromiumcodereview.appspot.com//9963123

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6157 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-04 00:20:01 +00:00
sra@google.com a0187f8928 Fix for Issue 2399 - broken []= on dartium dart:html typed arrays.
Also fix buggy lastIndexOf and add test.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9956126

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6153 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-03 23:38:35 +00:00
nweiz@google.com 6cabc53f79 Make Storage implement Map.
Review URL: https://chromiumcodereview.appspot.com//9956076

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6117 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-02 22:51:57 +00:00
sra@google.com bdb9cffa89 Remove unused typed array factory constructors.
Remove unused typed array factory constructors in the class as the
arrays are actually constructed in the factory constructor provider.

Use native renaming to get rid of hand generated code for typed array
'setElements' method.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9959048

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6072 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-31 04:15:15 +00:00
sra@google.com 1c23709150 Fix factory dart:html typed array providers for dartium.
Revert "Revert "Typed array constructors with optional buffer offset and length.""

This reverts commit 70b6f43f35d3c022187cdb0ce4d516811a2a5dd1.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9950037

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6071 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-31 01:01:08 +00:00
sra@google.com 66fad61228 Revert "Typed array constructors with optional buffer offset and length."
This reverts commit aaa5353b16edf040e21fff712757cc14001b2562.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9969036

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6070 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-31 00:00:52 +00:00
sra@google.com cf763cf868 Typed array constructors with optional buffer offset and length.
A fix for Issue 2331

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9969001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6069 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-30 23:36:52 +00:00
jacobr@google.com dfbb12458f Use the new syntax for native methods that are just renames of other native methods.
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9963004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6053 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-30 17:50:54 +00:00
jacobr@google.com d3bc39272e Another dartium fix. I swear this is the last one.
TBR... Fix a Dartium bug that was uncaught because we weren't really using the latest version of dart:html on dartium

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9965003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6020 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-30 03:07:35 +00:00
jacobr@google.com dd9bdb5ece dart:html perf optimization based on runing Dromaeo benchmarks
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9732019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5955 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-28 22:23:39 +00:00
dgrove@google.com 7d558789d6 Rename client/{dom,html} to lib/{dom,html} .
Review URL: http://codereview.chromium.org//9845043

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5840 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-26 16:29:54 +00:00