Skip to content

ExpandableListitem: Implement the expanded button view in a better way

The old implementation of the expanded button view used ListViews full of custom content items, with various tricky sizing hacks. This was plagued by bugs.

This commit introduces a new implementation that uses standard ToolButtons populated by a Repeater. The result is much better:

  1. Use of standard Plasma components, increasing consistency
  2. Full keyboard navigation between all items now works
  3. Scrolling when there is a lot of content now works properly with no stutters because the expanded views no longer have internal Flickables
  4. Removed a dependency on PlasmaComponents2
  5. Less code; fewer hidden bugs and less maintenance

There are practically no visual changes--just incidental things like elements moving a few pixels from where they were before due to using ToolButtons instead of custom list items.

Requires https://invent.kde.org/frameworks/plasma-framework/-/merge_requests/329 or else the buttons look weird.

cc @teams/usability

Edited by Nate Graham

Merge request reports