Merge "Use metrics defined by proto in new Settings tabs." into nyc-mr1-dev

This commit is contained in:
Fan Zhang
2016-06-17 20:15:46 +00:00
committed by Android (Google) Code Review
3 changed files with 41 additions and 9 deletions

View File

@@ -30,9 +30,6 @@ public abstract class InstrumentedFragment extends PreferenceFragment {
// Used by PreferenceActivity for the dummy fragment it adds, no useful data here.
public static final int PREFERENCE_ACTIVITY_FRAGMENT = UNDECLARED + 1;
public static final int DASHBOARD_CONTAINER = UNDECLARED + 2;
public static final int SUPPORT_FRAGMENT = UNDECLARED + 3;
/**
* Declare the view of this category.

View File

@@ -24,18 +24,17 @@ import android.os.Bundle;
import android.support.v13.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;
import android.view.ViewGroup;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.MetricsProto;
import com.android.settings.InstrumentedFragment;
import com.android.settings.R;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.overlay.SupportFeatureProvider;
import com.android.settings.widget.SlidingTabLayout;
import com.android.settingslib.drawer.SettingsDrawerActivity;
import com.android.settingslib.HelpUtils;
/**
* Container for Dashboard fragments.
@@ -51,7 +50,7 @@ public final class DashboardContainerFragment extends InstrumentedFragment {
@Override
protected int getMetricsCategory() {
return DASHBOARD_CONTAINER;
return MetricsProto.MetricsEvent.DASHBOARD_CONTAINER;
}
@Override
@@ -63,9 +62,11 @@ public final class DashboardContainerFragment extends InstrumentedFragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup parent, Bundle savedInstanceState) {
final View content = inflater.inflate(R.layout.dashboard_container, parent, false);
final Context context = getContext();
mViewPager = (ViewPager) content.findViewById(R.id.pager);
mPagerAdapter = new DashboardViewPagerAdapter(getContext(), getChildFragmentManager());
mPagerAdapter = new DashboardViewPagerAdapter(context, getChildFragmentManager());
mViewPager.setAdapter(mPagerAdapter);
mViewPager.addOnPageChangeListener(new TabInstrumentationListener(context));
mHeaderView = inflater.inflate(R.layout.dashboard_container_header, parent, false);
((SlidingTabLayout) mHeaderView).setViewPager(mViewPager);
return content;
@@ -125,4 +126,37 @@ public final class DashboardContainerFragment extends InstrumentedFragment {
return mSupportFeatureProvider == null ? 1 : 2;
}
}
private static final class TabInstrumentationListener
implements ViewPager.OnPageChangeListener {
private final Context mContext;
public TabInstrumentationListener(Context context) {
mContext = context;
}
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
// Do nothing.
}
@Override
public void onPageScrollStateChanged(int state) {
// Do nothing
}
@Override
public void onPageSelected(int position) {
switch (position) {
case INDEX_SUMMARY_FRAGMENT:
MetricsLogger.action(mContext, MetricsProto.MetricsEvent.ACTION_SELECT_SUMMARY);
break;
case INDEX_SUPPORT_FRAGMENT:
MetricsLogger.action(
mContext, MetricsProto.MetricsEvent.ACTION_SELECT_SUPPORT_FRAGMENT);
break;
}
}
}
}

View File

@@ -35,6 +35,7 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.android.internal.logging.MetricsProto;
import com.android.settings.InstrumentedFragment;
import com.android.settings.R;
import com.android.settings.overlay.FeatureFactory;
@@ -77,7 +78,7 @@ public final class SupportFragment extends InstrumentedFragment implements View.
@Override
protected int getMetricsCategory() {
return SUPPORT_FRAGMENT;
return MetricsProto.MetricsEvent.SUPPORT_FRAGMENT;
}
@Override