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

Commit dd737b59 authored by Jagrut Desai's avatar Jagrut Desai
Browse files

Refactor TaskbarIconSpecs and TaskbarSpecsEvaluator

This cl includes
	- Because of IconNormalizer bug we are inflating iconsizes to match the specs.
	- specs changed from row x column to column X row.

Test: Presubmit
Bug: 356465292
Flag: com.android.launcher3.enable_taskbar_customization
Change-Id: I4b4856da92053149267e66a187f744c9c00ea3d9
parent 3aa9668b
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -19,10 +19,11 @@ package com.android.launcher3.taskbar.customization
/** Taskbar Icon Specs */
object TaskbarIconSpecs {

    val iconSize40dp = TaskbarIconSize(40)
    val iconSize44dp = TaskbarIconSize(44)
    val iconSize48dp = TaskbarIconSize(48)
    val iconSize52dp = TaskbarIconSize(52)
    // Mapping of visual icon size to icon specs value http://b/235886078
    val iconSize40dp = TaskbarIconSize(44)
    val iconSize44dp = TaskbarIconSize(48)
    val iconSize48dp = TaskbarIconSize(52)
    val iconSize52dp = TaskbarIconSize(57)

    val transientTaskbarIconSizes = arrayOf(iconSize44dp, iconSize48dp, iconSize52dp)

+6 −6
Original line number Diff line number Diff line
@@ -25,14 +25,14 @@ class TaskbarSpecsEvaluator(
    numRows: Int = taskbarActivityContext.deviceProfile.inv.numRows,
    numColumns: Int = taskbarActivityContext.deviceProfile.inv.numColumns,
) {
    var taskbarIconSize: TaskbarIconSize = getIconSizeByGrid(numRows, numColumns)
    var taskbarIconSize: TaskbarIconSize = getIconSizeByGrid(numColumns, numRows)

    // TODO(b/341146605) : initialize it to taskbar container in later cl.
    private var taskbarContainer: List<TaskbarContainer> = emptyList()

    val taskbarIconPadding: Int =
        if (TaskbarIconSpecs.minimumTaskbarIconTouchSize.size > taskbarIconSize.size) {
            (TaskbarIconSpecs.minimumTaskbarIconTouchSize.size - taskbarIconSize.size) / 2
        if (TaskbarIconSpecs.iconSize52dp.size > taskbarIconSize.size) {
            (TaskbarIconSpecs.iconSize52dp.size - taskbarIconSize.size) / 2
        } else {
            0
        }
@@ -44,10 +44,10 @@ class TaskbarSpecsEvaluator(
            TaskbarIconSpecs.defaultPersistentIconMargin
        }

    fun getIconSizeByGrid(row: Int, column: Int): TaskbarIconSize {
    fun getIconSizeByGrid(columns: Int, rows: Int): TaskbarIconSize {
        return if (taskbarFeatureEvaluator.isTransient) {
            TaskbarIconSpecs.transientTaskbarIconSizeByGridSize.getOrDefault(
                TransientTaskbarIconSizeKey(row, column, taskbarFeatureEvaluator.isLandscape),
                TransientTaskbarIconSizeKey(columns, rows, taskbarFeatureEvaluator.isLandscape),
                TaskbarIconSpecs.defaultTransientIconSize,
            )
        } else {
@@ -102,6 +102,6 @@ class TaskbarSpecsEvaluator(

data class TaskbarIconSize(val size: Int)

data class TransientTaskbarIconSizeKey(val row: Int, val column: Int, val isLandscape: Boolean)
data class TransientTaskbarIconSizeKey(val columns: Int, val rows: Int, val isLandscape: Boolean)

data class TaskbarIconMarginSize(val size: Int)