Merge pi-platform-release to stage-aosp-master - DO NOT MERGE

Change-Id: Id8f471af3c079fbe894ef29332e36abc440e75d0
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index 2c8d29b..20fdf24 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -195,7 +195,7 @@
     <string name="accessibility_switch_to_camera" msgid="4518394037216725274">"Prebaci na sliku"</string>
     <string name="accessibility_switch_to_video" msgid="8174781871592793967">"Prebaci na snimanje videozapisa"</string>
     <string name="accessibility_switch_to_panorama" msgid="8322228859117808037">"Prebaci na panoramski način rada"</string>
-    <string name="accessibility_switch_to_photo_sphere" msgid="5803217570370854725">"Prebaci na način rada Foto-sfera"</string>
+    <string name="accessibility_switch_to_photo_sphere" msgid="5803217570370854725">"Prebaci na način rada za photo sphere fotografije"</string>
     <string name="accessibility_switch_to_gcam" msgid="7562625440767034695">"Prebaci na visoki kvalitet"</string>
     <string name="accessibility_switch_to_refocus" msgid="6796169367953860106">"Prebaci na način rada Promjena fokusa"</string>
     <string name="accessibility_review_cancel" msgid="5462850829869569629">"Prekini pregled"</string>
@@ -293,14 +293,14 @@
     <string name="mode_settings" msgid="2021937261522670921">"Postavke"</string>
     <string name="mode_camera" msgid="279763925715250603">"Kamera"</string>
     <string name="mode_video" msgid="8633929034048169139">"Videozapis"</string>
-    <string name="mode_photosphere" msgid="5082338476237291833">"Foto-sfera"</string>
+    <string name="mode_photosphere" msgid="5082338476237291833">"Photo sphere fotografija"</string>
     <string name="mode_timelapse" msgid="1517168724627815453">"Protok vremena"</string>
     <string name="mode_wideangle" msgid="1099640345041696830">"Široki ugao"</string>
     <string name="mode_panorama" msgid="6882648621305828861">"Panoramski način rada"</string>
     <string name="mode_refocus" msgid="172192967119469061">"Efekt s izoštr. objektom"</string>
     <string name="mode_camera_desc" msgid="3670807361165657278">"Prebaci na način rada za kameru"</string>
     <string name="mode_video_desc" msgid="4058407412929464689">"Prebaciti na videokameru"</string>
-    <string name="mode_photosphere_desc" msgid="2403816283825579161">"Prebaci na način rada Foto-sfera"</string>
+    <string name="mode_photosphere_desc" msgid="2403816283825579161">"Prebaci na način rada za photo sphere fotografije"</string>
     <string name="mode_panorama_desc" msgid="6023020404237519590">"Prebaci na panoramski način rada"</string>
     <string name="mode_refocus_desc" msgid="6171183297515508465">"Prebaci na način rada Efekt s izoštrenim objektom"</string>
     <string name="settings_open_desc" msgid="6914471293841793766">"Otvori postavke"</string>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index 535b29c..37fcd70 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -357,9 +357,9 @@
     <string name="pref_video_quality_entry_high" msgid="1613578418842803393">"Alta"</string>
     <string name="pref_video_quality_entry_qcif" msgid="1717816794399266216">"QCIF"</string>
     <string name="pref_video_quality_entry_cif" msgid="645414019445016434">"CIF"</string>
-    <string name="pref_video_quality_entry_480p" msgid="5880250731066854583">"SD 480 p"</string>
-    <string name="pref_video_quality_entry_720p" msgid="4076146428148167262">"HD 720 p"</string>
-    <string name="pref_video_quality_entry_1080p" msgid="4539958891524211120">"HD 1080 p"</string>
+    <string name="pref_video_quality_entry_480p" msgid="5880250731066854583">"SD 480p"</string>
+    <string name="pref_video_quality_entry_720p" msgid="4076146428148167262">"HD 720p"</string>
+    <string name="pref_video_quality_entry_1080p" msgid="4539958891524211120">"HD 1080p"</string>
     <string name="pref_video_quality_entry_qvga" msgid="342600517453781430">"QVGA"</string>
     <string name="pref_video_quality_entry_2160p" msgid="4522927631413184505">"UHD de 4K"</string>
     <string name="setting_summary_x_megapixels" msgid="6533463462760866830">"%1$s megapíxeles"</string>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index 7f6524b..9406b2b 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -374,8 +374,8 @@
     <string name="edit_with" msgid="615569327230783971">"...နှင့် တည်းဖြတ်ရန်"</string>
     <string name="startup_dialog_button_next" msgid="1011831256978228993">"ရှေ့သို့"</string>
     <string name="confirm_button_text" msgid="7389949384482206814">"OK၊ ရပါပြီ"</string>
-    <string name="full_sensor_4x3_aspect_ratio" msgid="1270461419743888925">"အာရုံခံပုံ အပြည့် \n(4:3)"</string>
-    <string name="cropped_sensor_16x9_aspect_ratio" msgid="4742161537633251795">"အာရုံခံကိရိယာမှ ဖြတ်ထား\n(16:9)"</string>
+    <string name="full_sensor_4x3_aspect_ratio" msgid="1270461419743888925">"အာရုံခံပုံ အပြည့် \n(၄x၃)"</string>
+    <string name="cropped_sensor_16x9_aspect_ratio" msgid="4742161537633251795">"အာရုံခံကိရိယာမှ ဖြတ်ထား\n(၁၆x၉)"</string>
     <string name="pref_boolean_false" msgid="461317129020087333">"၀"</string>
     <string name="pref_boolean_true" msgid="4131945223998878009">"၁"</string>
     <string name="session_saving_image" msgid="8932315404486416826">"သိမ်းနေစဉ်…"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 9ed674e..b12090c 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -346,7 +346,7 @@
     <string name="setting_front_camera_photo" msgid="4131886734622868637">"Fotocamera voorzijde"</string>
     <string name="setting_front_camera_video" msgid="2178799452805359752">"Videocamera voorzijde"</string>
     <string name="setting_default_camera" msgid="6954076799301004779">"Standaardcamera"</string>
