Merge "Determine the originating uid for an install" into jb-mr1-dev
diff --git a/res/layout/install_confirm.xml b/res/layout/install_confirm.xml
index ed7f33b..9589e8a 100644
--- a/res/layout/install_confirm.xml
+++ b/res/layout/install_confirm.xml
@@ -34,7 +34,15 @@
             android:text="@string/install_confirm_question"
             android:textAppearance="?android:attr/textAppearanceMedium"
             style="@style/padded"
-            android:paddingTop="12dip" />
+            android:paddingTop="4dip" />
+
+    <ImageView
+            android:id="@+id/divider"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="16dp"
+            android:background="?android:attr/dividerHorizontal"
+            android:visibility="gone" />
 
     <TabHost
         android:id="@android:id/tabhost"
diff --git a/res/layout/permissions_list.xml b/res/layout/permissions_list.xml
index 55eb81d..ee90699 100644
--- a/res/layout/permissions_list.xml
+++ b/res/layout/permissions_list.xml
@@ -28,19 +28,25 @@
         <LinearLayout android:id="@+id/privacylist"
             android:orientation="vertical"
             android:layout_width="match_parent"
-            android:layout_height="wrap_content">
+            android:layout_height="wrap_content"
+            android:layout_marginTop="4dp"
+            android:layout_marginBottom="4dp">
             <TextView
                 style="?android:attr/listSeparatorTextViewStyle"
-                android:layout_marginTop="8dip"
+                android:layout_marginStart="16dp"
+                android:layout_marginEnd="16dp"
                 android:text="@string/privacyPerms" />
         </LinearLayout>
         <LinearLayout android:id="@+id/devicelist"
             android:orientation="vertical"
             android:layout_width="match_parent"
-            android:layout_height="wrap_content">
+            android:layout_height="wrap_content"
+            android:layout_marginTop="4dp"
+            android:layout_marginBottom="4dp">
             <TextView
                 style="?android:attr/listSeparatorTextViewStyle"
-                android:layout_marginTop="8dip"
+                android:layout_marginStart="16dp"
+                android:layout_marginEnd="16dp"
                 android:text="@string/devicePerms" />
         </LinearLayout>
     </LinearLayout>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 9c1a90a..66b4f53 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -29,7 +29,7 @@
     <string name="install_confirm_question_no_perms" msgid="5918305641302873520">"Voulez-vous installer cette application ? Elle n\'exige aucun accès particulier."</string>
     <string name="install_confirm_question_update" msgid="4624159567361487964">"Voulez-vous installer une mise à jour pour cette application ? Vos données existantes seront conservées. L\'application mise à jour aura accès à :"</string>
     <string name="install_confirm_question_update_system" msgid="1302330093676416336">"Voulez-vous installer une mise à jour pour cette application intégrée ? Vos données existantes seront conservées. L\'application mise à jour aura accès à :"</string>
-    <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"Voulez-vous installer une mise à jour pour cette application existante ? Vos données existantes ne seront pas perdues. Aucun droit d\'accès spécial n\'est requis."</string>
+    <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"Voulez-vous installer une mise à jour pour cette application ? Vos données ne seront pas perdues. Aucun droit d\'accès spécial n\'est requis."</string>
     <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"Voulez-vous installer une mise à jour pour cette application intégrée ? Vos données existantes ne seront pas perdues. Aucun droit d\'accès spécial n\'est requis."</string>
     <string name="install_failed" msgid="6579998651498970899">"Application non installée."</string>
     <string name="install_failed_invalid_apk" msgid="1287935707565682604">"Le package semble corrompu."</string>
