summaryrefslogtreecommitdiffstats
path: root/RemoteFolder/src/com
diff options
context:
space:
mode:
authorArtem Shvadskiy <ashvadskiy@cyngn.com>2015-12-23 17:21:24 -0800
committerArtem Shvadskiy <ashvadskiy@cyngn.com>2016-01-04 17:46:57 -0800
commit1a75f660937c99d39110c3f1335ae3bea1a85914 (patch)
treea59d306f5ac0f37b930b286957646288ccf201b2 /RemoteFolder/src/com
parentb7121babd1abedc085244a5145052ad453ce86a6 (diff)
downloadandroid_packages_apps_Trebuchet-1a75f660937c99d39110c3f1335ae3bea1a85914.tar.gz
android_packages_apps_Trebuchet-1a75f660937c99d39110c3f1335ae3bea1a85914.tar.bz2
android_packages_apps_Trebuchet-1a75f660937c99d39110c3f1335ae3bea1a85914.zip
Implement RemoteFolder metrics.
Additional changes: 1. Refactor drawer code to move xml and implementation out of trebuchet. 2. Move RemoteFolderUpdater to overlay, no stub class needed. 3. Pull TrackingEvent.Category out into EventCategory, and create overlay. 4. Remove old sync code from Folder. 5. Prevent RemoteFolder from inserting shortcuts into the database. All remote items will exist in memory only. 6. Move RemoteFolder into overlay, and have manager create an instance for FolderIcon. 7. Move folder sync out of LauncherModel. Patch 2: Re-add shortcut click handling in Folder and move EventCategory back into TrackingEvent.Category. Patch 3: Remove whitespace/javadoc/import changes. Change-Id: Ifc648f231bf6f6f35d8be45f8885f741b7539487 issue-id: CYNGNOS-1330
Diffstat (limited to 'RemoteFolder/src/com')
-rw-r--r--RemoteFolder/src/com/android/launcher3/RemoteFolderManager.java28
-rw-r--r--RemoteFolder/src/com/android/launcher3/RemoteFolderUpdater.java83
2 files changed, 27 insertions, 84 deletions
diff --git a/RemoteFolder/src/com/android/launcher3/RemoteFolderManager.java b/RemoteFolder/src/com/android/launcher3/RemoteFolderManager.java
index c93b8338b..61a003399 100644
--- a/RemoteFolder/src/com/android/launcher3/RemoteFolderManager.java
+++ b/RemoteFolder/src/com/android/launcher3/RemoteFolderManager.java
@@ -1,5 +1,7 @@
package com.android.launcher3;
+import java.util.ArrayList;
+
/**
* Manages adding and removing the remote folder from the workspace.
*/
@@ -7,7 +9,12 @@ public class RemoteFolderManager {
public RemoteFolderManager(final Launcher launcher) { }
- public void setRemoteFolder(final FolderIcon remoteFolder) { }
+ /**
+ * Create a remote folder view.
+ * @param icon folder icon view on the workspace.
+ * @return a view for the remote folder.
+ */
+ public Folder createRemoteFolder(final FolderIcon icon) { return null; }
/**
* Called when Launcher finishes binding items from the model.
@@ -31,7 +38,26 @@ public class RemoteFolderManager {
public void onAppDrawerOpened() { }
/**
+ * Called when new apps are added to launcher.
+ * @param apps list of added apps.
+ */
+ public void onBindAddApps(ArrayList<AppInfo> apps) { }
+
+ /**
* Called when the info icon is clicked
*/
public void onInfoIconClicked() { }
+
+ /**
+ * Called when the view holder is created for the remote header.
+ * @param holder remote view holder.
+ */
+ public void onCreateViewHolder(final AppDrawerListAdapter.ViewHolder holder) { }
+ /**
+ * Called when the view holder is bound for the remote header.
+ * @param holder remote view holder.
+ * @param indexedInfo header info.
+ */
+ public void onBindViewHolder(final AppDrawerListAdapter.ViewHolder holder,
+ final AppDrawerListAdapter.AppItemIndexedInfo indexedInfo) { }
}
diff --git a/RemoteFolder/src/com/android/launcher3/RemoteFolderUpdater.java b/RemoteFolder/src/com/android/launcher3/RemoteFolderUpdater.java
deleted file mode 100644
index 954595e1f..000000000
--- a/RemoteFolder/src/com/android/launcher3/RemoteFolderUpdater.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package com.android.launcher3;
-
-import android.content.Context;
-import android.content.Intent;
-import android.graphics.Bitmap;
-import android.view.View;
-import java.util.List;
-import android.util.Log;
-
-public class RemoteFolderUpdater {
-
- private static final String TAG = "RemoteFolderUpdater";
-
- private static final Object sLock = new Object();
- private static RemoteFolderUpdater sInstance;
-
- public interface RemoteFolderUpdateListener {
- void onSuccess(List<RemoteFolderInfo> remoteFolderInfoList);
- void onFailure(String error);
- }
-
- public static RemoteFolderUpdater getInstance() {
- synchronized (sLock) {
- if (sInstance == null) {
- sInstance = new RemoteFolderUpdater();
- }
-
- return sInstance;
- }
- }
-
- private RemoteFolderUpdater() { }
-
- /**
- * Requests data needed by remote folders.
- * @param context
- * @param size
- * @param listener
- */
- public synchronized void requestSync(Context context, final int size, final RemoteFolderUpdateListener listener) {
- if (listener != null) {
- listener.onFailure("RemoteFolderUpdater may not have been properly setup");
- }
- }
-
- /**
- * Register a callback to track clicks on our individual Remote Folder items. Make sure the
- * intent associated with each item has a unique ID.
- *
- * @param view The individual item the user may click (or just clicked)
- * @param intent The intent associated with the ShortcutInfo that belongs to our view
- */
- public void registerViewForInteraction(View view, Intent intent) {
- Log.e(TAG, "Couldn't register view for user interaction, RemoteFolderUpdater may not have been properly setup");
- }
-
- /**
- * Holds important information that the launcher will need for each item in the remote folder.
- */
- public class RemoteFolderInfo {
-
- public void setRecommendationData(View view) {
- return;
- }
-
- public String getTitle() {
- return null;
- }
-
- public Bitmap getIcon() {
- return null;
- }
-
- public String getIconUrl() {
- return null;
- }
-
- public Intent getIntent() {
- return null;
- }
- }
-
-}