OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 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_ANDROID_GOOGLE_LOCATION_SETTINGS_HELPER_H_ | 5 #ifndef CHROME_BROWSER_ANDROID_GOOGLE_LOCATION_SETTINGS_HELPER_H_ |
6 #define CHROME_BROWSER_ANDROID_GOOGLE_LOCATION_SETTINGS_HELPER_H_ | 6 #define CHROME_BROWSER_ANDROID_GOOGLE_LOCATION_SETTINGS_HELPER_H_ |
7 | 7 |
8 #include "base/values.h" | 8 #include "base/values.h" |
9 | 9 |
10 // This class is needed to fetch the current system location | 10 // This class is needed to fetch the current system location |
11 // setting and update the infobar button label based on that information i.e, | 11 // setting and update the infobar button label based on that information i.e, |
12 // display "Allow" if google apps setting is set as enabled else, display | 12 // display "Allow" if google apps setting is set as enabled else, display |
13 // "Settings" with a link to open the system location settings activity. | 13 // "Settings" with a link to open the system location settings activity. |
14 class GoogleLocationSettingsHelper { | 14 class GoogleLocationSettingsHelper { |
15 public: | 15 public: |
16 virtual ~GoogleLocationSettingsHelper() {} | 16 virtual ~GoogleLocationSettingsHelper() {} |
17 | 17 |
18 static GoogleLocationSettingsHelper* Create(); | 18 static GoogleLocationSettingsHelper* Create(); |
19 | 19 |
20 virtual std::string GetAcceptButtonLabel(bool allow) = 0; | 20 virtual bool IsSystemLocationEnabled(); |
21 virtual void ShowGoogleLocationSettings() = 0; | |
22 // Checks both Master and Google Apps location setting to see | |
23 // if we should use "Allow" in the accept button. | |
24 virtual bool IsAllowLabel() = 0; | |
25 virtual bool IsMasterLocationSettingEnabled() = 0; | |
26 virtual bool IsGoogleAppsLocationSettingEnabled() = 0; | |
27 | 21 |
28 protected: | 22 protected: |
29 GoogleLocationSettingsHelper() {} | 23 GoogleLocationSettingsHelper() {} |
30 | 24 |
| 25 // TODO(miguelg) Remove these three methods once the downstream |
| 26 // dependencies get updated. |
| 27 virtual std::string GetAcceptButtonLabel(bool allow); |
| 28 virtual bool IsAllowLabel(); |
| 29 virtual void ShowGoogleLocationSettings(); |
| 30 |
| 31 // Checks both Master and Google Apps location setting to see |
| 32 // if we should allow geolocation. |
| 33 virtual bool IsMasterLocationSettingEnabled(); |
| 34 virtual bool IsGoogleAppsLocationSettingEnabled(); |
| 35 |
31 private: | 36 private: |
32 | 37 |
33 DISALLOW_COPY_AND_ASSIGN(GoogleLocationSettingsHelper); | 38 DISALLOW_COPY_AND_ASSIGN(GoogleLocationSettingsHelper); |
34 }; | 39 }; |
35 | 40 |
36 #endif // CHROME_BROWSER_ANDROID_GOOGLE_LOCATION_SETTINGS_HELPER_H_ | 41 #endif // CHROME_BROWSER_ANDROID_GOOGLE_LOCATION_SETTINGS_HELPER_H_ |
OLD | NEW |