Skip to content

Conversation

@jonahwilliams
Copy link
Contributor

@jonahwilliams jonahwilliams commented Aug 29, 2023

Rather than changing the size of the child elements (relaying out text and potentially changing glyph shape and position due to pixel snapping), apply the stretch effect as a compositing effect - render the children to a texture and stretch the texture. If we end up using an image shader to apply an custom shader we'll need to do this anyway.

Fixes #129528

Before

no_patch.mp4

After

patch.mp4

@github-actions github-actions bot added framework flutter/packages/flutter repository. See also f: labels. f: scrolling Viewports, list views, slivers, etc. labels Aug 29, 2023
@jonahwilliams jonahwilliams marked this pull request as ready for review August 30, 2023 18:26
@jonahwilliams jonahwilliams requested a review from Piinks August 30, 2023 18:36
Copy link
Contributor

@Piinks Piinks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM - CI looks like an infra issue, I think github webhooks are still degraded right now

@flutter-dashboard
Copy link

Golden file changes have been found for this pull request. Click here to view and triage (e.g. because this is an intentional change).

If you are still iterating on this change and are not ready to resolve the images on the Flutter Gold dashboard, consider marking this PR as a draft pull request above. You will still be able to view image results on the dashboard, commenting will be silenced, and the check will not try to resolve itself until marked ready for review.

For more guidance, visit Writing a golden file test for package:flutter.

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.

Changes reported for pull request #133613 at sha 42136ef

@flutter-dashboard flutter-dashboard bot added the will affect goldens Changes to golden files label Aug 30, 2023
@jonahwilliams jonahwilliams added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 31, 2023
@jonahwilliams jonahwilliams merged commit a0862f1 into flutter:master Aug 31, 2023
@jonahwilliams jonahwilliams deleted the stretch_armstrong branch August 31, 2023 01:58
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 31, 2023
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Aug 31, 2023
flutter/flutter@1fe2495...c175cf8

2023-08-31 [email protected] Ignore macOS Cocoapods linting failure on DT_TOOLCHAIN_DIR error (flutter/flutter#133588)
2023-08-31 [email protected] `InputDecorationTheme.isCollapsed` doesn't work if `InputDecoration.isCollapsed` is not provided. (flutter/flutter#133189)
2023-08-31 [email protected] Roll Flutter Engine from 5156c03344eb to 772d5e996af8 (1 revision) (flutter/flutter#133752)
2023-08-31 [email protected] Roll Flutter Engine from 1917fa95ea55 to 5156c03344eb (2 revisions) (flutter/flutter#133745)
2023-08-31 [email protected] Roll Flutter Engine from 1f1071d3f5ba to 1917fa95ea55 (2 revisions) (flutter/flutter#133739)
2023-08-31 [email protected] Roll Flutter Engine from e88b21b6d4e8 to 1f1071d3f5ba (1 revision) (flutter/flutter#133737)
2023-08-31 [email protected] Roll Flutter Engine from 0559a733c888 to e88b21b6d4e8 (1 revision) (flutter/flutter#133735)
2023-08-31 [email protected] Roll Flutter Engine from 3b75e3de7ef3 to 0559a733c888 (1 revision) (flutter/flutter#133734)
2023-08-31 [email protected] [framework] use ImageFilter for stretch overscroll. (flutter/flutter#133613)
2023-08-31 [email protected] Roll Flutter Engine from 73e86369614d to 3b75e3de7ef3 (2 revisions) (flutter/flutter#133724)
2023-08-31 [email protected] Roll Flutter Engine from 8f1b77b1ac69 to 73e86369614d (1 revision) (flutter/flutter#133720)
2023-08-31 [email protected] Roll Flutter Engine from d37cef84d40d to 8f1b77b1ac69 (1 revision) (flutter/flutter#133714)
2023-08-31 [email protected] Mark leak in _DraggableScrollableSheetState. (flutter/flutter#133693)
2023-08-30 [email protected] Mark routing test as leaking. (flutter/flutter#133697)
2023-08-30 [email protected] Roll Flutter Engine from b63eee2e31cc to d37cef84d40d (3 revisions) (flutter/flutter#133706)
2023-08-30 [email protected] _RawAutocompleteState should dispose _highlightedOptionIndex. (flutter/flutter#133700)
2023-08-30 [email protected] Forward-fix a test that will break with an engine roll. (flutter/flutter#133619)
2023-08-30 [email protected] Fix `cancelButtonStyle` & `confirmButtonStyle` properties  from `TimePickerTheme`  aren't working (flutter/flutter#132843)
2023-08-30 [email protected] Updated DropdownMenu example and added a test (flutter/flutter#133592)
2023-08-30 [email protected] Add `cancelButtonStyle` & `confirmButtonStyle` to the `DatePickerThemeData` (flutter/flutter#132847)
2023-08-30 [email protected] Roll Flutter Engine from 31d5662dcb53 to b63eee2e31cc (1 revision) (flutter/flutter#133692)
2023-08-30 [email protected] Fixing memory leak in EditableTextState (flutter/flutter#131377)
2023-08-30 [email protected] Roll Flutter Engine from 69f04bdfe952 to 31d5662dcb53 (14 revisions) (flutter/flutter#133683)
2023-08-30 [email protected] Expose barrierDismissible in PageRoute constructor (flutter/flutter#133659)
2023-08-30 [email protected] Update the infrastructure issue template (flutter/flutter#133519)
2023-08-30 [email protected] Reland "Remove ImageProvider.load, DecoderCallback and `PaintingBinding.instantiateImageCodec` (#132679) (reverted in #133482) (flutter/flutter#133605)
2023-08-30 [email protected] Roll Packages from d7d3150 to 64af59e (4 revisions) (flutter/flutter#133675)
2023-08-30 [email protected] Update & improve `TabBar.labelColor` tests (flutter/flutter#133668)
2023-08-30 [email protected] Bump gradle heap size limits in templates (flutter/flutter#133671)
2023-08-30 [email protected] Marks Windows module_test to be flaky (flutter/flutter#133640)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages
Please CC [email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Nov 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autosubmit Merge PR when tree becomes green via auto submit App f: scrolling Viewports, list views, slivers, etc. framework flutter/packages/flutter repository. See also f: labels. will affect goldens Changes to golden files

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Jittery deformation of text when stretching on overscroll

2 participants