During calculation of the quality index of the image, we should
take into account also SVM vector image type.
Its mime type is image/x-vclgraphic.
Change-Id: I7c723e99995f73258bb59d976a6c7670c51f7a25
Reviewed-on: https://gerrit.libreoffice.org/51599
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
This is used in parsing of meta Contexts across different
modules. This also involved moving to XFastParser for
parsing xml filters in sw, sd, starmath.
Change-Id: Ic663aaac6cb20ee8ce5b97cae87c93220f5a2929
Reviewed-on: https://gerrit.libreoffice.org/42989
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Jenkins <ci@libreoffice.org>
Instead of a hard-coded check for (effectively) one project name
"LibreOffice" (which is build-time configurable), check for the string
"LibreOffice_project", which has been produced hard-coded ever since
LO 3.3.0.
This now recognises additional downstreams "LibreOffice_Vanilla"
and "Collabora_Office", and also historic "BrOffice".
An important point here is that the build-time configurable version
numbers of any downstream that retains the hard-coded
"LibreOffice_project" *MUST* be the same as the upstream's at least
in their major and minor versions (micro and further digits are
currently not used), and that such downstreams don't backport
changes with ODF export compatibility impact further than upstream.
Add a unit test too, with a representative sample of 4372 distinct
generators in bugzilla attachments.
This revealed that StarOffice 6 and AOO 4.0.1 were falling through
the cracks and not recognised, so fix that too.
Change-Id: I8105222d3428e7b20cc4a6b8e76732c697812594
Reviewed-on: https://gerrit.libreoffice.org/51171
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
With this change ResolveGraphicObjectURLFromBase64 and
ResolveGraphicObjectURL became unused and are also removed with
this commit.
Change-Id: I45428a4e47f0e8800f18c1fdba007293dfcb53f4
Reviewed-on: https://gerrit.libreoffice.org/51043
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
The embedded graphic object don't seem to use the uniqueID of
a graphic object, but seem to have the same URL prefix. Let's
leave this in for now.
Change-Id: I48d9ad2c3b1eca745911f03221988c46c0fdb8d2
Reviewed-on: https://gerrit.libreoffice.org/51041
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
and use the underlying comphelper methods rather. This is so that I can
break the dependency that tools has on sax, and can add methods that
make sax depend on tools.
Change-Id: I8a2d6ce2ffc3529a0020710ade6a1748ee5af7d5
Reviewed-on: https://gerrit.libreoffice.org/50767
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
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>
... in SvXMLLegacyToFastDocHandler::startElement(), so that it does not
create invalid "-1" tokens that end up stored as empty-string
attribute names in SvXMLAttrCollection and ultimately exported
as invalid XML.
The maName in struct UnknownAttribute actually stores a QName,
i.e. namespace-prefixed, since commit
bb59a80ee6.
The attributes are read and converted again in
SvXMLImportContext::startUnknownElement().
Change-Id: Ia69a4da293f1a84ce30766abc09ca19e2620edbd
Reviewed-on: https://gerrit.libreoffice.org/50580
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
When saving we need to determine which mime type to use for the
graphic. Return this information back to the caller so the
metadata can be written into the file if necessary.
Also add function to determine the mime type from the XGraphic
by converting it to a stream first (only then we can determine the
format that will actually be used and written to the storage file.
Change-Id: I796da715e47f29d77dea605a2769a2217ecd6ba5
Reviewed-on: https://gerrit.libreoffice.org/49992
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
This is an alternative to GetEmbeddedGraphicObjectStream which
uses URL as parameter and will be removed soon.
Change-Id: I3c7431bdeed0bd4ed3c7f48517a52846d0944ed2
Reviewed-on: https://gerrit.libreoffice.org/49893
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Happened e.g. when copy&pasting editeng content in Impress tables,
document::XStorageBasedDocument is not implemented by SvxSimpleUnoModel,
so it's not exceptional that the queryInterface() for mxModel fails.
Change-Id: Iaed53941bb47ff8a0553896f18a553cf64e2224a
Reviewed-on: https://gerrit.libreoffice.org/49747
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
With GraphicURL property on shapes (XShape) we transported the
external or internal URL to the model, which also included the
GraphicObject uniqueID style URLs. This changes that - now we
always use "Graphic" property and transfer XGraphic to and from
graphic filters. "Graphic" property is already present for XShape
so it wasn't needed to add it.
Filters changed are: OOXML (oox), ODF (xmloff), RTF and
binary MS (esherex).
Also start using originURL on Graphic which now transports the
URL of the external (linked) graphic/image if it was created that
way.
Change-Id: Ic338c60b7cfaaae354cf1e1ca3ae7a6373220230
Reviewed-on: https://gerrit.libreoffice.org/49648
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Add new alternative reference formats, stored by
the proposed text:reference-language attribute.
This is an implementation of the ODF improvement draft
published in the bug report.
Note: choose Hungarian locale setting to show the
new "Article a/az + Page" etc. reference formats
in dialog window "Fields".
Change-Id: I210d4b9a3e821fb4e45e24643bad9c70b867c89d
Reviewed-on: https://gerrit.libreoffice.org/48944
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
As we want to get rid of GraphicObject URLs for the more robust
image life-cycle handling, it was necessary to change the way
bitmap table stores and handles images, so that they always
store a Graphic object (wrapped in UNO object that provides the
XGraphic and XBitmap interface).
In addition this changes loading and saving from ODF (xmloff) and
OOXML (oox) filters so they don't depend on GraphicObject URL
anymore, but load or save directly to / from XGraphic or XBitmap.
Change-Id: I2b88e10056e7d6c920249d59188f86b1a5a32d21
Reviewed-on: https://gerrit.libreoffice.org/49074
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Only the file extension was considered before
which is not available in flat odf.
Now both internal and external URLs are resolved to their respective mimetype.
Change-Id: Id7e290cd9a441a1a6c2ce5e8d764391c50495bea
Reviewed-on: https://gerrit.libreoffice.org/47824
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
When used, we instantiate the XmlImageStyle class but all its
methods are static, so instantioation is completely pointless.
So change XmlImageStyle to a namespace and static method to
functions.
Change-Id: I6385bd7eeb08c627cb8e48b79a6820372cf94a65
Reviewed-on: https://gerrit.libreoffice.org/47851
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
auto-rewrite with <https://gerrit.libreoffice.org/#/c/47798/> "Enable
loplugin:cstylecast for some more cases" plus
solenv/clang-format/reformat-formatted-files
Change-Id: Ic872cef7bb9982305528ec3ce12a1871f055b752
Modifying it to emit the namespace URI instead of
prefix and qualified name instead of local name.
This will be useful for handling arbitrary elements
in the fast contexts.
Change-Id: I0f150b862574612e97491f6c335f3f4c9966da0a
Reviewed-on: https://gerrit.libreoffice.org/47055
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Fix the non-obvious and potentially dangerous recursion that is
implicit in xmloff's context code.
SvXMLImportContext::CreateChildContext() now always creates a
SvXMLImportContext, does not delegate to SvXMLImport.
Rename CreateContext to CreateDocumentContext, to make its purpose of
creating only the top-level context more obvious.
With the previous changes to CreateContext overrides in sw,
reportdesign and dbaccess, this hopefully shouldn't break anything.
Change-Id: I9e147bf6297bbac9e8470454881da73f6e39db0a
cause that's what its really used for and a couple of cases
are not specifically about avoiding config but avoiding uninteresting
disk acccess and what not
Change-Id: I4c6454f98388579fcd0bf9798321d30408ab65ee
Reviewed-on: https://gerrit.libreoffice.org/44491
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>