diff --git a/res/values-large/styles.xml b/res/values-large/styles.xml
new file mode 100755
index 0000000..c7b2ec4
--- /dev/null
+++ b/res/values-large/styles.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2010 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<resources>
+    <style name="DialogWhenLarge"
+        parent="@android:style/Theme.DeviceDefault.Dialog.NoActionBar.MinWidth">
+    </style>
+</resources>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index ecaf4e3..c3cf660 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -30,7 +30,7 @@
     <string name="install_confirm_question_update" msgid="4624159567361487964">"Chcete nainštalovať aktualizáciu existujúcej aplikácie? Existujúce údaje sa nestratia. Aktualizovaná aplikácia získa prístup k týmto povoleniam:"</string>
     <string name="install_confirm_question_update_system" msgid="1302330093676416336">"Chcete nainštalovať aktualizáciu tejto integrovanej aplikácie? Existujúce údaje sa nestratia. Aktualizovaná aplikácia získa prístup k týmto povoleniam:"</string>
     <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"Chcete nainštalovať aktualizáciu tejto existujúcej aplikácie? Vaše údaje nebudú stratené. Táto akcia nevyžaduje žiadny zvláštny prístup."</string>
-    <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"Chcete nainštalovať aktualizáciu tejto vstavanej aplikácie? Vaše údaje nebudú stratené. Táto akcia nevyžaduje žiadny zvláštny prístup."</string>
+    <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"Chcete nainštalovať aktualizáciu tejto vstavanej aplikácie? Vaše údaje sa nestratia. Táto akcia nevyžaduje žiadny zvláštny prístup."</string>
     <string name="install_failed" msgid="6579998651498970899">"Aplikácia nie je nainštalovaná."</string>
     <string name="install_failed_invalid_apk" msgid="1287935707565682604">"Zdá sa, že je balík poškodený."</string>
     <string name="install_failed_inconsistent_certificates" msgid="1517751954440692054">"Už je nainštalovaný existujúci balík s rovnakým názvom a kolidujúcim podpisom."</string>
@@ -63,7 +63,7 @@
     <string name="uninstall_update_title" msgid="4146940097553335390">"Odinštalovať aktualizáciu"</string>
     <string name="uninstall_activity_text" msgid="6680688689803932550">"Aktivita <xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> je súčasťou nasledujúcej aplikácie:"</string>
     <string name="uninstall_application_text" msgid="6691975835951187030">"Chcete túto aplikáciu odinštalovať?"</string>
-    <string name="uninstall_application_text_all_users" msgid="5574704453233525222">"Chcete odinštalovať túto aplikáciu pre "<b>"všetkých"</b>" používateľov? Aplikácia a jej údaje budú odstránené z tohto zariadenia pre "<b>"všetkých"</b>" používateľov."</string>
+    <string name="uninstall_application_text_all_users" msgid="5574704453233525222">"Chcete odinštalovať túto aplikáciu pre "<b>"všetkých"</b>" používateľov? Aplikácia a jej údaje sa odstránia z tohto zariadenia pre "<b>"všetkých"</b>" používateľov."</string>
     <string name="uninstall_update_text" msgid="2056387942084605027">"Chcete túto aplikáciu nahradiť továrenskou verziou?"</string>
     <string name="uninstalling" msgid="5556217435895938250">"Prebieha odinštalovanie..."</string>
     <string name="uninstall_done" msgid="3792487853420281888">"Odinštalovanie bolo dokončené."</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 57b08c0..2d6a1da 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -17,7 +17,7 @@
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="app_name" msgid="2738748390251381682">"Kisakinishaji cha furushi"</string>
-    <string name="next" msgid="3057143178373252333">"Ifuatayo"</string>
+    <string name="next" msgid="3057143178373252333">"Inayofuata"</string>
     <string name="install" msgid="5896438203900042068">"Sakinisha"</string>
     <string name="done" msgid="3889387558374211719">"Kwisha"</string>
     <string name="security_settings_desc" msgid="2706691034244052604">"Ruhusu programu hii:"</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 38d6d8e..4ea1f2b 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -29,8 +29,8 @@
     <string name="install_confirm_question_no_perms" msgid="5918305641302873520">"您要安装此应用吗?该应用不需要任何特殊的访问权限。"</string>
     <string name="install_confirm_question_update" msgid="4624159567361487964">"您要安装针对此现有应用的更新吗?您的现有数据不会丢失。更新后的应用将可以访问:"</string>
     <string name="install_confirm_question_update_system" msgid="1302330093676416336">"您要安装针对此内置应用的更新吗?您的现有数据不会丢失。更新后的应用将可以访问:"</string>
