[gimp] Build with GSEAL_ENABLE and #undef it where accessors are missing



commit 1a23b9ecf21f7e5412c77c46a24c97d698e7775f
Author: Michael Natterer <mitch gimp org>
Date:   Sat Oct 17 20:20:39 2009 +0200

    Build with GSEAL_ENABLE and #undef it where accessors are missing

 app/widgets/gimpblobeditor.c            |   46 +++++++++++++++++++------------
 app/widgets/gimpcellrendererdashes.c    |   37 +++++++++++++++---------
 app/widgets/gimpcellrendererviewable.c  |   20 ++++++++-----
 app/widgets/gimpcolorbar.c              |   23 +++++++++-------
 app/widgets/gimpcolorframe.c            |   35 ++++++++++++++---------
 app/widgets/gimpcolormapeditor.c        |    2 +
 app/widgets/gimpcombotagentry.c         |   17 +++++++----
 app/widgets/gimpcontainerbox.c          |    2 +-
 app/widgets/gimpcontainergridview.c     |   21 ++++++++------
 app/widgets/gimpcontainerpopup.c        |   39 +++++++++++++++-----------
 app/widgets/gimpcontainertreeview-dnd.c |    7 +++-
 app/widgets/gimpcontainertreeview.c     |   24 ++++++++++------
 app/widgets/gimpcontrollereditor.c      |    2 +-
 app/widgets/gimpcontrollerlist.c        |    4 +-
 app/widgets/gimpcursor.c                |    2 +
 app/widgets/gimpcurveview.c             |    7 +++--
 app/widgets/gimpdasheditor.c            |    2 +
 app/widgets/gimpdatafactoryview.c       |    3 +-
 app/widgets/gimpdialogfactory.c         |   28 +++++++++---------
 app/widgets/gimpdockable.c              |   23 +++++++++-------
 app/widgets/gimpdockbook.c              |    2 +
 app/widgets/gimpdockseparator.c         |    2 +
 app/widgets/gimpfgbgeditor.c            |    4 ++-
 app/widgets/gimpfgbgview.c              |    6 +++-
 app/widgets/gimpgradienteditor.c        |    2 +
 app/widgets/gimphandlebar.c             |    4 ++-
 app/widgets/gimphistogrameditor.c       |    5 +++-
 app/widgets/gimphistogramview.c         |    2 +
 app/widgets/gimpmessagebox.c            |    6 +++-
 app/widgets/gimpnavigationview.c        |   11 +++++---
 app/widgets/gimppaletteeditor.c         |    4 ++-
 app/widgets/gimppaletteview.c           |   10 ++++---
 app/widgets/gimpprogressbox.c           |   10 ++++---
 app/widgets/gimpscalebutton.c           |    4 ++-
 app/widgets/gimpsessioninfo.c           |    2 +-
 app/widgets/gimpsettingsbox.c           |    4 +-
 app/widgets/gimpstrokeeditor.c          |    8 ++++-
 app/widgets/gimptagentry.c              |    2 +-
 app/widgets/gimptagpopup.c              |    2 +
 app/widgets/gimptoolbox.c               |   25 +++++++++-------
 app/widgets/gimptooloptionseditor.c     |    2 +-
 app/widgets/gimpuimanager.c             |    2 +
 app/widgets/gimpview-popup.c            |    4 ++-
 app/widgets/gimpview.c                  |   16 ++++++-----
 app/widgets/gimpviewrenderer.c          |    2 +-
 app/widgets/gimpwidgets-utils.c         |   13 +++++---
 app/widgets/gtkhwrapbox.c               |    2 +
 app/widgets/gtkvwrapbox.c               |    2 +
 app/widgets/gtkwrapbox.c                |    2 +
 49 files changed, 313 insertions(+), 191 deletions(-)
