GTK marks several functions as deprecated
authorKlaus Ethgen <Klaus@Ethgen.de>
Mon, 10 May 2010 11:32:56 +0000 (11:32 +0000)
committerKlaus Ethgen <Klaus@Ethgen.de>
Sat, 26 May 2012 13:42:10 +0000 (14:42 +0100)
The following functions has been replaced and deprecated by version
2.20:
   - GTK_WIDGET_CAN_FOCUS
   - GTK_WIDGET_DRAWABLE
   - GTK_WIDGET_HAS_FOCUS
   - GTK_WIDGET_HAS_GRAB
   - GTK_WIDGET_IS_SENSITIVE
   - GTK_WIDGET_NO_WINDOW
   - GTK_WIDGET_REALIZED
   - GTK_WIDGET_SENSITIVE
   - GTK_WIDGET_STATE
   - GTK_WIDGET_TOPLEVEL
   - GTK_WIDGET_VISIBLE

25 files changed:
src/bar.c
src/bar_comment.c
src/bar_exif.c
src/bar_histogram.c
src/bar_keywords.c
src/bar_sort.c
src/cache_maint.c
src/cellrenderericon.c
src/collect-table.c
src/dupe.c
src/image.c
src/layout.c
src/layout_util.c
src/logwindow.c
src/pan-view.c
src/pixbuf-renderer.c
src/print.c
src/search.c
src/ui_misc.c
src/ui_tabcomp.c
src/ui_tree_edit.c
src/ui_utildlg.c
src/view_dir_list.c
src/view_file.c
src/view_file_icon.c

index b3e04a0..afc1220 100644 (file)
--- a/src/bar.c
+++ b/src/bar.c
@@ -457,7 +457,11 @@ void bar_write_config(GtkWidget *bar, GString *outstr, gint indent)
        if (!bd) return;
 
        WRITE_NL(); WRITE_STRING("<bar ");
+#if GTK_CHECK_VERSION(2,20,0)
+       write_bool_option(outstr, indent, "enabled", gtk_widget_get_visible(bar));
+#else
        write_bool_option(outstr, indent, "enabled", GTK_WIDGET_VISIBLE(bar));
+#endif
        write_uint_option(outstr, indent, "width", bd->width);
        WRITE_STRING(">");
        
index 0f96726..2b14125 100644 (file)
@@ -141,7 +141,11 @@ static gint bar_pane_comment_event(GtkWidget *bar, GdkEvent *event)
        pcd = g_object_get_data(G_OBJECT(bar), "pane_data");
        if (!pcd) return FALSE;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_has_focus(pcd->comment_view)) return gtk_widget_event(pcd->comment_view, event);
+#else
        if (GTK_WIDGET_HAS_FOCUS(pcd->comment_view)) return gtk_widget_event(pcd->comment_view, event);
+#endif
 
        return FALSE;
 }
index 25499f6..b8234d7 100644 (file)
@@ -301,7 +301,11 @@ gint bar_pane_exif_event(GtkWidget *bar, GdkEvent *event)
                ExifEntry *ee = g_object_get_data(G_OBJECT(entry), "entry_data");
                work = work->next;
 
+#if GTK_CHECK_VERSION(2,20,0)
+               if (ee->editable && gtk_widget_has_focus(ee->value_widget)) ret = gtk_widget_event(ee->value_widget, event);
+#else
                if (ee->editable && GTK_WIDGET_HAS_FOCUS(ee->value_widget)) ret = gtk_widget_event(ee->value_widget, event);
+#endif
                }
        g_list_free(list);
        return ret;
@@ -396,7 +400,11 @@ static void bar_pane_exif_dnd_receive(GtkWidget *pane, GdkDragContext *context,
                
                if (entry == new_entry) continue;
                
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_is_drawable(entry) &&
+#else
                if (GTK_WIDGET_DRAWABLE(entry) && 
+#endif
                    gtk_widget_translate_coordinates(pane, entry, x, y, &nx, &ny) &&
                    ny < entry->allocation.height / 2) break;
                pos++;
index 7d032de..6a07fd3 100644 (file)
@@ -61,7 +61,11 @@ static void bar_pane_histogram_update(PaneHistogramData *phd)
        /* histmap_get is relatively expensive, run it only when we really need it
           and with lower priority than pixbuf_renderer 
           FIXME: this does not work for fullscreen*/
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_is_drawable(phd->drawing_area))
+#else
        if (GTK_WIDGET_DRAWABLE(phd->drawing_area))
