Bug 461435 - Buttons at the bottom of the settings app are touching the top boundary of their toolbars.
Summary: Buttons at the bottom of the settings app are touching the top boundary of th...
Status: RESOLVED FIXED
Alias: None
Product: systemsettings
Classification: Applications
Component: general (show other bugs)
Version: 5.26.2
Platform: Arch Linux Linux
: NOR minor
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-11-04 19:37 UTC by Etienne
Modified: 2022-11-07 00:50 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 5.101


Attachments
Screenshot of a moment when the issue is visible (208.17 KB, image/png)
2022-11-04 19:37 UTC, Etienne
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Etienne 2022-11-04 19:37:10 UTC
Created attachment 153473 [details]
Screenshot of a moment when the issue is visible

SUMMARY
The buttons at the bottom of the system settings app (help or apply for example) are touching the top boundary of their toolbars. The issue is not really visible because usually the color is the same as the one on top.
This issue is problematic if you use custom themes as sometimes the colors of the two rows of buttons are not the same and it makes the button not centered in its space.
I attached a screenshot of the issue

STEPS TO REPRODUCE
1. Open the settings app
2. Try to open a messagebox to darken the system app
3. You can clearly see that the button is touching the top boundary of its toolbar

OBSERVED RESULT
You can clearly see that the button is touching the top boundary of its toolbar

EXPECTED RESULT
The button should be centered in its toolbar

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: kernel 6.0.6-arch1-1 (x64)
KDE Plasma Version: 5.26.2
KDE Frameworks Version: 5.99.0
Qt Version: 5.15.7
Comment 1 Bug Janitor Service 2022-11-06 01:48:05 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/systemsettings/-/merge_requests/174
Comment 2 Bug Janitor Service 2022-11-07 00:18:18 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kdeclarative/-/merge_requests/156
Comment 3 Nate Graham 2022-11-07 00:50:40 UTC
Git commit abd304cd96e5be6f95c40d6c7812724ab3188037 by Nate Graham.
Committed on 07/11/2022 at 00:50.
Pushed by ngraham into branch 'master'.

Sync header and footer separator code to SimpleKCM

AbstractKCM has complex logic to add separator lines at the top and
bottom of the page, based on the presence or absence of headers and
footers and the potential need for extra spacing on the bottom of KCMs
that have no footer and System Settings will show at least one of its
own footer buttons.

However SimpleKCM lacks much of this logic, despite having the same needs.
Instead, it has simpler logic to naïvely draw separator lines with no
provision for extra spacing. As a result, KCMs that use SimpleKCM and
become scrollable have insufficient bottom padding between the System
Settings-provided buttons and the KCM-provided separator line.

This commits syncs the code and API from AbstractKCM to SimpleKCM so
that the issues solved there are solved here too.

Code is copied rather than refactoring SimpleKCM to be based on
AbstractKCM because the trigger conditions are subtly different, we
can't add the typical padding to avoid regressions KInfoCenter's
CommandOutputKCM (see diff; we can fix this only in KF6). Such a
refactor is a separate challenge that can be undertaken later in KF6
times.
FIXED-IN: 5.101

M  +96   -9    src/qmlcontrols/kcmcontrols/qml/SimpleKCM.qml

https://invent.kde.org/frameworks/kdeclarative/commit/abd304cd96e5be6f95c40d6c7812724ab3188037