File mate-settings-daemon-gtk-3.20.patch of Package mate-settings-daemon

--- a/configure.ac
+++ b/configure.ac
@@ -51,9 +51,9 @@ dnl - Dependencies
 dnl ---------------------------------------------------------------------------
 
 DBUS_GLIB_REQUIRED_VERSION=0.74
-GLIB_REQUIRED_VERSION=2.50.0
-GIO_REQUIRED_VERSION=2.50.0
-GTK_REQUIRED_VERSION=3.22.0
+GLIB_REQUIRED_VERSION=2.48.0
+GIO_REQUIRED_VERSION=2.48.0
+GTK_REQUIRED_VERSION=3.20.0
 MATE_DESKTOP_REQUIRED_VERSION=1.20.0
 LIBMATEKBD_REQUIRED_VERSION=1.17.0
 LIBNOTIFY_REQUIRED_VERSION=0.7.0
--- a/plugins/a11y-keyboard/msd-a11y-keyboard-manager.c
+++ b/plugins/a11y-keyboard/msd-a11y-keyboard-manager.c
@@ -424,7 +424,11 @@ ax_response_callback (MsdA11yKeyboardMan
 
         case GTK_RESPONSE_HELP:
                 err = NULL;
+#if GTK_CHECK_VERSION (3, 22, 0)
                 if (!gtk_show_uri_on_window (parent,
+#else
+                if (!gtk_show_uri (gtk_window_get_screen (parent),
+#endif
                                    "help:mate-user-guide/goscustaccess-6",
                                    gtk_get_current_event_time(),
                                    &err)) {
--- a/plugins/media-keys/msd-media-keys-manager.c
+++ b/plugins/media-keys/msd-media-keys-manager.c
@@ -401,7 +401,11 @@ dialog_show (MsdMediaKeysManager *manage
         GtkRequisition win_req;
         GdkScreen     *pointer_screen;
         GdkRectangle   geometry;
+#if GTK_CHECK_VERSION (3, 22, 0)
         GdkMonitor    *monitor;
+#else
+        int            monitor;
+#endif
 
         gtk_window_set_screen (GTK_WINDOW (manager->priv->dialog),
                                manager->priv->current_screen);
@@ -439,12 +443,28 @@ dialog_show (MsdMediaKeysManager *manage
                 /* The pointer isn't on the current screen, so just
                  * assume the default monitor
                  */
+#if GTK_CHECK_VERSION (3, 22, 0)
                 monitor = gdk_display_get_monitor (display, 0);
+#else
+                monitor = 0;
+#endif
         } else {
+#if GTK_CHECK_VERSION (3, 22, 0)
                 monitor = gdk_display_get_monitor_at_point (display, pointer_x, pointer_y);
+#else
+                monitor = gdk_screen_get_monitor_at_point (gdk_display_get_default_screen (display),
+                                                           pointer_x,
+                                                           pointer_y);
+#endif
         }
 
+#if GTK_CHECK_VERSION (3, 22, 0)
         gdk_monitor_get_geometry (monitor, &geometry);
+#else
+        gdk_screen_get_monitor_geometry (gdk_display_get_default_screen (display),
+                                         monitor,
+                                         &geometry);
+#endif
 
         screen_w = geometry.width;
         screen_h = geometry.height;
--- a/plugins/xsettings/msd-xsettings-manager.c
+++ b/plugins/xsettings/msd-xsettings-manager.c
@@ -231,21 +231,38 @@ static int
 get_window_scale_auto ()
 {
         GdkDisplay   *display;
+#if GTK_CHECK_VERSION (3, 22, 0)
         GdkMonitor   *monitor;
+#else
+        GdkScreen    *screen;
+        int monitor;
+#endif
         GdkRectangle  rect;
         int width_mm, height_mm;
         int monitor_scale, window_scale;
 
         display = gdk_display_get_default ();
+#if GTK_CHECK_VERSION (3, 22, 0)
         monitor = gdk_display_get_primary_monitor (display);
+#else
+        screen = gdk_display_get_default_screen (display);
+        monitor = gdk_screen_get_primary_monitor (screen);
+#endif
 
         /* Use current value as the default */
         window_scale = 1;
 
+#if GTK_CHECK_VERSION (3, 22, 0)
         gdk_monitor_get_geometry (monitor, &rect);
         width_mm = gdk_monitor_get_width_mm (monitor);
         height_mm = gdk_monitor_get_height_mm (monitor);
         monitor_scale = gdk_monitor_get_scale_factor (monitor);
+#else
+        gdk_screen_get_monitor_geometry (screen, monitor, &rect);
+        width_mm = gdk_screen_get_monitor_width_mm (screen, monitor);
+        height_mm = gdk_screen_get_monitor_height_mm (screen, monitor);
+        monitor_scale = gdk_screen_get_monitor_scale_factor (screen, monitor);
+#endif
 
         if (rect.height * monitor_scale < HIDPI_MIN_HEIGHT)
                 return 1;
openSUSE Build Service is sponsored by