[Libreoffice-commits] core.git: sw/inc sw/source

Jan Holesovsky kendy at collabora.com
Fri Apr 21 06:07:11 UTC 2017


 sw/inc/PostItMgr.hxx                      |    5 +++--
 sw/source/filter/ww8/docxexportfilter.cxx |    9 +++++++++
 2 files changed, 12 insertions(+), 2 deletions(-)

New commits:
commit 4354f0e9ef4a5538729a2a6f2d1745e247f6c5cd
Author: Jan Holesovsky <kendy at collabora.com>
Date:   Thu Apr 20 23:31:27 2017 +0200

    tdf#68604: Commit the data from the postit to the model before docx save.
    
    Change-Id: I74f4adad5f142b35ff8819577b1dbd6e5c45db96
    Reviewed-on: https://gerrit.libreoffice.org/36757
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Miklos Vajna <vmiklos at collabora.co.uk>

diff --git a/sw/inc/PostItMgr.hxx b/sw/inc/PostItMgr.hxx
index 6f25c4cb72bd..319a83c1cac2 100644
--- a/sw/inc/PostItMgr.hxx
+++ b/sw/inc/PostItMgr.hxx
@@ -21,6 +21,7 @@
 #define INCLUDED_SW_INC_POSTITMGR_HXX
 
 #include <sal/config.h>
+#include "swdllapi.h"
 
 #include <cstddef>
 #include <list>
@@ -249,10 +250,10 @@ class SwPostItMgr: public SfxListener
 
         sw::annotation::SwAnnotationWin* GetActiveSidebarWin() { return mpActivePostIt; }
         void SetActiveSidebarWin( sw::annotation::SwAnnotationWin* p);
-        bool HasActiveSidebarWin() const;
+        SW_DLLPUBLIC bool HasActiveSidebarWin() const;
         bool HasActiveAnnotationWin() const;
         void GrabFocusOnActiveSidebarWin();
-        void UpdateDataOnActiveSidebarWin();
+        SW_DLLPUBLIC void UpdateDataOnActiveSidebarWin();
         void DeleteActiveSidebarWin();
         void HideActiveSidebarWin();
         void ToggleInsModeOnActiveSidebarWin();
diff --git a/sw/source/filter/ww8/docxexportfilter.cxx b/sw/source/filter/ww8/docxexportfilter.cxx
index c3859af0844a..9cfba638a7f6 100644
--- a/sw/source/filter/ww8/docxexportfilter.cxx
+++ b/sw/source/filter/ww8/docxexportfilter.cxx
@@ -24,6 +24,7 @@
 #include <docsh.hxx>
 #include <editsh.hxx>
 #include <pam.hxx>
+#include <PostItMgr.hxx>
 #include <unotxdoc.hxx>
 #include <IDocumentLayoutAccess.hxx>
 
@@ -54,6 +55,14 @@ bool DocxExportFilter::exportDocument()
     if (pViewShell != nullptr)
         pViewShell->CalcLayout();
 
+    // if we have an active postit window, update the document model
+    if (pViewShell &&
+        pViewShell->GetPostItMgr() &&
+        pViewShell->GetPostItMgr()->HasActiveSidebarWin())
+    {
+        pViewShell->GetPostItMgr()->UpdateDataOnActiveSidebarWin();
+    }
+
     // get SwPaM*
     // FIXME so far we get SwPaM for the entire document; probably we should
     // be able to output just the selection as well - though no idea how to


More information about the Libreoffice-commits mailing list