+#endif
                {
                if (!phd->idle_id)
                        {
@@ -153,7 +157,11 @@ static gboolean bar_pane_histogram_expose_event_cb(GtkWidget *widget, GdkEventEx
        if (!phd->pixbuf) return TRUE;
        
        gdk_draw_pixbuf(widget->window,
+#if GTK_CHECK_VERSION(2,20,0)
+                       widget->style->fg_gc[gtk_widget_get_state(widget)],
+#else
                        widget->style->fg_gc[GTK_WIDGET_STATE (widget)],
+#endif
                        phd->pixbuf,
                        0, 0,
                        0, 0,
index 9c1f5d6..fe341af 100644 (file)
@@ -264,7 +264,11 @@ gint bar_pane_keywords_event(GtkWidget *bar, GdkEvent *event)
        pkd = g_object_get_data(G_OBJECT(bar), "pane_data");
        if (!pkd) return FALSE;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_has_focus(pkd->keyword_view)) return gtk_widget_event(pkd->keyword_view, event);
+#else
        if (GTK_WIDGET_HAS_FOCUS(pkd->keyword_view)) return gtk_widget_event(pkd->keyword_view, event);
+#endif
 
        return FALSE;
 }
index 4bac1d9..9818acc 100644 (file)
@@ -724,7 +724,11 @@ void bar_sort_write_config(GtkWidget *bar, GString *outstr, gint indent)
        if (!sd) return;
 
        WRITE_NL(); WRITE_STRING("<bar_sort ");
+#if GTK_CHECK_VERSION(2,20,0)
+       write_bool_option(outstr, indent, "enabled", gtk_widget_get_visible(bar));
+#else
        write_bool_option(outstr, indent, "enabled", GTK_WIDGET_VISIBLE(bar));
+#endif
        WRITE_INT(*sd, mode);
        WRITE_INT(*sd, action);
        WRITE_INT(*sd, selection);
index c85c083..b84ad6b 100644 (file)
@@ -256,7 +256,11 @@ static void cache_maintain_home_close_cb(GenericDialog *gd, gpointer data)
 {
        CMData *cm = data;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (!gtk_widget_get_sensitive(cm->button_close)) return;
+#else
        if (!GTK_WIDGET_SENSITIVE(cm->button_close)) return;
+#endif
 
        cache_maintain_home_close(cm);
 }
@@ -708,7 +712,11 @@ static void cache_manager_render_close_cb(GenericDialog *fd, gpointer data)
 {
        CleanData *cd = data;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (!gtk_widget_get_sensitive(cd->button_close)) return;
+#else
        if (!GTK_WIDGET_SENSITIVE(cd->button_close)) return;
+#endif
 
        cache_manager_render_reset(cd);
        generic_dialog_close(cd->gd);
@@ -823,7 +831,11 @@ static void cache_manager_render_start_cb(GenericDialog *fd, gpointer data)
        CleanData *cd = data;
        gchar *path;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (cd->list || !gtk_widget_get_sensitive(cd->button_start)) return;
+#else
        if (cd->list || !GTK_WIDGET_SENSITIVE(cd->button_start)) return;
+#endif
 
        path = remove_trailing_slash((gtk_entry_get_text(GTK_ENTRY(cd->entry))));
        parse_out_relatives(path);
@@ -920,7 +932,11 @@ static void cache_manager_standard_clean_close_cb(GenericDialog *gd, gpointer da
 {
        CleanData *cd = data;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (!gtk_widget_get_sensitive(cd->button_close)) return;
+#else
        if (!GTK_WIDGET_SENSITIVE(cd->button_close)) return;
+#endif
 
        generic_dialog_close(cd->gd);
 
@@ -1033,7 +1049,11 @@ static void cache_manager_standard_clean_start_cb(GenericDialog *gd, gpointer da
        gchar *path;
        FileData *dir_fd;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (cd->list || !gtk_widget_get_sensitive(cd->button_start)) return;
+#else
        if (cd->list || !GTK_WIDGET_SENSITIVE(cd->button_start)) return;
+#endif
 
        gtk_widget_set_sensitive(cd->button_start, FALSE);
        gtk_widget_set_sensitive(cd->button_stop, TRUE);
index 4a811e0..00f4ede 100644 (file)
@@ -20,6 +20,7 @@
  */
 
 #include <stdlib.h>
+#include <gtk/gtk.h> /* To define GTK_CHECK_VERSION */
 #include "cellrenderericon.h"
 #include "intl.h"
 
@@ -646,14 +647,22 @@ gqv_cell_renderer_icon_render(GtkCellRenderer             *cell,
 
        if ((flags & GTK_CELL_RENDERER_SELECTED) == GTK_CELL_RENDERER_SELECTED)
                {
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_has_focus(widget))
+#else
                if (GTK_WIDGET_HAS_FOCUS(widget))
+#endif
                        state = GTK_STATE_SELECTED;
                else
                        state = GTK_STATE_ACTIVE;
                }
        else
                {
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_get_state(widget) == GTK_STATE_INSENSITIVE)
+#else
                if (GTK_WIDGET_STATE(widget) == GTK_STATE_INSENSITIVE)
+#endif
                        state = GTK_STATE_INSENSITIVE;
                else
                        state = GTK_STATE_NORMAL;
@@ -756,7 +765,11 @@ gqv_cell_renderer_icon_render(GtkCellRenderer              *cell,
                        }
                 }
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (cellicon->focused && gtk_widget_has_focus(widget))
+#else
        if (cellicon->focused && GTK_WIDGET_HAS_FOCUS(widget))
+#endif
                {
                gtk_paint_focus(widget->style, window,
                                state,
index 70543c9..745eeca 100644 (file)
@@ -537,7 +537,11 @@ static void tip_show(CollectTable *ct)
 
        gdk_window_get_pointer(NULL, &x, &y, NULL);
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (!gtk_widget_get_realized(ct->tip_window)) gtk_widget_realize(ct->tip_window);
+#else
        if (!GTK_WIDGET_REALIZED(ct->tip_window)) gtk_widget_realize(ct->tip_window);
+#endif
        gtk_window_move(GTK_WINDOW(ct->tip_window), x + 16, y + 16);
        gtk_widget_show(ct->tip_window);
 }
@@ -1550,7 +1554,11 @@ static gboolean collection_table_press_cb(GtkWidget *widget, GdkEventButton *bev
                                        layout_image_set_collection(NULL, ct->cd, info);
                                        }
                                }
+#if GTK_CHECK_VERSION(2,20,0)
+                       else if (!gtk_widget_has_focus(ct->listview))
+#else
                        else if (!GTK_WIDGET_HAS_FOCUS(ct->listview))
+#endif
                                {
                                gtk_widget_grab_focus(ct->listview);
                                }
@@ -1716,7 +1724,11 @@ static void collection_table_populate(CollectTable *ct, gboolean resize)
                                                             "show_text", ct->show_text, NULL);
                                }
                        }
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_get_realized(ct->listview)) gtk_tree_view_columns_autosize(GTK_TREE_VIEW(ct->listview));
+#else
                if (GTK_WIDGET_REALIZED(ct->listview)) gtk_tree_view_columns_autosize(GTK_TREE_VIEW(ct->listview));
+#endif
                }
 
        row = -1;
