Skip to content
Snippets Groups Projects
Commit 2c910275 authored by OlivierDuchateau's avatar OlivierDuchateau Committed by Simon Steinbeiß
Browse files

Avoid deprecated warnings with Gdk >= 3.22

Switch to the compatibility API `xfce_gdk_screen_get_geometry`
provided in libxfce4ui 4.14.
Consequently bump more dependencies to Xfce 4.14
parent 28ecd07f
No related branches found
No related tags found
1 merge request!1Avoid deprecated warnings with Gdk >= 3.22
Pipeline #1671 passed
......@@ -61,14 +61,14 @@ dnl ***********************************
dnl *** Check for required packages ***
dnl ***********************************
XDT_CHECK_LIBX11_REQUIRE()
XDT_CHECK_PACKAGE([GIO], [gio-2.0], [2.32.0])
XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.32.0])
XDT_CHECK_PACKAGE([GDKX], [gdk-x11-3.0], [3.14.0])
XDT_CHECK_PACKAGE([GTK], [gtk+-3.0], [3.14.0])
XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-2], [4.12.0])
XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.12.0])
XDT_CHECK_PACKAGE([LIBXFCE4PANEL], [libxfce4panel-2.0], [4.12.0])
XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [4.10.0])
XDT_CHECK_PACKAGE([GIO], [gio-2.0], [2.42.0])
XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.42.0])
XDT_CHECK_PACKAGE([GDKX], [gdk-x11-3.0], [3.22.0])
XDT_CHECK_PACKAGE([GTK], [gtk+-3.0], [3.22.0])
XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-2], [4.14.0])
XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.14.0])
XDT_CHECK_PACKAGE([LIBXFCE4PANEL], [libxfce4panel-2.0], [4.14.0])
XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [4.14.0])
XDT_CHECK_PACKAGE([LIBXPROTO], [xproto], [7.0.0])
XDT_CHECK_PACKAGE([LIBXTST], [xtst], [1.0.0])
......
......@@ -234,6 +234,7 @@ my_plugin_position_menu (GtkMenu *menu,
GtkRequisition minimum_size;
GtkRequisition natural_size;
XfceScreenPosition screen_position;
GdkRectangle *geometry;
g_return_if_fail (XFCE_IS_PANEL_PLUGIN (plugin->panel_plugin));
......@@ -241,6 +242,7 @@ my_plugin_position_menu (GtkMenu *menu,
gtk_widget_get_size_request (plugin->button, &button_width, &button_height);
gtk_widget_get_preferred_size (GTK_WIDGET (menu), &minimum_size, &natural_size);
gdk_window_get_origin (gtk_widget_get_window (GTK_WIDGET (plugin->panel_plugin)), x, y);
geometry = xfce_gdk_screen_get_geometry ();
switch (screen_position)
{
......@@ -258,23 +260,23 @@ my_plugin_position_menu (GtkMenu *menu,
/* Show menu below */
*y += button_height;
if (*x + minimum_size.width > gdk_screen_width ())
if (*x + minimum_size.width > geometry->width)
/* Adjust horizontal position */
*x = gdk_screen_width () - minimum_size.width;
*x = geometry->width - minimum_size.width;
break;
default:
if (*x + button_width + minimum_size.width > gdk_screen_width ())
if (*x + button_width + minimum_size.width > geometry->width)
/* Show menu on the right */
*x -= minimum_size.width;
else
/* Show menu on the left */
*x += button_width;
if (*y + minimum_size.height > gdk_screen_height ())
if (*y + minimum_size.height > geometry->height)
/* Adjust vertical position */
*y = gdk_screen_height () - minimum_size.height;
*y = geometry->height - minimum_size.height;
break;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment