Brings ~55 mod-exclusive files to the upstream-based mod/master-resync branch: Activities (migrated to new ActivityManager pattern): - Clock/Time: SetTimeActivity, SetTimezoneOffsetActivity, NtpSyncActivity - Dictionary: DictionaryDefinitionActivity, DictionarySuggestionsActivity, DictionaryWordSelectActivity, LookedUpWordsActivity - Bookmark: EpubReaderBookmarkSelectionActivity - Book management: BookManageMenuActivity, EndOfBookMenuActivity - OPDS: OpdsServerListActivity, OpdsSettingsActivity - Utility: DirectoryPickerActivity, NumericStepperActivity Utilities (unchanged): - BookManager, BookSettings, BookmarkStore, BootNtpSync - Dictionary, LookupHistory, TimeSync, OpdsServerStore Libraries: PlaceholderCover, TableData, ChapterXPathIndexer Scripts: inject_mod_version, generate_book_icon, preview_placeholder_cover Docs: KOReader sync XPath mapping Migration changes: - ActivityWithSubactivity -> Activity base class - Callback constructors -> finish()/setResult() pattern - enterNewActivity() -> startActivityForResult() - Activity::RenderLock&& -> RenderLock&& These files won't compile yet - they reference mod settings and I18n strings that will be added in subsequent phases. Made-with: Cursor
2.7 KiB
2.7 KiB
Sync mod/master with upstream 1.1.0-RC
Task Description
Integrated 19 missing upstream PRs from master (1.1.0-RC) into mod/master via phased cherry-picking, preserving all existing mod enhancements.
Changes Made
Branch Setup
- Created safety branch
mod/backup-pre-syncfrommod/master - Created integration branch
mod/sync-upstream-1.1.0(19 cherry-picked commits + 1 cleanup)
Phase 1: Low-Risk PRs (8 PRs)
- #646 Ukrainian hyphenation support (resolved conflict: merged with mod's
OMIT_HYPH_*conditional compilation guards) - #732 Lyra screens (resolved 5 conflicts: preserved mod's clock, 3-cover layout, cover rendering; added upstream's drawSubHeader, popup, keyboard/text field methods)
- #725 Lyra Icons (resolved conflicts: added icon infrastructure, iconForName(), Lyra icon assets; removed stale Lyra3CoversTheme.cpp)
- #768 Tweak Lyra popup UI (resolved conflicts: preserved mod's epub loading logic, added upstream popup constants)
- #880 Flash objects listing script (clean)
- #897 Keyboard font size increase (clean)
- #927 Translators list update (clean)
- #935 Missing up/down button labels (resolved conflicts: kept GUI.drawList() over old manual rendering)
Phase 2: Medium-Risk PRs (8 PRs - all applied cleanly)
- #783 KOSync repositioning fix
- #923 Bresenham line drawing
- #933 Font map lookup performance
- #944 4-bit BMP support
- #952 Skip large CSS files to prevent crashes
- #963 Word width and space calculation fix
- #964 Scale cover images up
- #970 Fix prev-page teleport to end of book
Phase 3: Large PR
- #831 Compressed fonts (30.7% flash reduction, 73 files). Resolved 2 conflicts: merged font decompressor init in main.cpp, merged clearFontCache with mod's silent indexing in EpubReaderActivity.
Phase 4: Overlap Assessment
- #556 (JPEG/PNG image support): Confirmed mod already has complete coverage. All converter files identical. No action needed.
- #980 (Basic table support): Confirmed mod's column-aligned table rendering is a strict superset. No action needed.
Post-Sync
- Removed stale
Lyra3CoversTheme.h(3-cover support merged into LyraTheme) - Fixed
UITheme.cppto useLyraThemefor LYRA_3_COVERS variant - Updated
open-x4-sdksubmodule to91e7e2b(drawImageTransparent support for Lyra Icons) - Ran clang-format on all source files
- Build verified: RAM 31.4%, Flash 57.0%
Follow-Up Items
- Merge
mod/sync-upstream-1.1.0intomod/masterwhen ready - On-device smoke testing (book loading, images, tables, bookmarks, dictionary, sleep screen, clock, home screen)
- Safety branch
mod/backup-pre-syncavailable for rollback if needed