[sugar] [PATCH] #447: grab/scroll key

Erik Garrison erik
Mon Jul 14 00:06:56 EDT 2008


On Sun, Jul 13, 2008 at 11:19:46AM -0400, Eben Eliason wrote:
> On Sun, Jul 13, 2008 at 11:03 AM, Brian Jordan <brian at laptop.org> wrote:
> > Brilliant work, Erik! I had a chance to play with your first working
> > hand scroll, and it's beyond explanation how fun it is to be able to
> > scroll around using the touchpad without aiming for a gtkScrollBar.
> 
> Great to hear!  I can't wait to give it a try myself...it's been a
> long time in coming.
> 

I'll give you a demo tomorrow.

> > For all to consider: there are two grab buttons. What if one tended to
> > grab + move *objects*, and the other grabs + moves
> > *scenes/backgrounds*? From what I've heard, kids tend to have a hard
> > time left-clicking and dragging with their same hand (as with the
> > touchpad). So, for applications like Browse, both grab buttons could
> > still just scroll up/down. But for graphical editors (e.g., layout
> > programs, Physics, Model, anything with a scene and objects), this UI
> > behavior may be a real time saver and fun to use. This would require
> > giving applications the ability to process events from these two
> > scroll buttons in a way that identifies them separately.
> 
> That's an interesting idea.  However, the reason there are two keys is
> so that interaction works well for both left- and right-handed users,
> without the need for them to cross their arms to scroll around.  What
> we might be able to do, though, is map an SHIFT-HAND shortcut to a
> drag/drop action instead. (I suggest shift because it's the only
> modified which is present on both sides of our keyboard, for the same
> reason as above.)
> 

I like Brian's idea but felt similarly about the difficulty in deciding
which hand button executes which function.  SHIFT-HAND is a good
solution, and relatively easy to implement.

> To make that work well, I think we'll need to manage the display of
> the cursor appropriately.  perhaps we can use the
> horizontal/vertical/fleur arrows to indicate scrolling options, switch
> to the open hand when shift is pressed to indicate drag mode, and
> switch to a closed hand after a drag has been started.
> 

How is the cursor pixmap currently set?  Is there an existing function
in the sugar codebase to set the cursor pixmap?

Erik



More information about the Sugar-devel mailing list