Commit Graph
5433 Commits
Author SHA1 Message Date
Justin Luth 3138abfb05 tdf#112886 ooxmlimport: skip useless footnote placeholder
Inserting the 0x02 placeholder as the first entry in the line
interferes with the aesthetic tab code. lcl_text
has code to ignore that placeholder, but lcl_utext
doesn't. Ignoring at lcl_utext has the same affect as
not processing it at all. Only .docx adds 0x02, so
it should be fairly safe to avoid the 0x02 completely.

Nothing was detected missing by skipping the placeholder.
All of the code was inherited from OOo.

Change-Id: Ie8840e5946fec89f270fef5523c88ee5051ca8ef
Reviewed-on: https://gerrit.libreoffice.org/51912
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Justin Luth <justin_luth@sil.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-03-29 14:39:48 +02:00
Miklos Vajna 2c4d84e939 tdf#116410 DOCX import: restrict increased object spacing to multiple shapes
This anchored object handling is just there to be bug-compatible with
Word, it's not needed for the case when there is a single shape in the
paragraph.

Change-Id: I5e3dc4ba9a4a6f459ec6217e8974ebc2d7303bcc
Reviewed-on: https://gerrit.libreoffice.org/51922
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2018-03-27 09:17:38 +02:00
Miklos Vajna 679a3b9314 msfilter: extract copy&pasted RTF code from sw and writerfilter
Both the hexdump and the OLE1 reader can be shared.

Change-Id: I97d72a8deeb9c79fc8e8c4a73c613213badfa744
Reviewed-on: https://gerrit.libreoffice.org/51783
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2018-03-23 15:46:25 +01:00
Justin Luth d47c84a5fd comment: Word does not use tabs in footnote implementation
Tabs are inserted when LO exports to MS formats in an attempt to
emulate its "magical" spacing which uses the paragraph margin.

By default, the Footnote paragraph style has a paragraph margin of
0.60cm. A hanging indent places the footnote character before the
margin, and thus a tab advances to the margin. So the emulation
works well.

The previous comment was misleading because it suggests that this
was a Microsoft convention, but actually this is an OOo innovation.

Change-Id: Ie8708998457bcb3363bbc760086cf2b41d3eb104
Reviewed-on: https://gerrit.libreoffice.org/51753
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Justin Luth <justin_luth@sil.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-03-23 08:53:38 +01:00
Miklos Vajna 0f0a80123d tdf#116269 RTF import: implement reverse deduplication for lists
This is the same mechanism that was added in commit
1be0a3fa9e (n#825305: writerfilter RTF
import: override style properties like Word, 2014-06-17), except that
here the reference is a list definition, not a paragraph style.

Also, this commit only implements the part that inserts explicit
defaults for not repeated properties, not the actual deduplication, as
that already works at a dmapper level.

(Saving the bugdoc as DOCX, it's visible in document.xml that DOCX marks
these defaults explicitly:

<w:ind w:left="0" w:right="-6" w:firstLine="0"/>

but RTF does not, so the right place to fix this is in the tokenizer.)

Change-Id: Iec88d9bf1032d1d89194bd272500d6780c3c2224
Reviewed-on: https://gerrit.libreoffice.org/51589
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-03-20 09:06:18 +01:00
Caolán McNamara 6b8362acf9 coverity#1430069 silence Uninitialized scalar field
Change-Id: I54b2140d965fc9c7dddfdcbddd9602ede800c3f7
Reviewed-on: https://gerrit.libreoffice.org/51566
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-03-19 22:14:26 +01:00
Mike Kaganski 9078fbd14b tdf#116472: import "auto" border color as black
Since commit fe6da2feb5, "auto" color is
supported in OOXML import.

Since ODF doesn't support "auto" color as border color, just convert
"auto" border color to black on import, like is done in GetLineIndex
in ww8par6.cxx.

Incidentally, this also fixes a problem in RTF import, where we used to
import black borders ("\red0\green0\blue0;" entries in color table) as
0x000001 ("\red0\green0\blue1;") - see fixed tests in rtfexport2.cxx.

