[Libreoffice-commits] .: Branch 'libreoffice-3-6' - svtools/source sw/source

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Wed Aug 22 05:10:46 PDT 2012


 svtools/source/control/ctrlbox.cxx |    4 ++++
 sw/source/filter/html/htmltab.cxx  |    3 +--
 2 files changed, 5 insertions(+), 2 deletions(-)

New commits:
commit a7a6e3b72d23e7068238953670b6a0bf82ef1243
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Aug 22 00:19:42 2012 +0200

    fdo#51777: add a hack for 1 twip DOUBLE borders:
    
    Arguably such annoyingly thin double borders don't make much sense
    anyway, because they're essentially 2 hairlines with ~no space between,
    but unfortunately older LO versions are able to create them;
    since the refactoring in 2d045cdb69176b280812dda0b813371cf1ac72e2,
    which changed the BorderWidthImpl::Get* methods to return 0 due to
    rounding, they were ignored at least in the HTML import, which is a
    regression.
    So add a special purpose hack that essentially rounds up the first line
    to 1 but not the other lines so the visual result is a hairline single
    border.
    
    Change-Id: I20ac4675bcf67ea58a6931a40bff3605390e9c0d
    (cherry picked from commit 601bfe2ce3113719b2f8edaba2ccb6b630051a9a)
    Reviewed-on: https://gerrit.libreoffice.org/451
    Reviewed-by: Miklos Vajna <vmiklos at suse.cz>
    Tested-by: Miklos Vajna <vmiklos at suse.cz>

diff --git a/svtools/source/control/ctrlbox.cxx b/svtools/source/control/ctrlbox.cxx
index 5665858..4a44d03 100644
--- a/svtools/source/control/ctrlbox.cxx
+++ b/svtools/source/control/ctrlbox.cxx
@@ -327,6 +327,10 @@ long BorderWidthImpl::GetLine1( long nWidth ) const
         result = std::max<long>(0,
                     static_cast<long>((m_nRate1 * nWidth) + 0.5)
                         - (nConstant2 + nConstantD));
+        if (result == 0 && m_nRate1 > 0.0 && nWidth > 0)
+        {   // fdo#51777: hack to essentially treat 1 twip DOUBLE border
+            result = 1;  // as 1 twip SINGLE border
+        }
     }
     return result;
 }
diff --git a/sw/source/filter/html/htmltab.cxx b/sw/source/filter/html/htmltab.cxx
index bfde623..8a3edd9 100644
--- a/sw/source/filter/html/htmltab.cxx
+++ b/sw/source/filter/html/htmltab.cxx
@@ -2072,8 +2072,7 @@ void HTMLTable::SetBorders()
 sal_uInt16 HTMLTable::GetBorderWidth( const SvxBorderLine& rBLine,
                                   sal_Bool bWithDistance ) const
 {
-    sal_uInt16 nBorderWidth = rBLine.GetOutWidth() + rBLine.GetInWidth() +
-                    rBLine.GetDistance();
+    sal_uInt16 nBorderWidth = rBLine.GetWidth();
     if( bWithDistance )
     {
         if( nCellPadding )


More information about the Libreoffice-commits mailing list