1
0
Fork 0

easier access to the setup screen

This commit is contained in:
sspanak 2023-03-30 11:52:01 +03:00 committed by Dimo Karaivanov
parent eba1e128b4
commit 9cdf82f522
10 changed files with 54 additions and 41 deletions

View file

@ -20,9 +20,9 @@ import io.github.sspanak.tt9.ime.helpers.InputModeValidator;
import io.github.sspanak.tt9.preferences.screens.AppearanceScreen;
import io.github.sspanak.tt9.preferences.screens.DictionariesScreen;
import io.github.sspanak.tt9.preferences.screens.HotkeysScreen;
import io.github.sspanak.tt9.preferences.screens.SetupScreen;
import io.github.sspanak.tt9.preferences.screens.KeyPadScreen;
import io.github.sspanak.tt9.preferences.screens.MainSettingsScreen;
import io.github.sspanak.tt9.preferences.screens.SetupScreen;
import io.github.sspanak.tt9.ui.DictionaryLoadingBar;
public class PreferencesActivity extends AppCompatActivity implements PreferenceFragmentCompat.OnPreferenceStartFragmentCallback {
@ -82,8 +82,10 @@ public class PreferencesActivity extends AppCompatActivity implements Preference
return new HotkeysScreen(this);
case "KeyPad":
return new KeyPadScreen(this);
case "Setup":
return new SetupScreen(this);
default:
return globalKeyboardSettings.isTT9Enabled() ? new MainSettingsScreen(this) : new SetupScreen(this);
return new MainSettingsScreen(this);
}
}

View file

@ -5,6 +5,8 @@ import android.net.Uri;
import androidx.preference.Preference;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.regex.Pattern;
import io.github.sspanak.tt9.BuildConfig;
@ -21,13 +23,22 @@ public class MainSettingsScreen extends BaseScreenFragment {
@Override protected int getTitle() { return R.string.app_settings;}
@Override protected int getXml() { return R.xml.prefs; }
@Override
public void onCreate() {
createSettingsSection();
addHelpLink();
createAboutSection();
}
@Override
public void onResume() {
super.onResume();
createSettingsSection();
}
private void addHelpLink() {
try {
if (!releaseVersionRegex.matcher(BuildConfig.VERSION_NAME).find()) {
@ -58,4 +69,26 @@ public class MainSettingsScreen extends BaseScreenFragment {
vi.setSummary(BuildConfig.VERSION_FULL);
}
}
private void createSettingsSection() {
boolean isTT9Enabled = activity.globalKeyboardSettings.isTT9Enabled();
Preference gotoSetup = findPreference("screen_setup");
if (gotoSetup != null) {
gotoSetup.setSummary(isTT9Enabled ? "" : activity.getString(R.string.setup_click_here_to_enable));
}
ArrayList<Preference> screens = new ArrayList<>(Arrays.asList(
findPreference("screen_appearance"),
findPreference("screen_dictionaries"),
findPreference("screen_keypad")
));
for (Preference goToScreen : screens) {
if (goToScreen != null) {
goToScreen.setEnabled(isTT9Enabled);
}
}
}
}

View file

@ -2,7 +2,6 @@ package io.github.sspanak.tt9.preferences.screens;
import androidx.preference.Preference;
import io.github.sspanak.tt9.BuildConfig;
import io.github.sspanak.tt9.R;
import io.github.sspanak.tt9.preferences.PreferencesActivity;
import io.github.sspanak.tt9.preferences.items.ItemSelectGlobalKeyboard;
@ -18,7 +17,6 @@ public class SetupScreen extends BaseScreenFragment {
@Override
public void onCreate() {
createKeyboardSection();
createAboutSection();
}
@Override
@ -43,18 +41,5 @@ public class SetupScreen extends BaseScreenFragment {
if (defaultKeyboardItem != null) {
new ItemSetDefaultGlobalKeyboard(defaultKeyboardItem, activity).enableClickHandler();
}
Preference goToMain = findPreference("goto_main_screen");
if (goToMain != null) {
goToMain.setEnabled(isTT9On);
}
}
private void createAboutSection() {
Preference vi = findPreference("version_info");
if (vi != null) {
vi.setSummary(BuildConfig.VERSION_FULL);
}
}
}