aboutsummaryrefslogtreecommitdiffstats
path: root/libgnomecanvas/gailcanvas.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2010-01-14 01:50:49 +0800
committerMatthew Barnes <mbarnes@redhat.com>2010-06-16 02:46:02 +0800
commitc2c89fcb8cfa5661e94de5e57c7dbc80c3342ede (patch)
tree6af964bb15322661d28181dc00310e3afe618f46 /libgnomecanvas/gailcanvas.c
parent333897772f2cf3251915800aff2c836f02095c84 (diff)
downloadgsoc2013-evolution-c2c89fcb8cfa5661e94de5e57c7dbc80c3342ede.tar
gsoc2013-evolution-c2c89fcb8cfa5661e94de5e57c7dbc80c3342ede.tar.gz
gsoc2013-evolution-c2c89fcb8cfa5661e94de5e57c7dbc80c3342ede.tar.bz2
gsoc2013-evolution-c2c89fcb8cfa5661e94de5e57c7dbc80c3342ede.tar.lz
gsoc2013-evolution-c2c89fcb8cfa5661e94de5e57c7dbc80c3342ede.tar.xz
gsoc2013-evolution-c2c89fcb8cfa5661e94de5e57c7dbc80c3342ede.tar.zst
gsoc2013-evolution-c2c89fcb8cfa5661e94de5e57c7dbc80c3342ede.zip
Fix all remaining GTK3 issues.
Work around the issue of GnomeCanvasItem amending its own flags to GtkObject::flags (which is sealed) by giving it its own flags field. This breaks libgnomecanvas ABI and API, but I see no other way. This commit didn't work the first time because gnome-pilot libraries were still pulling in the system-wide libgnomecanvas, and that was interfereing with our bundled version which has a different ABI. But gnome-pilot integration was dropped in the previous commit, so everything is now using the bundled libgnomecanvas.
Diffstat (limited to 'libgnomecanvas/gailcanvas.c')
-rw-r--r--libgnomecanvas/gailcanvas.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/libgnomecanvas/gailcanvas.c b/libgnomecanvas/gailcanvas.c
index 4ec0b67de3..02abd10deb 100644
--- a/libgnomecanvas/gailcanvas.c
+++ b/libgnomecanvas/gailcanvas.c
@@ -29,6 +29,8 @@
#include "gailcanvasitemfactory.h"
#include "gailcanvaswidgetfactory.h"
+#include <e-util/gtk-compat.h>
+
static void gail_canvas_class_init (GailCanvasClass *klass);
static void gail_canvas_real_initialize (AtkObject *obj,
gpointer data);
@@ -180,13 +182,13 @@ gail_canvas_real_initialize (AtkObject *obj,
canvas = GNOME_CANVAS (data);
- adj = canvas->layout.hadjustment;
+ adj = gtk_layout_get_hadjustment (GTK_LAYOUT (canvas));
g_signal_connect (adj,
"value_changed",
G_CALLBACK (adjustment_changed),
canvas);
- adj = canvas->layout.vadjustment;
+ adj = gtk_layout_get_vadjustment (GTK_LAYOUT (canvas));
g_signal_connect (adj,
"value_changed",
G_CALLBACK (adjustment_changed),
@@ -206,7 +208,7 @@ gail_canvas_get_n_children (AtkObject* obj)
g_return_val_if_fail (GAIL_IS_CANVAS (obj), 0);
accessible = GTK_ACCESSIBLE (obj);
- widget = accessible->widget;
+ widget = gtk_accessible_get_widget (accessible);
if (widget == NULL)
/* State is defunct */
return 0;
@@ -235,7 +237,7 @@ gail_canvas_ref_child (AtkObject *obj,
g_return_val_if_fail (GAIL_IS_CANVAS (obj), NULL);
accessible = GTK_ACCESSIBLE (obj);
- widget = accessible->widget;
+ widget = gtk_accessible_get_widget (accessible);
if (widget == NULL)
/* State is defunct */
return NULL;