general: Update to gtk-rs 0.7

This commit is contained in:
Sophie Herold 2023-08-02 14:27:23 +02:00
parent 66b257e4b5
commit 0cff205c9d
7 changed files with 269 additions and 179 deletions

View file

@ -132,22 +132,30 @@ mod imp {
gtk::EventControllerScroll::new(gtk::EventControllerScrollFlags::HORIZONTAL);
scroll_controller.connect_scroll(
glib::clone!(@weak obj => @default-return gtk::Inhibit(false), move |_, x, _| {
glib::clone!(@weak obj => @default-return glib::Propagation::Proceed, move |_, x, _| {
let direction_sign = if obj.imp().is_rtl() { -1. } else { 1. };
if x * direction_sign > 0. {
// check end
if let Some(max) = obj.imp().snap_points().last() {
gtk::Inhibit(obj.position() >= *max)
if obj.position() >= *max {
glib::Propagation::Stop
} else {
glib::Propagation::Proceed
}
} else {
gtk::Inhibit(true)
glib::Propagation::Stop
}
} else {
//check beginning
if let Some(min) = obj.imp().snap_points().first() {
gtk::Inhibit(obj.position() <= *min)
if obj.position() <= *min {
glib::Propagation::Stop
} else {
glib::Propagation::Proceed
}
} else {
gtk::Inhibit(true)
glib::Propagation::Stop
}
}
}),