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

Issue 798792 link

Starred by 14 users

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: 2018-02-12
OS: Mac
Pri: 1
Type: Bug



Sign in to add a comment

High Sierra: When a page causes the status bubble to appear on a window in an inactive space, Chrome switches to that space.

Project Member Reported by sdy@chromium.org, Jan 3 2018

Issue description

Chrome Version: 65.0.3309.0
OS: macOS 10.13.2 (17C88)

I think this regressed in 8f1989aa6b1becf26cafbcd3dc972a43009d3883, and somehow ed213854ffb5242584658b65a53081ff36ebaaa1 didn't fix it.

What steps will reproduce the problem?
(1) Load nytimes.com or another heavy website in a tab.
(2) Open a new window and make it fullscreen.
(3) Switch spaces back to the nytimes.com window.
(4) In the console, run `setTimeout(() => { location.reload(); }, 2000)`
(5) Quickly switch back to the fullscreen window.

What is the expected result?
Nothing (visibly) happens.

What happens instead?
After two seconds, the system switches to the space with the nytimes.com window.
 

Comment 1 by sdy@chromium.org, Jan 3 2018

Labels: ReleaseBlock-Stable
Status: Started (was: Assigned)
This is just bad enough for RBS. Working on it now.

Comment 2 by sdy@chromium.org, Jan 3 2018

Components: -UI>Browser>FullScreen
Labels: Hotlist-HighSierra
Summary: High Sierra: When a page causes the status bubble to appear on a window in an inactive space, Chrome switches to that space. (was: When a page causes the status bubble to appear, Chrome may switch spaces from a fullscreen window to the window with the bubble.)
Oops, this isn't related to fullscreen. I think it's a variant of  issue 783521 … and only seems to happen on 10.13.

Comment 3 by sdy@chromium.org, Jan 5 2018

Filed rdar://36299823 with Apple. Description is below, sample code and videos which I attached to the radar are attached here.

- - -

Area:
Spaces

Summary:
Starting in macOS 10.13, adding a child window to an window in an inactive space A while another application window is active in space B causes the system to switch to space A.

In Chrome, this happens when a window in an inactive space shows its status bubble in response to network activity.

Steps to Reproduce:
1. Build and run the attached test program (a build command line is at the top of the file).

Expected Results:
A green window appears in full screen.

Actual Results:
10.12: See expected results.
10.13: A green window appears in full screen, then the system switches spaces to reveal blue and red windows.

Version/Build:
10.13.2 (17C88)

Configuration:
n/a
child_window_space_switcharoo.m
2.0 KB View Download
space_switcharoo_good_10.12.mov
1.9 MB Download
space_switcharoo_bad_10.13.2.mov
10.9 MB Download
Cc: manoranj...@chromium.org
Friendly reminder: M64 stable is 11 days away and this is marked as release block stable. 
sdy@ This issue is marked as M64 stable, could you please let us know is there any latest update available on this issue?

Thanks!

Comment 7 by sdy@chromium.org, Jan 18 2018

Labels: -ReleaseBlock-Stable M-65
I'm super uncomfortable merging the fix to stable without time to bake — it's not safe enough. The bug is not great but won't be hit frequently enough to be worth blocking the release. My preferred course of action is to land this in M65 and then merge to M64 in a few days so that it's picked up by respins. Thoughts?

Comment 8 by sdy@chromium.org, Jan 18 2018

