* @return AtspiAccessible* pointer to current object
*
* @note If current element is last in line function advances to
- * next line.
+ * next line to first element.
* @note If current element is last in last line, function returns NULL
*/
AtspiAccessible *flat_navi_context_next(FlatNaviContext *ctx);
* @return AtspiAccessible* pointer to current object
*
* @note If current element is first in line function advances to
- * previous line.
+ * previous line to last element.
* @note If current element is first in first line, function returns NULL
*/
AtspiAccessible *flat_navi_context_prev(FlatNaviContext *ctx);
{
char *name = atspi_accessible_get_name(obj, NULL);
char *role = atspi_accessible_get_role_name(obj, NULL);
- DEBUG("%d %s %s, ", i++, name, role);
+ const ObjectCache *oc = object_cache_get(obj);
+ DEBUG("%d %s %s, (%d %d %d %d)", i++, name, role,
+ oc->bounds->x, oc->bounds->y, oc->bounds->width, oc->bounds->height);
if (name) g_free(name);
if (role) g_free(role);
}
if (new)
ctx->current = new;
else
- return flat_navi_context_line_prev(ctx);
+ {
+ if (!flat_navi_context_line_prev(ctx))
+ return NULL;
+ ctx->current = eina_list_last(eina_list_data_get(ctx->current_line));
+ }
return eina_list_data_get(ctx->current);
}