1<?xml version="1.0" encoding="utf-8"?> 2<!-- 3 ~ Copyright (C) 2019 The Android Open Source Project 4 ~ 5 ~ Licensed under the Apache License, Version 2.0 (the "License"); 6 ~ you may not use this file except in compliance with the License. 7 ~ You may obtain a copy of the License at 8 ~ 9 ~ http://www.apache.org/licenses/LICENSE-2.0 10 ~ 11 ~ Unless required by applicable law or agreed to in writing, software 12 ~ distributed under the License is distributed on an "AS IS" BASIS, 13 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 ~ See the License for the specific language governing permissions and 15 ~ limitations under the License 16 --> 17 18<!-- Layout for media recommendations inside QSPanel carousel --> 19<!-- See media_recommendation_expanded.xml and media_recommendation_collapsed.xml for the 20 constraints. --> 21<com.android.systemui.util.animation.TransitionLayout 22 xmlns:android="http://schemas.android.com/apk/res/android" 23 xmlns:app="http://schemas.android.com/apk/res-auto" 24 android:id="@+id/media_recommendations" 25 android:layout_width="match_parent" 26 android:layout_height="wrap_content" 27 android:clipChildren="false" 28 android:clipToPadding="false" 29 android:forceHasOverlappingRendering="false" 30 android:background="@drawable/qs_media_background" 31 android:theme="@style/MediaPlayer"> 32 33 <!-- This view just ensures the full media player is a certain height. --> 34 <View 35 android:id="@+id/sizing_view" 36 android:layout_width="match_parent" 37 android:layout_height="@dimen/qs_media_session_height_expanded" /> 38 39 <com.android.internal.widget.CachingIconView 40 android:id="@+id/recommendation_card_icon" 41 android:layout_width="@dimen/qs_media_app_icon_size" 42 android:layout_height="@dimen/qs_media_app_icon_size" 43 android:minWidth="@dimen/qs_media_app_icon_size" 44 android:minHeight="@dimen/qs_media_app_icon_size" 45 android:layout_marginStart="@dimen/qs_media_padding" 46 android:layout_marginTop="@dimen/qs_media_rec_icon_top_margin" 47 app:layout_constraintStart_toStartOf="parent" 48 app:layout_constraintTop_toTopOf="parent" /> 49 50 <FrameLayout 51 android:id="@+id/media_cover1_container" 52 style="@style/MediaPlayer.Recommendation.AlbumContainer" 53 > 54 <ImageView 55 android:id="@+id/media_cover1" 56 android:layout_width="match_parent" 57 android:layout_height="match_parent" 58 android:minWidth="@dimen/qs_media_rec_album_size" 59 android:minHeight="@dimen/qs_media_rec_album_size" 60 app:layout_constraintTop_toTopOf="parent" 61 app:layout_constraintBottom_toBottomOf="parent" 62 android:adjustViewBounds="true" 63 android:background="@drawable/bg_smartspace_media_item" 64 style="@style/MediaPlayer.Recommendation.Album" 65 android:clipToOutline="true" 66 android:scaleType="centerCrop"/> 67 </FrameLayout> 68 69 <TextView 70 android:id="@+id/media_title1" 71 style="@style/MediaPlayer.Recommendation.Text.Title" 72 /> 73 74 <TextView 75 android:id="@+id/media_subtitle1" 76 style="@style/MediaPlayer.Recommendation.Text.Subtitle" 77 /> 78 79 <FrameLayout 80 android:id="@+id/media_cover2_container" 81 style="@style/MediaPlayer.Recommendation.AlbumContainer" 82 > 83 <ImageView 84 android:id="@+id/media_cover2" 85 android:layout_width="match_parent" 86 android:layout_height="match_parent" 87 android:minWidth="@dimen/qs_media_rec_album_size" 88 android:minHeight="@dimen/qs_media_rec_album_size" 89 android:adjustViewBounds="true" 90 android:background="@drawable/bg_smartspace_media_item" 91 style="@style/MediaPlayer.Recommendation.Album" 92 android:clipToOutline="true" 93 android:scaleType="centerCrop"/> 94 </FrameLayout> 95 96 <TextView 97 android:id="@+id/media_title2" 98 style="@style/MediaPlayer.Recommendation.Text.Title" 99 /> 100 101 <TextView 102 android:id="@+id/media_subtitle2" 103 style="@style/MediaPlayer.Recommendation.Text.Subtitle" 104 /> 105 106 <FrameLayout 107 android:id="@+id/media_cover3_container" 108 style="@style/MediaPlayer.Recommendation.AlbumContainer" 109 > 110 <ImageView 111 android:id="@+id/media_cover3" 112 android:layout_width="match_parent" 113 android:layout_height="match_parent" 114 android:minWidth="@dimen/qs_media_rec_album_size" 115 android:minHeight="@dimen/qs_media_rec_album_size" 116 android:adjustViewBounds="true" 117 android:background="@drawable/bg_smartspace_media_item" 118 style="@style/MediaPlayer.Recommendation.Album" 119 android:clipToOutline="true" 120 android:scaleType="centerCrop"/> 121 </FrameLayout> 122 123 <TextView 124 android:id="@+id/media_title3" 125 style="@style/MediaPlayer.Recommendation.Text.Title" 126 /> 127 128 <TextView 129 android:id="@+id/media_subtitle3" 130 style="@style/MediaPlayer.Recommendation.Text.Subtitle" 131 /> 132 133 <include 134 layout="@layout/media_long_press_menu" /> 135 136</com.android.systemui.util.animation.TransitionLayout> 137