diff options
author | Matthias Clasen <mclasen@redhat.com> | 2020-07-17 13:10:18 -0400 |
---|---|---|
committer | Emmanuele Bassi <ebassi@gnome.org> | 2020-07-26 20:31:15 +0100 |
commit | b7777add36df846ccd6a3d4872f0c847be91d9cd (patch) | |
tree | 0b660d30748742c6a4e56f680a36030f2b29ccc9 /gtk/gtkprogressbar.c | |
parent | 609383f93c6b695ac36ef5f7473dc440eff50361 (diff) | |
download | gtk+-b7777add36df846ccd6a3d4872f0c847be91d9cd.tar.gz |
a11y: Update GtkProgressBar
Update state and properties as appropriate.
Diffstat (limited to 'gtk/gtkprogressbar.c')
-rw-r--r-- | gtk/gtkprogressbar.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gtk/gtkprogressbar.c b/gtk/gtkprogressbar.c index 1b71c9769b..1041e1185f 100644 --- a/gtk/gtkprogressbar.c +++ b/gtk/gtkprogressbar.c @@ -643,6 +643,9 @@ gtk_progress_bar_act_mode_enter (GtkProgressBar *pbar) gboolean inverted; gtk_widget_add_css_class (pbar->progress_widget, GTK_STYLE_CLASS_PULSE); + gtk_accessible_update_state (GTK_ACCESSIBLE (pbar), + GTK_ACCESSIBLE_STATE_BUSY, TRUE, + -1); inverted = pbar->inverted; if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL) @@ -680,6 +683,9 @@ gtk_progress_bar_act_mode_leave (GtkProgressBar *pbar) gtk_widget_remove_tick_callback (GTK_WIDGET (pbar), pbar->tick_id); pbar->tick_id = 0; + gtk_accessible_update_state (GTK_ACCESSIBLE (pbar), + GTK_ACCESSIBLE_STATE_BUSY, FALSE, + -1); gtk_widget_remove_css_class (pbar->progress_widget, GTK_STYLE_CLASS_PULSE); update_node_classes (pbar); } @@ -730,6 +736,13 @@ gtk_progress_bar_set_fraction (GtkProgressBar *pbar, gtk_widget_queue_allocate (pbar->trough_widget); update_fraction_classes (pbar); + gtk_accessible_update_property (GTK_ACCESSIBLE (pbar), + GTK_ACCESSIBLE_PROPERTY_VALUE_MAX, 1.0, + GTK_ACCESSIBLE_PROPERTY_VALUE_MIN, 0.0, + GTK_ACCESSIBLE_PROPERTY_VALUE_NOW, fraction, + -1); + + g_object_notify_by_pspec (G_OBJECT (pbar), progress_props[PROP_FRACTION]); } |