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

Side by Side Diff: chrome/browser/profiles/profile.h

Issue 12049052: Move core url data manager classes to content. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: review comments Created 7 years, 11 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 | Annotate | Revision Log
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 // This class gathers state related to a single user profile. 5 // This class gathers state related to a single user profile.
6 6
7 #ifndef CHROME_BROWSER_PROFILES_PROFILE_H_ 7 #ifndef CHROME_BROWSER_PROFILES_PROFILE_H_
8 #define CHROME_BROWSER_PROFILES_PROFILE_H_ 8 #define CHROME_BROWSER_PROFILES_PROFILE_H_
9 9
10 #include <string> 10 #include <string>
11 11
12 #include "base/basictypes.h" 12 #include "base/basictypes.h"
13 #include "base/hash_tables.h" 13 #include "base/hash_tables.h"
14 #include "base/logging.h" 14 #include "base/logging.h"
15 #include "chrome/browser/net/pref_proxy_config_tracker.h" 15 #include "chrome/browser/net/pref_proxy_config_tracker.h"
16 #include "chrome/browser/ui/webui/chrome_url_data_manager_factory.h"
17 #include "content/public/browser/browser_context.h" 16 #include "content/public/browser/browser_context.h"
18 17
19 class ChromeAppCacheService; 18 class ChromeAppCacheService;
20 class ChromeURLDataManager;
21 class ExtensionService; 19 class ExtensionService;
22 class ExtensionSpecialStoragePolicy; 20 class ExtensionSpecialStoragePolicy;
23 class FaviconService; 21 class FaviconService;
24 class HostContentSettingsMap; 22 class HostContentSettingsMap;
25 class PasswordStore; 23 class PasswordStore;
26 class PrefServiceSyncable; 24 class PrefServiceSyncable;
27 class PromoCounter; 25 class PromoCounter;
28 class ProtocolHandlerRegistry; 26 class ProtocolHandlerRegistry;
29 class TestingProfile; 27 class TestingProfile;
30 class WebDataService; 28 class WebDataService;
(...skipping 326 matching lines...) Expand 10 before | Expand all | Expand 10 after
357 // already been sent. It is necessary because most Profiles are destroyed by 355 // already been sent. It is necessary because most Profiles are destroyed by
358 // ProfileDestroyer, but in tests, some are not. 356 // ProfileDestroyer, but in tests, some are not.
359 void MaybeSendDestroyedNotification(); 357 void MaybeSendDestroyedNotification();
360 358
361 // Creates an OffTheRecordProfile which points to this Profile. 359 // Creates an OffTheRecordProfile which points to this Profile.
362 Profile* CreateOffTheRecordProfile(); 360 Profile* CreateOffTheRecordProfile();
363 361
364 protected: 362 protected:
365 // TODO(erg, willchan): Remove friendship once |ProfileIOData| is made into 363 // TODO(erg, willchan): Remove friendship once |ProfileIOData| is made into
366 // a |ProfileKeyedService|. 364 // a |ProfileKeyedService|.
367 friend class ChromeURLDataManagerFactory;
368 friend class OffTheRecordProfileImpl; 365 friend class OffTheRecordProfileImpl;
369 366
370 // Returns a callback to a method returning a |ChromeURLDataManagerBackend|.
371 // Used to create a |ChromeURLDataManager| for this |Profile|.
372 // TODO(erg, willchan): Remove this once |ProfileIOData| is made into a
373 // |ProfileKeyedService|.
374 virtual base::Callback<ChromeURLDataManagerBackend*(void)>
375 GetChromeURLDataManagerBackendGetter() const = 0;
376
377 private: 367 private:
378 bool restored_last_session_; 368 bool restored_last_session_;
379 369
380 // Used to prevent the notification that this Profile is destroyed from 370 // Used to prevent the notification that this Profile is destroyed from
381 // being sent twice. 371 // being sent twice.
382 bool sent_destroyed_notification_; 372 bool sent_destroyed_notification_;
383 373
384 // Accessibility events will only be propagated when the pause 374 // Accessibility events will only be propagated when the pause
385 // level is zero. PauseAccessibilityEvents and ResumeAccessibilityEvents 375 // level is zero. PauseAccessibilityEvents and ResumeAccessibilityEvents
386 // increment and decrement the level, respectively, rather than set it to 376 // increment and decrement the level, respectively, rather than set it to
387 // true or false, so that calls can be nested. 377 // true or false, so that calls can be nested.
388 int accessibility_pause_level_; 378 int accessibility_pause_level_;
389 }; 379 };
390 380
391 #if defined(COMPILER_GCC) 381 #if defined(COMPILER_GCC)
392 namespace BASE_HASH_NAMESPACE { 382 namespace BASE_HASH_NAMESPACE {
393 383
394 template<> 384 template<>
395 struct hash<Profile*> { 385 struct hash<Profile*> {
396 std::size_t operator()(Profile* const& p) const { 386 std::size_t operator()(Profile* const& p) const {
397 return reinterpret_cast<std::size_t>(p); 387 return reinterpret_cast<std::size_t>(p);
398 } 388 }
399 }; 389 };
400 390
401 } // namespace BASE_HASH_NAMESPACE 391 } // namespace BASE_HASH_NAMESPACE
402 #endif 392 #endif
403 393
404 #endif // CHROME_BROWSER_PROFILES_PROFILE_H_ 394 #endif // CHROME_BROWSER_PROFILES_PROFILE_H_
OLDNEW
« no previous file with comments | « chrome/browser/profiles/off_the_record_profile_io_data.cc ('k') | chrome/browser/profiles/profile_dependency_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698