https://bugs.kde.org/show_bug.cgi?id=411584

Aleix Pol <aleix...@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|https://invent.kde.org/plas |https://invent.kde.org/plas
                   |ma/plasma-desktop/commit/e4 |ma/plasma-desktop/commit/c8
                   |60fc4809c458ebc0a485db1e044 |eeee480157c61cbf7a3c6b0b147
                   |28271b9e328                 |ee63516def9

--- Comment #36 from Aleix Pol <aleix...@kde.org> ---
Git commit c8eeee480157c61cbf7a3c6b0b147ee63516def9 by Aleix Pol, on behalf of
David Edmundson.
Committed on 23/05/2020 at 00:26.
Pushed by apol into branch 'master'.

[kcms/nightcolour] Reset needsSave after loading initial QML properties

Sequence of events is:

1) KCModule::showEvent()
2) this queues up a load and queues up a KCModule::changed(false)

3)  during load ConfigModule::setNeedsSave(true) is called we set
d->_needsSave to true
4) we emit ConfigModule::changed(true) which we proxy through to
KCModule::changed(true)

5) we then process the queued KCModule::setChanged(false) from the
earlier KCModule::showEvent
6) so we disable the button

7) any subsequent changes in the KCM will call
ConfigModule::setNeedsSave(true)
but this now matches d->_needsSave so it no-ops. Even though KCModule is
out of sync.

Systemsettings only knows what KCModule signals, not ConfigModule.

This patch resets ConfigModule::d->_needsSave after step 3

See also https://phabricator.kde.org/D27384#611241

M  +1    -0    kcms/nightcolor/kcm.cpp

https://invent.kde.org/plasma/plasma-desktop/commit/c8eeee480157c61cbf7a3c6b0b147ee63516def9

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to