Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: Iedb1229b56b5e7f1af1779b830cf324bcc8735e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87864
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
This is the unit test for commit
5cee586a97a11c23dd252accc42099bd5e9b4187 ("sw: fix moving of
at-page anchored flys to different page"). Originally the error
was just triggered by toggling "View -> Field Names". Luckily
it's also triggered by adding some text to page four, so no need
for some UI test.
Change-Id: I3a63b50dd898788607c3d24a848d8f43ae966377
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87776
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 5fed8bb5f6f65963fed27f96de3be14dff830d38)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87847
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1423r3.html> "char8_t
backward compatibility remediation", as implemented now by <https://gcc.gnu.org/
git/?p=gcc.git;a=commit;h=0c5b35933e5b150df0ab487efb2f11ef5685f713> "libstdc++:
P1423R3 char8_t remediation (2/4)" for -std=c++2a, deletes operator << overloads
that would print an integer rather than a (presumably expected) character.
But for simplicity (and to avoid issues with non-printing characters), keep
printing an integer here.
Change-Id: I751b99ee32d418eb488131ffa130d6f7d6d38dc7
Reviewed-on: https://gerrit.libreoffice.org/84348
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
(cherry picked from commit 5d8f0fad50f90195a11873c70ddab4644f5839ea)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87760
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Ica8942e6f165afad1ed40457ec86bd20713a1a59
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87744
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
(cherry picked from commit 029d1e92945eb6ac8cd31911f35bed92a4201897)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87747
|
|
Change-Id: Idbb3e70c1a09be7dd7c43747250f3a6368251cd9
Reviewed-on: https://gerrit.libreoffice.org/82662
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
(cherry picked from commit 77cc0e929ee331af6b97b65e9b6ec5400ef05cd4)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87733
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1423r3.html> "char8_t
backward compatibility remediation", as implemented now by <https://gcc.gnu.org/
git/?p=gcc.git;a=commit;h=0c5b35933e5b150df0ab487efb2f11ef5685f713> "libstdc++:
P1423R3 char8_t remediation (2/4)" for -std=c++2a, deletes operator << overloads
that would print an integer rather than a (presumably expected) character.
But in these cases printing an integer is as expected, so add explicit casts.
Change-Id: I7c2f1afaa2982b284aef8af183b71466c37142c2
Reviewed-on: https://gerrit.libreoffice.org/84339
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
(cherry picked from commit e8cb5f2e11838060f85e7940540b5f7096d9eeb7)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87745
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Since tdf#121441 we parse custom footnotes to get at least the
DOCX footnote text, even if we can't represent the formating. This
might push additional contexts to the parser stack. Therefore it's
now not sufficient to check the current context for a footnote,
but one has to check the global parser for a footnote context.
The actual bug is the unsupported footnote page break, which was
not correctly ignored and added a paragraph context to the stack,
resulting in the async substream input and output stack size.
Change-Id: I143254e7df37a619cb4efb542b58d3eff3afffa7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87114
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
(cherry picked from commit b87af9775167002d36a3bc16cb308ea7895d7ea0)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87742
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
This patch is for Writer Navigator only.
Change-Id: I80724a3e24fd38d7b5537e1c923866a914b45898
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87668
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
(cherry picked from commit 000ba228db56c28b6e2a42bf6adefe6ca6cfdffb)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87669
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
... as-char anchor types
SwWrtShell::InsertPostIt() only sets the comment anchor for those types,
and we would crash without an anchor.
(cherry picked from commit d05a65bec5dc498f66f9331189124d539bc0d505)
Conflicts:
sw/Module_sw.mk
Change-Id: I7d2f5d3d8f8e11c46db060c17587e97ecb786ad2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87586
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
Obviously the real error is somewhere else, which results in tdf#126435,
and produces unexpected state with missing text append context on stack.
This is just a hack to avoid crash.
Change-Id: I420ac3b74f5efb9688dc764ac2ad0dcc974ba0e1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87595
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit eca00082c78fddf79f247057227404738be8806c)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87634
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
Assuming the test actually meant to use these vars
Comes from
commit b203b9c83d0000c8465dcd92fb6b029a2f28c724
Date: Fri Dec 13 07:23:35 2019 +0800
tdf#128304 export TB_RL writing mode as eaVirt
Change-Id: I0649f189019ea764e7ed554dac43932b717eed2c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87535
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
(cherry picked from commit 44a520fe7ffd8bca45babdf325ec307c30c1a006)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87585
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
We used to always always set TextAutoGrowHeight to true, only do that
when the matching VML attribute is detected, default to false.
This helps the exporter, so it writes the correct markup on save of the
bugdoc.
Also adapt testGroupshapeChildRotation, which in practice tested the
automatic height of the shape. The point of "auto" is that it changes as
needed, hardcoding that value in a test is not a great idea. Rather test
that the height is no longer automatic (there is no explicit markup in
the file, and the default is false).
(cherry picked from commit b92293b3943423324064a8513c2e114d18817179)
Conflicts:
sw/qa/extras/ooxmlimport/ooxmlimport.cxx
Change-Id: Ie39408b7da53f4923a2ade503e520c704a86bcf4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87120
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
Fixes crash/freeze when an entry without children is sent
is to SwContentTree::Expand. It forwards to SvTreeListBox::Expand deal
with it.
Change-Id: Icd3cd1b2d0a949e01a3e02a6fa4cdc08610c8ffb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87307
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
(cherry picked from commit a46e768810e82abaf98e5cef02c697c718877974)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87504
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
Tested-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
Change-Id: I389d05fa9b1e79af2c01abd920fb4454b96543fb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87282
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
(cherry picked from commit e13f74ba563e1c82a1de587818f6090077c6f30f)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87303
|
|
A missing update of nOffset in SwScriptInfo::InitScriptInfo(); it must
be updated for every extent but it's not for the last one in a node.
test case:
ab
cd
Delete "bc", hide "d", but "a" disappears.
(regression from 0e26d48ad7f18deac8447a306215f79d5c62be27)
Change-Id: I99fb88409e184a61866f908722b4430a53914153
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87201
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 53cd5d1f50d3da4efe0938aa340f6a57a0b8501d)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87246
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Empty style names for drawing object will cause problems with
udo/redo which right now refers style names instead of style
pointers.
Change-Id: If2266f1db04c624dbfdd716b5599d5f6cbb5371e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86520
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
(cherry picked from commit db8fdf20fbbb22e0510f0500140bbf7a3b2642f7)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87214
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
SwXDrawPage is inserting frame styles without name. This is confusing
undo/redo code which is operating styles by names.
Change-Id: Ibcda01fbd3ec88e9cdbde446c3f18c7ad6b0cbc8
Reviewed-on: https://gerrit.libreoffice.org/83415
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
(cherry picked from commit c2d689790c332ffd2f0d73de6aae53f26f0fbe53)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87206
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
The problem is that the exception for writerfilter in
IsDestroyFrameAnchoredAtChar() and IsSelectFrameAnchoredAtPara() is
wrong in the case when the header/footer content is copied via
SwXText::copyText(); that is, previously the situation was that
writerfilter relied on Delete not deleting such flys (for
RemoveLastParagraph) but Copy copying them.
(regression from 28b77c89dfcafae82cf2a6d85731b643ff9290e5
and e75dd1fc992f168f24d66595265a978071cdd277)
So restrict the writerfilter hack to delete; this causes a problem with
ooxmlexport9 test testTdf100075: it has 2 flys anchored at the
same paragraph; writerfilter will insert the content into the body and
then convert to fly; when the 2nd one is converted it will copy the 1st
fly and anchor it inside the 2nd fly but then unotext.cxx:1719 will
reset its anchor to inside the body...
Prevent this unwanted copy by relying on the new parameter bCopyText
that was introduced in 04b2310aaa094794ceedaa1bb6ff1823a2d29d3e,
but change things a bit so that the case that pass in the extra flag
isn't the copyText() one that wants the *normal* selection semantics in
writerfilter import, but the 2 known places that want the *exceptional*
selection semantics in writerfilter import (hopefully there aren't more).
This is not ideal and the various bool parameters to CopyRange() plus
mbCopyIsMove plus mbIsRedlineMove should probably be consolidated
into some flags enum passed to CopyRange().
Change-Id: I638c7fa7ad0b4ec149aa6a1485e32f2c8e29ff5a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87072
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 81ec0039b2085faab49380c7a56af0c562d4c9e4)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87095
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
This is really similar to commit
04b2310aaa094794ceedaa1bb6ff1823a2d29d3e (DOCX import: fix lost objects
anchored to the single para of a linked header, 2020-01-10), except here
the header is not just a single-paragraph one, but has no text portions.
Update text-copy.docx to have a header which is not only a single
paragraph, but also has no character content. This keeps testing the
original case, but now also tests the more strict case (single paragraph
-> single empty paragraph).
Change-Id: I11bb062e77af1a83f717225ea5b4daef39e5a672
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86552
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
(cherry picked from commit c12358166a9bd88fe10feabca45a6ad3f65dff8e)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87123
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
Regression from commit 08f13ab85b5c65b5dc8adfa15918fb3e426fcc3c
(tdf#112202 writerfilter,sw: fix loss of headers, 2019-12-16), the
problem is that on one hand, copyText() is meant to copy a complete
XText (header, table cell, footnote, etc), OTOH the internal API use
used only copies at-para anchored objects for complete text nodes, so a
one-paragraph header will loose its anchored objects when a linked
header is copied.
Introduce a new "CopyText" flag that provides the expected copyText()
behavior and use that when the copyText() UNO API is invoked, but leave
the selection behavior unchanged.
Perform the inclusive check in IsSelectFrameAnchoredAtPara(), opt in for
that from SwXText::copyText(), the rest is just passing the flag around.
Change-Id: Id727f7ca4f6121a7050340359716a52ecb4886f2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86529
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
(cherry picked from commit 04b2310aaa094794ceedaa1bb6ff1823a2d29d3e)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87122
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
... exported to RTF and re-imported:
soffice.bin: sw/source/core/txtnode/thints.cxx:1295: bool SwTextNode::InsertHint(SwTextAttr*, SetAttrMode): Assertion `!pAttr->GetEnd() || (*pAttr->GetEnd() <= Len())' failed.
The problem is that the text of a HandledTextToken is all whitespace and
a hint from 0 to 1 is inserted because mNewPositions.back() is
erroneously 1, no idea why it was doing that.
(regression from e5345f62bf525b6258736f1ce11a61b5e638e0ff)
Change-Id: I6ec290abe50c0f65a3244f0f0bb07e19741e878b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86996
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit ae56432d7e34529cd5ad391f074737d3f5adf137)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87057
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Bottom border of a vertically merged column of a table was missing
if the inside borders were turned off and the merge included the
last cell of the column. This happened because the first cell
(topmost) in a set of vertically merged cells determines the borders
of the new merged cell, and the turned off inside borders were at
the bottom in this case.
Change-Id: I3d3defad18a1315117a554a36ad599eb46daffe9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85988
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
(cherry picked from commit 0f4dd820ee433932d9d9237b676292d31c4ba913)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86430
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
(VML) and layoutInCell (DrawingML) attributes to fix
regressions caused by commit 10f29d8bf05d44ca8bc11d34d1294ec17f8ac0f1
(tdf#87569 tdf#109411 DOCX import: fix shape anchor in tables).
Position of shapes anchored to tables is calculated from
the cell margin only if the previous attributes allow that.
Change-Id: Ifcfcb7f4959aea522dd45dff00cefd1bb9f4edda
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86922
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
Signed-off-by: xisco <xiscofauli@libreoffice.org>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86980
Reviewed-by: Attila Bakos <bakos.attilakaroly@nisz.hu>
|
|
and import eaVirt to TextWritingMode instead of TextPreRotateAngle
(-90) degree of CustomShapeGeometry. CJK text in TB_RL writing mode
are upright in Writer. It corresponds to eaVirt by its defintion.
Change-Id: I2a8bc6676ad6af06b06e023adaa2f201a028d426
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86637
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Signed-off-by: xisco <xiscofauli@libreoffice.org>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86960
|
|
Sync the text writing mode of a shape to the frame
direction of the attached text box ( a text frame ).
Change-Id: Ied9ff1a1d0f53d7ef78a83a086af0a2c1ca5eb36
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86638
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Signed-off-by: xisco <xiscofauli@libreoffice.org>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86961
|
|
Change-Id: I09b1e9fe53315974864c8d6947c7cb861f069a68
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86953
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
(cherry picked from commit c5747c64d3134ec6d8b6ab6fdc938639157fca09)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86978
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: If586a7a11e375c1592253630af87772bca40b52e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86542
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
(cherry picked from commit 9476dfe7d1b86b367966e7dedf67e11936c8d9d7)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86895
Reviewed-by: Serge Krot (CIB) <Serge.Krot@cib.de>
|
|
Regression after commit 1e2682235cded9a7cd90e55f0bfc60a1285e9a46
Change-Id: I40acc9e0ffdd292283381366a31eb6647b80324f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86291
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 4056b70e6339102374898fff26f099da455475b1)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86329
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
Change-Id: I70235df7fb73133f413863ee5eb7c76905a60248
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86767
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
(cherry picked from commit 264d27c94d7286a407b05a32f4097ac9d543e1a3)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86896
Reviewed-by: Serge Krot (CIB) <Serge.Krot@cib.de>
|
|
The problem is that the hyperlink that starts at the start of the first
paragraph of the ToX content is written to RTF before the TOC field
itself, so the hyperlink contains the entire ToX:
{{\field{\*\fldinst HYPERLINK "#__RefHeading___Toc250984071" }{\fldrslt {\rtlch\langfe1024 \ltrch\lang1024\loch
{\field{\*\fldinst { TOC \\o "1-3" \\h \\z }}{\fldrslt {1.India\tab 1}}}}
This is because the HYPERLINK is written into m_aRun but the TOC into
m_aRunText.
Interestingly StartRun() asserts that m_aRunText should be empty, so we
don't try to change StartURL() to write the HYPERLINK into m_aRunText.
The only function that moves text from m_aRunText to m_aRun is
EndRun(), so wrap the TOC field in StartRun()/EndRun().
This breaks the export of the ToX to DOCX because a mysterious SDT is
no longer written around the field but only the field result, so only do
this for RTF.
Change-Id: I22e45c4a9c9ce6edb2b9114b4a29b2a373ec3284
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86860
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 05d833a26208404e5f2b3d61298a57c9bcc7c1fe)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86872
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Embedded graphic objects had got 0 values for vertical and horizontal
positioning before, resulting overlapping, hidden charts,
but now they are positioned according to the values in the document.
Change-Id: Ia5403ac65ff7192d61072e8a9d8a7f80c7178b9b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86521
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
(cherry picked from commit d9c535ead688e9f156dbcf43948df08a69e218be)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86536
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: Iaac2a1065c0c1c28e56db8a121cb28453e27d529
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86497
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
(cherry picked from commit 43d8dc34d74832e928c2cc215e9bf512f4edf3b3)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86504
|
|
If a table style HAS defined a page-break
or keep-with-next-paragraph, then apply it when
applying the style. But if the format just has a default
non-break/non-keep attribute, then don't apply that.
Kinda seems artificial/arbitrary, but it looks difficult
to change the break/keep property to be an optional component.
If it was optional, then it would be fine to take a
defined non-break and apply it, but since it is a
mandatory value, just ignore the default state.
Yes, this means that applying one style can introduce a
break/keep, but applying a different style cannot
remove it. None of the build-in styles has either of
these properties set. Since there is no way to identify
direct formatting, assuming the user intentionally
set these is the better policy by far...
I didn't do the same thing with shadow/collapsing borders
etc. Those seem more like table style properties than these
two flow items.
I still couldn't get the unit test to work.
I got access to the created document by removing
EnableKillingFile from swmodelbase, and from that I can see
that the autoformat is not affecting the table with
RestoreTableProperties.
I assume the Break is overwritten during the table creation
process because I can see the background being applied
in that case, but still no Break.
Change-Id: Ia2a4ff8a19158b1ea5d74ec3a21c688c53d66724
Reviewed-on: https://gerrit.libreoffice.org/83879
Tested-by: Jenkins
Reviewed-by: Justin Luth <justin_luth@sil.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit 43f983d08d66520536980339f33ef44d5eec35f6)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85838
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
Since new undo/redo code operates style names instead of pointers,
it is important to have all formats with name.
Change-Id: Ib91cd13b8a324ae674e9ace9bb5f17e679bd2dab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86162
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
(cherry picked from commit c79dcf98d662e76b1290f8d43c927d1031e94729)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86399
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
Tested-by: Jenkins
|
|
ToC, bibliography, and index sections import code changed to closely
follow what Word does, make sure that pre-rendered entries don't get
imported as standalone paragraphs outside of the index sections, and
paragraph count is accurate (no missing or added paragraphs as much
as possible).
In Word, an index may start and end in the middle of a paragraph:
<w:p>
<w:r>
<w:t>Some text before index</w:t>
</w:r>
<w:r>
<w:fldChar w:fldCharType="begin"/>
</w:r>
<w:r>
<w:instrText> TOC ...</w:instrText>
</w:r>
<w:r>
<w:fldChar w:fldCharType="separate"/>
</w:r>
<w:r>
<w:t>First pre-rendered index entry</w:t>
</w:r>
</w:p>
...
<w:p>
<w:r>
<w:t>Last pre-rendered index entry</w:t>
</w:r>
<w:r>
<w:fldChar w:fldCharType="end"/>
</w:r>
<w:r>
<w:t>Some text after index</w:t>
</w:r>
</w:p>
However, normally it looks like either no runs precedig index, or no
runs of pre-rendered contents will be present. When no Std elements
are used, the typical situation is that there's a normal paragraph
(possibly with some user text), which ends with index start marker,
without any pre-rendered contents in the same paragraph; and all pre-
rendered contents goes in following paragraphs. Such index normally
ends with index end marker in the *first* run of a paragraph, which
then might have normal text runs.
When Stds are used, then no leading/trailing out-of-index runs in
paragraphs with marks are usually present; and in this case, when
paragraphs with index marks don't contain pre-rendered entries, they
still are treated as part of the index.
In Writer, indexes are node sections (and so cannot be inline with
other paragraph contents). When there was some paragraph content
already before the start-of-index mark, the paragraph is assumed
to end before the index; in this case, when current <w:p> element
ends, importer decides if a separate starting paragraph is needed
or not, depending on if there was some runs after the mark. When
there was no text runs before the starting mark, then the paragraph
is treated as leading paragraph of the index. This allows to not
miss empty paragraphs before index; and not have two paragraphs
where there was one in Word. Only in cases when user had manually
typed text both in and outside of the index in the same paragraph
in Word, we would have the paragraph split into two in Writer.
For end marks, the behaviour depends on whether it's inside Std.
When inside, the ending paragraph starting with index end mark is
considered part of the index. For out-of-Std case, it's considered
normal paragraph (and measures are taken to make sure it's not
dropped even if empty, because sometimes such paragraphs don't
have other content, and have section settings, which is usually
treated by Writer as "drop this paragraph" sign).
A special problem is multi-column index. It's wrapped into a
continuous section by Word; and in Writer, we also wrap it into
a section. It would be possibly useful to detect somehow if this
section is part of index definition, and in this case, drop the
section and put its properties into the Writer's index section.
That would avoid an explicit section in the imported document.
This is TODO, for someone who figures how to detect reliably if
the section belongs to index definition. See comment in
DomainMapper_Impl::appendTextSectionAfter. By the way, current
export code is wrong, producing an index that is single-column
in Word; this change doesn't touch that.
Several existing tests needed to be fixed, which used to test
wrong results.
Reviewed-on: https://gerrit.libreoffice.org/85089
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 5cdb14345842c07eb1a466897753da910e9488f8)
Change-Id: I9597c8ab13f31ded9abcc24054d3478d3e3a3b40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85289
Tested-by: Jenkins
Reviewed-by: Andras Timar <andras.timar@collabora.com>
|
|
... except for processing enough to observe the separator exists.
For each footnote reference, the entire footnote.xml file is
parsed every time. The text in the "separator" footnote was
being added to every footnote. The normal case where this is just
a single paragraph was already handled, but this patch generalizes
everything to handle cases of actual text or multiple paragraphs.
Not every footnote has a type, so we can't depend on that to turn
ignoringText ON/OFF. Every footnote has an ID, but theoretically
the ID could be processed before or after the type, and it has
no idea which type it is. Finally, the skipped text has no idea
how many times/paragaphs it needs to skip. So a three-way
control was needed to handle on/used/off. As a safeguard, finishing
the footnote.xml parse (PopFootOrEndnote) ensures that
ignoring won't be left on in the unlikely case that
the separator is the last footnote.
Change-Id: Ia30ca8d3a36417a4691e3b2e1c978720be017030
Reviewed-on: https://gerrit.libreoffice.org/82172
Tested-by: Jenkins
Reviewed-by: Justin Luth <justin_luth@sil.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit acb9d901009d026cb48e6a8b94e6200f05110504)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85734
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
Bottom border was missing in a 1-row table with disabled
inside borders. This happened because LO applied the empty
horizontal borders to the bottom border of the table.
Change-Id: I40140bf63297189edad13088f98fc5f869969c2d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85303
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
(cherry picked from commit 6b1bd2699b0bdad6dc42db741dea0717cf7c1d36)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86397
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
It was introduced in commit 2499397cb39330dabeb8b7b3e0d7eb6213a0d8f4
"avoid sending duplicated paragraph flags", and supposedly was meant
to avoid having duplicating sprms in the collected properties, when
new properties were pushed back at that time. Using specific sprm id
was likely a mistake (nParam should have been used instead).
Now the new sprm is added using RTFSprms::set with eOverwrite having
default value of RTFOverwrite::YES, which takes care to avoid dupes,
so the call to erase is redundant.
This reverts commit 2499397cb39330dabeb8b7b3e0d7eb6213a0d8f4.
Change-Id: Ied19f6feb41bd17ef317812d4d295ca0542a5843
Reviewed-on: https://gerrit.libreoffice.org/85602
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 989043b0644354b92fd17e4194897c2eb0935031)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85742
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
... which were accidentally broken in 2003 in commit
eba784710e92597282a2284b56dce3a45ac38776.
Change-Id: I3dc96dff0a8935f927933bb3946528fb8ac9aed0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86315
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86330
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
Right border was missing in a 1-column table with disabled
inside borders. This happened because LO applied the empty
vertical borders to the right border of the table.
Change-Id: Ib190689bf5059bfd7dbf07b07808cd761015f37e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85301
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
(cherry picked from commit 8a2eb40abbd52d960dd21308157186be0ca9dd3d)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86261
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
GetActiveWrtShell may return nullptr when attaching a new component
to current frame, e.g. destroying on print preview. OTOH SwWrtShell
is passed to SwFieldDBPage::SetWrtShell on creation, so store it to
own base class then.
Possibly that would be enough, and we could remove all the checks
in other methods - but I don't know the code well enough to be sure
that SwFieldDlg::PageCreated and SwFieldEditDlg::CreatePage will
always set SwWrtShell; to be on the safe side, I kept the checks
where SwWrtShell is used, and stored it in those places if not yet
stored.
Regression after commit 39ba5e3bde93358af1b363da8f850bdc96806cfa.
Change-Id: I21f3c8ef24764e98b1bc287db3c6485ce0b3ab48
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86253
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 016c69c99e1ab26e6582ca8dea6fa1b4b9e5d109)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86260
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Regression from commit: 75ef0e41ea8a9096ac619356d2b837c5333b47e6
(tdf#125334 Chart: allow text break in bar chart axis labels)
Change-Id: Ib935de74314b7dec489d94a4aa3c65072e18d9e0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86010
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
(cherry picked from commit d53de6b0bfff08dfbde4fe305e2a9b7a60255458)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86259
Reviewed-by: Balazs Varga <balazs.varga991@gmail.com>
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
Change-Id: I160e4b15e3c636be0e23dd5bbb2da62dfa6a42ef
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/82169
Tested-by: Jenkins
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
(cherry picked from commit a50a2bf8e8c6084aeacb8d2db42e21f528410742)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86345
Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
|
|
Change-Id: I0629b4e6ccae4ab9be0142fe39c627f2f9a8f5ea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86199
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
(cherry picked from commit 92ccf53b2a8102299ac2c3e2612bb507d3a79c0f)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86278
|
|
Change-Id: I70b14ad8d96a2564c06a47608e5cf2c438cf7d38
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86265
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
Regression after commit 64233bbaa0e91ddf14d59ae7547df6bbfa60adcc.
editenglo.dll!std::unique_ptr<EditView,std::default_delete<EditView>>::operator*()
at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include\memory(1886)
editenglo.dll!OutlinerView::GetEditView()
at C:\lo\src\core\include\editeng\outliner.hxx(208)
sdlo.dll!sd::DrawViewShell::GetAttrState(SfxItemSet & rSet)
at C:\lo\src\core\sd\source\ui\view\drviewsf.cxx(514)
sdlo.dll!SfxStubGraphicViewShellGetAttrState(SfxShell * pShell, SfxItemSet & rSet)
at C:\lo\src\core\workdir\SdiTarget\sd\sdi\sdgslots.hxx(1524)
sfxlo.dll!SfxShell::CallState(void(*)(SfxShell *, SfxItemSet &) pFunc, SfxItemSet & rSet)
at C:\lo\src\core\include\sfx2\shell.hxx(199)
sfxlo.dll!SfxDispatcher::FillState_(const SfxSlotServer & rSvr, SfxItemSet & rState, const SfxSlot * pRealSlot)
at C:\lo\src\core\sfx2\source\control\dispatch.cxx(1672)
sfxlo.dll!SfxBindings::Update_Impl(SfxStateCache & rCache)
at C:\lo\src\core\sfx2\source\control\bindings.cxx(270)
sfxlo.dll!SfxBindings::NextJob_Impl(const Timer * pTimer)
at C:\lo\src\core\sfx2\source\control\bindings.cxx(1285)
sfxlo.dll!SfxBindings::NextJob(Timer * pTimer)
at C:\lo\src\core\sfx2\source\control\bindings.cxx(1230)
sfxlo.dll!SfxBindings::LinkStubNextJob(void * instance, Timer * data)
at C:\lo\src\core\sfx2\source\control\bindings.cxx(1227)
vcllo.dll!Link<Timer *,void>::Call(Timer * data)
at C:\lo\src\core\include\tools\link.hxx(111)
vcllo.dll!Timer::Invoke()
at C:\lo\src\core\vcl\source\app\timer.cxx(76)
vcllo.dll!Scheduler::ProcessTaskScheduling()
at C:\lo\src\core\vcl\source\app\scheduler.cxx(478)
vcllo.dll!Scheduler::CallbackTaskScheduling()
at C:\lo\src\core\vcl\source\app\scheduler.cxx(288)
vcllo.dll!SalTimer::CallCallback()
at C:\lo\src\core\vcl\inc\saltimer.hxx(55)
vclplug_winlo.dll!WinSalTimer::ImplHandleElapsedTimer()
at C:\lo\src\core\vcl\win\app\saltimer.cxx(164)
vclplug_winlo.dll!WinSalTimer::ImplHandleTimerEvent(unsigned __int64 aWPARAM)
at C:\lo\src\core\vcl\win\app\saltimer.cxx(174)
vclplug_winlo.dll!SalComWndProc(HWND__ * __formal, unsigned int nMsg, unsigned __int64 wParam, __int64 lParam, bool & rDef)
at C:\lo\src\core\vcl\win\app\salinst.cxx(626)
vclplug_winlo.dll!SalComWndProcW(HWND__ * hWnd, unsigned int nMsg, unsigned __int64 wParam, __int64 lParam)
at C:\lo\src\core\vcl\win\app\salinst.cxx(658)
user32.dll!UserCallWinProcCheckWow()
user32.dll!DispatchMessageWorker()
vclplug_winlo.dll!ImplSalDispatchMessage(const tagMSG * pMsg)
at C:\lo\src\core\vcl\win\app\salinst.cxx(420)
vclplug_winlo.dll!ImplSalYield(bool bWait, bool bHandleAllCurrentEvents)
at C:\lo\src\core\vcl\win\app\salinst.cxx(493)
vclplug_winlo.dll!WinSalInstance::DoYield(bool bWait, bool bHandleAllCurrentEvents)
at C:\lo\src\core\vcl\win\app\salinst.cxx(522)
vcllo.dll!ImplYield(bool i_bWait, bool i_bAllEvents)
at C:\lo\src\core\vcl\source\app\svapp.cxx(446)
vcllo.dll!Application::Yield()
at C:\lo\src\core\vcl\source\app\svapp.cxx(511)
vcllo.dll!Application::Execute()
at C:\lo\src\core\vcl\source\app\svapp.cxx(427)
sofficeapp.dll!desktop::Desktop::Main()
at C:\lo\src\core\desktop\source\app\app.cxx(1609)
vcllo.dll!ImplSVMain()
at C:\lo\src\core\vcl\source\app\svmain.cxx(191)
vcllo.dll!SVMain()
at C:\lo\src\core\vcl\source\app\svmain.cxx(226)
sofficeapp.dll!soffice_main()
at C:\lo\src\core\desktop\source\app\sofficemain.cxx(171)
soffice.bin!sal_main()
at C:\lo\src\core\desktop\source\app\main.c(48)
soffice.bin!main(int argc, char * * argv)
at C:\lo\src\core\desktop\source\app\main.c(47)
soffice.bin!invoke_main()
at d:\agent\_work\5\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl(79)
soffice.bin!__scrt_common_main_seh()
at d:\agent\_work\5\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl(288)
soffice.bin!__scrt_common_main()
at d:\agent\_work\5\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl(331)
soffice.bin!mainCRTStartup()
at d:\agent\_work\5\s\src\vctools\crt\vcstartup\src\startup\exe_main.cpp(17)
kernel32.dll!BaseThreadInitThunk()
ntdll.dll!RtlUserThreadStart()
Change-Id: Ia9ba183bc1be2f22082ac3833e57435dd8462adf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86097
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit e590d1ab4a3f605141d653b575d645453dba57c9)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86101
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
in automatic sentence capitalization (except in Greek texts),
to keep the requested lower case scientific and mathematical symbols.
Change-Id: I0c658bb69fb90e7159665939f85f1fd99477c730
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85955
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
(cherry picked from commit 04ef45a6dd7692c6ee08769c4ac4a0e92a0b64b8)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86042
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
instead of using the bad ’" -> ’» autocorrection.
Change-Id: I48adbb2e8ca8e786c7835ff186d4580e856cf3c7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85945
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
(cherry picked from commit 8039c9eb27170a162830f0ecd2086010a7a5858f)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85951
|
|
The document has a paragraph with 4 as-character anchored flys depicting
Zirbenholz; due to their size and an additional fly that is anchored at
the paragraph, there are 3 lines that do not fit onto a single page.
This situation causes a loop that proceeds like this:
text frame 80 is the follow of text frame 21.
when formatting 80:
the 1 line violates the widow rule (>=2) and PREP_WIDOWS is sent to
21, invalidating its FrameAreaSize
80 validates its FrameAreaSize
when formatting 21:
PREP_WIDOWS_ORPHANS sent to 21
CalcPreps() sees IsPrepWidows() and sets a huge height and calls
SetWidow(true)
SwTextFrame::WouldFit() sees IsWidow() true and resets it false
SwTextFrame::WouldFit() sees IsWidow() false and a huge but
insufficiently huge height
21 validates its FrameAreaSize
CalcPreps() sees IsPrepAdjust()
FindBreak() calls TruncLines() and because of as-char fly
invalidates FrameAreaSize of 80
The loop is most easily reproduced by printing via the API; it's
possible to get a loop when loading the document in the UI, but
typically the UI remains responsive even though the layout never
finishes.
As it happens, before commit ee299664940139f6f9543592ece3b3c0210b59f4
"SalInstance::DoYield: Don't drop SolarMutex when accessing user event
queue" the loop on printing via API was broken by releasing SolarMutex;
the result, however, was incorrect, with the last line of Zirbenholz
that should be on the second page missing in the PDF.
This loop is presumably a regression from commit
f2e3655255db4032738849cd4b77ce67a6e2c984 "Avoid
-fsanitize=signed-integer-overflow", which changed a magic number in
SwTextFrame::CalcPreps(), but didn't adapt the poorly documented
corresponding magic numbers in SwTextFrame::WouldFit(); in LO 5.1.6.2
the CPU is idle after loading the document.
Change-Id: Ib6563c21edb68945c14a61b51ba34f0ee3f2544a
Reviewed-on: https://gerrit.libreoffice.org/85623
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
(cherry picked from commit 68a5afaaabd0c75bba3439cfdff90fb75d1cdd3f)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85746
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Now single or double typographical quotation marks don't
break automatic correction of the quoted words.
For example, ‘acn -> ‘can, acn’ -> can’, “acn” -> “can”.
Change-Id: I7f895414be4c3bbc9a3914df83d93cf28b4311a3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85812
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
(cherry picked from commit 0d52da4637b563c175cd21d04a639160441436ef)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85930
Tested-by: Jenkins
|