index 7c4df8f..e50b8df 100644 (file)
@@ -2216,7 +2216,11 @@ static GList *dupe_window_get_fd_list(DupeWindow *dw)
 {
        GList *list;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_has_focus(dw->second_listview))
+#else
        if (GTK_WIDGET_HAS_FOCUS(dw->second_listview))
+#endif
                {
                list = dupe_listview_get_selection(dw, dw->second_listview);
                }
@@ -2860,7 +2864,11 @@ static gboolean dupe_window_keypress_cb(GtkWidget *widget, GdkEventKey *event, g
        GList *slist;
        DupeItem *di = NULL;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       on_second = gtk_widget_has_focus(dw->second_listview);
+#else
        on_second = GTK_WIDGET_HAS_FOCUS(dw->second_listview);
+#endif
 
        if (on_second)
                {
index f19324e..ca87189 100644 (file)
@@ -905,7 +905,11 @@ static gboolean image_focus_expose(GtkWidget *widget, GdkEventExpose *event, gpo
 {
        ImageWindow *imd = data;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       image_focus_paint(imd, gtk_widget_has_focus(widget), &event->area);
+#else
        image_focus_paint(imd, GTK_WIDGET_HAS_FOCUS(widget), &event->area);
+#endif
        return TRUE;
 }
 
index 7599da1..b0958f6 100644 (file)
@@ -1143,7 +1143,11 @@ gboolean layout_geometry_get_tools(LayoutWindow *lw, gint *x, gint *y, gint *w,
 {
        if (!layout_valid(&lw)) return FALSE;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (!lw->tools || !gtk_widget_get_visible(lw->tools))
+#else
        if (!lw->tools || !GTK_WIDGET_VISIBLE(lw->tools))
+#endif
                {
                /* use the stored values (sort of breaks success return value) */
 
@@ -1179,7 +1183,11 @@ static void layout_tools_hide(LayoutWindow *lw, gboolean hide)
 
        if (hide)
                {
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_get_visible(lw->tools))
+#else
                if (GTK_WIDGET_VISIBLE(lw->tools))
+#endif
                        {
                        layout_tools_geometry_sync(lw);
                        gtk_widget_hide(lw->tools);
@@ -1187,7 +1195,11 @@ static void layout_tools_hide(LayoutWindow *lw, gboolean hide)
                }
        else
                {
+#if GTK_CHECK_VERSION(2,20,0)
+               if (!gtk_widget_get_visible(lw->tools))
+#else
                if (!GTK_WIDGET_VISIBLE(lw->tools))
+#endif
                        {
                        gtk_widget_show(lw->tools);
                        if (lw->vf) vf_refresh(lw->vf);
@@ -1713,11 +1725,19 @@ void layout_toolbar_toggle(LayoutWindow *lw)
 
        if (lw->options.toolbar_hidden)
                {
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_get_visible(lw->toolbar[TOOLBAR_MAIN])) gtk_widget_hide(lw->toolbar[TOOLBAR_MAIN]);
+#else
                if (GTK_WIDGET_VISIBLE(lw->toolbar[TOOLBAR_MAIN])) gtk_widget_hide(lw->toolbar[TOOLBAR_MAIN]);
+#endif
                }
        else
                {
+#if GTK_CHECK_VERSION(2,20,0)
+               if (!gtk_widget_get_visible(lw->toolbar[TOOLBAR_MAIN])) gtk_widget_show(lw->toolbar[TOOLBAR_MAIN]);
+#else
                if (!GTK_WIDGET_VISIBLE(lw->toolbar[TOOLBAR_MAIN])) gtk_widget_show(lw->toolbar[TOOLBAR_MAIN]);
+#endif
                }
 }
 
index aebc1bb..491194e 100644 (file)
@@ -89,7 +89,11 @@ gboolean layout_key_press_cb(GtkWidget *widget, GdkEventKey *event, gpointer dat
        gint x = 0;
        gint y = 0;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (lw->path_entry && gtk_widget_has_focus(lw->path_entry))
+#else
        if (lw->path_entry && GTK_WIDGET_HAS_FOCUS(lw->path_entry))
+#endif
                {
                if (event->keyval == GDK_Escape && lw->dir_fd)
                        {
@@ -104,7 +108,11 @@ gboolean layout_key_press_cb(GtkWidget *widget, GdkEventKey *event, gpointer dat
                        return TRUE;
                        }
                }
+#if GTK_CHECK_VERSION(2,20,0)
+       if (lw->vd && lw->options.dir_view_type == DIRVIEW_TREE && gtk_widget_has_focus(lw->vd->view) &&
+#else
        if (lw->vd && lw->options.dir_view_type == DIRVIEW_TREE && GTK_WIDGET_HAS_FOCUS(lw->vd->view) &&
+#endif
            !layout_key_match(event->keyval) &&
            gtk_widget_event(lw->vd->view, (GdkEvent *)event))
                {
@@ -123,7 +131,11 @@ gboolean layout_key_press_cb(GtkWidget *widget, GdkEventKey *event, gpointer dat
 */
 
        if (lw->image &&
+#if GTK_CHECK_VERSION(2,20,0)
+           (gtk_widget_has_focus(lw->image->widget) || (lw->tools && widget == lw->window) || lw->full_screen) )
+#else
            (GTK_WIDGET_HAS_FOCUS(lw->image->widget) || (lw->tools && widget == lw->window) || lw->full_screen) )
+#endif
                {
                stop_signal = TRUE;
                switch (event->keyval)
@@ -2393,7 +2405,11 @@ void layout_util_sync(LayoutWindow *lw)
 
 static gboolean layout_bar_enabled(LayoutWindow *lw)
 {
+#if GTK_CHECK_VERSION(2,20,0)
+       return lw->bar && gtk_widget_get_visible(lw->bar);
+#else
        return lw->bar && GTK_WIDGET_VISIBLE(lw->bar);
+#endif
 }
 
 static void layout_bar_destroyed(GtkWidget *widget, gpointer data)
@@ -2486,7 +2502,11 @@ static void layout_bar_new_selection(LayoutWindow *lw, gint count)
 
 static gboolean layout_bar_sort_enabled(LayoutWindow *lw)
 {
+#if GTK_CHECK_VERSION(2,20,0)
+       return lw->bar_sort && gtk_widget_get_visible(lw->bar_sort);
+#else
        return lw->bar_sort && GTK_WIDGET_VISIBLE(lw->bar_sort);
+#endif
 }
 
 
index 52fd952..0b61f5e 100644 (file)
@@ -268,7 +268,11 @@ void log_window_append(const gchar *str, LogType type)
 
        log_window_insert_text(buffer, &iter, str, logdefs[type].tag);
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_get_visible(text))
+#else
        if (GTK_WIDGET_VISIBLE(text))
+#endif
                {
                GtkTextMark *mark;
                
index 6bbab00..2ae8c53 100644 (file)
@@ -1212,9 +1212,15 @@ static gboolean pan_window_key_press_cb(GtkWidget *widget, GdkEventKey *event, g
        pr = PIXBUF_RENDERER(pw->imd->pr);
        fd = pan_menu_click_fd(pw);
 
+#if GTK_CHECK_VERSION(2,20,0)
+       focused = (pw->fs || gtk_widget_has_focus(GTK_WIDGET(pw->imd->widget)));
+       on_entry = (gtk_widget_has_focus(pw->path_entry) ||
+                   gtk_widget_has_focus(pw->search_entry));
+#else
        focused = (pw->fs || GTK_WIDGET_HAS_FOCUS(GTK_WIDGET(pw->imd->widget)));
        on_entry = (GTK_WIDGET_HAS_FOCUS(pw->path_entry) ||
                    GTK_WIDGET_HAS_FOCUS(pw->search_entry));
+#endif
 
        if (focused)
                {
@@ -1967,7 +1973,11 @@ static void pan_search_toggle_cb(GtkWidget *button, gpointer data)
        PanWindow *pw = data;
        gboolean visible;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       visible = gtk_widget_get_visible(pw->search_box);
+#else
        visible = GTK_WIDGET_VISIBLE(pw->search_box);
+#endif
        if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(button)) == visible) return;
 
        if (visible)
@@ -1989,7 +1999,11 @@ static void pan_search_toggle_visible(PanWindow *pw, gboolean enable)
 
        if (enable)
                {
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_get_visible(pw->search_box))
+#else
                if (GTK_WIDGET_VISIBLE(pw->search_box))
+#endif
                        {
                        gtk_widget_grab_focus(pw->search_entry);
                        }
@@ -2000,9 +2014,17 @@ static void pan_search_toggle_visible(PanWindow *pw, gboolean enable)
                }
        else
                {
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_get_visible(pw->search_entry))
+#else
                if (GTK_WIDGET_VISIBLE(pw->search_entry))
+#endif
                        {
+#if GTK_CHECK_VERSION(2,20,0)
+                       if (gtk_widget_has_focus(pw->search_entry))
+#else
                        if (GTK_WIDGET_HAS_FOCUS(pw->search_entry))
+#endif
                                {
                                gtk_widget_grab_focus(GTK_WIDGET(pw->imd->widget));
                                }
index 64d1df6..c553f59 100644 (file)
@@ -704,9 +704,17 @@ static void pixbuf_renderer_get_property(GObject *object, guint prop_id,
 
 static gboolean pixbuf_renderer_expose(GtkWidget *widget, GdkEventExpose *event)
 {
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_is_drawable(widget))
+#else
        if (GTK_WIDGET_DRAWABLE(widget))
+#endif
                {
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_get_has_window(widget))
+#else
                if (!GTK_WIDGET_NO_WINDOW(widget))
+#endif
                        {
                        if (event->window != widget->window)
                                {
@@ -927,18 +935,30 @@ static void pr_overlay_draw(PixbufRenderer *pr, gint x, gint y, gint w, gint h,
 
                        if (it)
                                {
+#if GTK_CHECK_VERSION(2,20,0)
+                               gdk_draw_drawable(pr->overlay_buffer, box->style->fg_gc[gtk_widget_get_state(box)],
+#else
                                gdk_draw_drawable(pr->overlay_buffer, box->style->fg_gc[GTK_WIDGET_STATE(box)],
+#endif
                                                  it->pixmap,
                                                  rx - (pr->x_offset + (it->x - pr->x_scroll)),
                                                  ry - (pr->y_offset + (it->y - pr->y_scroll)),
                                                  0, 0, rw, rh);
                                gdk_draw_pixbuf(pr->overlay_buffer,
+#if GTK_CHECK_VERSION(2,20,0)
+                                               box->style->fg_gc[gtk_widget_get_state(box)],
+#else
                                                box->style->fg_gc[GTK_WIDGET_STATE(box)],
+#endif
                                                od->pixbuf,
                                                rx - px, ry - py,
                                                0, 0, rw, rh,
                                                pr->dither_quality, rx, ry);
+#if GTK_CHECK_VERSION(2,20,0)
+                               gdk_draw_drawable(od->window, box->style->fg_gc[gtk_widget_get_state(box)],
+#else
                                gdk_draw_drawable(od->window, box->style->fg_gc[GTK_WIDGET_STATE(box)],
+#endif
                                                  pr->overlay_buffer,
                                                  0, 0,
                                                  rx - px, ry - py, rw, rh);
@@ -957,15 +977,27 @@ static void pr_overlay_draw(PixbufRenderer *pr, gint x, gint y, gint w, gint h,
                                        sh = MIN(ry + rh - sy, pr->tile_height);
 
                                        gdk_draw_rectangle(pr->overlay_buffer,
+#if GTK_CHECK_VERSION(2,20,0)
+                                                          box->style->bg_gc[gtk_widget_get_state(box)], TRUE,
+#else
                                                           box->style->bg_gc[GTK_WIDGET_STATE(box)], TRUE,
+#endif
                                                           0, 0, sw, sh);
                                        gdk_draw_pixbuf(pr->overlay_buffer,
+#if GTK_CHECK_VERSION(2,20,0)
+                                                       box->style->fg_gc[gtk_widget_get_state(box)],
+#else
                                                        box->style->fg_gc[GTK_WIDGET_STATE(box)],
+#endif
                                                        od->pixbuf,
                                                        sx - px, sy - py,
                                                        0, 0, sw, sh,
                                                        pr->dither_quality, sx, sy);
+#if GTK_CHECK_VERSION(2,20,0)
+                                       gdk_draw_drawable(od->window, box->style->fg_gc[gtk_widget_get_state(box)],
+#else
                                        gdk_draw_drawable(od->window, box->style->fg_gc[GTK_WIDGET_STATE(box)],
+#endif
                                                          pr->overlay_buffer,
                                                          0, 0,
                                                          sx - px, sy - py, sw, sh);
@@ -1423,7 +1455,11 @@ void pixbuf_renderer_set_color(PixbufRenderer *pr, GdkColor *color)
 
        gtk_widget_set_style(widget, style);
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_get_visible(widget)) pr_border_clear(pr);
+#else
        if (GTK_WIDGET_VISIBLE(widget)) pr_border_clear(pr);
+#endif
 }
 
 
@@ -1690,7 +1726,11 @@ static gboolean pr_source_tile_render(PixbufRenderer *pr, ImageTile *it,
                                else /* (pr->zoom == 1.0 || pr->scale == 1.0) */
                                        {
                                        gdk_draw_pixbuf(it->pixmap,
+#if GTK_CHECK_VERSION(2,20,0)
+                                                       box->style->fg_gc[gtk_widget_get_state(box)],
+#else
                                                        box->style->fg_gc[GTK_WIDGET_STATE(box)],
+#endif
                                                        st->pixbuf,
                                                        rx - st->x, ry - st->y,
                                                        rx - it->x, ry - it->y,
@@ -2624,7 +2664,11 @@ static void pr_tile_render(PixbufRenderer *pr, ImageTile *it,
                                {
                                /* faster, simple, base orientation, no postprocessing */
                                gdk_draw_pixbuf(it->pixmap,
+#if GTK_CHECK_VERSION(2,20,0)
+                                               box->style->fg_gc[gtk_widget_get_state(box)],
+#else
                                                box->style->fg_gc[GTK_WIDGET_STATE(box)],
+#endif
                                                pr->pixbuf,
                                                it->x + x, it->y + y,
                                                x, y,
@@ -2714,7 +2758,11 @@ static void pr_tile_render(PixbufRenderer *pr, ImageTile *it,
                        pr->func_post_process(pr, &it->pixbuf, x, y, w, h, pr->post_process_user_data);
 
                gdk_draw_pixbuf(it->pixmap,
+#if GTK_CHECK_VERSION(2,20,0)
+                               box->style->fg_gc[gtk_widget_get_state(box)],
+#else
                                box->style->fg_gc[GTK_WIDGET_STATE(box)],
+#endif
                                it->pixbuf,
                                x, y,
                                x, y,
@@ -2742,7 +2790,11 @@ static void pr_tile_expose(PixbufRenderer *pr, ImageTile *it,
 
        box = GTK_WIDGET(pr);
 
+#if GTK_CHECK_VERSION(2,20,0)
+       gdk_draw_drawable(box->window, box->style->fg_gc[gtk_widget_get_state(box)],
+#else
        gdk_draw_drawable(box->window, box->style->fg_gc[GTK_WIDGET_STATE(box)],
+#endif
                          it->pixmap, x, y,
                          pr->x_offset + (it->x - pr->x_scroll) + x, pr->y_offset + (it->y - pr->y_scroll) + y, w, h);
 
@@ -2862,7 +2914,11 @@ static gboolean pr_queue_draw_idle_cb(gpointer data)
                fast = FALSE;
                }
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_get_realized(pr))
+#else
        if (GTK_WIDGET_REALIZED(pr))
+#endif
                {
                if (pr_tile_is_visible(pr, qd->it))
                        {
@@ -3848,7 +3904,11 @@ static gboolean pr_mouse_press_cb(GtkWidget *widget, GdkEventButton *bevent, gpo
                }
 
        parent = gtk_widget_get_parent(widget);
+#if GTK_CHECK_VERSION(2,20,0)
+       if (widget && gtk_widget_get_can_focus(parent))
+#else
        if (widget && GTK_WIDGET_CAN_FOCUS(parent))
+#endif
                {
                gtk_widget_grab_focus(parent);
                }
@@ -3868,7 +3928,11 @@ static gboolean pr_mouse_release_cb(GtkWidget *widget, GdkEventButton *bevent, g
                return TRUE;
                }
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gdk_pointer_is_grabbed() && gtk_widget_has_grab(pr))
+#else
        if (gdk_pointer_is_grabbed() && GTK_WIDGET_HAS_GRAB(pr))
+#endif
                {
                gtk_grab_remove(widget);
                gdk_pointer_ungrab(bevent->time);
@@ -3984,7 +4048,11 @@ static void pr_set_pixbuf(PixbufRenderer *pr, GdkPixbuf *pixbuf, gdouble zoom, P
 
                box = GTK_WIDGET(pr);
 
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_get_realized(box))
+#else
                if (GTK_WIDGET_REALIZED(box))
+#endif
                        {
                        gdk_window_clear(box->window);
                        pr_overlay_draw(pr, 0, 0, pr->window_width, pr->window_height, NULL);
index 1497c07..041317d 100644 (file)
@@ -1959,7 +1959,11 @@ static void print_job_throw_error(PrintWindow *pw, const gchar *message)
        GtkWidget *label;
        gchar *buf;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_get_visible(pw->dialog->dialog)) parent = pw->dialog->dialog;
+#else
        if (GTK_WIDGET_VISIBLE(pw->dialog->dialog)) parent = pw->dialog->dialog;
+#endif
 
        gd = generic_dialog_new(_("Printing error"), "print_warning",
                                parent, TRUE, NULL, NULL);
@@ -2481,7 +2485,11 @@ static void print_job_close(PrintWindow *pw, gint error)
                pw->job_pixbuf = NULL;
                }
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (pw->dialog && !gtk_widget_get_visible(pw->dialog->dialog))
+#else
        if (pw->dialog && !GTK_WIDGET_VISIBLE(pw->dialog->dialog))
+#endif
                {
                g_idle_add_full(G_PRIORITY_HIGH_IDLE, print_job_close_finish_cb, pw, NULL);
                }
index 5a1cc0c..abc2268 100644 (file)
@@ -2361,11 +2361,19 @@ static void menu_choice_set_visible(GtkWidget *widget, gboolean visible)
 {
        if (visible)
                {
+#if GTK_CHECK_VERSION(2,20,0)
+               if (!gtk_widget_get_visible(widget)) gtk_widget_show(widget);
+#else
                if (!GTK_WIDGET_VISIBLE(widget)) gtk_widget_show(widget);
+#endif
                }
        else
                {
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_get_visible(widget)) gtk_widget_hide(widget);
+#else
                if (GTK_WIDGET_VISIBLE(widget)) gtk_widget_hide(widget);
+#endif
                }
 }
 
index 7b669fd..2335c14 100644 (file)
@@ -551,7 +551,11 @@ static void pref_link_sensitivity_cb(GtkWidget *watch, GtkStateType prev_state,
 {
        GtkWidget *widget = data;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       gtk_widget_set_sensitive(widget, gtk_widget_is_sensitive(watch));
+#else
        gtk_widget_set_sensitive(widget, GTK_WIDGET_IS_SENSITIVE(watch));
+#endif
 }
 
 void pref_link_sensitivity(GtkWidget *widget, GtkWidget *watch)
@@ -876,7 +880,11 @@ static void date_selection_popup_hide(DateSelection *ds)
 {
        if (!ds->window) return;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_has_grab(ds->window))
+#else
        if (GTK_WIDGET_HAS_GRAB(ds->window))
+#endif
                {
                gtk_grab_remove(ds->window);
                gdk_keyboard_ungrab(GDK_CURRENT_TIME);
@@ -1289,7 +1297,11 @@ static gboolean sizer_release_cb(GtkWidget *widget, GdkEventButton *bevent, gpoi
 
        if (bevent->button != MOUSE_BUTTON_LEFT) return FALSE;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gdk_pointer_is_grabbed() && gtk_widget_has_grab(sd->sizer))
+#else
        if (gdk_pointer_is_grabbed() && GTK_WIDGET_HAS_GRAB(sd->sizer))
+#endif
                {
                gtk_grab_remove(sd->sizer);
                gdk_pointer_ungrab(bevent->time);
index 7dae608..4d537fa 100644 (file)
@@ -206,7 +206,11 @@ void tab_completion_iter_menu_items(GtkWidget *widget, gpointer data)
        TabCompData *td = data;
        GtkWidget *child;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (!gtk_widget_get_visible(widget)) return;
+#else
        if (!GTK_WIDGET_VISIBLE(widget)) return;
+#endif
 
        child = gtk_bin_get_child(GTK_BIN(widget));
        if (GTK_IS_LABEL(child)) {
@@ -646,7 +650,11 @@ static void tab_completion_button_pressed(GtkWidget *widget, gpointer data)
 
        if (!td) return;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (!gtk_widget_has_focus(entry))
+#else
        if (!GTK_WIDGET_HAS_FOCUS(entry))
+#endif
                {
                gtk_widget_grab_focus(entry);
                }
index b40260c..2d04513 100644 (file)
@@ -184,7 +184,11 @@ gboolean tree_edit_by_path(GtkTreeView *tree, GtkTreePath *tpath, gint column, c
        GList *work;
 
        if (!edit_func) return FALSE;
+#if GTK_CHECK_VERSION(2,20,0)
+       if (!gtk_widget_get_visible(tree)) return FALSE;
+#else
        if (!GTK_WIDGET_VISIBLE(tree)) return FALSE;
+#endif
 
        tcolumn = gtk_tree_view_get_column(tree, column);
        if (!tcolumn) return FALSE;
index b6e959f..7ec5e44 100644 (file)
@@ -62,7 +62,11 @@ static gboolean generic_dialog_default_key_press_cb(GtkWidget *widget, GdkEventK
 {
        GenericDialog *gd = data;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (event->keyval == GDK_Return && gtk_widget_has_focus(widget)
+#else
        if (event->keyval == GDK_Return && GTK_WIDGET_HAS_FOCUS(widget)
+#endif
            && gd->default_cb)
                {
                gboolean auto_close;
@@ -234,7 +238,11 @@ static void generic_dialog_setup(GenericDialog *gd,
                        GtkWidget *top;
 
                        top = gtk_widget_get_toplevel(parent);
+#if GTK_CHECK_VERSION(2,20,0)
+                       if (GTK_IS_WINDOW(top) && gtk_widget_is_toplevel(top)) window = GTK_WINDOW(top);
+#else
                        if (GTK_IS_WINDOW(top) && GTK_WIDGET_TOPLEVEL(top)) window = GTK_WINDOW(top);
+#endif
                        }
 
                if (window) gtk_window_set_transient_for(GTK_WINDOW(gd->dialog), window);
index 01c8eeb..8b4d933 100644 (file)
@@ -96,7 +96,11 @@ static void vdlist_scroll_to_row(ViewDir *vd, FileData *fd, gfloat y_align)
 {
        GtkTreeIter iter;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_get_realized(vd->view) && vd_find_row(vd, fd, &iter))
+#else
        if (GTK_WIDGET_REALIZED(vd->view) && vd_find_row(vd, fd, &iter))
+#endif
                {
                GtkTreeModel *store;
                GtkTreePath *tpath;
@@ -107,7 +111,11 @@ static void vdlist_scroll_to_row(ViewDir *vd, FileData *fd, gfloat y_align)
                gtk_tree_view_set_cursor(GTK_TREE_VIEW(vd->view), tpath, NULL, FALSE);
                gtk_tree_path_free(tpath);
 
+#if GTK_CHECK_VERSION(2,20,0)
+               if (!gtk_widget_has_focus(vd->view)) gtk_widget_grab_focus(vd->view);
+#else
                if (!GTK_WIDGET_HAS_FOCUS(vd->view)) gtk_widget_grab_focus(vd->view);
+#endif
                }
 }
 
@@ -331,7 +339,11 @@ gboolean vdlist_set_fd(ViewDir *vd, FileData *dir_fd)
                return ret;
                }
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_get_realized(vd->view))
+#else
        if (GTK_WIDGET_REALIZED(vd->view))
+#endif
                {
                gtk_tree_view_scroll_to_point(GTK_TREE_VIEW(vd->view), 0, 0);
                }
index 3fb9261..e0c2419 100644 (file)
@@ -878,7 +878,11 @@ static gboolean vf_thumb_next(ViewFile *vf)
 {
        FileData *fd = NULL;
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (!gtk_widget_get_realized(vf->listview))
+#else
        if (!GTK_WIDGET_REALIZED(vf->listview))
+#endif
                {
                vf_thumb_status(vf, 0.0, NULL);
                return FALSE;
index a6b513e..89865f7 100644 (file)
@@ -431,7 +431,11 @@ static void tip_show(ViewFile *vf)
 
        gdk_window_get_pointer(NULL, &x, &y, NULL);
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (!gtk_widget_get_realized(VFICON(vf)->tip_window)) gtk_widget_realize(VFICON(vf)->tip_window);
+#else
        if (!GTK_WIDGET_REALIZED(VFICON(vf)->tip_window)) gtk_widget_realize(VFICON(vf)->tip_window);
+#endif
        gtk_window_move(GTK_WINDOW(VFICON(vf)->tip_window), x + 16, y + 16);
        gtk_widget_show(VFICON(vf)->tip_window);
 }
@@ -451,7 +455,11 @@ static gboolean tip_schedule_cb(gpointer data)
 
        window = gtk_widget_get_toplevel(vf->listview);
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (gtk_widget_get_sensitive(window) &&
+#else
        if (GTK_WIDGET_SENSITIVE(window) &&
+#endif
            GTK_WINDOW(window)->has_focus)
                {
                tip_show(vf);
@@ -1440,7 +1448,11 @@ gboolean vficon_press_cb(GtkWidget *widget, GdkEventButton *bevent, gpointer dat
        switch (bevent->button)
                {
                case MOUSE_BUTTON_LEFT:
+#if GTK_CHECK_VERSION(2,20,0)
+                       if (!gtk_widget_has_focus(vf->listview))
+#else
                        if (!GTK_WIDGET_HAS_FOCUS(vf->listview))
+#endif
                                {
                                gtk_widget_grab_focus(vf->listview);
                                }
@@ -1603,7 +1615,11 @@ static void vficon_populate(ViewFile *vf, gboolean resize, gboolean keep_positio
 
        store = gtk_tree_view_get_model(GTK_TREE_VIEW(vf->listview));
 
+#if GTK_CHECK_VERSION(2,20,0)
+       if (keep_position && gtk_widget_get_realized(vf->listview) &&
+#else
        if (keep_position && GTK_WIDGET_REALIZED(vf->listview) &&
+#endif
            gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(vf->listview), 0, 0, &tpath, NULL, NULL, NULL))
                {
                GtkTreeIter iter;
@@ -1654,7 +1670,11 @@ static void vficon_populate(ViewFile *vf, gboolean resize, gboolean keep_positio
                                                             NULL);
                                }
                        }
+#if GTK_CHECK_VERSION(2,20,0)
+               if (gtk_widget_get_realized(vf->listview)) gtk_tree_view_columns_autosize(GTK_TREE_VIEW(vf->listview));
+#else
                if (GTK_WIDGET_REALIZED(vf->listview)) gtk_tree_view_columns_autosize(GTK_TREE_VIEW(vf->listview));
+#endif
                }
 
        r = -1;