Age | Commit message (Collapse) | Author |
|
Change-Id: I8616f608ee4cc62114acb4fbd774796bc11d1911
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133812
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
by calculating and exporting adjustment values to avoid
of connector lines with bad turns overlapping the
connected shapes.
Change-Id: I615a20f3ba3c5d03ae73d87848dc41e9ecd29ae5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133635
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
Change-Id: I0a7cb2754ab43b8b627f196c99778b5fa3f2e005
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133808
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Id6c8341b545c819521056926ef1b80d20d148c5f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133795
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I042b8dcadbf7581de325c161763fe35aecde5ca2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133694
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
found by examining uses of OUString::copy() for likely places
Change-Id: I23c397b0438e67e0fdbc1fb4ffa6882aa5e2bf91
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133591
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
I believe this is the right thing to do although this is
a blind fix, since I couldn't find any file affected
Change-Id: I500ceaf11b917abb5e86769b8816ddc2d6dfec6c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133522
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: I4462f7cf4740fa4d1b129d76a0775f4250f41bbd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133555
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This is always direct formatting, so FillProperties::pushToPropMap()
always has the needed info at hand.
Change-Id: I3317b618e0e8bb7688d0f0fbfe4546e2e8b4e947
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133525
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
The export to custGeom uses currently a static version of the shape. Its
vertices are calculated with EnhancedCustomShape2d::GetParameter(). That
has parameters to determine whether ReplaceGeoWidth and ReplaceGeoHeight
has to be used. It needs to be used, in case the shape has property
StretchX or StretchY. That was missing. It is added now in cases where
GetParameter() returns a coordinate.
Not all cases are covered by unit tests. Further files for manual testing
are attached to the bug.
Change-Id: Idcdd081f855ed6c4e3a84dba08f8a2148ddfe54c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133463
Tested-by: Jenkins
Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
|
|
Change-Id: I114bec72cb933238675e539a8388a607226827cd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133455
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
The regression introduced by c79fa460fe6220051bbda2d3c0cb67fbf765e2ac
causes LibreOffice to crash while loading certain files that contain
SmartArt graphics.
By loading sample documents from tdf#148665 (docx) and also tdf#148735
(pptx) in a debug session, it became obvious that the problem happens
in these statements from TextBody::toString() in textbody.cxx:
if (!isEmpty())
return maParagraphs.front()->getRuns().front()->getText();
It is guaranteed that maParagraphs is not empty when trying to call
getRuns(), but it is not checked that there are no runs in the first
paragraph before trying to call getText(). The isEmpty() function
returns false upon finding out that there is at least 1 paragraph.
A check is added to TextBody::toString() to prevent a crash.
This is the backtrace generated from loading documents from tdf#148735
in a Qt Creator debug session:
1 __GI_raise raise.c 50 0x7ffff79ec03b
2 __GI_abort abort.c 79 0x7ffff79cb859
3 ?? 0x7ffff7846109
4 std::vector<std::shared_ptr<oox::drawingml::TextRun>>::front vector 443 0x7fffd23d1fa6
5 oox::drawingml::TextBody::toString textbody.cxx 92 0x7fffd23d0f85
6 oox::drawingml::DiagramData::secureDataFromShapeToModelAfterDiagramImport datamodel.cxx 295 0x7fffd22d3047
7 oox::drawingml::AdvancedDiagramHelper::doAnchor diagramhelper.cxx 213 0x7fffd22fb92d
8 oox::drawingml::Shape::propagateDiagramHelper shape.cxx 229 0x7fffd2372a27
9 oox::ppt::PPTShape::addShape pptshape.cxx 574 0x7fffd25b2bd4
10 oox::ppt::SlidePersist::createXShapes slidepersist.cxx 150 0x7fffd25d81ea
11 oox::ppt::PresentationFragmentHandler::importSlide presentationfragmenthandler.cxx 404 0x7fffd25c1a78
12 oox::ppt::PresentationFragmentHandler::finalizeImport presentationfragmenthandler.cxx 550 0x7fffd25c3331
13 oox::core::FragmentHandler2::endDocument fragmenthandler2.cxx 53 0x7fffd22364ab
14 sax_fastparser::FastSaxParserImpl::parseStream fastparser.cxx 907 0x7fffe18b2d2b
15 sax_fastparser::FastSaxParser::parseStream fastparser.cxx 1480 0x7fffe18b71d2
16 oox::core::FastParser::parseStream fastparser.cxx 121 0x7fffd221d85b
17 oox::core::FastParser::parseStream fastparser.cxx 129 0x7fffd221d930
18 oox::core::XmlFilterBase::importFragment xmlfilterbase.cxx 413 0x7fffd2248ba5
19 oox::core::XmlFilterBase::importFragment xmlfilterbase.cxx 343 0x7fffd2248687
20 oox::ppt::PowerPointImport::importDocument pptimport.cxx 109 0x7fffd25a89e2
... <More>
Change-Id: I3a40be33061008b93455a5926259ef5b92e4ffe6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133341
Tested-by: Jenkins
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
Change-Id: I07f11bf12fbe1d1c2d812fa0965d6e632e1e1aba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133437
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Follow-up to commit aea8043bc5f5187498fa450505d6de9d6986e2a6
"tdf#74670 tdf#91286 PPTX XLSX export: save image once".
This reverts commit 797fef38612fb2fd62d1f6591619b9361e526bca
"tdf#118535 DOCX export: save header image once"
and commit 32ada80a9f47b095d7b0c4d16e3422f6ef7f2ac2
"DOCX export: make sure a graphic is only written once"
and commit b484e9814c66d8d51cea974390963a6944bc9d73
"tdf#83227 oox: reuse RelId in DML/VML export for the same graphic".
Change-Id: I2d90249808174290b6b3e4eb957b3ac87ad41f95
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132506
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
Linked media files were imported as images in documents
created with Impress after PPTX export.
Change-Id: If4920c2e40f45fff73eca4a5fa987d524177597e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132635
Tested-by: Jenkins
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
Otherwise, once it's set to true, it's never reset
Change-Id: Ie8a752da4162775f40c2f84f480e6a103eb55942
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133422
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
This can go after 1c924efe1f80207a5e104d755615b1eb9a91d418
< tdf#148685: Unset CharUnderlineColor and CharUnderlineHasColor
properties >
Change-Id: I9b9540cf0cdcd9ecbb39b92fe24b83a1810df7da
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133382
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: Ia1f1bb31e077dcb4293c1106ac324a25a975a656
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133064
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
|
|
This is a follow up to commit 2029b2f6dd0109c5892e5ac5640022b31fe42fd2
The commands A, W, T or L of a draw:enhanced-path draw a line from
current point to start of the arc or end of line, respectivly. If
there is no current point the path is faulty and behavior is not
defined in ODF.
LibreOffice is tolerant and makes a move to the start point of the
arc or to the end point of the line. With this patch we do the same
now in export to OOXML, so the user gets the same shape geometry as in
LO. If a path starts with lnTo, MS Office will show nothing.
I wouldn't care about user-created faulty paths, but LO produces such
faulty path when an EllipseRibbon shape from binary MS Office is
imported. Even when that will be fixed, we need the fix here, because
the faulty path had been written to document markup and will be used
when such document is opened.
Change-Id: Ic52ec3bc78231b26efb592ddadee2e3042fdc065
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133349
Tested-by: Jenkins
Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
|
|
Change-Id: Iebf482434cd393f55ae3e4690580b573624d78b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133219
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: I289162ed8adf93139bbc69e8f5f4a1444dd52199
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133231
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
A shape might have the shading information not in commands in the
enhanced-path, but generated in ctor of EnhancedCustomShape2d from the
Type value of the shape. This shading information is a 32 bit value
with first the number of the shadings and then the shadings. A shading
is encoded with 1,2,3,4,5,6,7 for lighten 10 to 70 and 8,9,a,b,c,d,e,f
for darken -80 to -10.
To get this information from EnhanceCustomShape2d I have made its
method GetLuminanceChange() public.
Because OOXML only has darken, darkenLess, lighten and lightenLess our
values are mapped:
-10, -20, -30 to darkenLess
-40, -50, -60, -70, -80 to darken
10, 20, 30 to lightenLess
40, 50, 60, 70 to lighten
The bupreport mentions only 'Octagon Bevel' and 'Diamond Bevel'. But
the patch fixes missing shading for shapes of Types 'ActionButton*'
as well. Such shapes come in from MS binary import.
Change-Id: I03f19496b915f3ced6346222e8806832b4ee2827
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133220
Tested-by: Jenkins
Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
|
|
Change-Id: Ic31e50b22f64c55a1e0a7bbd5859672adfba5d0e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133230
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: I1f7b1c0b28b9e5247debb85e07f19896d16f8bdc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133228
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: I336fd329b577b6fa141265d8bc7ce67784bd7306
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133210
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
To have a more direct and more reliable association between the
XShape/oox::Shape and the model data svx::diagram::Point I added
optional usage of the Model-UUID for that at the oox::Shape.
Also added a 'fake' UUID to work with the BackgroundShape's
attributes. Changed all preserve/rescue code to work based on that.
Also cleanups/comments and preparations of some flags in the
Diagram ModelData to steer behaviour on re-ceration.
Change-Id: Ie30effdff34dcdbbc79a766de09157b2a3bd97d3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133168
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
... that can be string_view
Change-Id: I0ddf66725e08b58e866a764f57200dd188b9f639
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133066
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I3dce87ecd5b8f69862f26edb66fe54c6acee8660
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133117
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: Ib058458860f606736455ae997a6f7f74de5585bf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133104
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
The shapes 'Octagon Bevel', type col_60da8460, and 'Diamond Bevel',
type col-502ad400, are LO specific preset shapes. They have neither a
counterpart in MS binary nor in OOXML. So they need to be exported
with custGeom. To force custGeom these shape types are moved from
vDenylist to vAllowlist.
These shapes were exported as prst='rect' before.
Change-Id: I9619345812b6dba8f14ec2cc6a92ae808a56b595
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133069
Tested-by: Jenkins
Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
|
|
Move DataTableContext and DataTableModel into its own files and
add the missing "showKeys" property of the data table (dTable).
Change-Id: I44fb436000c7f00a596fc9b12489d15ea1368e68
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133021
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: I25fe1cbfae43bb533e7dfc2561d0b70976aa6a40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132985
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Additionally to the Text/Attributes already saved/secured after
Diagram import, secure more data that is part of the Diagram
ModelData. This is about attributes (e.g. FillStyle/LineStyle,
TextAttributes, ...) in UNO API formt that will be secured/
attached to the Diagram ModelData in it's
svx::diagram::Point structure.
This is done for all those entries for which a XShape will/
would be incarnated, thus associated to entries that will
get a visualization, including the BackgroundObject.
From that data, at re-creation time, the attributes can be
re-applied to the re-created XShape(s), also after changes
to the Diagram Model Data (e.g. Add/Remove).
This is - besides the already added securing of the Style/
Theme - a 2nd method for lossless re-creation. For the
BackgroundObject - if it has FillStyles - it is even the
only method to secure that data and thus necessary for that
case. The selection of atributes that gets secured is minimal
for now and may/need to be extended for existing cases
accordingly.
Change-Id: Ie9b72b9b9135113cf858d57fe6cd8622d736c4a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132976
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
for which we have o3tl:: equivalents
Change-Id: I4670fd8b703ac47214be213f41e88d1c6ede7032
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132913
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
look for call sequences that can use string_view and the new o3tl
functions in o3tl/string_view.hxx
Also add a few more wrappers to said #include file
Change-Id: I05d8752cc67a7b55b0b57e8eed803bd06bfcd9ea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132840
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
where we can convert that to
o3tl::toInt32(o3tl::getToken(
and avoid the heap allocation of a temporary string
Change-Id: Ib11c19c6e6cdc0de3e551affd3578d181e292de4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132810
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
The Style/Theme information is central for re-creating the
Diagram shape representation. Make that data available in
the ModelData classes in svx. With that information, a re-
creation with all needed attributes is possible, e.g. when
the model gets changed (remove/add data entries).
Also some cleanups done.
Change-Id: Icd925c9731891092f1ddd96c8feb165e1f846f4f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132738
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
since we now have o3tl versions of those that work on
string_view.
Also improve those o3tl functions to support both string_view
and u16string_view
Change-Id: Iacab2996becec62aa78a5597c52d983bb784749a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132755
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
so we can use it in places where we cannot include comphelper
Change-Id: Iba0ba3e4c0dcf0f9d1f09092a77c3b2010ec4f6d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132732
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I54e3ddf79ba793fd4328bf8bda7f949b65349651
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132693
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
There is an exporter class for preset shapes,
namely the DMLPresetShapeExporter, which in
its ctor calls the msfilter::GetShapeName()
converter method where the puzzle cause
exception. To avoid this return with false
to export it with custgeom in time.
Change-Id: I8d29bf551638a66abf381c9cb8f6a0eebc881195
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132567
Tested-by: Jenkins
Reviewed-by: Attila Bakos <bakos.attilakaroly@nisz.hu>
Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
|
|
The BackgroundShape may have a FillStyle after import, so do
handle that FillStyle accordingly. Also enhance breaking
the Group by keeping that shape in that case and deactivate
Move/Size change lock for it. Also Undo needed.
Change-Id: Iccdb236a2311275efc07162fd4bd2cfc252fd437
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132626
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
Change-Id: Idcb10d0cc0759473e95e47afec7ed69853628612
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132587
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
|
|
In a next step to get the Diagram mechanism/ModelData independent
from oox, I moved the Text ModelData to svx, using a TextBody
struct. This is a 1st move that covers most of what the
algorithms to handle Diagram re-layout and other functionality
use. This will potentially have to be extended accordingly
when missing data is detected. It is potentially much more
simple as the oox TextBody, by purpose.
Due to functionality using that data I could now massively move
more of it to svx.
Change-Id: I6d6e6c572f119aeefa4e91eff56f58f3ceb6a31e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132523
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
Change-Id: Ieb57b614962b398a19d87e0a7427d897b38cf37c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132536
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: I32aa1660f4b83b349fd6e231fd08eac36d342973
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132534
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Without the fix the attributes for <a:rect> were set to 'l', 't', 'r'
and 'b'. That means that the textarea rectangle equals the shape
rectangle. That is the default and works for many shapes. But 'Puzzle'
has a smaller textarea rectangle, for example.
Because the values in draw:text-areas are relative to the internal
coordinate system given by draw:viewBox in ODF, but the values in
<a:rect> are relative to the shape coordinate system in OOXML, we
cannot simple write the current absolute values but need to calculate
them depending on actual width and height. For that we need guides.
The patch introduces a guide list. Currently the list contains only the
guides for the textarea rectangle, but it can be extended when export
of handles will be implemented one day.
Change-Id: I1050627ef6459ab5f8fafa939d7905122870c903
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132489
Tested-by: Jenkins
Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
|
|
Change-Id: I470819a89338f4fb1d9b2486ffb4d93f8eb42844
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132504
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Missing TargetMode="External" in the export of
linked media files resulted corrupted PPTX.
Change-Id: I76246db331d199810a5b413d44bec95283e88e47
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132402
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
which converts to a combination of substr and o3tl::starts_with
Change-Id: I5b01a181b9e6bee3483e4f49f1a9426abcc682d0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132458
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|