Merge pull request #8990 from dobrykafe/pr-editor-line-input

Editor: allow non-conflicting keybinds while line input is active
This commit is contained in:
Dennis Felsing 2024-09-18 21:48:07 +00:00 committed by GitHub
commit e72ace24f2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -7827,11 +7827,21 @@ void CEditor::Render()
else if(m_Mode == MODE_SOUNDS)
DoToolbarSounds(ToolBar);
if(m_Dialog == DIALOG_NONE && CLineInput::GetActiveInput() == nullptr)
if(m_Dialog == DIALOG_NONE)
{
const bool ModPressed = Input()->ModifierIsPressed();
const bool ShiftPressed = Input()->ShiftIsPressed();
const bool AltPressed = Input()->AltIsPressed();
if(CLineInput::GetActiveInput() == nullptr)
{
// ctrl+a to append map
if(Input()->KeyPress(KEY_A) && ModPressed)
{
InvokeFileDialog(IStorage::TYPE_ALL, FILETYPE_MAP, "Append map", "Append", "maps", false, CallbackAppendMap, this);
}
}
// ctrl+n to create new map
if(Input()->KeyPress(KEY_N) && ModPressed)
{
@ -7849,11 +7859,6 @@ void CEditor::Render()
m_aFileName[0] = 0;
}
}
// ctrl+a to append map
if(Input()->KeyPress(KEY_A) && ModPressed)
{
InvokeFileDialog(IStorage::TYPE_ALL, FILETYPE_MAP, "Append map", "Append", "maps", false, CallbackAppendMap, this);
}
// ctrl+o or ctrl+l to open
if((Input()->KeyPress(KEY_O) || Input()->KeyPress(KEY_L)) && ModPressed)
{