mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-04-27 05:03:15 +00:00
correct key buffering
This commit is contained in:
parent
45ff7a4e10
commit
b90df0d37b
12
control.cpp
12
control.cpp
@ -697,6 +697,7 @@ EX void mainloopiter() {
|
||||
frames++;
|
||||
if(!outoffocus) {
|
||||
drawscreen();
|
||||
need_refresh = false;
|
||||
}
|
||||
lastframe = ticks;
|
||||
}
|
||||
@ -780,6 +781,8 @@ EX void mainloopiter() {
|
||||
#endif
|
||||
}
|
||||
|
||||
EX bool need_refresh;
|
||||
|
||||
EX void handle_event(SDL_Event& ev) {
|
||||
bool normal = cmode & sm::NORMAL;
|
||||
DEBB(DF_GRAPH, ("got event type #%d\n", ev.type));
|
||||
@ -1012,6 +1015,15 @@ EX void handle_event(SDL_Event& ev) {
|
||||
sym = 0;
|
||||
}
|
||||
|
||||
if(sym || uni) {
|
||||
if(need_refresh) {
|
||||
just_refreshing = true;
|
||||
screens.back()();
|
||||
just_refreshing = false;
|
||||
}
|
||||
need_refresh = true;
|
||||
}
|
||||
|
||||
handlekey(sym, uni);
|
||||
}
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user