diff --git a/sky/packages/sky/lib/rendering/box.dart b/sky/packages/sky/lib/rendering/box.dart index d1250f5af7c..b9f729b3db9 100644 --- a/sky/packages/sky/lib/rendering/box.dart +++ b/sky/packages/sky/lib/rendering/box.dart @@ -1678,8 +1678,6 @@ class ViewConstraints { } class RenderView extends RenderObject with RenderObjectWithChildMixin { - bool get createNewDisplayList => true; - RenderView({ RenderBox child, this.timeForRotation: const Duration(microseconds: 83333) diff --git a/sky/packages/sky/lib/rendering/object.dart b/sky/packages/sky/lib/rendering/object.dart index 845bd74576a..cfa42e7ae4d 100644 --- a/sky/packages/sky/lib/rendering/object.dart +++ b/sky/packages/sky/lib/rendering/object.dart @@ -164,7 +164,6 @@ abstract class RenderObject extends AbstractNode implements HitTestTarget { return true; }); _nodesNeedingLayout.add(this); - _nodesNeedingPaint.add(this); scheduler.ensureVisualUpdate(); } static void flushLayout() { @@ -331,6 +330,9 @@ abstract class RenderObject extends AbstractNode implements HitTestTarget { _needsPaint = true; _nodesNeedingPaint.add(this); scheduler.ensureVisualUpdate(); + } else if (parent == null) { + _needsPaint = true; + scheduler.ensureVisualUpdate(); } else { assert(parent != null); // parent always exists on this path because the root node is a RenderView, which sets createNewDisplayList. if (parent is RenderObject) {