Refactor NativeWindow (Part 6): Move NativeWindow bindings to api::TopLevelWindow (#12596)

* Add atom::api::TopLevelWindow

* Make BrowserWindow inherit TopLevelWindow

* Fix reading from wrong weak map

* Read options after setting content view

* OnWindowClosed is not guarenteed to run now

* Fix the offscreen hack in BrowserWindow

* Fix building on Linux

* Fix tests on Linux

* Fix building on Windows
This commit is contained in:
Cheng Zhao 2018-04-14 11:04:23 +09:00 committed by GitHub
parent 23bb3bd963
commit 858828d343
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 1406 additions and 1256 deletions

View file

@ -43,7 +43,7 @@ void MenuViews::PopupAt(BrowserWindow* window,
atom::UnresponsiveSuppressor suppressor;
// Show the menu.
int32_t window_id = window->ID();
int32_t window_id = window->weak_map_id();
auto close_callback = base::Bind(
&MenuViews::OnClosed, weak_factory_.GetWeakPtr(), window_id, callback);
menu_runners_[window_id] = std::unique_ptr<MenuRunner>(new MenuRunner(