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
1.7 KiB
1.7 KiB
Merge upstream master (CSS perf #779) into mod/master-img
Date: 2026-02-15
Task
Merge the latest changes from master (upstream) into mod/master-img.
Changes Merged
One upstream commit: 46c2109 perf: Improve large CSS files handling (#779)
This commit significantly refactored the CSS subsystem:
- Streaming CSS parser with
StackBufferfor zero-heap parsing - Extracted
parseDeclarationIntoStyle()from inline logic - Rule limits and selector validation
CssParsernow owns itscachePathand manages caching internally- CSS loading skipped when "Book's Embedded Style" is off
Conflicts Resolved
Section.cpp (2 regions)
- Combined mod's image support variables (
contentBase,imageBasePath) with master's new CSS parser loading pattern (cssParser->loadFromCache()) - Merged constructor call: kept mod's
epub,contentBase,imageBasePathparams while adopting master'scssParserlocal variable pattern - Added master's
cssParser->clear()calls on error/success paths
CssParser.cpp (1 region)
- Accepted master's complete rewrite of the CSS parser
- Ported mod's
widthCSS property handler into the newparseDeclarationIntoStyle()function
Auto-merged Files Verified
CssStyle.h:widthproperty and supporting code preservedplatformio.ini:PNGdeclibrary andPNG_MAX_BUFFERED_PIXELSpreserved;[env:mod]section intact; master'sgnu++2aandbuild_unflagsappliedChapterHtmlSlimParser.h: image/table support members preservedRecentBooksStore.cpp:removeBook()method preservedEpub.cpp,Epub.h,CssParser.h,ReaderActivity.cpp: auto-merged cleanly
Build Result
pio run -e modsucceeded with zero errors
Commit
744d616 Merge branch 'master' into mod/master-img