dont need the variant that passes extra params, we already take that param
but convert that extra parameter from a pointer to a std::optional,
because some of the call sites pass a temporary OUString, and taking
the address of a temporary is a no-no.
Change-Id: I4d55f01a14230f5c64a052a143666a08bfcbf704
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191021
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
Implement chart style file export, beginning to use the document
model data rather than hard-coded text. Also add a simple test
that style data round-trips OOXML -> LO -> OOXML properly.
This uses oox structures in docmodel. That will be fixed in a
subsequent commit.
Change-Id: Icc0ef5b212cc32c8c84b51529bc4cf05ab54636c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190586
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
We hide a lot more than on other tabs. The main idea is to allow
bookmarks to be linked to, but this does add other behaviour.
For example, linking to a shape using 'Shape 1|drawingobject' to
link to a shape. When I tested this in online, this behaviour was
very inconsistant and slow, although this could be related to
document size.
Change-Id: I6a6a696443a677cc54aa4a62594b4b6c6aa4d114
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190895
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Michael Stahl <michael.stahl@collabora.com>
(cherry picked from commit 5d24fdffdf2246042732fb3bfe3e6d779abbcb85)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190990
Tested-by: Jenkins
As described in include/sal/log.hxx, log areas may not
contain "_", and they need to be defined:
> For all the other macros, the given area argument must be non-null and must
> match the regular expression
>
> @verbatim
> <area> ::= <segment>("."<segment>)*
> @endverbatim
>
> with
>
> @verbatim
> <segment> ::= [0-9a-z]+
> @endverbatim
>
> For a list of areas used see @ref sal_log_areas "SAL debug areas". Whenever
> you use a new log area, add it to the file include/sal/log-areas.dox .
This fixes errors like the following ones seen for a --enable-rust-uno
build with clang plugins enabled:
/home/michi/development/git/libreoffice/rust_uno/uno_bootstrap.cxx:38:14: error: unknown log area 'rust_uno' (check or extend include/sal/log-areas.dox) [loplugin:sallogareas]
38 | SAL_INFO("rust_uno", "Initializing UNO component context for Rust binding");
| ^
/home/michi/development/git/libreoffice/codemaker/source/rustmaker/cpproduce.cxx:1011:14: error: unknown log area 'codemaker' (check or extend include/sal/log-areas.dox) [loplugin:sallogareas]
1011 | SAL_INFO("codemaker", "Struct member " << member.name << " UNO type: " << unoType);
| ^
Change-Id: I4ac11fc343f340488d15607cc7262ca57b6a4850
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190847
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Switch parent param in the AccessibleBrowseBox ctor
from the abstract XAccessible UNO interface to the
more concrete OAccessible.
Adjust calling code to make clear it's always an
OAccessible that gets passed.
Change-Id: I1e0b4c4b075d5f0926c85b431e1fbc10334bea85
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190769
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Return more concrete OAccessible instead of the abstract XAccessible
UNO interface.
Change-Id: I8a54e5f206fcff601770376a3fdeff1e737a72a6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190768
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
The Selection class is used in either of two ways for
text selection:
1) Selection::Min() reports the selection anchor
and Selection::Max() reports the cursor position.
2) Selection::Min() reports the smaller of the two
indices mentioned in 1), and Selection::Max() returns
the greater one.
vcl::Window::GetSurroundingTextSelection and its
overrides are used for input method handling and
were so far implementing either of the semantics.
Adjust those that were so far using 2) to 1), which
will allow distinguishing between the cursor and
the selection anchor in the input method logic in
the platform/VCL plugin implementations.
(SalInstanceEntry::get_position is another non-IM related
example already relying on Edit::GetSelection implementing
the behavior as described in 1).)
Calling Selection::Normalize can be used to transform
an object using the 1) semantics into 2).
Currently, ImplHandleSalSurroundingTextRequest (in
vcl/source/window/winproc.cxx) - which uses
vcl::Window::GetSurroundingTextSelection - does this,
so this commit shouldn't result in any change in
behavior by itself yet.
This commit prepares for porting
QtWidget::inputMethodQuery/lcl_retrieveSurrounding
from using a11y API to using SalEvent::SurroundingTextRequest,
similar to what
commit ce5e41ab99
Author: Caolán McNamara <caolanm@redhat.com>
Date: Sun Oct 25 15:14:56 2020 +0000
Related: tdf#137620 use existing SalEvent::SurroundingTextRequest
did for gtk3.
This commit will help to keep distinguishing
Qt::ImCursorPosition and Qt::ImAnchorPosition in
QtWidget::inputMethodQuery/lcl_retrieveSurrounding.
Change-Id: I46fdff87e84fbbe62f9b60b50376b6123d59fdac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190744
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Hides the name field in all cases except writer text or draw text, as these seem to be the only types of text that can store link names.
Hides text field for non-text links, such as shapes or images.
If a shell does not set the properties m_showText or m_showName, deafult values to true, to avoid regressions for unimplemented shells.
Change-Id: I228dc7f9d65c5cb17717afb79feb515376cd4d31
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189885
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Michael Stahl <michael.stahl@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190678
Tested-by: Jenkins
looks to me that we should make this behave like other controls
and generally set the m_eDefRP when explicitly asked to save
so that "Reset" resets back to that saved value.
And then we can check if the control is "changed" by comparison
of m_eDefRP vs m_eRP and use that to apply the properties.
Change-Id: Icef87fb7e3dd653267e6882f4e8d22adb3e0ff68
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190694
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
regression from
commit 8126025906
Author: Noel Grandin <noel.grandin@collabora.co.uk>
Date: Sat Aug 9 19:29:08 2025 +0200
BitmapEx->Bitmap in various icons
The old BitmapEx::Replace methods had the odd behaviour that
they left the alpha layer alone, so we need to replicate that
in Bitmap::Replace
Change-Id: Ic304178fb9a45750a887bee2493546bc497eeb06
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190649
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
and
cid#1665282 Variable copied when it could be moved
cid#1665279 Variable copied when it could be moved
cid#1665278 Variable copied when it could be moved
cid#1665276 Variable copied when it could be moved
cid#1665275 Variable copied when it could be moved
cid#1665257 Variable copied when it could be moved
Change-Id: I222860c6385693610b95f4d674d4d0da59e75a5f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190635
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
When either the header OR the footer wants different first content,
then (by design) the application applies it to both of them.
(True for Writer only - not true for Calc!!!)
It is also important (for the user experience) that either one
is able to stop using first content altogether (for Writer only).
This was already working to some extent,
but the user experience was not consistent or predictable.
Specifically, the improvements with this patch:
-provide an appropriate "default" value when turning on a H/F.
-always visually match the most recent "first content" choice.
-in Calc, simply visiting the H/F no longer turns on first page.
The prior situation was very "fickle",
and "first content" could be affected
without the user even touching that box (for both Writer and Calc).
The underlying reason this patch can work is because of
SvxHFPage::SvxHFPage SetExchangeSupport().
That causes SfxTabDialogController::DeactivatePage
to update the m_xExampleSet which is then passed
to SvxHFPage::ActivatePage.
Thus the active tab knows about all the dialog's current settings.
Since Reset() calls ActivatePage,
it was safe to move the initialization out of Reset.
make -srj1 UITest_calc_tests8 \
UITEST_TEST_NAME=tdf144940.tdf144940.test_tdf144940 \
SAL_USE_VCLPLUGIN=gen
Change-Id: Icd6084ca50d244317c807266f04c85dadbba2bb1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190606
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
This means some of the tests are now testing Bitmap, even
though the test name is "BitmapExTest", but the tests are
useful, and we are going to retire BitmapEx soon.
One of the unit tests needed tweaking, because Bitmap
uses pre-multiplied alpha, which means the color
information is lost when alpha==0
Change-Id: Ie1040d309c33645982d058271b36d8dc601fd03f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190612
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
Parse the style*.xml file in the OOXML package, and store the imported
styles in XChartDocument via a new XChartStyle. Some areas are yet to be
fleshed out, but the intent here is to get a review of the general approach
and architecture. This includes no work on the export side (or the UI and
application of styles to a chart, which is a separate but related project).
Change-Id: I9d5b9f5aa44fb7944b2d971edc26e04dc2256c7f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189531
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Add new paragraph justification options "Minimum glyph scaling"
and "Maximum glyph scaling" to improve typography, like DTP software
do, allowing to typeset visually better paragraphs, especially narrow
columns without unacceptably big word spacing.
* Add spin boxes to Alignment in paragraph formatting dialog window;
* Store properties in paragraph model:
css::style::ParagraphProperties::ParaPropScaleWidthMinimum
css::style::ParagraphProperties::ParaPropScaleWidthMaximum
Note: desired glyph scaling is already supported by ODF/UNO,
see css::style::CharacterProperties::CharScaleWidth.
* Implement visual layout of minimum and maximum glyph scaling,
limited by the available extra word spacing and letter spacing,
too.
Note: last line can exceed the paragraph width, because minimum
glyph scaling, also minimum letter scaling of the last line
haven't been applied there, yet.
* Add ODF import/export (loext:text-scale-maximum and
loext:text-scale-minimum, where style:text-scale is for the
desired text scaling).
* Add ODF unit test.
Note: hyphenated lines, lines with multiple portions haven't
been using custom glyph scaling, yet.
Note: resolution of glyph scaling is 1 percent, which will
avoid of overgeneration of font types using variable fonts.
Change-Id: I9b4576dde4303437b64e37202c47f888f94c3f67
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190534
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>