Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(24)

Side by Side Diff: chrome/browser/chrome_content_browser_client.h

Issue 356543003: Audit the last usage of Geolocation and Notification permissions. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Jam nits. Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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_CHROME_CONTENT_BROWSER_CLIENT_H_ 5 #ifndef CHROME_BROWSER_CHROME_CONTENT_BROWSER_CLIENT_H_
6 #define CHROME_BROWSER_CHROME_CONTENT_BROWSER_CLIENT_H_ 6 #define CHROME_BROWSER_CHROME_CONTENT_BROWSER_CLIENT_H_
7 7
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 #include <utility> 10 #include <utility>
11 #include <vector> 11 #include <vector>
12 12
13 #include "base/compiler_specific.h" 13 #include "base/compiler_specific.h"
14 #include "base/gtest_prod_util.h" 14 #include "base/gtest_prod_util.h"
15 #include "base/memory/scoped_ptr.h"
15 #include "chrome/common/chrome_version_info.h" 16 #include "chrome/common/chrome_version_info.h"
16 #include "content/public/browser/content_browser_client.h" 17 #include "content/public/browser/content_browser_client.h"
17 18
18 #if defined(OS_ANDROID)
19 #include "base/memory/scoped_ptr.h"
20 #endif
21
22 namespace base { 19 namespace base {
23 class CommandLine; 20 class CommandLine;
24 } 21 }
25 22
26 namespace content { 23 namespace content {
27 class QuotaPermissionContext; 24 class QuotaPermissionContext;
28 } 25 }
29 26
30 namespace extensions { 27 namespace extensions {
31 class BrowserPermissionsPolicyDelegate; 28 class BrowserPermissionsPolicyDelegate;
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after
206 bool user_gesture, 203 bool user_gesture,
207 base::Callback<void(bool)> result_callback, 204 base::Callback<void(bool)> result_callback,
208 base::Closure* cancel_callback) OVERRIDE; 205 base::Closure* cancel_callback) OVERRIDE;
209 virtual void RequestMidiSysExPermission( 206 virtual void RequestMidiSysExPermission(
210 content::WebContents* web_contents, 207 content::WebContents* web_contents,
211 int bridge_id, 208 int bridge_id,
212 const GURL& requesting_frame, 209 const GURL& requesting_frame,
213 bool user_gesture, 210 bool user_gesture,
214 base::Callback<void(bool)> result_callback, 211 base::Callback<void(bool)> result_callback,
215 base::Closure* cancel_callback) OVERRIDE; 212 base::Closure* cancel_callback) OVERRIDE;
213 virtual void DidUseGeolocationPermission(content::WebContents* web_contents,
214 const GURL& frame_url,
215 const GURL& main_frame_url) OVERRIDE;
216 virtual void RequestProtectedMediaIdentifierPermission( 216 virtual void RequestProtectedMediaIdentifierPermission(
217 content::WebContents* web_contents, 217 content::WebContents* web_contents,
218 const GURL& origin, 218 const GURL& origin,
219 base::Callback<void(bool)> result_callback, 219 base::Callback<void(bool)> result_callback,
220 base::Closure* cancel_callback) OVERRIDE; 220 base::Closure* cancel_callback) OVERRIDE;
221 virtual bool CanCreateWindow(const GURL& opener_url, 221 virtual bool CanCreateWindow(const GURL& opener_url,
222 const GURL& opener_top_level_frame_url, 222 const GURL& opener_top_level_frame_url,
223 const GURL& source_origin, 223 const GURL& source_origin,
224 WindowContainerType container_type, 224 WindowContainerType container_type,
225 const GURL& target_url, 225 const GURL& target_url,
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
288 int child_process_id, 288 int child_process_id,
289 std::vector<content::FileDescriptorInfo>* mappings) OVERRIDE; 289 std::vector<content::FileDescriptorInfo>* mappings) OVERRIDE;
290 #endif 290 #endif
291 #if defined(OS_WIN) 291 #if defined(OS_WIN)
292 virtual const wchar_t* GetResourceDllName() OVERRIDE; 292 virtual const wchar_t* GetResourceDllName() OVERRIDE;
293 virtual void PreSpawnRenderer(sandbox::TargetPolicy* policy, 293 virtual void PreSpawnRenderer(sandbox::TargetPolicy* policy,
294 bool* success) OVERRIDE; 294 bool* success) OVERRIDE;
295 #endif 295 #endif
296 296
297 private: 297 private:
298 friend class DisableWebRtcEncryptionFlagTest;
299
298 #if defined(ENABLE_WEBRTC) 300 #if defined(ENABLE_WEBRTC)
299 // Copies disable WebRTC encryption switch depending on the channel. 301 // Copies disable WebRTC encryption switch depending on the channel.
300 static void MaybeCopyDisableWebRtcEncryptionSwitch( 302 static void MaybeCopyDisableWebRtcEncryptionSwitch(
301 base::CommandLine* to_command_line, 303 base::CommandLine* to_command_line,
302 const base::CommandLine& from_command_line, 304 const base::CommandLine& from_command_line,
303 VersionInfo::Channel channel); 305 VersionInfo::Channel channel);
304 #endif 306 #endif
305 307
306 void FileSystemAccessed( 308 void FileSystemAccessed(
307 const GURL& url, 309 const GURL& url,
308 const std::vector<std::pair<int, int> >& render_frames, 310 const std::vector<std::pair<int, int> >& render_frames,
309 base::Callback<void(bool)> callback, 311 base::Callback<void(bool)> callback,
310 bool allow); 312 bool allow);
311 313
312 #if defined(ENABLE_EXTENSIONS) 314 #if defined(ENABLE_EXTENSIONS)
313 void GuestPermissionRequestHelper( 315 void GuestPermissionRequestHelper(
314 const GURL& url, 316 const GURL& url,
315 const std::vector<std::pair<int, int> >& render_frames, 317 const std::vector<std::pair<int, int> >& render_frames,
316 base::Callback<void(bool)> callback, 318 base::Callback<void(bool)> callback,
317 bool allow); 319 bool allow);
318 320
319 static void RequestFileSystemPermissionOnUIThread( 321 static void RequestFileSystemPermissionOnUIThread(
320 int render_process_id, 322 int render_process_id,
321 int render_frame_id, 323 int render_frame_id,
322 const GURL& url, 324 const GURL& url,
323 bool allowed_by_default, 325 bool allowed_by_default,
324 const base::Callback<void(bool)>& callback); 326 const base::Callback<void(bool)>& callback);
325 #endif 327 #endif
326 328
327 #if defined(ENABLE_PLUGINS) 329 #if defined(ENABLE_PLUGINS)
328 // Set of origins that can use TCP/UDP private APIs from NaCl. 330 // Set of origins that can use TCP/UDP private APIs from NaCl.
329 std::set<std::string> allowed_socket_origins_; 331 std::set<std::string> allowed_socket_origins_;
330 // Set of origins that can get a handle for FileIO from NaCl. 332 // Set of origins that can get a handle for FileIO from NaCl.
331 std::set<std::string> allowed_file_handle_origins_; 333 std::set<std::string> allowed_file_handle_origins_;
332 // Set of origins that can use "dev chanel" APIs from NaCl, even on stable 334 // Set of origins that can use "dev chanel" APIs from NaCl, even on stable
333 // versions of Chrome. 335 // versions of Chrome.
334 std::set<std::string> allowed_dev_channel_origins_; 336 std::set<std::string> allowed_dev_channel_origins_;
335 #endif 337 #endif
336 scoped_ptr<extensions::BrowserPermissionsPolicyDelegate> 338 scoped_ptr<extensions::BrowserPermissionsPolicyDelegate>
337 permissions_policy_delegate_; 339 permissions_policy_delegate_;
338 340
339 // The prerender tracker used to determine whether a render process is used 341 // The prerender tracker used to determine whether a render process is used
340 // for prerendering and an override cookie store must be provided. 342 // for prerendering and an override cookie store must be provided.
341 // This needs to be kept as a member rather than just looked up from 343 // This needs to be kept as a member rather than just looked up from
342 // the profile due to initialization ordering, as well as due to threading. 344 // the profile due to initialization ordering, as well as due to threading.
343 // It is initialized on the UI thread when the ResoureDispatcherHost is 345 // It is initialized on the UI thread when the ResoureDispatcherHost is
344 // created. It is used only the IO thread. 346 // created. It is used only the IO thread.
345 prerender::PrerenderTracker* prerender_tracker_; 347 prerender::PrerenderTracker* prerender_tracker_;
346 348
347 base::WeakPtrFactory<ChromeContentBrowserClient> weak_factory_; 349 base::WeakPtrFactory<ChromeContentBrowserClient> weak_factory_;
348
349 friend class DisableWebRtcEncryptionFlagTest;
350 350
351 DISALLOW_COPY_AND_ASSIGN(ChromeContentBrowserClient); 351 DISALLOW_COPY_AND_ASSIGN(ChromeContentBrowserClient);
352 }; 352 };
353 353
354 } // namespace chrome 354 } // namespace chrome
355 355
356 #endif // CHROME_BROWSER_CHROME_CONTENT_BROWSER_CLIENT_H_ 356 #endif // CHROME_BROWSER_CHROME_CONTENT_BROWSER_CLIENT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698