Merge "Import translations. DO NOT MERGE ANYWHERE" into main
diff --git a/src/com/android/customization/module/ThemePickerInjector.kt b/src/com/android/customization/module/ThemePickerInjector.kt
index 1975ad1..74e28b2 100644
--- a/src/com/android/customization/module/ThemePickerInjector.kt
+++ b/src/com/android/customization/module/ThemePickerInjector.kt
@@ -238,6 +238,7 @@
getKeyguardQuickAffordancePickerInteractor(context),
getWallpaperInteractor(context),
getCurrentWallpaperInfoFactory(context),
+ getUserEventLogger(context),
)
.also { keyguardQuickAffordancePickerViewModelFactory = it }
}
diff --git a/src/com/android/customization/picker/quickaffordance/ui/viewmodel/KeyguardQuickAffordancePickerViewModel.kt b/src/com/android/customization/picker/quickaffordance/ui/viewmodel/KeyguardQuickAffordancePickerViewModel.kt
index d67ad1d..42aced9 100644
--- a/src/com/android/customization/picker/quickaffordance/ui/viewmodel/KeyguardQuickAffordancePickerViewModel.kt
+++ b/src/com/android/customization/picker/quickaffordance/ui/viewmodel/KeyguardQuickAffordancePickerViewModel.kt
@@ -26,6 +26,7 @@
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.viewModelScope
+import com.android.customization.module.logging.ThemesUserEventLogger
import com.android.customization.picker.quickaffordance.domain.interactor.KeyguardQuickAffordancePickerInteractor
import com.android.systemui.shared.keyguard.shared.model.KeyguardQuickAffordanceSlots
import com.android.systemui.shared.quickaffordance.shared.model.KeyguardPreviewConstants
@@ -63,6 +64,7 @@
private val quickAffordanceInteractor: KeyguardQuickAffordancePickerInteractor,
private val wallpaperInteractor: WallpaperInteractor,
private val wallpaperInfoFactory: CurrentWallpaperInfoFactory,
+ private val logger: ThemesUserEventLogger,
) : ViewModel() {
@SuppressLint("StaticFieldLeak") private val applicationContext = context.applicationContext
@@ -216,6 +218,10 @@
{
viewModelScope.launch {
quickAffordanceInteractor.unselectAll(selectedSlotId)
+ logger.logShortcutApplied(
+ shortcut = "none",
+ shortcutSlotId = selectedSlotId,
+ )
}
}
} else {
@@ -251,6 +257,10 @@
slotId = selectedSlotId,
affordanceId = affordance.id,
)
+ logger.logShortcutApplied(
+ shortcut = affordance.id,
+ shortcutSlotId = selectedSlotId,
+ )
}
}
} else {
@@ -476,6 +486,7 @@
private val quickAffordanceInteractor: KeyguardQuickAffordancePickerInteractor,
private val wallpaperInteractor: WallpaperInteractor,
private val wallpaperInfoFactory: CurrentWallpaperInfoFactory,
+ private val logger: ThemesUserEventLogger,
) : ViewModelProvider.Factory {
override fun <T : ViewModel> create(modelClass: Class<T>): T {
@Suppress("UNCHECKED_CAST")
@@ -484,6 +495,7 @@
quickAffordanceInteractor = quickAffordanceInteractor,
wallpaperInteractor = wallpaperInteractor,
wallpaperInfoFactory = wallpaperInfoFactory,
+ logger = logger,
)
as T
}
diff --git a/src_override/com/android/wallpaper/module/AppModule.kt b/src_override/com/android/wallpaper/module/AppModule.kt
index 187b00b..f07c2b4 100644
--- a/src_override/com/android/wallpaper/module/AppModule.kt
+++ b/src_override/com/android/wallpaper/module/AppModule.kt
@@ -22,6 +22,7 @@
import com.android.customization.module.logging.ThemesUserEventLogger
import com.android.customization.module.logging.ThemesUserEventLoggerImpl
import com.android.wallpaper.module.logging.UserEventLogger
+import com.android.wallpaper.util.converter.DefaultWallpaperModelFactory
import dagger.Binds
import dagger.Module
import dagger.Provides
@@ -51,5 +52,11 @@
): WallpaperPreferences {
return DefaultCustomizationPreferences(context)
}
+
+ @Provides
+ @Singleton
+ fun provideDefaultWallpaperModelFactory(): DefaultWallpaperModelFactory {
+ return DefaultWallpaperModelFactory()
+ }
}
}
diff --git a/tests/module/src/com/android/customization/TestModule.kt b/tests/module/src/com/android/customization/TestModule.kt
index 79a91c3..19c42f8 100644
--- a/tests/module/src/com/android/customization/TestModule.kt
+++ b/tests/module/src/com/android/customization/TestModule.kt
@@ -13,8 +13,10 @@
import com.android.wallpaper.module.logging.UserEventLogger
import com.android.wallpaper.testing.TestInjector
import com.android.wallpaper.testing.TestWallpaperPreferences
+import com.android.wallpaper.util.converter.DefaultWallpaperModelFactory
import dagger.Binds
import dagger.Module
+import dagger.Provides
import dagger.hilt.components.SingletonComponent
import dagger.hilt.testing.TestInstallIn
import javax.inject.Singleton
@@ -57,4 +59,12 @@
abstract fun bindCustomizationPrefs(
impl: TestDefaultCustomizationPreferences
): CustomizationPreferences
+
+ companion object {
+ @Provides
+ @Singleton
+ fun provideDefaultWallpaperModelFactory(): DefaultWallpaperModelFactory {
+ return DefaultWallpaperModelFactory()
+ }
+ }
}
diff --git a/tests/robotests/src/com/android/customization/model/picker/quickaffordance/ui/viewmodel/KeyguardQuickAffordancePickerViewModelTest.kt b/tests/robotests/src/com/android/customization/model/picker/quickaffordance/ui/viewmodel/KeyguardQuickAffordancePickerViewModelTest.kt
index 3221024..a82cc00 100644
--- a/tests/robotests/src/com/android/customization/model/picker/quickaffordance/ui/viewmodel/KeyguardQuickAffordancePickerViewModelTest.kt
+++ b/tests/robotests/src/com/android/customization/model/picker/quickaffordance/ui/viewmodel/KeyguardQuickAffordancePickerViewModelTest.kt
@@ -116,6 +116,7 @@
quickAffordanceInteractor = quickAffordanceInteractor,
wallpaperInteractor = wallpaperInteractor,
wallpaperInfoFactory = TestCurrentWallpaperInfoFactory(context),
+ logger = logger,
)
.create(KeyguardQuickAffordancePickerViewModel::class.java)
}