Merge "Fix issue with source params not reporting predicted apps." into ub-launcher3-burnaby-polish

This commit is contained in:
Winson Chung
2015-10-16 22:20:14 +00:00
committed by Android (Google) Code Review
5 changed files with 21 additions and 6 deletions

View File

@@ -1347,7 +1347,7 @@ public class Folder extends LinearLayout implements DragSource, View.OnClickList
}
@Override
public void fillInLaunchSourceData(Bundle sourceData) {
public void fillInLaunchSourceData(View v, Bundle sourceData) {
// Fill in from the folder icon's launch source provider first
Stats.LaunchSourceUtils.populateSourceDataFromAncestorProvider(mFolderIcon, sourceData);
sourceData.putString(Stats.SOURCE_EXTRA_SUB_CONTAINER, Stats.SUB_CONTAINER_FOLDER);

View File

@@ -23,6 +23,7 @@ import android.os.Bundle;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.TextView;
@@ -153,7 +154,7 @@ public class Hotseat extends FrameLayout
}
@Override
public void fillInLaunchSourceData(Bundle sourceData) {
public void fillInLaunchSourceData(View v, Bundle sourceData) {
sourceData.putString(Stats.SOURCE_EXTRA_CONTAINER, Stats.CONTAINER_HOTSEAT);
}
}

View File

@@ -31,7 +31,7 @@ public class Stats {
* Implemented by containers to provide a launch source for a given child.
*/
public interface LaunchSourceProvider {
void fillInLaunchSourceData(Bundle sourceData);
void fillInLaunchSourceData(View v, Bundle sourceData);
}
/**
@@ -70,7 +70,7 @@ public class Stats {
}
if (provider != null) {
provider.fillInLaunchSourceData(sourceData);
provider.fillInLaunchSourceData(v, sourceData);
} else if (LauncherAppState.isDogfoodBuild()) {
throw new RuntimeException("Expected LaunchSourceProvider");
}

View File

@@ -4496,7 +4496,7 @@ public class Workspace extends PagedView
}
@Override
public void fillInLaunchSourceData(Bundle sourceData) {
public void fillInLaunchSourceData(View v, Bundle sourceData) {
sourceData.putString(Stats.SOURCE_EXTRA_CONTAINER, Stats.CONTAINER_HOMESCREEN);
sourceData.putInt(Stats.SOURCE_EXTRA_CONTAINER_PAGE, getCurrentPage());
}

View File

@@ -25,6 +25,7 @@ import android.util.AttributeSet;
import android.view.View;
import com.android.launcher3.BaseRecyclerView;
import com.android.launcher3.BubbleTextView;
import com.android.launcher3.DeviceProfile;
import com.android.launcher3.R;
import com.android.launcher3.Stats;
@@ -155,12 +156,25 @@ public class AllAppsRecyclerView extends BaseRecyclerView
}
@Override
public void fillInLaunchSourceData(Bundle sourceData) {
public void fillInLaunchSourceData(View v, Bundle sourceData) {
sourceData.putString(Stats.SOURCE_EXTRA_CONTAINER, Stats.CONTAINER_ALL_APPS);
if (mApps.hasFilter()) {
sourceData.putString(Stats.SOURCE_EXTRA_SUB_CONTAINER,
Stats.SUB_CONTAINER_ALL_APPS_SEARCH);
} else {
if (v instanceof BubbleTextView) {
BubbleTextView icon = (BubbleTextView) v;
int position = getChildPosition(icon);
if (position != NO_POSITION) {
List<AlphabeticalAppsList.AdapterItem> items = mApps.getAdapterItems();
AlphabeticalAppsList.AdapterItem item = items.get(position);
if (item.viewType == AllAppsGridAdapter.PREDICTION_ICON_VIEW_TYPE) {
sourceData.putString(Stats.SOURCE_EXTRA_SUB_CONTAINER,
Stats.SUB_CONTAINER_ALL_APPS_PREDICTION);
return;
}
}
}
sourceData.putString(Stats.SOURCE_EXTRA_SUB_CONTAINER,
Stats.SUB_CONTAINER_ALL_APPS_A_Z);
}