diff --git a/Source/Core/DolphinWX/Src/Frame.cpp b/Source/Core/DolphinWX/Src/Frame.cpp index ed04d0b1a5..6d43afd6e0 100644 --- a/Source/Core/DolphinWX/Src/Frame.cpp +++ b/Source/Core/DolphinWX/Src/Frame.cpp @@ -180,6 +180,25 @@ CFrame::CFrame(wxFrame* parent, UpdateGUI(); } +#ifdef _WIN32 + +WXLRESULT CFrame::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam) +{ + switch (nMsg) + { + case WM_SYSCOMMAND: + switch (wParam) + { + case SC_SCREENSAVE: + case SC_MONITORPOWER: + return 0; + } + default: + return wxFrame::MSWWindowProc(nMsg, wParam, lParam); + } +} + +#endif void CFrame::CreateMenu() { diff --git a/Source/Core/DolphinWX/Src/Frame.h b/Source/Core/DolphinWX/Src/Frame.h index 96815dbaa3..940fd93b26 100644 --- a/Source/Core/DolphinWX/Src/Frame.h +++ b/Source/Core/DolphinWX/Src/Frame.h @@ -50,6 +50,10 @@ class CFrame void RecreateToolbar(); void CreateMenu(); +#ifdef _WIN32 + // Override window proc for tricks like screensaver disabling + WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam); +#endif // event handler void OnQuit(wxCommandEvent& event); void OnHelp(wxCommandEvent& event);