summaryrefslogtreecommitdiff
path: root/sw
AgeCommit message (Collapse)Author
2019-12-13loplugin:expandablemethodsNoel Grandin
Change-Id: I333d91ea5ce78c82e9bb107f934614efc7bfb8f7 Reviewed-on: https://gerrit.libreoffice.org/85078 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-13loplugin:unusedmethodsNoel Grandin
Change-Id: I8ad75d1251df4d6f8097aaa68e4ec92331e38ad4 Reviewed-on: https://gerrit.libreoffice.org/85077 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-13loplugin:unusedfieldsNoel Grandin
Change-Id: I28c8d60543d85ea878698a3e3661bbd5891ad9c7 Reviewed-on: https://gerrit.libreoffice.org/85075 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-12use covariant return type for SfxPoolItem::CloneCaolán McNamara
and can then remove some casting Change-Id: Id821c32ca2cbcdb7f57ef7a5fa1960042e630ffc Reviewed-on: https://gerrit.libreoffice.org/85022 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-12-12tdf#105225 New UNO and Writer Web background tab pagesJim Raykowski
Change-Id: Id3e7d1c24d086624f053085e3134792b95188c23 Reviewed-on: https://gerrit.libreoffice.org/64991 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-12Remove some redundant user-provided dtorsStephan Bergmann
...which silences various -Wdeprecated-copy-dtor warnings from Clang 10 trunk about copy functions being implicitly defined as non-deleted even though the class has a user-declared dtor Change-Id: I3409d403c3c709de4ad94eccbc2d7869e41847cc Reviewed-on: https://gerrit.libreoffice.org/85032 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-12Silence some Clang 10 trunk -Wdeprecated-copy-dtorStephan Bergmann
...by making the user-declared dtor not user-provided. Non-deleted copy functions are still deprecated with any user-declared dtor, not just a user- provided one, but Clang and GCC happen to not emit a warning then (see the discussion at <https://reviews.llvm.org/rG9e260c12bce7> "[Diagnostics] Make behaviour of Clang's -Wdeprecated-copy same as in GCC"), so keep the code simple. Change-Id: Ic3936d12b3335d3aa55e1e8e92cc5152053a1720 Reviewed-on: https://gerrit.libreoffice.org/85042 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-11jsdialog: send items on status changeSzymon Kłos
Use existing mechanism, delete sending in getter code which caused unnecessary work. Change-Id: Ibc191c16b95fd58e7065e019f48f3837cfed5bbd Reviewed-on: https://gerrit.libreoffice.org/84914 Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Tested-by: Szymon Kłos <szymon.klos@collabora.com>
2019-12-11convert PrepareHint to scoped enumNoel Grandin
Change-Id: Ia7c987dc59f335d76ee874c1bb51707cb55ff41e Reviewed-on: https://gerrit.libreoffice.org/84922 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-11tdf#128683 Add more tools to Table section in Writer's SidebarRoman Kuznetsov
Change-Id: I505cbf0a7324cc82d0fcb1ac76a7f2a23b8a0b0c Reviewed-on: https://gerrit.libreoffice.org/84783 Tested-by: Jenkins Reviewed-by: Roman Kuznetsov <antilibreoffice@gmail.com>
2019-12-11num->number and bul->bullet in sw/Noel Grandin
make some symbols easier to read Change-Id: Icb5ea48dce1bcf4ae17e57e8f4c7bec3acd33f82 Reviewed-on: https://gerrit.libreoffice.org/84924 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-11convert FrameControlType to scoped enumNoel Grandin
Change-Id: Ic74fcf0c8f7c671de5187bdee284bb43c7299d1f Reviewed-on: https://gerrit.libreoffice.org/84923 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-11convert SwLabelType to scoped enumNoel Grandin
Change-Id: I7e842ad3446e0209732f1eb49f2f78da89db18b7 Reviewed-on: https://gerrit.libreoffice.org/84921 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-11Fix typo in codeAndrea Gelmini
Change-Id: I64a4c33658d3e75108be1e5f869b024a6100440e Reviewed-on: https://gerrit.libreoffice.org/84899 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
2019-12-11Fix typoAndrea Gelmini
Change-Id: Idbcf73ea3034b62e283537e052c17a9fb3988a8b Reviewed-on: https://gerrit.libreoffice.org/84918 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2019-12-11Direct cursor fillmode as comboboxHeiko Tietze
UI only update of many radio buttons into one combo box to comply with HIG Change-Id: If96ee339159def4c3dfa5d3b2f9adb218d1faee3 Reviewed-on: https://gerrit.libreoffice.org/84864 Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org> Tested-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2019-12-11this union not necessary anymoreNoel Grandin
the nSize field is never used Change-Id: I5186999a48152606de721ee96f71ccfa9ed27df3 Reviewed-on: https://gerrit.libreoffice.org/84856 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-11rename Prc->Percent in swNoel Grandin
Change-Id: I011eb59cf40abc6ff62dd541beb1ebbc50725a05 Reviewed-on: https://gerrit.libreoffice.org/84855 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-11convert SwSortDirection to scoped enumNoel Grandin
Change-Id: I20eea9b1addf0f7483d1b48a3d74eb342b479d04 Reviewed-on: https://gerrit.libreoffice.org/84854 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-11convert SwSortOrder to scoped enumNoel Grandin
Change-Id: I24f982749a94e32d388663cc3a518d919bad96ff Reviewed-on: https://gerrit.libreoffice.org/84853 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-11convert LinkCreateType to scoped enumNoel Grandin
Change-Id: Ia31648d2dbd6eb5d878d7dcc904d1b05b6c1619c Reviewed-on: https://gerrit.libreoffice.org/84852 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-11convert SectionType to scoped enumNoel Grandin
Change-Id: Ib05b88b05c90b835107128f42c70170660788d00 Reviewed-on: https://gerrit.libreoffice.org/84851 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-11convert SwFrameSize to scoped enumNoel Grandin
Change-Id: I7e1e641ff180035c7dcefdcfdd185eadbae32142 Reviewed-on: https://gerrit.libreoffice.org/84850 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-10Calc add Extension support to Tabbed NBandreas kainz
Change-Id: I2a6e17d8c9a126155ec599fe50d6d84d074c8ddc Reviewed-on: https://gerrit.libreoffice.org/84878 Tested-by: Jenkins Reviewed-by: andreas_kainz <kainz.a@gmail.com>
2019-12-10Removed duplicated includeAndrea Gelmini
Change-Id: I4db0983e3ab249fbde8c7db0d895ee4e8bb20c7f Reviewed-on: https://gerrit.libreoffice.org/84877 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2019-12-10Related: tdf#129267 format numbers with the UI localeCaolán McNamara
Change-Id: Ib7712f56140e5ef9a67700c8ea86383adbf2a4fc Reviewed-on: https://gerrit.libreoffice.org/84800 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-12-10lok: change-annotation navigation through prev/next commandMarco Cecchetti
Change-Id: Id62a84e0db24b4d317a5503d468f2e0caf13424b Reviewed-on: https://gerrit.libreoffice.org/82008 Tested-by: Jenkins Reviewed-by: Andras Timar <andras.timar@collabora.com>
2019-12-10Resolves: tdf#129250 move redline type into RedlinData so we can sort on itCaolán McNamara
Change-Id: Ia8e6744c1679655240a9a9cee9425030e994e16b Reviewed-on: https://gerrit.libreoffice.org/84805 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-12-10jsdialog: apply FillGradient with JSON argSzymon Kłos
Change-Id: I0ca53a53ff53e66d2f25ad4eb13305edbc3aaa12 Reviewed-on: https://gerrit.libreoffice.org/84798 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2019-12-10use double prime for inch symbolCaolán McNamara
Change-Id: I6a663bcb55155bd2331aa79cebd5b922c2ee7605 Reviewed-on: https://gerrit.libreoffice.org/84787 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-12-09Related: tdf#129267 change spacing unit when measurement unit changesCaolán McNamara
Change-Id: I2407eb52a18dd06a51b49041df2035099c79c94a Reviewed-on: https://gerrit.libreoffice.org/84788 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-12-09Resolves: tdf#129267 change margin unit when measurement unit changesCaolán McNamara
Change-Id: Ib44ea95392489679b947311e9031efb84d501fad Reviewed-on: https://gerrit.libreoffice.org/84781 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-12-09Related: tdf#129267 separate cm from value in built-in en_US stringsCaolán McNamara
Change-Id: Ia3821d734ffda8e873473ac15e4a4dca5404f871 Reviewed-on: https://gerrit.libreoffice.org/84782 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-12-09GetSource32 and GetSource are identicalMike Kaganski
Change-Id: Ia7c6687586b5a37b7556f1bae9ffd5b5b954db47 Reviewed-on: https://gerrit.libreoffice.org/84747 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-09SbxArray: drop 16-bit indicesMike Kaganski
Change-Id: I43b478187636b9bb53fdf7ab938436ae364bd7a7 Reviewed-on: https://gerrit.libreoffice.org/84733 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-09drop newly unused SfxFloatingWindowCaolán McNamara
Change-Id: I8ac3957579c76a89b9692bdb50cbe7a56e1693e3 Reviewed-on: https://gerrit.libreoffice.org/84444 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-12-08fdo#38414 tdf#44986: DOCX table import: handle gridBefore/AfterLászló Németh
without serious regressions, ie. losing the import of complex forms with multiple or nested tables. Complete the fix for tdf#116194 (DOCX import: fix missing tables with w:gridBefore) with handling gridAfter on DomainMapper level. This consists of also rejections (except their unit tests) of commit cf33af732ed0d3d553bb74636e3b14c55d44c153 (handle w:gridBefore by faking cells (fdo#38414)) and commit 1d1748d143ab4270a2ca1b5117852b1b1bb4c526 (Related: tdf#44986 DOCX import: handle w:gridAfter by faking cells) Change-Id: I31fa1de03bcdf42424fa5507fb5a3e06aa47107d Reviewed-on: https://gerrit.libreoffice.org/84517 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2019-12-08tdf#116194 DOCX import: fix missing tables with w:gridBeforeLászló Németh
Regression from the commit cf33af732ed0d3d553bb74636e3b14c55d44c153 "handle w:gridBefore by faking cells (fdo#38414)" This patch replaces the previous fix with a better solution, fixing tdf#38414 on the proposed DomainMapper level. (Note: to reject the old fix completely, its follow-up commit w:gridAfter will be handled in a similar way.) Now the related regressions, tdf#111679, tdf#120512 and the complex forms of tdf#116194, tdf120256 and tdf#122608 are fixed, too. Change-Id: Id25f5fb4d9021c87ee8c82782b2038e6fb255673 Reviewed-on: https://gerrit.libreoffice.org/84263 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: László Németh <nemeth@numbertext.org>
2019-12-07ofz#18563 test case for assert/crashCaolán McNamara
Change-Id: Idb98b7fae03bc31fc050519a7b0720208adeb843 Reviewed-on: https://gerrit.libreoffice.org/84556 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-12-07ofz#18563 sw: remove SwXFrame::m_pCopySource to fix ~SwIndexReg assertMichael Stahl
The problem is that a text frame is inserted with a selection that partially selects a fieldmark, so the DeleteAndJoin() is split across multiple calls with a temporary cursor, and the correction of the passed in rPam that is ultimately SwXFrame::m_pCopySource is not done, so it remains on a deleted node. Replace it with a SwUnoCursor, which is automatically corrected. It turns out that this m_pCopySource member was only set via a call to SetSelection() from one place in SwXText::convertToTextFrame(), which ends up immediately calling SwXFrame::attach() anyway, which then uses m_pCopySource and resets it. This was added in deba85c5b73f36affe672567ed4a45938953f312 but it would be far simpler to just pass a local variable to SwXFrame::attachToRange(). Change-Id: I85ed128db63c13f81f215d8f50036d9d2aa6c519 Reviewed-on: https://gerrit.libreoffice.org/84661 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-12-07ofz#18563 sw: fix 2 problems with field marksMichael Stahl
* sw::CalcBreaks had a thinko in that a separator that had a start but no matching end wasn't reported * DocumentContentOperationsManager::DelFullPara() may apparently be called with a rPam having just one position, in which case expanding it doesn't work. Change-Id: I6503498dd38d188799385aa706ffe7dfccfdba08 Reviewed-on: https://gerrit.libreoffice.org/84662 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-12-07Fix heap-use-after-freeStephan Bergmann
...after 91b2325808a75174f284c48c8b8afc118fad74e4 "tdf#121300 sw: consistent fly at-pargraph selection", as seen with ASan during UITest_writer_tests6 (see also <https://ci.libreoffice.org/job/lo_ubsan/1472/>): > ERROR: AddressSanitizer: heap-use-after-free on address 0x6040006ec168 at pc 0x7f75b9ee9c81 bp 0x7f75d168a410 sp 0x7f75d168a408 > READ of size 4 at 0x6040006ec168 thread T41 (cppu_threadpool) > #0 in SwFormatAnchor::GetAnchorId() const at sw/inc/fmtanchr.hxx:65:44 > #1 in sw::DocumentContentOperationsManager::CopyImplImpl(SwPaM&, SwPosition&, bool, SwPaM*) const at sw/source/core/doc/DocumentContentOperationsManager.cxx:4863:30 > #2 in sw::DocumentContentOperationsManager::CopyImpl(SwPaM&, SwPosition&, bool, SwPaM*) const at sw/source/core/doc/DocumentContentOperationsManager.cxx:4432:16 > #3 in sw::DocumentContentOperationsManager::CopyRange(SwPaM&, SwPosition&, bool, bool) const at sw/source/core/doc/DocumentContentOperationsManager.cxx:1868:16 > #4 in SwFEShell::Paste(SwDoc*) at sw/source/core/frmedt/fecopy.cxx:1038:62 [...] > 0x6040006ec168 is located 24 bytes inside of 40-byte region [0x6040006ec150,0x6040006ec178) > freed by thread T41 (cppu_threadpool) here: > #0 in operator delete(void*, unsigned long) at /home/sbergman/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_new_delete.cpp:172:3 > #1 in SwFormatAnchor::~SwFormatAnchor() at sw/source/core/layout/atrfrm.cxx:1473:1 > #2 in SfxItemPool::Remove(SfxPoolItem const&) at svl/source/items/itempool.cxx:741:13 > #3 in SfxItemSet::~SfxItemSet() at svl/source/items/itemset.cxx:252:42 > #4 in SwAttrSet::~SwAttrSet() at sw/inc/swatrset.hxx:161:20 > #5 in SwFormat::SetFormatAttr(SfxPoolItem const&) at sw/source/core/attr/format.cxx:541:5 > #6 in sw::DocumentContentOperationsManager::CopyImplImpl(SwPaM&, SwPosition&, bool, SwPaM*) const at sw/source/core/doc/DocumentContentOperationsManager.cxx:4861:27 > #7 in sw::DocumentContentOperationsManager::CopyImpl(SwPaM&, SwPosition&, bool, SwPaM*) const at sw/source/core/doc/DocumentContentOperationsManager.cxx:4432:16 > #8 in sw::DocumentContentOperationsManager::CopyRange(SwPaM&, SwPosition&, bool, bool) const at sw/source/core/doc/DocumentContentOperationsManager.cxx:1868:16 > #9 in SwFEShell::Paste(SwDoc*) at sw/source/core/frmedt/fecopy.cxx:1038:62 [...] Change-Id: I7a31e9dbb6fa1cdf938420a9a949b125c66e3ce2 Reviewed-on: https://gerrit.libreoffice.org/84683 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-07Fix typosAndrea Gelmini
Change-Id: Ibaaf738abdb4abcb9edb66ea35b6ebabdbe02507 Reviewed-on: https://gerrit.libreoffice.org/84681 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2019-12-07tdf#101977 add new track changes uno commands to writer NB+ menubarandreas kainz
Change-Id: I06e48f37af435d9927b764de1a972687bbd7bf2a Reviewed-on: https://gerrit.libreoffice.org/84671 Tested-by: Jenkins Reviewed-by: andreas_kainz <kainz.a@gmail.com>
2019-12-06UI test for tdf#127652Artur Neumann
Test that the cursor is placed correctly after deleting a section that overlaps page boundaries Change-Id: I466770c7edadf09f11260ede236e598d3d1a875b Reviewed-on: https://gerrit.libreoffice.org/83963 Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org> Tested-by: Xisco Faulí <xiscofauli@libreoffice.org>
2019-12-06Related: tdf#115719 DOCX import: fix increased spacing vs left-aligned objectsMiklos Vajna
Commit 8b73bafbc18acb4dd8911d2f2de8158d98eb6144 (tdf#115719 DOCX import: increase paragraph spacing for anchored objects, 2018-02-14) added an import-time tweak for a problem that has been confirmed to be a Word layout bug in the meantime (and the tweak makes Writer behave the same way if the document has been created by an affected Word version for layout compatiblity). Later, commit 4883da6fd25e4645a3b30cb58212a2f666dae75a (Related: tdf#124600 DOCX import: ignore left wrap on left-aligned shapes, 2018-02-14) fixed left spacing of anchored objects aligned to the left, to be in sync with what the DOC import does. This broke the previous fix in case the shapes are left-aligned. Fix the problem by tracking what is the in-file-format and logical left margin, so the final doc model has the value necessary for correct horizontal positioning and the importer has the value that's necessary for correct vertical positioning. Change-Id: I8f16cbe7bad40e243111c902bdc1ab0e8141d6b9 Reviewed-on: https://gerrit.libreoffice.org/84654 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2019-12-06tdf#128191 Show infobar when hyphenation info for text language is missingSamuel Mehrbrodt
During doc loading it's too early to add infobars, thus add a mechanism to display infobars once view is ready Change-Id: Ie963a304d2101a5bbdd59130c354d581ff7d2e9b Reviewed-on: https://gerrit.libreoffice.org/83161 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2019-12-06sw: reindent thatMichael Stahl
Change-Id: Iea5784d98d2780166c88912f898f3da95d45e2ab Reviewed-on: https://gerrit.libreoffice.org/84623 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-12-06tdf#121300 sw: adapt at-char selection to latest at-para designMichael Stahl
Also use heuristic from commit 91b2325808a75174f284c48c8b8afc118fad74e4 to not delete on backspace/delete selections for at-char flys. Change-Id: I8f561eb0176e0655b715366d1ffe3c71fbee9e30 Reviewed-on: https://gerrit.libreoffice.org/84622 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Michael Stahl <michael.stahl@cib.de>
2019-12-06tdf#121300 sw: consistent fly at-pargraph selectionMichael Stahl
As a follow-up to commit 28b77c89dfcafae82cf2a6d85731b643ff9290e5, add IsSelectFrameAnchoredAtPara() function and use it to harmonize at-para fly selection across all relevant operations: * CopyImpl: - it had a pre-existing bugs that would lose a fly anchored to the 2nd (1st fully selected) node of a redline - remove a bunch of code for finding the last node of the body content, which doesn't matter for the remaining at-fly checks - flys that already existed at the insert position need to have their anchors corrected * DeleteRange: - get rid of the bDelFwrd checks * MoveRange: - the ALLFLYS flag would be obsoleted by the new selection, were it not for the writerfiler "special hack", see below * also adapt A11y and UI selection, SwRootFrame::CalcFrameRects() The selection behavior is changed: * the bDelFwrd case is quite odd, some code was checking whether a deletion was "forward" or "backward" and removing only the flys at the point node while retaining the flys at the mark node; this worked in a very non-obvious way relying on sw_GetJoinFlags actually calling Exchange() on the cursor, and then SwUndoDelete stored it in m_bJoinNext, but it turns out that only SwUndoMove also has a m_bJoinNext and it's dead, and no other Undo has such a flag, so this only worked for "delete". It's not obvious what the value of this is, let's just ignore the "direction". * Selections exclude the start and end position except if it's a fully selected node or at the start or end of a section (i.e. Ctrl+A should also select every at-para fly). * An exception is made in case the selection looks like it's a backspace/delete joining 2 paragraphs; flys are not deleted in that case because it seemed annoying (and as it happens, Word does not appear to delete flys in that case), particularly if both of the nodes are already empty. This is done with a heuristic, it's conceivable to pass down some flag from DelLeft()/DelRight() but probably this is good enough. A special hack is needed to keep writerfilter happy for now; it likes to anchor flys at nodes which it then deletes in RemoveLastParagraph(), which likely could be improved there. The ALLFLYS usage in SwRangeRedline::MoveFromSection() could be removed (because the end-of-section check already handles the case) except for this, because it turns out that the ODF import runs SetRedlineFlags with a temporarily reset IsInXMLImport() flag because of its effect in thints.cxx, so during the move IsSelectFrameAnchoredAtPara() can't check it. tdf#108124 scenario works better, now everything that's selected is both copied and deleted. Fixes the problem where an at-para fly at the 2nd node of a redline where the 1st node is partially deleted was lost on ODF export. Change-Id: I168013665e70ff0a5f198e09f3fa3afc06ba0449 Reviewed-on: https://gerrit.libreoffice.org/84576 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>