Merge "Enable progress reporting for modules like HDR+." into ub-camera-glacier
diff --git a/res/values/arrays.xml b/res/values/arrays.xml
index 3fb1063..a8cda78 100644
--- a/res/values/arrays.xml
+++ b/res/values/arrays.xml
@@ -24,12 +24,9 @@
</string-array>
<string-array name="pref_video_quality_entryvalues" translatable="false">
- <!-- Large size is the default. -->
- <item>@string/pref_video_quality_default</item>
- <!-- A medium size -->
- <item>medium</item>
- <!-- Small size. -->
- <item>small</item>
+ <item>@string/pref_video_quality_large</item>
+ <item>@string/pref_video_quality_medium</item>
+ <item>@string/pref_video_quality_small</item>
</string-array>
<!-- Camera Preferences Picture size dialog box entries -->
diff --git a/res/values/strings.xml b/res/values/strings.xml
index f36f356..4ba7385 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -201,8 +201,12 @@
<!-- The Video quality settings in preference [CHAR LIMIT=21] -->
<string name="pref_video_quality_title">Video quality</string>
- <!-- The default quality value is 'large'. -->
- <string name="pref_video_quality_default" translatable="false">large</string>
+ <!-- The value of a camera preference indicating the video quality is 'large'. -->
+ <string name="pref_video_quality_large" translatable="false">large</string>
+ <!-- The value of a camera preference indicating the video quality is 'medium'. -->
+ <string name="pref_video_quality_medium" translatable="false">medium</string>
+ <!-- The value of a camera preference indicating the video quality is 'small'. -->
+ <string name="pref_video_quality_small" translatable="false">small</string>
<!-- Describes the preference dialog for choosing interval between frame capture for
time lapse recording. Appears at top of the dialog. [CHAR LIMIT=30] -->
diff --git a/res/xml/camera_preferences.xml b/res/xml/camera_preferences.xml
index 5e3849e..3266cae 100644
--- a/res/xml/camera_preferences.xml
+++ b/res/xml/camera_preferences.xml
@@ -40,13 +40,13 @@
<!-- BACK camera VIDEO resolution -->
<ListPreference
- android:defaultValue="@string/pref_camera_picturesize_default"
+ android:defaultValue="@string/pref_video_quality_large"
android:entryValues="@array/pref_video_quality_entryvalues"
android:key="pref_video_quality_back_key"
android:title="@string/setting_back_camera_video" />
<!-- FRONT camera VIDEO resolution -->
<ListPreference
- android:defaultValue="@string/pref_camera_picturesize_default"
+ android:defaultValue="@string/pref_video_quality_large"
android:entryValues="@array/pref_video_quality_entryvalues"
android:key="pref_video_quality_front_key"
android:title="@string/setting_front_camera_video" />
diff --git a/src/com/android/camera/VideoModule.java b/src/com/android/camera/VideoModule.java
index c70f6e7..6fe83d2 100644
--- a/src/com/android/camera/VideoModule.java
+++ b/src/com/android/camera/VideoModule.java
@@ -722,6 +722,14 @@
Keys.KEY_VIDEO_QUALITY_BACK)) {
settingsManager.setToDefault(SettingsManager.SCOPE_GLOBAL,
Keys.KEY_VIDEO_QUALITY_BACK);
+
+ // TODO: Remove this once 4k recording is stable enough on new devices.
+ // Don't set the default resolution to be large if the device supports 4k video.
+ if (CamcorderProfile.hasProfile(mCameraId, CamcorderProfile.QUALITY_2160P)) {
+ settingsManager.set(SettingsManager.SCOPE_GLOBAL,
+ Keys.KEY_VIDEO_QUALITY_BACK,
+ mAppController.getAndroidContext().getString(R.string.pref_video_quality_medium));
+ }
}
if (!settingsManager.isSet(SettingsManager.SCOPE_GLOBAL,
Keys.KEY_VIDEO_QUALITY_FRONT)) {
diff --git a/src/com/android/camera/app/CameraController.java b/src/com/android/camera/app/CameraController.java
index 5f912f2..c83b67f 100644
--- a/src/com/android/camera/app/CameraController.java
+++ b/src/com/android/camera/app/CameraController.java
@@ -104,7 +104,8 @@
if (mCameraProxy != null) {
return mCameraProxy.getCameraId();
} else {
- return -1;
+ Log.v(TAG, "getCurrentCameraId without an open camera... returning requested id");
+ return mRequestingCameraId;
}
}
diff --git a/src/com/android/camera/settings/Keys.java b/src/com/android/camera/settings/Keys.java
index 09ba3ed..9490ef3 100644
--- a/src/com/android/camera/settings/Keys.java
+++ b/src/com/android/camera/settings/Keys.java
@@ -103,11 +103,11 @@
context.getResources().getStringArray(R.array.pref_camera_focusmode_entryvalues));
settingsManager.setDefaults(KEY_VIDEO_QUALITY_BACK,
- context.getString(R.string.pref_video_quality_default),
+ context.getString(R.string.pref_video_quality_large),
context.getResources().getStringArray(R.array.pref_video_quality_entryvalues));
settingsManager.setDefaults(KEY_VIDEO_QUALITY_FRONT,
- context.getString(R.string.pref_video_quality_default),
+ context.getString(R.string.pref_video_quality_large),
context.getResources().getStringArray(R.array.pref_video_quality_entryvalues));
settingsManager.setDefaults(KEY_JPEG_QUALITY,
diff --git a/src/com/android/camera/settings/SettingsManager.java b/src/com/android/camera/settings/SettingsManager.java
index 66c8342..a44693e 100644
--- a/src/com/android/camera/settings/SettingsManager.java
+++ b/src/com/android/camera/settings/SettingsManager.java
@@ -449,7 +449,7 @@
* Set a setting to the default value stored in the DefaultsStore.
*/
public void setToDefault(String scope, String key) {
- set(scope, key, getStringDefault(key));
+ set(scope, key, getStringDefault(key));
}
/**