[KCM] Add output selector ComboBox
ClosedPublic

Authored by broulik on Oct 16 2019, 7:51 AM.

Details

Summary

Since hidden outputs aren't shown in the output view for some reason, provide a ComboBox to switch between outputs since the bullet points with swipe view aren't very obvious.

BUG: 413014

Test Plan
  • Verified that clicking outputs, changing ComboBox, swiping, and clicking the little indicator bullets all happens in sync all the time

For 5.17, hence no string changes

(CCBUG since it doesn't actually fix the hidden monitors not showing)

Diff Detail

Repository
R104 KScreen
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
broulik created this revision.Oct 16 2019, 7:51 AM
Restricted Application added a project: Plasma. · View Herald TranscriptOct 16 2019, 7:51 AM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
broulik requested review of this revision.Oct 16 2019, 7:51 AM
broulik edited the summary of this revision. (Show Details)
mart added a subscriber: mart.Oct 16 2019, 8:36 AM

depends if they aren't shown there for a good reason or not.
ie how would be this vs showing all output inthe view with maybe the hidden ones as rtanslucent?

depends if they aren't shown there for a good reason or not.

I don't know. @romangg
Showing them is easy, they're just visible: model.enabled basically but I don't know what other implications changing that has.

In D24687#547976, @mart wrote:

depends if they aren't shown there for a good reason or not.
ie how would be this vs showing all output inthe view with maybe the hidden ones as rtanslucent?

Disabled outputs shouldn't be shown in their full representation (even if slightly transparent) in the overview since they are not part of the view/overall screen geometry as long as they are disabled.

I thought about showing some mini-symbols for disabled outputs on one of the sides of the overview at a fixed position. But for that a proxy model would make sense I guess. I have never used one but from my understanding with that we could then show a simple list view of all disabled outputs on the side.

@broulik: Is it simple to implement such a proxy model? I would like to avoid another combo box and make instead all enabled and disabled outputs being selectable from the overview in some way as described above. That being said if it's too big of a change for backporting or will take too much time till next bug fix release we can go with the combobox as an intermediate solution to improve the situation on 5.17.

I thought about showing some mini-symbols for disabled outputs on one of the sides of the overview at a fixed position.

What do you need a proxy model for that? The outputs are part of the model, just visible: model.enabled. You could just have the delegate look differently and be positioned somewhere else and non-draggable when it is disabled?

This is a big improvement IMO. You can also remove the little dots at the bottom too. +1 for getting it into 17.1.

ngraham edited the summary of this revision. (Show Details)Oct 16 2019, 10:09 PM
romangg added inline comments.Oct 17 2019, 2:50 AM
kcm/package/contents/ui/Panel.qml
33

what does this FIXME mean?

broulik added inline comments.Oct 17 2019, 6:56 AM
kcm/package/contents/ui/Panel.qml
33

Ideally the heading would be i18n("Settings for:") but you can't do string changes in stable and I don't want to request an exception for a minor inconvenience.

romangg accepted this revision.Oct 17 2019, 12:59 PM

Ok, let's push for 5.17 as an intermediate quick fix. Thanks Kai.

This revision is now accepted and ready to land.Oct 17 2019, 12:59 PM
This revision was automatically updated to reflect the committed changes.