New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 867191 link

Starred by 3 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 3
Type: Bug



Sign in to add a comment

MacViews: CATransactionCoordinator doesn't work on 10.10 Yosemite

Project Member Reported by tapted@chromium.org, Jul 24

Issue description

Chrome Version       : 70.0.3501.2
OS Version: OS X 10.10.5

What steps will reproduce the problem?
1. Resize the browser, or show the edit bookmark window modal sheet

What is the expected result?

No grey stuff

What happens instead of that?

Browser window shows grey gutters during resize. Content doesn't resize in-step.

Edit bookmark window modal sheet animates in completely grey.


 
Labels: Group-Painting_Rendering_Compositing
Labels: Needs-Triage-M70
Cc: krajshree@chromium.org
Labels: Needs-Feedback Triaged-ET
Unable to reproduce the issue on mac 10.13.3 using chrome reported version #70.0.3501.2.
Attached a screen cast for reference.

Following are the steps followed to reproduce the issue.
------------
1. Resized the browser and showed the edit bookmark window modal sheet.
2. Observed that no grey stuff was observed.

tapted@ - Could you please check the attached screen and please let us know if anything missed from our end.

Thanks...!!
867191.mp4
5.0 MB View Download
Cc: ellyjo...@chromium.org
Status: Available (was: Unconfirmed)
Re. #3, the issue is reported to only happen on 10.10.

This is accurate… 10.10 is going to need extra work. +ellyjones@ for triage.
"Well, that sucks."

What's our fix path?
Owner: sdy@chromium.org
Status: Assigned (was: Available)
Here's one idea:

    @interface NSAnimationContext (PrivateAPI)
    + (void)addCommitHandler:(void (^)())handler;
    @end

    void CATransactionCoordinator::SynchronizeImpl() {
      if (@available(macOS 10.11, *) {
          // Existing behavior
      } else {
        [CATransaction begin];
        dispatch_async(dispatch_get_main_queue(), ^{
            PreCommitHandler();
            NSDisableScreenUpdates();
            PostCommitHandler();
            NSEnableScreenUpdates();
            [CATransaction commit];
        });
      }
    }

…but I need to test it on real hardware when I'm back at the office. My question is how to prioritize it relative to other things.
(The order of those lines might be off FWIW. You might actually want |[CATransaction commit];| right after PreCommitHandler(), but it depends on what plays nicely with the window server on 10.10.)
This sounds like a Pri-3 to me.
Labels: Target-71 M-71
I want to fix this, even if it only affects 10.10. It makes Chrome feel super janky.
Labels: -M-71 -Target-71 Target-70 M-70
Actually, let's target M70.

Sign in to add a comment