feat(settings): modify "Page as Sleep Screen" to "Quick Resume" options (#2089)
## Summary **What is the goal of this PR?** Adds a clearer Quick Resume sleep-screen flow. The previous “Page as Sleep Screen” behavior is now exposed as a dedicated `Sleep Screen > Quick Resume `option, with the timeout-only behavior controlled by a renamed `Quick Resume on Timeout `setting. **What changes are included?** - Adds `Quick Resume` as a new `Sleep Screen` option. - Renames the old `Page as Sleep Screen` setting to `Quick Resume on Timeout`. - Changes that setting’s choices from `Never / After Timeout / Always` to `OFF / ON`. - Makes `Quick Resume on Timeout = ON` equivalent to the old `After Timeout` behavior. - Makes `Sleep Screen > Quick Resume` equivalent to the old `Always` behavior. - Automatically forces `Quick Resume on Timeout` to `ON` when `Sleep Screen` is set to `Quick Resume`. - Renames internal setting references from `seamlessSleepScreen` to `quickResumeSleepScreen`. - Updates translations for the renamed setting label. **Additional Context** - This is mostly a settings/labeling restructure around existing behavior, not a new rendering path. - The runtime quick-resume behavior still uses the existing saved framebuffer / last-screen sleep flow. - Review focus areas: - Sleep entry behavior from manual sleep vs timeout sleep. - The automatic dependency where selecting `Sleep Screen > Quick Resume` sets `Quick Resume on Timeout` to `ON`. --- ### AI Usage While CrossPoint doesn't have restrictions on AI tools in contributing, please be transparent about their usage as it helps set the right context for reviewers. Did you use AI tools to help write this code? _**< YES >**_ --- **New `Quick Resume` option for `Sleep Screen` will automatically set `Quick Resume on Timeout` to `ON`**: <img width="480" height="800" alt="quick resume" src="https://github.com/user-attachments/assets/94c553fd-a122-47a8-add9-f29694f55566" /> **Example where a different sleep screen setting like `Cover` can be used in combination with the `Quick Resume on Timeout` setting**: <img width="480" height="800" alt="cover + quick resume" src="https://github.com/user-attachments/assets/dd18ce18-230b-4b78-808b-ac85f5e7d5d8" />
This commit is contained in:
@@ -206,11 +206,12 @@ STR_THEME_CLASSIC: "Класічная"
|
||||
STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Кампенсацыя выцвітання"
|
||||
STR_SEAMLESS_SLEEP: "Старонка як экран сну"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Хуткае узнаўленне пасля таймаўту"
|
||||
STR_AFTER_TIMEOUT: "Пасля таймаўту"
|
||||
STR_REMAP_FRONT_BUTTONS: "Пераназначыць пярэднія кнопкі"
|
||||
STR_OPDS_BROWSER: "OPDS браўзер"
|
||||
STR_COVER_CUSTOM: "Вокладка + Свой"
|
||||
STR_QUICK_RESUME: "Хуткае узнаўленне"
|
||||
STR_MENU_RECENT_BOOKS: "Нядаўнія кнігі"
|
||||
STR_REMOVE_FROM_RECENTS: "Выдаліць з нядаўніх кніг?"
|
||||
STR_NO_RECENT_BOOKS: "Няма нядаўніх кніг"
|
||||
|
||||
@@ -234,11 +234,12 @@ STR_THEME_CLASSIC: "Clàssic"
|
||||
STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Ampliat"
|
||||
STR_SUNLIGHT_FADING_FIX: "Correcció de l'esvaïment pel sol"
|
||||
STR_SEAMLESS_SLEEP: "Pàgina com a repòs"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Represa ràpida després del temps"
|
||||
STR_AFTER_TIMEOUT: "Després del temps"
|
||||
STR_REMAP_FRONT_BUTTONS: "Reassigna els botons frontals"
|
||||
STR_OPDS_BROWSER: "Navegador OPDS"
|
||||
STR_COVER_CUSTOM: "Portada + Personalitzat"
|
||||
STR_QUICK_RESUME: "Represa ràpida"
|
||||
STR_MENU_RECENT_BOOKS: "Llibres recents"
|
||||
STR_REMOVE_FROM_RECENTS: "Voleu suprimir-lo de Llibres recents?"
|
||||
STR_NO_RECENT_BOOKS: "No hi ha llibres recents"
|
||||
|
||||
@@ -212,11 +212,12 @@ STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Oprava blednutí na slunci"
|
||||
STR_SEAMLESS_SLEEP: "Stránka jako spánek"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Rychlé navázání po vypršení"
|
||||
STR_AFTER_TIMEOUT: "Po vypršení"
|
||||
STR_REMAP_FRONT_BUTTONS: "Přemapovat přední tlačítka"
|
||||
STR_OPDS_BROWSER: "Prohlížeč OPDS"
|
||||
STR_COVER_CUSTOM: "Obálka + Vlastní"
|
||||
STR_QUICK_RESUME: "Rychlé navázání"
|
||||
STR_MENU_RECENT_BOOKS: "Nedávné knihy"
|
||||
STR_REMOVE_FROM_RECENTS: "Odebrat z nedávných knih?"
|
||||
STR_NO_RECENT_BOOKS: "Žádné nedávné knihy"
|
||||
|
||||
@@ -234,11 +234,12 @@ STR_THEME_CLASSIC: "Klassisk"
|
||||
STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Sollysfading-rettelse"
|
||||
STR_SEAMLESS_SLEEP: "Side som dvaleskærm"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Hurtig genoptagelse ved timeout"
|
||||
STR_AFTER_TIMEOUT: "Efter timeout"
|
||||
STR_REMAP_FRONT_BUTTONS: "Omtildel frontknapper"
|
||||
STR_OPDS_BROWSER: "OPDS Browser"
|
||||
STR_COVER_CUSTOM: "Omslag + Brugerdefineret"
|
||||
STR_QUICK_RESUME: "Hurtig genoptagelse"
|
||||
STR_MENU_RECENT_BOOKS: "Seneste bøger"
|
||||
STR_REMOVE_FROM_RECENTS: "Fjern fra Seneste bøger?"
|
||||
STR_NO_RECENT_BOOKS: "Ingen seneste bøger"
|
||||
|
||||
@@ -234,11 +234,12 @@ STR_THEME_CLASSIC: "Klassiek"
|
||||
STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Uitgebreid"
|
||||
STR_SUNLIGHT_FADING_FIX: "Zonlicht vervaging fix"
|
||||
STR_SEAMLESS_SLEEP: "Pagina als slaapscherm"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Snel hervatten bij timeout"
|
||||
STR_AFTER_TIMEOUT: "Na timeout"
|
||||
STR_REMAP_FRONT_BUTTONS: "Knoppen voorzijde wijzigen"
|
||||
STR_OPDS_BROWSER: "OPDS-browser"
|
||||
STR_COVER_CUSTOM: "Omslag + Aangepast"
|
||||
STR_QUICK_RESUME: "Snel hervatten"
|
||||
STR_MENU_RECENT_BOOKS: "Recente boeken"
|
||||
STR_REMOVE_FROM_RECENTS: "Verwijderen uit Recente boeken?"
|
||||
STR_NO_RECENT_BOOKS: "Geen recente boeken"
|
||||
@@ -302,4 +303,4 @@ STR_LINK: "[link]"
|
||||
STR_SCREENSHOT_BUTTON: "Screenshot maken"
|
||||
STR_AUTO_TURN_ENABLED: "Automatisch omslaan ingeschakeld: "
|
||||
STR_AUTO_TURN_PAGES_PER_MIN: "Autom. omslaan (pagina's per minuut)"
|
||||
STR_TILT_PAGE_TURN: "Kantel om te bladeren"
|
||||
STR_TILT_PAGE_TURN: "Kantel om te bladeren"
|
||||
|
||||
@@ -62,7 +62,7 @@ STR_CAT_READER: "Reader"
|
||||
STR_CAT_CONTROLS: "Controls"
|
||||
STR_CAT_SYSTEM: "System"
|
||||
STR_SLEEP_SCREEN: "Sleep Screen"
|
||||
STR_SEAMLESS_SLEEP: "Page as Sleep Screen"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Quick Resume on Timeout"
|
||||
STR_AFTER_TIMEOUT: "After Timeout"
|
||||
STR_SLEEP_COVER_MODE: "Sleep Screen Cover Mode"
|
||||
STR_HIDE_BATTERY: "Hide Battery %"
|
||||
@@ -263,6 +263,7 @@ STR_REMAP_FRONT_BUTTONS: "Remap Front Buttons"
|
||||
STR_OPDS_BROWSER: "OPDS Browser"
|
||||
STR_SEARCH: "Search"
|
||||
STR_COVER_CUSTOM: "Cover + Custom"
|
||||
STR_QUICK_RESUME: "Quick Resume"
|
||||
STR_MENU_RECENT_BOOKS: "Recent Books"
|
||||
STR_REMOVE_FROM_RECENTS: "Remove from Recent Books?"
|
||||
STR_NO_RECENT_BOOKS: "No recent books"
|
||||
|
||||
@@ -211,11 +211,12 @@ STR_THEME_CLASSIC: "Klassinen"
|
||||
STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Auringonvalon haalistumiskorjaus"
|
||||
STR_SEAMLESS_SLEEP: "Sivu lepotilassa"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Pikajatko aikakatkaisulla"
|
||||
STR_AFTER_TIMEOUT: "Aikakatkon jälkeen"
|
||||
STR_REMAP_FRONT_BUTTONS: "Uudelleenmääritä etupainikkeet"
|
||||
STR_OPDS_BROWSER: "OPDS-selain"
|
||||
STR_COVER_CUSTOM: "Kansi + mukautettu"
|
||||
STR_QUICK_RESUME: "Pikajatko"
|
||||
STR_MENU_RECENT_BOOKS: "Viimeisimmät kirjat"
|
||||
STR_REMOVE_FROM_RECENTS: "Poista viimeisimmistä kirjoista?"
|
||||
STR_NO_RECENT_BOOKS: "Ei viimeisimpiä kirjoja"
|
||||
|
||||
@@ -235,11 +235,12 @@ STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Correction lisibilité au soleil"
|
||||
STR_SEAMLESS_SLEEP: "Page comme veille"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Reprise rapide après délai"
|
||||
STR_AFTER_TIMEOUT: "Après délai"
|
||||
STR_REMAP_FRONT_BUTTONS: "Configurer boutons façade"
|
||||
STR_OPDS_BROWSER: "Navigateur OPDS"
|
||||
STR_COVER_CUSTOM: "Couverture + Perso"
|
||||
STR_QUICK_RESUME: "Reprise rapide"
|
||||
STR_MENU_RECENT_BOOKS: "Livres récents"
|
||||
STR_REMOVE_FROM_RECENTS: "Retirer des Livres récents ?"
|
||||
STR_NO_RECENT_BOOKS: "Aucun livre récent"
|
||||
|
||||
@@ -233,11 +233,12 @@ STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Anti-Verblassen"
|
||||
STR_SEAMLESS_SLEEP: "Seite als Ruhebild"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Schnelles Fortsetzen nach Timeout"
|
||||
STR_AFTER_TIMEOUT: "Nach Timeout"
|
||||
STR_REMAP_FRONT_BUTTONS: "Vordere Tasten belegen"
|
||||
STR_OPDS_BROWSER: "OPDS-Browser"
|
||||
STR_COVER_CUSTOM: "Umschlag + Eigenes"
|
||||
STR_QUICK_RESUME: "Schnelles Fortsetzen"
|
||||
STR_MENU_RECENT_BOOKS: "Zuletzt gelesen"
|
||||
STR_REMOVE_FROM_RECENTS: "Aus Zuletzt gelesen entfernen?"
|
||||
STR_NO_RECENT_BOOKS: "Keine Bücher"
|
||||
|
||||
@@ -231,11 +231,12 @@ STR_THEME_CLASSIC: "Klasszikus"
|
||||
STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Napfény halványulás javítás"
|
||||
STR_SEAMLESS_SLEEP: "Oldal alvóképernyő"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Gyors folytatás időtúllépéskor"
|
||||
STR_AFTER_TIMEOUT: "Időtúllépés után"
|
||||
STR_REMAP_FRONT_BUTTONS: "Elülső gombok átállítása"
|
||||
STR_OPDS_BROWSER: "OPDS böngésző"
|
||||
STR_COVER_CUSTOM: "Borító + Egyéni"
|
||||
STR_QUICK_RESUME: "Gyors folytatás"
|
||||
STR_MENU_RECENT_BOOKS: "Legutóbbi könyvek"
|
||||
STR_REMOVE_FROM_RECENTS: "Eltávolítás a legutóbbi könyvek közül?"
|
||||
STR_NO_RECENT_BOOKS: "Nincsenek legutóbbi könyvek"
|
||||
|
||||
@@ -242,12 +242,13 @@ STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra esteso"
|
||||
STR_SUNLIGHT_FADING_FIX: "Correzione luce solare"
|
||||
STR_SEAMLESS_SLEEP: "Pagina come standby"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Ripresa rapida dopo timeout"
|
||||
STR_AFTER_TIMEOUT: "Dopo timeout"
|
||||
STR_REMAP_FRONT_BUTTONS: "Rimappa pulsanti frontali"
|
||||
STR_OPDS_BROWSER: "Browser OPDS"
|
||||
STR_SEARCH: "Cerca"
|
||||
STR_COVER_CUSTOM: "Copertina + Wallpaper"
|
||||
STR_QUICK_RESUME: "Ripresa rapida"
|
||||
STR_MENU_RECENT_BOOKS: "Libri recenti"
|
||||
STR_REMOVE_FROM_RECENTS: "Rimuovere da Libri recenti?"
|
||||
STR_NO_RECENT_BOOKS: "Nessun libro recente"
|
||||
|
||||
@@ -207,11 +207,12 @@ STR_THEME_CLASSIC: "Классикалық"
|
||||
STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra кеңейтілген"
|
||||
STR_SUNLIGHT_FADING_FIX: "Күн сәулесінен солу түзету"
|
||||
STR_SEAMLESS_SLEEP: "Бет – ұйқы экраны"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Таймауттан кейін жылдам жалғастыру"
|
||||
STR_AFTER_TIMEOUT: "Таймауттан кейін"
|
||||
STR_REMAP_FRONT_BUTTONS: "Алдыңғы түймелерді қайта баптау"
|
||||
STR_OPDS_BROWSER: "OPDS шолғышы"
|
||||
STR_COVER_CUSTOM: "Мұқаба + Өзгертілген"
|
||||
STR_QUICK_RESUME: "Жылдам жалғастыру"
|
||||
STR_MENU_RECENT_BOOKS: "Жуырда оқылған кітаптар"
|
||||
STR_REMOVE_FROM_RECENTS: "Жуырда оқылған кітаптардан жою?"
|
||||
STR_NO_RECENT_BOOKS: "Жуырда оқылған кітаптар жоқ"
|
||||
|
||||
@@ -231,11 +231,12 @@ STR_THEME_CLASSIC: "Klasikinė"
|
||||
STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Ext."
|
||||
STR_SUNLIGHT_FADING_FIX: "Blyškumo pataisa"
|
||||
STR_SEAMLESS_SLEEP: "Puslapis miego ekrane"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Greitas tęsimas po skirtojo laiko"
|
||||
STR_AFTER_TIMEOUT: "Po skirtojo laiko"
|
||||
STR_REMAP_FRONT_BUTTONS: "Keisti mygtukus"
|
||||
STR_OPDS_BROWSER: "OPDS naršyklė"
|
||||
STR_COVER_CUSTOM: "Viršelis + Kita"
|
||||
STR_QUICK_RESUME: "Greitas tęsimas"
|
||||
STR_MENU_RECENT_BOOKS: "Paskutinės"
|
||||
STR_REMOVE_FROM_RECENTS: "Pašalinti iš paskutinių?"
|
||||
STR_NO_RECENT_BOOKS: "Paskutinių nėra"
|
||||
|
||||
@@ -242,12 +242,13 @@ STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Przeciwdziałanie blaknięciu od słońca"
|
||||
STR_SEAMLESS_SLEEP: "Strona jako ekran snu"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Szybkie wznawianie po czasie"
|
||||
STR_AFTER_TIMEOUT: "Po upływie czasu"
|
||||
STR_REMAP_FRONT_BUTTONS: "Skonfiguruj przednie przyciski"
|
||||
STR_OPDS_BROWSER: "OPDS Browser"
|
||||
STR_SEARCH: "Szukaj"
|
||||
STR_COVER_CUSTOM: "Okładka + Własne"
|
||||
STR_QUICK_RESUME: "Szybkie wznawianie"
|
||||
STR_MENU_RECENT_BOOKS: "Ostatnio czytane"
|
||||
STR_REMOVE_FROM_RECENTS: "Usunąć z ostatnio czytanych?"
|
||||
STR_NO_RECENT_BOOKS: "Brak ostatnio czytanych"
|
||||
|
||||
@@ -212,11 +212,12 @@ STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Ajuste desbotamento ao sol"
|
||||
STR_SEAMLESS_SLEEP: "Página como repouso"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Retomada rápida após tempo limite"
|
||||
STR_AFTER_TIMEOUT: "Após tempo limite"
|
||||
STR_REMAP_FRONT_BUTTONS: "Remapear botões frontais"
|
||||
STR_OPDS_BROWSER: "Navegador OPDS"
|
||||
STR_COVER_CUSTOM: "Capa + personalizado"
|
||||
STR_QUICK_RESUME: "Retomada rápida"
|
||||
STR_MENU_RECENT_BOOKS: "Livros recentes"
|
||||
STR_REMOVE_FROM_RECENTS: "Remover dos Livros recentes?"
|
||||
STR_NO_RECENT_BOOKS: "Sem livros recentes"
|
||||
|
||||
@@ -234,11 +234,12 @@ STR_THEME_CLASSIC: "Clasic"
|
||||
STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Corecţie estompare lumină"
|
||||
STR_SEAMLESS_SLEEP: "Pagină ca repaus"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Reluare rapidă la timeout"
|
||||
STR_AFTER_TIMEOUT: "După timeout"
|
||||
STR_REMAP_FRONT_BUTTONS: "Remapare butoane frontale"
|
||||
STR_OPDS_BROWSER: "Browser OPDS"
|
||||
STR_COVER_CUSTOM: "Copertă + Personalizat"
|
||||
STR_QUICK_RESUME: "Reluare rapidă"
|
||||
STR_MENU_RECENT_BOOKS: "Cărţi recente"
|
||||
STR_REMOVE_FROM_RECENTS: "Eliminați din Cărţi recente?"
|
||||
STR_NO_RECENT_BOOKS: "Nicio carte recentă"
|
||||
|
||||
@@ -242,12 +242,13 @@ STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Компенсация выцветания"
|
||||
STR_SEAMLESS_SLEEP: "Страница как экран сна"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Быстрое возобновление по таймауту"
|
||||
STR_AFTER_TIMEOUT: "По таймауту"
|
||||
STR_REMAP_FRONT_BUTTONS: "Переназначить передние кнопки"
|
||||
STR_OPDS_BROWSER: "OPDS браузер"
|
||||
STR_SEARCH: "Поиск"
|
||||
STR_COVER_CUSTOM: "Обложка + Свой"
|
||||
STR_QUICK_RESUME: "Быстрое возобновление"
|
||||
STR_MENU_RECENT_BOOKS: "Недавние книги"
|
||||
STR_REMOVE_FROM_RECENTS: "Удалить из недавних книг?"
|
||||
STR_NO_RECENT_BOOKS: "Нет недавних книг"
|
||||
|
||||
@@ -231,11 +231,12 @@ STR_THEME_CLASSIC: "Klasična"
|
||||
STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra razširjena"
|
||||
STR_SUNLIGHT_FADING_FIX: "Popravek bledenja na soncu"
|
||||
STR_SEAMLESS_SLEEP: "Stran kot zaslon sna"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Hitro nadaljevanje po izteku"
|
||||
STR_AFTER_TIMEOUT: "Po izteku"
|
||||
STR_REMAP_FRONT_BUTTONS: "Prenastavi sprednje gumbe"
|
||||
STR_OPDS_BROWSER: "OPDS brskalnik"
|
||||
STR_COVER_CUSTOM: "Naslovnica + po meri"
|
||||
STR_QUICK_RESUME: "Hitro nadaljevanje"
|
||||
STR_MENU_RECENT_BOOKS: "Zadnje knjige"
|
||||
STR_REMOVE_FROM_RECENTS: "Odstrani iz zadnjih knjig?"
|
||||
STR_NO_RECENT_BOOKS: "Ni zadnjih knjig"
|
||||
|
||||
@@ -242,12 +242,13 @@ STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extendido"
|
||||
STR_SUNLIGHT_FADING_FIX: "Corrección de desvanecimiento"
|
||||
STR_SEAMLESS_SLEEP: "Página como reposo"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Reanudación rápida tras tiempo"
|
||||
STR_AFTER_TIMEOUT: "Tras tiempo"
|
||||
STR_REMAP_FRONT_BUTTONS: "Reconfigurar botones frontales"
|
||||
STR_OPDS_BROWSER: "Navegador OPDS"
|
||||
STR_SEARCH: "Buscar"
|
||||
STR_COVER_CUSTOM: "Portada + Pers."
|
||||
STR_QUICK_RESUME: "Reanudación rápida"
|
||||
STR_MENU_RECENT_BOOKS: "Libros recientes"
|
||||
STR_REMOVE_FROM_RECENTS: "¿Eliminar de Libros recientes?"
|
||||
STR_NO_RECENT_BOOKS: "No hay libros recientes"
|
||||
|
||||
@@ -242,12 +242,13 @@ STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra utökad"
|
||||
STR_SUNLIGHT_FADING_FIX: "Fix för solskensmattning"
|
||||
STR_SEAMLESS_SLEEP: "Sida som viloskärm"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Snabb återupptagning efter timeout"
|
||||
STR_AFTER_TIMEOUT: "Efter timeout"
|
||||
STR_REMAP_FRONT_BUTTONS: "Ändra frontknappar"
|
||||
STR_OPDS_BROWSER: "OPDS-webbläsare"
|
||||
STR_SEARCH: "Sök"
|
||||
STR_COVER_CUSTOM: "Omslag + Valfri"
|
||||
STR_QUICK_RESUME: "Snabb återupptagning"
|
||||
STR_MENU_RECENT_BOOKS: "Senaste böckerna"
|
||||
STR_REMOVE_FROM_RECENTS: "Ta bort från Senaste böckerna?"
|
||||
STR_NO_RECENT_BOOKS: "Inga senaste böcker"
|
||||
|
||||
@@ -211,11 +211,12 @@ STR_THEME_CLASSIC: "Klasik"
|
||||
STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Genişletilmiş"
|
||||
STR_SUNLIGHT_FADING_FIX: "Güneş Işığı Solma Düzeltmesi"
|
||||
STR_SEAMLESS_SLEEP: "Sayfa uyku ekranı"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Zaman aşımında Hızlı Devam"
|
||||
STR_AFTER_TIMEOUT: "Zaman aşımında"
|
||||
STR_REMAP_FRONT_BUTTONS: "Ön Tuşları Yeniden Ata"
|
||||
STR_OPDS_BROWSER: "OPDS Tarayıcı"
|
||||
STR_COVER_CUSTOM: "Kapak + Özel"
|
||||
STR_QUICK_RESUME: "Hızlı Devam"
|
||||
STR_MENU_RECENT_BOOKS: "Son Kitaplar"
|
||||
STR_REMOVE_FROM_RECENTS: "Son Kitaplar listesinden kaldırılsın mı?"
|
||||
STR_NO_RECENT_BOOKS: "Son okunan kitap yok"
|
||||
|
||||
@@ -242,12 +242,13 @@ STR_THEME_LYRA: "Lyra"
|
||||
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
|
||||
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
|
||||
STR_SUNLIGHT_FADING_FIX: "Виправлення вицвітання на сонці"
|
||||
STR_SEAMLESS_SLEEP: "Сторінка як екран сну"
|
||||
STR_QUICK_RESUME_TIMEOUT: "Швидке продовження після таймауту"
|
||||
STR_AFTER_TIMEOUT: "Після таймауту"
|
||||
STR_REMAP_FRONT_BUTTONS: "Налаштувати передні кнопки"
|
||||
STR_OPDS_BROWSER: "Браузер OPDS"
|
||||
STR_SEARCH: "Пошук"
|
||||
STR_COVER_CUSTOM: "Обкл. + власне"
|
||||
STR_QUICK_RESUME: "Швидке продовження"
|
||||
STR_MENU_RECENT_BOOKS: "Останні книги"
|
||||
STR_REMOVE_FROM_RECENTS: "Видалити з останніх книг?"
|
||||
STR_NO_RECENT_BOOKS: "Немає останніх книг"
|
||||
|
||||
+1
-1
@@ -89,7 +89,7 @@ build_flags =
|
||||
${base.build_flags}
|
||||
-DCROSSPOINT_VERSION=\"${crosspoint.version}-rc+${sysenv.CROSSPOINT_RC_HASH}\"
|
||||
-DENABLE_SERIAL_LOG
|
||||
-DLOG_LEVEL=1 ; Set log level to info for release candidate builds
|
||||
-DLOG_LEVEL=1 ; Set log level to info for release candidate builds
|
||||
|
||||
[env:slim]
|
||||
extends = base
|
||||
|
||||
@@ -79,6 +79,12 @@ void CrossPointSettings::validateFrontButtonMapping(CrossPointSettings& settings
|
||||
}
|
||||
}
|
||||
|
||||
void CrossPointSettings::normalizeDependentSettings(CrossPointSettings& settings) {
|
||||
if (settings.sleepScreen == SLEEP_SCREEN_MODE::QUICK_RESUME) {
|
||||
settings.quickResumeSleepScreen = QUICK_RESUME_SLEEP_SCREEN::QUICK_RESUME_AFTER_TIMEOUT;
|
||||
}
|
||||
}
|
||||
|
||||
bool CrossPointSettings::saveToFile() const {
|
||||
Storage.mkdir("/.crosspoint");
|
||||
return JsonSettingsIO::saveSettings(*this, SETTINGS_FILE_JSON);
|
||||
|
||||
@@ -24,6 +24,7 @@ class CrossPointSettings {
|
||||
COVER = 3,
|
||||
BLANK = 4,
|
||||
COVER_CUSTOM = 5,
|
||||
QUICK_RESUME = 6,
|
||||
SLEEP_SCREEN_MODE_COUNT
|
||||
};
|
||||
enum SLEEP_SCREEN_COVER_MODE { FIT = 0, CROP = 1, SLEEP_SCREEN_COVER_MODE_COUNT };
|
||||
@@ -155,11 +156,10 @@ class CrossPointSettings {
|
||||
|
||||
enum TILT_PAGE_TURN { TILT_OFF = 0, TILT_NORMAL = 1, TILT_NVERTED = 2, TILT_PAGE_TURN_COUNT };
|
||||
|
||||
enum SEAMLESS_SLEEP_SCREEN {
|
||||
SEAMLESS_NEVER = 0,
|
||||
SEAMLESS_AFTER_TIMEOUT = 1,
|
||||
SEAMLESS_ALWAYS = 2,
|
||||
SEAMLESS_SLEEP_SCREEN_COUNT
|
||||
enum QUICK_RESUME_SLEEP_SCREEN {
|
||||
QUICK_RESUME_NEVER = 0,
|
||||
QUICK_RESUME_AFTER_TIMEOUT = 1,
|
||||
QUICK_RESUME_SLEEP_SCREEN_COUNT
|
||||
};
|
||||
|
||||
// Sleep screen settings
|
||||
@@ -249,8 +249,8 @@ class CrossPointSettings {
|
||||
uint8_t tiltPageTurn = TILT_OFF;
|
||||
// Language setting (Language enum index, default 0 = EN)
|
||||
uint8_t language = 0;
|
||||
// Seamless sleep: keep current content visible with moon icon instead of showing sleep screen
|
||||
uint8_t seamlessSleepScreen = SEAMLESS_NEVER;
|
||||
// Quick Resume: keep current content visible with moon icon instead of showing a static sleep screen.
|
||||
uint8_t quickResumeSleepScreen = QUICK_RESUME_NEVER;
|
||||
|
||||
~CrossPointSettings() = default;
|
||||
|
||||
@@ -275,6 +275,7 @@ class CrossPointSettings {
|
||||
bool loadFromFile();
|
||||
|
||||
static void validateFrontButtonMapping(CrossPointSettings& settings);
|
||||
static void normalizeDependentSettings(CrossPointSettings& settings);
|
||||
|
||||
private:
|
||||
bool loadFromBinaryFile();
|
||||
|
||||
@@ -223,6 +223,10 @@ bool JsonSettingsIO::loadSettings(CrossPointSettings& s, const char* json, bool*
|
||||
}
|
||||
}
|
||||
|
||||
const uint8_t quickResumeBeforeNormalize = s.quickResumeSleepScreen;
|
||||
CrossPointSettings::normalizeDependentSettings(s);
|
||||
if (s.quickResumeSleepScreen != quickResumeBeforeNormalize && needsResave) *needsResave = true;
|
||||
|
||||
// Front button remap — managed by RemapFrontButtons sub-activity, not in SettingsList.
|
||||
using S = CrossPointSettings;
|
||||
s.frontButtonBack =
|
||||
|
||||
+3
-3
@@ -106,15 +106,15 @@ inline std::vector<SettingInfo> getSettingsList(const SdCardFontRegistry* regist
|
||||
// --- Display ---
|
||||
SettingInfo::Enum(StrId::STR_SLEEP_SCREEN, &CrossPointSettings::sleepScreen,
|
||||
{StrId::STR_DARK, StrId::STR_LIGHT, StrId::STR_CUSTOM, StrId::STR_COVER, StrId::STR_NONE_OPT,
|
||||
StrId::STR_COVER_CUSTOM},
|
||||
StrId::STR_COVER_CUSTOM, StrId::STR_QUICK_RESUME},
|
||||
"sleepScreen", StrId::STR_CAT_DISPLAY),
|
||||
SettingInfo::Enum(StrId::STR_SLEEP_COVER_MODE, &CrossPointSettings::sleepScreenCoverMode,
|
||||
{StrId::STR_FIT, StrId::STR_CROP}, "sleepScreenCoverMode", StrId::STR_CAT_DISPLAY),
|
||||
SettingInfo::Enum(StrId::STR_SLEEP_COVER_FILTER, &CrossPointSettings::sleepScreenCoverFilter,
|
||||
{StrId::STR_NONE_OPT, StrId::STR_FILTER_CONTRAST, StrId::STR_INVERTED},
|
||||
"sleepScreenCoverFilter", StrId::STR_CAT_DISPLAY),
|
||||
SettingInfo::Enum(StrId::STR_SEAMLESS_SLEEP, &CrossPointSettings::seamlessSleepScreen,
|
||||
{StrId::STR_NEVER, StrId::STR_AFTER_TIMEOUT, StrId::STR_ALWAYS}, "seamlessSleepScreen",
|
||||
SettingInfo::Enum(StrId::STR_QUICK_RESUME_TIMEOUT, &CrossPointSettings::quickResumeSleepScreen,
|
||||
{StrId::STR_STATE_OFF, StrId::STR_STATE_ON}, "quickResumeSleepScreen",
|
||||
StrId::STR_CAT_DISPLAY),
|
||||
SettingInfo::Enum(StrId::STR_HIDE_BATTERY, &CrossPointSettings::hideBatteryPercentage,
|
||||
{StrId::STR_NEVER, StrId::STR_IN_READER, StrId::STR_ALWAYS}, "hideBatteryPercentage",
|
||||
|
||||
@@ -19,12 +19,12 @@
|
||||
void SleepActivity::onEnter() {
|
||||
Activity::onEnter();
|
||||
|
||||
const bool renderSeamless =
|
||||
SETTINGS.seamlessSleepScreen == CrossPointSettings::SEAMLESS_SLEEP_SCREEN::SEAMLESS_ALWAYS ||
|
||||
const bool renderQuickResume =
|
||||
SETTINGS.sleepScreen == CrossPointSettings::SLEEP_SCREEN_MODE::QUICK_RESUME ||
|
||||
(fromTimeout &&
|
||||
SETTINGS.seamlessSleepScreen == CrossPointSettings::SEAMLESS_SLEEP_SCREEN::SEAMLESS_AFTER_TIMEOUT);
|
||||
SETTINGS.quickResumeSleepScreen == CrossPointSettings::QUICK_RESUME_SLEEP_SCREEN::QUICK_RESUME_AFTER_TIMEOUT);
|
||||
|
||||
if (renderSeamless) {
|
||||
if (renderQuickResume) {
|
||||
return renderLastScreenSleepScreen();
|
||||
}
|
||||
|
||||
|
||||
@@ -253,6 +253,7 @@ void SettingsActivity::toggleCurrentSetting() {
|
||||
return;
|
||||
}
|
||||
|
||||
CrossPointSettings::normalizeDependentSettings(SETTINGS);
|
||||
SETTINGS.saveToFile();
|
||||
}
|
||||
|
||||
|
||||
+6
-5
@@ -243,16 +243,17 @@ void enterDeepSleep(bool fromTimeout = false) {
|
||||
HalPowerManager::Lock powerLock; // Ensure we are at normal CPU frequency for sleep preparation
|
||||
APP_STATE.lastSleepFromReader = activityManager.isReaderActivity();
|
||||
|
||||
const bool isSeamless = SETTINGS.seamlessSleepScreen == CrossPointSettings::SEAMLESS_SLEEP_SCREEN::SEAMLESS_ALWAYS ||
|
||||
(fromTimeout && SETTINGS.seamlessSleepScreen ==
|
||||
CrossPointSettings::SEAMLESS_SLEEP_SCREEN::SEAMLESS_AFTER_TIMEOUT);
|
||||
APP_STATE.showBootScreen = !isSeamless;
|
||||
const bool isQuickResumeSleep =
|
||||
SETTINGS.sleepScreen == CrossPointSettings::SLEEP_SCREEN_MODE::QUICK_RESUME ||
|
||||
(fromTimeout &&
|
||||
SETTINGS.quickResumeSleepScreen == CrossPointSettings::QUICK_RESUME_SLEEP_SCREEN::QUICK_RESUME_AFTER_TIMEOUT);
|
||||
APP_STATE.showBootScreen = !isQuickResumeSleep;
|
||||
|
||||
APP_STATE.saveToFile();
|
||||
|
||||
activityManager.goToSleep(fromTimeout);
|
||||
|
||||
if (isSeamless) {
|
||||
if (isQuickResumeSleep) {
|
||||
saveSleepFrameBuffer();
|
||||
}
|
||||
|
||||
|
||||
@@ -1274,6 +1274,7 @@ void CrossPointWebServer::handlePostSettings() {
|
||||
}
|
||||
}
|
||||
|
||||
CrossPointSettings::normalizeDependentSettings(SETTINGS);
|
||||
SETTINGS.saveToFile();
|
||||
|
||||
LOG_DBG("WEB", "Applied %d setting(s)", applied);
|
||||
|
||||
Reference in New Issue
Block a user