After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 744850 - Turn the message tray upside down
Turn the message tray upside down
Status: RESOLVED FIXED
Product: gnome-shell
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2015-02-20 12:43 UTC by Florian Müllner
Modified: 2015-02-20 17:27 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
messageTray: Remove the summary (28.64 KB, patch)
2015-02-20 12:43 UTC, Florian Müllner
committed Details | Review
windowManager: Take over <super>m keybinding to toggle calendar (4.29 KB, patch)
2015-02-20 12:43 UTC, Florian Müllner
committed Details | Review
messageTray: Remove UI bits from Source (4.25 KB, patch)
2015-02-20 12:43 UTC, Florian Müllner
committed Details | Review
messageTray: Remove mute support (3.13 KB, patch)
2015-02-20 12:43 UTC, Florian Müllner
committed Details | Review
messageTray: Remove _lastNotificationRemoved() (1.80 KB, patch)
2015-02-20 12:43 UTC, Florian Müllner
committed Details | Review
messageTray: Remove summary notification (2.18 KB, patch)
2015-02-20 12:43 UTC, Florian Müllner
committed Details | Review
overviewControls: Remove message indicator (7.18 KB, patch)
2015-02-20 12:44 UTC, Florian Müllner
committed Details | Review
messageTray: Remove the bottom tray (32.60 KB, patch)
2015-02-20 12:44 UTC, Florian Müllner
committed Details | Review
messageTray: Simplify the actor hierarchy a bit (9.25 KB, patch)
2015-02-20 12:44 UTC, Florian Müllner
committed Details | Review
messageTray: Notify when notifications are acknowledged (2.15 KB, patch)
2015-02-20 12:44 UTC, Florian Müllner
committed Details | Review
dateMenu: Show indicator for messages that skipped banner mode (4.29 KB, patch)
2015-02-20 12:44 UTC, Florian Müllner
committed Details | Review
messageTray: Skip banner mode when queue exceeds a threshold (2.74 KB, patch)
2015-02-20 12:44 UTC, Florian Müllner
committed Details | Review
messageTray: Limit number of notifications per source (2.46 KB, patch)
2015-02-20 12:44 UTC, Florian Müllner
committed Details | Review
messageTray: Work around glitches with hover tracking (1.75 KB, patch)
2015-02-20 12:44 UTC, Florian Müllner
committed Details | Review
layout: Add MonitorConstraint:work-area property (3.91 KB, patch)
2015-02-20 12:44 UTC, Florian Müllner
committed Details | Review
layout: Add back affectsInputRegion (2.63 KB, patch)
2015-02-20 12:44 UTC, Florian Müllner
committed Details | Review
messageTray: Move notification banners to the top (9.55 KB, patch)
2015-02-20 12:45 UTC, Florian Müllner
none Details | Review
layout: Don't offset trayBox when panel is hidden (1.05 KB, patch)
2015-02-20 12:45 UTC, Florian Müllner
committed Details | Review
dateMenu: Block notification banners while the calendar is open (2.67 KB, patch)
2015-02-20 12:45 UTC, Florian Müllner
committed Details | Review
messageTray: Move notification banners to the top (10.71 KB, patch)
2015-02-20 12:54 UTC, Florian Müllner
committed Details | Review

Description Florian Müllner 2015-02-20 12:43:21 UTC
Well, not quite. But moving notification banners to the top *is* part of the redesign ...
Comment 1 Florian Müllner 2015-02-20 12:43:30 UTC
Created attachment 297366 [details] [review]
messageTray: Remove the summary

The notification list in the calendar drop-down now functions as summary
area, so we can drop it from the message tray and remove a lot of complexity
from the state machine.
Comment 2 Florian Müllner 2015-02-20 12:43:36 UTC
Created attachment 297367 [details] [review]
windowManager: Take over <super>m keybinding to toggle calendar

It's where all the fun is happening nowadays ...
Comment 3 Florian Müllner 2015-02-20 12:43:41 UTC
Created attachment 297368 [details] [review]
messageTray: Remove UI bits from Source