Labels: -M-64 RegressedIn-64 FoundIn-64 FoundIn-65
(I think I'm using these labels right, but let me know if not.)
Project Member

Comment 9 by bugdroid1@chromium.org, Jan 19 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/57a73a51aa9de8ec4e93ee414c32aed8fb81d0a5

commit 57a73a51aa9de8ec4e93ee414c32aed8fb81d0a5
Author: Sidney San Martín <sdy@chromium.org>
Date: Fri Jan 19 05:50:24 2018

Work around a High Sierra bug that makes a window in an inactive space activate if it shows its status bubble.

Starting in 10.13, adding a child window to a window in an inactive space
brings it to the front if the user is interacting with its application in the
active space. I can't find a nice workaround, and hidden windows showing a
status bubble have triggered similar issues in the past, so this workaround
waits to add the status bubble to a window until it's visible.

Bug:  798792 ,  783521 
Change-Id: I35cd7df87d74b6e1237cd91fc91acf455c443f82
Reviewed-on: https://chromium-review.googlesource.com/849559
Commit-Queue: Sidney San Martín <sdy@chromium.org>
Reviewed-by: Trent Apted <tapted@chromium.org>
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Cr-Commit-Position: refs/heads/master@{#530431}
[modify] https://crrev.com/57a73a51aa9de8ec4e93ee414c32aed8fb81d0a5/chrome/browser/ui/cocoa/status_bubble_mac.h
[modify] https://crrev.com/57a73a51aa9de8ec4e93ee414c32aed8fb81d0a5/chrome/browser/ui/cocoa/status_bubble_mac.mm
[modify] https://crrev.com/57a73a51aa9de8ec4e93ee414c32aed8fb81d0a5/chrome/browser/ui/cocoa/status_bubble_mac_unittest.mm
[modify] https://crrev.com/57a73a51aa9de8ec4e93ee414c32aed8fb81d0a5/ui/base/test/cocoa_helper.h
[modify] https://crrev.com/57a73a51aa9de8ec4e93ee414c32aed8fb81d0a5/ui/base/test/cocoa_helper.mm

Comment 10 by sdy@chromium.org, Jan 26 2018

Labels: Merge-Request-65
Status: Fixed (was: Started)
Project Member

Comment 11 by sheriffbot@chromium.org, Jan 27 2018

Labels: -Merge-Request-65 Hotlist-Merge-Approved Merge-Approved-65
Your change meets the bar and is auto-approved for M65. Please go ahead and merge the CL to branch 3325 manually. Please contact milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), bhthompson@(ChromeOS), govind@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Pls merge your change to M65 branch 3325 ASAP so we can pick it up for next M65 dev release. Thank you.
Project Member

Comment 13 by bugdroid1@chromium.org, Jan 29 2018

Labels: -merge-approved-65 merge-merged-3325
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ee14e0da0d09a0ac25db1e935c8a64b66dc51c5a

commit ee14e0da0d09a0ac25db1e935c8a64b66dc51c5a
Author: Sidney San Martín <sdy@chromium.org>
Date: Mon Jan 29 18:25:16 2018

Work around a High Sierra bug that makes a window in an inactive space activate if it shows its status bubble.

Starting in 10.13, adding a child window to a window in an inactive space
brings it to the front if the user is interacting with its application in the
active space. I can't find a nice workaround, and hidden windows showing a
status bubble have triggered similar issues in the past, so this workaround
waits to add the status bubble to a window until it's visible.

TBR=sdy@chromium.org

(cherry picked from commit 57a73a51aa9de8ec4e93ee414c32aed8fb81d0a5)

Bug:  798792 ,  783521 
Change-Id: I35cd7df87d74b6e1237cd91fc91acf455c443f82
Reviewed-on: https://chromium-review.googlesource.com/849559
Commit-Queue: Sidney San Martín <sdy@chromium.org>
Reviewed-by: Trent Apted <tapted@chromium.org>
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#530431}
Reviewed-on: https://chromium-review.googlesource.com/891498
Reviewed-by: Sidney San Martín <sdy@chromium.org>
Cr-Commit-Position: refs/branch-heads/3325@{#140}
Cr-Branched-From: bc084a8b5afa3744a74927344e304c02ae54189f-refs/heads/master@{#530369}
[modify] https://crrev.com/ee14e0da0d09a0ac25db1e935c8a64b66dc51c5a/chrome/browser/ui/cocoa/status_bubble_mac.h
[modify] https://crrev.com/ee14e0da0d09a0ac25db1e935c8a64b66dc51c5a/chrome/browser/ui/cocoa/status_bubble_mac.mm
[modify] https://crrev.com/ee14e0da0d09a0ac25db1e935c8a64b66dc51c5a/chrome/browser/ui/cocoa/status_bubble_mac_unittest.mm
[modify] https://crrev.com/ee14e0da0d09a0ac25db1e935c8a64b66dc51c5a/ui/base/test/cocoa_helper.h
[modify] https://crrev.com/ee14e0da0d09a0ac25db1e935c8a64b66dc51c5a/ui/base/test/cocoa_helper.mm

Comment 14 by sdy@chromium.org, Jan 29 2018

Cc: lgrey@chromium.org ellyjo...@chromium.org a...@chromium.org sdy@chromium.org erikc...@chromium.org
 Issue 806790  has been merged into this issue.

Comment 15 by sdy@chromium.org, Jan 29 2018

Cc: abdulsyed@chromium.org
Just got a report of this in the wild. abdulsyed@: How do you feel about merging this back to M64/what do you think we should do?

Comment 16 by sdy@chromium.org, Jan 29 2018

Cc: -sdy@chromium.org -a...@chromium.org -lgrey@chromium.org -ellyjo...@chromium.org -erikc...@chromium.org
(- some folks who got roped in via the other issue, feel free to re-add yourself if you care.)

Comment 17 by sdy@chromium.org, Feb 5 2018

Cc: ellyjo...@chromium.org
 Issue 807828  has been merged into this issue.

Comment 18 by sdy@chromium.org, Feb 9 2018

 Issue 810818  has been merged into this issue.

Comment 19 by sdy@chromium.org, Feb 10 2018

 Issue 811030  has been merged into this issue.

Comment 20 by sdy@chromium.org, Feb 10 2018

NextAction: 2018-02-12
The NextAction date has arrived: 2018-02-12
We should probably merge this to M64 as well. abdul, what do you think? Unfortunately it isn't a low-risk merge, but it's had some soak time now, and this bug is quite a bad user experience :\

Comment 23 by sdy@chromium.org, Feb 12 2018

Labels: Merge-Request-64

Comment 24 by sdy@chromium.org, Feb 12 2018

The last time I talked to abdulsyed@, it sounded like he was okay with a merge if ellyjones@ was. I'll try to chat about it once MTV comes online :).
Cc: pbomm...@chromium.org
Thanks sdy@ and ellyjones@! Yes from a ux perspective, I agree it's a bad regression. I see that this has baked in Dev, Canary, Beta for over 2 weeks now. Based on that, I'm fine with approving this for M64.

However, can you please confirm there aren't any untriaged bugs or other issues in earlier channels that might be related or caused by this change? I'm just concerned that bugs usually become more prominent in stable channel, and that we're not introducing a new regression that hasn't been discovered yet. pbommana@: have you seen any related issues in Mac M65 Beta?

Comment 26 by sdy@chromium.org, Feb 12 2018

abdulsyed@: pbommana@ and I both looked and couldn't find any.
Labels: -Merge-Request-64 Merge-Approved-64
branch:3282
Project Member

Comment 29 by bugdroid1@chromium.org, Feb 12 2018

Labels: -merge-approved-64 merge-merged-3282
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a80e723e5c134d659730491586c4cdf05cbb7bb8

commit a80e723e5c134d659730491586c4cdf05cbb7bb8
Author: Sidney San Martín <sdy@chromium.org>
Date: Mon Feb 12 22:05:58 2018

Cherry pick space switching fixes to M64.

> Work around a High Sierra bug that makes a window in an inactive space activate if it shows its status bubble.
>
> Starting in 10.13, adding a child window to a window in an inactive space
> brings it to the front if the user is interacting with its application in the
> active space. I can't find a nice workaround, and hidden windows showing a
> status bubble have triggered similar issues in the past, so this workaround
> waits to add the status bubble to a window until it's visible.
>
> Bug:  798792 ,  783521 
> Change-Id: I35cd7df87d74b6e1237cd91fc91acf455c443f82
> Reviewed-on: https://chromium-review.googlesource.com/849559
> Commit-Queue: Sidney San Martín <sdy@chromium.org>
> Reviewed-by: Trent Apted <tapted@chromium.org>
> Reviewed-by: Robert Sesek <rsesek@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#530431}
>
> Delete Mac status bubble code for old OSs.
>
> Bug:  780521 
> Change-Id: I18931966904196185e9693a80e62ae5db101c5ee
> Reviewed-on: https://chromium-review.googlesource.com/853035
> Commit-Queue: Sidney San Martín <sdy@chromium.org>
> Reviewed-by: Robert Sesek <rsesek@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#527481}

Change-Id: I45d9d384913da3d2ff9c20dde25ccd51d4edeb40
Reviewed-on: https://chromium-review.googlesource.com/914694
Reviewed-by: Sidney San Martín <sdy@chromium.org>
Cr-Commit-Position: refs/branch-heads/3282@{#670}
Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840}
[modify] https://crrev.com/a80e723e5c134d659730491586c4cdf05cbb7bb8/chrome/browser/ui/cocoa/status_bubble_mac.h
[modify] https://crrev.com/a80e723e5c134d659730491586c4cdf05cbb7bb8/chrome/browser/ui/cocoa/status_bubble_mac.mm
[modify] https://crrev.com/a80e723e5c134d659730491586c4cdf05cbb7bb8/chrome/browser/ui/cocoa/status_bubble_mac_unittest.mm
[modify] https://crrev.com/a80e723e5c134d659730491586c4cdf05cbb7bb8/ui/gfx/test/ui_cocoa_test_helper.h
[modify] https://crrev.com/a80e723e5c134d659730491586c4cdf05cbb7bb8/ui/gfx/test/ui_cocoa_test_helper.mm

Sign in to add a comment