summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-09-01prefix the UNO-Url example with recommended 'uno:'Caolán McNamara
as http://www.openoffice.org/udk/common/man/spec/uno-url.html suggests. Change-Id: Ifce9a9944f1a25bc0b6f89e5cec127a22bc6f990 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156399 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-09-01Fix typoAndrea Gelmini
Change-Id: I63b019aa12eb4898374162b0226728fd49bef93c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156427 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-09-01android: Update Android Gradle Plugin to 8.1.0Michael Weghorn
... and gradle to 8.0, as suggested by Android Studio. Also, as suggested, let the upgrade assistant set the following properties to keep the previous behavior for these for now instead of applying the new default behavior: android.defaults.buildfeatures.buildconfig=true android.nonFinalResIds=false android.nonTransitiveRClass=false Those may be revisited in a follow-up step. See the Android Gradle Plugin release notes [1] for more details on the properties. [1] https://developer.android.com/build/releases/past-releases/agp-8-0-0-release-notes Change-Id: Iec2f5766c0888e0f38438290b8fd814494afd837 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155376 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-09-01accessibility: fix crash in getAccessibleActionDescriptionXisco Fauli
See https://crashreport.libreoffice.org/stats/signature/SvTreeListEntry::HasChildren() Change-Id: I21879ad531a5c61b3a6808c373454522557e2ff9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156403 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-09-01qt: Set window title etc. in main threadMichael Weghorn
These QWidget methods need to be called in the main thread. Otherwise, opening the Update dialog ("Help" -> "Check for Updates", enabled by `--enable-online-update` autogen switch) triggers asserts like the one below with a self-compiled Qt 6 development build (qtbase dev branch as of c802a9e987c9e38c01580f467eab92a651b3e033). ASSERT failure in QCoreApplication::sendEvent: "Cannot send events to objects owned by a different thread. Current thread 0x0x7fff780160e0. Receiver '' (of type 'QtWidget') was created in thread 0x0x5555555fcd30", file /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp, line 537 Thread 40 "InitUpdateCheck" received signal SIGABRT, Aborted. [Switching to Thread 0x7fff7ffff6c0 (LWP 1516868)] __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44 44 ./nptl/pthread_kill.c: No such file or directory. (gdb) 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 0x00007ffff78a815f in __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78 #2 0x00007ffff785a472 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #3 0x00007ffff78444b2 in __GI_abort () at ./stdlib/abort.c:79 #4 0x00007fffe32eb45a in qAbort() () at /home/michi/development/git/qt5/qtbase/src/corelib/global/qglobal.cpp:161 #5 0x00007fffe32f9ee5 in qt_message_fatal(QtMsgType, QMessageLogContext const&, QString const&) (context=..., message=...) at /home/michi/development/git/qt5/qtbase/src/corelib/global/qlogging.cpp:2057 #6 0x00007fffe32f620c in QMessageLogger::fatal(char const*, ...) const (this=0x7fff7fffb980, msg=0x7fffe37fd9a0 "ASSERT failure in %s: \"%s\", file %s, line %d") at /home/michi/development/git/qt5/qtbase/src/corelib/global/qlogging.cpp:938 #7 0x00007fffe32e9d54 in qt_assert_x(char const*, char const*, char const*, int) (where=0x7fffe38131e9 "QCoreApplication::sendEvent", what=0x7fff78180110 "Cannot send events to objects owned by a different thread. Current thread 0x0x7fff780160e0. Receiver '' (of type 'QtWidget') was created in thread 0x0x5555555fcd30", file=0x7fffe3812e18 "/home/michi/development/git/qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp", line=537) at /home/michi/development/git/qt5/qtbase/src/corelib/global/qassert.cpp:77 #8 0x00007fffe33a4d74 in QCoreApplicationPrivate::checkReceiverThread(QObject*) (receiver=0x55555d27d5d0) at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp:537 #9 0x00007fffe19a3a81 in QApplication::notify(QObject*, QEvent*) (this=0x5555555fcb80, receiver=0x55555d27d5d0, e=0x7fff7fffc0b0) at /home/michi/development/git/qt5/qtbase/src/widgets/kernel/qapplication.cpp:2584 #10 0x00007fffe33a5ed0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55555d27d5d0, event=0x7fff7fffc0b0) at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp:1125 #11 0x00007fffe33a6991 in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=0x55555d27d5d0, event=0x7fff7fffc0b0) at /home/michi/development/git/qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp:1559 #12 0x00007fffe1a279b4 in QWidget::setWindowTitle(QString const&) (this=0x55555d27d5d0, title=...) at /home/michi/development/git/qt5/qtbase/src/widgets/kernel/qwidget.cpp:6119 #13 0x00007fffe3c9d4c4 in QtFrame::SetTitle(rtl::OUString const&) (this=0x555555619d20, rTitle="Check for Updates") at /home/michi/development/git/libreoffice/vcl/qt6/../qt5/QtFrame.cxx:365 #14 0x00007fffedd98d44 in vcl::Window::SetText(rtl::OUString const&) (this=0x7fff7803cd90, rStr="Check for Updates") at /home/michi/development/git/libreoffice/vcl/source/window/window.cxx:3042 #15 0x00007fffedd311c9 in SystemWindow::SetText(rtl::OUString const&) (this=0x7fff7803cd90, rStr="Check for Updates") at /home/michi/development/git/libreoffice/vcl/source/window/syswin.cxx:1048 #16 0x00007ffff048bd6b in VCLXWindow::setProperty(rtl::OUString const&, com::sun::star::uno::Any const&) (this=0x7fff7804ac00, PropertyName="Title", Value=uno::Any("string": "Check for Updates")) at /home/michi/development/git/libreoffice/toolkit/source/awt/vclxwindow.cxx:1515 #17 0x00007ffff03e486d in VCLXContainer::setProperty(rtl::OUString const&, com::sun::star::uno::Any const&) (this=0x7fff7804ac00, PropertyName="Title", Value=uno::Any("string": "Check for Updates")) at /home/michi/development/git/libreoffice/toolkit/source/awt/vclxcontainer.cxx:260 #18 0x00007ffff04dfa2c in VCLXDialog::setProperty(rtl::OUString const&, com::sun::star::uno::Any const&) (this=0x7fff7804ac00, PropertyName="Title", Value=uno::Any("string": "Check for Updates")) at /home/michi/development/git/libreoffice/toolkit/source/awt/vclxwindows.cxx:2364 #19 0x00007ffff06a89b7 in UnoControl::ImplSetPeerProperty(rtl::OUString const&, com::sun::star::uno::Any const&) (this=0x7fff7803b4f0, rPropName="Title", rVal=uno::Any("string": "Check for Updates")) at /home/michi/development/git/libreoffice/toolkit/source/controls/unocontrol.cxx:288 #20 0x00007ffff06aa701 in UnoControl::ImplModelPropertiesChanged(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyChangeEvent> const&) (this=0x7fff7803b4f0, rEvents=uno::Sequence of length 51 = {...}) at /home/michi/development/git/libreoffice/toolkit/source/controls/unocontrol.cxx:649 #21 0x00007ffff0531ae9 in ControlContainerBase::ImplModelPropertiesChanged(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyChangeEvent> const&) (this=0x7fff7803b4f0, rEvents=uno::Sequence of length 51 = {...}) at /home/michi/development/git/libreoffice/toolkit/source/controls/controlmodelcontainerbase.cxx:1600 #22 0x00007ffff0575a25 in UnoDialogControl::ImplModelPropertiesChanged(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyChangeEvent> const&) (this=0x7fff7803b4f0, rEvents=uno::Sequence of length 51 = {...}) at /home/michi/development/git/libreoffice/toolkit/source/controls/dialogcontrol.cxx:651 #23 0x00007ffff06a95f3 in UnoControl::propertiesChange(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyChangeEvent> const&) (this=0x7fff7803b4f0, rEvents=uno::Sequence of length 51 = {...}) at /home/michi/development/git/libreoffice/toolkit/source/controls/unocontrol.cxx:431 #24 0x00007ffff66bc4ee in cppu::OPropertySetHelper::firePropertiesChangeEvent(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertiesChangeListener> const&) (this=0x7fff78006170, rPropertyNames=uno::Sequence of length 51 = {...}, rListener=uno::Reference to (UnoDialogControl *) 0x7fff7803b540) at /home/michi/development/git/libreoffice/cppuhelper/source/propshlp.cxx:961 #25 0x00007ffff06a8c6b in UnoControl::updateFromModel() (this=0x7fff7803b4f0) at /home/michi/development/git/libreoffice/toolkit/source/controls/unocontrol.cxx:320 #26 0x00007ffff06aefc9 in UnoControl::createPeer(com::sun::star::uno::Reference<com::sun::star::awt::XToolkit> const&, com::sun::star::uno::Reference<com::sun::star::awt::XWindowPeer> const&) (this=0x7fff7803b4f0, rxToolkit=empty uno::Reference, rParentPeer=empty uno::Reference) at /home/michi/development/git/libreoffice/toolkit/source/controls/unocontrol.cxx:1325 #27 0x00007ffff06c9905 in UnoControlContainer::createPeer(com::sun::star::uno::Reference<com::sun::star::awt::XToolkit> const&, com::sun::star::uno::Reference<com::sun::star::awt::XWindowPeer> const&) (this=0x7fff7803b4f0, rxToolkit=empty uno::Reference, rParent=empty uno::Reference) at /home/michi/development/git/libreoffice/toolkit/source/controls/unocontrolcontainer.cxx:727 #28 0x00007ffff057336d in UnoDialogControl::createPeer(com::sun::star::uno::Reference<com::sun::star::awt::XToolkit> const&, com::sun::star::uno::Reference<com::sun::star::awt::XWindowPeer> const&) (this=0x7fff7803b4f0, rxToolkit=empty uno::Reference, rParentPeer=empty uno::Reference) at /home/michi/development/git/libreoffice/toolkit/source/controls/dialogcontrol.cxx:358 #29 0x00007fffb7264e62 in UpdateHandler::createDialog() (this=0x7fff78003aa0) at /home/michi/development/git/libreoffice/extensions/source/update/check/updatehdl.cxx:1232 #30 0x00007fffb725b0e1 in UpdateHandler::setVisible(bool) (this=0x7fff78003aa0, bVisible=true) at /home/michi/development/git/libreoffice/extensions/source/update/check/updatehdl.cxx:188 #31 0x00007fffb7235887 in UpdateCheck::showDialog(bool) (this=0x7fff78000b90, forceCheck=true) at /home/michi/development/git/libreoffice/extensions/source/update/check/updatecheck.cxx:1171 #32 0x00007fffb7255c5e in (anonymous namespace)::InitUpdateCheckJobThread::run() (this=0x55555d192690) at /home/michi/development/git/libreoffice/extensions/source/update/check/updatecheckjob.cxx:148 #33 0x00007fffb723a74a in osl::threadFunc(void*) (param=0x55555d192690) at /home/michi/development/git/libreoffice/include/osl/thread.hxx:189 #34 0x00007ffff7f3f693 in osl_thread_start_Impl(void*) (pData=0x55555d1a68b0) at /home/michi/development/git/libreoffice/sal/osl/unx/thread.cxx:237 #35 0x00007ffff78a63ec in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:444 #36 0x00007ffff7926a1c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Change-Id: I6ccdee00fe26619f201459ebbe6c4d8cf8b57b45 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156426 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-09-01sw: PDF/UA export: produce nested Sect SEs for nested sectionsMichael Stahl
Change-Id: I5b142acf00629ffd00562e2c8791587b7a7761df Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156357 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-09-01svx: add class "ONeutralParseContext"Henry Castro
If Base SQL query: SELECT COUNT("test"."id") FROM Test Then changed to Spanish interface, it is required to have a neutral keyword localized, the "COUNT" will fail to detect column type, because the keyword in Spanish is "RECUENTO" Signed-off-by: Henry Castro <hcastro@collabora.com> Change-Id: I191b9591ad796d0dd9509c0fb10b11c16f72e1ce Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156296 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156423 Tested-by: Jenkins
2023-09-01connectivity: fix return column type "DataType::SQLNULL"Henry Castro
The Base SQL query: SELECT COUNT( "Test"."id" ) FROM "Test" And the UI language is set to Spanish, the function "getFunctionReturnType" returns misleading column type. Signed-off-by: Henry Castro <hcastro@collabora.com> Change-Id: I2b57d1dfc005711374d7ae0de66b412f4f551d89 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156295 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156422 Tested-by: Jenkins
2023-09-01SAL_WARN->SAL_INFO in SfxDispatcherNoel Grandin
nobody cares if child window slot is missing Change-Id: I24978daa9a2770e8f0bd44b5b816f94b8d01da0d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156407 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-09-01SAL_WARN->SAL_INF in SvxUnoTextFieldNoel Grandin
these are not indicative of any kind of problem Change-Id: Iad8b265fa7b397a4551b3037572a534d64952ef1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156408 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-09-01remove DBG_ASSERT in MergedCellIteratorNoel Grandin
this does not actually seem to be an error Change-Id: I6d286a3e614bc18f9655fa7e7c9716d2ae067fb0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156409 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-09-01Fix typoAndrea Gelmini
Change-Id: I02772f9b9ace5c1fe955bd0039c5e6d8ce2cc4eb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156450 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-09-01Fix typoAndrea Gelmini
Change-Id: If259a049d38f82210819a5adbf458eae1651cfaf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156429 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-09-01tdf#155799: lok: sc: fix extend reference markHenry Castro
In the tiled rendering case, the server sends a reference coordinates to client side, so extend the range end point reference if merged cells. Signed-off-by: Henry Castro <hcastro@collabora.com> Change-Id: Ie9611aea3f6645a6cf45514939ae6364afac0b1c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155564 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156417 Tested-by: Jenkins
2023-09-01Resolves: tdf#156985 Treat adding two KahanSum differentlyEike Rathke
When summing mixed formula cells and numeric cells, cell type runs are summed using KahanSum that when switching cell types are added. Using add() to explicitly add the rhs m_fError compensation value separately may had lead to effectively cancelling out the relation of sum and error, living on with an unrelated error value. Instead, add a "final" rhs sum+compensation. Change-Id: I751d3e0eeef9cd80482895c24f05b1ab667c3020 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156253 Tested-by: Jenkins Reviewed-by: Eike Rathke <erack@redhat.com>
2023-09-01distro-configs: Switch from JDK 11 to 17Michael Weghorn
... to prepare for the upcoming Change-Id I18251151392ca5edec8ca3d5cffd192d5f9f38b1 ("Bump Java build baseline from JDK 11 to 17"). Change-Id: I3bedc42fd8e05c1e5c61e0b2c9e8eefce31d0fae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155377 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-09-01Add a FunctionBasedURPConnection and a websocket URP connectorSkyler Grey
- FunctionBasedURPConnection is used to enable a client to open a URP connection to a fresh Kit instance in COOL. - This URP connector can be used with that and https://github.com/CollaboraOnline/online/pull/6992 to use a Java Uno Remote Protocol client over websockets - For interoperability with existing Collabora Online websockets a prefix (urp ) is added to each message sent and a similar prefix (urp: ) is expected on each message recieved. This allows sending over the same websocket as other data is being transmitted through. If you are writing a bridge to work with this, you will need to add/strip the prefixes accordingly - This commit uses Java WebSocket (https://github.com/TooTallNate/Java-WebSocket) to send data over websockets. Change-Id: I2bda3d0b988bef7883f9b6829eeb5b7ae8075f27 Signed-off-by: Skyler Grey <skyler.grey@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151171 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-09-01sc: filter: rtf: add method "WriteFontTable"Henry Castro
Write the font table while visiting column/row and get the unique index to reference it. "The \fonttbl control word introduces the font table group. Unique \fN control words define each font available in the document, and are used to reference that font throughout the document." Signed-off-by: Henry Castro <hcastro@collabora.com> Change-Id: I20c5d1128972f5ec9b9b2e246f466bdb173ef8a4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154906 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156415 Tested-by: Jenkins
2023-09-01sc: filter: rtf: add method "AddFont"Henry Castro
Create a map font name associated with unique index. "The \fonttbl control word introduces the font table group. Unique \fN control words define each font available in the document, and are used to reference that font throughout the document".. Signed-off-by: Henry Castro <hcastro@collabora.com> Change-Id: I028226cb539865f1980f953385c887a3bd4b8e3f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154905 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156414
2023-09-01sc: filter: rtf: prefix m_* private membersHenry Castro
Signed-off-by: Henry Castro <hcastro@collabora.com> Change-Id: If8389b6e63a90616131d0dd9fbb5a7b8b96ffe3d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154904 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156413 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-09-01sc: filter: rtf: use a separate document streamHenry Castro
"An RTF file has the following syntax: '{' <header> <document>'}' " In order to build the header: <header> \rtf <charset> \deff? <fonttbl> <filetbl>? <colortbl>? <stylesheet>? <listtables>? <revtbl>? The font table should be created while visiting the column/rows. Signed-off-by: Henry Castro <hcastro@collabora.com> Change-Id: Id72a3c87acab6cfc7889cf81f7e83a0d73e378a2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154903 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156412 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-09-01tdf#104833 a11y Send name changed event for text controlsMichael Weghorn
The text is at least often used for the accessible name of text controls (e.g. the MultiLineEdit case in tdf#104833). Therefore, also check whether the a11y name has changed from the previously remembered one in `VCLXAccessibleTextComponent::SetText` and send a NAME_CHANGED event if it has. This e.g. makes sure that the a11y name for the multi line edit in the update dialog is updated on Windows and NVDA properly announces it when it receives focus. (It now correctly announces "LibreOfficeDev 24.2 is up to date." instead of the obsolete cached name "Checking..."). Also see how `VCLXAccessibleTextComponent::ProcessWindowEvent` calls `VCLXAccessibleTextComponent::SetText` when processing `VclEventId::WindowFrameTitleChanged` and this comment in `Window::SetText` mentions that `VclEventId::WindowFrameTitleChanged` is used to notify about a11y name changes: // #107247# needed for accessibility // The VclEventId::WindowFrameTitleChanged is (mis)used to notify accessible name changes. // Therefore a window, which is labeled by this window, must also notify an accessible // name change. Change-Id: I2f15fe78324b14c3bbeae943cb87384007e21618 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156411 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-09-01tdf#104833 a11y: Use VCLXAccessibleEdit for VCLXMultiLineEditMichael Weghorn
Instead of the generic `VCLXAccessibleComponent`, use `VCLXAccessibleEdit` as a11y class for `VCLXMultiLineEdit` (the component interface class for MultiLineEdit) as well, not just for `VCLXEdit`. With the preparatory changes from Change-Id I8218db61feb07605f6ea5309f26eebd38312458a tdf#104833 a11y: Don't use VCLXEdit in VCLXAccessibleEdit in place, it behaves as expected when interacting with the multi line edit from the sample dialog in attachment 189287 in tdf#104833 using Accerciser and the qt6 or gtk3 VCL plugin (and the text can also be edited when removing the readonly flag from the control) or the update dialog (which uses UNO controls, `UnoControlEditModel` for the panes that were not announced, s. extensions/source/update/check/updatehdl.cxx ). In particular, the a11y text interface is supported by the multi line edit on the a11y layer, which makes Orca with the gtk3 VCL plugin announce the text content when the control gets focused. NVDA on Windows still announces "Checking..." instead of using the actual text that would be retrievable via the IAccessibleText interface now. This is probably because "Checking..." is the (outdated) accessible name, as can be seen by interacting with the object in NVDA's Python console: >>> focus.name 'Checking...' >>> txt = focus.IAccessibleTextObject >>> txt.text(0, txt.nCharacters) 'LibreOfficeDev 24.2 is up to date.' For both, gtk3 and qt6, the a11y object does have the new text as a11y name as well, as can be verified in Accerciser: In [10]: acc.name Out[10]: 'LibreOfficeDev 24.2 is up to date.' In [11]: txt = acc.queryText() In [12]: txt.getTextAtOffset(0,3) Out[12]: ('LibreOfficeDev 24.2 is up to date.', 0, 34) Change-Id: Id80e191cdd5342b3215fdb9d2ad3847470366337 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156402 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-09-01tdf#104833 Move VCLXMultiLineEdit to public toolkit headerMichael Weghorn
This is in preparation of having the a11y factory create a proper accessible context for it. Change-Id: If60efa84263c2d68eb57daa3aae4834a060529c3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156401 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-09-01tdf#104833 a11y: Don't use VCLXEdit in VCLXAccessibleEditMichael Weghorn
Don't rely on the `VCLXWindow` of the control being a `VCLXEdit`, but use the `Edit` control directly, as is already done in other methods of this class. This is in preparation of using `VCLXAccessibleEdit` as the a11y class for `MultiLineEdit` as well, which derives from `Edit`, but its component interface class, `VCLXMultiLineEdit` does not derive from `VCLXEdit`. Already add reporting of the `AccessibleStateType::MULTI_LINE` state instead of `AccessibleStateType::SINGLE_LINE` to `VCLXAccessibleTextComponent::FillAccessibleStateSet` if the window type is `WindowType::MULTILINEEDIT`. Add a small helper function, `VCLXAccessibleEdit::isEditable` to use instead of `VCLXEdit::isEditable`, which does the same. Interacting with the single line edit from the sample dialog in attachment 189287 in tdf#104833 in Accerciser still behaves as expected (and the text can still be edited when removing the readonly flag from the control). Change-Id: I8218db61feb07605f6ea5309f26eebd38312458a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156400 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2023-09-01lok: use constant keys enumerationHenry Castro
Useful to better readability code. Signed-off-by: Henry Castro <hcastro@collabora.com> Change-Id: I335d010c3b1ddf3f8052b7ed6cb0f94ad20045f1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155495 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156416 Tested-by: Jenkins
2023-09-01Update git submodulesOlivier Hallot
* Update helpcontent2 from branch 'master' to dd8981d39d51a2b75f014a7196f16fb7622461a7 - tdf#155875 Tab'd UI cmds Writer/Styles in Help(27) + refactoring + Manage Styles menu (part 27) Change-Id: Ic3d001bdcf707354b53f92fe4774065f6b81ccf1 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/156419 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-09-01Update git submodulesOlivier Hallot
* Update helpcontent2 from branch 'master' to 96d055e7a733a62dc39ddd4dec58e31e6ad7db85 - tdf#155875 Tab'd UI cmds Writer/Styles in Help(26) + refactoring + Style Update dialog box (part 26) Change-Id: I4e9280e84a90b87cb8efab6b9035e24cfaa99345 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/156418 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-09-01disable unreliable librelogo uitestNoel Grandin
Change-Id: Icdd2add6260cc1a3dc309abcaaf9e7531676081c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156404 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-09-01tdf#157034: FILESAVE loext:theme-type is off by oneJulien Nabet
nItemId begins with 1 but list of themes begin with 0 so decrement nItemId part of bt here: https://bugs.documentfoundation.org/show_bug.cgi?id=157034#c1 + adapt QA tests Change-Id: I7913ea0f71abb9ff98039a9c45a49fdb8f709ae0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156350 Tested-by: Jenkins Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
2023-09-01update clang asan suppressionsNoel Grandin
which started showing up with my local clang asan build clang version 18.0.0 (https://github.com/llvm/llvm-project.git 77c780816779bb595b5befe1d711addae67010d6) Change-Id: Ia0290839300e245dd11161a5fbea0db746f9022e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156395 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-09-01adjust VclTextTest::testSimpleTextNoel Grandin
on my machine, after a recent update, the text is scaled slightly differently (Ubuntu 23.04) Change-Id: I5ac5e0c76a4cc4c0468a9f0e9186f95004d4d24f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156398 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-09-01Update git submodulesOlivier Hallot
* Update helpcontent2 from branch 'master' to 66868265f68f9f21a015995adac39fa3923d837b - Add missing file for Edit Styles Change-Id: If176ec185769def7eafb7113c8dc107487bccf6b Reviewed-on: https://gerrit.libreoffice.org/c/help/+/156390 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-09-01Update git submodulesOlivier Hallot
* Update helpcontent2 from branch 'master' to fd13056cba22995c1b846aa466fac2b7995a1919 - tdf#155875 Tab'd UI cmds Writer/Styles in Help(25) + refactoring + Edit Styles dialog box (part 25) Change-Id: I3a627e45c659910696a3ab29cfa51870dd44c436 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/156369 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-09-01Update git submodulesOlivier Hallot
* Update helpcontent2 from branch 'master' to cc32ce4040119c1a6b950e95f0612e04babb03ce - tdf#155875 Tab'd UI cmds Writer/Styles in Help(24) + refactoring + Writer Styles menu (part 24) Change-Id: I4ed8faa98d19642c7d682af2c8b3ca2a048a4c05 Reviewed-on: https://gerrit.libreoffice.org/c/help/+/156368 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2023-09-01Revert "tdf#100894 lots of Conditional formatting freeze calc Styles sidebar"Noel Grandin
This reverts commit 6fd755fb36472938757b2581cbe99f5e5fe1ae40. This causes tdf#157021, so revert until Caolán can look into it some more Change-Id: I4e25c72988468015ee3a76baf8ecdafc72c79d7b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156376 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-09-01show status indicator progress on svg export of slidesCaolán McNamara
somewhat related to https://github.com/CollaboraOnline/online/issues/6616 just for standard export case for now Change-Id: If2399e29a1463b0a3b465e77c5d67565655999e2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156360 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-09-01outer check is mbExportShapeSelection so inner !mbExportShapeSelectionCaolán McNamara
Change-Id: If4356a0217296a1d91a1daa145f8deccd8ea0f8f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156359 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-09-01Related: tdf#156318 sw floattable: fix handling of vert orient == topMiklos Vajna
The bugdoc resulted in a layout loop on load. It was created by forcing pages to be in a single column + increasing the top+bottom margin of the page to 2.5cm. The problem was that the SwFormatVertOrient's m_eOrient is usually text::VertOrientation::NONE ("from top" with 0 offset), but here it's text::VertOrientation::TOP. These are meant to be more or less equivalent, but SwToContentAnchoredObjectPosition::CalcPosition() has different codepath for them. Fix the problem by making sure that TOP doesn't have a vertical offset for follow fly frame: do this by realizing that in case the "orient frame" and the "anchor" is not the same that may need no action, since the fly frame case changes the "orient" to the follow anchor and the "anchor" is the master anchor. The original scenario still needs more work, we don't hang anymore but the follow fly appears on page 3 instead of page 2. Change-Id: I1596a07b78575583070d494ddb8e1400e5653820 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156392 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2023-09-01tdf#156306 sw: PDF export: refactor, split out BeginTagImpl()Michael Stahl
Change-Id: Ifcb8db6d9a5caaf50c0ca2794266fb501b59dee0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156356 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2023-09-01sc: add ODF import/export of the Theme + testsTomaž Vajngerl
One missing thing is the support in calc to save the Theme into the ODS document and read that back. The theme element is added as a child element to the office:styles - the same as it already is added in Writer. Also adds "Theme" property as a top level document property so it is possible to get and set the theme in xmloff. Also tests have been added to cover this usecases. Change-Id: Ic214ff5e945b77d50e6c881def9d49509560a0e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156363 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-09-01move theme element export to xmloff to remove code duplicationTomaž Vajngerl
Both Impress/Draw and Writer export the model::Theme in a similar way, but the code is duplicated. Remove duplication and move the code to a common place (on the SwXMLExport class) so it can be reused at both places. Change-Id: Id93acfafb0dd4ab0168b3228079f6ce6f64e6b55 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156362 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-09-01fix ImpGraphic::operator==Noel Grandin
This was broken in commit 7b355669c6ddeab2e6cec692d6afdff41c61d0fb Author: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> Date: Sat Apr 14 15:13:05 2018 +0900 Function to load graphic swapped out (loaded on demand) Change-Id: I8ad120b65da5a7c53e8f90c6e01207f75da11c34 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156310 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-09-01use concrete type for SwAccessibleShapeMap_ImplNoel Grandin
avoid some unnecessary casting Change-Id: I422428fa3c31141d73171a22c6c58242a1c1be2b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156319 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-09-01use concrete type for SwAccessibleMap::mxCursorContextNoel Grandin
avoid some unnecessary casting Change-Id: I354ac67aa7a0c7f8ebe676315c66c97af31dc4e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156318 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-09-01sw layout xml dump: move at-content fly dumper to flycntMiklos Vajna
That's where the rest of the SwFlyAtContentFrame member functions are defined. Change-Id: I0215a21c6f3bf41a1e5998b2c5a91864c70f2f93 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156355 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-09-01Replace a macro with a functionStephan Bergmann
Such test code should generally be non-DRY, but using a macro rather than a function here didn't help much in that regard: For a failing test, it just traded reporting the line of the failing CPPUNIT_ASSERT for reporting the line of the failing CHECK_GREEK_SYMBOL call, neither of which by itself gives sufficient context. Change-Id: Icce6a68d67d36e8809bf96dcd36ceef6b7b7c9eb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156351 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-09-01sd: set the theme for all master pagesTomaž Vajngerl
It can be annoying for the user to set the theme one by one for each master page. The reason for this is that in MSO the master slide (which contains the theme) has multiple layouts, which are converted to master pages in LO. As LO doesn't group master pages together the theme is defined on each master page, so it is needed to change each master page one by one. Change-Id: I94d75246ca012bbbb005ab376446c0941b8f57ca Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156361 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2023-09-01tdf#156538 follow up: Use better tooltip activation rectangleJim Raykowski
This patch corrects the tooltip only being shown when the mouse pointer is in the top third of the window when using gtk3. Change-Id: I9d705c064bc4654ed660842215ffd59edc14891b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156358 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2023-09-01remove AUTOFMT_DOCNODEBjoern Michaelsen
- remove obsolete GetInfo()s - introduce SwFormat::IsUsed() - move handling from GetInfo to SwClientNotify - make sure SwAutoFormatUsedHint is forwarded to clients where needed (e.g. SwTextFormatColl, SwDDETable, SwPageDesc, ...) Change-Id: I07d9e94ee791ca6e738b4eb3e597055ad8fbe755 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155504 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michaelsen@libreoffice.org>