Files
crosspoint-reader-mod/chat-summaries/2026-02-19_10-46-summary.md
cottongin dfbc931c14 mod: Phase 1 - bring forward mod-exclusive files with ActivityManager migration
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
2026-03-07 15:10:00 -05:00

50 lines
2.7 KiB
Markdown

# 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-sync` from `mod/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.cpp` to use `LyraTheme` for LYRA_3_COVERS variant
- Updated `open-x4-sdk` submodule to `91e7e2b` (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.0` into `mod/master` when ready
- On-device smoke testing (book loading, images, tables, bookmarks, dictionary, sleep screen, clock, home screen)
- Safety branch `mod/backup-pre-sync` available for rollback if needed