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

Commit d1516928 authored by beanstown106's avatar beanstown106 Committed by Michael Bestas
Browse files

SystemUI: Allow to disable Lockscreen Media Art [1/3]

Change-Id: Id93e115649df5d6dc680101a8c852644b217c28a
parent 4a380003
Loading
Loading
Loading
Loading
+21 −2
Original line number Diff line number Diff line
@@ -68,6 +68,9 @@ import com.android.systemui.statusbar.phone.ScrimState;
import com.android.systemui.statusbar.phone.ShadeController;
import com.android.systemui.statusbar.phone.StatusBarWindowController;
import com.android.systemui.statusbar.policy.KeyguardMonitor;
import com.android.systemui.tuner.TunerService;

import lineageos.providers.LineageSettings;

import java.io.FileDescriptor;
import java.io.PrintWriter;
@@ -87,10 +90,13 @@ import dagger.Lazy;
 * notification, which this class keeps track of.
 */
@Singleton
public class NotificationMediaManager implements Dumpable {
public class NotificationMediaManager implements Dumpable, TunerService.Tunable {
    private static final String TAG = "NotificationMediaManager";
    public static final boolean DEBUG_MEDIA = false;

    private static final String LOCKSCREEN_MEDIA_METADATA =
            "lineagesecure:" + LineageSettings.Secure.LOCKSCREEN_MEDIA_METADATA;

    private final StatusBarStateController mStatusBarStateController
            = Dependency.get(StatusBarStateController.class);
    private final SysuiColorExtractor mColorExtractor = Dependency.get(SysuiColorExtractor.class);
@@ -139,6 +145,8 @@ public class NotificationMediaManager implements Dumpable {
    private ImageView mBackdropBack;

    private boolean mShowCompactMediaSeekbar;
    private boolean mShowMediaMetadata;

    private final DeviceConfig.OnPropertiesChangedListener mPropertiesChangedListener =
            new DeviceConfig.OnPropertiesChangedListener() {
        @Override
@@ -218,6 +226,17 @@ public class NotificationMediaManager implements Dumpable {
        DeviceConfig.addOnPropertiesChangedListener(DeviceConfig.NAMESPACE_SYSTEMUI,
                mContext.getMainExecutor(),
                mPropertiesChangedListener);

        final TunerService tunerService = Dependency.get(TunerService.class);
        tunerService.addTunable(this, LOCKSCREEN_MEDIA_METADATA);
    }

    @Override
    public void onTuningChanged(String key, String newValue) {
        if (LOCKSCREEN_MEDIA_METADATA.equals(key)) {
            mShowMediaMetadata = TunerService.parseIntegerSwitch(newValue, true);
            dispatchUpdateMediaMetaData(false /* changed */, true /* allowAnimation */);
        }
    }

    public static boolean isPlayingState(int state) {
@@ -527,7 +546,7 @@ public class NotificationMediaManager implements Dumpable {
        StatusBarWindowController windowController = mStatusBarWindowController.get();
        boolean hideBecauseOccluded = shadeController != null && shadeController.isOccluded();

        final boolean hasArtwork = artworkDrawable != null;
        final boolean hasArtwork = mShowMediaMetadata && artworkDrawable != null;
        mColorExtractor.setHasMediaArtwork(hasMediaArtwork);
        if (mScrimController != null) {
            mScrimController.setHasBackdrop(hasArtwork);