fix: longer timeout to save changes before reloading page (#1461)

This commit is contained in:
Huang Xin
2025-06-24 11:01:46 +08:00
committed by GitHub
parent a1c1a9f983
commit a042b4c739
3 changed files with 6 additions and 3 deletions
@@ -7,6 +7,7 @@ import { useBookDataStore } from '@/store/bookDataStore';
import { getStyles } from '@/utils/style';
import { getMaxInlineSize } from '@/utils/config';
import { saveViewSettings } from '../../utils/viewSettingsHelper';
import { RELOAD_BEFREE_SAVED_TIMEOUT_MS } from '@/services/constants';
import NumberInput from './NumberInput';
const ControlPanel: React.FC<{ bookKey: string }> = ({ bookKey }) => {
@@ -85,7 +86,7 @@ const ControlPanel: React.FC<{ bookKey: string }> = ({ bookKey }) => {
useEffect(() => {
if (viewSettings.allowScript === allowScript) return;
saveViewSettings(envConfig, bookKey, 'allowScript', allowScript, true, false);
setTimeout(() => window.location.reload(), 100);
setTimeout(() => window.location.reload(), RELOAD_BEFREE_SAVED_TIMEOUT_MS);
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [allowScript]);
@@ -11,7 +11,7 @@ import { isCJKEnv } from '@/utils/misc';
import { getStyles } from '@/utils/style';
import { getMaxInlineSize } from '@/utils/config';
import { getBookDirFromWritingMode, getBookLangCode } from '@/utils/book';
import { MIGHT_BE_RTL_LANGS } from '@/services/constants';
import { MIGHT_BE_RTL_LANGS, RELOAD_BEFREE_SAVED_TIMEOUT_MS } from '@/services/constants';
import { saveViewSettings } from '../../utils/viewSettingsHelper';
import NumberInput from './NumberInput';
@@ -234,7 +234,7 @@ const LayoutPanel: React.FC<{ bookKey: string }> = ({ bookKey }) => {
(['horizontal-rl', 'vertical-rl'].includes(writingMode) ||
['horizontal-rl', 'vertical-rl'].includes(prevWritingMode))
) {
setTimeout(() => window.location.reload(), 100);
setTimeout(() => window.location.reload(), RELOAD_BEFREE_SAVED_TIMEOUT_MS);
}
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [writingMode]);
@@ -534,6 +534,8 @@ export const SYNC_NOTES_INTERVAL_SEC = 5;
export const SYNC_BOOKS_INTERVAL_SEC = 5;
export const CHECK_UPDATE_INTERVAL_SEC = 24 * 60 * 60;
export const RELOAD_BEFREE_SAVED_TIMEOUT_MS = 300;
export const MAX_ZOOM_LEVEL = 500;
export const MIN_ZOOM_LEVEL = 50;
export const ZOOM_STEP = 10;