Commit Graph
12 Commits
Author SHA1 Message Date
reya 4b6f4b3797 chore: refactor middle-click paste 2026-10-10 08:10:57 +07:00
vbmithrandreya 4ef764984b feat: support middle-click paste in text fields (#60)
Selecting an nsec in another Linux application and middle-clicking Coop's identity import field currently does nothing. The shared input widget handles left and right clicks but never reads the primary selection for a middle click.

Add middle-click paste from PRIMARY on Linux and FreeBSD, inserting at the nearest visible caret to the click. Read the selection before changing focus, preserve disabled/read-only inputs, strip line breaks in single-line fields, and use the input state's atomic insertion path so Undo removes the paste. Also register Shift+Insert for standard clipboard paste on non-macOS platforms. The existing right-click editing menu and Ctrl+V/Cmd+V remain available.

Document the gestures in the README. Enable GPUI test support for the UI crate; the lockfile additions are its test dependencies.

Validation:

- `cargo check -p ui --locked`
- `cargo test -p ui --lib --locked` — all five tests pass, including empty-field paste, Unicode caret placement, primary/clipboard separation, Undo, and disabled/read-only protection
- `git -c core.whitespace=cr-at-eol diff --check` (preserves the existing CRLF Cargo manifest)

Validated with GPUI's simulated input and clipboard platform; no live X11/Wayland compositor test was performed.

Release Notes:

- Fixed middle-click paste in Linux text fields, including identity import, and added Shift+Insert clipboard paste.

Reviewed-on: reya/coop#60
Co-authored-by: Vincent Bernardoff <vb@luminar.eu.org>
2026-10-10 00:28:07 +00:00
reya fbf06f2c81 chore: refine some ui components (#38)
Reviewed-on: https://git.reya.su/reya/coop/pulls/38
2026-08-01 10:38:08 +00:00
reya 2e451aae12 chore: fix ci and clean up 2026-05-30 07:51:04 +07:00
reya d6edc8b546 chore: update metadata and version 2025-08-05 15:06:51 +07:00
reya 053ecc6a15 chore: update readme 2025-08-05 13:22:29 +07:00
alltheseasandGitHub 9f02942d87 Update README.md with additional Linux prerequisites (#90)
Updated README.md with Linux prerequisites - openSSL, X11, build-essential
2025-07-16 07:19:54 +07:00
reya 41d2a04bd1 chore: fix ci 2025-02-13 14:51:02 +07:00
reya e69096a21e chore: fix readme 2025-02-13 14:08:17 +07:00
reya f831622510 chore: update readme 2025-02-13 14:07:41 +07:00
reya c60a37a245 wip: startup flow 2024-11-21 08:43:42 +07:00
reya 4d8a1d44cc initial commit 2024-11-19 08:23:43 +07:00