summaryrefslogtreecommitdiff
path: root/vcl/unx/gtk3/a11y/atkutil.cxx
diff options
context:
space:
mode:
authorMichael Weghorn <m.weghorn@posteo.de>2024-05-07 08:28:52 +0200
committerMichael Weghorn <m.weghorn@posteo.de>2024-05-07 16:16:49 +0200
commit047475fb4c50f0c99aa283c3a882763ae57b8c85 (patch)
treeb71f32890fdd877f0a0e6ccbbac42d385d660c52 /vcl/unx/gtk3/a11y/atkutil.cxx
parentfedd4886b0b63ea3254ea4ce4b7f9b5b73af95f0 (diff)
gtk3 a11y: Drop VclEventId::TabpageActivate processing
Drop the manual processing of `VclEventId::TabpageActivate` in the gtk3 a11y bridge. As mentioned in commit c45c64aeb57dce91965d7be54601128946455c90 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 , the a11y bridge should not have to handle VCL events itself, but all relevant events should be forwarded to the a11y event listener as appropriate `AccessibleEventObject` and be handled by the a11y event listener instead, see `AtkListener::notifyEvent` for the gtk3 implementation. By now, most if not all tab pages should be native GTK widgets anyway. For non-native ones, `VCLXAccessibleTabControl::ProcessWindowEvent` contains handling for the `VclEventId::TabpageActivate` event that should be taking care of forwarding that as the corresponding a11y event to the a11y bridges. If anything is still missing after this commit, that's probably a good starting point for further analysis. Change-Id: I5b3f64c973d4030d2b68be6dff1d771bc0cef405 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167255 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Diffstat (limited to 'vcl/unx/gtk3/a11y/atkutil.cxx')
-rw-r--r--vcl/unx/gtk3/a11y/atkutil.cxx24
1 files changed, 0 insertions, 24 deletions
diff --git a/vcl/unx/gtk3/a11y/atkutil.cxx b/vcl/unx/gtk3/a11y/atkutil.cxx
index d10bc3b27967..51b783b2d4fd 100644
--- a/vcl/unx/gtk3/a11y/atkutil.cxx
+++ b/vcl/unx/gtk3/a11y/atkutil.cxx
@@ -274,27 +274,6 @@ void DocumentFocusListener::detachRecursive(
}
}
-/*****************************************************************************/
-
-/*
- * page tabs in gtk are widgets, so we need to simulate focus events for those
- */
-
-static void handle_tabpage_activated(vcl::Window *pWindow)
-{
- uno::Reference< accessibility::XAccessible > xAccessible =
- pWindow->GetAccessible();
-
- if( ! xAccessible.is() )
- return;
-
- uno::Reference< accessibility::XAccessibleSelection > xSelection(
- xAccessible->getAccessibleContext(), uno::UNO_QUERY);
-
- if( xSelection.is() )
- atk_wrapper_notify_focus_change(xSelection->getSelectedAccessibleChild(0));
-}
-
rtl::Reference<DocumentFocusListener> GtkSalData::GetDocumentFocusListener()
{
rtl::Reference<DocumentFocusListener> xDFL = m_xDocumentFocusListener.get();
@@ -312,9 +291,6 @@ static void WindowEventHandler(void *, VclSimpleEvent& rEvent)
{
switch (rEvent.GetId())
{
- case VclEventId::TabpageActivate:
- handle_tabpage_activated(static_cast< ::VclWindowEvent const * >(&rEvent)->GetWindow());
- break;
case VclEventId::ComboboxSetText:
// This looks quite strange to me. Stumbled over this when fixing #i104290#.