Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


Hi,

I have submitted a patch for review:

    https://gerrit.libreoffice.org/2572

To pull it, you can do:

    git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/72/2572/1

Bug 34800 Comments added to footer are placed at the right top of the page.

The problem is that the nodes in the footnote are stored before
nodes of the document body in the internal structure.
Therefore I wrote this patch to check if the compared
comments are in the footnote (one, both or both not).

Special thanks to Cédric Bosdonnat

Change-Id: Ibcd0373110fde848dccf93ffe9100459c7cc64a5
---
M sw/source/ui/docvw/PostItMgr.cxx
1 file changed, 19 insertions(+), 1 deletion(-)



diff --git a/sw/source/ui/docvw/PostItMgr.cxx b/sw/source/ui/docvw/PostItMgr.cxx
index cd94ba0..5465ecf 100644
--- a/sw/source/ui/docvw/PostItMgr.cxx
+++ b/sw/source/ui/docvw/PostItMgr.cxx
@@ -90,7 +90,25 @@
 bool comp_pos(const SwSidebarItem* a, const SwSidebarItem* b)
 {
     // sort by anchor position
-    return a->GetAnchorPosition() < b->GetAnchorPosition();
+    SwPosition aPosAnchorA = a->GetAnchorPosition();
+    SwPosition aPosAnchorB = b->GetAnchorPosition();
+
+    bool aAnchorAInFooter = aPosAnchorA.nNode.GetNode().FindFootnoteStartNode() != NULL;
+    bool aAnchorBInFooter = aPosAnchorB.nNode.GetNode().FindFootnoteStartNode() != NULL;
+
+    // fdo#34800
+    // if AnchorA is in footnote, and AnchorB isn't
+    // we do not want to change over the position
+    if( aAnchorAInFooter && !aAnchorBInFooter )
+        return NULL;
+    // if AnchorA is not placed in a footnote, and AnchorB is
+    // force a change over
+    else if( !aAnchorAInFooter && aAnchorBInFooter )
+        return 1;
+    // if none of both, or both are in the footer
+    // arrange them depending on the position
+    else
+        return aPosAnchorA < aPosAnchorB;
 }
 
 SwPostItMgr::SwPostItMgr(SwView* pView)

-- 
To view, visit https://gerrit.libreoffice.org/2572
To unsubscribe, visit https://gerrit.libreoffice.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ibcd0373110fde848dccf93ffe9100459c7cc64a5
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: master
Gerrit-Owner: Joren De Cuyper <joren.libreoffice@telenet.be>


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.