summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYabin Huang <yabinh@google.com>2019-06-19 17:51:11 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2019-06-19 17:51:11 +0000
commitabe382c59477c0fcb0b647122fc10fca66af2ca3 (patch)
tree7d167cb94ca6f1101d5233886a9f6fc9070fb7ae
parentbe91d861b5e9e74119bdee5f251ccc9636601c3d (diff)
parentfe29fedd19839650c94ecbe82add13f2dc0bfc50 (diff)
downloadMedia-abe382c59477c0fcb0b647122fc10fca66af2ca3.tar.gz
Merge "Adjust the position of playback queue list items" into pi-car-dev
-rw-r--r--res/values/dimens.xml3
-rw-r--r--src/com/android/car/media/PlaybackFragment.java26
2 files changed, 29 insertions, 0 deletions
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 4ce7082..c1b9c85 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -152,6 +152,9 @@
<dimen name="fragment_metadata_margin_x">@*android:dimen/car_margin</dimen>
<dimen name="playback_title_margin_end">@*android:dimen/car_padding_3</dimen>
+ <!-- PlaybackFragment.java -->
+ <dimen name="playback_queue_list_padding_top">@*android:dimen/car_padding_4</dimen>
+
<!-- queue_list_item.xml -->
<dimen name="queue_list_item_height">116dp</dimen>
<dimen name="queue_list_item_padding_x">@*android:dimen/car_keyline_1</dimen>
diff --git a/src/com/android/car/media/PlaybackFragment.java b/src/com/android/car/media/PlaybackFragment.java
index b62bce3..9878806 100644
--- a/src/com/android/car/media/PlaybackFragment.java
+++ b/src/com/android/car/media/PlaybackFragment.java
@@ -19,6 +19,7 @@ package com.android.car.media;
import android.annotation.Nullable;
import android.content.Context;
import android.content.res.ColorStateList;
+import android.graphics.Rect;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
@@ -233,6 +234,25 @@ public class PlaybackFragment extends Fragment {
}
}
+ private class QueueTopItemDecoration extends RecyclerView.ItemDecoration {
+ int mHeight;
+ int mDecorationPosition;
+
+ QueueTopItemDecoration(int height, int decorationPosition) {
+ mHeight = height;
+ mDecorationPosition = decorationPosition;
+ }
+
+ @Override
+ public void getItemOffsets(Rect outRect, View view, RecyclerView parent,
+ RecyclerView.State state) {
+ super.getItemOffsets(outRect, view, parent, state);
+ if (parent.getChildAdapterPosition(view) == mDecorationPosition) {
+ outRect.top = mHeight;
+ }
+ }
+ }
+
@Override
public View onCreateView(@NonNull LayoutInflater inflater, final ViewGroup container,
Bundle savedInstanceState) {
@@ -318,6 +338,12 @@ public class PlaybackFragment extends Fragment {
mPlaybackQueueBackgroundAlpha = getResources().getFloat(
R.dimen.playback_queue_background_alpha);
+ int decorationHeight = getResources().getDimensionPixelSize(
+ R.dimen.playback_queue_list_padding_top);
+ // Put the decoration above the first item.
+ int decorationPosition = 0;
+ mQueue.addItemDecoration(new QueueTopItemDecoration(decorationHeight, decorationPosition));
+
mQueue.setVerticalFadingEdgeEnabled(
getResources().getBoolean(R.bool.queue_fading_edge_length_enabled));
mQueueAdapter = new QueueItemsAdapter();