Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@dnfield
Copy link
Contributor

@dnfield dnfield commented Jul 6, 2023

Fixes flutter/flutter#130084

If a display list is drawn into another display list and the child display list establishes a small clip, subsequent drawing operations are discarded when really they should not be.

The test is expected to render both a blue and a red square; before the fix it renders only the blue square since the red square is incorrectly clipped out.

See also dnfield/flutter_svg#938


// The display list may alter the clip, which must be restored to the current
// clip at the end of playback.
canvas_.Save();
Copy link
Contributor Author

Choose a reason for hiding this comment

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

(we restore back to restore_count below)

@dnfield dnfield added the autosubmit Merge PR when tree becomes green via auto submit App label Jul 6, 2023
@auto-submit auto-submit bot merged commit 06c9362 into flutter:main Jul 6, 2023
@dnfield dnfield deleted the dl_clip branch July 6, 2023 19:48
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jul 6, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jul 6, 2023
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Jul 6, 2023
…sions) (#130097)

Manual roll Flutter Engine from bd2e42b203e1 to 06c936205d96 (27 revisions)

Manual roll requested by [email protected]

flutter/engine@bd2e42b...06c9362

2023-07-06 [email protected] Handle nested display list clips in Impeller dispatcher (flutter/engine#43442)
2023-07-06 [email protected] Add Look Up to iOS selection controls (flutter/engine#43308)
2023-07-06 [email protected] Roll Skia from 6aaef9cbc3af to 10a43e57e0a6 (1 revision) (flutter/engine#43444)
2023-07-06 [email protected] Roll Skia from 620de5ac9f6b to 6aaef9cbc3af (1 revision) (flutter/engine#43441)
2023-07-06 [email protected] Revert "[iOS][Keyboard] Wait vsync on UI thread and update viewport inset to avoid jitter." (flutter/engine#43422)
2023-07-06 [email protected] Roll ICU from a2961dc659b4 to e8c3bc9ea97d (7 revisions) (flutter/engine#43440)
2023-07-06 [email protected] Further shard clang-tidy runs (flutter/engine#43428)
2023-07-06 [email protected] Release log capture at end of test (flutter/engine#43429)
2023-07-06 [email protected] Roll Fuchsia Mac SDK from uGhka7LBG80dM_I3a... to 3D0ft09qP4-Hp_3mQ... (flutter/engine#43439)
2023-07-06 [email protected] Roll Fuchsia Linux SDK from amH2MWTworhTLdMWy... to MEXi9Xyj7u24PSx_J... (flutter/engine#43438)
2023-07-06 [email protected] Use Windows Display Language (flutter/engine#43341)
2023-07-06 [email protected] Roll Skia from b2ba6e1d8c0e to 620de5ac9f6b (2 revisions) (flutter/engine#43437)
2023-07-06 [email protected] Roll Skia from 50e866b51a64 to b2ba6e1d8c0e (2 revisions) (flutter/engine#43436)
2023-07-06 [email protected] Roll Skia from 8ed969b60e98 to 50e866b51a64 (1 revision) (flutter/engine#43435)
2023-07-06 [email protected] Fix typo in painting.dart (flutter/engine#43378)
2023-07-06 [email protected] Roll Fuchsia Mac SDK from C3Q7MJBYkiin8zw-f... to uGhka7LBG80dM_I3a... (flutter/engine#43433)
2023-07-06 [email protected] Roll Fuchsia Linux SDK from iwgWLB4KaXslnaGwK... to amH2MWTworhTLdMWy... (flutter/engine#43432)
2023-07-05 [email protected] Roll Skia from a39421eb8d7b to 8ed969b60e98 (6 revisions) (flutter/engine#43431)
2023-07-05 [email protected] [Impeller] Allocate fewer textures in dedicated memory and adjust buffer flags. (flutter/engine#43313)
2023-07-05 [email protected] Roll Skia from d6e941012b87 to a39421eb8d7b (4 revisions) (flutter/engine#43427)
2023-07-05 [email protected] Roll Skia from e0b9e047332d to d6e941012b87 (2 revisions) (flutter/engine#43424)
2023-07-05 [email protected] [iOS] Avoid crash when backdrop filter is null for PlatformViews (flutter/engine#43150)
2023-07-05 [email protected] Roll Skia from 401c397f7235 to e0b9e047332d (1 revision) (flutter/engine#43420)
2023-07-05 [email protected] [Windows] Fix `FlutterWindow::GetNativeViewAccessible` crash (flutter/engine#43368)
2023-07-05 [email protected] [iOS] Fix FlutterViewController retain cycle (flutter/engine#43379)
2023-07-05 [email protected] Roll Skia from 23052eb28808 to 401c397f7235 (1 revision) (flutter/engine#43419)
2023-07-05 [email protected] Roll Skia from d58324bf653d to 23052eb28808 (3 revisions) (flutter/engine#43418)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from iwgWLB4KaXsl to MEXi9Xyj7u24
  fuchsia/sdk/core/mac-amd64 from C3Q7MJBYkiin to 3D0ft09qP4-H

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

To file a bug in Flutter: 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:
...
dnfield added a commit to dnfield/engine that referenced this pull request Jul 7, 2023
Fixes flutter/flutter#130084

If a display list is drawn into another display list and the child display list establishes a small clip, subsequent drawing operations are discarded when really they should not be.

The test is expected to render both a blue and a red square; before the fix it renders only the blue square since the red square is incorrectly clipped out.

See also dnfield/flutter_svg#938
dnfield added a commit to dnfield/engine that referenced this pull request Jul 7, 2023
Fixes flutter/flutter#130084

If a display list is drawn into another display list and the child display list establishes a small clip, subsequent drawing operations are discarded when really they should not be.

The test is expected to render both a blue and a red square; before the fix it renders only the blue square since the red square is incorrectly clipped out.

See also dnfield/flutter_svg#938
auto-submit bot pushed a commit that referenced this pull request Jul 10, 2023
)

CP issue: flutter/flutter#130149

Fixes flutter/flutter#130084

If a display list is drawn into another display list and the child display list establishes a small clip, subsequent drawing operations are discarded when really they should not be.

The test is expected to render both a blue and a red square; before the fix it renders only the blue square since the red square is incorrectly clipped out.

See also dnfield/flutter_svg#938
dnfield added a commit to dnfield/engine that referenced this pull request Jul 10, 2023
Fixes flutter/flutter#130084

If a display list is drawn into another display list and the child display list establishes a small clip, subsequent drawing operations are discarded when really they should not be.

The test is expected to render both a blue and a red square; before the fix it renders only the blue square since the red square is incorrectly clipped out.

See also dnfield/flutter_svg#938
auto-submit bot pushed a commit that referenced this pull request Jul 11, 2023
)

Cherry pick the same pick as for 3.10 (#43469 and flutter/flutter#130149).

Fixes flutter/flutter#130084

If a display list is drawn into another display list and the child display list establishes a small clip, subsequent drawing operations are discarded when really they should not be.

The test is expected to render both a blue and a red square; before the fix it renders only the blue square since the red square is incorrectly clipped out.

See also dnfield/flutter_svg#938
kjlubick pushed a commit to kjlubick/engine that referenced this pull request Jul 14, 2023
Fixes flutter/flutter#130084

If a display list is drawn into another display list and the child display list establishes a small clip, subsequent drawing operations are discarded when really they should not be.

The test is expected to render both a blue and a red square; before the fix it renders only the blue square since the red square is incorrectly clipped out.

See also dnfield/flutter_svg#938
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

autosubmit Merge PR when tree becomes green via auto submit App e: impeller

Projects

No open projects
Archived in project

Development

Successfully merging this pull request may close these issues.

Impeller's DisplayList dispatcher fails to save when drawing nested displaylists

3 participants