Frameworks & Performance Question

Hugo Pereira Da Costa hugo.pereira at free.fr
Mon Dec 30 16:20:23 UTC 2013


On 12/30/2013 03:17 PM, David Faure wrote:
> On Monday 30 December 2013 14:52:51 Mark Gaiser wrote:
>>> Could something similar be done in kstyle constructor's ?
>>> (though I have no clue about which signal things should connect to).
> We just have to decide on a dbus signal name (see further down for examples).
>
> Who emits it? Some kcontrol module?
> I'm lacking some overview.
> How was this done in kde4? With KGlobalSettings?
>   
>>> And also, I don't understand why this is necessary at all ? Should'nt the
>>> reparseConfiguration be done 'upstream' (ksharedConfig) automatically on
>>> e.g. file change ?
> There's no notification of changes at the KConfig level, nor file-watching.
> Both would be very expensive, for things that are in many case of no interest
> to other apps. Or when they are, we'd have the problem that the reparsing
> happens too often (if the notification is done via some IPC, not file-
> watching), e.g. when an app changes 10 settings, it wants to only signal other
> processes after that, not for every setting.
>
> The hypothetical switch to DConf would come with notifications, but as long as
> we are using the current KConfig technology, processes need to notify each
> other using DBus when configuration is changed. Konqueror processes do that
> among themselves, many kcontrol modules (systemsettings, whatever it's called
> this decade) use dbus to notify of changes. KGlobalSettings encapsulated some
> of that - also using a DBus signal internally.
>
> We already ported some things away from KGlobalSettings by introducing a
> specific DBus signal - for instance the one in KIconLoader or in KToolBar.
> See 8b293344e222ef73592ccb633a981083d40a1c1c or
> 1da00747ff983e0147b774015ebe66569e59a574 in kdelibs
> (or in kiconthemes and kxmlgui, respectively, after grafting).
>
Hi David,
Thanks for the explanation.
Indeed oxygen (@KDE4) was using:

connect( KGlobalSettings::self(), SIGNAL(kdisplayPaletteChanged()), 
this, SLOT(globalPaletteChanged()) );

In fact when porting for KF5 I just commented the code.


Hugo

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20131230/3f64d7c9/attachment.html>


More information about the Kde-frameworks-devel mailing list