Skip to content


Browse files Browse the repository at this point in the history
Emit accessible-name-change signal for icons only when icons are renamed
caja_icon_canvas_item_set_property was emitting accessible-name-change
signals whenever the PROP_EDITABLE_TEXT was being set for an icon. This
method is called by caja_icon_container_request_update_all when the icon
view is first loaded. Thus irrelevant events are being emitted (the name
of each icon didn't change, as far as the user is concerned). Furthermore,
this floods assistive technologies any time the user opens a folder with
a large number of files.

Moving the notification out of caja_icon_canvas_item_set_property and
into end_renaming_mode (where ICON_TEXT_CHANGED is also emitted) solves
the problem of floods of irrelevant notifications while still emitting
the signal when the name actually changes.
  • Loading branch information
joanmarie authored and raveit65 committed Apr 24, 2018
1 parent 9f8d950 commit 3c3f62d
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 1 deletion.
1 change: 0 additions & 1 deletion libcaja-private/caja-icon-canvas-item.c
Expand Up @@ -379,7 +379,6 @@ caja_icon_canvas_item_set_property (GObject *object,
gail_text_util_text_setup (details->text_util,
g_object_notify (G_OBJECT(accessible), "accessible-name");

caja_icon_canvas_item_invalidate_label_size (item);
Expand Down
4 changes: 4 additions & 0 deletions libcaja-private/caja-icon-container.c
Expand Up @@ -9078,6 +9078,7 @@ end_renaming_mode (CajaIconContainer *container, gboolean commit)
CajaIcon *icon;
const char *changed_text;
AtkObject *accessible_icon;

set_pending_icon_to_rename (container, NULL);

Expand Down Expand Up @@ -9110,6 +9111,9 @@ end_renaming_mode (CajaIconContainer *container, gboolean commit)
signals[ICON_TEXT_CHANGED], 0,

accessible_icon = atk_gobject_accessible_for_object (G_OBJECT(icon->item));
g_object_notify (G_OBJECT(accessible_icon), "accessible-name");

Expand Down

0 comments on commit 3c3f62d

Please sign in to comment.