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

Commit 18087d8b authored by Jagrut Desai's avatar Jagrut Desai Committed by Android (Google) Code Review
Browse files

Merge "Add orientation logic to taskbar icon specs" into main

parents 66d18b98 67b8de56
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -19,7 +19,6 @@ package com.android.launcher3.taskbar.customization
import com.android.launcher3.config.FeatureFlags.enableTaskbarPinning
import com.android.launcher3.taskbar.TaskbarActivityContext
import com.android.launcher3.taskbar.TaskbarControllers
import com.android.launcher3.taskbar.TaskbarRecentAppsController
import com.android.launcher3.util.DisplayController

/** Evaluates all the features taskbar can have. */
@@ -41,4 +40,7 @@ class TaskbarFeatureEvaluator(

    val isTransient: Boolean
        get() = DisplayController.isTransientTaskbar(taskbarActivityContext)

    val isLandscape: Boolean
        get() = taskbarActivityContext.deviceProfile.isLandscape
}
+8 −6
Original line number Diff line number Diff line
@@ -29,13 +29,15 @@ object TaskbarIconSpecs {
    val defaultPersistentIconSize = iconSize40dp
    val defaultTransientIconSize = iconSize44dp

    // defined as row, columns
    val transientTaskbarIconSizeByGridSize =
        mapOf(
            Pair(6, 5) to iconSize52dp,
            Pair(4, 5) to iconSize48dp,
            Pair(5, 4) to iconSize48dp,
            Pair(4, 4) to iconSize48dp,
            Pair(5, 6) to iconSize44dp,
            TransientTaskbarIconSizeKey(6, 5, false) to iconSize52dp,
            TransientTaskbarIconSizeKey(6, 5, true) to iconSize52dp,
            TransientTaskbarIconSizeKey(4, 4, false) to iconSize48dp,
            TransientTaskbarIconSizeKey(4, 4, true) to iconSize52dp,
            TransientTaskbarIconSizeKey(4, 5, false) to iconSize48dp,
            TransientTaskbarIconSizeKey(4, 5, true) to iconSize48dp,
            TransientTaskbarIconSizeKey(5, 5, false) to iconSize44dp,
            TransientTaskbarIconSizeKey(5, 5, true) to iconSize44dp,
        )
}
+3 −1
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@ class TaskbarSpecsEvaluator(private val taskbarFeatureEvaluator: TaskbarFeatureE
    fun getIconSizeByGrid(row: Int, column: Int): TaskbarIconSize {
        return if (taskbarFeatureEvaluator.isTransient) {
            TaskbarIconSpecs.transientTaskbarIconSizeByGridSize.getOrDefault(
                Pair(row, column),
                TransientTaskbarIconSizeKey(row, column, taskbarFeatureEvaluator.isLandscape),
                TaskbarIconSpecs.defaultTransientIconSize,
            )
        } else {
@@ -58,3 +58,5 @@ class TaskbarSpecsEvaluator(private val taskbarFeatureEvaluator: TaskbarFeatureE
}

data class TaskbarIconSize(val size: Int)

data class TransientTaskbarIconSizeKey(val row: Int, val column: Int, val isLandscape: Boolean)
+11 −2
Original line number Diff line number Diff line
@@ -35,12 +35,21 @@ class TaskbarSpecsEvaluatorTest {
    private val taskbarSpecsEvaluator = spy(TaskbarSpecsEvaluator(taskbarFeatureEvaluator))

    @Test
    fun testGetIconSizeByGrid_whenTaskbarIsTransient_withValidRowAndColumn() {
    fun testGetIconSizeByGrid_whenTaskbarIsTransient_withValidRowAndColumnInLandscape() {
        doReturn(true).whenever(taskbarFeatureEvaluator).isTransient
        assertThat(taskbarSpecsEvaluator.getIconSizeByGrid(6, 5))
        doReturn(true).whenever(taskbarFeatureEvaluator).isLandscape
        assertThat(taskbarSpecsEvaluator.getIconSizeByGrid(4, 4))
            .isEqualTo(TaskbarIconSpecs.iconSize52dp)
    }

    @Test
    fun testGetIconSizeByGrid_whenTaskbarIsTransient_withValidRowAndColumnInPortrait() {
        doReturn(true).whenever(taskbarFeatureEvaluator).isTransient
        doReturn(false).whenever(taskbarFeatureEvaluator).isLandscape
        assertThat(taskbarSpecsEvaluator.getIconSizeByGrid(4, 4))
            .isEqualTo(TaskbarIconSpecs.iconSize48dp)
    }

    @Test
    fun testGetIconSizeByGrid_whenTaskbarIsTransient_withInvalidRowAndColumn() {
        doReturn(true).whenever(taskbarFeatureEvaluator).isTransient