Change-Id: I4f5e720d215b51c8a43dc7c58f338741bd608efc
Reviewed-on: https://gerrit.libreoffice.org/51519
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-03-19 16:42:10 +01:00
Serge Krot be02ce71f2 tdf#113182: DOCX filter: new values of wrap property in text box
Added support of "none" and "through" values of the w:wrap
poroperty in the text box.

Change-Id: I83f0c9e8162e93bf457f228d49d3b426050d4dc6
Reviewed-on: https://gerrit.libreoffice.org/51396
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2018-03-16 15:40:45 +01:00
Mike Kaganski 8805e10f58 tdf#112118: DOC: properly import/export border distance
DOCX part was done in fb959e581c.

This commit fixes DOC part. Line width wasn't taken into account on
import; and export was done only with "from text" distance, which
gave poor interoperability with Word, where the borders were close
to page edge.

The common code is moved to editeng/source/items/frmitems.cxx and
include/editeng/boxitem.hxx.

Change-Id: I3d1d1312cb9dc9a9e00d9847ec11234cd787df60
Reviewed-on: https://gerrit.libreoffice.org/51366
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-03-16 04:54:47 +01:00
Andrea Gelmini 4defe28e5f Fix typos
Change-Id: Icb2d5f8bb9eb781d6a59384e1aac75abf6145774
Reviewed-on: https://gerrit.libreoffice.org/51337
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins <ci@libreoffice.org>
2018-03-15 20:09:53 +01:00
Mike Kaganski fb959e581c tdf#112118: DOCX: properly import/export border distance
https://wiki.openoffice.org/wiki/Writer/MSInteroperability/PageBorder
discusses implementation differences between ODF model and MS formats
wrt dealing with page margins and distances to borders.

This patch corrects import from DOCX, so that the border distance and
width doesn't add to the margin size imported from file anymore. It
takes care to preserve size from page edge to text (the most important
size that affects document layout). When borders go outside of range
valid for ODF, the margin is set to keep text area intact, and the
border is placed as close to intended position as possible.

Export code now also properly handles border width. Also, an improved
heuristic implemented to better export cases unsupported by Word, so
that the result would look closer to ODF original. We still write
correct sizes to OOXML, so that when reopened by LO, the borders will
be in correct places; but as Word cannot handle sizes more than 31 pt,
it will show borders shifted.

This prevents from adding border widths and distances to page margins
at each opening of DOCX, saving back the changed value, increasing
the margins each time.

Change-Id: Ia978ab119dd661949d6c321aea91397f28d205b0
Reviewed-on: https://gerrit.libreoffice.org/51267
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-03-14 15:32:54 +01:00
Miklos Vajna 80f9383f1a boost::intrusive_ptr->tools::SvRef
To avoid semi-manual refcount handling.

Change-Id: I4a0bcd00ef2811a76f85313d2f821daa1731898c
Reviewed-on: https://gerrit.libreoffice.org/51242
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-03-14 08:58:36 +01:00
Luke Deller fe6da2feb5 tdf#116179 Support reading "auto" colour from docx
In docx a colour value is represented as a 6-digit hex RGB value, or
alternatively the word "auto" to represent automatic colour.

 - Add support for reading the value "auto" as COL_AUTO.  Previously
   this would be read as if it were a hex value, stopping at the
   letter 'u' which is not a valid hex digit, resulting in the colour
   0x00000A - a very dark blue, which looks close enough to black that
   it went unnoticed for a long time :-)

 - Remove code which tried to handle this wrong 0x00000A value,
   including the constant OOXML_COLOR_AUTO, as it is no longer needed
   and will cause surprises for anyone who really wanted this exact
   shade of dark blue

 - Fix unit tests that were checking for 0x00000A

Change-Id: I6000070341931147ff9341ad6281cd3b53c02b46
Reviewed-on: https://gerrit.libreoffice.org/50995
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-03-13 14:06:13 +01:00
Mike Kaganski 6d20aeeda8 If handler sets contexts properties, it should do it properly
Change-Id: I0b58ab924214e1cbbc89af94c037e29d14d45856
Reviewed-on: https://gerrit.libreoffice.org/51195
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-03-13 10:33:06 +01:00
Caolán McNamara aeb925a031 forcepoint #21 pop on empty stack
Thanks to Antti Levomäki and Christian Jalio from Forcepoint.

