[iagno/arnaudb/wip/gtk4: 10/54] Adapt to MenuButton API.



commit bf3a0481c393f90d86cedffa9b4a5cc4a0080e6a
Author: Arnaud Bonatti <arnaud bonatti gmail com>
Date:   Fri Feb 14 05:32:55 2020 +0100

    Adapt to MenuButton API.

 src/base-headerbar.vala | 13 +++++++------
 src/game-headerbar.vala |  2 +-
 2 files changed, 8 insertions(+), 7 deletions(-)
---
diff --git a/src/base-headerbar.vala b/src/base-headerbar.vala
index a4d35c5..3f38c2f 100644
--- a/src/base-headerbar.vala
+++ b/src/base-headerbar.vala
@@ -132,16 +132,17 @@ private class BaseHeaderBar : NightTimeAwareHeaderBar, AdaptativeWidget
 
     protected inline void hide_hamburger_menu ()
     {
-        if (info_button.active)
-            info_button.active = false;
+        info_button.popdown ();
     }
 
     internal void toggle_hamburger_menu ()
     {
-        if (info_button.visible)
-            info_button.active = !info_button.active;
-        else
+        if (!info_button.visible)
             toggle_view_menu ();
+        else if (info_button.popover.visible)   // TODO hackish 1/3
+            info_button.popdown ();
+        else
+            info_button.popup ();
     }
     protected virtual void toggle_view_menu () {}
 
@@ -304,6 +305,6 @@ private class BaseHeaderBar : NightTimeAwareHeaderBar, AdaptativeWidget
 
     internal virtual bool has_popover ()
     {
-        return info_button.active;
+        return info_button.popover.visible;     // TODO hackish 2/3
     }
 }
diff --git a/src/game-headerbar.vala b/src/game-headerbar.vala
index 8238b3d..d71fe42 100644
--- a/src/game-headerbar.vala
+++ b/src/game-headerbar.vala
@@ -168,7 +168,7 @@ private class GameHeaderBar : BaseHeaderBar, AdaptativeWidget
 
     internal void finish_game ()
     {
-        if (game_widget != null && ((!) game_widget) is MenuButton && !((MenuButton) (!) game_widget).active)
+        if (game_widget != null && ((!) game_widget) is MenuButton && !((MenuButton) (!) 
game_widget).popover.visible)   // hackish 3/3
             new_game_button.grab_focus ();
         else
             new_game_button.grab_default ();    // FIXME: grab_focus, but without closing the popover...


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