Age | Commit message (Collapse) | Author |
|
(*) Make all of it use a "Scoped" paradigm
(*) pass by value, no need to allocate on heap
(*) make all of the construction go via the *Access constructors, instead of it being some via the constructors and some via the Acquire*Access methods.
(*) take the Bitmap& by const& in the constructor, so we can avoid doing const_cast in random places.
Change-Id: Ie03a9145c0965980ee8df9a89b8714a425e18f74
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160293
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Explain where this can appear, who owns it and where it can be found on
the UI.
Change-Id: I4096bc51ef03e50c65261e7356a4e593d1ba4c48
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160323
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
When the PageDesc is copied from one document to another, we
don't make sure the stashed FrameFormat(s) are also properly
copied to the new document (which can happen at copy/paste). This
can cause a crash if the stashed FrameFormats are accessed or
destructed after the original document is destroyed.
This fixes the issue so that when we detect the PageDesc belong
to different documents, the stashed FrameFormats are copied just
like the non-stashed FrameFormats (used for headers and footers).
Change-Id: I948068dba4d39bb47c3725dfa8491c53c5833c7e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160065
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Who owns it, where is the UI, which contain can have this.
Change-Id: I78bf968f2f887131fe49e5ca56b9a86a2539adc6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160004
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I88b082dc61c05761fd162ea4cf1d30940c2dfccd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159941
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
The main problem is that in SwUndoSaveContent::DelContentIndex() if the
selection start/end is equal to the bookmark start/end, the bookmark is
not deleted and no SwHistoryBookmark is created, hence on Undo the
bookmark positions are not restored.
Since deleting bookmarks in more situations might cause user complaints,
let's just extend the creation of SwHistoryBookmark to these cases,
which means we need to take care both here and in
SwHistoryBookmark::SetInDoc() that there is now a situation where all
bookmark positions are saved and restored but the bookmark still exists
in the document because it wasn't deleted.
The next problem is that using Backspace/Delete keys sets the
ArtificialSelection flag which is stored in SwUndoDelete, but when used
multiple times the SwUndoDelete::CanGrouping() extends an existing
SwUndoDelete, and if it previously would not delete a bookmark, the
extended range might fully contain the bookmark and thus delete it on
Redo, so check if there are saved bookmark positions and prevent
grouping in that case.
Another problem is then that SwUndoDelete::RedoImpl() deletes the
bookmark anyway, as already indicated with a FIXME comment.
This can be prevented by passing the now-existing m_DeleteFlags into
DelBookmarks() from DeleteRangeImplImpl().
Change-Id: Id5eb1a58927aaa6e7e8b75be82d7f854d8057cfc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159875
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
This exposes the internal property SwFormatWrapTextAtFlyStart on the UNO
API.
We need this, because otherwise the ODT filter can't read/write it.
Change-Id: I67d3c28e3531b19183f8361a6df87b7a4ca84294
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159888
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
For that, use the same logic as TryBoxNmToPtr
Regression from 0c008ab081aa5bbf53f8562e95e547deae5afc2e
"tdf#157132: restore behaviour for TBL_RELBOXNAME"
Change-Id: I8f93ad3a9686001fd6bd7226400925e43b81ec23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159865
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Currently the wrap-on-all pages mode is off by default and a
document-level setting can enable it for all split flys.
Allowing this at a per-frame level (and not only per-doc level) is
suggested in <https://issues.oasis-open.org/browse/OFFICE-4150>. Given
that this floating table proposal is coming from us, it makes sense to
also support this additional attribute from the proposal, even if it's
not supported by Word.
Fix this by adding a new SwFormatWrapTextAtFlyStart property on fly
frames: this is meant to be enabled when wrap-on-all-pages is wanted for
this fly, but it's disabled at a per-doc level.
Unlike SwFormatFlySplit, this is meant to be easy at a layout level,
since SwFlyAtContentFrame::IsWrapOnAllPages() is already a per-frame
function, it is just backed with a per-doc setting.
Change-Id: I8f562102c2bc366a36c08895b681c4a2ab256bd9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159847
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Where this can appear, size type, percent relations.
Change-Id: I7afddd033e8a8842c99dcb3d9604a2cb75ad6d92
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159743
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
The AutoCorrect "Apply" command calls SwAutoFormat::AutoCorrect
in sw/source/core/edit/autofmt.cxx, as mentioned in the bug
comments. This change just adds new cases for "/" (italic)
and "-" (strikethrough), so that when "Tools" -> "AutoCorrect"
-> "Apply" is invoked it changes any text between 2 "/"s or
2 "-"s (assuming your AutoCorrect options enable the setting
for this). The new code is just mostly copied from the case
statement above it (for bold and underline), and the only
additional changes that were needed were to add the comment
strings for the 2 new cases.
Change-Id: I02238690a40fd0113e3e9acbecf93ef5c34e0785
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154207
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
for Writer - AutoCaption Page.
Change-Id: Ia3c37510477542556c3302d2013fe10a4ae00545
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159594
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
|
|
Change-Id: I67c231441b56f05da001beab5b893bc6a6a6a392
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159704
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: Ia0162ee1c275292fcf200bad4662e4c2c6b7b972
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159557
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Word has an easy UI to turn floating tables into inline ones. Writer had
a similar button, but that had a few shortcomings:
1) It was only visible if a non-split frame was too large to fit the
page.
2) It was a separate VCL widget, so invisible to LOK clients.
3) It only worked for frames which had a single table in them.
Researching the problem, it's interesting how deleting a frame always
deletes its content as well, but e.g. deleting a section just removes
the container but leaves the content in the body text.
Fix the problem by adding a new menu item in the context menu that
always allows converting the frame to inline content at the anchor
point. This can share a bit of code with the old unfloat button.
The undo/redo still needs fixing, in a follow-up change.
Change-Id: I8ce05c9f958b08cb599fd5d2a27e770182f28cc7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159550
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: Icb7822e811013de648ccf2fbb23a5f0be9e29bb0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159489
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Revert
commit 8d18b5af883bb6b56e758801ee730a08bb88a8f5
Author: Noel Grandin <noel.grandin@collabora.co.uk>
Date: Tue Jun 13 10:11:08 2023 +0200
speed up rendering annotatins, cache meta height
Change-Id: Ib0bae3fd9020200d09c5b37baf5ae882c8532e58
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159496
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I1e125bbd388953491b3f869641484fea737d39ab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159423
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
What it does, it refers to what, who is the owner.
Change-Id: Ieb8a41ba6c47e5f24d43465f323b660cbf4afdeb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159394
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I4fe9342c28fc9135b73286e67464b16a1d910a9f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159217
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
|
|
Change-Id: I81739c24ae1174ff9f889490b8152dda7b61f328
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159171
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I9d839c22579e5bc5fe6250a8aab0285ca9e0a4c7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159170
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I95411fa20c38238d1ee74e8d73dd0a9553b9ad45
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159169
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I62471db74c30baf8bd42a3679624c767c68c66f0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159137
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Show missing linked graphics and their abbreviated paths,
(and as tooltips, full paths) in the accessibility checker.
Change-Id: Ia378f4ea3260251d1b2530fadc48aea6e0323a08
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159150
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
Change-Id: Iac208ec7d7bf0b03dd957bbe547e42822c5e4c90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159107
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
rather than casting
Change-Id: Ic134c30490fea7ae42bbf3194532ae0aad4c61c9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159057
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Return type of GetColumnFormat() is changed to sal_uInt32. All the
values from the function calls inside GetCloumnFormat() which were
involved in the return value seem to be positive right now.
Change-Id: Id19b2982d8372e10fee5fc0fd4233576076ec3df
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155680
Tested-by: Hossein <hossein@libreoffice.org>
Reviewed-by: Hossein <hossein@libreoffice.org>
|
|
There must be one Link SE per Link Annotation, so ensure that a new one
is created for a new line.
(regression from commit 4c5283a3a11008a06a995c49ed777734dc1f6066)
Change-Id: I2585d9e22a435d7716f48fec89a78149c129f71d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158775
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
The previous implementation of REFFLDFLAG_STYLE_HIDE_NON_NUMERICAL had
some major incompatibilites with Word. In particular, it stripped
letters even if they were included in the "numbering" system.
This commit fixes a lot of the flaws in the previous implementation, so
it's now a lot closer to Word.
Change-Id: Ifaa67fbc2d53b0d4fb85e7305b2dbdf78cf0a1ad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158451
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
STYLEREF fields were previously not importing with the correct content
when loading a docx document. This is because they were not updating
when the document had finished loading- only partway through, and where
a STYLEREF field is in relation to everything else in the document can
change its content.
This commit fixes that issue by adding STYLEREF fields to be refreshed
whenever other fields that can change based on pages (e.g. page number)
fields are updated. I suspect this could lead to double updates in some
cases where both reference and page fields are being updated. I consider
this a relatively minor issue in comparison to incorrect field content
when specific documents are loaded, but a followup could be made
improving this.
This commit also fixes a minor typo in reffld.cxx where m_sText is
always the filtered text when updating fields, even if we are updating
m_sTextRLHidden instead.
Change-Id: Iecd3e83a6bd3f8c2c6adba5c7eba9ee55b773510
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158450
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
This commit enables exporting the following STYLEREF flags with OOXML
- Search from bottom to top
- Hide non numerical
After this commit, the following steps have been implemented
- The document model (I7d8f455ffe90cface4f3b1acf6b9bef6a045ed19)
- The layout (I7d8f455ffe90cface4f3b1acf6b9bef6a045ed19)
- The UI (I7d8f455ffe90cface4f3b1acf6b9bef6a045ed19)
- UNO
- DOCX filter
Change-Id: Ib664fec059aa1f7f130acc76c253d5d298fa59f7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158350
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I0ea74d87f66554cedf1b1bff86e58bb3e78a3010
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158634
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
workdir/CxxObject/sw/source/core/access/accdoc.o:(.data.rel.ro+0x41c): multiple
definition of `typeinfo for sw::FrameFormats<sw::SpzFrameFormat*>';
workdir/CxxObject/sw/source/core/access/acccontext.o:(.data.rel.ro+0x1d8): first
defined here
Change-Id: I1ba9db69a73bd205a9a90cc11259abcadf62a082
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156737
Tested-by: Jenkins
Tested-by: René Engelhard <rene@debian.org>
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
Subsequent moves generated new MoveID's, like if they were separete moves.
That cause moves to forgot their other parts.
Now, if we move a redline that was moved by us it will re-use its moveID
as if it was just the continue of the previous movement.
It does not work if we move more then 1 of our own movement redlines
Note: There are complex cases what it cannot handle.. in those case it
just use the new ID, so the newly moved part, will forgot its relation
with the old move oroginal parts.
Complex case is like.. if we move 2 of our own move redlines,
that means there will be 2 MoveId we would want to continue, but only 1
insert redline to write that MoveID.
But as long as we moved only 1 of our redlines it will work, even if
there are more text redlines, even move redlines of other author.
Other move redlines will be separate move anyway.
Note2: In complex cases, we may could connect movements.
Or we could split the new inserted move part.
but those are design questions, they may be not good idea..
and the split one is probably more work to implement.
Change-Id: Icb2adf43272181c6a63a4a84750352f4b163383a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158473
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158615
Tested-by: Jenkins
|
|
When nodes are removed, SwPosition nNode is updated,
but its nContent is not.
If nNode change from a non-ContentNodo to a ContentNode, then it is
a problem, as nContent 's m_pContentNode remains nullptr, so the
Position seems to be inconsistent.
Now when redline remove nodes, it check what redlines may effected it,
and update them after the node deletion happened.
Probably this bug should be handled deeper, as this problem probably
effect every SwPosition.. not sure if it can be a problem elsewhere.
A special case when it happens, if there is a Table between 2 text.
And there are 2 redlines..
1: any redline positioned 'text start'-'table start'
2: delete redline: 'table begin'-'table end'
now if we accept the 2. redline .. that remove the table
the 1. redline position will change to: 'text start'-'next text start'
but its end's nContent.m_pContentNode remain nullptr
so lcl_CheckPosition(...) will assert
Change-Id: I2981fd0218a375994d3f55cb5d3463b17ca35849
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158456
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158614
Tested-by: Jenkins
|
|
Made accept/reject handle move redlines other pair, (moveto-movefrom)
and handle the whole move redline, even if it is split into small pieces
that separated from each other.
Added unique ID to every move redline to help find their other parts.
This move ID is generated in case of:
move recognition
moveing a paragraph. (directly create move redline with unique id without
calling the recognition it is faster and more stable)
(there are other cases that could be improved to not use recognition,
but generate ID directly, like moveing selected partial text with mouse)
Implemented the odt export/import of this move ID.
it is a tag like this: "<loext:move-id>4</loext:move-id>"
next to creator/date
Improved the docx import to generate this move ID, so move redlines can
find their other parts
(Not changed Docx export... it works a bit, but far from perfect)
Improved move reckognition:
It can find them even if they are split into multiple parts differently.
(like "ab"+"cd" == "a"+"bcd")
Disabled this because of probably performance issue.
made a complex unit test for it.
Note: Left the move recognition on every place, to avoid as much
regressions as possible.. but in the future, we may can disable it
in some cases.
Note2: We will have to keep move recognitnion, because there are documents
from past, saved without any move informations in the file, and users
expect to see move redlines there. (generated by the recognition.)
Change-Id: If968d4235b676c5e538cfaf4187a4482a86eae9f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157740
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158611
Tested-by: Jenkins
|
|
This commit is part of an implementation for the following STYLEREF flags
- Search from bottom to top, which sets the STYLEREF field to search
downwards first, or from the bottom of the page in marginals
- Hide non numerical, which hides all characters that are not either
numbers or punctuation commonly used as delimiters. For example, if
your STYLEREF said "Chapter 2.1", this setting would make it say "2.1"
This commit implements:
- The document model
- The layout
- The UI
Change-Id: I7d8f455ffe90cface4f3b1acf6b9bef6a045ed19
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158349
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Impress already has both options in the menu
Also re-enable test disable with fa569930a0968cdeba4441e19a68e7d78aa25cb4
"Revert "Resolves tdf#139141 - Make variable date/time field the
default""
Change-Id: I1cec89b5901073555ffa31d2be24e1e62fbbdcb3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158391
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Tested-by: Jenkins
|
|
Change-Id: Ifb879d6536c80f00da61707fb0aa0700dcd19bcc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158288
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
These need to generate multiple elements in
SwTextPainter::PaintMultiPortion() and it's not altogether obvious.
Change-Id: Ib5fd36c3ea8e15dff93a87bb231c3cc4f78b0089
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158398
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
...which, unlike std::is_signed, also requires that T is an integer type, not
just any arithmetic type, but which appears to fit well here anyway.
But LLVM 12 libc++, which is apparently used by Android builds, only provides a
bare-bones <concepts> that lacks std::signed_integral (among others), so for now
introduce o3tl/concepts.hxx providing what's missing (incl. std::integral and
std::unsigned_integral, for some kind of consistency).
Change-Id: I1c37d37fa1b57b5e3bf24c9e44f3973003905cb2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158406
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
The problem is that for a hyperlink, multiple Link SEs are created, but
only one Link annotation; the Link SEs all point to the annotation but
the annotation can only point to one Link SE.
So try to create only one Link SE for a hyperlink, similar to commit
ee3c3fcf5c48964f7bc1d64484409f072c614866. This could be
further subdivided by Spans when formatting properties change but it
looks complicated and rarely needed.
Change-Id: I7d158b599ec744b03e78eeca88d717183f2ba1dc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158387
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
This reverts commit e37f06f534ac864f9fe8cd20b07a85c36e697d41.
and ui test from Ia1a2387e137f8a672a24056b13234d4275a77ca4
Reason for revert: tdf#157337; macros rely on fix field values
Change-Id: I7a638330aac9b71432556454c0104479fcd05b4c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158041
Tested-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
|
|
...in include files. This is a mix of automatic rewriting in include files and
manual fixups (mostly addressing loplugin:redundantfcast) in source files that
include those.
Change-Id: I1f3cc1e67b9cabd2e9d61a4d9e9a01e587ea35cc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158337
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
... during mail merge.
In some modes (generating individual documents; creating PDF) the mail merge
process converts all fields into text. But sometimes it is undesirable for
fields not involved into mail merge itself:
* It is inconsistent with how MS Word behaves;
* The generated editable documents could benefit from having other fields
kept as fields;
* Some fields, when exported to PDF, produce different results: e.g.,
placeholder fields are output as empty spaces, not as placeholder text.
An expert boolean configuration option is added:
Office/Writer/FormLetter/ConvertToTextOnlyMMFields; it is false by default,
in which case, the behavior is unchanged. When true, all fields in the mail
merge document, except for database fields and hidden text fields, are not
converted to text during mail merge process.
Change-Id: Ibdb505ed3f2762db063bb0a91b674d27ecbc2e7f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158306
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: Ie3d22b63260d2b2b05a46c5b2a6ca915cf9d4bcd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158304
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
This was noop since commit 626fe9ab5ebebc4ef36e35f4aa597c03a3564d22
(tdf#157573 sw floattable: fix incorrect lack of left margin after
table, 2023-10-18).
Change-Id: I89a197313ac4ffbcff9bbff534e5411085282ac8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158237
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
STYLEREF is a field type in Word which changes its content based on
nearby paragraphs. For example, upon creating a styleref referencing
"Heading 1" you will see the text of the nearest "Heading 1"-styled
paragraph that is above the field.
This patch implements STYLEREF in Writer as a cross-reference. By using
"insert>cross-reference>styles" you'll be presented with a list of
styles. Selecting one and clicking "insert" will create a field which
has text from the "most relevant" instance of the style. To find the
most relevant instance we first search up for paragraphs with the style,
and if there are any we take the closest. If there weren't any, we
search down for paragraphs with the style.
This patch also updates our use of STYLEREF for chapters exported to
docx by using it for all chapters not only those in headers and footers.
This allows us to approximate more chapter field functionality even when
moving between Writer and Word.
Finally, this patch adds some tests for STYLEREF:
- testTdf86790 tests that the "sample file with STYLEREF" document from
tdf#86790 has the correct fields
- testStyleRefSearchUp tests that the STYLEREF searches up when there
are bits of text both above and below it
- testStyleRefSearchDown tests that the STYLEREF searches down when
there are bits of text below it only
- testMarginalStyleRef tests that the STYLEREF searches from the page
top when it is placed in a footer
- testFootnotetyleRef tests that the STYLEREF searches from the
reference mark when it is placed in a footnote
Still TODO:
- [ ] Update documentation
- [ ] Implement reverse-searching (\l) and nondelimiter
suppression (\t)
- Probably these 2 will be in a followup patch
Change-Id: I25dd7a6940abee5651a784b9059fe23b32547d6c
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157456
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I2796b595ef961c477dea85c337ad343599aea7cf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158055
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
|