sw/qa/extras/layout/data/tdf152142-donotmirror.fodt |  168 ++++++++++++++++++++
 sw/qa/extras/layout/layout3.cxx                     |   31 +++
 sw/source/core/doc/textboxhelper.cxx                |   16 +
 3 files changed, 213 insertions(+), 2 deletions(-)

New commits:
commit 3567e809efed0dcc444ac4dae6ee1fe415360c30
Author:     Jonathan Clark <jonat...@libreoffice.org>
AuthorDate: Fri Sep 6 02:15:44 2024 -0600
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Fri Sep 20 16:20:19 2024 +0200

    tdf#152142 sw: fix RTL as-char textbox compat flag special case
    
    Fixes an issue causing incorrect textbox positions when the containing
    shape is anchored 'as character' inside RTL text, with the
    DoNotMirrorRtlDrawObjs compatibility flag set.
    
    Change-Id: I58cade8b91925dda188a1ef8fd078ccfdc3fea56
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172938
    Tested-by: Jenkins
    Reviewed-by: Jonathan Clark <jonat...@libreoffice.org>
    Signed-off-by: Xisco Fauli <xiscofa...@libreoffice.org>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173704

diff --git a/sw/qa/extras/layout/data/tdf152142-donotmirror.fodt 
b/sw/qa/extras/layout/data/tdf152142-donotmirror.fodt
new file mode 100644
index 000000000000..f29dc521041f
--- /dev/null
+++ b/sw/qa/extras/layout/data/tdf152142-donotmirror.fodt
@@ -0,0 +1,168 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<office:document xmlns:css3t="http://www.w3.org/TR/css3-text/"; 
xmlns:grddl="http://www.w3.org/2003/g/data-view#"; 
xmlns:xhtml="http://www.w3.org/1999/xhtml"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
xmlns:xforms="http://www.w3.org/2002/xforms"; 
xmlns:dom="http://www.w3.org/2001/xml-events"; 
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" 
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" 
xmlns:math="http://www.w3.org/1998/Math/MathML"; 
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" 
xmlns:ooo="http://openoffice.org/2004/office"; 
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" 
xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" 
xmlns:ooow="http://openoffice.org/2004/writer"; 
xmlns:xlink="http://www.w3.org/1999/xlink"; 
xmlns:drawooo="http://openoffice.org/2010/draw"; 
xmlns:oooc="http://openoffice.org/2004/calc"; 
xmlns:dc="http://purl.org/dc/elements/1.1/"; xmlns:c
 alcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" 
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" 
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" 
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" 
xmlns:tableooo="http://openoffice.org/2009/table"; 
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" 
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" 
xmlns:rpt="http://openoffice.org/2005/report"; 
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
 xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" 
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" 
xmlns:officeooo="http://openoffice.org/2009/office"; 
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" 
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" 
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" 
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:
 meta:1.0" 
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
 office:version="1.3" office:mimetype="application/vnd.oasis.opendocument.text">
+ 
<office:meta><meta:creation-date>2022-11-20T16:16:12.994464884</meta:creation-date><dc:date>2024-08-28T05:35:29.701530545</dc:date><meta:editing-duration>PT2M38S</meta:editing-duration><meta:editing-cycles>4</meta:editing-cycles><meta:generator>LibreOfficeDev/25.2.0.0.alpha0$Linux_X86_64
 
LibreOffice_project/07bd24243c490bc3012a0897b930ee18f6164be3</meta:generator><meta:document-statistic
 meta:table-count="0" meta:image-count="0" meta:object-count="0" 
