ba55296
--- gdm-2.18.0/gui/greeter/greeter_item.c.add-lowres-fix	2007-03-11 17:46:10.000000000 -0400
ba55296
+++ gdm-2.18.0/gui/greeter/greeter_item.c	2007-03-20 12:13:24.000000000 -0400
ba55296
@@ -26,6 +26,7 @@
ba55296
 #include <unistd.h>
ba55296
 
ba55296
 #include "gdm.h"
ba55296
+#include "gdmwm.h"
ba55296
 #include "gdmconfig.h"
ba55296
 #include "gdmcommon.h"
ba55296
 #include "misc.h"
ba55296
@@ -181,6 +182,10 @@
ba55296
        ! (info->show_modes & GREETER_ITEM_SHOW_REMOTE))
ba55296
     return FALSE;
ba55296
 
ba55296
+  if ((gdm_wm_screen.width < info->minimum_required_screen_width) ||
ba55296
+      (gdm_wm_screen.height < info->minimum_required_screen_height))
ba55296
+    return FALSE;
ba55296
+
ba55296
   sysmenu = gdm_config_get_bool (GDM_KEY_SYSTEM_MENU);
ba55296
 
ba55296
   if (( ! gdm_config_get_bool (GDM_KEY_CONFIG_AVAILABLE) ||
ba55296
--- gdm-2.18.0/gui/greeter/greeter_parser.c.add-lowres-fix	2007-03-20 12:13:24.000000000 -0400
ba55296
+++ gdm-2.18.0/gui/greeter/greeter_parser.c	2007-03-20 12:45:26.000000000 -0400
ba55296
@@ -27,6 +27,7 @@
ba55296
 #include <gdk/gdkx.h>
ba55296
 #include <locale.h>
ba55296
 #include <glib/gi18n.h>
ba55296
+#include <syslog.h>
ba55296
 
ba55296
 #include "gdmwm.h"
ba55296
 #include "gdmcommon.h"
ba55296
@@ -597,7 +598,23 @@
ba55296
       }
ba55296
       xmlFree (prop);
ba55296
     }
ba55296
-  
ba55296
+
ba55296
+  prop = xmlGetProp (node,(const xmlChar *) "min-screen-width");
ba55296
+  if (prop != NULL)
ba55296
+    {
ba55296
+          syslog (LOG_ERR, "minimum width is %d", info->minimum_required_screen_height);
ba55296
+	  info->minimum_required_screen_width = atoi ((char *) prop);
ba55296
+	  xmlFree (prop);
ba55296
+    }
ba55296
+
ba55296
+  prop = xmlGetProp (node,(const xmlChar *) "min-screen-height");
ba55296
+  if (prop != NULL)
ba55296
+    {
ba55296
+	  info->minimum_required_screen_height = atoi ((char *) prop);
ba55296
+          syslog (LOG_ERR, "minimum height is %d", info->minimum_required_screen_height);
ba55296
+	  xmlFree (prop);
ba55296
+    }
ba55296
+
ba55296
   prop = xmlGetProp (node,(const xmlChar *) "modes");
ba55296
   if (prop != NULL)
ba55296
     {
ba55296
--- gdm-2.18.0/gui/greeter/greeter_item.h.add-lowres-fix	2007-03-20 12:13:24.000000000 -0400
ba55296
+++ gdm-2.18.0/gui/greeter/greeter_item.h	2007-03-20 12:13:24.000000000 -0400
ba55296
@@ -89,6 +89,10 @@
ba55296
   float y;
ba55296
   float width;
ba55296
   float height;
ba55296
+
ba55296
+  int minimum_required_screen_width;
ba55296
+  int minimum_required_screen_height;
ba55296
+
ba55296
   GreeterItemPosType x_type:2;
ba55296
   GreeterItemPosType y_type:2;
ba55296
   GreeterItemSizeType width_type:4;
ba55296
--- gdm-2.18.0/docs/C/gdm.xml.add-lowres-fix	2007-03-20 12:53:33.000000000 -0400
ba55296
+++ gdm-2.18.0/docs/C/gdm.xml	2007-03-20 12:56:20.000000000 -0400
ba55296
@@ -6544,6 +6544,20 @@
ba55296
         </para>
ba55296
 
ba55296
         <para>
ba55296
+          Alternatively, you can specify a "min-screen-width" or
ba55296
+          "min-screen-height" value to indicate that certain
ba55296
+          items should only be displayed if the screen resolution is the
ba55296
+          at least the given required size.
ba55296
+        </para>
ba55296
+
ba55296
+        <para>
ba55296
+          For example:
ba55296
+<screen>
ba55296
+<show min-screen-height="768"/>
ba55296
+</screen>
ba55296
+        </para>
ba55296
+
ba55296
+        <para>
ba55296
           Note that if SystemMenu is off then the halt, restart, suspend,
ba55296
           chooser and config choices will not be shown, so this is a global
ba55296
           toggle for them all.  See some of the standard themes for how the