[Libreoffice-commits] core.git: vcl/unx

Katarina Behrens Katarina.Behrens at cib.de
Wed Mar 28 12:38:17 UTC 2018


 vcl/unx/generic/window/salframe.cxx |   14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

New commits:
commit 0db4e7f60c92313327ae5b1e4307ed4fedfaa6f5
Author: Katarina Behrens <Katarina.Behrens at cib.de>
Date:   Fri Mar 23 15:04:18 2018 +0100

    tdf#116563: floating windows must get input focus at some point
    
    This partially reverts commit bb6a8dce405bd0f and means we need
    a different solution for tdf#48300 on X11-based Linux frontends.
    
    Send _NET_ACTIVE_WINDOW signal only if we want to activate window
    that has been minimized (ToTopFlags::RestoreWhenMin) or covered by
    other windows (ToTopFlags::ForegroundTask).
    
    Change-Id: I529baf6cc1174728b54bae4c658cf95631da19d6
    Reviewed-on: https://gerrit.libreoffice.org/51867
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Katarina Behrens <Katarina.Behrens at cib.de>

diff --git a/vcl/unx/generic/window/salframe.cxx b/vcl/unx/generic/window/salframe.cxx
index 4bdf8469671b..8f8bc056e054 100644
--- a/vcl/unx/generic/window/salframe.cxx
+++ b/vcl/unx/generic/window/salframe.cxx
@@ -1426,18 +1426,14 @@ void X11SalFrame::ToTop( SalFrameToTop nFlags )
         && bMapped_ )
     {
         if( m_bXEmbed )
-        {
             askForXEmbedFocus( 0 );
-            return;
-        }
-
-        if ( nFlags & SalFrameToTop::GrabFocus )
-        {
+        else
+            XSetInputFocus( GetXDisplay(), aToTopWindow, RevertToParent, CurrentTime );
+    }
+    else if( ( nFlags & SalFrameToTop::RestoreWhenMin ) || ( nFlags & SalFrameToTop::ForegroundTask ) )
+    {
             Time nTimestamp = pDisplay_->GetX11ServerTime();
             GetDisplay()->getWMAdaptor()->activateWindow( this, nTimestamp );
-        }
-        else if ( nFlags & SalFrameToTop::GrabFocusOnly )
-            XSetInputFocus( GetXDisplay(), aToTopWindow, RevertToParent, CurrentTime );
     }
 }
 


More information about the Libreoffice-commits mailing list