Age | Commit message (Collapse) | Author |
|
Change-Id: Ifa67ab7198f5d3b06171869f57703acdaa959f7d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135128
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I1ff31ae1291a82630ae32185077e369bbdfd3a0b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135127
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
make an owner for the PropertyMapEntries
Change-Id: Ie915a8a312f2b24488566814ad67fdeef89b5941
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135123
Tested-by: Jenkins
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
As reported by Julien, once the mediawiki extension is installed, the
xHandler in framework::DispatchProvider::implts_searchProtocolHandler()
points to an UNO component implemented in Java, and we crash in
dynamic_cast<>(), at least on Linux with gcc 7.5 and libstdc++.
This dynamic_cast<>() call was added in commit
c0fa456436947a5c167c652d19a884064b43c03d (tdf#149261 sdext: fix crash on
starting the presenter console for the 2nd time, 2022-05-26), to allow
the presenter console to opt out from protocol handler caching. It was
expected that the proxy object created for a Java UNO component would
simply return nullptr when we try to dynamic_cast<>() it down to a C++
interface.
Fix the problem by moving the interface to an UNO one: this side-steps
the dynamic_cast<>() crash at the price of introducing an UNO interface,
which is not meant to be part of the public UNO API (but at least it's
not published).
It may still make sense to improve the bridges/ code at some stage to
not crash in dynamic_cast<>() on generated Java proxy objects.
Change-Id: Iaac44515339e0dc15dddc3be45ef7dee7331e47a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135114
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
if there is a max/min set.
Change-Id: I2dc7ccccad9ec2aa7eb89d8b5fa137e077a846fd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135105
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
...introducing o3tl::cmp_equal etc. implementing C++23 std::cmp_equal etc., plus
an o3tl::IntCmp wrapper around it for convenient operator syntax
Change-Id: I1d2e0d1aef99c531039fb83de31ed8e6036fde03
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135095
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
and save some copying
Change-Id: I34cbc2edfd53fcc440d1765dba471fcbb05b2b7b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135088
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
avoiding creation of temporary OString instances
Change-Id: I27b4cb59b48b3ba40311a1f935a20250c8317d00
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135093
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...and simplify the remaining code using the (now const) nCacheSize
Change-Id: I4468cf223c158a318ba56ba63f5f60121c94f42d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134879
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
(*) we can move the data rather than copying
(*) it should definitely not be const
(*) we can use STL functions to do most of the work
Change-Id: I02b4cbbdeed0588d592f24942d31608f2119561c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135083
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
to speed up operations when iterating over SfxItemSets
Change-Id: Ie40327ffaf7faa801ccc12d2b05c546a7fe49802
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135079
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
in preparation for passing a hint into it
Change-Id: Id9e5516619a314406d8250bb2145996593dafbaf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135078
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
to speed up GetItemState while iterating
Change-Id: Ibe092e7581a5be0160eed52472122afe7e0ef377
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135076
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
by having SfxWhichIter track the current position in
the m_ppItems table, which means GetItemState does
not need to traverse the ranges table to find the
item position.
shaves 75% off the time of
./instdir/program/soffice.bin --calc --convert-to pdf
~/Downloads/ofz24932-1.rtf
Change-Id: Ib5fe61c75ca05bc2f1932e84b57ccfa55f8b7f74
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135023
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Locale dependent code path resulted broken hyperlinks
on shapes in a non-English build.
Change-Id: I045bbe4246ab5336e2b967bf252b5fbca5b17706
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134266
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
Change-Id: I1ec34b2f0e9869a82894795f1d6351189ae92d9b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135043
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I0357c7e3f5ae1d0a560057ac756b1118917a5e11
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135038
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ib6ff202f5556f3342fb4e60de7e16b5107669319
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135037
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Add paragraph property to disable automatic hyphenation of short
words based on a minimum character count.
Note: there is a (broken) global option for Minimum Word Length
at hyphenation, see "Minimal number of characters for hyphenation"
in Tools->Options->Language Settings->Writing Aids), but
for better/comfortable paragraph-level adjustment of typesetting,
add a paragraph property for it. The same option is available e.g.
in Adobe InDesign and in CSS Text Module Level 4 (hyphenate-limit-chars).
* Add checkbox to Text Flow in paragraph dialog
* Store property in paragraph model (com::sun::star::style::ParagraphProperties::ParaHyphenationMinWordLength)
* Add ODF import/export
* Add ODF unit test
* Add layout test
Follow-up to commit 8c018910ae4d8701b1ce2a95727b9baed4016da3
"tdf#149248 sw offapi xmloff: add option to not hyphenate last word".
Change-Id: I68715f47d17b5c022430bd0e74c88a97bc7f81f9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135028
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
Add option to disable automatic hyphenation of the last word of
paragraphs for better typography.
Note: the same option used e.g. in Adobe InDesign, and a
similar one in CSS Text Module Level 4 (hyphenate-limit-last).
* Add checkbox to Text Flow in paragraph dialog
* Store property in paragraph model (com::sun::star::style::ParagraphProperties::ParaHyphenationNoLastWord)
* Add ODF import/export
* Add ODF unit test
* Add layout test
Follow-up to commit 72bd0df107ee47c4d54fa88b4960d32ea03e9f69
"tdf#121658 Add option to not hyphenate words in CAPS".
Change-Id: Ida29c65b5a7cbfd7c399c342781531a6fb86f639
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134985
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
This started with commit 3f768cddd28a2f04eb1ffa30bed4474deb6fbfc4
(framework: avoid re-creating protocol handler instances all the time,
2022-05-02). In case there are 2 monitors, then one monitor shows the
slideshow, the other shows the presenter console. The presenter
console's protocol handler in
sdext::presenter::PresenterProtocolHandler::Dispatch::Dispatch() has
mpPresenterController->GetWindowManager() as an empty reference on the
2nd time the presentation starts.
The above commit started to cache protocol handler instances at a frame
level for performance reasons, and this is meant to be safe in general,
but the presenter console's window manager is re-created between
slideshow runs, so it depends on framework/ code to re-create the
protocol handler all the time, which is problematic here.
Fix the problem by introducing a framework::CacheInfo interface that
allows protocol handler implementations to signal if they want to avoid
being cached.
This should be good enough for now, but if later it turns out that there
are too many broken protocol handlers out there, then we can consider
flipping the default and only cache handlers which explicitly opt in for
this behavior. This is not done in this commit.
Change-Id: Ic159813b1b339540bc8c4e780c4d6d7d2d4d2445
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135020
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
which speeds up some searching in the pool
Change-Id: I9fe7da50b4d803010c88702d8cd03c3380e7cc0d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134992
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Map the Date, DateFormat and DateLanguage UNO properties to:
<loext:content-control loext:date="..." loext:date-format="..." loext:date-rfc-language-tag="...">
And do the opposite on import.
Change-Id: I16d3f755d77ed20380d877ba65dfe6d063f2bec2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134977
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: I29074d801eaef57f160ce14b943b21831b327ecf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134979
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
without the overhead of the UNO service engine
Change-Id: I4a02fda2b3c92a897634374bf72cfffee4f531f8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134923
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Idcb296980ea498373a0fb4f8c0c584eef2c5c9f7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134922
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
so we can skip some allocation.
Use a std::variant to preserve existing functionality
Change-Id: If01ebb04f7895fd52fa3f5d90648868fd38dc39e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134929
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Moved and isolated IDiagramHelper to own file to get SdrObjGroup smaller
and less dependent again, all places adapted. isDiagram() now available
at SdrObject directly, adapted and have less places which need to cast
for SdrObjGroup for check.
Started to add SdrHdl/selection visualization to seleced Diagram. Only
as a start, will need to be extended to look good/better, plus evtl.
functionality in handles/UI.
Corrected error(s) found by failing UnitTests
More clang-notes (static, namespace) I nneeded to follow
Change-Id: If4675b3270d3ee30259fce49deb017dbbaf5c0c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134825
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
I accidently almost introduced some subtle sytactic error in Qt,
because the default platform and toolkit values are actually valid.
So add an Invalid value to both enum classes and then sprinkle
some asserts, so these tests aren't working on invalid data.
Thanks Michael Weghorn for catching this in review.
Change-Id: Ic6a0764dfc5168181251023f4d1c66ffa32651d8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134882
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
Document theme of Impress documents were exported to PPTX only
partially: dk1 and lt1 was hardcoded to the SYS_COLOR_SCHEMES define,
while the rest was written from master-slide-specific svx::Theme.
The benefit of this is that our theme is just a set of colors
(<a:srgbClr> markup in OOXML), while dk1 and lt1 is more dynamic by
default in PowerPoint (<a:sysClr> in OOXML). The downside is that this
way a custom dk1 and lt1 color was lost on export.
Fix the problem by switching to <a:srgbClr> markup even for dk1 and lt1:
not using the <a:sysClr> markup doesn't seem to be a problem in
practice, or at least much less problematic than rendering with bad
colors.
If there is a need, dedicated <a:sysClr> markup support can be still
added later by extending svx::ColorSet::maColors to not only store a
list of colors, but also some additional properties of those colors.
Change-Id: I26df3fd8c891c217df0d36382f6599805198f4bc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134883
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
we need thread-safety here (even though we use a mutex), because we use
a singleton, and the singleton can be ref-counted when the
OInterfaceContainerHelper4 is deleted, and is generallly not held at
that point, and that is tricky to enforce.
Change-Id: I1d61495786d5f0e18deae724b2eb6c6645feb51a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134872
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
no need to store the key twice. Also rename related fields and typedefs
to make the code easier to read.
Change-Id: Ib76dea7fd683d024e8c9d8091d85cfec14829359
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134871
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
(*) use o3tl::span for the array param, which means we don't need a null
entry to terminate the array
(*) use std::unordered_map to speed things up
(*) mark the array as static at a few more call sites
Change-Id: I05b6cae7552f44459e183ec05cb94e60edb3bfe0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134832
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
to reduce pointer chasing
Change-Id: I8d581c03f80fa279a93ed23b7116c6f950405b7a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134857
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
- send a LOK_CALLBACK_CONTENT_CONTROL callback with
action=change-picture when a file picker should be shown
- extend lok::Document::sendContentControlEvent() to be able to replace
the placeholder with the selected URL
- update gtktiledviewer to work with these
Change-Id: Ifb3750803885fc09fc82905b0cf85b2b8ca06e77
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134750
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: I9a2ef4370136b0f26ae3590f358025e7d89f30d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134757
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I1fa061f9713c808bd06933ae9c574e70a1ec0915
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134721
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
tooltip
Change-Id: Ia0d48ac437c6a18c4e1624dd9b154ee7a8514f1c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134594
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
|
|
Change-Id: Ib6e1b6182d83b09dbf5e2aeb9cf3e4ca11d9f48b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134712
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
With this callback the lok clients can read and draw the print ranges on
each sheet of the Calc document.
Conflicts:
include/LibreOfficeKit/LibreOfficeKitEnums.h
libreofficekit/source/gtk/lokdocview.cxx
Change-Id: Ie19351d4420e0f3d4191f6a354ce99ab830aede2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134375
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Pranam Lashkari <lpranam@collabora.com>
(cherry picked from commit 172bc7a8f4eeab907adac077407186fbbd046a77)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134527
Reviewed-by: Gökay ŞATIR <gokaysatir@collabora.com>
(cherry picked from commit 29b7b25d454e0a6cd07c00e13fdb83cc8a381583)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134614
Tested-by: Jenkins
Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
|
|
which requires a version of replaceAt for OUStringBuffer, which I'll put
in comphelper::string:: for now
Change-Id: I70b319b018e29a7dac26965dd92f6c4f9ea470ec
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134679
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
uno_any_destruct will get called by the other Any anyway, so no need to
do it ourselves.
And inline the helper now, since it is only used in the one spot.
Change-Id: If4227ce7e9d8ef83e3440ac1d9fe2579ed3583e2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134597
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Use a natural string sort for all strings in the object inspector
tree view. This is more useful for properties as those can have
indices, which are shown as numbers, so having them in natural
order makes the tree view easier to digest.
Change-Id: I7d036cd755f6595fa302c7a28a005684897f2963
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134541
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: Idcb075a474b440447b8566cc92a8f65bbc77127c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134643
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
similarly to ByteReader
move both of them down to comphelper, since we want to use it from
comphelper, and comphelper is "below" unotools in the module dependency
graph
Change-Id: Ic98fa2268e125fd8e4378fb899ad5f97de721713
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134645
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Apparently it happens when loading a 0-byte file that the
SfxObjectShell is still in IsLoading() stage when close() is called.
This then causes the SfxEventHintId::LoadFinished event to be emitted
during close(), which is not a situation the assert was intended for.
Change-Id: I60a260ca1c1e6cbf9502832ba6622de2628763e7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134610
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
Map Picture UNO property on content controls to:
<loext:content-control loext:picture="...">
And do the opposite on import.
Change-Id: I47c3d04c505ba94da958d5d6b6b2c883236afc3d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134595
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
after
commit 343eed477ee7b55aa450bbc2aee6786dc0d9a071
clang-tidy modernize-pass-by-value in o3tl
Change-Id: I1800c0ba63abb0862b8c9aef185ebdf416245f3e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134602
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I2916610e08c3157e0438ec90592fb5b8f921cc24
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134574
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
Tested-by: Jenkins
|
|
Linked media file was imported with incorrect image,
if the Impress couldn't play the media file.
Regression from commit 9564747d2fd5d2c859a359dd7fa6242c6859c0d7
(tdf#53970 PPTX: fix import of linked media files).
Change-Id: Ib277a61e83c3794376d2c090b7f742707e779832
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134394
Tested-by: Jenkins
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|