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

Commit 7e7afac7 authored by Uwais Ashraf's avatar Uwais Ashraf
Browse files

Change drawing in TTV to use Views rather than Canvas

Fix: 352332386
Test: Presubmit, Manual
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Change-Id: Ia1b7b6dc3d093d431ce022e793f40e61cec38ac6
parent 0ac34a33
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -28,7 +28,7 @@
    launcher:focusBorderColor="?androidprv:attr/materialColorOutline"
    launcher:hoverBorderColor="?androidprv:attr/materialColorPrimary">

    <include layout="@layout/task_thumbnail" />
    <include layout="@layout/task_thumbnail_deprecated" />

    <!-- Filtering affects only alpha instead of the visibility since visibility can be altered
         separately through RecentsView#resetFromSplitSelectionState() -->
+2 −2
Original line number Diff line number Diff line
@@ -33,9 +33,9 @@
    launcher:focusBorderColor="?androidprv:attr/materialColorOutline"
    launcher:hoverBorderColor="?androidprv:attr/materialColorPrimary">

    <include layout="@layout/task_thumbnail"/>
    <include layout="@layout/task_thumbnail_deprecated"/>

    <include layout="@layout/task_thumbnail"
    <include layout="@layout/task_thumbnail_deprecated"
        android:id="@+id/bottomright_snapshot" />

    <!-- Filtering affects only alpha instead of the visibility since visibility can be altered
+24 −3
Original line number Diff line number Diff line
@@ -13,8 +13,29 @@
     See the License for the specific language governing permissions and
     limitations under the License.
-->
<com.android.quickstep.views.TaskThumbnailViewDeprecated
<com.android.quickstep.task.thumbnail.TaskThumbnailView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/snapshot"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />
 No newline at end of file
    android:layout_height="match_parent">

    <ImageView
        android:id="@+id/task_thumbnail"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:importantForAccessibility="no"
        android:visibility="gone"/>

    <com.android.quickstep.task.thumbnail.LiveTileView
        android:id="@+id/task_thumbnail_live_tile"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:visibility="gone"/>

    <View
        android:id="@+id/task_thumbnail_scrim"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/overview_foreground_scrim_color"
        android:alpha="0" />

</com.android.quickstep.task.thumbnail.TaskThumbnailView>
 No newline at end of file
+20 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?><!--
     Copyright (C) 2024 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->
<com.android.quickstep.views.TaskThumbnailViewDeprecated
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/snapshot"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />
 No newline at end of file
+46 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2024 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.quickstep.task.thumbnail

import android.content.Context
import android.graphics.Canvas
import android.graphics.Paint
import android.graphics.PorterDuff
import android.graphics.PorterDuffXfermode
import android.util.AttributeSet
import android.view.View

class LiveTileView : View {
    constructor(context: Context) : super(context)

    constructor(context: Context, attrs: AttributeSet?) : super(context, attrs)

    constructor(
        context: Context,
        attrs: AttributeSet?,
        defStyleAttr: Int,
    ) : super(context, attrs, defStyleAttr)

    override fun onDraw(canvas: Canvas) {
        canvas.drawRect(0f, 0f, measuredWidth.toFloat(), measuredHeight.toFloat(), CLEAR_PAINT)
    }

    companion object {
        private val CLEAR_PAINT =
            Paint().apply { xfermode = PorterDuffXfermode(PorterDuff.Mode.CLEAR) }
    }
}
Loading