summaryrefslogtreecommitdiff
path: root/desktop
AgeCommit message (Collapse)Author
39 hourscool#10630 lok doc sign: allow setting the pos of the Impress sign lineMiklos Vajna
Open a PDF in LOK mode, insert a signature line, try to drag the selected signature widget/shape, nothing happens. Given that the inserted shape has a default position at page center, you typically want to adjust that default position, but that requires adding a few exceptions, since PDFs are normally read-only. Desktop Impress gets around this since commit 5d296183072dc7cfe7a9985c38388b56f37d873c (sd signature line: allow move / resize of shape before signing, 2020-06-26), but LOK clients want to rather dispatch an UNO command (instead of handling this in the mouse event handler), so this requires additional work. A first problem is in isCommandAllowed() in desktop/ that explicitly rejects the UNO command for read-only documents: allow this when a signature widget is selected. A second problem is in SdrEditView::SetGeoAttrToMarked(), check for the signature widget there as well. Given that the implementation of .uno:TransformDialog already has a set of flags to prevent doing anything for read-only documents, it looks safe to allow the execution of the command itself. The size of the widget should be also possible to modify, that's not yet done here. Change-Id: I92a60717e98ac33f7a1eb9770cd0c7903f60759c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180049 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
3 dayscool#10782 vcl lok: avoid changing the current view during YieldMiklos Vajna
Commit 520cc546e2940bdfbc45eab1e569bb06bab17a9c (cool#10782 sfx2 lok: fix bad view id on PDF export, 2024-12-20) provided a specific fix for one case where spinning the main loop can result in callbacks being emitted on the wrong view. Hunting down all the SfxViewShell::Current() calls and auditing them if they are problematic in practice is a large task, so it's desirable to handle this problem in a more generic way. Fix the problem by pushing/popping the current LOK view in Application::Reschedule(), which is what e.g. the framework/ status bar code uses during PDF export. This keeps the original problem fixed but is more generic. This requires storing function pointers in comphelper/, since normally vcl/ code can't call SfxLokHelper, since sfx2/ already depends on vcl/. The fix can be tested by reverting the original fix: git show 520cc546e2940bdfbc45eab1e569bb06bab17a9c -- sfx2|git apply -R and then running the testcase: make -C sw -sr CppunitTest_sw_tiledrendering CPPUNIT_TEST_NAME=testPDFExportViewSwitch which now passes even if the sfx2-level fix is not there. Keep that specific fix, though: the less time we assume SfxViewShell::Current() returns the correct view, the better. Change-Id: Ic1811ff1e67f73fa5066af775d31589136b8502a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179993 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
3 daysSimplify a bitMike Kaganski
WinLaunchChild takes the same kind of argv as execv, terminated by a null pointer; so no need to pass argc. Change-Id: I280c8da0c613a7d0d1a208831a87f0e4648719f8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179952 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
3 daysUse o3tl::toW instead of c-style castMike Kaganski
Change-Id: Id027978cbe6188fecafe71f6566dd8501ffdabe2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179950 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
4 daysSimplify using designated initializersMike Kaganski
Change-Id: I73d666a0aa4a41e8e73cb701161be1da6fd59d0d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179942 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
4 daysClose handles properlyMike Kaganski
Change-Id: If8620229d41ae9b6c0a1714967a8bb6d51d3ba0d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179939 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
5 dayslokit: add scale parameter to "renderNextSlideLayer"Henry Castro
When client side change the device pixel ratio. Signed-off-by: Henry Castro <hcastro@collabora.com> Change-Id: I6356ff2a2e6513ac835b5f02a755173aafe01dc9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178580 Reviewed-by: Marco Cecchetti <marco.cecchetti@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179825 Tested-by: Jenkins
9 dayscool#10794 Test for: Don't open validity dropdown in readOnly mode.Gökay Şatır
Issue: In readonly mode, validity dropdown is still usable. There are 2 tests here. 1 is to ensure that dropdown opens and it also exists as an example on dropdown events. The other is to ensure that dropdown is not opened in readonly mode. Signed-off-by: Gökay Şatır <gokaysatir@collabora.com> Change-Id: Id73c4421454af2af4f306925d6c628f776ecd2d9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179303 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179697 Tested-by: Jenkins
2024-12-28cid#1637331 silence Using invalid iteratorCaolán McNamara
Change-Id: Ia706dbbb397f80069bace68e831b082de11d8557 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179488 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-27tdf#158237: Use C++20 contains() instead of find() and end()Johann
Change-Id: I0528229042aa62d3d99e8dbaad68a86d41cf369a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178659 Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Tested-by: Jenkins
2024-12-20cool#10115 sc: enable ScPosWnd for lokit with jsdialogRashesh
Change-Id: I18829c48a2495e3aa31af83970c8c1c4791a170a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173987 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> (cherry picked from commit 9ffc274bbc414d1e98313af804386861beeff9bf) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177645 Tested-by: Jenkins
2024-12-18tdf#163620 [API CHANGE] Add UI for libreoffice themesSahil Gautam
Instead of Color, we have Light and Dark in the registry. So each theme extension will specify dark and light color values for each "customizable element" like DocColor etc. Under appearance we have three radio buttons - light/dark/system. If system is selected then light/dark colors are switched based on the system's theme. if explicitly light/dark is selected - that color is used from the registry. ColorConfigValue now has three entries nColor, nLightColor, nDarkColor. nColor is used as a cache for the color being used at the moment. This is to avoid otherwise expensive function calls + hundreds of modifications in the codebase just to change nColor. nColor is cached either when the theme is loaded or when changes are committed in `ColorConfig_Impl::ImplCommit()`. Now, if Automatic theme is selected then themes is disabled and the application uses the system colors. If some other scheme is selected like "CustomTheme" etc, then LibreOffice themes/UI color customization is enabled and the theme colors are used. Instead of a scroll window, now we have a combobox for the registry entries and a single color dropdown to select the color value. This color dropdown is for convinience in case the user wants to change some specific color that's bothering him. For themeing, theme extensions should be used. API CHANGE + remove Color in favour of Light and Dark + AppBackground has additional two - BackgroundType and Bitmap + remove officecfg::Office::Common::Misc::Appearnce in favor of officecfg::Office::Common::Appearance::ApplicationAppearance + move LibreofficeTheme under officecfg::Office::Common::Appearance UI + it looks like https://i.imgur.com/UMxjfuC.png which is a little different from how the [mockup] on the ticket describes it, and that's because of lack of time due to upcomming feature freeze. + system/light/dark allow the user to switch between light/dark modes based on either the system theme (system) or by manually specifying light/dark. + ui themeing and color customization is disabled when automatic theme is selected, and enabled otherwise. [mockup]: https://bug-attachments.documentfoundation.org/attachment.cgi?id=197469 Change-Id: I1a7f70dfe44b81f863814f87e8d46e146c0e3d5a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174835 Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org> Tested-by: Jenkins Reviewed-by: Sahil Gautam <sahil.gautam.extern@allotropia.de>
2024-12-18add a way to update config from kitCaolán McNamara
arg is a path to a "presets" dir similar to instdir/presets/ where autotext/wordbook/xcu may exist initially just update xcu if that is present, autotext itself typically is updated dynamically if a new file is found, while wordbooks are not and the diclist can be explicitly reinitialized here if there are wordbooks. Change-Id: Ibeb9d23d143c710f12e6c9d75b2861e0e6d44a01 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177372 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> (cherry picked from commit 30f83f2dff9f80db0b4a467fb30f9a9b2531fa3c) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178664 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-12-17kit: re-initialize user-defined dictionaries on lo_initRashesh
Change-Id: I017767089efe54bf8d32d905e995f1a99c23984f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178398 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> (cherry picked from commit f4df86eda7ef82a3ffaf7fdd76a4775d0f66e438) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178609 Tested-by: Jenkins
2024-12-14cid#1608560 Data race conditionCaolán McNamara
Change-Id: I3b579434727e8b51d0de136c83d891c2f409d77a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178482 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-09lok: slideshow rework: check that requested slide is the expected oneMarco Cecchetti
Change-Id: I225dfea9981d43fb90888f5025792e9d24d9a789 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173061 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178129 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2024-12-09rename IsOnSystemEventLoop -> IsUseSystemEventLoopNoel Grandin
to match the underlying field and avoid confusion. The "IsOn" prefix normally means "is the current thread running on", which is not what this method means Change-Id: I3399a707582c9b0c681cd4aa03bc9f94860fc7fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177960 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-12-08tdf#138615: canonicalize the paths with wildcards, to process long pathsMike Kaganski
Now that we discontinued support of Windows 7, PathCchCanonicalizeEx is definitely available. Change-Id: I38b0ff5b6810dfbd6ee6fe84693f71b8392a1808 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178086 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-12-07weld: Rename weld::Treeview selection signal/connectMichael Weghorn
Rename weld::TreeView member + methods to clarify that these are about selection changes: * m_aChangeHdl to m_aSelectionChangedHdl, * signal_changed to signal_selection_changed * connect_changed to connect_selection_changed In GtkInstanceTreeview, also rename the related methods calling signal_selection_changed accordingly for consistency. Change-Id: I299d7930484677395a0bdd0ff105df18688f2e04 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178023 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-12-03don't bother passing const std::[u16]string_view by referenceCaolán McNamara
Change-Id: I49477c20849dd99118d5935c0f1576429648bfca Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177734 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-12-02Add a test for setAllowChangeComments function.Gökay Şatır
This is a follow up for: * https://gerrit.libreoffice.org/c/core/+/164570/2 Signed-off-by: Gökay Şatır <gokaysatir@gmail.com> Change-Id: If748aac779767174d14dde33efab62d980b115ff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172114 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176287 Tested-by: Jenkins
2024-12-01drop 'store' from libs we pagein on startupCaolán McNamara
it's there to speed up later read of it, but in normal situations we shouldn't use it anymore IIUC Change-Id: Ia075e32cd4820729b341d4d47dbfb9126a363559 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177601 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-11-30cid#1607542 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1606986 COPY_INSTEAD_OF_MOVE cid#1557969 COPY_INSTEAD_OF_MOVE cid#1557837 COPY_INSTEAD_OF_MOVE cid#1557772 COPY_INSTEAD_OF_MOVE cid#1557735 COPY_INSTEAD_OF_MOVE cid#1557672 COPY_INSTEAD_OF_MOVE cid#1557664 COPY_INSTEAD_OF_MOVE cid#1557650 COPY_INSTEAD_OF_MOVE cid#1557642 COPY_INSTEAD_OF_MOVE cid#1557639 COPY_INSTEAD_OF_MOVE cid#1557628 COPY_INSTEAD_OF_MOVE cid#1557623 COPY_INSTEAD_OF_MOVE cid#1557581 COPY_INSTEAD_OF_MOVE cid#1557489 COPY_INSTEAD_OF_MOVE cid#1557473 COPY_INSTEAD_OF_MOVE cid#1557317 COPY_INSTEAD_OF_MOVE cid#1557261 COPY_INSTEAD_OF_MOVE cid#1557146 COPY_INSTEAD_OF_MOVE cid#1557135 COPY_INSTEAD_OF_MOVE cid#1557134 COPY_INSTEAD_OF_MOVE cid#1557079 COPY_INSTEAD_OF_MOVE cid#1557063 COPY_INSTEAD_OF_MOVE cid#1557052 COPY_INSTEAD_OF_MOVE cid#1556982 COPY_INSTEAD_OF_MOVE cid#1556977 COPY_INSTEAD_OF_MOVE cid#1556950 COPY_INSTEAD_OF_MOVE cid#1556943 COPY_INSTEAD_OF_MOVE cid#1556804 COPY_INSTEAD_OF_MOVE cid#1556736 COPY_INSTEAD_OF_MOVE cid#1556658 COPY_INSTEAD_OF_MOVE cid#1556621 COPY_INSTEAD_OF_MOVE cid#1556590 COPY_INSTEAD_OF_MOVE cid#1556579 COPY_INSTEAD_OF_MOVE cid#1556534 COPY_INSTEAD_OF_MOVE cid#1556524 COPY_INSTEAD_OF_MOVE cid#1556478 COPY_INSTEAD_OF_MOVE cid#1556467 COPY_INSTEAD_OF_MOVE cid#1556422 COPY_INSTEAD_OF_MOVE cid#1556314 COPY_INSTEAD_OF_MOVE cid#1556309 COPY_INSTEAD_OF_MOVE cid#1556258 COPY_INSTEAD_OF_MOVE cid#1556143 COPY_INSTEAD_OF_MOVE cid#1556119 COPY_INSTEAD_OF_MOVE cid#1556101 COPY_INSTEAD_OF_MOVE cid#1556097 COPY_INSTEAD_OF_MOVE cid#1556039 COPY_INSTEAD_OF_MOVE cid#1555966 COPY_INSTEAD_OF_MOVE cid#1555948 COPY_INSTEAD_OF_MOVE cid#1555915 COPY_INSTEAD_OF_MOVE cid#1555836 COPY_INSTEAD_OF_MOVE cid#1555748 COPY_INSTEAD_OF_MOVE cid#1555644 COPY_INSTEAD_OF_MOVE cid#1555582 COPY_INSTEAD_OF_MOVE cid#1555478 COPY_INSTEAD_OF_MOVE cid#1555475 COPY_INSTEAD_OF_MOVE cid#1555409 COPY_INSTEAD_OF_MOVE cid#1555372 COPY_INSTEAD_OF_MOVE cid#1555334 COPY_INSTEAD_OF_MOVE cid#1555330 COPY_INSTEAD_OF_MOVE cid#1555310 COPY_INSTEAD_OF_MOVE cid#1555257 COPY_INSTEAD_OF_MOVE cid#1555247 COPY_INSTEAD_OF_MOVE cid#1555147 COPY_INSTEAD_OF_MOVE cid#1555120 COPY_INSTEAD_OF_MOVE cid#1555059 COPY_INSTEAD_OF_MOVE cid#1555016 COPY_INSTEAD_OF_MOVE cid#1554880 COPY_INSTEAD_OF_MOVE cid#1554824 COPY_INSTEAD_OF_MOVE cid#1554808 COPY_INSTEAD_OF_MOVE cid#1546189 COPY_INSTEAD_OF_MOVE Change-Id: I2d2f33c603f1596228c9ecb169472ba6751e7826 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177593 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-11-28cool#4250 - add API to set per view options.Michael Meeks
Change-Id: I5e3b3b3548ba93b96b33fe682405a2b0b53bbdee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176715 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> (cherry picked from commit 8dcb86a4a724f143f7d5cfcc3d1231a7f924cbd9) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177445 Tested-by: Jenkins Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2024-11-27Drop separate instantiation of objects included in AllSettingsMike Kaganski
Change-Id: If56c0cbf5679bee57f6fe1b364c402d949089b87 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177386 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-11-24UserInstallation may change in kit-modeCaolán McNamara
So the setting fetched at ctor time for UserInstallation (and BRAND_BASE_DIR) may no longer be true, so expanding variables based on those earlier seen values results in unwanted paths. add XInitialization to SubstitutePathVariables (like done for PathSettings) to allow reiniting these explicitly once. Change-Id: Ia930ea71cb09adc91d6d47ee047c44b24222e8a2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175961 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com> (cherry picked from commit 410f6b50eb44276b1d2095c844244ef4d0ddefaa) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177109 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-11-24cid#1606622 silence Overflowed integer argumentCaolán McNamara
Change-Id: I8a25e19d3de1515a03fe478fa28c1f5eec0963c6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177165 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-11-23Use specific SvtModuleOptions::Is*Installed for clarityMike Kaganski
Change-Id: Ibe64b9fcccf33471d96bb0fb1aa896cb456657f0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177069 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-11-22cid#1608081 silence Overflowed array index writeCaolán McNamara
Change-Id: I40d4207eafe46736a122e07c56f6db94cb517697 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177044 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-11-21call PathSettings::initialize after utl::Bootstrap::reloadDataCaolán McNamara
and add setting 'BRAND_BASE_DIR' alongside existing 'UserInstallation' which necessitates moving this block after aAppPath is determined Done so that PathSettings will use the new locations set in bootstrap for UserInstallation directory and not the locations detected during preinit. So autotext can be found relative to the final UserInstallation dir. Change-Id: Ib6dadbec85a380475537027a8ce3972e31089711 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175960 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176905 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-11-20use bNewFontLists of true to refetch new font listsCaolán McNamara
which becomes more obviously required since: commit d85cb3832286ae1fdcf4a8494abb8212f21e4e9a CommitDate: Fri Feb 2 22:47:28 2024 +0100 preload: open and close empty documents of main types in preinit. because since then SdModule has called GetVirtualRefDevice to create the long-life virtual device that is used to set the lists of available fonts before "addfonts" has been called to add extra fonts to the kit so impress/draw remains unaware of any changes there. It was actually "true" here before: commit ab612633003c75dfb30664db8cc8924c086a91ee CommitDate: Wed Apr 13 20:09:54 2022 +0200 Follow-up fix to Collabora Online "addfont" handling: avoid assertion failure but its uncertain what assertion is referred to here, perhaps the same assertion as later fixed by: commit d1ed24ba34d422128fd48184dbc3b344b5922d3a CommitDate: Wed Oct 2 16:19:47 2024 +0200 Get SolarMutex before calling ImplClearAllFontData Change-Id: Ibc81191ba3b88d9b4def90b6d9662a83295ec9cf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176032 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176823 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-11-20switching PageKind without switching EditMode retains current pageCaolán McNamara
i.e. ChangeEditMode doesn't do anything if the EditMode is unchanged but the PageKind was switched from Notes to Standard. So the same page of the other mode is still selected. An explicit SwitchPage is required to change the page from the other mode. This results in the reported mode of "2", but rendering actually still rendering as if in "mode 0", so a request to render a 'standard' page returns an image of the currently still-selected 'notes' page, which confusingly can be cached and not shown until served as a reply to a later request of the 'standard' page. See DrawViewShell::ReadFrameViewData and other places for more of this pattern. Change-Id: Ie8aa8f93f45189fd6f9c37c4077fa2b547ca4815 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176084 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Reviewed-by: Gökay ŞATIR <gokaysatir@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> (cherry picked from commit 95e9c210ef8380b0909c6ba596e3023bafef4083) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176824 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-11-20desktop: fix crash in forceSetClipboardForCurrentView()Miklos Vajna
Crashreport signature: > Fatal signal received: SIGSEGV code: 1 for address: 0x0 > program/libmergedlo.so > (anonymous namespace)::forceSetClipboardForCurrentView(_LibreOfficeKitDocument*) > desktop/source/lib/init.cxx:1376 (discriminator 6) > program/libmergedlo.so > rtl::Reference<LOKClipboard>::~Reference() > include/rtl/ref.hxx:128 > program/libmergedlo.so > com::sun::star::uno::Reference<com::sun::star::lang::XComponent>::~Reference() > include/com/sun/star/uno/Reference.hxx:113 Sounds like an attempted document load that failed, but we still try to set the clipboard for the first view during shutdown. Change-Id: I21e5742ae4fcd4b24daf2888f3d64aae437d4fda Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176812 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-11-19LOK: send state of EditDoc for write protection statusPranam Lashkari
Change-Id: I58eb4ab04b4063e382bc6550b5cf08d7806a6c6a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173470 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> (cherry picked from commit 3fa8df9e7f46fd7bf988ca96b0454e5c1ee0a153) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176749 Reviewed-by: Pranam Lashkari <lpranam@collabora.com> Tested-by: Jenkins
2024-11-18cid#1606638 silence Overflowed integer argumentCaolán McNamara
and cid#1608572 Overflowed integer argument cid#1607772 Overflowed integer argument cid#1607196 Overflowed integer argument cid#1606568 Overflowed return value cid#1607573 Overflowed return value Change-Id: I9a701b19026572127399712c3b660094f2a0bd40 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176740 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-11-17cid#1607905 Data race conditionCaolán McNamara
Change-Id: Idb525a4e19cfbe0c4a493f511be7dadafac0cff5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176465 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-11-11clang-tidy: performance-unnecessary-copy-initialization in desktopNoel Grandin
Change-Id: I0e6ce8858fc058403020e2db863730f04cac70db Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176392 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-11-10com::sun::star -> cssMike Kaganski
Change-Id: I890ec73e30d3cc6b210903ecee29431f3cb5f635 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175979 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-11-09cid#1634574 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1634579 COPY_INSTEAD_OF_MOVE cid#1634583 COPY_INSTEAD_OF_MOVE cid#1634586 COPY_INSTEAD_OF_MOVE Change-Id: I24f4f0edf90546fe89ebecf0652f27298b5dd2a0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176311 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-11-08cool#9992 lok doc sign, hash extract: initial getCommandValues('Signature')Miklos Vajna
The trouble with signing via ca/cert/key PEM files is that usually the CA is not trusted by the received of the signature. 3rd-party services are available to do generate trusted signatures, but then you need to share your document with them, which can be also problematic. A middle-ground here is to sign the hash of the document by a 3rd-party, something that's supported by e.g. <https://docs.eideasy.com/electronic-signatures/api-flow-with-file-hashes-pdf.html> (which itself aggregates a number of providers). As a first step, add LOK API to get what would be the signature time during signing -- but instead of actually signing, just return this information. Once the same is done with the doc hash, this is supposed to provide the same info than what the reference <https://github.com/eideasy/eideasy-external-pades-digital-signatures> app does. This is only a start: incrementally replace XCertificate with SignatureContext, which allows aborting the signing right before calling into NSS, and also later it'll allow injecting the PKCS#7 object we get from the 3rd-party. Change-Id: I108564f047fdb4fb796240c7d18a584cd9044313 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176279 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-11-08loplugin:reftotemp in dbaccess..editengNoel Grandin
Change-Id: I51f5e47fb2fca37928ac58952a6a34b7351ca53c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176277 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-11-08no need to take a copy of the getProcessComponentContext return valueNoel Grandin
we can just take a "const &". (found by running clang-tidy with the performance-unnecessary-copy-initialization warning) Change-Id: I20fd208c65303da78170b1ac06c638fdf3aa094b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176267 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-11-08Simplify a bitMike Kaganski
Change-Id: I618b0f8bcb2e8032ee12367c73e1136685f66b3e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176183 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-11-07sw: add .uno:DeleteContentControl commandcodewithvk
This command removes formatting for content controls such as rich text, checkbox, dropdown, picture, and date controls. It deletes only the content control formatting, not the actual content of the section. Here are some todos: - Add test case for delete - undo/redo for this uno command Change-Id: Ib1b3b62ff7d62fd971472eff49a58c5afd786dc8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175927 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com> (cherry picked from commit 5d4ae3db293b0f9c46cbc09d0391806e1ed7b362) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176067 Tested-by: Jenkins Reviewed-by: vivek javiya <vivek.javiya@collabora.com>
2024-11-06cid#1556442 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1607753 COPY_INSTEAD_OF_MOVE cid#1554790 COPY_INSTEAD_OF_MOVE cid#1556463 COPY_INSTEAD_OF_MOVE cid#1554838 COPY_INSTEAD_OF_MOVE cid#1556231 COPY_INSTEAD_OF_MOVE cid#1556878 COPY_INSTEAD_OF_MOVE cid#1554913 COPY_INSTEAD_OF_MOVE cid#1558064 COPY_INSTEAD_OF_MOVE cid#1557043 COPY_INSTEAD_OF_MOVE cid#1556985 COPY_INSTEAD_OF_MOVE cid#1556766 COPY_INSTEAD_OF_MOVE cid#1557351 COPY_INSTEAD_OF_MOVE cid#1554863 COPY_INSTEAD_OF_MOVE cid#1556764 COPY_INSTEAD_OF_MOVE cid#1556279 COPY_INSTEAD_OF_MOVE cid#1555970 COPY_INSTEAD_OF_MOVE cid#1556942 COPY_INSTEAD_OF_MOVE cid#1557964 COPY_INSTEAD_OF_MOVE cid#1555166 COPY_INSTEAD_OF_MOVE cid#1556496 COPY_INSTEAD_OF_MOVE cid#1557175 COPY_INSTEAD_OF_MOVE cid#1558054 COPY_INSTEAD_OF_MOVE cid#1557392 COPY_INSTEAD_OF_MOVE cid#1557850 COPY_INSTEAD_OF_MOVE cid#1555118 COPY_INSTEAD_OF_MOVE cid#1557131 COPY_INSTEAD_OF_MOVE cid#1556614 COPY_INSTEAD_OF_MOVE cid#1609650 COPY_INSTEAD_OF_MOVE cid#1555114 COPY_INSTEAD_OF_MOVE cid#1555241 COPY_INSTEAD_OF_MOVE cid#1555442 COPY_INSTEAD_OF_MOVE cid#1556473 COPY_INSTEAD_OF_MOVE cid#1557654 COPY_INSTEAD_OF_MOVE cid#1554689 COPY_INSTEAD_OF_MOVE cid#1556316 COPY_INSTEAD_OF_MOVE cid#1557929 COPY_INSTEAD_OF_MOVE cid#1554807 COPY_INSTEAD_OF_MOVE cid#1554858 COPY_INSTEAD_OF_MOVE cid#1555103 COPY_INSTEAD_OF_MOVE cid#1555517 COPY_INSTEAD_OF_MOVE cid#1556424 COPY_INSTEAD_OF_MOVE cid#1557252 COPY_INSTEAD_OF_MOVE cid#1557566 COPY_INSTEAD_OF_MOVE cid#1608020 COPY_INSTEAD_OF_MOVE cid#1557742 COPY_INSTEAD_OF_MOVE cid#1555884 COPY_INSTEAD_OF_MOVE cid#1554809 COPY_INSTEAD_OF_MOVE cid#1555336 COPY_INSTEAD_OF_MOVE cid#1555173 COPY_INSTEAD_OF_MOVE cid#1556067 COPY_INSTEAD_OF_MOVE cid#1557040 COPY_INSTEAD_OF_MOVE cid#1556235 COPY_INSTEAD_OF_MOVE cid#1557366 COPY_INSTEAD_OF_MOVE cid#1555910 COPY_INSTEAD_OF_MOVE cid#1556716 COPY_INSTEAD_OF_MOVE cid#1558022 COPY_INSTEAD_OF_MOVE cid#1555769 COPY_INSTEAD_OF_MOVE cid#1555940 COPY_INSTEAD_OF_MOVE cid#1557077 COPY_INSTEAD_OF_MOVE cid#1555270 COPY_INSTEAD_OF_MOVE cid#1555660 COPY_INSTEAD_OF_MOVE cid#1556302 COPY_INSTEAD_OF_MOVE cid#1555678 COPY_INSTEAD_OF_MOVE cid#1556538 COPY_INSTEAD_OF_MOVE cid#1557689 COPY_INSTEAD_OF_MOVE cid#1555009 COPY_INSTEAD_OF_MOVE cid#1555433 COPY_INSTEAD_OF_MOVE cid#1555671 COPY_INSTEAD_OF_MOVE cid#1555255 COPY_INSTEAD_OF_MOVE cid#1557681 COPY_INSTEAD_OF_MOVE cid#1557512 COPY_INSTEAD_OF_MOVE cid#1554958 COPY_INSTEAD_OF_MOVE cid#1555758 COPY_INSTEAD_OF_MOVE cid#1555597 COPY_INSTEAD_OF_MOVE cid#1558040 COPY_INSTEAD_OF_MOVE cid#1556476 COPY_INSTEAD_OF_MOVE cid#1557646 COPY_INSTEAD_OF_MOVE cid#1557950 COPY_INSTEAD_OF_MOVE cid#1557019 COPY_INSTEAD_OF_MOVE cid#1557885 COPY_INSTEAD_OF_MOVE cid#1556402 COPY_INSTEAD_OF_MOVE cid#1557906 COPY_INSTEAD_OF_MOVE cid#1556619 COPY_INSTEAD_OF_MOVE cid#1554683 COPY_INSTEAD_OF_MOVE cid#1556549 COPY_INSTEAD_OF_MOVE cid#1554747 COPY_INSTEAD_OF_MOVE cid#1554929 COPY_INSTEAD_OF_MOVE cid#1555362 COPY_INSTEAD_OF_MOVE cid#1557053 COPY_INSTEAD_OF_MOVE cid#1557891 COPY_INSTEAD_OF_MOVE cid#1555043 COPY_INSTEAD_OF_MOVE cid#1555107 COPY_INSTEAD_OF_MOVE cid#1557203 COPY_INSTEAD_OF_MOVE cid#1556728 COPY_INSTEAD_OF_MOVE cid#1557773 COPY_INSTEAD_OF_MOVE cid#1556845 COPY_INSTEAD_OF_MOVE Change-Id: I001fb67e597b096e992fd8a0cd6f3ec577767c33 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176098 Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> Tested-by: Jenkins
2024-11-05Don't need to send both text and htmlCaolán McNamara
now that the other end can use html Change-Id: Idb7959b041ebbbd9284007594473019cf603981f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175166 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> (cherry picked from commit 9ed5dd5d1b48b9a17967d85c0fad4994c40caafa) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175998 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-11-04feat(lok): Add extra impress export formatsSkyler Grey
Previously we had the ability to export to various formats, but these weren't exposed in a way that LOK could request them. We want to increase the options available for export, so we need to make these available. Change-Id: I1c05aeec8de32929481059bcfd02cac05a46788d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174602 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> (cherry picked from commit 541272d3eaa322ccdd1b926add031a39faeccf49) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175981 Tested-by: Jenkins
2024-11-04new loplugin:staticconstexprNoel Grandin
Change-Id: Ida1996dfffa106bf95fd064e8191b8033b4002f3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175336 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-10-31convert KernArray from sal_Int32 to doubleNoel Grandin
which allows us to eliminate a bunch of rounding at various layers, and consequently maintain a lot more precision Change-Id: I911dedd7c041c1d67396c082e5695346ea689acb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175814 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-10-31Prevent 'Failed to dispatch .uno:None' messageAndras Timar
This was seen when checking grammar checker suggestion. When I click on the top element of the context menu of underlined text (e.g. Grammar error), I get warn:lok:1663798:1663791:desktop/source/lib/init.cxx:283: lok exception 'Failed to dispatch .uno:None' This .uno:None was introduced by Tamas Zolnai especially for LOK: 3616bb68f247735c46c1a4cd9568775e77be6441 His intention was to add an empty command that does nothing. Change-Id: I12a9a1e17dcf65cdd78266f44e6201ed3d5fa01f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175102 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com> (cherry picked from commit bdb0dd485da24a95b61df6136362ab189803bc27) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175845 Reviewed-by: Andras Timar <andras.timar@collabora.com> Tested-by: Jenkins