Repository navigation
Fix AppImage emoji freeze (#45), close prompt option (#40), list editing - #46
Merged
Merged
Conversation
AppImage (#45): the bundled WebKit's Skia aborts the web process on gradient COLRv1 emoji (e.g. U+1F50D with Fedora's Noto), freezing the window. Inside the AppImage only, hide colour fonts from fontconfig and allow back a bundled bitmap (CBDT) Noto Color Emoji, fetched pinned and checksummed in CI and added through tauri.appimage.conf.json. Close prompt (#40): Settings > Files > "When closing unsaved" can ask "Save changes?" (Save / Don't Save / Cancel) instead of "Close without saving?". A sarala-settings.json next to the app makes settings portable. Settings are now saved atomically. Lists: Enter at the end of an item's first line, when the item has a heading or paragraph below, adds a line inside the item instead of leaving that content under an empty item as a code block. Enter on an indented line stays in the item instead of splitting the list. Numbers are drawn the same way rendered and live, so they no longer jump. Context menu: Copy, Cut and Copy as... act on the selection again (the menu taking focus cleared it, or ended the edit); Copy as Markdown/HTML copy the selection, not the whole document. Autosave: declining "Restore unsaved changes?" keeps the autosave (offered again when the file is opened) instead of deleting it, and the prompt runs once per session so reloads can't stack it. Status bar: the format readout no longer wraps and grows the bar when the caret position gets longer.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #45. Fixes #40.
AppImage freeze on some emoji (#45)
The AppImage's bundled WebKit (Skia built with assertions) aborts the web process when it paints a gradient COLRv1 emoji, such as U+1F50D with Fedora's Noto Color Emoji, so the window freezes. Inside the AppImage only, Sarala now writes a fontconfig config that hides colour fonts and allows back a bundled bitmap (CBDT) Noto Color Emoji, and points
FONTCONFIG_FILEat it before any thread starts (src-tauri/src/appimage_fonts.rs). The font is fetched pinned and SHA-256 checked byscripts/fetch-emoji-font.shand added only to the AppImage viasrc-tauri/tauri.appimage.conf.json; CI checks the AppImage contains it. Other packages use the system WebKit and are unchanged.Verified with fontconfig against a real COLRv1 font: the COLRv1 font is hidden and U+1F50D resolves to the bundled font. Not yet run on Fedora.
Close prompt option and portable settings (#40)
sarala-settings.jsonnext toSarala.exe, the.AppImageorSarala.appmakes settings read and write there. Settings saves are now atomic.Editor fixes
Tests: typecheck, lint, the full JS suite (new list Enter and autosave checks) and the new Rust tests pass.