#define CALLY_GET_CLUTTER_ACTOR(cally_object) \
(CLUTTER_ACTOR (atk_gobject_accessible_get_object (ATK_GOBJECT_ACCESSIBLE (cally_object))))
+void _cally_actor_get_top_level_origin (ClutterActor *actor,
+ gint *x,
+ gint *y);
+
#endif /* __CALLY_ACTOR_PRIVATE_H__ */
static void cally_actor_focus_event (AtkObject *obj,
gboolean focus_in);
static gboolean _is_actor_on_screen (ClutterActor *actor);
-static void _get_top_level_origin (ClutterActor *actor,
- gint *x,
- gint *y);
/* AtkAction.h */
static void cally_actor_action_interface_init (AtkActionIface *iface);
if (coord_type == ATK_XY_SCREEN)
{
- _get_top_level_origin (actor, &top_level_x, &top_level_y);
+ _cally_actor_get_top_level_origin (actor, &top_level_x, &top_level_y);
*x += top_level_x;
*y += top_level_y;
* required
*
*/
-static void
-_get_top_level_origin (ClutterActor *actor,
- gint *x,
- gint *y)
+void
+_cally_actor_get_top_level_origin (ClutterActor *actor,
+ gint *xp,
+ gint *yp)
{
/* default values */
- *x = 0;
- *y = 0;
+ gint x = 0;
+ gint y = 0;
#ifdef HAVE_CLUTTER_GLX
{
stage_window = clutter_x11_get_stage_window (CLUTTER_STAGE (stage));
return_val = XTranslateCoordinates (display, stage_window, root_window,
- 0, 0, x, y,
+ 0, 0, &x, &y,
&child);
if (!return_val)
}
}
#endif
+
+ if (xp)
+ *xp = x;
+
+ if (yp)
+ *yp = y;
}
/* AtkAction implementation */