eminfedar
eminfedar

Reputation: 668

GTK3+ How to handle touchpad zoom gesture?

I want to get TOUCHPAD pinch zoom gesture from GTK. (I'm using Gnome 3.38 on Wayland, and gestures work well)

GTK Version: 3.24.29

I have this Vala code but it doesn't work:

 using Gtk;
 using Gdk;

namespace Slidertest {
    [GtkTemplate (ui = "/com/eminfedar/slidertest/window.ui")]
    public class Window : Gtk.ApplicationWindow {       
        [GtkChild]
        EventBox eventbox;
        
        public Window (Gtk.Application app) {
            Object (application: app);
            print("GTK: %d.%d.%d\n", Gtk.MAJOR_VERSION, Gtk.MINOR_VERSION, Gtk.MICRO_VERSION);
            
            eventbox.add_events(EventMask.TOUCHPAD_GESTURE_MASK);
            
            var zoom = new GestureZoom(eventbox);
            zoom.set_propagation_phase(PropagationPhase.BUBBLE);
            
            print("recog: %d\n", (int)zoom.is_recognized());
            
            zoom.scale_changed.connect((scale) => {
                print("Scale:%f\n", scale);
            });
            zoom.begin.connect((seq) => {
                print("BEGIN\n");
            });
            zoom.end.connect((seq) => {
                print("END\n");
            });
        }
    }
}

zoom.is_recognized() always returns 0. How can I make it work?

Upvotes: 2

Views: 415

Answers (0)

Related Questions