meta:page-count="1" meta:paragraph-count="2" meta:word-count="2" 
meta:character-count="6" meta:non-whitespace-character-count="6"/></office:meta>
+ <office:settings>
+  <config:config-item-set config:name="ooo:configuration-settings">
+   <config:config-item config:name="DoNotMirrorRtlDrawObjs" 
config:type="boolean">true</config:config-item>
+  </config:config-item-set>
+ </office:settings>
+ <office:font-face-decls>
+  <style:font-face style:name="B Nazanin" svg:font-family="'B Nazanin'"/>
+  <style:font-face style:name="B Zar" svg:font-family="'B Zar'"/>
+  <style:font-face style:name="Calibri1" svg:font-family="Calibri" 
style:font-family-generic="swiss"/>
+  <style:font-face style:name="Noto Sans" svg:font-family="'Noto Sans'" 
style:font-family-generic="swiss" style:font-pitch="variable"/>
+  <style:font-face style:name="Noto Sans Arabic" svg:font-family="'Noto Sans 
Arabic'" style:font-family-generic="swiss" style:font-pitch="variable"/>
+  <style:font-face style:name="Tahoma" svg:font-family="Tahoma" 
style:font-family-generic="system" style:font-pitch="variable"/>
+  </office:font-face-decls>
+ <office:styles>
+  <style:default-style style:family="graphic">
+   <style:graphic-properties svg:stroke-color="#3465a4" 
draw:fill-color="#729fcf" fo:wrap-option="no-wrap" 
draw:shadow-offset-x="0.1181in" draw:shadow-offset-y="0.1181in" 
draw:start-line-spacing-horizontal="0.1114in" 
draw:start-line-spacing-vertical="0.1114in" 
draw:end-line-spacing-horizontal="0.1114in" 
draw:end-line-spacing-vertical="0.1114in" style:writing-mode="lr-tb" 
style:flow-with-text="false"/>
+   <style:paragraph-properties style:text-autospace="ideograph-alpha" 
style:line-break="strict" loext:tab-stop-distance="0in" 
style:writing-mode="lr-tb" style:font-independent-line-spacing="false">
+    <style:tab-stops/>
+   </style:paragraph-properties>
+   <style:text-properties style:use-window-font-color="true" 
loext:opacity="0%" style:font-name="Calibri1" fo:font-size="12pt" 
fo:language="en" fo:country="US" style:letter-kerning="true" 
style:font-name-asian="Calibri1" style:font-size-asian="10.5pt" 
style:language-asian="zh" style:country-asian="CN" 
style:font-name-complex="Tahoma" style:font-size-complex="12pt" 
style:language-complex="hi" style:country-complex="IN"/>
+  </style:default-style>
+  <style:default-style style:family="paragraph">
+   <style:paragraph-properties fo:orphans="2" fo:widows="2" 
fo:hyphenation-ladder-count="no-limit" fo:hyphenation-keep="auto" 
loext:hyphenation-keep-type="column" style:text-autospace="ideograph-alpha" 
style:punctuation-wrap="hanging" style:line-break="strict" 
style:tab-stop-distance="0.4925in" style:writing-mode="page"/>
+   <style:text-properties style:use-window-font-color="true" 
loext:opacity="0%" style:font-name="Calibri1" fo:font-size="12pt" 
fo:language="en" fo:country="US" style:letter-kerning="true" 
style:font-name-asian="Calibri1" style:font-size-asian="10.5pt" 
style:language-asian="zh" style:country-asian="CN" 
style:font-name-complex="Tahoma" style:font-size-complex="12pt" 
style:language-complex="hi" style:country-complex="IN" fo:hyphenate="false" 
fo:hyphenation-remain-char-count="2" fo:hyphenation-push-char-count="2" 
loext:hyphenation-no-caps="false" loext:hyphenation-no-last-word="false" 
loext:hyphenation-word-char-count="5" loext:hyphenation-zone="no-limit"/>
+  </style:default-style>
+  <style:default-style style:family="table">
+   <style:table-properties table:border-model="collapsing"/>
+  </style:default-style>
+  <style:default-style style:family="table-row">
+   <style:table-row-properties fo:keep-together="auto"/>
+  </style:default-style>
+  <style:style style:name="Standard" style:family="paragraph" 
style:class="text"/>
+  <style:style style:name="Frame_20_contents" style:display-name="Frame 
contents" style:family="paragraph" style:parent-style-name="Standard" 
style:class="extra"/>
+  <style:style style:name="Frame" style:family="graphic">
+   <style:graphic-properties text:anchor-type="paragraph" svg:x="0in" 
svg:y="0in" fo:margin-left="0.0791in" fo:margin-right="0.0791in" 
fo:margin-top="0.0791in" fo:margin-bottom="0.0791in" style:wrap="parallel" 
style:number-wrapped-paragraphs="no-limit" style:wrap-contour="false" 
style:vertical-pos="top" style:vertical-rel="paragraph-content" 
style:horizontal-pos="center" style:horizontal-rel="paragraph-content" 
fo:background-color="transparent" draw:fill="none" draw:fill-color="#729fcf" 
fo:padding="0.0591in" fo:border="0.06pt solid #000000"/>
+  </style:style>
+  <text:outline-style style:name="Outline">
+   <text:outline-level-style text:level="1" loext:num-list-format="%1%" 
style:num-format="">
+    <style:list-level-properties 
text:list-level-position-and-space-mode="label-alignment">
+     <style:list-level-label-alignment text:label-followed-by="listtab"/>
+    </style:list-level-properties>
+   </text:outline-level-style>
+   <text:outline-level-style text:level="2" loext:num-list-format="%2%" 
style:num-format="">
+    <style:list-level-properties 
text:list-level-position-and-space-mode="label-alignment">
+     <style:list-level-label-alignment text:label-followed-by="listtab"/>
+    </style:list-level-properties>
+   </text:outline-level-style>
+   <text:outline-level-style text:level="3" loext:num-list-format="%3%" 
style:num-format="">
+    <style:list-level-properties 
text:list-level-position-and-space-mode="label-alignment">
+     <style:list-level-label-alignment text:label-followed-by="listtab"/>
+    </style:list-level-properties>
+   </text:outline-level-style>
+   <text:outline-level-style text:level="4" loext:num-list-format="%4%" 
style:num-format="">
+    <style:list-level-properties 
text:list-level-position-and-space-mode="label-alignment">
+     <style:list-level-label-alignment text:label-followed-by="listtab"/>
+    </style:list-level-properties>
+   </text:outline-level-style>
+   <text:outline-level-style text:level="5" loext:num-list-format="%5%" 
style:num-format="">
+    <style:list-level-properties 
text:list-level-position-and-space-mode="label-alignment">
+     <style:list-level-label-alignment text:label-followed-by="listtab"/>
+    </style:list-level-properties>
+   </text:outline-level-style>
+   <text:outline-level-style text:level="6" loext:num-list-format="%6%" 
style:num-format="">
+    <style:list-level-properties 
text:list-level-position-and-space-mode="label-alignment">
+     <style:list-level-label-alignment text:label-followed-by="listtab"/>
+    </style:list-level-properties>
+   </text:outline-level-style>
+   <text:outline-level-style text:level="7" loext:num-list-format="%7%" 
style:num-format="">
+    <style:list-level-properties 
text:list-level-position-and-space-mode="label-alignment">
+     <style:list-level-label-alignment text:label-followed-by="listtab"/>
+    </style:list-level-properties>
+   </text:outline-level-style>
+   <text:outline-level-style text:level="8" loext:num-list-format="%8%" 
style:num-format="">
+    <style:list-level-properties 
text:list-level-position-and-space-mode="label-alignment">
+     <style:list-level-label-alignment text:label-followed-by="listtab"/>
+    </style:list-level-properties>
+   </text:outline-level-style>
+   <text:outline-level-style text:level="9" loext:num-list-format="%9%" 
style:num-format="">
+    <style:list-level-properties 
text:list-level-position-and-space-mode="label-alignment">
+     <style:list-level-label-alignment text:label-followed-by="listtab"/>
+    </style:list-level-properties>
+   </text:outline-level-style>
+   <text:outline-level-style text:level="10" loext:num-list-format="%10%" 
style:num-format="">
+    <style:list-level-properties 
text:list-level-position-and-space-mode="label-alignment">
+     <style:list-level-label-alignment text:label-followed-by="listtab"/>
+    </style:list-level-properties>
+   </text:outline-level-style>
+  </text:outline-style>
+  <text:notes-configuration text:note-class="footnote" style:num-format="1" 
text:start-value="0" text:footnotes-position="page" 
text:start-numbering-at="document"/>
+  <text:notes-configuration text:note-class="endnote" style:num-format="i" 
text:start-value="0"/>
+  <text:linenumbering-configuration text:number-lines="false" 
text:offset="0.1965in" style:num-format="1" text:number-position="left" 
text:increment="5"/>
+  </office:styles>
+ <office:automatic-styles>
+  <style:style style:name="P1" style:family="paragraph" 
style:parent-style-name="Standard">
+   <style:paragraph-properties fo:text-align="center" 
style:justify-single-word="false" style:writing-mode="rl-tb"/>
+   <style:text-properties style:font-name="Noto Sans" fo:font-size="12pt" 
style:font-size-asian="12pt" style:font-name-complex="B Zar" 
style:font-size-complex="12pt" style:language-complex="fa" 
style:country-complex="IR"/>
+  </style:style>
+  <style:style style:name="P2" style:family="paragraph" 
style:parent-style-name="Standard">
+   <style:paragraph-properties fo:text-align="end" 
style:justify-single-word="false" style:writing-mode="rl-tb"/>
+   <style:text-properties style:font-name="Noto Sans"/>
+  </style:style>
+  <style:style style:name="P3" style:family="paragraph" 
style:parent-style-name="Frame_20_contents">
+   <style:paragraph-properties fo:text-align="end" 
style:justify-single-word="false" style:writing-mode="rl-tb"/>
+   <style:text-properties style:font-name="Noto Sans"/>
+  </style:style>
+  <style:style style:name="P4" style:family="paragraph">
+   <loext:graphic-properties draw:fill="solid" draw:fill-color="#ffffff"/>
+   <style:paragraph-properties fo:text-align="start"/>
+   <style:text-properties fo:font-size="18pt"/>
+  </style:style>
+  <style:style style:name="P5" style:family="paragraph" 
style:parent-style-name="Standard">
+   <style:paragraph-properties fo:text-align="end" 
style:justify-single-word="false" style:writing-mode="rl-tb"/>
+   <style:text-properties style:font-name="Noto Sans" 
style:font-name-complex="B Zar" style:language-complex="fa" 
style:country-complex="IR"/>
+  </style:style>
+  <style:style style:name="P6" style:family="paragraph" 
style:parent-style-name="Standard">
+   <style:paragraph-properties fo:text-align="end" 
style:justify-single-word="false" style:writing-mode="rl-tb"/>
+   <style:text-properties style:font-name="Noto Sans" fo:font-weight="bold" 
style:font-weight-asian="bold" style:font-name-complex="B Nazanin" 
style:language-complex="fa" style:country-complex="IR" 
style:font-weight-complex="bold"/>
+  </style:style>
+  <style:style style:name="T1" style:family="text">
+   <style:text-properties fo:font-size="80pt" style:font-size-asian="80pt" 
style:font-size-complex="80pt"/>
+  </style:style>
+  <style:style style:name="T2" style:family="text">
+   <style:text-properties fo:font-size="80pt" fo:font-weight="normal" 
style:font-size-asian="80pt" style:font-weight-asian="normal" 
style:font-name-complex="Noto Sans Arabic" style:font-size-complex="80pt" 
style:font-weight-complex="normal"/>
+  </style:style>
+  <style:style style:name="gr1" style:family="graphic" 
style:parent-style-name="Frame">
+   <style:graphic-properties draw:stroke="solid" svg:stroke-width="0.0102in" 
svg:stroke-color="#000000" draw:stroke-linejoin="miter" draw:fill="solid" 
draw:fill-color="#ffffff" draw:textarea-vertical-align="top" 
draw:auto-grow-height="false" fo:min-height="3.9728in" fo:min-width="3.548in" 
fo:padding-top="0.05in" fo:padding-bottom="0.05in" fo:padding-left="0.1in" 
fo:padding-right="0.1in" fo:wrap-option="wrap" loext:decorative="false" 
fo:margin-left="0in" fo:margin-right="0.0217in" fo:margin-top="0in" 
fo:margin-bottom="0.0118in" style:run-through="foreground" 
style:vertical-pos="top" style:vertical-rel="baseline" 
style:horizontal-pos="from-left" style:horizontal-rel="paragraph" 
draw:wrap-influence-on-position="once-concurrent" loext:allow-overlap="true" 
style:flow-with-text="false"/>
+  </style:style>
+  <style:page-layout style:name="pm1">
+   <style:page-layout-properties fo:page-width="8.5in" fo:page-height="11in" 
style:num-format="1" style:print-orientation="portrait" 
fo:margin-top="0.7874in" fo:margin-bottom="0.7874in" fo:margin-left="0.7874in" 
fo:margin-right="0.7874in" style:writing-mode="lr-tb" 
style:layout-grid-color="#c0c0c0" style:layout-grid-lines="20" 
style:layout-grid-base-height="0.278in" style:layout-grid-ruby-height="0.139in" 
style:layout-grid-mode="none" style:layout-grid-ruby-below="false" 
style:layout-grid-print="false" style:layout-grid-display="false" 
style:footnote-max-height="0in" loext:margin-gutter="0in">
+    <style:footnote-sep style:width="0.0071in" 
style:distance-before-sep="0.0398in" style:distance-after-sep="0.0398in" 
style:line-style="solid" style:adjustment="left" style:rel-width="25%" 
style:color="#000000"/>
+   </style:page-layout-properties>
+   <style:header-style/>
+   <style:footer-style/>
+  </style:page-layout>
+  <style:style style:name="dp1" style:family="drawing-page">
+   <style:drawing-page-properties draw:background-size="full"/>
+  </style:style>
+ </office:automatic-styles>
+ <office:master-styles>
+  <style:master-page style:name="Standard" style:page-layout-name="pm1" 
draw:style-name="dp1"/>
+ </office:master-styles>
+ <office:body>
+  <office:text>
+   <text:sequence-decls>
+    <text:sequence-decl text:display-outline-level="0" 
text:name="Illustration"/>
+    <text:sequence-decl text:display-outline-level="0" text:name="Table"/>
+    <text:sequence-decl text:display-outline-level="0" text:name="Text"/>
+    <text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
+    <text:sequence-decl text:display-outline-level="0" text:name="Figure"/>
+   </text:sequence-decls>
+   <text:p text:style-name="P1"/>
+   <text:p text:style-name="P2"><text:span 
text:style-name="T1">BBB</text:span><draw:custom-shape 
text:anchor-type="as-char" draw:z-index="0" draw:name="Shape1" 
draw:style-name="gr1" draw:text-style-name="P4" svg:width="3.7476in" 
svg:height="4.0724in">
+     <text:p text:style-name="P3"><text:span 
text:style-name="T2">AAA</text:span></text:p>
+     <draw:enhanced-geometry draw:mirror-horizontal="false" 
draw:mirror-vertical="false" svg:viewBox="0 0 0 0" draw:text-areas="0 0 ?f3 
?f2" draw:type="ooxml-rect" draw:enhanced-path="M 0 0 L ?f3 0 ?f3 ?f2 0 ?f2 Z 
N">
+      <draw:equation draw:name="f0" draw:formula="logwidth/2"/>
+      <draw:equation draw:name="f1" draw:formula="logheight/2"/>
+      <draw:equation draw:name="f2" draw:formula="logheight"/>
+      <draw:equation draw:name="f3" draw:formula="logwidth"/>
+     </draw:enhanced-geometry>
+    </draw:custom-shape></text:p>
+   <text:p text:style-name="P5"/>
+   <text:p text:style-name="P6"/>
+  </office:text>
+ </office:body>
+</office:document>
diff --git a/sw/qa/extras/layout/layout3.cxx b/sw/qa/extras/layout/layout3.cxx
index 2c512a5e2938..45d5b91cfbe0 100644
--- a/sw/qa/extras/layout/layout3.cxx
+++ b/sw/qa/extras/layout/layout3.cxx
@@ -3465,6 +3465,37 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf152142)
     CPPUNIT_ASSERT_LESS(nShapeEnd, nTextBoxEnd);
 }
 
+CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf152142DoNotMirrorRtlDrawObjs)
+{
+    // Regression test for textbox positioning when anchored as-char in RTL 
context, with the
+    // DoNotMirrorRtlDrawObjs compatibility flag set.
+    createSwDoc("tdf152142-donotmirror.fodt");
+    auto pXmlDoc = parseLayoutDump();
+
+    assertXPath(pXmlDoc, "//page"_ostr, 1);
+
+    SwTwips nTextBoxBegin
+        = getXPath(pXmlDoc, 
"/root/page/body/txt[2]/anchored/fly/txt/infos/bounds"_ostr,
+                   "left"_ostr)
+              .toInt32();
+    SwTwips nTextBoxEnd
+        = getXPath(pXmlDoc, 
"/root/page/body/txt[2]/anchored/fly/txt/infos/bounds"_ostr,
+                   "right"_ostr)
+              .toInt32();
+
+    SwTwips nShapeBegin
+        = getXPath(pXmlDoc, 
"/root/page/body/txt[2]/anchored/SwAnchoredDrawObject/bounds"_ostr,
+                   "left"_ostr)
+              .toInt32();
+    SwTwips nShapeEnd
+        = getXPath(pXmlDoc, 
"/root/page/body/txt[2]/anchored/SwAnchoredDrawObject/bounds"_ostr,
+                   "right"_ostr)
+              .toInt32();
+
+    CPPUNIT_ASSERT_GREATER(nShapeBegin, nTextBoxBegin);
+    CPPUNIT_ASSERT_LESS(nShapeEnd, nTextBoxEnd);
+}
+
 } // end of anonymous namespace
 
 CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/sw/source/core/doc/textboxhelper.cxx 
