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

Unified Diff: sky/sdk/lib/widgets/basic.dart

Issue 1191443009: Introduce a LeafRenderObjectWrapper abstract class so that RenderObjectWrappers that are leaves don… (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 6 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 | sky/sdk/lib/widgets/widget.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sky/sdk/lib/widgets/basic.dart
diff --git a/sky/sdk/lib/widgets/basic.dart b/sky/sdk/lib/widgets/basic.dart
index 2f221b7688b8d1d7b95078118f658fb1cd79f0df..bd503f928e0dbcb01fce27fbfc59737f9b1d9902 100644
--- a/sky/sdk/lib/widgets/basic.dart
+++ b/sky/sdk/lib/widgets/basic.dart
@@ -346,7 +346,7 @@ class Flexible extends ParentDataNode {
: super(child, new FlexBoxParentData()..flex = flex, key: key);
}
-class Inline extends RenderObjectWrapper {
+class Inline extends LeafRenderObjectWrapper {
Inline({ String key, this.text }) : super(key: key);
RenderParagraph get root => super.root;
@@ -359,15 +359,10 @@ class Inline extends RenderObjectWrapper {
root.inline = text;
}
- void insertChildRoot(RenderObjectWrapper child, dynamic slot) {
- assert(false);
- // Inline does not support having children currently
- }
-
}
class Text extends Component {
- Text(data, { String key, TextStyle this.style }) : data = data, super(key: key);
+ Text(data, { String key, TextStyle this.style }) : super(key: key);
final String data;
final TextStyle style;
bool get interchangeable => true;
@@ -378,13 +373,15 @@ class Text extends Component {
}
}
-class Image extends RenderObjectWrapper {
+class Image extends LeafRenderObjectWrapper {
Image({
- String key,
- this.src,
+ src,
this.size
- }) : super(key: key);
+ }) : src = src,
+ super(key: src) {
+ assert(src != null);
+ }
RenderImage get root => super.root;
RenderImage createNode() => new RenderImage(this.src, this.size);
@@ -398,17 +395,12 @@ class Image extends RenderObjectWrapper {
root.requestedSize = size;
}
- void insertChildRoot(RenderObjectWrapper child, dynamic slot) {
- assert(false);
- // Image does not support having children currently
- }
-
}
-class WidgetToRenderBoxAdapter extends RenderObjectWrapper {
+class WidgetToRenderBoxAdapter extends LeafRenderObjectWrapper {
WidgetToRenderBoxAdapter(RenderBox renderBox)
- : this.renderBox = renderBox,
+ : renderBox = renderBox,
super(key: renderBox.hashCode.toString());
RenderBox get root => super.root;
@@ -424,12 +416,6 @@ class WidgetToRenderBoxAdapter extends RenderObjectWrapper {
}
}
- void insertChildRoot(RenderObjectWrapper child, dynamic slot) {
- assert(false);
- // WidgetToRenderBoxAdapter cannot have Widget children; by
- // definition, it is the transition out of the Widget world.
- }
-
void remove() {
parent.detachChildRoot(this);
super.remove();
« no previous file with comments | « no previous file | sky/sdk/lib/widgets/widget.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698