summaryrefslogtreecommitdiff
path: root/sw
AgeCommit message (Collapse)AuthorFilesLines
2019-07-18sw: missing SolarMutexGuard in SwXFrame::attach()Michael Stahl1-0/+2
Causes assert in a test i'm adding... Change-Id: I5be24aa9683ec0d31494c0c97270d1d58692f764 Reviewed-on: https://gerrit.libreoffice.org/75796 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit 8dfe166a879a17bd8c2e0859d027ff923258a9d8) Reviewed-on: https://gerrit.libreoffice.org/75826 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2019-07-18Resolves: tdf#126439 dialog should be modalCaolán McNamara1-0/+3
Change-Id: Ib922be4375533aff69264ee5dc99d521306f93c5 Reviewed-on: https://gerrit.libreoffice.org/75788 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2019-07-17Related: tdf#126236 keep user defined responses out of ambiguous rangeCaolán McNamara2-6/+3
Change-Id: I6481f40ba5f50c3d76978b0f4a477f1d0b9adc99 Reviewed-on: https://gerrit.libreoffice.org/75704 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
2019-07-17Resolves: tdf#126236 reset modality back to initial modality on closeCaolán McNamara1-0/+2
Change-Id: I959820b75a70f6090120970c9ce11787bbe25037 Reviewed-on: https://gerrit.libreoffice.org/75705 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
2019-07-14tdf#126004: test EditShell is ok before calling ValidateAllParagraphSignaturesJulien Nabet1-1/+2
See https://bugs.documentfoundation.org/attachment.cgi?id=152295 Change-Id: I6a098a18ef8b119b7cdea7cbabd6d3021bf1fb6f (cherry picked from commit 12252f27d108402df02a298bbe1b6e8f290b34d7) Reviewed-on: https://gerrit.libreoffice.org/75523 Tested-by: Jenkins Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
2019-07-12tdf#126333 use dialog color for "button" highlightJan-Marek Glogowski1-3/+2
This control has many more problems. This is just a minimal fix, so it'll use dialog color for the highlight. In addition it uses the same color for the arrow then for the text. Change-Id: Iaf263087bc09309267b2d165331d710dfc92fc77 Reviewed-on: https://gerrit.libreoffice.org/75419 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de> (cherry picked from commit 2060f9598bc4480c44465abc9250b595c09af188) Reviewed-on: https://gerrit.libreoffice.org/75425 Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2019-07-09NB writer tabbed_single: fix wrong alignment of commandsandreas kainz1-6/+4
Change-Id: Ic5001f86cfb0b403fd05aa2609ebb395a9e514b1 Reviewed-on: https://gerrit.libreoffice.org/75252 Tested-by: Jenkins Reviewed-by: andreas_kainz <kainz.a@gmail.com>
2019-07-09tdf#126173 RTF import: fix lost SHAPE fieldsMiklos Vajna2-0/+92
Commit 5a5d55a8a0f82406a8001015a723596f21d3562c (fdo#82860 RTF import: fix handling of SHAPE fields, 2014-10-15) already tried to handle this, but aCode is the shape command + its parameters (SHAPE \* MERGEFORMAT) for the bugdoc, while what we want is just the shape command. The field variable already contains a tokenized version, which was used previously only to decide if a field is unhandled or not. Reuse that for the shape comparison, so bugdoc's shape with parameters also appears. Change-Id: I7e044b94bcfab490c956b33c11dd6c69443939f5 Reviewed-on: https://gerrit.libreoffice.org/75243 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com> (cherry picked from commit 9a15a75dfa7ab8c5d51c411e0e39d68d22b7587a) Reviewed-on: https://gerrit.libreoffice.org/75288 Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
2019-07-08tdf#125863 Rework tdf#107593 so header footer delete doesn't crashJim Raykowski2-3/+4
Header footer delete from the last page when last page is unneeded (stack level 24 SwRootFrame::RemoveSuperfluous /// remove pages that are not needed at all) causes SwFrameMenuButtonBase::dispose() which sets m_pFrame to nullptr which causes crash when IsEmptyHeaderFooter calls GetPageFrame(). Doing ToggleHeaderFooterEdit() when header or footer deletion is accepted in SwWrtShell::ChangeHeaderOrFooter avoids the crash. SwHeaderFooterWin is also disposed which would make the GrabFocusToDocument crash if it got that far so use the shell window which is still valid here to GrabFocusToDocument. Change-Id: Iaced23e6716442671c5ea29b79be178f4fc836d3 Reviewed-on: https://gerrit.libreoffice.org/75010 Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> Tested-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit 151eae314358f9ee0df017cb89fbc8c87c969cdb) Reviewed-on: https://gerrit.libreoffice.org/75205 Tested-by: Jenkins
2019-07-05Revert "Colibre, Breeze, elementary, KJ: tdf#107144, Breeze: tdf#126233"Rizal Muttaqin1-19/+19
This reverts commit 000305699b62a09c8d3d580b0fc8d320d9ea34f8. Change-Id: I2bb2d814d28d86afc2d74f549287614ce5db6f3b Reviewed-on: https://gerrit.libreoffice.org/75110 Reviewed-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id> Tested-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
2019-07-05Colibre, Breeze, elementary, KJ: tdf#107144, Breeze: tdf#126233rizmut1-19/+19
- Add Impress transition, 3D related icons - Add many 32 px size for Calc and Draw specific icons - Fix blurred icons - Add more missing menu items Change-Id: I915e31aee51e84c88dd99e1fa3f6d5a4c7ca50d0 Reviewed-on: https://gerrit.libreoffice.org/75106 Tested-by: Jenkins Reviewed-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id> (cherry picked from commit 623ad884051ad4ea17ba7baa77076c49000e49fa) Reviewed-on: https://gerrit.libreoffice.org/75109 Tested-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
2019-07-03sw: fix moving of at-page anchored flys to different pageMichael Stahl1-0/+2
The problem is that some flys are anchored at a page with Y pos 35k and are moved to a page with Y pos 17k, while retaining mbFrameAreaPositionValid=true and their existing Y position. The flys will never be painted or even invalidated again because their position is off-page. This is somehow a regression from commit 0b53f794ffb2550288610b9488f11fd21ab85aae - without the new mutation of an empty-page to a normal page due to at-page flys by resetting m_bEmptyPage in SwPageFrame::UpdateAttr_() on it the problem didn't happen. Due to the above commit, the page 3 is not an empty-page any more as it has 2 flys anchored on it; previously those flys were moved (only in the layout, not in the model!) to page 4 by some funny code in SwRootFrame::AssertPageFlys(), which at first glance seems like an improvement. Change-Id: Ia071931b26e64245f90233232dd2ac0d64365ce6 Reviewed-on: https://gerrit.libreoffice.org/75009 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit 5cee586a97a11c23dd252accc42099bd5e9b4187) Reviewed-on: https://gerrit.libreoffice.org/75046
2019-07-03update groupedbar NB layouts for more consistent between different appsandreas kainz3-412/+933
split groups to smaller groups for a better priority- functionality update Drop-Down GtkMenus and make them consistent Change-Id: Iece18df3c1ed2e066e6820e67755d52a30d63b27 Reviewed-on: https://gerrit.libreoffice.org/74990 Tested-by: Jenkins Reviewed-by: andreas_kainz <kainz.a@gmail.com> (cherry picked from commit 7f8e5077f62aebf758004ac478918f586a8cce15) Reviewed-on: https://gerrit.libreoffice.org/74997 Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com> Tested-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2019-07-01sync NB master with 6.3 branchandreas kainz4-3572/+7329
Change-Id: I178fd555db878dcf89a905b6eb36599a539df10d Reviewed-on: https://gerrit.libreoffice.org/74965 Tested-by: Jenkins Reviewed-by: andreas_kainz <kainz.a@gmail.com>
2019-06-29MSForms: Better rendering of drop down form field's buttonTamás Zolnai1-1/+1
Change-Id: If5ab1b2a9dd8d68cc89b4c6ba8f3b32d7f006c1c Reviewed-on: https://gerrit.libreoffice.org/74913 Tested-by: Jenkins Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2019-06-28tdf#78657 DOCX export: fix hyperlink inserted to imageTünde Tóth3-7/+34
Hyperlink inserted to image lost after export. tdf78657_picture_hyperlink.docx: Test file from Microsoft Word 2016. Reviewed-on: https://gerrit.libreoffice.org/74653 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org> Conflicts: sw/qa/extras/ooxmlexport/ooxmlexport13.cxx Change-Id: I1b2b9fe023aea3f46848a9d616374f7c08598756 Reviewed-on: https://gerrit.libreoffice.org/74841 Tested-by: Jenkins Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
2019-06-28tdf#125518: docx export: save anchors for diagramsVasily Melenchuk4-18/+39
Previously all diagrams were saved as inline objects ignoring possible wrapping options and anchors. Change-Id: I0952fb33d4be4c288c919156af9549f8195b7ead Reviewed-on: https://gerrit.libreoffice.org/72291 Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> (cherry picked from commit ece4a0f78bb60ef079722e8fa029f0ec253d0452) Reviewed-on: https://gerrit.libreoffice.org/74737 Tested-by: Jenkins
2019-06-27Breeze: Fix for tdf#107144, tdf#125879rizmut1-7/+7
- Breeze: > Update DB Form/Query/Report/Table > Add missing menubar icons > Clean SVG files > etc - Breeze & Colibre: Rearrange Navigator's element - elementary & KJ: Add some Draw's tabbed icons - Reenable some menubar icons Change-Id: I7a16e2b79d81b1e22694a99559a049401c0c048b Reviewed-on: https://gerrit.libreoffice.org/74816 Tested-by: Jenkins Reviewed-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
2019-06-27sw: avoid deleting the iterated SwRowFrame on tdf104188-4.odtMichael Stahl2-13/+16
The change in commit 1e6dec4b4313212a3bdc6bb06155fd65e795368b was not enough to fix this problem. SwContentFrame::CalcLowers() may move a SwTextFrame to the previous page; in that case Calc() on the upper is a bad idea because it may then call RemoveFollowFlowLine() and delete the SwRowFrame that is being iterated. There is one other (unknown) bugdoc with this problem, let's hope it's fixed as well... (regression from commit 18765b9fa739337d2d891513f6e2fb7c3ce23b50) Change-Id: I3c55a0d7ef0350a482fb150d3e96c3b34853400d Reviewed-on: https://gerrit.libreoffice.org/74793 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit 1cb7e4899b5ada902e99a0c964ee047950c07044) Reviewed-on: https://gerrit.libreoffice.org/74804
2019-06-27tdf#126114 - Form fields are displayed twice (double)Tamás Zolnai2-0/+7
We need to make sure that IsFieldResultAsString() returns true for drop-down field, to ignore the placeholder string. Change-Id: I127800bdff78eb68e000fdbfe433bc88181ac2c3 Reviewed-on: https://gerrit.libreoffice.org/74752 Tested-by: Jenkins Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com> (cherry picked from commit 8e5982d799e23bee86404f3ccb3aaed524ae9675) Reviewed-on: https://gerrit.libreoffice.org/74796
2019-06-27sw: fix SwXTextField::Impl::IsDescriptor()Michael Stahl1-3/+9
... to return false for a disposed instance. Follow-up to 36defda96fc62cef1e1ffb725f6768d54b0d9cd0 Unfortrunately have to resurrect the boolean flag again, because neither m_pDoc nor m_pFieldType can be used to check. (regression from e18359445fabad9ba1a704600e9ee327112cc6ae) Change-Id: I6009cb39cd49b930e042aa21f4b40877c4fdbdde Reviewed-on: https://gerrit.libreoffice.org/74739 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit 459de9c585505b43acd184c00a0251bf7a7c8768) Reviewed-on: https://gerrit.libreoffice.org/74792
2019-06-27tdf#125751 sw: don't start recursive layout in SwTextFrame::EmptyHeight()Michael Stahl1-1/+2
Not sure if this has anything to do with the bug, but i noticed it while debugging... This is the only place that calls GetCurrFrame() *during* formatting, so make sure we don't do stupid recursive things. (regression from 56b2cf0c10d9caa01ebae1d80465e342d046a85c) Change-Id: Icd05f8d634bc9de4d5d16824d30075397e6c9960 Reviewed-on: https://gerrit.libreoffice.org/74750 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit 7a05458d39da2f4755cb6e190dce338198655137) Reviewed-on: https://gerrit.libreoffice.org/74784
2019-06-27tdf#125751 sw: fix crash on formatting in SwLayoutFrame::PaintSwFrame()Michael Stahl1-0/+1
It's less than ideal that the document is painted before being fully formatted, but let's try to apply a band-aid... 0x6120001a97d0 is located 144 bytes inside of 280-byte region [0x6120001a9740,0x6120001a9858) freed by thread T0 here: #1 SwFootnoteFrame::~SwFootnoteFrame() /home/ms/lo/master/sw/source/core/inc/ftnfrm.hxx:64:7 #2 SwFrame::DestroyFrame(SwFrame*) sw/source/core/layout/ssfrm.cxx:389:9 #3 SwContentFrame::Cut() sw/source/core/layout/wsfrm.cxx:1263:25 #4 SwFlowFrame::MoveBwd(bool&) sw/source/core/layout/flowfrm.cxx:2544:17 #5 SwContentFrame::MakeAll(OutputDevice*) sw/source/core/layout/calcmove.cxx:1522:17 #6 SwFrame::PrepareMake(OutputDevice*) sw/source/core/layout/calcmove.cxx:366:5 #7 SwFrame::Calc(OutputDevice*) const sw/source/core/layout/trvlfrm.cxx:1791:37 #8 SwLayoutFrame::PaintSwFrame(OutputDevice&, SwRect const&, SwPrintData const*) const sw/source/core/layout/paintfrm.cxx:3328:17 #9 SwLayoutFrame::PaintSwFrame(OutputDevice&, SwRect const&, SwPrintData const*) const sw/source/core/layout/paintfrm.cxx:3406:21 #10 SwLayoutFrame::PaintSwFrame(OutputDevice&, SwRect const&, SwPrintData const*) const sw/source/core/layout/paintfrm.cxx:3406:21 #11 SwRootFrame::PaintSwFrame(OutputDevice&, SwRect const&, SwPrintData const*) const sw/source/core/layout/paintfrm.cxx:3116:24 #12 SwViewShell::Paint(OutputDevice&, tools::Rectangle const&) sw/source/core/view/viewsh.cxx:1840:34 (reportedly a regression from 18765b9fa739337d2d891513f6e2fb7c3ce23b50) Change-Id: Iff5e783985c180b704b273fa26b7c498820640ac Reviewed-on: https://gerrit.libreoffice.org/74749 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit 49f971e9d0a88c9f23262445a17c9b5cecdb9167) Reviewed-on: https://gerrit.libreoffice.org/74783
2019-06-27tdf#125751 sw: tweak assert in SwFrame::PrepareMake() a bit moreMichael Stahl1-2/+14
This fixes 2 cases of the assert that was added in commit e14056e6e88d9b8d988b7b88b2776a8fc952031b * tdf#125751 bugdoc would assert because on a page there were a bunch of empty section frames preceding 2 SwTextFrames; the first SwTextFrame moved backwards skipping over the empty section frames, hence the second SwTextFrame is not the mpNext of the first one's follow * writerfilter_null_ptr_deref.sample had a SwTextNode with >80k characters; turns out there is a check in SwTextFrame::CalcFollow() to format only up to 10 follow frames, so the result is 2 follow frames on the same page Change-Id: Ia08afd5a0e227d0613421d74b469c409ee91cfca Reviewed-on: https://gerrit.libreoffice.org/74748 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit f8e4845fec50affc20272600a4baf87554b055fb) Reviewed-on: https://gerrit.libreoffice.org/74782
2019-06-27NB tabbed big sync between different appsandreas kainz1-164/+234
Change-Id: I1616bcdd6e88615423e033f4ef276700fb3ba3ba Reviewed-on: https://gerrit.libreoffice.org/73277 Tested-by: Jenkins Reviewed-by: andreas_kainz <kainz.a@gmail.com> (cherry picked from commit 9613e026d52d7475c3dcd92feadb35caa4aff356) Reviewed-on: https://gerrit.libreoffice.org/74777
2019-06-27list too narrow in bibliography viewCaolán McNamara1-0/+1
Change-Id: Ie364823ad641469132973697228ca2ce556e9ba7 Reviewed-on: https://gerrit.libreoffice.org/74757 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-06-26tdf#125382: Check if pDoc is not nullXisco Fauli1-0/+4
regression from e18359445fabad9ba1a704600e9ee327112cc6ae Change-Id: Icd8db6a403b7736d6c8c9d40c8f2c7476c1eee87 Reviewed-on: https://gerrit.libreoffice.org/74533 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit 36defda96fc62cef1e1ffb725f6768d54b0d9cd0) Reviewed-on: https://gerrit.libreoffice.org/74729
2019-06-26tdf#126017 sw: do not restore SwFormatContent in SwUndoFormatAttrMichael Stahl1-0/+6
This is a very unusual item that only contains a SwNodeIndex, which may "go stale" because the node it's pointing to may be deleted, moving it to whatever node may be next. Restoring such a moved item causes crashes like this, where the SwSectionFormat's item does not point to its SwSectionNode. (crash is a regression from 4f0b568ef35353b276ae560fb43502b6f6b2bfdb, previously the Undo stack was cleared so you couldn't Undo) Change-Id: I41a9ed9acc72df5b4b3852875a50e51c29eabe95 Reviewed-on: https://gerrit.libreoffice.org/74693 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit 4999c99529f1b1543ef110da9e6c0dcbd9f73032) Reviewed-on: https://gerrit.libreoffice.org/74715 Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
2019-06-26tdf#125362 Update tab dialog example set after ApplyJim Raykowski1-0/+3
Change-Id: I0f6ad5273b285080bf2bc55fca3a2365b5b42bbf Reviewed-on: https://gerrit.libreoffice.org/74325 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.com> (cherry picked from commit fc938b4310a8f5fcc8ee2846acfeb6f6d818b9f5) Reviewed-on: https://gerrit.libreoffice.org/74712 Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2019-06-24Colibre: Fix for tdf#122924, tdf#126044rizmut1-13/+13
- Clean unecessary extra outline - Update Gallery, Paste, EPUB, language - Sync extra large AutoFormat - Update table formula in Writer's Navigator - Update DB Form, Query, Report, Table - Update Draw/Impress master, Handout, Outline, Notes, Master Notes Change-Id: I1faabab504010c584f7a480ed6c521c47584df38 Writer: Re-enable some icons in menubar Reviewed-on: https://gerrit.libreoffice.org/74659 Reviewed-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id> Tested-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
2019-06-24sw: reduce accuracy of double compares in testFDO74215 even moreMichael Stahl1-2/+3
This failed again on Mac in Jenkins. - Expected: 12.1348314606742 - Actual : 12.15 - Delta : 0.01 Change-Id: Ic72f3f71f15e1b0d1547f836d2fa5ac6ce22ffd1 Reviewed-on: https://gerrit.libreoffice.org/74636 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit aea4812eb9e348abb45e65d396d3f55f494b5029) Reviewed-on: https://gerrit.libreoffice.org/74641
2019-06-24tdf#125741 sw: avoid joining table frames in SwFrame::PrepareCursor()Michael Stahl1-14/+16
The problem is that the PrepareCursor() is called on a frame in a nested table, and the inner table is joined by its predecessor... 0x6120010a3348 is located 136 bytes inside of 296-byte region [0x6120010a32c0,0x6120010a33e8) freed by thread T0 here: #1 SwTabFrame::~SwTabFrame() sw/source/core/layout/tabfrm.cxx:143:1 #2 SwFrame::DestroyFrame(SwFrame*) sw/source/core/layout/ssfrm.cxx:389:9 #3 SwTabFrame::Join() sw/source/core/layout/tabfrm.cxx:1379:9 #4 SwTabFrame::MakeAll(OutputDevice*) sw/source/core/layout/tabfrm.cxx:1870:9 #5 SwFrame::PrepareMake(OutputDevice*) sw/source/core/layout/calcmove.cxx:364:5 #6 SwFrame::Calc(OutputDevice*) const sw/source/core/layout/trvlfrm.cxx:1791:37 #7 lcl_InnerCalcLayout(SwFrame*, long, bool) sw/source/core/layout/tabfrm.cxx:1584:21 #8 lcl_InnerCalcLayout(SwFrame*, long, bool) sw/source/core/layout/tabfrm.cxx:1586:25 #9 lcl_InnerCalcLayout(SwFrame*, long, bool) sw/source/core/layout/tabfrm.cxx:1586:25 #10 lcl_RecalcRow(SwRowFrame*, long) sw/source/core/layout/tabfrm.cxx:1621:16 #11 SwTabFrame::MakeAll(OutputDevice*) sw/source/core/layout/tabfrm.cxx:2410:21 #12 SwFrame::PrepareMake(OutputDevice*) sw/source/core/layout/calcmove.cxx:364:5 #13 SwFrame::Calc(OutputDevice*) const sw/source/core/layout/trvlfrm.cxx:1791:37 #14 SwFrame::PrepareCursor() sw/source/core/layout/calcmove.cxx:481:5 #15 SwFrame::PrepareCursor() sw/source/core/layout/calcmove.cxx:397:21 #16 SwFrame::PrepareCursor() sw/source/core/layout/calcmove.cxx:397:21 #17 SwFrame::PrepareCursor() sw/source/core/layout/calcmove.cxx:397:21 #18 SwFrame::PrepareCursor() sw/source/core/layout/calcmove.cxx:397:21 #19 SwFrame::PrepareCursor() sw/source/core/layout/calcmove.cxx:397:21 #20 SwFrame::PrepareCursor() sw/source/core/layout/calcmove.cxx:397:21 #21 SwCursorShell::UpdateCursor(unsigned short, bool) sw/source/core/crsr/crsrsh.cxx:1851:25 #22 SwCursorShell::EndAction(bool, bool) sw/source/core/crsr/crsrsh.cxx:269:5 #23 SwCursorShell::EndCursorMove(bool) sw/source/core/crsr/crsrsh.cxx:305:5 #24 SwLayIdle::SwLayIdle(SwRootFrame*, SwViewShellImp*) sw/source/core/layout/layact.cxx:2238:35 After the paste, the formatting goes only until SwLayAction::IsShortCut() exits early because the previous visible page is formatted - but the cursor position was moved downward and is no longer visible, so we get an idle-layout later where UpdateCursor() triggers more formatting... So prevent the use-after-free with some more guards, which isn't the most elegant solution, but with 4 levels of nested tables elegant solutions are in short supply... (apparently a regression from the SwFlowFrame::MoveBwd() change in 18765b9fa739337d2d891513f6e2fb7c3ce23b50) Change-Id: Ie166d3b58fe84c3e4808b52202802a471fa81026 Reviewed-on: https://gerrit.libreoffice.org/74518 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit a23661bfe02d81bd9c1f1e04c59384d19cc61726) Reviewed-on: https://gerrit.libreoffice.org/74631
2019-06-24sw: fix SwUiWriterTest::testTdf114306_2Michael Stahl2-6/+6
sw/qa/extras/uiwriter/uiwriter.cxx:5908:SwUiWriterTest::testTdf114306_2 equality assertion failed - Expected: 4 - Actual : 5 Mysteriously this doesn't happen on master when running make sw.check but reproduces with make CppunitTest_sw_uiwriter CPPUNIT_TEST_NAME="testTdf114306_2" The problem is that the early-returns in SwTabFrame::RemoveFollowFlowLine() are too late: the SetFollowFlowLine( false ); was already executed and henceforth the SwTabFrame thinks it doesn't have a follow-flow-line, so it will never be merged again and new follow-flow-line may be created. (test fail is regression from 1e6dec4b4313212a3bdc6bb06155fd65e795368b) Change-Id: Ic5a2ef4219f212c8b4d34fd47d3d67f32de45f8e Reviewed-on: https://gerrit.libreoffice.org/74500 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit 98e186a37388d35320b813142b4fc7f0071f5b43) Reviewed-on: https://gerrit.libreoffice.org/74520
2019-06-23Related: tdf#126036 give options dialog consistent button orderCaolán McNamara1-15/+18
its not welded yet, but skip ahead and give it explicit consistent button order in the meantime Change-Id: Ia850a024cb5a87b9231b5ffdec701646d7014e08 Reviewed-on: https://gerrit.libreoffice.org/74574 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-06-22weld SpellDialogCaolán McNamara1-5/+4
a) use EditEngine instead of TextEngine as the former can be hosted in a foreign widget b) use a SfxGrabBagItem to hold the custom spellchecking info inside the EditEngine c) in longer paragraphs the current word is now auto-scrolled into view d) rename Invalidate to InvalidateDialog Change-Id: Ic6db019c32cdfd5f354c58ee7394fdaa040b86e1 Reviewed-on: https://gerrit.libreoffice.org/74535 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-06-22field dialogs all weldedCaolán McNamara1-2/+0
Change-Id: I0a468ec6926b8b1cd5666839ea0de192c6d11d16 Reviewed-on: https://gerrit.libreoffice.org/74528 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-06-21Resolves: tdf#126005 make bookmark treeview sortableCaolán McNamara3-52/+110
and use iterators into the tree Change-Id: I38eb24d71cc089bf61baa221324a983c1eb782c9 Reviewed-on: https://gerrit.libreoffice.org/74486 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-06-21tdf#125983 CRASH: Updating link to external filesNoel Grandin1-3/+5
Revert "loplugin:useuniqueptr in lcl_UpdateLinksInSect" This reverts commit 9abbe6746cb4d36e3ccb384f96ccafb9e0612cd6. No point in use std::unique_ptr, sometimes pPam points to something we want to delete, sometimes it does not. Change-Id: I37e9871b8d5d836b7e52b5b8a5a7c572d92487f5 Reviewed-on: https://gerrit.libreoffice.org/74449 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> (cherry picked from commit 8729c98bbe6843e875be3903c2e5a7783984ae48) Reviewed-on: https://gerrit.libreoffice.org/74485
2019-06-20fix putting ; between entriesCaolán McNamara1-1/+1
broken since... commit 8bddb3c77048814b370351e0eb72c31f289fb34f Author: Caolán McNamara <caolanm@redhat.com> Date: Thu Mar 14 12:51:31 2019 +0000 weld SwInsertBookmarkDlg Change-Id: I2a07820dd5ea13976a1044323a5b52835fd711f1 Reviewed-on: https://gerrit.libreoffice.org/74469 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2019-06-20tdf#125754 sw_redlinehide: avoid recursive layout in SetHideRedlines()Michael Stahl2-0/+5
During SwLayHelper::CheckInsertPage(), SwRootFrame::CheckViewLayout() is called, which may change the size of the view, which causes a StartAction()/EndAction(), therefore layouting the frames existing at that point, which moves some content onto the newly created frame, but CheckInsertPage() expects to find only SwLayoutFrames on it and crashes. 40 SwLayAction::InternalAction(OutputDevice*) (this=0x7fffd2333f00) at sw/source/core/layout/layact.cxx:551 41 SwLayAction::Action(OutputDevice*) (this=0x7fffd2333f00) at sw/source/core/layout/layact.cxx:348 42 SwViewShell::ImplEndAction(bool) (this=0x56eaff0, bIdleEnd=false) at sw/source/core/view/viewsh.cxx:295 43 SwViewShell::EndAction(bool) (this=0x56eaff0, bIdleEnd=false) at sw/inc/viewsh.hxx:600 44 SwCursorShell::EndAction(bool, bool) (this=0x56eaff0, bIdleEnd=false, DoSetPosX=false) at sw/source/core/crsr/crsrsh.cxx:254 45 SwView::OuterResizePixel(Point const&, Size const&) (this=0x5589850, rOfst=Point = {...}, rSize=Size = {...}) at sw/source/uibase/uiview/viewport.cxx:1125 46 SwView::DocSzChgd(Size const&) (this=0x5589850, rSz=Size = {...}) at sw/source/uibase/uiview/viewport.cxx:203 47 SizeNotify(SwViewShell const*, Size const&) (pVwSh=0x56eaff0, rSize=Size = {...}) at sw/source/uibase/docvw/edtwin3.cxx:67 48 SwViewShell::SizeChgNotify() (this=0x56eaff0) at sw/source/core/view/viewsh.cxx:1077 49 AdjustSizeChgNotify(SwRootFrame*) (pRoot=0x56ea6c0) at sw/source/core/layout/pagechg.cxx:824 50 SwRootFrame::CheckViewLayout(SwViewOption const*, SwRect const*) (this=0x56ea6c0, pViewOpt=0x0, pVisArea=0x0) at sw/source/core/layout/pagechg.cxx:2377 51 SwPageFrame::Paste(SwFrame*, SwFrame*) (this=0x66aa500, pParent=0x56ea6c0, pSibling=0x0) at sw/source/core/layout/pagechg.cxx:941 52 InsertNewPage(SwPageDesc&, SwFrame*, bool, bool, bool, bool, SwFrame*) (rDesc=..., pUpper=0x56ea6c0, bOdd=true, bFirst=false, bInsertEmpty=false, bFootnote=false, pSibling=0x0) at sw/source/core/layout/frmtool.cxx:2853 53 SwLayHelper::CheckInsertPage() (this=0x60a9170) at sw/source/core/layout/laycache.cxx:680 54 SwLayHelper::CheckInsert(unsigned long) (this=0x60a9170, nNodeIndex=1699) at sw/source/core/layout/laycache.cxx:890 55 InsertCnt_(SwLayoutFrame*, SwDoc*, unsigned long, bool, unsigned long, SwFrame*) (pLay=0x6f20f60, pDoc=0x54c86a0, nIndex=1698, bPages=true, nEndIndex=2627, pPrv=0x6ef2d20) at sw/source/core/layout/frmtool.cxx:1503 56 MakeFrames(SwDoc*, SwNodeIndex const&, SwNodeIndex const&) (pDoc=0x54c86a0, rSttIdx=SwNodeIndex (node 1588), rEndIdx=SwNodeIndex (node 2627)) at sw/source/core/layout/frmtool.cxx:1910 57 UnHideRedlines(SwRootFrame&, SwNodes&, SwNode const&, std::__debug::set<unsigned long, std::less<unsigned long>, std::allocator<unsigned long> >*) (rLayout=..., rNodes=..., rEndOfSectionNode=..., pSkipped=0x0) at sw/source/core/layout/wsfrm.cxx:4445 58 SwRootFrame::SetHideRedlines(bool) (this=0x56ea6c0, bHideRedlines=false) at sw/source/core/layout/wsfrm.cxx:4539 59 SwView::Execute(SfxRequest&) (this=0x5589850, rReq=...) at sw/source/uibase/uiview/view2.cxx:658 To avoid that, do StartAction()/EndAction() in the UI caller of SwRootFrame::SetHideRedlines() already; the other callers in Undo/DocumentRedlineManager should already be covered by Actions. Change-Id: I366140415d5714d386af3cf9db30e39b12ade2ce Reviewed-on: https://gerrit.libreoffice.org/74369 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit dd489bc01adc22fc5015ea56b61d66104af184a8) Reviewed-on: https://gerrit.libreoffice.org/74430
2019-06-20tdf#125660 sw_redlinehide: don't create redlines for GrfNode/OLENodeMichael Stahl1-0/+5
This started to assert/crash with commit d258fc29560baa5ecae03ebc2740e11420643e27, but such redlines are really not valid so it's a regression from commit 16916a14a2ce382aa4ff2a25f8e477108aba5a67. Change-Id: I4c03a96a43b62a3c5321535a34c2d09b155b79c0 Reviewed-on: https://gerrit.libreoffice.org/74371 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit edca548f865f4c19f213c1386905ec3591326461) Reviewed-on: https://gerrit.libreoffice.org/74418
2019-06-20zero width column in manage changesCaolán McNamara1-5/+18
https://github.com/exaile/exaile/issues/580 the fixed_width request is not handled by the time the width is queried. Use the requested width if the width is still 0. assert when such columns value are stored, and ignore existing useless ones on read Change-Id: Ibce74ec6a232edcf36b929f71474418b3e742856 Reviewed-on: https://gerrit.libreoffice.org/74445 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-06-19NB tabbed_compact cleanupandreas kainz1-240/+59
Change-Id: I070f81e2c5a623374c72a8a4ff5a034bf3d1f11c Reviewed-on: https://gerrit.libreoffice.org/74338 Tested-by: Jenkins Reviewed-by: andreas_kainz <kainz.a@gmail.com> (cherry picked from commit e1f5b833f5e8d7b7d08cbcfb102df3f49d2dd518) Reviewed-on: https://gerrit.libreoffice.org/74356
2019-06-19sw: fix assert on layout of ooo63564-1.odtMichael Stahl1-1/+23
The problem is that some SwTextFrames (1415 in particular) inside the follow-flow-row of a table move backwards, during(!) which the follow-flow-row is deleted; i.e., the SwTextFrame was already moved backwards by the pNewUpper->Calc() in MoveBwd(), then it is Cut and Pasted at the end of pNewUpper, when it is actually already a lower, somewhere in the middle... This triggers the assert in SwFrame::PrepareMake() that was added in commit e14056e6e88d9b8d988b7b88b2776a8fc952031b Prevent this by using the IsDeleteForbidden() check that was introduced in commit 0005b330eaed0b5559042d2597fb45e0c9125d7e; this is similar to how MoveBwd() already locks section frames to prevent such problems. Ultimately a regression from 18765b9fa739337d2d891513f6e2fb7c3ce23b50. Change-Id: I893ec3e491b4cbe1569edf97fec31d3dd74548ed Reviewed-on: https://gerrit.libreoffice.org/74298 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> (cherry picked from commit 1e6dec4b4313212a3bdc6bb06155fd65e795368b) Reviewed-on: https://gerrit.libreoffice.org/74342
2019-06-19tdf#125947 Two tools are missing from default Form Controls toolbarRoman Kuznetsov6-12/+12
Change-Id: Ie54b2a3f5051b115f8f04467282090a93525dfc3 Reviewed-on: https://gerrit.libreoffice.org/74191 Tested-by: Jenkins Reviewed-by: Roman Kuznetsov <antilibreoffice@gmail.com> (cherry picked from commit 385128671716e70b9540a67e213d6495bf50662b) Reviewed-on: https://gerrit.libreoffice.org/74267 Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2019-06-18NB tabbed compact big update and syncronisation between appsandreas kainz2-778/+2253
Change-Id: Ie1178e1e36334b35c7a00b2ec918c79041150c80 Reviewed-on: https://gerrit.libreoffice.org/74268 Tested-by: Jenkins Reviewed-by: andreas_kainz <kainz.a@gmail.com> (cherry picked from commit 1f2bc634cd48e6f093fa6821253bd18621eaa1e3) Reviewed-on: https://gerrit.libreoffice.org/74273
2019-06-18tdf#89991 DOCX: import/export Show changes modeLászló Németh7-5/+31
handled by the optional w:revisionView OOXML setting. Using disabled Show Changes mode, exported DOCX contains <w:revisionView w:insDel="0" w:formatting="0"/> as the documents exported from MSO with disabled Show Changes and disabled Options -> Trust Center -> Trust Center Settings -> Privacy Options -> Make hidden markup visible when opening or saving (Note: this last setting needs also for opening the documents really with disabled Show Changes in MSO). Change-Id: I9f2c7df572f33838ae63185de21431102a7e139e Reviewed-on: https://gerrit.libreoffice.org/73885 Tested-by: Jenkins Reviewed-by: Justin Luth <justin_luth@sil.org> Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: László Németh <nemeth@numbertext.org> (cherry picked from commit 0e27158c4f6a6a7676a77afb6b37dd30b3f6d100) Reviewed-on: https://gerrit.libreoffice.org/74254 Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
2019-06-18tdf#75659 Chart: fix empty legend at not available legend namesBalazs Varga2-0/+25
by using localized versions of "Unnamed Series 1" etc. Note: OOXML files don't contain the default or fallback legend names used by MSO in this case, so the original empty string replacement of the missing names resulted bad chart import. Change-Id: I2897c70d9003e1ab3241dd569de0d79821d896b1 Reviewed-on: https://gerrit.libreoffice.org/73817 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: László Németh <nemeth@numbertext.org> (cherry picked from commit 007bf60611e2ba5a65ffabe80dbb0e279fcb9f26) Reviewed-on: https://gerrit.libreoffice.org/74252 Tested-by: Jenkins Reviewed-by: Balazs Varga <balazs.varga991@gmail.com> Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
2019-06-18tdf#125916 DOCX import: fix outline numbering at tracked deletionLászló Németh3-0/+19
Now there is no extra header after import (fixed regression from the commit 8acc15b5113c798ecdbeed91456a92e7b0c1334e "tdf#118699 DOCX import: don't add numbering") and the actual outline numbering is stable during the next export/import cycles (losing correct numbering is the original bug of DOCX import with change tracking). Change-Id: I49a78549c10c4ce0b97bb2d593059bf25c4d7aab Reviewed-on: https://gerrit.libreoffice.org/74054 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: László Németh <nemeth@numbertext.org> (cherry picked from commit eeb9481304572cc404ea1da9f3dabff43d6d191c) Reviewed-on: https://gerrit.libreoffice.org/74255 Tested-by: Jenkins Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
2019-06-18tdf#125719 sw: rtf: refactor associated character propertiesSerge Krot6-86/+389
1. \rtlch, \ltrch should be placed before their properties. 2. Do not mix associated and normal character properties in output. 3. Do not output empty "\rtlch \ltrch", "\ltrch \rtlch" pairs. 4. Handle associated character properties runs instead of handling separately their parts without order of them. Change-Id: Ibbf7365d04708682a5f1eb664a579c60a47465d2 Reviewed-on: https://gerrit.libreoffice.org/72578 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> (cherry picked from commit fd95fb975b754d71d3750e85431a4e596a40e659) Reviewed-on: https://gerrit.libreoffice.org/73868 Reviewed-by: Miklos Vajna <vmiklos@collabora.com>