[gtk/a11y/atcontext-realize: 36/36] a11y: Allow updating role on unrealized contexts




commit 950dd84efe9c34b8f50226415a2ea2e21477ce1f
Author: Emmanuele Bassi <ebassi gnome org>
Date:   Wed Nov 4 14:35:16 2020 +0000

    a11y: Allow updating role on unrealized contexts
    
    We can still change the accessible role if an ATContext instance is
    unrealized.

 gtk/gtkatcontext.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
---
diff --git a/gtk/gtkatcontext.c b/gtk/gtkatcontext.c
index 078dc2872d..0305ac156e 100644
--- a/gtk/gtkatcontext.c
+++ b/gtk/gtkatcontext.c
@@ -90,7 +90,10 @@ gtk_at_context_set_property (GObject      *gobject,
   switch (prop_id)
     {
     case PROP_ACCESSIBLE_ROLE:
-      self->accessible_role = g_value_get_enum (value);
+      if (!self->realized)
+        self->accessible_role = g_value_get_enum (value);
+      else
+        g_critical ("The accessible role cannot be set on a realized AT context");
       break;
 
     case PROP_ACCESSIBLE:
@@ -203,7 +206,7 @@ gtk_at_context_class_init (GtkATContextClass *klass)
                        GTK_TYPE_ACCESSIBLE_ROLE,
                        GTK_ACCESSIBLE_ROLE_NONE,
                        G_PARAM_READWRITE |
-                       G_PARAM_CONSTRUCT_ONLY |
+                       G_PARAM_CONSTRUCT |
                        G_PARAM_STATIC_STRINGS);
 
   /**


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]