Revert "Provide oldLayer where possible (#67320)"
This reverts commit 24abe59f389cfd4661976409e931cd413871bc53.
diff --git a/packages/flutter/lib/src/cupertino/switch.dart b/packages/flutter/lib/src/cupertino/switch.dart
index b847654..6c48ae2 100644
--- a/packages/flutter/lib/src/cupertino/switch.dart
+++ b/packages/flutter/lib/src/cupertino/switch.dart
@@ -524,13 +524,11 @@
thumbCenterY + CupertinoThumbPainter.radius,
);
- _clipRRectLayer = context.pushClipRRect(needsCompositing, Offset.zero, thumbBounds, trackRRect, (PaintingContext innerContext, Offset offset) {
+ context.pushClipRRect(needsCompositing, Offset.zero, thumbBounds, trackRRect, (PaintingContext innerContext, Offset offset) {
const CupertinoThumbPainter.switchThumb().paint(innerContext.canvas, thumbBounds);
- }, oldLayer: _clipRRectLayer);
+ });
}
- ClipRRectLayer? _clipRRectLayer;
-
@override
void debugFillProperties(DiagnosticPropertiesBuilder description) {
super.debugFillProperties(description);
diff --git a/packages/flutter/lib/src/cupertino/text_selection.dart b/packages/flutter/lib/src/cupertino/text_selection.dart
index 8e93c90..706ec21 100644
--- a/packages/flutter/lib/src/cupertino/text_selection.dart
+++ b/packages/flutter/lib/src/cupertino/text_selection.dart
@@ -371,17 +371,15 @@
}
final _ToolbarParentData childParentData = child!.parentData! as _ToolbarParentData;
- _clipPathLayer = context.pushClipPath(
+ context.pushClipPath(
needsCompositing,
offset + childParentData.offset,
Offset.zero & child!.size,
_clipPath(),
(PaintingContext innerContext, Offset innerOffset) => innerContext.paintChild(child!, innerOffset),
- oldLayer: _clipPathLayer
);
}
- ClipPathLayer? _clipPathLayer;
Paint? _debugPaint;
@override
diff --git a/packages/flutter/lib/src/material/input_decorator.dart b/packages/flutter/lib/src/material/input_decorator.dart
index 58865e9..04ce2c8 100644
--- a/packages/flutter/lib/src/material/input_decorator.dart
+++ b/packages/flutter/lib/src/material/input_decorator.dart
@@ -1478,10 +1478,7 @@
_labelTransform = Matrix4.identity()
..translate(dx, labelOffset.dy + dy)
..scale(scale);
- _transformLayer = context.pushTransform(needsCompositing, offset, _labelTransform!, _paintLabel,
- oldLayer: _transformLayer);
- } else {
- _transformLayer = null;
+ context.pushTransform(needsCompositing, offset, _labelTransform!, _paintLabel);
}
doPaint(icon);
@@ -1495,8 +1492,6 @@
doPaint(counter);
}
- TransformLayer? _transformLayer;
-
@override
bool hitTestSelf(Offset position) => true;
diff --git a/packages/flutter/lib/src/rendering/animated_size.dart b/packages/flutter/lib/src/rendering/animated_size.dart
index 8aa33d4..4a69949 100644
--- a/packages/flutter/lib/src/rendering/animated_size.dart
+++ b/packages/flutter/lib/src/rendering/animated_size.dart
@@ -7,7 +7,6 @@
import 'package:flutter/scheduler.dart';
import 'box.dart';
-import 'layer.dart';
import 'object.dart';
import 'shifted_box.dart';
@@ -295,13 +294,9 @@
void paint(PaintingContext context, Offset offset) {
if (child != null && _hasVisualOverflow && clipBehavior != Clip.none) {
final Rect rect = Offset.zero & size;
- _clipRectLayer = context.pushClipRect(needsCompositing, offset, rect, super.paint,
- clipBehavior: clipBehavior, oldLayer: _clipRectLayer);
+ context.pushClipRect(needsCompositing, offset, rect, super.paint, clipBehavior: clipBehavior);
} else {
- _clipRectLayer = null;
super.paint(context, offset);
}
}
-
- ClipRectLayer? _clipRectLayer;
}
diff --git a/packages/flutter/lib/src/rendering/editable.dart b/packages/flutter/lib/src/rendering/editable.dart
index 618da95..62a1e8d 100644
--- a/packages/flutter/lib/src/rendering/editable.dart
+++ b/packages/flutter/lib/src/rendering/editable.dart
@@ -2305,18 +2305,13 @@
@override
void paint(PaintingContext context, Offset offset) {
_layoutText(minWidth: constraints.minWidth, maxWidth: constraints.maxWidth);
- if (_hasVisualOverflow && clipBehavior != Clip.none) {
- _clipRectLayer = context.pushClipRect(needsCompositing, offset, Offset.zero & size, _paintContents,
- clipBehavior: clipBehavior, oldLayer: _clipRectLayer);
- } else {
- _clipRectLayer = null;
+ if (_hasVisualOverflow && clipBehavior != Clip.none)
+ context.pushClipRect(needsCompositing, offset, Offset.zero & size, _paintContents, clipBehavior: clipBehavior);
+ else
_paintContents(context, offset);
- }
_paintHandleLayers(context, getEndpointsForSelection(selection!));
}
- ClipRectLayer? _clipRectLayer;
-
@override
Rect? describeApproximatePaintClip(RenderObject child) => _hasVisualOverflow ? Offset.zero & size : null;
diff --git a/packages/flutter/lib/src/rendering/flex.dart b/packages/flutter/lib/src/rendering/flex.dart
index aa49869..3f7bc52 100644
--- a/packages/flutter/lib/src/rendering/flex.dart
+++ b/packages/flutter/lib/src/rendering/flex.dart
@@ -8,7 +8,6 @@
import 'box.dart';
import 'debug_overflow_indicator.dart';
-import 'layer.dart';
import 'object.dart';
/// How the child is inscribed into the available space.
@@ -981,12 +980,10 @@
return;
if (clipBehavior == Clip.none) {
- _clipRectLayer = null;
defaultPaint(context, offset);
} else {
// We have overflow and the clipBehavior isn't none. Clip it.
- _clipRectLayer = context.pushClipRect(needsCompositing, offset, Offset.zero & size, defaultPaint,
- clipBehavior: clipBehavior, oldLayer: _clipRectLayer);
+ context.pushClipRect(needsCompositing, offset, Offset.zero & size, defaultPaint, clipBehavior: clipBehavior);
}
assert(() {
@@ -1032,8 +1029,6 @@
}());
}
- ClipRectLayer? _clipRectLayer;
-
@override
Rect? describeApproximatePaintClip(RenderObject child) => _hasOverflow ? Offset.zero & size : null;
diff --git a/packages/flutter/lib/src/rendering/flow.dart b/packages/flutter/lib/src/rendering/flow.dart
index 8128aac..a694995 100644
--- a/packages/flutter/lib/src/rendering/flow.dart
+++ b/packages/flutter/lib/src/rendering/flow.dart
@@ -8,7 +8,6 @@
import 'package:vector_math/vector_math_64.dart';
import 'box.dart';
-import 'layer.dart';
import 'object.dart';
/// A context in which a [FlowDelegate] paints.
@@ -384,16 +383,12 @@
@override
void paint(PaintingContext context, Offset offset) {
if (clipBehavior == Clip.none) {
- _clipRectLayer = null;
_paintWithDelegate(context, offset);
} else {
- _clipRectLayer = context.pushClipRect(needsCompositing, offset, Offset.zero & size, _paintWithDelegate,
- clipBehavior: clipBehavior, oldLayer: _clipRectLayer);
+ context.pushClipRect(needsCompositing, offset, Offset.zero & size, _paintWithDelegate, clipBehavior: clipBehavior);
}
}
- ClipRectLayer? _clipRectLayer;
-
@override
bool hitTestChildren(BoxHitTestResult result, { required Offset position }) {
final List<RenderBox> children = getChildrenAsList();
diff --git a/packages/flutter/lib/src/rendering/list_wheel_viewport.dart b/packages/flutter/lib/src/rendering/list_wheel_viewport.dart
index 99d11fe..1264d28 100644
--- a/packages/flutter/lib/src/rendering/list_wheel_viewport.dart
+++ b/packages/flutter/lib/src/rendering/list_wheel_viewport.dart
@@ -8,7 +8,6 @@
import 'package:vector_math/vector_math_64.dart' show Matrix4;
import 'box.dart';
-import 'layer.dart';
import 'object.dart';
import 'viewport.dart';
import 'viewport_offset.dart';
@@ -785,23 +784,19 @@
void paint(PaintingContext context, Offset offset) {
if (childCount > 0) {
if (_shouldClipAtCurrentOffset() && clipBehavior != Clip.none) {
- _clipRectLayer = context.pushClipRect(
+ context.pushClipRect(
needsCompositing,
offset,
Offset.zero & size,
_paintVisibleChildren,
clipBehavior: clipBehavior,
- oldLayer: _clipRectLayer,
);
} else {
- _clipRectLayer = null;
_paintVisibleChildren(context, offset);
}
}
}
- ClipRectLayer? _clipRectLayer;
-
/// Paints all children visible in the current viewport.
void _paintVisibleChildren(PaintingContext context, Offset offset) {
RenderBox? childToPaint = firstChild;
diff --git a/packages/flutter/lib/src/rendering/platform_view.dart b/packages/flutter/lib/src/rendering/platform_view.dart
index 42f7f12..56524b8 100644
--- a/packages/flutter/lib/src/rendering/platform_view.dart
+++ b/packages/flutter/lib/src/rendering/platform_view.dart
@@ -206,16 +206,13 @@
// Clip the texture if it's going to paint out of the bounds of the renter box
// (see comment in _paintTexture for an explanation of when this happens).
if ((size.width < _currentAndroidViewSize.width || size.height < _currentAndroidViewSize.height) && clipBehavior != Clip.none) {
- _clipRectLayer = context.pushClipRect(true, offset, offset & size, _paintTexture, clipBehavior: clipBehavior,
- oldLayer: _clipRectLayer);
+ context.pushClipRect(true, offset, offset & size, _paintTexture, clipBehavior: clipBehavior);
return;
}
- _clipRectLayer = null;
+
_paintTexture(context, offset);
}
- ClipRectLayer? _clipRectLayer;
-
void _paintTexture(PaintingContext context, Offset offset) {
// As resizing the Android view happens asynchronously we don't know exactly when is a
// texture frame with the new size is ready for consumption.
diff --git a/packages/flutter/lib/src/rendering/rotated_box.dart b/packages/flutter/lib/src/rendering/rotated_box.dart
index f3835b3..a1bc0ce 100644
--- a/packages/flutter/lib/src/rendering/rotated_box.dart
+++ b/packages/flutter/lib/src/rendering/rotated_box.dart
@@ -9,7 +9,6 @@
import 'package:vector_math/vector_math_64.dart';
import 'box.dart';
-import 'layer.dart';
import 'object.dart';
const double _kQuarterTurnsInRadians = math.pi / 2.0;
@@ -109,16 +108,10 @@
@override
void paint(PaintingContext context, Offset offset) {
- if (child != null) {
- _transformLayer = context.pushTransform(needsCompositing, offset, _paintTransform!, _paintChild,
- oldLayer: _transformLayer);
- } else {
- _transformLayer = null;
- }
+ if (child != null)
+ context.pushTransform(needsCompositing, offset, _paintTransform!, _paintChild);
}
- TransformLayer? _transformLayer;
-
@override
void applyPaintTransform(RenderBox child, Matrix4 transform) {
if (_paintTransform != null)
diff --git a/packages/flutter/lib/src/rendering/shifted_box.dart b/packages/flutter/lib/src/rendering/shifted_box.dart
index 482535c..2735b61 100644
--- a/packages/flutter/lib/src/rendering/shifted_box.dart
+++ b/packages/flutter/lib/src/rendering/shifted_box.dart
@@ -9,7 +9,6 @@
import 'box.dart';
import 'debug.dart';
import 'debug_overflow_indicator.dart';
-import 'layer.dart';
import 'object.dart';
import 'stack.dart' show RelativeRect;
@@ -713,12 +712,10 @@
}
if (clipBehavior == Clip.none) {
- _clipRectLayer = null;
super.paint(context, offset);
} else {
// We have overflow and the clipBehavior isn't none. Clip it.
- _clipRectLayer = context.pushClipRect(needsCompositing, offset, Offset.zero & size, super.paint,
- clipBehavior: clipBehavior, oldLayer:_clipRectLayer);
+ context.pushClipRect(needsCompositing, offset, Offset.zero & size, super.paint, clipBehavior: clipBehavior);
}
// Display the overflow indicator.
@@ -728,8 +725,6 @@
}());
}
- ClipRectLayer? _clipRectLayer;
-
@override
Rect? describeApproximatePaintClip(RenderObject child) {
return _isOverflowing ? Offset.zero & size : null;
diff --git a/packages/flutter/lib/src/rendering/stack.dart b/packages/flutter/lib/src/rendering/stack.dart
index 049e3c9..1d05a99 100644
--- a/packages/flutter/lib/src/rendering/stack.dart
+++ b/packages/flutter/lib/src/rendering/stack.dart
@@ -8,7 +8,6 @@
import 'package:flutter/foundation.dart';
import 'box.dart';
-import 'layer.dart';
import 'object.dart';
/// An immutable 2D, axis-aligned, floating-point rectangle whose coordinates
@@ -614,16 +613,12 @@
@override
void paint(PaintingContext context, Offset offset) {
if (clipBehavior != Clip.none && _hasVisualOverflow) {
- _clipRectLayer = context.pushClipRect(needsCompositing, offset, Offset.zero & size, paintStack,
- clipBehavior: clipBehavior, oldLayer: _clipRectLayer);
+ context.pushClipRect(needsCompositing, offset, Offset.zero & size, paintStack, clipBehavior: clipBehavior);
} else {
- _clipRectLayer = null;
paintStack(context, offset);
}
}
- ClipRectLayer? _clipRectLayer;
-
@override
Rect? describeApproximatePaintClip(RenderObject child) => _hasVisualOverflow ? Offset.zero & size : null;
diff --git a/packages/flutter/lib/src/rendering/viewport.dart b/packages/flutter/lib/src/rendering/viewport.dart
index 37de0a0..e2be143 100644
--- a/packages/flutter/lib/src/rendering/viewport.dart
+++ b/packages/flutter/lib/src/rendering/viewport.dart
@@ -11,7 +11,6 @@
import 'package:vector_math/vector_math_64.dart';
import 'box.dart';
-import 'layer.dart';
import 'object.dart';
import 'sliver.dart';
import 'viewport_offset.dart';
@@ -630,16 +629,12 @@
if (firstChild == null)
return;
if (hasVisualOverflow && clipBehavior != Clip.none) {
- _clipRectLayer = context.pushClipRect(needsCompositing, offset, Offset.zero & size, _paintContents,
- clipBehavior: clipBehavior, oldLayer: _clipRectLayer);
+ context.pushClipRect(needsCompositing, offset, Offset.zero & size, _paintContents, clipBehavior: clipBehavior);
} else {
- _clipRectLayer = null;
_paintContents(context, offset);
}
}
- ClipRectLayer? _clipRectLayer;
-
void _paintContents(PaintingContext context, Offset offset) {
for (final RenderSliver child in childrenInPaintOrder) {
if (child.geometry!.visible)
diff --git a/packages/flutter/lib/src/rendering/wrap.dart b/packages/flutter/lib/src/rendering/wrap.dart
index 184018d..1e097b1 100644
--- a/packages/flutter/lib/src/rendering/wrap.dart
+++ b/packages/flutter/lib/src/rendering/wrap.dart
@@ -5,7 +5,6 @@
import 'dart:math' as math;
import 'box.dart';
-import 'layer.dart';
import 'object.dart';
/// How [Wrap] should align objects.
@@ -764,17 +763,12 @@
void paint(PaintingContext context, Offset offset) {
// TODO(ianh): move the debug flex overflow paint logic somewhere common so
// it can be reused here
- if (_hasVisualOverflow && clipBehavior != Clip.none) {
- _clipRectLayer = context.pushClipRect(needsCompositing, offset, Offset.zero & size, defaultPaint,
- clipBehavior: clipBehavior, oldLayer: _clipRectLayer);
- } else {
- _clipRectLayer = null;
+ if (_hasVisualOverflow && clipBehavior != Clip.none)
+ context.pushClipRect(needsCompositing, offset, Offset.zero & size, defaultPaint, clipBehavior: clipBehavior);
+ else
defaultPaint(context, offset);
- }
}
- ClipRectLayer? _clipRectLayer;
-
@override
void debugFillProperties(DiagnosticPropertiesBuilder properties) {
super.debugFillProperties(properties);
diff --git a/packages/flutter/lib/src/widgets/overlay.dart b/packages/flutter/lib/src/widgets/overlay.dart
index 444f76c..a72d018 100644
--- a/packages/flutter/lib/src/widgets/overlay.dart
+++ b/packages/flutter/lib/src/widgets/overlay.dart
@@ -756,16 +756,12 @@
@override
void paint(PaintingContext context, Offset offset) {
if (_hasVisualOverflow && clipBehavior != Clip.none) {
- _clipRectLayer = context.pushClipRect(needsCompositing, offset, Offset.zero & size, paintStack,
- clipBehavior: clipBehavior, oldLayer: _clipRectLayer);
+ context.pushClipRect(needsCompositing, offset, Offset.zero & size, paintStack, clipBehavior: clipBehavior);
} else {
- _clipRectLayer = null;
paintStack(context, offset);
}
}
- ClipRectLayer? _clipRectLayer;
-
@override
void visitChildrenForSemantics(RenderObjectVisitor visitor) {
RenderBox? child = _firstOnstageChild;
diff --git a/packages/flutter/lib/src/widgets/single_child_scroll_view.dart b/packages/flutter/lib/src/widgets/single_child_scroll_view.dart
index b62f3e6..4ffaee0 100644
--- a/packages/flutter/lib/src/widgets/single_child_scroll_view.dart
+++ b/packages/flutter/lib/src/widgets/single_child_scroll_view.dart
@@ -583,17 +583,13 @@
}
if (_shouldClipAtPaintOffset(paintOffset) && clipBehavior != Clip.none) {
- _clipRectLayer = context.pushClipRect(needsCompositing, offset, Offset.zero & size, paintContents,
- clipBehavior: clipBehavior, oldLayer: _clipRectLayer);
+ context.pushClipRect(needsCompositing, offset, Offset.zero & size, paintContents, clipBehavior: clipBehavior);
} else {
- _clipRectLayer = null;
paintContents(context, offset);
}
}
}
- ClipRectLayer? _clipRectLayer;
-
@override
void applyPaintTransform(RenderBox child, Matrix4 transform) {
final Offset paintOffset = _paintOffset;