app: [linux,windows,wasm] scroll horizontally when shift key is pressed

Adds support for horizontal scroll using mousewheel with a shift key.
Support is added for windows, linux (wayland and x11), js (wasm).

Fixes: https://todo.sr.ht/~eliasnaur/gio/398
Signed-off-by: Mearaj <mearajbhagad@gmail.com>
This commit is contained in:
Mearaj
2023-05-04 02:44:24 +05:30
committed by Elias Naur
parent 59695984e5
commit febadd3145
4 changed files with 35 additions and 8 deletions
+4
View File
@@ -236,6 +236,10 @@ func (w *window) addEventListeners() {
w.addEventListener(w.cnv, "wheel", func(this js.Value, args []js.Value) interface{} {
e := args[0]
dx, dy := e.Get("deltaX").Float(), e.Get("deltaY").Float()
// horizontal scroll if shift is pressed.
if e.Get("shiftKey").Bool() {
dx, dy = dy, dx
}
mode := e.Get("deltaMode").Int()
switch mode {
case 0x01: // DOM_DELTA_LINE