Since the summary area was removed from the message tray, Source are not
longer represented in the UI, so right-click menus and summary icons are
no longer a thing.
Comment 4 Florian Müllner 2015-02-20 12:43:46 UTC
Created attachment 297369 [details] [review]
messageTray: Remove mute support

It was a nice feature, but with sources no longer being represented in
the UI, there is no longer a way for users to make use of it. If we want
to bring the feature back in the future, it would probably make more
sense to implement via the chat source's policy anyway.
Comment 5 Florian Müllner 2015-02-20 12:43:52 UTC
Created attachment 297370 [details] [review]
messageTray: Remove _lastNotificationRemoved()

No Source subclass used it to do anything special, and with sources
no longer having any UI representation on their own, doing anything
else isn't useful either, so just kill off that hook.
Comment 6 Florian Müllner 2015-02-20 12:43:57 UTC
Created attachment 297371 [details] [review]
messageTray: Remove summary notification

Using a "There are too many notifications" notification is a bit odd,
and we will address the issue differently soon. So rather than update
the notification to do something else than opening the mostly empty and
useless tray when clicked, remove it altogether.
Comment 7 Florian Müllner 2015-02-20 12:44:03 UTC
Created attachment 297372 [details] [review]
overviewControls: Remove message indicator

The message tray is now empty and about to be removed, so an indication
at the bottom edge of the overview becomes an odd location to convey the
status of the summary. We will eventually display an indication in the
top bar that unseen messages are available, for now just remove the
existing indicator.
Comment 8 Florian Müllner 2015-02-20 12:44:09 UTC
Created attachment 297373 [details] [review]
messageTray: Remove the bottom tray

It no longer does anything useful by now, so kill it off.
Even more complexity gone, yay!
Comment 9 Florian Müllner 2015-02-20 12:44:14 UTC
Created attachment 297374 [details] [review]
messageTray: Simplify the actor hierarchy a bit

With no more tricky interaction between bottom tray and notification
banners, we can merge the remaining actors into a single one.
Comment 10 Florian Müllner 2015-02-20 12:44:20 UTC
Created attachment 297375 [details] [review]
messageTray: Notify when notifications are acknowledged

Source::count-updated is emitted as notifications are added or removed,
which is correct for the primary notification count. However it is not
for the unseen count, which will also change when a notification is
acknowledged without being removed. At the moment this does not matter,
as the unseen count is only used on the screen shield and notifications
are never acknowledged while the screen is locked. However we will soon
use the unseen count in the normal session as well, so emit the signal
in this case too.
Comment 11 Florian Müllner 2015-02-20 12:44:25 UTC
Created attachment 297376 [details] [review]
dateMenu: Show indicator for messages that skipped banner mode

The summary may contain notifications that have not been seen by the user
and won't be shown as banner. Currently this is only the case for resident
notifications that are emitted by the focused app, but it will become more
common as we will start limiting the number of queued notifications.
Indicate to the user that more notifications are available by displaying a
small dot in the top bar button.
Comment 12 Florian Müllner 2015-02-20 12:44:31 UTC
Created attachment 297377 [details] [review]
messageTray: Skip banner mode when queue exceeds a threshold

We want to shield users from being overloaded by an overwhelming stream
of notification banners, either due to coming back from idle/lock or
because an application is misbehaving. Previously we replaced all queued
notifications with a summary notification in that case, but now that
notifications appear in the summary immediately, we can simply stop
adding them to the queue and rely on the date menu to convey that
information to the user.
Comment 13 Florian Müllner 2015-02-20 12:44:37 UTC
Created attachment 297378 [details] [review]
messageTray: Limit number of notifications per source

While applications can no longer spam the users with a constant stream
of banner notifications, it is still possible to drown the summary in
the message list. Avoid this by limiting the number of notifications a
single source is allowed to display simultaniously.

test-xy-stress in libnotify's tests suddenly became fun again ...
Comment 14 Florian Müllner 2015-02-20 12:44:42 UTC
Created attachment 297379 [details] [review]
messageTray: Work around glitches with hover tracking

