Commit fe925456 authored by Li Yuan's avatar Li Yuan Committed by Li Yuan

Bug #497218. Emit "active-descendant-changed" when focus first comes into

2008-01-11  Li Yuan  <li.yuan@sun.com>

        * gailtreeview.c: (gail_tree_view_ref_child),
        (idle_cursor_changed):
        Bug #497218. Emit "active-descendant-changed" when focus first comes
        into treeview. Add/remove ATK_STATE_FOCUSED when cursor changes.

svn path=/trunk/; revision=19350
parent be9d0fa2
2008-01-11 Li Yuan <li.yuan@sun.com>
* gailtreeview.c: (gail_tree_view_ref_child),
(idle_cursor_changed):
Bug #497218. Emit "active-descendant-changed" when focus first comes
into treeview. Add/remove ATK_STATE_FOCUSED when cursor changes.
2008-01-11 Li Yuan <li.yuan@sun.com>
* gailtreeview.c: (gail_tree_view_get_n_rows):
......
......@@ -987,6 +987,9 @@ gail_tree_view_ref_child (AtkObject *obj,
{
gailview->focus_cell = g_object_ref (cell);
gail_cell_add_state (cell, ATK_STATE_FOCUSED, FALSE);
g_signal_emit_by_name (gailview,
"active-descendant-changed",
cell);
}
}
g_list_free (renderer_list);
......@@ -2625,12 +2628,16 @@ idle_cursor_changed (gpointer data)
if (gail_tree_view->focus_cell)
{
gail_cell_remove_state (GAIL_CELL (gail_tree_view->focus_cell), ATK_STATE_ACTIVE, FALSE);
gail_cell_remove_state (GAIL_CELL (gail_tree_view->focus_cell), ATK_STATE_FOCUSED, FALSE);
g_object_unref (gail_tree_view->focus_cell);
}
gail_tree_view->focus_cell = cell;
if (GTK_WIDGET_HAS_FOCUS (widget))
gail_cell_add_state (GAIL_CELL (cell), ATK_STATE_ACTIVE, FALSE);
{
gail_cell_add_state (GAIL_CELL (cell), ATK_STATE_ACTIVE, FALSE);
gail_cell_add_state (GAIL_CELL (cell), ATK_STATE_FOCUSED, FALSE);
}
g_signal_emit_by_name (gail_tree_view,
"active-descendant-changed",
cell);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment