Use our new way to restart renderer process
As a side effect, it will also restart the renderer process of webview tag guests.
This commit is contained in:
parent
ee45f0e8bc
commit
b527846ee4
2 changed files with 17 additions and 16 deletions
|
@ -119,22 +119,22 @@ void AtomBrowserClient::OverrideWebkitPrefs(
|
||||||
window->OverrideWebkitPrefs(prefs);
|
window->OverrideWebkitPrefs(prefs);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool AtomBrowserClient::ShouldSwapBrowsingInstancesForNavigation(
|
|
||||||
content::SiteInstance* site_instance,
|
|
||||||
const GURL& current_url,
|
|
||||||
const GURL& new_url) {
|
|
||||||
if (site_instance->HasProcess())
|
|
||||||
dying_render_process_ = site_instance->GetProcess();
|
|
||||||
|
|
||||||
// Restart renderer process for all navigations, this relies on a patch to
|
|
||||||
// Chromium: http://git.io/_PaNyg.
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
std::string AtomBrowserClient::GetApplicationLocale() {
|
std::string AtomBrowserClient::GetApplicationLocale() {
|
||||||
return l10n_util::GetApplicationLocale("");
|
return l10n_util::GetApplicationLocale("");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AtomBrowserClient::OverrideSiteInstanceForNavigation(
|
||||||
|
content::BrowserContext* browser_context,
|
||||||
|
content::SiteInstance* current_instance,
|
||||||
|
const GURL& url,
|
||||||
|
content::SiteInstance** new_instance) {
|
||||||
|
if (current_instance->HasProcess())
|
||||||
|
dying_render_process_ = current_instance->GetProcess();
|
||||||
|
|
||||||
|
// Restart renderer process for all navigations.
|
||||||
|
*new_instance = content::SiteInstance::CreateForURL(browser_context, url);
|
||||||
|
}
|
||||||
|
|
||||||
void AtomBrowserClient::AppendExtraCommandLineSwitches(
|
void AtomBrowserClient::AppendExtraCommandLineSwitches(
|
||||||
base::CommandLine* command_line,
|
base::CommandLine* command_line,
|
||||||
int child_process_id) {
|
int child_process_id) {
|
||||||
|
|
|
@ -27,11 +27,12 @@ class AtomBrowserClient : public brightray::BrowserClient {
|
||||||
void ResourceDispatcherHostCreated() override;
|
void ResourceDispatcherHostCreated() override;
|
||||||
void OverrideWebkitPrefs(content::RenderViewHost* render_view_host,
|
void OverrideWebkitPrefs(content::RenderViewHost* render_view_host,
|
||||||
content::WebPreferences* prefs) override;
|
content::WebPreferences* prefs) override;
|
||||||
bool ShouldSwapBrowsingInstancesForNavigation(
|
|
||||||
content::SiteInstance* site_instance,
|
|
||||||
const GURL& current_url,
|
|
||||||
const GURL& new_url) override;
|
|
||||||
std::string GetApplicationLocale() override;
|
std::string GetApplicationLocale() override;
|
||||||
|
void OverrideSiteInstanceForNavigation(
|
||||||
|
content::BrowserContext* browser_context,
|
||||||
|
content::SiteInstance* current_instance,
|
||||||
|
const GURL& dest_url,
|
||||||
|
content::SiteInstance** new_instance);
|
||||||
void AppendExtraCommandLineSwitches(base::CommandLine* command_line,
|
void AppendExtraCommandLineSwitches(base::CommandLine* command_line,
|
||||||
int child_process_id) override;
|
int child_process_id) override;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue