Commit graph

498730 commits

Author SHA1 Message Date
Andrea Gelmini
536d5f9be7 Fix typo
Change-Id: I7097a6bc16902814bcd27b7487f96952817c96f7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171936
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-08-16 10:37:55 +02:00
Michael Stahl
241111f35d libpagemaker: add missing include
Change-Id: I785a94c0e6afad93d5934b3e5546a8a7631cc62c
(cherry picked from commit 0786a5995c3c9903ea222243a7d5c4c2a1547fc8)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171917
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-08-16 10:30:20 +02:00
Michael Stahl
32cad89592 package: ZipPackage: add additional check for entries STORED with
... data descriptor; only allow it for encrypted ODF entries, which
requires reading the manifest first.

Change-Id: If36d31a4cb93e7af78f48be3ed899ad9d9bb28f0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171911
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-08-16 10:29:58 +02:00
Caolán McNamara
d9841ab378 cid#1606710 Overflowed constant
Change-Id: Ic1ed59ffa3d3dd8224e3eaaf2cf98db9fb920a6a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171928
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-16 09:30:49 +02:00
Caolán McNamara
c93eb54c87 cid#1557618 COPY_INSTEAD_OF_MOVE
and

cid#1557535 COPY_INSTEAD_OF_MOVE
cid#1557520 COPY_INSTEAD_OF_MOVE
cid#1557513 COPY_INSTEAD_OF_MOVE
cid#1557503 COPY_INSTEAD_OF_MOVE
cid#1557487 COPY_INSTEAD_OF_MOVE
cid#1557483 COPY_INSTEAD_OF_MOVE
cid#1557479 COPY_INSTEAD_OF_MOVE
cid#1557474 COPY_INSTEAD_OF_MOVE
cid#1557461 COPY_INSTEAD_OF_MOVE
cid#1557446 COPY_INSTEAD_OF_MOVE
cid#1557445 COPY_INSTEAD_OF_MOVE
cid#1557441 COPY_INSTEAD_OF_MOVE
cid#1557435 COPY_INSTEAD_OF_MOVE
cid#1557433 COPY_INSTEAD_OF_MOVE
cid#1557429 COPY_INSTEAD_OF_MOVE
cid#1557375 COPY_INSTEAD_OF_MOVE
cid#1557372 COPY_INSTEAD_OF_MOVE
cid#1557356 COPY_INSTEAD_OF_MOVE
cid#1557350 COPY_INSTEAD_OF_MOVE
cid#1557344 COPY_INSTEAD_OF_MOVE
cid#1557339 COPY_INSTEAD_OF_MOVE
cid#1557332 COPY_INSTEAD_OF_MOVE
cid#1557330 COPY_INSTEAD_OF_MOVE
cid#1557328 COPY_INSTEAD_OF_MOVE
cid#1557323 COPY_INSTEAD_OF_MOVE
cid#1557315 COPY_INSTEAD_OF_MOVE
cid#1557313 COPY_INSTEAD_OF_MOVE
cid#1557304 COPY_INSTEAD_OF_MOVE
cid#1557297 COPY_INSTEAD_OF_MOVE
cid#1557291 COPY_INSTEAD_OF_MOVE
cid#1557290 COPY_INSTEAD_OF_MOVE
cid#1557271 COPY_INSTEAD_OF_MOVE
cid#1557266 COPY_INSTEAD_OF_MOVE
cid#1557262 COPY_INSTEAD_OF_MOVE
cid#1557259 COPY_INSTEAD_OF_MOVE
cid#1557246 COPY_INSTEAD_OF_MOVE
cid#1557242 COPY_INSTEAD_OF_MOVE
cid#1557241 COPY_INSTEAD_OF_MOVE
cid#1557236 COPY_INSTEAD_OF_MOVE
cid#1557228 COPY_INSTEAD_OF_MOVE
cid#1557225 COPY_INSTEAD_OF_MOVE
cid#1557221 COPY_INSTEAD_OF_MOVE
cid#1557217 COPY_INSTEAD_OF_MOVE
cid#1557213 COPY_INSTEAD_OF_MOVE
cid#1557211 COPY_INSTEAD_OF_MOVE
cid#1557209 COPY_INSTEAD_OF_MOVE
cid#1557205 COPY_INSTEAD_OF_MOVE
cid#1557204 COPY_INSTEAD_OF_MOVE
cid#1557193 COPY_INSTEAD_OF_MOVE
cid#1556082 COPY_INSTEAD_OF_MOVE

