Optimize app icon pixel dimensions
This commit is contained in:
parent
eae816c3d7
commit
9f8fdfaf65
@ -14,6 +14,7 @@ import android.net.Uri
|
|||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.os.Process
|
import android.os.Process
|
||||||
import android.os.UserHandle
|
import android.os.UserHandle
|
||||||
|
import android.util.Log
|
||||||
import androidx.core.content.FileProvider
|
import androidx.core.content.FileProvider
|
||||||
import androidx.core.content.getSystemService
|
import androidx.core.content.getSystemService
|
||||||
import de.mm20.launcher2.compat.PackageManagerCompat
|
import de.mm20.launcher2.compat.PackageManagerCompat
|
||||||
@ -31,6 +32,7 @@ import de.mm20.launcher2.search.SearchableSerializer
|
|||||||
import de.mm20.launcher2.search.StoreLink
|
import de.mm20.launcher2.search.StoreLink
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.withContext
|
import kotlinx.coroutines.withContext
|
||||||
|
import kotlin.math.roundToInt
|
||||||
|
|
||||||
internal data class LauncherApp(
|
internal data class LauncherApp(
|
||||||
private val launcherActivityInfo: LauncherActivityInfo,
|
private val launcherActivityInfo: LauncherActivityInfo,
|
||||||
@ -86,7 +88,11 @@ internal data class LauncherApp(
|
|||||||
try {
|
try {
|
||||||
val icon =
|
val icon =
|
||||||
withContext(Dispatchers.IO) {
|
withContext(Dispatchers.IO) {
|
||||||
launcherActivityInfo.getIcon(context.resources.displayMetrics.densityDpi)
|
// Adaptive icons have a size of 108dp (https://developer.android.com/develop/ui/views/launch/icon_design_adaptive#design-adaptive-icons),
|
||||||
|
// but we scale them to 1.5x so the inbounds are only 72dp
|
||||||
|
val density = size / (108/1.5)
|
||||||
|
Log.d("MM20", "Icon size: $size, density: $density, densityDpi: ${160 * density}")
|
||||||
|
launcherActivityInfo.getIcon((160 * density).roundToInt())
|
||||||
|
|
||||||
} ?: return null
|
} ?: return null
|
||||||
if (icon is AdaptiveIconDrawable) {
|
if (icon is AdaptiveIconDrawable) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user