Comments (5)
I think this might be a case where the spec was written before OSes persisted notifications in an indicator. It looks like GNOME does not close the notification with reason 1 when it goes off screen; the notification remains open until a user dismisses it, and there's no distinction between closing it from on-screen and closing it from the indicator.
We think GNOME uses expiration to decide when the notification should be closed (no longer visible anywhere, removed from the indicator, no longer actionable), not how long it should remain on the screen. Which, tbh I don't think I'd want apps being able to manually tell the OS how long to keep their notification on screen anyway, that's basically what priority is for, but I can see it being useful to tell the server "this notification is only good for x time" and have it automatically dismiss the notification completely after that time.
from notifications.
It looks like GNOME expires notifications in two cases: when they've hit a max notifications per source, or when the notification is set to transient. But not when they're moved from the screen to the indicator.
from notifications.
After discussion in Slack, it sounds like the minimally-invasive steps forward would be:
- Don't expire notifications when they move from the screen to the indicator
- Ignore application-provided expiration since apps shouldn't be determining how long we show them to users (that's what priority is for)
There are some larger issues around the spec, but it sounds like this should still comply with the spec and be more similar to GNOME Shell's implementation.
from notifications.
I understand from @djordan2 that this is a big issue when trying to use System76's system76-hidpi-daemon.
Also see: https://www.reddit.com/r/elementaryos/comments/7c7x8x/pop_os_mixeddpi_multimonitor_setup_on_elementaryos/
from notifications.
@peteruithoven it is indeed exposed by the HiDPI daemon. However, I would probably categorize the daemon as a series of (admittedly impressive) hacks that happens to work in GNOME Shell because of a different interpretation of a spec. π
Using notifications for HiDPI feels like a bit if a crutch; I'd much rather see a daemon that runs and handles the display settings and can be communicated with over DBus. This is how many other freedesktop and GNOME components work and achieve cross-DE usability. If that were the case, one could write a simple system indicator for elementary OS that handled it in a more standardized way (and one could even include settings in the Displays plug).
Until then, yes, the current notification behavior is problematic.
from notifications.
Related Issues (20)
- Dismissing notification with close button activates default action
- Clicking on Notifications isnβt Reliable HOT 3
- Calendar preview from notification
- Notification settings don't work for Spotify HOT 4
- Clicking a notification does not pass target parameters to action HOT 10
- Notifications are not withdrawn when using GLib.Application.withdraw_notification HOT 1
- Port Notifications to GTK4
- Chosen icon is not displayed in popup with `notify-send` from Terminal
- Notifications coming from web browser playing 2 different sounds in the same time HOT 4
- Send a notification on behalf of applications using the unity API to communicate progress
- Urgent notifications automatically dismissed when being replaced
- Transparent bubbles and 'other' missing HOT 4
- Spotify ignores notification settings HOT 2
- Notification bubble too small HOT 1
- Add a notification rate limiter. HOT 1
- Notifications tab out of fullscreen apps and changes workspaces HOT 2
- All notifications' settings belong to the other category
- Invisible notification blocking input HOT 2
- Progress Notifications API HOT 2
- FTBFS with Vala 0.56.16
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from notifications.