diff options
author | Alexis Christoforides <alexis@thenull.net> | 2017-05-09 23:28:34 +0300 |
---|---|---|
committer | Alexis Christoforides <alexis@thenull.net> | 2017-05-09 23:28:34 +0300 |
commit | 378d9e80042f405053ee9c0d0b26e504ec9f2b79 (patch) | |
tree | 4bc7ffd41d49028687c8192a9f10d9cc391fb20c /packages | |
parent | 9bf9a809131b85c39e9eeecfa0b36fb2eaedce4d (diff) |
Update GTK+ with some accessibility patches
Diffstat (limited to 'packages')
-rw-r--r-- | packages/gtk+.py | 3 | ||||
-rw-r--r-- | packages/patches/gtk/0001-A11y-Emit-the-container-add-signal-when-inserting-a-.patch | 38 | ||||
-rw-r--r-- | packages/patches/gtk/0001-A11y-Fix-dialog-accessibility.patch | 33 |
3 files changed, 74 insertions, 0 deletions
diff --git a/packages/gtk+.py b/packages/gtk+.py index d15fe92..2e62dc5 100644 --- a/packages/gtk+.py +++ b/packages/gtk+.py @@ -188,7 +188,10 @@ class GtkPackage (GnomeGitPackage): 'patches/gtk/emit-container-add.patch', 'patches/gtk/create-accessibility-object.patch', + 'patches/gtk/make-gtkpaned-emit-signals.patch', + 'patches/gtk/0001-A11y-Fix-dialog-accessibility.patch', + 'patches/gtk/0001-A11y-Emit-the-container-add-signal-when-inserting-a-.patch', # https://bugzilla.xamarin.com/show_bug.cgi?id=51382 # https://bugzilla.xamarin.com/show_bug.cgi?id=51375 diff --git a/packages/patches/gtk/0001-A11y-Emit-the-container-add-signal-when-inserting-a-.patch b/packages/patches/gtk/0001-A11y-Emit-the-container-add-signal-when-inserting-a-.patch new file mode 100644 index 0000000..a40fdff --- /dev/null +++ b/packages/patches/gtk/0001-A11y-Emit-the-container-add-signal-when-inserting-a-.patch @@ -0,0 +1,38 @@ +From c0198befd34288a1c2c6ae6f2523076b8bd8b0d4 Mon Sep 17 00:00:00 2001 +From: iain holmes <iain@xamarin.com> +Date: Tue, 24 Jan 2017 10:53:39 +0000 +Subject: [PATCH 1/1] [A11y] Emit the container::add signal when inserting a + menu + +--- + gtk/gtkmenushell.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/gtk/gtkmenushell.c b/gtk/gtkmenushell.c +index a7ad7b5..cd170fe 100644 +--- a/gtk/gtkmenushell.c ++++ b/gtk/gtkmenushell.c +@@ -521,6 +521,9 @@ gtk_menu_shell_real_insert (GtkMenuShell *menu_shell, + menu_shell->children = g_list_insert (menu_shell->children, child, position); + + gtk_widget_set_parent (child, GTK_WIDGET (menu_shell)); ++ ++ // Emit the container::add signal so the accessibility system can pick it up ++ g_signal_emit_by_name (G_OBJECT (menu_shell), "add", child); + } + + void +@@ -1039,6 +1042,10 @@ static void + gtk_menu_shell_add (GtkContainer *container, + GtkWidget *widget) + { ++ if (widget->parent == container) { ++ return; ++ } ++ + gtk_menu_shell_append (GTK_MENU_SHELL (container), widget); + } + +-- +2.10.1 (Apple Git-78) + diff --git a/packages/patches/gtk/0001-A11y-Fix-dialog-accessibility.patch b/packages/patches/gtk/0001-A11y-Fix-dialog-accessibility.patch new file mode 100644 index 0000000..e73ea68 --- /dev/null +++ b/packages/patches/gtk/0001-A11y-Fix-dialog-accessibility.patch @@ -0,0 +1,33 @@ +From 3d3ee2f91bbcb364891e82b99e932d918c605658 Mon Sep 17 00:00:00 2001 +From: iain holmes <iain@xamarin.com> +Date: Thu, 24 Nov 2016 11:30:23 +0000 +Subject: [PATCH] [A11y] Fix dialog accessibility + +Composite widgets like the dialog need to have their accessibility element +created before they start building themselves. +--- + gtk/gtkdialog.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/gtk/gtkdialog.c b/gtk/gtkdialog.c +index a2756f6..41fc9b1 100644 +--- a/gtk/gtkdialog.c ++++ b/gtk/gtkdialog.c +@@ -275,6 +275,14 @@ gtk_dialog_init (GtkDialog *dialog) + priv = GET_PRIVATE (dialog); + priv->ignore_separator = FALSE; + ++ /* If we don't create the accessible now, then the accessibility subsystem ++ * will never know about vbox being added. This is a bit of a hack as ++ * every composite widget that builds itself in _init will need to do this ++ * or else it will be inaccessible, but I can't think of a better way at ++ * present ++ */ ++ gtk_widget_get_accessible (GTK_WIDGET (dialog)); ++ + /* To avoid breaking old code that prevents destroy on delete event + * by connecting a handler, we have to have the FIRST signal + * connection on the dialog. +-- +2.9.3 (Apple Git-75) + |