parent
654fc7346e
commit
a2e75eaed0
@ -732,7 +732,7 @@ class WidgetToRenderBoxAdapter extends LeafRenderObjectWrapper {
|
|||||||
RenderObjectWrapper ancestor = findAncestorRenderObjectWrapper();
|
RenderObjectWrapper ancestor = findAncestorRenderObjectWrapper();
|
||||||
assert(ancestor is RenderObjectWrapper);
|
assert(ancestor is RenderObjectWrapper);
|
||||||
assert(ancestor.renderObject == renderObject.parent);
|
assert(ancestor.renderObject == renderObject.parent);
|
||||||
ancestor.detachChildRoot(this);
|
ancestor.detachChildRenderObject(this);
|
||||||
super.remove();
|
super.remove();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -98,7 +98,7 @@ class BlockViewport extends RenderObjectWrapper {
|
|||||||
|
|
||||||
static const _omit = const Object(); // used as a slot when it's not yet time to attach the child
|
static const _omit = const Object(); // used as a slot when it's not yet time to attach the child
|
||||||
|
|
||||||
void insertChildRoot(RenderObjectWrapper child, dynamic slot) {
|
void insertChildRenderObject(RenderObjectWrapper child, dynamic slot) {
|
||||||
if (slot == _omit)
|
if (slot == _omit)
|
||||||
return;
|
return;
|
||||||
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
||||||
@ -108,7 +108,7 @@ class BlockViewport extends RenderObjectWrapper {
|
|||||||
assert(renderObject == this.renderObject); // TODO(ianh): Remove this once the analyzer is cleverer
|
assert(renderObject == this.renderObject); // TODO(ianh): Remove this once the analyzer is cleverer
|
||||||
}
|
}
|
||||||
|
|
||||||
void detachChildRoot(RenderObjectWrapper child) {
|
void detachChildRenderObject(RenderObjectWrapper child) {
|
||||||
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
||||||
assert(renderObject is ContainerRenderObjectMixin);
|
assert(renderObject is ContainerRenderObjectMixin);
|
||||||
if (child.renderObject.parent != renderObject)
|
if (child.renderObject.parent != renderObject)
|
||||||
@ -381,7 +381,7 @@ class BlockViewport extends RenderObjectWrapper {
|
|||||||
// Remove any old children.
|
// Remove any old children.
|
||||||
for (_Key oldChildKey in childrenByKey.keys) {
|
for (_Key oldChildKey in childrenByKey.keys) {
|
||||||
if (!newChildren.containsKey(oldChildKey))
|
if (!newChildren.containsKey(oldChildKey))
|
||||||
syncChild(null, childrenByKey[oldChildKey], null); // calls detachChildRoot()
|
syncChild(null, childrenByKey[oldChildKey], null); // calls detachChildRenderObject()
|
||||||
}
|
}
|
||||||
|
|
||||||
if (haveChildren) {
|
if (haveChildren) {
|
||||||
|
@ -310,7 +310,7 @@ abstract class Widget {
|
|||||||
assert(node.parent == null);
|
assert(node.parent == null);
|
||||||
}
|
}
|
||||||
|
|
||||||
void detachRoot();
|
void detachRenderObject();
|
||||||
|
|
||||||
// Returns the child which should be retained as the child of this node.
|
// Returns the child which should be retained as the child of this node.
|
||||||
Widget syncChild(Widget newNode, Widget oldNode, dynamic slot) {
|
Widget syncChild(Widget newNode, Widget oldNode, dynamic slot) {
|
||||||
@ -327,7 +327,7 @@ abstract class Widget {
|
|||||||
if (newNode == null) {
|
if (newNode == null) {
|
||||||
// the child in this slot has gone away
|
// the child in this slot has gone away
|
||||||
assert(oldNode.mounted);
|
assert(oldNode.mounted);
|
||||||
oldNode.detachRoot();
|
oldNode.detachRenderObject();
|
||||||
removeChild(oldNode);
|
removeChild(oldNode);
|
||||||
assert(!oldNode.mounted);
|
assert(!oldNode.mounted);
|
||||||
return null;
|
return null;
|
||||||
@ -347,7 +347,7 @@ abstract class Widget {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
assert(oldNode.mounted);
|
assert(oldNode.mounted);
|
||||||
oldNode.detachRoot();
|
oldNode.detachRenderObject();
|
||||||
removeChild(oldNode);
|
removeChild(oldNode);
|
||||||
oldNode = null;
|
oldNode = null;
|
||||||
}
|
}
|
||||||
@ -447,9 +447,9 @@ abstract class TagNode extends Widget {
|
|||||||
super.remove();
|
super.remove();
|
||||||
}
|
}
|
||||||
|
|
||||||
void detachRoot() {
|
void detachRenderObject() {
|
||||||
if (child != null)
|
if (child != null)
|
||||||
child.detachRoot();
|
child.detachRenderObject();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -623,10 +623,10 @@ abstract class Component extends Widget {
|
|||||||
super.remove();
|
super.remove();
|
||||||
}
|
}
|
||||||
|
|
||||||
void detachRoot() {
|
void detachRenderObject() {
|
||||||
assert(_built != null);
|
assert(_built != null);
|
||||||
assert(renderObject != null);
|
assert(renderObject != null);
|
||||||
_built.detachRoot();
|
_built.detachRenderObject();
|
||||||
}
|
}
|
||||||
|
|
||||||
void dependenciesChanged() {
|
void dependenciesChanged() {
|
||||||
@ -883,16 +883,16 @@ abstract class RenderObjectWrapper extends Widget {
|
|||||||
Widget target = RenderObjectWrapper._getMounted(renderObject);
|
Widget target = RenderObjectWrapper._getMounted(renderObject);
|
||||||
if (target == null)
|
if (target == null)
|
||||||
return;
|
return;
|
||||||
RenderObject targetRoot = target.renderObject;
|
RenderObject targetRenderObject = target.renderObject;
|
||||||
while (target != null && target.renderObject == targetRoot) {
|
while (target != null && target.renderObject == targetRenderObject) {
|
||||||
yield target;
|
yield target;
|
||||||
target = target.parent;
|
target = target.parent;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
RenderObjectWrapper _ancestor;
|
RenderObjectWrapper _ancestor;
|
||||||
void insertChildRoot(RenderObjectWrapper child, dynamic slot);
|
void insertChildRenderObject(RenderObjectWrapper child, dynamic slot);
|
||||||
void detachChildRoot(RenderObjectWrapper child);
|
void detachChildRenderObject(RenderObjectWrapper child);
|
||||||
|
|
||||||
void retainStatefulRenderObjectWrapper(RenderObjectWrapper newNode) {
|
void retainStatefulRenderObjectWrapper(RenderObjectWrapper newNode) {
|
||||||
newNode._renderObject = _renderObject;
|
newNode._renderObject = _renderObject;
|
||||||
@ -909,7 +909,7 @@ abstract class RenderObjectWrapper extends Widget {
|
|||||||
assert(_renderObject != null);
|
assert(_renderObject != null);
|
||||||
_ancestor = findAncestorRenderObjectWrapper();
|
_ancestor = findAncestorRenderObjectWrapper();
|
||||||
if (_ancestor is RenderObjectWrapper)
|
if (_ancestor is RenderObjectWrapper)
|
||||||
_ancestor.insertChildRoot(this, slot);
|
_ancestor.insertChildRenderObject(this, slot);
|
||||||
} else {
|
} else {
|
||||||
assert(old.runtimeType == runtimeType);
|
assert(old.runtimeType == runtimeType);
|
||||||
_renderObject = old.renderObject;
|
_renderObject = old.renderObject;
|
||||||
@ -961,10 +961,10 @@ abstract class RenderObjectWrapper extends Widget {
|
|||||||
super.remove();
|
super.remove();
|
||||||
}
|
}
|
||||||
|
|
||||||
void detachRoot() {
|
void detachRenderObject() {
|
||||||
assert(_ancestor != null);
|
assert(_ancestor != null);
|
||||||
assert(renderObject != null);
|
assert(renderObject != null);
|
||||||
_ancestor.detachChildRoot(this);
|
_ancestor.detachChildRenderObject(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -973,11 +973,11 @@ abstract class LeafRenderObjectWrapper extends RenderObjectWrapper {
|
|||||||
|
|
||||||
LeafRenderObjectWrapper({ Key key }) : super(key: key);
|
LeafRenderObjectWrapper({ Key key }) : super(key: key);
|
||||||
|
|
||||||
void insertChildRoot(RenderObjectWrapper child, dynamic slot) {
|
void insertChildRenderObject(RenderObjectWrapper child, dynamic slot) {
|
||||||
assert(false);
|
assert(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void detachChildRoot(RenderObjectWrapper child) {
|
void detachChildRenderObject(RenderObjectWrapper child) {
|
||||||
assert(false);
|
assert(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1005,7 +1005,7 @@ abstract class OneChildRenderObjectWrapper extends RenderObjectWrapper {
|
|||||||
assert(oldChild == null || child == oldChild || oldChild.parent == null);
|
assert(oldChild == null || child == oldChild || oldChild.parent == null);
|
||||||
}
|
}
|
||||||
|
|
||||||
void insertChildRoot(RenderObjectWrapper child, dynamic slot) {
|
void insertChildRenderObject(RenderObjectWrapper child, dynamic slot) {
|
||||||
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
||||||
assert(renderObject is RenderObjectWithChildMixin);
|
assert(renderObject is RenderObjectWithChildMixin);
|
||||||
assert(slot == null);
|
assert(slot == null);
|
||||||
@ -1013,7 +1013,7 @@ abstract class OneChildRenderObjectWrapper extends RenderObjectWrapper {
|
|||||||
assert(renderObject == this.renderObject); // TODO(ianh): Remove this once the analyzer is cleverer
|
assert(renderObject == this.renderObject); // TODO(ianh): Remove this once the analyzer is cleverer
|
||||||
}
|
}
|
||||||
|
|
||||||
void detachChildRoot(RenderObjectWrapper child) {
|
void detachChildRenderObject(RenderObjectWrapper child) {
|
||||||
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
||||||
assert(renderObject is RenderObjectWithChildMixin);
|
assert(renderObject is RenderObjectWithChildMixin);
|
||||||
assert(renderObject.child == child.renderObject);
|
assert(renderObject.child == child.renderObject);
|
||||||
@ -1046,7 +1046,7 @@ abstract class MultiChildRenderObjectWrapper extends RenderObjectWrapper {
|
|||||||
walker(child);
|
walker(child);
|
||||||
}
|
}
|
||||||
|
|
||||||
void insertChildRoot(RenderObjectWrapper child, dynamic slot) {
|
void insertChildRenderObject(RenderObjectWrapper child, dynamic slot) {
|
||||||
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
||||||
assert(slot == null || slot is RenderObject);
|
assert(slot == null || slot is RenderObject);
|
||||||
assert(renderObject is ContainerRenderObjectMixin);
|
assert(renderObject is ContainerRenderObjectMixin);
|
||||||
@ -1054,7 +1054,7 @@ abstract class MultiChildRenderObjectWrapper extends RenderObjectWrapper {
|
|||||||
assert(renderObject == this.renderObject); // TODO(ianh): Remove this once the analyzer is cleverer
|
assert(renderObject == this.renderObject); // TODO(ianh): Remove this once the analyzer is cleverer
|
||||||
}
|
}
|
||||||
|
|
||||||
void detachChildRoot(RenderObjectWrapper child) {
|
void detachChildRenderObject(RenderObjectWrapper child) {
|
||||||
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
||||||
assert(renderObject is ContainerRenderObjectMixin);
|
assert(renderObject is ContainerRenderObjectMixin);
|
||||||
assert(child.renderObject.parent == renderObject);
|
assert(child.renderObject.parent == renderObject);
|
||||||
|
@ -207,11 +207,11 @@ class Scaffold extends RenderObjectWrapper {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void insertChildRoot(RenderObjectWrapper child, ScaffoldSlots slot) {
|
void insertChildRenderObject(RenderObjectWrapper child, ScaffoldSlots slot) {
|
||||||
renderObject[slot] = child != null ? child.renderObject : null;
|
renderObject[slot] = child != null ? child.renderObject : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
void detachChildRoot(RenderObjectWrapper child) {
|
void detachChildRenderObject(RenderObjectWrapper child) {
|
||||||
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
|
||||||
assert(renderObject is RenderScaffold);
|
assert(renderObject is RenderScaffold);
|
||||||
assert(renderObject == child.renderObject.parent);
|
assert(renderObject == child.renderObject.parent);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user