Change-Id: I07f195a79a69d4bac0d14317854efc88d6fe94d7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171927
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-16 09:30:37 +02:00
Caolán McNamara
4551356827 cid#1615990 silence Overflowed integer argument
Change-Id: I37ff85c8d6363bd1e9fb1097dc107bca2ad73738
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171926
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-16 09:30:27 +02:00
Caolán McNamara
898594dc5d cid#1608509 silence Overflowed array index read
Change-Id: Ie42eb4de09968e5c21030936c693ad348c05bbdf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171925
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-16 09:30:08 +02:00
Caolán McNamara
0398e4ec1d cid#1607030 silence Overflowed integer argument
Change-Id: I90676cf47d7eef441cfabe5a77dfaf81986a1f89
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171924
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-16 09:29:51 +02:00
Caolán McNamara
06aaed0fd7 cid#1616498 COPY_INSTEAD_OF_MOVE
and

cid#1616499 COPY_INSTEAD_OF_MOVE

Change-Id: I21b089cab036902a7ba5b725a6eae0f1212f2b31
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171923
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-16 09:29:43 +02:00
Caolán McNamara
523465dbcc tidy up some unnecessary this use
Change-Id: I490817b99cb95dac216b89369e91ccb48c64f358
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171918
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-16 09:29:30 +02:00
Jim Raykowski
dd93375dce related tdf#63967: Ability to Quickly Get Word Count of Sections
Using Navigator

Adds word count information of headings outline content to the
headings content tooltip.

Change-Id: I31163d95139cdc1ef770591684e9cb585ed49a8f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171920
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2024-08-16 09:16:57 +02:00
Justin Luth
0a9da9e43c tdf#161741 tdf#161705 undo: delay ClearRedo until Undo finishes
I know NOTHING about the intricacies of Undo/Redo.
However, this is my feeble attempt to add some sanity to it.
It should not be the responsibility of the caller
to know when they are allowed to call ClearRedo.

This patch reverts commit 0cd000bb83
author  Daniel Arato (NISZ) on Mon May 10 15:41:28 2021 +0200
    tdf#141613 sw: avoid possible crash when undoing header creation
which was not a sufficient hack.

I hope this patch lays a better framework
to handle future similar issues.

vvv NAIVE OPTIMIST ALERT vvv

mbDoing was added with
commit 9cb53122e9
Author: Frank Schoenheit on Fri Oct 22 15:00:39 2010 +0200
    undoapi: more I/SfxUndoManager changes
    in preparation of new Undo API features

and has been untouched since then AFAICS,
and there was never any mechanism to change mbDoing.
In other words, it has been sitting there doing NOTHING.

So, I am taking it over and using it how I imagine it was intended,
and how it is documented.

Change-Id: I7aa355cc6458ac8ba34ddb9ee73fc850dcbca702
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170793
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-08-16 09:03:26 +02:00
Heiko Tietze
74d910231c Resolves tdf#161766 - WCAG 2.1 compliant luminance for isDark()
Alternative solution to I63b85694584cdc6213e7b904ed6402b6c2f2b422

