pidgin/pidgin

Replace deprecated gdk functions

2020-03-20, Gary Kramlich
6746d9b67b3e
Parents b28beec32e25
Children 59b7f06a3c0f
Replace deprecated gdk functions
--- a/pidgin/gtkconv.c Fri Mar 13 22:11:34 2020 -0500
+++ b/pidgin/gtkconv.c Fri Mar 20 09:57:21 2020 -0500
@@ -7811,6 +7811,8 @@
}
static gboolean gtk_conv_configure_cb(GtkWidget *w, GdkEventConfigure *event, gpointer data) {
+ GdkMonitor *monitor = NULL;
+ GdkRectangle geo;
int x, y;
if (gtk_widget_get_visible(w))
@@ -7823,12 +7825,17 @@
if (gdk_window_get_state(gtk_widget_get_window(w)) & GDK_WINDOW_STATE_MAXIMIZED)
return FALSE;
- /* don't save off-screen positioning */
- if (x + event->width < 0 ||
- y + event->height < 0 ||
- x > gdk_screen_width() ||
- y > gdk_screen_height())
+ monitor = gdk_display_get_monitor_at_window(gdk_display_get_default(),
+ event->window);
+ gdk_monitor_get_geometry(monitor, &geo);
+
+ /* don't save a window that's spanning monitoring */
+ if (x + event->width < geo.x ||
+ y + event->height < geo.y ||
+ x > geo.width ||
+ y > geo.height) {
return FALSE; /* carry on normally */
+ }
/* store the position */
purple_prefs_set_int(PIDGIN_PREFS_ROOT "/conversations/im/x", x);
@@ -8574,6 +8581,8 @@
conv_placement_last_created_win_type_configured_cb(GtkWidget *w,
GdkEventConfigure *event, PidginConversation *conv)
{
+ GdkMonitor *monitor = NULL;
+ GdkRectangle geo;
int x, y;
GList *all;
@@ -8587,12 +8596,17 @@
if (gdk_window_get_state(gtk_widget_get_window(w)) & GDK_WINDOW_STATE_MAXIMIZED)
return FALSE;
+ monitor = gdk_display_get_monitor_at_window(gdk_display_get_default(),
+ event->window);
+ gdk_monitor_get_geometry(monitor, &geo);
+
/* don't save off-screen positioning */
- if (x + event->width < 0 ||
- y + event->height < 0 ||
- x > gdk_screen_width() ||
- y > gdk_screen_height())
+ if (x + event->width < geo.x ||
+ y + event->height < geo.y ||
+ x > geo.width ||
+ y > geo.height) {
return FALSE; /* carry on normally */
+ }
for (all = conv->convs; all != NULL; all = all->next) {
if (PURPLE_IS_IM_CONVERSATION(conv->active_conv) != PURPLE_IS_IM_CONVERSATION(all->data)) {
--- a/pidgin/gtksound.c Fri Mar 13 22:11:34 2020 -0500
+++ b/pidgin/gtksound.c Fri Mar 20 09:57:21 2020 -0500
@@ -452,7 +452,7 @@
if (purple_strequal(method, "none")) {
return;
} else if (purple_strequal(method, "beep")) {
- gdk_beep();
+ gdk_display_beep(gdk_display_get_default());
return;
}
#ifdef _WIN32
@@ -578,7 +578,7 @@
#else /* #ifdef USE_GSTREAMER */
#ifndef _WIN32
- gdk_beep();
+ gdk_display_beep(gdk_display_get_default());
#else /* _WIN32 */
pidgin_sound_play_file_win32(filename);
#endif /* _WIN32 */
--- a/pidgin/gtkstatusbox.c Fri Mar 13 22:11:34 2020 -0500
+++ b/pidgin/gtkstatusbox.c Fri Mar 20 09:57:21 2020 -0500
@@ -1168,8 +1168,8 @@
static void
pidgin_status_box_list_position (PidginStatusBox *status_box, int *x, int *y, int *width, int *height)
{
- GdkScreen *screen;
gint monitor_num;
+ GdkMonitor *m = NULL;
GdkRectangle monitor;
GtkRequisition popup_req;
GtkPolicyType hpolicy, vpolicy;
@@ -1201,10 +1201,9 @@
*height = popup_req.height;
- screen = gtk_widget_get_screen(GTK_WIDGET(status_box));
- monitor_num = gdk_screen_get_monitor_at_window(screen,
+ m = gdk_display_get_monitor_at_window(gdk_display_get_default(),
gtk_widget_get_window(GTK_WIDGET(status_box)));
- gdk_screen_get_monitor_geometry(screen, monitor_num, &monitor);
+ gdk_monitor_get_geometry(m, &monitor);
if (*x < monitor.x)
*x = monitor.x;
--- a/pidgin/gtkutils.c Fri Mar 13 22:11:34 2020 -0500
+++ b/pidgin/gtkutils.c Fri Mar 20 09:57:21 2020 -0500
@@ -803,16 +803,14 @@
{
GtkWidget *widget;
GtkRequisition requisition;
- GdkScreen *screen;
+ GdkMonitor *m = NULL;
GdkRectangle monitor;
- gint monitor_num;
gint space_left, space_right, space_above, space_below;
gboolean rtl;
g_return_if_fail(GTK_IS_MENU(menu));
widget = GTK_WIDGET(menu);
- screen = gtk_widget_get_screen(widget);
rtl = (gtk_widget_get_direction(widget) == GTK_TEXT_DIR_RTL);
/*
@@ -823,7 +821,7 @@
*/
gtk_widget_get_preferred_size(widget, NULL, &requisition);
- monitor_num = gdk_screen_get_monitor_at_point (screen, *x, *y);
+ m = gdk_display_get_monitor_at_point(gdk_display_get_default(), *x, *y);
*push_in = FALSE;
@@ -846,7 +844,7 @@
* Positioning in the vertical direction is similar: first try below
* mouse cursor, then above.
*/
- gdk_screen_get_monitor_geometry (screen, monitor_num, &monitor);
+ gdk_monitor_get_geometry(m, &monitor);
space_left = *x - monitor.x;
space_right = monitor.x + monitor.width - *x - 1;
--- a/pidgin/pidgintooltip.c Fri Mar 13 22:11:34 2020 -0500
+++ b/pidgin/pidgintooltip.c Fri Mar 20 09:57:21 2020 -0500
@@ -130,20 +130,20 @@
{
int scr_w, scr_h, x, y, dy;
int preserved_x, preserved_y;
- int mon_num;
- GdkScreen *screen = NULL;
+ GdkDisplay *display = NULL;
+ GdkSeat *seat = NULL;
+ GdkMonitor *monitor = NULL;
+ GdkDevice *dev = NULL;
GdkRectangle mon_size;
GtkWidget *tipwindow = pidgin_tooltip.tipwindow;
- GdkSeat *seat;
- GdkDevice *dev;
-
- seat = gdk_display_get_default_seat(gdk_display_get_default());
+ display = gdk_display_get_default();
+ seat = gdk_display_get_default_seat(display);
dev = gdk_seat_get_pointer(seat);
- gdk_device_get_position(dev, &screen, &x, &y);
+ gdk_device_get_position(dev, NULL, &x, &y);
- mon_num = gdk_screen_get_monitor_at_point(screen, x, y);
- gdk_screen_get_monitor_geometry(screen, mon_num, &mon_size);
+ monitor = gdk_display_get_monitor_at_point(display, x, y);
+ gdk_monitor_get_geometry(monitor, &mon_size);
scr_w = mon_size.width + mon_size.x;
scr_h = mon_size.height + mon_size.y;