Age | Commit message (Collapse) | Author |
|
Don't allow using `BBINDEX_ROWHEADERBAR` as the
child index unconditionally, but only if the
browse box actually has a row header.
An `AccessibleTabListBox` doesn't have a header
and instead returns the table when requesting the
child at index 1 (`BBINDEX_ROWHEADERBAR`).
Now that row headers are propagated to the Windows
platform accessibility layer with
commit 2b30d37bd555188733a006e1a5796461ab11d326
Date: Thu Aug 3 15:48:48 2023 +0100
tdf#156473 wina11y: Fix invalid write due to row/col mismatch
in place, NVDA confusingly started announcing all cells
in the currently selected row as row headers for
the currently selected cell in the Expert Configuration
dialog, because of the table being returned without
this change in place (while the cells in that table don't
actually have any row headers).
Related backtrace of how the table was returned
for the row headers:
1 accessibility::AccessibleTabListBox::getAccessibleChild accessibletablistbox.cxx 90 0x7fffb8ab64bb
2 accessibility::AccessibleBrowseBoxTable::implGetHeaderBar AccessibleBrowseBoxTable.cxx 214 0x7fffb8a7e241
3 accessibility::AccessibleBrowseBoxTable::getAccessibleRowHeaders AccessibleBrowseBoxTable.cxx 116 0x7fffb8a7da02
4 QtAccessibleWidget::rowHeaderCells QtAccessibleWidget.cxx 1808 0x7fffe3e51e97
5 AtSpiAdaptor::tableCellInterface atspiadaptor.cpp 2801 0x7fffe2cee526
6 AtSpiAdaptor::handleMessage atspiadaptor.cpp 1450 0x7fffe2cde6ee
7 QDBusConnectionPrivate::activateObject qdbusintegrator.cpp 1416 0x7fffe14cc216
8 QDBusActivateObjectEvent::placeMetaCall qdbusintegrator.cpp 1572 0x7fffe14cceba
9 QObject::event qobject.cpp 1438 0x7fffe3621280
10 QApplicationPrivate::notify_helper qapplication.cpp 3287 0x7fffe1ba2414
11 QApplication::notify qapplication.cpp 3238 0x7fffe1ba2224
12 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1123 0x7fffe35a3c34
13 QCoreApplication::sendEvent qcoreapplication.cpp 1557 0x7fffe35a46f5
14 QCoreApplicationPrivate::sendPostedEvents qcoreapplication.cpp 1924 0x7fffe35a55b2
15 QCoreApplication::sendPostedEvents qcoreapplication.cpp 1781 0x7fffe35a4eba
16 postEventSourceDispatch qeventdispatcher_glib.cpp 240 0x7fffe39b26d3
17 ?? 0x7fffe97135b4
18 ?? 0x7fffe9716607
19 g_main_context_iteration 0x7fffe9716bfc
20 QEventDispatcherGlib::processEvents qeventdispatcher_glib.cpp 390 0x7fffe39b2f67
... <More>
Also add an assert that
`AccessibleBrowseBoxTable::implGetHeaderBar` only
gets called with indices for row/col header, not
arbitrary integers.
Change-Id: Id7ebab9bfa8a7f05cb43da1bf5756e5980f4ed20
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156012
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Use the `mxColumnHeaderBar` and `mxRowHeaderBar`
members directly instead of a pointer to an `rtl::Reference`
that can be either of them.
Change-Id: I620c7ba92a14fad50d9371b1762b5d5ad05fd7ce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156011
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
The getter and setter are only used by the class itself, not
by any derived classes, and the client ID is an implementation
detail, so make the methods private instead of protected.
Change-Id: I380aa9848ae515b7b4ae1a727b3c5720b53250fb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156010
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
look for methods where we don't need to guard access
to the field, because the field is never modified
Change-Id: I62c33cc3f52881557515765d3733c4afc78547aa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155836
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Don't ignore the `WindowShow` and `WindowHide` child events
in `AccessibleListBox::ProcessWindowChildEvent`, but let the
base class implemenation handle them just like all other
child events.
This causes them to be forwarded as `AccessibleEventId::CHILD`
events to the a11y layer, which e.g. triggers registering
a11y event listeners for newly created/shown child objects
in winaccessibility.
This makes the announcement of sub menu entries in Calc's auto
filter work even after reverting
commit dc0706cabfe39ddb6ea23d60ccfb756f2b9e6efb
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Wed Mar 15 17:00:27 2023 +0100
tdf#140762 tdf#152671 Make dock win visible before showing popup
, which will be done in a follow-up commit.
`AccessibleListBox` is the a11y class used for
tree views in the non-gtk case (i.e. `SalInstanceTreeView`).
A tree view is passed as the parent of the sub menus in
the autofilter popup (s. `ScCheckListMenuControl::addSubMenuItem`),
but due to ignoring the events, the submenu would not be
announced by NVDA before the above-mentioned commit.
The events were ignored since
commit 4c01898e02d7b80f70f19de12f2598644fc421e3
Author: Vladimir Glazounov <vg@openoffice.org>
Date: Mon Jan 28 13:14:03 2008 +0000
INTEGRATION: CWS tbe32 (1.2.16); FILE MERGED
2007/11/05 15:14:07 tbe 1.2.16.1: #i70908# [A11y] OOo crashes in Customize dialog - Add when large icons and A11y ONcommit 4c01898e02d7b80f70f19de12f2598644fc421e3
to fix a crash in the customization dialog,
but that problem described in [1] is no longer
reproducible for me with the change here
in place.
Comment 8 in the ticket mentions:
> The problem was the accessible child event, which was sent for the
> help text window. This event triggered some callbacks which caused
> the dead lock. As the help text window is not exposed as accessible
> child of the tree list box, I removed the accessible child event.
The fact that extra children from the `vcl::Window`
hierarchy (besides the entries in the `SvTreeListBox`
are currently not exposed via
`AccessibleListBox::getAccessibleChildCount` and
`AccessibleListBox::getAccessibleChild` is still
true, but not a problem in this context.
(If necessary, handling for those should be easy to
add by forwarding to the corresponding
`VCLXAccessibleComponent` methods, and adapting
the child index used as needed.)
[1] https://bz.apache.org/ooo/show_bug.cgi?id=70908
[2] https://bz.apache.org/ooo/show_bug.cgi?id=70908#c8
Change-Id: If374032387babf41b28067d5df54d5f6ce682c48
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155801
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
With this in place, selecting a grid control cell from the tdf#156473
example in Accerciser's treeview of the LO a11y hierarchy now shows
a corresponding row and header cell.
Change-Id: I89978051cdb285a02cbce7a560a788b6d24ca7ad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155251
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
The row header bar of a grid control is a table with
just one column, containing a row header cell for
each of the rows in the table holding the actual data.
Likewise, a column header bar just has one row.
This was previously incorrectly reported on the a11y layer,
as could e.g. be seen in Accerciser with the sample macro
from tdf#156473.
Also make the `AccessibleGridControlCell` ctor pass the
`_nColumnRowId` as what it actually is (a row index
in case of a row header cell, a column index in case
of a column header cell) instead of always as a row
index, and then having special handling for that
elsewhere again
(s. `AccessibleGridControlCell::getAccessibleName`).
Also move an assert from
`AccessibleGridControlCell::getAccessibleName` to
the ctor and check the indices there.
With this in place, the row and column header bars
for the example from tdf#156473 now report the correct
amount of rows and columns, and the row/column header
cells report the correct row and column indices.
Change-Id: I29f71ac46b6d841e26d68ca01bd05ba9412aed13
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155224
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
to attempt to make it obvious in code what kind of coordinate
system we are dealing with.
The idea is that by doing this, the compile-time type checking
will flush out inconsistencies between different code.
I started with vcl::Window::OutputToAbsoluteScreenPixel
and worked outwards from there.
Change-Id: Ia967d7a0bb38886695f3a761b85c8b9340ddb1c0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154676
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I227ca242ae8fa22940b1bf302541f8d9b7b40eb7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155199
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
... by using `XAccessible::getAccessibleContext` rather
than trying to just query for the `XAccessibleContext`
interface on the `XAccessible` object.
(While in many cases, the class implementing
both interfaces is the same, that doesn't have to be
the case.)
Change-Id: I281082672447c7bfd2812d7f3cd54c74414df66e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155193
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
`XAccessibleSelection::getSelectedAccessibleChild` takes
the index into the selection, not the child index, as its
documentation (in
`offapi/com/sun/star/accessibility/XAccessibleSelection.idl`)
says:
> @param nSelectedChildIndex
> This index refers only to the selected children, not to all the
> children of this object. Even if all children are selected, the
> indices enumerating the selected children need not be the same
> as those enumerating all children. If only single selection is
> supported the only valid value is 0.
The previous handling here in
`AccessibleGridControlTable::getSelectedAccessibleChild`
was treating it as the child index, though. Therefore
trying to get the selected children would break once
any row other than the first was selected.
Fix this by calculating the actual row/column index
of the cell from the given *selection* index.
This could be observed e.g. with the qt6 VCL plugin by
querying selection from Accerciser, with the last row
selected in the table from the tdf#156473 macro in LO
and the corresponding table object selected in
Accerciser's tree view of the LO a11y hierarchy:
Before:
In [41]: sel = acc.querySelection()
In [42]: sel.nSelectedChildren
Out[42]: 5
In [43]: sel.getSelectedChild(0)
In [44]: sel.getSelectedChild(0) == None
Out[44]: True
With the fix in place:
In [48]: sel = acc.querySelection()
In [49]: sel.nSelectedChildren
Out[49]: 5
In [50]: sel.getSelectedChild(0)
Out[50]: <Atspi.Accessible object at 0x7fcaeaddb900 (AtspiAccessible at 0x3ae4a80)>
In [51]: sel.getSelectedChild(0).name
Out[51]: 'C1 , R4 , '
In [52]: sel.getSelectedChild(1).name
Out[52]: 'C2 , R4 , '
In [53]: sel.getSelectedChild(4).name
Out[53]: 'Column 5 , R4 , '
Change-Id: Id7d42a89b913d2ed101a9edb45dee5f3d870dbbd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155190
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Send a `AccessibleEventId::ROLE_CHANGED` event
when the accessible role of a menu item changes
(s. how `VCLXAccessibleMenuItem::getAccessibleRole`
takes into account `MenuItemBits::RADIOCHECK` and
`MenuItemBits::CHECKABLE` to determine the accessible
role for the underlying menu entry).
This fixes the issue of obsolete values for roles being
used, which was uncovered by the upcoming
Change-Id I1a047864ce8dc1f1bc3056ad00159f7fd5e5b7d3
("vcl gtk3: Introduce AT-SPI2 tests for the GTK3 accessibility layer").
With this in place, the workaround for tdf#155625 in
the upcoming gtk3/AT-SPI tests is no longer necessary
and `make CppunitTest_vcl_gtk3_a11y` with
https://gerrit.libreoffice.org/c/core/+/153069 patch set 11
still passes after dropping the workaround:
diff --git a/vcl/qa/cppunit/a11y/atspi2/atspi2.cxx b/vcl/qa/cppunit/a11y/atspi2/atspi2.cxx
index bbcd263fee0c..762401181bf4 100644
--- a/vcl/qa/cppunit/a11y/atspi2/atspi2.cxx
+++ b/vcl/qa/cppunit/a11y/atspi2/atspi2.cxx
@@ -264,9 +264,6 @@ void Atspi2TestTree::compareObjects(uno::Reference<accessibility::XAccessible> x
* be represented with a round trip. */
const auto nLORole = mapToAtspiRole(xLOContext->getAccessibleRole());
auto nAtspiRole = pAtspiAccessible.getRole();
- // FIXME: workaround for https://bugs.documentfoundation.org/show_bug.cgi?id=155625
- if (nLORole == ATSPI_ROLE_CHECK_MENU_ITEM && nAtspiRole == ATSPI_ROLE_MENU_ITEM)
- nAtspiRole = nLORole;
CPPUNIT_ASSERT_EQUAL(nLORole, nAtspiRole);
/* name (no need to worry about debugging suffixes as AccessibilityTools::nameEquals does, as
* that will also be part of the name sent to ATSPI) */
Change-Id: I0d88a7eda592f5ee9abf368ce1d5feb6611b9971
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154947
Reviewed-by: Colomban Wendling <cwendling@hypra.fr>
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
since it can return either absolute or relative values
Change-Id: I23f2403879eded3ec4b3ca20a639ea18b28f5de9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154937
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Icc730f5097609a845e287e580881a8466b0b128d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154793
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
It has been always typedef'd to basegfx::B2DPoint since:
commit 5e218b5c51f7d9cd10bd9db832879efca41b9c75
Date: Wed Jan 12 21:19:32 2022 +0000
always use B2DPoint for DevicePoint
Change-Id: I9f5202d5a71c77dd79f1759923917c26bf68a9af
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154632
Tested-by: Jenkins
Reviewed-by: خالد حسني <khaled@libreoffice.org>
|
|
`AccessibleListBoxEntry::implGetParentAccessible` was first
retrieving the parent, and then that one's parent, which
was failing (and thus returning an empty reference) e.g.
for the 2nd level items (like "2nd Reminder") in Writer's
AutoText Dialog (Ctrl+F3).
This resulted in Orca not announcing any such item when
focused with the qt6 VCL plugin in use, because Orca
considers the object a zombie due to it reporting
an index of -1 in the parent.
Since the parent is requested, drop one level of
finding the parent (don't look for the grandparent).
Also convert an `OSL_ENSURE` to a real assert so
this triggers if there are still any remaining
issues that need to be addressed.
This makes Orca announce the item just fine and the
hierarchy now looks good in Accerciser, too.
(Orca announces the item's text twice for qt6 now
instead of not at all, which matches the behaviour
with gtk3 that's using native Gtk widgets.)
With the "2nd Reminder" item selected in Accerciser's
treeview of the LO a11y hierarchy:
Before:
In [7]: acc.get_index_in_parent()
Out[7]: -1
In [8]: acc.parent
In [9]: acc.parent == None
Out[9]: True
With the fix in place:
In [11]: acc.get_index_in_parent()
Out[11]: 1
In [12]: acc.parent
Out[12]: <Atspi.Accessible object at 0x7f14fa3e2340 (AtspiAccessible at 0x3c09da0)>
In [13]: acc.parent.name
Out[13]: 'Standard'
Change-Id: I2994211368508c74093b73eb8c330aa293411e0f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154746
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
The default Reference ctor always creates an
empty Reference, so checking for that here doesn't
make any more sense here since
commit 77ea0535271d3fb3d49c8d916ecf80e0a7f70653
Date: Wed Sep 18 15:54:23 2019 +0200
accessibility: fix leak of AccessibleListBoxEntry
(`git -w shows it's only the check that was dropped besides
adapting indendation accordingly.)
Change-Id: I18cda45f8730b0234eed0edf31fc6e0a32b1cb9f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154745
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
... after
commit 7835f97113460922cfe14685baa7bcaea2de736a
Date: Tue Jul 18 16:28:08 2023 +0200
add IndexHint -1 for 2 commitEvent methods in accessibility
had switched from using the default AccessibleEventObject ctor
and setting all of the members manually, but
presumably unintentionally swapped old and new value along
the way, since the ctor takes the new value as 3rd and the
old value as 4th argument.
I ran into this because because announcement of the items
in the Expert Configuration dialog with Orca and the qt6 VCL plugin
dialog no longer worked after merging
commit 452c17e08fd8f18d032788170d873b019c8e9716
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Fri Jul 21 08:27:09 2023 +0200
tdf#99609 a11y: Announce the correct entry in tab list box
, while it did still work with the tdf#99609 commit series
on top of master just a few days old.
Change-Id: I516a3067ca04b2e4a06011148ac2690bd301fefa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154719
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
|
|
Besides the issue already fixed in
Change-Id I394027695616b17f7290136d8ee10c06a0282e80
("tdf#99609 a11y: Fix reporting selection in tab list table"),
the previous use of `GetEntry` here in
`AccessibleTabListBoxTable` is problematic, as described
for the previous uses in `SvTabListBox` and replaced in
Change-Id I35f7280d2c386a9a8e04e636ebf34850a733c84a
("tdf#99609 a11y: Announce the correct entry in tab list box")
and follow-up commits.
Therefore, replace that here as well. Instead of
having to use `SvTabListBox::GetEntryOnPos`, just
use the existing `SvTabListBox` methods that already
take a row index (and use `SvTabListBox::GetEntryOnPos`
internally).
This fixes querying the selected status of children (=cells)
via the Selection interface.
Sample use in Accerciser before, with the
tree view in the Expert Configuration dialog
selected in Accerciser's treeview of the a11y hierachy,
and entry "org.openoffice.Interaction" selected in the
dialog.
Before:
In [6]: sel = acc.querySelection()
In [7]: sel.getSelectedChild(0).getIndexInParent()
Out[7]: 56
In [8]: sel.isChildSelected(56)
Out[8]: False
In [9]: sel.selectChild(56)
Out[9]: True
In [10]: sel.getSelectedChild(0).getIndexInParent()
Out[10]: 112
With the fix in place:
In [11]: sel = acc.querySelection()
In [12]: sel.getSelectedChild(0).getIndexInParent()
Out[12]: 56
In [13]: sel.isChildSelected(56)
Out[13]: True
In [14]: sel.selectChild(56)
Out[14]: True
In [15]: sel.getSelectedChild(0).getIndexInParent()
Out[15]: 56
In [16]: sel.selectChild(114)
Out[16]: True
In [17]: sel.getSelectedChild(0).getIndexInParent()
Out[17]: 112
(112 instead of 114 for the index of the first selected
child is OK because selecting a cell selects the whole
row and child with index 112 is the first cell in the same
row as the child with index 114.)
Change-Id: I28cd1633dae601818e2a1d310859bd4d55d311ac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154714
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
The previous calculation of row and column index
in `AccessibleTabListBoxTable::getSelectedAccessibleChild`
based on the selection index was wrong, so fix that.
Only increase the the loop variable `nRow` in
`AccessibleTabListBoxTable::implGetSelRow` at the end
of the loop, since the comparison still needs to use
the original value. (Index starts at 0. Trying to retrieve
the first selected child at index 0 would otherwise
fail, and always return the fallback value of row index 0,
making NVDA always announce the first row as selected instead
of the actually selected one.
The issue could also be observed with Accerciser and the qt6
VCL plugin. With the "org.openoffice.LDAP" row selected
in the dialog, and the table object selected in Accerciser's
treeview of the a11y hierarchy, the cells in the first
row ("org.openoffice.VCL") would always be returned when
querying the selection using the AT-SPI Selection interface:
In [1]: sel = acc.querySelection()
In [2]: sel.nSelectedChildren
Out[2]: 4
In [3]: sel.getSelectedChild(0).name
Out[3]: 'org.openoffice.VCL'
This works as expected now with this fix in place:
In [4]: sel = acc.querySelection()
In [5]: sel.nSelectedChildren
Out[5]: 4
In [6]: sel.getSelectedChild(0).name
Out[6]: 'org.openoffice.LDAP'
With this fix in place, NVDA now properly announces the
currently focused row in the Expert Configuration
dialog (i.e. both, the focused cell first, and then
the whole row as selection).
Change-Id: I394027695616b17f7290136d8ee10c06a0282e80
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154688
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
The a11y tree was broken: While the table has the cells
as children, the cells did not have the table set as parent,
but the table's header.
Since the IAccessibleTableCell implementation in
winaccessibility relies on the table being set as
the parent, this wouldn't work when moving around
within the tree view in the Expert Configuration dialog.
Fix this by setting the table as parent.
The issue could also be observed with the qt6 VCL
plugin on Linux and Accerciser.
With the table selected in Accerciser's tree view
of the a11y hierarchy, the incorrect hierarchy could be
seen using this in Accerciser's IPython console.
In [8]: acc.childCount
Out[8]: 48
In [9]: acc.get_child_at_index(4).name
Out[9]: 'Migration'
In [10]: acc.get_child_at_index(4).parent == acc
Out[10]: False
In [11]: acc.get_child_at_index(4).parent.childCount
Out[11]: 4
With the fix in place, the table's child's parent is
now the table again as expected:
In [13]: acc.childCount
Out[13]: 48
In [14]: acc.get_child_at_index(4).name
Out[14]: 'Migration'
In [15]: acc.get_child_at_index(4).parent == acc
Out[15]: True
In [16]: acc.get_child_at_index(4).parent.childCount
Out[16]: 48
NVDA on Windows now announces *something* when moving
between rows in the Expert Configuration dialog, but
it's not the correct row yet.
(That looks like another issue in winaccessibility code
that needs to be fixed separately.)
Change-Id: I400fa9811bb297ea7fd1accb0970811cdf11a119
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154670
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
sometimes it returns a relative position, sometimes an absolute
position.
Rather have two different methods with names that match what
they return.
Change-Id: Ie1e73c6be1c797fd59934c96866d1fef1f972b35
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154653
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I3a2d4e0935d48e8d7ff57745dc05aa3e85bd0bdc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154590
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
I removed the code in ImplDrawItem that added data to them,
because ImplDrawItem was only ever called with bLayout with false,
and removing the bLayout param removed that code.
That removal happened in:
commit f0f973da8560e16cba85d2c9465c3a8c4c0ebbb3
Author: Noel Grandin <noel@peralex.com>
Date: Wed Mar 16 08:49:35 2016 +0200
loplugin:constantparams in vcl/
And that happened because....
I noticed that ImplPaint was only ever called with bLayout==false,
which meant I removed that param and passed bLayout==false to
ImplDrawItem,
in:
commit 911ae0aeca443fb4b5e400ae0f939567b580e443
Author: Noel Grandin <noel@peralex.com>
Date: Fri Feb 26 09:36:26 2016 +0200
loplugin:unuseddefaultparams in /include/vcl
which was because the last call to ImplPaint with bLayout == true
was removed in:
commit a6b9d9a19fb8c5c9f166682f52941aee25b89c94
Author: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Date: Wed May 6 13:00:13 2015 +0900
refactor "TabControl" to use RenderContext
Change-Id: Id234257201726de95e2c10bfacb30670123ca8a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153713
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Which shaves 80% off the time off breaking up a vector image on Linux.
Change-Id: Id8e7daad001b6120d1fb98e382357da5b55e92ca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151352
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ifd6d57bb4087e6934075ff9f0931260cb8d09328
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150830
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
`VCLXAccessibleEdit::ProcessWindowEvent` takes care
of sending a `TEXT_CHANGED` event. In the case of
`SVTXAccessibleNumericField`, numeric values are
handled, so send a `VALUE_CHANGED` event in addition.
This makes Orca with the qt6 VCL plugin announce
the new value when e.g. changing the page width
using the arrow up key in the "Format" -> "Page Style"
dialog.
For Accerciser, an additional fix is needed so the
value gets updated there in the interface view when
the a11y object is selected. Pending MR: [1]
[1] https://gitlab.gnome.org/GNOME/accerciser/-/merge_requests/25
Change-Id: Id911f50664df7220bc58204bc3477c5306a1da33
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150422
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Rather than using it's superclass XWindowPeer and implicitly relying on it being XVclWindowPeer and casting it everywhere.
Change-Id: Icfb46f3b920d00f4a167a31803a71bbb0368d05c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149894
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
to find more locking we can remove
Change-Id: Ief7bc5ec2a1ff31f22a0ad366910b7fcc4725818
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148599
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I380d8ae6dd237c0d09209c71dfdcf7b1ad995fb2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146241
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I3b37cd67d6d32001ae6ac72f01ce156aeb93ca7e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146240
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ie6b9fd7d825940d090f76b23597c40d8cbbca7c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146239
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ia1b4df33d426265d5eb6f0b77c531ab3b53ea3d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146238
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I9426bac6b26feaa555842142dd3ce62bbe5f4a69
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146237
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I7ec38650b0ef44b59b57bd64ba74fcac918f8b6d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146236
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I8702abb22d14eb88655a1a133ecce8140b0cd4e1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146235
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: If07a07cf4e6fa465d1d6d3e52abe550922edeb6c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146234
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ia086713b06cd9525e5bb03e74a1908bdd6058b18
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146233
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I0eca36225c2a43e2ba90253c013fefe43b2f29a0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146232
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I2412ef089b5b299b131916d21afa5c5d4fd74c39
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146190
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I18b54a3cd689aaf4870c073db8d76d41661a05c9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146189
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I6cb7926db61590a356db7c55eeda94053dbf189f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146188
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ia5c384e7ae4b78e008836fafc5433accd8489f07
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146187
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I8763463a2fd85a528870d140051dd9fb49aea608
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146186
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I9d9b6a6d7cbd89983cbe803511b59226330ae9e8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146185
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ia81117c1819b4d3b5791a0d8ca66d79a26a3c9a7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146184
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Iad1ae727e31908949d61d32b3828a67ac74398e7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146183
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I7399a7e707d4a5915925d2e1b606ed7f6a364337
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146182
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I9527ea68c3fbb1637ea08cea6340b49bab9eac6b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146181
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I1f03912046d94bd0e14f65310d93ec4f539fa304
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146115
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|