From b97fa45b18c61d4320d5a08f760b94d2bce25fd1 Mon Sep 17 00:00:00 2001 From: qwerty287 Date: Sat, 5 Jun 2021 16:07:05 +0200 Subject: [PATCH] Move settings arrays to resources (#924) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ### Describe what your pull request does and which issue you’re targeting Closes #920

- [X] I carefully read the [contribution guidelines](https://codeberg.org/GitNex/GitNex/src/branch/main/CONTRIBUTING.md). - [X] I'm following the code standards as defined [here](https://codeberg.org/gitnex/GitNex/wiki/Code-Standards). - [X] By submitting this pull request, I permit GitNex to license my work under the [GNU General Public License v3](https://codeberg.org/GitNex/GitNex/src/branch/main/LICENSE). Co-authored-by: qwerty287 Reviewed-on: https://codeberg.org/gitnex/GitNex/pulls/924 Reviewed-by: opyale Reviewed-by: M M Arif Co-authored-by: qwerty287 Co-committed-by: qwerty287 --- .../SettingsAppearanceActivity.java | 24 +++++---- .../activities/SettingsGeneralActivity.java | 46 +++++------------ app/src/main/res/values/settings.xml | 49 +++++++++++++++++++ app/src/main/res/values/strings.xml | 1 + 4 files changed, 75 insertions(+), 45 deletions(-) diff --git a/app/src/main/java/org/mian/gitnex/activities/SettingsAppearanceActivity.java b/app/src/main/java/org/mian/gitnex/activities/SettingsAppearanceActivity.java index 373f0851..56c78aca 100644 --- a/app/src/main/java/org/mian/gitnex/activities/SettingsAppearanceActivity.java +++ b/app/src/main/java/org/mian/gitnex/activities/SettingsAppearanceActivity.java @@ -19,13 +19,13 @@ public class SettingsAppearanceActivity extends BaseActivity { private View.OnClickListener onClickListener; - private static final String[] timeList = {"Pretty", "Normal"}; + private static String[] timeList; private static int timeSelectedChoice = 0; - private static final String[] customFontList = {"Roboto", "Manrope", "Source Code Pro"}; + private static String[] customFontList; private static int customFontSelectedChoice = 0; - private static final String[] themeList = {"Dark", "Light", "Auto (Light / Dark)", "Retro", "Auto (Retro / Dark)", "Pitch Black"}; + private static String[] themeList; private static int themeSelectedChoice = 0; @Override @@ -48,6 +48,10 @@ public class SettingsAppearanceActivity extends BaseActivity { SwitchMaterial counterBadgesSwitch = activitySettingsAppearanceBinding.switchCounterBadge; + timeList = getResources().getStringArray(R.array.timeFormats); + customFontList = getResources().getStringArray(R.array.fonts); + themeList = getResources().getStringArray(R.array.themes); + initCloseListener(); closeActivity.setOnClickListener(onClickListener); @@ -157,13 +161,13 @@ public class SettingsAppearanceActivity extends BaseActivity { tinyDB.putString("timeStr", timeList[i]); tinyDB.putInt("timeId", i); - if("Normal".equals(timeList[i])) { - - tinyDB.putString("dateFormat", "normal"); - } - else { - - tinyDB.putString("dateFormat", "pretty"); + switch(i) { + case 0: + tinyDB.putString("dateFormat", "pretty"); + break; + case 1: + tinyDB.putString("dateFormat", "normal"); + break; } dialogInterfaceTime.dismiss(); diff --git a/app/src/main/java/org/mian/gitnex/activities/SettingsGeneralActivity.java b/app/src/main/java/org/mian/gitnex/activities/SettingsGeneralActivity.java index f63762a5..e718c14a 100644 --- a/app/src/main/java/org/mian/gitnex/activities/SettingsGeneralActivity.java +++ b/app/src/main/java/org/mian/gitnex/activities/SettingsGeneralActivity.java @@ -23,7 +23,7 @@ public class SettingsGeneralActivity extends BaseActivity { private List homeScreenList; private static int homeScreenSelectedChoice = 0; - private List defaultScreen; + private List linkHandlerDefaultScreen; private static int defaultLinkHandlerScreenSelectedChoice = 0; @Override @@ -38,20 +38,16 @@ public class SettingsGeneralActivity extends BaseActivity { viewBinding.close.setOnClickListener(onClickListener); // home screen - String[] homeDefaultScreen_ = {getResources().getString(R.string.pageTitleMyRepos), getResources().getString(R.string.pageTitleStarredRepos), getResources().getString(R.string.pageTitleOrganizations), - getResources().getString(R.string.pageTitleRepositories), getResources().getString(R.string.pageTitleProfile), getResources().getString(R.string.pageTitleExplore), - getResources().getString(R.string.titleDrafts)}; + String[] appHomeDefaultScreen = getResources().getStringArray(R.array.appDefaultHomeScreen); - String[] homeDefaultScreenNew = {getResources().getString(R.string.pageTitleMyRepos), getResources().getString(R.string.pageTitleStarredRepos), getResources().getString(R.string.pageTitleOrganizations), - getResources().getString(R.string.pageTitleRepositories), getResources().getString(R.string.pageTitleProfile), getResources().getString(R.string.pageTitleExplore), - getResources().getString(R.string.titleDrafts), getResources().getString(R.string.pageTitleNotifications)}; + String[] appHomeDefaultScreenNew = getResources().getStringArray(R.array.appDefaultHomeScreenNew); if(new Version(tinyDB.getString("giteaVersion")).higherOrEqual("1.12.3")) { - homeDefaultScreen_ = homeDefaultScreenNew; + appHomeDefaultScreen = appHomeDefaultScreenNew; } - homeScreenList = new ArrayList<>(Arrays.asList(homeDefaultScreen_)); + homeScreenList = new ArrayList<>(Arrays.asList(appHomeDefaultScreen)); String[] homeScreenArray = new String[homeScreenList.size()]; homeScreenList.toArray(homeScreenArray); @@ -113,34 +109,14 @@ public class SettingsGeneralActivity extends BaseActivity { // home screen // link handler - String[] defaultScreen_ = {getResources().getString(R.string.generalDeepLinkSelectedText), getResources().getString(R.string.navRepos), getResources().getString(R.string.navOrg), getResources().getString(R.string.pageTitleNotifications), getResources().getString(R.string.navExplore)}; - defaultScreen = new ArrayList<>(Arrays.asList(defaultScreen_)); + String[] linkHandlerDefaultScreenList = getResources().getStringArray(R.array.linkHandlerDefaultScreen); + linkHandlerDefaultScreen = new ArrayList<>(Arrays.asList(linkHandlerDefaultScreenList)); - String[] linksArray = new String[defaultScreen.size()]; - defaultScreen.toArray(linksArray); + String[] linksArray = new String[linkHandlerDefaultScreen.size()]; + linkHandlerDefaultScreen.toArray(linksArray); - if(defaultLinkHandlerScreenSelectedChoice == 0) { - - defaultLinkHandlerScreenSelectedChoice = tinyDB.getInt("defaultScreenId"); - viewBinding.generalDeepLinkSelected.setText(getResources().getString(R.string.generalDeepLinkSelectedText)); - } - - if(defaultLinkHandlerScreenSelectedChoice == 1) { - - viewBinding.generalDeepLinkSelected.setText(getResources().getString(R.string.navRepos)); - } - else if(defaultLinkHandlerScreenSelectedChoice == 2) { - - viewBinding.generalDeepLinkSelected.setText(getResources().getString(R.string.navOrg)); - } - else if(defaultLinkHandlerScreenSelectedChoice == 3) { - - viewBinding.generalDeepLinkSelected.setText(getResources().getString(R.string.pageTitleNotifications)); - } - else if(defaultLinkHandlerScreenSelectedChoice == 4) { - - viewBinding.generalDeepLinkSelected.setText(getResources().getString(R.string.navExplore)); - } + defaultLinkHandlerScreenSelectedChoice = tinyDB.getInt("defaultScreenId"); + viewBinding.generalDeepLinkSelected.setText(linksArray[defaultLinkHandlerScreenSelectedChoice]); viewBinding.setDefaultLinkHandler.setOnClickListener(setDefaultLinkHandler -> { diff --git a/app/src/main/res/values/settings.xml b/app/src/main/res/values/settings.xml index 9f4c6a59..a63de9b9 100644 --- a/app/src/main/res/values/settings.xml +++ b/app/src/main/res/values/settings.xml @@ -19,4 +19,53 @@ tr uk + + + @string/settingsDateTimeHeaderDefault + @string/settingsDateTimeNormal + + + + Roboto + Manrope + Source Code Pro + + + + Dark + Light + Auto (Light/Dark) + Retro + Auto (Retro/Dark) + Pitch Black + + + + @string/pageTitleMyRepos + @string/pageTitleStarredRepos + @string/pageTitleOrganizations + @string/pageTitleRepositories + @string/pageTitleProfile + @string/pageTitleExplore + @string/titleDrafts + + + + @string/pageTitleMyRepos + @string/pageTitleStarredRepos + @string/pageTitleOrganizations + @string/pageTitleRepositories + @string/pageTitleProfile + @string/pageTitleExplore + @string/titleDrafts + @string/pageTitleNotifications + + + + @string/generalDeepLinkSelectedText + @string/navRepos + @string/navOrg + @string/pageTitleNotifications + @string/navExplore + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 1376e5fa..a78d08ae 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -233,6 +233,7 @@ English Appearance Pretty + Normal Choose Language Choose Time Format Translate GitNex via Crowdin