[Differential] [Request, 16 lines] D2154: kscreen kcm: block changed signal after save
sebas (Sebastian Kügler)
noreply at phabricator.kde.org
Wed Jul 13 23:28:43 UTC 2016
sebas created this revision.
sebas added a reviewer: Plasma.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.
REVISION SUMMARY
When changing position (and potentially other properties) of the screen
setup, we receive delayed signals way after the sync operation finishes.
This enables the apply button after the config has been applied, leading
to the apply/discard confirmation dialog when closing (or navigating
away from) the kscreen kcm.
This patch disables propagation of the changed() signal at the highest
level, meaning that config widgets internally still get updated, but the
apply button only gets enabled after 1000 milliseconds. This magic value
is what I've figured out by testing. It's long enough to re-request edid
information on two outputs, but short enough to get in the way from
further changes.
I'm not super-happy with the timer, but I don't see any other way to fix
this glitch in the user experience. We don't really have a way on X11 to
know when all changes are flushed.
BUG:365467
TEST PLAN
Tested systemsettings and kcmshell, with this patch, it works reliably and doesn't get in the way.
REPOSITORY
rKSCREEN KScreen
BRANCH
blockkcmchanges
REVISION DETAIL
https://phabricator.kde.org/D2154
AFFECTED FILES
kcm/src/kcm_kscreen.cpp
kcm/src/kcm_kscreen.h
EMAIL PREFERENCES
https://phabricator.kde.org/settings/panel/emailpreferences/
To: sebas, #plasma
Cc: plasma-devel, jensreuterberg, abetts, sebas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20160713/014b8a3e/attachment.html>
More information about the Plasma-devel
mailing list