summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Matt Pietal <mpietal@google.com> 2019-02-12 15:21:36 -0500
committer Matt Pietal <mpietal@google.com> 2019-02-14 08:40:58 -0500
commit18bbd821fa78747d494ebb8c676321ffaf4863c5 (patch)
tree770d336edc843d01005645259b7da607b8a76c5d
parentbc40490aeb6a80ff1a178f0f6bab55aa43dc1d61 (diff)
Sharesheet - landscape mode
Need to limit the width of the content preview area to a maximum, especially for landscape mode Bug: 120419296 Test: Visual inspection of landscape/portrait Change-Id: Ia1d6dc00ca4e0bcb0d06b0d30c24be25b20528e8
-rw-r--r--core/java/com/android/internal/app/ChooserActivity.java22
-rw-r--r--core/res/res/layout/chooser_grid.xml11
-rw-r--r--core/res/res/values-land/dimens.xml2
-rw-r--r--core/res/res/values/dimens.xml1
-rw-r--r--core/res/res/values/symbols.xml1
5 files changed, 32 insertions, 5 deletions
diff --git a/core/java/com/android/internal/app/ChooserActivity.java b/core/java/com/android/internal/app/ChooserActivity.java
index 8ebcef5133b6..e3de63cf21d3 100644
--- a/core/java/com/android/internal/app/ChooserActivity.java
+++ b/core/java/com/android/internal/app/ChooserActivity.java
@@ -46,6 +46,7 @@ import android.content.pm.PackageManager.NameNotFoundException;
import android.content.pm.ResolveInfo;
import android.content.pm.ShortcutInfo;
import android.content.pm.ShortcutManager;
+import android.content.res.Configuration;
import android.database.Cursor;
import android.database.DataSetObserver;
import android.graphics.Bitmap;
@@ -486,6 +487,27 @@ public class ChooserActivity extends ResolverActivity {
}
}
+ @Override
+ public void onConfigurationChanged(Configuration newConfig) {
+ super.onConfigurationChanged(newConfig);
+
+ int width = -1;
+ if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
+ width = getResources().getDimensionPixelSize(R.dimen.chooser_preview_width);
+ }
+
+ updateLayoutWidth(R.id.content_preview_text_layout, width);
+ updateLayoutWidth(R.id.content_preview_title_layout, width);
+ updateLayoutWidth(R.id.content_preview_file_layout, width);
+ }
+
+ private void updateLayoutWidth(int layoutResourceId, int width) {
+ View view = findViewById(layoutResourceId);
+ LayoutParams params = view.getLayoutParams();
+ params.width = width;
+ view.setLayoutParams(params);
+ }
+
private void displayContentPreview(@ContentPreviewType int previewType, Intent targetIntent) {
switch (previewType) {
case CONTENT_PREVIEW_TEXT:
diff --git a/core/res/res/layout/chooser_grid.xml b/core/res/res/layout/chooser_grid.xml
index 3683bfd02e87..10798ad51792 100644
--- a/core/res/res/layout/chooser_grid.xml
+++ b/core/res/res/layout/chooser_grid.xml
@@ -20,12 +20,10 @@
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:maxWidth="@dimen/resolver_max_width"
android:maxCollapsedHeight="288dp"
android:maxCollapsedHeightSmall="56dp"
android:id="@id/contentPanel">
-
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -153,8 +151,9 @@
android:background="?attr/colorBackgroundFloating">
<LinearLayout
- android:layout_width="match_parent"
+ android:layout_width="@dimen/chooser_preview_width"
android:layout_height="wrap_content"
+ android:layout_gravity="center"
android:orientation="horizontal"
android:paddingLeft="@dimen/chooser_edge_margin_normal"
android:paddingRight="@dimen/chooser_edge_margin_normal"
@@ -182,8 +181,9 @@
<!-- Required sub-layout so we can get the nice rounded corners-->
<!-- around this section -->
<LinearLayout
- android:layout_width="match_parent"
+ android:layout_width="@dimen/chooser_preview_width"
android:layout_height="wrap_content"
+ android:layout_gravity="center"
android:orientation="horizontal"
android:layout_marginLeft="@dimen/chooser_edge_margin_thin"
android:layout_marginRight="@dimen/chooser_edge_margin_thin"
@@ -224,8 +224,9 @@
android:background="?attr/colorBackgroundFloating">
<LinearLayout
- android:layout_width="match_parent"
+ android:layout_width="@dimen/chooser_preview_width"
android:layout_height="wrap_content"
+ android:layout_gravity="center"
android:orientation="horizontal"
android:paddingLeft="@dimen/chooser_edge_margin_normal"
android:paddingRight="@dimen/chooser_edge_margin_normal"
diff --git a/core/res/res/values-land/dimens.xml b/core/res/res/values-land/dimens.xml
index 351bd818b09a..9e87a47219f3 100644
--- a/core/res/res/values-land/dimens.xml
+++ b/core/res/res/values-land/dimens.xml
@@ -76,4 +76,6 @@
<!-- Floating toolbar dimensions -->
<dimen name="floating_toolbar_preferred_width">544dp</dimen>
+ <dimen name="chooser_preview_width">480dp</dimen>
+
</resources>
diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml
index 9f86f8416fb9..39cbd269c75a 100644
--- a/core/res/res/values/dimens.xml
+++ b/core/res/res/values/dimens.xml
@@ -721,4 +721,5 @@
<dimen name="chooser_edge_margin_thin">16dp</dimen>
<dimen name="chooser_edge_margin_normal">24dp</dimen>
<dimen name="chooser_preview_image_font_size">20sp</dimen>
+ <dimen name="chooser_preview_width">-1px</dimen>
</resources>
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index a1bafbf8de69..4f49051925b5 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -2755,6 +2755,7 @@
<java-symbol type="dimen" name="chooser_edge_margin_thin" />
<java-symbol type="dimen" name="chooser_edge_margin_normal" />
<java-symbol type="dimen" name="chooser_preview_image_font_size"/>
+ <java-symbol type="dimen" name="chooser_preview_width" />
<java-symbol type="layout" name="chooser_grid" />
<java-symbol type="layout" name="resolve_grid_item" />
<java-symbol type="id" name="day_picker_view_pager" />