Exit the move-resize-mode when the close confirmation dialog is displayed

This commit is contained in:
Markus Gans 2020-03-07 22:38:26 +01:00
parent 77638fcaa0
commit b58936a6a2
3 changed files with 10 additions and 14 deletions

View File

@ -1,5 +1,7 @@
2020-03-07 Markus Gans <guru.mail@muenster.de> 2020-03-07 Markus Gans <guru.mail@muenster.de>
* Fixes keyboard input buffer problem when opening a modal dialog * Fixes keyboard input buffer problem when opening a modal dialog
* Exit the move-resize-mode when the close confirmation dialog
is displayed
2020-03-05 Markus Gans <guru.mail@muenster.de> 2020-03-05 Markus Gans <guru.mail@muenster.de>
* Unbuffered reading of keystrokes for better latency * Unbuffered reading of keystrokes for better latency

View File

@ -355,6 +355,7 @@ void FApplication::showParameterUsage()
//---------------------------------------------------------------------- //----------------------------------------------------------------------
void FApplication::closeConfirmationDialog (FWidget* w, FCloseEvent* ev) void FApplication::closeConfirmationDialog (FWidget* w, FCloseEvent* ev)
{ {
app_object->unsetMoveSizeMode();
const int ret = FMessageBox::info ( w, "Quit" const int ret = FMessageBox::info ( w, "Quit"
, "Do you really want\n" , "Do you really want\n"
"to quit the program ?" "to quit the program ?"

View File

@ -1353,63 +1353,56 @@ inline void FDialog::moveSizeKey (FKeyEvent* ev)
{ {
case fc::Fkey_up: case fc::Fkey_up:
moveUp(1); moveUp(1);
ev->accept();
break; break;
case fc::Fkey_down: case fc::Fkey_down:
moveDown(1); moveDown(1);
ev->accept();
break; break;
case fc::Fkey_left: case fc::Fkey_left:
moveLeft(1); moveLeft(1);
ev->accept();
break; break;
case fc::Fkey_right: case fc::Fkey_right:
moveRight(1); moveRight(1);
ev->accept();
break; break;
case fc::Fmkey_up: case fc::Fmkey_up:
case fc::Fkey_sr: case fc::Fkey_sr:
if ( reduceHeight(1) ) reduceHeight(1);
ev->accept();
break; break;
case fc::Fmkey_down: case fc::Fmkey_down:
case fc::Fkey_sf: case fc::Fkey_sf:
if ( expandHeight(1) ) expandHeight(1);
ev->accept();
break; break;
case fc::Fmkey_left: case fc::Fmkey_left:
case fc::Fkey_sleft: case fc::Fkey_sleft:
if ( reduceWidth(1) ) reduceWidth(1);
ev->accept();
break; break;
case fc::Fmkey_right: case fc::Fmkey_right:
case fc::Fkey_sright: case fc::Fkey_sright:
if ( expandWidth(1) ) expandWidth(1);
ev->accept();
break; break;
case fc::Fkey_return: case fc::Fkey_return:
case fc::Fkey_enter: case fc::Fkey_enter:
acceptMoveSize(); acceptMoveSize();
ev->accept();
break; break;
case fc::Fkey_escape: case fc::Fkey_escape:
case fc::Fkey_escape_mintty: case fc::Fkey_escape_mintty:
cancelMoveSize(); cancelMoveSize();
ev->accept();
return; return;
default: default:
break; break;
} }
// Accept for all, so that parent widgets will not receive keystrokes
ev->accept();
} }
//---------------------------------------------------------------------- //----------------------------------------------------------------------