1
0
Fork 0

clutter: Rename CallyActor to ActorAccessible

Moving it to the correct namespace

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3917>
This commit is contained in:
Bilal Elmoussaoui 2024-08-03 19:32:18 +02:00 committed by Marge Bot
parent 43f24b03e5
commit e2e93353d9
13 changed files with 196 additions and 232 deletions

View file

@ -1,35 +0,0 @@
/* CALLY - The Clutter Accessibility Implementation Library
*
* Copyright (C) 2008 Igalia, S.L.
*
* Author: Alejandro Piñeiro Iglesias <apinheiro@igalia.com>
*
* Some parts are based on GailWidget from GAIL
* GAIL - The GNOME Accessibility Implementation Library
* Copyright 2001, 2002, 2003 Sun Microsystems Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "clutter/cally-actor.h"
/*
* Auxiliary define, in order to get the clutter actor from the AtkObject using
* AtkGObject methods
*
*/
#define CALLY_GET_CLUTTER_ACTOR(cally_object) \
(CLUTTER_ACTOR (atk_gobject_accessible_get_object (ATK_GOBJECT_ACCESSIBLE (cally_object))))

View file

@ -69,13 +69,12 @@
#include "config.h"
#include "clutter/cally-clone.h"
#include "clutter/cally-actor-private.h"
/* AtkObject */
static void cally_clone_real_initialize (AtkObject *obj,
gpointer data);
G_DEFINE_TYPE (CallyClone, cally_clone, CALLY_TYPE_ACTOR)
G_DEFINE_TYPE (CallyClone, cally_clone, CLUTTER_TYPE_ACTOR_ACCESSIBLE)
static void
cally_clone_class_init (CallyCloneClass *klass)

View file

@ -25,7 +25,7 @@
#error "Only <clutter/clutter.h> can be included directly."
#endif
#include "clutter/cally-actor.h"
#include "clutter/clutter-actor-accessible.h"
G_BEGIN_DECLS
@ -36,7 +36,7 @@ G_DECLARE_DERIVABLE_TYPE (CallyClone,
cally_clone,
CALLY,
CLONE,
CallyActor)
ClutterActorAccessible)
typedef struct _CallyClone CallyClone;
typedef struct _CallyCloneClass CallyCloneClass;
@ -44,7 +44,7 @@ typedef struct _CallyCloneClass CallyCloneClass;
struct _CallyCloneClass
{
/*< private >*/
CallyActorClass parent_class;
ClutterActorAccessibleClass parent_class;
};
G_END_DECLS

View file

@ -33,8 +33,8 @@
*/
#include "config.h"
#include "clutter/clutter-actor-private.h"
#include "clutter/cally-stage.h"
#include "clutter/cally-actor-private.h"
#include "clutter/clutter-stage.h"
/* AtkObject.h */
@ -48,7 +48,7 @@ static void cally_stage_window_interface_init (AtkWindowIface *
G_DEFINE_TYPE_WITH_CODE (CallyStage,
cally_stage,
CALLY_TYPE_ACTOR,
CLUTTER_TYPE_ACTOR_ACCESSIBLE,
G_IMPLEMENT_INTERFACE (ATK_TYPE_WINDOW,
cally_stage_window_interface_init));
@ -89,7 +89,7 @@ cally_stage_ref_state_set (AtkObject *obj)
cally_stage = CALLY_STAGE (obj);
state_set = ATK_OBJECT_CLASS (cally_stage_parent_class)->ref_state_set (obj);
stage = CLUTTER_STAGE (CALLY_GET_CLUTTER_ACTOR (cally_stage));
stage = CLUTTER_STAGE (CLUTTER_ACTOR_FROM_ACCESSIBLE (cally_stage));
if (stage == NULL)
return state_set;

View file

@ -24,7 +24,7 @@
#error "Only <clutter/clutter.h> can be included directly."
#endif
#include "clutter/cally-actor.h"
#include "clutter/clutter-actor-accessible.h"
#include "clutter/clutter-macros.h"
G_BEGIN_DECLS
@ -36,7 +36,7 @@ G_DECLARE_DERIVABLE_TYPE (CallyStage,
cally_stage,
CALLY,
STAGE,
CallyActor)
ClutterActorAccessible)
typedef struct _CallyStage CallyStage;
typedef struct _CallyStageClass CallyStageClass;
@ -44,7 +44,7 @@ typedef struct _CallyStageClass CallyStageClass;
struct _CallyStageClass
{
/*< private >*/
CallyActorClass parent_class;
ClutterActorAccessibleClass parent_class;
};
G_END_DECLS

View file

