summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinWX/Frame.cpp
diff options
context:
space:
mode:
authorcomex <comexk@gmail.com>2014-09-30 01:28:01 -0400
committercomex <comexk@gmail.com>2014-09-30 01:35:48 -0400
commit8fed5aa492343e2d0a3455dd75961ac75cde4aba (patch)
tree0a30db1a902be7458a9b77a120b4941916f915bc /Source/Core/DolphinWX/Frame.cpp
parentb5ebace92e6645b50908c3405626f4a9eb303367 (diff)
Fix focus detection on OS X by replacing wxGetActiveWindow with wxWindow::FindFocus.
wxGetActiveWindow is implemented as "return NULL" on OS X, while wxWindow::FindFocus works. On Windows, the difference is in the use of GetActiveWindow() vs. GetForegroundWindow(). A MSDN comment says: > A system has only one active window, which GetForegroundWindow() > returns. GetActiveWindow() seems to return the same window as > GetForegroundWindow() if the foreground window belongs to the current > thread. Otherwise, it always returns null, rather than the topmost > window of the calling thread. Since we are on the GUI thread, it shouldn't make any difference.
Diffstat (limited to 'Source/Core/DolphinWX/Frame.cpp')
-rw-r--r--Source/Core/DolphinWX/Frame.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/Source/Core/DolphinWX/Frame.cpp b/Source/Core/DolphinWX/Frame.cpp
index 8b806ab34a..519993e5b5 100644
--- a/Source/Core/DolphinWX/Frame.cpp
+++ b/Source/Core/DolphinWX/Frame.cpp
@@ -708,7 +708,7 @@ void CFrame::OnHostMessage(wxCommandEvent& event)
wxString caption = event.GetString().BeforeFirst(':');
wxString text = event.GetString().AfterFirst(':');
bPanicResult = (wxYES == wxMessageBox(text,
- caption, event.GetInt() ? wxYES_NO : wxOK, wxGetActiveWindow()));
+ caption, event.GetInt() ? wxYES_NO : wxOK, wxWindow::FindFocus()));
panic_event.Set();
}
break;
@@ -805,11 +805,11 @@ bool CFrame::UIHasFocus()
// UIHasFocus should return true any time any one of our UI
// windows has the focus, including any dialogs or other windows.
//
- // wxGetActiveWindow() returns the current wxWindow which has
+ // wxWindow::FindFocus() returns the current wxWindow which has
// focus. If it's not one of our windows, then it will return
// null.
- wxWindow *focusWindow = wxGetActiveWindow();
+ wxWindow *focusWindow = wxWindow::FindFocus();
return (focusWindow != nullptr);
}