summaryrefslogtreecommitdiff
path: root/sw/inc
AgeCommit message (Collapse)Author
2020-12-18tdf#138897 sw: avoid creating SwUndoResetAttr in CopyImplImpl()Michael Stahl
The problem is that SwTextNode::CopyCollFormat() both creates the SwTextFormatColl with undo and applies it with undo. The first is desirable, the second causes a problem because it necessarily happens after SplitNode() and currently happens before copying the non-start/end nodes, so the node-index may not match in Undo, regardless if it runs before or after SwUndoCpyDoc. But SwUndoInserts restores the SwTextFormatColl on the node itself, so it can just be suppressed, which looks easier than refactoring this to call SplitNode() with Undo enabled. (regression from b4365b985178e1866c74afd757a104aad1d405a9) Change-Id: I4d15fb88cd5ae4cc53d9afb3397dec8fcf7635fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107921 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-12-16tdf#137819 sw: fix textboxes anchoring "As Char"Attila Bakos (NISZ)
Changing anchoring type of a textbox to "As Char", shape position follows the new text frame position. Also SwTextBoxHelper::mapAnchorType() was introduced to map between text frames and shapes, with a small cleanup. Change-Id: Iea0abe6f12a293fb4270970fde53ea903b347fb2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107221 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2020-12-15update pchesCaolán McNamara
Change-Id: I280dea8fe5f346a5555f4bf479896877579d63e5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107748 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-12-11Adapt the remaining OUString functions to std string_viewStephan Bergmann
...for LIBO_INTERNAL_ONLY. These had been missed by 1b43cceaea2084a0489db68cd0113508f34b6643 "Make many OUString functions take std::u16string_view parameters" because they did not match the multi-overload pattern that was addressed there, but they nevertheless benefit from being changed just as well (witness e.g. the various resulting changes from copy() to subView()). This showed a conversion from OStringChar to std::string_view to be missing (while the corresponding conversion form OUStringChar to std::u16string_view was already present). The improvement to loplugin:stringadd became necessary to fix > [CPT] compilerplugins/clang/test/stringadd.cxx > error: 'error' diagnostics expected but not seen: > File ~/lo/core/compilerplugins/clang/test/stringadd.cxx Line 43 (directive at ~/lo/core/compilerplugins/clang/test/stringadd.cxx:42): simplify by merging with the preceding assignment [loplugin:stringadd] > File ~/lo/core/compilerplugins/clang/test/stringadd.cxx Line 61 (directive at ~/lo/core/compilerplugins/clang/test/stringadd.cxx:60): simplify by merging with the preceding assignment [loplugin:stringadd] > 2 errors generated. Change-Id: Ie40de0616a66e60e289c1af0ca60aed6f9ecc279 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107602 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-12-10tdf#41466 DOCX import: fix VML v:shape/v:textboxRegényi Balázs
VML v:shape/v:textbox element was imported only as a text frame, losing (otherwise recognized) preset shape geometry, i.e. replacing a callout bubble (wedgeRectCallout) and other special shapes with a plain rectangle. Thanks to Attila Bakos for the initial help. Change-Id: I03a608822ed54a20ed07406a08c3539e72958f5b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105299 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2020-12-09tdf#89709 Make statusbar page number/bookmarks control tooltip showJim Raykowski
Change-Id: I3a84ae29d4758799e1ee7e2ab1349ca3b30fb5f1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102883 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2020-12-09Resolves tdf#99646 - Make default type of anchoring optionalHeiko Tietze
Option introduced at Tools > Options > Writer > Formatting Aids Change-Id: I8d890f84107647821c39669114b991c301727788 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106970 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2020-12-07move various notebookbar widgets into vclCaolán McNamara
and we can drop their factories then Change-Id: I1e261886dd7700710ba628da4bbeeba65efa1531 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107134 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-12-07loplugin:unusedmethodsNoel
Change-Id: Ib51fd610c5188fe95872d509f004ae88f38c5417 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107351 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-12-07SwUserFieldType: Modify no moreBjoern Michaelsen
Change-Id: I1194225011380bf63d854f8054d063e93a832744 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107322 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-07Sw{Get,Set}ExpFieldType: Modify no moreBjoern Michaelsen
Change-Id: Id0daf2aa04663127dcbd78d2206d81aab6a783f8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107321 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-07SwRefPageSetFieldType: Modify no moreBjoern Michaelsen
Change-Id: I313237069eeafd5913468e18e2eb34e9ef185302 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107320 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-07SwAuthorityFieldType: Modify no moreBjoern Michaelsen
Change-Id: I59f1e5d25c0defa3b551061fccfeea625d0df3aa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107319 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-07SwFormat: Modify no moreBjoern Michaelsen
Change-Id: I028e173a7148dfce946189a94aed8b93ff3539b0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107318 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-07sw: prefix members of SwBlockName, SwTaggedPDFHelper, ...Miklos Vajna
... SwXMLBlockListExport and SwXMLTextBlocks See tdf#94879 for motivation. Change-Id: Ifdaad455e60254f730d95ff91bc4c78b5f61bc7d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107331 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2020-12-06SwFormatFootname: Modify no moreBjoern Michaelsen
Change-Id: I0617605a078aa10fc57bade9f6943138183bb591 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107274 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-06SwFormatRefMark: Modify no moreBjoern Michaelsen
Change-Id: Ic27ae029740909d229a9a6ce03b0a9b8b88b55c6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107275 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-06SwTextRuby: Modify no more (also make it final along the way)Bjoern Michaelsen
Change-Id: I3c5eee9f9205347456f1a51338243276c1cb2b8a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107271 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-06SwCallMouseEvent: Modify no moreBjoern Michaelsen
Change-Id: Ib15db54d8b3be64fbe37a4eb723bd97172a5b2a1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107269 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-06SwDDETable: Modify no moreBjoern Michaelsen
Change-Id: I6b9bd54835ba6abc4ab9184c49c684d9c387bda4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107268 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-06SwFormatPageDesc: Modify no moreBjoern Michaelsen
Change-Id: Id0f428ba8426f3ce32ceca3e14687e3b83999509 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107267 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-06Meta: Modify no moreBjoern Michaelsen
Change-Id: I14f53ca852042f8032fa18ac6b23fbe3ceea3e84 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107266 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-05SwFrameFormat::Modify refactoringBjoern Michaelsen
- also refactor the function: * use switch-case instead of if-cascades * use typed GetItem and reduce casting - not move to SwClientNotify yet, because trivially doing that causes regressions Change-Id: I9cc8adc9a5cdacc8ee9d7e0c410398950bbeba84 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107180 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-04weld writer's FrameControl MenuButtonsCaolán McNamara
Change-Id: I507b043672ffd102f85110bed221a05b756500db Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107174 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-12-04update pchesCaolán McNamara
Change-Id: I3e22c2000da03f6f3345353846213203993aa865 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107192 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-12-03Just use a mutex for access to SwDoc::mpNumberFormatterStephan Bergmann
...reverting the use of std::atomic and comphelper::doubleCheckedInit introduced in 977a98c5729b4301c11cab1a421d4e6f2758e41e "crashtesting: intermittent threaded crash". I have once seen UITest_writer_tests deadlock with > Thread 7 (Thread 0x7faad204f640 (LWP 359621) "cppu_threadpool"): > #0 __lll_lock_wait (futex=0x6040000a7450, private=0) at /usr/src/debug/glibc-2.32-20-g5c36293f06/nptl/lowlevellock.c:52 > #1 0x00007fab5a7a57f1 in __GI___pthread_mutex_lock (mutex=0x6040000a7450) at /usr/src/debug/glibc-2.32-20-g5c36293f06/nptl/pthread_mutex_lock.c:115 > #2 0x00007fab5c0c9bb7 in osl_acquireMutex(oslMutex) (pMutex=0x6040000a7450) at /data/sbergman/lo-san/core/sal/osl/unx/mutex.cxx:100 > #3 0x00007fab53d4cd6a in osl::Mutex::acquire() (this=0x7fab545a57c0 <rtl::Static<osl::Mutex, (anonymous namespace)::theImplHelperInitMutex>::get()::instance>) at /data/sbergman/lo-san/core/include/osl/mutex.hxx:57 > #4 0x00007fab53dbb4ff in osl::Guard<osl::Mutex>::Guard(osl::Mutex&) (this=0x7faad0f33820, t=...) at /data/sbergman/lo-san/core/include/osl/mutex.hxx:135 > #5 0x00007fab53e51959 in cppu::getTypeEntries(cppu::class_data*) (cd=0x7faaec3567d0 <cppu::detail::ImplClassData<cppu::WeakImplHelper<com::sun::star::i18n::XNumberFormatCode, com::sun::star::lang::XServiceInfo>, com::sun::star::i18n::XNumberFormatCode, com::sun::star::lang::XServiceInfo>::operator()()::s_cd>) at /data/sbergman/lo-san/core/cppuhelper/source/implbase_ex.cxx:82 > #6 0x00007fab53e4cee6 in cppu::queryDeepNoXInterface(_typelib_TypeDescriptionReference const*, cppu::class_data*, void*) (pDemandedTDR=0x60f0000116b0, cd=0x7faaec3567d0 <cppu::detail::ImplClassData<cppu::WeakImplHelper<com::sun::star::i18n::XNumberFormatCode, com::sun::star::lang::XServiceInfo>, com::sun::star::i18n::XNumberFormatCode, com::sun::star::lang::XServiceInfo>::operator()()::s_cd>, that=0x60f0000117a0) at /data/sbergman/lo-san/core/cppuhelper/source/implbase_ex.cxx:166 > #7 0x00007fab53e4f3b3 in cppu::WeakImplHelper_query(com::sun::star::uno::Type const&, cppu::class_data*, void*, cppu::OWeakObject*) (rType=invalid uno::Type, cd=0x7faaec3567d0 <cppu::detail::ImplClassData<cppu::WeakImplHelper<com::sun::star::i18n::XNumberFormatCode, com::sun::star::lang::XServiceInfo>, com::sun::star::i18n::XNumberFormatCode, com::sun::star::lang::XServiceInfo>::operator()()::s_cd>, that=0x60f0000117a0, pBase=0x60f0000117a0) at /data/sbergman/lo-san/core/cppuhelper/source/implbase_ex.cxx:294 > #8 0x00007faaec053845 in cppu::WeakImplHelper<com::sun::star::i18n::XNumberFormatCode, com::sun::star::lang::XServiceInfo>::queryInterface(com::sun::star::uno::Type const&) (this=0x60f0000117a0, aType=invalid uno::Type) at /data/sbergman/lo-san/core/include/cppuhelper/implbase.hxx:111 > #9 0x00007fab41f393c0 in com::sun::star::uno::BaseReference::iquery(com::sun::star::uno::XInterface*, com::sun::star::uno::Type const&) (pInterface=0x60f0000117a0, rType=invalid uno::Type) at /data/sbergman/lo-san/core/include/com/sun/star/uno/Reference.hxx:55 > #10 0x00007fab42a09ff5 in com::sun::star::uno::Reference<com::sun::star::i18n::XNumberFormatCode>::iquery(com::sun::star::uno::XInterface*) (pInterface=0x60f0000117a0) at /data/sbergman/lo-san/core/include/com/sun/star/uno/Reference.hxx:70 > #11 0x00007fab42a08fae in com::sun::star::uno::Reference<com::sun::star::i18n::XNumberFormatCode>::Reference(com::sun::star::uno::BaseReference const&, com::sun::star::uno::UnoReference_Query) (this=0x7faad0de1420, rRef=...) at /data/sbergman/lo-san/core/include/com/sun/star/uno/Reference.hxx:172 > #12 0x00007fab429d6ec1 in com::sun::star::i18n::NumberFormatMapper::create(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&) (the_context=uno::Reference to (class cppu::(anonymous namespace)::ComponentContext *) 0x611000006710) at /data/sbergman/lo-san/core/workdir/UnoApiHeadersTarget/offapi/normal/com/sun/star/i18n/NumberFormatMapper.hpp:38 > #13 0x00007fab42b03801 in ImpSvNumberformatScan::ImpSvNumberformatScan(SvNumberFormatter*) (this=0x61a000036c80, pFormatterP=0x616000442580) at /data/sbergman/lo-san/core/svl/source/numbers/zforscan.cxx:132 > #14 0x00007fab4296fe31 in SvNumberFormatter::ImpConstruct(o3tl::strong_int<unsigned short, LanguageTypeTag>) (this=0x616000442580, eLang=...) at /data/sbergman/lo-san/core/svl/source/numbers/zforlist.cxx:320 > #15 0x00007fab4296ed9c in SvNumberFormatter::SvNumberFormatter(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, o3tl::strong_int<unsigned short, LanguageTypeTag>) (this=0x616000442580, rxContext=uno::Reference to (class cppu::(anonymous namespace)::ComponentContext *) 0x611000006710, eLang=...) at /data/sbergman/lo-san/core/svl/source/numbers/zforlist.cxx:274 > #16 0x00007faac3951184 in SwDoc::EnsureNumberFormatter()::$_0::operator()() const (this=0x7faad0a53ba0) at /data/sbergman/lo-san/core/sw/source/core/doc/docfmt.cxx:1728 > #17 0x00007faac3942b5c in comphelper::doubleCheckedInit<SvNumberFormatter, SwDoc::EnsureNumberFormatter()::$_0, osl::Guard<osl::Mutex>, osl::GetGlobalMutex>(std::atomic<SvNumberFormatter*>&, SwDoc::EnsureNumberFormatter()::$_0, osl::GetGlobalMutex) (pointer=..., function=..., guardCtor=...) at /data/sbergman/lo-san/core/include/comphelper/doublecheckedinit.hxx:53 > #18 0x00007faac3942984 in SwDoc::EnsureNumberFormatter() (this=0x619000395d80) at /data/sbergman/lo-san/core/sw/source/core/doc/docfmt.cxx:1725 [...] acquiring the osl::GetGlobalMutex() in frame 17 and trying to acquire the getImplHelperInitMutex() in frame 5, and > Thread 4 (Thread 0x7faad5a52640 (LWP 359614) "InitUpdateCheck"): > #0 __lll_lock_wait (futex=0x7fab5c2e69e0 <globalMutexImpl>, private=0) at /usr/src/debug/glibc-2.32-20-g5c36293f06/nptl/lowlevellock.c:52 > #1 0x00007fab5a7a57f1 in __GI___pthread_mutex_lock (mutex=0x7fab5c2e69e0 <globalMutexImpl>) at /usr/src/debug/glibc-2.32-20-g5c36293f06/nptl/pthread_mutex_lock.c:115 > #2 0x00007fab5c0c9bb7 in osl_acquireMutex(oslMutex) (pMutex=0x7fab5c2e69e0 <globalMutexImpl>) at /data/sbergman/lo-san/core/sal/osl/unx/mutex.cxx:100 > #3 0x00007fa848b547ca in osl::Mutex::acquire() (this=0x7fab5c294960 <osl_getGlobalMutex::globalMutex>) at /data/sbergman/lo-san/core/include/osl/mutex.hxx:57 > #4 0x00007fa848b52c3a in osl::Guard<osl::Mutex>::Guard(osl::Mutex*) (this=0x7faad467c820, pT_=0x7fab5c294960 <osl_getGlobalMutex::globalMutex>) at /data/sbergman/lo-san/core/include/osl/mutex.hxx:128 > #5 0x00007fa848b6515d in com::sun::star::lang::cppu_detail_getUnoType(com::sun::star::lang::XTypeProvider const*) () at /data/sbergman/lo-san/core/workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/lang/XTypeProvider.hpp:67 > #6 0x00007fa848b64e49 in cppu::UnoType<com::sun::star::lang::XTypeProvider>::get() () at /data/sbergman/lo-san/core/include/cppu/unotype.hxx:296 > #7 0x00007fa848b62049 in com::sun::star::lang::XTypeProvider::static_type(void*) () at /data/sbergman/lo-san/core/workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/lang/XTypeProvider.hpp:118 > #8 0x00007fab53e51d46 in cppu::getTypeEntries(cppu::class_data*) (cd=0x7fa848bb4b28 <cppu::detail::ImplClassData<cppu::WeakImplHelper<com::sun::star::deployment::XUpdateInformationProvider, com::sun::star::ucb::XWebDAVCommandEnvironment, com::sun::star::lang::XServiceInfo>, com::sun::star::deployment::XUpdateInformationProvider, com::sun::star::ucb::XWebDAVCommandEnvironment, com::sun::star::lang::XServiceInfo>::operator()()::s_cd>) at /data/sbergman/lo-san/core/cppuhelper/source/implbase_ex.cxx:89 [...] acqiring the getImplHelperInitMutex() in frame 8 and trying to acquire the osl::GetGlobalMutex() in frame 5. (While we could have additionally reverted mpNumberFormatter to a unique_ptr, all places that would---explicitly or implicitly---reset it would need to do so with mNumberFormatterMutex locked, so those places need to be explicit anyway.) Change-Id: Ide52279e81a5a70b57565a1d11fb099f0c19f5ae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107167 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-12-03SwTextINetFormat: Modify no moreBjoern Michaelsen
Change-Id: Ibb73c88127c96959101e6a2aa4f9602dcadc6e15 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107004 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-12-03tdf#107870 sw: don't jump to cursor setting Record ChangesLászló Németh
Using Edit->Track Changes->Record or Record Tracked Changes on Track Changes toolbar scrolled the pages back to the text cursor, breaking the review process of the document. Change-Id: I890e845ff94b636dd6edae19969d913e8d7a7b65 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107005 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2020-12-03tdf#137838 SW: Add ability to create a hyperlink to a drawing objectJim Raykowski
within a document Change-Id: Ie51ad6a0a9da1a2478a4a4abc73ba793ea92704c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105164 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2020-12-02SwTableBoxFormat: Modify no moreBjoern Michaelsen
Change-Id: I02775fa3ac4cdc01ed89e969449ec96427de30db Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107008 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-11-30loplugin:stringviewparam include comparisons with string literalsNoel
Change-Id: I8ba1214500dddaf413c506a4b82f43d63cda804b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106559 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-11-30ofz#28041 Null-dereferenceCaolán McNamara
since... commit 089bb2f3bd2b5fc8118caaa6b7c6b82dd36a094e Date: Sun Nov 22 21:15:13 2020 +0100 Refactor SwFormatDrop ... and get rid of the SwClientNotifyCall. Change-Id: I6c320d2b14fc393f00a9b13949a338886e386b6d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106846 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-11-26tdf#138479 tdf#137769 sw ChangesInMargin: fix Undo in paragraphsLászló Németh
Fix Undo of embedded tracked deletions in paragraphs, for example Undo of deletions Lorem->Loem->Lm resulted only Loem, moreover a crash in the case of typing (not tracked) text before the tracked deletions. Now the last tracked deletion is chosen by the biggest SwRangeRedline ID during Undo instead of the lost/modified redline range in case of hidden redlines of the ChangesInMargin mode. Note: revert commit 4ad0459494303745b377c848c681a747f294fc64 (tdf#138135: sw ChangesInMargin: join characters at backspac) to avoid crash on extra Undo (tdf#137769). Showing deleted character sequence in margin needs grouping of hidden redlines, as for managing tracked changes. Change-Id: Ia9dab5cbbc08f39e05ff8e499efff37bc825c624 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106582 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2020-11-26Refactor SwFormatDropBjoern Michaelsen
... and get rid of the SwClientNotifyCall. Change-Id: I2118290944c21e9773c359109e60e7778459a41f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106365 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-11-24sw: fix SwXTextRange::createEnumeration() inside table cellMichael Stahl
This would set CursorType::SelectionInTable but leave m_pOwnTable and m_pOwnStartNode uninitialised, causing sw/source/core/unocore/unoobj2.cxx:399: SwXParagraphEnumeration: table type but no start node or table and then the enumeration would return the table it's in as the first element, which is quite annoying. Refactor the creation of SwXParagraphEnumeration to prevent this. Change-Id: I4e9e3456bdf66b9822d19ad985a20b094e6bbba4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106532 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-11-24tdf#42949 Fix new IWYU warnings in directory swGabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I4bb84c3f401aba8a3dede9cec3a7f2187a2ba02a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106473 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-11-24sw: fix copying and deleting of section content via APIMichael Stahl
The problem happens if a section starts or ends with a table: SwXTextSection::getAnchor() may return a SwXTextRange with one position in a table cell and another position in a different table cell, or outside the table, neither of which is valid to set the cursor via SwXTextViewCurosor::gotoRange(). Introduce a new special mode for SwXTextRange, RANGE_IS_SECTION, analogous to RANGE_IS_TABLE but actually working. Only SwXTextView can be used to create XTransferables, and it requires selecting first via either the SwXTextViewCursor or select(). It's currently not possible to select the content of a section in the ViewShell in these problematic cases, and would be some effort to add. So add a new interface XTransferableTextSupplier that can be used to create XTransferable from the SwXTextRange with RANGE_IS_SECTION. The core CopyRange() and DeleteRange() functions can deal with SwPaMs that start or end in non-text-nodes, so pass the whole section content to these in SwXTextRange::setString() and in SwXTextView::getTransferableFromTextRange(). Change-Id: If7e3210e8a26f5618317c294f2b2f3ed5c217f1c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106293 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-11-24loplugin:stringviewparam extend to comparison operatorsNoel
which means that some call sites have to change to use unicode string literals i.e. u"foo" instead of "foo" Change-Id: Ie51c3adf56d343dd1d1710777f9d2a43ee66221c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106125 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-11-23Similarly, the proper noun “SmartArt” shouldn’t be pluralizedAdolfo Jayme Barrientos
This completes commit ab97fe1b9b988936bf96b198387eaf3ff00fed61. Change-Id: Ie73ee1ee763034cb03a5a6d7acf20f145e34056f
2020-11-23Copyedit: “Fontwork” is uncountable, “be sure” ≠ “make sure”, ↵Adolfo Jayme Barrientos
“in order to” redundant Change-Id: I0f361823d7f9af5de4e8c62011f66d59670346d4
2020-11-21SaveTable: Replace SwClientNotifyCallBjoern Michaelsen
Change-Id: I0e961844836d60e96bcda178612fc0372a55cef1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106319 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-11-21Remove SwIterator hack in untableBjoern Michaelsen
- also move SwCellFrame from Modify to SwClientNotify Change-Id: I9e486623a5a3245726e13552223a76610d1d3494 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106313 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-11-20tdf#137185 sw: move shape text on adding textboxAttila Bakos (NISZ)
The original text of the shape is moved to the new (text frame of the) text box instead of overlapping the text content added later. Change-Id: I2ad8865cdbe3c424c70985737ecda3ac9315cabc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104942 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2020-11-19sw_fieldmarkhide: adapt SwUndoInsSection with ToXMichael Stahl
... similar to commit 405661a98f01416c596083262691cedd941733a1. Change-Id: Id4faa6334816f361d5543ba38af50b85dbc2b2a6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106127 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-11-19tdf#123936 Formatting files in module sw with clang-formatPhilipp Hofer
Change-Id: I6243bc95129bf81a124d006ce0fc1aa1b5f618bb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105718 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Jenkins
2020-11-17SwGrfNode: Remove graphic arrived hackBjoern Michaelsen
Change-Id: Ib8fb5b223a1b3cc05a75ecfcc7c763bbb3928fae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105965 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-11-16Replace needless SwClientNotifyCalls with CallSwClientNotifyBjoern Michaelsen
Change-Id: I967d458be7cd7c68ff410357da0cb0163dcb454e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105908 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>
2020-11-14tdf#136868, tdf#136912, Styles Inspector: Translatable categoriesAron Budea
...and "Direct Formatting" renamed to "Character Direct Formatting" Change-Id: I9fe711bfebfaa90a9797b6e1a47e41a5f307170b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105843 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-11-14tdf#138135: sw ChangesInMargin: join characters at backspaceLászló Németh
Words deleted by pressing multiple backspaces weren't shown on margin, only their first letter. Change-Id: I2f5d0bb057250d3bfd788e1007f1ad24f8c3c2fd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105807 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2020-11-12replace RES_GRF_REREAD_AND_INCACHE with sw::GrfRereadAndInCacheHintBjoern Michaelsen
Change-Id: I8b36fd0dde6f4e7f83cf73dc8b6aefb196babb8f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105571 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>