From 2005b4430fa91a89da35e39b356317a72cf86cf0 Mon Sep 17 00:00:00 2001 From: RenaKunisaki Date: Mon, 16 May 2016 15:09:59 -0400 Subject: Fix window focus detection on Linux On Linux, the FindFocus method from wx simply doesn't work, it would on some environment report that dolphin has the focus while it doesn't have it. This is why an alternative method has to be used which is to set a focus flag whenever the render frame gets activated. --- Source/Core/DolphinWX/FrameTools.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'Source/Core/DolphinWX/FrameTools.cpp') diff --git a/Source/Core/DolphinWX/FrameTools.cpp b/Source/Core/DolphinWX/FrameTools.cpp index a4e3a0ae52..fb85d22cc4 100644 --- a/Source/Core/DolphinWX/FrameTools.cpp +++ b/Source/Core/DolphinWX/FrameTools.cpp @@ -733,8 +733,6 @@ void CFrame::StartGame(const std::string& filename) wxTheApp->Bind(wxEVT_MIDDLE_DOWN, &CFrame::OnMouse, this); wxTheApp->Bind(wxEVT_MIDDLE_UP, &CFrame::OnMouse, this); wxTheApp->Bind(wxEVT_MOTION, &CFrame::OnMouse, this); - wxTheApp->Bind(wxEVT_SET_FOCUS, &CFrame::OnFocusChange, this); - wxTheApp->Bind(wxEVT_KILL_FOCUS, &CFrame::OnFocusChange, this); m_RenderParent->Bind(wxEVT_SIZE, &CFrame::OnRenderParentResize, this); } } @@ -926,6 +924,8 @@ void CFrame::OnStopped() m_RenderFrame->SetWindowStyle(m_RenderFrame->GetWindowStyle() & ~wxSTAY_ON_TOP); } m_RenderParent = nullptr; + m_bRendererHasFocus = false; + m_RenderFrame = nullptr; // Clean framerate indications from the status bar. GetStatusBar()->SetStatusText(" ", 0); -- cgit v1.2.3