blob: 3620dc5d6f2a0ba432f1295b8d43b3c060bc7e43 [file] [log] [blame]
diff -ruN xkbd-0.8.15/src/xkbd.c xkbd-0.8.15-new/src/xkbd.c
--- xkbd-0.8.15/src/xkbd.c 2003-09-29 10:29:35.000000000 -0700
+++ xkbd-0.8.15-new/src/xkbd.c 2008-03-23 02:43:20.000000000 -0700
@@ -307,19 +307,20 @@
0, BlackPixel(display, screen_num),
WhitePixel(display, screen_num));
+ wret = DisplayWidth(display, screen_num);
+ hret = DisplayHeight(display, screen_num)/4;
+ xret = 0;
+ yret = DisplayHeight(display, screen_num) - hret;
+
if (geometry != NULL)
{
- XParseGeometry(geometry, &xret, &yret, &wret, &hret );
- }
- else
- {
- if (wm_type != WM_MATCHBOX)
- {
- wret = DisplayWidth(display, screen_num);
- hret = DisplayHeight(display, screen_num)/4;
- xret = 0;
- yret = DisplayHeight(display, screen_num) - hret;
- }
+ int flags;
+
+ flags = XParseGeometry(geometry, &xret, &yret, &wret, &hret );
+ if( flags & XNegative )
+ xret += DisplayWidth( display, screen_num ) - wret;
+ if( flags & YNegative )
+ yret += DisplayHeight( display, screen_num ) - hret;
}
/* check for user selected keyboard conf file */