Age | Commit message (Collapse) | Author |
|
Change-Id: Ia765a03e033acb82e367873380d289587ea87d6c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167449
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
|
|
Change-Id: I5b6ee5bda0c5ff69d297f7f8e87d4c3f3d21791c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167470
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
|
|
Change-Id: I6306260d03c1208ec250c2f9a3860fa569f6d9c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167448
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Similar to commit ae132145ff42a95dc24fb124847c04af4b8c8dab, also forward
IsVisible() and IsPrintable() from SdrVirtObj to its real object;
evidently the properties aren't copied when creating SdrVirtObj but
there is no reason for that to have these properties independent.
This triggers an assert in VOCOfDrawVirtObj::createPrimitive2DSequence()
because that is called during layout from getObjectRange(); the assert
was added in commit ae3ec0d53a22ae5d2b7fb244a6056d0627b71873 and
intended for painting, but this isn't painting, and it's not easily
possible to detect if the function is called during painting, so remove
the assert.
Change-Id: Id2a04a5d07f43b86eb9c524b30ba74ecaf6a95c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167350
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Tested-by: Jenkins
|
|
Add new function called RANDARRAY to the function list.
(TODO: dynamic array in separate patch, oasis proposal)
Change-Id: I34bad3b7e8d631d649a0350d7c1170b26161331d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167003
Tested-by: Jenkins
Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
|
|
Seeing as since:
commit e9531b792ddf0cfc2db11713b574c5fc7ae09e2c
Date: Tue Feb 6 14:39:47 2024 +0100
sal: rtlRandomPool: require OS random device, abort if not present
Both rtl_random_createPool() and rtl_random_getBytes() first try to get
random data from the OS, via /dev/urandom or rand_s() (documented to
call RtlGenRandom(), see [1]).
we don't use the initial arg to rtl_random_getBytes anymore, drop the
requirement to have one. Then simplify our usages of that, and
addtionally deprecate rtl_random_createPool and rtl_random_destroyPool.
Change-Id: I13dcc067714a8a741a4e8f2bfcf2006373f832c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167067
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Allow the user to start the presentation at a specific slide
using command-line parameters.
This patch depends on the previous variable renaming patch.
Change-Id: I87797cbccb463904e5d2fe9b078e3921be27c91a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167066
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
FillStyle is directly updated to prevent deferred resize
when additional controls are created.
Change-Id: I48ed987971cf6c711af31d552e8d64fa9982a416
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165993
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
Also avoid std::random_device it doesn't work in a COOL
kit process.
Change-Id: Ie2d063611a73e734afd92d6fd779f34a2f316230
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167070
Tested-by: Jenkins
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
|
|
Change-Id: I2df519a73f283c3a74353222826e82beaa98f017
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166194
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Tested-by: Jenkins
Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
|
|
Similar to how the previous
Change-Id: I00e62016ced2fbb8796960671f5e58a3ceac4b29
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Mon May 6 14:44:36 2024 +0200
tdf#160806 tdf#160837 gtk3 a11y: Drop handling of some VclEventIds
dropped handling for `VclEventId::WindowGetFocus`
and `VclEventId::ObjectDying` in the gtk3 a11y bridge,
do the same for `VclEventId::ToolboxButtonStateChanged`.
And drop `VclEventId::ObjectDying` completely, as the
gtk3 a11y bridge was the only place processing it.
That event and the handling had been introduced in
commit 3b40f502341272e989ae5266a1f8a03f2736449b
Author: Ivo Hinkelmann <ihi@openoffice.org>
Date: Tue Feb 5 11:30:51 2008 +0000
INTEGRATION: CWS fwk83_SRC680 (1.7.186); FILE MERGED
2008/01/30 12:40:39 obr 1.7.186.2: fix for fedora tinderbox (64bit)
2008/01/15 23:49:28 obr 1.7.186.1: #i70872# create wrapper for toolbox items that change state
commit a1cbbd113da4ce3d5342d9ae5ff1c8d2137aa59c
Author: Ivo Hinkelmann <ihi@openoffice.org>
Date: Tue Feb 5 11:30:25 2008 +0000
INTEGRATION: CWS fwk83_SRC680 (1.51.160); FILE MERGED
2008/01/14 14:35:26 cd 1.51.160.1: #i70872# Added VCLEVENT_TOOLBOX_BUTTONCHANGED to notify accessibility implementation that an action happens to a toolbox button
commit 3f1afd178875babe7ab79d22ab260221665bfb3f
Author: Ivo Hinkelmann <ihi@openoffice.org>
Date: Tue Feb 5 11:29:57 2008 +0000
INTEGRATION: CWS fwk83_SRC680 (1.2.262); FILE MERGED
2008/01/14 14:35:26 cd 1.2.262.1: #i70872# Added VCLEVENT_TOOLBOX_BUTTONCHANGED to notify accessibility implementation that an action happens to a toolbox button
to ensure that an a11y object is created for toolbar
buttons whose state changes, so that the corresponding
a11y events are forwarded to the platform layer, see
the referenced OOo bug #i70872# [1] for more details.
This seems to be no longer necessary.
By now, at least the scenario of toggling the
bold/italics/underline status of text is
announced just fine by Orca 46.1-1 on Debian
testing with this change in place.
(FWIW, tdf#123864 and the corresponding commits are more
recent tickets/commits related to the topic.)
Like for the above-mentioned change,
dropping that handling addresses another case where the
work window/root pane's a11y object when walking up
the a11y hierarchy would be problematic, as it doesn't
take into account the GtkWidget hierarchy.
Sample backtrace of how the "problematic" a11y object
was created (frame 1 below is the one where the a11y object
with role root pane is created.)
1 atk_object_wrapper_new atkwrapper.cxx 983 0x7f620365672b
2 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0
3 atk_object_wrapper_new atkwrapper.cxx 1000 0x7f6203656952
4 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0
5 atk_object_wrapper_new atkwrapper.cxx 1000 0x7f6203656952
6 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0
7 atk_object_wrapper_new atkwrapper.cxx 1000 0x7f6203656952
8 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0
9 create_wrapper_for_child atkutil.cxx 359 0x7f620364c740
10 handle_toolbox_buttonchange atkutil.cxx 376 0x7f620364c1ef
11 WindowEventHandler atkutil.cxx 438 0x7f620364bd7f
12 Link<VclSimpleEvent&, void>::Call link.hxx 111 0x7f620dfd4ef8
13 VclEventListeners::Call vclevent.cxx 46 0x7f620dfd3f1a
14 Application::ImplCallEventListeners svapp.cxx 725 0x7f620df96b0d
15 vcl::Window::CallEventListeners event.cxx 225 0x7f620d59f6ee
16 ToolBox::SetItemState toolbox2.cxx 1197 0x7f620d6afd81
17 ToolBox::CheckItem toolbox.hxx 515 0x7f6214502c53
18 (anonymous namespace)::PopupMenuToolbarController::statusChanged popuptoolbarcontroller.cxx 180 0x7f621454205d
19 (anonymous namespace)::GenericPopupToolbarController::statusChanged popuptoolbarcontroller.cxx 373 0x7f6214540855
20 SfxDispatchController_Impl::addStatusListener unoctitm.cxx 797 0x7f6213090e95
21 SfxOfficeDispatch::addStatusListener unoctitm.cxx 279 0x7f6213090ade
22 svt::ToolboxController::bindListener toolboxcontroller.cxx 558 0x7f620fe9fbce
23 svt::ToolboxController::update toolboxcontroller.cxx 235 0x7f620fe9f207
24 framework::ToolBarManager::UpdateControllers toolbarmanager.cxx 726 0x7f62145b0f25
25 framework::ToolBarManager::AsyncUpdateControllersHdl toolbarmanager.cxx 2291 0x7f62145bdbfc
26 framework::ToolBarManager::LinkStubAsyncUpdateControllersHdl toolbarmanager.cxx 2278 0x7f62145aff9d
27 Link<Timer *, void>::Call link.hxx 111 0x7f620dfbc618
28 Timer::Invoke timer.cxx 75 0x7f620dfbc46c
29 Scheduler::CallbackTaskScheduling scheduler.cxx 509 0x7f620df5fa08
30 SalTimer::CallCallback saltimer.hxx 54 0x7f620368b566
31 sal_gtk_timeout_dispatch gtkdata.cxx 733 0x7f620368a573
32 ?? 0x7f62097110d9
33 ?? 0x7f6209714317
34 g_main_context_iteration 0x7f6209714930
35 GtkSalData::Yield gtkdata.cxx 405 0x7f62036888ef
36 GtkInstance::DoYield gtkinst.cxx 435 0x7f620368dd73
37 ImplYield svapp.cxx 378 0x7f620df94dfc
38 Application::Yield svapp.cxx 466 0x7f620df9470b
39 Application::Execute svapp.cxx 353 0x7f620df944a2
40 desktop::Desktop::Main app.cxx 1615 0x7f62171254fc
41 ImplSVMain svmain.cxx 229 0x7f620dfb760e
42 SVMain svmain.cxx 261 0x7f620dfb9659
43 soffice_main sofficemain.cxx 93 0x7f62171a7eb3
44 sal_main main.c 51 0x56162eceea5d
45 main main.c 49 0x56162eceea37
[1] https://bz.apache.org/ooo/show_bug.cgi?id=70872
Change-Id: I7409806071a00f32b201b08a831dc6941f072047
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167209
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Change-Id: I6fe0ed24a42394936975e763aba9dc3625a373ce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167205
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
See tdf#94879 for motivation.
Change-Id: Ieca2f1d0a8b781a908e3b4bd7fd7698305248a60
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167181
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: Ia50d6f2be91e830201689cc428e55203eeb41eb0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167035
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: Ia5bf95a5474363e745517edce96a123764dcab73
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167151
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
|
|
Let `SdrPage::createAnnotation` et al. return the newly
created annotation rather than using an out parameter,
which makes this more straightforward.
Change-Id: Iee0561859756522ef33680c2cc9b492541a31d5e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167019
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
This adds support for the (weld)LinkButton (FixedHyperlink) as an
independent widget and not part of FixedText to jsdialog. In addition
add "click" event that triggers activate_link method.
Change-Id: Id110b4a0fd60fc24592e00235243783d46ae4575
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166898
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
because it takes a surprising amount of time to initialise it
at runtime during startup
(*) have to convert the std::function in SfxType to a
function pointer, because the std::function constructor
is not constinit compatible.
(*) the SfxType0..SfxTypeN types need some reinterpret_cast
to work around the lack of zero-sized trailing arrays in c++
(*) Sadly MSVC does not support taking the address of symbols
in constinit structures, so we cannot make the SfxSlot
array constinit.
Change-Id: I300ee770cc115d30bc25c819f2ad34b29633876c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166963
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I8edb1fefe1b2b8a3db3ee8f3a0eed59c7f08a36e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166863
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: Iddf9d40ca63f2f3ce7d48aaf881a3abb10f88bbf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166975
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I77f9b7fc731be3c3f7cd0c642f9b210e28fdf545
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166974
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I900d9f1d35bc1e620822eedd5722a502704d6de0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166959
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Since there may be no view with the given id, checking the list first is safer.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I4c305e0a0f6ce7cccdfea9889c414a6054ed3a88
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166531
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
(cherry picked from commit 4d8c4a60105488be84ea80775dc04a24582752fb)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166720
Tested-by: Jenkins
|
|
Change-Id: Ie25e61d6795819a9c432d71fdf478b1a4430c06f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166940
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I498c10e8bc134b41e3606d8a05cf3103a9274735
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166937
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
The most exciting was to discover that this functionality was actually
already implemented prior to 2001, and then accidentally dropped, and
nobody noticed, until Noel did his great cleanups, and made an amazing
investigation in commit ed2ae3c3bb0a708cafc3de6a01adc9ddc43fb859 (remove
dead SwNoteURL, 2018-03-14). The detailed commit message made my task
so much easier: I knew where and what to restore.
So this change restores relevant pieces removed over the time in commits
* 1b666235f6b0b0f0b13f473bf3b639f4f5f0b12f (loplugin:singlevalfields
improve copy constructor check, 2018-01-03),
* be8c414567f49242164b1fdfb12764b16be355c1 (loplugin:unusedmethods also
check for functions returning bool, 2018-01-19),
* 73139fe600fc1399ae828077981a2498cb0a0b0c (loplugin:unusedmethods,
2018-01-20)
* bb7ade140df807b6a0f12766a1365b8f8d0fd342 (loplugin:unusedmethods,
2018-03-08),
* ed2ae3c3bb0a708cafc3de6a01adc9ddc43fb859 (remove dead SwNoteURL,
2018-03-14),
* fd1cfd25b48cb4bd5c87e9cb317b37699ca3a1d6 (PortionType::Url is unused,
2019-01-18).
It re-implements the functionality accidentally removed in commit
da7671e4f7482110ecd0cfbfd7dbd9e0b873c81c (Opt.(FME): The new attribute
handler makes a lot of code superfluous, 2001-03-15), moving it into
SwAttrHandler, which replaced the ChgFnt in SwTxtAttr.
It also fixes the code writing the HTML image map, to output valid HTML.
And finally, it adds a unit test, to avoid repeating the story :-)
Change-Id: I72ae3cf30f0e9689f50a2c877e1622e4ae46de49
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166924
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: Ide07689bf1a68973cb176554e44e9a809d633def
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166851
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
...by using UnoInOutParam in all cases. Some types whose Embind mappings don't
employ any smart pointers (like any and sequence) would have worked directly
with pointers, but others (like string and type) would have caused Embind errors
at runtime. So consistently use UnoInOutParam in all cases (and generate
bindings for all the used cases in embindmaker).
Change-Id: If26551bf4e99d10748aec1597d6e99f994dfd86e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166854
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
|
|
where it was obsoleted by commits 2484de6728bd11bb7949003d112f1ece2223c7a1
(Remove non-const Sequence::begin()/end() in internal code, 2021-10-15) and
fb3c04bd1930eedacd406874e1a285d62bbf27d9 (Drop non-const Sequence::operator[]
in internal code 2021-11-05).
Change-Id: I4ccc647bb794515c8c11f8dfd9a26563f4aa094b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166819
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: I1d1c4a0e12c0443e7021c8aedcd386814a1647be
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166823
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: Ibc850eb12c38f2985015f06e330585b02d6bf15f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166822
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
|
|
See tdf#94879 for motivation.
Change-Id: I8ea80a3f2121c5c29168aa185e6278d924874c72
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166815
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
if msvc -analyze is used
Change-Id: I5905447a79e8e50d70281e0c230d1ce3b13fc475
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166704
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: Ie10ed0193fbaeae2fb711caa9059906513c42e1f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166730
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: Iad2d114d257244f456d5579636e5c25ce070a08a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166805
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
I had done these a while ago, when I looked into extending loplugin:ostr to do
more automatic rewriting, and these were places where I needed to do something
manually, for one reason or another, because the automatic rewriting would not
pick it up correctly.
However, I got distracted, and a wholesale automatic rewrite would still run
into cases where an _ostr/_ustr instance from a library's .rodata would still be
referenced after the library has already been dlcose'd. So I never came around
to finishing all that.
But there appears to be renewed interest in (automatic) rewritings here now, so
it probably makes sense if I share this part of my work anyway.
Change-Id: I3da9d38398e4bca373cb0000a9d34b49a36ad58a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166792
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
|
|
Change-Id: I68995b10956afe4b2a2cf69fe1393d4deaaff02a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166780
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Moved the holder of annotations from SdPage to SvxPage, so that
the vector holding the annotations and accessors are on SvxPage
and adapted the code.
This also changes the type od most parameters on most methods
from sd::Annotation to sdr::annotation::Annotation and adapted
the code.
Moved AnnotationEnumeration into svx, as it was needed in svx
already.
Change-Id: Iab17aa881443f58adfb9158959db00ed24076279
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166494
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
This moves UndoAnnotation and dependent classes to svx, refactor
the code to in sdr::annotaion::Annotation so annotations in sd
module still work as they have before.
Change-Id: I3769069a636c30c55bc1fcf2406d990f1b44baa6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166493
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Add new function called SEQUENCE to the function list.
(TODO: dynamic array in separate patch, oasis proposal)
Change-Id: I9fa6f2c83536536987542cc00a9eec5c196ada8d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166245
Tested-by: Jenkins
Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
|
|
having this much code in a header file is not a good idea
Change-Id: Ic21eca651335bb282ebbf9434811ae591b7e0b18
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166620
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Unused since f944648e0f5d52605a267ed50bba4bfc035aecc6
Change-Id: Id5f5a77df8afdf15d99989b86bb04179d86ae92b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166614
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
|
|
This is an attempt to move the sd::Annotation to the common code
in the svx module. This will need to be done in multiple steps so
the first one is to introduce sdr::annotation::Annotation class in
svx module, which is derived by sd::Annotation. Non-problematic
functionality and members are also moved to the svx Annotation.
Change-Id: Id20466b3780514ab63a9df8923b879098870ebb6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166492
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: I836c8f85474dc564efa3ca781f47a25e1d8c55fb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166582
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
|
|
Commits 8f48f91009caa86d896f247059874242ed18bf39 (ODT export: omit
unreferenced <text:list xml:id="...">, 2022-03-10) and
82bbf63582bdf28e7918e58ebf6657a9144bc9f3 (tdf#155823: Improve the
check if the list id is not required, 2023-06-14) tried to improve
deterministic ODF output, by omitting the list identifiers in case
when those identifiers were unreferenced. The latter of these used
document model node numbers to check if other lists appeared after
the last occurrence of the list that is continuing in the current
node. But it turned out, that this isn't robust. Consider this ODF:
<text:list xml:id="list1" text:style-name="L1">
<text:list-item>
<text:p>a</text:p>
</text:list-item>
</text:list>
<text:p>b<text:note text:id="ftn1" text:note-class="endnote"><text:note-citation>i</text:note-citation><text:note-body>
<text:list text:style-name="L2">
<text:list-item>
<text:p>x</text:p>
</text:list-item>
</text:list></text:note-body></text:note></text:p>
<text:list text:continue-list="list1" text:style-name="L1">
<text:list-item>
<text:p>c</text:p>
</text:list-item>
</text:list>
The paragraphs a, b, and c are all in the main document body, and
have sequential document model node numbers (say, 15, 16, 17). If
these numbers are checked, there is no node between node 15 ("a")
and node 17 ("c") with a different list (both 15 and 17 belong to
a list with style "L1" and identifier "list1", and node 16 doesn't
belong to any lists). That suggests that the list identifier isn't
needed in this case. Bug when the actual output of node 16 is done,
it includes a node from an endnote ("x"), which is located in a
different place in the document model, and has a node number like
7 (so not between 15 and 17). The paragraph "x" belongs to another
list with style "L2", and is output to ODF between paragraphs "a"
and "c". Here, we must refer from paragraph "c" to the list of the
paragraph "a" using the list id, but this is not obvious when only
considering node numbers, and requires the prior knowledge of the
actual order of appearance of lists in the ODF.
Unless we build a DOM, this is only possible, if we do a two-pass
output, and collect the nodes order in the first pass. The output
already does that in a "collect autostyles" pass. The problem here
is that the "collect autostyles" pass used an optimized function,
XMLTextParagraphExport::collectTextAutoStylesOptimized, introduced
in commit 8195d7061ed52ebb98f46d35fe5929762c71e4b3 (INTEGRATION:
CWS swautomatic01 (1.126.4); FILE MERGED, 2006-12-01) for #i65476#
and which used style::XAutoStylesSupplier for optimization to get
the autostyles.
This drops XMLTextParagraphExport::collectTextAutoStylesOptimized,
and reverts to use of collectTextAutoStyles, which handles nodes
in the same order as when writing to ODF. There, we build a vector
of the node numbers sequence, used later to sort DocumentListNodes.
This uncovered an omission from the work on paragraph mark (commit
1a88efa8e02a6d765dab13c7110443bb9e6acecf tdf#155238: Reimplement
how ListAutoFormat is stored to ODF, 2023-05-11). Turns out, that
the code in SwTextFormatter::NewNumberPortion introduced in commit
cb0e1b52d68aa6d5b505f91cb4ce577f7f3b2a8f (sw, numbering portion
format: consider full-para char formats as well, 2022-10-20) was
left behind when re-implementing paragraph marks to use dedicated
property; empty trailing spans still affected how the lists were
rendered, and that allowed to overlook import defects, where the
paragraph mark properties weren't properly set.
In ODF import (XMLParaContext::endFastElement), for compatibility,
this treats empty trailing spans as defining paragraph mark (when
the paragraph mark wasn't set explicitly). This way, the trailing
spans get converted to the paragraph mark.
In WW8 import, last cell paragraphs didn't call the code handling
the paragraph marks. This is also fixed now.
The changes result in slightly different numbering of autostyles
in the ODF. It seems, that the new numbering more closely follows
the order of appearance of the autostyles in the output; and some
cases of autostyles that were written, but unreferenced, are now
eliminated. The unit tests were updated accordingly.
I hope that the performance impact on the export time would not be
too large.
It is unclear why outline numbering exports a list element at all.
Fixing that to not emit the list element is a separate task / TODO.
Change-Id: I5c99f8d48be77c4454ffac6ffa9f5babfe0d4909
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166572
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I4d7b38c90d73a00f4dbc8ad7318fe4573328ed46
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166503
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
I was wondering how much of that arrays of pointers
to SfxPoolItems is actually used in the SfxItemSets in
real office runtime, so I added code now to measure that.
It does use the state of the ItemSet at destruction,
so it is possible that items were added/removed which
are not covered, but most cases of internal usages do
not do that.
I then check/sort the collected data at office shutdown,
it will be printed as SAL_INFO when svl.items/vcl.items
is set, so use this to see the data.
This gives info about the average space utilization in
different ItemSets with different sizes, also gives an
insight about used ItemSet sizes and amount of their
usages.
Of course results differ from app to app and dependent
of what is done with the office, but interestingly when
using quite some files opening from all apps it
toggles/normalizes to something around 20-25%...
Change-Id: I3eb2f0401c39a5bdb5d1d8176e95df07be4c111a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166455
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
Tested-by: Jenkins
|
|
Change-Id: I3edc7495975618357f002536857a11dcc72cc0b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166460
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
This is the way it's done everywhere.
Partially revert 4b6e0f2c88debaedb514c868e061c21e15215b6e
"tdf#160726, tdf#48062: Simplify how BitmapExs are created"
Change-Id: I15fea0b6855a65da7cb48b24fc00ba303e33dcf8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166456
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: I17471a9c70a38d05de5ad476f817285fb2438e5a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166429
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|