-    <string name="setting_google_help_and_feedback" msgid="2079580537079242775">"Help en feedback"</string>
+    <string name="setting_google_help_and_feedback" msgid="2079580537079242775">"Hulp en feedback"</string>
     <string name="processing_hdr_plus" msgid="9160093263037540304">"HDR+ verwerken…"</string>
     <string name="open_source_licenses" msgid="2169711954264883060">"Open-sourcelicenties"</string>
     <string name="pref_category_general" msgid="6737748849700581019">"Algemene instellingen"</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 215098c..3dfd5fa 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -347,7 +347,7 @@
     <string name="setting_back_camera_video" msgid="5220819479408164689">"Video ya kamera ya nyuma"</string>
     <string name="setting_front_camera_photo" msgid="4131886734622868637">"Picha ya kamera ya mbele"</string>
     <string name="setting_front_camera_video" msgid="2178799452805359752">"Video ya kamera ya mbele"</string>
-    <string name="setting_default_camera" msgid="6954076799301004779">"Kamera ya chaguo msingi"</string>
+    <string name="setting_default_camera" msgid="6954076799301004779">"Kamera ya chaguomsingi"</string>
     <string name="setting_google_help_and_feedback" msgid="2079580537079242775">"Usaidizi na maoni"</string>
     <string name="processing_hdr_plus" msgid="9160093263037540304">"Inachakata HDR+ ..."</string>
     <string name="open_source_licenses" msgid="2169711954264883060">"Leseni za programu huria"</string>
diff --git a/src/com/android/camera/CameraActivity.java b/src/com/android/camera/CameraActivity.java
index 3eceb8f..352fa38 100644
--- a/src/com/android/camera/CameraActivity.java
+++ b/src/com/android/camera/CameraActivity.java
@@ -1335,7 +1335,7 @@
 
     private void removeItemAt(int index) {
         mDataAdapter.removeAt(index);
-        if (mDataAdapter.getTotalNumber() > 1) {
+        if (mDataAdapter.getTotalNumber() > 0) {
             showUndoDeletionBar();
         } else {
             // If camera preview is the only view left in filmstrip,
@@ -1503,7 +1503,9 @@
         // version.
         profile.mark();
         try {
-            (new PictureSizeLoader(mAppContext)).computePictureSizes();
+            PictureSizeLoader pictureSizeLoader = new PictureSizeLoader(mAppContext);
+            pictureSizeLoader.computePictureSizes();
+            pictureSizeLoader.release();
         } catch (AssertionError e) {
             Log.e(TAG, "Creating camera controller failed.", e);
             mFatalErrorHandler.onGenericCameraAccessFailure();
diff --git a/src/com/android/camera/settings/AppUpgrader.java b/src/com/android/camera/settings/AppUpgrader.java
index 92bd953..930c3e2 100644
--- a/src/com/android/camera/settings/AppUpgrader.java
+++ b/src/com/android/camera/settings/AppUpgrader.java
@@ -145,6 +145,7 @@
             // chooser if applicable.
             settingsManager.remove(SettingsManager.SCOPE_GLOBAL,
                     Keys.KEY_STARTUP_MODULE_INDEX);
+            CameraAgentFactory.recycle(CameraAgentFactory.CameraApi.API_1);
         }
 
         if (lastVersion < CAMERA_MODULE_SETTINGS_FILES_RENAMED_VERSION) {
diff --git a/src/com/android/camera/settings/CameraSettingsActivity.java b/src/com/android/camera/settings/CameraSettingsActivity.java
index 50641fd..efe5796 100644
--- a/src/com/android/camera/settings/CameraSettingsActivity.java
+++ b/src/com/android/camera/settings/CameraSettingsActivity.java
@@ -180,6 +180,7 @@
             mInfos = CameraAgentFactory
                     .getAndroidCameraAgent(context, CameraAgentFactory.CameraApi.API_1)
                     .getCameraDeviceInfo();
+            CameraAgentFactory.recycle(CameraAgentFactory.CameraApi.API_1);
         }
 
         @Override
@@ -498,6 +499,7 @@
             }
             PictureSizeLoader loader = new PictureSizeLoader(getActivity().getApplicationContext());
             mPictureSizes = loader.computePictureSizes();
+            loader.release();
         }
 
         /**
diff --git a/src/com/android/camera/settings/PictureSizeLoader.java b/src/com/android/camera/settings/PictureSizeLoader.java
index a3cb49b..582d77f 100644
--- a/src/com/android/camera/settings/PictureSizeLoader.java
+++ b/src/com/android/camera/settings/PictureSizeLoader.java
@@ -97,6 +97,10 @@
         mCachedOnly = cachedOnly;
     }
 
+    public void release(){
+        CameraAgentFactory.recycle(CameraAgentFactory.CameraApi.API_1);
+    }
+
     /**
      * Computes the list of picture sizes that should be displayed by settings.
      * <p>