Merge "[Catalyst] Keep activity title in sync with PreferenceFragment" into main
This commit is contained in:
committed by
Android (Google) Code Review
commit
03556af237
@@ -21,12 +21,8 @@ import static com.android.internal.jank.InteractionJankMonitor.Configuration;
|
|||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.text.TextUtils;
|
|
||||||
import android.util.Log;
|
|
||||||
|
|
||||||
import androidx.annotation.XmlRes;
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
|
||||||
import androidx.preference.TwoStatePreference;
|
import androidx.preference.TwoStatePreference;
|
||||||
import androidx.recyclerview.widget.RecyclerView;
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
@@ -108,12 +104,6 @@ public abstract class InstrumentedPreferenceFragment extends ObservablePreferenc
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void addPreferencesFromResource(@XmlRes int preferencesResId) {
|
|
||||||
super.addPreferencesFromResource(preferencesResId);
|
|
||||||
updateActivityTitleWithScreenTitle(getPreferenceScreen());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <T extends Preference> T findPreference(CharSequence key) {
|
public <T extends Preference> T findPreference(CharSequence key) {
|
||||||
if (key == null) {
|
if (key == null) {
|
||||||
@@ -147,17 +137,6 @@ public abstract class InstrumentedPreferenceFragment extends ObservablePreferenc
|
|||||||
mMetricsFeatureProvider.logClickedPreference(preference, getMetricsCategory());
|
mMetricsFeatureProvider.logClickedPreference(preference, getMetricsCategory());
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void updateActivityTitleWithScreenTitle(PreferenceScreen screen) {
|
|
||||||
if (screen != null) {
|
|
||||||
final CharSequence title = screen.getTitle();
|
|
||||||
if (!TextUtils.isEmpty(title)) {
|
|
||||||
getActivity().setTitle(title);
|
|
||||||
} else {
|
|
||||||
Log.w(TAG, "Screen title missing for fragment " + this.getClass().getName());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private static final class OnScrollListener extends RecyclerView.OnScrollListener {
|
private static final class OnScrollListener extends RecyclerView.OnScrollListener {
|
||||||
private final InteractionJankMonitor mMonitor = InteractionJankMonitor.getInstance();
|
private final InteractionJankMonitor mMonitor = InteractionJankMonitor.getInstance();
|
||||||
private final String mClassName;
|
private final String mClassName;
|
||||||
|
@@ -415,7 +415,6 @@ public abstract class DashboardFragment extends SettingsPreferenceFragment
|
|||||||
removeControllersForHybridMode();
|
removeControllersForHybridMode();
|
||||||
}
|
}
|
||||||
setPreferenceScreen(screen);
|
setPreferenceScreen(screen);
|
||||||
updateActivityTitleWithScreenTitle(screen);
|
|
||||||
} else {
|
} else {
|
||||||
addPreferencesFromResource(resId);
|
addPreferencesFromResource(resId);
|
||||||
screen = getPreferenceScreen();
|
screen = getPreferenceScreen();
|
||||||
|
@@ -89,7 +89,6 @@ public abstract class RadioButtonPickerFragment extends SettingsPreferenceFragme
|
|||||||
if (isCatalystEnabled()) {
|
if (isCatalystEnabled()) {
|
||||||
PreferenceScreen preferenceScreen = createPreferenceScreen();
|
PreferenceScreen preferenceScreen = createPreferenceScreen();
|
||||||
setPreferenceScreen(preferenceScreen);
|
setPreferenceScreen(preferenceScreen);
|
||||||
updateActivityTitleWithScreenTitle(preferenceScreen);
|
|
||||||
} else {
|
} else {
|
||||||
super.onCreatePreferences(savedInstanceState, rootKey);
|
super.onCreatePreferences(savedInstanceState, rootKey);
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,6 @@
|
|||||||
|
|
||||||
package com.android.settings.core;
|
package com.android.settings.core;
|
||||||
|
|
||||||
import static org.mockito.ArgumentMatchers.any;
|
|
||||||
import static org.mockito.ArgumentMatchers.anyInt;
|
import static org.mockito.ArgumentMatchers.anyInt;
|
||||||
import static org.mockito.Mockito.never;
|
import static org.mockito.Mockito.never;
|
||||||
import static org.mockito.Mockito.spy;
|
import static org.mockito.Mockito.spy;
|
||||||
@@ -84,7 +83,6 @@ public class InstrumentedPreferenceFragmentTest {
|
|||||||
mFragment.onCreatePreferences(Bundle.EMPTY, null /* rootKey */);
|
mFragment.onCreatePreferences(Bundle.EMPTY, null /* rootKey */);
|
||||||
|
|
||||||
verify(mFragment).addPreferencesFromResource(R.xml.screen_pinning_settings);
|
verify(mFragment).addPreferencesFromResource(R.xml.screen_pinning_settings);
|
||||||
verify(mActivity, never()).setTitle(any());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -97,7 +95,6 @@ public class InstrumentedPreferenceFragmentTest {
|
|||||||
mFragment.onCreatePreferences(Bundle.EMPTY, null /* rootKey */);
|
mFragment.onCreatePreferences(Bundle.EMPTY, null /* rootKey */);
|
||||||
|
|
||||||
verify(mFragment).addPreferencesFromResource(R.xml.screen_pinning_settings);
|
verify(mFragment).addPreferencesFromResource(R.xml.screen_pinning_settings);
|
||||||
verify(mActivity).setTitle(title);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class InstrumentedPreferenceFragmentTestable
|
public static class InstrumentedPreferenceFragmentTestable
|
||||||
|
Reference in New Issue
Block a user