diff options
author | Viktor Odintsev <zakhams@gmail.com> | 2017-07-02 17:03:27 +0300 |
---|---|---|
committer | Viktor Odintsev <ninetls@xfce.org> | 2017-07-02 17:03:27 +0300 |
commit | 050a52ed2d44b1b5c16af4b85c518c16dd3c51d9 (patch) | |
tree | 450a39579a8e56b2c7d5109e866694f96922be6d /common | |
parent | 5b10f726c28c68d0ebc972754b08f5ea199d36b1 (diff) | |
download | xfwm4-050a52ed2d44b1b5c16af4b85c518c16dd3c51d9.tar.gz |
Handle GDK display/screen/monitor deprecations
Diffstat (limited to 'common')
-rw-r--r-- | common/xfwm-common.c | 51 | ||||
-rw-r--r-- | common/xfwm-common.h | 9 |
2 files changed, 60 insertions, 0 deletions
diff --git a/common/xfwm-common.c b/common/xfwm-common.c index b6c9ae25f..a89fc9307 100644 --- a/common/xfwm-common.c +++ b/common/xfwm-common.c @@ -72,3 +72,54 @@ xfwm_get_screen_dimensions (gint *width, gint *height) *height = gdk_screen_height (); #endif } + + + +void +xfwm_get_monitor_geometry (GdkScreen *screen, + gint monitor_num, + GdkRectangle *geometry) +{ +#if GTK_CHECK_VERSION(3, 22, 0) + GdkDisplay *display; + GdkMonitor *monitor; + + display = gdk_screen_get_display (screen); + monitor = gdk_display_get_monitor (display, monitor_num); + gdk_monitor_get_geometry (monitor, geometry); +#else + gdk_screen_get_monitor_geometry (screen, monitor_num, geometry); +#endif +} + + + +void +xfwm_get_primary_monitor_geometry (GdkScreen *screen, + GdkRectangle *geometry) +{ +#if GTK_CHECK_VERSION(3, 22, 0) + GdkDisplay *display; + GdkMonitor *monitor; + + display = gdk_screen_get_display (screen); + monitor = gdk_display_get_primary_monitor (display); + gdk_monitor_get_geometry (monitor, geometry); +#else + gdk_screen_get_monitor_geometry (screen, + gdk_screen_get_primary_monitor (screen), + geometry); +#endif +} + + + +gint +xfwm_get_n_monitors (GdkScreen *screen) +{ +#if GTK_CHECK_VERSION(3, 22, 0) + return gdk_display_get_n_monitors (gdk_screen_get_display (screen)); +#else + return gdk_screen_get_n_monitors (screen); +#endif +} diff --git a/common/xfwm-common.h b/common/xfwm-common.h index eb2ed4182..742767fb5 100644 --- a/common/xfwm-common.h +++ b/common/xfwm-common.h @@ -29,4 +29,13 @@ void xfwm_widget_reparent (GtkWidget *widget, void xfwm_get_screen_dimensions (gint *width, gint *height); +void xfwm_get_monitor_geometry (GdkScreen *screen, + gint monitor_num, + GdkRectangle *geometry); + +void xfwm_get_primary_monitor_geometry (GdkScreen *screen, + GdkRectangle *geometry); + +gint xfwm_get_n_monitors (GdkScreen *screen); + #endif /* !__COMMON_H__ */ |