Add an "affinity" option to webPreferences

This commit is contained in:
Emmanuel Kimmerlin 2017-12-13 11:57:41 +01:00 committed by Cheng Zhao
parent 8d55334016
commit 9c1b47361f
6 changed files with 242 additions and 12 deletions

View file

@ -113,6 +113,8 @@ class AtomBrowserClient : public brightray::BrowserClient,
base::TerminationStatus status,
int exit_code) override;
void SiteInstanceDeleting(content::SiteInstance* site_instance) override;
private:
bool ShouldCreateNewSiteInstance(content::RenderFrameHost* render_frame_host,
content::BrowserContext* browser_context,
@ -134,6 +136,10 @@ class AtomBrowserClient : public brightray::BrowserClient,
std::map<int, ProcessPreferences> process_preferences_;
std::map<int, base::ProcessId> render_process_host_pids_;
// list of site per affinity. weak_ptr to prevent instance locking
std::map<std::string, content::SiteInstance*> site_per_affinities;
base::Lock process_preferences_lock_;
std::unique_ptr<AtomResourceDispatcherHostDelegate>