all repos — dmenu @ 86019c58555b5d9514cfe2eba14248588a812f16

my build of dmenu

fixed xinerama corner case
Connor Lane Smith cls@lubutu.com
Thu, 12 May 2011 13:17:41 +0100
commit

86019c58555b5d9514cfe2eba14248588a812f16

parent

0291c722fb298768d1942824ea2900399566e8a1

1 files changed, 7 insertions(+), 7 deletions(-)

jump to
M dmenu.cdmenu.c

@@ -506,18 +506,18 @@ lines = MAX(lines, 0);

mh = (lines + 1) * bh; #ifdef XINERAMA if((info = XineramaQueryScreens(dc->dpy, &n))) { - int i, m, di; + int i, di; unsigned int du; Window dw; XQueryPointer(dc->dpy, root, &dw, &dw, &x, &y, &di, &di, &du); - for(i = 0, m = -1; i < n; i++) + for(i = 0; i < n-1; i++) if((monitor == info[i].screen_number) - || (m < 0 && INRECT(x, y, info[i].x_org, info[i].y_org, info[i].width, info[i].height))) - m = i; - x = info[m].x_org; - y = info[m].y_org + (topbar ? 0 : info[m].height - mh); - mw = info[m].width; + || (monitor < 0 && INRECT(x, y, info[i].x_org, info[i].y_org, info[i].width, info[i].height))) + break; + x = info[i].x_org; + y = info[i].y_org + (topbar ? 0 : info[i].height - mh); + mw = info[i].width; XFree(info); } else