From ecf1f56379f7f2ae2524a95b3905c82ca05d9585 Mon Sep 17 00:00:00 2001 From: Suleyman Farajli Date: Mon, 5 Aug 2024 18:51:37 +0400 Subject: keybinds changed for multiline prompt --- dmenu.c | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) (limited to 'dmenu.c') diff --git a/dmenu.c b/dmenu.c index 9fc07f7..a50e138 100644 --- a/dmenu.c +++ b/dmenu.c @@ -417,10 +417,30 @@ keypress(XKeyEvent *ev) goto draw; case XK_g: ksym = XK_Home; break; case XK_G: ksym = XK_End; break; - case XK_h: ksym = XK_Up; break; - case XK_j: ksym = XK_Next; break; - case XK_k: ksym = XK_Prior; break; - case XK_l: ksym = XK_Down; break; + case XK_h: + if(lines > 0) + ksym = XK_Prior; + else + ksym = XK_Up; + break; + case XK_j: + if(lines > 0) + ksym = XK_Down; + else + ksym = XK_Next; + break; + case XK_k: + if(lines > 0) + ksym = XK_Up; + else + ksym = XK_Prior; + break; + case XK_l: + if(lines > 0) + ksym = XK_Next; + else + ksym = XK_Down; + break; default: return; } -- cgit v1.2.3