SUMMARY *** When trialing the new 5.24 on KDE Neon untsable with highlight changed settings on I noticed that the virtual desktop KCM was highlighted even though this was fresh VM with no changes. I hit the defaults button and noticed that this sets a single virtual desktop but number of rows to 2. This means that when you click away the number of rows is changed back to 1 as there is onyl a single desktop and the highlight function correctly see this as a change. The default setting should be made consistent so that the user isn't isn't alerted to a change they didn't make. This should probably mean setting the default number of rows to 1 to match with the default number of desktops. The other option would be to default to 2 desktops over 2 rows by default if having multiple virtual desktops is a desirable default setting. *** STEPS TO REPRODUCE 1. Starting with a fresh install 2. Select highlight changed settings in System settings 3. Navigate to virtual desktop kcm see highlight 4. Hit defaults (which is 1 virtual desktpop and 2 rows) then apply 5. Navigate to different screent then back OBSERVED RESULT The number of rows has been set back to 1 and the setting is now highlighted as changed again EXPECTED RESULT When I reset to default no setting should be highlighted as changed for that screen SOFTWARE/OS VERSIONS Operating System: KDE neon Unstable Edition KDE Plasma Version: 5.24.80 KDE Frameworks Version: 5.91.0 Qt Version: 5.15.3 Kernel Version: 5.11.0-46-generic (64-bit) Graphics Platform: X11 Processor: 1 × AMD Ryzen 5 3600 6-Core Processor Memory: 3.8 GiB of RAM Graphics Processor: SVGA3D; build: RELEASE; LLVM; ADDITIONAL INFORMATION Note this also seems to be the case on my Endeavor OS 5.23 install as well.
Can reproduce, how odd.
There appear to be multiple bugs here: 1. Clicking the "Defaults" button does the wrong thing 2. The SettingHighlighter object for the rows spinbox isn't hooked up to the actual default value (which is also wrong): KCM.SettingHighlighter { highlight: kcm.desktopsModel.rows !== 2 }
Never mind, I confused myself. The real issue is that the spinbox loads the wrong value. Its initial value isn't set at all, so it defaults to 1, not the real configured value.
...Or maybe kcm.desktopsModel.rows is set too late?
*** Bug 455287 has been marked as a duplicate of this bug. ***