aboutsummaryrefslogtreecommitdiffstats
path: root/libgnomecanvas/gailcanvasitem.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/gailcanvasitem.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/gailcanvasitem.c')
-rw-r--r--libgnomecanvas/gailcanvasitem.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/libgnomecanvas/gailcanvasitem.c b/libgnomecanvas/gailcanvasitem.c
index f059e1909c..5ae7c8bee3 100644
--- a/libgnomecanvas/gailcanvasitem.c
+++ b/libgnomecanvas/gailcanvasitem.c
@@ -199,7 +199,7 @@ gail_canvas_item_ref_state_set (AtkObject *obj)
{
item = GNOME_CANVAS_ITEM (g_obj);
- if (item->object.flags & GNOME_CANVAS_ITEM_VISIBLE)
+ if (item->flags & GNOME_CANVAS_ITEM_VISIBLE)
{
atk_state_set_add_state (state_set, ATK_STATE_VISIBLE);
if (is_item_on_screen (item))
@@ -482,14 +482,16 @@ is_item_in_window (GnomeCanvasItem *item,
gint height)
{
GtkWidget *widget;
+ GdkWindow *window;
gboolean retval;
widget = GTK_WIDGET (item->canvas);
- if (widget->window)
+ window = gtk_widget_get_window (widget);
+ if (window)
{
int window_width, window_height;
- gdk_window_get_geometry (widget->window, NULL, NULL,
+ gdk_window_get_geometry (window, NULL, NULL,
&window_width, &window_height, NULL);
/*
* Check whether rectangles intersect