Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(40)

Unified Diff: tools/dom/src/CssClassSet.dart

Issue 891583002: Add type annotations to some dart:html closures (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tools/dom/src/CssClassSet.dart
diff --git a/tools/dom/src/CssClassSet.dart b/tools/dom/src/CssClassSet.dart
index c948819c93ad06ee4602e65328139dd38c9d1aab..0b22ef7741942959a398083c4d54b78db2ee40b8 100644
--- a/tools/dom/src/CssClassSet.dart
+++ b/tools/dom/src/CssClassSet.dart
@@ -96,12 +96,13 @@ class _MultiElementCssClassSet extends CssClassSetImpl {
Set<String> readClasses() {
var s = new LinkedHashSet<String>();
- _elementCssClassSetIterable.forEach((e) => s.addAll(e.readClasses()));
+ _elementCssClassSetIterable.forEach(
+ (_ElementCssClassSet e) => s.addAll(e.readClasses()));
return s;
}
void writeClasses(Set<String> s) {
- var classes = new List.from(s).join(' ');
+ var classes = s.join(' ');
for (Element e in _elementIterable) {
e.className = classes;
}
@@ -117,7 +118,7 @@ class _MultiElementCssClassSet extends CssClassSetImpl {
* className property of this element.
*/
modify( f(Set<String> s)) {
- _elementCssClassSetIterable.forEach((e) => e.modify(f));
+ _elementCssClassSetIterable.forEach((_ElementCssClassSet e) => e.modify(f));
}
/**
@@ -125,7 +126,9 @@ class _MultiElementCssClassSet extends CssClassSetImpl {
* is.
*/
bool toggle(String value, [bool shouldAdd]) =>
- _modifyWithReturnValue((e) => e.toggle(value, shouldAdd));
+ _elementCssClassSetIterable.fold(false,
+ (bool changed, _ElementCssClassSet e) =>
+ e.toggle(value, shouldAdd) || changed);
/**
* Remove the class [value] from element, and return true on successful
@@ -134,10 +137,8 @@ class _MultiElementCssClassSet extends CssClassSetImpl {
* This is the Dart equivalent of jQuery's
* [removeClass](http://api.jquery.com/removeClass/).
*/
- bool remove(Object value) => _modifyWithReturnValue((e) => e.remove(value));
-
- bool _modifyWithReturnValue(f) => _elementCssClassSetIterable.fold(
- false, (prevValue, element) => f(element) || prevValue);
+ bool remove(Object value) => _elementCssClassSetIterable.fold(false,
+ (bool changed, _ElementCssClassSet e) => e.remove(value) || changed);
}
class _ElementCssClassSet extends CssClassSetImpl {
@@ -160,7 +161,6 @@ class _ElementCssClassSet extends CssClassSetImpl {
}
void writeClasses(Set<String> s) {
- List list = new List.from(s);
_element.className = s.join(' ');
}
}
« no previous file with comments | « sdk/lib/html/html_common/css_class_set.dart ('k') | tools/dom/templates/html/impl/impl_Element.darttemplate » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698