---
diff --git a/app/widgets/gimpblobeditor.c b/app/widgets/gimpblobeditor.c
index fdbbb7a..6b294b0 100644
--- a/app/widgets/gimpblobeditor.c
+++ b/app/widgets/gimpblobeditor.c
@@ -188,11 +188,15 @@ gimp_blob_editor_expose (GtkWidget      *widget,
 {
   GimpBlobEditor *editor = GIMP_BLOB_EDITOR (widget);
   GtkStyle       *style  = gtk_widget_get_style (widget);
+  GtkStateType    state  = gtk_widget_get_state (widget);
+  GtkAllocation   allocation;
   cairo_t        *cr;
   GdkRectangle    rect;
   gint            r0;
 
-  r0 = MIN (widget->allocation.width, widget->allocation.height) / 2;
+  gtk_widget_get_allocation (widget, &allocation);
+
+  r0 = MIN (allocation.width, allocation.height) / 2;
 
   if (r0 < 2)
     return TRUE;
@@ -200,18 +204,18 @@ gimp_blob_editor_expose (GtkWidget      *widget,
   cr = gdk_cairo_create (gtk_widget_get_window (widget));
 
   gimp_blob_editor_draw_blob (editor, cr,
-                              widget->allocation.width  / 2.0,
-                              widget->allocation.height / 2.0,
+                              allocation.width  / 2.0,
+                              allocation.height / 2.0,
                               0.9 * r0);
 
   gimp_blob_editor_get_handle (editor, &rect);
 
   cairo_rectangle (cr,
                    rect.x + 0.5, rect.y + 0.5, rect.width - 1, rect.width - 1);
-  gdk_cairo_set_source_color (cr, &style->light[widget->state]);
+  gdk_cairo_set_source_color (cr, &style->light[state]);
   cairo_fill_preserve (cr);
 
-  gdk_cairo_set_source_color (cr, &style->dark[widget->state]);
+  gdk_cairo_set_source_color (cr, &style->dark[state]);
   cairo_set_line_width (cr, 1);
   cairo_stroke (cr);
 
@@ -257,12 +261,15 @@ gimp_blob_editor_motion_notify (GtkWidget      *widget,
 
   if (editor->active)
     {
-      gint x;
-      gint y;
-      gint rsquare;
+      GtkAllocation allocation;
+      gint          x;
+      gint          y;
+      gint          rsquare;
+
+      gtk_widget_get_allocation (widget, &allocation);
 
-      x = event->x - widget->allocation.width  / 2;
-      y = event->y - widget->allocation.height / 2;
+      x = event->x - allocation.width  / 2;
+      y = event->y - allocation.height / 2;
 
       rsquare = SQR (x) + SQR (y);
 
@@ -272,7 +279,7 @@ gimp_blob_editor_motion_notify (GtkWidget      *widget,
           gdouble  angle;
           gdouble  aspect;
 
-          r0 = MIN (widget->allocation.width, widget->allocation.height) / 2;
+          r0 = MIN (allocation.width, allocation.height) / 2;
 
           angle  = atan2 (y, x);
           aspect = 10.0 * sqrt ((gdouble) rsquare / (r0 * r0)) / 0.85;
@@ -293,16 +300,19 @@ static void
 gimp_blob_editor_get_handle (GimpBlobEditor *editor,
                              GdkRectangle   *rect)
 {
-  GtkWidget *widget = GTK_WIDGET (editor);
-  gint       x, y;
-  gint       r;
+  GtkWidget     *widget = GTK_WIDGET (editor);
+  GtkAllocation  allocation;
+  gint           x, y;
+  gint           r;
+
+  gtk_widget_get_allocation (widget, &allocation);
 
-  r = MIN (widget->allocation.width, widget->allocation.height) / 2;
+  r = MIN (allocation.width, allocation.height) / 2;
 
-  x = (widget->allocation.width / 2 +
+  x = (allocation.width / 2 +
        0.85 * r *editor->aspect / 10.0 * cos (editor->angle));
 
-  y = (widget->allocation.height / 2 +
+  y = (allocation.height / 2 +
        0.85 * r * editor->aspect / 10.0 * sin (editor->angle));
 
   rect->x      = x - 5;
@@ -374,6 +384,6 @@ gimp_blob_editor_draw_blob (GimpBlobEditor *editor,
 
   g_free (blob);
 
-  gdk_cairo_set_source_color (cr, &style->fg[widget->state]);
+  gdk_cairo_set_source_color (cr, &style->fg[gtk_widget_get_state (widget)]);
   cairo_fill (cr);
 }
diff --git a/app/widgets/gimpcellrendererdashes.c b/app/widgets/gimpcellrendererdashes.c
index 37c56db..1de5635 100644
--- a/app/widgets/gimpcellrendererdashes.c
+++ b/app/widgets/gimpcellrendererdashes.c
@@ -148,6 +148,12 @@ gimp_cell_renderer_dashes_get_size (GtkCellRenderer *cell,
                                     gint            *width,
                                     gint            *height)
 {
+  gfloat xalign, yalign;
+  gint   xpad, ypad;
+
+  gtk_cell_renderer_get_alignment (cell, &xalign, &yalign);
+  gtk_cell_renderer_get_padding (cell, &xpad, &ypad);
+
   if (cell_area)
     {
       if (x_offset)
@@ -155,16 +161,16 @@ gimp_cell_renderer_dashes_get_size (GtkCellRenderer *cell,
           gdouble align;
 
           align = ((gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL) ?
-                   1.0 - cell->xalign : cell->xalign);
+                   1.0 - xalign : xalign);
 
           *x_offset = align * (cell_area->width - DASHES_WIDTH);
-          *x_offset = MAX (*x_offset, 0) + cell->xpad;
+          *x_offset = MAX (*x_offset, 0) + xpad;
         }
 
       if (y_offset)
         {
-          *y_offset = cell->yalign * (cell_area->height - DASHES_HEIGHT);
-          *y_offset = MAX (*y_offset, 0) + cell->ypad;
+          *y_offset = yalign * (cell_area->height - DASHES_HEIGHT);
+          *y_offset = MAX (*y_offset, 0) + ypad;
         }
     }
   else
@@ -176,8 +182,8 @@ gimp_cell_renderer_dashes_get_size (GtkCellRenderer *cell,
         *y_offset = 0;
     }
 
-  *width  = DASHES_WIDTH  + 2 * cell->xpad;
-  *height = DASHES_HEIGHT + 2 * cell->ypad;
+  *width  = DASHES_WIDTH  + 2 * xpad;
+  *height = DASHES_HEIGHT + 2 * ypad;
 }
 
 static void
@@ -192,36 +198,39 @@ gimp_cell_renderer_dashes_render (GtkCellRenderer      *cell,
   GimpCellRendererDashes *dashes = GIMP_CELL_RENDERER_DASHES (cell);
   GtkStyle               *style  = gtk_widget_get_style (widget);
   GtkStateType            state;
+  gint                    xpad, ypad;
   cairo_t                *cr;
   gint                    width;
   gint                    x, y;
 
-  if (! cell->sensitive)
+  gtk_cell_renderer_get_padding (cell, &xpad, &ypad);
+
+  if (! gtk_cell_renderer_get_sensitive (cell))
     {
       state = GTK_STATE_INSENSITIVE;
     }
   else if ((flags & GTK_CELL_RENDERER_SELECTED) == GTK_CELL_RENDERER_SELECTED)
     {
-      if (GTK_WIDGET_HAS_FOCUS (widget))
+      if (gtk_widget_has_focus (widget))
         state = GTK_STATE_SELECTED;
       else
         state = GTK_STATE_ACTIVE;
     }
   else if ((flags & GTK_CELL_RENDERER_PRELIT) == GTK_CELL_RENDERER_PRELIT &&
-           GTK_WIDGET_STATE (widget) == GTK_STATE_PRELIGHT)
+           gtk_widget_get_state (widget) == GTK_STATE_PRELIGHT)
     {
       state = GTK_STATE_PRELIGHT;
     }
   else
     {
-      if (GTK_WIDGET_STATE (widget) == GTK_STATE_INSENSITIVE)
-        state = GTK_STATE_INSENSITIVE;
-      else
+      if (gtk_widget_is_sensitive (widget))
         state = GTK_STATE_NORMAL;
+      else
+        state = GTK_STATE_INSENSITIVE;
     }
 
   y = cell_area->y + (cell_area->height - DASHES_HEIGHT) / 2;
-  width = cell_area->width - 2 * cell->xpad;
+  width = cell_area->width - 2 * xpad;
 
   cr = gdk_cairo_create (window);
 
@@ -235,7 +244,7 @@ gimp_cell_renderer_dashes_render (GtkCellRenderer      *cell,
       if (dashes->segments[index])
         {
           cairo_rectangle (cr,
-                           cell_area->x + cell->xpad + x, y,
+                           cell_area->x + xpad + x, y,
                            MIN (BLOCK_WIDTH, width - x), DASHES_HEIGHT);
         }
     }
diff --git a/app/widgets/gimpcellrendererviewable.c b/app/widgets/gimpcellrendererviewable.c
index 5490f5a..1f74a62 100644
--- a/app/widgets/gimpcellrendererviewable.c
+++ b/app/widgets/gimpcellrendererviewable.c
@@ -198,11 +198,16 @@ gimp_cell_renderer_viewable_get_size (GtkCellRenderer *cell,
                                       gint            *height)
 {
   GimpCellRendererViewable *cellviewable;
+  gfloat                    xalign, yalign;
+  gint                      xpad, ypad;
   gint                      view_width  = 0;
   gint                      view_height = 0;
   gint                      calc_width;
   gint                      calc_height;
 
+  gtk_cell_renderer_get_alignment (cell, &xalign, &yalign);
+  gtk_cell_renderer_get_padding (cell, &xpad, &ypad);
+
   cellviewable = GIMP_CELL_RENDERER_VIEWABLE (cell);
 
   if (cellviewable->renderer)
@@ -213,8 +218,8 @@ gimp_cell_renderer_viewable_get_size (GtkCellRenderer *cell,
                      2 * cellviewable->renderer->border_width);
     }
 
-  calc_width  = (gint) cell->xpad * 2 + view_width;
-  calc_height = (gint) cell->ypad * 2 + view_height;
+  calc_width  = (gint) xpad * 2 + view_width;
+  calc_height = (gint) ypad * 2 + view_height;
 
   if (x_offset) *x_offset = 0;
   if (y_offset) *y_offset = 0;
@@ -224,15 +229,14 @@ gimp_cell_renderer_viewable_get_size (GtkCellRenderer *cell,
       if (x_offset)
         {
           *x_offset = (((gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL) ?
-                        1.0 - cell->xalign : cell->xalign) *
-                       (cell_area->width - calc_width - 2 * cell->xpad));
-          *x_offset = (MAX (*x_offset, 0) + cell->xpad);
+                        1.0 - xalign : xalign) *
+                       (cell_area->width - calc_width - 2 * xpad));
+          *x_offset = (MAX (*x_offset, 0) + xpad);
         }
       if (y_offset)
         {
-          *y_offset = (cell->yalign *
-                       (cell_area->height - calc_height - 2 * cell->ypad));
-          *y_offset = (MAX (*y_offset, 0) + cell->ypad);
+          *y_offset = (yalign * (cell_area->height - calc_height - 2 * ypad));
+          *y_offset = (MAX (*y_offset, 0) + ypad);
         }
     }
 
diff --git a/app/widgets/gimpcolorbar.c b/app/widgets/gimpcolorbar.c
index 1574304..92e7dd8 100644
--- a/app/widgets/gimpcolorbar.c
+++ b/app/widgets/gimpcolorbar.c
@@ -153,18 +153,21 @@ static gboolean
 gimp_color_bar_expose (GtkWidget      *widget,
                        GdkEventExpose *event)
 {
-  GimpColorBar *bar   = GIMP_COLOR_BAR (widget);
-  GtkStyle     *style = gtk_widget_get_style (widget);
-  guchar       *buf;
-  guchar       *b;
-  gint          x, y;
-  gint          width, height;
-  gint          i, j;
+  GimpColorBar  *bar   = GIMP_COLOR_BAR (widget);
+  GtkStyle      *style = gtk_widget_get_style (widget);
+  GtkAllocation  allocation;
+  guchar        *buf;
+  guchar        *b;
+  gint           x, y;
+  gint           width, height;
+  gint           i, j;
+
+  gtk_widget_get_allocation (widget, &allocation);
 
   x = y = gtk_container_get_border_width (GTK_CONTAINER (bar));
 
-  width  = widget->allocation.width  - 2 * x;
-  height = widget->allocation.height - 2 * y;
+  width  = allocation.width  - 2 * x;
+  height = allocation.height - 2 * y;
 
   if (width < 1 || height < 1)
     return TRUE;
@@ -205,7 +208,7 @@ gimp_color_bar_expose (GtkWidget      *widget,
     }
 
   gdk_draw_rgb_image (gtk_widget_get_window (widget), style->black_gc,
-                      widget->allocation.x + x, widget->allocation.y + y,
+                      allocation.x + x, allocation.y + y,
                       width, height,
                       GDK_RGB_DITHER_NORMAL,
                       buf, 3 * width);
diff --git a/app/widgets/gimpcolorframe.c b/app/widgets/gimpcolorframe.c
index dbb1d3f..bf5a5e8 100644
--- a/app/widgets/gimpcolorframe.c
+++ b/app/widgets/gimpcolorframe.c
@@ -271,11 +271,18 @@ gimp_color_frame_expose (GtkWidget      *widget,
 
   if (frame->has_number)
     {
-      GtkStyle *style = gtk_widget_get_style (widget);
-      cairo_t  *cr;
-      gchar     buf[8];
-      gint      w, h;
-      gdouble   scale;
+      GtkStyle      *style = gtk_widget_get_style (widget);
+      GtkAllocation  allocation;
+      GtkAllocation  menu_allocation;
+      GtkAllocation  color_area_allocation;
+      cairo_t       *cr;
+      gchar          buf[8];
+      gint           w, h;
+      gdouble        scale;
+
+      gtk_widget_get_allocation (widget, &allocation);
+      gtk_widget_get_allocation (frame->menu, &menu_allocation);
+      gtk_widget_get_allocation (frame->color_area, &color_area_allocation);
 
       cr = gdk_cairo_create (gtk_widget_get_window (widget));
       gdk_cairo_set_source_color (cr, &style->light[GTK_STATE_NORMAL]);
@@ -288,20 +295,20 @@ gimp_color_frame_expose (GtkWidget      *widget,
       pango_layout_set_text (frame->number_layout, buf, -1);
       pango_layout_get_pixel_size (frame->number_layout, &w, &h);
 
-      scale = ((gdouble) (widget->allocation.height -
-                          frame->menu->allocation.height -
-                          frame->color_area->allocation.height) /
+      scale = ((gdouble) (allocation.height -
+                          menu_allocation.height -
+                          color_area_allocation.height) /
                (gdouble) h);
 
       cairo_scale (cr, scale, scale);
 
       cairo_move_to (cr,
-                     (widget->allocation.x +
-                      widget->allocation.width / 2.0) / scale - w / 2.0,
-                     (widget->allocation.y +
-                      widget->allocation.height / 2.0 +
-                      frame->menu->allocation.height / 2.0 +
-                      frame->color_area->allocation.height / 2.0) / scale - h / 2.0);
+                     (allocation.x +
+                      allocation.width / 2.0) / scale - w / 2.0,
+                     (allocation.y +
+                      allocation.height / 2.0 +
+                      menu_allocation.height / 2.0 +
+                      color_area_allocation.height / 2.0) / scale - h / 2.0);
       pango_cairo_show_layout (cr, frame->number_layout);
       cairo_fill (cr);
 
diff --git a/app/widgets/gimpcolormapeditor.c b/app/widgets/gimpcolormapeditor.c
index 17aec5e..813dd60 100644
--- a/app/widgets/gimpcolormapeditor.c
+++ b/app/widgets/gimpcolormapeditor.c
@@ -17,6 +17,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <string.h>
 
 /* FIXME: #undef GTK_DISABLE_DEPRECATED */
diff --git a/app/widgets/gimpcombotagentry.c b/app/widgets/gimpcombotagentry.c
index 19cf7b9..74c9754 100644
--- a/app/widgets/gimpcombotagentry.c
+++ b/app/widgets/gimpcombotagentry.c
@@ -217,12 +217,14 @@ gimp_combo_tag_entry_expose_event (GtkWidget      *widget,
   gdk_drawable_get_size (GDK_DRAWABLE (event->window), &window_width, &window_height);
   if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL)
     {
-      gdk_draw_rectangle (event->window, style->base_gc[widget->state],
+      gdk_draw_rectangle (event->window,
+                          style->base_gc[gtk_widget_get_state (widget)],
                           TRUE, 0, 0, 14, window_height);
     }
   else
     {
-      gdk_draw_rectangle (event->window, style->base_gc[widget->state],
+      gdk_draw_rectangle (event->window,
+                          style->base_gc[gtk_widget_get_state (widget)],
                           TRUE, window_width - 14, 0, 14, window_height);
     }
 
@@ -406,17 +408,20 @@ static void
 gimp_combo_tag_entry_get_arrow_rect (GimpComboTagEntry *entry,
                                      GdkRectangle      *arrow_rect)
 {
-  GtkWidget *widget = GTK_WIDGET (entry);
-  GtkStyle  *style  = gtk_widget_get_style (widget);
+  GtkWidget     *widget = GTK_WIDGET (entry);
+  GtkStyle      *style  = gtk_widget_get_style (widget);
+  GtkAllocation  allocation;
+
+  gtk_widget_get_allocation (widget, &allocation);
 
   if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL)
     arrow_rect->x = style->xthickness;
   else
-    arrow_rect->x = widget->allocation.width - 16 - style->xthickness * 2;
+    arrow_rect->x = allocation.width - 16 - style->xthickness * 2;
 
   arrow_rect->y      = 0;
   arrow_rect->width  = 12;
-  arrow_rect->height = widget->allocation.height - style->ythickness * 2;
+  arrow_rect->height = allocation.height - style->ythickness * 2;
 }
 
 static gboolean
diff --git a/app/widgets/gimpcontainerbox.c b/app/widgets/gimpcontainerbox.c
index aabd677..38691ff 100644
--- a/app/widgets/gimpcontainerbox.c
+++ b/app/widgets/gimpcontainerbox.c
@@ -83,7 +83,7 @@ gimp_container_box_init (GimpContainerBox *box)
 
   sb = gtk_scrolled_window_get_vscrollbar (GTK_SCROLLED_WINDOW (box->scrolled_win));
 
-  GTK_WIDGET_UNSET_FLAGS (sb, GTK_CAN_FOCUS);
+  gtk_widget_set_can_focus (sb, FALSE);
 
   gimp_container_view_set_dnd_widget (view, box->scrolled_win);
 }
diff --git a/app/widgets/gimpcontainergridview.c b/app/widgets/gimpcontainergridview.c
index afb6f20..428b464 100644
--- a/app/widgets/gimpcontainergridview.c
+++ b/app/widgets/gimpcontainergridview.c
@@ -207,7 +207,7 @@ gimp_container_grid_view_init (GimpContainerGridView *grid_view)
                     G_CALLBACK (gimp_container_grid_view_button_press),
                     grid_view);
 
-  GTK_WIDGET_SET_FLAGS (grid_view, GTK_CAN_FOCUS);
+  gtk_widget_set_can_focus (GTK_WIDGET (grid_view), TRUE);
 }
 
 GtkWidget *
@@ -287,7 +287,7 @@ gimp_container_grid_view_move_cursor (GimpContainerGridView *grid_view,
   GimpContainer     *container;
   GimpViewable      *item;
 
-  if (! GTK_WIDGET_HAS_FOCUS (GTK_WIDGET (grid_view)) || count == 0)
+  if (! gtk_widget_has_focus (GTK_WIDGET (grid_view)) || count == 0)
     return FALSE;
 
   container = gimp_container_view_get_container (view);
@@ -321,7 +321,7 @@ gimp_container_grid_view_focus (GtkWidget        *widget,
 {
   GimpContainerGridView *view = GIMP_CONTAINER_GRID_VIEW (widget);
 
-  if (GTK_WIDGET_CAN_FOCUS (widget) && ! GTK_WIDGET_HAS_FOCUS (widget))
+  if (gtk_widget_get_can_focus (widget) && ! gtk_widget_has_focus (widget))
     {
       gtk_widget_grab_focus (GTK_WIDGET (widget));
       return TRUE;
@@ -354,24 +354,27 @@ gimp_container_grid_view_menu_position (GtkMenu  *menu,
 {
   GimpContainerGridView *grid_view = GIMP_CONTAINER_GRID_VIEW (data);
   GtkWidget             *widget;
+  GtkAllocation          allocation;
 
   if (grid_view->selected_item)
     widget = GTK_WIDGET (grid_view->selected_item);
   else
     widget = GTK_WIDGET (grid_view->wrap_box);
 
+  gtk_widget_get_allocation (widget, &allocation);
+
   gdk_window_get_origin (gtk_widget_get_window (widget), x, y);
 
-  if (GTK_WIDGET_NO_WINDOW (widget))
+  if (! gtk_widget_get_has_window (widget))
     {
-      *x += widget->allocation.x;
-      *y += widget->allocation.y;
+      *x += allocation.x;
+      *y += allocation.y;
     }
 
   if (grid_view->selected_item)
     {
-      *x += widget->allocation.width  / 2;
-      *y += widget->allocation.height / 2;
+      *x += allocation.width  / 2;
+      *y += allocation.height / 2;
     }
   else
     {
@@ -553,7 +556,7 @@ gimp_container_grid_view_item_selected (GtkWidget      *widget,
 {
   if (bevent->type == GDK_BUTTON_PRESS && bevent->button == 1)
     {
-      if (GTK_WIDGET_CAN_FOCUS (data) && ! GTK_WIDGET_HAS_FOCUS (data))
+      if (gtk_widget_get_can_focus (data) && ! gtk_widget_has_focus (data))
         gtk_widget_grab_focus (GTK_WIDGET (data));
 
       gimp_container_view_item_selected (GIMP_CONTAINER_VIEW (data),
diff --git a/app/widgets/gimpcontainerpopup.c b/app/widgets/gimpcontainerpopup.c
index 70dbe6c..a07d05c 100644
--- a/app/widgets/gimpcontainerpopup.c
+++ b/app/widgets/gimpcontainerpopup.c
@@ -220,13 +220,17 @@ gimp_container_popup_button_press (GtkWidget      *widget,
 
   if (event_widget == widget)
     {
+      GtkAllocation allocation;
+
+      gtk_widget_get_allocation (widget, &allocation);
+
       /*  the event was on the popup, which can either be really on the
        *  popup or outside gimp (owner_events == TRUE, see map())
        */
-      if (bevent->x < 0                        ||
-          bevent->y < 0                        ||
-          bevent->x > widget->allocation.width ||
-          bevent->y > widget->allocation.height)
+      if (bevent->x < 0                ||
+          bevent->y < 0                ||
+          bevent->x > allocation.width ||
+          bevent->y > allocation.height)
         {
           /*  the event was outsde gimp  */
 
@@ -392,6 +396,7 @@ gimp_container_popup_show (GimpContainerPopup *popup,
 {
   GdkScreen      *screen;
   GtkRequisition  requisition;
+  GtkAllocation   allocation;
   GdkRectangle    rect;
   gint            monitor;
   gint            orig_x;
@@ -403,12 +408,14 @@ gimp_container_popup_show (GimpContainerPopup *popup,
   g_return_if_fail (GTK_IS_WIDGET (widget));
 
   gtk_widget_size_request (GTK_WIDGET (popup), &requisition);
+
+  gtk_widget_get_allocation (widget, &allocation);
   gdk_window_get_origin (gtk_widget_get_window (widget), &orig_x, &orig_y);
 
-  if (GTK_WIDGET_NO_WINDOW (widget))
+  if (! gtk_widget_get_has_window (widget))
     {
-      orig_x += widget->allocation.x;
-      orig_y += widget->allocation.y;
+      orig_x += allocation.x;
+      orig_y += allocation.y;
     }
 
   screen = gtk_widget_get_screen (widget);
@@ -418,20 +425,20 @@ gimp_container_popup_show (GimpContainerPopup *popup,
 
   if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL)
     {
-      x = orig_x + widget->allocation.width - requisition.width;
+      x = orig_x + allocation.width - requisition.width;
 
       if (x < rect.x)
-        x -= widget->allocation.width - requisition.width;
+        x -= allocation.width - requisition.width;
     }
   else
     {
       x = orig_x;
 
       if (x + requisition.width > rect.x + rect.width)
-        x += widget->allocation.width - requisition.width;
+        x += allocation.width - requisition.width;
     }
 
-  y = orig_y + widget->allocation.height;
+  y = orig_y + allocation.height;
 
   if (y + requisition.height > rect.y + rect.height)
     y = orig_y - requisition.height;
@@ -476,20 +483,20 @@ void
 gimp_container_popup_set_view_size (GimpContainerPopup *popup,
                                     gint                view_size)
 {
-  GtkWidget *scrolled_win;
-  GtkWidget *viewport;
-  gint       viewport_width;
+  GtkWidget     *scrolled_win;
+  GtkWidget     *viewport;
+  GtkAllocation  allocation;
 
   g_return_if_fail (GIMP_IS_CONTAINER_POPUP (popup));
 
   scrolled_win = GIMP_CONTAINER_BOX (popup->editor->view)->scrolled_win;
   viewport     = gtk_bin_get_child (GTK_BIN (scrolled_win));
 
-  viewport_width = viewport->allocation.width;
+  gtk_widget_get_allocation (viewport, &allocation);
 
   view_size = CLAMP (view_size, GIMP_VIEW_SIZE_TINY,
                      MIN (GIMP_VIEW_SIZE_GIGANTIC,
-                          viewport_width - 2 * popup->view_border_width));
+                          allocation.width - 2 * popup->view_border_width));
 
   if (view_size != popup->view_size)
     {
diff --git a/app/widgets/gimpcontainertreeview-dnd.c b/app/widgets/gimpcontainertreeview-dnd.c
index a6bd65b..ed8cde9 100644
--- a/app/widgets/gimpcontainertreeview-dnd.c
+++ b/app/widgets/gimpcontainertreeview-dnd.c
@@ -232,10 +232,13 @@ gimp_container_tree_view_drag_motion (GtkWidget             *widget,
                                       guint                  time,
                                       GimpContainerTreeView *tree_view)
 {
+  GtkAllocation            allocation;
   GtkTreePath             *path;
   GtkTreeViewDropPosition  drop_pos;
 
-  if (y < SCROLL_DISTANCE || y > (widget->allocation.height - SCROLL_DISTANCE))
+  gtk_widget_get_allocation (widget, &allocation);
+
+  if (y < SCROLL_DISTANCE || y > (allocation.height - SCROLL_DISTANCE))
     {
       gint distance;
 
@@ -247,7 +250,7 @@ gimp_container_tree_view_drag_motion (GtkWidget             *widget,
       else
         {
           tree_view->priv->scroll_dir = GDK_SCROLL_DOWN;
-          distance = MAX (widget->allocation.height - y, 1);
+          distance = MAX (allocation.height - y, 1);
         }
 
       tree_view->priv->scroll_timeout_interval = SCROLL_INTERVAL * ABS (distance);
diff --git a/app/widgets/gimpcontainertreeview.c b/app/widgets/gimpcontainertreeview.c
index 4a48b29..75b322d 100644
--- a/app/widgets/gimpcontainertreeview.c
+++ b/app/widgets/gimpcontainertreeview.c
@@ -318,14 +318,17 @@ gimp_container_tree_view_menu_position (GtkMenu  *menu,
 {
   GimpContainerTreeView *tree_view = GIMP_CONTAINER_TREE_VIEW (data);
   GtkWidget             *widget    = GTK_WIDGET (tree_view->view);
+  GtkAllocation          allocation;
   GtkTreeIter            selected_iter;
 
+  gtk_widget_get_allocation (widget, &allocation);
+
   gdk_window_get_origin (gtk_widget_get_window (widget), x, y);
 
-  if (GTK_WIDGET_NO_WINDOW (widget))
+  if (! gtk_widget_get_has_window (widget))
     {
-      *x += widget->allocation.x;
-      *y += widget->allocation.y;
+      *x += allocation.x;
+      *y += allocation.y;
     }
 
   if (gtk_tree_selection_get_selected (tree_view->priv->selection, NULL,
@@ -341,9 +344,9 @@ gimp_container_tree_view_menu_position (GtkMenu  *menu,
       gtk_tree_path_free (path);
 
       center = cell_rect.y + cell_rect.height / 2;
-      center = CLAMP (center, 0, widget->allocation.height);
+      center = CLAMP (center, 0, allocation.height);
 
-      *x += widget->allocation.width / 2;
+      *x += allocation.width / 2;
       *y += center;
     }
   else
@@ -972,19 +975,22 @@ gimp_container_tree_view_find_click_cell (GtkWidget         *widget,
       gint             start;
       gint             width;
 
-      if (renderer->visible &&
+      if (gtk_cell_renderer_get_visible (renderer) &&
           gtk_tree_view_column_cell_get_position (column, renderer,
                                                   &start, &width))
         {
+          gint xpad, ypad;
           gint x;
 
+          gtk_cell_renderer_get_padding (renderer, &xpad, &ypad);
+
           if (rtl)
             x = column_area->x + column_area->width - start - width;
           else
             x = start + column_area->x;
 
-          if (tree_x >= x + renderer->xpad &&
-              tree_x < x + width - renderer->xpad)
+          if (tree_x >= x + xpad &&
+              tree_x <  x + width - xpad)
             {
               return renderer;
             }
@@ -1005,7 +1011,7 @@ gimp_container_tree_view_button_press (GtkWidget             *widget,
 
   tree_view->priv->dnd_renderer = NULL;
 
-  if (! GTK_WIDGET_HAS_FOCUS (widget))
+  if (! gtk_widget_has_focus (widget))
     gtk_widget_grab_focus (widget);
 
   if (gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW (widget),
diff --git a/app/widgets/gimpcontrollereditor.c b/app/widgets/gimpcontrollereditor.c
index 13f2a7c..8a5861f 100644
--- a/app/widgets/gimpcontrollereditor.c
+++ b/app/widgets/gimpcontrollereditor.c
@@ -554,7 +554,7 @@ gimp_controller_editor_row_activated (GtkTreeView          *tv,
                                       GtkTreeViewColumn    *column,
                                       GimpControllerEditor *editor)
 {
-  if (GTK_WIDGET_IS_SENSITIVE (editor->edit_button))
+  if (gtk_widget_is_sensitive (editor->edit_button))
     gtk_button_clicked (GTK_BUTTON (editor->edit_button));
 }
 
diff --git a/app/widgets/gimpcontrollerlist.c b/app/widgets/gimpcontrollerlist.c
index 2d8e7e1..2cbf9c2 100644
--- a/app/widgets/gimpcontrollerlist.c
+++ b/app/widgets/gimpcontrollerlist.c
@@ -452,7 +452,7 @@ gimp_controller_list_row_activated (GtkTreeView        *tv,
                                     GtkTreeViewColumn  *column,
                                     GimpControllerList *list)
 {
-  if (GTK_WIDGET_IS_SENSITIVE (list->add_button))
+  if (gtk_widget_is_sensitive (list->add_button))
     gtk_button_clicked (GTK_BUTTON (list->add_button));
 }
 
@@ -495,7 +495,7 @@ gimp_controller_list_activate_item (GimpContainerView  *view,
                                     gpointer            insert_data,
                                     GimpControllerList *list)
 {
-  if (GTK_WIDGET_IS_SENSITIVE (list->edit_button))
+  if (gtk_widget_is_sensitive (list->edit_button))
     gtk_button_clicked (GTK_BUTTON (list->edit_button));
 }
 
diff --git a/app/widgets/gimpcursor.c b/app/widgets/gimpcursor.c
index 977cc16..2df3ab5 100644
--- a/app/widgets/gimpcursor.c
+++ b/app/widgets/gimpcursor.c
@@ -17,6 +17,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gtk/gtk.h>
 
 #include "widgets-types.h"
diff --git a/app/widgets/gimpcurveview.c b/app/widgets/gimpcurveview.c
index b1871c3..11dface 100644
--- a/app/widgets/gimpcurveview.c
+++ b/app/widgets/gimpcurveview.c
@@ -17,6 +17,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <string.h>
 
 #include <gtk/gtk.h>
@@ -129,8 +131,7 @@ gimp_curve_view_init (GimpCurveView *view)
   view->cursor_x    = -1.0;
   view->cursor_y    = -1.0;
 
-  GTK_WIDGET_SET_FLAGS (view, GTK_CAN_FOCUS);
-
+  gtk_widget_set_can_focus (GTK_WIDGET (view), TRUE);
   gtk_widget_add_events (GTK_WIDGET (view),
                          GDK_BUTTON_PRESS_MASK   |
                          GDK_BUTTON_RELEASE_MASK |
@@ -592,7 +593,7 @@ gimp_curve_view_button_press (GtkWidget      *widget,
       break;
     }
 
-  if (! GTK_WIDGET_HAS_FOCUS (widget))
+  if (! gtk_widget_has_focus (widget))
     gtk_widget_grab_focus (widget);
 
   return TRUE;
diff --git a/app/widgets/gimpdasheditor.c b/app/widgets/gimpdasheditor.c
index 842c31c..2f3b396 100644
--- a/app/widgets/gimpdasheditor.c
+++ b/app/widgets/gimpdasheditor.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gtk/gtk.h>
 
 #include "libgimpmath/gimpmath.h"
diff --git a/app/widgets/gimpdatafactoryview.c b/app/widgets/gimpdatafactoryview.c
index 474a371..6996d52 100644
--- a/app/widgets/gimpdatafactoryview.c
+++ b/app/widgets/gimpdatafactoryview.c
@@ -362,7 +362,8 @@ gimp_data_factory_view_activate_item (GimpContainerEditor *editor,
   if (data && gimp_data_factory_view_have (view,
                                            GIMP_OBJECT (data)))
     {
-      if (view->priv->edit_button && GTK_WIDGET_SENSITIVE (view->priv->edit_button))
+      if (view->priv->edit_button &&
+          gtk_widget_is_sensitive (view->priv->edit_button))
         gtk_button_clicked (GTK_BUTTON (view->priv->edit_button));
     }
 }
diff --git a/app/widgets/gimpdialogfactory.c b/app/widgets/gimpdialogfactory.c
index e0da9dc..39985aa 100644
--- a/app/widgets/gimpdialogfactory.c
+++ b/app/widgets/gimpdialogfactory.c
@@ -171,7 +171,7 @@ gimp_dialog_factory_dispose (GObject *object)
     {
       for (list = factory->open_dialogs; list; list = g_list_next (list))
         {
-          if (GTK_WIDGET_TOPLEVEL (list->data))
+          if (gtk_widget_is_toplevel (list->data))
             {
               gtk_widget_destroy (GTK_WIDGET (list->data));
               break;
@@ -582,7 +582,7 @@ gimp_dialog_factory_dialog_new_internal (GimpDialogFactory *factory,
   if (! dialog)
     return NULL;
 
-  if (GTK_WIDGET_TOPLEVEL (dialog))
+  if (gtk_widget_is_toplevel (dialog))
     {
       gtk_window_set_screen (GTK_WINDOW (dialog), screen);
 
@@ -836,7 +836,7 @@ gimp_dialog_factory_add_dialog (GimpDialogFactory *factory,
                                          dialog))
     return;
 
-  toplevel = GTK_WIDGET_TOPLEVEL (dialog);
+  toplevel = gtk_widget_is_toplevel (dialog);
 
   if (entry) /* dialog is a toplevel (but not a GimpDockWindow) or a GimpDockable */
     {
@@ -878,7 +878,7 @@ gimp_dialog_factory_add_dialog (GimpDialogFactory *factory,
 
               if (toplevel &&
                   gimp_session_info_is_session_managed (current_info) &&
-                  ! GTK_WIDGET_VISIBLE (dialog))
+                  ! gtk_widget_get_visible (dialog))
                 {
                   gimp_session_info_apply_geometry (current_info);
                 }
@@ -994,7 +994,7 @@ gimp_dialog_factory_add_foreign (GimpDialogFactory *factory,
   g_return_if_fail (GIMP_IS_DIALOG_FACTORY (factory));
   g_return_if_fail (identifier != NULL);
   g_return_if_fail (GTK_IS_WIDGET (dialog));
-  g_return_if_fail (GTK_WIDGET_TOPLEVEL (dialog));
+  g_return_if_fail (gtk_widget_is_toplevel (dialog));
 
   dialog_factory = gimp_dialog_factory_from_widget (dialog, &entry);
 
@@ -1117,7 +1117,7 @@ void
 gimp_dialog_factory_hide_dialog (GtkWidget *dialog)
 {
   g_return_if_fail (GTK_IS_WIDGET (dialog));
-  g_return_if_fail (GTK_WIDGET_TOPLEVEL (dialog));
+  g_return_if_fail (gtk_widget_is_toplevel (dialog));
 
   if (! gimp_dialog_factory_from_widget (dialog, NULL))
     {
@@ -1521,11 +1521,11 @@ gimp_dialog_factories_hide_foreach (gconstpointer      key,
     {
       GtkWidget *widget = list->data;
 
-      if (GTK_IS_WIDGET (widget) && GTK_WIDGET_TOPLEVEL (widget))
+      if (GTK_IS_WIDGET (widget) && gtk_widget_is_toplevel (widget))
         {
           GimpDialogVisibilityState visibility = GIMP_DIALOG_VISIBILITY_UNKNOWN;
 
-          if (GTK_WIDGET_VISIBLE (widget))
+          if (gtk_widget_get_visible (widget))
             {
               visibility = GIMP_DIALOG_VISIBILITY_VISIBLE;
 
@@ -1558,7 +1558,7 @@ gimp_dialog_factories_show_foreach (gconstpointer      key,
     {
       GtkWidget *widget = list->data;
 
-      if (GTK_IS_WIDGET (widget) && GTK_WIDGET_TOPLEVEL (widget))
+      if (GTK_IS_WIDGET (widget) && gtk_widget_is_toplevel (widget))
         {
           GimpDialogVisibilityState visibility;
 
@@ -1566,7 +1566,7 @@ gimp_dialog_factories_show_foreach (gconstpointer      key,
             GPOINTER_TO_INT (g_object_get_data (G_OBJECT (widget),
                                                 GIMP_DIALOG_VISIBILITY_KEY));
 
-          if (! GTK_WIDGET_VISIBLE (widget) &&
+          if (! gtk_widget_get_visible (widget) &&
               visibility == GIMP_DIALOG_VISIBILITY_VISIBLE)
             {
               GIMP_LOG (WM, "Showing '%s' [%p]",
@@ -1578,7 +1578,7 @@ gimp_dialog_factories_show_foreach (gconstpointer      key,
                */
               gtk_widget_show (widget);
 
-              if (GTK_WIDGET_VISIBLE (widget))
+              if (gtk_widget_get_visible (widget))
                 gdk_window_raise (gtk_widget_get_window (widget));
             }
         }
@@ -1598,7 +1598,7 @@ gimp_dialog_factories_set_busy_foreach (gconstpointer      key,
     {
       GtkWidget *widget = list->data;
 
-      if (GTK_IS_WIDGET (widget) && GTK_WIDGET_TOPLEVEL (widget))
+      if (GTK_IS_WIDGET (widget) && gtk_widget_is_toplevel (widget))
         {
           if (!display || display != gtk_widget_get_display (widget))
             {
@@ -1634,7 +1634,7 @@ gimp_dialog_factories_unset_busy_foreach (gconstpointer      key,
     {
       GtkWidget *widget = list->data;
 
-      if (GTK_IS_WIDGET (widget) && GTK_WIDGET_TOPLEVEL (widget))
+      if (GTK_IS_WIDGET (widget) && gtk_widget_is_toplevel (widget))
         {
           if (gtk_widget_get_window (widget))
             gdk_window_set_cursor (gtk_widget_get_window (widget), NULL);
@@ -1650,7 +1650,7 @@ gimp_dialog_factory_get_toolbox (GimpDialogFactory *toolbox_factory)
 
   for (list = toolbox_factory->open_dialogs; list; list = list->next)
     {
-      if (GTK_IS_WIDGET (list->data) && GTK_WIDGET_TOPLEVEL (list->data))
+      if (GTK_IS_WIDGET (list->data) && gtk_widget_is_toplevel (list->data))
         return list->data;
     }
 
diff --git a/app/widgets/gimpdockable.c b/app/widgets/gimpdockable.c
index 3f545fc..da365a9 100644
--- a/app/widgets/gimpdockable.c
+++ b/app/widgets/gimpdockable.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <string.h>
 
 #include <gtk/gtk.h>
@@ -182,7 +184,7 @@ gimp_dockable_init (GimpDockable *dockable)
   dockable->menu_button = gtk_button_new ();
   gtk_widget_pop_composite_child ();
 
-  GTK_WIDGET_UNSET_FLAGS (dockable->menu_button, GTK_CAN_FOCUS);
+  gtk_widget_set_can_focus (dockable->menu_button, FALSE);
   gtk_widget_set_parent (dockable->menu_button, GTK_WIDGET (dockable));
   gtk_button_set_relief (GTK_BUTTON (dockable->menu_button), GTK_RELIEF_NONE);
   gtk_widget_show (dockable->menu_button);
@@ -319,7 +321,7 @@ gimp_dockable_size_request (GtkWidget      *widget,
   requisition->width  = border_width * 2;
   requisition->height = border_width * 2;
 
-  if (dockable->menu_button && GTK_WIDGET_VISIBLE (dockable->menu_button))
+  if (dockable->menu_button && gtk_widget_get_visible (dockable->menu_button))
     {
       gtk_widget_size_request (dockable->menu_button, &child_requisition);
 
@@ -329,7 +331,7 @@ gimp_dockable_size_request (GtkWidget      *widget,
       requisition->height += child_requisition.height;
     }
 
-  if (child && GTK_WIDGET_VISIBLE (child))
+  if (child && gtk_widget_get_visible (child))
     {
       gtk_widget_size_request (child, &child_requisition);
 
@@ -354,7 +356,7 @@ gimp_dockable_size_allocate (GtkWidget     *widget,
 
   border_width = gtk_container_get_border_width (container);
 
-  if (dockable->menu_button && GTK_WIDGET_VISIBLE (dockable->menu_button))
+  if (dockable->menu_button && gtk_widget_get_visible (dockable->menu_button))
     {
       gtk_widget_size_request (dockable->menu_button, &button_requisition);
 
@@ -373,7 +375,7 @@ gimp_dockable_size_allocate (GtkWidget     *widget,
       gtk_widget_size_allocate (dockable->menu_button, &child_allocation);
     }
 
-  if (child && GTK_WIDGET_VISIBLE (child))
+  if (child && gtk_widget_get_visible (child))
     {
       child_allocation.x      = allocation->x + border_width;
       child_allocation.y      = allocation->y + border_width;
@@ -544,7 +546,7 @@ static gboolean
 gimp_dockable_expose_event (GtkWidget      *widget,
                             GdkEventExpose *event)
 {
-  if (GTK_WIDGET_DRAWABLE (widget))
+  if (gtk_widget_is_drawable (widget))
     {
       GimpDockable *dockable = GIMP_DOCKABLE (widget);
       GtkStyle     *style    = gtk_widget_get_style (widget);
@@ -592,7 +594,8 @@ gimp_dockable_expose_event (GtkWidget      *widget,
 
           gtk_paint_layout (style, gtk_widget_get_window (widget),
                             (dockable->blink_counter & 1) ?
-                            GTK_STATE_SELECTED : widget->state, TRUE,
+                            GTK_STATE_SELECTED : gtk_widget_get_state (widget),
+                            TRUE,
                             &expose_area, widget, NULL,
                             text_x, text_y, dockable->title_layout);
         }
@@ -1059,7 +1062,7 @@ gimp_dockable_blink_cancel (GimpDockable *dockable)
 static void
 gimp_dockable_cursor_setup (GimpDockable *dockable)
 {
-  if (! GTK_WIDGET_REALIZED (dockable))
+  if (! GTK_WIDGET_REALIZED (GTK_WIDGET (dockable)))
     return;
 
   if (! dockable->title_window)
@@ -1102,7 +1105,7 @@ gimp_dockable_get_title_area (GimpDockable *dockable,
 static void
 gimp_dockable_clear_title_area (GimpDockable *dockable)
 {
-  if (GTK_WIDGET_DRAWABLE (dockable))
+  if (gtk_widget_is_drawable (GTK_WIDGET (dockable)))
     {
       GdkRectangle area;
 
@@ -1310,7 +1313,7 @@ gimp_dockable_title_changed (GimpDocked   *docked,
       dockable->title_layout = NULL;
     }
 
-  if (GTK_WIDGET_DRAWABLE (dockable))
+  if (gtk_widget_is_drawable (GTK_WIDGET (dockable)))
     {
       GdkRectangle area;
 
diff --git a/app/widgets/gimpdockbook.c b/app/widgets/gimpdockbook.c
index 50124e5..d67791e 100644
--- a/app/widgets/gimpdockbook.c
+++ b/app/widgets/gimpdockbook.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <string.h>
 
 #include <gtk/gtk.h>
diff --git a/app/widgets/gimpdockseparator.c b/app/widgets/gimpdockseparator.c
index e489bf9..33f67f3 100644
--- a/app/widgets/gimpdockseparator.c
+++ b/app/widgets/gimpdockseparator.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gtk/gtk.h>
 
 #include "libgimpwidgets/gimpwidgets.h"
diff --git a/app/widgets/gimpfgbgeditor.c b/app/widgets/gimpfgbgeditor.c
index 6721c0c..34030e5 100644
--- a/app/widgets/gimpfgbgeditor.c
+++ b/app/widgets/gimpfgbgeditor.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <string.h>
 
 #include <gtk/gtk.h>
@@ -293,7 +295,7 @@ gimp_fg_bg_editor_expose (GtkWidget      *widget,
   gint            rect_w, rect_h;
   GimpRGB         color;
 
-  if (! GTK_WIDGET_DRAWABLE (widget))
+  if (! gtk_widget_is_drawable (widget))
     return FALSE;
 
   width  = widget->allocation.width;
diff --git a/app/widgets/gimpfgbgview.c b/app/widgets/gimpfgbgview.c
index b6ceac5..0954b4d 100644
--- a/app/widgets/gimpfgbgview.c
+++ b/app/widgets/gimpfgbgview.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <string.h>
 
 #include <gtk/gtk.h>
@@ -86,7 +88,7 @@ gimp_fg_bg_view_class_init (GimpFgBgViewClass *klass)
 static void
 gimp_fg_bg_view_init (GimpFgBgView *view)
 {
-  GTK_WIDGET_SET_FLAGS (view, GTK_NO_WINDOW);
+  gtk_widget_set_has_window (GTK_WIDGET (view), FALSE);
 
   view->context = NULL;
 }
@@ -213,7 +215,7 @@ gimp_fg_bg_view_expose (GtkWidget      *widget,
   gint          rect_w, rect_h;
   GimpRGB       color;
 
-  if (! GTK_WIDGET_DRAWABLE (widget))
+  if (! gtk_widget_is_drawable (widget))
     return FALSE;
 
   x      = widget->allocation.x;
diff --git a/app/widgets/gimpgradienteditor.c b/app/widgets/gimpgradienteditor.c
index e7af33d..a27b65a 100644
--- a/app/widgets/gimpgradienteditor.c
+++ b/app/widgets/gimpgradienteditor.c
@@ -44,6 +44,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <stdlib.h>
 #include <string.h>
 
diff --git a/app/widgets/gimphandlebar.c b/app/widgets/gimphandlebar.c
index f3ba896..0c9ac80 100644
--- a/app/widgets/gimphandlebar.c
+++ b/app/widgets/gimphandlebar.c
@@ -17,6 +17,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gtk/gtk.h>
 
 #include "libgimpmath/gimpmath.h"
@@ -155,7 +157,7 @@ gimp_handle_bar_expose (GtkWidget      *widget,
   width  = widget->allocation.width  - 2 * x;
   height = widget->allocation.height - 2 * y;
 
-  if (GTK_WIDGET_NO_WINDOW (widget))
+  if (! gtk_widget_get_has_window (widget))
     {
       x += widget->allocation.x;
       y += widget->allocation.y;
diff --git a/app/widgets/gimphistogrameditor.c b/app/widgets/gimphistogrameditor.c
index 0cc417c..cca44bd 100644
--- a/app/widgets/gimphistogrameditor.c
+++ b/app/widgets/gimphistogrameditor.c
@@ -17,6 +17,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gegl.h>
 #include <gtk/gtk.h>
 
@@ -397,7 +399,8 @@ gimp_histogram_editor_frozen_update (GimpHistogramEditor *editor,
        * is shown. So don't slow down painting by doing something that
        * is not even seen by the user.
        */
-      if (! editor->bg_histogram && GTK_WIDGET_DRAWABLE (editor))
+      if (! editor->bg_histogram &&
+          gtk_widget_is_drawable (GTK_WIDGET (editor)))
         {
           if (gimp_histogram_editor_validate (editor))
             editor->bg_histogram = gimp_histogram_duplicate (editor->histogram);
diff --git a/app/widgets/gimphistogramview.c b/app/widgets/gimphistogramview.c
index b3873af..fcba461 100644
--- a/app/widgets/gimphistogramview.c
+++ b/app/widgets/gimphistogramview.c
@@ -17,6 +17,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gtk/gtk.h>
 
 #include "libgimpmath/gimpmath.h"
diff --git a/app/widgets/gimpmessagebox.c b/app/widgets/gimpmessagebox.c
index 24d2183..e895b95 100644
--- a/app/widgets/gimpmessagebox.c
+++ b/app/widgets/gimpmessagebox.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gtk/gtk.h>
 
 #include "libgimpwidgets/gimpwidgets.h"
@@ -239,7 +241,7 @@ gimp_message_box_size_request (GtkWidget      *widget,
 
   GTK_WIDGET_CLASS (parent_class)->size_request (widget, requisition);
 
-  if (box->image && GTK_WIDGET_VISIBLE (box->image))
+  if (box->image && gtk_widget_get_visible (box->image))
     {
       GtkRequisition  child_requisition;
       gint            border_width;
@@ -266,7 +268,7 @@ gimp_message_box_size_allocate (GtkWidget     *widget,
 
   rtl = (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL);
 
-  if (box->image)
+  if (box->image && gtk_widget_get_visible (box->image))
     {
       GtkRequisition  child_requisition;
       GtkAllocation   child_allocation;
diff --git a/app/widgets/gimpnavigationview.c b/app/widgets/gimpnavigationview.c
index 396de72..0aba478 100644
--- a/app/widgets/gimpnavigationview.c
+++ b/app/widgets/gimpnavigationview.c
@@ -23,6 +23,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gegl.h>
 #include <gtk/gtk.h>
 #include <gdk/gdkkeysyms.h>
@@ -155,10 +157,11 @@ gimp_navigation_view_class_init (GimpNavigationViewClass *klass)
 static void
 gimp_navigation_view_init (GimpNavigationView *view)
 {
-  GTK_WIDGET_SET_FLAGS (view, GTK_CAN_FOCUS);
+  gtk_widget_set_can_focus (GTK_WIDGET (view), TRUE);
+  gtk_widget_add_events (GTK_WIDGET (view),
+                         GDK_POINTER_MOTION_MASK |
+                         GDK_KEY_PRESS_MASK);
 
-  gtk_widget_add_events (GTK_WIDGET (view), (GDK_POINTER_MOTION_MASK |
-                                             GDK_KEY_PRESS_MASK));
   view->x               = 0.0;
   view->y               = 0.0;
   view->width           = 0.0;
@@ -188,7 +191,7 @@ static gboolean
 gimp_navigation_view_expose (GtkWidget      *widget,
                              GdkEventExpose *event)
 {
-  if (GTK_WIDGET_DRAWABLE (widget))
+  if (gtk_widget_is_drawable (widget))
     {
       cairo_t *cr;
 
diff --git a/app/widgets/gimppaletteeditor.c b/app/widgets/gimppaletteeditor.c
index 814420d..9b984fe 100644
--- a/app/widgets/gimppaletteeditor.c
+++ b/app/widgets/gimppaletteeditor.c
@@ -17,6 +17,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <string.h>
 
 #include <gtk/gtk.h>
@@ -199,7 +201,7 @@ gimp_palette_editor_init (GimpPaletteEditor *editor)
   g_signal_connect (eventbox, "button-press-event",
                     G_CALLBACK (palette_editor_eventbox_button_press),
                     editor);
-  g_signal_connect (eventbox->parent, "size-allocate",
+  g_signal_connect (gtk_widget_get_parent (eventbox), "size-allocate",
                     G_CALLBACK (palette_editor_viewport_size_allocate),
                     editor);
 
diff --git a/app/widgets/gimppaletteview.c b/app/widgets/gimppaletteview.c
index 2384b8d..5ab30d4 100644
--- a/app/widgets/gimppaletteview.c
+++ b/app/widgets/gimppaletteview.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gtk/gtk.h>
 #include <gdk/gdkkeysyms.h>
 
@@ -152,7 +154,7 @@ gimp_palette_view_class_init (GimpPaletteViewClass *klass)
 static void
 gimp_palette_view_init (GimpPaletteView *view)
 {
-  GTK_WIDGET_SET_FLAGS (view, GTK_CAN_FOCUS);
+  gtk_widget_set_can_focus (GTK_WIDGET (view), TRUE);
 
   view->selected  = NULL;
   view->dnd_entry = NULL;
@@ -165,7 +167,7 @@ gimp_palette_view_expose (GtkWidget      *widget,
   GimpPaletteView *pal_view = GIMP_PALETTE_VIEW (widget);
   GimpView        *view     = GIMP_VIEW (widget);
 
-  if (! GTK_WIDGET_DRAWABLE (widget))
+  if (! gtk_widget_is_drawable (widget))
     return FALSE;
 
   GTK_WIDGET_CLASS (parent_class)->expose_event (widget, eevent);
@@ -215,7 +217,7 @@ gimp_palette_view_button_press (GtkWidget      *widget,
   GimpPaletteView  *view = GIMP_PALETTE_VIEW (widget);
   GimpPaletteEntry *entry;
 
-  if (GTK_WIDGET_CAN_FOCUS (widget) && ! GTK_WIDGET_HAS_FOCUS (widget))
+  if (gtk_widget_get_can_focus (widget) && ! gtk_widget_has_focus (widget))
     gtk_widget_grab_focus (widget);
 
   entry = gimp_palette_view_find_entry (view, bevent->x, bevent->y);
@@ -288,7 +290,7 @@ gimp_palette_view_focus (GtkWidget        *widget,
 
   palette = GIMP_PALETTE (GIMP_VIEW (view)->renderer->viewable);
 
-  if (GTK_WIDGET_CAN_FOCUS (widget) && ! GTK_WIDGET_HAS_FOCUS (widget))
+  if (gtk_widget_get_can_focus (widget) && ! gtk_widget_has_focus (widget))
     {
       gtk_widget_grab_focus (widget);
 
diff --git a/app/widgets/gimpprogressbox.c b/app/widgets/gimpprogressbox.c
index e925868..1832cfb 100644
--- a/app/widgets/gimpprogressbox.c
+++ b/app/widgets/gimpprogressbox.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gtk/gtk.h>
 
 #include "libgimpmath/gimpmath.h"
@@ -130,7 +132,7 @@ gimp_progress_box_progress_start (GimpProgress *progress,
       box->cancelable = cancelable;
       box->value      = 0.0;
 
-      if (GTK_WIDGET_DRAWABLE (box->progress))
+      if (gtk_widget_is_drawable (box->progress))
         gdk_window_process_updates (gtk_widget_get_window (box->progress),
                                     TRUE);
 
@@ -175,7 +177,7 @@ gimp_progress_box_progress_set_text (GimpProgress *progress,
 
       gtk_label_set_text (GTK_LABEL (box->label), message);
 
-      if (GTK_WIDGET_DRAWABLE (box->progress))
+      if (gtk_widget_is_drawable (box->progress))
         gdk_window_process_updates (gtk_widget_get_window (box->progress),
                                     TRUE);
     }
@@ -198,7 +200,7 @@ gimp_progress_box_progress_set_value (GimpProgress *progress,
         {
           gtk_progress_bar_set_fraction (bar, box->value);
 
-          if (GTK_WIDGET_DRAWABLE (box->progress))
+          if (gtk_widget_is_drawable (box->progress))
             gdk_window_process_updates (gtk_widget_get_window (box->progress),
                                         TRUE);
         }
@@ -226,7 +228,7 @@ gimp_progress_box_progress_pulse (GimpProgress *progress)
 
       gtk_progress_bar_pulse (bar);
 
-      if (GTK_WIDGET_DRAWABLE (box->progress))
+      if (gtk_widget_is_drawable (box->progress))
         gdk_window_process_updates (gtk_widget_get_window (box->progress),
                                     TRUE);
     }
diff --git a/app/widgets/gimpscalebutton.c b/app/widgets/gimpscalebutton.c
index 15e7e53..ca5a72c 100644
--- a/app/widgets/gimpscalebutton.c
+++ b/app/widgets/gimpscalebutton.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gtk/gtk.h>
 
 #include "widgets-types.h"
@@ -161,7 +163,7 @@ gimp_scale_button_image_expose (GtkWidget       *widget,
       cairo_line_to (cr, i, i + 0.5);
     }
 
-  gdk_cairo_set_source_color (cr, &style->fg[widget->state]);
+  gdk_cairo_set_source_color (cr, &style->fg[gtk_widget_get_state (widget)]);
   cairo_stroke (cr);
 
   for ( ; i < steps; i++)
diff --git a/app/widgets/gimpsessioninfo.c b/app/widgets/gimpsessioninfo.c
index 47179e0..de9ed6a 100644
--- a/app/widgets/gimpsessioninfo.c
+++ b/app/widgets/gimpsessioninfo.c
@@ -564,7 +564,7 @@ gimp_session_info_read_geometry (GimpSessionInfo *info)
       switch (visibility)
         {
         case GIMP_DIALOG_VISIBILITY_UNKNOWN:
-          info->p->open = GTK_WIDGET_VISIBLE (info->p->widget);
+          info->p->open = gtk_widget_get_visible (info->p->widget);
           break;
 
         case GIMP_DIALOG_VISIBILITY_INVISIBLE:
diff --git a/app/widgets/gimpsettingsbox.c b/app/widgets/gimpsettingsbox.c
index 0f5de69..96e0727 100644
--- a/app/widgets/gimpsettingsbox.c
+++ b/app/widgets/gimpsettingsbox.c
@@ -249,7 +249,7 @@ gimp_settings_box_constructor (GType                  type,
   gtk_widget_show (hbox2);
 
   button = gtk_button_new ();
-  GTK_WIDGET_UNSET_FLAGS (button, GTK_CAN_FOCUS);
+  gtk_widget_set_can_focus (button, FALSE);
   gtk_button_set_relief (GTK_BUTTON (button), GTK_RELIEF_NONE);
   gtk_box_pack_start (GTK_BOX (hbox2), button, FALSE, FALSE, 0);
   gtk_widget_show (button);
@@ -265,7 +265,7 @@ gimp_settings_box_constructor (GType                  type,
                     box);
 
   button = gtk_button_new ();
-  GTK_WIDGET_UNSET_FLAGS (button, GTK_CAN_FOCUS);
+  gtk_widget_set_can_focus (button, FALSE);
   gtk_button_set_relief (GTK_BUTTON (button), GTK_RELIEF_NONE);
   gtk_box_pack_start (GTK_BOX (hbox2), button, FALSE, FALSE, 0);
   gtk_widget_show (button);
diff --git a/app/widgets/gimpstrokeeditor.c b/app/widgets/gimpstrokeeditor.c
index 856e21d..ab855e4 100644
--- a/app/widgets/gimpstrokeeditor.c
+++ b/app/widgets/gimpstrokeeditor.c
@@ -17,6 +17,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gtk/gtk.h>
 
 #include "libgimpbase/gimpbase.h"
@@ -341,8 +343,10 @@ gimp_stroke_editor_paint_button (GtkWidget       *widget,
   GtkAllocation *alloc = &widget->allocation;
   gint           w     = MIN (alloc->width, alloc->height) * 2 / 3;
 
-  gtk_paint_arrow (style, gtk_widget_get_window (widget),
-                   widget->state, GTK_SHADOW_IN,
+  gtk_paint_arrow (style,
+                   gtk_widget_get_window (widget),
+                   gtk_widget_get_state (widget),
+                   GTK_SHADOW_IN,
                    &event->area, widget, NULL,
                    data ? GTK_ARROW_LEFT : GTK_ARROW_RIGHT, TRUE,
                    alloc->x + (alloc->width - w) / 2,
diff --git a/app/widgets/gimptagentry.c b/app/widgets/gimptagentry.c
index 6d11728..64661df 100644
--- a/app/widgets/gimptagentry.c
+++ b/app/widgets/gimptagentry.c
@@ -402,7 +402,7 @@ gimp_tag_entry_changed (GtkEntry *entry)
   text = g_strdup (gtk_entry_get_text (entry));
   text = g_strstrip (text);
 
-  if (! GTK_WIDGET_HAS_FOCUS (GTK_WIDGET (entry))
+  if (! gtk_widget_has_focus (GTK_WIDGET (entry))
       && strlen (text) == 0)
     {
       gimp_tag_entry_toggle_desc (tag_entry, TRUE);
diff --git a/app/widgets/gimptagpopup.c b/app/widgets/gimptagpopup.c
index 6911ede..79cf1d3 100644
--- a/app/widgets/gimptagpopup.c
+++ b/app/widgets/gimptagpopup.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <stdlib.h>
 #include <string.h>
 
diff --git a/app/widgets/gimptoolbox.c b/app/widgets/gimptoolbox.c
index 925c668..c097b13 100644
--- a/app/widgets/gimptoolbox.c
+++ b/app/widgets/gimptoolbox.c
@@ -17,6 +17,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <string.h>
 
 #include <gtk/gtk.h>
@@ -512,18 +514,19 @@ gimp_toolbox_expose_event (GtkWidget      *widget,
 
   GTK_WIDGET_CLASS (parent_class)->expose_event (widget, event);
 
-  if (GTK_WIDGET_VISIBLE (toolbox->p->header) &&
+  if (gtk_widget_get_visible (toolbox->p->header) &&
       gdk_rectangle_intersect (&event->area,
                                &toolbox->p->header->allocation,
                                &clip_rect))
     {
-      GtkStyle *style = gtk_widget_get_style (widget);
-      cairo_t  *cr;
-      gint      header_height;
-      gint      header_width;
-      gdouble   wilber_width;
-      gdouble   wilber_height;
-      gdouble   factor;
+      GtkStyle     *style = gtk_widget_get_style (widget);
+      GtkStateType  state = gtk_widget_get_state (widget);
+      cairo_t      *cr;
+      gint          header_height;
+      gint          header_width;
+      gdouble       wilber_width;
+      gdouble       wilber_height;
+      gdouble       factor;
 
       cr = gdk_cairo_create (gtk_widget_get_window (widget));
       gdk_cairo_rectangle (cr, &clip_rect);
@@ -543,9 +546,9 @@ gimp_toolbox_expose_event (GtkWidget      *widget,
                          (header_height / factor - wilber_height) / 2.0);
 
       cairo_set_source_rgba (cr,
-                             style->fg[widget->state].red   / 65535.0,
-                             style->fg[widget->state].green / 65535.0,
-                             style->fg[widget->state].blue  / 65535.0,
+                             style->fg[state].red   / 65535.0,
+                             style->fg[state].green / 65535.0,
+                             style->fg[state].blue  / 65535.0,
                              0.10);
       cairo_fill (cr);
 
diff --git a/app/widgets/gimptooloptionseditor.c b/app/widgets/gimptooloptionseditor.c
index 99c0c10..25d4218 100644
--- a/app/widgets/gimptooloptionseditor.c
+++ b/app/widgets/gimptooloptionseditor.c
@@ -324,7 +324,7 @@ static void
 gimp_tool_options_editor_save_clicked (GtkWidget             *widget,
                                        GimpToolOptionsEditor *editor)
 {
-  if (GTK_WIDGET_SENSITIVE (editor->restore_button) /* evil but correct */)
+  if (gtk_widget_get_sensitive (editor->restore_button) /* evil but correct */)
     {
       gimp_tool_options_editor_menu_popup (editor, widget,
                                            "/tool-options-popup/Save");
diff --git a/app/widgets/gimpuimanager.c b/app/widgets/gimpuimanager.c
index ed71ba7..c924215 100644
--- a/app/widgets/gimpuimanager.c
+++ b/app/widgets/gimpuimanager.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <string.h>
 
 #include <gtk/gtk.h>
diff --git a/app/widgets/gimpview-popup.c b/app/widgets/gimpview-popup.c
index 46a80fa..0265650 100644
--- a/app/widgets/gimpview-popup.c
+++ b/app/widgets/gimpview-popup.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <gtk/gtk.h>
 
 #include "libgimpwidgets/gimpwidgets.h"
@@ -111,7 +113,7 @@ gimp_view_popup_show (GtkWidget      *widget,
   popup->button_x     = bevent->x;
   popup->button_y     = bevent->y;
 
-  if (GTK_WIDGET_NO_WINDOW (widget))
+  if (! gtk_widget_get_has_window (widget))
     {
       popup->button_x += widget->allocation.x;
       popup->button_y += widget->allocation.y;
diff --git a/app/widgets/gimpview.c b/app/widgets/gimpview.c
index 4db585f..93a5d62 100644
--- a/app/widgets/gimpview.c
+++ b/app/widgets/gimpview.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <string.h>
 
 #include <gtk/gtk.h>
@@ -161,12 +163,12 @@ gimp_view_class_init (GimpViewClass *klass)
 static void
 gimp_view_init (GimpView *view)
 {
-  GTK_WIDGET_SET_FLAGS (view, GTK_NO_WINDOW);
-
-  gtk_widget_add_events (GTK_WIDGET (view), (GDK_BUTTON_PRESS_MASK   |
-                                             GDK_BUTTON_RELEASE_MASK |
-                                             GDK_ENTER_NOTIFY_MASK   |
-                                             GDK_LEAVE_NOTIFY_MASK));
+  gtk_widget_set_has_window (GTK_WIDGET (view), FALSE);
+  gtk_widget_add_events (GTK_WIDGET (view),
+                         GDK_BUTTON_PRESS_MASK   |
+                         GDK_BUTTON_RELEASE_MASK |
+                         GDK_ENTER_NOTIFY_MASK   |
+                         GDK_LEAVE_NOTIFY_MASK);
 
   view->event_window      = NULL;
   view->viewable          = NULL;
@@ -383,7 +385,7 @@ static gboolean
 gimp_view_expose_event (GtkWidget      *widget,
                         GdkEventExpose *event)
 {
-  if (GTK_WIDGET_DRAWABLE (widget))
+  if (gtk_widget_is_drawable (widget))
     {
       gimp_view_renderer_draw (GIMP_VIEW (widget)->renderer,
                                gtk_widget_get_window (widget), widget,
diff --git a/app/widgets/gimpviewrenderer.c b/app/widgets/gimpviewrenderer.c
index 178662e..2b954a3 100644
--- a/app/widgets/gimpviewrenderer.c
+++ b/app/widgets/gimpviewrenderer.c
@@ -589,7 +589,7 @@ gimp_view_renderer_draw (GimpViewRenderer   *renderer,
   if (G_UNLIKELY (renderer->context == NULL))
     g_warning ("%s: renderer->context is NULL", G_STRFUNC);
 
-  if (! GTK_WIDGET_DRAWABLE (widget))
+  if (! gtk_widget_is_drawable (widget))
     return;
 
   if (! gdk_rectangle_intersect ((GdkRectangle *) draw_area,
diff --git a/app/widgets/gimpwidgets-utils.c b/app/widgets/gimpwidgets-utils.c
index 360c5c1..6dcaa7d 100644
--- a/app/widgets/gimpwidgets-utils.c
+++ b/app/widgets/gimpwidgets-utils.c
@@ -20,6 +20,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include <errno.h>
 #include <fcntl.h>
 #include <string.h>
@@ -147,6 +149,7 @@ gimp_button_menu_position (GtkWidget       *button,
   GdkRectangle    rect;
   gint            monitor;
 
+  g_return_if_fail (GTK_IS_WIDGET (button));
   g_return_if_fail (GTK_WIDGET_REALIZED (button));
   g_return_if_fail (GTK_IS_MENU (menu));
   g_return_if_fail (x != NULL);
@@ -174,7 +177,7 @@ gimp_button_menu_position (GtkWidget       *button,
 
   gtk_menu_set_screen (menu, screen);
 
-  if (GTK_WIDGET_NO_WINDOW (button))
+  if (! gtk_widget_get_has_window (button))
     *x += button->allocation.x;
 
   switch (position)
@@ -196,7 +199,7 @@ gimp_button_menu_position (GtkWidget       *button,
       break;
     }
 
-  if (GTK_WIDGET_NO_WINDOW (button))
+  if (! gtk_widget_get_has_window (button))
     *y += button->allocation.y;
 
   *y += button->allocation.height / 2;
@@ -823,12 +826,12 @@ gimp_window_get_native (GtkWindow *window)
 #endif
 
 #ifdef GDK_WINDOWING_WIN32
-  if (window && GTK_WIDGET_REALIZED (window))
+  if (window && GTK_WIDGET_REALIZED (GTK_WIDGET (window)))
     return (GdkNativeWindow) GDK_WINDOW_HWND (gtk_widget_get_window (GTK_WIDGET (window)));
 #endif
 
 #ifdef GDK_WINDOWING_X11
-  if (window && GTK_WIDGET_REALIZED (window))
+  if (window && GTK_WIDGET_REALIZED (GTK_WIDGET (window)))
     return GDK_WINDOW_XID (gtk_widget_get_window (GTK_WIDGET (window)));
 #endif
 
@@ -864,7 +867,7 @@ gimp_window_set_transient_for (GtkWindow *window,
   if (! parent)
     return;
 
-  if (GTK_WIDGET_REALIZED (window))
+  if (GTK_WIDGET_REALIZED (GTK_WIDGET (window)))
     gdk_window_set_transient_for (gtk_widget_get_window (GTK_WIDGET (window)),
                                   parent);
 
diff --git a/app/widgets/gtkhwrapbox.c b/app/widgets/gtkhwrapbox.c
index 1c1d58c..3fd28d0 100644
--- a/app/widgets/gtkhwrapbox.c
+++ b/app/widgets/gtkhwrapbox.c
@@ -21,6 +21,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include "gtkhwrapbox.h"
 
 #include "libgimpmath/gimpmath.h"
diff --git a/app/widgets/gtkvwrapbox.c b/app/widgets/gtkvwrapbox.c
index e4e2e07..cc48fe2 100644
--- a/app/widgets/gtkvwrapbox.c
+++ b/app/widgets/gtkvwrapbox.c
@@ -21,6 +21,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include "gtkvwrapbox.h"
 
 #include "libgimpmath/gimpmath.h"
diff --git a/app/widgets/gtkwrapbox.c b/app/widgets/gtkwrapbox.c
index 4bcdcae..d790444 100644
--- a/app/widgets/gtkwrapbox.c
+++ b/app/widgets/gtkwrapbox.c
@@ -21,6 +21,8 @@
 
 #include "config.h"
 
+#undef GSEAL_ENABLE
+
 #include "gtkwrapbox.h"
 
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]