summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-05-29SortMarkedObjects() -> GetMarkedObjectList().ForceSort()Xisco Fauli13-40/+39
In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: Ia74949a47308f95607881a7d44c8c26404902745 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168217 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-05-29GetDescriptionOfMarkedObjects() -> GetMarkedObjectList().GetMarkDescription()Xisco Fauli18-30/+29
In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: I2a2c87c2552cfc9002a9afc7d8eefb16a601b784 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168216 Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-05-29svx: GetDescriptionOfMarkedPoints() -> ...Xisco Fauli3-9/+8
... GetMarkedObjectList().GetPointMarkDescription() In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: I5886fd20ffd9df115e12947f4dc7293c98b50bbf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168215 Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-05-29svx: GetDescriptionOfMarkedGluePoints() -> ...Xisco Fauli3-9/+8
... GetMarkedObjectList().GetGluePointMarkDescription() In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: I7eb9bd7cfdaa53b9afcae5bc05cc2c014e0ce1e2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168214 Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-05-29GetMarkedObjectCount() -> GetMarkedObjectList().GetMarkCount()Xisco Fauli35-166/+166
In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: Id94f66545950f0fdf124ba7b985a5215a01d63fe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168213 Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-05-29svx: TryToFindMarkedObject -> GetMarkedObjectList().FindObjectXisco Fauli5-15/+14
In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: If05f5630e9413c162821370532f36598fc2e0341 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168212 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-05-29svx: GetSdrMarkByIndex -> GetMarkedObjectList().GetMarkXisco Fauli14-95/+94
In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: Iec0ad9ed33329719116e39232f86d92dbd6e0da8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168211 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-05-29create comment reply synchronouslyPranam Lashkari3-1/+27
so we can bundle the creation of the comment and the insertion of its "reply" characteristics together as a single Undo group. wrap the new combination with a single undo operation showing "Insert Comment" using Rewriter Change-Id: I5927fa5501da0c49cc1182c60e23be290b8c37c5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168190 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-05-29tdf#161234 New design for the cell outlineRafael Lima1-4/+20
The change introduced by commit I9df98 made the cell outline a bit wider than the actual cell. However, that change did not play well with higher zoom levels because: 1) The AutoFill handle disconnected from the cell outline 2) The distance between the outline and the cell was too far in at higher zoom levels This patch proposes an alternative design that deals with both issues. Change-Id: Ic3cd7d240f6cfc1af4a39409537e264912ef61b3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167945 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org> Reviewed-by: Rafael Lima <rafael.palma.lima@gmail.com>
2024-05-29tdf#161202: lowers shouldn't move forward because of lack of spaceMike Kaganski8-4/+54
... in hidden section. So make sure to set heights of lowers to zero, too. testOldComplexMergeTableInTable turned out to be a nice test for this. Change-Id: I334aaaf2becf0ac1ff61faed2e5f697f344c78d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168151 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-05-29Clean up gcc3_wasm bridge_noopt_objectsStephan Bergmann2-24/+1
There appears to be no good reason that cpp2uno.cxx and uno2cpp.cxx are noopt (presumably that was just cargo-culted from another platform?), and except.cxx appears to be completely unused anyway. Change-Id: Ic5f4142308a56b798dad61e9ec589046cad2ae13 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168182 Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de> Tested-by: Jenkins
2024-05-29simplify and reduce allocation in SwRedlineTableNoel Grandin1-23/+6
Change-Id: Ib8b031f0d4f12c52c64e699b7aef516b59c16945 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168157 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-29loplugin:ostr in sw/../writerfilterNoel Grandin38-1452/+1472
Change-Id: Ib3fe74f1522f3c0a2b203e49b98c10cc825160a4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167737 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-29avoid dynamic_cast in SwCursorShellNoel Grandin3-1/+4
Change-Id: Ic66c427f5096aea53d6634874d98620dd91744b2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168165 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-05-29avoid dynamic_cast in SwTOXBaseNoel Grandin3-1/+5
Change-Id: Iac8f502bf200f599d44f52504a3b70a1a21b370b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168164 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-05-29Properly fix use of uninitialized valueStephan Bergmann1-2/+2
Following up on 66322c5f4a5465c74fa3ceefaa2f76e86a277c16 "Silence warning C4701: potentially uninitialized local variable" (which had apparently wrongly assumed that that MSVC warning was a false positive) and b1a6bd87b803f760f5bf0e2b7bc519b3b2fbfa4e "ofz: Use-of-uninitialized-value in ImplConvertUtf8ToUnicode", which had demonstrated that this was indeed a true positive, as per the comment at <https://gerrit.libreoffice.org/c/core/+/168079/2#message-8b941c986658cb41641c0a317937bd0d3574e0b9> "ofz: Use-of-uninitialized-value in ImplConvertUtf8ToUnicode", and which could also be observed with a local patch of > diff --git a/sal/textenc/tcvtutf8.cxx b/sal/textenc/tcvtutf8.cxx > index 05290cc204fd..319acd41c627 100644 > --- a/sal/textenc/tcvtutf8.cxx > +++ b/sal/textenc/tcvtutf8.cxx > @@ -56,7 +56,7 @@ void ImplResetUtf8ToUnicodeContext(void * pContext) > { > if (pContext != nullptr) > { > - static_cast< ImplUtf8ToUnicodeContext * >(pContext)->nBytes = int(); > + static_cast< ImplUtf8ToUnicodeContext * >(pContext)->nBytes = 1234; > static_cast< ImplUtf8ToUnicodeContext * >(pContext)->nShift = -1; > static_cast< ImplUtf8ToUnicodeContext * >(pContext)->bCheckBom = true; > } > @@ -74,7 +74,7 @@ sal_Size ImplConvertUtf8ToUnicode( > { > bool bJavaUtf8 = pData != nullptr; > sal_uInt32 nUtf32 = 0; > - int nBytes = int(); > + int nBytes = 1234; > int nShift = -1; > bool bCheckBom = true; > sal_uInt32 nInfo = 0; > @@ -208,6 +208,7 @@ sal_Size ImplConvertUtf8ToUnicode( > continue; > > bad_input: > + assert(nBytes != 1234); > switch (sal::detail::textenc::handleBadInputTextToUnicodeConversion( > false, nBytes != 1, 0, nFlags, &pDestBufPtr, pDestBufEnd, > &nInfo)) and seeing CppunitTest_sal_rtl CPPUNIT_TEST_NAME=Test::testInvalidUtf8 fail by hitting that assert. So initialize nBytes to 1 to make that bad_input scenario call handleBadInputTextToUnicodeConversion with a bMultiByte=false argument. Change-Id: Ib8a326d497071f4249169e9d4f5871f06cfccbdf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168181 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-05-29avoid dynamic_cast in SwTextNodeNoel Grandin3-1/+8
Change-Id: Id7ee5e922b7e99d1f3bade3b94285283eb07ae68 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168163 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-05-29Revert "tdf#161261 sw: fix lost size of image resized in fixed-height cell"Stephan Bergmann2-96/+5
This reverts commit 4da6f52f5fd164082fd42fc58fc7d31da567c924 plus follow-up 24f65bf5940adb0aa3590443752110119e2bea5e "Fix typo". It caused CppunitTest_sw_uiwriter6 to fail with > /sw/source/core/layout/flylay.cxx:1426:51: runtime error: downcast of address 0x606000c4b620 which does not point to an object of type 'const SwDrawContact' > 0x606000c4b620: note: object is of type 'SwFlyDrawContact' > 00 00 00 00 50 3d 2f b8 99 7f 00 00 c0 3d 2f b8 99 7f 00 00 00 00 00 00 00 00 00 00 d0 64 50 00 > ^~~~~~~~~~~~~~~~~~~~~~~ > vptr for 'SwFlyDrawContact' > #0 0x7f99ae257936 in CalcClipRect(SdrObject const*, SwRect&, bool) /sw/source/core/layout/flylay.cxx:1426:51 > #1 0x7f99ad5b2607 in SwDrawView::TakeDragLimit(SdrDragMode, tools::Rectangle&) const /sw/source/core/draw/dview.cxx:694:13 > #2 0x7f99c317c1a0 in SdrDragView::BegDragObj(Point const&, OutputDevice*, SdrHdl*, short, SdrDragMethod*) /svx/source/svdraw/svddrgv.cxx:199:21 > #3 0x7f99c18eef25 in E3dView::BegDragObj(Point const&, OutputDevice*, SdrHdl*, short, SdrDragMethod*) /svx/source/engine3d/view3d.cxx:1243:21 > #4 0x7f99adcfa821 in SwFEShell::BeginDrag(Point const*, bool) /sw/source/core/frmedt/feshview.cxx:741:20 > #5 0x7f99b3ea5ffd in SwWrtShell::BeginFrameDrag(Point const*, bool) /sw/source/uibase/wrtsh/select.cxx:761:20 > #6 0x7f99b27a8238 in SwWrtShell::Drag(Point const*, bool) /sw/source/uibase/inc/wrtsh.hxx:124:56 > #7 0x7f99b2742135 in SwEditWin::MouseMove(MouseEvent const&) /sw/source/uibase/docvw/edtwin.cxx:4489:25 > #8 0x7f99dcdc6f64 in testTdf161261::TestBody() /sw/qa/extras/uiwriter/uiwriter6.cxx:1613:14 (<https://ci.libreoffice.org/job/lo_ubsan/3185/>) Change-Id: Idf0c0c75d39a28671c852fc526549439892d0902 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168177 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-05-29Implement exception catchingStephan Bergmann5-7/+208
(Without 22ce8ed05be37d676739a578b05cc5217109fd87 "Emscripten: Unconditional --enable-wasm-exceptions", this would have failed to link due to missing __cxa_current_exception_type and __cxa_get_globals.) Change-Id: If89a3c62e4d2ac24d68f867b2fd7a4cd813d5a39 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168176 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-05-29related tdf#160971 gtk3 a11y: Keep new combobox valueMichael Weghorn1-2/+2
Selecting a new value in an editable combobox using the gtk3 VCL plugin using the popup didn't work when that popup was opened using the keyboard, sample scenario: 1) Start Writer 2) Press F6 until the Formatting toolbar has focus 3) Press Tab until the "Font Name" combobox has focus 4) Press Alt+Down to open the combobox popup 5) Press Down key a few times to select another font, e.g. "Carlito" 6) Press Enter to confirm Rather than the newly selected font, the previously set one would still be set in the combobox. Selecting a new font using the popup would work however when clicking the combobox's button using the mouse instead of steps 1-4 above. The problem was that restoring focus was resulting in the newly selected value not getting saved. Backtrace for how the value already got properly saved for the case where the button was previously clicked using the mouse: 1 weld::ComboBox::save_value weld.hxx 853 0x7f19a7af3f81 2 FontNameBox::save_value ctrlbox.hxx 369 0x7f19a7b01f3d 3 (anonymous namespace)::SvxFontNameBox_Base::statusChanged_Impl tbcontrl.cxx 3432 0x7f19a7ad95e0 4 (anonymous namespace)::SvxFontNameToolBoxControl::statusChanged tbcontrl.cxx 3439 0x7f19a7ad8312 5 SfxStatusDispatcher::sendStatusChanged(rtl::OUString const&, com::sun::star::frame::FeatureStateEvent const&)::$_0::operator()(com::sun::star::uno::Reference<com::sun::star::frame::XStatusListener> const&) const unoctitm.cxx 132 0x7f19a98ae241 6 comphelper::OInterfaceContainerHelper4<com::sun::star::frame::XStatusListener>::forEach<SfxStatusDispatcher::sendStatusChanged(rtl::OUString const&, com::sun::star::frame::FeatureStateEvent const&)::$_0>(std::unique_lock<std::mutex>&, SfxStatusDispatcher::sendStatusChanged(rtl::OUString const&, com::sun::star::frame::FeatureStateEvent const&)::$_0 const&) const interfacecontainer4.hxx 304 0x7f19a98a4411 7 SfxStatusDispatcher::sendStatusChanged unoctitm.cxx 129 0x7f19a98a42aa 8 SfxDispatchController_Impl::sendStatusChanged unoctitm.cxx 802 0x7f19a98a907c 9 SfxDispatchController_Impl::StateChanged unoctitm.cxx 885 0x7f19a98a987a 10 SfxStateCache::SetState_Impl statcach.cxx 424 0x7f19a98308cc 11 SfxStateCache::SetState statcach.cxx 328 0x7f19a98306f2 12 SfxBindings::UpdateControllers_Impl bindings.cxx 1211 0x7f19a97aeffd 13 SfxBindings::Update_Impl bindings.cxx 274 0x7f19a97ae5cf 14 SfxBindings::Update bindings.cxx 353 0x7f19a97af682 15 SfxDispatcher::Call_Impl dispatch.cxx 280 0x7f19a97c731c 16 SfxDispatcher::Execute_ dispatch.cxx 753 0x7f19a97cbc4b 17 SfxDispatcher::Execute dispatch.cxx 812 0x7f19a97cc02f 18 SfxDispatchController_Impl::dispatch unoctitm.cxx 671 0x7f19a98a6673 19 SfxOfficeDispatch::dispatch unoctitm.cxx 250 0x7f19a98a511a 20 SfxToolBoxControl::Dispatch tbxitem.cxx 253 0x7f19a9df168f 21 (anonymous namespace)::SvxFontNameBox_Base::Select tbcontrl.cxx 2007 0x7f19a7adb44a 22 (anonymous namespace)::SvxFontNameBox_Base::SelectHdl tbcontrl.cxx 1962 0x7f19a7adafb4 23 (anonymous namespace)::SvxFontNameBox_Base::LinkStubSelectHdl tbcontrl.cxx 1960 0x7f19a7adab9d 24 Link<weld::ComboBox&, void>::Call link.hxx 111 0x7f199a19ddd8 25 weld::ComboBox::signal_changed weld.hxx 731 0x7f199a19dd8c 26 (anonymous namespace)::GtkInstanceComboBox::fire_signal_changed gtkinst.cxx 21229 0x7f199a0e1880 27 (anonymous namespace)::GtkInstanceComboBox::handle_row_activated gtkinst.cxx 21891 0x7f199a0e17f9 28 (anonymous namespace)::GtkInstanceComboBox::signalRowActivated gtkinst.cxx 21876 0x7f199a0dd299 29 ?? 0x7f1999695931 30 ?? 0x7f19a87b4939 31 ?? 0x7f19a87ca33f 32 g_signal_emit_valist 0x7f19a87cff06 33 g_signal_emit 0x7f19a87cffc3 34 ?? 0x7f199993384b 35 ?? 0x7f1999697085 36 ?? 0x7f19a87b4939 37 ?? 0x7f19a87ca33f 38 g_signal_emit_valist 0x7f19a87cff06 39 g_signal_emit 0x7f19a87cffc3 40 ?? 0x7f19997b317e 41 g_cclosure_marshal_VOID__BOXEDv 0x7f19a87b7b76 42 ?? 0x7f19a87b4939 43 ?? 0x7f19a87ca33f 44 g_signal_emit_valist 0x7f19a87cff06 45 g_signal_emit 0x7f19a87cffc3 46 ?? 0x7f19997b0213 47 ?? 0x7f19997b1803 48 ?? 0x7f19997b4a42 49 gtk_event_controller_handle_event 0x7f1999779361 50 ?? 0x7f19999488bd 51 ?? 0x7f1999690db8 52 ?? 0x7f19a87b4939 53 ?? 0x7f19a87c9693 54 g_signal_emit_valist 0x7f19a87cff06 55 g_signal_emit 0x7f19a87cffc3 56 ?? 0x7f199994a314 57 ?? 0x7f19997fc84e 58 gtk_main_do_event 0x7f19997fe4be 59 ?? 0x7f199a7b1a79 60 ?? 0x7f199a7e5586 61 ?? 0x7f199ed1ce3f 62 ?? 0x7f199ed1eec7 63 g_main_context_iteration 0x7f199ed1f4e0 64 GtkSalData::Yield gtkdata.cxx 405 0x7f199a08827f 65 GtkInstance::DoYield gtkinst.cxx 427 0x7f199a08d6e3 66 ImplYield svapp.cxx 384 0x7f19a47bf65c 67 Application::Yield svapp.cxx 472 0x7f19a47bef6b 68 Application::Execute svapp.cxx 359 0x7f19a47bed02 69 desktop::Desktop::Main app.cxx 1652 0x7f19ad928434 70 ImplSVMain svmain.cxx 229 0x7f19a47e226e 71 SVMain svmain.cxx 261 0x7f19a47e4299 72 soffice_main sofficemain.cxx 93 0x7f19ad9aca7c 73 sal_main main.c 51 0x55cb2e25aa5d 74 main main.c 49 0x55cb2e25aa37 However, for the keyboard-only case, `GtkInstanceComboBox::m_bChangedByMenu` got reset to false in `set_active_including_mru` with this backtrace: 1 (anonymous namespace)::GtkInstanceComboBox::set_active_including_mru gtkinst.cxx 21976 0x7f199a0e812b 2 (anonymous namespace)::GtkInstanceComboBox::set_active gtkinst.cxx 22406 0x7f199a0de9dc 3 FontNameBox::set_active_or_entry_text ctrlbox.cxx 897 0x7f19a64d904c 4 (anonymous namespace)::SvxFontNameBox_Base::set_active_or_entry_text tbcontrl.cxx 1823 0x7f19a7ad983d 5 (anonymous namespace)::SvxFontNameBox_Base::FocusOutHdl tbcontrl.cxx 1872 0x7f19a7adb9e2 6 (anonymous namespace)::SvxFontNameBox_Base::LinkStubFocusOutHdl tbcontrl.cxx 1868 0x7f19a7adac5d 7 Link<weld::Widget&, void>::Call link.hxx 111 0x7f199a13b618 8 (anonymous namespace)::GtkInstanceWidget::signal_focus_out gtkinst.cxx 2630 0x7f199a0a1ef6 9 (anonymous namespace)::GtkInstanceComboBox::signal_entry_focus_out gtkinst.cxx 21427 0x7f199a0e83f6 10 (anonymous namespace)::GtkInstanceComboBox::signalEntryFocusOut gtkinst.cxx 21412 0x7f199a0dd525 11 ?? 0x7f1999690caa 12 g_closure_invoke 0x7f19a87b4730 13 ?? 0x7f19a87c887c 14 ?? 0x7f19a87c9ad1 15 g_signal_emit_valist 0x7f19a87cff06 16 g_signal_emit 0x7f19a87cffc3 17 ?? 0x7f199994a314 18 gtk_widget_send_focus_change 0x7f199995c0ea 19 ?? 0x7f199996153b 20 ?? 0x7f1999961822 21 g_closure_invoke 0x7f19a87b4730 22 ?? 0x7f19a87c8f08 23 ?? 0x7f19a87ca281 24 g_signal_emit_valist 0x7f19a87cff06 25 g_signal_emit 0x7f19a87cffc3 26 ?? 0x7f19a87b4939 27 ?? 0x7f19a87ca33f 28 g_signal_emit_valist 0x7f19a87cff06 29 g_signal_emit 0x7f19a87cffc3 30 gtk_widget_grab_focus 0x7f199994e7fa 31 (anonymous namespace)::GtkInstanceComboBox::menu_toggled gtkinst.cxx 21320 0x7f199a0ea4b8 32 (anonymous namespace)::GtkInstanceComboBox::signal_popup_toggled gtkinst.cxx 21356 0x7f199a0de2e9 33 (anonymous namespace)::GtkInstanceComboBox::signalPopupToggled gtkinst.cxx 21236 0x7f199a0dd375 34 g_closure_invoke 0x7f19a87b4730 35 ?? 0x7f19a87c887c 36 ?? 0x7f19a87ca281 37 g_signal_emit_valist 0x7f19a87cff06 38 g_signal_emit 0x7f19a87cffc3 39 ?? 0x7f19998f7ac5 40 ?? 0x7f19a87b4939 41 ?? 0x7f19a87ca33f 42 g_signal_emit_valist 0x7f19a87cff06 43 g_signal_emit 0x7f19a87cffc3 44 gtk_toggle_button_set_active 0x7f19998f7868 45 (anonymous namespace)::GtkInstanceComboBox::handle_row_activated gtkinst.cxx 21890 0x7f199a0e17f0 46 (anonymous namespace)::GtkInstanceComboBox::signalRowActivated gtkinst.cxx 21876 0x7f199a0dd299 47 ?? 0x7f1999695931 48 ?? 0x7f19a87b4939 49 ?? 0x7f19a87ca33f 50 g_signal_emit_valist 0x7f19a87cff06 51 g_signal_emit 0x7f19a87cffc3 52 ?? 0x7f1999935562 53 ?? 0x7f1999693eca 54 g_closure_invoke 0x7f19a87b4730 55 ?? 0x7f19a87c8f08 56 g_signal_emitv 0x7f19a87cfcf2 57 ?? 0x7f19996c773d 58 ?? 0x7f19996c7bf8 59 ?? 0x7f19996c7d80 60 gtk_bindings_activate_event 0x7f19996c922b 61 ?? 0x7f1999936b18 62 ?? 0x7f1999690db8 63 ?? 0x7f19a87b4894 64 ?? 0x7f19a87c9693 65 g_signal_emit_valist 0x7f19a87cff06 66 g_signal_emit 0x7f19a87cffc3 67 ?? 0x7f199994a314 68 gtk_window_propagate_key_event 0x7f199996cdeb 69 ?? 0x7f199997143b 70 ?? 0x7f1999690caa 71 g_closure_invoke 0x7f19a87b4730 72 ?? 0x7f19a87c8f08 73 ?? 0x7f19a87c9ad1 74 g_signal_emit_valist 0x7f19a87cff06 75 g_signal_emit 0x7f19a87cffc3 76 ?? 0x7f199994a314 77 ?? 0x7f19997fc8ff 78 gtk_main_do_event 0x7f19997fe4be 79 ?? 0x7f199a7b1a79 80 ?? 0x7f199a7e5586 81 ?? 0x7f199ed1ce3f 82 ?? 0x7f199ed1eec7 83 g_main_context_iteration 0x7f199ed1f4e0 84 GtkSalData::Yield gtkdata.cxx 405 0x7f199a08827f 85 GtkInstance::DoYield gtkinst.cxx 427 0x7f199a08d6e3 86 ImplYield svapp.cxx 384 0x7f19a47bf65c 87 Application::Yield svapp.cxx 472 0x7f19a47bef6b 88 Application::Execute svapp.cxx 359 0x7f19a47bed02 89 desktop::Desktop::Main app.cxx 1652 0x7f19ad928434 90 ImplSVMain svmain.cxx 229 0x7f19a47e226e 91 SVMain svmain.cxx 261 0x7f19a47e4299 92 soffice_main sofficemain.cxx 93 0x7f19ad9aca7c 93 sal_main main.c 51 0x55cb2e25aa5d 94 main main.c 49 0x55cb2e25aa37 As a consequence, `GtkInstanceComboBox::changed_by_direct_pick` would then return false when called in `SvxFontNameBox_Base::SelectHdl` (s. frame 21 in the first backtrace above), so the new value wouldn't get saved, but the previous one would get used instead since commit 131c1c7da8c567636ca55751e49d24cb6d6c9b9e Date: Sun Nov 21 19:53:47 2021 +0000 Related: tdf#145786 cooperate between our own grabs , which introduced grabbing the focus for the combobox in `GtkInstanceComboBox::menu_toggled` (s. frame 31 in above backtrace). Fix this by calling `fire_signal_changed` before `gtk_toggle_button_set_active` in `GtkInstanceComboBox::handle_row_activated` (s. frame 26 in the first and frame 44 in the second backtrace above), so `m_bChangedByMenu` only gets reset to false at the end of `fire_signal_changed`, not before it gets called. With that in place, the new value now gets set and the combobox shows the newly selected value as expected. Change-Id: Ib1919a99b46c33981593d9c5ec9a0d21443890b3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168146 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-05-29a11y: Don't report dummy a11y name for icon choice controlMichael Weghorn1-4/+1
If no a11y name is set for the `SvtIconChoiceCtrl`, don't report any, rather than using "IconChoiceControl" as accessible name. Having the Orca screen reader (when used with the qt6 VCL plugin) announce "IconChoiceControl" and then the name of the actually selected item e.g. in Writer's "Insert" -> "Hyperlink" or the "Format" -> "Page Setup" dialog is rather confusing when an entry in the control gets focus. Change-Id: Ie7e25d5a65c57be118abf2dcaff0648430f26154 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168155 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-05-29a11y: Report focused state for icon choice control entriesMichael Weghorn1-0/+5
Handle the FOCUSABLE and FOCUSED a11y states in `AccessibleIconChoiceCtrlEntry::getAccessibleStateSet`. Without this, the currently focused tab item would e.g. not be reported by Orca when using the qt6 VCL plugin in Writer's "Insert" -> "Hyperlink" dialog or in "Format" -> "Page Style" that was recently converted to use vertical tabs. Monitoring AT-SPI events showed that an `object:state-changed:focused` event was sent on the AT-SPI layer (see also `AccessibleIconChoiceCtrl::ProcessWindowEvent` that sends an `AccessibleEventId::ACTIVE_DESCENDANT_CHANGED` event): However, the focused state is not set, so Orca would not report the item as the new focus item: 95.1 object:state-changed:focused(0, 0, [list item | Mail]) source: [list item | Mail] application: [application | soffice.bin] With this change in place, the state is properly set now and Orca announces the newly focused item: 31.0 object:state-changed:focused(1, 0, [list item | Mail]) source: [list item | Mail] application: [application | soffice.bin] Change-Id: I41667c842e607f494b9e0e236b8c6f2f9ca95dfb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168154 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins
2024-05-29tdf#81272 Improved CJK fallback rendering performanceJonathan Clark5-120/+93
This change includes the following performance fixes: - Removes an expensive vector sort from fallback run computation. - Reduces unnecessary BreakIterator use while collecting grapheme clusters requiring fallback. Change-Id: I760825596e0609059ef0c5ca97e210ab6647e466 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168175 Tested-by: Jenkins Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
2024-05-29Resolves tdf#160937 - Improve dialog size for document propertiesHeiko Tietze5-405/+239
linefragment.ui and documentinfopage.ui modified to keep the usual dialog dimension Change-Id: I1777e4094e584d676a48855717827aaed413e251 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168139 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2024-05-29Emscripten: Unconditional --enable-wasm-exceptionsStephan Bergmann5-81/+11
(...which will be beneficial, in turn, to implement exception handling in the work-in-progress bridges/source/cpp_uno/gcc3_wasm UNO bridge). As per <https://developer.mozilla.org/en-US/docs/WebAssembly#browser_compatibility>, Wasm exceptions appear to be supported by most if not all relevant engines by now. * Lets see whether the "Note that to really use WASM exceptions everywhere" for external libraries in solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk does have any practical consequences (but ignoring it for now). * This change depends on the preceding 77129fbb74bcefde4551d494f029169e7c6026e3 "Emscripten: Add hack to prepare for --enable-wasm-exceptions" to work around the issue that was mentioned in static/README.wasm.md. * In unotest/source/embindtest/embindtest.js, getExceptionMessage started to work now, no longer exhibiting the RuntimeError that had been documented there for non-Wasm-based exceptions. Change-Id: Ifa2165b62208cc927844684911ddf21a4a2b624f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168169 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-05-28Set minimal size to variable field pageOliver Specht1-0/+2
To see the increased height of the name and value fields the edit field dialog needs a appropriate minimum size Change-Id: Ic6c4a01bd969247f770f023ec5c368fed5322550 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168147 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-05-28Emscripten: Document failing getExceptionMessageStephan Bergmann1-0/+8
(and add a console.assert(false) to verify that an exception actually gets thrown) Change-Id: I885301a5730b54c817c8a9ed97e60f49f8c8baf9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168149 Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de> Tested-by: Jenkins
2024-05-28Update git submodulesAndrea Gelmini1-0/+0
* Update helpcontent2 from branch 'master' to a61cdc9fb845956ccec780550684b3bcf01e4194 - Fix typo Change-Id: I9f394ff23bdf67a1385f25f4417f44e0717d26c1 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/168160 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2024-05-28ofz: Use-of-uninitialized-valueCaolán McNamara1-0/+5
Change-Id: Ib5220d2f44344455e6333f24b0dc2a20e5f9b0ac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168126 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-05-28tdf#161048 Revert "move opencl check at startup inside its own thread"Noel Grandin2-5/+1
This reverts commit 7d1242b01d3ad9be1cfcf2bd3fbee9ce63dddddf. Intel's OpenCL driver gets stuck during shutdown and blocks the process from exiting Change-Id: I0e1360fd183dacd7331e1dd4122154d705f567fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168067 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-05-28loplugin:ostr in sc/../unoobjNoel Grandin42-321/+321
Change-Id: I182a5f28c872eb4dd96b930b86b9aef42459f191 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168145 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-28avoid dynamic_cast in ModifyChangedHintNoel Grandin7-6/+13
Change-Id: I78d9fc4984bf4313222c943816f81d31924dff26 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168133 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-05-28avoid dynamic_cast in SwXRedlineNoel Grandin3-2/+8
Change-Id: Id39e34c0f1b68639d3adf0092d753cb5dfb4cb0d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168125 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-28loplugin:ostr in sc/../dbguiNoel Grandin21-384/+384
Change-Id: Ife9bda0112a9f76b767c6c8f5afba464da8d8464 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168144 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-28tdf#160984 sw continuous endnotes: DOCX: import <w:endnotePr> pos == sectEndMiklos Vajna5-1/+45
Word can have per-section endnotes, but if endnotes are collected at the end of the section vs document end is a per-document setting. The DOC import already handles this in wwSectionManager::InsertSection() when it constructs an SwFormatEndAtTextEnd with FTNEND_ATTXTEND. Fix the problem by doing the same in writerfilter: in case settings.xml wants at-section-end endnotes, set EndnoteIsCollectAtTextEnd to true when applying section properties. The export side still needs doing. Change-Id: Ibad9c2d62a2945ee42877c849482feee60a50178 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168148 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-05-28no need to dynamic_cast hereNoel Grandin1-1/+2
Change-Id: I636f29e253d4fa9f0263d0ec79580e96b432cd3b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168122 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-05-28Emscripten: Add hack to prepare for --enable-wasm-exceptionsStephan Bergmann2-1/+11
(...which will be beneficial, in turn, to implement exception handling in the work-in-progress bridges/source/cpp_uno/gcc3_wasm UNO bridge). Once setting --enable-wasm-exceptions, plus the corresponding -sSUPPORT_LONGJMP=wasm in qt5, I indeed started to see the "RuntimeError: null function or function signature mismatch" that was already mentioned in static/README.wasm.md. I could track it down to the early destruction of the aDesktop local variable in soffice_main, as I now explain there. However, it beats me why that variable gets destroyed early. The desktop::Desktop::~Desktop dtor claims to be called from within main -> soffice_main -> desktop::Desktop::~Desktop, but at a time when the call to main -> soffice_main -> SVMain has not yet returned. There also does not appear to be any C++ exception handling stack unwinding going on. (It could be related somehow to -sSUPPORT_LONGJMP=wasm, I don't know.) And everything appears to just work fine after turning that aDesktop local variable into a (leaked) heap instance instead, so go with that hack for now... Change-Id: I8e00c988ee9a44fd3befbe41c844eec050f0e509 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167694 Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de> Tested-by: Jenkins
2024-05-28sw doc model xml dump: show SwFormatEndAtTextEndMiklos Vajna2-0/+9
Decides if endnotes are collected at section end or the normal doc end. Previously only the pool item name was visible, not the value. Change-Id: I141a687764b2069e2ddf65cbfdec514a4a0eb1e7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168137 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-05-28sw: use SAL_RET_MAYBENULL in getOtherTextBoxFormat()Xisco Fauli1-3/+4
Change-Id: I854f0d2f38fc9c6b3f8afc4b05d42fbc26e76bc2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168138 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-05-28Update git submodulesOlivier Hallot1-0/+0
* Update helpcontent2 from branch 'master' to 7b824f49fb1a71b173ed318241f99aeb7320eac0 - tdf#159872 Review Help for SORT/SORTBY function + Fix syntax definition Change-Id: I9b24b25bdeb4298f6ba12f605b783324b3b921d1 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/168115 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2024-05-28Update git submodulesOlivier Hallot1-0/+0
* Update helpcontent2 from branch 'master' to 99ebed65db57abb67aa4765f636de2c3c60c10a9 - tdf#159872 Review Help for RANDARRAY function + Fix syntax definition Change-Id: I9acde26c9d6237409813939b1bd1c23e3d61f862 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/168110 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2024-05-28Update git submodulesOlivier Hallot1-0/+0
* Update helpcontent2 from branch 'master' to 5edd31fd783de27dec830907b18651ec8f8c9261 - tdf#159872 Review Help for FILTER function + Fix syntax definition + Fix "Result not found" Change-Id: I80a2f9adafd03c79b199e069134413df2546f124 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/168109 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2024-05-28Update git submodulesOlivier Hallot1-0/+0
* Update helpcontent2 from branch 'master' to 390dd2b9aaf82a2d859224173364ae207c51ba62 - tdf#159872 Review Help XLOOKUP XMATCH functions From comments in by Regina and Ady in https://community.documentfoundation.org/t/comments-on-help-for-new-xlookup-fucntion/12086?u=ohallot and following. + Note on "case sensitive" + Details on array and range + Fix #N/A to "returns the #N/A error" + Reworked examples (re-use HLOOKUP table) + Grammar and linguistics here and there + Fix syntax definition + Fix "Not found" definition + Fix MatchType using verb "attempt" + Position of optional arguments + Longer user cases to be addressed in wiki Note: the function clones Excel XLOOKUP but it is not a copy. Therefore the name of the arguments were set to differentiate from Excel. The Calc function arguments usual naming were mostly mnemonic and not verbose. The current XLOOKUP names in the function wizard is verbose and has several words. Review is needed. Patch set 2: fix xml DTD Patch set 3: XMATCH + Reworked example (re-use HLOOKUP table) + Link to MATCH + Fix function syntax + Refactor Patch set 4: + typos + Fix case insensitive Change-Id: I9f085dcadbdb013cf3a3b892791e18c729aa6431 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/168072 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2024-05-28Fix typoAndrea Gelmini1-1/+1
Change-Id: Ib67e06df1e730d6e23b30d590f6132e7ad7315b4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168142 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2024-05-28odk: don't run compiler -dumpversion for eaach include of settings.mkChristian Lohmaier1-2/+2
VAR=$(shell … ) will run the shell command each time the line is parsed, i.e. for each include of the settings.mk from the examples. Use simple/one-time expansion using := avoids that. Change-Id: I46e6c486fbbe03bba37436d4ca98ddd0b6562ad3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168091 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2024-05-28use internal python for gbuild-to-ide on windows and python=fully-internalChristian Lohmaier1-0/+1
env python3 likely won't work in that case Change-Id: I1b24119af21db9db04c9fa6445e59cb328f39252 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167162 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2024-05-28loplugin:ostr in sw/../ww8Noel Grandin24-374/+381
Change-Id: I48cc8f196e116c9c20c2930bb043e1d1ccf1de33 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167952 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-28ofz#69290 Integer-overflowCaolán McNamara1-4/+2
Change-Id: I20b49bf5e3a507979332cd854205f290a3b3971c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168118 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-05-28sd: use SAL_RET_MAYBENULL in GetDrawView()Xisco Fauli2-3/+3
Directly return nullptr instead of calling SfxViewShell::GetDrawView() which return nullptr to make it obvious Change-Id: I5e81d23f541a73181bb6f7d9e7f1d6ec56ff57ad Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168116 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-05-28sd: warning C6011: Dereferencing NULL pointerXisco Fauli2-9/+15
Change-Id: Id073e5d340fc91836b4689fb3e7a558ef3263e56 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168119 Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>