blob: c62ce0e57524ac3247c8428195085b5da803107f [file] [log] [blame]
package com.android.launcher3.testing;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.Rect;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.FrameLayout;
import com.android.launcher3.AppInfo;
import com.android.launcher3.Launcher;
import com.android.launcher3.LauncherCallbacks;
import com.android.launcher3.allapps.AllAppsSearchBarController;
import com.android.launcher3.logging.UserEventDispatcher;
import com.android.launcher3.util.ComponentKey;
import java.io.FileDescriptor;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
/**
* This class represents a very trivial LauncherExtension. It primarily serves as a simple
* class to exercise the LauncherOverlay interface.
*/
public class LauncherExtension extends Launcher {
//------ Activity methods -------//
@Override
public void onCreate(Bundle savedInstanceState) {
setLauncherCallbacks(new LauncherExtensionCallbacks());
super.onCreate(savedInstanceState);
}
public class LauncherExtensionCallbacks implements LauncherCallbacks {
@Override
public void preOnCreate() {
}
@Override
public void onCreate(Bundle savedInstanceState) {
}
@Override
public void preOnResume() {
}
@Override
public void onResume() {
}
@Override
public void onStart() {
}
@Override
public void onStop() {
}
@Override
public void onPause() {
}
@Override
public void onDestroy() {
}
@Override
public void onSaveInstanceState(Bundle outState) {
}
@Override
public void onPostCreate(Bundle savedInstanceState) {
}
@Override
public void onNewIntent(Intent intent) {
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
}
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions,
int[] grantResults) {
}
@Override
public void onWindowFocusChanged(boolean hasFocus) {
}
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
return false;
}
@Override
public void dump(String prefix, FileDescriptor fd, PrintWriter w, String[] args) {
}
@Override
public void onHomeIntent() {
}
@Override
public boolean handleBackPressed() {
return false;
}
@Override
public void onTrimMemory(int level) {
}
@Override
public void onLauncherProviderChange() {
}
@Override
public void finishBindingItems(boolean upgradePath) {
}
@Override
public void bindAllApplications(ArrayList<AppInfo> apps) {
}
@Override
public void onWorkspaceLockedChanged() {
}
@Override
public void onInteractionBegin() {
}
@Override
public void onInteractionEnd() {
}
@Override
public boolean providesSearch() {
return false;
}
@Override
public boolean startSearch(String initialQuery, boolean selectInitialQuery,
Bundle appSearchData, Rect sourceBounds) {
return false;
}
CustomContentCallbacks mCustomContentCallbacks = new CustomContentCallbacks() {
// Custom content is completely shown. {@code fromResume} indicates whether this was caused
// by a onResume or by scrolling otherwise.
public void onShow(boolean fromResume) {
}
// Custom content is completely hidden
public void onHide() {
}
// Custom content scroll progress changed. From 0 (not showing) to 1 (fully showing).
public void onScrollProgressChanged(float progress) {
}
// Indicates whether the user is allowed to scroll away from the custom content.
public boolean isScrollingAllowed() {
return true;
}
};
@Override
public boolean hasCustomContentToLeft() {
return true;
}
@Override
public void populateCustomContentContainer() {
FrameLayout customContent = new FrameLayout(LauncherExtension.this);
customContent.setBackgroundColor(Color.GRAY);
addToCustomContentPage(customContent, mCustomContentCallbacks, "");
}
@Override
public UserEventDispatcher getUserEventDispatcher() { return null; }
@Override
public View getQsbBar() {
return null;
}
@Override
public Bundle getAdditionalSearchWidgetOptions() {
return new Bundle();
}
@Override
public Intent getFirstRunActivity() {
return null;
}
@Override
public boolean hasFirstRunActivity() {
return false;
}
@Override
public boolean hasDismissableIntroScreen() {
return false;
}
@Override
public View getIntroScreen() {
return null;
}
@Override
public boolean shouldMoveToDefaultScreenOnHomeIntent() {
return true;
}
@Override
public boolean hasSettings() {
return false;
}
@Override
public AllAppsSearchBarController getAllAppsSearchBarController() {
return null;
}
@Override
public List<ComponentKey> getPredictedApps() {
// To debug app predictions, enable AlphabeticalAppsList#DEBUG_PREDICTIONS
return new ArrayList<>();
}
@Override
public int getSearchBarHeight() {
return SEARCH_BAR_HEIGHT_NORMAL;
}
@Override
public void setLauncherSearchCallback(Object callbacks) {
// Do nothing
}
@Override
public void onAttachedToWindow() {
}
@Override
public void onDetachedFromWindow() {
}
}
}