St's hover tracking uses ClutterInputDevice, which unfortunately may use
an outdated cursor position to determine which actor is hovered. Using
MetaCursorTracker instead would fix this, but would require linking St with
libmutter - avoid this for now by manually fixing up Clutter's view of
the pointer position in the case where we rely on it working properly.
Comment 15 Florian Müllner 2015-02-20 12:44:48 UTC
Created attachment 297380 [details] [review]
layout: Add MonitorConstraint:work-area property

Occasionally it makes sense to constrain to a monitor's work-area
rather than the entire monitor, so implement that behavior and add
a property to turn it on.
Comment 16 Florian Müllner 2015-02-20 12:44:54 UTC
Created attachment 297381 [details] [review]
layout: Add back affectsInputRegion

It was removed as actors that should not affect the input
region can simply be added to the uiGroup instead. However
the property is useful to add non-reactive chrome, but then
use trackChrome() to add a child to the input region.

This reverts commit e62d22a50ed8aa25de988fb3c389b999e42f2eac.
Comment 17 Florian Müllner 2015-02-20 12:45:00 UTC
Created attachment 297382 [details] [review]
messageTray: Move notification banners to the top

The new design has banners appear from underneath the panel, so move
them to the top and clip them to the work area.
Comment 18 Florian Müllner 2015-02-20 12:45:06 UTC
Created attachment 297383 [details] [review]
layout: Don't offset trayBox when panel is hidden

The panel is not visible when in fullscreen, but critical notifications
may still be shown - having them pop out from where the panel would be
looks unpolished, so adjust the trayBox accordingly.
Comment 19 Florian Müllner 2015-02-20 12:45:11 UTC
Created attachment 297384 [details] [review]
dateMenu: Block notification banners while the calendar is open

The new banner position interferes with the calendar drop-down. Resolve
this by blocking banners while the calendar is shown.
Comment 20 Florian Müllner 2015-02-20 12:54:51 UTC
Created attachment 297388 [details] [review]
messageTray: Move notification banners to the top

(Some tweaks to banner style)
Comment 21 Carlos Soriano 2015-02-20 13:02:59 UTC
Review of attachment 297366 [details] [review]:

yes please =)
Comment 22 Carlos Soriano 2015-02-20 13:03:39 UTC
Review of attachment 297367 [details] [review]:

sure
Comment 23 Carlos Soriano 2015-02-20 13:04:35 UTC
Review of attachment 297368 [details] [review]:

kill it
Comment 24 Carlos Soriano 2015-02-20 13:05:58 UTC
Review of attachment 297369 [details] [review]:

we will figure it out if needed
Comment 25 Carlos Soriano 2015-02-20 13:06:46 UTC
Review of attachment 297370 [details] [review]:

yep
Comment 26 Carlos Soriano 2015-02-20 13:07:30 UTC
Review of attachment 297371 [details] [review]:

right
Comment 27 Carlos Soriano 2015-02-20 13:16:02 UTC
Review of attachment 297372 [details] [review]:

ok
Comment 28 Carlos Soriano 2015-02-20 13:20:11 UTC
Review of attachment 297373 [details] [review]:

yay, love seeing less complexity

::: js/ui/layout.js
@@ -460,3 @@
-                                                 MESSAGE_TRAY_PRESSURE_TIMEOUT,
-                                                 Shell.ActionMode.NORMAL |
-                                                 Shell.ActionMode.OVERVIEW);

We are not using Layout import now, you can remove it as well.
Comment 29 Carlos Soriano 2015-02-20 13:29:29 UTC
Review of attachment 297374 [details] [review]:

yep
Comment 30 Carlos Soriano 2015-02-20 13:34:20 UTC
Review of attachment 297375 [details] [review]:

Ok
Comment 31 Carlos Soriano 2015-02-20 13:36:43 UTC
Review of attachment 297376 [details] [review]:

