Age | Commit message (Collapse) | Author | Files | Lines |
|
As it turns out, UI names of table styles are
leaking into documents, and changing those names
actually breaks the import of documents from
previous versions. The problem is that a table
style itself is saved using its programmatic name,
but is referenced by tables using its UI name. So
after changing the UI name, these no longer map.
It's still possible to manually reapply the style,
but if not doing this and just saving, the style
and its child cell styles will be silently lost.
Moreover, if the given document is of fodt type,
it's not even possible to save it (even not as
"save as" to odt).
Obviously, the issue isn't just with renaming.
The same happens also with documents created
with a different UI language (even English).
Fortunately, up to now English UI names were
identical to the programmatic ones. So the first
thing we can do is to accept both kinds of names
for table:template-name. This way, we solved the
problem for documents created in an English UI,
and in addition made them work in non-English UI
(unlike before). As for export, we want to always
writes programmatic names, so newly edited
documents will continue to work regardless of
future UI changes or UI language switching (and
also stay compatible with older versions).
For the fodt export failure, changed the order of
things in SwXTextTableStyle::replaceByName, as
setting a new box breaks SwXTextCellStyle::getName
in this specific case. Also changed cell styles
to be named using the parent style's programmatic
name, so new documents won't have this problem
when opened in older versions. This also fixed
part of the PythonTest_sw_python failure.
The remaining PythonTest_sw_python failure was
about the "TableTemplateName" UNO API property
of a table, which didn't work with programmatic
names. That's a real bug by itself, and was
fixed. Also an explicit test was added, to make
sure the API always returns the programmatic name.
Finally, an odf export test was added. It tests
files with both old-style UI names, and new-style
programmatic names. Styles should be correctly
imported, used by the table, and survive export.
Change-Id: I45dfda193813fea184dc42e5e75544ebc05d4a92
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87826
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
Tested-by: Maxim Monastirsky <momonasmon@gmail.com>
|
|
* Add checkbox to pagraph dialog
* Store property in paragraph model
* Move docx import/export from grabbag to paragraph model
* Add ODF import/export
* Add ODF unit test
* Add layout test
Change-Id: Id4e7c5a0ad145c042f862995d227c31ae2aa0abd
Reviewed-on: https://gerrit.libreoffice.org/83979
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
During DOCX import, not highlighted hyperlinks, ie. without hyperlink
character styles, set the Visited/Unvisited character style text
attributes to "Default Style" to avoid saving them with the
default highlighted hyperlink character styles in ODT.
Regression from the commit 576611895e51186d38ddefa10ed8d66075d9de37
"tdf#127741 DOCX import: format hyperlink with Default character style".
Change-Id: I5ffbb107e6704b285bc3d1546e08a324c386a0ab
Reviewed-on: https://gerrit.libreoffice.org/82205
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
|
|
... in sections with "Collect at end of text" set when "Track
Changes->Show" is off; the pre-increment erroneously became a
post-increment.
(regression from fe1d3328997741b55202aca7b3dc566ca833a5f4)
Change-Id: Ie438418883bdf91a519d553c10e8d9952a94a52d
Reviewed-on: https://gerrit.libreoffice.org/81234
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
Expose the AllowOverlap shape property as <style:graphic-properties
loext:allow-overlap="..."/>.
Change-Id: I6b6e08c67224ac7d4fb87046ea8accf94cdb583f
Reviewed-on: https://gerrit.libreoffice.org/79462
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: I6c1ae63a89d5ed34d2fa245279d4552949bb64a7
Reviewed-on: https://gerrit.libreoffice.org/74853
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: I069d84b1e6b80731c5d13a1f8b06f4ed9df0844a
Reviewed-on: https://gerrit.libreoffice.org/77153
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
This is similar to commit 6bb241ccc61c6904efec95978fa17e33c0eb1df3 (ODT
export: fix lost <text:user-field-decl> for fields in tables in headers,
2019-05-29), but here the container we want to ignore (between the
header and the field) is a text frame, not a table cell.
Change-Id: I6e8006fbd666802070cfeb88ca4528c66cc6d559
Reviewed-on: https://gerrit.libreoffice.org/73205
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
The problem was that XMLTextFieldExport::ExportFieldAutoStyle() assumed
that the text of a field anchor is always the toplevel XText, which is
true in case of body vs header text, but false in case header text vs
text-in-table-in-header.
So add an UNO property which exposes the parent of a table cell, this
way text in header (regardless of it's in a table or not) will have the
same XText, leading to writing the necessary <text:user-field-decl>
element for the matching <text:user-field-get> definition.
Change-Id: I077b8d7e9dfae4062539894318637e266b925382
Reviewed-on: https://gerrit.libreoffice.org/73176
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Layout is still not yet correct right after the import, though.
Change-Id: Icdba2e8d608f35b6b5b43b88ffb223f779af1b89
Reviewed-on: https://gerrit.libreoffice.org/71552
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
An easy way would be to just extend aXML_WritingDirection_Enum, but then
we would write the new attribute value to a non-extension namespace.
So special case the new attribute value during both import and export
(and only for table cells as a start).
Change-Id: I431bf99693c4a3452e91f241bd2f0fcfc72c68fd
Reviewed-on: https://gerrit.libreoffice.org/67770
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
OLE objects by importing their VisibleArea settings
This also reverts commit 5c1a6c9adb5ccfbb869a0a7ac730d8860a1bf405
"tdf#99631 DOCX import: set 1:1 scale in embedded XLSX".
Change-Id: I73dc945c86d0200e72767810b2ff39f233729080
Reviewed-on: https://gerrit.libreoffice.org/65343
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
based on the OLE object size, instead of applying
different scales for the bad (non-imported) VisibleArea
settings.
Change-Id: I3f246b779afd145fe260af83173c1944df21fb1a
Reviewed-on: https://gerrit.libreoffice.org/65244
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
in words, for example “az Ipsum”, not “a Ipsum”.
This bug was reported by Gellért Gyuris.
Complete commit 1037e3759bf178b52d16c12a811717f94ab9950a
(tdf#115319 references with Hungarian articles)
Change-Id: If930feb11a0308246d2512f0093bcacdc8675d0b
Reviewed-on: https://gerrit.libreoffice.org/63637
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
Change-Id: If08e90a11e57698f98af15a3f35648a98b03e062
Reviewed-on: https://gerrit.libreoffice.org/60771
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: Iaf9c8e2ed72115e1f82d2541ae2a1d4803795a46
Reviewed-on: https://gerrit.libreoffice.org/60752
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: If47a2e4953e4b98f41c9115779522a755eea8192
Reviewed-on: https://gerrit.libreoffice.org/56522
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: I1a92d2001e58751c5bbe41f6480f4c46dcc8c9e7
Reviewed-on: https://gerrit.libreoffice.org/59766
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: I4d67c8b06aeb7ef14471b1d881f985484eab9af0
Reviewed-on: https://gerrit.libreoffice.org/57079
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: I094f91c2af2d171067e3c37a8d52276835d36e9c
(cherry picked from commit 61150f1c37744457e7a1a1c1e684612b6adf0298)
Reviewed-on: https://gerrit.libreoffice.org/49424
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
|
|
Change-Id: Iad92cbe0b0376725c3078d26a4f3201d072c3c16
Reviewed-on: https://gerrit.libreoffice.org/54554
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
This change has multiple parts:
- Move "BulletAsImage" test from ODT only to globalfilter and
run it on ODT, DOC, DOCX, RTF formats and extend checks of
the XGraphic used for the bullets and the size.
- Check if GIF is animated as we need to know this in unloaded
graphic or bullets aren't rendered correctly if we assume
they are animated.
- Use "Graphic" property in writerfilter to get the graphic from
a XShape and not the "Bitmap" property which returns a Graphic
as a MetaFile and not the original Graphic.
- Make sure "GraphicBitmap" is filled with XBitmap and not with
XGraphic.
- Change "testFDO74215" to use the expected bullet size as it
is in the original document. Looks like the initial bug was
just asserting the bullet size is set to a value (non-zero).
Change-Id: I6b151c0bf9f426669e07522f0fc699fbb652046b
Reviewed-on: https://gerrit.libreoffice.org/54477
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
ODF TC decided to rename the element to meta:creator-initials, so adapt
the import so it can read this in addition to the 2 element names
produced by current and past LO versions.
Also add a test.
Unfortunately it turned out that the ODF validator had a bug in checking
character data in foreign elements, which is triggered by the test
document, see https://issues.apache.org/jira/browse/ODFTOOLKIT-475
... so update the validator jar as well.
Change-Id: I1de1e8772b41f8937f043d9a0d150e169f25ffd4
Reviewed-on: https://gerrit.libreoffice.org/53979
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
|
|
chmod -x for doc, xlsx, png, hxx, cxx, xls, ppt, hpp
Change-Id: I52aed261e318cfd765e9adb3ed8edd226c8a59d8
Reviewed-on: https://gerrit.libreoffice.org/52569
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
in page number, chapter and outline numbering
in ~30 languages by integrating libnumbertext library.
- offapi: add linguistic2::NumberText
New NumberingType constants:
- ordinal indicators (1st, 2nd, 3rd...)
- cardinal number names (One, Two, Three...)
- ordinal number names (First, Second, Third...)
Note: these numberings are parts of OOXML, too.
Plain text files of Libnumbertext's language data
are installed in share/numbertext (similar to
share/fingerprint), allowing further customization.
Change-Id: I4034da0a40a8c926f14a3f591749a89a8d807d5a
Reviewed-on: https://gerrit.libreoffice.org/53313
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
reference-language also added to token list
Change-Id: I32713508d3611dc2bce10b2c5abb1e1a4167bdaf
Reviewed-on: https://gerrit.libreoffice.org/52561
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
Change-Id: I4c55b19c9f7eaeb7c1c8df4266ea72ce24b17428
Reviewed-on: https://gerrit.libreoffice.org/51620
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Add a new property loext:ruby-position to ODF filter
for the new attribute value "inter-character".
Change-Id: I193eb93fba0e2e7861b6c8635244cac36eb29a06
Reviewed-on: https://gerrit.libreoffice.org/48328
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mark Hung <marklh9@gmail.com>
|
|
When changing to use "GraphicBitmap" property instead of
"ImageURL", the import wasn't adapted and there was no test which
would warn of such an situation. This also changes the difference
between writer and impress where impress used "Graphic" and not
"GraphicBitmap" property.
Also adds missing tests for both writer and impress
Change-Id: Ieed629d2d37f7806d63e729b6ef23cd848593071
Reviewed-on: https://gerrit.libreoffice.org/50140
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Before the swpagerelsize commits,
(specifically 7c7fdf3e97bbf2301f9938082d4d44162f4ec3c0),
the max size was always Prt(). The regression comes if
the RelFrame is a pageFrame (like when the image is
anchored to the page). Then sometimes no maximum is set.
Change-Id: If1e93ce670bd0908eb2d1f89dabbe9861163d29e
Reviewed-on: https://gerrit.libreoffice.org/50034
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
Change-Id: I74b4640eb1845875261b7858cef4bdc059608d69
Reviewed-on: https://gerrit.libreoffice.org/48945
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
ODF 1.2 has added some mandatory requirements for protection-key hashes
which did not exist in ODF 1.1.
This affects sections and indexes in ODT documents, as well as
spreadsheets and sheets in ODS documents.
1. Accept the following hashed passwords:
* UTF16 LE/BE encoded StarOffice-SHA1, OOo legacy and allowed by ODF 1.1
* UTF8 encoded proper SHA1, as required by ODF 1.2
* UTF8 encoded SHA256, as required by ODF 1.2
- specified either with the wrong URL used in the ODF 1.2 spec
or the correct URL from the W3C spec, see OFFICE-3702
* Excel+SHA1 double-hash, only in Calc, see OFFICE-2112
2. Round-trip any of the above as-is
* for SHA256 only write the URL from the ODF 1.2 spec
3. Generate only UTF16 LE encoded SHA1 for now, so that older LO
releases can still verify the password
* some time in the future, switch to generating some valid ODF 1.2 hash
More changes are necessary in Calc, which can actually preserve
different hashes for the same passwords in its runtime data model,
whereas Writer just has a single buffer without even any metadata.
For the Calc unit tests we need one document per hash because the
protection-key attribute can be set on the entire spreadsheet, which
is an unique element in the document.
There are further uses of SvlPasswordHelper for change-tracking passwords,
but apparently those are stored in settings.xml, so ODF has no
requirements for them, so let's leave that as it is.
Change-Id: Icb720b14ae9c0d9c04d2e082769ae2b74e3af8aa
Reviewed-on: https://gerrit.libreoffice.org/49352
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
... when importing ODF documents.
In CreatePackageEncryptionData(), add a 3rd SHA1 password hash,
PackageSHA1CorrectEncryptionKey, to EncryptionData.
Use it in ZipPackageStream::getDataStream(), which has 3 fall-backs
for SHA1 bugs now.
Also add a CorrectSHA1DigestContext, to be used together with
PackageSHA1CorrectEncryptionKey, and rename the existing one to
StarOfficeSHA1DigestContext, to be used together with the existing
2 PackageSHA1{UTF8,MS1252}EncryptionKey.
The fallback won't be used very often anyway: for the password SHA1
to be wrong, you need a password between 52 and 55 bytes long,
and for the SHA1/1K checksum to be wrong, you need a file
smaller than 1K with compressed size mod 64 between 52 and 55;
all XML files have enough random "chaff" added to be too large.
Test that we can read both correct SHA1 and StarOffice SHA1.
Change-Id: I988fa489b5e40c7657f404f18538f637d54d28f1
|
|
In case of IF field input inside DOC document the ConditionalText field
should be created instead of the two field marks that leads to handling
of unsupported field routine.
Added unit tests.
Change-Id: I31875d8e6be7f536766ef640a366b843f7e0532c
Reviewed-on: https://gerrit.libreoffice.org/46022
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
We don't need this info ourselves, but when converting the flat ODF
output to other formats, this information is hard to find out, so state
them explicitly. Names correspond to existing CSS ones, where it's
necessary to state these explicitly. The EPUB export will make use of
these attributes.
(It is unclear why the test fails on the windows_msc_dbgutil_32 slave,
it works for me locally.)
Change-Id: I05030b6a14aca842e5a740786f3743e9ae838293
Reviewed-on: https://gerrit.libreoffice.org/45384
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
Display-grid attribute is absent in the ODT file created by
Word. We prefer it to be invisible in this case.
Change-Id: I5abc301f76f547f78a55a507b61396bae0de1f71
Reviewed-on: https://gerrit.libreoffice.org/43619
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mark Hung <marklh9@gmail.com>
|
|
LO 5.1 commit 664197d95becd516c3dac25a50439078ba61e051
introduced a handler for RES_TEXT_VERT_ADJUST to handle
page styles, but that meant that the default handler
was no longer called for frames (the only other item
currently using RES_TEXT_VERT_ADJUST).
Change-Id: I33827160fe64dc4cc2107afc26f7ac2e698007e1
Reviewed-on: https://gerrit.libreoffice.org/41538
Tested-by: Justin Luth <justin_luth@sil.org>
Reviewed-by: Justin Luth <justin_luth@sil.org>
|
|
Some shapes do not contain polyline and meanwhile contain start/end
arrows. This is causing unexpected line endings appear in export.
TODO: Unittest is disabled, since XML parsing returns only root node
without children. So XPATH assert fails.
Change-Id: Ibc28f12b0f3838065978a674f0debe8e1b8103e9
Reviewed-on: https://gerrit.libreoffice.org/40422
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Browsers don't recognize base64 svg if the mimetype is missing.
So we add the image mimetype to our flat odf export, which the xhtml
export uses and transforms it into an xhtml document.
Change-Id: I21aafdb97b4104e14e2d40abda73a526bb37041a
Reviewed-on: https://gerrit.libreoffice.org/40371
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: I0af54a66679e66d7d2d05aba5dd341a9126ce631
|
|
... and fix the wrong export for <text:meta-field>, which erroneously
did not use the same bIsPrevCharSpace flag as everything else (which was
obviously a bug, as there should be one flag per paragraph).
Interop testing demonstrates that at least Word and Calligra Words
differ in their interpretation of spaces following <draw:frame> and
other shape elements, and <text:note>: if there is a U+0020 space
before the element, LO will not collapse a U+0020 space behind the
element but Word and Calligra Words do collapse it.
The distinction between "mark elements" and "non-mark elements" in the
whitespace collapsing implementation in OOo since the beginning was
never explicitly spelled out in ODF, although listing the
<text:bookmark> etc. elements in ODF 1.1, 5.1.1 was a strong hint.
Fortunately all 3 applications agree that a <text:s> following a
<draw:frame> is consumed as a space, and it is valid to write a <text:s>
in this situation, so just do that to improve interoperability.
Change-Id: I42260c0528db9fe7e87e8dbae5105aeadb83780d
|
|
There are 2 places where the style:page-number attribute is handled, in
XMLNumberWithAutoInsteadZeroPropHdl (for paragraphs) and
SvXMLExportItemMapper/SvXMLImportItemMapper (for tables)
Apparently for the paragraph case, 0 was never written to mean "auto",
this happened only for tables (see
7edaf190e2b18fe5dd9b7dd8d8e7e24b2ff26520).
The test reveals that SwXParagraph::Impl::GetSinglePropertyValue_Impl()
was kinda broken by 7d9bb549d498d6beed2c4050c402d09643febdfa, which
converts void values of "short" properties to short(0), wrongly assuming
that the Any contains a long. (Fortunately this is then mapped to
"auto" in XMLNumberWithAutoInsteadZeroPropHdl.)
Change-Id: I3dc6d5533ac96955440b1589f1999d06750101af
|
|
I.e. the test documents now reflect what is created by LO if you insert
a PDF image into a document manually on master.
Change-Id: Ibacce15220a21b159b5e987678c381a98a29fd1a
|
|
There's another context that reads draw:frame, and it has the same
problem as the one used for Impress shapes. This causes SVG images
in Writer to lose contour polygons and image maps.
Fix this the same way as the other context.
(likely regression from 44cfc7cb6533d827fd2d6e586d92c61d7d7f7a70)
Change-Id: I16cf55e68829b4e1b0841f2015d0729be0ce3725
|
|
Change-Id: Ie07ef2f9e9f6d0b31b513afa913b79d9c641e4f1
|
|
Do not export the parent-style-name attribute for a cell style.
The parent-style-name attribute should refer to a style of table-cell
family. Not a table-template element.
Reviewed on:
https://gerrit.libreoffice.org/28729
Change-Id: I350ec7cef0ac544ce4e5dec54015412a4070b1d8
|
|
+ Binary autoformats are loaded into document on document creation
+ Imported table styles overwrite existing styles.
Change-Id: I88c08d1356e1c54a03624a051611357670f225ba
Reviewed-on: https://gerrit.libreoffice.org/27539
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
Implemented XPropertyState for SwXTextCellStyle,
that allows to skip export of default valued attributes.
Implemented odfexport tests.
Change-Id: I906c63d4937e378cf89750616fc9ec929c7f3e44
Reviewed-on: https://gerrit.libreoffice.org/27215
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
+ Export of paragraph and character properties
+ Tests
Change-Id: I689deb2c524fdcd462c69a33ad9bc2865890793d
Reviewed-on: https://gerrit.libreoffice.org/27115
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
This patch is implementing import of table styles (table-template).
Modified shared code: Added "background" to the cell styles export.
To make cell export properties map accessible by both export and import code,
moved from xmloff/source/table/XMLTableExport.cxx to xmloff/txtprmap.hxx.
To avoid export of default valued properties implemented XPropertyState for
SwXTextCellStyle
Change-Id: I8b4f12e4b51f478f8ce8fde1203cd4611d7ae852
Reviewed-on: https://gerrit.libreoffice.org/26721
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|