Change-Id: I25b1c6361fb0a3ae6b01f2be870c9e1b49bf5b84
Reviewed-on: https://gerrit.libreoffice.org/51114
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-03-12 22:07:05 +01:00
Caolán McNamara 57a1d2ce7d forcepoint #24 back() on empty vector
Thanks to Antti Levomäki and Christian Jalio from Forcepoint.

Change-Id: Idb6723b53a1ae8aaca80847bfe643bc4abaedd21
Reviewed-on: https://gerrit.libreoffice.org/51121
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-03-12 22:06:11 +01:00
Caolán McNamara 4c04156195 forcepoint #23 Null dereference
Thanks to Antti Levomäki and Christian Jalio from Forcepoint.

Change-Id: I2e68a6c3fe1846fbfaaa0305c02da135a930d863
Reviewed-on: https://gerrit.libreoffice.org/51120
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-03-12 15:03:45 +01:00
Caolán McNamara 87ea09563d forcepoint #22 pop on empty stack
Thanks to Antti Levomäki and Christian Jalio from Forcepoint.

Change-Id: I964c79af0087075df0142cd251fd304a68bc497b
Reviewed-on: https://gerrit.libreoffice.org/51119
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-03-12 15:03:32 +01:00
Tomaž Vajngerl 7fbb96c2fb Move (and rename) graphic stuff from svtools to vcl
This is preparing to change how GraphicManager works where it
won't base itself around GraphicObject anymore but Graphic. No
functional or cosmetic change was made to the classes, only
changes that were needed because of the move and rename.

The only thing that wasn't moved is the GraphicRenderer as it
is not needed in vcl for now (but makes sense to move it in the
future to keep graphic stuff together).

grfmgr was renamed to GraphicObject as the GraphicManager will be
changed a lot and most likely moved out, so the name grfmgr won't
make any sense anymore.

All the UNO implementations were renamed with a prefix Uno and
used the same name as the class name. This is made to be more
specific which are the Uno objects (for example graphic.cxx
contained the implementation of XGraphic, which is similar to
graph.cxx contains Graphic).

Change-Id: I54a2fa6c7e997469aaa7770db05244adb9f64137
Reviewed-on: https://gerrit.libreoffice.org/51068
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2018-03-11 13:37:21 +01:00
Caolán McNamara a4617d76a5 forcepoint #21 pop on empty stack
Thanks to Antti Levomäki and Christian Jalio from Forcepoint.

Change-Id: I0aac834a60224b33e5d33d08abd7fb056ef9d52a
Reviewed-on: https://gerrit.libreoffice.org/50973
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-03-09 10:09:00 +01:00
Caolán McNamara c056813410 forcepoint #20 pop on empty stack
Thanks to Antti Levomäki and Christian Jalio from Forcepoint.

Change-Id: I3098c5d32d8f97dff4c620e054acde1ba1b6adf3
Reviewed-on: https://gerrit.libreoffice.org/50972
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-03-09 10:08:25 +01:00
Tomaž Vajngerl fb29e6eeea svx: removing GraphicURL and OWN_ATTR_GRAFURL, fix writerfilter
Change-Id: I5b84788a324cc68e3c4561e9a7376fcb1cfeeb67
Reviewed-on: https://gerrit.libreoffice.org/50933
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2018-03-09 04:19:38 +01:00
Tomaž Vajngerl 060b0fb4b9 change RTFDocumentImpl to use Graphic instead of GraphicURL
Change-Id: I4d2f7dd540651a54e4da3dedf315a61a4f8a75cc
Reviewed-on: https://gerrit.libreoffice.org/50924
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2018-03-08 12:57:19 +01:00
Tomaž Vajngerl d72145f930 Move BackGraphicURL property & friends to BackGraphic + fixes
This moves BackGraphicURL, HeaderGraphicURL, FooterGraphicURL and
ParaBackGraphicURL properties to BackGraphic, HeaderBackGraphic,
FooterBackGraphic and ParaBackGraphic. With this the property type
changes from String to XGraphic.

This change also fixes a bunch of test failures, changes the tests
to use the new properties and the correct type, changes the import
and export filters like xmloff and oox, to make the tests happy.

