File gdm-save-panel-space-on-low-resolutions.patch of Package gdm

diff --git a/gui/simple-greeter/gdm-greeter-panel.c b/gui/simple-greeter/gdm-greeter-panel.c
index e557ba9..c3e1c9b 100644
--- a/gui/simple-greeter/gdm-greeter-panel.c
+++ b/gui/simple-greeter/gdm-greeter-panel.c
@@ -557,6 +557,7 @@ gdm_greeter_panel_init (GdmGreeterPanel *panel)
 {
         NaTray    *tray;
         GtkWidget *spacer;
+        GdkScreen *screen;
 
         gdm_profile_start (NULL);
 
@@ -634,7 +635,15 @@ gdm_greeter_panel_init (GdmGreeterPanel *panel)
         panel->priv->clock = gdm_clock_widget_new ();
         gtk_box_pack_end (GTK_BOX (panel->priv->hbox),
                             GTK_WIDGET (panel->priv->clock), FALSE, FALSE, 6);
-        gtk_widget_show (panel->priv->clock);
+
+        screen = gtk_widget_get_screen (panel->priv->clock);
+        if (!screen)
+                screen = gdk_screen_get_default ();
+
+        /* If resolution is limited, hide clock to conserve horizontal space */
+
+        if (!screen || gdk_screen_get_width (screen) > 1024)
+                gtk_widget_show (panel->priv->clock);
 
         tray = na_tray_new_for_screen (gtk_window_get_screen (GTK_WINDOW (panel)),
                                        GTK_ORIENTATION_HORIZONTAL);
diff --git a/gui/simple-greeter/gdm-option-widget.c b/gui/simple-greeter/gdm-option-widget.c
index 5561ce6..d49a375 100644
--- a/gui/simple-greeter/gdm-option-widget.c
+++ b/gui/simple-greeter/gdm-option-widget.c
@@ -617,8 +617,18 @@ gdm_option_widget_check_visibility (GdmOptionWidget *widget)
         if (widget->priv->number_of_top_rows > 0 ||
             widget->priv->number_of_middle_rows > 1 || 
             widget->priv->number_of_bottom_rows > 0) {
+                GdkScreen *screen;
+
                 gtk_widget_show (widget->priv->items_combo_box);
-                gtk_widget_show (widget->priv->label);
+
+                screen = gtk_widget_get_screen (widget->priv->label);
+                if (!screen)
+                        screen = gdk_screen_get_default ();
+
+                /* If resolution is limited, hide labels to conserve horizontal space */
+
+                if (!screen || gdk_screen_get_width (screen) > 1280)
+                        gtk_widget_show (widget->priv->label);
 
                 if (widget->priv->icon_name != NULL) {
                         gtk_widget_show (widget->priv->image);
openSUSE Build Service is sponsored by