[applets/systemtray] Hide/show expander arrow - regression fix
Needs ReviewPublic

Authored by kmaterka on Sat, Mar 21, 11:01 AM.

Details

Summary

Expander arrow should hide when all icons are visible and no icon is hidden. When dialog with hidden items is hidden ListView does not update its count property - property is update on redraw. As a result expander arrow is still visible/hidden until user clicks on any plasmoid to show dialog.

Test Plan
  • select/deselect "Show all items" in settings, save, expander arrow should hide/show imidiatelly
  • select almost all items to "Always shown", leave "Keyboard indicator" as "Shown when relevant". Press Casp Lock, expander arrow should hide/show correctly

Diff Detail

Repository
R120 Plasma Workspace
Branch
master
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 24012
Build 24030: arc lint + arc unit
kmaterka created this revision.Sat, Mar 21, 11:01 AM
Restricted Application added a subscriber: plasma-devel. · View Herald TranscriptSat, Mar 21, 11:01 AM
kmaterka requested review of this revision.Sat, Mar 21, 11:01 AM
kmaterka added inline comments.Sat, Mar 21, 11:02 AM
applets/systemtray/package/contents/ui/ExpanderArrow.qml
31

ideally root.hiddenLayout.count should be used, but count is not updated until ListView is rendered.

This works, but I wonder if there's a conceptually cleaner way to do it. Not that I know of one, so I'll wait for a Plasma person to comment.

Oh and thanks for the code comments. Always very helpful!

This works, but I wonder if there's a conceptually cleaner way to do it. Not that I know of one, so I'll wait for a Plasma person to comment.

Yes, this code looks smelly, but I don't have better idea now.

Anyone can take a look and help with this?