[polari] roomListHeader: Fix keyboard activation



commit 67de3649a5cb793feaf38cff0ee983dce438cfc2
Author: Florian Müllner <fmuellner gnome org>
Date:   Fri Aug 27 20:13:24 2021 +0200

    roomListHeader: Fix keyboard activation
    
    Hooking up the activate-signal used to require direct class struct
    access. Gtk4 finally added introspectable API, so start using it.
    
    Part-of: <https://gitlab.gnome.org/GNOME/polari/-/merge_requests/235>

 src/roomList.js | 7 +++++++
 1 file changed, 7 insertions(+)
---
diff --git a/src/roomList.js b/src/roomList.js
index 9ec04423..6e206602 100644
--- a/src/roomList.js
+++ b/src/roomList.js
@@ -301,10 +301,14 @@ const RoomListHeader = GObject.registerClass({
             GObject.ParamFlags.READWRITE,
             Gtk.Popover.$gtype),
     },
+    Signals: {
+        'activate': { flags: GObject.SignalFlags.ACTION },
+    },
 }, class RoomListHeader extends Gtk.Widget {
     static _classInit(klass) {
         klass = Gtk.Widget._classInit(klass);
 
+        Gtk.Widget.set_activate_signal_from_name.call(klass, 'activate');
         Gtk.Widget.set_layout_manager_type = Gtk.GridLayout;
 
         return klass;
@@ -322,6 +326,9 @@ const RoomListHeader = GObject.registerClass({
             name: `RoomListHeader ${this._account.display_name}`,
         });
 
+        this.connect('activate',
+            () => this._popover?.popup());
+
         this._clickGesture = new Gtk.GestureClick({
             propagation_phase: Gtk.PropagationPhase.CAPTURE,
             button: 0,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]