diff --git a/apps/readest-app/src/app/layout.tsx b/apps/readest-app/src/app/layout.tsx index 046f59bd..8c08f2a1 100644 --- a/apps/readest-app/src/app/layout.tsx +++ b/apps/readest-app/src/app/layout.tsx @@ -36,6 +36,7 @@ export const viewport = { initialScale: 1, maximumScale: 1, userScalable: false, + viewportFit: 'cover', themeColor: 'white', }; @@ -44,9 +45,14 @@ export default function RootLayout({ children }: { children: React.ReactNode }) {title} + + - + diff --git a/apps/readest-app/src/app/reader/components/ViewMenu.tsx b/apps/readest-app/src/app/reader/components/ViewMenu.tsx index 883a0429..474e2a0d 100644 --- a/apps/readest-app/src/app/reader/components/ViewMenu.tsx +++ b/apps/readest-app/src/app/reader/components/ViewMenu.tsx @@ -117,7 +117,7 @@ const ViewMenu: React.FC = ({ -
+
@@ -128,7 +128,7 @@ const ViewMenu: React.FC = ({ onClick={toggleScrolledMode} /> -
+
= ({
    {options.map((option) => (
  • onSelect(option)}> @@ -51,7 +51,7 @@ const FontDropdown: React.FC = ({ {moreOptions && moreOptions.length > 0 && (
  • - + {_('System Fonts')} @@ -60,7 +60,7 @@ const FontDropdown: React.FC = ({ tabIndex={0} className={clsx( 'dropdown-content bgcolor-base-200 menu rounded-box relative z-[1] overflow-y-scroll shadow', - '!mr-5 mb-[-46px] inline max-h-80 w-[220px] overflow-y-scroll', + '!mr-5 mb-[-46px] inline max-h-80 w-[200px] overflow-y-scroll', )} > {moreOptions.map((option) => ( diff --git a/apps/readest-app/src/app/reader/components/settings/FontPanel.tsx b/apps/readest-app/src/app/reader/components/settings/FontPanel.tsx index b26d02a0..a3c11183 100644 --- a/apps/readest-app/src/app/reader/components/settings/FontPanel.tsx +++ b/apps/readest-app/src/app/reader/components/settings/FontPanel.tsx @@ -4,6 +4,8 @@ import React, { useEffect, useState } from 'react'; import NumberInput from './NumberInput'; import FontDropdown from './FontDropDown'; import { + ANDROID_FONTS, + IOS_FONTS, LINUX_FONTS, MACOS_FONTS, MONOSPACE_FONTS, @@ -76,6 +78,12 @@ const FontPanel: React.FC<{ bookKey: string }> = ({ bookKey }) => { case 'linux': moreFonts = LINUX_FONTS; break; + case 'ios': + moreFonts = IOS_FONTS; + break; + case 'android': + moreFonts = ANDROID_FONTS; + break; default: break; } diff --git a/apps/readest-app/src/components/Dialog.tsx b/apps/readest-app/src/components/Dialog.tsx index 624a23a2..51baacc4 100644 --- a/apps/readest-app/src/components/Dialog.tsx +++ b/apps/readest-app/src/components/Dialog.tsx @@ -99,7 +99,7 @@ const Dialog: React.FC = ({
    diff --git a/apps/readest-app/src/components/MenuItem.tsx b/apps/readest-app/src/components/MenuItem.tsx index 69f04ea6..24cd5678 100644 --- a/apps/readest-app/src/components/MenuItem.tsx +++ b/apps/readest-app/src/components/MenuItem.tsx @@ -35,7 +35,7 @@ const MenuItem: React.FC = ({ >
    {!noIcon && {icon}} - {label} + {label}
    {shortcut && {shortcut}} diff --git a/apps/readest-app/src/services/constants.ts b/apps/readest-app/src/services/constants.ts index e065fd65..95ceed4c 100644 --- a/apps/readest-app/src/services/constants.ts +++ b/apps/readest-app/src/services/constants.ts @@ -295,6 +295,51 @@ export const LINUX_FONTS = [ 'WenQuanYi Zen Hei', ]; +export const IOS_FONTS = [ + 'Avenir', + 'Avenir Next', + 'Courier', + 'Courier New', + 'Georgia', + 'Helvetica', + 'Helvetica Neue', + 'Hiragino Mincho', + 'Hiragino Sans', + 'Kaiti', + 'Palatino', + 'PingFang SC', + 'PingFang TC', + 'San Francisco', + 'SF Pro Display', + 'SF Pro Rounded', + 'SF Pro Text', + 'Songti', + 'Times New Roman', + 'Verdana', +]; + +export const ANDROID_FONTS = [ + 'Arial', + 'Droid Sans', + 'Droid Serif', + 'FZLanTingHei', + 'Georgia', + 'Noto Sans', + 'Noto Sans CJK', + 'Noto Sans JP', + 'Noto Serif', + 'Noto Serif CJK', + 'Noto Serif JP', + 'PingFang SC', + 'Roboto', + 'Source Han Sans', + 'Source Han Serif', + 'STHeiti', + 'STSong', + 'Tahoma', + 'Verdana', +]; + export const ONE_COLUMN_MAX_INLINE_SIZE = 9999; export const BOOK_IDS_SEPARATOR = '+';