|
|
Chromium Code Reviews
DescriptionHide popup custom notifications on non-primary displays
Currently custom notifications are supported to be shown only
on one display at the same time. So this CL disables popup custom notification on non-primary displays.
This CL affects only on Chrome OS.
BUG=b/37456756
BUG=715362
TEST=manual
Review-Url: https://codereview.chromium.org/2834773002
Cr-Commit-Position: refs/heads/master@{#467377}
Committed: https://chromium.googlesource.com/chromium/src/+/7bb91538766f932d182801724d0c0d1826e6dde6
Patch Set 1 #
Total comments: 2
Patch Set 2 : Remove debug output #
Total comments: 2
Patch Set 3 : Addressed comment #Patch Set 4 : Rewrote comment #
Messages
Total messages: 61 (42 generated)
The CQ bit was checked by yoshiki@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_compile_dbg_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by yoshiki@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by yoshiki@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by yoshiki@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #3 (id:40001) has been deleted
Patchset #2 (id:20001) has been deleted
Patchset #1 (id:1) has been deleted
Description was changed from ========== wip . . BUG= ========== to ========== Hide popup custom notifications on non-primary displays Currently custom notifications are supported to be shown only on one display at the same time. So this CL disables popup custom notification on non-primary displays. This CL affects only on Chrome OS. BUG=b/37456756 TEST=manual ==========
yoshiki@chromium.org changed reviewers: + yhanada@chromium.org
Hanada-san, PTAL. Thanks.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
lgtm with nit https://codereview.chromium.org/2834773002/diff/60001/ui/message_center/views... File ui/message_center/views/message_popup_collection.cc (right): https://codereview.chromium.org/2834773002/diff/60001/ui/message_center/views... ui/message_center/views/message_popup_collection.cc:254: LOG(ERROR) << "POPUP: " << (*iter)->id(); remove?
The CQ bit was checked by yoshiki@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Thanks! https://codereview.chromium.org/2834773002/diff/60001/ui/message_center/views... File ui/message_center/views/message_popup_collection.cc (right): https://codereview.chromium.org/2834773002/diff/60001/ui/message_center/views... ui/message_center/views/message_popup_collection.cc:254: LOG(ERROR) << "POPUP: " << (*iter)->id(); On 2017/04/21 09:02:23, yhanada wrote: > remove? Done.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by yoshiki@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from yhanada@chromium.org Link to the patchset: https://codereview.chromium.org/2834773002/#ps80001 (title: "Remove debug output")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presub...)
yoshiki@chromium.org changed reviewers: + jennyz@chromium.org
Jenny, could you take a look at the change in ash/system? Thanks.
yoshiki@chromium.org changed reviewers: + stevenjb@chromium.org
Steven, could you take a look at ash/system/*?
Please create a chromium bug to track this. This behavior seems very odd to me. 'NotificationType' seems to determine the layout of the notification. Why does that affect which display(s) it should be shown on? https://codereview.chromium.org/2834773002/diff/80001/ui/message_center/views... File ui/message_center/views/message_popup_collection.cc (right): https://codereview.chromium.org/2834773002/diff/80001/ui/message_center/views... ui/message_center/views/message_popup_collection.cc:177: bool isPrimaryDisplay = is_primary_display
The CQ bit was checked by yoshiki@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by yoshiki@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== Hide popup custom notifications on non-primary displays Currently custom notifications are supported to be shown only on one display at the same time. So this CL disables popup custom notification on non-primary displays. This CL affects only on Chrome OS. BUG=b/37456756 TEST=manual ========== to ========== Hide popup custom notifications on non-primary displays Currently custom notifications are supported to be shown only on one display at the same time. So this CL disables popup custom notification on non-primary displays. This CL affects only on Chrome OS. BUG=b/37456756 BUG=715362 TEST=manual ==========
On 2017/04/24 20:40:02, stevenjb wrote: > Please create a chromium bug to track this. Done > This behavior seems very odd to me. 'NotificationType' seems to determine the > layout of the notification. Why does that affect which display(s) it should be > shown on? Sorry for lacking words. This is a tentative fix. Currently, this is just because custom notification doesn't support multiple displays. I modified the comment and added TODO comment to fix it in near feature.
https://codereview.chromium.org/2834773002/diff/80001/ui/message_center/views... File ui/message_center/views/message_popup_collection.cc (right): https://codereview.chromium.org/2834773002/diff/80001/ui/message_center/views... ui/message_center/views/message_popup_collection.cc:177: bool isPrimaryDisplay = On 2017/04/24 20:40:02, stevenjb wrote: > is_primary_display Done.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
stevenjb@chromium.org changed reviewers: + xiyuan@chromium.org
I'm still unclear why NOTIFICATION_TYPE_CUSTOM has issues on multiple displays. The issue only mentions that ARC notifications are broken. Is that the only use of NOTIFICATION_TYPE_CUSTOM? (And if so, should we rename that? If not, what else will be impacted?). +xiyuan@
On 2017/04/26 15:59:58, stevenjb wrote: > I'm still unclear why NOTIFICATION_TYPE_CUSTOM has issues on multiple displays. > The issue only mentions that ARC notifications are broken. Is that the only use > of NOTIFICATION_TYPE_CUSTOM? (And if so, should we rename that? If not, what > else will be impacted?). > > +xiyuan@ NOTIFICATION_TYPE_CUSTOM is a notification which hosts a native view inside. This is only used by ARC notifications as for now. In Chrome OS, native view can have only one parent, in other words, multiple notifications can't share one native view. But now, on multi-display environment, Chrome OS tries to show one native view on all the popup on all the display. This is the cause of the issue. In near feature, we have to add some logic to duplicate or share native view. Until then, I want to disable popup notification on non-primary display.
On 2017/04/26 17:02:39, yoshiki wrote: > On 2017/04/26 15:59:58, stevenjb wrote: > > I'm still unclear why NOTIFICATION_TYPE_CUSTOM has issues on multiple > displays. > > The issue only mentions that ARC notifications are broken. Is that the only > use > > of NOTIFICATION_TYPE_CUSTOM? (And if so, should we rename that? If not, what > > else will be impacted?). > > > > +xiyuan@ > > NOTIFICATION_TYPE_CUSTOM is a notification which hosts a native view inside. > This is only used by ARC notifications as for now. In Chrome OS, native view can > have only one parent, in other words, multiple notifications can't share one > native view. But now, on multi-display environment, Chrome OS tries to show one > native view on all the popup on all the display. This is the cause of the issue. > > In near feature, we have to add some logic to duplicate or share native view. > Until then, I want to disable popup notification on non-primary display. Are custom views used for *all* Android-originating notifications, or only those specifying a custom layout?
Thanks for adding the issue and the explanation. owner lgtm.
On 2017/04/26 17:02:39, yoshiki wrote: > On 2017/04/26 15:59:58, stevenjb wrote: > > I'm still unclear why NOTIFICATION_TYPE_CUSTOM has issues on multiple > displays. > > The issue only mentions that ARC notifications are broken. Is that the only > use > > of NOTIFICATION_TYPE_CUSTOM? (And if so, should we rename that? If not, what > > else will be impacted?). > > > > +xiyuan@ > > NOTIFICATION_TYPE_CUSTOM is a notification which hosts a native view inside. > This is only used by ARC notifications as for now. In Chrome OS, native view can > have only one parent, in other words, multiple notifications can't share one > native view. But now, on multi-display environment, Chrome OS tries to show one > native view on all the popup on all the display. This is the cause of the issue. > > In near feature, we have to add some logic to duplicate or share native view. > Until then, I want to disable popup notification on non-primary display. I've duped http://crbug.com/661723 there. Currently NOTIFICATION_TYPE_CUSTOM is only used by ARC notifications. An ARC notification is backed by a notification surface. Currently, we only create one such surface per notification. A surface is an aura::Window (aka native view ATM) and could not be used on multiple display. When there are multiple displays, only one display would get the real surface that responses to mouse event etc. Other displays get a static snapshot, which are confusing to users. The intention of the CL is to eliminate the confusion.
On 2017/04/26 17:07:43, Peter Beverloo wrote: > On 2017/04/26 17:02:39, yoshiki wrote: > > On 2017/04/26 15:59:58, stevenjb wrote: > > > I'm still unclear why NOTIFICATION_TYPE_CUSTOM has issues on multiple > > displays. > > > The issue only mentions that ARC notifications are broken. Is that the only > > use > > > of NOTIFICATION_TYPE_CUSTOM? (And if so, should we rename that? If not, what > > > else will be impacted?). > > > > > > +xiyuan@ > > > > NOTIFICATION_TYPE_CUSTOM is a notification which hosts a native view inside. > > This is only used by ARC notifications as for now. In Chrome OS, native view > can > > have only one parent, in other words, multiple notifications can't share one > > native view. But now, on multi-display environment, Chrome OS tries to show > one > > native view on all the popup on all the display. This is the cause of the > issue. > > > > In near feature, we have to add some logic to duplicate or share native view. > > Until then, I want to disable popup notification on non-primary display. > > Are custom views used for *all* Android-originating notifications, or only those > specifying a custom layout? Yes, all Android-originating notifications are using NOTIFICATION_TYPE_CUSTOM now.
Thanks!
The CQ bit was checked by yoshiki@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from yhanada@chromium.org Link to the patchset: https://codereview.chromium.org/2834773002/#ps120001 (title: "Rewrote comment")
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch.
Bot data: {"patchset_id": 120001, "attempt_start_ts": 1493228934770030,
"parent_rev": "bc9e95817ed4033644e3556920805ff14088c3e1", "commit_rev":
"7bb91538766f932d182801724d0c0d1826e6dde6"}
Message was sent while issue was closed.
Description was changed from ========== Hide popup custom notifications on non-primary displays Currently custom notifications are supported to be shown only on one display at the same time. So this CL disables popup custom notification on non-primary displays. This CL affects only on Chrome OS. BUG=b/37456756 BUG=715362 TEST=manual ========== to ========== Hide popup custom notifications on non-primary displays Currently custom notifications are supported to be shown only on one display at the same time. So this CL disables popup custom notification on non-primary displays. This CL affects only on Chrome OS. BUG=b/37456756 BUG=715362 TEST=manual Review-Url: https://codereview.chromium.org/2834773002 Cr-Commit-Position: refs/heads/master@{#467377} Committed: https://chromium.googlesource.com/chromium/src/+/7bb91538766f932d182801724d0c... ==========
Message was sent while issue was closed.
Committed patchset #4 (id:120001) as https://chromium.googlesource.com/chromium/src/+/7bb91538766f932d182801724d0c... |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
