]> Pileus Git - ~andy/gtk/commit
scrolledwindow: Kinetic scrolling support
authorCarlos Garcia Campos <cgarcia@igalia.com>
Fri, 11 Feb 2011 12:43:56 +0000 (13:43 +0100)
committerMatthias Clasen <mclasen@redhat.com>
Thu, 1 Mar 2012 21:25:21 +0000 (16:25 -0500)
commitf6393199beb812b81065890d6fec718ee16632f8
tree14f71b0bc9b2323ec4eb744f32108bbdb860f5be
parent8689921b90556008da9ba34326346fd6856c9d47
scrolledwindow: Kinetic scrolling support

Kinetic scrolling is only done on touch devices, since it is
sort of meaningless on pointer devices, besides it implies
a different input event handling on child widgets that is
unnecessary there.

If the scrolling doesn't start after a long press, the scrolling is
cancelled and events are handled by child widgets normally.

When clicked again close to the previous button press location
(assuming it had ~0 movement), the scrolled window will allow
the child to handle the events immediately.

This is so the user doesn't have to wait to the press-and-hold
timeout in order to operate on the scrolledwindow child.

The innermost scrolled window always gets to capture the events, all
scrolled windows above it just let the event go through. Ideally
reaching a limit on the innermost scrolled window would propagate
the dragging up the hierarchy in order to keep following the touch
coords, although that'd involve rather evil hacks just to cater
for broken UIs.
docs/reference/gtk/gtk3-sections.txt
gtk/gtk.symbols
gtk/gtkscrolledwindow.c
gtk/gtkscrolledwindow.h