summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Bestas <mikeioannina@gmail.com>2014-10-14 06:21:58 +0300
committerAbhisek Devkota <ciwrl@cyanogenmod.com>2014-10-20 23:15:35 +0000
commit95f9cda4e9d51b0e6296c37a00cbbf0e58320938 (patch)
treed6b93b5e868a783960a2f95b5f5fa953dc1500aa
parentd989a5f46d8335b2ff38fac41a41689d35a4cf7b (diff)
downloadandroid_packages_apps_Camera2-95f9cda4e9d51b0e6296c37a00cbbf0e58320938.tar.gz
android_packages_apps_Camera2-95f9cda4e9d51b0e6296c37a00cbbf0e58320938.tar.bz2
android_packages_apps_Camera2-95f9cda4e9d51b0e6296c37a00cbbf0e58320938.zip
Camera2: Add option to set max screen brightness
* Set maximum screen brightness while the user is inside the camera app Change-Id: I8b16ba47a933bc7d6b0c1cd62bfd6ca54875ce1e
-rw-r--r--res/values/cm_strings.xml4
-rw-r--r--res/xml/camera_preferences.xml6
-rw-r--r--res/xml/video_preferences.xml6
-rw-r--r--src/com/android/camera/CameraActivity.java20
-rw-r--r--src/com/android/camera/CameraSettings.java3
-rw-r--r--src/com/android/camera/ComboPreferences.java1
-rw-r--r--src/com/android/camera/PhotoMenu.java1
-rw-r--r--src/com/android/camera/PhotoModule.java9
-rw-r--r--src/com/android/camera/VideoMenu.java1
-rw-r--r--src/com/android/camera/VideoModule.java6
10 files changed, 54 insertions, 3 deletions
diff --git a/res/values/cm_strings.xml b/res/values/cm_strings.xml
index 0d9d7cc1b..15c883a37 100644
--- a/res/values/cm_strings.xml
+++ b/res/values/cm_strings.xml
@@ -194,6 +194,10 @@
<string name="pref_camera_power_shutter_title">Power shutter</string>
<string name="pref_camera_power_shutter_default" translatable="false">off</string>
+ <!-- More Settings screen, max brightness title -->
+ <string name="pref_camera_max_brightness_title">Bright screen</string>
+ <string name="pref_camera_max_brightness_default" translatable="false">off</string>
+
<!-- SuperZoom -->
<string name="pref_superzoom_title">Magnify</string>
<string name="pref_superzoom_default" translatable="false">off</string>
diff --git a/res/xml/camera_preferences.xml b/res/xml/camera_preferences.xml
index 131685e10..1544b564b 100644
--- a/res/xml/camera_preferences.xml
+++ b/res/xml/camera_preferences.xml
@@ -272,6 +272,12 @@
camera:entries="@array/pref_switch_entries"
camera:entryValues="@array/pref_switch_entryvalues" />
<ListPreference
+ camera:key="pref_max_brightness"
+ camera:defaultValue="@string/pref_camera_max_brightness_default"
+ camera:title="@string/pref_camera_max_brightness_title"
+ camera:entries="@array/pref_switch_entries"
+ camera:entryValues="@array/pref_switch_entryvalues" />
+ <ListPreference
camera:key="pref_camera_superzoom"
camera:defaultValue="@string/pref_superzoom_default"
camera:title="@string/pref_superzoom_title"
diff --git a/res/xml/video_preferences.xml b/res/xml/video_preferences.xml
index f84f51794..19e48372b 100644
--- a/res/xml/video_preferences.xml
+++ b/res/xml/video_preferences.xml
@@ -153,4 +153,10 @@
camera:title="@string/pref_camera_power_shutter_title"
camera:entries="@array/pref_switch_entries"
camera:entryValues="@array/pref_switch_entryvalues" />
+ <ListPreference
+ camera:key="pref_max_brightness"
+ camera:defaultValue="@string/pref_camera_max_brightness_default"
+ camera:title="@string/pref_camera_max_brightness_title"
+ camera:entries="@array/pref_switch_entries"
+ camera:entryValues="@array/pref_switch_entryvalues" />
</PreferenceGroup>
diff --git a/src/com/android/camera/CameraActivity.java b/src/com/android/camera/CameraActivity.java
index 327052251..f0daab825 100644
--- a/src/com/android/camera/CameraActivity.java
+++ b/src/com/android/camera/CameraActivity.java
@@ -170,6 +170,8 @@ public class CameraActivity extends Activity
private boolean mInCameraApp = true;
// Keep track of powershutter state
public static boolean mPowerShutter = false;
+ // Keep track of max brightness state
+ public static boolean mMaxBrightness = false;
// This is a hack to speed up the start of SecureCamera.
private static boolean sFirstStartAfterScreenOn = true;
private int mLastRawOrientation;
@@ -1433,6 +1435,24 @@ public class CameraActivity extends Activity
}
}
+ protected void initMaxBrightness(ComboPreferences prefs) {
+ String val = prefs.getString(CameraSettings.KEY_MAX_BRIGHTNESS,
+ getResources().getString(R.string.pref_camera_max_brightness_default));
+
+ Window win = getWindow();
+ WindowManager.LayoutParams params = win.getAttributes();
+
+ mMaxBrightness = val.equals(CameraSettings.VALUE_ON);
+
+ if (mMaxBrightness && mInCameraApp) {
+ params.screenBrightness = WindowManager.LayoutParams.BRIGHTNESS_OVERRIDE_FULL;
+ } else {
+ params.screenBrightness = WindowManager.LayoutParams.BRIGHTNESS_OVERRIDE_NONE;
+ }
+
+ win.setAttributes(params);
+ }
+
protected void setResultEx(int resultCode) {
mResultCodeForTesting = resultCode;
setResult(resultCode);
diff --git a/src/com/android/camera/CameraSettings.java b/src/com/android/camera/CameraSettings.java
index 2305ae6b2..138f0d83b 100644
--- a/src/com/android/camera/CameraSettings.java
+++ b/src/com/android/camera/CameraSettings.java
@@ -1,6 +1,6 @@
/*
* Copyright (C) 2009 The Android Open Source Project
- * Copyright (C) 2013 The CyanogenMod Project
+ * Copyright (C) 2013-2014 The CyanogenMod Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -83,6 +83,7 @@ public class CameraSettings {
public static final String KEY_SUPERZOOM = "pref_camera_superzoom";
public static final String KEY_POWER_SHUTTER = "pref_power_shutter";
+ public static final String KEY_MAX_BRIGHTNESS = "pref_max_brightness";
public static final String KEY_VIDEO_ENCODER = "pref_camera_videoencoder_key";
public static final String KEY_AUDIO_ENCODER = "pref_camera_audioencoder_key";
public static final String KEY_VIDEO_DURATION = "pref_camera_video_duration_key";
diff --git a/src/com/android/camera/ComboPreferences.java b/src/com/android/camera/ComboPreferences.java
index efb9968cf..00e0d5853 100644
--- a/src/com/android/camera/ComboPreferences.java
+++ b/src/com/android/camera/ComboPreferences.java
@@ -154,6 +154,7 @@ public class ComboPreferences implements
|| key.equals(CameraSettings.KEY_TIMER_SOUND_EFFECTS)
|| key.equals(CameraSettings.KEY_PHOTOSPHERE_PICTURESIZE)
|| key.equals(CameraSettings.KEY_POWER_SHUTTER)
+ || key.equals(CameraSettings.KEY_MAX_BRIGHTNESS)
|| key.equals(CameraSettings.KEY_STORAGE);
}
diff --git a/src/com/android/camera/PhotoMenu.java b/src/com/android/camera/PhotoMenu.java
index 19bc92c8b..79a1708c8 100644
--- a/src/com/android/camera/PhotoMenu.java
+++ b/src/com/android/camera/PhotoMenu.java
@@ -223,6 +223,7 @@ public class PhotoMenu extends PieController
mSettingsKeys = new String[] {
CameraSettings.KEY_STORAGE,
CameraSettings.KEY_POWER_SHUTTER,
+ CameraSettings.KEY_MAX_BRIGHTNESS,
CameraSettings.KEY_FOCUS_MODE,
CameraSettings.KEY_FOCUS_TIME,
CameraSettings.KEY_ISO,
diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java
index c3345be04..5a66617e4 100644
--- a/src/com/android/camera/PhotoModule.java
+++ b/src/com/android/camera/PhotoModule.java
@@ -1,6 +1,6 @@
/*
* Copyright (C) 2012 The Android Open Source Project
- * Copyright (C) 2014 The CyanogenMod Project
+ * Copyright (C) 2013-2014 The CyanogenMod Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -516,6 +516,9 @@ public class PhotoModule
// Power shutter
mActivity.initPowerShutter(mPreferences);
+ // Max brightness
+ mActivity.initMaxBrightness(mPreferences);
+
if (mOpenCameraThread == null && !mActivity.mIsModuleSwitchInProgress) {
mOpenCameraThread = new OpenCameraThread();
mOpenCameraThread.start();
@@ -1953,6 +1956,9 @@ public class PhotoModule
// Load the power shutter
mActivity.initPowerShutter(mPreferences);
+ // Load max brightness
+ mActivity.initMaxBrightness(mPreferences);
+
mNamedImages = null;
if (mLocationManager != null) mLocationManager.recordLocation(false);
@@ -2965,6 +2971,7 @@ public class PhotoModule
mUI.updateOnScreenIndicators(mParameters, mPreferenceGroup,
mPreferences);
mActivity.initPowerShutter(mPreferences);
+ mActivity.initMaxBrightness(mPreferences);
} else {
mHandler.sendEmptyMessage(SET_PHOTO_UI_PARAMS);
}
diff --git a/src/com/android/camera/VideoMenu.java b/src/com/android/camera/VideoMenu.java
index cedb199dd..41a99a590 100644
--- a/src/com/android/camera/VideoMenu.java
+++ b/src/com/android/camera/VideoMenu.java
@@ -175,6 +175,7 @@ public class VideoMenu extends PieController
mSettingsKeys = new String[] {
CameraSettings.KEY_STORAGE,
CameraSettings.KEY_POWER_SHUTTER,
+ CameraSettings.KEY_MAX_BRIGHTNESS,
CameraSettings.KEY_DIS,
CameraSettings.KEY_VIDEO_ENCODER,
CameraSettings.KEY_AUDIO_ENCODER,
diff --git a/src/com/android/camera/VideoModule.java b/src/com/android/camera/VideoModule.java
index bb7512cb7..2e6e27330 100644
--- a/src/com/android/camera/VideoModule.java
+++ b/src/com/android/camera/VideoModule.java
@@ -1,6 +1,6 @@
/*
* Copyright (C) 2012 The Android Open Source Project
- * Copyright (C) 2013 The CyanogenMod Project
+ * Copyright (C) 2013-2014 The CyanogenMod Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -444,6 +444,9 @@ public class VideoModule implements CameraModule,
// Power shutter
mActivity.initPowerShutter(mPreferences);
+ // Max brightness
+ mActivity.initMaxBrightness(mPreferences);
+
/*
* To reduce startup time, we start the preview in another thread.
* We make sure the preview is started at the end of onCreate.
@@ -2325,6 +2328,7 @@ public class VideoModule implements CameraModule,
}
mUI.updateOnScreenIndicators(mParameters, mPreferences);
mActivity.initPowerShutter(mPreferences);
+ mActivity.initMaxBrightness(mPreferences);
}
}