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

Commit 0023b25c authored by Ioana Alexandru's avatar Ioana Alexandru
Browse files

Notif redesign: Account for low ram icon size

These sizes are technically the same by default, but we should still
respect the contract of the declared dimensions.

Bug: 371174789
Test: cannot test, will be unit tested in follow-up
Flag: android.app.notifications_redesign_app_icons
Change-Id: Ic23f2c4132ef25585a8546ed02901820fdf2ca6d
parent f94d0057
Loading
Loading
Loading
Loading
+11 −6
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.systemui.statusbar.notification.row.icon

import android.app.ActivityManager
import android.app.Flags
import android.content.Context
import android.content.pm.PackageManager.NameNotFoundException
@@ -41,12 +42,16 @@ interface AppIconProvider {
@SysUISingleton
class AppIconProviderImpl @Inject constructor(private val sysuiContext: Context) : AppIconProvider {
    private val iconFactory: BaseIconFactory
        get() =
            BaseIconFactory(
                sysuiContext,
                sysuiContext.resources.configuration.densityDpi,
                sysuiContext.resources.getDimensionPixelSize(R.dimen.notification_icon_circle_size),
        get() {
            val isLowRam = ActivityManager.isLowRamDeviceStatic()
            val res = sysuiContext.resources
            val iconSize: Int =
                res.getDimensionPixelSize(
                    if (isLowRam) R.dimen.notification_small_icon_size_low_ram
                    else R.dimen.notification_small_icon_size
                )
            return BaseIconFactory(sysuiContext, res.configuration.densityDpi, iconSize)
        }

    override fun getOrFetchAppIcon(packageName: String, context: Context): Drawable {
        val icon = context.packageManager.getApplicationIcon(packageName)