1 package com.android.wallpaper.module; 2 3 import android.app.WallpaperManager; 4 import android.os.Bundle; 5 6 import androidx.annotation.Nullable; 7 import androidx.fragment.app.FragmentActivity; 8 import androidx.lifecycle.LifecycleOwner; 9 10 import com.android.wallpaper.model.CustomizationSectionController; 11 import com.android.wallpaper.model.CustomizationSectionController.CustomizationSectionNavigationController; 12 import com.android.wallpaper.model.PermissionRequester; 13 import com.android.wallpaper.model.Screen; 14 import com.android.wallpaper.model.WallpaperPreviewNavigator; 15 import com.android.wallpaper.picker.customization.data.repository.WallpaperColorsRepository; 16 import com.android.wallpaper.picker.customization.domain.interactor.WallpaperInteractor; 17 import com.android.wallpaper.picker.customization.ui.viewmodel.CustomizationPickerViewModel; 18 import com.android.wallpaper.util.DisplayUtils; 19 20 import java.util.List; 21 22 /** Interface for carry {@link CustomizationSectionController}s. */ 23 public interface CustomizationSections { 24 25 /** 26 * Currently protected under BaseFlags.isUseRevampedUi() flag. 27 * 28 * Gets a new instance of the section controller list for the given {@link Screen}. 29 * 30 * Note that the section views will be displayed by the list ordering. 31 * 32 * <p>Don't keep the section controllers as singleton since they contain views. 33 */ getSectionControllersForScreen( Screen screen, FragmentActivity activity, LifecycleOwner lifecycleOwner, WallpaperColorsRepository wallpaperColorsRepository, PermissionRequester permissionRequester, WallpaperPreviewNavigator wallpaperPreviewNavigator, CustomizationSectionNavigationController sectionNavigationController, @Nullable Bundle savedInstanceState, CurrentWallpaperInfoFactory wallpaperInfoFactory, DisplayUtils displayUtils, CustomizationPickerViewModel customizationPickerViewModel, WallpaperInteractor wallpaperInteractor, WallpaperManager wallpaperManager, boolean isTwoPaneAndSmallWidth)34 List<CustomizationSectionController<?>> getSectionControllersForScreen( 35 Screen screen, 36 FragmentActivity activity, 37 LifecycleOwner lifecycleOwner, 38 WallpaperColorsRepository wallpaperColorsRepository, 39 PermissionRequester permissionRequester, 40 WallpaperPreviewNavigator wallpaperPreviewNavigator, 41 CustomizationSectionNavigationController sectionNavigationController, 42 @Nullable Bundle savedInstanceState, 43 CurrentWallpaperInfoFactory wallpaperInfoFactory, 44 DisplayUtils displayUtils, 45 CustomizationPickerViewModel customizationPickerViewModel, 46 WallpaperInteractor wallpaperInteractor, 47 WallpaperManager wallpaperManager, 48 boolean isTwoPaneAndSmallWidth); 49 } 50