diff options
author | Yabin Huang <yabinh@google.com> | 2019-06-19 17:51:11 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2019-06-19 17:51:11 +0000 |
commit | abe382c59477c0fcb0b647122fc10fca66af2ca3 (patch) | |
tree | 7d167cb94ca6f1101d5233886a9f6fc9070fb7ae | |
parent | be91d861b5e9e74119bdee5f251ccc9636601c3d (diff) | |
parent | fe29fedd19839650c94ecbe82add13f2dc0bfc50 (diff) | |
download | Media-abe382c59477c0fcb0b647122fc10fca66af2ca3.tar.gz |
Merge "Adjust the position of playback queue list items" into pi-car-dev
-rw-r--r-- | res/values/dimens.xml | 3 | ||||
-rw-r--r-- | src/com/android/car/media/PlaybackFragment.java | 26 |
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(); |