Change-Id: Ifca47de30616295a9965b9313886456313921401
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171862
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Tested-by: Jenkins
2024-08-16 08:55:54 +02:00
Jonathan Clark
63fbb71f36 tdf#141466 sw: Fix incorrect output after editing Ruby base text
Previously, the Asian Phonetic Guide dialog could scramble base text
during editing due to incorrect handling of PaM after calling
ReplaceRange(). This issue has been fixed. The implementation has also
been modified to allow base text deletion.

Change-Id: I43350272359c7984459aea1604dae0d3f6428cac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171934
Tested-by: Jenkins
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
2024-08-16 05:02:08 +02:00
Noel Grandin
afe19beb79 tdf#158556 cache SwDocStyleSheet
so we dont keep creating it again. Shaves 3% off the load time.

Change-Id: Id67927f854d55769f76e56c6bc9a9e9bb05eea6c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171919
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-08-15 22:04:36 +02:00
Noel Grandin
bd0c2772f8 SfxScriptOrganizerItem should not subclass SfxStringItem
it never actually uses the superclass value. It has been this way since
initial import.

Change-Id: I99708c3ad8f1f2727ef87af56c62165d55f348d4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171904
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-08-15 21:04:48 +02:00
Michael Weghorn
2f6f717073 qt: Drop X11 condition for session/screensaver inhibition
The DBus based session/sreenlock inhibition work on Wayland
just fine, and in a quick test with the qt6 VCL plugin on
Plasma 5 Wayland on Debian testing, the screen saver is
inhibited as expected and doesn't start while an Impress
presentation is running.

The code in `QtFrame::StartPresentation` being
guarded by a `CHECK_ANY_QT_USING_X11` at first
looks like this was all X11-only code.
It already worked just fine on Wayland before
that commit however, as it's a build time check only,
and X11 is enabled by default at build time,
and the code would run just fine on Wayland then
with a null X11 Display.

Drop the `CHECK_ANY_QT_USING_X11` (build-time)
condition altogether, now that `USING_X11` is no more
required after

    Change-Id: Ic46c3f18151340a5ea6c0b62a82c957fd1cd6484
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Aug 15 10:13:27 2024 +0200

        vcl: Allow DBus-based session inhibition without requiring X11

Move the X11-specific code into the `#if CHECK_QT5_USING_X11` block
and call the overload that doesn't require an X11 Display otherwise.

Change-Id: Idee0564d136e59ce54945670dee26df0cfc64d85
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171896
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-08-15 20:36:42 +02:00
Michael Weghorn
445ab7c94c vcl: Allow DBus-based session inhibition without requiring X11
So far, building `SessionManagerInhibitor` code was
conditional on `USING_X11`.

Besides direct X11 API calls, it uses DBus calls to inhibit
lockscreen, power management, etc.

The DBus based ways don't depend on X11 at all.
Therefore, build the `SessionManagerInhibitor`code on
relevant platforms unless the GUI feature is disabled
altogether, and make only the X11 specific code conditional
on `USING_X11` in addition.

Move the non-X11 specific code from the existing
`SessionManagerInhibitor::inhibit` to a new overloaded
version that doesn't require an (X11) `Display` param.

This builds successfully in an
`--enable-gui --without-x` build.

Change-Id: Ic46c3f18151340a5ea6c0b62a82c957fd1cd6484
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171895
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-08-15 20:36:35 +02:00
Michael Weghorn
e8d59edf9d desktop: Fix '--enable-gui --without-x' build
The code in this block is X11-specific, so
make it conditional on `USING_X11`, not
`HAVE_FEATURE_UI`.

This fixes an `--enable-gui --without-x` build
that previously failed like this

    ld.lld: error: undefined symbol: XineramaQueryScreens
    >>> referenced by splashx.c:441 (desktop/unx/source/splashx.c:441)
    >>>               .../libreoffice/workdir/CObject/desktop/unx/source/splashx.o:(splash_init_display)
    [AIN] draw_brand
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    make[1]: *** [.../libreoffice/desktop/Executable_oosplash.mk:10: .../libreoffice/instdir/program/oosplash] Error 1
    make[1]: *** Waiting for unfinished jobs....
    make: *** [Makefile:296: build] Error 2

