linux-packaging-mono/external/bockbuild/packages/patches/gtk/create-accessibility-object.patch

43 lines
1.6 KiB
Diff
Raw Normal View History

commit 6ed9fd7a27d85b5abecc0f727282586bc616b79d
Author: iain holmes <iain@xamarin.com>
Date: Mon Jul 25 17:00:40 2016 +0100
[GtkWidget] Always create an accessibilityy object for every widget
Create an accessibility once the widget has been fully constructed.
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index facc0db..55d1fbc 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -255,6 +255,7 @@ static void gtk_widget_get_property (GObject *object,
static void gtk_widget_dispose (GObject *object);
static void gtk_widget_real_destroy (GtkObject *object);
static void gtk_widget_finalize (GObject *object);
+static void gtk_widget_constructed (GObject *object);
static void gtk_widget_real_show (GtkWidget *widget);
static void gtk_widget_real_hide (GtkWidget *widget);
static void gtk_widget_real_map (GtkWidget *widget);
@@ -481,6 +482,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
gobject_class->dispose = gtk_widget_dispose;
gobject_class->finalize = gtk_widget_finalize;
+ gobject_class->constructed = gtk_widget_constructed;
gobject_class->set_property = gtk_widget_set_property;
gobject_class->get_property = gtk_widget_get_property;
@@ -2961,6 +2963,13 @@ gtk_widget_init (GtkWidget *widget)
g_object_ref (widget->style);
}
+static void
+gtk_widget_constructed (GObject *object)
+{
+ // Always create an accessible for widgets
+ gtk_widget_get_accessible (GTK_WIDGET (object));
+ G_OBJECT_CLASS (gtk_widget_parent_class)->constructed (object);
+}
static void
gtk_widget_dispatch_child_properties_changed (GtkWidget *widget,