Re: Auto-hiding panels

2014-10-14 Thread Martin Gräßlin
On Tuesday 14 October 2014 10:43:42 Martin Klapetek wrote:
 Any opinions/objections?

as I implemented it this way I can share the reasons why I did go for re-using 
the screen edge activation we have for other things. First of all: 
consistency. All edges work the same way and users can expect certain 
behavior: if the glow is shown one has to push against the edge to get 
functionality.

Second reason: multi-usage of the edge: it's possible to use the edge multiple 
times, so it should behave the same way for all of them.

Third reason: preventing unwanted triggering: the auto-hiding panel is there 
for increasing the screen estate. With the panel unhiding without the push 
back it will become difficult to use the newly exposed area. This is 
especially important if one considers that not all pointer devices are very 
precise and not everybody is able to use a pointer device in a precise manner.

Personally I don't care whether there is a pushback or not. From the 
experience over the years with the screen edges I highly recommend to the 
pushback, though.

Cheers
Martin


signature.asc
Description: This is a digitally signed message part.
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Auto-hiding panels

2014-10-14 Thread Marco Martin
On Tuesday 14 October 2014, Martin Klapetek wrote:
 
 I'd like to change this for Plasma panels to not have any resistance or
 very minimal one, basically get it into a state that slamming the mouse
 against a screen edge will show the panel easily, without requiring an
 additional push.

i'm a bit concerned this would cause a lot of unwanted activations, is the 
first complain i hear about autohide panels, and the reson back in the days i 
stopped using them


-- 
Marco Martin
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Auto-hiding panels

2014-10-14 Thread Martin Klapetek
On Tue, Oct 14, 2014 at 11:27 AM, Marco Martin notm...@gmail.com wrote:

 On Tuesday 14 October 2014, Martin Klapetek wrote:
 
  I'd like to change this for Plasma panels to not have any resistance or
  very minimal one, basically get it into a state that slamming the mouse
  against a screen edge will show the panel easily, without requiring an
  additional push.

 i'm a bit concerned this would cause a lot of unwanted activations, is the
 first complain i hear about autohide panels, and the reson back in the
 days i
 stopped using them


In this case it's the 'wanted' activation that's not working too nicely. I
think that auto-hiding panel that requires two slams against a screen edge
to appear is just worse to have than couple of unwanted activations.

As for non-precise pointing devices - this might actually highlight the
problem even more - you may not be too precise with it, so what you do is
you slam the pointer towards the edge, that's the easiest thing you can do
with less-precise devices - drag it/push it strongly in one direction. But
the current state actually requires careful navigation around the
screenedge like slow movement towards it or doing the same movement twice
to trigger the panel, so imo the current situation is even worse with those
devices (and I'm thinking people with lessened hand mobility, trackballs,
touchpads and stylus-tablets...what I missed?).

There is also another angle to this - we could make the auto-hiding
algorithm more clever and better handling the unwanted activation - eg. if
you quickly go to the edge and quickly go out, the hiding delay could be
minimal, if you stay longer or not move so quickly away from the panel, the
hiding delay could be longer etc. Eike did some similar stuff in Kicker.

Cheers
-- 
Martin Klapetek | KDE Developer
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Re: Auto-hiding panels

2014-10-14 Thread Martin Gräßlin
On Tuesday 14 October 2014 11:42:13 Martin Klapetek wrote:
 On Tue, Oct 14, 2014 at 11:27 AM, Marco Martin notm...@gmail.com wrote:
  On Tuesday 14 October 2014, Martin Klapetek wrote:
   I'd like to change this for Plasma panels to not have any resistance or
   very minimal one, basically get it into a state that slamming the mouse
   against a screen edge will show the panel easily, without requiring an
   additional push.
  
  i'm a bit concerned this would cause a lot of unwanted activations, is the
  first complain i hear about autohide panels, and the reson back in the
  days i
  stopped using them
 
 In this case it's the 'wanted' activation that's not working too nicely. I
 think that auto-hiding panel that requires two slams against a screen edge
 to appear is just worse to have than couple of unwanted activations.
 
 As for non-precise pointing devices - this might actually highlight the
 problem even more - you may not be too precise with it, so what you do is
 you slam the pointer towards the edge, that's the easiest thing you can do
 with less-precise devices - drag it/push it strongly in one direction. But
 the current state actually requires careful navigation around the
 screenedge like slow movement towards it or doing the same movement twice
 to trigger the panel, so imo the current situation is even worse with those
 devices (and I'm thinking people with lessened hand mobility, trackballs,
 touchpads and stylus-tablets...what I missed?).

