diff --git a/commafeed-client/package-lock.json b/commafeed-client/package-lock.json index 6651a89f..5c8141e7 100644 --- a/commafeed-client/package-lock.json +++ b/commafeed-client/package-lock.json @@ -29,7 +29,6 @@ "react": "^19.2.0", "react-async-hook": "^4.0.0", "react-contexify": "^6.0.0", - "react-device-detect": "^2.2.3", "react-dom": "^19.2.0", "react-draggable": "^4.5.0", "react-icons": "^5.5.0", @@ -5058,19 +5057,6 @@ "node": ">=6" } }, - "node_modules/react-device-detect": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/react-device-detect/-/react-device-detect-2.2.3.tgz", - "integrity": "sha512-buYY3qrCnQVlIFHrC5UcUoAj7iANs/+srdkwsnNjI7anr3Tt7UY6MqNxtMLlr0tMBied0O49UZVK8XKs3ZIiPw==", - "license": "MIT", - "dependencies": { - "ua-parser-js": "^1.0.33" - }, - "peerDependencies": { - "react": ">= 0.14.0", - "react-dom": ">= 0.14.0" - } - }, "node_modules/react-dom": { "version": "19.2.0", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.0.tgz", @@ -6131,32 +6117,6 @@ "node": ">=14.17" } }, - "node_modules/ua-parser-js": { - "version": "1.0.41", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.41.tgz", - "integrity": "sha512-LbBDqdIC5s8iROCUjMbW1f5dJQTEFB1+KO9ogbvlb3nm9n4YHa5p4KTvFPWvh2Hs8gZMBuiB1/8+pdfe/tDPug==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/ua-parser-js" - }, - { - "type": "paypal", - "url": "https://paypal.me/faisalman" - }, - { - "type": "github", - "url": "https://github.com/sponsors/faisalman" - } - ], - "license": "MIT", - "bin": { - "ua-parser-js": "script/cli.js" - }, - "engines": { - "node": "*" - } - }, "node_modules/undici-types": { "version": "7.16.0", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", diff --git a/commafeed-client/package.json b/commafeed-client/package.json index 6fd0ef8f..3aae9546 100644 --- a/commafeed-client/package.json +++ b/commafeed-client/package.json @@ -36,7 +36,6 @@ "react": "^19.2.0", "react-async-hook": "^4.0.0", "react-contexify": "^6.0.0", - "react-device-detect": "^2.2.3", "react-dom": "^19.2.0", "react-draggable": "^4.5.0", "react-icons": "^5.5.0", diff --git a/commafeed-client/src/App.tsx b/commafeed-client/src/App.tsx index 53dfd10a..6a2129bb 100644 --- a/commafeed-client/src/App.tsx +++ b/commafeed-client/src/App.tsx @@ -5,7 +5,6 @@ import { ModalsProvider } from "@mantine/modals" import { Notifications } from "@mantine/notifications" import type React from "react" import { useEffect, useState } from "react" -import { isSafari } from "react-device-detect" import { HashRouter, Navigate, Route, Routes, useNavigate } from "react-router-dom" import Tinycon from "tinycon" import { Constants } from "@/app/constants" @@ -200,6 +199,7 @@ export function App() { useI18n() const unreadCountTitle = useAppSelector(state => state.user.settings?.unreadCountTitle) const unreadCountFavicon = useAppSelector(state => state.user.settings?.unreadCountFavicon) + const disablePullToRefresh = useAppSelector(state => state.user.settings?.disablePullToRefresh) const dispatch = useAppDispatch() useEffect(() => { @@ -213,12 +213,7 @@ export function App() { - - {/* disable pull-to-refresh as it messes with vertical scrolling - safari behaves weirdly when overscroll-behavior is set to none so we disable it only for other browsers - https://github.com/Athou/commafeed/issues/1168 - */} - {!isSafari && } + diff --git a/commafeed-client/src/app/types.ts b/commafeed-client/src/app/types.ts index fc59dc2e..bd889a5e 100644 --- a/commafeed-client/src/app/types.ts +++ b/commafeed-client/src/app/types.ts @@ -252,6 +252,7 @@ export interface Settings { mobileFooter: boolean unreadCountTitle: boolean unreadCountFavicon: boolean + disablePullToRefresh: boolean primaryColor?: string sharingSettings: SharingSettings } diff --git a/commafeed-client/src/app/user/slice.ts b/commafeed-client/src/app/user/slice.ts index 3eb3013b..16911038 100644 --- a/commafeed-client/src/app/user/slice.ts +++ b/commafeed-client/src/app/user/slice.ts @@ -4,6 +4,7 @@ import { createSlice, isAnyOf, type PayloadAction } from "@reduxjs/toolkit" import type { LocalSettings, Settings, UserModel, ViewMode } from "@/app/types" import { changeCustomContextMenu, + changeDisablePullToRefresh, changeEntriesToKeepOnTopWhenScrolling, changeExternalLinkIconDisplayMode, changeLanguage, @@ -135,6 +136,10 @@ export const userSlice = createSlice({ if (!state.settings) return state.settings.unreadCountFavicon = action.meta.arg }) + builder.addCase(changeDisablePullToRefresh.pending, (state, action) => { + if (!state.settings) return + state.settings.disablePullToRefresh = action.meta.arg + }) builder.addCase(changePrimaryColor.pending, (state, action) => { if (!state.settings) return state.settings.primaryColor = action.meta.arg @@ -143,6 +148,7 @@ export const userSlice = createSlice({ if (!state.settings) return state.settings.sharingSettings[action.meta.arg.site] = action.meta.arg.value }) + builder.addMatcher( isAnyOf( changeLanguage.fulfilled, @@ -159,6 +165,7 @@ export const userSlice = createSlice({ changeMobileFooter.fulfilled, changeUnreadCountTitle.fulfilled, changeUnreadCountFavicon.fulfilled, + changeDisablePullToRefresh.fulfilled, changePrimaryColor.fulfilled, changeSharingSetting.fulfilled ), diff --git a/commafeed-client/src/app/user/thunks.ts b/commafeed-client/src/app/user/thunks.ts index fa442bf8..0dc030af 100644 --- a/commafeed-client/src/app/user/thunks.ts +++ b/commafeed-client/src/app/user/thunks.ts @@ -122,6 +122,15 @@ export const changeUnreadCountFavicon = createAppAsyncThunk("settings/unreadCoun client.user.saveSettings({ ...settings, unreadCountFavicon }) }) +export const changeDisablePullToRefresh = createAppAsyncThunk( + "settings/disablePullToRefresh", + (disablePullToRefresh: boolean, thunkApi) => { + const { settings } = thunkApi.getState().user + if (!settings) return + client.user.saveSettings({ ...settings, disablePullToRefresh }) + } +) + export const changePrimaryColor = createAppAsyncThunk("settings/primaryColor", (primaryColor: string, thunkApi) => { const { settings } = thunkApi.getState().user if (!settings) return diff --git a/commafeed-client/src/components/DisablePullToRefresh.css b/commafeed-client/src/components/DisablePullToRefresh.css deleted file mode 100644 index ed8a35cc..00000000 --- a/commafeed-client/src/components/DisablePullToRefresh.css +++ /dev/null @@ -1,4 +0,0 @@ -html, -body { - overscroll-behavior: none; -} diff --git a/commafeed-client/src/components/DisablePullToRefresh.tsx b/commafeed-client/src/components/DisablePullToRefresh.tsx index 175b2c75..34328a75 100644 --- a/commafeed-client/src/components/DisablePullToRefresh.tsx +++ b/commafeed-client/src/components/DisablePullToRefresh.tsx @@ -1,4 +1,3 @@ -export const DisablePullToRefresh = () => { - import("./DisablePullToRefresh.css") - return null +export const DisablePullToRefresh = ({ enabled }: { enabled: boolean | undefined }) => { + return enabled ? : null } diff --git a/commafeed-client/src/components/settings/DisplaySettings.tsx b/commafeed-client/src/components/settings/DisplaySettings.tsx index f9288184..a657980e 100644 --- a/commafeed-client/src/components/settings/DisplaySettings.tsx +++ b/commafeed-client/src/components/settings/DisplaySettings.tsx @@ -9,6 +9,7 @@ import { useAppDispatch, useAppSelector } from "@/app/store" import type { IconDisplayMode, ScrollMode, SharingSettings } from "@/app/types" import { changeCustomContextMenu, + changeDisablePullToRefresh, changeEntriesToKeepOnTopWhenScrolling, changeExternalLinkIconDisplayMode, changeLanguage, @@ -42,6 +43,7 @@ export function DisplaySettings() { const mobileFooter = useAppSelector(state => state.user.settings?.mobileFooter) const unreadCountTitle = useAppSelector(state => state.user.settings?.unreadCountTitle) const unreadCountFavicon = useAppSelector(state => state.user.settings?.unreadCountFavicon) + const disablePullToRefresh = useAppSelector(state => state.user.settings?.disablePullToRefresh) const sharingSettings = useAppSelector(state => state.user.settings?.sharingSettings) const primaryColor = useAppSelector(state => state.user.settings?.primaryColor) || Constants.theme.defaultPrimaryColor const { _ } = useLingui() @@ -211,6 +213,12 @@ export function DisplaySettings() { onChange={async e => await dispatch(changeScrollMarks(e.currentTarget.checked))} /> + Disable "Pull to refresh" browser behavior} + checked={disablePullToRefresh} + onChange={async e => await dispatch(changeDisablePullToRefresh(e.currentTarget.checked))} + /> + Sharing sites} labelPosition="center" /> diff --git a/commafeed-client/src/locales/ar/messages.po b/commafeed-client/src/locales/ar/messages.po index 7c2ef07f..78e462f0 100644 --- a/commafeed-client/src/locales/ar/messages.po +++ b/commafeed-client/src/locales/ar/messages.po @@ -283,6 +283,10 @@ msgstr "تنازلي" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/ca/messages.po b/commafeed-client/src/locales/ca/messages.po index d2248ff3..25c77e4d 100644 --- a/commafeed-client/src/locales/ca/messages.po +++ b/commafeed-client/src/locales/ca/messages.po @@ -283,6 +283,10 @@ msgstr "Desc" msgid "Detailed" msgstr "Detallat" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/cs/messages.po b/commafeed-client/src/locales/cs/messages.po index df305763..206b0d56 100644 --- a/commafeed-client/src/locales/cs/messages.po +++ b/commafeed-client/src/locales/cs/messages.po @@ -283,6 +283,10 @@ msgstr "" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/cy/messages.po b/commafeed-client/src/locales/cy/messages.po index 2e2435fa..c3b4e982 100644 --- a/commafeed-client/src/locales/cy/messages.po +++ b/commafeed-client/src/locales/cy/messages.po @@ -283,6 +283,10 @@ msgstr "Rhag" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/da/messages.po b/commafeed-client/src/locales/da/messages.po index 3851bbcd..c11a53f7 100644 --- a/commafeed-client/src/locales/da/messages.po +++ b/commafeed-client/src/locales/da/messages.po @@ -283,6 +283,10 @@ msgstr "" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/de/messages.po b/commafeed-client/src/locales/de/messages.po index 9fea3bf3..59ec8fce 100644 --- a/commafeed-client/src/locales/de/messages.po +++ b/commafeed-client/src/locales/de/messages.po @@ -283,6 +283,10 @@ msgstr "Beschr" msgid "Detailed" msgstr "Detailliert" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/en/messages.po b/commafeed-client/src/locales/en/messages.po index 9f879131..46c17ea4 100644 --- a/commafeed-client/src/locales/en/messages.po +++ b/commafeed-client/src/locales/en/messages.po @@ -283,6 +283,10 @@ msgstr "Desc" msgid "Detailed" msgstr "Detailed" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "Disable \"Pull to refresh\" browser behavior" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/es/messages.po b/commafeed-client/src/locales/es/messages.po index 687fc165..0e8d86a2 100644 --- a/commafeed-client/src/locales/es/messages.po +++ b/commafeed-client/src/locales/es/messages.po @@ -284,6 +284,10 @@ msgstr "Desc" msgid "Detailed" msgstr "Detallado" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/fa/messages.po b/commafeed-client/src/locales/fa/messages.po index 67c933e4..d9ad6887 100644 --- a/commafeed-client/src/locales/fa/messages.po +++ b/commafeed-client/src/locales/fa/messages.po @@ -283,6 +283,10 @@ msgstr "توصیف" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/fi/messages.po b/commafeed-client/src/locales/fi/messages.po index b1f243f1..fa221654 100644 --- a/commafeed-client/src/locales/fi/messages.po +++ b/commafeed-client/src/locales/fi/messages.po @@ -283,6 +283,10 @@ msgstr "" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/fr/messages.po b/commafeed-client/src/locales/fr/messages.po index d6945ba6..c9753d65 100644 --- a/commafeed-client/src/locales/fr/messages.po +++ b/commafeed-client/src/locales/fr/messages.po @@ -283,6 +283,10 @@ msgstr "Descendant" msgid "Detailed" msgstr "Vue détaillée" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/gl/messages.po b/commafeed-client/src/locales/gl/messages.po index 8b4d6940..12168d94 100644 --- a/commafeed-client/src/locales/gl/messages.po +++ b/commafeed-client/src/locales/gl/messages.po @@ -284,6 +284,10 @@ msgstr "Desc" msgid "Detailed" msgstr "Detallado" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx @@ -326,7 +330,6 @@ msgid "Enabled" msgstr "Activado" #: src/components/KeyboardShortcutsHelp.tsx -#, fuzzy msgid "Enter" msgstr "Entra" @@ -431,7 +434,6 @@ msgid "Go to the API documentation." msgstr "Ir á documentación da API." #: src/pages/app/AboutPage.tsx -#, fuzzy msgid "Goodies" msgstr "Agasallos" @@ -632,7 +634,6 @@ msgid "Next refresh" msgstr "Próxima actualización" #: src/pages/app/AboutPage.tsx -#, fuzzy msgid "Next unread item bookmarklet" msgstr "Seguinte marcador de elementos non lidos" diff --git a/commafeed-client/src/locales/hu/messages.po b/commafeed-client/src/locales/hu/messages.po index 3c4f7e48..abfb0686 100644 --- a/commafeed-client/src/locales/hu/messages.po +++ b/commafeed-client/src/locales/hu/messages.po @@ -283,6 +283,10 @@ msgstr "" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/id/messages.po b/commafeed-client/src/locales/id/messages.po index d4fde2f5..8077586c 100644 --- a/commafeed-client/src/locales/id/messages.po +++ b/commafeed-client/src/locales/id/messages.po @@ -283,6 +283,10 @@ msgstr "" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/it/messages.po b/commafeed-client/src/locales/it/messages.po index 828f3be0..0b2e62f0 100644 --- a/commafeed-client/src/locales/it/messages.po +++ b/commafeed-client/src/locales/it/messages.po @@ -283,6 +283,10 @@ msgstr "" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/ja/messages.po b/commafeed-client/src/locales/ja/messages.po index 92df684e..67b45a0d 100644 --- a/commafeed-client/src/locales/ja/messages.po +++ b/commafeed-client/src/locales/ja/messages.po @@ -283,6 +283,10 @@ msgstr "説明" msgid "Detailed" msgstr "詳細" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/ko/messages.po b/commafeed-client/src/locales/ko/messages.po index fd653f15..fd0f6702 100644 --- a/commafeed-client/src/locales/ko/messages.po +++ b/commafeed-client/src/locales/ko/messages.po @@ -283,6 +283,10 @@ msgstr "설명" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/ms/messages.po b/commafeed-client/src/locales/ms/messages.po index 526f47c9..a2b85c39 100644 --- a/commafeed-client/src/locales/ms/messages.po +++ b/commafeed-client/src/locales/ms/messages.po @@ -283,6 +283,10 @@ msgstr "Dec" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/nb/messages.po b/commafeed-client/src/locales/nb/messages.po index e689b53b..97e3d97d 100644 --- a/commafeed-client/src/locales/nb/messages.po +++ b/commafeed-client/src/locales/nb/messages.po @@ -283,6 +283,10 @@ msgstr "" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/nl/messages.po b/commafeed-client/src/locales/nl/messages.po index b2b79e27..d1ddf9ad 100644 --- a/commafeed-client/src/locales/nl/messages.po +++ b/commafeed-client/src/locales/nl/messages.po @@ -283,6 +283,10 @@ msgstr "Beschrijving" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/nn/messages.po b/commafeed-client/src/locales/nn/messages.po index 6db85cad..a7878e99 100644 --- a/commafeed-client/src/locales/nn/messages.po +++ b/commafeed-client/src/locales/nn/messages.po @@ -283,6 +283,10 @@ msgstr "" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/pl/messages.po b/commafeed-client/src/locales/pl/messages.po index 67ebd713..0541766b 100644 --- a/commafeed-client/src/locales/pl/messages.po +++ b/commafeed-client/src/locales/pl/messages.po @@ -283,6 +283,10 @@ msgstr "Opis" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/pt/messages.po b/commafeed-client/src/locales/pt/messages.po index 0ab431a9..f9c5296d 100644 --- a/commafeed-client/src/locales/pt/messages.po +++ b/commafeed-client/src/locales/pt/messages.po @@ -283,6 +283,10 @@ msgstr "Desc" msgid "Detailed" msgstr "Detalhado" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/ru/messages.po b/commafeed-client/src/locales/ru/messages.po index 509e1c7c..c4cffdcb 100644 --- a/commafeed-client/src/locales/ru/messages.po +++ b/commafeed-client/src/locales/ru/messages.po @@ -283,6 +283,10 @@ msgstr "По убыванию" msgid "Detailed" msgstr "Подробно" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/sk/messages.po b/commafeed-client/src/locales/sk/messages.po index adc1ac87..23c0ee2d 100644 --- a/commafeed-client/src/locales/sk/messages.po +++ b/commafeed-client/src/locales/sk/messages.po @@ -283,6 +283,10 @@ msgstr "" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/sv/messages.po b/commafeed-client/src/locales/sv/messages.po index f5cd0794..9a499ea1 100644 --- a/commafeed-client/src/locales/sv/messages.po +++ b/commafeed-client/src/locales/sv/messages.po @@ -283,6 +283,10 @@ msgstr "" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/tr/messages.po b/commafeed-client/src/locales/tr/messages.po index 2edafaf7..3c93cfc5 100644 --- a/commafeed-client/src/locales/tr/messages.po +++ b/commafeed-client/src/locales/tr/messages.po @@ -283,6 +283,10 @@ msgstr "Açılış" msgid "Detailed" msgstr "" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-client/src/locales/zh/messages.po b/commafeed-client/src/locales/zh/messages.po index 71b69a38..c8704435 100644 --- a/commafeed-client/src/locales/zh/messages.po +++ b/commafeed-client/src/locales/zh/messages.po @@ -283,6 +283,10 @@ msgstr "降序" msgid "Detailed" msgstr "详细" +#: src/components/settings/DisplaySettings.tsx +msgid "Disable \"Pull to refresh\" browser behavior" +msgstr "" + #: src/components/header/ProfileMenu.tsx #: src/components/settings/DisplaySettings.tsx #: src/pages/app/SettingsPage.tsx diff --git a/commafeed-server/src/main/java/com/commafeed/backend/model/UserSettings.java b/commafeed-server/src/main/java/com/commafeed/backend/model/UserSettings.java index bebed444..485c4941 100644 --- a/commafeed-server/src/main/java/com/commafeed/backend/model/UserSettings.java +++ b/commafeed-server/src/main/java/com/commafeed/backend/model/UserSettings.java @@ -131,6 +131,7 @@ public class UserSettings extends AbstractModel { private boolean mobileFooter; private boolean unreadCountTitle; private boolean unreadCountFavicon; + private boolean disablePullToRefresh; private boolean email; private boolean gmail; diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/model/Settings.java b/commafeed-server/src/main/java/com/commafeed/frontend/model/Settings.java index 4d31c5a0..f9b2d71b 100644 --- a/commafeed-server/src/main/java/com/commafeed/frontend/model/Settings.java +++ b/commafeed-server/src/main/java/com/commafeed/frontend/model/Settings.java @@ -72,6 +72,9 @@ public class Settings implements Serializable { @Schema(description = "show unread count in the favicon", required = true) private boolean unreadCountFavicon; + @Schema(description = "disable pull to refresh", required = true) + private boolean disablePullToRefresh; + @Schema(description = "primary theme color to use in the UI") private String primaryColor; diff --git a/commafeed-server/src/main/java/com/commafeed/frontend/resource/UserREST.java b/commafeed-server/src/main/java/com/commafeed/frontend/resource/UserREST.java index b190efee..e8177758 100644 --- a/commafeed-server/src/main/java/com/commafeed/frontend/resource/UserREST.java +++ b/commafeed-server/src/main/java/com/commafeed/frontend/resource/UserREST.java @@ -120,6 +120,7 @@ public class UserREST { s.setMobileFooter(settings.isMobileFooter()); s.setUnreadCountTitle(settings.isUnreadCountTitle()); s.setUnreadCountFavicon(settings.isUnreadCountFavicon()); + s.setDisablePullToRefresh(settings.isDisablePullToRefresh()); s.setPrimaryColor(settings.getPrimaryColor()); } else { s.setReadingMode(ReadingMode.UNREAD); @@ -148,6 +149,7 @@ public class UserREST { s.setMobileFooter(false); s.setUnreadCountTitle(false); s.setUnreadCountFavicon(true); + s.setDisablePullToRefresh(true); } return s; } @@ -183,6 +185,7 @@ public class UserREST { s.setMobileFooter(settings.isMobileFooter()); s.setUnreadCountTitle(settings.isUnreadCountTitle()); s.setUnreadCountFavicon(settings.isUnreadCountFavicon()); + s.setDisablePullToRefresh(settings.isDisablePullToRefresh()); s.setPrimaryColor(settings.getPrimaryColor()); s.setEmail(settings.getSharingSettings().isEmail()); diff --git a/commafeed-server/src/main/resources/changelogs/db.changelog-5.12.xml b/commafeed-server/src/main/resources/changelogs/db.changelog-5.12.xml new file mode 100644 index 00000000..3a836594 --- /dev/null +++ b/commafeed-server/src/main/resources/changelogs/db.changelog-5.12.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + diff --git a/commafeed-server/src/main/resources/migrations.xml b/commafeed-server/src/main/resources/migrations.xml index 0726311f..90fa85f4 100644 --- a/commafeed-server/src/main/resources/migrations.xml +++ b/commafeed-server/src/main/resources/migrations.xml @@ -36,5 +36,6 @@ + \ No newline at end of file