Created attachment 8915954 Bug 143038 Make users can scroll contents horizontally with vertical wheel operation with a modifier
This patch declares a new pref, "mousewheel.modifier_to_treat_vertical_wheel_as_horizontal_scroll", this takes a keycode of modifier keys as its value. The default value is 16 (NS_VK_SHIFT) on Windows, Linux and Android and 0 (meaning disabled) on macOS. The reason why this new feature is disabled on macOS is, if user turns vertical wheel of mice with Shift key, macOS notifies us of horizontal scroll events. So, we don't need to care this feature by ourselves on macOS. If a modifier keycode is specified to the pref as expected, EventStateManager and EventStateManager::WheelPrefs treats vertical wheel operation as horizontal scroll when coming wheel event without the modifier causes scroll. In such case, EventStateManager::WheelPrefs::NeedToTreatAsHorizontalScroll() returns true. Otherwise, false. If this returns true, default action handler of wheel events such as EventStateManager::PostHandleEvent() and IAPZCTreeManager::ReceiveInputEvent() swaps deltaX values and deltaY values of coming wheel event temporarily and restore them. AutoTemporarilyWheelDeltaSwapper in WheelHandlingHelper guarantees this restoring. So, this patch does NOT change any wheel event information on web apps. Only changes its default action. This is same behavior as Chromium. Note that with this patch, users cannot navigate the tab's history with Shift + vertical-wheel in the default settings. However, I guess that the usage of this feature is less than the number of users who wants to scroll contents horizontally with vertical mouse wheel. Of course, Shift + horizontal-wheel is available for navigating tab's history even after this change. Review commit: https://reviewboard.mozilla.org/r/186794/diff/#index_header See other reviews: https://reviewboard.mozilla.org/r/186794/ -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1228250 Title: [Shift + Mouse-Scroll-Wheel] Does NOT Scroll Horizontally To manage notifications about this bug go to: https://bugs.launchpad.net/firefox/+bug/1228250/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs