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

Unified Diff: chrome/browser/geolocation/geolocation_settings_state.h

Issue 19375002: Move GeolocationSettingsState to ContentSettingsUsagesState (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review #9 Created 7 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/geolocation/geolocation_settings_state.h
diff --git a/chrome/browser/geolocation/geolocation_settings_state.h b/chrome/browser/geolocation/geolocation_settings_state.h
deleted file mode 100644
index c5f994897c61ed392273a365dbf30530a0994a3e..0000000000000000000000000000000000000000
--- a/chrome/browser/geolocation/geolocation_settings_state.h
+++ /dev/null
@@ -1,71 +0,0 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CHROME_BROWSER_GEOLOCATION_GEOLOCATION_SETTINGS_STATE_H_
-#define CHROME_BROWSER_GEOLOCATION_GEOLOCATION_SETTINGS_STATE_H_
-
-#include <map>
-#include <set>
-
-#include "chrome/common/content_settings.h"
-#include "url/gurl.h"
-
-class Profile;
-
-namespace content {
-struct LoadCommittedDetails;
-}
-
-// This class manages the geolocation state per tab, and provides information
-// and presentation data about the geolocation usage.
-class GeolocationSettingsState {
- public:
- explicit GeolocationSettingsState(Profile* profile);
- virtual ~GeolocationSettingsState();
-
- typedef std::map<GURL, ContentSetting> StateMap;
- const StateMap& state_map() const {
- return state_map_;
- }
-
- // Sets the state for |requesting_origin|.
- void OnGeolocationPermissionSet(const GURL& requesting_origin, bool allowed);
-
- // Delegated by WebContents to indicate a navigation has happened and we
- // may need to clear our settings.
- void DidNavigate(const content::LoadCommittedDetails& details);
-
- void ClearStateMap();
-
- enum TabState {
- TABSTATE_NONE = 0,
- // There's at least one entry with non-default setting.
- TABSTATE_HAS_EXCEPTION = 1 << 1,
- // There's at least one entry with a non-ASK setting.
- TABSTATE_HAS_ANY_ICON = 1 << 2,
- // There's at least one entry with ALLOWED setting.
- TABSTATE_HAS_ANY_ALLOWED = 1 << 3,
- // There's at least one entry that doesn't match the saved setting.
- TABSTATE_HAS_CHANGED = 1 << 4,
- };
-
- // Maps ContentSetting to a set of hosts formatted for presentation.
- typedef std::map<ContentSetting, std::set<std::string> >
- FormattedHostsPerState;
-
- // Returns an (optional) |formatted_hosts_per_state| and a mask of TabState.
- void GetDetailedInfo(FormattedHostsPerState* formatted_hosts_per_state,
- unsigned int* tab_state_flags) const;
-
- private:
- std::string GURLToFormattedHost(const GURL& url) const;
-
- Profile* profile_;
- StateMap state_map_;
- GURL embedder_url_;
-
- DISALLOW_COPY_AND_ASSIGN(GeolocationSettingsState);
-};
-
-#endif // CHROME_BROWSER_GEOLOCATION_GEOLOCATION_SETTINGS_STATE_H_
« no previous file with comments | « chrome/browser/geolocation/geolocation_browsertest.cc ('k') | chrome/browser/geolocation/geolocation_settings_state.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698