Commit Graph

272 Commits

Author SHA1 Message Date
Fabian-Lars
38b8e67237
feat: Add support for deep links (#8680)
* initial windows impl

* macos

* adapt windows impl to config changes for macos

* debian

* add missing x-scheme-handler prefix

* bundle xdg-mime

* typo

* revert messed up fmt

* rm pnpm lock

* rm todo

* Update core/tauri-utils/src/config.rs

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>

* Update core/tauri-utils/src/config.rs

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>

* &Option<> -> Option<&>

* DL0 -> R7

---------

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2024-01-29 18:59:45 +02:00
Lucas Fernandes Nogueira
57e3d43d96
feat(acl): generate schema for scope (#8690)
* feat(acl): generate schema for scope

* allow plugin to define its global scope schema

* refactor to use schemas folder instead of individual files

* change signature

* delete .schema.json files
2024-01-29 13:36:31 -03:00
Lucas Fernandes Nogueira
11de49788a
feat(cli): migrate allowlist scope (#8698)
* feat(cli): migrate allowlist scope

* fix tests

* lint

* fix totokens impl
2024-01-29 12:50:21 -03:00
Lucas Fernandes Nogueira
fd4bf94d4c
refactor(acl): allow extending scope on the capability file (#8674) 2024-01-24 23:36:07 -03:00
Amr Bashir
734d78f736
fix: generate $schema field always with forward slash (#8673) 2024-01-24 21:57:41 -03:00
Lucas Fernandes Nogueira
30a64a9cda
refactor: global scope error handling, fix usage with multiple plugins (#8669)
* refactor: global scope error handling, fix usage with multiple plugins

* lint
2024-01-24 20:57:46 -03:00
Lucas Fernandes Nogueira
4ca0932572
chore(plugin): use BTreeMap on plugin permission map (#8668) 2024-01-24 20:53:47 -03:00
Lucas Fernandes Nogueira
c77b40324e
refactor(core): add support to multiple webviews on a Tauri window (#8280)
* feat: update to latest wry

* wry dev branch [skip ci]

* fix linux [skip ci]

* refactor(runtime): split webview and window types

* split dispatch

* implement create_webview

* move webview message

* wip webview mod

* create webview manager, finish webview struct and builder

* fix tests and docs

* rename WindowUrl to WebviewUrl

* update examples

* event refactor

* update JS API

* fix events

* update example

* add WebviewWindow class on JS

* fix macos build

* allow creating window+webview on the same runtime call

* rename tauri://window-created to tauri://webview-created

* Window::add_child

* use inner_size from webview on macOS

* add multiwebview example

* automatically resize webviews on window resize

* fix tests

* set_position, set_size

* position, size getters

* set_focus

* add close fn

* update mock runtime

* lint [skip ci]

* fix inner_size getter [skip ci]

* import hwnd [skip ci]

* update webview bound ratios on set_size/set_position

* add auto_resize option

* fix android

* fix build on windows

* typo

* with_webview isnt desktop only

* add WebviewWindow rust struct (and builder)

* fix build on android

* license header

* fix macos/windows

* fix macos build

* resolve todo

* handle window not found

* hide unstable features

* document unstable feature [skip ci]

* webview plugin permissions

* hide more stuff

* fix doctests

* typos

* add change files

* fix examples

* rename hook
2024-01-24 11:05:18 -03:00
tweidinger
3c2f79f6f3
Tauri ACL/Allowlist v2 Implementation and Plugin System Refactor (#8428)
* tauri-plugin concept

* wip

* move command module to its own directory

* wip: new command traits and generated code

* wip: whip

* wip: static dispatch

there is a man standing behind me

* wip

* re-add authority

* fix build [skip ci]

* parse plugin permissions

* merge permission files [skip ci]

* parse capabilities [skip ci]

* resolve acl (untested) [skip ci]

* split functionality, add some docs

* remove command2 stuff

* actually check runtime authority

* small fixes [skip ci]

* add function to auto generate basic permission for a command [skip ci]

* retrieve command scope, implement CommandArg [skip ci]

* fix tests [skip ci]

* global scope

* lint

* license headers [skip ci]

* skip canonicalize

* separate scope type in example

* remove inlinedpermission struct [skip ci]

* permission file schema

* capabilities schema

* move items from tauri-plugin to tauri-utils

this allows tauri-plugin to depend on tauri directly again
which will be used by the runtime feature as a superset to
existing plugin traits

* enable schema and glob [skip ci]

* fix glob [skip ci]

* fix capability schema [skip ci]

* enhance schema for permission set possible values [skip ci]

* permission set can reference other sets [skip ci]

* setup tests for resolving ACL

* fixture for permission set [skip ci]

* remote context test and small fix[skip ci]

* ignore empty scope [skip ci]

* code review [skip ci]

* lint [skip ci]

* runtime fixes

* readd schema feature on tauri-config-schema [skip ci]

* remove plugin example from workspace, it breaks workspace features resolution [skip ci]

* scope as array, add test [skip ci]

* accept new shapshot [skip ci]

* core plugin permissions, default is now a set

* license headers

* fix  on windows

* update global api

* glob is no longer optional on tauri-utils

* add missing permissions on api example [skip ci]

* remove ipc scope and dangerous remote access config

* lint

* fix asset scope usage

* create out dir [skip ci]

* reuse cargo_pkg_name [skip ci]

* capability window glob pattern [skip ci]

* add platforms for capability [skip ci]

* per platform schema [skip ci]

* lint [skip ci]

* rename allowlist build mod [skip ci]

* check restricted visibility

* simplify capability target [skip ci]

* hide codegen build behind tauri-build::try_run

* optimize build scripts [skip ci]

* fix tests

* tests for RuntimeAuthority::resolve_access

* remote domain glob pattern

* lint

---------

Co-authored-by: Chip Reed <chip@chip.sh>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
Co-authored-by: Lucas Nogueira <lucas@crabnebula.dev>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2024-01-22 21:24:15 -03:00
Palash Bansal
27bad32d4d
feat: Add files field in macos build config, closes #3290 (#7798)
* Add appContents field in macos tauri config.

* Change MacConfig::appContents to MacConfig::files to make it similar to DebConfig::files.

* Change appContents to files in helloworld/tauri.conf.json

* use common::copy_dir helper

* add change files [skip ci]

---------

Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-12-28 12:10:50 -03:00
Olivier Lemasle
091100acbb
feat(bundler): Add RPM packaging, closes #4402 (#5202)
* feat(bundler): Add RPM packaging

* feat(bundler): Update 'rpm' to 0.13.1

* Fix fmt
2023-12-23 18:38:15 +01:00
Lucas Nogueira
a9b87c057d
Merge branch '1.x' into dev 2023-12-19 13:52:53 -03:00
Amr Bashir
9b230de7bc
fix(utils/config): fix parsing f64 values, closes #8252 (#8407) 2023-12-18 18:18:44 -03:00
Lucas Nogueira
b3e53e7243
feat(core): add AssetManager::iter (#8288)
This new function allows users to iterate on all embedded assets, important if you want to AssetManager::get an asset you are not sure exists.
2023-11-23 16:12:38 +02:00
Lucas Fernandes Nogueira
32bf201655
fix(bundler): lint and cleanup for #7964 (#8275) 2023-11-20 21:09:01 -03:00
Andrew
b0c5b06d06
feat(bundler): add dmg settings, closes #4669 (#7964) 2023-11-20 18:26:02 -03:00
Amr Bashir
3b91e236c6
refactor(tauri-utils)!: remove windows_version and is_windows_7 (#8271)
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-11-20 18:21:42 -03:00
Amr Bashir
d8f1b6c59b
feat: migrate manual implementation to the light windows-version crate (#8242) 2023-11-19 08:51:17 -03:00
Amr Bashir
5e84e92e99
feat: migrate manual implementation to the light windows-version crate (#8243) 2023-11-19 08:50:36 -03:00
Lucas Fernandes Nogueira
74d2464d0e
refactor(core): implement on_page_load event using wry hook (#8116) 2023-10-27 10:00:59 -03:00
Lucas Nogueira
c6c59cf237
Merge branch '1.x' into dev 2023-10-20 08:56:02 -03:00
Lucas Fernandes Nogueira
ebcc21e4b9
refactor: change prefix of hook env vars to TAURI_ENV_, closes #8054 (#8057) 2023-10-19 10:46:04 -03:00
martin frances
8db26bd3e9
fix(core): Clippy fixes. (#7869)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-10-18 09:47:43 -03:00
Andre Lew
c1ec0f1551
feat(core): expose always_on_bottom, closes #7847 (#7933)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-10-18 09:47:24 -03:00
Jason Tsai
c085addab5
feat: set application progress bar, close #7999 (#8009)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-10-17 16:25:30 -03:00
Amr Bashir
ed32257d04
feat(windows): add tabbed effect (#7794)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-10-17 12:29:10 -03:00
Amr Bashir
a63e71f979
refactor(core&api)!: hide internal functions and reuse them in api.js & rename tauri module to primitives (#7942)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-10-17 09:40:20 -03:00
Amr Bashir
8b166e9bf8
refactor!: consistent environment variables (#7949)
Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-10-17 09:17:02 -03:00
Amr Bashir
b597aa5f39
feat: add id option for tray icon in config file (#7871)
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
2023-10-03 10:18:19 -03:00
martin frances
44e8a562a2
fix: Cleared warnings seen while running ``cargo doc`` (#7862) 2023-10-03 08:37:54 -03:00
Lucas Fernandes Nogueira
c68fbfcb2d
fix: Returns a warning instead of panicking if an AppImage is not mounted, closes #7736 (#7912)
Co-authored-by: Benjamin Demetz <50681275+Benji377@users.noreply.github.com>
2023-09-28 10:46:17 -03:00
Benjamin Demetz
1bce7397a4
fix: Returns a warning instead of panicking if an AppImage is not mounted, closes #7736 (#7843)
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
2023-09-28 10:22:11 -03:00
Fabian-Lars
9aa34ada57
feat(core): Allow http origin on Windows, fixes: #3007 (#7645)
Co-authored-by: Lucas Nogueira <118899497+lucasfernog-crabnebula@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-09-26 14:40:38 -03:00
Amr Bashir
deea943626
refactor!: changed Env.args to Env.args_os and use OsString instead of String (#7876)
ref: https://github.com/tauri-apps/tauri/issues/7756
2023-09-21 15:56:03 +03:00
i-c-b
100d9ede35
fix(core): Correctly detect Android Tauri configuration file, closes #7785 (#7802)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-09-12 13:18:23 -03:00
Jason Tsai
e3bfb01411
feat(nsis): support choosing compression algorithms, closes #7685 (#7776) 2023-09-07 18:45:15 +03:00
Fabian-Lars
9308dee0a1
docs: Be more specific about plugin names in ipc scope (#7605) 2023-08-15 10:56:05 -03:00
Amr Bashir
7fb419c326
refactor: move to muda and tray_icon crates (#7535)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-08-13 22:25:50 -03:00
Lucas Fernandes Nogueira
fbeb5b9185
refactor(core): use webview's URI schemes for IPC (#7170)
Co-authored-by: chip <chip@chip.sh>
2023-08-10 10:12:38 -03:00
Amr Bashir
a6b52e44f2
fix(tauri-utils): include \n in io::read_line, closes #6388 (#6519)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
fix(tauri-utils): include `\n` in `io::read_line`, closes #6388
2023-08-08 16:43:19 -03:00
Kris Krolak
4db363a03c
feat: add visible_on_all_workspaces, closes #6589 (#7437)
* feat: add visible_on_all_workspaces, closes #6589

* add changes file

* Apply suggestions from code review

* Update core/tauri-config-schema/schema.json

* Update tooling/cli/schema.json

---------

Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2023-07-26 19:38:09 +08:00
Bo
3b98141aa2
feat: add file association support, closes #3736 (#4320)
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: Raphii <iam@raphii.co>
Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2023-07-16 18:34:43 -03:00
Lucas Fernandes Nogueira
4dd4893d7d
feat: allow specifying a resource map, closes #5844 (#5950)
Co-authored-by: amrbashir <amr.bashir2015@gmail.com>
closes #5844
2023-07-13 18:28:52 -03:00
Lucas Fernandes Nogueira
eeff1784e1
chore(deps): update unmaintained dependency from kuchiki to kuchikiki (#7359) (#7367)
Co-authored-by: Davide Baldo <davide@baldo.me>
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
2023-07-11 19:19:13 +09:00
Amr Bashir
74b1f4fc66
feat(core): add dark/light mica option (#7384)
* feat(core): add dark/light mica option

* Update .changes/dark-light-mica-effect.md

* fix macos build
2023-07-10 14:31:29 +03:00
Davide Baldo
43c6285e90
chore(deps): update unmaintained dependency from kuchiki to kuchikiki (#7359)
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-07-05 17:41:46 -03:00
Simon Hyll
c34e37b1f7
docs: added rustdoc icons (#7253)
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
2023-06-19 21:51:05 -03:00
Lucas Nogueira
1e9c463d12
Merge remote-tracking branch 'origin/1.x' into dev 2023-06-17 11:02:14 -03:00
Amr Bashir
066c09a6ea
fix(core): fix require_literal_leading_dot flipped behavior (#7227) 2023-06-17 09:17:36 -03:00
Lucas Fernandes Nogueira
7bbc626cc3
Merge remote-tracking branch 'origin/dev' into next (#7212) 2023-06-15 09:52:33 -03:00