QML Placces design discussion

Mark markg85 at gmail.com
Wed Feb 13 14:51:26 UTC 2013


On Wed, Feb 13, 2013 at 3:24 PM, Aaron J. Seigo <aseigo at kde.org> wrote:
> On Tuesday, February 12, 2013 15:59:36 Mark wrote:
>> I understand your reasoning, but i don't think you should do this. In
>> my opinion a plasmoid - and certainly one that's on the panel - should
>> never be invisible but still take up room.
>
> i think we can all agree that an empty space is a bug that needs to be fixed.
>
> so, on to the question of "should we have a pager at all", "should the pager
> hide itself when it shows one desktop", etc.
>
> some people use multiple virtual desktops (vd). some people don't. in fact,
> the default is not to. with the default, the first group of people add more
> desktops as one of the first things they do.
>
> for the overwhelming majority of those with one vd, having a pager is worse
> than useless, it is downright confusing and takes up space on the panel. so
> we'd like to not show a pager for those people.
>
> for those who do .. it's a bit annoying to then also suggest that they have to
> add a pager to their panel if they want one. how magical would it be if it
> just appeared? this is simply a way to give people more comfort and less to
> complain about.
>
> not everyone who uses multiple VDs enjoys or needs a pager. they can remove it
> easily. (this is important to what follows ...)
>
> so .. how can that accomplished? we could add a pager on demand when the
> number of desktops changes. however, this would mean tracking this probably in
> the containment .. and then it would need to know where to put it .. and we'd
> need a way to override this behaviour for distros that want something
> different.
>
> it would also need to be smart enough to know that if it already put one there
> and the user removed it once before, don't add it again.
>
> it's all pretty complex. it also breaks the concept of components in plasma
> and couples (even if loosely) the containment (or whatever component watches
> this) to the pager applet.
>
> well, we could go ALL OUT and add an event based scripting system so that when
> a given event happens a given script is run. we'd have to define (and trigger)
> various events (e.g. "more virtual desktops") and we'd have to have a way to
> match up scripts with triggers ... and .. it's a whole hell of a lot of work
> (and would need to be maintained) for one small feature.
>
> but there's a pragmatic solution:
>
>         hide the fucking thing when there is only one vd.
>
> this covers the "i've removed it once, don't want it back" use case. it covers
> swapping between 1 and 2+ VDs. it respects component lines.
>
> so .. we now have the problem of "i only have one virtual desktop, but i want
> to add a pager". with the current pragmatic solution this isn't possible. i
> can imagine a few approaches to this:
>
> * hide the pager applet in the chooser when there is only 1 VD. this isn't
> great as it means if you have only 1 VD you don't get a pager ever. it also
> means lots of instrumentation in the chooser (and probably more stuff in the
> applet .desktop files) to make this happen. -1
>
> * put a configuration option in the pager which controls the "hide when VD ==
> 1" behaviour. this could be a hidden config value defaulting to off, allowing it
> to be used by the default panel script .. or it could be in the UI, making it
> easy to set whenever.
>
> personally, i lean towards hidden config. if you want a pager that's always
> visible, just add one.
>
> Mark's use case of "display is off, i need a pager" would also be covered in
> this case .. though that use case is also one that should be fixed properly in
> the window manager (Martin G. already noted that). i'd also suggest that with
> present windows and the tasks widget, there are other ways of getting to that
> functionality as well. otherwise, the pager's feature goals do not include "i
> wonder where my windows are when i turn off random displays", so there is no
> reason to optimize the common case / defaults for this.Maps
>
>
> there are some useful lessons in this, and i hope those who have participated
> in the lengthy discussion in this thread will pick some of them out :)
>
> so .. who'll write the patch for the pager?

That's a lengthy reply :)

But now i'm a bit puzzled as top which patches are needed..
First of all, you also agree that taking up the space and not filling
it in with anything should be fixed. But you also say that showing the
pager with one VD should not be the case. And because that is the
default i'm guessing the first step is to get the pager out of the
default setup.

Then on to the fixing part. If you remove the pager from the default
setup there is only one other way to get the pager. Adding it
explicitly! So then the question becomes: if the user adds it
explicitly, should the pager "just" be visible? Regardless of the
number of VD's? Because if that's the case (which it seems) then there
is no need in adding a hidden config. Then it's just a matter of
removing that one "visible: ..." line.


More information about the Plasma-devel mailing list