[gnome-panel/wip/geiger/geometry: 1/5] panel-run-dialog.c: replace deprecated code



commit ffad51969ba508cc5c148a71930368dd96ddcd0b
Author: Sebastian Geiger <sbastig gmx net>
Date:   Fri Feb 16 23:26:54 2018 +0100

    panel-run-dialog.c: replace deprecated code

 gnome-panel/panel-run-dialog.c |   23 ++++++++++++++++-------
 1 files changed, 16 insertions(+), 7 deletions(-)
---
diff --git a/gnome-panel/panel-run-dialog.c b/gnome-panel/panel-run-dialog.c
index 490317c..b1937e8 100644
--- a/gnome-panel/panel-run-dialog.c
+++ b/gnome-panel/panel-run-dialog.c
@@ -1760,9 +1760,10 @@ static void
 panel_run_dialog_setup_entry (PanelRunDialog *dialog,
                              GtkBuilder     *gui)
 {
-       GdkScreen             *screen;
        int                    width_request;
        GtkWidget             *entry;
+       GdkRectangle           geometry;
+       GdkMonitor            *monitor;
        
        dialog->combobox = PANEL_GTK_BUILDER_GET (gui, "comboboxentry");
 
@@ -1774,13 +1775,21 @@ panel_run_dialog_setup_entry (PanelRunDialog *dialog,
        gtk_combo_box_set_entry_text_column
                (GTK_COMBO_BOX (dialog->combobox), 0);
 
-       screen = gtk_window_get_screen (GTK_WINDOW (dialog->run_dialog));
+       monitor = gdk_display_get_primary_monitor(gdk_display_get_default ());
+
+       /* Fallback to monitor 0, if no primary monitor */
+       if (!monitor)
+         monitor = gdk_display_get_monitor (gdk_display_get_default (), 0);
+
+       /* Return if still no monitor is available */
+       if (!monitor)
+         return;
+
+       gdk_monitor_get_geometry (monitor, &geometry);
 
-        /* 1/4 the width of the first monitor should be a good value */
-       width_request = panel_multiscreen_width (screen, 0) / 4;
-       g_object_set (G_OBJECT (dialog->combobox),
-                     "width_request", width_request,
-                     NULL);
+       /* 1/4 the width of the monitor should be a good value */
+       gtk_widget_set_size_request (dialog->combobox,
+                                    geometry.width / 4, -1);
 
         g_signal_connect (entry, "key-press-event",
                          G_CALLBACK (entry_event), dialog);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]