Release 1.1.18: Home Screen widgets (app core 2.46.0) - #60
Merged
Merged
Conversation
Port of the iPhone shell's widgets (zennotesiphone release/1.9.9): New Note (2x2), Recent Notes and Today's Tasks (4x2 and up, resizable, scrolling lists), on the same src/bridge/widgets.ts publisher and snapshot contract, rendered as classic RemoteViews in Java (md.zennotes.widgets) so the build stays Java-only. The snapshot lives in the app's private files (files/widgets/snapshot.json), written by WidgetBridgePlugin; the two list widgets are RemoteViewsService-backed; colors come from the app's live theme; every tap is an ACTION_VIEW zennotes:// intent into the single-task MainActivity. Pins are keyed by vault.root here. At boot the shell reads ZenWidgets.consumeLaunchLink(), stashed by MainActivity from onCreate and onNewIntent, because Capacitor's getLaunchUrl captures the activity's intent once and an activity recreated into its old task reports the task's original intent there; the real tap only arrives as a retained appUrlOpen the Cloud auth listener consumes. mobile-cloud-auth.ts now only takes zennotes://auth. RemoteViews gotchas baked in: dividers are 1dp FrameLayouts (a plain View makes the launcher show "Can't load widget"), and the widget layouts carry tools:ignore="UseAppTint" since RemoteViews cannot use app:tint. Verified on the Pixel 7 API 35 AVD: picker previews, all three placed, New Note, note rows and task rows warm and after a real process kill; testDebugUnitTest, lintDebug and assembleDebug pass.
versionCode 20, versionName 1.1.18; package.json and the bridge's appVersion follow. Home Screen widgets; the pin stays at a3e638fc (2.46.0 plus the lockfile fix).
1.1.17 (versionCode 19) was merged without a Play submission, so 20 (1.1.18) is the first Play update with app core 2.46. The submitted notes mention both the widgets and the 2.46 changes; this mirrors the text sent to Play (496 chars).
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.18 (versionCode 20): Home Screen widgets
Home Screen widgets, in step with iPhone 1.9.9. Three of them, zero configuration, wearing whatever theme the app wears. The app core stays at 2.46.0; the pin moves to
a3e638fc(2.46.0 plus the js-yaml / svgo lockfile fix for the advisories published on 2026-09-08).What ships
md.zennotes.widgets, no Glance, no Kotlin. The shell publishes a snapshot (titles, paths, dates, task lines, theme colors; no note bodies) intofiles/widgets/snapshot.jsonthroughWidgetBridgePlugin.java, throttled to one refresh per 8 s while typing and flushed on backgrounding. Taps arezennotes://view intents; at boot the shell asks the plugin for the newest link it saw instead of Capacitor'sgetLaunchUrl.docs/releases/v1.1.18/(a6df18f), with the Play notes updated to carry the 2.46 changes (1f03247).Play note
1.1.17 (versionCode 19) was merged in #57 without a Play submission, so this is the first Play update carrying app core 2.46. The Play release notes for 20 (1.1.18) mention both the widgets and the 2.46 changes.
Verification (2026-09-08/09)
npm run typecheckclean,npm test50/50,bundleReleasesigned with the upload key; merged manifest versionCode 20 / 1.1.18; AAB sha256eaf35e89ecd9049826fe8fbbf308bbbd723cc2b107d89893d22967ff9da0bc37.Same round ships as ZenNotes for iOS 1.9.9.