OLD | NEW |
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_CONTENT_SETTINGS_TAB_SPECIFIC_CONTENT_SETTINGS_H_ | 5 #ifndef CHROME_BROWSER_CONTENT_SETTINGS_TAB_SPECIFIC_CONTENT_SETTINGS_H_ |
6 #define CHROME_BROWSER_CONTENT_SETTINGS_TAB_SPECIFIC_CONTENT_SETTINGS_H_ | 6 #define CHROME_BROWSER_CONTENT_SETTINGS_TAB_SPECIFIC_CONTENT_SETTINGS_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 #include <string> | 9 #include <string> |
10 | 10 |
11 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
12 #include "base/memory/ref_counted.h" | 12 #include "base/memory/ref_counted.h" |
13 #include "base/memory/scoped_ptr.h" | 13 #include "base/memory/scoped_ptr.h" |
14 #include "base/observer_list.h" | 14 #include "base/observer_list.h" |
| 15 #include "chrome/browser/content_settings/content_settings_usages_state.h" |
15 #include "chrome/browser/content_settings/local_shared_objects_container.h" | 16 #include "chrome/browser/content_settings/local_shared_objects_container.h" |
16 #include "chrome/browser/geolocation/geolocation_settings_state.h" | |
17 #include "chrome/common/content_settings.h" | 17 #include "chrome/common/content_settings.h" |
18 #include "chrome/common/content_settings_types.h" | 18 #include "chrome/common/content_settings_types.h" |
19 #include "chrome/common/custom_handlers/protocol_handler.h" | 19 #include "chrome/common/custom_handlers/protocol_handler.h" |
20 #include "content/public/browser/notification_observer.h" | 20 #include "content/public/browser/notification_observer.h" |
21 #include "content/public/browser/notification_registrar.h" | 21 #include "content/public/browser/notification_registrar.h" |
22 #include "content/public/browser/web_contents_observer.h" | 22 #include "content/public/browser/web_contents_observer.h" |
23 #include "content/public/browser/web_contents_user_data.h" | 23 #include "content/public/browser/web_contents_user_data.h" |
24 #include "net/cookies/canonical_cookie.h" | 24 #include "net/cookies/canonical_cookie.h" |
25 | 25 |
26 class CookiesTreeModel; | 26 class CookiesTreeModel; |
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
181 // Returns whether a particular kind of content has been allowed. Currently | 181 // Returns whether a particular kind of content has been allowed. Currently |
182 // only tracks cookies. | 182 // only tracks cookies. |
183 bool IsContentAllowed(ContentSettingsType content_type) const; | 183 bool IsContentAllowed(ContentSettingsType content_type) const; |
184 | 184 |
185 // Returns the state of the camera and microphone usage. | 185 // Returns the state of the camera and microphone usage. |
186 MicrophoneCameraState GetMicrophoneCameraState() const; | 186 MicrophoneCameraState GetMicrophoneCameraState() const; |
187 | 187 |
188 const std::set<std::string>& BlockedResourcesForType( | 188 const std::set<std::string>& BlockedResourcesForType( |
189 ContentSettingsType content_type) const; | 189 ContentSettingsType content_type) const; |
190 | 190 |
191 // Returns the GeolocationSettingsState that controls the | 191 // Returns the ContentSettingsUsagesState that controls the |
192 // geolocation API usage on this page. | 192 // geolocation API usage on this page. |
193 const GeolocationSettingsState& geolocation_settings_state() const { | 193 const ContentSettingsUsagesState& geolocation_usages_state() const { |
194 return geolocation_settings_state_; | 194 return geolocation_usages_state_; |
195 } | 195 } |
196 | 196 |
197 // Call to indicate that there is a protocol handler pending user approval. | 197 // Call to indicate that there is a protocol handler pending user approval. |
198 void set_pending_protocol_handler(const ProtocolHandler& handler) { | 198 void set_pending_protocol_handler(const ProtocolHandler& handler) { |
199 pending_protocol_handler_ = handler; | 199 pending_protocol_handler_ = handler; |
200 } | 200 } |
201 | 201 |
202 const ProtocolHandler& pending_protocol_handler() const { | 202 const ProtocolHandler& pending_protocol_handler() const { |
203 return pending_protocol_handler_; | 203 return pending_protocol_handler_; |
204 } | 204 } |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
346 blocked_resources_[CONTENT_SETTINGS_NUM_TYPES]; | 346 blocked_resources_[CONTENT_SETTINGS_NUM_TYPES]; |
347 | 347 |
348 // The profile of the tab. | 348 // The profile of the tab. |
349 Profile* profile_; | 349 Profile* profile_; |
350 | 350 |
351 // Stores the blocked/allowed cookies. | 351 // Stores the blocked/allowed cookies. |
352 LocalSharedObjectsContainer allowed_local_shared_objects_; | 352 LocalSharedObjectsContainer allowed_local_shared_objects_; |
353 LocalSharedObjectsContainer blocked_local_shared_objects_; | 353 LocalSharedObjectsContainer blocked_local_shared_objects_; |
354 | 354 |
355 // Manages information about Geolocation API usage in this page. | 355 // Manages information about Geolocation API usage in this page. |
356 GeolocationSettingsState geolocation_settings_state_; | 356 ContentSettingsUsagesState geolocation_usages_state_; |
357 | 357 |
358 // The pending protocol handler, if any. This can be set if | 358 // The pending protocol handler, if any. This can be set if |
359 // registerProtocolHandler was invoked without user gesture. | 359 // registerProtocolHandler was invoked without user gesture. |
360 // The |IsEmpty| method will be true if no protocol handler is | 360 // The |IsEmpty| method will be true if no protocol handler is |
361 // pending registration. | 361 // pending registration. |
362 ProtocolHandler pending_protocol_handler_; | 362 ProtocolHandler pending_protocol_handler_; |
363 | 363 |
364 // The previous protocol handler to be replaced by | 364 // The previous protocol handler to be replaced by |
365 // the pending_protocol_handler_, if there is one. Empty if | 365 // the pending_protocol_handler_, if there is one. Empty if |
366 // there is no handler which would be replaced. | 366 // there is no handler which would be replaced. |
367 ProtocolHandler previous_protocol_handler_; | 367 ProtocolHandler previous_protocol_handler_; |
368 | 368 |
369 // The setting on the pending protocol handler registration. Persisted in case | 369 // The setting on the pending protocol handler registration. Persisted in case |
370 // the user opens the bubble and makes changes multiple times. | 370 // the user opens the bubble and makes changes multiple times. |
371 ContentSetting pending_protocol_handler_setting_; | 371 ContentSetting pending_protocol_handler_setting_; |
372 | 372 |
373 // Stores whether the user can load blocked plugins on this page. | 373 // Stores whether the user can load blocked plugins on this page. |
374 bool load_plugins_link_enabled_; | 374 bool load_plugins_link_enabled_; |
375 | 375 |
376 content::NotificationRegistrar registrar_; | 376 content::NotificationRegistrar registrar_; |
377 | 377 |
378 DISALLOW_COPY_AND_ASSIGN(TabSpecificContentSettings); | 378 DISALLOW_COPY_AND_ASSIGN(TabSpecificContentSettings); |
379 }; | 379 }; |
380 | 380 |
381 #endif // CHROME_BROWSER_CONTENT_SETTINGS_TAB_SPECIFIC_CONTENT_SETTINGS_H_ | 381 #endif // CHROME_BROWSER_CONTENT_SETTINGS_TAB_SPECIFIC_CONTENT_SETTINGS_H_ |
OLD | NEW |