mirror of
https://github.com/advplyr/audiobookshelf-app.git
synced 2025-07-12 06:54:50 +02:00
Add:Epub reader setting to force single page #1018
This commit is contained in:
parent
86096df1a4
commit
b849be6f5e
19 changed files with 82 additions and 7 deletions
|
@ -1,5 +1,5 @@
|
|||
<template>
|
||||
<div ref="wrapper" class="modal modal-bg w-screen fixed bottom-0 left-0 flex items-center justify-center z-50" :class="halfScreen ? 'h-[50vh]' : 'h-screen'" @click.stop @touchstart.stop @touchend.stop>
|
||||
<div ref="wrapper" class="modal modal-bg w-screen fixed bottom-0 left-0 flex items-center justify-center z-50" :class="halfScreen ? 'h-[50vh] min-h-[400px]' : 'h-screen'" @click.stop @touchstart.stop @touchend.stop>
|
||||
<div ref="content" class="relative text-fg h-full w-full bg-bg">
|
||||
<slot />
|
||||
</div>
|
||||
|
|
|
@ -56,7 +56,7 @@
|
|||
<!-- ereader settings modal -->
|
||||
<modals-fullscreen-modal v-model="showSettingsModal" :theme="ereaderTheme" half-screen>
|
||||
<div style="box-shadow: 0px -8px 8px #11111155">
|
||||
<div class="flex items-end justify-between h-20 px-4 pb-2 mb-8">
|
||||
<div class="flex items-end justify-between h-20 px-4 pb-2 mb-6">
|
||||
<h1 class="text-lg">{{ $strings.HeaderEreaderSettings }}</h1>
|
||||
<button class="flex" @click="showSettingsModal = false">
|
||||
<span class="material-icons">close</span>
|
||||
|
@ -64,24 +64,30 @@
|
|||
</div>
|
||||
<div class="w-full overflow-y-auto overflow-x-hidden h-full max-h-[calc(100vh-85px)]">
|
||||
<div class="w-full h-full px-4">
|
||||
<div class="flex items-center mb-8">
|
||||
<div class="flex items-center mb-6">
|
||||
<div class="w-32">
|
||||
<p class="text-base">{{ $strings.LabelTheme }}:</p>
|
||||
</div>
|
||||
<ui-toggle-btns v-model="ereaderSettings.theme" :items="themeItems" @input="settingsUpdated" />
|
||||
</div>
|
||||
<div class="flex items-center mb-8">
|
||||
<div class="flex items-center mb-6">
|
||||
<div class="w-32">
|
||||
<p class="text-base">{{ $strings.LabelFontScale }}:</p>
|
||||
</div>
|
||||
<ui-range-input v-model="ereaderSettings.fontScale" :min="5" :max="300" :step="5" input-width="180px" @input="settingsUpdated" />
|
||||
</div>
|
||||
<div class="flex items-center mb-8">
|
||||
<div class="flex items-center mb-6">
|
||||
<div class="w-32">
|
||||
<p class="text-base">{{ $strings.LabelLineSpacing }}:</p>
|
||||
</div>
|
||||
<ui-range-input v-model="ereaderSettings.lineSpacing" :min="100" :max="300" :step="5" input-width="180px" @input="settingsUpdated" />
|
||||
</div>
|
||||
<div class="flex items-center">
|
||||
<div class="w-32">
|
||||
<p class="text-base">{{ $strings.LabelLayout }}:</p>
|
||||
</div>
|
||||
<ui-toggle-btns v-model="ereaderSettings.spread" :items="spreadItems" @input="settingsUpdated" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -109,7 +115,8 @@ export default {
|
|||
ereaderSettings: {
|
||||
theme: 'dark',
|
||||
fontScale: 100,
|
||||
lineSpacing: 115
|
||||
lineSpacing: 115,
|
||||
spread: 'auto'
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -154,6 +161,18 @@ export default {
|
|||
if (this.isEpub) return this.ereaderSettings.theme
|
||||
return document.documentElement.dataset.theme || 'dark'
|
||||
},
|
||||
spreadItems() {
|
||||
return [
|
||||
{
|
||||
text: this.$strings.LabelLayoutSinglePage,
|
||||
value: 'none'
|
||||
},
|
||||
{
|
||||
text: this.$strings.LabelLayoutAuto,
|
||||
value: 'auto'
|
||||
}
|
||||
]
|
||||
},
|
||||
themeItems() {
|
||||
return [
|
||||
{
|
||||
|
@ -350,7 +369,12 @@ export default {
|
|||
try {
|
||||
const settings = localStorage.getItem('ereaderSettings')
|
||||
if (settings) {
|
||||
this.ereaderSettings = JSON.parse(settings)
|
||||
const ereaderSettings = JSON.parse(settings)
|
||||
if (!ereaderSettings.spread) {
|
||||
// Added in 0.9.71
|
||||
ereaderSettings.spread = 'auto'
|
||||
}
|
||||
this.ereaderSettings = ereaderSettings
|
||||
this.settingsUpdated()
|
||||
}
|
||||
} catch (error) {
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Jazyk",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Řádkování",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Sprog",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Linjeafstand",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Rückspulzeit",
|
||||
"LabelJumpForwardsTime": "Vorwärtsspulzeit",
|
||||
"LabelLanguage": "Sprache",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Leicht",
|
||||
"LabelLineSpacing": "Zeilenabstand",
|
||||
"LabelListenAgain": "Erneut anhören",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Language",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Line spacing",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Lenguaje",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Interlineado",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Langue",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Interligne",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Language",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Line spacing",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Language",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Line spacing",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Jezik",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Line spacing",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Lingua",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Interlinea",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Kalba",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Tarpas tarp eilučių",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Taal",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Regelruimte",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Språk",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Linjemellomrom",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Język",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Line spacing",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Перемотка назад",
|
||||
"LabelJumpForwardsTime": "Перемотка вперед",
|
||||
"LabelLanguage": "Язык",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Подсветка",
|
||||
"LabelLineSpacing": "Межстрочный интервал",
|
||||
"LabelListenAgain": "Слушать снова",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||
"LabelJumpForwardsTime": "Jump forwards time",
|
||||
"LabelLanguage": "Språk",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "Light",
|
||||
"LabelLineSpacing": "Radavstånd",
|
||||
"LabelListenAgain": "Listen Again",
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
"LabelJumpBackwardsTime": "快退时间",
|
||||
"LabelJumpForwardsTime": "快进时间",
|
||||
"LabelLanguage": "语言",
|
||||
"LabelLayout": "Layout",
|
||||
"LabelLayoutAuto": "Auto",
|
||||
"LabelLayoutSinglePage": "Single page",
|
||||
"LabelLight": "轻",
|
||||
"LabelLineSpacing": "行间距",
|
||||
"LabelListenAgain": "再次收听",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue