From cd42933f41905893a78824e4b4fcabcdf01494f4 Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Thu, 14 Jan 2021 06:46:54 +0900 Subject: [PATCH] chore: remove ancient Browser::Focus implementation on Windows (#27279) --- shell/browser/browser.cc | 12 ++++++++++++ shell/browser/browser_linux.cc | 10 ---------- shell/browser/browser_win.cc | 19 ------------------- 3 files changed, 12 insertions(+), 29 deletions(-) diff --git a/shell/browser/browser.cc b/shell/browser/browser.cc index 759c7399d7f6..481a18ebbd7e 100644 --- a/shell/browser/browser.cc +++ b/shell/browser/browser.cc @@ -64,6 +64,18 @@ Browser* Browser::Get() { return ElectronBrowserMainParts::Get()->browser(); } +#if defined(OS_WIN) || defined(OS_LINUX) +void Browser::Focus(gin::Arguments* args) { + // Focus on the first visible window. + for (auto* const window : WindowList::GetWindows()) { + if (window->IsVisible()) { + window->Focus(true); + break; + } + } +} +#endif + void Browser::Quit() { if (is_quiting_) return; diff --git a/shell/browser/browser_linux.cc b/shell/browser/browser_linux.cc index 7631d270ecba..48df7eaf6553 100644 --- a/shell/browser/browser_linux.cc +++ b/shell/browser/browser_linux.cc @@ -84,16 +84,6 @@ bool SetDefaultWebClient(const std::string& protocol) { return ran_ok && exit_code == EXIT_SUCCESS; } -void Browser::Focus(gin::Arguments* args) { - // Focus on the first visible window. - for (auto* const window : WindowList::GetWindows()) { - if (window->IsVisible()) { - window->Focus(true); - break; - } - } -} - void Browser::AddRecentDocument(const base::FilePath& path) {} void Browser::ClearRecentDocuments() {} diff --git a/shell/browser/browser_win.cc b/shell/browser/browser_win.cc index bd4faef48476..cb025c10d6aa 100644 --- a/shell/browser/browser_win.cc +++ b/shell/browser/browser_win.cc @@ -43,19 +43,6 @@ namespace electron { namespace { -BOOL CALLBACK WindowsEnumerationHandler(HWND hwnd, LPARAM param) { - DWORD target_process_id = *reinterpret_cast(param); - DWORD process_id = 0; - - GetWindowThreadProcessId(hwnd, &process_id); - if (process_id == target_process_id) { - SetFocus(hwnd); - return FALSE; - } - - return TRUE; -} - bool GetProcessExecPath(base::string16* exe) { base::FilePath path; if (!base::PathService::Get(base::FILE_EXE, &path)) { @@ -292,12 +279,6 @@ Browser::UserTask::UserTask() = default; Browser::UserTask::UserTask(const UserTask&) = default; Browser::UserTask::~UserTask() = default; -void Browser::Focus(gin::Arguments* args) { - // On Windows we just focus on the first window found for this process. - DWORD pid = GetCurrentProcessId(); - EnumWindows(&WindowsEnumerationHandler, reinterpret_cast(&pid)); -} - void GetFileIcon(const base::FilePath& path, v8::Isolate* isolate, base::CancelableTaskTracker* cancelable_task_tracker_,