From 2ee5ec98d319737ea1fa31d303058629c3e39d05 Mon Sep 17 00:00:00 2001 From: Tungstend Date: Sun, 9 Jul 2023 22:06:22 +0800 Subject: [PATCH] update ui --- .../tungsten/fcl/ui/download/DownloadPage.java | 10 +++++----- .../tungsten/fcl/ui/manage/ModpackInfoPage.java | 2 +- .../fcl/ui/manage/VersionSettingPage.java | 6 +++--- FCL/src/main/res/layout/dialog_add_profile.xml | 2 +- FCL/src/main/res/layout/item_spinner.xml | 3 +-- .../main/res/layout/item_spinner_auto_tint.xml | 15 +++++++++++++++ FCL/src/main/res/layout/item_spinner_small.xml | 1 + FCL/src/main/res/layout/item_task_stage.xml | 1 + FCL/src/main/res/layout/page_install_version.xml | 3 +++ .../res/layout/view_create_account_external.xml | 4 ++-- .../fcllibrary/component/theme/Theme.java | 4 ++++ .../fcllibrary/component/view/FCLEditText.java | 1 + 12 files changed, 38 insertions(+), 14 deletions(-) create mode 100644 FCL/src/main/res/layout/item_spinner_auto_tint.xml diff --git a/FCL/src/main/java/com/tungsten/fcl/ui/download/DownloadPage.java b/FCL/src/main/java/com/tungsten/fcl/ui/download/DownloadPage.java index 69b37c68..42cfcd64 100644 --- a/FCL/src/main/java/com/tungsten/fcl/ui/download/DownloadPage.java +++ b/FCL/src/main/java/com/tungsten/fcl/ui/download/DownloadPage.java @@ -208,7 +208,7 @@ public class DownloadPage extends FCLCommonPage implements ManageUI.VersionLoada sourceSpinner.setVisibility(downloadSources.getSize() > 1 ? View.VISIBLE : View.GONE); if (downloadSources.getSize() > 1) { sourceSpinner.setDataList(new ArrayList<>(downloadSources)); - ArrayAdapter sourceAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner, new ArrayList<>(downloadSources)); + ArrayAdapter sourceAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner_auto_tint, new ArrayList<>(downloadSources)); sourceAdapter.setDropDownViewResource(R.layout.item_spinner_dropdown); sourceSpinner.setAdapter(sourceAdapter); sourceSpinner.setSelection(downloadSource.get().equals(getContext().getString(R.string.mods_modrinth)) ? 1 : 0); @@ -216,7 +216,7 @@ public class DownloadPage extends FCLCommonPage implements ManageUI.VersionLoada } gameVersionSpinner.setDataList(new ArrayList<>(Arrays.stream(RemoteModRepository.DEFAULT_GAME_VERSIONS).collect(Collectors.toList()))); - ArrayAdapter gameVersionAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner, new ArrayList<>(Arrays.stream(RemoteModRepository.DEFAULT_GAME_VERSIONS).collect(Collectors.toList()))); + ArrayAdapter gameVersionAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner_auto_tint, new ArrayList<>(Arrays.stream(RemoteModRepository.DEFAULT_GAME_VERSIONS).collect(Collectors.toList()))); gameVersionAdapter.setDropDownViewResource(R.layout.item_spinner_dropdown); gameVersionSpinner.setAdapter(gameVersionAdapter); gameVersionSpinner.setSelection(0); @@ -226,7 +226,7 @@ public class DownloadPage extends FCLCommonPage implements ManageUI.VersionLoada categoryDataList.add(new CategoryIndented(0, null)); categorySpinner.setDataList(categoryDataList); ArrayList categoryStringList = categoryDataList.stream().map(this::getLocalizedCategoryIndent).collect(Collectors.toCollection(ArrayList::new)); - ArrayAdapter categoryAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner, categoryStringList); + ArrayAdapter categoryAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner_auto_tint, categoryStringList); categoryAdapter.setDropDownViewResource(R.layout.item_spinner_dropdown); categorySpinner.setAdapter(categoryAdapter); categorySpinner.setSelection(0); @@ -242,7 +242,7 @@ public class DownloadPage extends FCLCommonPage implements ManageUI.VersionLoada } categorySpinner.setDataList(result); ArrayList resultStr = result.stream().map(this::getLocalizedCategoryIndent).collect(Collectors.toCollection(ArrayList::new)); - ArrayAdapter adapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner, resultStr); + ArrayAdapter adapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner_auto_tint, resultStr); adapter.setDropDownViewResource(R.layout.item_spinner_dropdown); categorySpinner.setAdapter(adapter); FXUtils.unbindSelection(categorySpinner, category); @@ -260,7 +260,7 @@ public class DownloadPage extends FCLCommonPage implements ManageUI.VersionLoada sorts.add(getContext().getString(R.string.curse_sort_last_updated)); sorts.add(getContext().getString(R.string.curse_sort_author)); sorts.add(getContext().getString(R.string.curse_sort_total_downloads)); - ArrayAdapter sortAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner, sorts); + ArrayAdapter sortAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner_auto_tint, sorts); sortAdapter.setDropDownViewResource(R.layout.item_spinner_dropdown); sortSpinner.setAdapter(sortAdapter); sortSpinner.setSelection(0); diff --git a/FCL/src/main/java/com/tungsten/fcl/ui/manage/ModpackInfoPage.java b/FCL/src/main/java/com/tungsten/fcl/ui/manage/ModpackInfoPage.java index a1b6d130..e747c2f4 100644 --- a/FCL/src/main/java/com/tungsten/fcl/ui/manage/ModpackInfoPage.java +++ b/FCL/src/main/java/com/tungsten/fcl/ui/manage/ModpackInfoPage.java @@ -182,7 +182,7 @@ public class ModpackInfoPage extends FCLTempPage implements View.OnClickListener map.put("", null); config().getAuthlibInjectorServers().forEach(it -> map.put(it.getName(), it.getUrl())); serverSpinner.setDataList(list); - ArrayAdapter adapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner, list); + ArrayAdapter adapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner_auto_tint, list); adapter.setDropDownViewResource(R.layout.item_spinner_dropdown); serverSpinner.setAdapter(adapter); SimpleStringProperty serverName = new SimpleStringProperty(""); diff --git a/FCL/src/main/java/com/tungsten/fcl/ui/manage/VersionSettingPage.java b/FCL/src/main/java/com/tungsten/fcl/ui/manage/VersionSettingPage.java index 67291956..64e99274 100644 --- a/FCL/src/main/java/com/tungsten/fcl/ui/manage/VersionSettingPage.java +++ b/FCL/src/main/java/com/tungsten/fcl/ui/manage/VersionSettingPage.java @@ -160,7 +160,7 @@ public class VersionSettingPage extends FCLCommonPage implements ManageUI.Versio javaVersionList.add(getContext().getString(R.string.settings_game_java_version_auto)); javaVersionList.add("JRE 8"); javaVersionList.add("JRE 17"); - ArrayAdapter javaAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner, javaVersionList); + ArrayAdapter javaAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner_auto_tint, javaVersionList); javaAdapter.setDropDownViewResource(R.layout.item_spinner_dropdown); javaSpinner.setAdapter(javaAdapter); @@ -168,7 +168,7 @@ public class VersionSettingPage extends FCLCommonPage implements ManageUI.Versio processPriorityList.add(getContext().getString(R.string.settings_advanced_process_priority_low)); processPriorityList.add(getContext().getString(R.string.settings_advanced_process_priority_normal)); processPriorityList.add(getContext().getString(R.string.settings_advanced_process_priority_high)); - ArrayAdapter processPriorityAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner, processPriorityList); + ArrayAdapter processPriorityAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner_auto_tint, processPriorityList); processPriorityAdapter.setDropDownViewResource(R.layout.item_spinner_dropdown); processPrioritySpinner.setAdapter(processPriorityAdapter); @@ -177,7 +177,7 @@ public class VersionSettingPage extends FCLCommonPage implements ManageUI.Versio rendererList.add(getContext().getString(R.string.settings_fcl_renderer_virgl)); rendererList.add(getContext().getString(R.string.settings_fcl_renderer_angle)); rendererList.add(getContext().getString(R.string.settings_fcl_renderer_vgpu)); - ArrayAdapter rendererAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner, rendererList); + ArrayAdapter rendererAdapter = new ArrayAdapter<>(getContext(), R.layout.item_spinner_auto_tint, rendererList); rendererAdapter.setDropDownViewResource(R.layout.item_spinner_dropdown); rendererSpinner.setAdapter(rendererAdapter); diff --git a/FCL/src/main/res/layout/dialog_add_profile.xml b/FCL/src/main/res/layout/dialog_add_profile.xml index 51a16fa7..5c36ef90 100644 --- a/FCL/src/main/res/layout/dialog_add_profile.xml +++ b/FCL/src/main/res/layout/dialog_add_profile.xml @@ -63,7 +63,7 @@ android:layout_gravity="center"/> \ No newline at end of file diff --git a/FCL/src/main/res/layout/item_spinner_auto_tint.xml b/FCL/src/main/res/layout/item_spinner_auto_tint.xml new file mode 100644 index 00000000..88f1bd1e --- /dev/null +++ b/FCL/src/main/res/layout/item_spinner_auto_tint.xml @@ -0,0 +1,15 @@ + + \ No newline at end of file diff --git a/FCL/src/main/res/layout/item_spinner_small.xml b/FCL/src/main/res/layout/item_spinner_small.xml index 48713957..35ede432 100644 --- a/FCL/src/main/res/layout/item_spinner_small.xml +++ b/FCL/src/main/res/layout/item_spinner_small.xml @@ -10,4 +10,5 @@ android:singleLine="true" android:textAlignment="inherit" android:background="@android:color/transparent" + android:textColor="@android:color/darker_gray" android:textSize="12sp"/> \ No newline at end of file diff --git a/FCL/src/main/res/layout/item_task_stage.xml b/FCL/src/main/res/layout/item_task_stage.xml index dd6d5902..d696745e 100644 --- a/FCL/src/main/res/layout/item_task_stage.xml +++ b/FCL/src/main/res/layout/item_task_stage.xml @@ -6,6 +6,7 @@ android:orientation="horizontal"> diff --git a/FCLLibrary/src/main/java/com/tungsten/fcllibrary/component/theme/Theme.java b/FCLLibrary/src/main/java/com/tungsten/fcllibrary/component/theme/Theme.java index d7eedc6b..fa85c640 100644 --- a/FCLLibrary/src/main/java/com/tungsten/fcllibrary/component/theme/Theme.java +++ b/FCLLibrary/src/main/java/com/tungsten/fcllibrary/component/theme/Theme.java @@ -67,6 +67,10 @@ public class Theme { return autoTint.get(); } + public int getAutoHintTint() { + return ColorUtils.calculateLuminance(getColor()) >= 0.5 ? Color.parseColor("#99000000") : Color.parseColor("#99FFFFFF"); + } + public boolean isFullscreen() { return fullscreen.get(); } diff --git a/FCLLibrary/src/main/java/com/tungsten/fcllibrary/component/view/FCLEditText.java b/FCLLibrary/src/main/java/com/tungsten/fcllibrary/component/view/FCLEditText.java index 4059d84f..8ddd7802 100644 --- a/FCLLibrary/src/main/java/com/tungsten/fcllibrary/component/view/FCLEditText.java +++ b/FCLLibrary/src/main/java/com/tungsten/fcllibrary/component/view/FCLEditText.java @@ -85,6 +85,7 @@ public class FCLEditText extends AppCompatEditText { } if (autoTint) { setTextColor(ThemeEngine.getInstance().getTheme().getAutoTint()); + setHintTextColor(ThemeEngine.getInstance().getTheme().getAutoHintTint()); } }