projects
/
xmenu
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
tags
|
clone url
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
736d20b
)
add lastitem and adapt code to general code style
author
phillbush
<phillbush@cock.li>
Tue, 22 Sep 2020 22:18:15 +0000
(19:18 -0300)
committer
phillbush
<phillbush@cock.li>
Tue, 22 Sep 2020 22:18:15 +0000
(19:18 -0300)
xmenu.c
patch
|
blob
|
blame
|
history
diff --git
a/xmenu.c
b/xmenu.c
index
c29c31d
..
76761cc
100644
(file)
--- a/
xmenu.c
+++ b/
xmenu.c
@@
-1209,6
+1209,7
@@
run(struct Menu *currmenu)
struct Menu *menu;
struct Item *item;
struct Item *previtem = NULL;
struct Menu *menu;
struct Item *item;
struct Item *previtem = NULL;
+ struct Item *lastitem;
KeySym ksym;
XEvent ev;
KeySym ksym;
XEvent ev;
@@
-1282,11
+1283,10
@@
selectitem:
item = itemcycle(currmenu, ITEMNEXT);
} else if (ksym >= XK_1 && ksym <= XK_9){
item = itemcycle(currmenu, ITEMFIRST);
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){
+ lastitem = itemcycle(currmenu, ITEMLAST);
+ for (int i = ksym - XK_1; i > 0 && item != lastitem; i--) {
currmenu->selected = item;
item = itemcycle(currmenu, ITEMNEXT);
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) {
}
} else if ((ksym == XK_Return || ksym == XK_Right || ksym == KSYMRIGHT) &&
currmenu->selected != NULL) {