libgnomekbd r275 - in trunk: . libgnomekbd



Author: svu
Date: Sat May 10 20:05:37 2008
New Revision: 275
URL: http://svn.gnome.org/viewvc/libgnomekbd?rev=275&view=rev

Log:
making default size dependent on the screen size, b.g.o#481118

Modified:
   trunk/ChangeLog
   trunk/libgnomekbd/gkbd-util.c

Modified: trunk/libgnomekbd/gkbd-util.c
==============================================================================
--- trunk/libgnomekbd/gkbd-util.c	(original)
+++ trunk/libgnomekbd/gkbd-util.c	Sat May 10 20:05:37 2008
@@ -112,15 +112,25 @@
 
 	g_object_unref (G_OBJECT (conf_client));
 
-	// default values should be just ignored
-	if (x == -1 || y == -1 || w == -1 || h == -1)
-		return NULL;
-
 	rv = g_new (GdkRectangle, 1);
-	rv->x = x;
-	rv->y = y;
-	rv->width = w;
-	rv->height = h;
+	if (x == -1 || y == -1 || w == -1 || h == -1) {
+		/* default values should be treated as 
+		 * "0.75 of the screen size" */
+		GdkScreen *scr = gdk_screen_get_default ();
+		gint w = gdk_screen_get_width (scr);
+		gint h = gdk_screen_get_height (scr);
+		rv->x = w >> 3;
+		rv->y = h >> 3;
+		rv->width = w - (w >> 2);
+		rv->height = h - (h >> 2);
+	} else {
+		rv->x = x;
+		rv->y = y;
+		rv->width = w;
+		rv->height = h;
+	}
+	printf ("rect: %d, %d (%dx%d)\n", rv->x, rv->y, rv->width,
+		rv->height);
 	return rv;
 }
 



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