Skip to content

ListWheelViewport should set needsCompositing #14224

Closed

Description

@xster

In the example https://github.com/xster/flutter-test/blob/master/t71_text_transform_rendering_2/lib/main.dart

TransformLayers without text works. canvas.transform works. But TransformLayers with text no longer works.

Activity

  1. self-assigned this
    on Jan 23, 2018
  2. jason-simmons commented on Jan 23, 2018

    @jason-simmons
    Member

    This was introduced when we stopped applying a cull rectangle to the PaintingContext's canvas:
    0434ae2

    The transform will render correctly if you revert to constructing new Canvas(_recorder, estimatedBounds) in PaintingContext._startRecording

  3. xster commented on Jan 23, 2018

    @xster
    MemberAuthor

    Thanks for the hint. I'm not super sure what what the instructive is from the RenderObject's perspective. The PaintingContext is already created.

    Is there a way to re-assert using canvas's bounds once the PaintingContext is already created (before it was provided to the RenderObject.paint)?

  4. Hixie commented on Jan 25, 2018

    @Hixie
    Contributor

    That's weird. Bug in skia?

  5. xster commented on Jan 25, 2018

    @xster
    MemberAuthor

    Tried on tip of skia and messed around a bit but couldn't figure it out.

    https://bugs.chromium.org/p/skia/issues/detail?id=7537

  6. xster commented on Mar 16, 2018

    @xster
    MemberAuthor

    This issue is no longer reproducible on head. Closing.

  7. xster commented on Mar 28, 2018

    @xster
    MemberAuthor

    The issue reappeared on skia head. Follow-up in https://bugs.chromium.org/p/skia/issues/detail?id=7537

  8. reopened this on Mar 28, 2018
  9. xster commented on Mar 29, 2018

    @xster
    MemberAuthor

    Seems to have broken between engine e61bb9a and 3e877d3

  10. jason-simmons commented on Mar 29, 2018

    @jason-simmons
    Member

    This bug was reintroduced by flutter-team-archive/engine@c9da000

    That commit replaces an SkCanvas::save()/restore() with an equivalent translate/untranslate in order to work around another Skia bug (see https://bugs.chromium.org/p/skia/issues/detail?id=7739)

  11. jslavitz commented on Oct 25, 2018

    @jslavitz
    Contributor

    @xster Looks like this works now!
    screenshot_20181025-141650

  12. xster commented on Oct 25, 2018

    @xster
    MemberAuthor

    Cool. Must have been fixed upstream. We should change https://github.com/flutter/flutter/blob/master/packages/flutter/lib/src/rendering/list_wheel_viewport.dart#L896 to needsCompositing then close this issue.

  13. added
    engineflutter/engine related. See also e: labels.
    frameworkflutter/packages/flutter repository. See also f: labels.
    on Dec 11, 2018
  14. added this to the milestone on Dec 11, 2018
  15. changed the title [-]TransformLayers doesn't work on text[/-] [+]ListWheelViewport should set needsCompositing[/+] on Jan 16, 2019
  16. removed
    engineflutter/engine related. See also e: labels.
    on Jan 16, 2019
  17. LongCatIsLooong commented on Mar 6, 2020

    @LongCatIsLooong
    Contributor

    The issue should be fixed on master, despite having a visual glitch: #41654. Closing

  18. github-actions commented on Aug 16, 2021

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  19. locked as resolved and limited conversation to collaborators on Aug 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

frameworkflutter/packages/flutter repository. See also f: labels.

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions