[Libreoffice-commits] core.git: Branch 'distro/suse/suse-4.0.3' - vcl/unx

Michael Meeks michael.meeks at suse.com
Mon Jun 3 05:09:34 PDT 2013


 vcl/unx/gtk/window/gtkframe.cxx |   12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

New commits:
commit 7758117776f5365112c4833d38f294125c1300d4
Author: Michael Meeks <michael.meeks at suse.com>
Date:   Mon Jun 3 09:27:26 2013 +0100

    fdo#56583 - avoid setting user time on unrealized windows.
    
    Change-Id: Iab776088b1d168295d636069e1a92ba948241653

diff --git a/vcl/unx/gtk/window/gtkframe.cxx b/vcl/unx/gtk/window/gtkframe.cxx
index d783e95..fc5154b 100644
--- a/vcl/unx/gtk/window/gtkframe.cxx
+++ b/vcl/unx/gtk/window/gtkframe.cxx
@@ -1011,9 +1011,17 @@ static void lcl_set_user_time( GtkWindow* i_pWindow, guint32 i_nTime )
         bGetSetUserTimeFn = false;
         p_gdk_x11_window_set_user_time = (setUserTimeFn)osl_getAsciiFunctionSymbol( GetSalData()->m_pPlugin, "gdk_x11_window_set_user_time" );
     }
+    bool bSet = false;
     if( p_gdk_x11_window_set_user_time )
-        p_gdk_x11_window_set_user_time( widget_get_window(GTK_WIDGET(i_pWindow)), i_nTime );
-    else
+    {
+        GdkWindow* pWin = widget_get_window(GTK_WIDGET(i_pWindow));
+        if( pWin ) // only if the window is realized.
+        {
+            p_gdk_x11_window_set_user_time( pWin, i_nTime );
+            bSet = true;
+        }
+    }
+    if( !bSet )
     {
         Display* pDisplay = GetGtkSalData()->GetGtkDisplay()->GetDisplay();
         Atom nUserTime = XInternAtom( pDisplay, "_NET_WM_USER_TIME", True );


More information about the Libreoffice-commits mailing list