b/sw/source/core/doc/textboxhelper.cxx
index ea41fda9d1e8..184466498e24 100644
--- a/sw/source/core/doc/textboxhelper.cxx
+++ b/sw/source/core/doc/textboxhelper.cxx
@@ -16,6 +16,7 @@
 #include <fmtfsize.hxx>
 #include <doc.hxx>
 #include <IDocumentLayoutAccess.hxx>
+#include <IDocumentSettingAccess.hxx>
 #include <IDocumentState.hxx>
 #include <docsh.hxx>
 #include <unocoll.hxx>
@@ -1371,8 +1372,19 @@ bool 
SwTextBoxHelper::doTextBoxPositioning(SwFrameFormat* pShape, SdrObject* pOb
             if (pShape->GetLayoutDir() == SwFrameFormat::HORI_R2L)
             {
                 auto nRightSpace = pShape->GetLRSpace().GetRight();
-                aNewHOri.SetPos(aRect.Right() + nRightSpace
-                                + (bIsGroupObj ? pObj->GetRelativePos().getX() 
: 0));
+
+                const bool bMSOLayout = 
pFormat->getIDocumentSettingAccess().get(
+                    DocumentSettingId::DO_NOT_MIRROR_RTL_DRAW_OBJS);
+                if (bMSOLayout)
+                {
+                    aNewHOri.SetPos(-aRect.Right() + nRightSpace
+                                    + (bIsGroupObj ? 
pObj->GetRelativePos().getX() : 0));
+                }
+                else
+                {
+                    aNewHOri.SetPos(aRect.Right() + nRightSpace
+                                    + (bIsGroupObj ? 
pObj->GetRelativePos().getX() : 0));
+                }
             }
             else
             {

Reply via email to