summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-12-12 02:20:25 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-12-12 02:20:25 +0000
commit22622d2e07b2eef599644ec05cb7e8a627e79ea2 (patch)
tree63ea0c4db4136beed5401a5392c05ed6142138de
parentc702fd9ba2d3d07d0075a98405318fb4ff108aaf (diff)
parentfa36874a30b628218f8b82a9d3256aec06098d0b (diff)
downloadWallpaperPicker2-22622d2e07b2eef599644ec05cb7e8a627e79ea2.tar.gz
Snap for 11206181 from fa36874a30b628218f8b82a9d3256aec06098d0b to 24Q1-release
Change-Id: I30ededef0e11d69009782cd157bf5ab336b96c7e
-rw-r--r--src/com/android/wallpaper/model/wallpaper/DownloadableWallpaperData.kt28
-rw-r--r--src/com/android/wallpaper/model/wallpaper/WallpaperModel.kt3
-rwxr-xr-xsrc/com/android/wallpaper/module/WallpaperPicker2Injector.kt4
-rw-r--r--src/com/android/wallpaper/picker/di/modules/DispatchersModule.kt (renamed from src/com/android/wallpaper/dispatchers/DispatchersModule.kt)3
-rw-r--r--src/com/android/wallpaper/picker/di/modules/RepositoryModule.kt2
-rw-r--r--src/com/android/wallpaper/picker/preview/domain/interactor/PreviewActionsInteractor.kt4
-rw-r--r--src/com/android/wallpaper/picker/preview/ui/binder/FullWallpaperPreviewBinder.kt2
-rw-r--r--src/com/android/wallpaper/picker/preview/ui/binder/SmallPreviewBinder.kt2
-rw-r--r--src/com/android/wallpaper/picker/preview/ui/binder/SmallWallpaperPreviewBinder.kt2
-rw-r--r--src/com/android/wallpaper/picker/preview/ui/fragment/FullPreviewFragment.kt2
-rw-r--r--src/com/android/wallpaper/picker/preview/ui/fragment/SmallPreviewFragment.kt2
-rw-r--r--src/com/android/wallpaper/picker/preview/ui/viewmodel/PreviewActionsViewModel.kt8
-rw-r--r--src/com/android/wallpaper/picker/preview/ui/viewmodel/StaticWallpaperPreviewViewModel.kt2
-rw-r--r--src/com/android/wallpaper/util/converter/DefaultWallpaperModelFactory.kt3
-rw-r--r--src/com/android/wallpaper/util/wallpaperconnection/WallpaperConnectionUtils.kt2
15 files changed, 49 insertions, 20 deletions
diff --git a/src/com/android/wallpaper/model/wallpaper/DownloadableWallpaperData.kt b/src/com/android/wallpaper/model/wallpaper/DownloadableWallpaperData.kt
new file mode 100644
index 00000000..04ff8c60
--- /dev/null
+++ b/src/com/android/wallpaper/model/wallpaper/DownloadableWallpaperData.kt
@@ -0,0 +1,28 @@
+/*
+ * Copyright 2023 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.wallpaper.model.wallpaper
+
+import android.app.WallpaperInfo
+
+/** Represents set of attributes that are needed for a wallpaper that is downloadable. */
+data class DownloadableWallpaperData(
+ val groupName: String,
+ val systemWallpaperInfo: WallpaperInfo,
+ val isTitleVisible: Boolean,
+ val isApplied: Boolean,
+ val effectNames: String?,
+)
diff --git a/src/com/android/wallpaper/model/wallpaper/WallpaperModel.kt b/src/com/android/wallpaper/model/wallpaper/WallpaperModel.kt
index 2d09da32..ac33dd74 100644
--- a/src/com/android/wallpaper/model/wallpaper/WallpaperModel.kt
+++ b/src/com/android/wallpaper/model/wallpaper/WallpaperModel.kt
@@ -40,6 +40,7 @@ sealed class WallpaperModel {
override val commonWallpaperData: CommonWallpaperData,
val staticWallpaperData: StaticWallpaperData,
val imageWallpaperData: ImageWallpaperData?,
- val networkWallpaperData: NetworkWallpaperData?
+ val networkWallpaperData: NetworkWallpaperData?,
+ val downloadableWallpaperData: DownloadableWallpaperData?,
) : WallpaperModel()
}
diff --git a/src/com/android/wallpaper/module/WallpaperPicker2Injector.kt b/src/com/android/wallpaper/module/WallpaperPicker2Injector.kt
index 552bfc55..d1350204 100755
--- a/src/com/android/wallpaper/module/WallpaperPicker2Injector.kt
+++ b/src/com/android/wallpaper/module/WallpaperPicker2Injector.kt
@@ -26,8 +26,6 @@ import androidx.fragment.app.Fragment
import androidx.lifecycle.LifecycleOwner
import com.android.customization.model.color.WallpaperColorResources
import com.android.wallpaper.config.BaseFlags
-import com.android.wallpaper.dispatchers.BackgroundDispatcher
-import com.android.wallpaper.dispatchers.MainDispatcher
import com.android.wallpaper.effects.EffectsController
import com.android.wallpaper.model.CategoryProvider
import com.android.wallpaper.model.InlinePreviewIntentFactory
@@ -49,6 +47,8 @@ import com.android.wallpaper.picker.customization.data.repository.WallpaperColor
import com.android.wallpaper.picker.customization.data.repository.WallpaperRepository
import com.android.wallpaper.picker.customization.domain.interactor.WallpaperInteractor
import com.android.wallpaper.picker.customization.domain.interactor.WallpaperSnapshotRestorer
+import com.android.wallpaper.picker.di.modules.BackgroundDispatcher
+import com.android.wallpaper.picker.di.modules.MainDispatcher
import com.android.wallpaper.picker.individual.IndividualPickerFragment
import com.android.wallpaper.picker.undo.data.repository.UndoRepository
import com.android.wallpaper.picker.undo.domain.interactor.UndoInteractor
diff --git a/src/com/android/wallpaper/dispatchers/DispatchersModule.kt b/src/com/android/wallpaper/picker/di/modules/DispatchersModule.kt
index 2bdfd717..e78d0857 100644
--- a/src/com/android/wallpaper/dispatchers/DispatchersModule.kt
+++ b/src/com/android/wallpaper/picker/di/modules/DispatchersModule.kt
@@ -12,10 +12,9 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
*/
-package com.android.wallpaper.dispatchers
+package com.android.wallpaper.picker.di.modules
import dagger.Module
import dagger.Provides
diff --git a/src/com/android/wallpaper/picker/di/modules/RepositoryModule.kt b/src/com/android/wallpaper/picker/di/modules/RepositoryModule.kt
index 1b30b0da..25a6697f 100644
--- a/src/com/android/wallpaper/picker/di/modules/RepositoryModule.kt
+++ b/src/com/android/wallpaper/picker/di/modules/RepositoryModule.kt
@@ -17,8 +17,6 @@ package com.android.wallpaper.picker.di.modules
import android.app.WallpaperManager
import android.content.Context
-import com.android.wallpaper.dispatchers.BackgroundDispatcher
-import com.android.wallpaper.dispatchers.MainDispatcher
import com.android.wallpaper.module.WallpaperPreferences
import com.android.wallpaper.picker.customization.data.content.WallpaperClient
import com.android.wallpaper.picker.customization.data.content.WallpaperClientImpl
diff --git a/src/com/android/wallpaper/picker/preview/domain/interactor/PreviewActionsInteractor.kt b/src/com/android/wallpaper/picker/preview/domain/interactor/PreviewActionsInteractor.kt
index 30a2de30..de186039 100644
--- a/src/com/android/wallpaper/picker/preview/domain/interactor/PreviewActionsInteractor.kt
+++ b/src/com/android/wallpaper/picker/preview/domain/interactor/PreviewActionsInteractor.kt
@@ -16,9 +16,9 @@
package com.android.wallpaper.picker.preview.domain.interactor
-import com.android.wallpaper.dispatchers.BackgroundDispatcher
-import com.android.wallpaper.dispatchers.MainDispatcher
import com.android.wallpaper.model.wallpaper.WallpaperModel
+import com.android.wallpaper.picker.di.modules.BackgroundDispatcher
+import com.android.wallpaper.picker.di.modules.MainDispatcher
import com.android.wallpaper.picker.preview.data.repository.WallpaperPreviewRepository
import dagger.hilt.android.scopes.ActivityRetainedScoped
import javax.inject.Inject
diff --git a/src/com/android/wallpaper/picker/preview/ui/binder/FullWallpaperPreviewBinder.kt b/src/com/android/wallpaper/picker/preview/ui/binder/FullWallpaperPreviewBinder.kt
index dfed897d..b77ef97c 100644
--- a/src/com/android/wallpaper/picker/preview/ui/binder/FullWallpaperPreviewBinder.kt
+++ b/src/com/android/wallpaper/picker/preview/ui/binder/FullWallpaperPreviewBinder.kt
@@ -28,9 +28,9 @@ import androidx.lifecycle.LifecycleOwner
import androidx.lifecycle.lifecycleScope
import androidx.lifecycle.repeatOnLifecycle
import com.android.wallpaper.R
-import com.android.wallpaper.dispatchers.MainDispatcher
import com.android.wallpaper.model.wallpaper.WallpaperModel
import com.android.wallpaper.picker.TouchForwardingLayout
+import com.android.wallpaper.picker.di.modules.MainDispatcher
import com.android.wallpaper.picker.preview.ui.util.FullResImageViewUtil.getCropRect
import com.android.wallpaper.picker.preview.ui.util.SurfaceViewUtil
import com.android.wallpaper.picker.preview.ui.util.SurfaceViewUtil.attachView
diff --git a/src/com/android/wallpaper/picker/preview/ui/binder/SmallPreviewBinder.kt b/src/com/android/wallpaper/picker/preview/ui/binder/SmallPreviewBinder.kt
index 828f83ec..d3a63ade 100644
--- a/src/com/android/wallpaper/picker/preview/ui/binder/SmallPreviewBinder.kt
+++ b/src/com/android/wallpaper/picker/preview/ui/binder/SmallPreviewBinder.kt
@@ -20,10 +20,10 @@ import android.view.SurfaceView
import android.view.View
import androidx.lifecycle.LifecycleOwner
import com.android.wallpaper.R
-import com.android.wallpaper.dispatchers.MainDispatcher
import com.android.wallpaper.model.wallpaper.FoldableDisplay
import com.android.wallpaper.model.wallpaper.ScreenOrientation
import com.android.wallpaper.module.CustomizationSections.Screen
+import com.android.wallpaper.picker.di.modules.MainDispatcher
import com.android.wallpaper.picker.preview.ui.viewmodel.WallpaperPreviewViewModel
import kotlinx.coroutines.CoroutineScope
diff --git a/src/com/android/wallpaper/picker/preview/ui/binder/SmallWallpaperPreviewBinder.kt b/src/com/android/wallpaper/picker/preview/ui/binder/SmallWallpaperPreviewBinder.kt
index 2b941f99..d6a70fa4 100644
--- a/src/com/android/wallpaper/picker/preview/ui/binder/SmallWallpaperPreviewBinder.kt
+++ b/src/com/android/wallpaper/picker/preview/ui/binder/SmallWallpaperPreviewBinder.kt
@@ -22,10 +22,10 @@ import android.view.SurfaceView
import androidx.lifecycle.LifecycleOwner
import androidx.lifecycle.lifecycleScope
import com.android.wallpaper.R
-import com.android.wallpaper.dispatchers.MainDispatcher
import com.android.wallpaper.model.wallpaper.ScreenOrientation
import com.android.wallpaper.model.wallpaper.WallpaperModel
import com.android.wallpaper.module.CustomizationSections.Screen
+import com.android.wallpaper.picker.di.modules.MainDispatcher
import com.android.wallpaper.picker.preview.ui.util.SurfaceViewUtil
import com.android.wallpaper.picker.preview.ui.util.SurfaceViewUtil.attachView
import com.android.wallpaper.picker.preview.ui.viewmodel.WallpaperPreviewViewModel
diff --git a/src/com/android/wallpaper/picker/preview/ui/fragment/FullPreviewFragment.kt b/src/com/android/wallpaper/picker/preview/ui/fragment/FullPreviewFragment.kt
index 9c77da1e..c0228254 100644
--- a/src/com/android/wallpaper/picker/preview/ui/fragment/FullPreviewFragment.kt
+++ b/src/com/android/wallpaper/picker/preview/ui/fragment/FullPreviewFragment.kt
@@ -27,8 +27,8 @@ import androidx.fragment.app.activityViewModels
import androidx.navigation.fragment.findNavController
import androidx.transition.TransitionInflater
import com.android.wallpaper.R
-import com.android.wallpaper.dispatchers.MainDispatcher
import com.android.wallpaper.picker.AppbarFragment
+import com.android.wallpaper.picker.di.modules.MainDispatcher
import com.android.wallpaper.picker.preview.ui.binder.CropWallpaperButtonBinder
import com.android.wallpaper.picker.preview.ui.binder.FullWallpaperPreviewBinder
import com.android.wallpaper.picker.preview.ui.binder.WorkspacePreviewBinder
diff --git a/src/com/android/wallpaper/picker/preview/ui/fragment/SmallPreviewFragment.kt b/src/com/android/wallpaper/picker/preview/ui/fragment/SmallPreviewFragment.kt
index 1bdef69c..31a46359 100644
--- a/src/com/android/wallpaper/picker/preview/ui/fragment/SmallPreviewFragment.kt
+++ b/src/com/android/wallpaper/picker/preview/ui/fragment/SmallPreviewFragment.kt
@@ -26,9 +26,9 @@ import androidx.fragment.app.activityViewModels
import androidx.navigation.fragment.FragmentNavigatorExtras
import androidx.navigation.fragment.findNavController
import com.android.wallpaper.R
-import com.android.wallpaper.dispatchers.MainDispatcher
import com.android.wallpaper.module.logging.UserEventLogger
import com.android.wallpaper.picker.AppbarFragment
+import com.android.wallpaper.picker.di.modules.MainDispatcher
import com.android.wallpaper.picker.preview.ui.binder.DualPreviewSelectorBinder
import com.android.wallpaper.picker.preview.ui.binder.PreviewActionsBinder
import com.android.wallpaper.picker.preview.ui.binder.PreviewSelectorBinder
diff --git a/src/com/android/wallpaper/picker/preview/ui/viewmodel/PreviewActionsViewModel.kt b/src/com/android/wallpaper/picker/preview/ui/viewmodel/PreviewActionsViewModel.kt
index 0da81215..baff8139 100644
--- a/src/com/android/wallpaper/picker/preview/ui/viewmodel/PreviewActionsViewModel.kt
+++ b/src/com/android/wallpaper/picker/preview/ui/viewmodel/PreviewActionsViewModel.kt
@@ -16,8 +16,8 @@
package com.android.wallpaper.picker.preview.ui.viewmodel
-import com.android.wallpaper.dispatchers.MainDispatcher
import com.android.wallpaper.model.wallpaper.WallpaperModel
+import com.android.wallpaper.picker.di.modules.MainDispatcher
import com.android.wallpaper.picker.preview.domain.interactor.PreviewActionsInteractor
import com.android.wallpaper.picker.preview.ui.viewmodel.Action.CUSTOMIZE
import com.android.wallpaper.picker.preview.ui.viewmodel.Action.DELETE
@@ -60,8 +60,10 @@ constructor(
/** Action's isVisible state */
val isInformationVisible: Flow<Boolean> = _informationFloatingSheetViewModel.map { it != null }
- private val _isDownloadVisible: MutableStateFlow<Boolean> = MutableStateFlow(false)
- val isDownloadVisible: Flow<Boolean> = _isDownloadVisible.asStateFlow()
+ val isDownloadVisible: Flow<Boolean> =
+ interactor.wallpaperModel.map {
+ (it as? WallpaperModel.StaticWallpaperModel)?.downloadableWallpaperData != null
+ }
private val _isDeleteVisible: MutableStateFlow<Boolean> = MutableStateFlow(false)
val isDeleteVisible: Flow<Boolean> = _isDeleteVisible.asStateFlow()
diff --git a/src/com/android/wallpaper/picker/preview/ui/viewmodel/StaticWallpaperPreviewViewModel.kt b/src/com/android/wallpaper/picker/preview/ui/viewmodel/StaticWallpaperPreviewViewModel.kt
index e2467e47..bf561882 100644
--- a/src/com/android/wallpaper/picker/preview/ui/viewmodel/StaticWallpaperPreviewViewModel.kt
+++ b/src/com/android/wallpaper/picker/preview/ui/viewmodel/StaticWallpaperPreviewViewModel.kt
@@ -23,10 +23,10 @@ import android.graphics.ColorSpace
import android.graphics.Point
import android.graphics.Rect
import com.android.wallpaper.asset.Asset
-import com.android.wallpaper.dispatchers.BackgroundDispatcher
import com.android.wallpaper.model.wallpaper.ScreenOrientation
import com.android.wallpaper.model.wallpaper.WallpaperModel.StaticWallpaperModel
import com.android.wallpaper.module.WallpaperPreferences
+import com.android.wallpaper.picker.di.modules.BackgroundDispatcher
import com.android.wallpaper.picker.preview.domain.interactor.WallpaperPreviewInteractor
import com.android.wallpaper.picker.preview.ui.WallpaperPreviewActivity
import dagger.hilt.android.qualifiers.ApplicationContext
diff --git a/src/com/android/wallpaper/util/converter/DefaultWallpaperModelFactory.kt b/src/com/android/wallpaper/util/converter/DefaultWallpaperModelFactory.kt
index 09599fb8..b5e2ae45 100644
--- a/src/com/android/wallpaper/util/converter/DefaultWallpaperModelFactory.kt
+++ b/src/com/android/wallpaper/util/converter/DefaultWallpaperModelFactory.kt
@@ -48,7 +48,8 @@ class DefaultWallpaperModelFactory @Inject constructor() : WallpaperModelFactory
staticWallpaperData = StaticWallpaperData(asset = wallpaperInfo.getAsset(context)),
imageWallpaperData =
(wallpaperInfo as? ImageWallpaperInfo)?.getImageWallpaperData(),
- networkWallpaperData = null
+ networkWallpaperData = null,
+ downloadableWallpaperData = null,
)
}
}
diff --git a/src/com/android/wallpaper/util/wallpaperconnection/WallpaperConnectionUtils.kt b/src/com/android/wallpaper/util/wallpaperconnection/WallpaperConnectionUtils.kt
index e2cc150e..69a8d063 100644
--- a/src/com/android/wallpaper/util/wallpaperconnection/WallpaperConnectionUtils.kt
+++ b/src/com/android/wallpaper/util/wallpaperconnection/WallpaperConnectionUtils.kt
@@ -14,7 +14,7 @@ import android.view.Display
import android.view.SurfaceControl
import android.view.SurfaceView
import android.view.View
-import com.android.wallpaper.dispatchers.MainDispatcher
+import com.android.wallpaper.picker.di.modules.MainDispatcher
import com.android.wallpaper.util.ScreenSizeCalculator
import com.android.wallpaper.util.WallpaperConnection
import kotlinx.coroutines.CancellableContinuation