-    <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"您是否要为这一现有应用安装更新?您的现有数据不会丢失,且安装过程无需任何特殊权限。"</string>
-    <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"您是否要为这一内置应用安装更新?您的现有数据不会丢失,且安装过程无需任何特殊权限。"</string>
+    <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"是否要为这一现有应用安装更新?您现有的数据不会丢失,且安装过程无需任何特殊权限。"</string>
+    <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"是否要为这一内置应用安装更新?您现有的数据不会丢失,且安装过程无需任何特殊权限。"</string>
     <string name="install_failed" msgid="6579998651498970899">"应用未安装。"</string>
     <string name="install_failed_invalid_apk" msgid="1287935707565682604">"该数据包似乎已损坏。"</string>
     <string name="install_failed_inconsistent_certificates" msgid="1517751954440692054">"已安装了存在签名冲突的同名数据包。"</string>
@@ -63,7 +63,7 @@
     <string name="uninstall_update_title" msgid="4146940097553335390">"卸载更新"</string>
     <string name="uninstall_activity_text" msgid="6680688689803932550">"<xliff:g id="ACTIVITY_NAME">%1$s</xliff:g>属于以下应用:"</string>
     <string name="uninstall_application_text" msgid="6691975835951187030">"要卸载此应用吗?"</string>
-    <string name="uninstall_application_text_all_users" msgid="5574704453233525222">"您是否要为"<b>"所有"</b>"用户卸载此应用?系统将从设备上的"<b>"所有"</b>"用户下删除此应用及其数据。"</string>
+    <string name="uninstall_application_text_all_users" msgid="5574704453233525222">"是否要为"<b>"所有"</b>"用户卸载此应用?系统将为设备上的"<b>"所有"</b>"用户删除此应用及其数据。"</string>
     <string name="uninstall_update_text" msgid="2056387942084605027">"您要将此应用替换成出厂版本吗?"</string>
     <string name="uninstalling" msgid="5556217435895938250">"正在卸载..."</string>
     <string name="uninstall_done" msgid="3792487853420281888">"卸载完成。"</string>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index f03a37e..5a5cb7e 100755
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -19,4 +19,6 @@
         <item name="android:paddingLeft">16dip</item>
         <item name="android:paddingRight">16dip</item>
     </style>
+    <style name="DialogWhenLarge" parent="@android:style/Theme.DeviceDefault.NoActionBar">
+    </style>
 </resources>
diff --git a/src/com/android/packageinstaller/PackageInstallerActivity.java b/src/com/android/packageinstaller/PackageInstallerActivity.java
index a0546a2..d0c50fc 100644
--- a/src/com/android/packageinstaller/PackageInstallerActivity.java
+++ b/src/com/android/packageinstaller/PackageInstallerActivity.java
@@ -257,6 +257,7 @@
                         getText(R.string.newPerms)), mScrollView);
             } else  {
                 findViewById(R.id.tabscontainer).setVisibility(View.GONE);
+                findViewById(R.id.divider).setVisibility(View.VISIBLE);
             }
             if (NP > 0 || ND > 0) {
                 permVisible = true;
@@ -295,7 +296,7 @@
                     msg = R.string.install_confirm_question_no_perms;
                 }
             }
-            tabHost.setVisibility(View.INVISIBLE);
+            tabHost.setVisibility(View.GONE);
         }
         if (msg != 0) {
             ((TextView)findViewById(R.id.install_confirm_question)).setText(msg);