From c3c2ac6afad6b154d83dbe555f5b276e5909718b Mon Sep 17 00:00:00 2001
From: Jim Raykowski <raykowj@gmail.com>
Date: Thu, 20 Dec 2018 23:43:39 -0900
Subject: tdf#115691 Keep focus in effects list after preview

Fixes gtk2 and gtk3 builds not keeping focus in effects list when
sidebar is undocked.

Change-Id: Iab2038bbf1ef2c1e6e1707f59776672d1b07404f
Reviewed-on: https://gerrit.libreoffice.org/65618
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
---
 sd/source/ui/animations/CustomAnimationPane.cxx | 4 ----
 sd/source/ui/slideshow/slideshow.cxx            | 2 +-
 2 files changed, 1 insertion(+), 5 deletions(-)

(limited to 'sd')

diff --git a/sd/source/ui/animations/CustomAnimationPane.cxx b/sd/source/ui/animations/CustomAnimationPane.cxx
index f87eb0153538..db2236ad32a5 100644
--- a/sd/source/ui/animations/CustomAnimationPane.cxx
+++ b/sd/source/ui/animations/CustomAnimationPane.cxx
@@ -2092,8 +2092,6 @@ IMPL_LINK_NOARG(CustomAnimationPane, AnimationSelectHdl, ListBox&, void)
         if ( !pPreset && ( ePathKind == PathKind::NONE ) )
             return;
 
-        VclPtr<vcl::Window> xSaveFocusId = Window::SaveFocus();
-
         if ( ePathKind != PathKind::NONE )
         {
             std::vector< Any > aTargets;
@@ -2114,7 +2112,6 @@ IMPL_LINK_NOARG(CustomAnimationPane, AnimationSelectHdl, ListBox&, void)
 
            createPath( ePathKind, aTargets, 0.0 );
            updateMotionPathTags();
-           Window::EndSaveFocus(xSaveFocusId);
            return;
         }
 
@@ -2143,7 +2140,6 @@ IMPL_LINK_NOARG(CustomAnimationPane, AnimationSelectHdl, ListBox&, void)
         }
 
         onPreview(false);
-        Window::EndSaveFocus(xSaveFocusId);
     }
 }
 
diff --git a/sd/source/ui/slideshow/slideshow.cxx b/sd/source/ui/slideshow/slideshow.cxx
index edbd197f4342..dac5103dceb2 100644
--- a/sd/source/ui/slideshow/slideshow.cxx
+++ b/sd/source/ui/slideshow/slideshow.cxx
@@ -1090,7 +1090,7 @@ void SlideShow::StartInPlacePresentation()
             end();
         else
         {
-            if(mpCurrentViewShellBase)
+            if( mpCurrentViewShellBase && ( !mxCurrentSettings.get() || ( mxCurrentSettings.get() && !mxCurrentSettings->mbPreview ) ) )
                 mpCurrentViewShellBase->GetWindow()->GrabFocus();
         }
     }
-- 
cgit