Abstracting out all the Laucher related logic
> Enabling swipe up geture for fallback activity
> Using a preferecens for showing back button
Bug: 75979063
Change-Id: I8bbb44d8e250428c3da9bde57975dc4f952624be
diff --git a/src/com/android/launcher3/BaseDraggingActivity.java b/src/com/android/launcher3/BaseDraggingActivity.java
index 35edaf4..458f7b2 100644
--- a/src/com/android/launcher3/BaseDraggingActivity.java
+++ b/src/com/android/launcher3/BaseDraggingActivity.java
@@ -55,6 +55,8 @@
private ActionMode mCurrentActionMode;
protected boolean mIsSafeModeEnabled;
+ private OnStartCallback mOnStartCallback;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -85,6 +87,8 @@
public abstract <T extends View> T getOverviewPanel();
+ public abstract View getRootView();
+
public abstract BadgeInfo getBadgeInfoForItem(ItemInfo info);
public abstract void invalidateParent(ItemInfo info);
@@ -188,4 +192,26 @@
protected boolean onErrorStartingShortcut(Intent intent, ItemInfo info) {
return false;
}
+
+ @Override
+ protected void onStart() {
+ super.onStart();
+
+ if (mOnStartCallback != null) {
+ mOnStartCallback.onActivityStart(this);
+ mOnStartCallback = null;
+ }
+ }
+
+ public <T extends BaseDraggingActivity> void setOnStartCallback(OnStartCallback<T> callback) {
+ mOnStartCallback = callback;
+ }
+
+ /**
+ * Callback for listening for onStart
+ */
+ public interface OnStartCallback<T extends BaseDraggingActivity> {
+
+ void onActivityStart(T activity);
+ }
}