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. Both options required changes to applications (different sets though), and there are likely way more applications with custom UIs within a viewport than custom scrollable widgets out there, so 2) was chosen On jue, 2012-03-15 at 12:52 -0400, Colin Walters wrote: > On Thu, 2012-03-15 at 08:10 -0400, Matthias Clasen wrote: > > > Thanks for bringing these up. I'm sure there will be some more fallout > > from the xi2 changes. I don't know if we'll be able to have perfectly > > seamless compatibility in the scroll event case, there are some > > complications that make that hard. > > But do you have a global sense of whether we should at this point: > > 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. > 1) Pursue hacks (or non-hacks?) in GTK+ to improve compatibility > 2) Make it opt-in Hard to come up with a compatible solution, even if smooth scrolling is optional. Carlos _______________________________________________ desktop-devel-list mailing list desktop-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/desktop-devel-list