Add fit page to window reader setting (#323)
* Add fit page to window reader setting * Renamed option and conditional rendering * Rename translation key
This commit is contained in:
@@ -261,6 +261,7 @@ export default function ReaderNavBar(props: IProps) {
|
|||||||
showPageNumber={settings.showPageNumber}
|
showPageNumber={settings.showPageNumber}
|
||||||
loadNextOnEnding={settings.loadNextOnEnding}
|
loadNextOnEnding={settings.loadNextOnEnding}
|
||||||
skipDupChapters={settings.skipDupChapters}
|
skipDupChapters={settings.skipDupChapters}
|
||||||
|
fitPageToWindow={settings.fitPageToWindow}
|
||||||
readerType={settings.readerType}
|
readerType={settings.readerType}
|
||||||
/>
|
/>
|
||||||
</Collapse>
|
</Collapse>
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ function imageStyle(settings: IReaderSettings): any {
|
|||||||
};
|
};
|
||||||
}, []);
|
}, []);
|
||||||
if (
|
if (
|
||||||
|
settings.fitPageToWindow ||
|
||||||
settings.readerType === 'DoubleLTR' ||
|
settings.readerType === 'DoubleLTR' ||
|
||||||
settings.readerType === 'DoubleRTL' ||
|
settings.readerType === 'DoubleRTL' ||
|
||||||
settings.readerType === 'ContinuesHorizontalLTR' ||
|
settings.readerType === 'ContinuesHorizontalLTR' ||
|
||||||
|
|||||||
@@ -25,9 +25,16 @@ export default function ReaderSettingsOptions({
|
|||||||
showPageNumber,
|
showPageNumber,
|
||||||
skipDupChapters,
|
skipDupChapters,
|
||||||
setSettingValue,
|
setSettingValue,
|
||||||
|
fitPageToWindow,
|
||||||
}: IProps) {
|
}: IProps) {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
|
const fitPageToWindowEligible = [
|
||||||
|
'ContinuesVertical',
|
||||||
|
'Webtoon',
|
||||||
|
'SingleVertical',
|
||||||
|
'SingleRTL',
|
||||||
|
'SingleLTR',
|
||||||
|
].includes(readerType);
|
||||||
return (
|
return (
|
||||||
<List>
|
<List>
|
||||||
<ListItem>
|
<ListItem>
|
||||||
@@ -70,6 +77,18 @@ export default function ReaderSettingsOptions({
|
|||||||
/>
|
/>
|
||||||
</ListItemSecondaryAction>
|
</ListItemSecondaryAction>
|
||||||
</ListItem>
|
</ListItem>
|
||||||
|
{fitPageToWindowEligible ? (
|
||||||
|
<ListItem>
|
||||||
|
<ListItemText primary={t('reader.settings.label.fit_page_to_window')} />
|
||||||
|
<ListItemSecondaryAction>
|
||||||
|
<Switch
|
||||||
|
edge="end"
|
||||||
|
checked={fitPageToWindow}
|
||||||
|
onChange={(e) => setSettingValue('fitPageToWindow', e.target.checked)}
|
||||||
|
/>
|
||||||
|
</ListItemSecondaryAction>
|
||||||
|
</ListItem>
|
||||||
|
) : null}
|
||||||
<ListItem>
|
<ListItem>
|
||||||
<ListItemText primary={t('reader.settings.label.reader_type')} />
|
<ListItemText primary={t('reader.settings.label.reader_type')} />
|
||||||
<Select
|
<Select
|
||||||
|
|||||||
@@ -361,7 +361,8 @@
|
|||||||
"reader_type": "Reader type",
|
"reader_type": "Reader type",
|
||||||
"show_page_number": "Show page number",
|
"show_page_number": "Show page number",
|
||||||
"skip_dup_chapters": "Skip duplicate chapters",
|
"skip_dup_chapters": "Skip duplicate chapters",
|
||||||
"static_navigation": "Static navigation"
|
"static_navigation": "Static navigation",
|
||||||
|
"fit_page_to_window": "Fit page to window"
|
||||||
},
|
},
|
||||||
"reader_type": {
|
"reader_type": {
|
||||||
"label": {
|
"label": {
|
||||||
|
|||||||
@@ -299,7 +299,8 @@
|
|||||||
"static_navigation": "Navigación Estática",
|
"static_navigation": "Navigación Estática",
|
||||||
"show_page_number": "Mostrar numero de pagina",
|
"show_page_number": "Mostrar numero de pagina",
|
||||||
"reader_type": "Tipo de Lector",
|
"reader_type": "Tipo de Lector",
|
||||||
"skip_dup_chapters": "Omitir capítulos duplicados"
|
"skip_dup_chapters": "Omitir capítulos duplicados",
|
||||||
|
"fit_page_to_window": "Ajustar página a la ventana"
|
||||||
},
|
},
|
||||||
"title": {
|
"title": {
|
||||||
"default_reader_settings": "Ajustes Defecto del Lector",
|
"default_reader_settings": "Ajustes Defecto del Lector",
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ export default function DefaultReaderSettings() {
|
|||||||
showPageNumber={settings.showPageNumber}
|
showPageNumber={settings.showPageNumber}
|
||||||
loadNextOnEnding={settings.loadNextOnEnding}
|
loadNextOnEnding={settings.loadNextOnEnding}
|
||||||
skipDupChapters={settings.skipDupChapters}
|
skipDupChapters={settings.skipDupChapters}
|
||||||
|
fitPageToWindow={settings.fitPageToWindow}
|
||||||
readerType={settings.readerType}
|
readerType={settings.readerType}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -212,6 +212,7 @@ export interface IReaderSettings {
|
|||||||
showPageNumber: boolean;
|
showPageNumber: boolean;
|
||||||
loadNextOnEnding: boolean;
|
loadNextOnEnding: boolean;
|
||||||
skipDupChapters: boolean;
|
skipDupChapters: boolean;
|
||||||
|
fitPageToWindow: boolean;
|
||||||
readerType: ReaderType;
|
readerType: ReaderType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ export const getDefaultSettings = (): IReaderSettings => ({
|
|||||||
showPageNumber: true,
|
showPageNumber: true,
|
||||||
loadNextOnEnding: false,
|
loadNextOnEnding: false,
|
||||||
skipDupChapters: true,
|
skipDupChapters: true,
|
||||||
|
fitPageToWindow: false,
|
||||||
readerType: 'ContinuesVertical',
|
readerType: 'ContinuesVertical',
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -71,6 +72,7 @@ export const checkAndHandleMissingStoredReaderSettings = async (
|
|||||||
showPageNumber: undefined,
|
showPageNumber: undefined,
|
||||||
loadNextOnEnding: undefined,
|
loadNextOnEnding: undefined,
|
||||||
skipDupChapters: undefined,
|
skipDupChapters: undefined,
|
||||||
|
fitPageToWindow: undefined,
|
||||||
readerType: undefined,
|
readerType: undefined,
|
||||||
},
|
},
|
||||||
false,
|
false,
|
||||||
|
|||||||
Reference in New Issue
Block a user