@ -35,11 +35,12 @@
* [class@Clutter.Text], #AtkText and #AtkEditableText
*/
#include "clutter.h"
#include "config.h"
#include "clutter/cally-text.h"
#include "clutter/cally-actor-private.h"
#include "clutter/clutter-actor-private.h"
#include "clutter/clutter-main.h"
#include "clutter/clutter-text.h"
@ -52,7 +53,7 @@ static AtkStateSet* cally_text_ref_state_set (AtkObject *obj);
/* atkaction */
static void _cally_text_activate_action (CallyActor *cally_actor);
static void _cally_text_activate_action (ClutterActorAccessible *accessible_actor);
static void _check_activate_action (CallyText *cally_text,
ClutterText *clutter_text);
@ -178,13 +179,13 @@ static const gchar * cally_text_action_get_name (AtkAction *action,
gint i);
/**
* CallyActionFunc:
* @cally_actor: a #CallyActor
* ClutterActorActionFunc:
* @accessible_actor: a #ClutterActorAccessible
*
* Action function, to be used on #AtkAction implementations as a individual
* action
*/
typedef void (* CallyActionFunc) (CallyActor *cally_actor);
typedef void (* ClutterActorActionFunc) (ClutterActorAccessible *accessible_actor);
/*< private >
* CallyTextActionInfo:
@ -198,7 +199,7 @@ typedef struct _CallyTextActionInfo
{
gchar *name;
CallyActionFunc do_action_func;
ClutterActorActionFunc do_action_func;
} CallyTextActionInfo;
@ -227,7 +228,7 @@ typedef struct _CallyTextPrivate
G_DEFINE_TYPE_WITH_CODE (CallyText,
cally_text,
CALLY_TYPE_ACTOR,
CLUTTER_TYPE_ACTOR_ACCESSIBLE,
G_ADD_PRIVATE (CallyText)
G_IMPLEMENT_INTERFACE (ATK_TYPE_TEXT,
cally_text_text_interface_init)
@ -330,7 +331,7 @@ cally_text_ref_state_set (AtkObject *obj)
result = ATK_OBJECT_CLASS (cally_text_parent_class)->ref_state_set (obj);
actor = CALLY_GET_CLUTTER_ACTOR (obj);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (obj);
if (actor == NULL)
return result;
@ -1082,7 +1083,7 @@ cally_text_get_text (AtkText *text,
const gchar *string = NULL;
gint character_count = 0;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* Object is defunct */
return NULL;
@ -1112,7 +1113,7 @@ cally_text_get_character_at_offset (AtkText *text,
gunichar unichar;
PangoLayout *layout = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return '\0';
@ -1145,7 +1146,7 @@ cally_text_get_text_before_offset (AtkText *text,
{
ClutterActor *actor = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return NULL;
@ -1163,7 +1164,7 @@ cally_text_get_text_at_offset (AtkText *text,
{
ClutterActor *actor = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return NULL;
@ -1181,7 +1182,7 @@ cally_text_get_text_after_offset (AtkText *text,
{
ClutterActor *actor = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return NULL;
@ -1197,7 +1198,7 @@ cally_text_get_caret_offset (AtkText *text)
ClutterTextBuffer *buffer;
int cursor_pos;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return -1;
@ -1216,7 +1217,7 @@ cally_text_set_caret_offset (AtkText *text,
{
ClutterActor *actor = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return FALSE;
@ -1233,7 +1234,7 @@ cally_text_get_character_count (AtkText *text)
ClutterActor *actor = NULL;
ClutterText *clutter_text = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return 0;
@ -1248,7 +1249,7 @@ cally_text_get_n_selections (AtkText *text)
gint selection_bound = -1;
gint cursor_position = -1;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return 0;
@ -1272,7 +1273,7 @@ cally_text_get_selection (AtkText *text,
{
ClutterActor *actor = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return NULL;
@ -1301,7 +1302,7 @@ cally_text_add_selection (AtkText *text,
ClutterActor *actor;
gint select_start, select_end;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return FALSE;
@ -1332,7 +1333,7 @@ cally_text_remove_selection (AtkText *text,
gint select_start = -1;
gint select_end = -1;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return FALSE;
@ -1367,7 +1368,7 @@ cally_text_set_selection (AtkText *text,
gint select_start = -1;
gint select_end = -1;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return FALSE;
@ -1400,7 +1401,7 @@ cally_text_get_run_attributes (AtkText *text,
ClutterText *clutter_text = NULL;
AtkAttributeSet *at_set = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return NULL;
@ -1424,7 +1425,7 @@ cally_text_get_default_attributes (AtkText *text)
ClutterText *clutter_text = NULL;
AtkAttributeSet *at_set = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return NULL;
@ -1453,7 +1454,7 @@ static void cally_text_get_character_extents (AtkText *text,
const gchar *text_value;
graphene_point3d_t verts[4];
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
goto done;
@ -1508,7 +1509,7 @@ cally_text_get_offset_at_point (AtkText *text,
const gchar *text_value;
gint index;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL) /* State is defunct */
return -1;
@ -1634,7 +1635,7 @@ cally_text_set_text_contents (AtkEditableText *text,
{
ClutterActor *actor = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL)
return;
@ -1654,7 +1655,7 @@ cally_text_insert_text (AtkEditableText *text,
{
ClutterActor *actor = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL)
return;
@ -1679,7 +1680,7 @@ static void cally_text_delete_text (AtkEditableText *text,
{
ClutterActor *actor = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (text);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (text);
if (actor == NULL)
return;
@ -1806,11 +1807,11 @@ _notify_delete (CallyText *cally_text)
/* atkaction */
static void
_cally_text_activate_action (CallyActor *cally_actor)
_cally_text_activate_action (ClutterActorAccessible *accessible_actor)
{
ClutterActor *actor = NULL;
actor = CALLY_GET_CLUTTER_ACTOR (cally_actor);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (accessible_actor);
clutter_text_activate (CLUTTER_TEXT (actor));
}
@ -1853,15 +1854,14 @@ cally_text_action_interface_init (AtkActionIface *iface)
static gboolean
idle_do_action (gpointer data)
{
CallyActor *cally_actor = NULL;
CallyTextPrivate *priv = NULL;
cally_actor = CALLY_ACTOR (data);
priv = cally_text_get_instance_private (CALLY_TEXT (cally_actor));
ClutterActorAccessible *actor_accessible =
CLUTTER_ACTOR_ACCESSIBLE (data);
CallyTextPrivate *priv =
cally_text_get_instance_private (CALLY_TEXT (actor_accessible));
priv->action_idle_handler = 0;
/* state is defunct*/
g_assert (CALLY_GET_CLUTTER_ACTOR (cally_actor) != NULL);
g_assert (CLUTTER_ACTOR_FROM_ACCESSIBLE (actor_accessible) != NULL);
while (!g_queue_is_empty (priv->action_queue))
{
@ -1869,7 +1869,7 @@ idle_do_action (gpointer data)
info = (CallyTextActionInfo *) g_queue_pop_head (priv->action_queue);
info->do_action_func (cally_actor);
info->do_action_func (actor_accessible);
}
return FALSE;
@ -1916,7 +1916,7 @@ cally_text_action_do_action (AtkAction *action,
static gint
cally_text_action_get_n_actions (AtkAction *action)
{
g_return_val_if_fail (CALLY_IS_ACTOR (action), 0);
g_return_val_if_fail (CLUTTER_IS_ACTOR_ACCESSIBLE (action), 0);
/* We only support activate action*/
return 1;
@ -1928,7 +1928,7 @@ cally_text_action_get_name (AtkAction *action,
{
CallyTextPrivate *priv;
g_return_val_if_fail (CALLY_IS_ACTOR (action), NULL);
g_return_val_if_fail (CLUTTER_IS_ACTOR_ACCESSIBLE (action), NULL);
priv = cally_text_get_instance_private (CALLY_TEXT (action));

View file

@ -24,7 +24,7 @@
#error "Only <clutter/clutter.h> can be included directly."
#endif
#include "clutter/cally-actor.h"
#include "clutter/clutter-actor-accessible.h"
G_BEGIN_DECLS
@ -35,7 +35,7 @@ G_DECLARE_DERIVABLE_TYPE (CallyText,
cally_text,
CALLY,
TEXT,
CallyActor)
ClutterActorAccessible)
typedef struct _CallyText CallyText;
typedef struct _CallyTextClass CallyTextClass;
@ -43,7 +43,7 @@ typedef struct _CallyTextClass CallyTextClass;
struct _CallyTextClass
{
/*< private >*/
CallyActorClass parent_class;
ClutterActorAccessibleClass parent_class;
};
G_END_DECLS

View file

@ -1,4 +1,4 @@
/* CALLY - The Clutter Accessibility Implementation Library
/* Clutter.
*
* Copyright (C) 2008 Igalia, S.L.
*
@ -23,11 +23,11 @@
*/
/**
* CallyActor:
* ClutterActorAccessible:
*
* Implementation of the ATK interfaces for [class@Clutter.Actor]
*
* #CallyActor implements the required ATK interfaces of [class@Clutter.Actor]
* #ClutterAccessible implements the required ATK interfaces of [class@Clutter.Actor]
* exposing the common elements on each actor (position, extents, etc).
*/
@ -57,7 +57,7 @@
* buttons. So in this environment, it doesn't make sense to keep
* adding them as default.
*
* Anyway, current implementation of AtkAction is done at CallyActor
* Anyway, current implementation of AtkAction is done at ClutterAccessible
* providing methods to add and remove actions. This is based on the
* one used at gailcell, and proposed as a change on #AtkAction
* interface:
@ -68,73 +68,71 @@
#include "config.h"
#include <glib.h>
#include "clutter/clutter.h"
#include "clutter/clutter-actor-private.h"
#include <math.h>
#include "clutter/cally-actor.h"
#include "clutter/cally-actor-private.h"
#include <glib.h>
static void cally_actor_initialize (AtkObject *obj,
#include "clutter/clutter-actor-private.h"
#include "clutter/clutter-actor-accessible.h"
#include "clutter/clutter-stage.h"
static void clutter_actor_accessible_initialize (AtkObject *obj,
gpointer data);
static void cally_actor_finalize (GObject *obj);
static void clutter_actor_accessible_finalize (GObject *obj);
/* AtkObject.h */
static AtkObject* cally_actor_get_parent (AtkObject *obj);
static gint cally_actor_get_index_in_parent (AtkObject *obj);
static AtkStateSet* cally_actor_ref_state_set (AtkObject *obj);
static gint cally_actor_get_n_children (AtkObject *obj);
static AtkObject* cally_actor_ref_child (AtkObject *obj,
static AtkObject* clutter_actor_accessible_get_parent (AtkObject *obj);
static gint clutter_actor_accessible_get_index_in_parent (AtkObject *obj);
static AtkStateSet* clutter_actor_accessible_ref_state_set (AtkObject *obj);
static gint clutter_actor_accessible_get_n_children (AtkObject *obj);
static AtkObject* clutter_actor_accessible_ref_child (AtkObject *obj,
gint i);
static AtkAttributeSet * cally_actor_get_attributes (AtkObject *obj);
static AtkAttributeSet * clutter_actor_accessible_get_attributes (AtkObject *obj);
/* ClutterContainer */
static gint cally_actor_add_actor (ClutterActor *container,
static gint clutter_actor_accessible_add_actor (ClutterActor *container,
ClutterActor *actor,
gpointer data);
static gint cally_actor_remove_actor (ClutterActor *container,
static gint clutter_actor_accessible_remove_actor (ClutterActor *container,
ClutterActor *actor,
gpointer data);
/* AtkComponent.h */
static void cally_actor_component_interface_init (AtkComponentIface *iface);
static void cally_actor_get_extents (AtkComponent *component,
static void clutter_actor_accessible_component_interface_init (AtkComponentIface *iface);
static void clutter_actor_accessible_get_extents (AtkComponent *component,
gint *x,
gint *y,
gint *width,
gint *height,
AtkCoordType coord_type);
static gint cally_actor_get_mdi_zorder (AtkComponent *component);
static gboolean cally_actor_grab_focus (AtkComponent *component);
static gint clutter_actor_accessible_get_mdi_zorder (AtkComponent *component);
static gboolean clutter_actor_accessible_grab_focus (AtkComponent *component);
struct _CallyActorPrivate
struct _ClutterActorAccessiblePrivate
{
GList *children;
};
G_DEFINE_TYPE_WITH_CODE (CallyActor,
cally_actor,
G_DEFINE_TYPE_WITH_CODE (ClutterActorAccessible,
clutter_actor_accessible,
ATK_TYPE_GOBJECT_ACCESSIBLE,
G_ADD_PRIVATE (CallyActor)
G_ADD_PRIVATE (ClutterActorAccessible)
G_IMPLEMENT_INTERFACE (ATK_TYPE_COMPONENT,
cally_actor_component_interface_init));
clutter_actor_accessible_component_interface_init));
static void
cally_actor_initialize (AtkObject *obj,
clutter_actor_accessible_initialize (AtkObject *obj,
gpointer data)
{
CallyActor *self = NULL;
CallyActorPrivate *priv = NULL;
ClutterActorAccessible *self = NULL;
ClutterActorAccessiblePrivate *priv = NULL;
ClutterActor *actor = NULL;
guint handler_id;
ATK_OBJECT_CLASS (cally_actor_parent_class)->initialize (obj, data);
ATK_OBJECT_CLASS (clutter_actor_accessible_parent_class)->initialize (obj, data);
self = CALLY_ACTOR(obj);
priv = cally_actor_get_instance_private (self);
self = CLUTTER_ACTOR_ACCESSIBLE (obj);
priv = clutter_actor_accessible_get_instance_private (self);
actor = CLUTTER_ACTOR (data);
g_object_set_data (G_OBJECT (obj), "atk-component-layer",
@ -148,13 +146,13 @@ cally_actor_initialize (AtkObject *obj,
*/
handler_id = g_signal_connect (actor,
"child-added",
G_CALLBACK (cally_actor_add_actor),
G_CALLBACK (clutter_actor_accessible_add_actor),
obj);
g_object_set_data (G_OBJECT (obj), "cally-add-handler-id",
GUINT_TO_POINTER (handler_id));
handler_id = g_signal_connect (actor,
"child-removed",
G_CALLBACK (cally_actor_remove_actor),
G_CALLBACK (clutter_actor_accessible_remove_actor),
obj);
g_object_set_data (G_OBJECT (obj), "cally-remove-handler-id",
GUINT_TO_POINTER (handler_id));
@ -164,39 +162,38 @@ cally_actor_initialize (AtkObject *obj,
}
static void
cally_actor_class_init (CallyActorClass *klass)
clutter_actor_accessible_class_init (ClutterActorAccessibleClass *klass)
{
AtkObjectClass *class = ATK_OBJECT_CLASS (klass);
GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
/* GObject */
gobject_class->finalize = cally_actor_finalize;
gobject_class->finalize = clutter_actor_accessible_finalize;
/* AtkObject */
class->get_parent = cally_actor_get_parent;
class->get_index_in_parent = cally_actor_get_index_in_parent;
class->ref_state_set = cally_actor_ref_state_set;
class->initialize = cally_actor_initialize;
class->get_n_children = cally_actor_get_n_children;
class->ref_child = cally_actor_ref_child;
class->get_attributes = cally_actor_get_attributes;
class->get_parent = clutter_actor_accessible_get_parent;
class->get_index_in_parent = clutter_actor_accessible_get_index_in_parent;
class->ref_state_set = clutter_actor_accessible_ref_state_set;
class->initialize = clutter_actor_accessible_initialize;
class->get_n_children = clutter_actor_accessible_get_n_children;
class->ref_child = clutter_actor_accessible_ref_child;
class->get_attributes = clutter_actor_accessible_get_attributes;
}
static void
cally_actor_init (CallyActor *cally_actor)
clutter_actor_accessible_init (ClutterActorAccessible *actor_accessible)
{
CallyActorPrivate *priv = cally_actor_get_instance_private (cally_actor);
ClutterActorAccessiblePrivate *priv = clutter_actor_accessible_get_instance_private (actor_accessible);
priv->children = NULL;
}
static void
cally_actor_finalize (GObject *obj)
clutter_actor_accessible_finalize (GObject *obj)
{
CallyActor *cally_actor = NULL;
CallyActorPrivate *priv = NULL;
cally_actor = CALLY_ACTOR (obj);
priv = cally_actor_get_instance_private (cally_actor);
ClutterActorAccessible *actor_accessible =
CLUTTER_ACTOR_ACCESSIBLE (obj);
ClutterActorAccessiblePrivate *priv =
clutter_actor_accessible_get_instance_private (actor_accessible);
if (priv->children)
{
@ -204,28 +201,28 @@ cally_actor_finalize (GObject *obj)
priv->children = NULL;
}
G_OBJECT_CLASS (cally_actor_parent_class)->finalize (obj);
G_OBJECT_CLASS (clutter_actor_accessible_parent_class)->finalize (obj);
}
/* AtkObject */
static AtkObject *
cally_actor_get_parent (AtkObject *obj)
clutter_actor_accessible_get_parent (AtkObject *obj)
{
ClutterActor *parent_actor = NULL;
AtkObject *parent = NULL;
ClutterActor *actor = NULL;
CallyActor *cally_actor = NULL;
ClutterActorAccessible *actor_accessible = NULL;
g_return_val_if_fail (CALLY_IS_ACTOR (obj), NULL);
g_return_val_if_fail (CLUTTER_IS_ACTOR_ACCESSIBLE (obj), NULL);
/* Check if we have and assigned parent */
if (obj->accessible_parent)
return obj->accessible_parent;
/* Try to get it from the clutter parent */
cally_actor = CALLY_ACTOR (obj);
actor = CALLY_GET_CLUTTER_ACTOR (cally_actor);
actor_accessible = CLUTTER_ACTOR_ACCESSIBLE (obj);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (actor_accessible);
if (actor == NULL) /* Object is defunct */
return NULL;
@ -243,15 +240,15 @@ cally_actor_get_parent (AtkObject *obj)
}
static gint
cally_actor_get_index_in_parent (AtkObject *obj)
clutter_actor_accessible_get_index_in_parent (AtkObject *obj)
{
CallyActor *cally_actor = NULL;
ClutterActorAccessible *actor_accessible = NULL;
ClutterActor *actor = NULL;
ClutterActor *parent_actor = NULL;
ClutterActor *iter;
gint index = -1;
g_return_val_if_fail (CALLY_IS_ACTOR (obj), -1);
g_return_val_if_fail (CLUTTER_IS_ACTOR_ACCESSIBLE (obj), -1);
if (obj->accessible_parent)
{
@ -274,8 +271,8 @@ cally_actor_get_index_in_parent (AtkObject *obj)
return -1;
}
cally_actor = CALLY_ACTOR (obj);
actor = CALLY_GET_CLUTTER_ACTOR (cally_actor);
actor_accessible = CLUTTER_ACTOR_ACCESSIBLE (obj);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (actor_accessible);
if (actor == NULL) /* Object is defunct */
return -1;
@ -295,20 +292,20 @@ cally_actor_get_index_in_parent (AtkObject *obj)
}
static AtkStateSet*
cally_actor_ref_state_set (AtkObject *obj)
clutter_actor_accessible_ref_state_set (AtkObject *obj)
{
ClutterActor *actor = NULL;
AtkStateSet *state_set = NULL;
ClutterStage *stage = NULL;
ClutterActor *focus_actor = NULL;
CallyActor *cally_actor = NULL;
ClutterActorAccessible * actor_accessible = NULL;
g_return_val_if_fail (CALLY_IS_ACTOR (obj), NULL);
cally_actor = CALLY_ACTOR (obj);
g_return_val_if_fail (CLUTTER_IS_ACTOR_ACCESSIBLE (obj), NULL);
actor_accessible = CLUTTER_ACTOR_ACCESSIBLE (obj);
state_set = ATK_OBJECT_CLASS (cally_actor_parent_class)->ref_state_set (obj);
state_set = ATK_OBJECT_CLASS (clutter_actor_accessible_parent_class)->ref_state_set (obj);
actor = CALLY_GET_CLUTTER_ACTOR (cally_actor);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (actor_accessible);
if (actor == NULL) /* Object is defunct */
{
@ -349,13 +346,13 @@ cally_actor_ref_state_set (AtkObject *obj)
}
static gint
cally_actor_get_n_children (AtkObject *obj)
clutter_actor_accessible_get_n_children (AtkObject *obj)
{
ClutterActor *actor = NULL;
g_return_val_if_fail (CALLY_IS_ACTOR (obj), 0);
g_return_val_if_fail (CLUTTER_IS_ACTOR_ACCESSIBLE (obj), 0);
actor = CALLY_GET_CLUTTER_ACTOR (obj);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (obj);
if (actor == NULL) /* State is defunct */
return 0;
@ -366,15 +363,15 @@ cally_actor_get_n_children (AtkObject *obj)
}
static AtkObject*
cally_actor_ref_child (AtkObject *obj,
clutter_actor_accessible_ref_child (AtkObject *obj,
gint i)
{
ClutterActor *actor = NULL;
ClutterActor *child = NULL;
g_return_val_if_fail (CALLY_IS_ACTOR (obj), NULL);
g_return_val_if_fail (CLUTTER_IS_ACTOR_ACCESSIBLE (obj), NULL);
actor = CALLY_GET_CLUTTER_ACTOR (obj);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (obj);
if (actor == NULL) /* State is defunct */
return NULL;
@ -391,7 +388,7 @@ cally_actor_ref_child (AtkObject *obj,
}
static AtkAttributeSet *
cally_actor_get_attributes (AtkObject *obj)
clutter_actor_accessible_get_attributes (AtkObject *obj)
{
AtkAttributeSet *attributes;
AtkAttribute *toolkit;
@ -407,13 +404,13 @@ cally_actor_get_attributes (AtkObject *obj)
/* ClutterContainer */
static gint
cally_actor_add_actor (ClutterActor *container,
clutter_actor_accessible_add_actor (ClutterActor *container,
ClutterActor *actor,
gpointer data)
{
AtkObject *atk_parent = clutter_actor_get_accessible (container);
AtkObject *atk_child = clutter_actor_get_accessible (actor);
CallyActorPrivate *priv = cally_actor_get_instance_private (CALLY_ACTOR (atk_parent));
ClutterActorAccessiblePrivate *priv = clutter_actor_accessible_get_instance_private (CLUTTER_ACTOR_ACCESSIBLE (atk_parent));
gint index;
g_return_val_if_fail (CLUTTER_IS_ACTOR (container), 0);
@ -433,14 +430,14 @@ cally_actor_add_actor (ClutterActor *container,
}
static gint
cally_actor_remove_actor (ClutterActor *container,
clutter_actor_accessible_remove_actor (ClutterActor *container,
ClutterActor *actor,
gpointer data)
{
g_autoptr (AtkObject) atk_child = NULL;
AtkPropertyValues values = { NULL };
AtkObject *atk_parent = NULL;
CallyActorPrivate *priv = NULL;
ClutterActorAccessiblePrivate *priv = NULL;
gint index;
g_return_val_if_fail (CLUTTER_IS_ACTOR (container), 0);
@ -464,7 +461,7 @@ cally_actor_remove_actor (ClutterActor *container,
"property_change::accessible-parent", &values, NULL);
}
priv = cally_actor_get_instance_private (CALLY_ACTOR (atk_parent));
priv = clutter_actor_accessible_get_instance_private (CLUTTER_ACTOR_ACCESSIBLE (atk_parent));
index = g_list_index (priv->children, actor);
g_list_free (priv->children);
@ -479,35 +476,35 @@ cally_actor_remove_actor (ClutterActor *container,
/* AtkComponent implementation */
static void
cally_actor_component_interface_init (AtkComponentIface *iface)
clutter_actor_accessible_component_interface_init (AtkComponentIface *iface)
{
g_return_if_fail (iface != NULL);
iface->get_extents = cally_actor_get_extents;
iface->get_mdi_zorder = cally_actor_get_mdi_zorder;
iface->get_extents = clutter_actor_accessible_get_extents;
iface->get_mdi_zorder = clutter_actor_accessible_get_mdi_zorder;
/* focus management */
iface->grab_focus = cally_actor_grab_focus;
iface->grab_focus = clutter_actor_accessible_grab_focus;
}
static void
cally_actor_get_extents (AtkComponent *component,
clutter_actor_accessible_get_extents (AtkComponent *component,
gint *x,
gint *y,
gint *width,
gint *height,
AtkCoordType coord_type)
{
CallyActor *cally_actor = NULL;
ClutterActorAccessible *actor_accessible = NULL;
ClutterActor *actor = NULL;
gfloat f_width, f_height;
graphene_point3d_t verts[4];
ClutterActor *stage = NULL;
g_return_if_fail (CALLY_IS_ACTOR (component));
g_return_if_fail (CLUTTER_IS_ACTOR_ACCESSIBLE (component));
cally_actor = CALLY_ACTOR (component);
actor = CALLY_GET_CLUTTER_ACTOR (cally_actor);
actor_accessible = CLUTTER_ACTOR_ACCESSIBLE (component);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (actor_accessible);
if (actor == NULL) /* actor is defunct */
return;
@ -528,31 +525,31 @@ cally_actor_get_extents (AtkComponent *component,
}
static gint
cally_actor_get_mdi_zorder (AtkComponent *component)
clutter_actor_accessible_get_mdi_zorder (AtkComponent *component)
{
CallyActor *cally_actor = NULL;
ClutterActorAccessible *actor_accessible = NULL;
ClutterActor *actor = NULL;
g_return_val_if_fail (CALLY_IS_ACTOR (component), G_MININT);
g_return_val_if_fail (CLUTTER_IS_ACTOR_ACCESSIBLE (component), G_MININT);
cally_actor = CALLY_ACTOR(component);
actor = CALLY_GET_CLUTTER_ACTOR (cally_actor);
actor_accessible = CLUTTER_ACTOR_ACCESSIBLE (component);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (actor_accessible);
return (int) clutter_actor_get_z_position (actor);
}
static gboolean
cally_actor_grab_focus (AtkComponent *component)
clutter_actor_accessible_grab_focus (AtkComponent *component)
{
ClutterActor *actor = NULL;
ClutterActor *stage = NULL;
CallyActor *cally_actor = NULL;
ClutterActorAccessible *actor_accessible = NULL;
g_return_val_if_fail (CALLY_IS_ACTOR (component), FALSE);
g_return_val_if_fail (CLUTTER_IS_ACTOR_ACCESSIBLE (component), FALSE);
/* See focus section on implementation notes */
cally_actor = CALLY_ACTOR(component);
actor = CALLY_GET_CLUTTER_ACTOR (cally_actor);
actor_accessible = CLUTTER_ACTOR_ACCESSIBLE (component);
actor = CLUTTER_ACTOR_FROM_ACCESSIBLE (actor_accessible);
stage = clutter_actor_get_stage (actor);
clutter_stage_set_key_focus (CLUTTER_STAGE (stage),

View file

@ -1,4 +1,4 @@
/* CALLY - The Clutter Accessibility Implementation Library
/* Clutter.
*
* Copyright (C) 2008 Igalia, S.L.
*
@ -34,20 +34,20 @@
G_BEGIN_DECLS
#define CALLY_TYPE_ACTOR (cally_actor_get_type ())
#define CLUTTER_TYPE_ACTOR_ACCESSIBLE (clutter_actor_accessible_get_type ())
CLUTTER_EXPORT
G_DECLARE_DERIVABLE_TYPE (CallyActor,
cally_actor,
CALLY,
ACTOR,
G_DECLARE_DERIVABLE_TYPE (ClutterActorAccessible,
clutter_actor_accessible,
CLUTTER,
ACTOR_ACCESSIBLE,
AtkGObjectAccessible)
typedef struct _CallyActor CallyActor;
typedef struct _CallyActorClass CallyActorClass;
typedef struct _CallyActorPrivate CallyActorPrivate;
typedef struct _ClutterActorAccessible ClutterActorAccessible;
typedef struct _ClutterActorAccessibleClass ClutterActorAccessibleClass;
typedef struct _ClutterActorAccessiblePrivate ClutterActorAccessiblePrivate;
struct _CallyActorClass
struct _ClutterActorAccessibleClass
{
/*< private >*/
AtkGObjectAccessibleClass parent_class;

View file

@ -26,6 +26,14 @@
G_BEGIN_DECLS
/*
* Auxiliary define, in order to get the clutter actor from the AtkObject using
* AtkGObject methods
*
*/
#define CLUTTER_ACTOR_FROM_ACCESSIBLE(accessible) \
(CLUTTER_ACTOR (atk_gobject_accessible_get_object (ATK_GOBJECT_ACCESSIBLE (accessible))))
/**
* ClutterActorFlags:
* @CLUTTER_ACTOR_MAPPED: the actor will be painted (is visible, and inside

View file

@ -485,7 +485,6 @@
#include "cogl/cogl.h"
#include "clutter/cally-actor.h"
#include "clutter/clutter-actor-private.h"
#include "clutter/clutter-action.h"
@ -5669,7 +5668,7 @@ clutter_actor_class_init (ClutterActorClass *klass)
klass->queue_relayout = clutter_actor_real_queue_relayout;
klass->apply_transform = clutter_actor_real_apply_transform;
klass->get_accessible = clutter_actor_real_get_accessible;
klass->get_accessible_type = cally_actor_get_type;
klass->get_accessible_type = clutter_actor_accessible_get_type;
klass->get_paint_volume = clutter_actor_real_get_paint_volume;
klass->has_overlaps = clutter_actor_real_has_overlaps;
klass->calculate_resource_scale = clutter_actor_real_calculate_resource_scale;

View file

@ -29,7 +29,7 @@
#include "clutter/clutter-types.h"
#include "clutter/cally-actor.h"
#include "clutter/clutter-actor-accessible.h"
#include "clutter/cally-clone.h"
#include "clutter/cally-root.h"
#include "clutter/cally-stage.h"

View file

@ -4,6 +4,7 @@ clutter_clutter_includedir = clutter_includedir / 'clutter'
clutter_headers = [
'clutter.h',
'clutter-action.h',
'clutter-actor-accessible.h',
'clutter-actor-meta.h',
'clutter-actor.h',
'clutter-align-constraint.h',
@ -87,6 +88,7 @@ clutter_headers = [
clutter_sources = [
'clutter-action.c',
'clutter-actor-box.c',
'clutter-actor-accessible.c',
'clutter-actor-meta.c',
'clutter-actor.c',
'clutter-align-constraint.c',
@ -214,7 +216,6 @@ clutter_nonintrospected_sources = [
clutter_backend_private_headers = []
clutter_headers += [
'cally-actor.h',
'cally-clone.h',
'cally-root.h',
'cally-stage.h',
@ -223,7 +224,6 @@ clutter_headers += [
]
clutter_sources += [
'cally-actor.c',
'cally-clone.c',
'cally-root.c',
'cally-stage.c',
@ -231,10 +231,6 @@ clutter_sources += [
'cally-util.c',
]
clutter_private_headers += [
'cally-actor-private.h',
]
clutter_built_sources = []
clutter_built_headers = []