From 2132a0c7a3d2a107190238ca0c5570baa0467bb7 Mon Sep 17 00:00:00 2001 From: Ferhat Date: Wed, 26 Feb 2020 15:51:30 -0800 Subject: [PATCH] Revert "[Perf/codesize] Reduce constraint member reads during layout (#51418)" (#51489) This reverts commit 69080e07e6bb178332bf546cf83054a85b91b2fe. --- packages/flutter/lib/src/cupertino/action_sheet.dart | 1 - packages/flutter/lib/src/cupertino/dialog.dart | 1 - packages/flutter/lib/src/cupertino/refresh.dart | 1 - packages/flutter/lib/src/cupertino/segmented_control.dart | 1 - .../flutter/lib/src/cupertino/sliding_segmented_control.dart | 1 - packages/flutter/lib/src/cupertino/text_selection.dart | 1 - packages/flutter/lib/src/material/app_bar.dart | 1 - packages/flutter/lib/src/material/button.dart | 1 - packages/flutter/lib/src/material/floating_action_button.dart | 1 - packages/flutter/lib/src/material/input_decorator.dart | 1 - packages/flutter/lib/src/material/list_tile.dart | 1 - packages/flutter/lib/src/rendering/animated_size.dart | 2 +- packages/flutter/lib/src/rendering/editable.dart | 1 - packages/flutter/lib/src/rendering/flex.dart | 2 -- packages/flutter/lib/src/rendering/flow.dart | 1 - packages/flutter/lib/src/rendering/list_body.dart | 1 - packages/flutter/lib/src/rendering/paragraph.dart | 1 - packages/flutter/lib/src/rendering/proxy_box.dart | 2 -- packages/flutter/lib/src/rendering/shifted_box.dart | 4 ---- packages/flutter/lib/src/rendering/sliver.dart | 1 - packages/flutter/lib/src/rendering/sliver_fill.dart | 3 --- .../flutter/lib/src/rendering/sliver_fixed_extent_list.dart | 1 - packages/flutter/lib/src/rendering/sliver_grid.dart | 1 - packages/flutter/lib/src/rendering/sliver_list.dart | 1 - packages/flutter/lib/src/rendering/sliver_padding.dart | 1 - .../flutter/lib/src/rendering/sliver_persistent_header.dart | 3 --- packages/flutter/lib/src/rendering/stack.dart | 1 - packages/flutter/lib/src/rendering/table.dart | 1 - packages/flutter/lib/src/rendering/viewport.dart | 1 - packages/flutter/lib/src/rendering/wrap.dart | 1 - packages/flutter/lib/src/widgets/layout_builder.dart | 1 - .../flutter/lib/src/widgets/single_child_scroll_view.dart | 1 - 32 files changed, 1 insertion(+), 41 deletions(-) diff --git a/packages/flutter/lib/src/cupertino/action_sheet.dart b/packages/flutter/lib/src/cupertino/action_sheet.dart index ce19f755d3..49f4c533d6 100644 --- a/packages/flutter/lib/src/cupertino/action_sheet.dart +++ b/packages/flutter/lib/src/cupertino/action_sheet.dart @@ -668,7 +668,6 @@ class _RenderCupertinoAlert extends RenderBox { @override void performLayout() { - final BoxConstraints constraints = this.constraints; final bool hasDivider = contentSection.getMaxIntrinsicHeight(constraints.maxWidth) > 0.0 && actionsSection.getMaxIntrinsicHeight(constraints.maxWidth) > 0.0; final double dividerThickness = hasDivider ? _dividerThickness : 0.0; diff --git a/packages/flutter/lib/src/cupertino/dialog.dart b/packages/flutter/lib/src/cupertino/dialog.dart index 79c6b7fd46..305bba5d55 100644 --- a/packages/flutter/lib/src/cupertino/dialog.dart +++ b/packages/flutter/lib/src/cupertino/dialog.dart @@ -1540,7 +1540,6 @@ class _RenderCupertinoDialogActions extends RenderBox @override void performLayout() { - final BoxConstraints constraints = this.constraints; if (_isSingleButtonRow(dialogWidth)) { if (childCount == 1) { // We have 1 button. Our size is the width of the dialog and the height diff --git a/packages/flutter/lib/src/cupertino/refresh.dart b/packages/flutter/lib/src/cupertino/refresh.dart index 342d25ed37..1436da182c 100644 --- a/packages/flutter/lib/src/cupertino/refresh.dart +++ b/packages/flutter/lib/src/cupertino/refresh.dart @@ -104,7 +104,6 @@ class _RenderCupertinoSliverRefresh extends RenderSliver @override void performLayout() { - final SliverConstraints constraints = this.constraints; // Only pulling to refresh from the top is currently supported. assert(constraints.axisDirection == AxisDirection.down); assert(constraints.growthDirection == GrowthDirection.forward); diff --git a/packages/flutter/lib/src/cupertino/segmented_control.dart b/packages/flutter/lib/src/cupertino/segmented_control.dart index 3506c0ad50..4d5cb5fc18 100644 --- a/packages/flutter/lib/src/cupertino/segmented_control.dart +++ b/packages/flutter/lib/src/cupertino/segmented_control.dart @@ -628,7 +628,6 @@ class _RenderSegmentedControl extends RenderBox @override void performLayout() { - final BoxConstraints constraints = this.constraints; double maxHeight = _kMinSegmentedControlHeight; double childWidth = constraints.minWidth / childCount; diff --git a/packages/flutter/lib/src/cupertino/sliding_segmented_control.dart b/packages/flutter/lib/src/cupertino/sliding_segmented_control.dart index e34c4946f3..b593fd8061 100644 --- a/packages/flutter/lib/src/cupertino/sliding_segmented_control.dart +++ b/packages/flutter/lib/src/cupertino/sliding_segmented_control.dart @@ -828,7 +828,6 @@ class _RenderSegmentedControl extends RenderBox @override void performLayout() { - final BoxConstraints constraints = this.constraints; double childWidth = (constraints.minWidth - totalSeparatorWidth) / childCount; double maxHeight = _kMinSegmentedControlHeight; diff --git a/packages/flutter/lib/src/cupertino/text_selection.dart b/packages/flutter/lib/src/cupertino/text_selection.dart index bbb0524070..58835fc272 100644 --- a/packages/flutter/lib/src/cupertino/text_selection.dart +++ b/packages/flutter/lib/src/cupertino/text_selection.dart @@ -159,7 +159,6 @@ class _ToolbarRenderBox extends RenderShiftedBox { @override void performLayout() { - final BoxConstraints constraints = this.constraints; size = constraints.biggest; if (child == null) { diff --git a/packages/flutter/lib/src/material/app_bar.dart b/packages/flutter/lib/src/material/app_bar.dart index b06708138f..e2ff809c92 100644 --- a/packages/flutter/lib/src/material/app_bar.dart +++ b/packages/flutter/lib/src/material/app_bar.dart @@ -1346,7 +1346,6 @@ class _RenderAppBarTitleBox extends RenderAligningShiftedBox { @override void performLayout() { - final BoxConstraints constraints = this.constraints; final BoxConstraints innerConstraints = constraints.copyWith(maxHeight: double.infinity); child.layout(innerConstraints, parentUsesSize: true); size = constraints.constrain(child.size); diff --git a/packages/flutter/lib/src/material/button.dart b/packages/flutter/lib/src/material/button.dart index 15aef5239f..43e8730ca1 100644 --- a/packages/flutter/lib/src/material/button.dart +++ b/packages/flutter/lib/src/material/button.dart @@ -509,7 +509,6 @@ class _RenderInputPadding extends RenderShiftedBox { @override void performLayout() { - final BoxConstraints constraints = this.constraints; if (child != null) { child.layout(constraints, parentUsesSize: true); final double height = math.max(child.size.width, minSize.width); diff --git a/packages/flutter/lib/src/material/floating_action_button.dart b/packages/flutter/lib/src/material/floating_action_button.dart index a7a4ad3ae8..32b6e3c584 100644 --- a/packages/flutter/lib/src/material/floating_action_button.dart +++ b/packages/flutter/lib/src/material/floating_action_button.dart @@ -582,7 +582,6 @@ class _RenderChildOverflowBox extends RenderAligningShiftedBox { @override void performLayout() { - final BoxConstraints constraints = this.constraints; if (child != null) { child.layout(const BoxConstraints(), parentUsesSize: true); size = Size( diff --git a/packages/flutter/lib/src/material/input_decorator.dart b/packages/flutter/lib/src/material/input_decorator.dart index 454183b733..3fcd159546 100644 --- a/packages/flutter/lib/src/material/input_decorator.dart +++ b/packages/flutter/lib/src/material/input_decorator.dart @@ -1257,7 +1257,6 @@ class _RenderDecoration extends RenderBox { @override void performLayout() { - final BoxConstraints constraints = this.constraints; _labelTransform = null; final _RenderDecorationLayout layout = _layout(constraints); diff --git a/packages/flutter/lib/src/material/list_tile.dart b/packages/flutter/lib/src/material/list_tile.dart index 26ee74a4c7..8fa5363e2e 100644 --- a/packages/flutter/lib/src/material/list_tile.dart +++ b/packages/flutter/lib/src/material/list_tile.dart @@ -1328,7 +1328,6 @@ class _RenderListTile extends RenderBox { // https://material.io/design/components/lists.html#specs @override void performLayout() { - final BoxConstraints constraints = this.constraints; final bool hasLeading = leading != null; final bool hasSubtitle = subtitle != null; final bool hasTrailing = trailing != null; diff --git a/packages/flutter/lib/src/rendering/animated_size.dart b/packages/flutter/lib/src/rendering/animated_size.dart index 4b02cbf619..1e4dfe3b3a 100644 --- a/packages/flutter/lib/src/rendering/animated_size.dart +++ b/packages/flutter/lib/src/rendering/animated_size.dart @@ -170,7 +170,7 @@ class RenderAnimatedSize extends RenderAligningShiftedBox { void performLayout() { _lastValue = _controller.value; _hasVisualOverflow = false; - final BoxConstraints constraints = this.constraints; + if (child == null || constraints.isTight) { _controller.stop(); size = _sizeTween.begin = _sizeTween.end = constraints.smallest; diff --git a/packages/flutter/lib/src/rendering/editable.dart b/packages/flutter/lib/src/rendering/editable.dart index 7f9176b95f..5fa7765fe5 100644 --- a/packages/flutter/lib/src/rendering/editable.dart +++ b/packages/flutter/lib/src/rendering/editable.dart @@ -1743,7 +1743,6 @@ class RenderEditable extends RenderBox with RelayoutWhenSystemFontsChangeMixin { } @override void performLayout() { - final BoxConstraints constraints = this.constraints; _layoutText(minWidth: constraints.minWidth, maxWidth: constraints.maxWidth); _caretPrototype = _getCaretPrototype; _selectionRects = null; diff --git a/packages/flutter/lib/src/rendering/flex.dart b/packages/flutter/lib/src/rendering/flex.dart index 45cdc722a7..75ae5d62a3 100644 --- a/packages/flutter/lib/src/rendering/flex.dart +++ b/packages/flutter/lib/src/rendering/flex.dart @@ -636,8 +636,6 @@ class RenderFlex extends RenderBox with ContainerRenderObjectMixin 0.0; excludeFromSemanticsScrolling = overlapsContent || (constraints.scrollOffset > maxExtent - minExtent); @@ -554,7 +552,6 @@ abstract class RenderSliverFloatingPersistentHeader extends RenderSliverPersiste @override void performLayout() { - final SliverConstraints constraints = this.constraints; final double maxExtent = this.maxExtent; if (_lastActualScrollOffset != null && // We've laid out at least once to get an initial position, and either ((constraints.scrollOffset < _lastActualScrollOffset) || // we are scrolling back, so should reveal, or diff --git a/packages/flutter/lib/src/rendering/stack.dart b/packages/flutter/lib/src/rendering/stack.dart index 5eacb7bfdc..c72c1d146e 100644 --- a/packages/flutter/lib/src/rendering/stack.dart +++ b/packages/flutter/lib/src/rendering/stack.dart @@ -517,7 +517,6 @@ class RenderStack extends RenderBox @override void performLayout() { - final BoxConstraints constraints = this.constraints; _resolve(); assert(_resolvedAlignment != null); _hasVisualOverflow = false; diff --git a/packages/flutter/lib/src/rendering/table.dart b/packages/flutter/lib/src/rendering/table.dart index df14823a80..f627f952e0 100644 --- a/packages/flutter/lib/src/rendering/table.dart +++ b/packages/flutter/lib/src/rendering/table.dart @@ -992,7 +992,6 @@ class RenderTable extends RenderBox { @override void performLayout() { - final BoxConstraints constraints = this.constraints; final int rows = this.rows; final int columns = this.columns; assert(_children.length == rows * columns); diff --git a/packages/flutter/lib/src/rendering/viewport.dart b/packages/flutter/lib/src/rendering/viewport.dart index 6b2a5dbf39..8dde2655f8 100644 --- a/packages/flutter/lib/src/rendering/viewport.dart +++ b/packages/flutter/lib/src/rendering/viewport.dart @@ -1699,7 +1699,6 @@ class RenderShrinkWrappingViewport extends RenderViewportBase