aboutsummaryrefslogtreecommitdiffstats
path: root/a11y/calendar/ea-cal-view-event.c
diff options
context:
space:
mode:
authorBolian Yin <bolian.yin@sun.com>2003-12-10 11:56:31 +0800
committerBolian Yin <byin@src.gnome.org>2003-12-10 11:56:31 +0800
commitfa5a7a0472cf4153318c30ab84524529e2d63afe (patch)
tree66447b94674121074a2f70cff06e8f9eb868b559 /a11y/calendar/ea-cal-view-event.c
parentde2f6d31cb030b932a60417e422c07111a101fc6 (diff)
downloadgsoc2013-evolution-fa5a7a0472cf4153318c30ab84524529e2d63afe.tar
gsoc2013-evolution-fa5a7a0472cf4153318c30ab84524529e2d63afe.tar.gz
gsoc2013-evolution-fa5a7a0472cf4153318c30ab84524529e2d63afe.tar.bz2
gsoc2013-evolution-fa5a7a0472cf4153318c30ab84524529e2d63afe.tar.lz
gsoc2013-evolution-fa5a7a0472cf4153318c30ab84524529e2d63afe.tar.xz
gsoc2013-evolution-fa5a7a0472cf4153318c30ab84524529e2d63afe.tar.zst
gsoc2013-evolution-fa5a7a0472cf4153318c30ab84524529e2d63afe.zip
corret index error in week view. impl. get_index_in_parent emit signal
2003-12-05 Bolian Yin <bolian.yin@sun.com> * calendar/ea-cal-view-event.c (ea_cal_view_event_get_index_in_parent): corret index error in week view. * calendar/ea-day-view-cell.c: impl. get_index_in_parent * calendar/ea-day-view-main-item.c: emit signal "active-descendant-changed", fix error in selection_interface_ref_selection. * widgets/ea-calendar-cell.c: impl. get_index_in_parent. * widgets/ea-calendar-item.c: change signature of e_calendar_item_get_offset_for_date, emit signal "active-descendant-changed". svn path=/trunk/; revision=23902
Diffstat (limited to 'a11y/calendar/ea-cal-view-event.c')
-rw-r--r--a11y/calendar/ea-cal-view-event.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/a11y/calendar/ea-cal-view-event.c b/a11y/calendar/ea-cal-view-event.c
index 37b0d5ed90..5f9e7eb9ba 100644
--- a/a11y/calendar/ea-cal-view-event.c
+++ b/a11y/calendar/ea-cal-view-event.c
@@ -346,15 +346,18 @@ ea_cal_view_event_get_index_in_parent (AtkObject *accessible)
}
}
else if (E_IS_WEEK_VIEW (cal_view)) {
- gint index;
- EWeekViewEvent *week_view_event;
- EWeekView *week_view = E_WEEK_VIEW (cal_view);
-
- for (index = week_view->events->len - 1; index >= 0; --index) {
- week_view_event = &g_array_index (week_view->events,
- EWeekViewEvent, index);
- if (cal_view_event == (ECalendarViewEvent*)week_view_event)
+ AtkObject *atk_parent, *atk_child;
+ gint index = 0;
+
+ atk_parent = atk_object_get_parent (accessible);
+ while ((atk_child = atk_object_ref_accessible_child (atk_parent,
+ index)) != NULL) {
+ if (atk_child == accessible) {
+ g_object_unref (atk_child);
return index;
+ }
+ g_object_unref (atk_child);
+ ++index;
}
}
else {