diff options
| author | 2024-01-10 05:34:46 -0800 | |
|---|---|---|
| committer | 2024-02-28 12:10:50 -0800 | |
| commit | 10e541c61df3a449a9df514d032b34be421b44a9 (patch) | |
| tree | 213976b811b48a23a3d63cc883de4e71f8192ee4 | |
| parent | 230a6ecbae42b84011c584cdbec0f1c4e2e68824 (diff) | |
Make confirmation message scroll
In case the dialog message in install/uninstall confirmation dialog is long, it
may get clipped if the device is in landscape mode, screen is small or
font is large. Ensure that the dialog message is scrollable
Bug: 316211161
Test: Manual. Follow repro steps in the bug
Change-Id: I244d98675d506cbf360698bcaa7e59f0245050d6
3 files changed, 128 insertions, 119 deletions
diff --git a/packages/PackageInstaller/res/layout/install_content_view.xml b/packages/PackageInstaller/res/layout/install_content_view.xml index 2ecd2d55ac71..524a88a638ad 100644 --- a/packages/PackageInstaller/res/layout/install_content_view.xml +++ b/packages/PackageInstaller/res/layout/install_content_view.xml @@ -24,114 +24,116 @@ android:paddingLeft="?android:attr/dialogPreferredPadding" android:paddingRight="?android:attr/dialogPreferredPadding"> - <LinearLayout - android:id="@+id/staging" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:orientation="vertical" - android:visibility="invisible"> - - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" - android:text="@string/message_staging" /> - - <ProgressBar - android:id="@+id/progress_indeterminate" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:paddingTop="8dp" - style="?android:attr/progressBarStyleHorizontal" - android:indeterminate="true" /> - - </LinearLayout> - - <LinearLayout - android:id="@+id/installing" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:orientation="vertical" - android:visibility="invisible"> - - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" - android:text="@string/installing" /> - - <ProgressBar - android:id="@+id/progress" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:paddingTop="8dp" - style="?android:attr/progressBarStyleHorizontal" - android:indeterminate="true" /> - - </LinearLayout> - - <TextView - android:id="@+id/install_confirm_question" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" - android:text="@string/install_confirm_question" - android:visibility="invisible" /> - - <TextView - android:id="@+id/install_confirm_question_update" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" - android:text="@string/install_confirm_question_update" - android:visibility="invisible" /> + <LinearLayout + android:id="@+id/staging" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical" + android:visibility="invisible"> <TextView - android:id="@+id/install_success" android:layout_width="wrap_content" android:layout_height="wrap_content" style="@android:style/TextAppearance.Material.Subhead" - android:text="@string/install_done" - android:visibility="invisible" /> + android:text="@string/message_staging" /> - <TextView - android:id="@+id/install_failed" - android:layout_width="wrap_content" + <ProgressBar + android:id="@+id/progress_indeterminate" + android:layout_width="match_parent" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" - android:text="@string/install_failed" - android:visibility="invisible" /> + android:paddingTop="8dp" + style="?android:attr/progressBarStyleHorizontal" + android:indeterminate="true" /> - <TextView - android:id="@+id/install_failed_blocked" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" - android:text="@string/install_failed_blocked" - android:visibility="invisible" /> + </LinearLayout> - <TextView - android:id="@+id/install_failed_conflict" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" - android:text="@string/install_failed_conflict" - android:visibility="invisible" /> + <LinearLayout + android:id="@+id/installing" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical" + android:visibility="invisible"> <TextView - android:id="@+id/install_failed_incompatible" android:layout_width="wrap_content" android:layout_height="wrap_content" style="@android:style/TextAppearance.Material.Subhead" - android:text="@string/install_failed_incompatible" - android:visibility="invisible" /> + android:text="@string/installing" /> - <TextView - android:id="@+id/install_failed_invalid_apk" - android:layout_width="wrap_content" + <ProgressBar + android:id="@+id/progress" + android:layout_width="match_parent" android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" - android:text="@string/install_failed_invalid_apk" - android:visibility="invisible" /> - -</FrameLayout> + android:paddingTop="8dp" + style="?android:attr/progressBarStyleHorizontal" + android:indeterminate="true" /> + + </LinearLayout> + + <TextView + android:id="@+id/install_confirm_question" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + style="@android:style/TextAppearance.Material.Subhead" + android:text="@string/install_confirm_question" + android:visibility="invisible" + android:scrollbars="vertical" /> + + <TextView + android:id="@+id/install_confirm_question_update" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + style="@android:style/TextAppearance.Material.Subhead" + android:text="@string/install_confirm_question_update" + android:visibility="invisible" + android:scrollbars="vertical" /> + + <TextView + android:id="@+id/install_success" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + style="@android:style/TextAppearance.Material.Subhead" + android:text="@string/install_done" + android:visibility="invisible" /> + + <TextView + android:id="@+id/install_failed" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + style="@android:style/TextAppearance.Material.Subhead" + android:text="@string/install_failed" + android:visibility="invisible" /> + + <TextView + android:id="@+id/install_failed_blocked" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + style="@android:style/TextAppearance.Material.Subhead" + android:text="@string/install_failed_blocked" + android:visibility="invisible" /> + + <TextView + android:id="@+id/install_failed_conflict" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + style="@android:style/TextAppearance.Material.Subhead" + android:text="@string/install_failed_conflict" + android:visibility="invisible" /> + + <TextView + android:id="@+id/install_failed_incompatible" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + style="@android:style/TextAppearance.Material.Subhead" + android:text="@string/install_failed_incompatible" + android:visibility="invisible" /> + + <TextView + android:id="@+id/install_failed_invalid_apk" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + style="@android:style/TextAppearance.Material.Subhead" + android:text="@string/install_failed_invalid_apk" + android:visibility="invisible" /> + +</FrameLayout>
\ No newline at end of file diff --git a/packages/PackageInstaller/res/layout/uninstall_content_view.xml b/packages/PackageInstaller/res/layout/uninstall_content_view.xml index 5666c0e44e0b..434e33323ba1 100644 --- a/packages/PackageInstaller/res/layout/uninstall_content_view.xml +++ b/packages/PackageInstaller/res/layout/uninstall_content_view.xml @@ -18,31 +18,36 @@ <!-- Check box that is displayed in the activity resolver UI for the user to make their selection the preferred activity. --> -<LinearLayout - xmlns:android="http://schemas.android.com/apk/res/android" +<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" - android:layout_height="wrap_content" - android:theme="?android:attr/alertDialogTheme" - android:orientation="vertical" - android:paddingTop="8dp" - android:paddingStart="?android:attr/dialogPreferredPadding" - android:paddingEnd="?android:attr/dialogPreferredPadding" - android:clipToPadding="false"> + android:layout_height="wrap_content"> - <TextView - android:id="@+id/message" - android:layout_width="match_parent" - android:layout_height="wrap_content" - style="@android:style/TextAppearance.Material.Subhead" /> + <LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:theme="?android:attr/alertDialogTheme" + android:orientation="vertical" + android:paddingTop="8dp" + android:paddingStart="?android:attr/dialogPreferredPadding" + android:paddingEnd="?android:attr/dialogPreferredPadding" + android:clipToPadding="false"> - <CheckBox - android:id="@+id/keepData" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginTop="8dp" - android:layout_marginStart="-8dp" - android:paddingLeft="8sp" - android:visibility="gone" - style="@android:style/TextAppearance.Material.Subhead" /> + <TextView + android:id="@+id/message" + android:layout_width="match_parent" + android:layout_height="wrap_content" + style="@android:style/TextAppearance.Material.Subhead" /> -</LinearLayout>
\ No newline at end of file + <CheckBox + android:id="@+id/keepData" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="8dp" + android:layout_marginStart="-8dp" + android:paddingLeft="8sp" + android:visibility="gone" + style="@android:style/TextAppearance.Material.Subhead" /> + + </LinearLayout> +</ScrollView> diff --git a/packages/PackageInstaller/src/com/android/packageinstaller/PackageInstallerActivity.java b/packages/PackageInstaller/src/com/android/packageinstaller/PackageInstallerActivity.java index cf6aab641fc9..e95a8e63d644 100644 --- a/packages/PackageInstaller/src/com/android/packageinstaller/PackageInstallerActivity.java +++ b/packages/PackageInstaller/src/com/android/packageinstaller/PackageInstallerActivity.java @@ -51,6 +51,7 @@ import android.provider.Settings; import android.text.Html; import android.text.Spanned; import android.text.TextUtils; +import android.text.method.ScrollingMovementMethod; import android.util.Log; import android.view.View; import android.widget.Button; @@ -174,6 +175,7 @@ public class PackageInstallerActivity extends Activity { } viewToEnable.setVisibility(View.VISIBLE); + viewToEnable.setMovementMethod(new ScrollingMovementMethod()); mEnableOk = true; mOk.setEnabled(true); |