Change-Id: If02395d2461de4b6aac340898ce99583653d45c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171894
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-08-15 18:51:17 +02:00
Michael Weghorn
2a9f97a26f vcl: Drop MATE <= 1.10 session inhibit support
This was added in:

    commit 6857013101
    Author: Andrzej Hunt <andrzej@ahunt.org>
    Date:   Tue Oct 20 17:24:44 2015 +0200

        Add org.mate.SessionManager support

        This is valid for Mate <= 1.10
        (As of writing, 1.10 is the current stable release - so we'll have
         to keep shipping this for quite a few years to come.)

        Change-Id: I4d1f81c50923148e710eac22f5428b2a1c41f0e9

As the commit message and code comments say, MATE >= 1.12
also uses the "org.gnome.SessionManager" interface (which is still
supported), so drop the "org.mate.SessionManager" one only needed
for older versions.

MATE 1.12 was released on 2015-11-05, which is long enough ago
by now.

[1] https://mate-desktop.org/blog/2015-11-05-mate-1-12-released/

Change-Id: I062261c6396b35be1a0f452826f8ee2c545f4906
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171893
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-08-15 18:51:03 +02:00
Noel Grandin
16c9053fe5 tdf#158556 move m_vIndices to SwNode
When we load complex documents we end up with very large
amounts of SwNodeIndex objects, and we also need call
RemoveNode often, which means we end up scanning tons of objects.

So move the linked list from SwNodes to SwNode, so we can
scan just the objects that we are interested in.

Shaves 10% off the load time of a complex docx file.

Change-Id: Id62388dbc7e41fae30acb7910a982710c80e563e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171888
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2024-08-15 18:49:12 +02:00
Pranam Lashkari
bdd06e255c tdf#162475 sc: now conditions can be edited from easy conditional format dialog
now when a conditional format entry is edited,
instead of editing entry in the same format,
we delete entry from the origianal format and create
a new format with modified entry alone.

This way it easier to manage formats, and it also aligns
with implementation of how format manager adds new
format condition(it adds new format for each condition instead
of adding new entry to existing format)

Change-Id: Iaa92292ca67eaf90374d2af44d2402f9ebe29787
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169537
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170915
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
2024-08-15 18:40:21 +02:00
Jean-Pierre Ledure
fcd18913d5 ScriptForge (SF_Calc) Typos
Comments needed to be made compliant with code
in relation to Calc sheet limits.

Change-Id: I67962540e484ab1d51bc79f8ee7e7a73f9f25a2b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171872
Tested-by: Jenkins
Reviewed-by: Jean-Pierre Ledure <jp@ledure.be>
2024-08-15 18:04:28 +02:00
Stephan Bergmann
e952204b40 Emscripten: Establish a channel between browser and LO main threads
...to be used by external code, to mitigate the issue mentioned in the commit
message of cccc983eb3 "Emscripten: Run external
code on LO's main thread":  "Alternatively, running external code on the
browser's main thread rather than on LO's main thread could be more ideal in the
sense that the external code would then have access to the browser's document
object."

On the browser main thread, external JS code can now await a Module.uno_main
Promise that provides one port of a MessageChannel.  And on the LO main thread,
external JS code has access to the other port of that MessageChannel as
Module.uno_mainPort.  (And the external code is completely free in what
onmessage handlers to set up and what form of postMessage calls to use on those
two MessagePorts.)

Change-Id: Iab6bc7676c744eacb70ddd9f3f80f64e9efd1cf1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171907
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
2024-08-15 17:16:27 +02:00
Pranam Lashkari
f684f284de fixed tdf#162471: display comment time in ods if available
Change-Id: I2fe2621458608a2bf6c382397ec5acdaeffe3748
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171774
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-15 17:14:21 +02:00
Mike Kaganski
2ca75d4133 Fix the test failing when invalid certificate is in cert store
testPDFAddVisibleSignature was failing for me locally because of
an expired certificate present in my store.

