fix touchpad scroll for buttonsi #5

This commit is contained in:
Aylur
2023-09-04 22:15:43 +02:00
parent 6491b2694e
commit c06156c890
+8 -11
View File
@@ -35,6 +35,8 @@ export default class AgsButton extends Gtk.Button {
super(typeof params === 'string' ? { label: params } : rest); super(typeof params === 'string' ? { label: params } : rest);
this.add_events(Gdk.EventMask.SCROLL_MASK); this.add_events(Gdk.EventMask.SCROLL_MASK);
this.add_events(Gdk.EventMask.SMOOTH_SCROLL_MASK);
this.onClicked = onClicked; this.onClicked = onClicked;
this.onPrimaryClick = onPrimaryClick; this.onPrimaryClick = onPrimaryClick;
this.onSecondaryClick = onSecondaryClick; this.onSecondaryClick = onSecondaryClick;
@@ -74,17 +76,12 @@ export default class AgsButton extends Gtk.Button {
event.get_button()[1] === Gdk.BUTTON_MIDDLE) event.get_button()[1] === Gdk.BUTTON_MIDDLE)
return runCmd(this.onMiddleClickRelease, this, event); return runCmd(this.onMiddleClickRelease, this, event);
}); });
}
vfunc_scroll_event(event: Gdk.EventScroll): boolean { this.connect('scroll-event', (box, event) => {
if (this.onScrollUp && if (event.get_scroll_deltas()[2] < 0)
event.direction === Gdk.ScrollDirection.UP) return runCmd(this.onScrollUp, box, event);
return runCmd(this.onScrollUp, this, event); else if (event.get_scroll_deltas()[2] > 0)
return runCmd(this.onScrollDown, box, event);
else if (this.onScrollDown && });
event.direction === Gdk.ScrollDirection.DOWN)
return runCmd(this.onScrollDown, this, event);
return super.vfunc_scroll_event(event);
} }
} }