[TP] Refector wallpaper picker injectors
1. Sort the functions in DefaultCustomizationInjector. Some do not need
to override since they are the same as the parent
2. Rename DefaultCustomizationInjector to ThemePickerInjector
3. Remove WallpapersInjector since it's never used
Bug: 247807196
Test: manuel test to make sure it builds
Change-Id: I82256f30b845504a82ea89bff82eaad3ff3b8a5f
diff --git a/src/com/android/customization/module/DefaultCustomizationInjector.java b/src/com/android/customization/module/ThemePickerInjector.java
similarity index 70%
rename from src/com/android/customization/module/DefaultCustomizationInjector.java
rename to src/com/android/customization/module/ThemePickerInjector.java
index 9afad41..ef2b60a 100644
--- a/src/com/android/customization/module/DefaultCustomizationInjector.java
+++ b/src/com/android/customization/module/ThemePickerInjector.java
@@ -32,71 +32,45 @@
import com.android.customization.model.theme.OverlayManagerCompat;
import com.android.customization.model.theme.ThemeBundleProvider;
import com.android.customization.model.theme.ThemeManager;
-import com.android.wallpaper.model.CategoryProvider;
import com.android.wallpaper.model.LiveWallpaperInfo;
import com.android.wallpaper.model.WallpaperInfo;
-import com.android.wallpaper.module.BaseWallpaperInjector;
import com.android.wallpaper.module.CustomizationSections;
-import com.android.wallpaper.module.DefaultCategoryProvider;
-import com.android.wallpaper.module.LoggingOptInStatusProvider;
+import com.android.wallpaper.module.WallpaperPicker2Injector;
import com.android.wallpaper.module.WallpaperPreferences;
-import com.android.wallpaper.module.WallpaperRotationRefresher;
-import com.android.wallpaper.monitor.PerformanceMonitor;
import com.android.wallpaper.picker.CustomizationPickerActivity;
import com.android.wallpaper.picker.ImagePreviewFragment;
import com.android.wallpaper.picker.LivePreviewFragment;
import com.android.wallpaper.picker.PreviewFragment;
-public class DefaultCustomizationInjector extends BaseWallpaperInjector
+/**
+ * A concrete, real implementation of the dependency provider.
+ */
+public class ThemePickerInjector extends WallpaperPicker2Injector
implements CustomizationInjector {
- private CategoryProvider mCategoryProvider;
- private ThemesUserEventLogger mUserEventLogger;
- private WallpaperRotationRefresher mWallpaperRotationRefresher;
- private PerformanceMonitor mPerformanceMonitor;
- private WallpaperPreferences mPrefs;
private CustomizationSections mCustomizationSections;
+ private ThemesUserEventLogger mUserEventLogger;
+ private WallpaperPreferences mPrefs;
@Override
- public synchronized WallpaperPreferences getPreferences(Context context) {
- if (mPrefs == null) {
- mPrefs = new DefaultCustomizationPreferences(context.getApplicationContext());
+ public CustomizationSections getCustomizationSections() {
+ if (mCustomizationSections == null) {
+ mCustomizationSections = new DefaultCustomizationSections();
}
- return mPrefs;
+ return mCustomizationSections;
}
@Override
- public CustomizationPreferences getCustomizationPreferences(Context context) {
- return (CustomizationPreferences) getPreferences(context);
+ public Intent getDeepLinkRedirectIntent(Context context, Uri uri) {
+ Intent intent = new Intent();
+ intent.setClass(context, CustomizationPickerActivity.class);
+ intent.setData(uri);
+ intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
+ return intent;
}
@Override
- public synchronized CategoryProvider getCategoryProvider(Context context) {
- if (mCategoryProvider == null) {
- mCategoryProvider = new DefaultCategoryProvider(context.getApplicationContext());
- }
- return mCategoryProvider;
- }
-
- @Override
- public synchronized ThemesUserEventLogger getUserEventLogger(Context context) {
- if (mUserEventLogger == null) {
- mUserEventLogger = new StatsLogUserEventLogger(context);
- }
- return mUserEventLogger;
- }
-
- @Override
- public synchronized WallpaperRotationRefresher getWallpaperRotationRefresher() {
- if (mWallpaperRotationRefresher == null) {
- mWallpaperRotationRefresher = new WallpaperRotationRefresher() {
- @Override
- public void refreshWallpaper(Context context, Listener listener) {
- // Not implemented
- listener.onError();
- }
- };
- }
- return mWallpaperRotationRefresher;
+ public String getDownloadableIntentAction() {
+ return null;
}
@Override
@@ -120,35 +94,27 @@
}
@Override
- public Intent getDeepLinkRedirectIntent(Context context, Uri uri) {
- Intent intent = new Intent();
- intent.setClass(context, CustomizationPickerActivity.class);
- intent.setData(uri);
- intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
- return intent;
- }
-
- @Override
- public String getDownloadableIntentAction() {
- return null;
- }
-
- @Override
- public synchronized PerformanceMonitor getPerformanceMonitor() {
- if (mPerformanceMonitor == null) {
- mPerformanceMonitor = new PerformanceMonitor() {
- @Override
- public void recordFullResPreviewLoadedMemorySnapshot() {
- // No Op
- }
- };
+ public synchronized ThemesUserEventLogger getUserEventLogger(Context context) {
+ if (mUserEventLogger == null) {
+ mUserEventLogger = new StatsLogUserEventLogger(context);
}
- return mPerformanceMonitor;
+ return mUserEventLogger;
}
@Override
- public synchronized LoggingOptInStatusProvider getLoggingOptInStatusProvider(Context context) {
- return null;
+ public synchronized WallpaperPreferences getPreferences(Context context) {
+ if (mPrefs == null) {
+ mPrefs = new DefaultCustomizationPreferences(context.getApplicationContext());
+ }
+ return mPrefs;
+ }
+
+ //
+ // Functions from {@link CustomizationInjector}
+ //
+ @Override
+ public CustomizationPreferences getCustomizationPreferences(Context context) {
+ return (CustomizationPreferences) getPreferences(context);
}
@Override
@@ -156,12 +122,4 @@
OverlayManagerCompat overlayManagerCompat, ThemesUserEventLogger logger) {
return new ThemeManager(provider, activity, overlayManagerCompat, logger);
}
-
- @Override
- public CustomizationSections getCustomizationSections() {
- if (mCustomizationSections == null) {
- mCustomizationSections = new DefaultCustomizationSections();
- }
- return mCustomizationSections;
- }
}
diff --git a/src/com/android/customization/picker/CustomizationPickerApplication.java b/src/com/android/customization/picker/CustomizationPickerApplication.java
index 79d075a..178cfbf 100644
--- a/src/com/android/customization/picker/CustomizationPickerApplication.java
+++ b/src/com/android/customization/picker/CustomizationPickerApplication.java
@@ -17,7 +17,7 @@
import android.app.Application;
-import com.android.customization.module.DefaultCustomizationInjector;
+import com.android.customization.module.ThemePickerInjector;
import com.android.wallpaper.module.InjectorProvider;
public class CustomizationPickerApplication extends Application {
@@ -26,6 +26,6 @@
super.onCreate();
// Initialize the injector.
- InjectorProvider.setInjector(new DefaultCustomizationInjector());
+ InjectorProvider.setInjector(new ThemePickerInjector());
}
}
diff --git a/src/com/android/customization/picker/grid/GridFragment.java b/src/com/android/customization/picker/grid/GridFragment.java
index c4029d6..d60ebca 100644
--- a/src/com/android/customization/picker/grid/GridFragment.java
+++ b/src/com/android/customization/picker/grid/GridFragment.java
@@ -160,7 +160,7 @@
getActivity(), view.findViewById(R.id.wallpaper_preview_image), wallpaperSurface);
// Loads current Wallpaper.
CurrentWallpaperInfoFactory factory = InjectorProvider.getInjector()
- .getCurrentWallpaperFactory(getContext().getApplicationContext());
+ .getCurrentWallpaperInfoFactory(getContext().getApplicationContext());
factory.createCurrentWallpaperInfos((homeWallpaper, lockWallpaper, presentationMode) -> {
mHomeWallpaper = homeWallpaper;
wallpaperPreviewer.setWallpaper(mHomeWallpaper, /* listener= */ null);
diff --git a/src/com/android/customization/picker/theme/CustomThemeNameFragment.java b/src/com/android/customization/picker/theme/CustomThemeNameFragment.java
index 6f20a1a..ea9099f 100644
--- a/src/com/android/customization/picker/theme/CustomThemeNameFragment.java
+++ b/src/com/android/customization/picker/theme/CustomThemeNameFragment.java
@@ -69,7 +69,7 @@
mTitle = view.findViewById(R.id.component_options_title);
mTitle.setText(mTitleResId);
CurrentWallpaperInfoFactory currentWallpaperFactory = InjectorProvider.getInjector()
- .getCurrentWallpaperFactory(getActivity().getApplicationContext());
+ .getCurrentWallpaperInfoFactory(getActivity().getApplicationContext());
CustomizationInjector injector = (CustomizationInjector) InjectorProvider.getInjector();
mCustomizationPreferences = injector.getCustomizationPreferences(getContext());
diff --git a/src/com/android/customization/picker/theme/ThemeFragment.java b/src/com/android/customization/picker/theme/ThemeFragment.java
index f5d56ca..3a9a56f 100644
--- a/src/com/android/customization/picker/theme/ThemeFragment.java
+++ b/src/com/android/customization/picker/theme/ThemeFragment.java
@@ -115,7 +115,7 @@
mLoading = view.findViewById(R.id.loading_indicator);
mError = view.findViewById(R.id.error_section);
mCurrentWallpaperFactory = InjectorProvider.getInjector()
- .getCurrentWallpaperFactory(getActivity().getApplicationContext());
+ .getCurrentWallpaperInfoFactory(getActivity().getApplicationContext());
mOptionsContainer = view.findViewById(R.id.options_container);
mThemeOptionPreviewer = new ThemeOptionPreviewer(
diff --git a/src_override/com/android/wallpaper/module/WallpapersInjector.java b/src_override/com/android/wallpaper/module/WallpapersInjector.java
deleted file mode 100755
index e582fe4..0000000
--- a/src_override/com/android/wallpaper/module/WallpapersInjector.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*
- * Copyright (C) 2018 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.module;
-
-import static com.android.wallpaper.picker.PreviewFragment.ARG_FULL_SCREEN;
-import static com.android.wallpaper.picker.PreviewFragment.ARG_PREVIEW_MODE;
-import static com.android.wallpaper.picker.PreviewFragment.ARG_TESTING_MODE_ENABLED;
-import static com.android.wallpaper.picker.PreviewFragment.ARG_VIEW_AS_HOME;
-import static com.android.wallpaper.picker.PreviewFragment.ARG_WALLPAPER;
-
-import android.content.Context;
-import android.content.Intent;
-import android.net.Uri;
-import android.os.Bundle;
-
-import androidx.fragment.app.Fragment;
-
-import com.android.wallpaper.model.CategoryProvider;
-import com.android.wallpaper.model.LiveWallpaperInfo;
-import com.android.wallpaper.model.WallpaperInfo;
-import com.android.wallpaper.monitor.PerformanceMonitor;
-import com.android.wallpaper.picker.CustomizationPickerActivity;
-import com.android.wallpaper.picker.ImagePreviewFragment;
-import com.android.wallpaper.picker.LivePreviewFragment;
-import com.android.wallpaper.picker.PreviewFragment;
-
-/**
- * A concrete, real implementation of the dependency provider.
- */
-public class WallpapersInjector extends BaseWallpaperInjector {
- private CategoryProvider mCategoryProvider;
- private UserEventLogger mUserEventLogger;
- private WallpaperRotationRefresher mWallpaperRotationRefresher;
- private PerformanceMonitor mPerformanceMonitor;
-
- @Override
- public synchronized CategoryProvider getCategoryProvider(Context context) {
- if (mCategoryProvider == null) {
- mCategoryProvider = new DefaultCategoryProvider(context.getApplicationContext());
- }
- return mCategoryProvider;
- }
-
- @Override
- public synchronized UserEventLogger getUserEventLogger(Context context) {
- if (mUserEventLogger == null) {
- mUserEventLogger = new NoOpUserEventLogger();
- }
- return mUserEventLogger;
- }
-
- @Override
- public synchronized WallpaperRotationRefresher getWallpaperRotationRefresher() {
- if (mWallpaperRotationRefresher == null) {
- mWallpaperRotationRefresher = new WallpaperRotationRefresher() {
- @Override
- public void refreshWallpaper(Context context, Listener listener) {
- // Not implemented
- listener.onError();
- }
- };
- }
- return mWallpaperRotationRefresher;
- }
-
- @Override
- public Fragment getPreviewFragment(
- Context context,
- WallpaperInfo wallpaperInfo,
- int mode,
- boolean viewAsHome,
- boolean viewFullScreen,
- boolean testingModeEnabled) {
- Bundle args = new Bundle();
- args.putParcelable(ARG_WALLPAPER, wallpaperInfo);
- args.putInt(ARG_PREVIEW_MODE, mode);
- args.putBoolean(ARG_VIEW_AS_HOME, viewAsHome);
- args.putBoolean(ARG_FULL_SCREEN, viewFullScreen);
- args.putBoolean(ARG_TESTING_MODE_ENABLED, testingModeEnabled);
- PreviewFragment fragment = wallpaperInfo instanceof LiveWallpaperInfo
- ? new LivePreviewFragment() : new ImagePreviewFragment();
- fragment.setArguments(args);
- return fragment;
- }
-
- @Override
- public Intent getDeepLinkRedirectIntent(Context context, Uri uri) {
- Intent intent = new Intent();
- intent.setClass(context, CustomizationPickerActivity.class);
- intent.setData(uri);
- intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
- return intent;
- }
-
- @Override
- public synchronized PerformanceMonitor getPerformanceMonitor() {
- if (mPerformanceMonitor == null) {
- mPerformanceMonitor = new PerformanceMonitor() {
- @Override
- public void recordFullResPreviewLoadedMemorySnapshot() {
- // No Op
- }
- };
- }
- return mPerformanceMonitor;
- }
-
- @Override
- public synchronized LoggingOptInStatusProvider getLoggingOptInStatusProvider(Context context) {
- return null;
- }
-
- @Override
- public String getDownloadableIntentAction() {
- return null;
- }
-}