From cca92d78382e1ce90ff502aa0590eec64ba09bfe Mon Sep 17 00:00:00 2001
From: c4pp4
Date: Fri, 1 May 2026 22:07:19 +0200
Subject: [PATCH 1/1] Export "win" actions for Unity global menu

Export "win" actions via the window's own GActionMap so they are
visible over D-Bus for global menu support (Unity indicator-appmenu).
gtk_widget_insert_action_group() only registers the group in the
local widget action muxer without D-Bus export; GtkApplicationWindow
exports its own GActionMap over D-Bus as the "win" action group and
also makes those actions available locally as "win.*".
https://github.com/transmission/transmission/issues/5332

Signed-off-by: c4pp4
---
 gtk/MainWindow.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/gtk/MainWindow.cc b/gtk/MainWindow.cc
index d05a05a..445a1a1 100644
--- a/gtk/MainWindow.cc
+++ b/gtk/MainWindow.cc
@@ -599,7 +599,11 @@ MainWindow::Impl::Impl(
         window.maximize();
     }
 
-    window.insert_action_group("win", actions);
+    if (auto* action_map = dynamic_cast<Gio::ActionMap*>(actions.get()); action_map != nullptr)
+    {
+        for (auto const& name : actions->list_actions())
+            window.add_action(action_map->lookup_action(name));
+    }
 
     /**
     *** Statusbar
-- 
2.53.0

