Skip to content

Use "frameless" style for grid and scroll view QtQuick KCMs by default

This commits makes GridView and ScrollView KCMs look like modern frameless Kirigami-style views by removing the extra frame around the scrollview. This styling change is opt-out; grid and list view KCMs are now frameless by default.

System Settings itself needs a minor patch to increase the height of its sidebar footer toolbar to match the height of the footer toolbar that System Settings internally adds to KCMs, since that footer will not look like a footer. This was a pre-existing problem, but becomes more visually significant with the move to frameless KCMs. It is fixed with plasma/systemsettings!95 (merged).

The result looks good with all KCMs, except for three:

  • The users KCM needs to opt back into the framed style because its "two pages adjacent" view does not really work with framelessness. This is done in plasma/plasma-workspace!1178 (merged).
  • The Bluetooth and Online Accounts KCMs have an unnecessarily high bottom margin under their footers which prevents them from aligning with the sidebar footer. It's a pre-existing issue, but it does result in mismatched footer heights with this MR. I suspect the issue is somewhere in System Settings itself, but I have not yet found its source. Still investigating.

Some screenshots:

ScrollView KCMs GridView KCMs
Virtual_Desktops Cursors
Screenshot_20211104_090840 Plasma_Style
Background_services Virtual_Keyboard

If approved, this will have to wait for Plasma 5.24 because of the need to patch KCMs and System Settings, which are on the Plasma release cycle rather than the frameworks release cycle used by this repo. That means we have two options:

  • Hold this merge request until it can land in Frameworks 5.90.
  • Merge it when ready and approved, but with the framedView property set to true for ScrollViewKCM and GridViewKCM, so there is no change now. Then we change those to false in Frameworks 5.90.

cc @teams/vdg

Edited by Nate Graham

Merge request reports

Loading