From ef86dcce1f74ffa919e55dd68b63744b395b21ae Mon Sep 17 00:00:00 2001 From: nick black Date: Fri, 8 Oct 2021 17:50:00 -0400 Subject: [PATCH] [ncplayer] ignore Release events --- src/player/play.cpp | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/player/play.cpp b/src/player/play.cpp index c69e20bbb..3cd76e916 100644 --- a/src/player/play.cpp +++ b/src/player/play.cpp @@ -9,7 +9,6 @@ #include #include #include -#include #include #include #include @@ -410,20 +409,23 @@ int rendered_mode_player_inner(NotCurses& nc, int argc, char** argv, ncplane_destroy(n); return -1; } - uint32_t ie = nc.get(true); - if(ie == (uint32_t)-1){ + ncinput ni; + do{ + nc.get(true, &ni); + }while(ni.evtype == EvType::Release); + if(ni.id == (uint32_t)-1){ return -1; - }else if(ie == 'q'){ + }else if(ni.id == 'q'){ return 0; - }else if(ie == 'L'){ + }else if(ni.id == 'L'){ --i; nc.refresh(nullptr, nullptr); - }else if(ie >= '0' && ie <= '6'){ - blitter = vopts.blitter = static_cast(ie - '0'); + }else if(ni.id >= '0' && ni.id <= '6'){ + blitter = vopts.blitter = static_cast(ni.id - '0'); --i; // rerun same input with the new blitter - }else if(ie >= '7' && ie <= '9'){ + }else if(ni.id >= '7' && ni.id <= '9'){ --i; // just absorb the input - }else if(ie == NCKey::Resize){ + }else if(ni.id == NCKey::Resize){ --i; // rerun with the new size if(!nc.refresh(&dimy, &dimx)){ ncplane_destroy(n);