mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-27 23:36:47 +00:00
Support shorter height row layout / Disable ICON_SLICE
Bug: 178815297 Bug: 178128837 Bug: 178823469 Test: manual, attached screenshot on the bugreport Change-Id: Ie69c8928f5acc430320cfc5c85547195866e829e
This commit is contained in:
@@ -1,105 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2020 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.systemui.plugins;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.os.Bundle;
|
||||
import android.os.CancellationSignal;
|
||||
import android.os.Parcelable;
|
||||
import android.view.View;
|
||||
|
||||
import com.android.systemui.plugins.annotations.ProvidesInterface;
|
||||
import com.android.systemui.plugins.shared.SearchTargetEventLegacy;
|
||||
import com.android.systemui.plugins.shared.SearchTargetLegacy;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
/**
|
||||
* Implement this plugin interface to fetch search result data from the plugin side.
|
||||
*/
|
||||
@ProvidesInterface(action = AllAppsSearchPlugin.ACTION, version = AllAppsSearchPlugin.VERSION)
|
||||
public interface AllAppsSearchPlugin extends Plugin {
|
||||
String ACTION = "com.android.systemui.action.PLUGIN_ALL_APPS_SEARCH_ACTIONS";
|
||||
int VERSION = 9;
|
||||
|
||||
/**
|
||||
* init plugin
|
||||
*/
|
||||
void setup(Activity activity, View view, boolean useLegacy);
|
||||
|
||||
/**
|
||||
* Send launcher state related signals.
|
||||
*/
|
||||
void onStateTransitionStart(int fromState, int toState);
|
||||
|
||||
void onStateTransitionComplete(int state);
|
||||
|
||||
/**
|
||||
* Send launcher window focus and visibility changed signals.
|
||||
*/
|
||||
void onWindowFocusChanged(boolean hasFocus);
|
||||
|
||||
void onWindowVisibilityChanged(int visibility);
|
||||
|
||||
/**
|
||||
* Send signal when user starts typing, perform search, notify search target
|
||||
* event when search ends.
|
||||
*/
|
||||
void startedSearchSession();
|
||||
|
||||
/**
|
||||
* Main function that triggers search.
|
||||
*
|
||||
* @param input string that has been typed by a user
|
||||
* @param inputArgs extra info that may be relevant for the input query
|
||||
* @param results contains the result that will be rendered in all apps search
|
||||
* surface
|
||||
* @param cancellationSignal {@link CancellationSignal} can be used to share status of current
|
||||
*/
|
||||
void queryLegacy(String input, Bundle inputArgs, Consumer<List<SearchTargetLegacy>> results,
|
||||
CancellationSignal cancellationSignal);
|
||||
|
||||
/**
|
||||
* Main function that triggers search.
|
||||
*
|
||||
* @param input string that has been typed by a user
|
||||
* @param inputArgs extra info that may be relevant for the input query
|
||||
* @param results contains the result that will be rendered in all apps search
|
||||
* surface
|
||||
* @param cancellationSignal {@link CancellationSignal} can be used to share status of current
|
||||
*/
|
||||
void query(String input, Bundle inputArgs, Consumer<List<Parcelable>> results,
|
||||
CancellationSignal cancellationSignal);
|
||||
|
||||
/**
|
||||
* Send over search target interaction events to Plugin
|
||||
*/
|
||||
void notifySearchTargetEventLegacy(SearchTargetEventLegacy event);
|
||||
|
||||
/**
|
||||
* Send over search target interaction events to Plugin
|
||||
*/
|
||||
void notifySearchTargetEvent(Parcelable event);
|
||||
|
||||
/**
|
||||
* Launcher activity lifecycle callbacks
|
||||
*/
|
||||
void onResume(int state);
|
||||
|
||||
void onStop(int state);
|
||||
}
|
||||
@@ -1,95 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2020 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.systemui.plugins.shared;
|
||||
|
||||
import android.os.Bundle;
|
||||
|
||||
/**
|
||||
* Event used for the feedback loop to the plugin. (and future aiai)
|
||||
*
|
||||
* @deprecated Use {@link android.app.search.SearchTargetEvent}
|
||||
*/
|
||||
@Deprecated
|
||||
public class SearchTargetEventLegacy {
|
||||
public static final int POSITION_NONE = -1;
|
||||
|
||||
public static final int SELECT = 0;
|
||||
public static final int QUICK_SELECT = 1;
|
||||
public static final int LONG_PRESS = 2;
|
||||
public static final int CHILD_SELECT = 3;
|
||||
|
||||
private final SearchTargetLegacy mSearchTarget;
|
||||
private final int mEventType;
|
||||
private final int mShortcutPosition;
|
||||
private final Bundle mExtras;
|
||||
|
||||
public SearchTargetEventLegacy(SearchTargetLegacy searchTarget, int eventType,
|
||||
int shortcutPosition,
|
||||
Bundle extras) {
|
||||
mSearchTarget = searchTarget;
|
||||
mEventType = eventType;
|
||||
mShortcutPosition = shortcutPosition;
|
||||
mExtras = extras;
|
||||
}
|
||||
|
||||
|
||||
public SearchTargetLegacy getSearchTarget() {
|
||||
return mSearchTarget;
|
||||
}
|
||||
|
||||
public int getShortcutPosition() {
|
||||
return mShortcutPosition;
|
||||
}
|
||||
|
||||
public int getEventType() {
|
||||
return mEventType;
|
||||
}
|
||||
|
||||
public Bundle getExtras() {
|
||||
return mExtras;
|
||||
}
|
||||
|
||||
/**
|
||||
* A builder for {@link SearchTargetLegacy}
|
||||
*/
|
||||
public static final class Builder {
|
||||
private final SearchTargetLegacy mSearchTarget;
|
||||
private final int mEventType;
|
||||
private int mShortcutPosition = POSITION_NONE;
|
||||
private Bundle mExtras;
|
||||
|
||||
public Builder(SearchTargetLegacy searchTarget, int eventType) {
|
||||
mSearchTarget = searchTarget;
|
||||
mEventType = eventType;
|
||||
}
|
||||
|
||||
public Builder setShortcutPosition(int shortcutPosition) {
|
||||
mShortcutPosition = shortcutPosition;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setExtras(Bundle extras) {
|
||||
mExtras = extras;
|
||||
return this;
|
||||
}
|
||||
|
||||
public SearchTargetEventLegacy build() {
|
||||
return new SearchTargetEventLegacy(mSearchTarget, mEventType, mShortcutPosition,
|
||||
mExtras);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,175 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2020 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.systemui.plugins.shared;
|
||||
|
||||
import android.app.RemoteAction;
|
||||
import android.content.ComponentName;
|
||||
import android.content.pm.ShortcutInfo;
|
||||
import android.os.Bundle;
|
||||
import android.os.UserHandle;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Used to return all apps search targets.
|
||||
*
|
||||
* @deprecated Use SearchTarget
|
||||
*/
|
||||
@Deprecated
|
||||
public class SearchTargetLegacy implements Comparable<SearchTargetLegacy> {
|
||||
|
||||
private final String mItemId;
|
||||
private final String mItemType;
|
||||
private final float mScore;
|
||||
|
||||
private final ComponentName mComponentName;
|
||||
private final UserHandle mUserHandle;
|
||||
private final List<ShortcutInfo> mShortcutInfos;
|
||||
//TODO: (sfufa) replace with a list of a custom type
|
||||
private final RemoteAction mRemoteAction;
|
||||
private final Bundle mExtras;
|
||||
|
||||
private SearchTargetLegacy(String itemId, String itemType, float score,
|
||||
ComponentName componentName, UserHandle userHandle, List<ShortcutInfo> shortcutInfos,
|
||||
RemoteAction remoteAction, Bundle extras) {
|
||||
mItemId = itemId;
|
||||
mItemType = itemType;
|
||||
mScore = score;
|
||||
mComponentName = componentName;
|
||||
mUserHandle = userHandle;
|
||||
mShortcutInfos = shortcutInfos;
|
||||
mExtras = extras;
|
||||
mRemoteAction = remoteAction;
|
||||
}
|
||||
|
||||
public String getItemId() {
|
||||
return mItemId;
|
||||
}
|
||||
|
||||
public String getItemType() {
|
||||
return mItemType;
|
||||
}
|
||||
|
||||
public ComponentName getComponentName() {
|
||||
return mComponentName;
|
||||
}
|
||||
|
||||
public UserHandle getUserHandle() {
|
||||
return mUserHandle;
|
||||
}
|
||||
|
||||
public float getScore() {
|
||||
return mScore;
|
||||
}
|
||||
|
||||
public List<ShortcutInfo> getShortcutInfos() {
|
||||
return mShortcutInfos;
|
||||
}
|
||||
|
||||
public Bundle getExtras() {
|
||||
return mExtras;
|
||||
}
|
||||
|
||||
public RemoteAction getRemoteAction() {
|
||||
return mRemoteAction;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int compareTo(SearchTargetLegacy o) {
|
||||
return Float.compare(o.mScore, mScore);
|
||||
}
|
||||
|
||||
/**
|
||||
* A builder for {@link SearchTargetLegacy}
|
||||
*/
|
||||
public static final class Builder {
|
||||
|
||||
|
||||
private String mItemId;
|
||||
|
||||
private final String mItemType;
|
||||
private final float mScore;
|
||||
|
||||
|
||||
private ComponentName mComponentName;
|
||||
private UserHandle mUserHandle;
|
||||
private List<ShortcutInfo> mShortcutInfos;
|
||||
private Bundle mExtras;
|
||||
private RemoteAction mRemoteAction;
|
||||
|
||||
public Builder(String itemType, float score) {
|
||||
this(itemType, score, null, null);
|
||||
}
|
||||
|
||||
public Builder(String itemType, float score, ComponentName cn,
|
||||
UserHandle user) {
|
||||
mItemType = itemType;
|
||||
mScore = score;
|
||||
mComponentName = cn;
|
||||
mUserHandle = user;
|
||||
}
|
||||
|
||||
public String getItemId() {
|
||||
return mItemId;
|
||||
}
|
||||
|
||||
public float getScore() {
|
||||
return mScore;
|
||||
}
|
||||
|
||||
public Builder setItemId(String itemId) {
|
||||
mItemId = itemId;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setComponentName(ComponentName componentName) {
|
||||
mComponentName = componentName;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setUserHandle(UserHandle userHandle) {
|
||||
mUserHandle = userHandle;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setShortcutInfos(List<ShortcutInfo> shortcutInfos) {
|
||||
mShortcutInfos = shortcutInfos;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setExtras(Bundle extras) {
|
||||
mExtras = extras;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Builder setRemoteAction(RemoteAction remoteAction) {
|
||||
mRemoteAction = remoteAction;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds a {@link SearchTargetLegacy}
|
||||
*/
|
||||
public SearchTargetLegacy build() {
|
||||
if (mItemId == null) {
|
||||
throw new IllegalStateException("Item ID is required for building SearchTarget");
|
||||
}
|
||||
return new SearchTargetLegacy(mItemId, mItemType, mScore, mComponentName, mUserHandle,
|
||||
mShortcutInfos,
|
||||
mRemoteAction, mExtras);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user