::: js/ui/dateMenu.js
@@ +225,3 @@
+
+    _init: function() {
+        this.actor = new St.Label({ text: '⚫', visible: false, y_expand: true,

I would use a icon, like we do for the arrows. In that way we don't depend on the font.

Let's do this after releasing.
Comment 32 Carlos Soriano 2015-02-20 13:42:18 UTC
Review of attachment 297377 [details] [review]:

yep
Comment 33 Carlos Soriano 2015-02-20 13:47:27 UTC
Review of attachment 297378 [details] [review]:

OK for now, we will figure it out what to do with chat notifications or so
Comment 34 Carlos Soriano 2015-02-20 13:48:58 UTC
Review of attachment 297379 [details] [review]:

no idea about this...I trust you =)
Comment 35 Carlos Soriano 2015-02-20 14:06:52 UTC
Review of attachment 297380 [details] [review]:

useful
Comment 36 Carlos Soriano 2015-02-20 14:08:14 UTC
Review of attachment 297381 [details] [review]:

I would trust you here as well
Comment 37 Carlos Soriano 2015-02-20 14:10:20 UTC
Review of attachment 297383 [details] [review]:

yep
Comment 38 Carlos Soriano 2015-02-20 14:13:36 UTC
Review of attachment 297384 [details] [review]:

Ok
Comment 39 Carlos Soriano 2015-02-20 14:15:55 UTC
Review of attachment 297388 [details] [review]:

In classic is not working at all, but let's fix that after release.
Comment 40 Carlos Soriano 2015-02-20 14:16:03 UTC
Review of attachment 297388 [details] [review]:

In classic is not working at all, but let's fix that after release.
Comment 41 Florian Müllner 2015-02-20 14:30:43 UTC
(In reply to Carlos Soriano from comment #33)
> OK for now, we will figure it out what to do with chat notifications or so

There's nothing to figure out here really, chat uses 1 source per contact and 1 notification per source. There *are* plenty issues with chat, but this is not one of them :-)
Comment 42 Florian Müllner 2015-02-20 14:35:28 UTC
(In reply to Carlos Soriano from comment #39)
> Review of attachment 297388 [details] [review] [review]:
> 
> In classic is not working at all, but let's fix that after release.

The window-list extensions needs to stop messing with the tray. I do have a patch locally for that.
Comment 43 Florian Müllner 2015-02-20 17:25:14 UTC
Attachment 297366 [details] pushed as 06586eb - messageTray: Remove the summary
Attachment 297367 [details] pushed as 08d2e61 - windowManager: Take over <super>m keybinding to toggle calendar
Attachment 297368 [details] pushed as 485cd0f - messageTray: Remove UI bits from Source
Attachment 297369 [details] pushed as b81be42 - messageTray: Remove mute support
Attachment 297370 [details] pushed as 9c9da8a - messageTray: Remove _lastNotificationRemoved()
Attachment 297371 [details] pushed as f2d0fca - messageTray: Remove summary notification
Attachment 297372 [details] pushed as 4a70979 - overviewControls: Remove message indicator
Attachment 297373 [details] pushed as 830b455 - messageTray: Remove the bottom tray
Attachment 297374 [details] pushed as 77413fe - messageTray: Simplify the actor hierarchy a bit
Attachment 297375 [details] pushed as 1ef5281 - messageTray: Notify when notifications are acknowledged
Attachment 297376 [details] pushed as d6eea0e - dateMenu: Show indicator for messages that skipped banner mode
Attachment 297377 [details] pushed as 8c72c93 - messageTray: Skip banner mode when queue exceeds a threshold
Attachment 297378 [details] pushed as 4eff643 - messageTray: Limit number of notifications per source
Attachment 297379 [details] pushed as d903e83 - messageTray: Work around glitches with hover tracking
Attachment 297380 [details] pushed as faf0003 - layout: Add MonitorConstraint:work-area property
Attachment 297381 [details] pushed as aedc242 - layout: Add back affectsInputRegion
Attachment 297383 [details] pushed as f6c84d6 - layout: Don't offset trayBox when panel is hidden
Attachment 297384 [details] pushed as 8032e67 - dateMenu: Block notification banners while the calendar is open
Attachment 297388 [details] pushed as e189a34 - messageTray: Move notification banners to the top