Change-Id: I03243f6707b1b5ca94ea87e9f8c809dd47b6a93a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171901
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-08-15 16:24:15 +02:00
Mike Kaganski
1faf465896 Add asserts to a unit test
It helped me to easily see which unit test failed, when working on
another change, instead of seeing a segfault

Change-Id: Id0345f508eac3c60265cd62b8aa20d895c3a1d01
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171897
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2024-08-15 16:24:01 +02:00
Noel Grandin
58f45fdf19 make SfxStringItem hashable
which shaves some time off loading complex files.

Note that this class is often used as a superclass, so I checked all of
the subclasses and marked some of them as "does not support hashing"
until they can be independently verified to be safe

Change-Id: Id4187eda8d6145e89e17dc10c2e3113b7a93da85
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171891
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-08-15 16:07:17 +02:00
Noel Grandin
fb282d552f merge CntUnencodedStringItem into SfxStringItem
which simplifies the hierarhcy.
We never allocate such a thing, we always allocate subclasses, and it
has no real meaning by itself.

Change-Id: Ie6b716c9ea6ca0efe0ae4f39ac345608c45534f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171890
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-08-15 16:07:05 +02:00
Armin Le Grand (Collabora)
6ab0c616d7 CairoSDPR: Add outline to direct text rendering
Change-Id: I8c8820066a402653bf0f49bd78a98be692530e42
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171892
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-08-15 16:05:41 +02:00
Mike Kaganski
0e4266dd90 Use MacrosTest::IsValid to check certificates
Change-Id: I015fae42cf95ab7ff4f384b17f6ac4994d4c81ad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171902
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2024-08-15 15:46:13 +02:00
Mike Kaganski
cd740ff560 tdf#162480: Make sure to use correct anchor point for text box creation
In the ODF import, when importing a table, initially a placeholder 1x1
table is created. When this is done from SwView::InsertMedium, frames
are created for the table and its single cell at that stage. Then the
actual table nodes are created, but frames are not created in parallel,
until the table import is finished.

Importing a text box, it used to be created anchored at the end of the
document, and then the anchor was moved to the correct place.

When a text box was anchored to a cell, the process was like this: the
text content was inserted in the last paragraph outside of the current
table;  and then it was moved to the current cell.  When this was done
from  SwView::InsertMedium,  creation of the text content also created
the frame; then the movement fired client notifications, including the
SwFlyAtContentFrame::SwClientNotify,  which needs the new anchor frame.
With cell other than A1, there was no frames for the new anchor in the
table, and that crashed.

This change inserts the text content into the correct place from start,
which avoids the need to move the anchor later.

Co-authored-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I9dd3a2c5527f3c2dd860244456c617558943453a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171898
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2024-08-15 15:00:28 +02:00
Miklos Vajna
41aec3e9a0 Related: cool#9735 sw lok: handle the AnyInput() callback during idle layout
Open the 300 pages bugdoc, paste a oneliner plain text content in a
paragraph which is part of a numbered list, observe a 274 ms hang till
layout is done for all pages, then we get an updated tile.

We already do the layout in two passes: once for the visible area and
then an idle pass for the rest of the pages. But we didn't notice that
the LOK client has pending input events, so the list of events were like
this:
debug:20492:20486: SwTransferable::PasteData: finished in 5 ms
debug:20492:20486: SwLayAction::InternalAction: finished in 273 ms
debug:20492:20486: SwViewShell::PaintTile

With this patch, the order of evens is rather like:
debug:7541:7535: SwTransferable::PasteData: finished in 4 ms
debug:7541:7535: SwViewShell::PaintTile
debug:7541:7535: SwLayAction::InternalAction: finished in 261 ms

