summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
8 daysSfxListener::RemoveBroadcaster_Impl must handle duplicatesMike Kaganski
SfxListener::StartListening explicitly allows duplicates. RemoveBroadcaster_Impl should be safe in that regard; use std::erase to remove all occurrences of the broadcaster. Change-Id: Icc4d1d12c450a0893e9e4da429120f32388b35fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180262 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
8 daysLet a test use a copy of a SRCDIR test docStephan Bergmann
Whatever the reason, but running the test against a read-only SRCDIR caused CppunitTest_sd_tiledrendering2 CPPUNIT_TEST_NAME=testInsertSignatureLineExternal::TestBody to fail with > sd/qa/unit/tiledrendering/tiledrendering2.cxx:64:testInsertSignatureLineExternal::TestBody > equality assertion failed > - Expected: 1 > - Actual : 0 Change-Id: I6fedd20bec3c36cd2f803a8cb0b4222863a6126f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180266 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
8 daystdf#130857 qt weld: Implement QtInstanceMenuButton::insert_itemMichael Weghorn
Add initial implementation for QtInstanceMenuButton::insert_item. See also QtBuilder::insertMenuObject which partially has the same logic. Handling for radio or check items is not implemented yet, so assert that `eCheckRadioFalse` is `TRISTATE_INDET` for now. This will e.g. be used by the "File" -> "Templates" -> "Manage Templates" dialog once that one is supported. Change-Id: Ib34d6b61b26ae900eac3b34b68224e6ac2e11711 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180250 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
8 dayscool#7406 Revert "cool#9019: draw/impress: disable the Grid for now"Gökay Şatır
This reverts commit 41130a39ad68310a0136605cbced1f191396c456. Now we are preparing to show & snap grid functionality. Snap grid feature is ready: https://github.com/CollaboraOnline/online/pull/10147 Change-Id: I0ecc395616cc985aadc76f44b1dfe011b624ecc5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180265 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
8 daysUse comphelper::containerToSequence() instead of loopAkshay Kumar Dubey
Change-Id: I768bf65bd3f5d2fff601a0d50fcec8e832162b70 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180108 Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Tested-by: Jenkins
8 daysqt: No longer manually destroy QWindowMichael Weghorn
With current qtbase git dev, expanding the Font Name combobox in Writer's Formatting toolbar and clicking on a combobox entry to select it triggers a crash in `QWidgetWindow::handleMouseEvent`, similar to the one described in more detail and fixed in commit 4b547f11ae3e943e67c195a67a033307ce7f1d6d Author: Michael Weghorn <m.weghorn@posteo.de> Date: Tue Dec 24 13:12:18 2024 +0100 tdf#130857 qt weld: Defer QDialog deletion . For the scenario here, the QWidgetWindow whose virtual method gets called (causing the crash) was destroyed with this backtrace earlier: 1 QWidgetWindow::~QWidgetWindow qwidgetwindow.cpp 162 0x7f856b6dc6c7 2 QWidgetWindow::~QWidgetWindow qwidgetwindow.cpp 160 0x7f856b6dc80d 3 QWidgetPrivate::deleteTLSysExtra qwidget.cpp 1711 0x7f856b687fa1 4 QWidget::destroy qwidget.cpp 12612 0x7f856b687bd6 5 QtWidget::hideEvent QtWidget.cxx 261 0x7f856e63decc 6 QWidget::event qwidget.cpp 9199 0x7f856b69fd67 7 QtWidget::event QtWidget.cxx 689 0x7f856e63f6ce 8 QApplicationPrivate::notify_helper qapplication.cpp 3305 0x7f856b5e2dd0 9 QApplication::notify qapplication.cpp 3251 0x7f856b5e6cc9 10 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1118 0x7f856d6481b9 11 QCoreApplication::sendEvent qcoreapplication.cpp 1558 0x7f856d648e29 12 QWidgetPrivate::hide_helper qwidget.cpp 8205 0x7f856b69d95f 13 QWidgetPrivate::setVisible qwidget.cpp 8402 0x7f856b69e9d5 14 QWidget::setVisible qwidget.cpp 8310 0x7f856b69e1dc 15 QtFrame::Show QtFrame.cxx 398 0x7f856e53ec37 16 vcl::Window::Show window.cxx 2218 0x7f85786ccd7f 17 vcl::Window::Show window.cxx 2212 0x7f85786cccaa 18 FloatingWindow::ImplEndPopupMode floatwin.cxx 896 0x7f857858caf1 19 FloatingWindow::EndPopupMode floatwin.cxx 948 0x7f8578589485 20 ComboBox::ImplSelectHdl combobox.cxx 410 0x7f857872ee66 21 ComboBox::LinkStubImplSelectHdl combobox.cxx 316 0x7f857872d2bd 22 Link<LinkParamNone *, void>::Call link.hxx 101 0x7f85784223a1 23 ImplListBoxWindow::ImplCallSelect imp_listbox.cxx 722 0x7f85787c0bc0 24 ImplListBoxWindow::Tracking imp_listbox.cxx 1133 0x7f85787c221f 25 vcl::Window::EndTracking window2.cxx 341 0x7f85786ae763 26 ImplHandleMouseEvent winproc.cxx 713 0x7f85786e8aae 27 ImplHandleSalMouseButtonUp winproc.cxx 2351 0x7f85786ed041 28 ImplWindowFrameProc winproc.cxx 2700 0x7f85786ebd50 29 SalFrame::CallCallback salframe.hxx 311 0x7f856e54cecc 30 QtFrame::CallCallback QtFrame.hxx 235 0x7f856e549e95 31 QtWidget::handleMouseButtonEvent QtWidget.cxx 117 0x7f856e63d45a 32 QtWidget::mouseReleaseEvent QtWidget.cxx 128 0x7f856e63d711 33 QWidget::event qwidget.cpp 8971 0x7f856b69f34d 34 QtWidget::event QtWidget.cxx 689 0x7f856e63f6ce 35 QApplicationPrivate::notify_helper qapplication.cpp 3305 0x7f856b5e2dd0 36 QApplication::notify qapplication.cpp 2782 0x7f856b5e4aa2 37 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1118 0x7f856d6481b9 38 QCoreApplication::sendSpontaneousEvent qcoreapplication.cpp 1572 0x7f856d648eb9 39 QApplicationPrivate::sendMouseEvent qapplication.cpp 2363 0x7f856b5e36f7 40 QWidgetWindow::handleMouseEvent qwidgetwindow.cpp 664 0x7f856b6de49b 41 QWidgetWindow::event qwidgetwindow.cpp 292 0x7f856b6dcd25 42 QApplicationPrivate::notify_helper qapplication.cpp 3305 0x7f856b5e2dd0 43 QApplication::notify qapplication.cpp 3255 0x7f856b5e6ced 44 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1118 0x7f856d6481b9 45 QCoreApplication::sendSpontaneousEvent qcoreapplication.cpp 1572 0x7f856d648eb9 46 QGuiApplicationPrivate::processMouseEvent qguiapplication.cpp 2485 0x7f856c484282 47 QGuiApplicationPrivate::processWindowSystemEvent qguiapplication.cpp 2212 0x7f856c483446 48 QWindowSystemInterface::sendWindowSystemEvents qwindowsysteminterface.cpp 1113 0x7f856c56a27d 49 QWindowSystemInterface::flushWindowSystemEvents qwindowsysteminterface.cpp 1082 0x7f856c56a12e 50 QtWaylandClient::QWaylandDisplay::flushRequests qwaylanddisplay.cpp 524 0x7f8569ca7635 51 QtPrivate::FunctorCall<std::integer_sequence<unsigned long>, QtPrivate::List<>, void, void (QtWaylandClient::QWaylandDisplay:: *)()>::call(void (QtWaylandClient::QWaylandDisplay:: *)(), QtWaylandClient::QWaylandDisplay *, void * *)::{lambda()#1}::operator()() const qobjectdefs_impl.h 127 0x7f8569cc32d5 52 QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<std::integer_sequence<unsigned long>, QtPrivate::List<>, void, void (QtWaylandClient::QWaylandDisplay:: *)()>::call(void (QtWaylandClient::QWaylandDisplay:: *)(), QtWaylandClient::QWaylandDisplay *, void * *)::{lambda()#1}>(void * *, QtPrivate::FunctorCall<std::integer_sequence<unsigned long>, QtPrivate::List<>, void, void (QtWaylandClient::QWaylandDisplay:: *)()>::call(void (QtWaylandClient::QWaylandDisplay:: *)(), QtWaylandClient::QWaylandDisplay *, void * *)::{lambda()#1}&&) qobjectdefs_impl.h 65 0x7f8569cc31fd 53 QtPrivate::FunctorCall<std::integer_sequence<unsigned long>, QtPrivate::List<>, void, void (QtWaylandClient::QWaylandDisplay:: *)()>::call(void (QtWaylandClient::QWaylandDisplay:: *)(), QtWaylandClient::QWaylandDisplay *, void * *) qobjectdefs_impl.h 126 0x7f8569cc311f 54 QtPrivate::FunctionPointer<void (QtWaylandClient::QWaylandDisplay:: *)()>::call<QtPrivate::List<>, void>(void (QtWaylandClient::QWaylandDisplay:: *)(), QtWaylandClient::QWaylandDisplay *, void * *) qobjectdefs_impl.h 174 0x7f8569cc3091 55 QtPrivate::QCallableObject<void (QtWaylandClient::QWaylandDisplay:: *)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void * *, bool *) qobjectdefs_impl.h 545 0x7f8569cc2fbb 56 QtPrivate::QSlotObjectBase::call qobjectdefs_impl.h 461 0x7f856d65e772 57 QMetaCallEvent::placeMetaCall qobject.cpp 622 0x7f856d707e5c 58 QObject::event qobject.cpp 1431 0x7f856d709bb1 59 QApplicationPrivate::notify_helper qapplication.cpp 3305 0x7f856b5e2dd0 60 QApplication::notify qapplication.cpp 3255 0x7f856b5e6ced 61 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1118 0x7f856d6481b9 62 QCoreApplication::sendEvent qcoreapplication.cpp 1558 0x7f856d648e29 63 QCoreApplicationPrivate::sendPostedEvents qcoreapplication.cpp 1898 0x7f856d649d68 64 QCoreApplication::sendPostedEvents qcoreapplication.cpp 1752 0x7f856d648c6c 65 postEventSourceDispatch qeventdispatcher_glib.cpp 246 0x7f856dc377b1 66 ?? 0x7f857430b81f 67 ?? 0x7f857430da57 68 g_main_context_iteration 0x7f857430e1c0 69 QEventDispatcherGlib::processEvents qeventdispatcher_glib.cpp 399 0x7f856dc369eb 70 QPAEventDispatcherGlib::processEvents qeventdispatcher_glib.cpp 89 0x7f856cd64858 71 QtInstance::ImplYield QtInstance.cxx 464 0x7f856e56a532 72 QtInstance::DoYield QtInstance.cxx 475 0x7f856e56d5b1 73 ImplYield svapp.cxx 385 0x7f8578ebd8d6 74 Application::Yield svapp.cxx 488 0x7f8578ebd1ef 75 Application::Execute svapp.cxx 360 0x7f8578ebcfd0 76 desktop::Desktop::Main app.cxx 1679 0x7f8581d27b89 77 ImplSVMain svmain.cxx 230 0x7f8578eded56 78 SVMain svmain.cxx 248 0x7f8578ee0949 79 soffice_main sofficemain.cxx 121 0x7f8581da146a 80 sal_main main.c 51 0x55d374ac7a6d 81 main main.c 49 0x55d374ac7a47 To fix that, no longer manually destroy the QWindow (s. frame 5). This reverts commit commit 2284e26a0731a606568eda706e8e4451aaf880d8 Author: Michael Weghorn <m.weghorn@posteo.de> Date: Thu Sep 19 09:49:57 2024 +0200 qt a11y: Destroy QWindow when popup gets hidden (which wasn't causing any such issues before qtbase commit [1]) and results in the top-level frame of the combobox popup not getting removed from the a11y layer any more when the combobox gets closed (s. commit message of the above commit for more details), so this will need another solution instead. (Using native QComboBoxes might solve this issue as well, once the Qt welding process - see tdf#130857 - has reached the point where these comboboxes can be native Qt ones.) [1] https://code.qt.io/cgit/qt/qtbase.git/commit/?id=84a5f50c7766c99f62b22bb4388137e0aa8dd13d Change-Id: I3dfd7bd7883498a68b3106bf42541c2948344040 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180243 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
8 daysqt: Set fullscreen directly via QWidgetMichael Weghorn
There's no need to go via the widget's QWindow by calling QtFrame::windowHandle which would force setting the Qt::WA_NativeWindow attribute as well. Change-Id: Ibd3941c47361007f34a1f6aaf995adb866aac59b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180242 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
8 daystdf#163335 sw a11y: Handle cursor selection consistentlyMichael Weghorn
Fix the issue described in more detail in Change-Id: I874ad4a7a9faf79492967c943517d83df5f47e75 Author: Michael Weghorn <m.weghorn@posteo.de> Date: Tue Jan 14 11:32:25 2025 +0100 tdf#163335 qt a11y: Work around broken sw selection handling : > SwAccessibleSelectionHelper::getSelectedAccessibleChildCount > returns the count of paragraphs that are (partially) selected > by the text cursor if no other objects are selected. > However, SwAccessibleSelectionHelper::getSelectedAccessibleChild > doesn't take these into account and therefore throws the > IndexOutOfBoundsException when called with any index. Sample steps to reproduce with the gtk3 VCL plugin: 1) have a Writer doc with 3 paragraphs 2) in Accerciser, select the document in the a11y tree 3) interactively query information in Accerciser's IPython console: In [5]: sel = acc.get_selection_iface() In [6]: sel.get_n_selected_children() Out[6]: 2 In [7]: sel.get_selected_child(0) In [8]: sel.get_selected_child(1) The last 2 lines trigger ** (soffice:238967): WARNING **: 12:00:10.723: Exception in getSelectedAccessibleChild() in `selection_ref_selection`. Fix this by aligning the logic in SwAccessibleSelectionHelper::getSelectedAccessibleChild with the one in SwAccessibleSelectionHelper::getSelectedAccessibleChildCount and take the paragraphs that have cursor selection into account there as well. (This is also consistent with the fact that they have the SELECTED a11y state set.) With that in place, the selected paragraphs can now be queried in Accerciser: In [10]: sel = acc.get_selection_iface() In [11]: sel.get_n_selected_children() Out[11]: 2 In [12]: sel.get_selected_child(0) Out[12]: <Atspi.Accessible object at 0x7f0405596a40 (AtspiAccessible at 0x402b7380)> In [13]: sel.get_selected_child(1) Out[13]: <Atspi.Accessible object at 0x7f040557a100 (AtspiAccessible at 0x402b86d0)> In [14]: sel.get_selected_child(1).role Out[14]: <enum ATSPI_ROLE_PARAGRAPH of type Atspi.Role> But querying an invalid index still gives a `None` result as expected: In [16]: sel.get_selected_child(2) In [17]: sel.get_selected_child(2) == None Out[17]: True (Behavior with qt6 VCL plugin is basically the same.) Change-Id: Ic8cf462ae19e494b899643db1709f5075460d287 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180231 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
8 dayssw a11y: Reuse existing list of a11y childrenMichael Weghorn
Deduplicate (and reuse in case both code paths are taken). Change-Id: I1a5a22ed99d136a43342e6e5ab4a9e283a36eab6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180230 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
8 dayssw a11y: Flatten SwAccessibleSelectionHelper::getSelectedAccessibleChildCountMichael Weghorn
Change-Id: Idb66fa1728fd9bea6cd9cff639ea7f1056ae6118 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180229 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
8 dayssw: Rename SwFEShell::{IsObjSelected -> GetSelectedObjCount}Michael Weghorn
The method returns the number of selected objects, not just a bool indicating whether any (or a particular) object is selected, other than the SwFEShell::IsObjSelected variant that takes a `const SdrObject&` param. Rename the method to make that clearer. Change-Id: I30afec5322d2e6f1d31e5bc0ca6c252faa1fb4d8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180223 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins
8 dayssw a11y: Use reference instead of pointerMichael Weghorn
Change-Id: I79b7fa475642b93f15c000d6f989cf30864ce212 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180222 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
8 dayssw a11y: Drop VEC_PARA typedefMichael Weghorn
Change-Id: I8de415d96f95f6d65c8e9fa0f03658818489821d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180221 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
8 dayssw a11y: Drop local var bIsSelAllMichael Weghorn
Just call IsDocumentSelAll() at the one place where the local var was used so far. Change-Id: Ia7b50bbb678f0186a6cb10cd9c156ac4c2b026b4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180220 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
8 daysconvert RES_OBJECTDYING to SfxHintNoel Grandin
and remove SwPtrMsgPoolItem, which is now unused Change-Id: Ie5bedcd9855256d3ad90189db3df1ae978977e8c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180180 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
8 daysUpdate git submodulesDione Maddern
* Update helpcontent2 from branch 'master' to bdd4044b77f13aad47d233aebdd529530271b119 - tdf#162504 Add help page for Cell Appearance sidebar panel Create new help page source/text/scalc/01/sidebar_cell_appearance.xhp - Add a new help page to document the features of the Cell Appearance sidebar panel in Calc - The head section from this page will be added to the Properties Sidebar page when help pages for all properties panels are complete. In /home/twistappel/libreoffice/helpcontent2/AllLangHelp_scalc.mk - Add the new help page source/text/scalc/01/sidebar_cell_appearance.xhp to the repository In source/text/scalc/01/05020000.xhp - Add variable tags to the main heading easier to make it easier embed in other pages. In /home/twistappel/libreoffice/helpcontent2/source/text/shared/01/05030500.xhp - Add variable and section tags to make content easier to embed in other pages. Change-Id: I7e61a7daea7a1759f88d6ff6cbfde4aec57da680 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/180244 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
8 dayssc: fix copy&paste errorXisco Fauli
Since commit 521a56d8d1e12b7471fda6b62b21d51776c9fbaf Author: Balazs Varga <balazs.varga.extern@allotropia.de> Date: Thu May 30 18:43:09 2024 +0200 tdf#137543 - Add new LET function to Calc Change-Id: I7e059457a3b31246bd5c3b903371d5f158975653 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180246 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
9 daysTypos and improvements in fr.po (wizards/scriptforge)Julien Nabet
Change-Id: Ibc073d4167e9aa755a52ddcea412039925f4c0df Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180187 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
9 daysRevert "remove unused #include from svtools"Sahil Gautam
This reverts commit 8fb8e2fb5fc6f8059b56ef98450dff01940023c7. Reason for revert: <string_view> is used quite often in colorcfg, removing it just because it's indirectly used might cause some issues down the road like what if the file which indirectly included it removes it? Change-Id: Ibb01144a3473fa422745bf61591a9ce51268a6c7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180064 Tested-by: Jenkins Reviewed-by: Sahil Gautam <sahil.gautam.extern@allotropia.de>
9 daysChange alpha behavour of OutputDevice::SetFillColorNoel Grandin
It is pretty ugly bad on several levels. Essentially what the currrent behaviour does is, if the fill color has an transparency value, and draw some pixels, we just don't bother to write anything to the color surface at all, we only write to the alpha surface. (*) It is impossible to emulate efficiently when we switch to combined color+alpha surfaces (*) It works completely differently to how every other graphics API in the world operates (*) It makes no sense - it doesn't allow you to fill a shape with partially transparent color pixels (because it just doesn't bother writing to the color surface). This behaviour dates back to "initial import", so sadly no reason why. Noting that we are changing 3 things here: (1) Setting a fill color with transparency will actually write to the color surface. (2) Previously, SetFillColor(COL_TRANSPARENCY) was the same as SetFillColor(), now they mean different things (3) SetFillColor(x) where x has tranparency will now actually affect the fill color of the alpha layer. (4) VirtualDevice::SetOutputSizePixel will now erase/fill the device with data in cases where it previously would not (because previously the fill was ignored when background == COL_TRANSPARENT) Change-Id: I4c8b371a436a4d1ffc4344c7d6b21932d861397d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180184 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
9 daystdf#163335 qt a11y: Work around broken sw selection handlingMichael Weghorn
When using the qt6 vcl plugin with the Orca screen reader running, selecting text in Writer resulted in a crash due to an IndexOutOfBoundsException being thrown. Backtrace: Thread 1 received signal SIGABRT, Aborted. __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44 warning: 44 ./nptl/pthread_kill.c: No such file or directory (rr) bt #0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44 #1 0x00007f889b09ddef in __pthread_kill_internal (threadid=<optimized out>, signo=6) at ./nptl/pthread_kill.c:78 #2 0x00007f889b049d02 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #3 0x00007f889b0324f0 in __GI_abort () at ./stdlib/abort.c:79 #4 0x00007f889aca1a3d in ??? () at /lib/x86_64-linux-gnu/libstdc++.so.6 #5 0x00007f889acb300a in ??? () at /lib/x86_64-linux-gnu/libstdc++.so.6 #6 0x00007f889aca15e9 in std::terminate() () at /lib/x86_64-linux-gnu/libstdc++.so.6 #7 0x00007f889acb3288 in __cxa_throw () at /lib/x86_64-linux-gnu/libstdc++.so.6 #8 0x00007f8862346900 in SwAccessibleSelectionHelper::throwIndexOutOfBoundsException (this=0x561f2f8d1910) at .../libreoffice/sw/source/core/access/accselectionhelper.cxx:72 #9 0x00007f8862347df8 in SwAccessibleSelectionHelper::getSelectedAccessibleChild (this=0x561f2f8d1910, nSelectedChildIndex=0) at .../libreoffice/sw/source/core/access/accselectionhelper.cxx:283 #10 0x00007f8862298e6f in SwAccessibleDocument::getSelectedAccessibleChild (this=0x561f2f8d1800, nSelectedChildIndex=0) at .../libreoffice/sw/source/core/access/accdoc.cxx:467 #11 0x00007f8862298eaf in non-virtual thunk to SwAccessibleDocument::getSelectedAccessibleChild(long) () at .../libreoffice/sw/source/core/access/accdoc.cxx:467 #12 0x00007f88878c6200 in QtAccessibleWidget::selectedItem (this=0x7f887c014ac0, nSelectionIndex=0) at vcl/qt6/../qt5/QtAccessibleWidget.cxx:1861 #13 0x00007f8885f08ba0 in AtSpiAdaptor::selectionInterface (this=0x561f2b8a7070, interface=0x7f887c014ac0, function=..., message=..., connection=...) at .../qt5/qtbase/src/gui/accessible/linux/atspiadaptor.cpp:2596 #14 0x00007f8885f03ce1 in AtSpiAdaptor::handleMessage (this=0x561f2b8a7070, message=..., connection=...) at .../qt5/qtbase/src/gui/accessible/linux/atspiadaptor.cpp:1479 #15 0x00007f888366d217 in QDBusConnectionPrivate::activateObject (this=0x7f887c00a390, node=..., msg=..., pathStartPos=27) at .../qt5/qtbase/src/dbus/qdbusintegrator.cpp:1448 #16 0x00007f888366e1d0 in QDBusActivateObjectEvent::placeMetaCall (this=0x7f887c03aca0) at .../qt5/qtbase/src/dbus/qdbusintegrator.cpp:1604 #17 0x00007f8886b09bb1 in QObject::event (this=0x561f2b8a7070, e=0x7f887c03aca0) at .../qt5/qtbase/src/corelib/kernel/qobject.cpp:1431 #18 0x00007f88849e2dd0 in QApplicationPrivate::notify_helper (this=0x561f2a554ae0, receiver=0x561f2b8a7070, e=0x7f887c03aca0) at .../qt5/qtbase/src/widgets/kernel/qapplication.cpp:3305 #19 0x00007f88849e6ced in QApplication::notify (this=0x561f2a541420, receiver=0x561f2b8a7070, e=0x7f887c03aca0) at .../qt5/qtbase/src/widgets/kernel/qapplication.cpp:3255 #20 0x00007f8886a481b9 in QCoreApplication::notifyInternal2 (receiver=0x561f2b8a7070, event=0x7f887c03aca0) at .../qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp:1118 #21 0x00007f8886a48e29 in QCoreApplication::sendEvent (receiver=0x561f2b8a7070, event=0x7f887c03aca0) at .../qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp:1558 #22 0x00007f8886a49d68 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x561f2a56fee0) at .../qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp:1898 #23 0x00007f8886a48c6c in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at .../qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp:1752 #24 0x00007f88870377b1 in postEventSourceDispatch (s=0x561f2a5cce80) at .../qt5/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:246 #25 0x00007f888d50b81f in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0 #26 0x00007f888d50da57 in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0 #27 0x00007f888d50e1c0 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0 #28 0x00007f88870369eb in QEventDispatcherGlib::processEvents (this=0x561f2a545d00, flags=...) at .../qt5/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:399 #29 0x00007f8886164858 in QPAEventDispatcherGlib::processEvents (this=0x561f2a545d00, flags=...) at .../qt5/qtbase/src/gui/platform/unix/qeventdispatcher_glib.cpp:89 #30 0x00007f888796a492 in QtInstance::ImplYield (this=0x561f2a5d16c0, bWait=true, bHandleAllCurrentEvents=false) at vcl/qt6/../qt5/QtInstance.cxx:464 #31 0x00007f888796d511 in QtInstance::DoYield (this=0x561f2a5d16c0, bWait=true, bHandleAllCurrentEvents=false) at vcl/qt6/../qt5/QtInstance.cxx:475 #32 0x00007f88924bd626 in ImplYield (i_bWait=true, i_bAllEvents=false) at .../libreoffice/vcl/source/app/svapp.cxx:385 #33 0x00007f88924bcf3f in Application::Yield () at .../libreoffice/vcl/source/app/svapp.cxx:488 #34 0x00007f88924bcd20 in Application::Execute () at .../libreoffice/vcl/source/app/svapp.cxx:360 #35 0x00007f889b327b89 in desktop::Desktop::Main (this=0x7ffcd9ea1c00) at .../libreoffice/desktop/source/app/app.cxx:1679 #36 0x00007f88924deaa6 in ImplSVMain () at .../libreoffice/vcl/source/app/svmain.cxx:230 #37 0x00007f88924e0699 in SVMain () at .../libreoffice/vcl/source/app/svmain.cxx:248 #38 0x00007f889b3a146a in soffice_main () at .../libreoffice/desktop/source/app/sofficemain.cxx:121 #39 0x0000561ef2802a6d in sal_main () at .../libreoffice/desktop/source/app/main.c:51 #40 0x0000561ef2802a47 in main (argc=2, argv=0x7ffcd9ea1e08) at .../libreoffice/desktop/source/app/main.c:49 While QtAccessibleWidget::selectedItem already returns early if the passed selection index is too large according to what XAccessibleSelection::getSelectedAccessibleChildCount() returns, this is not enough because Writer's SwAccessibleSelectionHelper has an inconsistent/broken implementation: SwAccessibleSelectionHelper::getSelectedAccessibleChildCount returns the count of paragraphs that are (partially) selected by the text cursor if no other objects are selected. However, SwAccessibleSelectionHelper::getSelectedAccessibleChild doesn't take these into account and therefore throws the IndexOutOfBoundsException when called with any index. Temporarily (in particular for backporting to release branches), handle the exception in QtAccessibleWidget::selectedItem like other a11y bridges do (see e.g. `selection_ref_selection` for the gtk3 VCL plugin) to avoid the crash. The underlying Writer issue described above will be fixed in a separate commit (and for master only). Change-Id: I874ad4a7a9faf79492967c943517d83df5f47e75 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180228 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
9 daysAdd unit tests for .uno:DeleteContentControl commandcodewithvk
- Added tests for deleting Rich Text, Checkbox, Dropdown, and Date content controls. - TODO: Add test for Picture content control. Change-Id: Icf423ab85d6a28c6c33412677fd1eb44d0ae94f2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176068 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
9 daysUse ErrorHandler::HandleError, instead of creating own message boxMike Kaganski
Change-Id: Ib4aeb52db1d81d9e3dcc4e0c6c880be8982b8120 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180219 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
9 dayswe never actually erase device in SetOutputSizePixelScaleOffsetAndLOKBufferNoel Grandin
So simplify the code. The reason this currently "works" is that we always set the background to COL_TRANSPARENT, and when we do that, the DrawRect() logic will short-circuit and do nothing. Which also means we can inline ImplSetOutputSizePixel into SetOutputSizePixel, since it has only one call site. Change-Id: I0ae000e187fb7d18801ccfb61d1066f71f0c6cad Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180213 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
9 daysFix typoAndrea Gelmini
Change-Id: Id8c9642b2b94416c271f7bd10829080ace0e9a86 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180205 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
9 daysFix typoAndrea Gelmini
Change-Id: I1e9187cc2fb024bd72a1de41cffb4b01910f83b3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180171 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Simon Chenery <simon_chenery@yahoo.com>
9 daysPort Query.java test to CppUnitAdam Seskunas
dbaccess/qa/unit/CRMDatabase_test.cxx add test dbaccess/qa/complex/dbaccess remove Query.java dbaccess/JunitTest_dbaccess_complex.mk remove test call Change-Id: If21863de1fa4db738e3d51f93a3c7ca19130bb1e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177278 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
9 daysUse o3tl/source_location.hxx in errcodeMike Kaganski
Change-Id: Ibb4ee84e74ebd501fefa12070c999e5e9da199fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180212 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
9 daysRevert "vcl: remove unnecessary resets"Michael Weghorn
This reverts commit 210f30410803113cbbd3d32062c2769b95aa8a81. Reason for revert: As Mike Kaganski explains in [1]: > This is technically wrong. The bitmaps must not be used when they > have active write access. Creation of the BitmapEx in theory may > scale the bitmaps (indeed, here they are created with the same size), > which would assert on active write access. > > Se tdf#156856 [1] https://gerrit.libreoffice.org/c/core/+/180142/comments/d55835ab_a4f52e04 Change-Id: I731b7ff2b17f33f886e7113ad48e30f87e9b80d6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180211 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
9 daysexternal/python: Don't package an _lzma libraryStephan Bergmann
...to avoid > [build CHK] CustomTarget/postprocess/check_dynamic_objects/check.done > instdir/program/python-core-3.11.11/lib/lib-dynload/_lzma.cpython-3.11d.so has suspicious NEEDED: liblzma.so.5 as seen at least when building on a Fedora 41 machine that happens to have xz-devel-5.6.2-2.fc41.x86_64 installed (so that Python's configure detects have_liblzma=yes). The _lzma library had been added to external/python3/ExternalPackage_python3.mk in 892c0d2ef0ee43e079aff51dcc09572d76689ec1 "python3: update python3_EXTENSION_MODULES", but without giving any rationale. (It had previously been removed there with c2e4e74138c0a816f6aace4d336c7d8cb611d4fa "Python3.5: Remove external dependencies: readline and lzma".) Change-Id: I4afe9fb08891dda116f115dac7b2f948aac84e06 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180194 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
9 dayspoppler: try to patch out all uses of std::rangesMichael Stahl
Cloph reports it is not supported by macOS baseline XCode 14.2 Change-Id: I70a2e4c3ffd91c1a41123d1fa4d371406b300cba Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180026 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Jenkins
9 daysUpdate git submodulesMartin Srebotnjak
* Update dictionaries from branch 'master' to a245529de520531329531184d0513cc5a73c8c70 - Updated Slovenian thesaurus Change-Id: Idd56555762bd591ff719cbdf52d3212cea80ff85 Reviewed-on: https://gerrit.libreoffice.org/c/dictionaries/+/180208 Tested-by: Andras Timar <andras.timar@collabora.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
9 daysThe protocol was already checked aboveMike Kaganski
Change-Id: If2ca73f043308736a4bfc3325d51aa271b07abe1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180200 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
9 daystdf#164686: handle exceptions from UCBContentHelper::ExistsMike Kaganski
When a filename can be treated as a non-file URL, checking its existence may throw. This needs to be handled here. Handles '?' in the filename. Change-Id: If065c483d1a44cbbfcea21f91d72adf1fdfde579 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180199 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
9 daystdf#164686: drop the erroneous exclusion of pdf exportMike Kaganski
This partially reverts commit 25a997c15d39fb30676a375df8ea4ce1ed2e1acd (tdf#53530 Only show 1 error dialog instead of 3 on export to PDF, 2022-08-29). Handles ':' in the filename. Change-Id: Ieccbbd55f5978e7dbd7b154a3e3a2df5d1cc07ff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180198 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
9 daystdf#164686: Check filename validity in SvtFileDialogMike Kaganski
Handles '|', '<', '>', '"' in the filename. Change-Id: Ic43bb3b08b1ccd48c691b7ca90f1fc65fed6f320 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180197 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
9 daysloplugin:redundantcastStephan Bergmann
Change-Id: I8c26a439679359553d387686d9a11718a106ef5a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180181 Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de> Tested-by: Jenkins
9 daystdf#164617 Fix Vivid Impress templateLaurent Balland
Change styles of objects of first slide to automatic styles. It preserves styles when affecting Master Page. Change-Id: I4612efed987e2a976ba493555845fb82c18c3228 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180145 Tested-by: Jenkins Reviewed-by: Laurent Balland <laurent.balland@mailo.fr>
9 daystdf#164127 vcl: Skip further focus processing for disposed EditMichael Weghorn
For the UNO control property browser, switching focus away from the property browser to the document while an Edit in the property browser has focus and then back to the property browser results in the controls of the property browsers getting disposed and new ones created when processing the focus event. Backtrace of how the Edit gets disposed (for the "Name" edit): 1 VclReferenceBase::disposeOnce vclreferencebase.cxx 37 0x7f62fdb3d82a 2 VclPtr<vcl::Window>::disposeAndClear vclptr.hxx 207 0x7f62fd6aebc5 3 VclBuilder::disposeBuilder builder.cxx 831 0x7f62fd68ca34 4 VclBuilder::~VclBuilder builder.cxx 823 0x7f62fd68c8c7 5 VclBuilder::~VclBuilder builder.cxx 822 0x7f62fd68cba9 6 std::default_delete<VclBuilder>::operator() unique_ptr.h 93 0x7f62fd748b78 7 std::__uniq_ptr_impl<VclBuilder, std::default_delete<VclBuilder>>::reset unique_ptr.h 205 0x7f62fd77c9f8 8 std::unique_ptr<VclBuilder, std::default_delete<VclBuilder>>::reset unique_ptr.h 504 0x7f62fd77bf4d 9 SalInstanceBuilder::~SalInstanceBuilder salvtables.cxx 7578 0x7f62fe038f8a 10 SalInstanceBuilder::~SalInstanceBuilder salvtables.cxx 7573 0x7f62fe038fe9 11 std::default_delete<weld::Builder>::operator() unique_ptr.h 93 0x7f62dcf9a3ab 12 std::__uniq_ptr_impl<weld::Builder, std::default_delete<weld::Builder>>::reset unique_ptr.h 205 0x7f62dd101868 13 std::unique_ptr<weld::Builder, std::default_delete<weld::Builder>>::reset unique_ptr.h 504 0x7f62dd0f7a5d 14 pcr::CommonBehaviourControl<com::sun::star::inspection::XPropertyControl, weld::Entry>::clear_widgetry commoncontrol.hxx 150 0x7f62dd15ad8d 15 pcr::CommonBehaviourControl<com::sun::star::inspection::XPropertyControl, weld::Entry>::disposing commoncontrol.hxx 156 0x7f62dd1552d5 16 cppu::WeakComponentImplHelperBase::dispose implbase.cxx 104 0x7f6304f3db00 17 cppu::PartialWeakComponentImplHelper<com::sun::star::inspection::XPropertyControl>::dispose compbase.hxx 90 0x7f62dd1545b5 18 pcr::(anonymous namespace)::lcl_implDisposeControl_nothrow browserlistbox.cxx 678 0x7f62dcf9f864 19 pcr::OBrowserListBox::Clear browserlistbox.cxx 694 0x7f62dcf9c8d1 20 pcr::OBrowserListBox::~OBrowserListBox browserlistbox.cxx 324 0x7f62dcf9c717 21 o3tl::default_delete<pcr::OBrowserListBox>::operator() deleter.hxx 46 0x7f62dcfae757 22 std::unique_ptr<pcr::OBrowserListBox, o3tl::default_delete<pcr::OBrowserListBox>>::~unique_ptr unique_ptr.h 399 0x7f62dcfae54f 23 pcr::OBrowserPage::~OBrowserPage browserpage.cxx 38 0x7f62dcfae348 24 std::default_delete<pcr::OBrowserPage>::operator() unique_ptr.h 93 0x7f62dd136577 25 std::unique_ptr<pcr::OBrowserPage, std::default_delete<pcr::OBrowserPage>>::~unique_ptr unique_ptr.h 399 0x7f62dd13373f 26 pcr::OPropertyEditor::PropertyPage::~PropertyPage propertyeditor.hxx 43 0x7f62dd1336ed 27 std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>::~pair stl_pair.h 284 0x7f62dd1341a9 28 std::destroy_at<std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>> stl_construct.h 88 0x7f62dd134185 29 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>>>>::destroy<std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>> alloc_traits.h 593 0x7f62dd1340b5 30 std::_Rb_tree<unsigned short, std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>, std::_Select1st<std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>>, std::less<unsigned short>, std::allocator<std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>>>::_M_destroy_node stl_tree.h 621 0x7f62dd1340b5 31 std::_Rb_tree<unsigned short, std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>, std::_Select1st<std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>>, std::less<unsigned short>, std::allocator<std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>>>::_M_drop_node stl_tree.h 629 0x7f62dd134051 32 std::_Rb_tree<unsigned short, std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>, std::_Select1st<std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>>, std::less<unsigned short>, std::allocator<std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>>>::_M_erase stl_tree.h 1934 0x7f62dd133f9e 33 std::_Rb_tree<unsigned short, std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>, std::_Select1st<std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>>, std::less<unsigned short>, std::allocator<std::pair<unsigned short const, pcr::OPropertyEditor::PropertyPage>>>::clear stl_tree.h 1251 0x7f62dd1371e5 34 std::__cxx1998::map<unsigned short, pcr::OPropertyEditor::PropertyPage>::clear stl_map.h 1183 0x7f62dd136e25 35 std::map<unsigned short, pcr::OPropertyEditor::PropertyPage>::clear map.h 573 0x7f62dd132b68 36 pcr::OPropertyEditor::ClearAll propertyeditor.cxx 62 0x7f62dd130570 37 pcr::OPropertyBrowserController::stopInspection propcontroller.cxx 839 0x7f62dd0e7e58 38 pcr::OPropertyBrowserController::impl_rebindToInspectee_nothrow propcontroller.cxx 916 0x7f62dd0e94be 39 pcr::OPropertyBrowserController::inspect propcontroller.cxx 246 0x7f62dd0e9c1a 40 pcr::FormController::setFastPropertyValue_NoBroadcast formcontroller.cxx 190 0x7f62dd06dcca 41 cppu::OPropertySetHelper::setFastPropertyValue propshlp.cxx 524 0x7f6304f873a8 42 cppu::OPropertySetHelper::setPropertyValue propshlp.cxx 264 0x7f6304f859bb 43 basctl::PropBrw::implSetNewObject propbrw.cxx 303 0x7f62e8b185db 44 basctl::PropBrw::ImplUpdate propbrw.cxx 501 0x7f62e8b16549 45 basctl::PropBrw::Update propbrw.cxx 64 0x7f62e8b15f4a 46 basctl::DialogWindowLayout::UpdatePropertyBrowser baside3.cxx 1256 0x7f62e89e805b 47 basctl::DialogWindow::UpdateBrowser baside3.cxx 599 0x7f62e89e8009 48 basctl::Shell::Activate basides1.cxx 1602 0x7f62e8a0669a 49 SfxShell::DoActivate_Impl shell.cxx 326 0x7f630301e7a3 50 SfxDispatcher::DoActivate_Impl dispatch.cxx 600 0x7f6302fc9bc8 51 SfxViewFrame::DoActivate viewfrm.cxx 1197 0x7f63036313f4 52 SfxApplication::SetViewFrame_Impl app.cxx 261 0x7f6302e4e59e 53 SfxViewFrame::SetViewFrame viewfrm.cxx 3731 0x7f63036313ad 54 SfxViewFrame::MakeActive_Impl viewfrm.cxx 2332 0x7f63036365e4 55 SfxFrameWindow_Impl::EventNotify frame2.cxx 108 0x7f63035c383c 56 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 57 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 58 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 59 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 60 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 61 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 62 DockingWindow::EventNotify dockwin.cxx 581 0x7f62fd778931 63 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 64 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 65 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 66 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 67 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 68 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 69 Control::EventNotify ctrl.cxx 253 0x7f62fd939845 70 TabControl::EventNotify tabctrl.cxx 1618 0x7f62fda32eac 71 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 72 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 73 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 74 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 75 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 76 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 77 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 78 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 79 VclScrolledWindow::EventNotify layout.cxx 2181 0x7f62fd79e326 80 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 81 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 82 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 83 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 84 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 85 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 86 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 87 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 88 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 89 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 90 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 91 vcl::Window::EventNotify event.cxx 213 0x7f62fd77eec7 92 Control::EventNotify ctrl.cxx 253 0x7f62fd939845 93 vcl::Window::CompatNotify window.cxx 3943 0x7f62fd8cae40 94 vcl::Window::GetFocus window.cxx 1855 0x7f62fd8cb109 95 Edit::GetFocus edit.cxx 1838 0x7f62fd94ab69 96 vcl::Window::CompatGetFocus window.cxx 3903 0x7f62fd8d602f 97 vcl::Window::ImplGrabFocus mouse.cxx 384 0x7f62fd8052c7 98 vcl::Window::GrabFocus window.cxx 2990 0x7f62fd8c4a67 99 vcl::Window::ImplAsyncFocusHdl winproc.cxx 2059 0x7f62fd8eb787 100 vcl::Window::LinkStubImplAsyncFocusHdl winproc.cxx 2033 0x7f62fd8eb5ad 101 Link<void *, void>::Call link.hxx 101 0x7f62fd8f39e1 102 ImplHandleUserEvent winproc.cxx 2285 0x7f62fd8efbe1 103 ImplWindowFrameProc winproc.cxx 2849 0x7f62fd8ecb1a 104 SalFrame::CallCallback salframe.hxx 311 0x7f62fe4ad65c 105 SalGenericDisplay::ProcessEvent gendisp.cxx 66 0x7f62fe4d596f 106 SalUserEventList::DispatchUserEvents(bool)::$_0::operator()() const salusereventlist.cxx 119 0x7f62fdff0d7d 107 SalUserEventList::DispatchUserEvents salusereventlist.cxx 120 0x7f62fdff0c56 108 SalGenericDisplay::DispatchInternalEvent gendisp.cxx 51 0x7f62fe4d58c5 109 SalX11Display::Yield saldisp.cxx 1860 0x7f62f3910ad4 110 DisplayYield saldisp.cxx 321 0x7f62f3905b2f 111 (anonymous namespace)::YieldEntry::HandleNextEvent saldata.cxx 559 0x7f62f390169c 112 SalXLib::Yield saldata.cxx 655 0x7f62f3900f09 113 X11SalInstance::DoYield salinst.cxx 193 0x7f62f391df3d 114 ImplYield svapp.cxx 385 0x7f62fe0bdd46 115 Application::Yield svapp.cxx 488 0x7f62fe0bd65f 116 Application::Execute svapp.cxx 360 0x7f62fe0bd440 117 desktop::Desktop::Main app.cxx 1679 0x7f6306f27f39 118 ImplSVMain svmain.cxx 230 0x7f62fe0df1c6 119 SVMain svmain.cxx 248 0x7f62fe0e0db9 120 soffice_main sofficemain.cxx 121 0x7f6306fa181a 121 sal_main main.c 51 0x55f5d611da6d 122 main main.c 49 0x55f5d611da47 As a consequence, the subsequent call to GetSettings().GetStyleSettings().GetSelectionOptions(); in Edit::GetFocus (s. frame 95 above) triggers a crash because the `mpWindowImpl` of the disposed Edit is null. To prevent this, check whether the Edit is disposed after the call to vcl::Window::GetFocus and return early if that is the case. For the property browser, that restores the behavior from before commit b2b43e83ccc41c37bad32a4dcf07ca86bf2f8a15 Author: Michael Weghorn <m.weghorn@posteo.de> Date: Thu Sep 7 15:42:57 2023 +0200 a11y: Call base class impl at beginning of Edit::GetFocus , where the app doesn't crash, but the previously focused "Name" edit no longer has focus after switching back and forth (as it has actually been replaced by a new edit). (The cursor blinks once in the edit, then disappears.) Without being familiar with the underlying property browser logic, it's unclear to me whether the underlying problem there could be solved in a better way, e.g. whether skipping the logic for the `OwnPropertyId::INTROSPECTEDOBJECT` case in FormController::setFastPropertyValue_NoBroadcast (s. frame 40 above) could be skipped if the previously inspected object (`m_xCurrentInspectee`) is already the same as the "new" object to inspect (`_rValue`) or whether that logic is required to ensure displayed values get updated in specific scenarios where they might have changed in the meantime. Change-Id: I0e441fe9f5dfb487bf832206bcdec08d87e7ae2a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180168 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins
10 dayscool#10630 doc electronic sign: fix insertion of the signature lineMiklos Vajna
Have electronic signing configured in the LOK client, try to insert a signature line, you'll get a certificate picker, while we don't have a cert during esign. What's in fact needed for creating the signature line is just a name (previously extracted from the certificate), we can survive the lack of actual certificate. Fix the problem by adding a new External parameter to .uno:InsertSignatureLine to hint that the certificate chooser should not be opened, instead the editor name (used for comments already) should be used. Add a new CertificateOrName in svl/ and use that in all places where previously we wanted a certificate but in fact it's enough to have a certificate or a name to create the signature line. The name on the signature line is just visual feedback, the actual name on the crypto signature is still not based on untrusted used input. Change-Id: Ib7008112a8e28a9e7d9649745e6021dd6b6b9c39 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180193 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
10 daysloplugin:externalStephan Bergmann
Change-Id: I2ffa24ce53cec9e395023e78bfea6786235e48dd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180182 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
10 dayssw: tweak assert in SwFlowFrame::IsKeep()Michael Stahl
There is a slight inconsistency that causes this to trigger in kde84547-1.doc For text frames, IsHiddenNowImpl() needs to be called because that is what SwContentFrame::MakeAll() is calling. (regression from commit cd8468bcba952ab9b0d6ca97152a63d7469a9209) Change-Id: Icb8cb238b8460c07b99a6479cb78c523494f7248 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180172 Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Tested-by: Jenkins
10 daysRemove RecentFilesStringLengthStephan Bergmann
...unused since 6efdd1444810e132ba37379dd39afa6a3220f541 "tdf#41775 copy the Start Center menubar to the default menubar on macOS" Change-Id: Ibfc1d822c6e114bba42fdf8b235a1de49af78141 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180183 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
10 daysboost: upgrade to 1_87_0Xisco Fauli
* external/boost/0001-Add-a-comma-before-ellipsis-in-constexpr_swap.patch.2 has been fixed upstream * Add external/boost/armv7.patch.0 based on following patches: - https://github.com/boostorg/interprocess/commit/f58e968f13e693ffaa78fb283972e8598dc48c9f - https://github.com/boostorg/unordered/commit/07f6463c1c302c5b1d28aa253e0b768e71c90235 - https://github.com/boostorg/json/commit/57d42f07158b8ea4a713378c90d22b28ca4787f8 - https://github.com/boostorg/outcome/commit/83e5127dd20b15e3f59059e5862e9926283fee80 to fix the problem described in 4f60246a1de68f7b47713ff926902791abe7a9ca "Revert "boost: upgrade to 1_87_0" for now to unbreak android arm32 build" <https://dev-www.libreoffice.org/src/boost_1_87_0.tar.xz> has been generated (on Debian 12) with > $ wget https://boostorg.jfrog.io/artifactory/main/release/1.87.0/source/boost_1_87_0.tar.bz2 > $ printf 'af57be25cb4c4f4b413ed692fe378affb4352ea50fbe294a11ef548f4d527d89 boost_1_87_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_87_0.html> > boost_1_87_0.tar.bz2: OK > $ external/boost/repack_tarball.sh boost_1_87_0.tar.bz2 > Unpacking boost_1_87_0.tar.bz2 ... > Removing unnecessary files ... > Creating boost_1_87_0.tar.xz ... > Cleaning up ... > efd6d4ce7e8571ba87f77a30bee2d3dd8dccd306721351464fc6998dd00b0c8c boost_1_87_0.tar.xz > Done. Change-Id: I4bb14ba60f0b19c4908a0ffbdc66cc23c1b2581e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180169 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins
10 daysSimplify and improve getMSPaperSizeIndexMike Kaganski
Previously, it required for some reason, that in order to be found, the new paper size must be better than the previous-best, in *both* dimensions. Thus, if the previous-best e.g. matched one dimention perfectly, but not the other, no better match could be found. Change-Id: Ia8cd4fd98f324c8450577859dbdd21831b66e2e3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180164 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
10 daystdf#164617 Fix Yellow Idea ImpressLaurent Balland
Change styles of objects of first slide to automatic styles. It preserves styles when affecting Master Page. Change-Id: Ifa60225aff25ebdae9ed65b5f65a2d7f906cd442 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180146 Tested-by: Jenkins Reviewed-by: Laurent Balland <laurent.balland@mailo.fr>
10 daystdf#164123 Changing language on a selection of cells resets formattingAron Budea
Change-Id: I580ef23d19a62e2074e098e84e5b50831a6705cc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180016 Reviewed-by: Henry Castro <hcastro@collabora.com> Tested-by: Jenkins
10 daystdf#164434: svgio: Add unittestXisco Fauli
Change-Id: Id66f344c785f1771debcc8bd2e09c8a04da4c989 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180165 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
10 daysUse o3tl::convertMike Kaganski
Change-Id: Ie877cbee77752aaa30346c78b4f5b836f0ec44d5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180161 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
10 dayssvx: prefix members of SvxOle2ShapeMiklos Vajna
See tdf#94879 for motivation. No problem with _ suffixes, but parent SvxShape uses m_ prefixes, so switch to that here as well for consistency. Change-Id: I7a1f8630c5281c629a5b02ffe51fd9df208602dc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180153 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins