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

Commit 42879987 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Move GradientColorWallpaper feature flag gating from resource to Java" into main

parents f3c34ce1 9272943b
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -551,7 +551,6 @@
                android:exported="true" />

        <service android:name=".wallpapers.GradientColorWallpaper"
            android:featureFlag="android.app.enable_connected_displays_wallpaper"
            android:singleUser="true"
            android:permission="android.permission.BIND_WALLPAPER"
            android:exported="true" />
+16 −0
Original line number Diff line number Diff line
@@ -16,11 +16,14 @@

package com.android.systemui.wallpapers

import android.app.Flags
import android.content.Context
import android.graphics.Canvas
import android.graphics.Paint
import android.graphics.Rect
import android.graphics.RectF
import android.platform.test.annotations.DisableFlags
import android.platform.test.annotations.EnableFlags
import android.service.wallpaper.WallpaperService.Engine
import android.testing.TestableLooper.RunWithLooper
import android.view.Surface
@@ -37,6 +40,7 @@ import org.mockito.Mockito.spy
import org.mockito.MockitoAnnotations
import org.mockito.kotlin.any
import org.mockito.kotlin.verify
import org.mockito.kotlin.verifyZeroInteractions
import org.mockito.kotlin.whenever

@SmallTest
@@ -70,6 +74,18 @@ class GradientColorWallpaperTest : SysuiTestCase() {
    }

    @Test
    @DisableFlags(Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WALLPAPER)
    fun onSurfaceRedrawNeeded_flagDisabled_shouldNotDrawInCanvas() {
        val engine = createGradientColorWallpaperEngine()
        engine.onCreate(surfaceHolder)

        engine.onSurfaceRedrawNeeded(surfaceHolder)

        verifyZeroInteractions(canvas)
    }

    @Test
    @EnableFlags(Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WALLPAPER)
    fun onSurfaceRedrawNeeded_shouldDrawInCanvas() {
        val engine = createGradientColorWallpaperEngine()
        engine.onCreate(surfaceHolder)
+10 −1
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.systemui.wallpapers

import android.app.Flags
import android.graphics.Canvas
import android.graphics.Paint
import android.service.wallpaper.WallpaperService
@@ -26,7 +27,15 @@ import androidx.core.graphics.toRectF
/** A wallpaper that shows a static gradient color image wallpaper. */
class GradientColorWallpaper : WallpaperService() {

    override fun onCreateEngine(): Engine = GradientColorWallpaperEngine()
    override fun onCreateEngine(): Engine =
        if (Flags.enableConnectedDisplaysWallpaper()) {
            GradientColorWallpaperEngine()
        } else {
            EmptyWallpaperEngine()
        }

    /** Empty engine used when the feature flag is disabled. */
    inner class EmptyWallpaperEngine : Engine()

    inner class GradientColorWallpaperEngine : Engine() {
        init {