From 9a46de815da48759c01d8427f28d3fc024af05d0 Mon Sep 17 00:00:00 2001 From: AfalpHy <736353503@qq.com> Date: Tue, 13 Jan 2026 16:06:06 +0800 Subject: [PATCH] fix the issue where the main window stops receiving tray messages when a subwindow is created --- packages/tray_manager/linux/tray_manager_plugin.cc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/tray_manager/linux/tray_manager_plugin.cc b/packages/tray_manager/linux/tray_manager_plugin.cc index 77b1bda..dcd6fe8 100644 --- a/packages/tray_manager/linux/tray_manager_plugin.cc +++ b/packages/tray_manager/linux/tray_manager_plugin.cc @@ -194,6 +194,15 @@ void tray_manager_plugin_register_with_registrar(FlPluginRegistrar* registrar) { TrayManagerPlugin* plugin = TRAY_MANAGER_PLUGIN( g_object_new(tray_manager_plugin_get_type(), nullptr)); + static bool plugin_already_registered = false; + + if (plugin_already_registered) { + // Skip registration in subwindow + return; + } + + plugin_already_registered = true; + plugin->registrar = FL_PLUGIN_REGISTRAR(g_object_ref(registrar)); g_autoptr(FlStandardMethodCodec) codec = fl_standard_method_codec_new();