[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.2' - 2 commits - sd/source sw/source

Noel Grandin (via logerrit) logerrit at kemper.freedesktop.org
Thu Sep 19 14:17:13 UTC 2019


 sd/source/ui/dlg/sddlgfact.hxx      |    7 ++++++-
 sd/source/ui/view/drviews3.cxx      |   18 +++++++++---------
 sw/source/uibase/shells/textidx.cxx |    4 ++--
 3 files changed, 17 insertions(+), 12 deletions(-)

New commits:
commit dd1a810b6b6eedab2b0809db538b8296982f7373
Author:     Noel Grandin <noel.grandin at collabora.co.uk>
AuthorDate: Thu Jan 10 15:07:01 2019 +0200
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Sep 19 16:16:33 2019 +0200

    make Insert->Header and Footer dialog async
    
    Change-Id: Icb2c507970c35a8ddee47912915882dede87ebca
    Reviewed-on: https://gerrit.libreoffice.org/66099
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
    (cherry picked from commit d095a887a9b0cce81b4f828feed759b5d0b3ad3f)
    Reviewed-on: https://gerrit.libreoffice.org/79123
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-by: Andras Timar <andras.timar at collabora.com>

diff --git a/sd/source/ui/dlg/sddlgfact.hxx b/sd/source/ui/dlg/sddlgfact.hxx
index 0bf499416d93..7227a31df6db 100644
--- a/sd/source/ui/dlg/sddlgfact.hxx
+++ b/sd/source/ui/dlg/sddlgfact.hxx
@@ -35,7 +35,8 @@ public:                                                 \
     virtual BitmapEx createScreenshot() const override;   \
     virtual OString GetScreenshotId() const override;   \
     virtual         ~Class() override;                           \
-    virtual short   Execute() override ;
+    virtual short   Execute() override; \
+    virtual bool StartExecuteAsync(AsyncContext &ctx) override;
 
 #define IMPL_ABSTDLG_BASE(Class)                    \
 std::vector<OString> Class::getAllPageUIXMLDescriptions() const { return pDlg->getAllPageUIXMLDescriptions(); } \
@@ -48,6 +49,10 @@ Class::~Class()                                     \
 short Class::Execute()                              \
 {                                                   \
     return pDlg->Execute();                         \
+}                                                   \
+bool Class::StartExecuteAsync(AsyncContext &ctx) \
+{                                                   \
+    return pDlg->StartExecuteAsync(ctx);            \
 }
 
 namespace sd {
diff --git a/sd/source/ui/view/drviews3.cxx b/sd/source/ui/view/drviews3.cxx
index b2ab0cbbb573..7d0d48fed5d3 100644
--- a/sd/source/ui/view/drviews3.cxx
+++ b/sd/source/ui/view/drviews3.cxx
@@ -295,16 +295,16 @@ void  DrawViewShell::ExecCtrl(SfxRequest& rReq)
         case SID_INSERT_DATE_TIME:
         {
             SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
-            ScopedVclPtr<AbstractHeaderFooterDialog> pDlg(pFact ? pFact->CreateHeaderFooterDialog( this, GetActiveWindow(), GetDoc(), mpActualPage ) : nullptr);
-            pDlg->Execute();
-            pDlg.disposeAndClear();
-
-            GetActiveWindow()->Invalidate();
-            UpdatePreview( mpActualPage );
-
-            Invalidate();
-            rReq.Done ();
+            VclPtr<AbstractHeaderFooterDialog> pDlg(pFact ? pFact->CreateHeaderFooterDialog( this, GetActiveWindow(), GetDoc(), mpActualPage ) : nullptr);
+            std::shared_ptr<SfxRequest> xRequest(new SfxRequest(rReq));
+            rReq.Ignore(); // the 'old' request is not relevant any more
+            pDlg->StartExecuteAsync([this, xRequest](sal_Int32 /*nResult*/){
+                GetActiveWindow()->Invalidate();
+                UpdatePreview( mpActualPage );
 
+                Invalidate();
+                xRequest->Done();
+            });
             break;
         }
 
commit 5b4ef012bbfddd0cc8dcc2c120e019a2bed170eb
Author:     Noel Grandin <noel.grandin at collabora.co.uk>
AuthorDate: Thu Jan 10 11:43:11 2019 +0200
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Sep 19 16:16:21 2019 +0200

    make table-of-contents dialog async
    
    Change-Id: I839eaa820952ff39818b5ed9bd06a44eec3f39d3
    Reviewed-on: https://gerrit.libreoffice.org/66069
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
    (cherry picked from commit 6fcb1baf4678c2c34595f38fa4e557cffd67f163)
    Reviewed-on: https://gerrit.libreoffice.org/79124
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-by: Andras Timar <andras.timar at collabora.com>

diff --git a/sw/source/uibase/shells/textidx.cxx b/sw/source/uibase/shells/textidx.cxx
index b346178420f6..323bb365d26d 100644
--- a/sw/source/uibase/shells/textidx.cxx
+++ b/sw/source/uibase/shells/textidx.cxx
@@ -131,10 +131,10 @@ void SwTextShell::ExecIdx(SfxRequest const &rReq)
                     aSet.Put(*pSet);
             }
             SwAbstractDialogFactory* pFact = SwAbstractDialogFactory::Create();
-            ScopedVclPtr<AbstractMultiTOXTabDialog> pDlg(pFact->CreateMultiTOXTabDialog(
+            VclPtr<AbstractMultiTOXTabDialog> pDlg(pFact->CreateMultiTOXTabDialog(
                                                         pMDI, aSet, rSh, const_cast<SwTOXBase*>(pCurTOX),
                                                         bGlobal));
-            pDlg->Execute();
+            pDlg->StartExecuteAsync(nullptr);
         }
         break;
         case FN_REMOVE_CUR_TOX:


More information about the Libreoffice-commits mailing list