huh? all of that should not be needed. Just continue to move into the same 
direction and it will trigger. Especially there should not be any need to do 
the same movement twice as the mouse pointer gets repositioned.

 
 There is also another angle to this - we could make the auto-hiding
 algorithm more clever and better handling the unwanted activation - eg. if
 you quickly go to the edge and quickly go out, the hiding delay could be
 minimal, if you stay longer or not move so quickly away from the panel, the
 hiding delay could be longer etc. Eike did some similar stuff in Kicker.

feel free to experiment with improving the screen edge activation :-)

Cheers
Martin

signature.asc
Description: This is a digitally signed message part.
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Re: Auto-hiding panels

2014-10-14 Thread Martin Klapetek
On Tue, Oct 14, 2014 at 12:12 PM, Martin Gräßlin mgraess...@kde.org wrote:


 huh? all of that should not be needed. Just continue to move into the same
 direction and it will trigger. Especially there should not be any need to
 do
 the same movement twice as the mouse pointer gets repositioned.


Moving the mouse across the screen to the edge stops the cursor at the edge
(even if I continue moving the mouse a bit), the blue glow appears,
instinctively I stop the mouse (as the mouse cursor is not moving anymore)
and at this point I just have to move the mouse again with the same force -
hence the two slams. To overcome the panel resistance in one single mouse
movement it takes me moving the mouse across half the table here.

Cheers
-- 
Martin Klapetek | KDE Developer
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Re: Re: Auto-hiding panels

2014-10-14 Thread Martin Gräßlin
On Tuesday 14 October 2014 12:19:24 Martin Klapetek wrote:
 To overcome the panel resistance in one single mouse movement it takes me 
moving the mouse across half the table here.

This would indicate that the overall edge triggering code needs to be 
improved. I'm certainly not saying that it's perfect. For my usage it's not a 
problem as I'm using a trackball.

So the outcome for me is: let's try improve the handling to make it better for 
everyone.

Cheers
Martin

signature.asc
Description: This is a digitally signed message part.
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Auto-hiding panels

2014-10-14 Thread Àlex Fiestas
On Tuesday 14 October 2014 10:43:42 Martin Klapetek wrote:
 I'd like to change this for Plasma panels to not have any resistance or
 very minimal one, basically get it into a state that slamming the mouse
 against a screen edge will show the panel easily, without requiring an
 additional push.
I think we should ask VDG about this, it is a change in behavior and look and 
feel after all!

signature.asc
Description: This is a digitally signed message part.
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


Re: Auto-hiding panels

2014-10-14 Thread Andrew Lake
On Tue, Oct 14, 2014 at 6:51 AM, Àlex Fiestas wrote:

 On Tuesday 14 October 2014 10:43:42 Martin Klapetek wrote:
  I'd like to change this for Plasma panels to not have any resistance or
  very minimal one, basically get it into a state that slamming the mouse
  against a screen edge will show the panel easily, without requiring an
  additional push.
 I think we should ask VDG about this, it is a change in behavior and look
 and
 feel after all!

 Maybe just tweak to the edge triggering code might get us there as Martin
suggests. :-)

Best I can tell, the behavioral model from the user side is to move the
cursor far enough beyond the edge and the panel will appear. Based on that
behavioral model, I think the expectation would be that if the cursor is
moving relatively quickly when it get's to the edge it'll get to the magic
distance beyond the edge more quickly than if the cursor is moving
relatively slowly.

Another potential behavioral model could be a force model, where the panel
unhides when the edge is hit with a certain degree of force. Force based
models can be quite complex though since it usually requires some kind of
elastic resistance at the edge to allow triggering when moving the cursor
relatively slowly. Also, since there are very few uses of the cursor within
the screen boundaries that employ a force model, the user needs to maintain
quite different behavioral models of the the cursor behavior at the edge
versus the middle of the screen. It doesn't mean it can't be done, but I
think it can be quite tricky to do well. A simple magic distance past the
edge behavior is usually much simpler and more predictable I think and
should handle the fast versus slow edge approaches just fine.

Hope this helps,
Andrew
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel