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

Commit 386dfd85 authored by George Lin's avatar George Lin
Browse files

Fix crash of resource not found (1/2)

Do not use -1 as res Id

Test: Manually tested no crash
Bug: 292124238
Change-Id: Iadd8cf97291560899a779fae5c0bcc3e7d6d10cd
parent 50ce33ce
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@
package com.android.customization.module

import android.content.Context
import android.content.res.Resources
import androidx.activity.ComponentActivity
import androidx.fragment.app.FragmentActivity
import com.android.customization.model.theme.OverlayManagerCompat
@@ -78,5 +79,5 @@ interface CustomizationInjector : Injector {
        clockViewFactory: ClockViewFactory,
    ): ClockSettingsViewModel.Factory

    fun getClockDescriptionUtils(): ClockDescriptionUtils
    fun getClockDescriptionUtils(resources: Resources): ClockDescriptionUtils
}
+2 −1
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ import android.app.UiModeManager
import android.app.WallpaperManager
import android.content.Context
import android.content.Intent
import android.content.res.Resources
import android.net.Uri
import android.os.Bundle
import android.text.TextUtils
@@ -541,7 +542,7 @@ open class ThemePickerInjector : WallpaperPicker2Injector(), CustomizationInject
                .also { clockSettingsViewModelFactory = it }
    }

    override fun getClockDescriptionUtils(): ClockDescriptionUtils {
    override fun getClockDescriptionUtils(resources: Resources): ClockDescriptionUtils {
        return clockDescriptionUtils
            ?: ThemePickerClockDescriptionUtils().also { clockDescriptionUtils = it }
    }
+2 −3
Original line number Diff line number Diff line
@@ -26,9 +26,8 @@ class ClockCarouselItemViewModel(val clockId: String, val isSelected: Boolean) {
    fun getContentDescription(resources: Resources): String {
        val clockContent =
            (InjectorProvider.getInjector() as? CustomizationInjector)
                ?.getClockDescriptionUtils()
                ?.getDescriptionResId(clockId)
                ?.let { resources.getString(it) }
                ?.getClockDescriptionUtils(resources)
                ?.getDescription(clockId)
                ?: ""
        return resources.getString(R.string.select_clock_action_description, clockContent)
    }
+3 −5
Original line number Diff line number Diff line
@@ -15,14 +15,12 @@
 */
package com.android.customization.picker.clock.utils

import androidx.annotation.StringRes

/** Provides clock description for accessibility purposes. */
interface ClockDescriptionUtils {

    /**
     * TODO (b/287507746) : Migrate description res ID to system UI or a shared library, instead of
     * preserving the clock description at the Wallpaper Picker side.
     * TODO (b/287507746) : Migrate the clock description to system UI or a shared library, instead
     * of preserving at the Wallpaper Picker side.
     */
    @StringRes fun getDescriptionResId(clockId: String): Int
    fun getDescription(clockId: String): String
}
+2 −6
Original line number Diff line number Diff line
@@ -15,12 +15,8 @@
 */
package com.android.customization.picker.clock.utils

import androidx.annotation.StringRes
import com.android.wallpaper.R

class ThemePickerClockDescriptionUtils : ClockDescriptionUtils {
    @StringRes
    override fun getDescriptionResId(clockId: String): Int {
        return R.string.clock_title
    override fun getDescription(clockId: String): String {
        return ""
    }
}