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

Issue 857172 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows , Chrome , Mac
Pri: 2
Type: Bug

Blocked on:
issue 233752


Participants' hotlists:
GSuite-Priorities


Sign in to add a comment

Chrome should suppress notifications when fullscreen

Project Member Reported by ssaviano@google.com, Jun 27 2018

Issue description

This bug indicates that notifications used to be suppressed when fullscreen:
https://bugs.chromium.org/p/chromium/issues/detail?id=233752

Just tested and verified that:
(a) existing notifications are not suppressed when entering full screen
(b) new notifications are not suppressed when entering full screen

Desktop applications do both. Examples are presentation software such as Powerpoint or Keynote.
 

Comment 1 by rbyers@chromium.org, Jun 29 2018

Cc: bever...@google.com
Components: -Blink UI>Notifications Blink>PushAPI Blink>Fullscreen
Labels: OS-Chrome OS-Mac OS-Windows
I verified I can reproduce this on Mac Chrome 69, eg:
- Open a push notification demo page like https://web-push-book.gauntface.com/demos/notification-examples/
- Grant push permission
- Open devtools console and enter document.body.webkitRequestFullscreen()
- Click on button to generate notification

It doesn't repro on Linux Chrome 69 for me
But does repro on Windows/Mac Chrome 69 and ChromeOS Chrome 68
I didn't test mobile.

beverloo: I'm guessing this is more on the desktop UI side, do you know who to assign it to?

Comment 2 by rbyers@chromium.org, Jun 29 2018

Blockedon: 233752

Comment 3 by rbyers@chromium.org, Jun 29 2018

Cc: -bever...@google.com peter@chromium.org
Components: -Blink>Fullscreen UI>Browser>FullScreen
Owner: peter@chromium.org
Status: Assigned (was: Untriaged)
Assigning to Peter for triaging
Hi Peter, could you give an update on this? It came up today in a discussion with
gsuite.
Our intended behaviour is:

  - For the native notification platforms (Mac OS, Windows), match whatever they do for other applications. This gives us appropriate integration with features such as do-not-disturb as well.

  - For Chrome's own notification system, the message center, defer display until the user leaves full-screen mode *unless* the notification was shown by the site/extension that is currently full-screen.

(Note that we only rolled out native Windows notifications to 100% of users last week.)

If we're seeing this on a platform w/ native notifications then I wonder notifications from other applications are suppressed. Rick mentions Mac, so I'll take a look at that.

If we're seeing this with Chrome's own toasts then it's likely we have a bug there.
Re #7: are you saying as far as you know there is no bug? Or that what you
described is the intended final state after implementation is done?
Components: -Blink>PushAPI
Owner: rsesek@chromium.org
We match platform conventions, so I wouldn't consider our current behaviour a bug.

I suspect that Keynote does something to suppress notifications when it's in fullscreen mode. Robert, would you know how they do this, and whether it'd be reasonable to have Chrome do the same? Searching on the Web isn't particularly fruitful...
Cc: rsesek@chromium.org
Owner: peter@chromium.org
No, I don't know what controls the suppressing of notifications. If I had to guess, it'd be the NSApplicationPresentationOptions that are set when entering fullscreen. None is documented as having an effect on notifications, but I wonder if something like NSApplicationPresentationDisableProcessSwitching would do it (since it wouldn't make sense to show notifications if you can't switch apps). But we wouldn't want to set that for Chrome's fullscreen mode.

Comment 11 Deleted

Comment 12 Deleted

FR here is to enable an ability to suppress notifcations (existing and new) when entering full screen. Although this is desirable for all full screen presentation cases, understandable that this may not be desirable for all full screen browser cases.

Suggested API for indicating notification visibility would be as follows:
enum FullscreenNotifcationVisibility {
  "auto",
  "show",
  "hide"
};

dictionary FullscreenOptions {
  FullscreenNavigationUI navigationUI = "auto";
  FullscreenNotifcationVisibility notificationVisibility = "auto";
};

with FullscreenNotifcationVisibility value being as follows:

"hide" - existing and new notifications are suppressed
"show" - existing and new notifications are shown
"auto" - user-agent defined, but matching one of the above

API is just a sample - flexible on the shape of it.

Internal doc on proposal:
https://docs.google.com/document/d/1wylqRuuzXEf6oq9SRirjBPKUy8kG095oAgGOwjjsHVc/edit#
Labels: Pri-2
Setting defect without priority to Pri-2.

Sign in to add a comment