Commit Graph

46 Commits

Author SHA1 Message Date
Andrew de Waal d7a0bb325d feat(dialog) - Support fileAccessMode for open dialog (#3030) (#3136)
* feat(dialog) - Support fileAccessMode for open dialog (#3030)

On iOS, when trying to access a file that exists outside of the app sandbox, one of 2 things need to happen to be able to perform any operations on said file:

* A copy of the file needs to be made to the internal app sandbox
* The method startAccessingSecurityScopedResource needs to be called.

Previously, a copy of the file was always being made when a file was selected through the picker dialog.

While this did ensure there were no file access exceptions when reading from the file, it does not scale well for large files.

To resolve this, we now support `fileAccessMode`, which allows a file handle to be returned without copying the file to the app sandbox.

This MR only supports this change for iOS; MacOS has a different set of needs for security scoped resources.

See discussion in #3716 for more discussion of the difference between iOS and MacOS.
See MR #3185 to see how these scoped files will be accessible using security scoping.

* fmt, clippy

* use enum

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2026-01-14 08:35:06 -03:00
Andrew de Waal dff6fa986a feat(dialog) - Support picker mode for open dialog (#3030) (#3034)
Co-authored-by: Andrew de Waal <andrewldewaal@gmail.com>
2025-11-20 22:28:13 +01:00
Fabian-Lars 5438a5cd22 chore: apply clippy fixes (#3092) 2025-11-09 18:43:17 +01:00
Fabian-Lars 5cd7778723 docs(dialog): add/fix doc item links, closes #3089 (#3091) 2025-11-09 17:07:35 +01:00
Amr Bashir 509eba8d44 feat: support message dialogs with 3 buttons (#2641)
* feat: support message dialogs with 3 buttons

* change file

* From<String>

* untagged & YesNoCancel

* revert package.json

* Update plugins/dialog/src/desktop.rs

Co-authored-by: Tony <68118705+Legend-Master@users.noreply.github.com>

* no optional

* Update desktop.rs

* Update plugins/dialog/src/models.rs

Co-authored-by: Tony <68118705+Legend-Master@users.noreply.github.com>

* change to an enum

* convert back into union

* regen

* update @since

* map buttons for linux

* enhance type

* Add examples

---------

Co-authored-by: Tony <68118705+Legend-Master@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
Co-authored-by: Tony <legendmastertony@gmail.com>
2025-08-27 09:40:47 -03:00
Fabian-Lars 76f99ce999 fix(dialog): pub export Dialog (#2108)
fixes #2107
2024-11-27 11:59:55 +01:00
Fabian-Lars fecfd5533a fix(fs)!: use tauri::scope::fs::Scope (#2070) 2024-11-21 16:57:25 +02:00
Fabian-Lars 51856e9e0a docs: Remove header image from inline docs (#2045) 2024-11-13 16:07:29 +01:00
Tony 2302c2db1c fix(dialog): ask and confirm not using system button texts (#1910)
* Fix `ask`'s button texts being ok and cancel

* Update change file
2024-10-20 08:48:45 -03:00
Tony 04459afbb6 refactor(dialog)!: use enum instead of label for buttons (#1842)
* refactor(dialog)!: use enum instead of label

* Add change file

* Fix doc comment typo

* Move ok and cancel to lib.rs
2024-10-01 09:34:20 -03:00
renovate[bot] 6bf1bd8d44 fix(deps): update rust crate rfd to 0.15 (v2) (#1805)
* fix(deps): update rust crate rfd to 0.15

* Fix compilation

* Add change file

* Remove platform specific note

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Tony <legendmastertony@gmail.com>
2024-09-19 20:04:02 +08:00
Lucas Fernandes Nogueira 2b898f0786 fix(dialog): update asset protocol scope on directory open, closes #1553 (#1769) 2024-09-12 11:10:16 -03:00
Amr Bashir a2fe55512f refactor: add methods and implement traits for FilePath and SafeFilePath (#1727)
* refactor: add methods and implement traits for `FilePath` and `SafeFilePath`

closes #1726

* clippy

* path -> as_path

* fix prettierignore

* Discard changes to Cargo.lock

* Discard changes to Cargo.toml

* update tauri deps
2024-09-05 14:12:40 +03:00
Lucas Fernandes Nogueira feb1e93fcb feat(dialog): implement save API on iOS (#1707) 2024-09-02 21:13:43 -03:00
Carlos Valdez b4c95b25df chore(dialog): fix misspell "ths" to "the" (#1719) 2024-09-02 14:05:11 +02:00
mikoto2000 448846b834 feat(fs): resolve content URIs on Android (#1658)
* Implemented writeTextFile on Android.

* Added license headers.

* fix fmt checks.

* implement more file APIs

* change file

* cleanup

* refactor dialog plugin to leverage new FS APIs

* implement metadata functions

* fix build

* expose FS rust API

* resolve resources on android

* update pnpm

* update docs

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-08-23 13:35:53 -03:00
Amr Bashir f690777a91 refacator(dialog): mark FileResponse as #[non_exhaustive] (#1660)
* recator(dialog): mark `FileResponse` as `#[non_exhaustive]`

closes #1623

* change file
2024-08-21 16:14:58 +03:00
mikoto2000 bc7eecf420 feat(dialog): Implemented android save dialog. (#1657)
* Implemented android save dialog.

* small cleanup

* lint

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-08-13 08:41:30 -03:00
Ale Guzman cd57dcdf04 feat(dialog): set len and modified_at fields in FileResponse on desktop (#1295) 2024-05-14 02:09:24 +03:00
renovate[bot] faa89850d0 chore(deps): replace dependency eslint-config-standard-with-typescript with eslint-config-love 43.1.0 (#1228)
* chore(deps): replace dependency eslint-config-standard-with-typescript with eslint-config-love 43.1.0

* actually apply the rules lol

* rebuild

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: FabianLars <fabianlars@fabianlars.de>
2024-04-23 00:40:51 +02:00
Fabian-Lars bb51a41d67 feat: Remove UNC prefix in paths returned to the frontend (#1168)
* feat: Remove UNC prefix in paths returned to the frontend

* that one doesn't count

* map instead of mut

* revert accidental ipc::response change

* move dunce to workspace root
2024-04-17 15:49:32 +02:00
Naman Garg 8d7689f6f9 Add WebviewWindow to code docs and template (#1144)
* Add WebviewWindow to code docs

* Shorten the WebView Name

* Apply suggestions from code review

---------

Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>
2024-04-09 11:56:00 -03:00
Lucas Fernandes Nogueira a04ea2f382 refactor: only inject API IIFE script when withGlobalTauri is true (#1071)
* refactor: only inject API IIFE script when withGlobalTauri is true

* fmt

* update tauri
2024-03-19 15:03:20 -03:00
Fabian-Lars 35ea5956d0 fix(dialog): Create dialogs on main thread (#1073)
fixes https://github.com/tauri-apps/tauri/issues/6301
2024-03-13 15:41:23 +02:00
Fabian-Lars 16fc0f2ee3 fix(dialog): Remove Linux specific code for rfd 0.14 compatibility (#1033)
fixes #956
2024-03-06 19:38:51 +02:00
Amr Bashir aa25c91bb0 feat(dialog): allow setting canCreateDirectories on macOS (#978)
* feat(dialog): allow setting `canCreateDirectories` on macOS

closes #949

* Discard changes to plugins/log/src/api-iife.js

* Discard changes to plugins/store/src/api-iife.js

* Discard changes to plugins/window-state/src/api-iife.js

* Update plugins/dialog/src/commands.rs

Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>

* Update plugins/dialog/src/commands.rs

Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>

* Update plugins/dialog/src/lib.rs

Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>

* Update plugins/dialog/guest-js/index.ts

Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>

* Update plugins/dialog/guest-js/index.ts

Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>

---------

Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>
2024-02-23 21:05:29 +02:00
Lucas Nogueira 8461cf1d1b chore: update to tauri beta.3 2024-02-19 17:10:49 -03:00
Tony 2e7ef46d8b refactor!(dialog): change type field in JS to kind (#945)
* Fix dialog type not working

* gen files

* type -> kind

* update API example

---------

Co-authored-by: amrbashir <amr.bashir2015@gmail.com>
2024-02-14 01:05:54 +02:00
Tillmann d198c01486 feat: update to tauri beta, add permissions (#862)
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
Co-authored-by: Lucas Nogueira <lucas@crabnebula.dev>
2024-02-03 15:14:41 -03:00
Amr Bashir b1c6a7885e fix(core/dialog): reconstruct path using appropriate separator (#820)
* fix(core/dialog): reconstruct path using appropriate separator

ref: tauri-apps/tauri#8074

* Reference original issue [skip ci]
2023-12-18 21:09:04 -03:00
pashokitsme 2e2c0a1b95 fix(dialog): fix message dialog return with custom buttons, fixes #711 (#769)
* fix confirm

* remove unnecessary lines

* fix

* change file
2023-11-27 19:55:26 +02:00
FabianLars 058d5dde0d Merge remote-tracking branch 'origin/v1' into v1-into-v2-again 2023-11-23 19:59:58 +01:00
Amr Bashir 1b98b85a1f refactor: simplify rollup config and match @tauri-apps/api output style (#722)
* refactor: simplify rollup config and match `@tauri-apps/api` output style

* add license headers

* update api-iife.js [skip ci]

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-11-14 21:09:53 +02:00
Lucas Fernandes Nogueira e438e0a62d feat: update to alpha.17, typed mobile plugin IPC arguments (#676)
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2023-10-29 16:06:44 -03:00
Mo beb6b139eb Fix invoke calls in dialog & shell init scripts (#675)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-10-22 10:09:40 -03:00
Lucas Fernandes Nogueira 5c137365c6 chore: update to tauri alpha.16, api alpha.9 (#673)
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2023-10-20 13:50:18 -03:00
Lucas Fernandes Nogueira d1b7c2c1fb feat: build docs.rs documentation for Android (#654) 2023-10-19 17:39:54 +00:00
Jason Tsai be591d2feb fix(dialog): using AsyncMessageDialog for non linux, closes tauri#7182 (#445) 2023-08-07 09:34:16 -03:00
Simon Hyll 5fd597ddaf docs: added banners and icons (#443)
* added banners and icons

* fix: formatting
2023-06-20 14:55:14 +03:00
Lucas Fernandes Nogueira b131bc8f7c feat(plugins): inject API on window.__TAURI__ (#383) 2023-05-23 14:20:14 -03:00
Lucas Fernandes Nogueira fdec66c69f fix: adjust Cargo features to fix android build (#375) 2023-05-19 10:59:26 -03:00
Lucas Fernandes Nogueira caf8456864 fix: adjust feature flags, wrong zip usage (#367) 2023-05-17 18:47:12 -03:00
Lucas Fernandes Nogueira 7ae7167fbe feat: add init scripts (#361) 2023-05-17 18:25:56 -03:00
Lucas Fernandes Nogueira 702b7b36bd refactor: move deleted tauri APIs, prepare for next release (#355) 2023-05-13 12:32:30 -03:00
Lucas Fernandes Nogueira 937e6a5be6 feat: use tauri next branch, fix tests, MSRV 1.65 (#354) 2023-05-12 17:16:50 -03:00
Lucas Fernandes Nogueira 7a8633f429 feat(dialog): add plugin (#306) 2023-04-18 22:41:12 -03:00