Added the following commands:
.uno:StartPara
.uno:EndPara
.uno:CommonAlignStart
.uno:CommandAlignEnd
Currently, the Start/End align commands use the same icons as the
Left/Right align commands, respectively, but they are mirrored
automatically in RTL context to reflect the appearance of the text.
Unique icons may be added in a future commit.
Change-Id: I0fbf7039d2bc20e025af3d30c775f270354e5aca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194125
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
Tested-by: Jenkins
After recent commit 851fb75779
recheck these directories in include/ again
to test drive the new --headersfwd mode of bin/find-unneeded-includes
Change-Id: I0ede437c4f9958cd98210ed1760a5b98ea8bd1ad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192377
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen@collabora.com>
At least IWYU 0.24 no longer gives a warning if sal/types.h
is included only for the css alias
Few other places were excluded because an enum type used some
base type from sal/types.h
Now there is no false warning about those instances either, so drop them too
Change-Id: Ib2fac8fe2c7022c28194514e828c773385217ddd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191564
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
This value is only used for dates comparison inside ODateTimeType;
_getValue is used in OValueLimitedType_Base::_validate to comnpare
to minimal and maximal cached values, and the latter are set using
normalizeValue. The choice of null date is ~random, and in theory,
we could just normalize using Date::GetAsNormalizedDays(), but the
null date close enough to the actual dates has an upside of keepng
enough precision for time part - so just use the most used epoch,
which gives an optimized GetAsNormalizedDays, and hence, a faster
operator-.
Change-Id: I35723373107b2786633c7ddb3cfb82a7dcc4deaa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190827
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
It is unused. ISO8601parseDate would either return false (and then
the function would throw), or it would use a different default and
result of parsing the string. The initializer here was confusing.
Change-Id: Ia44d0755262382fa94aefe0e8c183ba3785b5fe5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190773
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
since Bitmap can handle transparency now.
Drop some code - we no longer have images with palettes and transparency
Change-Id: I480765e0e402e67485a53c660e1179a9d7c5b153
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190282
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
To insert a default value, ODatabaseForm gets its value from column
properties, and passes to XColumnUpdate. The problem appeared when
the default was a localized date string, like "20/07/25".
The string was set as the value of a ORowSetValue; then, when its
value was requested, its getDate() called DBTypeConversion::toDate,
which only handles ISO date strings. But for correct conversion, not
only the string is needed, but also its format key. This information
is already lost at that point. The conversion failed, and the result
date was invalid, somewhere in the beginning of CE.
Try to overcome this problem by converting the default value from
date string to date(time) where all the information is available.
Change-Id: I73e96e433895da18cbf6145ffc26b16fa4844452
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188093
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
At EditEngine, ImpEditEngine, Outliner, OutlinerView
and EditView. Changed to more explaining names. Checked
parameters.
Change-Id: Iccf8ce82d2772cbd769269014e920739a11bece2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187483
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
Tested-by: Jenkins
While accessibility logic for vcl::Window and subclasses
was previously split between vcl::Window and
VCLXWindow, vcl::Window now takes care of everything
to create an XAccessible without involving VCLXWindow
now after
Change-Id: I25de1ab0f8b47b12346abd01bad05cb54fb75f52
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Mon May 26 09:45:11 2025 +0200
vcl a11y: Let vcl::Window create accessible directly, drop a11y factory
(and previous changes for vcl::Window subclasses).
Therefore, drop the remaining a11y logic from
VCLXWindow.
No longer let it implement the XAccessible and
XEventListener interfaces.
The latter was only implemented to clear the
reference to the accessible context in
VCLXWindow::disposing, but VCLXWindow now no longer
holds such a reference with this commit in place.
Drop calls to (the now nonexistent) VCLXWindow::disposing
in subclasses (and drop overrides now only calling
base class methods from another subclass).
vcl::Window::dispose already takes care of disposing the
window's XAccessible, so disposing the XAccessibleContext
in VCLXWindow::dispose is no more needed.
(VCLXAccessibleComponent implements both, the XAccessible
and XAccessibleContext interfaces.)
Change-Id: Ided896abdc84cfbbf883621020169699a37cf6df
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185844
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Implemented the ODF 1.0 style:script-type text property. This property
can be used by documents to influence which script type-dependent
attributes are used when rendering certain characters.
This implementation uses the following semantics:
- If unset, the behavior is as it was in previous versions.
- If set to latin, asian, or complex, those characters not mapped by the
ODF standard to a script type are treated as latin, asian, or complex,
respectively.
- If set to ignore, all characters will be treated as latin. This value
is intended to be used for interoperability with file formats that
don't implement script types (e.g. HTML).
Change-Id: If81a1390ee455fd971dea655d161d9c3f44fd08a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186309
Tested-by: Jenkins
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
...warning about non-overriding virtual dtors in final classes. Every single
one of these might or might not be suspicious (e.g., in some cases it might be
better to have a virtual dtor in a derived-from class). Also, for some of the
virtual dtors, making them non-virtual then caused
> error: unnecessary user-declared destructor [loplugin:unnecessaryoverride]
so those were removed completely.
Change-Id: If0ee71645a347d6096b65988c56f627c42fe54b2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185223
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
There are two sets of getters there; and the non-const ones may copy
the COW mpImplFont, and may call its AskConfig.
The name overload is unfortunate. It is not obvious at the call site,
which of the two will be called; and what is different. IMO, the way
to fix it would be to keep only one set of getters (the const one),
and make the call to AskConfig explicit (in the places that set font
name, and know that resolution of other properties will be needed).
But in this change, I only rename the non-const getters, making sure
to keep the behavior unchanged (at least the intention is to have a
non-functional change, meaning that the places that called non-const
overload, now use the renamed functions), to make it clear where we
actually may copy and initialize it.
Change-Id: I9a5cd91d5c1c0de7ff8577b9b982d165e4cdd2c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183116
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
found by a little plugin I created.
Plugin parked into store/ folder because it needs hand-holding
when run.
Change-Id: I2b4da7378f0becbc5f020ac9e78cd765aa0119b4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181768
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
Avoid accessing invalid index -1 if OUStringBuffer aBuffer is empty.
It cannot be guaranteed that callers will always pass strings that
result in aBuffer being non-empty.
Change-Id: Ied9abf753bcaf2bd1ee618b2431fa35b0bdb5573
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180856
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
Tested-by: Jenkins
clearly we do not often have combobox's that have nothing selected,
otherwise these issues would have arisen sooner.
The immediate cause of fixing this was the assert
VCLXListBox::getSelectedItemPos which was triggered when using X-ray to
examine a writer document
Change-Id: Ia5ec713ef54a841010a9b680d4520f7160d48167
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177532
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
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
This ctor is meant to set the value of nTime directly; and that value
is not nanoseconds, but an encoded value, using SEC_/MIN_/HOUR_MASK.
But in some places, this ctor was misused for setting of nanoseconds,
which would only accidentally work for values less than one second.
All places that initialized tools::Time with 0, now use EMPTY.
This makes the ctor private; and for the very few cases where really
the encoded value of nTime is stored / restored, fromEncodedTime is
introduced.
Change-Id: I1f1994bd9aab1b51a41b1de637619049fe820da4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175283
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>