Change-Id: Ie66097514203c6dc36ab27420faf265322e9279e
Reviewed-on: https://gerrit.libreoffice.org/50760
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2018-03-07 02:37:36 +01:00
Miklos Vajna 49cf733eff tdf#115861 DOCX import: avoid last-paragraph removal when discarding footer
Discarding header/footer is necessary when the document or section
settings request to ignore first or even headers/footers. In the bugdoc
case settings.xml didn't opt-in for different even/odd footers, but
there was an even footer to be ignored.

Handle this state at two more places, so we don't end up in a situation
where we ignore the footer but not its "remove last (empty) paragraph at
the end of the footer" action.

Also make the debug dumper for text ranges more robust to have a working
token dump when we try to get the string for a table.

Change-Id: I6395f37aa40c42304e2c918d87dadecb21e9d378
Reviewed-on: https://gerrit.libreoffice.org/50786
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2018-03-06 09:07:07 +01:00
Caolán McNamara 09c311b0fb ofz#6720 Divide-by-zero
Change-Id: I81d89a41437456535949e1cd214ec4e514c26494
Reviewed-on: https://gerrit.libreoffice.org/50733
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-03-04 20:42:15 +01:00
Caolán McNamara 3d5a763194 forcepoint #12 top empty stack
Change-Id: I51f02be13b3cf69e9aaef644a6c4837f1c47ff62
Reviewed-on: https://gerrit.libreoffice.org/50602
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-03-02 09:50:27 +01:00
Noel Grandin 477d2ba662 delete colordata.hxx
move what we still need into color.hxx

Change-Id: Ied7e31eb16468aa334c666b1499a6262f16a6350
Reviewed-on: https://gerrit.libreoffice.org/50561
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-02 09:18:19 +01:00
Noel Grandin e2cb154195 convert COL_ constants to be of type Color
Change-Id: I0e25c8950ac26b851ff42f71e1471fcbe4770d48
Reviewed-on: https://gerrit.libreoffice.org/50373
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-28 07:34:27 +01:00
Miklos Vajna 59363e639b tdf#115715 RTF import: ignore zero para indents in styles without parents
The only reason the DOCX equivalent of the bugdoc was imported correctly
is that these default zero margins are simply missing from the DOCX
markup, suggesting Word ignores them. We now do the same, this way
the stripped down document's 3 paragraphs all have different margins as
expected.

(Also rework the testTdf112211_2 testcase to test the original problem
better: I verified that the layout is unchanged before/after this
patch.)

Change-Id: I88d56c27c19e070e983c3392f99bca96597cd56e
Reviewed-on: https://gerrit.libreoffice.org/50391
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2018-02-27 09:10:10 +01:00
Caolán McNamara 0169227035 forcepoint #10 pop empty stack
Change-Id: I96452a86187a6b03251614625445d1b18a5ee218
Reviewed-on: https://gerrit.libreoffice.org/50357
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-02-26 18:33:28 +01:00
Miklos Vajna 5e1a50cc43 tdf#115883 DOCX import: catch RuntimeException from SwXFrame
getPropertyValue("Surround") for a non-inserted frame can throw, but
hasPropertyValue("Surround") still returns true. So fix the regression
by just catching the exception, assuming that in that case no increased
spacing is needed.

Change-Id: I49a78ce8d41b4e1cc7d23721d5dc70f7550c94af
Reviewed-on: https://gerrit.libreoffice.org/50175
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-02-23 09:06:16 +01:00
Noel Grandin 7ca8a6c8b1 create uno::Any overrides for Color
And use less ColorData in writerfilter and xmloff.

part of removing ColorData.

Change-Id: Ia1c57bf837ae814e7642cf1c7de2eb7ada7a1500
Reviewed-on: https://gerrit.libreoffice.org/50028
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-20 12:55:47 +01:00
Miklos Vajna a16275a364 tdf#112694 DOCX import: handle <w:titlePg> when turning on follow style header
Commit 17e51f427b (DOCX import: first page
header should always set default headers as well, 2014-11-21) turned on
header/footer of follow page styles of first page styles when the first
page style had the header/footer turned on, but failed to consider if
<w:titlePg> is present or not. When it's not present, the first page
header/footer should be ignored.

