From e3f7b0274ca1a4e08e44432418fcb4bf079d6505 Mon Sep 17 00:00:00 2001 From: spycrab Date: Sat, 16 Jun 2018 21:38:14 +0200 Subject: [PATCH] Qt/HotkeyScheduler: Fix 3D Mode hotkeys not behaving properly --- Source/Core/DolphinQt2/HotkeyScheduler.cpp | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/Source/Core/DolphinQt2/HotkeyScheduler.cpp b/Source/Core/DolphinQt2/HotkeyScheduler.cpp index 77b3cfa71b..49dc69dd67 100644 --- a/Source/Core/DolphinQt2/HotkeyScheduler.cpp +++ b/Source/Core/DolphinQt2/HotkeyScheduler.cpp @@ -348,7 +348,7 @@ void HotkeyScheduler::Run() emit StateLoadSlotHotkey(); // Stereoscopy - if (IsHotkey(HK_TOGGLE_STEREO_SBS) || IsHotkey(HK_TOGGLE_STEREO_TAB)) + if (IsHotkey(HK_TOGGLE_STEREO_SBS)) { if (Config::Get(Config::GFX_STEREO_MODE) != StereoMode::SBS) { @@ -356,8 +356,23 @@ void HotkeyScheduler::Run() if (Config::Get(Config::GFX_ENHANCE_POST_SHADER) == DUBOIS_ALGORITHM_SHADER) Config::SetCurrent(Config::GFX_ENHANCE_POST_SHADER, ""); - Config::SetCurrent(Config::GFX_STEREO_MODE, - IsHotkey(HK_TOGGLE_STEREO_SBS) ? StereoMode::SBS : StereoMode::TAB); + Config::SetCurrent(Config::GFX_STEREO_MODE, StereoMode::SBS); + } + else + { + Config::SetCurrent(Config::GFX_STEREO_MODE, StereoMode::Off); + } + } + + if (IsHotkey(HK_TOGGLE_STEREO_TAB)) + { + if (Config::Get(Config::GFX_STEREO_MODE) != StereoMode::TAB) + { + // Disable post-processing shader, as stereoscopy itself is currently a shader + if (Config::Get(Config::GFX_ENHANCE_POST_SHADER) == DUBOIS_ALGORITHM_SHADER) + Config::SetCurrent(Config::GFX_ENHANCE_POST_SHADER, ""); + + Config::SetCurrent(Config::GFX_STEREO_MODE, StereoMode::TAB); } else {