Release 1.1.16: phone editing, tuned by hand (app core 2.45.0) - #56
Merged
Merged
Conversation
The arrow keys work in the [[, @ and / menus again in app-core, which the shell inherits; nothing else in the shell changes. Claude-Session: https://claude.ai/code/session_015HNdWonTE8g6dPY2SkdsRS
Port of the iPhone shell's 1.9.7 round (zennotesiphone 2cc9b8f + 550e246), so the two phones stay in step. Every note row now answers the drawer rows' four gestures: tap opens, long-press opens the note options sheet, swipe left reveals Archive / Delete (Restore / Delete on Archive and Trash rows), swipe right pins or unpins. - note-actions.tsx: the one options sheet plus its action helpers, lifted out of the drawer so app-core's lists share it; pins keyed by the vault root as everywhere in this shell. It carries app-core's data-ctx-menu marker so the focus heal never refocuses the editor under it, and the drawer is non-selectable so a long-press can't start a selection. - note-row-gestures.ts: the gestures layered onto app-core's DOM rows (Home Recent, Quick Notes, Tags, Archive, Trash). Chromium's real contextmenu on long-press is swallowed by its capture handler, and the shell's own long-press hook leaves note rows alone. - nav.ts installHomeGuard, installed first thing in main.tsx: app-core's rewritePathsInTree falls back to the leaf's first tab whenever the active tab is null, and refreshNotes runs it on every rescan, so Home flipped back to the first open tab (Tasks) within a second of arriving. - EditorToolbar: Bullet / Checkbox / Heading insert their marker on a blank line (app-core's setBlockType skips blank lines), and the toolbar re-reveals the caret when it mounts. - editor-keyboard-scroll: every editor view gets a scrollMargins source for the toolbar's height, and the caret is revealed as the keyboard settles — the last lines of a long note sat under the toolbar. - editor-native-typing: CodeMirror's content defaults turn the keyboard's suggestions, autocorrect and capitalization off; overridden per view via contentAttributes so the note body types like any text field.
Settings › Appearance › Start screen (phones): "Where I left off" keeps the cold-launch landing as it was; "Home" lands on Home on every cold launch. Switching to another app and back is not a launch and never moves the user. Stored like the gesture prefs and mirrored natively in bootstrap.ts so it is back in localStorage before main.tsx reads it. The Play review of 1.1.15 asked for exactly this; same setting as iPhone 1.9.7 (zennotesiphone 45a72f8).
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.
ZenNotes for Android 1.1.16 (versionCode 18): phone editing, tuned by hand
Port of the iPhone 1.9.7 round (zennotesiphone
2cc9b8f,550e246,45a72f8) so the two phones stay in step, plus app core 2.44.0 → 2.45.0 (pinned to3301a29, one commit past thev2.45.0tag and on upstreammain).What ships
note-row-gestures.ts; the sheet innote-actions.tsxis lifted out of the drawer and carriesdata-ctx-menuso app-core's focus heal never raises the keyboard under it.installHomeGuard(nav.ts, installed frommain.tsx) re-nulls the active tab thatrewritePathsInTreerestores on every rescan, so Home no longer bounces back to Tasks. Bullet / Checkbox / Heading insert their marker on a blank line; every editor view gets ascrollMarginssource for the keyboard toolbar and the caret is re-revealed as the keyboard settles; CodeMirror's content defaults that turned off the keyboard's suggestions, autocorrect and capitalization are overridden per view.bootstrap.tslike the layout and gesture prefs. The Play review of 1.1.15 asked for exactly this.vault.tsis untouched.Verification (2026-09-08)
npm run typecheckclean andnpm test38/38 on d04376a;bundleReleaseOK, manifest 1.1.16 / vc 18; AAB sha2564e9501fc8d0ecea9dfdbd5b54b4760a84467b4403cbd8c519a6f86abd499eb10; Play read it as 18 (1.1.16), API 24+, target SDK 36, all ABIs, device coverage unchanged.Release docs:
docs/releases/v1.1.16/(local). Play: 18 (1.1.16) submitted 2026-09-08, full rollout. Same round ships as ZenNotes for iOS 1.9.7.