Loading src/com/android/settings/dashboard/SupportItemAdapter.java +21 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,8 @@ import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto; import com.android.settings.R; import com.android.settings.overlay.SupportFeatureProvider; import com.android.settings.support.SupportDisclaimerDialogFragment; Loading Loading @@ -111,6 +113,9 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd if (position >= 0 && position < mSupportData.size()) { final SupportData data = mSupportData.get(position); if (data.intent != null) { if (data.metricsEvent >= 0) { MetricsLogger.action(mActivity, data.metricsEvent); } mActivity.startActivityForResult(data.intent, 0); } } Loading Loading @@ -185,11 +190,13 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd .setIcon(R.drawable.ic_lightbulb_outline_24) .setText1(R.string.support_tips_and_tricks_title) .setIntent(mSupportFeatureProvider.getTipsAndTricksIntent(mActivity)) .setMetricsEvent(MetricsProto.MetricsEvent.ACTION_SUPPORT_TIPS_AND_TRICKS) .build()); mSupportData.add(new SupportData.Builder(TYPE_SUPPORT_TILE) .setIcon(R.drawable.ic_help_24dp) .setText1(R.string.help_feedback_label) .setIntent(mSupportFeatureProvider.getHelpIntent(mActivity)) .setMetricsEvent(MetricsProto.MetricsEvent.ACTION_SUPPORT_HELP_AND_FEEDBACK) .build()); } Loading Loading @@ -261,6 +268,8 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd if (mAccount == null) { switch (v.getId()) { case android.R.id.text1: MetricsLogger.action(mActivity, MetricsProto.MetricsEvent.ACTION_SUPPORT_SIGN_IN); mActivity.startActivityForResult( mSupportFeatureProvider.getAccountLoginIntent(), 0 /* requestCode */); Loading @@ -274,9 +283,13 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd } else { switch (v.getId()) { case android.R.id.text1: MetricsLogger.action(mActivity, MetricsProto.MetricsEvent.ACTION_SUPPORT_PHONE); tryStartDisclaimerAndSupport(PHONE); break; case android.R.id.text2: MetricsLogger.action(mActivity, MetricsProto.MetricsEvent.ACTION_SUPPORT_CHAT); tryStartDisclaimerAndSupport(CHAT); break; } Loading Loading @@ -311,6 +324,7 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd private static final class SupportData { final Intent intent; final int metricsEvent; @LayoutRes final int type; @DrawableRes Loading @@ -330,6 +344,7 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd this.summary1 = builder.mSummary1; this.summary2 = builder.mSummary2; this.intent = builder.mIntent; this.metricsEvent = builder.mMetricsEvent; } static final class Builder { Loading @@ -344,6 +359,7 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd private String mSummary1; private String mSummary2; private Intent mIntent; private int mMetricsEvent = -1; Builder(@LayoutRes int type) { mType = type; Loading Loading @@ -374,6 +390,11 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd return this; } Builder setMetricsEvent(int metricsEvent) { mMetricsEvent = metricsEvent; return this; } Builder setIntent(Intent intent) { mIntent = intent; return this; Loading src/com/android/settings/support/SupportDisclaimerDialogFragment.java +16 −1 Original line number Diff line number Diff line Loading @@ -32,6 +32,8 @@ import android.view.View; import android.widget.CheckBox; import android.widget.TextView; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto; import com.android.settings.R; import com.android.settings.overlay.FeatureFactory; import com.android.settings.overlay.SupportFeatureProvider; Loading Loading @@ -61,7 +63,7 @@ public final class SupportDisclaimerDialogFragment extends DialogFragment implem final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()) .setTitle(R.string.support_disclaimer_title) .setPositiveButton(android.R.string.ok, this) .setNegativeButton(android.R.string.cancel, null); .setNegativeButton(android.R.string.cancel, this); final View content = LayoutInflater.from(builder.getContext()) .inflate(R.layout.support_disclaimer_content, null); final TextView disclaimer = (TextView) content.findViewById(R.id.support_disclaimer_text); Loading @@ -74,6 +76,11 @@ public final class SupportDisclaimerDialogFragment extends DialogFragment implem @Override public void onClick(DialogInterface dialog, int which) { if (which == Dialog.BUTTON_NEGATIVE) { MetricsLogger.action(getContext(), MetricsProto.MetricsEvent.ACTION_SUPPORT_DISCLAIMER_CANCEL); return; } final Activity activity = getActivity(); final CheckBox doNotShow = (CheckBox) getDialog().findViewById(R.id.support_disclaimer_do_not_show_again); Loading @@ -81,10 +88,18 @@ public final class SupportDisclaimerDialogFragment extends DialogFragment implem FeatureFactory.getFactory(activity).getSupportFeatureProvider(activity); supportFeatureProvider.setShouldShowDisclaimerDialog(getContext(), !doNotShow.isChecked()); final Bundle bundle = getArguments(); MetricsLogger.action(activity, MetricsProto.MetricsEvent.ACTION_SUPPORT_DISCLAIMER_OK); supportFeatureProvider.startSupport(getActivity(), (Account) bundle.getParcelable(EXTRA_ACCOUNT), bundle.getInt(EXTRA_TYPE)); } @Override public void onCancel(DialogInterface dialog) { super.onCancel(dialog); MetricsLogger.action(getContext(), MetricsProto.MetricsEvent.ACTION_SUPPORT_DISCLAIMER_CANCEL); } /** * Removes the underlines of {@link android.text.style.URLSpan}s. */ Loading Loading
src/com/android/settings/dashboard/SupportItemAdapter.java +21 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,8 @@ import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto; import com.android.settings.R; import com.android.settings.overlay.SupportFeatureProvider; import com.android.settings.support.SupportDisclaimerDialogFragment; Loading Loading @@ -111,6 +113,9 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd if (position >= 0 && position < mSupportData.size()) { final SupportData data = mSupportData.get(position); if (data.intent != null) { if (data.metricsEvent >= 0) { MetricsLogger.action(mActivity, data.metricsEvent); } mActivity.startActivityForResult(data.intent, 0); } } Loading Loading @@ -185,11 +190,13 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd .setIcon(R.drawable.ic_lightbulb_outline_24) .setText1(R.string.support_tips_and_tricks_title) .setIntent(mSupportFeatureProvider.getTipsAndTricksIntent(mActivity)) .setMetricsEvent(MetricsProto.MetricsEvent.ACTION_SUPPORT_TIPS_AND_TRICKS) .build()); mSupportData.add(new SupportData.Builder(TYPE_SUPPORT_TILE) .setIcon(R.drawable.ic_help_24dp) .setText1(R.string.help_feedback_label) .setIntent(mSupportFeatureProvider.getHelpIntent(mActivity)) .setMetricsEvent(MetricsProto.MetricsEvent.ACTION_SUPPORT_HELP_AND_FEEDBACK) .build()); } Loading Loading @@ -261,6 +268,8 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd if (mAccount == null) { switch (v.getId()) { case android.R.id.text1: MetricsLogger.action(mActivity, MetricsProto.MetricsEvent.ACTION_SUPPORT_SIGN_IN); mActivity.startActivityForResult( mSupportFeatureProvider.getAccountLoginIntent(), 0 /* requestCode */); Loading @@ -274,9 +283,13 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd } else { switch (v.getId()) { case android.R.id.text1: MetricsLogger.action(mActivity, MetricsProto.MetricsEvent.ACTION_SUPPORT_PHONE); tryStartDisclaimerAndSupport(PHONE); break; case android.R.id.text2: MetricsLogger.action(mActivity, MetricsProto.MetricsEvent.ACTION_SUPPORT_CHAT); tryStartDisclaimerAndSupport(CHAT); break; } Loading Loading @@ -311,6 +324,7 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd private static final class SupportData { final Intent intent; final int metricsEvent; @LayoutRes final int type; @DrawableRes Loading @@ -330,6 +344,7 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd this.summary1 = builder.mSummary1; this.summary2 = builder.mSummary2; this.intent = builder.mIntent; this.metricsEvent = builder.mMetricsEvent; } static final class Builder { Loading @@ -344,6 +359,7 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd private String mSummary1; private String mSummary2; private Intent mIntent; private int mMetricsEvent = -1; Builder(@LayoutRes int type) { mType = type; Loading Loading @@ -374,6 +390,11 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd return this; } Builder setMetricsEvent(int metricsEvent) { mMetricsEvent = metricsEvent; return this; } Builder setIntent(Intent intent) { mIntent = intent; return this; Loading
src/com/android/settings/support/SupportDisclaimerDialogFragment.java +16 −1 Original line number Diff line number Diff line Loading @@ -32,6 +32,8 @@ import android.view.View; import android.widget.CheckBox; import android.widget.TextView; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto; import com.android.settings.R; import com.android.settings.overlay.FeatureFactory; import com.android.settings.overlay.SupportFeatureProvider; Loading Loading @@ -61,7 +63,7 @@ public final class SupportDisclaimerDialogFragment extends DialogFragment implem final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()) .setTitle(R.string.support_disclaimer_title) .setPositiveButton(android.R.string.ok, this) .setNegativeButton(android.R.string.cancel, null); .setNegativeButton(android.R.string.cancel, this); final View content = LayoutInflater.from(builder.getContext()) .inflate(R.layout.support_disclaimer_content, null); final TextView disclaimer = (TextView) content.findViewById(R.id.support_disclaimer_text); Loading @@ -74,6 +76,11 @@ public final class SupportDisclaimerDialogFragment extends DialogFragment implem @Override public void onClick(DialogInterface dialog, int which) { if (which == Dialog.BUTTON_NEGATIVE) { MetricsLogger.action(getContext(), MetricsProto.MetricsEvent.ACTION_SUPPORT_DISCLAIMER_CANCEL); return; } final Activity activity = getActivity(); final CheckBox doNotShow = (CheckBox) getDialog().findViewById(R.id.support_disclaimer_do_not_show_again); Loading @@ -81,10 +88,18 @@ public final class SupportDisclaimerDialogFragment extends DialogFragment implem FeatureFactory.getFactory(activity).getSupportFeatureProvider(activity); supportFeatureProvider.setShouldShowDisclaimerDialog(getContext(), !doNotShow.isChecked()); final Bundle bundle = getArguments(); MetricsLogger.action(activity, MetricsProto.MetricsEvent.ACTION_SUPPORT_DISCLAIMER_OK); supportFeatureProvider.startSupport(getActivity(), (Account) bundle.getParcelable(EXTRA_ACCOUNT), bundle.getInt(EXTRA_TYPE)); } @Override public void onCancel(DialogInterface dialog) { super.onCancel(dialog); MetricsLogger.action(getContext(), MetricsProto.MetricsEvent.ACTION_SUPPORT_DISCLAIMER_CANCEL); } /** * Removes the underlines of {@link android.text.style.URLSpan}s. */ Loading