From 6bd80639764aba8d18f27191a262d50aa21430cc Mon Sep 17 00:00:00 2001 From: FooIbar <118464521+FooIbar@users.noreply.github.com> Date: Sun, 26 Nov 2023 14:31:49 +0800 Subject: [PATCH] Replace thumb size setting with thumb column count --- app/src/main/kotlin/com/hippo/ehviewer/Settings.kt | 2 +- .../com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt | 6 +++--- .../kotlin/com/hippo/ehviewer/ui/scene/GalleryList.kt | 4 ++-- .../hippo/ehviewer/ui/scene/GalleryPreviewFragment.kt | 4 ++-- .../kotlin/com/hippo/ehviewer/ui/settings/EhScreen.kt | 9 ++++----- app/src/main/res/values-de/strings.xml | 1 - app/src/main/res/values-es/strings.xml | 1 - app/src/main/res/values-fr/strings.xml | 1 - app/src/main/res/values-ja/strings.xml | 1 - app/src/main/res/values-ko/strings.xml | 1 - app/src/main/res/values-th/strings.xml | 1 - app/src/main/res/values-zh-rCN/strings.xml | 2 +- app/src/main/res/values-zh-rHK/strings.xml | 2 +- app/src/main/res/values-zh-rTW/strings.xml | 2 +- app/src/main/res/values/strings.xml | 2 +- 15 files changed, 16 insertions(+), 23 deletions(-) diff --git a/app/src/main/kotlin/com/hippo/ehviewer/Settings.kt b/app/src/main/kotlin/com/hippo/ehviewer/Settings.kt index 5c99e22c0..7fb0c4fd1 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/Settings.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/Settings.kt @@ -103,7 +103,7 @@ object Settings : DataStorePreferences(null) { val listMode = intPref("list_mode_2", 0) val detailSize = intPref("detail_size_2", 0) - val thumbSizeDp = intPref("thumb_size_", 120) + val thumbColumns = intPref("thumb_columns", 3) val listThumbSize = intPref("list_tile_size", 40) val needSignInFlow: Flow diff --git a/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt b/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt index 0282776a5..fd95ca870 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt @@ -919,7 +919,7 @@ fun GalleryDetailScreen(args: GalleryDetailScreenArgs, navigator: NavController) ) { val galleryDetail = galleryInfo.asGalleryDetail() val windowSizeClass = calculateWindowSizeClass(activity) - val thumbWidth by Settings.thumbSizeDp.collectAsState() + val thumbColumns by Settings.thumbColumns.collectAsState() val readText = stringResource(R.string.read) val downloadText = stringResource(R.string.download) var readButtonText by rememberSaveable { mutableStateOf(readText) } @@ -1004,7 +1004,7 @@ fun GalleryDetailScreen(args: GalleryDetailScreenArgs, navigator: NavController) when (windowSizeClass.widthSizeClass) { WindowWidthSizeClass.Medium, WindowWidthSizeClass.Compact -> LazyVerticalGrid( - columns = GridCells.Adaptive(thumbWidth.dp), + columns = GridCells.Fixed(thumbColumns), contentPadding = contentPadding, modifier = modifier.padding(horizontal = keylineMargin), horizontalArrangement = Arrangement.spacedBy(dimensionResource(id = R.dimen.strip_item_padding)), @@ -1055,7 +1055,7 @@ fun GalleryDetailScreen(args: GalleryDetailScreenArgs, navigator: NavController) } WindowWidthSizeClass.Expanded -> LazyVerticalGrid( - columns = GridCells.Adaptive(thumbWidth.dp), + columns = GridCells.Fixed(thumbColumns), contentPadding = contentPadding, modifier = modifier.padding(horizontal = keylineMargin), horizontalArrangement = Arrangement.spacedBy(dimensionResource(id = R.dimen.strip_item_padding)), diff --git a/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryList.kt b/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryList.kt index 402d8f804..e02d3265f 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryList.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryList.kt @@ -117,9 +117,9 @@ fun GalleryList( } } else { val gridInterval = dimensionResource(R.dimen.gallery_grid_interval) - val thumbWidth by Settings.thumbSizeDp.collectAsState() + val thumbColumns by Settings.thumbColumns.collectAsState() FastScrollLazyVerticalStaggeredGrid( - columns = StaggeredGridCells.Adaptive(thumbWidth.dp), + columns = StaggeredGridCells.Fixed(thumbColumns), modifier = combinedModifier, state = thumbListState, verticalItemSpacing = gridInterval, diff --git a/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryPreviewFragment.kt b/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryPreviewFragment.kt index 523182e56..70d89857c 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryPreviewFragment.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/ui/scene/GalleryPreviewFragment.kt @@ -135,9 +135,9 @@ fun GalleryPreviewScreen(galleryDetail: GalleryDetail, toNextPageArg: Boolean, n ) }, ) { paddingValues -> - val thumbWidth by Settings.thumbSizeDp.collectAsState() + val thumbColumns by Settings.thumbColumns.collectAsState() FastScrollLazyVerticalGrid( - columns = GridCells.Adaptive(thumbWidth.dp), + columns = GridCells.Fixed(thumbColumns), modifier = Modifier.nestedScroll(scrollBehaviour.nestedScrollConnection).padding(horizontal = dimensionResource(id = R.dimen.gallery_list_margin_h)), state = state, contentPadding = paddingValues, diff --git a/app/src/main/kotlin/com/hippo/ehviewer/ui/settings/EhScreen.kt b/app/src/main/kotlin/com/hippo/ehviewer/ui/settings/EhScreen.kt index ff8ebf64e..e5eb5d00d 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/ui/settings/EhScreen.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/ui/settings/EhScreen.kt @@ -253,11 +253,10 @@ fun EhScreen(navigator: DestinationsNavigator) { value = Settings.detailSize.asMutableState(), ) IntSliderPreference( - maxValue = 400, - minValue = 80, - step = 7, - title = stringResource(id = R.string.settings_eh_thumb_size), - value = Settings.thumbSizeDp::value, + maxValue = 10, + minValue = 1, + title = stringResource(id = R.string.settings_eh_thumb_columns), + value = Settings.thumbColumns::value, ) val thumbResolution = Settings::thumbResolution.observed val summary2 = stringResource(id = R.string.settings_eh_thumb_resolution_summary, stringArrayResource(id = R.array.thumb_resolution_entries)[thumbResolution.value]) diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 696e5fd87..cd62af242 100755 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -250,7 +250,6 @@ Größe der Details Lange Kurz - Größe des Miniaturbilds Auflösung der Miniaturbilder Nun %s. Mit abnormale Auflösung kann die Miniaturbilder nicht normalerweise geladen werden. Automatisch diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 8cf5ba209..cc1e96b2a 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -280,7 +280,6 @@ Tamaño del detalle Largo Corto - Tamaño de vista previa Resolución de vista previa %s, las resoluciones especiales podrían causar errores en la vista previa Automático diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 4c5cd6919..dd86ac7dc 100755 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -315,7 +315,6 @@ Taille des détails Long Court - Taille des mimniatures Résolution des miniatures Auctuellement %s. Certaines résolutions spéciales êmpechent de les charger correctement. Auto diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 20dad8522..1aa795ef4 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -313,7 +313,6 @@ 詳細情報のサイズ 長い 短い - サムネイルサイズ サムネイル解像度 %s。解像度を正しく設定しないと、サムネイルを取得できない場合があります 自動 diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index fc76ed532..db3ed6a29 100755 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -285,7 +285,6 @@ 상세 정보 크기 길게 짧게 - 섬네일 크기 섬네일 해상도 특정 해상도로 설정하면 섬네일을 불러오지 못할 수 있습니다. 현재 설정\u003a \u005b%s\u005d 자동 diff --git a/app/src/main/res/values-th/strings.xml b/app/src/main/res/values-th/strings.xml index 7d653878b..bee447cd0 100644 --- a/app/src/main/res/values-th/strings.xml +++ b/app/src/main/res/values-th/strings.xml @@ -300,7 +300,6 @@ ขนาดของรายละเอียด อย่างยาว อย่างสั้น - ขนาดภาพตัวอย่าง ความละเอียดภาพตัวอย่าง ค่าตอนนี้เป็น %s. การตั้งความละเอียดที่แน่นอนอาจจะส่งผลต่อการโหลดตัวอย่างที่อาจจะไม่สำเร็จด้วย อัตโนมัติ diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 3ae21d081..2e02ea4e5 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -321,7 +321,7 @@ 详情宽度 长 短 - 缩略图大小 + 缩略图列数 缩略图分辨率 %s,指定分辨率可能使获取缩略图失败 自动 diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index d69ad5e08..cbef9dec3 100755 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -333,7 +333,7 @@ 詳情大小 長 短 - 縮略圖大小 + 縮略圖列數 縮略圖分辨率 %s,指定分辨率可能使獲取縮略圖失敗 自動 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index e2ccc0569..b439e73be 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -321,7 +321,7 @@ 詳細大小 長 短 - 縮圖大小 + 縮圖列數 縮圖解析度 %s,指定解析度可能會使縮圖取得失敗 自動 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 21f7f6794..03c28ae91 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -362,7 +362,7 @@ Detail width Long Short - Thumb size + Thumb columns Thumb resolution Currently %s. Certain resolutions might cause getting thumb failed Auto