X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;f=dmenu.c;h=94c70deb749db4710067ff4b1c98904d36d2b3ed;hb=13a529ce63364544bdc851dfd5d3aa2ef8740914;hp=dd2c128649a9cf0e1f21f536dee0d1149dd7155b;hpb=4c50e43df46e486a0fac632d34eaed37359ceba7;p=dmenu.git diff --git a/dmenu.c b/dmenu.c index dd2c128..94c70de 100644 --- a/dmenu.c +++ b/dmenu.c @@ -256,9 +256,9 @@ keypress(XKeyEvent *ev) { case XK_h: ksym = XK_BackSpace; break; case XK_i: ksym = XK_Tab; break; case XK_j: /* fallthrough */ - case XK_J: ksym = XK_Return; break; + case XK_J: /* fallthrough */ case XK_m: /* fallthrough */ - case XK_M: ksym = XK_Return; break; + case XK_M: ksym = XK_Return; ev->state &= ~ControlMask; break; case XK_n: ksym = XK_Down; break; case XK_p: ksym = XK_Up; break; @@ -370,7 +370,8 @@ keypress(XKeyEvent *ev) { puts((sel && !(ev->state & ShiftMask)) ? sel->text : text); if(!(ev->state & ControlMask)) exit(EXIT_SUCCESS); - sel->out = True; + if(sel) + sel->out = True; break; case XK_Right: if(text[cursor] != '\0') {