summaryrefslogtreecommitdiff
path: root/sw
AgeCommit message (Collapse)Author
7 dayssw: silence warning C6011Xisco Fauli
C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/sw/source/core/fields/reffld.cxx(1419): error C2220: the following warning is treated as an error C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\sw\source\core\fields\reffld.cxx(1313) : warning C6011: Dereferencing NULL pointer 'pStart'. : Lines: 1299, 1301, 1302, 1303, 1305, 1307, 1308, 1309, 1312, 1313 make[1]: *** [C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/solenv/gbuild/LinkTarget.mk:339: C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/workdir/CxxObject/sw/source/core/fields/reffld.o] Error 2 Change-Id: I7ab3a8906738ed0cd64c890cabdf04234c80afd4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178666 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
7 daystdf#132274 Clarify wording of default Writer zoom behaviourThorsten Behrens
There was apparently some confusion what 'latest setting' was referring to (in fact, it's the latest setting that was stored in the document, for most cases). Change-Id: I30d36567cde602ba18b0b721dec0c9e76b560edc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178660 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
7 dayscrashtesting: unable to import rtf export of forum-mso-en-14843.docCaolán McNamara
user field names have control chars in them and import from rtf hits the code added by: commit a6516c76c01b92f7d35bfb352b63af7de42b5707 CommitDate: Wed Oct 30 14:44:09 2019 +0100 writerfilter: rtftok: filter control characters so control chars are stripped out, which results in a duplicate user field name which throws. Filtering out at doc import time seems to work better, so lets do that as well. Change-Id: I463e30b223bfb5639de23c696d112eda2c27b428 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178657 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
7 daysuse more concrete UNO in swNoel Grandin
Change-Id: I664c7eff512625f988a2a278062719d3084845dd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178645 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
7 dayssw: pStt -> pStartXisco Fauli
Change-Id: If2d8574e732581b5726734e2ac24196242a52d8e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178642 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins
7 dayssw: fix log messagesXisco Fauli
After commit 285b66443303b8e240a6af48adb1f58bf4f8644e Author: Noel Grandin <noel.grandin@collabora.co.uk> Date: Wed Dec 4 15:57:14 2024 +0200 split up SwGetRefFieldType::FindAnchor method and commit 75d734698347565253571978fd585f1681229a97 Author: Noel Grandin <noel.grandin@collabora.co.uk> Date: Wed Dec 4 16:14:35 2024 +0200 split up SwGetRefFieldType::FindAnchor method some more Change-Id: I77fb86a384f53c74586bc05e4cb3bcbebf225acf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178641 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins
8 daystdf#164263 writerfilter: avoid exception when SAL_DISABLE_PRINTERLISTJustin Luth
This fixes a backported to 24.2.1 regression from commit e6f75eb50bc5d1ebccda0c0f80a7b353d991106e Apparently a blank value is allowed to be in RES_PAPER_BIN, but it is not allowed to try to setPropertyValue as a blank string. Lots of ways I could try to solve it. -could just lump it in with staticDenylist, but that is comment-labeled as "read only values". -could just wrap setPropertyValue in a try/catch, which is tempting because it is a generic fix for these otherwise silent failures, but that would hide potentially useful info behind a generic exception message. -just do the one-off check like I first decided to do. I don't see any unit test examples from the offending regression, or anything else in SW. So I don't know how I can create a unit test for this. Change-Id: Ic2506dd4adb71f0e64d719363f6d261ffccf0151 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178620 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com>
8 daystdf#164075 rtfimport: ignore assert developed for DOCX fixingJustin Luth
I don't exactly remember why I put the assert there, but it sounds reasonable to expect that if the paragraph defined the numbering that it should also have numbering rule content, and if it doesn't, then it is worth investigating why. Investing anything related to RTF is never worthwhile. Change-Id: I6525d0a40d9535f1888056a610576085941605a3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178607 Reviewed-by: Justin Luth <jluth@mail.com> Tested-by: Jenkins
8 daystdf#66791 sw: Treat weak punctuation as Asian in Asian paragraphsJonathan Clark
This change modifies script detection to treat certain weak punctuation marks, particularly left- and right- quotation marks, as Asian script in paragraphs containing Chinese and Japanese characters, but no Complex characters. This change improves our script detection compatibility with other programs. As part of this change, duplicated script detection code has been extracted from Writer and Edit Engine, and consolidated. Change-Id: Ib2880f2e832aaac4c0093971daa88223c7232d63 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178608 Tested-by: Jenkins Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
8 dayscrashtesting: unable to import doc export of forum-de2-10510.ottCaolán McNamara
"No namespace defined for pic at sax/source/fastparser/fastparser.cxx:718" Change-Id: I417ee6608b63f27b92236ab96cc705d4261b8350 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178581 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
8 daysCppunitTest_sw_apitests: remove leftover myNewGroup2.bau before the testMiklos Vajna
This fails for me in a tree that runs 'make check' and there was a previous 'make check' previously. Seems the trouble is that we have this C++ test creating an autotext .bau file, but there is also a Java one, so if we're not lucky with the order of these, the C++ one will fail with its hardcoded "must be 3 .bau files in instdir" assertion. Fix the immediate problem by removing the test .bau file before running the C++ test. A better, but more complex fix would be to create the test .bau file in the user profile (and not in instdir) for both the Java and C++ cases, and then none of these tests would influece other tests during 'make check'. Change-Id: I536d769db733515ec6a7d41fd7dbf601c4b582d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178548 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178576
10 daysGet the style color and number just onceCaolán McNamara
Change-Id: I4dfa6feb1f41f9c62bd025ff521adc011c655926 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178453 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
11 daysa11y: Move VCLXAccessibleComponent from toolkit to vclMichael Weghorn
After commit 168512dce7f1f1453c045584d47bd78a0a6c73f7 Author: Michael Weghorn <m.weghorn@posteo.de> Date: Thu Dec 12 18:06:13 2024 +0100 a11y: Stop using VCLXWindow in vcl a11y classes and further related commits, VCLXAccessibleComponent no longer depends on anything in the toolkit module, so move it from there to vcl. This way, subclassing VCLXAccessibleComponent (as the a11y classes for vcl widgets do, currently located in accessibility/ ) no longer introduces a toolkit dependency. Change-Id: I4fd33fb1dc2265d75e8ca9ad87bcc70db61639d3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178434 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
11 dayscrashtesting: assert on reimport of docx export of ooo102874-2.docCaolán McNamara
#0 SdrObjList::RemoveObjectFromContainer (this=0x1d12e30, nObjectPosition=3) at core/svx/source/svdraw/svdpage.cxx:1093 #1 0x00007ffff15da0bd in SdrObjList::SetObjectOrdNum (this=0x1d12e30, nOldObjNum=3, nNewObjNum=2) at core/svx/source/svdraw/svdpage.cxx:536 #2 0x00007ffff14c954c in SdrObject::ensureSortedImmediatelyAfter (this=0x4f56d30, rFirst=...) at core/svx/source/svdraw/svdobj.cxx:897 #3 0x00007fffcdc4978c in SwTextBoxHelper::DoTextBoxZOrderCorrection (pShape=0x4c3a660, pObj=0x4c3d730) at core/sw/source/core/doc/textboxhelper.cxx:1638 #4 0x00007fffcdc4bcbc in SwTextBoxHelper::changeAnchor (pShape=0x4c3a660, pObj=0x4c3d730) at core/sw/source/core/doc/textboxhelper.cxx:1247 #5 0x00007fffcdc4e613 in SwTextBoxHelper::synchronizeGroupTextBoxProperty (pFunc=0x7fffcdc4bc10 <SwTextBoxHelper::changeAnchor(SwFrameFormat*, SdrObject*)>, pFormat=0x4c3a660, pObj=0x4c3d730) at core/sw/source/core/doc/textboxhelper.cxx:1652 #6 0x00007fffcdd41a89 in SwDrawContact::Changed_ (this=0x4c55400, rObj=..., eType=SdrUserCallType::ChildMoveOnly, pOldBoundRect=0x7fffffff09d8) at core/sw/source/core/draw/dcontact.cxx:1250 #7 0x00007fffcdd410a7 in SwDrawContact::Changed (this=0x4c55400, rObj=..., eType=SdrUserCallType::ChildMoveOnly, rOldBoundRect=...) at core/sw/source/core/draw/dcontact.cxx:1005 #8 0x00007ffff14c7356 in SdrObject::SendUserCall (this=0x4c3d730, eUserCall=SdrUserCallType::MoveOnly, rBoundRect=...) at core/svx/source/svdraw/svdobj.cxx:2827 #9 0x00007ffff14b11d8 in SdrObjCustomShape::Move (this=0x4c3d730, rSiz=Size = {...}) at core/svx/source/svdraw/svdoashp.cxx:1499 #10 0x00007ffff152753b in SdrObjGroup::Move (this=0x1be18e0, rSiz=Size = {...}) at core/svx/source/svdraw/svdogrp.cxx:561 #11 0x00007fffce8c80b8 in SwViewShellImp::NotifySizeChg (unique_ptrI7SdrMarkSt14default_deleteIS2_EESaIS5_EE11_M_allocateEm=<error reading variable: Unhandled DWARF expression opcode 0x0>, hrowE=<error reading variable: Unhandled DWARF expression opcode 0x0>) at core/sw/source/core/view/vdraw.cxx:274 #12 0x00007fffce032bc1 in AdjustSizeChgNotify (pRoot=0x5e1c7f0) at core/sw/source/core/layout/pagechg.cxx:851 #13 0x00007fffce03243f in SwRootFrame::CheckViewLayout (this=0x5e1c7f0, pViewOpt=0x0, pVisArea=0x0) at core/sw/source/core/layout/pagechg.cxx:2445 #14 0x00007fffce032eec in SwPageFrame::Cut (this=0x5f19910) at core/sw/source/core/layout/pagechg.cxx:921 #15 0x00007fffce037d40 in SwRootFrame::RemovePage (this=0x5e1c7f0, pDelRef=0x7fffffff13c0, eResult=SwRemoveResult::Prev) at core/sw/source/core/layout/pagechg.cxx:1518 #16 0x00007fffce03808e in SwRootFrame::RemoveSuperfluous (this=0x5e1c7f0) at core/sw/source/core/layout/pagechg.cxx:1557 #17 0x00007fffcdfe8d04 in SwLayAction::InternalAction (this=0x7fffffff1a30, pRenderContext=0x5211510) at core/sw/source/core/layout/layact.cxx:694 #18 0x00007fffcdfe7cc6 in SwLayAction::Action (this=0x7fffffff1a30, pRenderContext=0x5211510) at core/sw/source/core/layout/layact.cxx:396 #19 0x00007fffce8d5995 in SwViewShell::CalcLayout (this=0x521c540) at core/sw/source/core/view/viewsh.cxx:1197 #20 0x00007fffcde1233f in SwEditShell::CalcLayout (this=0x521c540) at core/sw/source/core/edit/edws.cxx:111 Change-Id: I66ffbbfc74e52eea2e24e486d52607e84ffb8fcb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178415 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
11 daysGetCountOrName returns a UI nameNoel Grandin
But the caller in SwXStyleFamily::getByIndex was treating the return value like a programmatic name. Change-Id: I6b3779be834f713e09a026fdcbf965753a77cc9a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178381 Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Tested-by: Jenkins
11 daysReplace workaround of resize to invalidate with an explicit SfxHintCaolán McNamara
Change-Id: Ic0c8ba5e5f65f7b1e472a667b69e737f4f1d9fbc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178389 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
11 daysDefer broadcast of postit field update from layoutCaolán McNamara
until oTextPara has been applied to the field's associated postit window. This became a noticeable problem since: commit 2fba6df7242586870988b62909156538b42c2bc0 CommitDate: Thu Dec 5 15:31:06 2024 +0100 LOK: don't recreate the dialogs of an old view when loading new views In the broken situation the contents of the postit are sent back to kit as apparently empty, so newly inserted comments appear to be empty. The broadcast bt of this scenario is: #0 sw::annotation::SwAnnotationWin::GetSimpleHtml (this=0x19f38790) at sw/source/uibase/docvw/AnnotationWin.cxx:516 #1 0x00007f37d246283e in (anonymous namespace)::lcl_CommentNotification (pView=0x267cac40, nType=(anonymous namespace)::CommentNotificationType::Add, pItem=0x26baf4e0, nPostItId=0) at sw/source/uibase/docvw/PostItMgr.cxx:176 #2 0x00007f37d2467fef in SwPostItMgr::LayoutPostIts (this=0x266d7160) at sw/source/uibase/docvw/PostItMgr.cxx:1084 #3 0x00007f37d209dd1b in SwViewShell::VisPortChgd (this=0x267cce90, rRect=...) at sw/source/core/view/viewsh.cxx:1326 #4 0x00007f37d119030d in SwCursorShell::VisPortChgd (this=0x267cce90, rRect=...) at sw/source/core/crsr/crsrsh.cxx:1788 #5 0x00007f37d276478b in SwView::SetVisArea (this=0x267cac40, rRect=..., bUpdateScrollbar=true) at sw/source/uibase/uiview/viewport.cxx:249 #6 0x00007f37d2764cc3 in SwView::SetVisArea (this=0x267cac40, rPt=..., bUpdateScrollbar=true) at sw/source/uibase/uiview/viewport.cxx:311 #7 0x00007f37d2765e2e in SwView::Scroll (this=0x267cac40, rRect=..., nRangeX=65535, nRangeY=65535) at sw/source/uibase/uiview/viewport.cxx:495 #8 0x00007f37d24d7708 in ScrollMDI (pVwSh=0x267cce90, rRect=..., nRangeX=65535, nRangeY=65535) at sw/source/uibase/docvw/edtwin3.cxx:41 #9 0x00007f37d209a896 in SwViewShell::MakeVisible (this=0x267cce90, rRect=...) at sw/source/core/view/viewsh.cxx:665 #10 0x00007f37d119a238 in SwCursorShell::MakeSelVisible (this=0x267cce90) at sw/source/core/crsr/crsrsh.cxx:3490 #11 0x00007f37d1837671 in SwFEShell::MakeSelVisible (this=0x267cce90) at sw/source/core/frmedt/feshview.cxx:2677 #12 0x00007f37d1192fcc in SwCursorShell::UpdateCursor (this=0x267cce90, eFlags=6, bIdleEnd=false) at sw/source/core/crsr/crsrsh.cxx:2345 #13 0x00007f37d11886f9 in SwCursorShell::EndAction (this=0x267cce90, bIdleEnd=false) at sw/source/core/crsr/crsrsh.cxx:280 #14 0x00007f37d178ed62 in SwEditShell::EndAllAction (this=0x267cce90) at sw/source/core/edit/edws.cxx:102 #15 0x00007f37d2503daf in SwFieldMgr::InsertField (this=0x7fff88937c00, rData=...) at sw/source/uibase/fldui/fldmgr.cxx:1561 #16 0x00007f37d292df75 in SwWrtShell::InsertPostIt (this=0x267cce90, rFieldMgr=..., rReq=...) while in the "working" case IsScrollMDI is false and MakeVisible returns early. 2fba6df7 causes the profile's desire to restore core's SID_SIDEBAR to be ignored and so the results of IsScrollMDI differ between the two scenarios. Which makes it more likely that IsScrollMDI is true when queried by SwViewShell::MakeVisible, and so LayoutPostIts triggers before pPostIt->SetTextObject, so the contents of that TextObject, while applied to the postit, are not broadcast back via the kit. put a StartAction/EndAction pairing when oTextPara is present to suppress the update until oTextPara is applied. Change-Id: Id42ff1be85fec4b1053e5a7726cf6d2ba8d7de84 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178326 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Pranam Lashkari <lpranam@collabora.com> (cherry picked from commit c29a10b51db8027f90397d1bd9e31bd8a3571bc6) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178390 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
12 dayssw a11y: clang-format SidebarWinAccessible codeMichael Weghorn
Change-Id: I623d7ce9520236dcca7322c808e89328c26cb70c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178387 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins
12 dayssw a11y: Merge SidebarWinAccessible and SidebarWinAccessibleContextMichael Weghorn
Instead of having two separate classes to implement the XAccessible and the XAccessibleContext interfaces, let SidebarWinAccessible implement both and merge the corresponding logic from SidebarWinAccessibleContext into SidebarWinAccessible. This also reduces duplication. In SidebarWinAccessible::getAccessibleContext, simply return a reference to the object itself (after checking that the object is still alive). After Change-Id: If0894e733273eecad268c6a932ecee7c2e34b4c2 Author: Michael Weghorn <m.weghorn@posteo.de> Date: Thu Dec 12 18:06:13 2024 +0100 a11y: Stop using VCLXWindow in vcl a11y classes , there's also no more need for SidebarWinAccessible to subclass VCLXWindow, so drop that inheritance. Change-Id: I5688ced4f83a0291de49741dc1b9df8c8f256099 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178386 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
12 daysa11y: Stop using VCLXWindow in vcl a11y classesMichael Weghorn
Adjust VCLXAccessibleComponent and subclasses to take a vcl::Window arg instead of a VCLXWindow in the ctor and drop the VCLXAccessibleComponent::m_xVCLXWindow member that used to hold a reference to the VCLXWindow. (VCLXAccessibleComponent still holds a VclPtr to the corresponding vcl::Window.) Instead of passing the UNO/toolkit peer (VCLXWindow and subclasses) to the AccessibleFactory to create an XAccessibleContext context for the underlying VCL widget, pass the underlying vcl widget, which can now be passed as is to the corresponding ctors of VCLXAccessibleComponent and specialized subclasses. This follows earlier commits replacing the use of the VCLXWindow classes by direct uses of the vcl::Window subclasses inside VCLXAccessibleComponent and subclasses and is the next step in reducing the UNO/toolkit dependency in the accessibility implementation for vcl widgets. For now, the logic where those accessible objects are created remains in VCLXWindow::CreateAccessibleContext and overrides, but that can change in the future. `IAccessibleFactory::createAccessibleContext(VCLXMultiLineEdit*)` is just dropped and doesn't need its own replacement: The previous VCLXMultiLineEdit variant was creating a VCLXAccessibleEdit like the variant taking a VCLXEdit, but VCLXMultiLineEdit doesn't subclass VCLXEdit. The vcl MultiLineEdit however subclasses Edit, so VCLXMultiLineEdit::CreateAccessibleContext can make use of `IAccessibleFactory::createAccessibleContext(Edit*)` as well now. This also implements what was mentioned in earlier commit Change-Id: I67bb7a6a237e57d0c522790c09a595c02ac06325 Author: Michael Weghorn <m.weghorn@posteo.de> Date: Thu Dec 12 17:16:29 2024 +0100 sw annotation win a11y: Skip VCLXWindow logic : > Drop the comment about the code being dodgy from > SwAnnotationWin::CreateAccessible. This commit partially > addresses it and switching VCLXAccessibleComponent > to using the vcl::Window will take care of the rest, > see upcoming commit > Change-Id If0894e733273eecad268c6a932ecee7c2e34b4c2 > ("a11y: Stop using VCLXWindow in vcl a11y classes"). Now that the VCLXAccessibleComponent ctor takes a vcl::Window, the sw::annotation::SwAnnotationWin can be passed directly. From a user perspective, no change in behavior is intended by this commit. Change-Id: If0894e733273eecad268c6a932ecee7c2e34b4c2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178385 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins
12 dayssw annotation win a11y: Skip VCLXWindow logicMichael Weghorn
Instead of overriding the base class VCLXWindow::CreateAccessibleContext which gets called by VCLXWindow::getAccessibleContext and results in the VCLXWindow base class also keeping a pointer to the XAccessible, override VCLXWindow::getAccessibleContext right away, and keep a reference to the SidebarWinAccessibleContext in SidebarWinAccessible itself. This simplifies the code, removes the need to cast the XAccessibleContext retrieved via the base class methods, and also prepares for making VCLXAccessibleComponent no more rely on the VCLXWindow, but using a vcl::Window directly in an upcoming commit. Drop the comment about the code being dodgy from SwAnnotationWin::CreateAccessible. This commit partially addresses it and switching VCLXAccessibleComponent to using the vcl::Window will take care of the rest, see upcoming commit Change-Id If0894e733273eecad268c6a932ecee7c2e34b4c2 ("a11y: Stop using VCLXWindow in vcl a11y classes"). Change-Id: I67bb7a6a237e57d0c522790c09a595c02ac06325 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178384 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins
12 dayssw a11y: Pass the VCLXWindow to SidebarWinAccessibleContext ctorMichael Weghorn
SwAnnotationWin::CreateAccessible returns the very object that is calling the SidebarWinAccessibleContext ctor. Make that more obvious by passing it as a param instead of calling SwAnnotationWin::CreateAccessible and then dynamic_casting that to a VCLXWindow. Change-Id: Id2ef80c7e5540276548c635cf550a552302b2fcc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178383 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
12 dayssw a11y: Move SidebarWinAccessibleContext declaration to headerMichael Weghorn
This is in preparation of reworking the SidebarWinAccessible logic in upcoming commits. Change-Id: Ia1c9bf6a62d1cefb6147f82891361b0ced251263 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178367 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
12 dayscid#1636677 Uninitialized scalar fieldCaolán McNamara
and cid#1636678 Uninitialized scalar field cid#1636679 Uninitialized scalar variable cid#1636680 Uninitialized scalar variable cid#1636681 Uninitialized scalar variable cid#1636682 Uninitialized scalar variable cid#1636683 Uninitialized scalar field Change-Id: I5f9c2cb0fae83b674d1f9f140ce4e8c91ef589f8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178360 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
13 daysfix ruby style name handling in SwXStyle::SetPropertyValueNoel Grandin
code dates back to commit 023a58b5fbbf3b30692f4b66d5f5b07c28270934 Author: Oliver Specht <os@openoffice.org> Date: Mon Feb 19 07:04:57 2001 +0000 ruby properties added Both the other places in sw/ that CharFormatName from SwFormatRuby expect it to be a UIName not a programmatic name. Change-Id: Ic02670f6c7ca7bacc6cd30cd48642f32eb9beb29 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178331 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
13 dayscrashtesting: fix assert while parsing tdf94588-1.odtJonathan Clark
Some ODF parsing code uses relative indices into XMLPropertyMapEntry arrays to enumerate related attributes. This change moves some recently-added paragraph property entries to the end of the respective array, fixing an assertion caused by accessing unexpected attributes via these hard-coded relative indices. Problem since: commit 7e4f4a0ccd3c56093dec44c7dcdd14c8b34623c3 tdf#163913 Implement font-relative margins Change-Id: Ia2671372f0152e4efb98bd25b390638e4458a1b6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178318 Tested-by: Jenkins Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
13 dayssw: lokit: make sure to read annotation html with utf-8Rashesh
- its online specific patch where the we pass html for annotation - to test: 1. Open document in online 2. Use "pt" keyboard to type comment "légend" and save 3. Before: légend; After: légend Change-Id: Ibd32fbd70c780938e8036362313067e8c1bc8f61 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178300 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
13 daystdf#159549 sw: lcl_getUsedPageStyles() needs to use FillProgName()Michael Stahl
... not FillUIName(). Thanks to Noel Grandin for pointing out this mistake in commit 0bc6fe5c1b889496fb83730545f9c8593ca65863 Change-Id: I4b86ec7363b2a09d3e328b6d77772db63873795f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178301 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
13 daystdf#62845: Introduce ViewerApp flag for slots, to hide in Viewer app modeMike Kaganski
Some slots make sense in read-only files, when the application runs in normal mode; but they make no sense in Viewer app mode. So this new flag is orthogonal to the existing ReadOnlyDoc flag. When it is FALSE, the respective command should not be active in the viewer mode. The default is TRUE. Change-Id: I5b5c75487fdf5a647aeab80129b6e84b42c00745 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177965 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
13 daysMark some Writer slots as inactive in readonly modeMike Kaganski
Change-Id: Ic27b5558a835d1adaca5af52ae7ec5c81643a9e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177962 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
13 daystdf#159549 sw: try to fix style mapping for Table StylesMichael Stahl
Fix the SwStyleNameMapper mapping for all families except TabStyle because testTdf129568ui fails; commit 7d08664be4d9a949718ce66e3bc974105a10284c "tdf#129568 Rename the default table style" indicates that earlier LO versions wrote UIName into table:template-name attributes which is quite tragic and prevents fixing this case. Rename SwXTextCellStyle::m_sParentStyle to m_sTableStyleUIName Actual changes to name conversion in SwXStyleFamily::insertByName(), SwXStyleFamily::replaceByName(), SwXStyleFamily::removeByName(), SwXTextTableStyle::setName(), SwXTextCellStyle::isInUse() Change-Id: I886d1196f0a4e93b0770d2859beddd9424a79430 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177860 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
13 daysFix typoAndrea Gelmini
Change-Id: Ie54afd58ea1921f3c5ed6d4175efef06b701b93d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178264 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
13 daysFix typoAndrea Gelmini
Change-Id: I59ca8b57bd8e1fd11a719a63a9fd5cf095d772a8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178265 Reviewed-by: Simon Chenery <simon_chenery@yahoo.com> Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
14 daystdf#159549 sw: fix FN_UNO_PARA_STYLE in unotbl.cxxMichael Stahl
SwXTextTableCursor::getPropertyValue() and SwXCellRange::getPropertyValue() were erroneously returning UINames. Thanks to Noel Grandin for pointing these out. Change-Id: I232b86512cac1adf9c00ac00bf8afaf3ccfeb3cd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178258 Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Tested-by: Jenkins
2024-12-10tdf#164065 load vml textbox in a group shapeOliver Specht
Store (vml) textbox elements to determine whether to load shape text or Writer frame. Replay elements in second step and process depending on the outcome. - result flag not yet available while processing - The text shape in docx bugdoc of tdf#152878 can now be loaded as Writer frame but with wrong size/position. - should also be applied to drawing ml shapes currently always loaded as Writer frame Change-Id: I0778057f9985f5523d91a9d757e00f2968aba350 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174902 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de> Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2024-12-10tdf#159549 sw: rename SwXStyle variables to make it more obviousMichael Stahl
There are only 2 actual changes in behaviour, in SwXStyle::getName() and SwXStyle::setName(): these now convert the name, but in practice it should not make any difference, because it looks like any attempt to set the name of a built-in style, or set a style's name to the name of a built-in style, will eventually throw an exception without changing the document model. Change-Id: If11fba2797e28b10c98c383c5d130f19ce0c77b6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178209 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-12-10tdf#159549 sw: fix style mapping for Character StylesMichael Stahl
Change-Id: If6a130f21bfb29fe834c7004788183849f39f51e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178172 Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Tested-by: Jenkins
2024-12-10tdf#159549 sw: fix style mapping for Page StylesMichael Stahl
lcl_getUsedPageStyles() needs to convert the style names. Lots of tests request the UIName, testTdf87533_bidi even checks the same style twice with different names. Change-Id: Id173493daffadd0d0a74e089ecba8f19d2b267c0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177859 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-12-10tdf#150839 a11y added page layout view under View OptionAdesola Samuel
An option "Layout of pages" is added to the view option which allows user to select any of the three page layout: 1) Single Page per Row 2) Multiple Pages per Row 3) Book View view for ease of accessibility. Change-Id: I8dcab9b78deee15fb68cf313dab6eff40025f5a2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176367 Tested-by: Jenkins Reviewed-by: Hossein <hossein@libreoffice.org> Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2024-12-10ReqIF: avoid 'target' attribute in 'a' elementsMike Kaganski
Change-Id: Iab34a18e2da766d30a2d6b5f5d8ed3855f3c8b8e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178207 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-12-10-Werror,-Wunused-private-fieldStephan Bergmann
Seemingly unused ever since the code was introduced in 1dd7cc9446233f047ace02f4275ef6405587b9c9 "tdf#116091: Replaced 'AutoFormat' Button in Convert Text to Table dialog", but only reported by Clang 20 trunk now, presumably since <https://github.com/llvm/llvm-project/commit/d457100a8152cc2ebf8cd219caae92cc0f591156> "[Clang] Fix -Wunused-private-field false negative with defaulted comparison operators (#116871)". Change-Id: I90fbd5be737b625f83283e8fbbb4d64d490d8fc1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178201 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de> Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2024-12-10fix bug in use of SwStyleNameMapper::GetUINameNoel Grandin
introduced in ca435be45f316120b9df6c9d547b781ed975817d "writer: handle styles in multiple languages for online" and sprinkle some [[nodiscard]] around to prevent future such issues Change-Id: Ie12a7966a4de93c9ad05fef01fd2ff606f9dde6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178087 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-12-10tdf#125969 cui: add in-use area image to bitmap listJustin Luth
This fixes a five year old (non-)easyhack with 3 duplicates. Note the nice-to-have dependencies in the bug report(s). When the document has a unique background (area) image, it is now added to the list of available images IF/WHEN the user looks in the area tab. This allows the user to switch back after changing, or re-use it in other places in the document. Most of this patch ended up being plumbing to ensure that this added image is ONLY available to the current document, because it MUST NOT be saved to the user profile. This change affects all apps and all types of areas: NICE -tested Writer pages, paragraphs, headers, textbox, sidebar(page) -tested Calc page style -tested Draw page, sidebar(page), textbox Caveats: -the bitmap list is NOT updated at the time of document import, only when area property inspected. (The bug requesting inclusion at the time of import is tdf#100832). make -srj1 UITest_writer_tests8 \ UITEST_TEST_NAME=tdf125969.tdf125969.test_tdf125969 \ SAL_USE_VCLPLUGIN=gen Change-Id: Ic9fea9b199602c4df1376e781d5df019526473d5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176253 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com>
2024-12-10tdf#164201 docx import: compat14+ cannot be ECMA_376_1ST_EDITIONJustin Luth
This fixes a 7.6 regression from commit e66ddcd4b66923bc835bd7c5f5c784a809a420a2. At import, the base filter was treating too many documents as if they were limited to Word 2007 format, and thus reducing their compatibilityMode to 12 on export. This import case is matched in a LOT of unit tests. However, it doesn't manifest itself in saveAndReload(mpFilter) (or DECLARE_OOXMLEXPORT_TEST) because the mpFilter string set in the Test class with SwModelTestBase(..."ooxmlexport/data/", "Office Open XML Text"), forces saving in ISOIEC_29500_2008 mode and thus unit tests basically NEVER round-trip as "MS Word 2007 XML". However, the general user was almost always round-tripping these as MS Word 2007 XML / compat12 since LO 7.6. make CppunitTest_sw_ooxmlexport20 CPPUNIT_TEST_NAME=testTdf158855 Change-Id: If635866cc816e7b4734443f87b30410ac3bba951 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178048 Reviewed-by: Justin Luth <jluth@mail.com> Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-12-09tdf#164247 sw a11y check: Adhere to WCAG contrast threshold for large textMichael Weghorn
Quoting WCAG 2.2 "Success Criterion 1.4.3 Contrast (Minimum)" [1]: > The visual presentation of text and images of text has a contrast > ratio of at least 4.5:1, except for the following: > > Large Text > > Large-scale text and images of large-scale text have a contrast > ratio of at least 3:1; Regarding large text, the corresponding "Understanding SC 1.4.3" [2] clarifies: > Text that is larger and has wider character strokes is easier to read at > lower contrast. The contrast requirement for larger text is therefore > lower. This allows authors to use a wider range of color choices for > large text, which is helpful for design of pages, particularly titles. > 18 point text or 14 point bold text is judged to be large enough to > require a lower contrast ratio. Therefore, lower the text contrast requirement in Writer's accessibility check from 4.5 to 3.0 for text that is considered large according to that specification. Add a unit test with 2 test documents: * one that adheres to the requirements and would have triggered false positives without this change in place (sw/qa/core/accessibilitycheck/data/ContrastTestOK.odt) * one that doesn't adhere to the requirements and still fails the check, as it should (sw/qa/core/accessibilitycheck/data/ContrastTestFail.odt) [1] https://www.w3.org/TR/WCAG22/#contrast-minimum [2] https://www.w3.org/WAI/WCAG22/Understanding/contrast-minimum.html Change-Id: I398f72aa5bdcd77c42834632575d6465a5ecd586 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178127 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
2024-12-09tdf#159549 sw: add unit testMichael Stahl
Change-Id: I8b964d4436835b66f25acece9562516ed70473eb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178148 Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Tested-by: Jenkins
2024-12-09tdf#159549 sw: fix style name in SwXStyle::getParentStyle()Michael Stahl
For a style that isn't inserted yet, the m_sParentStyleName is converted to UIName by setParentStyle() but isn't converted back to ProgName in getParentStyle(). This caused all of the writerfilter test failures in commit c166d112381f195a171425d1f9c1d38ce579319a. Change-Id: Ib5495785996807a8f3d9339ed2740f286b04d716 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177998 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-12-09no need to do repeated lookups hereNoel Grandin
Change-Id: Iec30aa6bbd1bcb8bb22cfb002f81ea04458755b6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178116 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-12-09make conversion operator explicitNoel Grandin
so less invisible behaviour Change-Id: I497763cb4be554ddbd00831458f162d9d975742e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178115 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-12-08Simplify SwAccessible*Mike Kaganski
Change-Id: I2994161bfa8fa3a88b3e66a9f4f12e4de6d5b025 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178096 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>