clean-up migrated back to collect to list for lower v

This commit is contained in:
MrSluffy
2024-12-18 11:47:38 +08:00
parent 9d387bb310
commit f1a292495c
18 changed files with 60 additions and 68 deletions

View File

@@ -143,10 +143,12 @@ public class WidgetPickerActivity extends BaseActivity {
if (uiSurfaceParam != null && UI_SURFACE_PATTERN.matcher(uiSurfaceParam).matches()) {
mUiSurface = uiSurfaceParam;
}
ArrayList<AppWidgetProviderInfo> addedWidgets = getIntent().getParcelableArrayListExtra(
EXTRA_ADDED_APP_WIDGETS, AppWidgetProviderInfo.class);
if (addedWidgets != null) {
mAddedWidgets = addedWidgets;
if (Utilities.ATLEAST_T) {
ArrayList<AppWidgetProviderInfo> addedWidgets = getIntent().getParcelableArrayListExtra(
EXTRA_ADDED_APP_WIDGETS, AppWidgetProviderInfo.class);
if (addedWidgets != null) {
mAddedWidgets = addedWidgets;
}
}
}

View File

@@ -43,6 +43,8 @@ import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_N
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_VOICE_INTERACTION_WINDOW_SHOWING;
import static com.android.wm.shell.Flags.enableTinyTaskbar;
import static java.util.stream.Collectors.toList;
import android.animation.AnimatorSet;
import android.animation.ValueAnimator;
import android.app.ActivityOptions;
@@ -1258,7 +1260,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext {
boolean isLaunchingAppPair = itemInfos.size() == 2;
// Convert the list of ItemInfo instances to a list of ComponentKeys
List<ComponentKey> componentKeys = itemInfos.stream().map(ItemInfo::getComponentKey).toList();
List<ComponentKey> componentKeys = itemInfos.stream().map(ItemInfo::getComponentKey).collect(toList());
recents.getSplitSelectController().findLastActiveTasksAndRunCallback(
componentKeys,
isLaunchingAppPair,

View File

@@ -31,6 +31,8 @@ import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_Q
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING;
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED;
import static java.util.stream.Collectors.toList;
import android.annotation.BinderThread;
import android.annotation.Nullable;
import android.app.Notification;
@@ -398,7 +400,7 @@ public class BubbleBarController extends IBubblesListener.Stub {
if (update.bubbleKeysInOrder != null && !update.bubbleKeysInOrder.isEmpty()) {
// Create the new list
List<BubbleBarBubble> newOrder = update.bubbleKeysInOrder.stream()
.map(mBubbles::get).filter(Objects::nonNull).toList();
.map(mBubbles::get).filter(Objects::nonNull).collect(toList());
if (!newOrder.isEmpty()) {
mBubbleBarViewController.reorderBubbles(newOrder);
}

View File

@@ -18,6 +18,8 @@ package com.android.launcher3.taskbar.bubbles;
import static android.view.View.INVISIBLE;
import static android.view.View.VISIBLE;
import static java.util.stream.Collectors.toList;
import android.content.res.Resources;
import android.graphics.Point;
import android.graphics.PointF;
@@ -463,7 +465,7 @@ public class BubbleBarViewController {
*/
public void reorderBubbles(List<BubbleBarBubble> newOrder) {
List<BubbleView> viewList = newOrder.stream().filter(Objects::nonNull)
.map(BubbleBarBubble::getView).toList();
.map(BubbleBarBubble::getView).collect(toList());
mBarView.reorder(viewList);
}

View File

@@ -7,6 +7,7 @@ import android.app.backup.BackupRestoreEventLogger.BackupRestoreError
import android.content.Context
import com.android.launcher3.Flags.enableLauncherBrMetricsFixed
import com.android.launcher3.LauncherSettings.Favorites
import com.android.launcher3.Utilities
import com.android.launcher3.backuprestore.LauncherRestoreEventLogger
/**
@@ -29,8 +30,11 @@ class LauncherRestoreEventLoggerImpl(val context: Context) : LauncherRestoreEven
@BackupRestoreDataType private const val DATA_TYPE_APP_PAIR = "app_pair"
}
private val restoreEventLogger: BackupRestoreEventLogger =
private val restoreEventLogger: BackupRestoreEventLogger? = if (Utilities.ATLEAST_S) {
BackupManager(context).delayedRestoreLogger
} else {
null
}
/**
* For logging when multiple items of a given data type failed to restore.
@@ -45,7 +49,7 @@ class LauncherRestoreEventLoggerImpl(val context: Context) : LauncherRestoreEven
@BackupRestoreError error: String?
) {
if (enableLauncherBrMetricsFixed()) {
restoreEventLogger.logItemsRestoreFailed(dataType, count, error)
restoreEventLogger?.logItemsRestoreFailed(dataType, count, error)
}
}
@@ -57,7 +61,7 @@ class LauncherRestoreEventLoggerImpl(val context: Context) : LauncherRestoreEven
*/
override fun logLauncherItemsRestored(@BackupRestoreDataType dataType: String, count: Int) {
if (enableLauncherBrMetricsFixed()) {
restoreEventLogger.logItemsRestored(dataType, count)
restoreEventLogger?.logItemsRestored(dataType, count)
}
}
@@ -68,7 +72,7 @@ class LauncherRestoreEventLoggerImpl(val context: Context) : LauncherRestoreEven
*/
override fun logSingleFavoritesItemRestored(favoritesId: Int) {
if (enableLauncherBrMetricsFixed()) {
restoreEventLogger.logItemsRestored(favoritesIdToDataType(favoritesId), 1)
restoreEventLogger?.logItemsRestored(favoritesIdToDataType(favoritesId), 1)
}
}
@@ -80,7 +84,7 @@ class LauncherRestoreEventLoggerImpl(val context: Context) : LauncherRestoreEven
*/
override fun logFavoritesItemsRestored(favoritesId: Int, count: Int) {
if (enableLauncherBrMetricsFixed()) {
restoreEventLogger.logItemsRestored(favoritesIdToDataType(favoritesId), count)
restoreEventLogger?.logItemsRestored(favoritesIdToDataType(favoritesId), count)
}
}
@@ -95,7 +99,7 @@ class LauncherRestoreEventLoggerImpl(val context: Context) : LauncherRestoreEven
@BackupRestoreError error: String?
) {
if (enableLauncherBrMetricsFixed()) {
restoreEventLogger.logItemsRestoreFailed(favoritesIdToDataType(favoritesId), 1, error)
restoreEventLogger?.logItemsRestoreFailed(favoritesIdToDataType(favoritesId), 1, error)
}
}
@@ -112,7 +116,7 @@ class LauncherRestoreEventLoggerImpl(val context: Context) : LauncherRestoreEven
@BackupRestoreError error: String?
) {
if (enableLauncherBrMetricsFixed()) {
restoreEventLogger.logItemsRestoreFailed(
restoreEventLogger?.logItemsRestoreFailed(
favoritesIdToDataType(favoritesId),
count,
error
@@ -125,7 +129,7 @@ class LauncherRestoreEventLoggerImpl(val context: Context) : LauncherRestoreEven
* done restoring items for Launcher.
*/
override fun reportLauncherRestoreResults() {
if (enableLauncherBrMetricsFixed()) {
if (enableLauncherBrMetricsFixed() && restoreEventLogger != null) {
BackupManager(context).reportDelayedRestoreResult(restoreEventLogger)
}
}

View File

@@ -19,6 +19,8 @@ package com.android.quickstep;
import static com.android.quickstep.util.SplitScreenUtils.convertShellSplitBoundsToLauncher;
import static com.android.wm.shell.util.SplitBounds.KEY_EXTRA_SPLIT_BOUNDS;
import static java.util.stream.Collectors.toList;
import android.app.WindowConfiguration;
import android.content.Context;
import android.graphics.Rect;
@@ -175,7 +177,7 @@ public class RemoteTargetGluer {
mSplitBounds.rightBottomTaskId);
List<RemoteAnimationTarget> overlayTargets = Arrays.stream(targets.apps).filter(
target -> target.windowConfiguration.getWindowingMode()
!= WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW).toList();
!= WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW).collect(toList());
// remoteTargetHandle[0] denotes topLeft task, so we pass in the bottomRight to exclude,
// vice versa
@@ -223,7 +225,7 @@ public class RemoteTargetGluer {
for (int i = 0; i < mRemoteTargetHandles.length; i++) {
RemoteAnimationTarget primaryTaskTarget = targets.apps[i];
List<RemoteAnimationTarget> excludeTargets = Arrays.stream(targets.apps)
.filter(target -> target.taskId != primaryTaskTarget.taskId).toList();
.filter(target -> target.taskId != primaryTaskTarget.taskId).collect(toList());
mRemoteTargetHandles[i].mTransformParams.setTargetSet(
createRemoteAnimationTargetsForTarget(targets, excludeTargets));
mRemoteTargetHandles[i].mTaskViewSimulator.setPreview(primaryTaskTarget, null);

View File

@@ -33,6 +33,8 @@ import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSIT
import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT;
import static com.android.wm.shell.common.split.SplitScreenConstants.isPersistentSnapPosition;
import static java.util.stream.Collectors.toList;
import android.content.Context;
import android.content.Intent;
import android.content.pm.LauncherApps;
@@ -336,7 +338,7 @@ public class AppPairsController {
List<? extends ItemInfo> itemInfos) {
TaskbarActivityContext context = (TaskbarActivityContext) launchingIconView.getContext();
List<ComponentKey> componentKeys =
itemInfos.stream().map(ItemInfo::getComponentKey).toList();
itemInfos.stream().map(ItemInfo::getComponentKey).collect(toList());
// Use TopTaskTracker to find the currently running app (or apps)
TopTaskTracker topTaskTracker = getTopTaskTracker();
@@ -362,7 +364,7 @@ public class AppPairsController {
} else {
return INVALID_TASK_ID;
}
}).toList();
}).collect(toList());
if (lastActiveTasksOfAppPair.contains(runningTaskId1)
&& lastActiveTasksOfAppPair.contains(runningTaskId2)) {

View File

@@ -150,18 +150,11 @@ public class ReorderAlgorithm {
).thenComparing(
view -> ((CellLayoutLayoutParams) ((View) view).getLayoutParams()).getCellY()
);
List<View> views = new ArrayList<>();
if (Utilities.ATLEAST_U) {
views = solution.map.keySet().stream().sorted(comparator).toList();
} else {
List<Object> keys = new ArrayList<>(solution.map.keySet());
for (Object key : keys) {
if (key instanceof View) {
views.add((View) key);
}
}
views.sort(comparator);
}
List<View> views = solution.map.keySet().stream()
.filter(View.class::isInstance)
.map(View.class::cast)
.collect(Collectors.toList());
views.sort(comparator);
for (View child : views) {
if (child == ignoreView) continue;
CellAndSpan c = solution.map.get(child);

View File

@@ -104,12 +104,10 @@ public class ShortcutCachingLogic implements CachingLogic<ShortcutInfo> {
* Launcher specific checks
*/
public static Drawable getIcon(Context context, ShortcutInfo shortcutInfo, int density) {
if (!WIDGETS_ENABLED) {
return null;
}
try {
return context.getSystemService(LauncherApps.class)
Drawable icon = context.getSystemService(LauncherApps.class)
.getShortcutIconDrawable(shortcutInfo, density);
return CustomAdaptiveIconDrawable.wrap(icon);
} catch (SecurityException | IllegalStateException | NullPointerException e) {
Log.e(TAG, "Failed to get shortcut icon", e);
return null;

View File

@@ -417,15 +417,8 @@ public class BaseLauncherBinder {
ModelWriter writer = mApp.getModel()
.getWriter(false /* verifyChanges */, CellPosMapper.DEFAULT, null);
List<Pair<ItemInfo, View>> bindItems = null;
if (Utilities.ATLEAST_U) {
bindItems = items.stream().map(i ->
Pair.create(i, inflater.inflateItem(i, writer, null))).toList();
} else {
bindItems = items.stream().map(i ->
List<Pair<ItemInfo, View>> finalBindItems = items.stream().map(i ->
Pair.create(i, inflater.inflateItem(i, writer, null))).collect(Collectors.toList());
}
List<Pair<ItemInfo, View>> finalBindItems = bindItems;
executeCallbacksTask(c -> c.bindInflatedItems(finalBindItems), executor);
}

View File

@@ -19,7 +19,6 @@ package com.android.launcher3.model
import com.android.launcher3.LauncherAppState
import com.android.launcher3.LauncherModel
import com.android.launcher3.LauncherModel.CallbackTask
import com.android.launcher3.Utilities
import com.android.launcher3.celllayout.CellPosMapper
import com.android.launcher3.model.BgDataModel.FixedContainerItems
import com.android.launcher3.model.data.ItemInfo
@@ -54,12 +53,7 @@ class ModelTaskController(
fun bindUpdatedWorkspaceItems(allUpdates: List<WorkspaceItemInfo>) {
// Bind workspace items
val workspaceUpdates: MutableList<WorkspaceItemInfo>
if (Utilities.ATLEAST_U) {
workspaceUpdates = allUpdates.stream().filter { info -> info.id != ItemInfo.NO_ID }.toList()
} else {
workspaceUpdates = allUpdates.stream().filter { info -> info.id != ItemInfo.NO_ID }.collect(Collectors.toList())
}
val workspaceUpdates: MutableList<WorkspaceItemInfo> = allUpdates.stream().filter { info -> info.id != ItemInfo.NO_ID }.collect(Collectors.toList())
if (workspaceUpdates.isNotEmpty()) {
scheduleCallbackTask { it.bindWorkspaceItemsChanged(workspaceUpdates) }
}

View File

@@ -94,12 +94,7 @@ public class WidgetsModel {
Stream<WidgetItem> widgetItems = entry.getValue()
.stream()
.filter(widgetItemFilter);
List<WidgetItem> widgetItemsList;
if (Utilities.ATLEAST_U) {
widgetItemsList = widgetItems.toList();
} else {
widgetItemsList = widgetItems.collect(toList());
};
List<WidgetItem> widgetItemsList = widgetItems.collect(toList());
if (!widgetItemsList.isEmpty()) {
String sectionName = (pkgItem.title == null) ? "" :
indexer.computeSectionName(pkgItem.title);

View File

@@ -31,6 +31,8 @@ import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_APPWIDG
import static com.android.launcher3.provider.LauncherDbUtils.dropTable;
import static com.android.launcher3.widget.LauncherWidgetHolder.APPWIDGET_HOST_ID;
import static java.util.stream.Collectors.toList;
import android.app.backup.BackupManager;
import android.appwidget.AppWidgetHost;
import android.appwidget.AppWidgetManager;
@@ -178,7 +180,7 @@ public class RestoreDbTask {
// phone
return LauncherFiles.GRID_DB_FILES.stream()
.filter(dbName -> new File(dbName).exists())
.toList();
.collect(toList());
}
/**

View File

@@ -18,6 +18,8 @@ package com.android.launcher3.widget.picker;
import static com.android.launcher3.widget.util.WidgetsTableUtils.groupWidgetItemsUsingRowPxWithoutReordering;
import static java.util.stream.Collectors.toList;
import android.content.ComponentName;
import android.content.Context;
import android.os.Bundle;
@@ -318,7 +320,7 @@ public final class WidgetRecommendationsView extends PagedView<PageIndicatorDots
// Show only those widgets that were displayed when user first opened the picker.
if (!mDisplayedWidgets.isEmpty()) {
filteredRecommendedWidgets = recommendedWidgets.stream().filter(
w -> mDisplayedWidgets.contains(w.componentName)).toList();
w -> mDisplayedWidgets.contains(w.componentName)).collect(toList());
}
Context context = getContext();
LayoutInflater inflater = LayoutInflater.from(context);

View File

@@ -21,6 +21,7 @@ import static com.android.launcher3.widget.util.WidgetSizes.getWidgetSizePx;
import static com.android.launcher3.widget.util.WidgetsTableUtils.WIDGETS_TABLE_ROW_SIZE_COMPARATOR;
import static java.lang.Math.max;
import static java.util.stream.Collectors.toList;
import android.content.Context;
import android.util.AttributeSet;
@@ -186,6 +187,6 @@ public final class WidgetsRecommendationTableLayout extends TableLayout {
}
// Perform re-ordering once we have filtered out recommendations that fit.
return filteredRows.stream().sorted(WIDGETS_TABLE_ROW_SIZE_COMPARATOR).toList();
return filteredRows.stream().sorted(WIDGETS_TABLE_ROW_SIZE_COMPARATOR).collect(toList());
}
}

View File

@@ -83,11 +83,7 @@ public final class WidgetsTableUtils {
sortedWidgetItems, context, dp, rowPx,
cellPadding);
Stream<ArrayList<WidgetItem>> sortedRows = rows.stream().sorted(WIDGETS_TABLE_ROW_SIZE_COMPARATOR);
if (Utilities.ATLEAST_U) {
return sortedRows.toList();
} else {
return sortedRows.collect(Collectors.toList());
}
return sortedRows.collect(Collectors.toList());
}
/**

View File

@@ -19,6 +19,8 @@ package com.android.app.viewcapture;
import static com.android.app.viewcapture.data.ExportedData.MagicNumber.MAGIC_NUMBER_H;
import static com.android.app.viewcapture.data.ExportedData.MagicNumber.MAGIC_NUMBER_L;
import static java.util.stream.Collectors.toList;
import android.content.ComponentCallbacks2;
import android.content.Context;
import android.content.res.Configuration;
@@ -206,7 +208,7 @@ public abstract class ViewCapture {
}
private static List<String> toStringList(List<Class> classList) {
return classList.stream().map(Class::getName).toList();
return classList.stream().map(Class::getName).collect(toList());
}
public CompletableFuture<Optional<MotionWindowData>> getDumpTask(View view) {
@@ -224,8 +226,8 @@ public abstract class ViewCapture {
ArrayList<Class> outClassList, Predicate<WindowListener> filter) {
ViewIdProvider idProvider = new ViewIdProvider(context.getResources());
return CompletableFuture.supplyAsync(() ->
mListeners.stream().filter(filter).toList(), MAIN_EXECUTOR).thenApplyAsync(it ->
it.stream().map(l -> l.dumpToProto(idProvider, outClassList)).toList(),
mListeners.stream().filter(filter).collect(toList()), MAIN_EXECUTOR).thenApplyAsync(it ->
it.stream().map(l -> l.dumpToProto(idProvider, outClassList)).collect(toList()),
mBgExecutor);
}

View File

@@ -1516,7 +1516,7 @@ public class BubbleController implements ConfigurationChangeListener,
}
mOverflowDataLoadNeeded = false;
List<UserInfo> users = mUserManager.getAliveUsers();
List<Integer> userIds = users.stream().map(userInfo -> userInfo.id).toList();
List<Integer> userIds = users.stream().map(userInfo -> userInfo.id).collect(Collectors.toList());
mDataRepository.loadBubbles(mCurrentUserId, userIds, (bubbles) -> {
bubbles.forEach(bubble -> {
if (mBubbleData.hasAnyBubbleWithKey(bubble.getKey())) {