diff options
author | Colomban Wendling <[email protected]> | 2017-01-06 16:35:29 +0100 |
---|---|---|
committer | lukefromdc <[email protected]> | 2017-01-07 13:42:33 -0500 |
commit | 68bbfd2f66682f7fcbbf4791ac685f0425a4bef5 (patch) | |
tree | 473b2f054b22e9ea341c7aa7d17bdb647e704dad | |
parent | 81c03e738fd933702738264c75b0a4a0a72495b9 (diff) | |
download | caja-68bbfd2f66682f7fcbbf4791ac685f0425a4bef5.tar.bz2 caja-68bbfd2f66682f7fcbbf4791ac685f0425a4bef5.tar.xz |
a11y: fix accessibility implementation for CajaIconCanvasItemAccessible
Fix CajaIconCanvasItemAccessible inheritance to properly inherit from
EelCanvasItemAccessible. This fixes the ATK state machinery in
CajaIconCanvasItemAccessible, and adds AtkComponent support which
provides several useful features.
Part of https://github.com/mate-desktop/caja/issues/245
Based off https://git.gnome.org/browse/nautilus/commit/?id=6c5baeb7626eda6629fc6642c9eb513ef8bc5c8e
See https://bugzilla.gnome.org/show_bug.cgi?id=677509
-rw-r--r-- | eel/eel-canvas.c | 15 | ||||
-rw-r--r-- | eel/eel-canvas.h | 15 | ||||
-rw-r--r-- | libcaja-private/caja-icon-canvas-item.c | 6 |
3 files changed, 18 insertions, 18 deletions
diff --git a/eel/eel-canvas.c b/eel/eel-canvas.c index 4f040074..d88aeecb 100644 --- a/eel/eel-canvas.c +++ b/eel/eel-canvas.c @@ -3992,21 +3992,6 @@ eel_canvas_item_accessible_ref_state_set (AtkObject *accessible) return state_set; } -static GType eel_canvas_item_accessible_get_type (void); - -typedef struct _EelCanvasItemAccessible EelCanvasItemAccessible; -typedef struct _EelCanvasItemAccessibleClass EelCanvasItemAccessibleClass; - -struct _EelCanvasItemAccessible -{ - GtkAccessible parent; -}; - -struct _EelCanvasItemAccessibleClass -{ - GtkAccessibleClass parent_class; -}; - G_DEFINE_TYPE_WITH_CODE (EelCanvasItemAccessible, eel_canvas_item_accessible, ATK_TYPE_GOBJECT_ACCESSIBLE, diff --git a/eel/eel-canvas.h b/eel/eel-canvas.h index 4b4505f3..c0cbd301 100644 --- a/eel/eel-canvas.h +++ b/eel/eel-canvas.h @@ -558,6 +558,21 @@ extern "C" { GtkContainerAccessibleClass parent_class; }; + GType eel_canvas_item_accessible_get_type (void); + + typedef struct _EelCanvasItemAccessible EelCanvasItemAccessible; + typedef struct _EelCanvasItemAccessibleClass EelCanvasItemAccessibleClass; + + struct _EelCanvasItemAccessible + { + GtkAccessible parent; + }; + + struct _EelCanvasItemAccessibleClass + { + GtkAccessibleClass parent_class; + }; + #ifdef __cplusplus } #endif diff --git a/libcaja-private/caja-icon-canvas-item.c b/libcaja-private/caja-icon-canvas-item.c index 692c77b3..4eb7f1c0 100644 --- a/libcaja-private/caja-icon-canvas-item.c +++ b/libcaja-private/caja-icon-canvas-item.c @@ -3436,16 +3436,16 @@ caja_icon_canvas_item_accessible_text_interface_init (AtkTextIface *iface) } typedef struct { - AtkGObjectAccessible parent; + EelCanvasItemAccessible parent; } CajaIconCanvasItemAccessible; typedef struct { - AtkGObjectAccessibleClass parent_class; + EelCanvasItemAccessibleClass parent_class; } CajaIconCanvasItemAccessibleClass; G_DEFINE_TYPE_WITH_CODE (CajaIconCanvasItemAccessible, caja_icon_canvas_item_accessible, - ATK_TYPE_GOBJECT_ACCESSIBLE, + eel_canvas_item_accessible_get_type (), G_IMPLEMENT_INTERFACE (ATK_TYPE_IMAGE, caja_icon_canvas_item_accessible_image_interface_init) G_IMPLEMENT_INTERFACE (ATK_TYPE_TEXT, |