Em Fri, 2012-03-16 às 12:51 +0100, Carlos Garnacho escreveu: > Hey, > > In order to provide some background to the ML, scroll events were being > sent to widgets with GDK_BUTTON_PRESS_MASK (no scroll mask required), > but this played odd with smooth scrolling as scrolled windows get scroll > events in 2 ways: > > 1) bubbled up from the child within > 2) received directly via priv->overshoot_window, only if no child > handles scrolling > > With the old behavior, 1) would happen on every widget that would handle > button presses, but not necessarily scrolling, so scrolling in a > viewport or textview (handling smooth scroll) with eg. buttons (handling > just button presses) would intermittently coerce smooth and non-smooth > scrolling depending on the widget below the pointer, the weighted > solutions were: > > 1) Requiring apps to set GDK_SMOOTH_SCROLL_MASK on *every* widget within > a scrolled window if they want smooth scrolling, or face odd behavior > 2) Changing GDK so scroll events are only sent if > GDK_[SMOOTH_]SCROLL_MASK is in the evmask.
So gtk_widget_add_events (widget, GDK_SCROLL_MASK); for every widget for which we want the old behaviour back, correct? Sounds doable by 3.4. <snip> > > 0) Patch affected applications > > I think that should be done anyway for coherence (if you expect scroll > events, setting the scroll mask shouldn't hurt). I could just count 3 > custom scrollable widgets in gnome outside of gtk (webkit, g-t and > gucharmap), so it shouldn't be a big effort either. There's a gazillion pieces of code that use scroll events and that'll need updating. The smaller the quick fix, the better. Cheers _______________________________________________ desktop-devel-list mailing list desktop-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/desktop-devel-list