Which means that once a LOK client opts in to provide an any input
callback, the end-to-end time from the paste uno command dispatch to
receiving the first tile update decreases from 963 ms to 14 ms.

Change-Id: Ia9e734f84121b7d87150cb3479fc265ca8ee0292
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171885
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2024-08-15 14:55:51 +02:00
Pranam Lashkari
8090d7a54f tdf#162475 sc: display all the conditions of same ranges in conditional format manager
Change-Id: I775f96f4cea19e8da34c2d64ac601e5ea3fc5c43
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169482
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170914
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-15 14:53:59 +02:00
Pranam Lashkari
367c2319a8 tdf#162475 sc: preview style in easy format dialog
Change-Id: If9c96129daefd5100b4211c9b3b07953b603166d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169483
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170913
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-15 14:53:48 +02:00
Andrea Gelmini
cc9fbb8a5f Fix typo
Change-Id: Ib6cd9cceb41e7b741907cbdc05fe485004568ea7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171903
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2024-08-15 14:17:34 +02:00
Heiko Tietze
836abb5b36 Resolves tdf#162450 - Hide sidebar tab button
Change-Id: I568976e2f6c8ca03f1aeea35d7607fdd5ea53649
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171887
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2024-08-15 13:43:43 +02:00
Miklos Vajna
0cde8913d8 Update pdfium to 6656
Drop external/pdfium/annot.patch.1, it has been upstreamed as
<https://pdfium-review.googlesource.com/c/pdfium/+/120750>.

Update PDFiumPageObjectImpl::getFontName() to match
<https://pdfium-review.googlesource.com/c/pdfium/+/121911> "Rename
FPDFFont_GetFontName() to FPDFFont_GetFamilyName()".

Extend external/pdfium/build.patch.1 to work around:

> C:/cygwin/home/tdf/jenkins/workspace/gerrit_windows/workdir/UnpackedTarball/pdfium/fpdfsdk/fpdf_annot.cpp(1083): fatal error C1001: Internal compiler error.

Change-Id: I94ed21265a79d484759f240f3baeb51c92365c78
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171884
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2024-08-15 13:19:48 +02:00
Pranam Lashkari
1e29baa755 sc: now formula conditions can be managed from condition format manager
Change-Id: I52cab33f5486c835dd13720eff93b497331561ff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169536
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170912
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
2024-08-15 12:44:11 +02:00
Pranam Lashkari
723e035e1f tdf#162475 sc: added date condition option in conditional format manage dialog
Change-Id: I453b4ef47bed1607f42fbb3e48303531c6f355a3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169323
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170911
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
2024-08-15 12:42:24 +02:00
Pranam Lashkari
20350c7f10 sc: tdf#162475 manage conditional format with simpler dialog
now we can add new conitions for formating from manage conditional formating dialog

Change-Id: I69660f108068a64e66301d62a61c485c81e8b97b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169322
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170910
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-15 12:28:10 +02:00
Mike Kaganski
f8da93d33d Simplify a bit
Change-Id: I05a8aa354b68331712768b1d696736d69ce8dacb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171775
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2024-08-15 11:51:05 +02:00
Skyler Grey
9f47fe2bfd feat(invert): Allow specifying a theme
In Online, we previously weren't able to specify what we wanted the
theme to be after an invert. This led to the theme being "whatever the
*last* person toggled it to" rather than "whatever isn't our current
theme"

This commit also lays the groundwork for loading the same invert theme
after a reload/rejoin/new doc in Online

There is a change to online to support this here:
https://github.com/CollaboraOnline/online/pull/9652

