Unify crop borders settings

(cherry picked from commit 1920568057)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderSettingsSheet.kt
#	app/src/main/res/layout/reader_settings_sheet.xml
This commit is contained in:
arkon
2020-07-10 22:19:08 -04:00
committed by Jobobby04
parent fbb14a35a9
commit 439b78c39f
8 changed files with 26 additions and 54 deletions
@@ -51,8 +51,6 @@ object PreferenceKeys {
const val cropBorders = "crop_borders"
const val cropBordersWebtoon = "crop_borders_webtoon"
const val readWithTapping = "reader_tap"
const val readWithLongTap = "reader_long_tap"
@@ -115,8 +115,6 @@ class PreferencesHelper(val context: Context) {
fun cropBorders() = flowPrefs.getBoolean(Keys.cropBorders, false)
fun cropBordersWebtoon() = flowPrefs.getBoolean(Keys.cropBordersWebtoon, false)
fun webtoonSidePadding() = flowPrefs.getInt(Keys.webtoonSidePadding, 0)
fun readWithTapping() = flowPrefs.getBoolean(Keys.readWithTapping, true)
@@ -19,7 +19,6 @@ import kotlinx.android.synthetic.main.reader_settings_sheet.always_show_chapter_
import kotlinx.android.synthetic.main.reader_settings_sheet.auto_webtoon_mode
import kotlinx.android.synthetic.main.reader_settings_sheet.background_color
import kotlinx.android.synthetic.main.reader_settings_sheet.crop_borders
import kotlinx.android.synthetic.main.reader_settings_sheet.crop_borders_webtoon
import kotlinx.android.synthetic.main.reader_settings_sheet.cutout_short
import kotlinx.android.synthetic.main.reader_settings_sheet.fullscreen
import kotlinx.android.synthetic.main.reader_settings_sheet.keepscreen
@@ -89,6 +88,7 @@ class ReaderSettingsSheet(private val activity: ReaderActivity) : BottomSheetDia
keepscreen.bindToPreference(preferences.keepScreenOn())
long_tap.bindToPreference(preferences.readWithLongTap())
always_show_chapter_transition.bindToPreference(preferences.alwaysShowChapterTransition())
crop_borders.bindToPreference(preferences.cropBorders())
// SY -->
auto_webtoon_mode.bindToPreference(preferences.eh_useAutoWebtoon())
// SY <--
@@ -108,7 +108,6 @@ class ReaderSettingsSheet(private val activity: ReaderActivity) : BottomSheetDia
scale_type.bindToPreference(preferences.imageScaleType(), 1)
zoom_start.bindToPreference(preferences.zoomStart(), 1)
crop_borders.bindToPreference(preferences.cropBorders())
page_transitions.bindToPreference(preferences.pageTransitions())
}
@@ -119,7 +118,6 @@ class ReaderSettingsSheet(private val activity: ReaderActivity) : BottomSheetDia
pager_prefs_group.invisible()
webtoon_prefs_group.visible()
crop_borders_webtoon.bindToPreference(preferences.cropBordersWebtoon())
webtoon_side_padding.bindToIntPreference(preferences.webtoonSidePadding(), R.array.webtoon_side_padding_values)
}
@@ -24,6 +24,7 @@ abstract class ViewerConfig(preferences: PreferencesHelper) {
var volumeKeysEnabled = false
var volumeKeysInverted = false
var trueColor = false
var imageCropBorders = false
var alwaysShowChapterTransition = true
init {
@@ -45,6 +46,9 @@ abstract class ViewerConfig(preferences: PreferencesHelper) {
preferences.trueColor()
.register({ trueColor = it }, { imagePropertyChangedListener?.invoke() })
preferences.cropBorders()
.register({ imageCropBorders = it }, { imagePropertyChangedListener?.invoke() })
preferences.alwaysShowChapterTransition()
.register({ alwaysShowChapterTransition = it })
}
@@ -20,9 +20,6 @@ class PagerConfig(private val viewer: PagerViewer, preferences: PreferencesHelpe
var imageZoomType = ZoomType.Left
private set
var imageCropBorders = false
private set
init {
preferences.pageTransitions()
.register({ usePageTransitions = it })
@@ -32,9 +29,6 @@ class PagerConfig(private val viewer: PagerViewer, preferences: PreferencesHelpe
preferences.zoomStart()
.register({ zoomTypeFromPreference(it) }, { imagePropertyChangedListener?.invoke() })
preferences.cropBorders()
.register({ imageCropBorders = it }, { imagePropertyChangedListener?.invoke() })
}
private fun zoomTypeFromPreference(value: Int) {
@@ -10,16 +10,10 @@ import uy.kohesive.injekt.api.get
*/
class WebtoonConfig(preferences: PreferencesHelper = Injekt.get()) : ViewerConfig(preferences) {
var imageCropBorders = false
private set
var sidePadding = 0
private set
init {
preferences.cropBordersWebtoon()
.register({ imageCropBorders = it }, { imagePropertyChangedListener?.invoke() })
preferences.webtoonSidePadding()
.register({ sidePadding = it }, { imagePropertyChangedListener?.invoke() })
}
@@ -100,6 +100,11 @@ class SettingsReaderController : SettingsController() {
defaultValue = false
}
}
switchPreference {
key = Keys.cropBorders
titleRes = R.string.pref_crop_borders
defaultValue = false
}
}
preferenceCategory {
@@ -268,22 +273,11 @@ class SettingsReaderController : SettingsController() {
titleRes = R.string.pref_page_transitions
defaultValue = true
}
switchPreference {
key = Keys.cropBorders
titleRes = R.string.pref_crop_borders
defaultValue = false
}
}
preferenceCategory {
titleRes = R.string.webtoon_viewer
switchPreference {
key = Keys.cropBordersWebtoon
titleRes = R.string.pref_crop_borders
defaultValue = false
}
intListPreference {
key = Keys.webtoonSidePadding
titleRes = R.string.pref_webtoon_side_padding