> On Jan. 7, 2015, 9:10 a.m., David Faure wrote:
> > src/platformtheme/kdeplatformsystemtrayicon.cpp, line 330
> > <https://git.reviewboard.kde.org/r/121885/diff/1/?file=338653#file338653line330>
> >
> >     I don't see a deadlock here, unless StatusNotifierWatcher calls this 
> > method itself :-)
> >     
> >     Just one thing though: this creation of a QDBusInterface will 
> > auto-start the service (i.e. autoload the kded module), if it wasn't loaded 
> > already. Is this desired?
> >     
> >     (so yeah, if the constructor calls this method we have a problem ;)

I don't know the implementation in detail but I think that the watcher is 
watching for new SNHost and tells SNIs that new host is available, so that they 
could register with it. So I'd say it is desired that this service always runs.

Can I ask how would this be autostarted? It doesn't install dbus service file 
(also the .desktop has autoload=true so it should be always present)


- Martin


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/121885/#review73331
-----------------------------------------------------------


On Jan. 6, 2015, 7:16 p.m., Martin Klapetek wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/121885/
> -----------------------------------------------------------
> 
> (Updated Jan. 6, 2015, 7:16 p.m.)
> 
> 
> Review request for KDE Frameworks.
> 
> 
> Bugs: 339707
>     https://bugs.kde.org/show_bug.cgi?id=339707
> 
> 
> Repository: frameworkintegration
> 
> 
> Description
> -------
> 
> The "org.kde.StatusNotifierWatcher" is just a watcher/helper, not the actual 
> systray object, that's "org.kde.StatusNotifierHost-$PID". Because Plasma 
> appends the PID, we cannot check directly for it being present on the bus, so 
> we check the org.kde.StatusNotifierWatcher.IsStatusNotifierHostRegistered 
> property that's meant to be used for this.
> 
> Plus QSystemTrayIcon::isSystemTrayAvailable() is actually returning always 
> true, because the Watcher is in kded and is /always/ present.
> 
> This also fixes many apps with KSNI crashing on plasma exit, bug 339707 
> (though I believe this is not the direct cause for that bug)
> 
> 
> Diffs
> -----
> 
>   src/platformtheme/kdeplatformsystemtrayicon.cpp b5e207c 
> 
> Diff: https://git.reviewboard.kde.org/r/121885/diff/
> 
> 
> Testing
> -------
> 
> Things do not crash anymore and the ::isSystemTrayAvailable() now returns 
> correct value.
> 
> 
> Thanks,
> 
> Martin Klapetek
> 
>

_______________________________________________
Kde-frameworks-devel mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel

Reply via email to