Add keyboard and gamepad shortcuts for control panel
This commit is contained in:
parent
8a7be971a4
commit
3767a9eac3
4 changed files with 27 additions and 0 deletions
|
|
@ -443,6 +443,19 @@ void SdlInputHandler::handleControllerButtonEvent(SDL_ControllerButtonEvent* eve
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (state->buttons == (BACK_FLAG | LB_FLAG | RB_FLAG | B_FLAG)) {
|
||||||
|
SDL_LogInfo(SDL_LOG_CATEGORY_APPLICATION,
|
||||||
|
"Detected control panel toggle gamepad combo");
|
||||||
|
|
||||||
|
Session::get()->toggleControlPanelVisibility();
|
||||||
|
|
||||||
|
if (isGamepadInputAllowed()) {
|
||||||
|
LiSendMultiControllerEvent(state->index, m_GamepadMask,
|
||||||
|
0, 0, 0, 0, 0, 0, 0);
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (state->buttons == (BACK_FLAG | LB_FLAG | RB_FLAG | Y_FLAG)) {
|
if (state->buttons == (BACK_FLAG | LB_FLAG | RB_FLAG | Y_FLAG)) {
|
||||||
SDL_LogInfo(SDL_LOG_CATEGORY_APPLICATION,
|
SDL_LogInfo(SDL_LOG_CATEGORY_APPLICATION,
|
||||||
"Detected keyboard/mouse input toggle gamepad combo");
|
"Detected keyboard/mouse input toggle gamepad combo");
|
||||||
|
|
|
||||||
|
|
@ -86,6 +86,11 @@ SdlInputHandler::SdlInputHandler(StreamingPreferences& prefs, int streamWidth, i
|
||||||
m_SpecialKeyCombos[KeyComboToggleStatsOverlay].scanCode = SDL_SCANCODE_S;
|
m_SpecialKeyCombos[KeyComboToggleStatsOverlay].scanCode = SDL_SCANCODE_S;
|
||||||
m_SpecialKeyCombos[KeyComboToggleStatsOverlay].enabled = true;
|
m_SpecialKeyCombos[KeyComboToggleStatsOverlay].enabled = true;
|
||||||
|
|
||||||
|
m_SpecialKeyCombos[KeyComboToggleControlPanel].keyCombo = KeyComboToggleControlPanel;
|
||||||
|
m_SpecialKeyCombos[KeyComboToggleControlPanel].keyCode = SDLK_p;
|
||||||
|
m_SpecialKeyCombos[KeyComboToggleControlPanel].scanCode = SDL_SCANCODE_P;
|
||||||
|
m_SpecialKeyCombos[KeyComboToggleControlPanel].enabled = true;
|
||||||
|
|
||||||
m_SpecialKeyCombos[KeyComboToggleMouseMode].keyCombo = KeyComboToggleMouseMode;
|
m_SpecialKeyCombos[KeyComboToggleMouseMode].keyCombo = KeyComboToggleMouseMode;
|
||||||
m_SpecialKeyCombos[KeyComboToggleMouseMode].keyCode = SDLK_m;
|
m_SpecialKeyCombos[KeyComboToggleMouseMode].keyCode = SDLK_m;
|
||||||
m_SpecialKeyCombos[KeyComboToggleMouseMode].scanCode = SDL_SCANCODE_M;
|
m_SpecialKeyCombos[KeyComboToggleMouseMode].scanCode = SDL_SCANCODE_M;
|
||||||
|
|
|
||||||
|
|
@ -163,6 +163,7 @@ private:
|
||||||
KeyComboUngrabInput,
|
KeyComboUngrabInput,
|
||||||
KeyComboToggleFullScreen,
|
KeyComboToggleFullScreen,
|
||||||
KeyComboToggleStatsOverlay,
|
KeyComboToggleStatsOverlay,
|
||||||
|
KeyComboToggleControlPanel,
|
||||||
KeyComboToggleMouseMode,
|
KeyComboToggleMouseMode,
|
||||||
KeyComboToggleCursorHide,
|
KeyComboToggleCursorHide,
|
||||||
KeyComboToggleMinimize,
|
KeyComboToggleMinimize,
|
||||||
|
|
|
||||||
|
|
@ -64,6 +64,14 @@ void SdlInputHandler::performSpecialKeyCombo(KeyCombo combo)
|
||||||
!Session::get()->getOverlayManager().isOverlayEnabled(Overlay::OverlayDebug));
|
!Session::get()->getOverlayManager().isOverlayEnabled(Overlay::OverlayDebug));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case KeyComboToggleControlPanel:
|
||||||
|
SDL_LogInfo(SDL_LOG_CATEGORY_APPLICATION,
|
||||||
|
"Detected control panel toggle combo");
|
||||||
|
if (auto session = Session::get(); session != nullptr) {
|
||||||
|
session->toggleControlPanelVisibility();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case KeyComboToggleMouseMode:
|
case KeyComboToggleMouseMode:
|
||||||
SDL_LogInfo(SDL_LOG_CATEGORY_APPLICATION,
|
SDL_LogInfo(SDL_LOG_CATEGORY_APPLICATION,
|
||||||
"Detected mouse mode toggle combo");
|
"Detected mouse mode toggle combo");
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue