diff --git a/src/screens/Chapter/components/ReaderSheet.js b/src/screens/Chapter/components/ReaderSheet.js
index 4f2ab481..61325f5e 100644
--- a/src/screens/Chapter/components/ReaderSheet.js
+++ b/src/screens/Chapter/components/ReaderSheet.js
@@ -1,4 +1,4 @@
-import React, { useState } from "react";
+import React, { useCallback, useState } from "react";
import {
StyleSheet,
View,
@@ -68,301 +68,289 @@ const ReaderSheet = ({
{ value: "right", icon: "format-align-right" },
];
- const FirstRoute = () => (
-
-
-
- Text size
-
-
- dispatch(setReaderSettings("textSize", value))
- }
- />
-
-
-
- (
+
+
-
- Color
-
-
-
- {presetThemes.map((item, index) => (
- {
- dispatch(
- setReaderSettings(
- "theme",
- item.value
- )
- );
- dispatch(
- setReaderSettings(
- "textColor",
- item.textColor
- )
- );
- }}
- />
- ))}
-
-
-
-
-
- Text align
-
-
- {textAlignments.map((item) => (
-
- dispatch(
- setReaderSettings(
- "textAlign",
- item.value
- )
- )
- }
- />
- ))}
-
-
-
-
- Padding
-
-
-
- dispatch(
- setReaderSettings(
- "padding",
- reader.padding - 1
- )
- )
- }
- style={{ marginVertical: 0 }}
- />
-
- {`${reader.padding}%`}
-
- = 10 ? true : false}
- onPress={() =>
- dispatch(
- setReaderSettings(
- "padding",
- reader.padding + 1
- )
- )
- }
- style={{ marginVertical: 0 }}
- />
-
-
-
-
- Line height
-
-
-
- dispatch(
- setReaderSettings(
- "lineHeight",
- reader.lineHeight - 0.1
- )
- )
- }
- style={{ marginVertical: 0 }}
- />
-
- {`${Math.round(reader.lineHeight * 10) / 10}%`}
-
- = 2 ? true : false}
- onPress={() =>
- dispatch(
- setReaderSettings(
- "lineHeight",
- reader.lineHeight + 0.1
- )
- )
- }
- style={{ marginVertical: 0 }}
- />
-
-
-
- Font style
+ Text size
-
+ dispatch(setReaderSettings("textSize", value))
+ }
+ />
+
+
+
+
- {fonts.map((font) => (
-
-
+ Color
+
+
+
+ {presetThemes.map((item, index) => (
+ {
+ dispatch(
+ setReaderSettings(
+ "theme",
+ item.value
+ )
+ );
+ dispatch(
+ setReaderSettings(
+ "textColor",
+ item.textColor
+ )
+ );
+ }}
+ />
+ ))}
+
+
+
+
+
+ Text align
+
+
+ {textAlignments.map((item) => (
+
dispatch(
setReaderSettings(
- "fontFamily",
- font.fontFamily
+ "textAlign",
+ item.value
)
)
}
- android_ripple={{
- color: theme.rippleColor,
- }}
+ />
+ ))}
+
+
+
+
+ Padding
+
+
+
+ dispatch(
+ setReaderSettings(
+ "padding",
+ reader.padding - 1
+ )
+ )
+ }
+ style={{ marginVertical: 0 }}
+ />
+
+ {`${reader.padding}%`}
+
+ = 10 ? true : false}
+ onPress={() =>
+ dispatch(
+ setReaderSettings(
+ "padding",
+ reader.padding + 1
+ )
+ )
+ }
+ style={{ marginVertical: 0 }}
+ />
+
+
+
+
+ Line height
+
+
+
+ dispatch(
+ setReaderSettings(
+ "lineHeight",
+ reader.lineHeight - 0.1
+ )
+ )
+ }
+ style={{ marginVertical: 0 }}
+ />
+
+ {`${Math.round(reader.lineHeight * 10) / 10}%`}
+
+ = 2 ? true : false}
+ onPress={() =>
+ dispatch(
+ setReaderSettings(
+ "lineHeight",
+ reader.lineHeight + 0.1
+ )
+ )
+ }
+ style={{ marginVertical: 0 }}
+ />
+
+
+
+
+ Font style
+
+
+ {fonts.map((font) => (
+
-
+ dispatch(
+ setReaderSettings(
+ "fontFamily",
+ font.fontFamily
+ )
+ )
+ }
+ android_ripple={{
+ color: theme.rippleColor,
}}
>
- {font.name}
-
-
-
- ))}
-
-
+
+ {font.name}
+
+
+
+ ))}
+
+
+
-
+ ),
+ [reader]
);
- const SecondRoute = () => (
-
-
- dispatch(
- setAppSettings(
- "useWebViewForChapter",
- !useWebViewForChapter
- )
- )
- }
- >
-
- Use WebView
-
-
+ const SecondRoute = useCallback(
+ () => (
+
+
dispatch(
setAppSettings(
"useWebViewForChapter",
@@ -370,31 +358,31 @@ const ReaderSheet = ({
)
)
}
- color={theme.colorAccent}
- />
-
-
- dispatch(
- setAppSettings(
- "showScrollPercentage",
- !showScrollPercentage
- )
- )
- }
- >
-
- Show progress percentage
-
-
+
+ Use WebView
+
+
+ dispatch(
+ setAppSettings(
+ "useWebViewForChapter",
+ !useWebViewForChapter
+ )
+ )
+ }
+ color={theme.colorAccent}
+ />
+
+
dispatch(
setAppSettings(
"showScrollPercentage",
@@ -402,36 +390,61 @@ const ReaderSheet = ({
)
)
}
- color={theme.colorAccent}
- />
-
- {!useWebViewForChapter && (
-
- dispatch(setAppSettings("textSelectable", !selectText))
- }
>
- Select text
+ Show progress percentage
dispatch(
- setAppSettings("textSelectable", !selectText)
+ setAppSettings(
+ "showScrollPercentage",
+ !showScrollPercentage
+ )
)
}
color={theme.colorAccent}
/>
- )}
-
+ {!useWebViewForChapter && (
+
+ dispatch(
+ setAppSettings("textSelectable", !selectText)
+ )
+ }
+ >
+
+ Select text
+
+
+ dispatch(
+ setAppSettings(
+ "textSelectable",
+ !selectText
+ )
+ )
+ }
+ color={theme.colorAccent}
+ />
+
+ )}
+
+ ),
+ [useWebViewForChapter, selectText, showScrollPercentage]
);
const renderScene = SceneMap({
@@ -467,6 +480,8 @@ const ReaderSheet = ({
ref={bottomSheetRef}
draggableRange={{ top: 400, bottom: 0 }}
snappingPoints={[0, 400]}
+ showBackdrop={true}
+ backdropOpacity={0}
>
{
let novelChapters = [];
- let firstChapterNo, totalChapters;
+ let totalChapters;
totalChapters = $(".header-stats > span").first().text().match(/\d+/)[0];
- firstChapterNo = $(".chapter-no").first().text().match(/\d+/)[0];
- for (let i = firstChapterNo; i <= totalChapters; i++) {
+ for (let i = 1; i <= totalChapters; i++) {
const chapterName = "Chapter " + i;
const releaseDate = null;
diff --git a/src/sources/helpers/cleanHtml.js b/src/sources/helpers/cleanHtml.js
index 139757f1..290261eb 100644
--- a/src/sources/helpers/cleanHtml.js
+++ b/src/sources/helpers/cleanHtml.js
@@ -3,7 +3,7 @@ export const cleanHtml = (html) => {
text = text
.replace(
- /style="((?:color|font-family|line-height|font-size|text-align).*?)"/gi,
+ /style="((?:font-family|line-height|font-size|text-align).*?)"/gi,
""
)
.replace(/class=".*?"/gi, "")