From 09f182c385d336f00fb1247b39f055bc33af7b75 Mon Sep 17 00:00:00 2001 From: Salvador Martinez Date: Mon, 30 Jan 2017 16:49:36 -0800 Subject: [PATCH] Added survey support to second fragment type Settings was totally redesigned which led several screens to change what type of fragment they extended. Unfortunately this broke surveys for some required screens so survey support was added to the second fragment type to fix this. Test: Survey tests (robotests) Bug: 34820704 Change-Id: Ic59b74c17c3d69c67600ce6a56f9f1835d2e1dda --- src/com/android/settings/core/InstrumentedFragment.java | 2 ++ src/com/android/settings/survey/SurveyMixin.java | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/com/android/settings/core/InstrumentedFragment.java b/src/com/android/settings/core/InstrumentedFragment.java index e55cc276e12..867389b3074 100644 --- a/src/com/android/settings/core/InstrumentedFragment.java +++ b/src/com/android/settings/core/InstrumentedFragment.java @@ -23,6 +23,7 @@ import com.android.settings.core.instrumentation.MetricsFeatureProvider; import com.android.settings.core.instrumentation.VisibilityLoggerMixin; import com.android.settings.core.lifecycle.ObservableFragment; import com.android.settings.overlay.FeatureFactory; +import com.android.settings.survey.SurveyMixin; public abstract class InstrumentedFragment extends ObservableFragment implements Instrumentable { @@ -31,6 +32,7 @@ public abstract class InstrumentedFragment extends ObservableFragment implements public InstrumentedFragment() { // Mixin that logs visibility change for activity. getLifecycle().addObserver(new VisibilityLoggerMixin(getMetricsCategory())); + getLifecycle().addObserver(new SurveyMixin(this, getClass().getSimpleName())); } @Override diff --git a/src/com/android/settings/survey/SurveyMixin.java b/src/com/android/settings/survey/SurveyMixin.java index 72cd634c851..4eb14bd3811 100644 --- a/src/com/android/settings/survey/SurveyMixin.java +++ b/src/com/android/settings/survey/SurveyMixin.java @@ -16,8 +16,8 @@ package com.android.settings.survey; import android.app.Activity; +import android.app.Fragment; import android.content.BroadcastReceiver; -import com.android.settings.core.InstrumentedPreferenceFragment; import com.android.settings.core.lifecycle.LifecycleObserver; import com.android.settings.core.lifecycle.events.OnPause; import com.android.settings.core.lifecycle.events.OnResume; @@ -32,7 +32,7 @@ import com.android.settings.overlay.SurveyFeatureProvider; public class SurveyMixin implements LifecycleObserver, OnResume, OnPause { private String mName; - private InstrumentedPreferenceFragment mFragment; + private Fragment mFragment; private BroadcastReceiver mReceiver; /** @@ -42,7 +42,7 @@ public class SurveyMixin implements LifecycleObserver, OnResume, OnPause { * @param fragment The fragment that this mixin will be attached to. * @param fragmentName The simple name of the fragment. */ - public SurveyMixin(InstrumentedPreferenceFragment fragment, String fragmentName) { + public SurveyMixin(Fragment fragment, String fragmentName) { mName = fragmentName; mFragment = fragment; }