diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2010-01-14 01:50:49 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2010-06-16 02:46:02 +0800 |
commit | c2c89fcb8cfa5661e94de5e57c7dbc80c3342ede (patch) | |
tree | 6af964bb15322661d28181dc00310e3afe618f46 /libgnomecanvas/gailcanvas.c | |
parent | 333897772f2cf3251915800aff2c836f02095c84 (diff) | |
download | gsoc2013-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.c | 10 |
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; |