Srujan Gaddam
b213b4ff58
[dart:html] Nullability fixes based on JS call
...
Changes types of return values depending on if the
call allows a Null type.
Change-Id: Id9b3d69eee1008d46a6b3b16f217a6b9c892fc6c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/141260
Commit-Queue: Srujan Gaddam <srujzs@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
2020-03-30 22:06:01 +00:00
Srujan Gaddam
5b23373f7e
Modify fields in some abstract and native classes
...
Since we transitioned to natives for dart:html, manually written native
fields should be rewritten. Similarly, if there are fields in abstract
classes that represent interfaces, they should be converted. Fields in
abstract classes that are used in that class are left alone.
Change-Id: I924363639a4430b88b810b7348815bbc3f040e7c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/137642
Commit-Queue: Srujan Gaddam <srujzs@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
2020-02-29 01:29:35 +00:00
Srujan Gaddam
59370f29c5
Fix html methods without returns
...
Several method bodies did not return a value conditionally or at all.
Change-Id: I01ca87e2e0501597bacb49bcddd10668b59026b0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/135626
Commit-Queue: Srujan Gaddam <srujzs@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2020-02-19 20:43:34 +00:00
Srujan Gaddam
3776313e65
Change dart:html templates to generate null-safe code
...
Introduces NULLASSERT token and NNBD condition to allow code to
conditionally compile with NNBD.
Change-Id: Ib71e439f32c793e69b66c328cd7c9900358d886e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134045
Commit-Queue: Srujan Gaddam <srujzs@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2020-02-06 23:18:24 +00:00
Srujan Gaddam
28917d8b1d
Handle invalid overrides in template and src dart files
...
Several functions did not override their parents' function signatures
correctly for nnbd.
Change-Id: Ibd935ffa39b3175db65bb43d15396134700d2f78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129143
Commit-Queue: Srujan Gaddam <srujzs@google.com >
Reviewed-by: Sigmund Cherem <sigmund@google.com >
2020-01-29 22:22:50 +00:00
Terry Lucas
8fedfc7f8c
Removed DomName, DosEditable, and experimental annoations they are unused.
...
R=kevmoo@google.com ,vsm@google.com
Fixes #32304
Change-Id: Ia2c8f99f0125c4d4bd0f95a792ff2af8a58e3599
Reviewed-on: https://dart-review.googlesource.com/60400
Commit-Queue: Terry Lucas <terry@google.com >
Reviewed-by: Kevin Moore <kevmoo@google.com >
2018-06-18 18:48:03 +00:00
Terry Lucas
621b12f324
Removed DARTIUM codegen for IDLS (sdk/lib/dartium)
...
TBR=alanknight@google.com
Review-Url: https://codereview.chromium.org/2978213002 .
2017-07-18 11:02:02 -07:00
Stephen Adams
fc7d880c60
Implement _ChildNodeListLazy.removeRange as throwing UnsupportedError
...
_ChildNodeListLazy.removeRange used to throw UnsupportedError because ListMixin.removeRange calls setRange.
Make throwing UnsupportedError explicit to avoid relying on the implementation of ListMixin.removeRange
This will unblock the '_closeGap' change.
BUG=
R=lrn@google.com
Review-Url: https://codereview.chromium.org/2955103003 .
2017-06-28 09:42:55 -07:00
Jacob Richman
864b64fd5e
Strong html
...
BUG=
R=alanknight@google.com
Review URL: https://codereview.chromium.org/1894713002 .
2016-04-19 15:08:45 -07:00
Jacob Richman
c65854d2e4
Optimize dartium dart:html bindings so real world application performance is acceptable. Improves dart:html performance by 2X-30X for microbenchmarks. Real world improvement is typically 2X-3X.
...
BUG=
Review URL: https://codereview.chromium.org/1832713002 .
2016-03-29 18:32:52 -07:00
Sam Rawlins
931ceef9b2
Fixing dart:html links _not_ found in docs.json
...
BUG= https://github.com/dart-lang/sdk/issues/23601
R=alanknight@google.com
Review URL: https://codereview.chromium.org/1448963002 .
2015-11-16 10:18:23 -08:00
Terry L. Lucas
3ce007e910
Fixed a bunch of failure cases for custom elements
...
TBR=alanknight@google.com
Review URL: https://codereview.chromium.org//1373563004 .
2015-09-25 15:12:08 -07:00
Terry L. Lucas
bcf8dfe1f1
Merge mistake removed annotations for dart2js; re-added.
...
TBR=sra@google.com
Review URL: https://codereview.chromium.org//1350063004 .
2015-09-18 07:25:33 -07:00
Terry L. Lucas
7b322c246c
Dartium JS Enabled take 2
...
TBR=alanknight@google.com
Review URL: https://codereview.chromium.org//1348173002 .
2015-09-16 07:13:53 -07:00
Terry L. Lucas
09c804aa78
Revert "Dartium JS Interop enabled."
...
This reverts commit 403bd1698d .
TBR=alanknight@google.com
Review URL: https://codereview.chromium.org//1345083002 .
2015-09-15 19:44:26 -07:00
Terry L. Lucas
403bd1698d
Dartium JS Interop enabled.
...
TBR=alanknight@google.com
Review URL: https://codereview.chromium.org//1349493003 .
2015-09-15 17:36:47 -07:00
Terry L. Lucas
9b0d2582fc
Revert "Dartium w/ JsInterop enabled"
...
This reverts commit 346af54711 .
TBR=alanknight@google.com
Review URL: https://codereview.chromium.org//1330163010 .
2015-09-09 17:33:24 -07:00
Terry L. Lucas
346af54711
Dartium w/ JsInterop enabled
...
TBR=alanknight@google.com
Review URL: https://codereview.chromium.org//1321613005 .
2015-09-09 17:01:40 -07:00
Terry L. Lucas
012c998f64
Revert "Patched in Dartium JsInterop"
...
This reverts commit 4bb2e617db .
TBR=alanknight@google.com
Review URL: https://codereview.chromium.org//1327083002 .
2015-09-08 13:35:03 -07:00
Terry L. Lucas
4bb2e617db
Patched in Dartium JsInterop
...
TBR=alanknight@google.com
Review URL: https://codereview.chromium.org//1310363006 .
2015-09-08 12:46:41 -07:00
Alan Knight
89b99e60bf
Remove dart2js-specific annotations from childNodes
...
BUG=
R=terry@google.com
Review URL: https://codereview.chromium.org//1290263002 .
2015-08-14 09:32:45 -07:00
Terry L. Lucas
5e52d8dc5d
Updates for dart:js fixes after initial --gen-interop
...
TBR=vsm@google.com ,alanknight@google.com
Review URL: https://codereview.chromium.org//1228093007 .
2015-07-16 09:52:44 -07:00
Terry L. Lucas
1fa61ee114
Fixed a few more things to make Dartium build w/o --gen-interop
...
TBR=vsm@google.com
Review URL: https://codereview.chromium.org//1239653003 .
2015-07-14 07:17:59 -07:00
Terry L. Lucas
4947e570d4
Changed to use JSInterop
...
Review URL: https://codereview.chromium.org//1173403004 .
2015-07-13 12:38:16 -07:00
sra@google.com
8bed532218
Tweak toString() for better type inference
...
These changes ensure dart2js can infer toString() returns a non-null String on some of our samples.
One tactic is to always write toString method for which all returned expressions are a an interpolation (or literal), or a call to StringBuffer.toString.
R=alanknight@google.com , lrn@google.com
Review URL: https://codereview.chromium.org//895813002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43534 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 00:24:51 +00:00
sra@google.com
be78d098a0
Make Node.nodes.insertAll work for an end-positioned index.
...
R=blois@google.com
Review URL: https://codereview.chromium.org//613063002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40819 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-30 17:54:03 +00:00
sra@google.com
7516e95066
Redo "Use @Native annotation on dart2js DOM native classes"
...
BUG=
Review URL: https://codereview.chromium.org//410863002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38488 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-23 04:27:48 +00:00
sra@google.com
9a4f73207e
Revert "Use @Native annotation on dart2js DOM native classes"
...
TBR=blois@google.com
BUG=
Review URL: https://codereview.chromium.org//410823002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38486 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-23 01:44:13 +00:00
sra@google.com
11a19d95be
Use @Native annotation on dart2js DOM native classes
...
This is one of many steps to removing non-standard syntax from the dart2js libraries.
R=blois@google.com
Review URL: https://codereview.chromium.org//409053002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38484 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-23 00:23:17 +00:00
blois@google.com
c163cc3524
Speeding up ElementList.clear & NodeList.clear.
...
Changes elements.clear() to no longer remove nodes- but this seems like the correct behavior.
Can use the nodes.clear() logic for elements if not.
BUG=17892
R=jacobr@google.com
Review URL: https://codereview.chromium.org//216933005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34532 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-28 22:16:38 +00:00
amouravski@google.com
11c6fce3d9
Even more docs, filling in many of the gaps.
...
Review URL: https://codereview.chromium.org//62703002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29993 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-06 20:39:27 +00:00
blois@google.com
8c9c2d5c29
Exposing raw DOM lists from wrappers
...
This is to make them transferrable via dart:js
So basically all of our wrappers implement NodeListWrapper (which is defined in html_common).
One can check if the Dart list is a NodeListWrapper, then call rawList if so.
The result of rawList is typed as List<Node>, which should be either NodeList or HtmlCollection.
BUG=14485
R=justinfagnani@google.com
Review URL: https://codereview.chromium.org//46433003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29322 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-27 02:26:20 +00:00
efortuna@google.com
45701cfb4b
Second round of deprecation removal.
...
BUG=
R=blois@google.com
Review URL: https://codereview.chromium.org//41843003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29275 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-25 19:39:09 +00:00
jmesserly@google.com
360ea42322
Rename mdv -> template_binding, remove experiemntal apis from dart:html
...
essentially, we trade off reduce dart:html API surface area for more annoying usage of these APIs. Since Polymer hides most of this, I suspect it won't be too annoying in practice.
Sample usage:
nodeBind(node).bind(...)
templateBind(node).model = ...;
R=sigmund@google.com
Review URL: https://codereview.chromium.org//34453003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29057 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-23 02:11:49 +00:00
blois@google.com
e3b35dabb6
Renaming Node.document back to Node.ownerDocument
...
With custom elements, the document instance variable creates an odd conflict with the document global.
BUG=14099
R=jmesserly@google.com
Review URL: https://codereview.chromium.org//27602002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28810 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-17 17:55:38 +00:00
lrn@google.com
e3713a08d4
Make List.shuffle take an optional Random object to use.
...
R=floitsch@google.com
Review URL: https://codereview.chromium.org//25931003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28305 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-07 12:07:30 +00:00
lrn@google.com
55a8a72ca6
Add List.shuffle().
...
Will add tests too.
R=floitsch@google.com
Review URL: https://codereview.chromium.org//24740003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28206 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-03 11:09:01 +00:00
blois@google.com
1aa8a7be0e
Adding Element.created constructor and .created constructors to all subclasses. Also ensuring generative constructor for all superclasses.
...
This is for post-construction custom element creation.
Element.created is public, then the base classes of that get private ._created constructors.
BUG=
R=vsm@google.com
Review URL: https://codereview.chromium.org//24653006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28120 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-01 21:26:06 +00:00
efortuna@google.com
9f52a2969c
Added back childNodes and getAttribute and setAttribute.
...
This is a quick check to verify that it was this CL:
https://codereview.chromium.org/23189014/ was the cause of the performance
regression. If it is, I have some ideas of potential performance improvements
going forward that we should investigate, and I'll also investigate why I wasn't
getting this performance behavior on my machine locally. Either way, expect at
least one additional change on these APIs going forward.
BUG=
R=blois@google.com
Review URL: https://codereview.chromium.org//23808005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27139 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-04 19:34:39 +00:00
efortuna@google.com
47dcd084f3
Removing more dom_ methods (dom_getAttribute and dom_setAttribute.).
...
BUG=
R=blois@google.com
Review URL: https://codereview.chromium.org//23189014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26928 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-30 17:18:40 +00:00
efortuna@google.com
90873051ad
Making almost all dom_ methods private. Exceptions will be addressed in a later CL.
...
Current ones that still remain to be made private include createElement(NS),
createRange, all the Element properties, and childNodes.
BUG=
R=blois@google.com
Review URL: https://codereview.chromium.org//23055008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26605 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-23 18:25:40 +00:00
jmesserly@google.com
1210e466cb
[mdv] implement Node.createBinding and Node.createBindings
...
port of
https://github.com/Polymer/mdv/commit/95c4eca5a89ed3d04af1c6607a61f49d35d05ca6 , https://github.com/Polymer/mdv/commit/3a0d2f302d474cd175d7fe49b278f928a019d053
BUG=
R=sigmund@google.com
Review URL: https://codereview.chromium.org//20149004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25485 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-25 18:01:02 +00:00
amouravski@google.com
c0a39d0412
Make html metadata follow the spec.
...
Per https://code.google.com/p/dart/issues/detail?id=11568
R=scheglov@google.com
Review URL: https://codereview.chromium.org//18182010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24638 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-01 18:34:30 +00:00
blois@google.com
9dd81d94a7
Fixing up DOM constructors.
...
This is a continuation of https://codereview.chromium.org/17063007/
Basically I changed it so factory constructors are only added if the class derives from a native type. Otherwise the native type now extends Interceptor.
BUG=
R=sra@google.com
Review URL: https://codereview.chromium.org//18054021
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24619 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-29 00:14:23 +00:00
jmesserly@google.com
5ec4d52def
fix analysis issue caught by dart2js bots
...
TBR
Review URL: https://codereview.chromium.org//17973003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24501 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-27 00:06:30 +00:00
jmesserly@google.com
d6b9207588
Reorganize mdv and observe functionality
...
* keep correct dart:html APIs
* move implementation into package:mdv and package:observe
* remove dart:mdv_observe_impl
* remove getValueWorkaround/setValueWorkaround from package:observe
R=blois@google.com , floitsch@google.com , justinfagnani@google.com
Review URL: https://codereview.chromium.org//17552019
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24498 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-26 23:25:47 +00:00
blois@google.com
edf30f6b20
Exposing Node.firstChild and Node.lastChild.
...
These are the most efficient way access children and are very commonly used.
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org//17909002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24476 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-26 16:53:50 +00:00
blois@google.com
6b44f65407
Revert "Making all DOM types abstract and removing superfluous Dartium constructors."
...
This reverts commit http://code.google.com/p/dart/source/detail?r=24241 .
Compiler error, not sure of best fix.
BUG=
Review URL: https://codereview.chromium.org//17508002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24245 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-20 19:37:47 +00:00
blois@google.com
c3547d4e9b
Making all DOM types abstract and removing superfluous Dartium constructors.
...
Adding factory constructors to all classes to suppress missing generative constructor warnings.
Adding a throw to Dartium's base DOM class to prevent construction of native objects.
This also includes the changes necessary to make all DOM types abstract, but I'm running into a dart2js issue which is preventing that.
BUG=
R=vsm@google.com
Review URL: https://codereview.chromium.org//17063007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24241 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-20 17:31:36 +00:00
blois@google.com
ca01606620
Fixing dart2js compilation warning.
...
Was seeing the warnings:
build/ReleaseIA32/dart-sdk/lib/html/dart2js/html_dart2js.dart:15831:21: Warning: no property named _this in class Iterable
if (identical(newNodes._this, this)) {
^^^^^^^^^^^^^^
build/ReleaseIA32/dart-sdk/lib/html/dart2js/html_dart2js.dart:15838:27: Warning: no operator [] in class Iterable
this.insertBefore(newNodes[0], refChild);
BUG=
R=efortuna@google.com
Review URL: https://codereview.chromium.org//15660010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23428 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-30 17:47:07 +00:00