New patchset.
I moved the waiting program to plasma-workspace, as per the suggestions (thanks). I also didn't like it much there, but didn't know where it would have fitted better.
- Queries
- All Stories
- Search
- Advanced Search
Advanced Search
Mar 14 2017
Mar 10 2017
Mar 9 2017
New version, using the idea suggested by @davidedmundson .
Mar 3 2017
Thanks! On a side note, how do I find out who are the best people to assign reviews to per every repository I'd like to submit to?
Mar 2 2017
Fix full screen switching
In D4799#91246, @davidedmundson wrote:There is another solution that would work without any changes to KNotification.
DBus has a solution to buffer messages and wait for a name to become available, it happens in DBus activation. If plasmashell was DBus activated on org.freedesktop.Notifications we wouldn't have this problem at all.
Making plasmashell do that is probably a bit weird, but there is a hack we can do that I've seen done in Telepathy. Instead of activating plasmashell we have a small binary that gets DBus activated but simply idles waits for org.freedesktop.Notifications to become available then quits.
DBus-daemon thinks it's launched something and happily waits for the name to become available queuing the messages. Knotification can just fire and forget as normal.
The only time there's any performance penalty is if you do send a notification pre-plasmashell starting up, and it's quite minor.I've tested this using, https://paste.kde.org/pwdqvevvo
running "notify-send foobar"
then waiting 10 seconds and starting plasmashellNotification appeared perfectly.We'd need to re-implement mc-wait-for-name in Plasma code (or just use Exec=sleep 30)
Mar 1 2017
Feb 28 2017
In D4799#91109, @dfaure wrote:Yes interface->isServiceRegistered(dbusServiceName) is technically blocking, but it can't block for a long time, since it's only talking to the dbus daemon. The reply comes in rather quickly, unlike a blocking call to another KDE process which could be busy or where the call itself could take a long time to be processed.
In summary, I don't think an existing call to isServiceRegistered can be used as an argument for making (potentially much much longer) blocking calls.
@mck182 I didn't notice before, but KNotifications is already making blocking calls on creation:
Feb 27 2017
Feb 26 2017
In D4799#90169, @dfaure wrote:About the code in kded that calls ksplash: that code is obsolete and currently only kept for compatibility reasons, see https://git.reviewboard.kde.org/r/129010/
IOW you can ignore that code completely.
@graesslin I disagree. Some popups might be useful, some are very useful; we should aim to never drop any. Just as an example, the popup with the Yakuake console toggle key is pretty fundamental to be reminded of, the first few times you start it up.
In D4799#89931, @mck182 wrote:Thanks for the patch! I wanted to do exactly this a long
time ago. However this solution brings a burden to all
apps using KNotification in form of a blocking dbus call
which is further only relevant when used in Plasma.That's a no-no I'm afraid, we'd have to find a better solution.