summaryrefslogtreecommitdiff
path: root/sw
AgeCommit message (Collapse)Author
2017-07-21sw: it looks like MoveRange() is never called withMichael Stahl
... Undo enabled; let's try if somebody finds a way and remove this later if not. Change-Id: I9bad32342b129743ecfecb26901857cc4c79a89d
2017-07-21tdf#99692 sw: fix bookmark positions in tables at start of redlinesMichael Stahl
The code assumes that if it can move the cursor backward in line 2038, that move can be "inverted" by moving the cursor forward after the content has been moved - but if the cursor moved back a node, and the moved content does not start with a SwTextNode, the cursor will move forward skipping over the non-text nodes, so offsets in the aSaveBkmks (and aSaveRedl, presumably) are going to be wrong. Just don't use Move() if it leaves the current node. Change-Id: I95278a10c14aeba9f76558486bb2712f6726dbcb
2017-07-21Initializing Date with an arbitrary day count is nonsenseEike Rathke
It works here because Date is ignored and only Time is returned, so just init empty. The original value was a double date.time since null date. Change-Id: If420769464860481416b0da172ddd2e17c13e641
2017-07-21Eliminate DateTime::operator+=() and -=() with POD typesEike Rathke
And make some tools::Time conversion ctors explicit to catch more oddities like automatic conversion from sal_Int64 that might be unintentional. Change-Id: If275297d86d6657544c056a712b862523e310e44 Reviewed-on: https://gerrit.libreoffice.org/40275 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Eike Rathke <erack@redhat.com>
2017-07-21Fix typosAndrea Gelmini
Change-Id: I43f38b4dda6b1999d84d9f9760d0fae4c0358394 Reviewed-on: https://gerrit.libreoffice.org/40277 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com>
2017-07-21despite the comment and missing translation, REDLINE undo comment gets usedCaolán McNamara
during CppunitTest_sw_tiledrendering at least Change-Id: I0de400443858926d7e2041934bbab61ade214c71
2017-07-21tdf#108867 sw: fix dangling text box frame format pointers in UndoMichael Stahl
If the text box is removed, the SwFrameFormat of the drawing shape still retains a pointer to the frame SwFrameFormat, and the latter is owned by the SwUndoFlyBase. This is pretty bad, so try to clear & reset the connection between them in SwUndoFlyBase::InsFly() and DelFly(). Hopefully nothing will actually delete the drawing shape SwFrameFormat while the Undo object is alive. Note that when the SwUndoInsLayFormat is created when the text box is added, the GetOtherTextBoxFormat() returns null as it's set later, that's why the constructor can't do anything. Change-Id: Iae562b6f8f272e47b2b5cf8ee80778db15d29ce0
2017-07-21make sure the strings for each undo matchCaolán McNamara
Change-Id: I6d380dde0214b41535e99798c24b19fe21e30772
2017-07-21can use the "real" type for RES_SRCTYPES nowCaolán McNamara
Change-Id: Ied1f7a8c4135d3fd6a4581ea5e92f89b2e6b3067
2017-07-21de-hrc various thingsCaolán McNamara
e.g. helpid[s].hrc -> helpids.h and insert include guards where missing move "ordinary" defines into .hxx files remove .hrc entries that are used as arguments to dialog factory when a dedicated method can be added instead Change-Id: I792fb8eb0adfaa63cf354e6e57401fc943e9196e
2017-07-21migrate to boost::gettextCaolán McNamara
* all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl * all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string") * ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching MODULE .mo files * UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui goes from l10n target to normal one, so the res/lang.zips of UI files go away * translation via Translation::get(hrc-define-key, imbued-std::locale) * python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there to keep finding the .hrc file uniform) so magic numbers can go away there * java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation mechanism * en-US res files go away, their strings are now the .hrc keys in the source code * remaining .res files are replaced by .mo files * in .res/.ui-lang-zip files, the old scheme missing translations of strings results in inserting the english original so something can be found, now the standard fallback of using the english original from the source key is used, so partial translations shrink dramatically in size * extract .hrc strings with hrcex which backs onto xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap * extract .ui strings with uiex which backs onto xgettext --add-comments --no-wrap * qtz for gettext translations is generated at runtime as ascii-ified crc32 of content + "|" + msgid * [API CHANGE] remove deprecated binary .res resouce loader related uno apis com::sun::star::resource::OfficeResourceLoader com::sun::star::resource::XResourceBundleLoader com::sun::star::resource::XResourceBundle when translating strings via uno apis com.sun.star.resource.StringResourceWithLocation can continue to be used Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
2017-07-20Added Test to check TableAutoFormat Style after Save/LoadVarun Dhall
Change-Id: I466d5c5536d4c4310356f38569f7a91e0f36ba1d Reviewed-on: https://gerrit.libreoffice.org/40104 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-07-20tdf#46852 fix spellcheck continue at beginningLuke Deller
When a spellcheck reaches the end of the document, it is supposed to be able to continue from the beginning of the document to the point at which the spellcheck was started. This was not working in the case where the word at the starting position was replaced due to a spelling correction, which causes the starting position to be lost. Fix this situation by recording the position immediately *before* the spellcheck starting position, so that it will not be affected by a spelling correction *at* the starting position. Change-Id: I9483fd5937dc1e235f6f9639d4856fe15e3d47a6 Reviewed-on: https://gerrit.libreoffice.org/40123 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-07-20tdf#109197 crash when deleting user field variables in swNoel Grandin
regression from: commit a706bb06d5326e7a997dd1d71f3f947bd0ad28e6 "new loplugin: useuniqueptr: sw part 1" Change-Id: I57f9c9e6d7eeccc033b71d7182c960f3d79df73c Reviewed-on: https://gerrit.libreoffice.org/40240 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Jenkins <ci@libreoffice.org>
2017-07-20tdf#87914 Add small caps command to Format menuYousuf Philips
Change-Id: I6c1faa610d41918501e7111cd447050329b9d8e7 Reviewed-on: https://gerrit.libreoffice.org/39421 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-07-20tdf#109228: FILESAVE: ODT: Anchor changed to 'to character' after RTTamás Zolnai
Ignore frames without names, becuase the code does not handle them well. It does not affect those use case for which the deduplication code was added. Change-Id: I08ad062b8b11cc06323467329d8c4e97bc4932dd Reviewed-on: https://gerrit.libreoffice.org/40222 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2017-07-20sw: std::copy_if is now availableTakeshi Abe
Change-Id: I78c4832ba966609fd9e2fa70b1addf4b640692fb Reviewed-on: https://gerrit.libreoffice.org/40185 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-20tdf#109080 First page header/footer ODF (2/2)Luke Deller
The proposal to add <style:header-first> / <style:footer-first> to the ODF standard has not yet been accepted, so meanwhile we should be using an extension namespace for these elements. This second commit changes LibreOffice to emit <loext:header-first> / <loext:footer-first> Change-Id: Iffec14696a09c3378a6e65b78b5c63b9a43d9b46 Reviewed-on: https://gerrit.libreoffice.org/39865 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-07-20tdf#108849: allow out-of-order sectPrMike Kaganski
According to ISO/IEC 29500-1:2016(E) 17.6.17), the final <w:sectPr> must be the last child element of the body element. Also, this is enforced in schema for CT_Body complex type (Annex A. (normative) Schemas – W3C XML Schema, A.1 WordprocessingML, page 3866), where sectPr is a part of <xsd:sequence>, and thus *must* stay at specific place in sequence, namely being the last element, and be at most one instance. However, real-life documents (generated by some third-party software) have sectPr before other body contents. Unfortunately, MS Word seems to allow this standards-violating content, and thus encourages creation of non-standard documents by third-party generators. This patch doesn't assume that current final (body-level) sectPr is the last body element, and does not mark current paragraph as last section's paragraph. Thus, current section (possibly started after previous paragraph-level sectPr) is continued after final sectPr is closed. Change-Id: I8e88288bc6659d77d17986514b3b4fe16a5b45d9 Reviewed-on: https://gerrit.libreoffice.org/40161 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2017-07-20tdf#109123 Change SwDocIdle base class to IdleJan-Marek Glogowski
This hides SwDocIdle from SalInstance::AnyInput( VCL_INPUT_ANY ) on Windows. Otherwise Writer assumes there is more stuff to do, as it can't know the scheduled Windows event is just for itself, resulting in a busy loop, which freezes Writer. Change-Id: I919c40e8e1673eb09a69a3084203d1c4a6ecac8a Reviewed-on: https://gerrit.libreoffice.org/40189 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2017-07-19tdf#107975: Revert "fix deleting an image anchored to last paragraphMichael Stahl
... in document" This reverts commit 2903d85d6197829633d7f96c95cd55821c2c20ff. It was a good idea, but is not complete. Change-Id: Ia0da2640889ce6e78b89b27c75fae9d6508afd40
2017-07-19tdf#109188 Always load documents read-only in SwOneExampleFrameSamuel Mehrbrodt
Should be no problem since 38a3743e0c5d52f9386f74097fd512d3133fbbe3 Change-Id: I0ce47bc2bdaa900559a16baf25305066977caa6d Reviewed-on: https://gerrit.libreoffice.org/40140 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-07-19sw mailmerge: add writer data source testcaseMiklos Vajna
Fails with commit 83b43ef2223b66484e0e90e7b614886e06f955b5 (sw mail merge: add support for the new 'writer' connectivity driver, 2017-07-18) reverted. Change-Id: I675e15bdbc655a34cca3de2b5d070167ca69cac8 Reviewed-on: https://gerrit.libreoffice.org/40174 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-07-18sw mail merge: add support for the new 'writer' connectivity driverMiklos Vajna
By mapping the .odt, .sxw, .doc and .docx extensions to sdbc:writer:. If we are at it, also accept xlsx next to xls. Change-Id: I8c6769b282adec1e7e8d191170e7aa9b324f2018 Reviewed-on: https://gerrit.libreoffice.org/40147 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-07-18Change nonsense non-const Date* GetNullDate() to const Date&Eike Rathke
* first, a non-const Date* may leave the impression that one could change the NullDate through the pointer, which is only partly successful; luckily no one did that * second, there is always a NullDate so checking for nullptr is superfluous * third, the pointer was dereferenced (maybe after a check) everywhere to obtain the NullDate, luckily.. Change-Id: I3c3a788ba0336596ac6bde4c96e77a0cdb7a4a95
2017-07-18Fix typosAndrea Gelmini
Change-Id: If6023dfa1d90f79185197622a738373a189ea6af Reviewed-on: https://gerrit.libreoffice.org/40118 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-07-18No reason to silently misbehave when these UNO services are missingStephan Bergmann
...which e.g. made it unnecessarily hard to track down 7a23668e4f4e235c7a4e1c99e38506bd9c874be8 "Fix CppunitTest_cppcanvas_emfplus" Change-Id: I2f537fabb067b77e82b900bd2cba30fd65c275aa
2017-07-18Partially revert c1723a3b6Varun Dhall
The loop behavior was changed by the original commit instead of starting from 1 it started from 0 due to which it ends up saving Default Style and missed an important custom style Change-Id: I4853b70fbb6a24c9ccbd0b5713c6dbe4215830a6 Reviewed-on: https://gerrit.libreoffice.org/40093 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Jenkins <ci@libreoffice.org>
2017-07-18tdf#109080 First page header/footer ODF (1/2)Luke Deller
The proposal to add <style:header-first> / <style:footer-first> to the ODF standard has not yet been accepted, so meanwhile we should be using an extension namespace for these elements. This first commit (intended for backport) adds support for reading <loext:header-first> / <loext:footer-first> Change-Id: I616b6a0acaead9d767ae7d119e539b865f3a6774 Reviewed-on: https://gerrit.libreoffice.org/39863 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-07-18tdf#108955 RTF import: fix missing paragraph backgroundMiklos Vajna
See commit 1be0a3fa9ebb22b607c54b47739d4467acfed259 (n#825305: writerfilter RTF import: override style properties like Word, 2014-06-17) for the context. Here the problem was that details of the paragraph background were removed during the style deduplication, but not the paragraph background sprm itself. That was interpreted (correctly) by dmapper as "no background", rather than "inherit from style". Change-Id: I88904cbd0a3c7686ede1f98d06df8fc875978afc Reviewed-on: https://gerrit.libreoffice.org/40099 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-07-17Remove duplicated includesAndrea Gelmini
Change-Id: Iba098ff1c96fb6f830e136102f687b345fb958ef Reviewed-on: https://gerrit.libreoffice.org/39981 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-07-17Embedded documents: don't open in web view modeSzymon Kłos
Change-Id: I621d4ba4223c1b389acdb63bb6f8f10ef3f3ba48 Reviewed-on: https://gerrit.libreoffice.org/40076 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2017-07-17Translate randomly found German commentsJohnny_M
Change-Id: I7db515e04d3845c3ec51c7f88fe51bcafddd5268 Reviewed-on: https://gerrit.libreoffice.org/39987 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Eike Rathke <erack@redhat.com>
2017-07-17Fix typosAndrea Gelmini
Change-Id: I9d2c641b485c32ddccf0bfaaed1d0796572d1d33 Reviewed-on: https://gerrit.libreoffice.org/39477 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
2017-07-17sw: prefix members of SwFormatAnchorMiklos Vajna
Members had "", "m" and "m_" as prefixes, standardize on the later. Change-Id: I468b3444e4918809bc9a07884c662af042abbd9e Reviewed-on: https://gerrit.libreoffice.org/40034 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-07-17extend loplugin useuniqueptr to OUString pointersNoel Grandin
Change-Id: Ieb5bab3895e1edaff497c4a1a88303ccac097edc Reviewed-on: https://gerrit.libreoffice.org/39948 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-15coverity#1415097 Uninitialized scalar fieldCaolán McNamara
Change-Id: Id9c70160143be0bede015f07e091c25f36bb13db
2017-07-15emfplus: create a wmf/emf/emf+ primitive based importerArmin Le Grand
First steps to organize an importer that can read/interpret wmf/emf/emf+ and deliver a primitive representation for the content by parsing it. Use the same mechanisms as already applied for Svg, so to reuse abilities to keep original binary data to allow save again and embedding in files and have an implemented replacement bitmap based representation. For this, unify the used helper classes to handle more than just Svg. For 1st try, add test code and static bool switches Change-Id: I6e0a82943541d811a8f8d65a84115569fcd8cee7
2017-07-15tdf#103978 textboxhelper: syncProperty OPAQUE (wrap in background)Justin Luth
Although the containing shape is in the background (and thus the normal paragraph text is still visible), the shape's text was still painting over top of the normal paragraph text because the textbox was set as opaque and not transparent. Setting the textbox to sync the opacity value of its containing shape. Change-Id: I02477e2fa7def1f13590afcaa7c6564dd79d6406 Reviewed-on: https://gerrit.libreoffice.org/39672 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Justin Luth <justin_luth@sil.org>
2017-07-14loplugin:staticmethodsJan-Marek Glogowski
Change-Id: I40d08932115e07470de73b0f0dc9b9b03e608fbe
2017-07-14sw: make SwGrfNode::mpReplacementGraphic swappableMichael Stahl
Same as previous commit, but for sw. Change-Id: Id678de3f512204437e37aaedf24e24aff7a9e592
2017-07-14CppunitTest_sw_uiwriter: disable testLinesMoveBackwards... on macOSMiklos Vajna
No idea off the top of my head what is the problem here, seeing Linux and Windows is happy; clang on Linux as well. Change-Id: I56c79b37a5648d9afd02d8e161ea4a279cc89744
2017-07-14tdf#108524 sw: handle sections inside tables in SwFrame::GetPrevSctLeaf()Miklos Vajna
This addresses the sub-problem described in comment 12 of the bug, i.e. text frames are now moved to the first page from the second one when text frames are deleted on the first page. Change-Id: Ic0ede45381fb84b13d1ac02e4d1f39d817650616 Reviewed-on: https://gerrit.libreoffice.org/39946 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-07-14use more OUString::operator== in swNoel Grandin
Change-Id: If43c8bfa906fc711ed8026a1e06add3d7ac166d9 Reviewed-on: https://gerrit.libreoffice.org/39941 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-14extend loplugin useuniqueptr to POD typesNoel Grandin
Change-Id: I6ff24f048bd8f75bf87a78b718f37b57855d4781 Reviewed-on: https://gerrit.libreoffice.org/39932 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-14tdf#97362: TextPortionEnumerationTest partially migrated to python (part 3)jmzambon
Convert tests: - test_marks1 - test_marks2 - test_marks3 - test_frame_mark1 - test_frame_mark2 - test_frame_mark3 - test_frame_mark4 - test_frames1 - test_frames2 - test_frames3 - test_frames4 - test_frames5 - test_ruby_hyperlink1 - test_ruby_hyperlink2 Change-Id: I3ee495cdd88cffefd3980184bac0a72bae6a749f Reviewed-on: https://gerrit.libreoffice.org/38976 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-07-14xmlsecurity pdf verify: push_back -> emplace_backMiklos Vajna
And a few other similar small cleanups. Change-Id: I91c992f33f2166d1cf27cbc9def1b69965040658 Reviewed-on: https://gerrit.libreoffice.org/39928 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-07-13tdf#108524 sw: allow frames in follow sect-in-tables in SwFlowFrame::MoveBwd()Miklos Vajna
The intention is to filter out text frames directly inside tables; since tables in general reflow by moving all of the content to the first page, then moving not fitting content to the next pages. Section frames are different, there we explicitly move content backwards, similarly to page body frames. Teach SwFlowFrame::MoveFwd() that a text frame inside a section-in-table is the section situation, not the table situation, since what matters here is the direct parent. To be on the safe side allow this for follow section frames only. This is necessary, but not enough to address the sub-problem described in comment 12 of the bug. At least SwFrame::GetPrevSctLeaf() is invoked to consider a precede section frame, though. Change-Id: Ic88602cffefbbc81ecc90e3880be2a098f60fb04
2017-07-13convert pXRelTo/pYRelTo to boost::optionalNoel Grandin
seems wasteful to be allocating a single int for this Change-Id: I8e1122fec8c8dc90805a38b677a1e08cd89a66ff Reviewed-on: https://gerrit.libreoffice.org/39917 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-13move round-tripables from rtfimport to new rtfexport2Justin Luth
This serves two purposes. It helps to prevent regressions and it allows focusing on features that still don't export properly. Also created rtfexport3 since the other two are already very full. Change-Id: I7d580f575c1debe344275869fefcbba6e29cbad6 Reviewed-on: https://gerrit.libreoffice.org/39842 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Justin Luth <justin_luth@sil.org>