1 package com.android.wallpaper.module; 2 3 import android.app.Activity; 4 import android.os.Bundle; 5 6 import androidx.annotation.Nullable; 7 import androidx.lifecycle.LifecycleOwner; 8 9 import com.android.wallpaper.model.CustomizationSectionController; 10 import com.android.wallpaper.model.CustomizationSectionController.CustomizationSectionNavigationController; 11 import com.android.wallpaper.model.PermissionRequester; 12 import com.android.wallpaper.model.WallpaperColorsViewModel; 13 import com.android.wallpaper.model.WallpaperPreviewNavigator; 14 import com.android.wallpaper.model.WorkspaceViewModel; 15 16 import java.util.List; 17 18 /** Interface for carry {@link CustomizationSectionController}s. */ 19 public interface CustomizationSections { 20 21 /** 22 * Gets a new instance of the section controller list. 23 * 24 * Note that the section views will be displayed by the list ordering. 25 * 26 * <p>Don't keep the section controllers as singleton since they contain views. 27 */ getAllSectionControllers( Activity activity, LifecycleOwner lifecycleOwner, WallpaperColorsViewModel wallpaperColorsViewModel, WorkspaceViewModel workspaceViewModel, PermissionRequester permissionRequester, WallpaperPreviewNavigator wallpaperPreviewNavigator, CustomizationSectionNavigationController sectionNavigationController, @Nullable Bundle savedInstanceState)28 List<CustomizationSectionController<?>> getAllSectionControllers( 29 Activity activity, 30 LifecycleOwner lifecycleOwner, 31 WallpaperColorsViewModel wallpaperColorsViewModel, 32 WorkspaceViewModel workspaceViewModel, 33 PermissionRequester permissionRequester, 34 WallpaperPreviewNavigator wallpaperPreviewNavigator, 35 CustomizationSectionNavigationController sectionNavigationController, 36 @Nullable Bundle savedInstanceState); 37 } 38