From 0f036383b2ee6725a94529b26000a33844390200 Mon Sep 17 00:00:00 2001 From: deepend-tildeclub Date: Wed, 11 Mar 2026 01:49:14 -0600 Subject: [PATCH] build: GTK deprecation cleanup + follow-up warning fixes --- meson.build | 7 +-- plugins/perl/meson.build | 2 + src/common/gtk3-theme-service.c | 54 +++++++++++++++++-- src/fe-gtk/banlist.c | 3 +- src/fe-gtk/chanlist.c | 16 ++++-- src/fe-gtk/chanview-tabs.c | 12 ++--- src/fe-gtk/dccgui.c | 4 +- src/fe-gtk/editlist.c | 2 +- src/fe-gtk/fe-gtk.c | 4 +- src/fe-gtk/gtkutil.c | 3 +- src/fe-gtk/ignoregui.c | 2 +- src/fe-gtk/maingui.c | 27 ++++++---- src/fe-gtk/plugin-tray.c | 19 +++++-- src/fe-gtk/plugingui.c | 2 +- src/fe-gtk/setup.c | 8 +-- src/fe-gtk/sexy-spell-entry.c | 5 -- src/fe-gtk/textgui.c | 4 +- .../theme/tests/test-theme-access-routing.c | 2 +- .../theme/tests/test-theme-gtk3-settings.c | 4 +- .../test-theme-preferences-gtk3-populate.c | 2 +- src/fe-gtk/userlistgui.c | 4 +- 21 files changed, 127 insertions(+), 59 deletions(-) diff --git a/meson.build b/meson.build index 1500c620..72131ff7 100644 --- a/meson.build +++ b/meson.build @@ -47,8 +47,6 @@ config_h.set('G_DISABLE_SINGLE_INCLUDES', true) config_h.set('GTK_DISABLE_DEPRECATED', true) config_h.set('GTK_DISABLE_SINGLE_INCLUDES', true) config_h.set('GDK_PIXBUF_DISABLE_SINGLE_INCLUDES', true) -config_h.set('GLIB_VERSION_MAX_ALLOWED', 'GLIB_VERSION_2_36') -config_h.set('GLIB_VERSION_MIN_REQUIRED', 'GLIB_VERSION_2_36') # Detected features config_h.set('HAVE_MEMRCHR', cc.has_function('memrchr')) @@ -94,7 +92,10 @@ if host_machine.system() == 'windows' endif -global_cflags = [] +global_cflags = [ + '-DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_36', + '-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_36', +] test_cflags = [ '-funsigned-char', '-Wno-conversion', diff --git a/plugins/perl/meson.build b/plugins/perl/meson.build index 3c1697f0..fb12466c 100644 --- a/plugins/perl/meson.build +++ b/plugins/perl/meson.build @@ -58,6 +58,8 @@ foreach flag : ret.stdout().strip().split(' ') endif endforeach +perl_cflags += ['-Wno-strict-prototypes'] + perl_cflags += [ # Perl has its own 'config.h' that we must override # TODO: Just rename ours to something more unique. diff --git a/src/common/gtk3-theme-service.c b/src/common/gtk3-theme-service.c index 95319c2a..f4ffa2e7 100644 --- a/src/common/gtk3-theme-service.c +++ b/src/common/gtk3-theme-service.c @@ -22,8 +22,13 @@ #include #include #include +#include #include +#ifndef G_OS_WIN32 +extern char *realpath (const char *path, char *resolved_path); +#endif + #include "util.h" #include "cfgfiles.h" @@ -494,6 +499,49 @@ discover_dir (GPtrArray *themes, GHashTable *seen_theme_roots, const char *base_ } + +static char * +path_canonicalize_compat (const char *path) +{ + char *absolute_path; + char *cwd; + char *resolved; + + if (!path || path[0] == '\0') + return NULL; + + if (g_path_is_absolute (path)) + absolute_path = g_strdup (path); + else + { + cwd = g_get_current_dir (); + absolute_path = g_build_filename (cwd, path, NULL); + g_free (cwd); + } + +#ifdef G_OS_WIN32 + resolved = _fullpath (NULL, absolute_path, 0); + if (resolved) + { + char *copy = g_strdup (resolved); + free (resolved); + g_free (absolute_path); + return copy; + } +#else + resolved = realpath (absolute_path, NULL); + if (resolved) + { + char *copy = g_strdup (resolved); + free (resolved); + g_free (absolute_path); + return copy; + } +#endif + + return absolute_path; +} + static char * path_normalize_theme_root (const char *path) { @@ -503,7 +551,7 @@ path_normalize_theme_root (const char *path) if (!path || path[0] == '\0') return NULL; - canonical = g_canonicalize_filename (path, NULL); + canonical = path_canonicalize_compat (path); target = g_file_read_link (canonical, NULL); if (target && target[0]) { @@ -512,7 +560,7 @@ path_normalize_theme_root (const char *path) ? g_strdup (target) : g_build_filename (base, target, NULL); g_free (canonical); - canonical = g_canonicalize_filename (resolved, NULL); + canonical = path_canonicalize_compat (resolved); g_free (resolved); g_free (base); } @@ -536,7 +584,7 @@ add_theme_root (GPtrArray *roots, GHashTable *seen, const char *path) if (!path || path[0] == '\0') return; - normalized = g_canonicalize_filename (path, NULL); + normalized = path_canonicalize_compat (path); if (g_hash_table_contains (seen, normalized)) { g_free (normalized); diff --git a/src/fe-gtk/banlist.c b/src/fe-gtk/banlist.c index cc20a1e1..8462dabf 100644 --- a/src/fe-gtk/banlist.c +++ b/src/fe-gtk/banlist.c @@ -398,8 +398,7 @@ banlist_button_pressed (GtkWidget *wid, GdkEventButton *event, gpointer userdata gtk_menu_shell_append (GTK_MENU_SHELL(menu), allitem); gtk_widget_show_all (menu); - gtk_menu_popup (GTK_MENU(menu), NULL, NULL, NULL, NULL, - event->button, gtk_get_current_event_time ()); + gtk_menu_popup_at_pointer (GTK_MENU (menu), (GdkEvent *) event); } return TRUE; diff --git a/src/fe-gtk/chanlist.c b/src/fe-gtk/chanlist.c index ef7036e2..3fc1218e 100644 --- a/src/fe-gtk/chanlist.c +++ b/src/fe-gtk/chanlist.c @@ -535,7 +535,7 @@ chanlist_join (GtkWidget * wid, server *serv) g_snprintf (tbuf, sizeof (tbuf), "join %s", chan); handle_command (serv->server_session, tbuf, FALSE); } else - gdk_beep (); + gdk_display_beep (gdk_display_get_default ()); g_free (chan); } } @@ -595,10 +595,16 @@ chanlist_save (GtkWidget * wid, server *serv) static gboolean chanlist_flash (server *serv) { - if (gtk_widget_get_state (serv->gui->chanlist_refresh) != GTK_STATE_ACTIVE) - gtk_widget_set_state (serv->gui->chanlist_refresh, GTK_STATE_ACTIVE); + if (!(gtk_widget_get_state_flags (serv->gui->chanlist_refresh) & GTK_STATE_FLAG_ACTIVE)) + { + gtk_widget_unset_state_flags (serv->gui->chanlist_refresh, GTK_STATE_FLAG_PRELIGHT); + gtk_widget_set_state_flags (serv->gui->chanlist_refresh, GTK_STATE_FLAG_ACTIVE, FALSE); + } else - gtk_widget_set_state (serv->gui->chanlist_refresh, GTK_STATE_PRELIGHT); + { + gtk_widget_unset_state_flags (serv->gui->chanlist_refresh, GTK_STATE_FLAG_ACTIVE); + gtk_widget_set_state_flags (serv->gui->chanlist_refresh, GTK_STATE_FLAG_PRELIGHT, FALSE); + } return TRUE; } @@ -872,7 +878,7 @@ chanlist_opengui (server *serv, int do_refresh) chanlist_add_column (view, COL_CHANNEL, 96, _("Channel"), FALSE); chanlist_add_column (view, COL_USERS, 50, _("Users"), TRUE); chanlist_add_column (view, COL_TOPIC, 50, _("Topic"), FALSE); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (view), TRUE); + gtk_tree_view_set_grid_lines (GTK_TREE_VIEW (view), GTK_TREE_VIEW_GRID_LINES_HORIZONTAL); /* this is a speed up, but no horizontal scrollbar :( */ /*gtk_tree_view_set_fixed_height_mode (GTK_TREE_VIEW (view), TRUE);*/ gtk_widget_show (view); diff --git a/src/fe-gtk/chanview-tabs.c b/src/fe-gtk/chanview-tabs.c index b8e7cd0e..bea4946a 100644 --- a/src/fe-gtk/chanview-tabs.c +++ b/src/fe-gtk/chanview-tabs.c @@ -102,10 +102,10 @@ cv_tabs_sizealloc (GtkWidget *widget, GtkAllocation *allocation, chanview *cv) if (cv->vertical) { - adj = gtk_viewport_get_vadjustment (GTK_VIEWPORT (gtk_widget_get_parent (inner))); + adj = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE (gtk_widget_get_parent (inner))); } else { - adj = gtk_viewport_get_hadjustment (GTK_VIEWPORT (gtk_widget_get_parent (inner))); + adj = gtk_scrollable_get_hadjustment (GTK_SCROLLABLE (gtk_widget_get_parent (inner))); } viewport_size = cv_tabs_get_viewport_size (parent_win, cv->vertical); @@ -264,10 +264,10 @@ tab_scroll_left_up_clicked (GtkWidget *widget, chanview *cv) if (cv->vertical) { - adj = gtk_viewport_get_vadjustment (GTK_VIEWPORT (gtk_widget_get_parent(inner))); + adj = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE (gtk_widget_get_parent(inner))); } else { - adj = gtk_viewport_get_hadjustment (GTK_VIEWPORT (gtk_widget_get_parent(inner))); + adj = gtk_scrollable_get_hadjustment (GTK_SCROLLABLE (gtk_widget_get_parent(inner))); } viewport_size = cv_tabs_get_viewport_size (parent_win, cv->vertical); @@ -302,10 +302,10 @@ tab_scroll_right_down_clicked (GtkWidget *widget, chanview *cv) if (cv->vertical) { - adj = gtk_viewport_get_vadjustment (GTK_VIEWPORT (gtk_widget_get_parent(inner))); + adj = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE (gtk_widget_get_parent(inner))); } else { - adj = gtk_viewport_get_hadjustment (GTK_VIEWPORT (gtk_widget_get_parent(inner))); + adj = gtk_scrollable_get_hadjustment (GTK_SCROLLABLE (gtk_widget_get_parent(inner))); } viewport_size = cv_tabs_get_viewport_size (parent_win, cv->vertical); diff --git a/src/fe-gtk/dccgui.c b/src/fe-gtk/dccgui.c index 5c7e59b3..3be9fcd3 100644 --- a/src/fe-gtk/dccgui.c +++ b/src/fe-gtk/dccgui.c @@ -839,7 +839,7 @@ fe_dcc_open_recv_win (int passive) gtk_widget_set_vexpand (view_scrolled, TRUE); gtk_widget_set_hexpand (view, TRUE); gtk_widget_set_vexpand (view, TRUE); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (view), TRUE); + gtk_tree_view_set_grid_lines (GTK_TREE_VIEW (view), GTK_TREE_VIEW_GRID_LINES_HORIZONTAL); /* Up/Down Icon column */ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (view), -1, NULL, gtk_cell_renderer_pixbuf_new (), @@ -1116,7 +1116,7 @@ fe_dcc_open_chat_win (int passive) dcc_add_column (view, CCOL_START, CCOL_COLOR, _("Start Time"), FALSE); gtk_tree_view_column_set_expand (gtk_tree_view_get_column (GTK_TREE_VIEW (view), 1), TRUE); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (view), TRUE); + gtk_tree_view_set_grid_lines (GTK_TREE_VIEW (view), GTK_TREE_VIEW_GRID_LINES_HORIZONTAL); dcccwin.list = view; dcccwin.store = store; diff --git a/src/fe-gtk/editlist.c b/src/fe-gtk/editlist.c index 8282dc16..27e8b3c0 100644 --- a/src/fe-gtk/editlist.c +++ b/src/fe-gtk/editlist.c @@ -293,7 +293,7 @@ editlist_treeview_new (GtkWidget *box, char *title1, char *title2) g_signal_connect (G_OBJECT (view), "key_press_event", G_CALLBACK (editlist_keypress), NULL); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (view), TRUE); + gtk_tree_view_set_grid_lines (GTK_TREE_VIEW (view), GTK_TREE_VIEW_GRID_LINES_HORIZONTAL); render = gtk_cell_renderer_text_new (); g_object_set (render, "editable", TRUE, NULL); diff --git a/src/fe-gtk/fe-gtk.c b/src/fe-gtk/fe-gtk.c index c91927ff..67f21209 100644 --- a/src/fe-gtk/fe-gtk.c +++ b/src/fe-gtk/fe-gtk.c @@ -922,7 +922,7 @@ fe_beep (session *sess) if (ca_context_play (ca_con, 0, CA_PROP_EVENT_ID, "message-new-instant", NULL) != 0) #endif - gdk_beep (); + gdk_display_beep (gdk_display_get_default ()); #endif } @@ -1308,7 +1308,7 @@ fe_open_url_inner (const char *url) g_clear_error (&error); } - if (!opened && gtk_show_uri (NULL, escaped_url, GDK_CURRENT_TIME, &error)) + if (!opened && gtk_show_uri_on_window (NULL, escaped_url, GDK_CURRENT_TIME, &error)) { opened = TRUE; } diff --git a/src/fe-gtk/gtkutil.c b/src/fe-gtk/gtkutil.c index f210dbe8..b1ed5e23 100644 --- a/src/fe-gtk/gtkutil.c +++ b/src/fe-gtk/gtkutil.c @@ -825,7 +825,6 @@ fe_get_int (char *msg, int def, void *callback, void *userdata) gtk_adjustment_set_lower (adj, 0); gtk_adjustment_set_upper (adj, 1024); gtk_adjustment_set_step_increment (adj, 1); - gtk_adjustment_changed (adj); gtk_spin_button_set_value ((GtkSpinButton*)spin, def); gtk_box_pack_end (GTK_BOX (hbox), spin, 0, 0, 0); @@ -1126,7 +1125,7 @@ gtkutil_tray_icon_supported (GtkWindow *window) GdkDisplay *display = gdk_screen_get_display (screen); if (!GDK_IS_X11_DISPLAY (display)) return FALSE; - int screen_number = gdk_screen_get_number (screen); + int screen_number = gdk_x11_screen_get_screen_number (screen); Display *xdisplay = gdk_x11_display_get_xdisplay (display); char *selection_name = g_strdup_printf ("_NET_SYSTEM_TRAY_S%d", screen_number); Atom selection_atom = XInternAtom (xdisplay, selection_name, False); diff --git a/src/fe-gtk/ignoregui.c b/src/fe-gtk/ignoregui.c index 8598221b..fbe7d2e2 100644 --- a/src/fe-gtk/ignoregui.c +++ b/src/fe-gtk/ignoregui.c @@ -170,7 +170,7 @@ ignore_treeview_new (GtkWidget *box) UNIGNORE_COLUMN, _("Unignore"), -1); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (view), TRUE); + gtk_tree_view_set_grid_lines (GTK_TREE_VIEW (view), GTK_TREE_VIEW_GRID_LINES_HORIZONTAL); gtk_tree_view_column_set_expand (gtk_tree_view_get_column (GTK_TREE_VIEW (view), 0), TRUE); /* attach to signals and customise columns */ diff --git a/src/fe-gtk/maingui.c b/src/fe-gtk/maingui.c index 3cff6c5e..a5ba248d 100644 --- a/src/fe-gtk/maingui.c +++ b/src/fe-gtk/maingui.c @@ -2664,7 +2664,7 @@ mg_update_xtext (GtkWidget *wid) gtk_xtext_set_show_separator (xtext, prefs.hex_text_indent ? prefs.hex_text_show_sep : 0); gtk_xtext_set_indent (xtext, prefs.hex_text_indent); - font_name = (prefs.hex_text_font && *prefs.hex_text_font) + font_name = *prefs.hex_text_font ? prefs.hex_text_font : "Sans 10"; if (!gtk_xtext_set_font (xtext, (char *)font_name)) @@ -3322,7 +3322,7 @@ mg_apply_emoji_fallback_widget (GtkWidget *widget) { PangoFontDescription *desc; GtkStyleContext *context; - const PangoFontDescription *base_desc; + PangoFontDescription *base_desc = NULL; if (!widget) return; @@ -3331,16 +3331,19 @@ mg_apply_emoji_fallback_widget (GtkWidget *widget) if (!context) return; - base_desc = gtk_style_context_get_font (context, GTK_STATE_FLAG_NORMAL); + gtk_style_context_get (context, GTK_STATE_FLAG_NORMAL, + "font", &base_desc, + NULL); if (!base_desc) return; desc = mg_fontdesc_with_fallback (base_desc, FALSE); + pango_font_description_free (base_desc); if (!desc) return; - mg_apply_font_css (widget, desc, "zoitechat-emoji-font", - "zoitechat-emoji-font-provider"); + mg_apply_font_css (widget, desc, "zoitechat-emoji-font", + "zoitechat-emoji-font-provider"); pango_font_description_free (desc); } @@ -3734,7 +3737,7 @@ mg_create_topwindow (session *sess) prefs.hex_gui_win_height, 0); sess->gui->window = win; gtk_container_set_border_width (GTK_CONTAINER (win), GUI_BORDER); - gtk_window_set_opacity (GTK_WINDOW (win), (prefs.hex_gui_transparency / 255.)); + gtk_widget_set_opacity (win, (prefs.hex_gui_transparency / 255.)); g_signal_connect (G_OBJECT (win), "focus_in_event", G_CALLBACK (mg_topwin_focus_cb), sess); @@ -3923,7 +3926,7 @@ mg_create_tabwindow (session *sess) gtk_window_maximize (GTK_WINDOW (win)); if (prefs.hex_gui_win_fullscreen) gtk_window_fullscreen (GTK_WINDOW (win)); - gtk_window_set_opacity (GTK_WINDOW (win), (prefs.hex_gui_transparency / 255.)); + gtk_widget_set_opacity (win, (prefs.hex_gui_transparency / 255.)); gtk_container_set_border_width (GTK_CONTAINER (win), GUI_BORDER); g_signal_connect (G_OBJECT (win), "delete_event", @@ -4516,6 +4519,8 @@ mg_drag_motion_cb (GtkWidget *widget, GdkDragContext *context, int x, int y, gui { XTextColor col; cairo_t *cr; + GdkDrawingContext *draw_context; + cairo_region_t *region; int half, width, height; int ox, oy; GdkWindow *window; @@ -4546,7 +4551,11 @@ mg_drag_motion_cb (GtkWidget *widget, GdkDragContext *context, int x, int y, gui col.green = (double)rand () / (double)RAND_MAX; col.blue = (double)rand () / (double)RAND_MAX; col.alpha = 1.0; - cr = gdk_cairo_create (window); + region = cairo_region_create (); + cairo_region_union_rectangle (region, &(cairo_rectangle_int_t){ 0, 0, width, height }); + draw_context = gdk_window_begin_draw_frame (window, region); + cairo_region_destroy (region); + cr = gdk_drawing_context_get_cairo_context (draw_context); cairo_set_operator (cr, CAIRO_OPERATOR_XOR); mg_set_source_color (cr, &col); cairo_set_line_width (cr, 1.0); @@ -4588,7 +4597,7 @@ mg_drag_motion_cb (GtkWidget *widget, GdkDragContext *context, int x, int y, gui gtk_widget_queue_draw_area (widget, ox, oy, width, half); } - cairo_destroy (cr); + gdk_window_end_draw_frame (window, draw_context); return TRUE; } diff --git a/src/fe-gtk/plugin-tray.c b/src/fe-gtk/plugin-tray.c index 5715231f..7023ecd3 100644 --- a/src/fe-gtk/plugin-tray.c +++ b/src/fe-gtk/plugin-tray.c @@ -123,7 +123,7 @@ static void tray_set_icon_state (TrayIcon icon, TrayIconState state); static void tray_menu_restore_cb (GtkWidget *item, gpointer userdata); static void tray_menu_notify_cb (GObject *tray, GParamSpec *pspec, gpointer user_data); #if HAVE_APPINDICATOR_BACKEND -static void tray_menu_show_cb (GtkWidget *menu, gpointer userdata); +static void tray_menu_show_cb (GtkWidget *menu, gpointer userdata) G_GNUC_UNUSED; #endif #if !HAVE_APPINDICATOR_BACKEND static void tray_menu_cb (GtkWidget *widget, guint button, guint time, gpointer userdata); @@ -1118,7 +1118,7 @@ tray_menu_clear (GtkWidget *menu) g_list_free (children); } -static void +static void G_GNUC_UNUSED tray_menu_show_cb (GtkWidget *menu, gpointer userdata) { (void)userdata; @@ -1134,7 +1134,9 @@ tray_menu_cb (GtkWidget *widget, guint button, guint time, gpointer userdata) { static GtkWidget *menu; - (void)widget; + (void)button; + (void)time; + (void)userdata; /* close any old menu */ if (G_IS_OBJECT (menu)) @@ -1160,8 +1162,15 @@ tray_menu_cb (GtkWidget *widget, guint button, guint time, gpointer userdata) tray_menu_timer = g_timeout_add (500, (GSourceFunc)tray_check_hide, menu); #endif - gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, - userdata, button, time); + if (widget && GTK_IS_WIDGET (widget)) + gtk_menu_popup_at_widget (GTK_MENU (menu), widget, GDK_GRAVITY_SOUTH_WEST, GDK_GRAVITY_NORTH_WEST, NULL); + else + { + GdkEvent *event = gtk_get_current_event (); + gtk_menu_popup_at_pointer (GTK_MENU (menu), event); + if (event) + gdk_event_free (event); + } } #endif diff --git a/src/fe-gtk/plugingui.c b/src/fe-gtk/plugingui.c index 32c4bc82..9d43ca15 100644 --- a/src/fe-gtk/plugingui.c +++ b/src/fe-gtk/plugingui.c @@ -105,7 +105,7 @@ plugingui_treeview_new (GtkWidget *box) FILE_COLUMN, _("File"), DESC_COLUMN, _("Description"), FILEPATH_COLUMN, NULL, -1); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (view), TRUE); + gtk_tree_view_set_grid_lines (GTK_TREE_VIEW (view), GTK_TREE_VIEW_GRID_LINES_HORIZONTAL); for (col_id=0; (col = gtk_tree_view_get_column (GTK_TREE_VIEW (view), col_id)); col_id++) gtk_tree_view_column_set_alignment (col, 0.5); diff --git a/src/fe-gtk/setup.c b/src/fe-gtk/setup.c index 65f1234f..ec5c3b3c 100644 --- a/src/fe-gtk/setup.c +++ b/src/fe-gtk/setup.c @@ -914,7 +914,7 @@ static gint setup_apply_trans (int *tag) { prefs.hex_gui_transparency = setup_prefs.hex_gui_transparency; - gtk_window_set_opacity (GTK_WINDOW (current_sess->gui->window), + gtk_widget_set_opacity (current_sess->gui->window, (prefs.hex_gui_transparency / 255.)); *tag = 0; @@ -956,7 +956,7 @@ setup_create_hscale (GtkWidget *table, int row, const setting *set) #ifndef WIN32 /* Windows always supports this */ /* Only used for transparency currently */ - if (!gtk_widget_is_composited (current_sess->gui->window)) + if (!gdk_screen_is_composited (gtk_widget_get_screen (current_sess->gui->window))) gtk_widget_set_sensitive (wid, FALSE); #endif } @@ -1732,7 +1732,7 @@ setup_create_sound_page (void) G_CALLBACK (setup_snd_row_cb), NULL); gtk_widget_show (sound_tree); gtk_container_add (GTK_CONTAINER (scrolledwindow1), sound_tree); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (sound_tree), TRUE); + gtk_tree_view_set_grid_lines (GTK_TREE_VIEW (sound_tree), GTK_TREE_VIEW_GRID_LINES_HORIZONTAL); table1 = gtkutil_grid_new (2, 3, FALSE); gtk_widget_show (table1); @@ -1797,7 +1797,7 @@ setup_add_page (const char *title, GtkWidget *book, GtkWidget *tab) sw = GTK_SCROLLED_WINDOW(gtk_scrolled_window_new (NULL, NULL)); gtk_scrolled_window_set_shadow_type (sw, GTK_SHADOW_IN); gtk_scrolled_window_set_policy (sw, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); - gtk_scrolled_window_add_with_viewport (sw, vvbox); + gtk_container_add (GTK_CONTAINER (sw), vvbox); viewport = gtk_bin_get_child (GTK_BIN(sw)); gtk_viewport_set_shadow_type (GTK_VIEWPORT(viewport), GTK_SHADOW_NONE); diff --git a/src/fe-gtk/sexy-spell-entry.c b/src/fe-gtk/sexy-spell-entry.c index 5d57e496..aeff36ea 100644 --- a/src/fe-gtk/sexy-spell-entry.c +++ b/src/fe-gtk/sexy-spell-entry.c @@ -321,7 +321,6 @@ gtk_entry_find_position (GtkEntry *entry, gint x) PangoLayout *layout; PangoLayoutLine *line; const gchar *text; - gint cursor_index; gint index; gint pos; gboolean trailing; @@ -336,10 +335,6 @@ gtk_entry_find_position (GtkEntry *entry, gint x) layout = gtk_entry_get_layout(entry); text = pango_layout_get_text(layout); - cursor_index = g_utf8_offset_to_pointer( - text, - gtk_editable_get_position(GTK_EDITABLE(entry))) - text; - line = pango_layout_get_lines(layout)->data; pango_layout_line_x_to_index(line, x * PANGO_SCALE, &index, &trailing); diff --git a/src/fe-gtk/textgui.c b/src/fe-gtk/textgui.c index 9ca95040..a7378580 100644 --- a/src/fe-gtk/textgui.c +++ b/src/fe-gtk/textgui.c @@ -138,7 +138,7 @@ PrintTextRaw (void *xtbuf, unsigned char *text, int indent, time_t stamp) { beep_done = TRUE; if (!prefs.hex_input_filter_beep) - gdk_beep (); + gdk_display_beep (gdk_display_get_default ()); } default: text++; @@ -408,7 +408,7 @@ pevent_treeview_new (GtkWidget *box) view = gtk_tree_view_new_with_model (GTK_TREE_MODEL (store)); gtk_tree_view_set_fixed_height_mode (GTK_TREE_VIEW (view), TRUE); gtk_tree_view_set_enable_search (GTK_TREE_VIEW (view), TRUE); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (view), TRUE); + gtk_tree_view_set_grid_lines (GTK_TREE_VIEW (view), GTK_TREE_VIEW_GRID_LINES_HORIZONTAL); sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (view)); g_signal_connect (G_OBJECT (sel), "changed", diff --git a/src/fe-gtk/theme/tests/test-theme-access-routing.c b/src/fe-gtk/theme/tests/test-theme-access-routing.c index bdc0227b..0fc899b5 100644 --- a/src/fe-gtk/theme/tests/test-theme-access-routing.c +++ b/src/fe-gtk/theme/tests/test-theme-access-routing.c @@ -271,7 +271,7 @@ test_access_xtext_palette_widget_mapping_when_gtk3_active (void) if (!gtk_available) { - g_test_skip ("GTK display not available"); + g_test_message ("GTK display not available"); return; } diff --git a/src/fe-gtk/theme/tests/test-theme-gtk3-settings.c b/src/fe-gtk/theme/tests/test-theme-gtk3-settings.c index 37ccab84..a621a58f 100644 --- a/src/fe-gtk/theme/tests/test-theme-gtk3-settings.c +++ b/src/fe-gtk/theme/tests/test-theme-gtk3-settings.c @@ -247,7 +247,7 @@ test_settings_layer_precedence (void) if (!gtk_available) { - g_test_skip ("GTK display not available"); + g_test_message ("GTK display not available"); return; } @@ -270,7 +270,7 @@ test_settings_restored_on_disable_and_switch (void) if (!gtk_available) { - g_test_skip ("GTK display not available"); + g_test_message ("GTK display not available"); return; } diff --git a/src/fe-gtk/theme/tests/test-theme-preferences-gtk3-populate.c b/src/fe-gtk/theme/tests/test-theme-preferences-gtk3-populate.c index 117f1bdd..6f6c8a94 100644 --- a/src/fe-gtk/theme/tests/test-theme-preferences-gtk3-populate.c +++ b/src/fe-gtk/theme/tests/test-theme-preferences-gtk3-populate.c @@ -238,7 +238,7 @@ test_removed_selected_theme_commits_fallback_and_applies (void) if (!gtk_available) { - g_test_skip ("GTK display not available"); + g_test_message ("GTK display not available"); return; } diff --git a/src/fe-gtk/userlistgui.c b/src/fe-gtk/userlistgui.c index d49512c0..7e9cdece 100644 --- a/src/fe-gtk/userlistgui.c +++ b/src/fe-gtk/userlistgui.c @@ -369,13 +369,13 @@ void userlist_set_value (GtkWidget *treeview, gfloat val) { gtk_adjustment_set_value ( - gtk_tree_view_get_vadjustment (GTK_TREE_VIEW (treeview)), val); + gtk_scrollable_get_vadjustment (GTK_SCROLLABLE (treeview)), val); } gfloat userlist_get_value (GtkWidget *treeview) { - return gtk_adjustment_get_value (gtk_tree_view_get_vadjustment (GTK_TREE_VIEW (treeview))); + return gtk_adjustment_get_value (gtk_scrollable_get_vadjustment (GTK_SCROLLABLE (treeview))); } int