mirror of
https://github.com/tauri-apps/plugins-workspace.git
synced 2026-10-18 23:07:27 +02:00
4356356dab3b87faffcc2f0fc62aec23aede78cc
* experimenting... Signed-off-by: BestCodes <106822363+The-Best-Codes@users.noreply.github.com> * omit unconfirmed fact from .changes Signed-off-by: BestCodes <106822363+The-Best-Codes@users.noreply.github.com> * fix(notification): send untracked Linux notifications on the shared connection Holding notify-rust's handle with `on_close` blocked an async runtime worker until the server closed the notification, and opened a D-Bus connection per notification. Since GNOME keeps notifications in its tray, a handful of them could stall every async task of the app. Send every notification on the connection the plugin already keeps open for its action listener instead: it keeps the sender's name alive for GNOME at the cost of a single connection and thread, and the listener runs the `on_close` callbacks. * fix(notification): offer `on_close` on the BSDs too The BSDs share the D-Bus implementation with Linux, including the GNOME issue, so gate `NotificationBuilder::on_close` like the rest of that implementation and document when the callback runs. * fix(notification): run `on_close` without the tracker lock held The callback ran on the listener thread while the guard of the callback map was alive, and a panic in it ended that thread, which then reported no action of any notification for the rest of the app's life. Take the callback out of the map before running it and contain its panics. * fix(notification): use the covector package names in the change files `tauri-plugin-notification` and `@tauri-apps/plugin-notification` are not packages of .changes/config.json, so covector refused the change file. Use `notification` and `notification-js`, and record the new `on_close` API as a feature of its own. Also let `on_close` take an `FnOnce`, since it runs at most once. --------- Signed-off-by: BestCodes <106822363+The-Best-Codes@users.noreply.github.com> Co-authored-by: Lucas Nogueira <lucas@tauri.app>
fix(biometric) Incorrect error reported on Android with no device passcode set and fallback allowed (#2648)
Official Tauri Plugins
This repo and all plugins require a Rust version of at least 1.90
Plugins Found Here
| Win | Mac | Lin | iOS | And | ||
|---|---|---|---|---|---|---|
| autostart | Automatically launch your app at system startup. | ✅ | ✅ | ✅ | ❌ | ❌ |
| barcode-scanner | Allows your mobile application to use the camera to scan QR codes, EAN-13 and other kinds of barcodes. | ? | ? | ? | ✅ | ✅ |
| biometric | Prompt the user for biometric authentication on Android and iOS. | ? | ? | ? | ✅ | ✅ |
| cli | Parse arguments from your Command Line Interface | ✅ | ✅ | ✅ | ❌ | ❌ |
| clipboard-manager | Read and write to the system clipboard. | ✅ | ✅ | ✅ | ✅ | ✅ |
| deep-link | Set your Tauri application as the default handler for an URL. | ✅ | ✅ | ✅ | ✅ | ✅ |
| dialog | Native system dialogs for opening and saving files along with message dialogs. | ✅ | ✅ | ✅ | ✅ | ✅ |
| fs | Access the file system. | ✅ | ✅ | ✅ | ? | ? |
| geolocation | Get and track current device position. | ? | ? | ? | ✅ | ✅ |
| global-shortcut | Register global shortcuts. | ✅ | ✅ | ✅ | ? | ? |
| haptics | Haptic feedback and vibrations. | ? | ? | ? | ✅ | ✅ |
| http | Access the HTTP client written in Rust. | ✅ | ✅ | ✅ | ✅ | ✅ |
| localhost | Use a localhost server in production apps. | ✅ | ✅ | ✅ | ? | ? |
| log | Configurable logging. | ✅ | ✅ | ✅ | ✅ | ✅ |
| nfc | Read and write NFC tags on Android and iOS. | ? | ? | ? | ✅ | ✅ |
| notification | Send message notifications (brief auto-expiring OS window element) to your user. Can also be used with the Notification Web API. | ✅ | ✅ | ✅ | ✅ | ✅ |
| opener | Open files and URLs using their default application. | ✅ | ✅ | ✅ | ✅ | ✅ |
| os | Read information about the operating system. | ✅ | ✅ | ✅ | ✅ | ✅ |
| persisted-scope | Persist runtime scope changes on the filesystem. | ✅ | ✅ | ✅ | ? | ? |
| positioner | Move windows to common locations. | ✅ | ✅ | ✅ | ❌ | ❌ |
| process | This plugin provides APIs to access the current process. To spawn child processes, see the shell plugin. |
✅ | ✅ | ✅ | ? | ? |
| shell | Access the system shell. Allows you to spawn child processes and manage files and URLs using their default application. | ✅ | ✅ | ✅ | ? | ? |
| single-instance | Ensure a single instance of your tauri app is running. | ✅ | ✅ | ✅ | ❌ | ❌ |
| sql | Interface with SQL databases. | ✅ | ✅ | ✅ | ✅ | ✅ |
| store | Persistent key value storage. | ✅ | ✅ | ✅ | ✅ | ✅ |
| stronghold | Encrypted, secure database. | ✅ | ✅ | ✅ | ? | ? |
| updater | In-app updates for Tauri applications. | ✅ | ✅ | ✅ | ❌ | ❌ |
| upload | Tauri plugin for file uploads through HTTP. | ✅ | ✅ | ✅ | ✅ | ✅ |
| websocket | Open a WebSocket connection using a Rust client in JS. | ✅ | ✅ | ✅ | ? | ? |
| window-state | Persist window sizes and positions. | ✅ | ✅ | ✅ | ❌ | ❌ |
- ✅: (Partially) Supported
- ❌: Not supported
?: Unknown/Untested or Planned
Contributing
PRs accepted. Please make sure to read the Contributing Guide before making a pull request.
Partners
|
|
For the complete list of sponsors please visit our website and Open Collective.
Languages
Rust
57%
TypeScript
25.4%
Kotlin
9.8%
Swift
5.5%
JavaScript
1.4%
Other
0.8%