Change-Id: I05486860c5f562c3cfa59b4a7fc492d48913a181
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171889
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2024-08-15 11:50:33 +02:00
Justin Luth
da249b2c38 tdf#162211 writerfilter: don't discard layoutInCell
I DON'T KNOW IF I REALLY WANT TO SUBMIT THIS PATCH.
I'VE ALREADY DECIDED IT IS BEST TO CHANGE THE IMPORT
TO MATCH REALITY, AND KILLING layoutInCell
CERTAINLY DOES THAT.
The Ok button on the UI is the real convincer...
although one unit test had beneficial side effects.

It is very tempting to turn off "layoutInCell".
After all, MSO has rather bizarre exceptions to the rule,
and the whole concept in general is competely unnecessary
(except to fix their horrible initial implementations).

But by discarding layoutInCell,
we are going in the opposite direction
of Microsoft, who in compat15 (2013+),
treats layoutInCell as true
regardless of whether it is set to on or off.

However, there still is one downside to preserving layoutInCell.
In LO's UI, when looking at the properties,
it will change the values to enforce layoutInCell,
so pressing OK will shift an outlying shape.

shape - FRAME/FRAME
-fdo68607.docx [same]
-test_segfault_while_save.docx [zOrder is fixed somehow]
-layout-in-cell-wrapnone-column.docx [same]

make CppunitTest_sw_writerfilter_dmapper \
    CPPUNIT_TEST_NAME=testLayoutInCellWrapnoneColumn

Change-Id: I6d66cb2f14507847e346443d42879a60025bc9d5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171437
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2024-08-15 09:00:52 +02:00
Samuel Mehrbrodt
ac73760cc5 tdf#134791 Back to fixed size, but increase it a bit
Turns out the approach implemented in 058f1d1b52
doesn't work out when a smaller tab page is activated at first,
since only the first tab page will define the dialog size.

Change-Id: I1201a0e9174c842d4c023e8438763d6d538d3036
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171755
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2024-08-15 08:49:04 +02:00
Tomaž Vajngerl
df19cc6cdd vcl: add "fillWithData" function to BitmapTools - used in lok
Change-Id: Ia143a39d2285bbdebf7fcfe709b0c6418d35585c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171589
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Jenkins
2024-08-15 08:09:55 +02:00
Jonathan Clark
dda85e275d tdf#156211 sw: Fix spurious kashida inserted after undo
This change fixes an issue presenting as incorrectly-positioned kashida
glyphs overlapping Arabic text after certain edit operations.

During layout with kashida justification, Writer builds a table of lines
that require fallback to whitespace justification. Normally, this table
is built sequentially from the first line, but it may be updated
out-of-order following certain edit operations.

Due to an off-by-one error, if Writer cleared the exclusion for a line
immediately before a legitimately-excluded line, Writer would also clear
the legitimate exclusion. In such a situation, portions of excluded text
would be redrawn with kashida justification, and because that text
usually does not have enough free space, the kashida glyphs would be
drawn on top of the base text.

Change-Id: I204661286531fa6064f7a6adc35f1606e35e5d39
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171878
Tested-by: Jenkins
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
2024-08-15 00:31:07 +02:00
Adam Seskunas
fe7b39884c tdf#160301 - Add Unit test
Change-Id: Icfd8aa7066ea837103a332c3b61950574b7799fa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171840
Tested-by: Jenkins
Reviewed-by: Hossein <hossein@libreoffice.org>
2024-08-14 23:50:52 +02:00
Ashok
272b30f8fa Simplify initialization of font name vector in vcldemo
Replace the classic For loop with vector initializers.

Change-Id: I60ee577ef395127e99148a32e02009e0cc1c1d51
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171568
Reviewed-by: Hossein <hossein@libreoffice.org>
Tested-by: Hossein <hossein@libreoffice.org>
Tested-by: Jenkins
2024-08-14 23:42:49 +02:00
Caolán McNamara
b497f99fd2 cid#1557718 COPY_INSTEAD_OF_MOVE
Change-Id: Ib81c9afd8d7fdc76d8d23818b50316b46ccb3f03
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171871
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-08-14 22:22:09 +02:00