Skip to content

Release 1.1.23: the left-edge swipe works under gesture navigation, and databases get a menu - #73

Merged
adibhanna merged 2 commits into
mainfrom
release/1.1.23
Sep 17, 2026
Merged

adibhanna merged 2 commits into
mainfrom
release/1.1.23

Conversation

@adibhanna

Copy link
Copy Markdown
Contributor

Summary

Release 1.1.23 (versionCode 26). Two fixes prompted by a Play Store review; the vendored core stays at app core 2.51.0.

  • The left-edge swipe opens Browse under gesture navigation. Android takes every swipe that starts at a screen edge as Back: the WebView received touchstart then touchcancel, Browse never opened, the swipe navigated back, and from Home it left the app. The new Android-only EdgeSwipePlugin excludes a 32dp x 200dp band of the left edge, centred mid-screen, from the Back gesture (200dp is the most Android honours per edge), as androidx DrawerLayout does for its drawer. The shell claims the band on the phone layout while the drawer is closed and releases it while the drawer is open, so Back still closes it. Back keeps working above and below the band and along the whole right edge.
  • Databases get a long-press menu in Browse. Long-pressing a database went straight to the delete confirmation. It now opens the sheet folders use, with Rename (requestRenameBrowseDatabase) and Delete.
  • The Swipe gestures setting no longer claims the edge swipe "always opens Browse"; it says where it works and points at the flick options, which already open Browse or the outline from anywhere on a note.
  • README lists the new plugin as an Android-only divergence. MobileDrawer.tsx is shared with the iPhone shell, so the database menu should be ported there; the plugin has no iOS counterpart because iOS has no edge Back gesture.

Not in this release: the command-palette focus fix (#65) and moving folders or databases. Both are committed to the desktop v2.52.0 branch and arrive when that core is published and vendored.

Validation

  • 149 tests, boundary check, typecheck, production web build, Capacitor sync, native unit tests, lint, debug build, and the signed release bundle passed.
  • Android 15 emulator with gesture navigation (navigation_mode 2), build from 67765e3: upgrade from 1.1.22 over existing data; Android holds mSystemGestureExclusion=SkRegion((0,974,84,1499)) while the drawer is closed and an empty region while it is open; a left-edge swipe mid-screen opens Browse, Back from that edge closes the open drawer, and the same swipe near the top of the screen is still Back; long-pressing a database opens "Database actions" (Rename, Delete), the backdrop closes it, and the next tap opens a note; renaming a database renamed its .base folder on disk with its contents intact; an edit autosaved to the device filesystem and a cold relaunch restored it; no crashes or console errors.
  • Signed AAB built from the committed tree: sha256 4a31a71df8cdc7757c792267eb85b8fe0fb7b796506de587e949bd64adbaafd8; all 469 web assets match dist/ byte for byte.

After merge

Tag v1.1.23 on the merge commit and attach the Play-signed universal APK after confirming it contains no com.pairip code and no CHECK_LICENSE permission.

…atabases get a menu

A Play Store review reported that the sidebars "don't appear as intended"
because of gesture control, and that databases could not be managed like
folders.

Android gesture navigation takes every swipe that starts at a screen edge
as Back. The WebView received touchstart then touchcancel, Browse never
opened, the swipe navigated back instead, and from Home it left the app.
EdgeSwipePlugin excludes a 32dp x 200dp band of the left edge, centred
mid-screen, from the Back gesture (200dp is the most Android honours per
edge), as androidx DrawerLayout does for its drawer. The shell claims the
band on the phone layout while the drawer is closed and releases it while
the drawer is open, so Back still closes the drawer. Back keeps working
above and below the band and along the whole right edge. Android-only;
iOS has no edge Back gesture.

The Swipe gestures setting said the edge swipe "always opens Browse",
which was false here. It now says where the swipe works and points at the
flick options, which already open Browse or the outline from anywhere on
a note.

Long-pressing a database in Browse went straight to the delete
confirmation. It now opens the same sheet folders use, with Rename
(requestRenameBrowseDatabase, public since core 2.51.0) and Delete.
Moving a database needs a core action that ships with a later core.

Verified on the Android 15 emulator with gesture navigation: Android holds
the exclusion region while the drawer is closed and drops it while open; a
left-edge swipe mid-screen opens Browse, the same swipe near the top is
still Back, and Back closes the open drawer; renaming a database through
the new sheet renamed its folder on disk with its contents intact.
@adibhanna
adibhanna merged commit 7e2474c into main Sep 17, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant