[Libreoffice-commits] core.git: sd/source

Julien Nabet serval2412 at yahoo.fr
Thu Sep 3 04:09:09 PDT 2015


 sd/source/ui/func/fusldlg.cxx |   19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

New commits:
commit db9f846abfc683c622375191edb6ae9bf348f6e7
Author: Julien Nabet <serval2412 at yahoo.fr>
Date:   Tue Sep 1 22:52:13 2015 +0200

    tdf#85303: SLIDESHOW cannot start at selected slide sometimes
    
    When Slide Show/Slide Show Settings is selected and Ok button is clicked
    the slide from "From" list box is stored in maPresPage and the fact that
    this var is not empty makes slideshow considers it must be used.
    
    So 2 things must be done:
    1) Check first if "All Slides" has been selected
    In this case, don't read slide from "From" in next block (ATTR_PRESENT_DIANAME)
    and so let maPresPage empty
    2) Empty maPresPage if "All Slides" has been selected to remove
    any existing value
    
    Change-Id: I6042ae2db6260e1f441a1c9db90f5de6de966f2a
    Reviewed-on: https://gerrit.libreoffice.org/18253
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/sd/source/ui/func/fusldlg.cxx b/sd/source/ui/func/fusldlg.cxx
index 870e445..452ea9a 100644
--- a/sd/source/ui/func/fusldlg.cxx
+++ b/sd/source/ui/func/fusldlg.cxx
@@ -120,18 +120,23 @@ void FuSlideShowDlg::DoExecute( SfxRequest& )
 
         pDlg->GetAttr( aDlgSet );
 
-        aPage = ITEMVALUE( aDlgSet, ATTR_PRESENT_DIANAME, SfxStringItem );
-        if( aPage != rPresentationSettings.maPresPage )
-        {
-            bValuesChanged = true;
-            rPresentationSettings.maPresPage = aPage;
-        }
-
         bValue = ITEMVALUE( aDlgSet, ATTR_PRESENT_ALL, SfxBoolItem );
         if ( bValue != rPresentationSettings.mbAll )
         {
             bValuesChanged = true;
             rPresentationSettings.mbAll = bValue;
+            // remove any previous existing slide
+            rPresentationSettings.maPresPage = "";
+        }
+
+        if (!rPresentationSettings.mbAll)
+        {
+            aPage = ITEMVALUE( aDlgSet, ATTR_PRESENT_DIANAME, SfxStringItem );
+            if( aPage != rPresentationSettings.maPresPage )
+            {
+                bValuesChanged = true;
+                rPresentationSettings.maPresPage = aPage;
+            }
         }
 
         bValue = ITEMVALUE( aDlgSet, ATTR_PRESENT_CUSTOMSHOW, SfxBoolItem );


More information about the Libreoffice-commits mailing list