Merge pull request #14 from Malod219/master

Number key support
This commit is contained in:
phillbush 2020-09-22 22:12:51 +00:00 committed by GitHub
commit 736d20be06
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 2 deletions

View File

@ -96,7 +96,7 @@ but can also be controlled by the keyboard.
Items can be selected using the arrow keys,
Tab (with and without Shift),
Home, End,
Enter and Esc.
Enter and Esc, and 1-9 keys.
.TP
.BR Home
Select the first item in the menu.

10
xmenu.c
View File

@ -1280,8 +1280,16 @@ selectitem:
item = itemcycle(currmenu, ITEMPREV);
} else if (ksym == XK_Tab || ksym == XK_Down || ksym == KSYMDOWN) {
item = itemcycle(currmenu, ITEMNEXT);
} else if (ksym >= XK_1 && ksym <= XK_9){
item = itemcycle(currmenu, ITEMFIRST);
for(int i = ksym-XK_1; i > 0; i-=1){
currmenu->selected = item;
item = itemcycle(currmenu, ITEMNEXT);
if (item == itemcycle(currmenu, ITEMLAST))
break;
}
} else if ((ksym == XK_Return || ksym == XK_Right || ksym == KSYMRIGHT) &&
currmenu->selected != NULL) {
currmenu->selected != NULL) {
item = currmenu->selected;
goto selectitem;
} else if ((ksym == XK_Escape || ksym == XK_Left || ksym == KSYMLEFT) &&