diff --git a/exec/lbshell.js b/exec/lbshell.js index 224edb5d2d5bcea1bf48f31feea96cea66a75fe1..4f0c3ab0768243a5624043ff6e675d2d6cd46d80 100644 --- a/exec/lbshell.js +++ b/exec/lbshell.js @@ -462,8 +462,7 @@ while(1) { if(x_sec==KEY_LEFT) x_sec=xtrnsec.current-1; if(x_sec==KEY_RIGHT) { - next_key='I'; - mainbar.current++; + main_right(); break; } if(x_sec=='\b' || x_sec=='\x7f' || x_sec=='\x1b') @@ -681,11 +680,13 @@ function main_left() function show_filemenu() { var cur=1; + var nd=false; while(1) { var filemenu=new Filemenu(); var ret; var i; var j; + filemenu.nodraw=nd; filemenu.current=cur; ret=filemenu.getval(); @@ -827,6 +828,7 @@ function show_filemenu() return; default: // Anything else will escape. clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + filemenu.nodraw=true; break file; } } @@ -874,6 +876,7 @@ function show_filemenu() return; default: // Anything else will escape. clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + filemenu.nodraw=true; break file; } } @@ -924,6 +927,7 @@ function show_filemenu() return; default: // Anything else will escape. clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + filemenu.nodraw=true; break file; } } @@ -961,6 +965,7 @@ function show_filemenu() return; default: clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + filemenu.nodraw=true; break file; } } @@ -1014,6 +1019,7 @@ function show_filemenu() return; default: clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + filemenu.nodraw=true; break file; } } @@ -1165,6 +1171,7 @@ function show_filemenu() return; default: clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + filemenu.nodraw=true; break file; } } @@ -1202,6 +1209,7 @@ function show_filemenu() return; default: clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + filemenu.nodraw=true; break file; } cur=typemenu.current; @@ -1209,12 +1217,14 @@ function show_filemenu() break; } cur=filemenu.current; + nd=filemenu.nodraw; } } function show_messagemenu() { var cur=1; + var nd=false; while(!done) { var i; @@ -1222,6 +1232,7 @@ function show_messagemenu() var ret; var messagemenu=new Messagemenu(); messagemenu.current=cur; + messagemenu.nodraw=nd; ret=messagemenu.getval(); if(ret==KEY_RIGHT) { @@ -1386,6 +1397,7 @@ function show_messagemenu() return; default: clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + messagemenu.nodraw=true; break message; } } @@ -1444,6 +1456,7 @@ function show_messagemenu() return; default: clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + messagemenu.nodraw=true; break message; } } @@ -1503,6 +1516,7 @@ function show_messagemenu() return; default: clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + messagemenu.nodraw=true; break message; } } @@ -1524,6 +1538,7 @@ function show_messagemenu() break; } cur=messagemenu.current; + nd=messagemenu.nodraw; } } @@ -1540,6 +1555,8 @@ function show_emailmenu() var j; var ret; + /* Nothing dynamic, so we don't need to save/restore nodraw */ + ret=emailmenu.getval(); if(ret==KEY_RIGHT) { if(emailmenu.items[emailmenu.current].text.substr(-2,2)==' >') @@ -1632,6 +1649,7 @@ function show_emailmenu() return; default: clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + emailmenu.nodraw=true; break email; } } @@ -1666,6 +1684,8 @@ function show_chatmenu() var j; var ret; + /* Nothing dynamic, so we don't need to save/restore nodraw */ + ret=chatmenu.getval(); if(ret==KEY_RIGHT) { if(chatmenu.items[chatmenu.current].text.substr(-2,2)==' >') @@ -1757,6 +1777,7 @@ function show_chatmenu() return; default: clearlines(typemenu.xpos,typemenu.ypos,typemenu.items.length); + chatmenu.nodraw=true; break chat; } }