Remove NativeWindow::FromWebContents

This commit is contained in:
Cheng Zhao 2018-03-06 15:18:45 +09:00
parent eea4e60b73
commit 702f1631a3
4 changed files with 11 additions and 19 deletions

View file

@ -64,8 +64,10 @@ void AtomJavaScriptDialogManager::RunJavaScriptDialog(
checkbox_string = "Prevent this app from creating additional dialogs"; checkbox_string = "Prevent this app from creating additional dialogs";
} }
} }
auto* relay = NativeWindowRelay::FromWebContents(web_contents);
atom::ShowMessageBox( atom::ShowMessageBox(
NativeWindow::FromWebContents(web_contents), relay ? relay->window.get() : nullptr,
atom::MessageBoxType::MESSAGE_BOX_TYPE_NONE, buttons, -1, 0, atom::MessageBoxType::MESSAGE_BOX_TYPE_NONE, buttons, -1, 0,
atom::MessageBoxOptions::MESSAGE_BOX_NONE, "", atom::MessageBoxOptions::MESSAGE_BOX_NONE, "",
base::UTF16ToUTF8(message_text), "", checkbox_string, base::UTF16ToUTF8(message_text), "", checkbox_string,

View file

@ -76,16 +76,6 @@ NativeWindow::~NativeWindow() {
NotifyWindowClosed(); NotifyWindowClosed();
} }
// static
NativeWindow* NativeWindow::FromWebContents(
content::WebContents* web_contents) {
for (const auto& window : WindowList::GetWindows()) {
if (window->web_contents() == web_contents)
return window;
}
return nullptr;
}
void NativeWindow::InitFromOptions(const mate::Dictionary& options) { void NativeWindow::InitFromOptions(const mate::Dictionary& options) {
// Setup window from options. // Setup window from options.
int x = -1, y = -1; int x = -1, y = -1;

View file

@ -64,9 +64,6 @@ class NativeWindow : public base::SupportsUserData,
const mate::Dictionary& options, const mate::Dictionary& options,
NativeWindow* parent = nullptr); NativeWindow* parent = nullptr);
// Find a window from its WebContents
static NativeWindow* FromWebContents(content::WebContents* web_contents);
void InitFromOptions(const mate::Dictionary& options); void InitFromOptions(const mate::Dictionary& options);
virtual void Close() = 0; virtual void Close() = 0;

View file

@ -209,11 +209,14 @@ void WebContentsPreferences::AppendExtraCommandLineSwitches(
if (manager) { if (manager) {
auto embedder = manager->GetEmbedder(guest_instance_id); auto embedder = manager->GetEmbedder(guest_instance_id);
if (embedder) { if (embedder) {
auto window = NativeWindow::FromWebContents(embedder); auto* relay = NativeWindowRelay::FromWebContents(web_contents);
if (window) { if (relay) {
const bool visible = window->IsVisible() && !window->IsMinimized(); auto* window = relay->window.get();
if (!visible) { if (window) {
command_line->AppendSwitch(switches::kHiddenPage); const bool visible = window->IsVisible() && !window->IsMinimized();
if (!visible) {
command_line->AppendSwitch(switches::kHiddenPage);
}
} }
} }
} }