Desktop Slideshow Settings

Aaron J. Seigo aseigo at kde.org
Mon Dec 6 03:36:30 CET 2010


On Sunday, December 5, 2010, Steven Sroka wrote:
> I'm assuming the settingsChanged() signal is emitted twice, once by 'Apply'
> and once by 'OK'. Is there anyway to stop the signal from emitting from
> the 'OK' button if the settings aren't changed (because the 'Apply' button
> has already emitted the signal and done all the necessary work)?

yes. and now that i understand what you are trying to accomplish ... :)

the problem is in BackgroundDialog::saveConfig in 
kdebase/workspace/libs/plasmagenericshell/backgrounddialog.cpp

it is called when apply or ok is clicked and it unconditionally resets the 
wallpaper. it probably needs to track when the wallpaper settings actually 
change. right now it does this:

connect(wallpaperWidget, SIGNAL(modified(bool)), this, 
SLOT(settingsModified(bool)));

settingsModified is a generic "something's changed" handler; a new slot could 
be added that calls settingsModified, but which also tracks that value for the 
wallpaper itself and if no changes have been made to the wallpaper config, 
just not reset it.

-- 
Aaron J. Seigo
humru othro a kohnu se
GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA  EE75 D6B7 2EB1 A7F1 DB43

KDE core developer sponsored by Qt Development Frameworks
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/plasma-devel/attachments/20101205/a926edad/attachment.sig 


More information about the Plasma-devel mailing list