[gtk/matthiasc/atspi-child] widget: Don't add reordered children



commit 1e13acb206eed23468496f831f3e584890536c7a
Author: Matthias Clasen <mclasen redhat com>
Date:   Sat Oct 24 11:12:19 2020 -0400

    widget: Don't add reordered children
    
    gtk_widget_reposition_after is called both to add new children,
    and to reposition existing children. We only want to emit
    accessible changes in the former case (since AT-SPI doesn't
    have events for reordering).

 gtk/gtkwidget.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
---
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index 5d22f42248..0e986f9d23 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -5794,9 +5794,10 @@ gtk_widget_reposition_after (GtkWidget *widget,
       gtk_widget_queue_compute_expand (parent);
     }
 
-  gtk_accessible_update_children (GTK_ACCESSIBLE (parent),
-                                  GTK_ACCESSIBLE (widget),
-                                  GTK_ACCESSIBLE_CHILD_STATE_ADDED);
+  if (prev_parent == NULL)
+    gtk_accessible_update_children (GTK_ACCESSIBLE (parent),
+                                    GTK_ACCESSIBLE (widget),
+                                    GTK_ACCESSIBLE_CHILD_STATE_ADDED);
 
   gtk_widget_pop_verify_invariants (widget);
 }


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