Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e49cc0e1 authored by Android Build Merger (Role)'s avatar Android Build Merger (Role) Committed by Android (Google) Code Review
Browse files

Merge "Merge "Move music icon to secondary row" into qt-dev am: 83ee7d1f am: 332b34dd"

parents cf34a400 6f26a11e
Loading
Loading
Loading
Loading
+14 −28
Original line number Diff line number Diff line
@@ -25,9 +25,7 @@ import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.graphics.Rect;
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.Icon;
import android.icu.text.DateFormat;
import android.icu.text.DisplayContext;
@@ -37,13 +35,8 @@ import android.os.Handler;
import android.os.Trace;
import android.provider.Settings;
import android.service.notification.ZenModeConfig;
import android.text.SpannableStringBuilder;
import android.text.Spanned;
import android.text.TextUtils;
import android.text.style.DynamicDrawableSpan;
import android.text.style.ImageSpan;
import android.text.style.StyleSpan;
import android.util.MathUtils;

import androidx.core.graphics.drawable.IconCompat;
import androidx.slice.Slice;
@@ -205,9 +198,9 @@ public class KeyguardSliceProvider extends SliceProvider implements
                addMediaLocked(builder);
            } else {
                builder.addRow(new RowBuilder(mDateUri).setTitle(mLastText));
            }
            addNextAlarmLocked(builder);
            addZenModeLocked(builder);
            }
            addPrimaryActionLocked(builder);
            slice = builder.build();
        }
@@ -221,32 +214,25 @@ public class KeyguardSliceProvider extends SliceProvider implements

    protected void addMediaLocked(ListBuilder listBuilder) {
        if (mMediaMetaData != null) {
            SpannableStringBuilder builder = new SpannableStringBuilder();

            Icon notificationIcon = mMediaManager == null ? null : mMediaManager.getMediaIcon();
            if (notificationIcon != null) {
                Drawable drawable = notificationIcon.loadDrawable(getContext());
                Rect mediaBounds = new Rect(0 /* left */, 0 /* top */,
                        drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
                int iconHeaderSize = getContext().getResources()
                        .getDimensionPixelSize(R.dimen.header_icon_size);
                MathUtils.fitRect(mediaBounds, iconHeaderSize);
                drawable.setBounds(mediaBounds);
                builder.append("# ");
                builder.setSpan(new ImageSpan(drawable, DynamicDrawableSpan.ALIGN_CENTER),
                        0 /* start */, 1 /* end */, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
            }

            CharSequence title = mMediaMetaData.getText(MediaMetadata.METADATA_KEY_TITLE);
            if (TextUtils.isEmpty(title)) {
                title = getContext().getResources().getString(R.string.music_controls_no_title);
            }
            builder.append(title);
            listBuilder.setHeader(new ListBuilder.HeaderBuilder(mHeaderUri).setTitle(builder));
            listBuilder.setHeader(new ListBuilder.HeaderBuilder(mHeaderUri).setTitle(title));

            CharSequence album = mMediaMetaData.getText(MediaMetadata.METADATA_KEY_ARTIST);
            if (!TextUtils.isEmpty(album)) {
                listBuilder.addRow(new RowBuilder(mMediaUri).setTitle(album));
                RowBuilder albumBuilder = new RowBuilder(mMediaUri);
                albumBuilder.setTitle(album);

                Icon mediaIcon = mMediaManager == null ? null : mMediaManager.getMediaIcon();
                IconCompat mediaIconCompat = mediaIcon == null ? null
                        : IconCompat.createFromIcon(getContext(), mediaIcon);
                if (mediaIconCompat != null) {
                    albumBuilder.addEndItem(mediaIconCompat, ListBuilder.ICON_IMAGE);
                }

                listBuilder.addRow(albumBuilder);
            }
        }
    }
+2 −0
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import static org.mockito.Mockito.never;
import static org.mockito.Mockito.reset;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import android.app.AlarmManager;
import android.content.ContentResolver;
@@ -102,6 +103,7 @@ public class KeyguardSliceProviderTest extends SysuiTestCase {
    @Test
    public void onBindSlice_readsMedia() {
        MediaMetadata metadata = mock(MediaMetadata.class);
        when(metadata.getText(any())).thenReturn("metadata");
        mProvider.onDozingChanged(true);
        mProvider.onMetadataChanged(metadata);
        mProvider.onBindSlice(mProvider.getUri());