summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinWX/Frame.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/DolphinWX/Frame.cpp')
-rw-r--r--Source/Core/DolphinWX/Frame.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/Source/Core/DolphinWX/Frame.cpp b/Source/Core/DolphinWX/Frame.cpp
index ff82e1cd65..3678d349c5 100644
--- a/Source/Core/DolphinWX/Frame.cpp
+++ b/Source/Core/DolphinWX/Frame.cpp
@@ -1121,6 +1121,33 @@ void CFrame::OnKeyUp(wxKeyEvent& event)
void CFrame::OnMouse(wxMouseEvent& event)
{
+ if (SConfig::GetInstance().m_PauseOnFocusLost &&
+ event.GetEventObject() == (wxObject*)m_RenderParent)
+ {
+ if (event.Leaving())
+ {
+ if (Core::GetState() == Core::CORE_RUN)
+ {
+ Core::SetState(Core::CORE_PAUSE);
+ if (SConfig::GetInstance().m_LocalCoreStartupParameter.bHideCursor)
+ m_RenderParent->SetCursor(wxNullCursor);
+ Core::UpdateTitle();
+ }
+ UpdateGUI();
+ }
+ else if (event.Entering())
+ {
+ if (Core::GetState() == Core::CORE_PAUSE)
+ {
+ Core::SetState(Core::CORE_RUN);
+ if (SConfig::GetInstance().m_LocalCoreStartupParameter.bHideCursor)
+ m_RenderParent->SetCursor(wxCURSOR_BLANK);
+ }
+ UpdateGUI();
+ }
+ }
+
+
// next handlers are all for FreeLook, so we don't need to check them if disabled
if (!g_Config.bFreeLook)
{