Merge "Add a feature flag to expand smartspace to three rows" into ub-launcher3-master

This commit is contained in:
TreeHugger Robot
2020-10-26 18:37:26 +00:00
committed by Android (Google) Code Review
3 changed files with 14 additions and 2 deletions
+8 -1
View File
@@ -139,6 +139,10 @@ public class Workspace extends PagedView<WorkspacePageIndicator>
public static final int DEFAULT_PAGE = 0;
private static final int DEFAULT_SMARTSPACE_HEIGHT = 1;
private static final int EXPANDED_SMARTSPACE_HEIGHT = 2;
private LayoutTransition mLayoutTransition;
@Thunk final WallpaperManager mWallpaperManager;
@@ -507,7 +511,10 @@ public class Workspace extends PagedView<WorkspacePageIndicator>
.inflate(R.layout.search_container_workspace, firstPage, false);
}
CellLayout.LayoutParams lp = new CellLayout.LayoutParams(0, 0, firstPage.getCountX(), 1);
int cellVSpan = FeatureFlags.EXPANDED_SMARTSPACE.get()
? EXPANDED_SMARTSPACE_HEIGHT : DEFAULT_SMARTSPACE_HEIGHT;
CellLayout.LayoutParams lp = new CellLayout.LayoutParams(0, 0, firstPage.getCountX(),
cellVSpan);
lp.canReorder = false;
if (!firstPage.addViewToCellLayout(qsb, 0, R.id.search_container_workspace, lp, true)) {
Log.e(TAG, "Failed to add to item at (0, 0) to CellLayout");
@@ -185,6 +185,10 @@ public final class FeatureFlags {
"ENABLE_MINIMAL_DEVICE", false,
"Allow user to toggle minimal device mode in launcher.");
public static final BooleanFlag EXPANDED_SMARTSPACE = new DeviceFlag(
"EXPANDED_SMARTSPACE", false, "Expands smartspace height to two rows. "
+ "Any apps occupying the first row will be removed from workspace.");
public static void initialize(Context context) {
synchronized (sDebugFlags) {
for (DebugFlag flag : sDebugFlags) {
@@ -445,7 +445,8 @@ public class LoaderCursor extends CursorWrapper {
if (item.screenId == Workspace.FIRST_SCREEN_ID) {
// Mark the first row as occupied (if the feature is enabled)
// in order to account for the QSB.
screen.markCells(0, 0, countX + 1, 1, FeatureFlags.QSB_ON_FIRST_SCREEN);
int spanY = FeatureFlags.EXPANDED_SMARTSPACE.get() ? 2 : 1;
screen.markCells(0, 0, countX + 1, spanY, FeatureFlags.QSB_ON_FIRST_SCREEN);
}
occupied.put(item.screenId, screen);
}