vcl/unx/gtk3/gtkframe.cxx | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-)
New commits: commit 72f52efe861ff2a85d26a7cf6d8301af1c5ec2a2 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Tue May 11 14:41:35 2021 +0100 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Tue May 11 17:37:09 2021 +0200 gtk4: trim ensure_dbus_setup down to the minimum needed Change-Id: Ic74ae09ca36ec110c67718fdb3de0513ef36d387 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115425 Tested-by: Caolán McNamara <caol...@redhat.com> Reviewed-by: Caolán McNamara <caol...@redhat.com> diff --git a/vcl/unx/gtk3/gtkframe.cxx b/vcl/unx/gtk3/gtkframe.cxx index b98e5d2a75bf..23457d764881 100644 --- a/vcl/unx/gtk3/gtkframe.cxx +++ b/vcl/unx/gtk3/gtkframe.cxx @@ -499,6 +499,7 @@ static void ObjectDestroyedNotify( gpointer data ) } } +#if !GTK_CHECK_VERSION(4,0,0) static void hud_activated( gboolean hud_active, gpointer user_data ) { if ( hud_active ) @@ -511,6 +512,7 @@ static void hud_activated( gboolean hud_active, gpointer user_data ) pSalMenu->UpdateFull(); } } +#endif static bool ensure_dbus_setup( gpointer data ) { @@ -524,6 +526,15 @@ static bool ensure_dbus_setup( gpointer data ) if ( gdkWindow != nullptr && g_object_get_data( G_OBJECT( gdkWindow ), "g-lo-menubar" ) == nullptr ) { + // Create menu model and action group attached to this frame. + GMenuModel* pMenuModel = G_MENU_MODEL( g_lo_menu_new() ); + GActionGroup* pActionGroup = reinterpret_cast<GActionGroup*>(g_lo_action_group_new()); + + // Set window properties. + g_object_set_data_full( G_OBJECT( gdkWindow ), "g-lo-menubar", pMenuModel, ObjectDestroyedNotify ); + g_object_set_data_full( G_OBJECT( gdkWindow ), "g-lo-action-group", pActionGroup, ObjectDestroyedNotify ); + +#if !GTK_CHECK_VERSION(4,0,0) // Get a DBus session connection. if(!pSessionBus) pSessionBus = g_bus_get_sync (G_BUS_TYPE_SESSION, nullptr, nullptr); @@ -532,20 +543,11 @@ static bool ensure_dbus_setup( gpointer data ) return false; } - // Create menu model and action group attached to this frame. - GMenuModel* pMenuModel = G_MENU_MODEL( g_lo_menu_new() ); - GActionGroup* pActionGroup = reinterpret_cast<GActionGroup*>(g_lo_action_group_new()); - // Generate menu paths. sal_uIntPtr windowId = pSalFrame->GetNativeWindowHandle(pSalFrame->getWindow()); gchar* aDBusWindowPath = g_strdup_printf( "/org/libreoffice/window/%lu", windowId ); gchar* aDBusMenubarPath = g_strdup_printf( "/org/libreoffice/window/%lu/menus/menubar", windowId ); - // Set window properties. - g_object_set_data_full( G_OBJECT( gdkWindow ), "g-lo-menubar", pMenuModel, ObjectDestroyedNotify ); - g_object_set_data_full( G_OBJECT( gdkWindow ), "g-lo-action-group", pActionGroup, ObjectDestroyedNotify ); - -#if !GTK_CHECK_VERSION(4,0,0) GdkDisplay *pDisplay = GtkSalFrame::getGdkDisplay(); #if defined(GDK_WINDOWING_X11) if (DLSYM_GDK_IS_X11_DISPLAY(pDisplay)) @@ -567,7 +569,6 @@ static bool ensure_dbus_setup( gpointer data ) "/org/libreoffice", g_dbus_connection_get_unique_name( pSessionBus )); } -#endif #endif // Publish the menu model and the action group. SAL_INFO("vcl.unity", "exporting menu model at " << pMenuModel << " for window " << windowId); @@ -578,6 +579,7 @@ static bool ensure_dbus_setup( gpointer data ) g_free( aDBusWindowPath ); g_free( aDBusMenubarPath ); +#endif } return false; } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits