summaryrefslogtreecommitdiff
path: root/gtk/gtkexpander.c
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gnome.org>2020-06-16 16:41:59 +0100
committerEmmanuele Bassi <ebassi@gnome.org>2020-07-26 20:31:14 +0100
commitc63087a5631e72cd1c45bdc5a41bf605195be64c (patch)
tree5336167dacb3d88a5d23220d0846f7847605590c /gtk/gtkexpander.c
parentea0fc7619ddd0ad20cd7c83e3e8c8672004c20c9 (diff)
downloadgtk+-c63087a5631e72cd1c45bdc5a41bf605195be64c.tar.gz
Remove ATK
To build a better world sometimes means having to tear the old one down. -- Alexander Pierce, "Captain America: The Winter Soldier" ATK served us well for nearly 20 years, but the world has changed, and GTK has changed with it. Now ATK is mostly a hindrance towards improving the accessibility stack: - it maps to a very specific implementation, AT-SPI, which is Linux and Unix specific - it requires implementing the same functionality in three different layers of the stack: AT-SPI, ATK, and GTK - only GTK uses it; every other Linux and Unix toolkit and application talks to AT-SPI directly, including assistive technologies Sadly, we cannot incrementally port GTK to a new accessibility stack; since ATK insulates us entirely from the underlying implementation, we cannot replace it piecemeal. Instead, we're going to remove everything and then incrementally build on a clean slate: - add an "accessible" interface, implemented by GTK objects directly, which describe the accessible role and state changes for every UI element - add an "assistive technology context" to proxy a native accessibility API, and assign it to every widget - implement the AT context depending on the platform For more information, see: https://gitlab.gnome.org/GNOME/gtk/-/issues/2833
Diffstat (limited to 'gtk/gtkexpander.c')
-rw-r--r--gtk/gtkexpander.c18
1 files changed, 0 insertions, 18 deletions
diff --git a/gtk/gtkexpander.c b/gtk/gtkexpander.c
index a5864d5f47..7993e506d4 100644
--- a/gtk/gtkexpander.c
+++ b/gtk/gtkexpander.c
@@ -126,8 +126,6 @@
#include "gtkstylecontextprivate.h"
#include "gtkwidgetprivate.h"
-#include "a11y/gtkexpanderaccessibleprivate.h"
-
#include <string.h>
#define TIMEOUT_EXPAND 500
@@ -375,7 +373,6 @@ gtk_expander_class_init (GtkExpanderClass *klass)
NULL,
G_TYPE_NONE, 0);
- gtk_widget_class_set_accessible_type (widget_class, GTK_TYPE_EXPANDER_ACCESSIBLE);
gtk_widget_class_set_css_name (widget_class, I_("expander-widget"));
}
@@ -880,14 +877,6 @@ gtk_expander_set_expanded (GtkExpander *expander,
gtk_expander_resize_toplevel (expander);
}
- {
- AtkObject *accessible = _gtk_widget_peek_accessible (GTK_WIDGET (expander));
-
- if (accessible != NULL)
- gtk_expander_accessible_update_state (GTK_EXPANDER_ACCESSIBLE (accessible),
- expander->expanded);
- }
-
g_object_notify (G_OBJECT (expander), "expanded");
}
@@ -941,13 +930,6 @@ gtk_expander_set_label (GtkExpander *expander,
gtk_expander_set_label_widget (expander, child);
}
- {
- AtkObject *accessible = _gtk_widget_peek_accessible (GTK_WIDGET (expander));
-
- if (accessible != NULL)
- gtk_expander_accessible_update_label (GTK_EXPANDER_ACCESSIBLE (accessible));
- }
-
g_object_notify (G_OBJECT (expander), "label");
}