Merge "[Output Switcher] Set padding to fix clip on top item" into udc-dev
diff --git a/packages/SystemUI/res/layout/media_output_dialog.xml b/packages/SystemUI/res/layout/media_output_dialog.xml
index e182a6a..9c1dc64 100644
--- a/packages/SystemUI/res/layout/media_output_dialog.xml
+++ b/packages/SystemUI/res/layout/media_output_dialog.xml
@@ -31,7 +31,7 @@
android:paddingStart="16dp"
android:paddingTop="16dp"
android:paddingEnd="16dp"
- android:paddingBottom="24dp"
+ android:paddingBottom="16dp"
android:orientation="horizontal">
<ImageView
android:id="@+id/header_icon"
@@ -113,6 +113,8 @@
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/list_result"
android:scrollbars="vertical"
+ android:paddingTop="8dp"
+ android:clipToPadding="false"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
index 2024dae..64615fb 100644
--- a/packages/SystemUI/res/values/dimens.xml
+++ b/packages/SystemUI/res/values/dimens.xml
@@ -1318,6 +1318,7 @@
<dimen name="media_output_dialog_active_background_radius">28dp</dimen>
<dimen name="media_output_dialog_default_margin_end">16dp</dimen>
<dimen name="media_output_dialog_selectable_margin_end">80dp</dimen>
+ <dimen name="media_output_dialog_list_padding_top">8dp</dimen>
<!-- Distance that the full shade transition takes in order to complete by tapping on a button
like "expand". -->
diff --git a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBaseDialog.java b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBaseDialog.java
index 770e4df..08b799a 100644
--- a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBaseDialog.java
+++ b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBaseDialog.java
@@ -101,6 +101,7 @@
private Button mAppButton;
private int mListMaxHeight;
private int mItemHeight;
+ private int mListPaddingTop;
private WallpaperColors mWallpaperColors;
private boolean mShouldLaunchLeBroadcastDialog;
private boolean mIsLeBroadcastCallbackRegistered;
@@ -111,7 +112,8 @@
private final ViewTreeObserver.OnGlobalLayoutListener mDeviceListLayoutListener = () -> {
ViewGroup.LayoutParams params = mDeviceListLayout.getLayoutParams();
- int totalItemsHeight = mAdapter.getItemCount() * mItemHeight;
+ int totalItemsHeight = mAdapter.getItemCount() * mItemHeight
+ + mListPaddingTop;
int correctHeight = Math.min(totalItemsHeight, mListMaxHeight);
// Set max height for list
if (correctHeight != params.height) {
@@ -220,6 +222,8 @@
R.dimen.media_output_dialog_list_max_height);
mItemHeight = context.getResources().getDimensionPixelSize(
R.dimen.media_output_dialog_list_item_height);
+ mListPaddingTop = mContext.getResources().getDimensionPixelSize(
+ R.dimen.media_output_dialog_list_padding_top);
mExecutor = Executors.newSingleThreadExecutor();
}