Fix settings title

This commit is contained in:
NekoInverter committed 2020-10-26 14:53:21 +08:00
1 parent c307969914
commit b781d3cac9
24 files changed
+112 -120

No files matched your search

@@ -26,6 +26,7 @@ import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
@@ -63,6 +64,7 @@ public class EditTextDialogBuilder extends MaterialAlertDialogBuilder implements
mTextInputLayout.setError(error);
}
@NonNull
@Override
public AlertDialog create() {
mDialog = super.create();
@@ -24,6 +24,7 @@ import android.widget.ArrayAdapter;
import android.widget.CheckBox;
import android.widget.ListView;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
@@ -59,6 +60,7 @@ public class ListCheckBoxDialogBuilder extends MaterialAlertDialogBuilder {
return mCheckBox.isChecked();
}
@NonNull
@Override
public AlertDialog create() {
mDialog = super.create();
@@ -19,6 +19,7 @@ package com.hippo.ehviewer.ui;
import android.content.Context;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.os.Build;
import android.os.Bundle;
import android.view.WindowManager;
@@ -128,11 +129,13 @@ public abstract class EhActivity extends AppCompatActivity {
} else if (split.length == 3) {
locale = new Locale(split[0], split[1], split[2]);
}
} else {
Resources res = EhApplication.getInstance().getResources();
Configuration configuration = res.getConfiguration();
locale = Build.VERSION.SDK_INT >= Build.VERSION_CODES.N ? configuration.getLocales().get(0) : configuration.locale;
}
if (locale != null) {
newBase = ContextLocalWrapper.wrap(newBase, locale);
}
newBase = ContextLocalWrapper.wrap(newBase, locale);
super.attachBaseContext(newBase);
}
@@ -62,6 +62,7 @@ public class FilterActivity extends ToolbarActivity {
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_filter);
setTitle(R.string.filter);
setNavigationIcon(R.drawable.v_arrow_left_dark_x24);
mFilterList = new FilterList();
@@ -75,6 +75,7 @@ public class HostsActivity extends ToolbarActivity
data = hosts.getAll();
setContentView(R.layout.activity_hosts);
setTitle(R.string.hosts);
setNavigationIcon(R.drawable.v_arrow_left_dark_x24);
recyclerView = findViewById(R.id.recycler_view);
tip = findViewById(R.id.tip);
@@ -564,14 +564,6 @@ public final class MainActivity extends StageActivity
}
}
public boolean isDrawersVisible() {
if (mDrawerLayout != null) {
return mDrawerLayout.isDrawerVisible(mDrawerLayout);
} else {
return false;
}
}
public void setNavCheckedItem(@IdRes int resId) {
mNavCheckedItem = resId;
if (mNavView != null) {
@@ -62,6 +62,7 @@ public class MyTagsActivity extends ToolbarActivity {
}
setContentView(R.layout.activity_my_tags);
setTitle(R.string.my_tags);
setNavigationIcon(R.drawable.v_arrow_left_dark_x24);
WebView webView = findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
@@ -46,6 +46,7 @@ public class SetSecurityActivity extends ToolbarActivity implements View.OnClick
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_set_security);
setTitle(R.string.set_pattern_protection);
setNavigationIcon(R.drawable.v_arrow_left_dark_x24);
mPatternView = (LockPatternView) ViewUtils.$$(this, R.id.pattern_view);
@@ -20,38 +20,32 @@ import android.os.Bundle;
import android.view.MenuItem;
import androidx.annotation.StringRes;
import androidx.appcompat.app.ActionBar;
import com.google.android.material.snackbar.Snackbar;
import com.hippo.ehviewer.R;
import com.hippo.ehviewer.ui.fragment.SettingsFragment;
import com.hippo.ehviewer.ui.scene.BaseScene;
public final class SettingsActivity extends EhActivity {
public final class SettingsActivity extends ToolbarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_preference);
setTitle(R.string.settings);
setNavigationIcon(R.drawable.v_arrow_left_dark_x24);
if (savedInstanceState == null) {
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.fragment, new SettingsFragment())
.commitAllowingStateLoss();
}
ActionBar bar = getSupportActionBar();
if (bar != null) {
bar.setDisplayHomeAsUpEnabled(true);
}
}
public void showTip(@StringRes int id, int length) {
showTip(getString(id), length);
}
/**
* If activity is running, show snack bar, otherwise show toast
*/
public void showTip(CharSequence message, int length) {
Snackbar.make(findViewById(R.id.snackbar), message,
length == BaseScene.LENGTH_LONG ? Snackbar.LENGTH_LONG : Snackbar.LENGTH_SHORT).show();
@@ -59,12 +53,10 @@ public final class SettingsActivity extends EhActivity {
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
onBackPressed();
return true;
default:
return super.onOptionsItemSelected(item);
if (item.getItemId() == android.R.id.home) {
onBackPressed();
return true;
}
return super.onOptionsItemSelected(item);
}
}
@@ -23,6 +23,8 @@ import android.view.ViewGroup;
import androidx.annotation.DrawableRes;
import androidx.annotation.LayoutRes;
import androidx.annotation.Nullable;
import androidx.annotation.StringRes;
import androidx.appcompat.app.ActionBar;
import androidx.appcompat.widget.Toolbar;
import com.hippo.ehviewer.R;
@@ -63,4 +65,11 @@ public abstract class ToolbarActivity extends EhActivity {
((Toolbar) toolbar).setNavigationIcon(icon);
}
}
public void setTitle(@StringRes int string) {
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.setTitle(string);
}
}
}
@@ -70,6 +70,7 @@ public class UConfigActivity extends ToolbarActivity {
}
setContentView(R.layout.activity_u_config);
setTitle(R.string.u_config);
setNavigationIcon(R.drawable.v_arrow_left_dark_x24);
webView = findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
@@ -27,13 +27,11 @@ import com.hippo.ehviewer.EhApplication;
import com.hippo.ehviewer.R;
import com.hippo.util.AppHelper;
import com.microsoft.appcenter.distribute.Distribute;
import com.takisoft.preferencex.PreferenceFragmentCompat;
public class AboutFragment extends PreferenceFragmentCompat
implements Preference.OnPreferenceClickListener {
public class AboutFragment extends BaseSettingsFragment {
private static final String KEY_AUTHOR = "author";
private static final String KEY_DONATE = "donate";
//private static final String KEY_DONATE = "donate";
private static final String KEY_CHECK_FOR_UPDATES = "check_for_updates";
@Override
@@ -64,4 +62,10 @@ public class AboutFragment extends PreferenceFragmentCompat
}
return true;
}
@Override
public void onResume() {
super.onResume();
setTitle(R.string.settings_about);
}
}
@@ -36,10 +36,8 @@ import com.hippo.ehviewer.ui.SettingsActivity;
import com.hippo.ehviewer.ui.scene.BaseScene;
import com.hippo.util.LogCat;
import com.hippo.util.ReadableTime;
import com.takisoft.preferencex.PreferenceFragmentCompat;
public class AdvancedFragment extends PreferenceFragmentCompat
implements Preference.OnPreferenceClickListener, Preference.OnPreferenceChangeListener {
public class AdvancedFragment extends BaseSettingsFragment {
private static final int REQUEST_CODE_EXPORT = 1;
private static final int REQUEST_CODE_IMPORT = 2;
@@ -69,11 +67,6 @@ public class AdvancedFragment extends PreferenceFragmentCompat
appLanguage.setOnPreferenceChangeListener(this);
}
@Override
public void onResume() {
super.onResume();
}
@Override
public boolean onPreferenceClick(Preference preference) {
String key = preference.getKey();
@@ -196,4 +189,10 @@ public class AdvancedFragment extends PreferenceFragmentCompat
}
return false;
}
@Override
public void onResume() {
super.onResume();
setTitle(R.string.settings_advanced);
}
}
@@ -0,0 +1,31 @@
package com.hippo.ehviewer.ui.fragment;
import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.annotation.StringRes;
import androidx.preference.Preference;
import com.takisoft.preferencex.PreferenceFragmentCompat;
public class BaseSettingsFragment extends PreferenceFragmentCompat
implements Preference.OnPreferenceClickListener, Preference.OnPreferenceChangeListener {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
return false;
}
@Override
public boolean onPreferenceClick(Preference preference) {
return false;
}
@Override
public void onCreatePreferencesFix(@Nullable Bundle savedInstanceState, String rootKey) {
}
public void setTitle(@StringRes int string) {
requireActivity().setTitle(string);
}
}
@@ -31,11 +31,8 @@ import com.hippo.ehviewer.ui.SettingsActivity;
import com.hippo.ehviewer.ui.scene.BaseScene;
import com.hippo.unifile.UniFile;
import com.hippo.util.ExceptionUtils;
import com.takisoft.preferencex.PreferenceFragmentCompat;
public class DownloadFragment extends PreferenceFragmentCompat implements
Preference.OnPreferenceChangeListener,
Preference.OnPreferenceClickListener {
public class DownloadFragment extends BaseSettingsFragment {
public static final int REQUEST_CODE_PICK_IMAGE_DIR_L = 1;
@@ -148,4 +145,10 @@ public class DownloadFragment extends PreferenceFragmentCompat implements
}
return false;
}
@Override
public void onResume() {
super.onResume();
setTitle(R.string.settings_download);
}
}
@@ -28,10 +28,8 @@ import com.hippo.ehviewer.EhApplication;
import com.hippo.ehviewer.R;
import com.hippo.ehviewer.Settings;
import com.hippo.ehviewer.client.EhTagDatabase;
import com.takisoft.preferencex.PreferenceFragmentCompat;
public class EhFragment extends PreferenceFragmentCompat
implements Preference.OnPreferenceChangeListener {
public class EhFragment extends BaseSettingsFragment {
@Override
public void onCreatePreferencesFix(@Nullable Bundle savedInstanceState, String rootKey) {
@@ -89,4 +87,10 @@ public class EhFragment extends PreferenceFragmentCompat
}
return true;
}
@Override
public void onResume() {
super.onResume();
setTitle(R.string.settings_eh);
}
}
@@ -9,13 +9,12 @@ import androidx.preference.Preference;
import com.hippo.ehviewer.Analytics;
import com.hippo.ehviewer.R;
import com.hippo.ehviewer.Settings;
import com.takisoft.preferencex.PreferenceFragmentCompat;
/**
* Created by Mo10 on 2018/2/10.
*/
public class PrivacyFragment extends PreferenceFragmentCompat implements Preference.OnPreferenceChangeListener {
public class PrivacyFragment extends BaseSettingsFragment {
private static final String KEY_PATTERN_PROTECTION = "pattern_protection";
@Override
@@ -29,6 +28,7 @@ public class PrivacyFragment extends PreferenceFragmentCompat implements Prefere
@Override
public void onResume() {
super.onResume();
setTitle(R.string.settings_privacy);
Preference patternProtection = findPreference(KEY_PATTERN_PROTECTION);
patternProtection.setSummary(TextUtils.isEmpty(Settings.getSecurity()) ?
R.string.settings_privacy_pattern_protection_not_set :
@@ -21,12 +21,17 @@ import android.os.Bundle;
import androidx.annotation.Nullable;
import com.hippo.ehviewer.R;
import com.takisoft.preferencex.PreferenceFragmentCompat;
public class ReadFragment extends PreferenceFragmentCompat {
public class ReadFragment extends BaseSettingsFragment {
@Override
public void onCreatePreferencesFix(@Nullable Bundle savedInstanceState, String rootKey) {
addPreferencesFromResource(R.xml.read_settings);
}
@Override
public void onResume() {
super.onResume();
setTitle(R.string.settings_read);
}
}
@@ -5,12 +5,16 @@ import android.os.Bundle;
import androidx.annotation.Nullable;
import com.hippo.ehviewer.R;
import com.takisoft.preferencex.PreferenceFragmentCompat;
public class SettingsFragment extends PreferenceFragmentCompat {
public class SettingsFragment extends BaseSettingsFragment {
@Override
public void onCreatePreferencesFix(@Nullable Bundle savedInstanceState, String rootKey) {
addPreferencesFromResource(R.xml.settings_headers);
}
@Override
public void onResume() {
super.onResume();
setTitle(R.string.settings);
}
}
@@ -42,6 +42,7 @@ import com.hippo.android.resource.AttrResources;
import com.hippo.ehviewer.Analytics;
import com.hippo.ehviewer.R;
import com.hippo.ehviewer.ui.MainActivity;
import com.hippo.ehviewer.widget.EhDrawerLayout;
import com.hippo.scene.SceneFragment;
import com.hippo.util.AppHelper;
@@ -118,15 +119,6 @@ public abstract class BaseScene extends SceneFragment {
}
}
public boolean isDrawersVisible() {
FragmentActivity activity = getActivity();
if (activity instanceof MainActivity) {
return ((MainActivity) activity).isDrawersVisible();
} else {
return false;
}
}
public void showTip(CharSequence message, int length) {
FragmentActivity activity = getActivity();
if (activity instanceof MainActivity) {
@@ -202,9 +194,9 @@ public abstract class BaseScene extends SceneFragment {
flags &= ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
}
decorView.setSystemUiVisibility(flags);
((DrawerLayout) requireActivity().findViewById(R.id.draw_view)).setStatusBarBackgroundColor(set ? Color.TRANSPARENT : AttrResources.getAttrColor(requireContext(), R.attr.colorPrimaryDark));
((EhDrawerLayout) requireActivity().findViewById(R.id.draw_view)).setStatusBarBackgroundColor(set ? Color.TRANSPARENT : AttrResources.getAttrColor(requireContext(), R.attr.colorPrimaryDark));
} else {
((DrawerLayout) requireActivity().findViewById(R.id.draw_view)).setStatusBarBackgroundColor(AttrResources.getAttrColor(requireContext(), R.attr.colorPrimaryDark));
((EhDrawerLayout) requireActivity().findViewById(R.id.draw_view)).setStatusBarBackgroundColor(AttrResources.getAttrColor(requireContext(), R.attr.colorPrimaryDark));
}
}