- fix crash due to wrong type for label
- deduplicate widgets with the same id in one dialog/builder
- refresh on box reordering
Change-Id: I6993552342a3f139de40c3f87243bdf4e0617fc5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130797
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Henry Castro <hcastro@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130951
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Primarily for use in tests.
Change-Id: Icb962cbdfa63a3b50115314e9afd46f3fa1a928a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130939
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
It's quite tricky to visit each portion exactly once. The "table" of
portions is an SwParaPortion, a row is an SwLineLayout, which contains
SwLinePortion instances. But SwLineLayout inherits from SwTextPortion
(which is a LinePortion), so depending on if e.g. the paragraph starts
with a numbering portion (not a text portion) or with plain text (is a
text portion), the first portion in a line is the line layout itself or
not.
The old behavior was to explicitly dump the first portion of the line as
an SwLinePortion, but this way e.g. the expand string of leading number
portions were not visible.
Change this to moving all the loops to SwFrame::dumpAsXml(), and then
not recursing in para portions / line layouts, this allows reaching e.g.
SwFieldPortion::dumpAsXml() for leading number portions.
Change-Id: I813fdece0e4d6b7116112e15ec866046862beeeb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130941
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Previously, the accessible description was retrieved
in the `AccessibleGridControlBase` ctor and stored
in a class member. Change that to fetch the
description on demand.
`TableControl::GetAccessibleObjectDescription` is used
to get the description, which currently uses the row and
column index of the currently active cell.
When using the macro from the sample document in tdf#147742
with the Orca screen reader active, no cell was active
at the point that the ctor was called, so
`ROW_INVALID`/`COL_INVALID` were used, resulting
in a crash later (s. backtrace in tdf#147742).
If necessary, `TableControl::GetAccessibleObjectDescription`
could be extended to allow passing an explicit row/column index,
as is the case for `TableControl::GetAccessibleName`, then
override `AccessibleGridControlBase::getAccessibleDescription`
in `AccessibleGridControlCell`, similar to how it is done
for the accessible name in
Change-Id I87eabb2ce3c99d4a622d919ab0fb8d7fb3beed6b
("tdf#147742 a11y: AccessibleGridControl...: get accessible name on
demand").
Change-Id: I58f3a2b0c83e2cdbae103811505d7d0a4f8bfc52
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130934
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Base class `AccessibleGridControlBase` was retrieving
an accessible name and storing it in class member 'm_aName'.
For the classes representing cells, derived from
`AccessibleGridControlCell`, the index is needed
to get a meaningful name, so the name retrieved in
the `AccessibleGridControlBase` ctor with hard-coded
row/column indices of 0 was replaced again in
the `AccessibleGridControlCell` ctor.
Replace that logic to just retrieve the name
on demand, and override
'getAccessibleName' in `AccessibleGridControlCell`
using the logic used in its ctor previously.
(No functional change intended here, but a
somewhat similar handling for the accessible
description was causing a crash when the Orca screen
reader was active. This will be handled in a following
commit.)
Change-Id: I87eabb2ce3c99d4a622d919ab0fb8d7fb3beed6b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130933
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
... in `AccessibleGridControlTable::getAccessibleIndexInParent`,
just like in the implementation of the other a11y UNO API methods.
Change-Id: I4ab7a2626db09398c79fe53d85c9802136decbf7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130925
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
... in `AccessibleGridControlHeader::getAccessibleIndexInParent`,
just like in the implementation of the other a11y UNO API methods.
Change-Id: Ib3bd44e73ae54bb1df05dc2714ce1f793f7222db
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130924
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
And disable the tests that try to use nullptr where it's not accepted.
Change-Id: I1cd031e371485fdd57e7691565376253a01049c3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130938
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
An empty cell is not irrelevant in making height decisions,
at least in MS file formats, and yet all of this code that
is being based on that wrong assumption is being done to
import ppt(x) files, and causing one regression after another.
[Worst of all, this isn't even a filter import codebase.]
Unfortunately the regressions have been dealt with
or discovered slowly, so some of this has been in place
for years. Otherwise I would revert this in a heartbeat.
At least throw in a warning, so that this seemingly
logical conclusion will at least be challenged by
the next bug-fixer - instead of building another
layer on this house of cards.
Change-Id: I0e984a7ecce5061224a4165c0ee61818348a9659
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129659
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
Reduces the time to fill the footnote endnote content array by avoiding
SwFormatFootnote::GetFootnoteText which calls the somewhat time
consuming SwTextNode::GetExpandText. Just calling SwTextNode::GetText
to get the footnote endnote first paragraph text should be good enough
here.
Testing with debug and optimized builds on a test document with 6243
footnotes and endnotes shows a relative average differene of 10000 μs
between use of lcl_GetFootnoteText, introduced by this patch, versus
the current use of SwFormatFootnote::GetFootnoteText.
Change-Id: I6a870c0700a3e64348e5550a0fc129eabf1b1d44
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130182
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
Bin pointless empty destructors, make trivial functions inline,
return value by simply returning it.
Change-Id: Ia71e73262802bbe6b022ca4bafb2b958ffdf39f5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130915
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Which is how UNO API clients (e.g. ODT export) will be able to read
RES_TXTATR_LINEBREAK.
Change-Id: I44d2058fd8b4a4fefce3dacc49d3bb3da6060756
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130903
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins