summaryrefslogtreecommitdiff
path: root/src/com/android/camera/app/FirstRunDialog.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/camera/app/FirstRunDialog.java')
-rw-r--r--src/com/android/camera/app/FirstRunDialog.java32
1 files changed, 19 insertions, 13 deletions
diff --git a/src/com/android/camera/app/FirstRunDialog.java b/src/com/android/camera/app/FirstRunDialog.java
index 58e1fcbba..fa419fd44 100644
--- a/src/com/android/camera/app/FirstRunDialog.java
+++ b/src/com/android/camera/app/FirstRunDialog.java
@@ -44,7 +44,9 @@ public class FirstRunDialog {
public interface FirstRunDialogListener {
public void onFirstRunStateReady();
+
public void onFirstRunDialogCancelled();
+
public void onCameraAccessException();
}
@@ -83,15 +85,14 @@ public class FirstRunDialog {
/**
* Constructs a first run dialog.
- *
*/
public FirstRunDialog(
- AppController appController,
- Context activityContext,
- ResolutionSetting resolutionSetting,
- SettingsManager settingManager,
- OneCameraManager hardwareManager,
- FirstRunDialogListener listener) {
+ AppController appController,
+ Context activityContext,
+ ResolutionSetting resolutionSetting,
+ SettingsManager settingManager,
+ OneCameraManager hardwareManager,
+ FirstRunDialogListener listener) {
mAppController = appController;
mContext = activityContext;
mResolutionSetting = resolutionSetting;
@@ -211,14 +212,19 @@ public class FirstRunDialog {
private void checkLocationPermission() {
if (mContext.checkSelfPermission(Manifest.permission.ACCESS_COARSE_LOCATION)
- != PackageManager.PERMISSION_GRANTED) {
- Activity activity = (Activity) mContext;
- activity.requestPermissions(
- new String[] {Manifest.permission.ACCESS_COARSE_LOCATION},
+ == PackageManager.PERMISSION_GRANTED || mContext.checkSelfPermission(
+ Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) {
+ return;
+ }
+
+ Activity activity = (Activity) mContext;
+ activity.requestPermissions(
+ new String[]{Manifest.permission.ACCESS_COARSE_LOCATION,
+ Manifest.permission.ACCESS_FINE_LOCATION},
PERMISSION_REQUEST_CODE);
- mSettingsManager.set(SettingsManager.SCOPE_GLOBAL,
+ mSettingsManager.set(SettingsManager.SCOPE_GLOBAL,
Keys.KEY_HAS_SEEN_PERMISSIONS_DIALOGS, true);
- }
+
}
/**