Cherish:Move Font Settings to Themes Section [2/2]

Signed-off-by: Hưng Phan <phandinhhungvp2001@gmail.com>
This commit is contained in:
Jackeagle
2021-07-24 23:59:40 +07:00
committed by Hưng Phan
parent 7d257332b8
commit a83ca164a4
2 changed files with 42 additions and 1 deletions

View File

@@ -56,6 +56,12 @@
android:targetClass="com.android.customization.picker.LockClockPickerActivity" /> android:targetClass="com.android.customization.picker.LockClockPickerActivity" />
</Preference> </Preference>
<com.android.settings.display.FontDialogPreference
android:key="custom_font"
android:icon="@drawable/ic_font"
android:title="@string/font_picker_title"
android:persistent="false" />
<ListPreference <ListPreference
android:key="android.theme.customization.signal_icon" android:key="android.theme.customization.signal_icon"
android:icon="@drawable/ic_signal" android:icon="@drawable/ic_signal"

View File

@@ -7,8 +7,8 @@ import static android.os.UserHandle.USER_SYSTEM;
import android.app.UiModeManager; import android.app.UiModeManager;
import android.graphics.Color; import android.graphics.Color;
import android.os.Bundle; import android.os.Bundle;
import android.content.BroadcastReceiver;
import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.PackageManager.NameNotFoundException;
import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo; import android.content.pm.ResolveInfo;
@@ -21,6 +21,8 @@ import android.content.om.OverlayInfo;
import android.os.RemoteException; import android.os.RemoteException;
import android.provider.SearchIndexableResource; import android.provider.SearchIndexableResource;
import android.provider.Settings; import android.provider.Settings;
import android.content.Context;
import android.content.IntentFilter;
import android.content.ContentResolver; import android.content.ContentResolver;
import android.content.res.Resources; import android.content.res.Resources;
import androidx.preference.ListPreference; import androidx.preference.ListPreference;
@@ -33,6 +35,7 @@ import com.cherish.settings.preferences.CustomSeekBarPreference;
import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settingslib.search.SearchIndexable; import com.android.settingslib.search.SearchIndexable;
import com.android.settings.display.OverlayCategoryPreferenceController; import com.android.settings.display.OverlayCategoryPreferenceController;
import com.android.settings.display.FontPickerPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.core.lifecycle.Lifecycle;
import android.provider.Settings; import android.provider.Settings;
import com.android.settings.R; import com.android.settings.R;
@@ -92,6 +95,19 @@ public class ThemeSettings extends SettingsPreferenceFragment implements
private ListPreference mQsTileStyle; private ListPreference mQsTileStyle;
private ListPreference mGesbar; private ListPreference mGesbar;
private IntentFilter mIntentFilter;
private static FontPickerPreferenceController mFontPickerPreference;
private BroadcastReceiver mIntentReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals("com.android.server.ACTION_FONT_CHANGED")) {
mFontPickerPreference.stopProgress();
}
}
};
@Override @Override
public void onCreate(Bundle icicle) { public void onCreate(Bundle icicle) {
super.onCreate(icicle); super.onCreate(icicle);
@@ -101,6 +117,9 @@ public class ThemeSettings extends SettingsPreferenceFragment implements
PreferenceScreen prefScreen = getPreferenceScreen(); PreferenceScreen prefScreen = getPreferenceScreen();
ContentResolver resolver = getActivity().getContentResolver(); ContentResolver resolver = getActivity().getContentResolver();
mIntentFilter = new IntentFilter();
mIntentFilter.addAction("com.android.server.ACTION_FONT_CHANGED");
mSwitchStyle = (SystemSettingListPreference)findPreference(SWITCH_STYLE); mSwitchStyle = (SystemSettingListPreference)findPreference(SWITCH_STYLE);
int switchStyle = Settings.System.getInt(resolver,Settings.System.SWITCH_STYLE, 2); int switchStyle = Settings.System.getInt(resolver,Settings.System.SWITCH_STYLE, 2);
int switchIndex = mSwitchStyle.findIndexOfValue(String.valueOf(switchStyle)); int switchIndex = mSwitchStyle.findIndexOfValue(String.valueOf(switchStyle));
@@ -242,6 +261,7 @@ public class ThemeSettings extends SettingsPreferenceFragment implements
"android.theme.customization.signal_icon")); "android.theme.customization.signal_icon"));
controllers.add(new OverlayCategoryPreferenceController(context, controllers.add(new OverlayCategoryPreferenceController(context,
"android.theme.customization.wifi_icon")); "android.theme.customization.wifi_icon"));
controllers.add(mFontPickerPreference = new FontPickerPreferenceController(context, lifecycle));
return controllers; return controllers;
} }
@@ -469,6 +489,21 @@ private int getOverlayPosition(String[] overlays) {
return MetricsProto.MetricsEvent.CHERISH_SETTINGS; return MetricsProto.MetricsEvent.CHERISH_SETTINGS;
} }
@Override
public void onResume() {
super.onResume();
final Context context = getActivity();
context.registerReceiver(mIntentReceiver, mIntentFilter);
}
@Override
public void onPause() {
super.onPause();
final Context context = getActivity();
context.unregisterReceiver(mIntentReceiver);
mFontPickerPreference.stopProgress();
}
/** /**
* For Search. * For Search.
*/ */