[ooo-build-commit] .: sw/inc sw/source

Kohei Yoshida kohei at kemper.freedesktop.org
Tue Oct 5 12:45:23 PDT 2010


 sw/inc/docsh.hxx            |    2 ++
 sw/source/ui/app/docsh2.cxx |    7 +++++++
 2 files changed, 9 insertions(+)

New commits:
commit 8e4bc146c26b953ab36378f38692c18b19d93b1e
Author: Kohei Yoshida <kyoshida at novell.com>
Date:   Tue Oct 5 15:42:22 2010 -0400

    Ported dde-reconnect-on-load-*.diff from ooo-build.
    
    Improve reliability of DDE connections between documents opened in LO.
    With this change, LO tries to reconnect to a DDE server document upon
    opening if that server document is being listened to by one of the
    open documents.
    
    Also, the old implementation would load a DDE server document
    invisible, and would never close it when the user updates the link.
    This had the consequence that when the user tries to open this
    document while it's loaded hidden, it causes some weird focus issues,
    and closing it and opening it again would disconnect the DDE
    connection.  The new implementation closes the server document
    immediately after the DDE link update is complete.
    
    This change also fixes a bug in Calc where DDE link updates to cells
    would fail when the formula syntax is set to something other than Calc
    A1.

diff --git a/sw/inc/docsh.hxx b/sw/inc/docsh.hxx
index 3840d59..9abc65e 100644
--- a/sw/inc/docsh.hxx
+++ b/sw/inc/docsh.hxx
@@ -237,6 +237,8 @@ public:
     virtual long DdeSetData( const String& rItem, const String& rMimeType,
                                 const ::com::sun::star::uno::Any & rValue );
     virtual ::sfx2::SvLinkSource* DdeCreateLinkSource( const String& rItem );
+    virtual void ReconnectDdeLink(SfxObjectShell& rServer);
+
     virtual void FillClass( SvGlobalName * pClassName,
                                    sal_uInt32 * pClipFormat,
                                    String * pAppName,
diff --git a/sw/source/ui/app/docsh2.cxx b/sw/source/ui/app/docsh2.cxx
index 11c350d..e84e78e 100644
--- a/sw/source/ui/app/docsh2.cxx
+++ b/sw/source/ui/app/docsh2.cxx
@@ -60,6 +60,7 @@
 #include <editeng/svxacorr.hxx>
 #include <editeng/langitem.hxx>
 #include <svx/fmshell.hxx>
+#include <sfx2/linkmgr.hxx>
 
 #include <svtools/htmlcfg.hxx>
 #include <svx/ofaitem.hxx>
@@ -1471,6 +1472,12 @@ long SwDocShell::DdeSetData( const String& rItem, const String& rMimeType,
     return pDoc->CreateLinkSource( rItem );
 }
 
+void SwDocShell::ReconnectDdeLink(SfxObjectShell& rServer)
+{
+    ::sfx2::LinkManager& rLinkManager = pDoc->GetLinkManager();
+    rLinkManager.ReconnectDdeLink(rServer);
+}
+
 /*--------------------------------------------------------------------
     Beschreibung:
  --------------------------------------------------------------------*/


More information about the ooo-build-commit mailing list