Age | Commit message (Collapse) | Author |
|
Change-Id: Ief6a37b977f464c50888291ec9764c7b05cba297
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143320
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: I63136468d4c5b5680cf3d7b240943b6029c4f29b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143319
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: I2f93357f2291312e91002fe3b104261a6aee8734
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143318
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
as a step towards switching away from using SwPosition inside
SwFormatAnchor (because SwFormatAnchor wants to do weird stuff with the
internals of SwPosition)
Change-Id: I1cdbe2fc6623d8fe2bb0c1bc629b570ca4d0cb0c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143298
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I135498592857a624b72db519724e8f189e60e9a3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143310
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I2d15ee96373d21b6501fa956601378d7f698a099
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143311
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
The reason for accepting empty attribute was eliminated in commit
2f91ab025de850fe5af8114565755a8deed55911 (Merge two assertXPath
overloads that both check number of nodes, Nov 25 16:36:57 2022)
Change-Id: I6cd77eb0f73650dfdafd55946b5269ffe3f0bde5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143304
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: Ib72d4eb95879f94efad3834b1334099990e76f1b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143303
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Takes it from 20m to 2m on some tests.
Change-Id: Idc02a299ebdffaf4bcd99612e92190f6b9619021
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143296
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
as a step towards switching away from using SwPosition inside
SwFormatAnchor (because SwFormatAnchor wants to do weird stuff with the
internals of SwPosition)
Change-Id: Ie6d4f45c959f87599d1cd0890ca8a693dd147be1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143294
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
make CppunitTest_sw_macros_test CPPUNIT_TEST_NAME=testVba
This now allows MS Word's modern content control list boxes
(combobox and dropbox) to be controlled by VBA basic.
-allows getting and setting the selected list entry
-allows adding/deleting/renaming/moving list entries
If .DropdownListEntries.Count <> 3 Then GoTo errorhandler:
.DropdownListEntries.Item(2).Select
.DropdownListEntries.Item(2).Delete
If .DropdownListEntries.Item(2).Text <> "infinity"
If .DropdownListEntries.Item(2).Value <> "infinity and beyond"
'With .DropdownListEntries.Add("third", "3rd", 2)
Dim LE As ContentControlListEntry
Set LE = .DropdownListEntries.Add("third", "3rd", 2)
With LE
If LE.Index <> 2 Then GoTo errorhandler:
If LE.Value <> "3rd" Then GoTo errorhandler:
.MoveUp
.MoveUp
.MoveUp
If .Index <> 1 Then GoTo errorhandler:
.MoveDown
.MoveDown
If .Index <> 3 Then GoTo errorhandler:
End With 'LE
If .DropdownListEntries.Item(3).Text <> "third" Then GoTo errorhandler:
End With 'Item 1
runOnceDropDown:
With ActiveDocument.ContentControls.Item(4)
If .Type <> wdContentControlComboBox Then GoTo errorhandler:
.DropdownListEntries.Clear
End With
Change-Id: Iffebb2bd69abec1cbcfaed05b58f940664852eae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143082
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Similar how it's done for preceding objects immediately after calculating
'ofs', we also need to make sure to create a separate run for the objects
that may be anchored after the last character; otherwise, the field that
was just processed (and is waiting in the attributes) would be put out of
place, inside an inner run (e.g., in a text box inside the object).
Change-Id: I2702693595acf4befdbd25ef07a9f7c444926aab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143297
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
The fieldmarks in a document were kind of invisible for LOK clients
previously.
The Zotero use-case requires a way to fetch certain types of fieldmarks
from a document, to be able to update them and then write back those
updated versions to the document later.
Fix this by introducing a new .uno:TextFormFields, you can get its value
using the getCommandValues() LOK API. This allows filtering for a
certain field command prefix, which is generic, but e.g. in the Zotero
case allows getting the citations or the bibliography. The returned JSON
is an array of matching fieldmarks, containing their type and field
command. It seems there is no way to return the field result, till the
motivation is to just update that field result. (If there will be need,
the field result can be added.)
Do this in a way that next time we add a Writer-specific command (to be
able to return its values), there will be no need to touch
include/vcl/ITiledRenderable.hxx, causing a large rebuild.
Change-Id: I2ef1159bec4034bbdd6b4ba00715a69423106edd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143275
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: I9d22e4a2140f5195d3829e6289ddf3d2f79b632e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143281
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
in order to unify the code
Change-Id: Iedeff59cc45775c80844e8e030f61354325399da
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143282
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: I350a9c0a033edddf805170534561b6dca0bf5ae0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143172
Tested-by: Jenkins
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
|
|
Change-Id: I6d6663520c3946eabb9bbb184899b0c4420732d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143248
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
* Specification: ISO 14289-1:2014, Clause: 7.3, Test number: 1
Figure tags shall include an alternative representation or replacement
text that represents the contents marked with the Figure tag as noted in
ISO 32000-1:2008, 14.7.2, Table 323
This was broken by the previous commit, which tied ObjectInfoPrimitive2D
evaluation to StructureTagPrimitive2D, and is restored now, perhaps
less elegantly.
* Specification: ISO 14289-1:2014, Clause: 7.7, Test number: 1
All mathematical expressions shall be enclosed within a Formula tag as
detailed in ISO 32000-1:2008, 14.8.4.5 and shall have Alt or ActualText
attributes
Haven't checked but it's possible that this worked before commit
2840352ba56a212d191cc16e08378c87672d7b73 - for SwOLENode embedded
objects, no ObjectInfoPrimitive2D is created apparently.
Change-Id: Ia0077199601f39f666012d31883f63cff115716f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143247
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
Regards German and some other languages. A bug in the mechanism to distingish between apostroph and single end quote is solved.
Now, it works also for user defined quotes, like a single angle quote ('French' quote).
Change-Id: Ib4beca7a4304d57d7fdf977c20cf62410be3d2c6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142662
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
...introduced in 24d7431876e87eba700a9f141dc8e030143a92ad "tdf#151548 vba
ContentControls: Add basic word::XContentControl", presumably in error
Change-Id: I734b8046de7127f68d43b805e2faa6c0106c0cfd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143274
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Which has nothing to with SwPageFrame. SwPageFrame is a page in the
layout, SwFramePage is a tab page in a dialog.
Change-Id: I4a88bcfb9e1aab541f099c4f6d84501610105f76
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143245
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
This adds basic VBA macro support for accessing
the modern content controls used for creating forms.
I ran out of time to make it fully functional.
TODO
-Invalidation: the screen isn't updating the modified results until
interaction from the user (mouse click, etc.)
-Unlike FormFields, content controls really depend on having
Range working. I didn't have time to look into that.
-I was hoping to check that my approach could accommodate the other
methods that create a filtered ContentControls object:
* Document.SelectLinkedControls,
* Document.SelectUnlinkedControls
* Range.ContentControls.
I guess it will be left up to whoever needs these to add the bits
that will create an appropriate collection for these limited sets.
-setType: changing one type to another - both LO and Word allow
limited use of this - depending on the text contents fitting
the new type.
What works:
-getByIndex - which probably is the "normal" way to do it,
since the UI doesn't provide a name/ID; just got via msgbox .ID.
-full checkbox support (minus the visual invalidation)
-VBA accepts almost all properties/methods that are requested.
make CppunitTest_sw_macros_test CPPUNIT_TEST_NAME=testVba
If Not ActiveDocument.ContentControls(1).Checked
If ActiveDocument.ContentControls(2).Checked
'If ActiveDocument.ContentControls(2).Range.Text <> "$"
ActiveDocument.SelectContentControlsByTag("checkboxes").Item(1).Checked
= ActiveDocument.SelectContentControlsByTag("checkboxes").Item(2).Checked
ActiveDocument.SelectContentControlsByTag("checkboxes")
.Item(2).SetUncheckedSymbol (8364) '€
With ActiveDocument.SelectContentControlsByTitle("listbox").Item(1)
If Not .ShowingPlaceholderText
'If .Range.Text <> "Choose an item."
If .Type <> wdContentControlDropdownList
End With
With ActiveDocument.ContentControls.Item(5)
'If Not .Temporary Then GoTo errorhandler:
If .Temporary <> False Then GoTo errorhandler:
If .Tag <> "" Then GoTo errorhandler:
If .Title <> "" Then GoTo errorhandler:
End With
With ActiveDocument.ContentControls.Item(6)
If .Type <> wdContentControlText
If .MultiLine Then GoTo errorhandler:
If ActiveDocument.ContentControls.Count <> 7
.Delete 'Doesn't actually Delete in LO yet - unsafe
' If ActiveDocument.ContentControls.Count <> 6
End With
' Change to 6 when delete is working safely
With ActiveDocument.ContentControls.Item(7)
If .Type <> wdContentControlDate Then GoTo errorhandler:
.Color = wdColorBlueGray 'unknown to Word 2010
If .Color <> wdColorBlueGray Then GoTo errorhandler:
If .DateDisplayFormat <> "mm/yy/dd" Then GoTo errorhandler:
If .DateCalendarType <> wdCalendarWestern Then GoTo errorhandler:
If .LockContents <> False Then GoTo errorhandler:
End With
Change-Id: I1c636f671de81e0283c040a578838a0433ef1f5b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143080
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
|
|
We generate such files currently. Fixing that will be another commit.
Change-Id: I788501e346cba63c08a767c0e05e063bc1172089
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143223
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
We have a "GraphicCrop" property that is supposed to roundtrip the
cropping in OOXML, but there is no core feature backing it (ie. the
image is not shown cropped when this is imported and set).
Instead, to show the image "cropped", we crop the image physically on
import (throw away pixels that are 'outside' of the cropped area).
But - the "GraphicCrop" is then saved on export, together with the image
already physically cropped, which leads to garbled DOCX on re-import.
Given that the core feature to show image cropped when the "GraphicCrop"
is set, let's avoid setting it when we physically crop the image.
Change-Id: Ia1090ea9c6d22e60c77d52bf65281f6588d07d4e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143216
Tested-by: Jenkins
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
|
|
part of the process of making SwFormatAnchor not use an SwPosition
(because SwFormatAnchor does weird does with the internals of an
SwPosition)
Change-Id: I1694ae83070082f10699aa7b3bd2a043c518d0c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143227
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Tracked text moving before paragraph end was extended
to the paragraph end, too.
Follow-up to commit 11071d95f4f3cbe578c3393729c42b7cce011b45
"tdf#149711 sw_redlinenum DOCX: import moveTo paragraph mark"
and commit d32d9a2b3c5e3963f4a18f6c7bbf50fab2e9b2be
"tdf#123460 DOCX track changes: moveFrom completely".
Change-Id: I668a3ef83482bded9ab94dcd0111f8ed05e8471c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143231
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
part of the process of making SwFormatAnchor not use an SwPosition
(because SwFormatAnchor does weird does with the internals of an
SwPosition)
Change-Id: I662f977214b70fa7eb37e460e4535e14e8a3fe28
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143222
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
as a step towards switching away from using SwPosition inside
SwFormatAnchor (because SwFormatAnchor wants to do weird stuff with the
internals of SwPosition)
Change-Id: I1527b6585d1e130b46e1e51b1e40eea043339d8f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143205
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Mostly com/sun/star/frame/Desktop.hpp is unused after inheriting from
UnoApiTest.
Change-Id: Ifba307353a11a14e033a230a291314bee86b51c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143190
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
This patch implements user j.a.swami's suggested improvement of the
messages shown in the 'Read-only Content' dialog when trying to
delete a selection in the document that has folded content. In doing
so, repeated code to create and run the dialog at each place it is
used is replaced by a single function call.
Change-Id: If79298e0ee920e60620934f1eacc98c776e5d33e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143132
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
relevant part of bt:
5 0x00007fa6fa5cdc0b in std::_Optional_base_impl<com::sun::star::uno::Any, std::_Optional_base<com::sun::star::uno::Any, false, false> >::_M_get() const (this=0x558f064c4508)
at /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/optional:484
6 0x00007fa6fa5ccf95 in std::optional<com::sun::star::uno::Any>::operator*() const & (this=0x558f064c4508) at /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/12/optional:970
7 0x00007fa6fa5c8c3c in SwXTextPortion::GetPropertyValue(com::sun::star::uno::Any&, SfxItemPropertyMapEntry const&, SwUnoCursor*, std::unique_ptr<SfxItemSet, std::default_delete<SfxItemSet> >&)
(this=0x558f064c43d0, rVal=uno::Any(void), rEntry=..., pUnoCursor=0x558f06515600, pSet=std::unique_ptr<SfxItemSet> = {...}) at sw/source/core/unocore/unoport.cxx:373
8 0x00007fa6fa5c90e8 in SwXTextPortion::GetPropertyValues_Impl(com::sun::star::uno::Sequence<rtl::OUString> const&) (this=0x558f064c43d0, rPropertyNames=uno::Sequence of length 1 = {...})
at sw/source/core/unocore/unoport.cxx:414
9 0x00007fa6fa5c925f in SwXTextPortion::getPropertyValue(rtl::OUString const&) (this=0x558f064c43d0, rPropertyName="RubyAdjust") at sw/source/core/unocore/unoport.cxx:425
10 0x00007fa6fa5c940f in non-virtual thunk to SwXTextPortion::getPropertyValue(rtl::OUString const&) () at /home/julien/lo/libreoffice/instdir/program/../program/libswlo.so
Regression from d57ad60d8ed5279a3366386553c5cefb7ae8b5bf
"unique_ptr->optional in SwXTextPortion"
(in August 2022)
Change-Id: I9c4c5bbbcb439cb3105654044dd8a571d39ff513
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143191
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Handling of image counter was incorrect if the
document contains embedded documents, overwriting
images with the other ones.
See also commit cf2dc247ff5f726238856e9b46a4926a30430e14
"DOCX export: image deduplication and clean up" and
commit 3f6df3835fec71ea61894f9a3bbfe5e4a06a5495
"DOCX export: fix image counters for multiple documents".
Change-Id: I3ce3e370f96fa8b9feca3bc73f06ddca933215d4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143036
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
Change-Id: I8d7bb4593839d3660b6609d836b09d50b68f5712
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143141
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
...when the target type is a reference type and the source and target type have
different cv qualifiers. (And fix the fallout. And make the tests cover that
somewhat more exhaustively; and while at it also test that the plugin can cope
with dynamic_cast to void pointers, which is the only legitimate case where a
dynamic_cast can involve types that are not (pointers or references to)
non-class types.)
Change-Id: Ia568ddb5dbc4a84c275db172791c345d95964857
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143133
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Which means XmlPortionDumper can be finally removed.
See commit feeed3e762cf077fbd9cf48f82e949365108ccc1
(CppunitTest_sw_layoutwriter: avoid some a11y-based layout testing,
2022-04-07) for motivation.
Change-Id: I50e6c49a50c5ccbec9e426ad796d85865dcc93e8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143128
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: Ibd9fc78d88732b63d418404fa23e1560bf531fbf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142984
Tested-by: Jenkins
Tested-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
|
|
Change-Id: I070b7a8ea599f1faddb009c68aeb4b8536cc52e1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143130
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Exporting the DOCX bugdoc back to DOCX resulted in a document that can't
be opened in Word.
Examining the output, the problem is that the document had 2 inline
<w:sdt> elements with <w:id>, and we mapped such <w:sdt> elements to
both grab-bags and content controls, leading to duplicate <w:sdt>
elements on export. This is schema-valid, but it goes against the
intention of the spec and Word can't open it.
The initial fix was just a writerfilter/ tweak to avoid grab-bagging
<w:id> for inline <w:sdt>, but CppunitTest_sw_ooxmlexport4's
testSimpleSdts points out that in other cases we already require
preserving <w:id>. Fix the problem by storing <w:id> in the content
control, which is essentially a subset of
<https://gerrit.libreoffice.org/c/core/+/142818>.
Thanks to Justin Luth! - he prototyped the DOCX filter for <w:id>.
Change-Id: I9f002b770049ce8be30253d0b39410d9a58981dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143117
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: Iae2158ff4de0cab4307379c48011d5b6ca844b13
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142821
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: Ic80c0753b600ff6e846f2f38a1c46cb67763e2fc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142820
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: I98e862c4c1124b1db8eb3e0ea7ff96effd629185
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142721
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: I9be3df3a4c00e7f1bbfc4f2462c8cf9a0f813f9d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142656
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
(*) ignore temporary fields in lambdas
(*) don't ignore the vcl/weld stuff anymore
Change-Id: I4cda18f779588409891a2b2f8b1371e60f9b9ac0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143090
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
... frame in the structure tree.
The problem is that in sw, the anchored objects are painted
outside of the call to paint the page frame, which is what generates the
/Document structure element.
For Writer fly frames, this is handled via their SwFlyDrawObj painting,
where SwTaggedPDFHelper::CheckReopenTag() finds the anchor frame and
temporarily sets it as the structure parent, even if it's on a previous
page.
But all the SdrObjects on a page are painted by 2 calls to PaintLayer()
and there isn't a call back into Writer now.
Somehow this even causes a spurious line like "/Document<</MCID 7>>BDC"
to be emitted outside any PDF object, which looks clearly wrong.
Try to extend the SdrObjUserCall to get a way to retrieve the anchor
frame's structure element index.
Another option would be to extend ViewObjectContactRedirector to return
the PDF Id in its subclass SwViewObjectContactRedirector, and it seems
possible since its only one caller is
ViewObjectContact::getPrimitive2DSequence(), but Armin adivses that the
ViewObjectContactRedirector might go away in the future so it's better
to use SdrObjUserCall.
It's annoying that the mapping is a static members of
SwEnhancedPDFExportHelper; possibly it could be in OutputDevice's
PDFExtOutDevData instead?
Change-Id: Id61faae469aba4f0bd278ab2324aae06c1fdde64
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143027
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
Move the code that already exists in sd class ImplRenderPaintProc
to ViewObjectContact::getPrimitive2DSequence(), where it is used by all
applications, and take into account the caching there, which matters for
performance.
Change-Id: Iabc00b7c894f042673c7217199236a05a5d67959
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142901
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
Using createTextRangeByPixelPosition() with a pixel position that leads
to a graphic node resulted in a crash.
The direct reason for this is that the makeMark() call in
SwXTextRange::SetPositions() returns nullptr in case rPaM points to a
graphic node, but later we dereference that result unconditionally. This
also uncovers that the XTextRange returned by
createTextRangeByPixelPosition() is meant to point to a text node, but a
pixel position may be closest to a graphic node.
Fix the problem by explicitly checking for graphic nodes; and try to
look up the anchor position of such graphics, which will be definitely a
text node.
In practice this will mean that in case the image's anchor type is
as-char, then we'll return a cursor position which will be on the left
hand side of the image.
Change-Id: Ief58148247fe3cd4371ed245b4eff5b45ca2aa15
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143092
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
If a user aborts the selection of a concordance file, use the previously selected one, if it exists.
Change-Id: I55547ca98034269e897d6bc86ccc4dcfd63be9fd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142997
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
|
|
Regression from commit f726fbc2699b05199a8dec3055710a7131e0aad6
(tdf#151261 DOCX import: fix dropdown SDT when the item display text is
missing, 2022-10-10), the problem was that the correct way to represent
"no display value" is not an attribute with empty value but a missing
attribute.
Change-Id: I25b2bb564444f43d1ca1bf95d1c59b208cb24530
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143048
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: Idaf9742358bcd485d6ac96593844b05bf0972fa7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143014
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I4fadd8781881dffb9f012da29e241b8d189eff85
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143053
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|