Skip to content

Add robius-share: abstractions for cross-platform share sheets - #8

Merged
kevinaboos merged 13 commits into
mainfrom
share_sheet
Jul 7, 2026
Merged

Add robius-share: abstractions for cross-platform share sheets#8
kevinaboos merged 13 commits into
mainfrom
share_sheet

Conversation

@kevinaboos

@kevinaboos kevinaboos commented Jun 16, 2026

Copy link
Copy Markdown
Member

Testing status:

  • Linux X11
  • Linux Wayland
  • Windows
  • macOS
  • iOS
  • Android

… Android

* Android: support sharing filesystem paths and URIs by copying them
  to a MediaStore Downloads item on API 29+ (Android 10+), with a
  text-file fallback on older versions (Android 8+).
* Windows: run `fill_request` on a background thread, then defer it
  to a `DataRequest` before handing those paths to `STorageFile`.
* Linux: make sure shared files are accessible with the right mode bits
@kevinaboos kevinaboos changed the title Add cross-platform share sheet crate Add robius-share: abstractions for cross-platform share sheets Jun 17, 2026
and we also added a cool feature where sharing a mixed payload
(multiple items) now prompts the user to save them all to a
directory of their choice.
@kevinaboos
kevinaboos marked this pull request as ready for review July 7, 2026 18:41
* Android: move file prep off main UI thread, preserve MIME types
* Linux: return errors for single-item sharing
* Windows: unregister the share handler after each request
  instead of doing it upon the next request (which may never come)
* Set `robius-share` MSRV to Rust 1.77.0, such that we're not confused
  about which version of Rust we can use (esp regarding unsafe)
* Use resolver v2 and the 2021 edition of Rust, since 2024 wasn't needed
@kevinaboos

Copy link
Copy Markdown
Member Author

after the latest changes, i re-tested on windows, Linux X11, Linux wayland, iOS, macOS, and Android. All good!

@kevinaboos
kevinaboos merged commit 5347622 into main Jul 7, 2026
@kevinaboos
kevinaboos deleted the share_sheet branch July 7, 2026 21:28
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