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

Unified Diff: sky/framework/fn.dart

Issue 986463003: fix typo in _syncEvent; make it possible for a component to entirely change the class of its render… (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 10 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sky/framework/fn.dart
diff --git a/sky/framework/fn.dart b/sky/framework/fn.dart
index 27b44b2c5950442b954506bd68a24479166d834e..c0dbcd98941c9318f757b3188718e0856d724d8e 100644
--- a/sky/framework/fn.dart
+++ b/sky/framework/fn.dart
@@ -188,10 +188,10 @@ abstract class Element extends Node {
// Skip over leading handlers that match.
while (newStartIndex < newEndIndex && oldStartIndex < oldEndIndex) {
- EventHandler newHander = newHandlers[newStartIndex];
+ EventHandler newHandler = newHandlers[newStartIndex];
EventHandler oldHandler = oldHandlers[oldStartIndex];
- if (newHander.type != oldHandler.type
- || newHander.listener != oldHandler.listener)
+ if (newHandler.type != oldHandler.type
+ || newHandler.listener != oldHandler.listener)
break;
++newStartIndex;
++oldStartIndex;
@@ -199,10 +199,10 @@ abstract class Element extends Node {
// Skip over trailing handlers that match.
while (newStartIndex < newEndIndex && oldStartIndex < oldEndIndex) {
- EventHandler newHander = newHandlers[newEndIndex - 1];
+ EventHandler newHandler = newHandlers[newEndIndex - 1];
EventHandler oldHandler = oldHandlers[oldEndIndex - 1];
- if (newHander.type != oldHandler.type
- || newHander.listener != oldHandler.listener)
+ if (newHandler.type != oldHandler.type
+ || newHandler.listener != oldHandler.listener)
break;
--newEndIndex;
--oldEndIndex;
@@ -216,8 +216,8 @@ abstract class Element extends Node {
}
for (int i = newStartIndex; i < newEndIndex; ++i) {
- EventHandler newHander = newHandlers[i];
- root.addEventListener(newHander.type, newHander.listener);
+ EventHandler newHandler = newHandlers[i];
+ root.addEventListener(newHandler.type, newHandler.listener);
}
}
@@ -604,10 +604,8 @@ abstract class Component extends Node {
_dirty = false;
- // TODO(rafaelw): This prevents components from returning different node
- // types as their root node at different times. Consider relaxing.
- assert(oldRendered == null ||
- _rendered.runtimeType == oldRendered.runtimeType);
+ if (oldRendered != null && _rendered.runtimeType != oldRendered.runtimeType)
+ oldRendered = null;
if (_rendered._sync(oldRendered, host, insertBefore)) {
_rendered = oldRendered; // retain stateful component
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698