OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_NACL_HOST_NACL_BROWSER_DELEGATE_IMPL_H_ | 5 #ifndef CHROME_BROWSER_NACL_HOST_NACL_BROWSER_DELEGATE_IMPL_H_ |
6 #define CHROME_BROWSER_NACL_HOST_NACL_BROWSER_DELEGATE_IMPL_H_ | 6 #define CHROME_BROWSER_NACL_HOST_NACL_BROWSER_DELEGATE_IMPL_H_ |
7 | 7 |
8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
9 #include "components/nacl/browser/nacl_browser_delegate.h" | 9 #include "components/nacl/browser/nacl_browser_delegate.h" |
10 #include "extensions/common/url_pattern.h" | 10 #include "extensions/common/url_pattern.h" |
11 | 11 |
| 12 namespace extensions { |
| 13 class InfoMap; |
| 14 } |
| 15 |
12 class ProfileManager; | 16 class ProfileManager; |
13 | 17 |
14 class NaClBrowserDelegateImpl : public NaClBrowserDelegate { | 18 class NaClBrowserDelegateImpl : public NaClBrowserDelegate { |
15 public: | 19 public: |
16 explicit NaClBrowserDelegateImpl(ProfileManager* profile_manager); | 20 explicit NaClBrowserDelegateImpl(ProfileManager* profile_manager); |
17 virtual ~NaClBrowserDelegateImpl(); | 21 virtual ~NaClBrowserDelegateImpl(); |
18 | 22 |
19 virtual void ShowMissingArchInfobar(int render_process_id, | 23 virtual void ShowMissingArchInfobar(int render_process_id, |
20 int render_view_id) OVERRIDE; | 24 int render_view_id) OVERRIDE; |
21 virtual bool DialogsAreSuppressed() OVERRIDE; | 25 virtual bool DialogsAreSuppressed() OVERRIDE; |
22 virtual bool GetCacheDirectory(base::FilePath* cache_dir) OVERRIDE; | 26 virtual bool GetCacheDirectory(base::FilePath* cache_dir) OVERRIDE; |
23 virtual bool GetPluginDirectory(base::FilePath* plugin_dir) OVERRIDE; | 27 virtual bool GetPluginDirectory(base::FilePath* plugin_dir) OVERRIDE; |
24 virtual bool GetPnaclDirectory(base::FilePath* pnacl_dir) OVERRIDE; | 28 virtual bool GetPnaclDirectory(base::FilePath* pnacl_dir) OVERRIDE; |
25 virtual bool GetUserDirectory(base::FilePath* user_dir) OVERRIDE; | 29 virtual bool GetUserDirectory(base::FilePath* user_dir) OVERRIDE; |
26 virtual std::string GetVersionString() const OVERRIDE; | 30 virtual std::string GetVersionString() const OVERRIDE; |
27 virtual ppapi::host::HostFactory* CreatePpapiHostFactory( | 31 virtual ppapi::host::HostFactory* CreatePpapiHostFactory( |
28 content::BrowserPpapiHost* ppapi_host) OVERRIDE; | 32 content::BrowserPpapiHost* ppapi_host) OVERRIDE; |
29 virtual bool MapUrlToLocalFilePath(const GURL& url, | 33 virtual bool MapUrlToLocalFilePath(const GURL& url, |
30 bool is_blocking, | 34 bool is_blocking, |
31 const base::FilePath& profile_directory, | 35 const base::FilePath& profile_directory, |
32 base::FilePath* file_path) OVERRIDE; | 36 base::FilePath* file_path) OVERRIDE; |
33 virtual void SetDebugPatterns(std::string debug_patterns) OVERRIDE; | 37 virtual void SetDebugPatterns(std::string debug_patterns) OVERRIDE; |
34 virtual bool URLMatchesDebugPatterns(const GURL& manifest_url) OVERRIDE; | 38 virtual bool URLMatchesDebugPatterns(const GURL& manifest_url) OVERRIDE; |
35 virtual content::BrowserPpapiHost::OnKeepaliveCallback | 39 virtual content::BrowserPpapiHost::OnKeepaliveCallback |
36 GetOnKeepaliveCallback() OVERRIDE; | 40 GetOnKeepaliveCallback() OVERRIDE; |
| 41 virtual bool IsNonSfiModeAllowed(const base::FilePath& profile_directory, |
| 42 const GURL& manifest_url) OVERRIDE; |
37 | 43 |
38 private: | 44 private: |
| 45 scoped_refptr<extensions::InfoMap> GetExtensionInfoMap( |
| 46 const base::FilePath& profile_directory); |
39 ProfileManager* profile_manager_; | 47 ProfileManager* profile_manager_; |
40 std::vector<URLPattern> debug_patterns_; | 48 std::vector<URLPattern> debug_patterns_; |
41 bool inverse_debug_patterns_; | 49 bool inverse_debug_patterns_; |
| 50 std::set<std::string> allowed_nonsfi_origins_; |
42 DISALLOW_COPY_AND_ASSIGN(NaClBrowserDelegateImpl); | 51 DISALLOW_COPY_AND_ASSIGN(NaClBrowserDelegateImpl); |
43 }; | 52 }; |
44 | 53 |
45 | 54 |
46 #endif // CHROME_BROWSER_NACL_HOST_NACL_BROWSER_DELEGATE_IMPL_H_ | 55 #endif // CHROME_BROWSER_NACL_HOST_NACL_BROWSER_DELEGATE_IMPL_H_ |
OLD | NEW |