An additional problem is that by the time
DomainMapper_Impl::PushPageHeaderFooter() is called, <w:titlePg> is not
parsed yet, so we can't act accordingly.

Fix the problem by moving the check to
SectionPropertyMap::PrepareHeaderFooterProperties(), which runs at the
end of the section properties, where all required info is available,
there we can just check for m_bTitlePage.

This allows reverting the two changes to existing testcases in
CppunitTest_sw_ooxmlexport6 from the original commit as a side-effect.

Change-Id: Ic628adab99a4b148fcfd66ca39d0cf81eb7dd9f1
Reviewed-on: https://gerrit.libreoffice.org/50014
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2018-02-20 08:11:57 +01:00
Miklos Vajna 8b73bafbc1 tdf#115719 DOCX import: increase paragraph spacing for anchored objects
... like Word 2013 does, when the version string indicates that the new
layout is wanted.

An alternative to this change would be to add a new sw layout
compatibility flag and handle this at a layout level (somewhere in
SwAnchoredObject::GetObjRectWithSpaces()). The downside of that approach
is that once a layout flag is added, it's not preferred to tweak its
behavior, while doing the same at import time is not a problem.

Also it's better to have a flag for something which has clear behavior
in some spec / implementer notes, which is not the case for this
problem. (I've mailed dochelp@microsoft, no answer so far.)

Change-Id: Ibad28d27e4bcbe1991a3be1c686064e18e9ffa4d
Reviewed-on: https://gerrit.libreoffice.org/49733
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2018-02-14 20:21:57 +01:00
Ashod Nakashian 97a73d2772 oox: cosmetic cleanup
Change-Id: Ifafd7338ddfec8b707b5ddf4acb39512faf186da
Reviewed-on: https://gerrit.libreoffice.org/49325
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2018-02-14 01:04:11 +01:00
Ashod Nakashian e26a95360e oox: move putPropertiesToDocumentGrabBag to XmlFilterBase
Change-Id: Ic3cbabc420c7856682b889528043563622997c14
Reviewed-on: https://gerrit.libreoffice.org/49235
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
2018-02-14 01:03:19 +01:00
Miklos Vajna f737c9386a tdf#113258 DOCX import: fix beforeAutospacing for shape first paragraph
Commit c761df1e42 (tdf#84678 DOCX import:
fix handling of textbox margins, 2016-10-25) uncovered a previously
harder to notice problem that single-paragraph shapes have an incorrect
upper paragraph margin for the first paragraph. Now that the shape
margins are correct this problematic paragraph margin causes crop of the
shape text.

Fix the problem by adapting the DOCX import to the WW8 import's
SwWW8ImplReader::AppendTextNode() (the "If this is the first paragraph
in the document" part), where it seems the first paragraph is not only
the literally first paragraph in the document, but also the first
paragraph of shapes as well.

Change-Id: I9d99b9cfabae2c9a7c33eefefb5a9f008669e93d
Reviewed-on: https://gerrit.libreoffice.org/49617
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2018-02-13 09:58:09 +01:00
Jochen Nitschke 4f759834d3 cppcheck useInitializationList
unique_ptr don't need explicit nullptr initialization, same
goes for VclPtr in ImpEditEngine.

Change-Id: Id8f3163c2719bee6ee2724cae98449d564be5535
Reviewed-on: https://gerrit.libreoffice.org/49559
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-12 08:03:12 +01:00
Mark Hung 275a60e17d writerfilter / ww8filter: enhancement to support new ruby position.
1. Allow ooxml / rtf import the ruby aligned on the right side
( rightVertical or jc=5 ) as css::text::RubyPosition::INTER_CHARACTER.

2. Allow rtf / ww8 export of css::text::RubyPosition::INTER_CHARACTER
as  jc=5.

Though rtf filter can save and load the new ruby position,
character format seems lost. The reset of the MSO formats have
other issues that they can't make roundtrip yet.

Change-Id: Idb77423842f43abc375a1282a52b0bc6f20049e4
Reviewed-on: https://gerrit.libreoffice.org/49177
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mark Hung <marklh9@gmail.com>
2018-02-10 10:16:31 +01:00
Caolán McNamara 469430a7d3 rtf: null-deref
Change-Id: I9c4510cb91e2572a3ab2b62497dc4dd9fd1119c8
Reviewed-on: https://gerrit.libreoffice.org/49319
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-02-07 10:25:03 +01:00
Mike Kaganski 76d6fcd05c tdf#114217: Consider relative width when importing floating table
Unit test included

Change-Id: I8e3338d7df431bd016caa4e06e684fbd189127c4
Reviewed-on: https://gerrit.libreoffice.org/49324
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-02-07 07:23:57 +01:00
Andrea Gelmini 703d81984d Fix typos
Change-Id: Ifb3aa4f79b9accc34b2010b762e596fadae9fd09
Reviewed-on: https://gerrit.libreoffice.org/49297
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2018-02-06 14:31:46 +01:00
Miklos Vajna 03cee02464 tdf#115242 RTF import: order numPr before other paragraph properties
So that paragraph properties inherited from numbering properties can be
properly overwritten with direct formatting, even when we have to take
style deduplication into account.

The OOXML tokenizer already did this,
writerfilter::dmapper::DomainMapper::sprmWithProps()'s
NS_ooxml::LN_CT_NumPr_numId depends on this, so adapt the RTF tokenizer
accordingly.

Change-Id: Iec6026d146f08a9d06266763d01ed626a2d1f3d1
Reviewed-on: https://gerrit.libreoffice.org/49247
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2018-02-06 10:53:37 +01:00
Miklos Vajna 949d7b670c RTF filter: handle horizontal flip of picture frames
Only shapes were handled previously.

Change-Id: Ie03947d7ae065729ef85addddb1ede32637622f2
Reviewed-on: https://gerrit.libreoffice.org/49178
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2018-02-03 16:53:07 +01:00
Julien Nabet d27ef675ec Replace some front/pop_front by for-range loops+clear
Change-Id: I8a9239667b0d80ee2fa6ebbc8a19ba4c0076c2fb
Reviewed-on: https://gerrit.libreoffice.org/49107
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2018-02-02 12:07:12 +01:00
Miklos Vajna a6f2199e98 DOCX import: don't try to set grab-gag props as UNO props
This fixes loads of warnings like this one:

warn:legacy.osl:22335:22335:writerfilter/source/dmapper/StyleSheetTable.cxx:1611: Exception in StyleSheetTable::getOrCreateCharStyle - Style::setPropertyValue

during import. They are harmless as we catch the exception, but they are
just noise. It seems the code that transforms grab-bag pseudo-props into
real props was added in commit 4c3ba3a413
(fdo#75757: Remove inheritance from std::map., 2014-07-26), which is
supposed to be a pure refactoring, so just remove this problematic
transformation.

Change-Id: Ibf45bfedc661f9e065405c47623516c4026148a4
Reviewed-on: https://gerrit.libreoffice.org/49105
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2018-02-02 09:04:02 +01:00
Serge Krot deaa16bd24 tdf#72942 Do not overwrite styles from the inserted doc
During inserting of the text from the external document
we should not change original default styles in
currently opened document.

Added unit test.

Change-Id: Ida754a0da5efaaa043464cd807c0b52cfb0d5670
Reviewed-on: https://gerrit.libreoffice.org/48826
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2018-01-31 01:30:39 +01:00
Miklos Vajna 7655001a65 tdf#115155 RTF import: fix left indent handling inside list definition
This used to work in the past only because the left indent was also
imported as a direct paragraph formatting, but that is not the case
since left margin of lists is deduplicated during import after commit
c9dee880d8 (tdf#104016 RTF import:
deduplicate before text indent from numbering, 2017-12-05).

Change-Id: I1c9be30700c51ef97fb274e8781d6008db3121d8
Reviewed-on: https://gerrit.libreoffice.org/48855
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-01-30 09:06:25 +01:00
Miklos Vajna 4bdbb5502f DOCX import: handle horizontal flip of bitmaps
Horizontal mirror on the UNO API level, mirror on the vertical axis
internally.

Change-Id: If142274a8f81a6875059a2651af6d8470870a36a
Reviewed-on: https://gerrit.libreoffice.org/48843
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2018-01-29 21:51:51 +01:00