* Refactor new method entry point to rwh
* Update doc and add change file
* Fix mac and ios compile error
* Add new_as_child
* Add rhw_04, 05 06 flags
* Update android port
* Remove winit CI
* Fix android bindings
* windows implementation
* Update Cargo.toml
* Fix macOS and iOS
* Fix Android
* fix is_child on WkWebView
* x11 impl
* expose `new_gtk`
* fix winit-gtk version
* remove undecorated resizing handling
* implement set_position and set_size for child gtk in x11
* fix macos
* more fixes
* one more time
* unreachable
* update actions
* fix windows
* some clippy
* Add documentation and fix clippy
* Fix windows clippy error
* Fix android biuld
* Fix documentation test
* Fix android again
* Reduce clippy noise
* use rc?
* refine some documentation, add set_visible
* fix set_visible
* impl set_visible on Windows
* fix doctests
* more set_visible fixes
* fix windows
* unsafe
* fix set size for child webviews
* fix initial visibility with new_gtk
* refine examples
* fix wpgu example
* fix examples on windows and macos
* use a better workaround
* make set_size work on x11
* Fix size in multiwebview example
* Add visible method on macOS and iOS
* remvoe `tao` from android backend and update documentation
* fix winit example
* Add new_as_content_view on macOS
* allow using raw-window-handle v0.5 [skip ci]
* change trait name [skip ci]
* fix linux impl [skip ci]
* fix android build [skip ci]
* fix windows build
* fix(macos): do not autoresize on child webview [skip ci]
* fix macos coordinates [skip ci]
* fix example [skip ci]
* fixed child on macos [skip ci]
* fix docs typos [skip ci]
* fix webview position when it's not a child [skip ci]
* replace new_as_content_view with new_as_subview
* with_as_subview instead of constructor [skip ci]
* fix position/size when as_subview is true
* lint & fmt
* Fix ios build
* Fix cargo test
* Fix mac build
* Update macOS contrusctors
* cargo fmt
* impl drop on Windows
* fix child transparency on Windows (still needs PRs in tao and winit)
* fix winit usage in the examples, use rwh_05 only for now
* fix tests
* add webview.focus
* fix dropping on Linux
* chore clean examples
* implement focus on Linux
* macos focus
---------
Co-authored-by: amrbashir <amr.bashir2015@gmail.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
* fix(ci): Fix benchmark job
- Add --no-install-recommends to apt-get install command, which stops
installing xdg-desktop-portal-gtk, which make the benchmarks to
run about 30 times slower.
- Stop using deprecated actions-rs GitHub actions
- Update hyperfine
* refactor(bench): Clippy fixes
* Update to gtk 0.16 and webkit2gtk 4.1
* chore: update dependencies to fit gtk 0.16
* fix(example): menu should create after event loop created (gtk::init)
* chore: add changelog
* chore: update Cargo dependencies version
* Update CI
* Update README.md
Co-authored-by: Wu Yu Wei <wusyong9104@gmail.com>
* fix(bench): Include clone3 in thread count
It's a newer syscall interface and gets counted seperately in strace results.
* fix(bench): Update totals line parsing
The column offsets didn't match up when usecs/call is included in the totals.
* fix(bench): Enforce locale, avoiding parse errors
On my local machine, it used an NL locale changing the strace numbers to use commas.
Adding this env var avoids that problem.
* fix(bench): Use matrix for the rust toolchain version
* fix(bench): Avoid multiple runs
* fix(bench): Ensure backtraces
* fix(bench): Simplify caching similar to tauri
* fix(bench): Linter change
* feat(android): generate kotlin files at build time
* changefile
* Update kotlin-files.md
* fix android ci
* Add option for extra code when generating files
* rerun build script when env changes
* change it to a class code, prepare var name for future additions
* Delete MainActivity.kt
* uppercase [skip ci]
* fix android detection
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
* feat: update tao to 0.8, refactor tray features
* feat: install libayatana-appindicator3-dev
* fix: set default feature
* update tao
* update CI, doc
* refactor: remove unnecessary private mod shared (#400)
* refactor: remove unnecessary private mod shared
* chore: make fmt happy
* refactor: use eventloop proxy in `custom_titlebar` example (#401)
* Switch to tauri-webview2 (#411)
* Switch to tauri-webview2
This is a temporary fix of null pointer crash on `get_content` of web resource request. We will switch it back once upstream is updated.
* Add change file
* fix: remove clipboard property for consistency across platforms (#412)
* Remove clipboard property for consistancy across platforms
* Remove clipboard property for consistency
* feat: add inner_size for webview struct (#394)
* Add inner_size method
* Add inner_size for webview
* Fix feature flag placement
* Add feature flag on inner_size
* Cargo fmt
* feat(linux): allow resizing undecorated window using touch, closes#399 (#402)
* feat(linux): allow resizing undecorated window using touch
closes#399
* fix windows
* update custom_titlebar example
* revert windows changes
* Implement WebContextImpl on mac (#372)
* Implement WebContextImpl on mac
* Update type visibility
* Update cfg declaration
* Move WebContextImpl to wkwebview
* Fix protocol signature
* Add missing feature flag
* Cargo fmt
* Add change file
* Replace winapi with windows crate and use webview2-com instead of webview2 (#414)
* Add Windows and webview2-com crates
* Replace winapi and webview2-sys with webview2-com
* Get all the examples working with webview2-com
* Point to the published version of webview2-com
* Add a summary in .changes
* Remove extra projects not in config.json
* Run cargo fmt --all
* Fix clippy warnings
* Update to 32-bit compatible webview2-com
* Sync with refactor in next branch of tao
* Use path prefix to prevent variable shadowing
* Fix Linux nightly/stable clippy warnings
* Update to latest review feedback in TAO
* Replace tao dependency with git+branch
* Switch to next branch of upstream tao repo
* doc: add warning doc on webcontext and ptr detections (#419)
* Add warning doc on webcontext and ptr detections
* cargo fmt
* Move Unix's webcontext implementation to webkitgtk (#421)
* chore: add `on_issue_closed.yml` (#424)
* Update webkit2gtk to 0.15 (#429)
* Update webkit2gtk
* Update webkit2gtk to 0.15
* Add changes file
* fix: add feature flags to toggle private APIs (#431)
* Add transparent feature flag
* Add flag for video fullscreen on macOS
* Add change file
* Make clippy happy
* Add clipboard field in WebViewAttributes (#432)
* fix(webview/linux): Use a workaround to fix CORS ... (#435)
... when making XHR requests inside a custom URI scheme context.
Reference: 9b6eae32a6/Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp (L82-L91)
* Delete on_issue_closed.yml (#436)
* Enable secure context back (#438)
* Disable all option on custom url scheme for now
* Enable secure context back
* fix link to tao repo (#439)
* fix(deps): update rust crate http to 0.2.5 (#416)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
* fix link to tao
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <wusyong9104@gmail.com>
* chore: remove unused files (#440)
* Update webview2-com and windows crates (#446)
* Replace webivew2-com-sys with prebuilt windows
* Bump to latest versions
* Set file drop handler after window creation
* Point tao back to the upstream next branch
* Rerun cargo fmt and fix Windows clippy warnings
* Add changelog file
* Use aliases for webview2_com instead of windows
* Use time instead of chrono (#447)
* Use time instead of chrono
* Make clippy happy
* fix(macos): unsupported key feedback sound (#448)
* fix(macos): unsupported key feedback sound, closes #
* Fix scope of YES
Co-authored-by: Yu-Wei Wu <wusyong9104@gmail.com>
* Revert "fix(macos): unsupported key feedback sound (#448)"
This reverts commit b8fdfd6aa1.
* Use tao commit with windows 0.25
* Switch back to tao's next branch
* feat: enable cookie persistence on Linux (#453)
* feat: enable cookie persistence on Linux
* fmt
* Bump webkit2gtk version (#457)
* Update windows crate to 0.29.0 and webview2-com to 0.9.0 (#455)
* Update to windows 0.29.0
* Add change description
* Update tao dependency (#461)
* fix: ignore transparency on Windows 7 (#460)
* fix: ignore transparency on Windows 7
* Update Cargo.toml
Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <wusyong9104@gmail.com>
* Remove clippy check (#462)
* chore: update PR template
* Fix: #276 - Add ability to set custom User Agent (#464)
* feat: Custom user agent attribute
Included example
* Fix setting type on Windows
Co-authored-by: Adit Sachde <23707194+aditsachde@users.noreply.github.com>
Co-authored-by: Wu Yu Wei <wusyong9104@gmail.com>
* Add support of `HTTPBodyStream` (#465)
* Update to 2021 edition (#466)
* Update windows crate to 0.30.0
* change tao dep
* remove "tray" from default features and allow using "ayatana" instead (#469)
The "tray" feature enables dependency on libappindicator3.
On Debian 11 (and some other systems), libappindicator3 was
removed and replaced with libayatana-appindicator3:
https://www.debian.org/releases/bullseye/amd64/release-notes/ch-information.en.html#noteworthy-obsolete-packages
This new library can be used by enabling the "ayatana" feature.
Depending on the system, only one of those library will usually
be available, and thus, only one of the "tray" and "ayatana"
feature would compile fine.
Having "tray" in default features did prevent building on systems
with no libappindicator3 available.
* Update tray examples (#470)
* chore: update pull request commit exmple
* feat: enable objc's exception feature [TRI-039]
* refactor: IPC handler [TRI-019]
* Feat/isolation (#5)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <wusyong9104@gmail.com>
Co-authored-by: Yu-Wei Wu <wusyong9104@gmail.com>
Co-authored-by: Adit Sachde <23707194+aditsachde@users.noreply.github.com>
Co-authored-by: Wu Yu Wei <wusyong9104@gmail.com>
Co-authored-by: Amr Bashir <48618675+amrbashir@users.noreply.github.com>
Co-authored-by: Bogdan Bivolaru <104334+bogdanbiv@users.noreply.github.com>
Co-authored-by: Bill Avery <wravery@users.noreply.github.com>
Co-authored-by: Lucas Fernandes Nogueira <lucasfernandesnog@gmail.com>
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
Co-authored-by: amrbashir <amr.bashir2015@gmail.com>
Co-authored-by: Chip Reed <chip@chip.sh>
Co-authored-by: Jhonatan A <1548170+baguio@users.noreply.github.com>
* chore: fix Linux clippy warnings
* chore(audit): add report
* fix: windows build
* Update gtk to 0.15 (#472)
* chore: new `multi_window` example, closes#459 (#476)
* chore: new `multi_window` example, closes#459
* revert license change
Co-authored-by: Jason <jason@pews.dev>
Co-authored-by: Amr Bashir <48618675+amrbashir@users.noreply.github.com>
Co-authored-by: Bill Avery <wravery@users.noreply.github.com>
Co-authored-by: liushuyu <liushuyu011@gmail.com>
Co-authored-by: Bogdan Bivolaru <104334+bogdanbiv@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Lucas Fernandes Nogueira <lucasfernandesnog@gmail.com>
Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio>
Co-authored-by: amrbashir <amr.bashir2015@gmail.com>
Co-authored-by: Jhonatan A <1548170+baguio@users.noreply.github.com>
Co-authored-by: Adit Sachde <23707194+aditsachde@users.noreply.github.com>
Co-authored-by: Michael Alyn Miller <malyn@strangeGizmo.com>
Co-authored-by: Bill Avery <wravery@gmail.com>
Co-authored-by: Aurélien Jacobs <aurel@gnuage.org>
Co-authored-by: Chip Reed <chip@chip.sh>
* feat: basic ios support
* Cleanup in iOS
* Fix macOS build
* Add build on CI for iOS
* Fix ubuntu CI
* Build examples on iOS
* Add default main for menu_bar and system tray for ios
* Fix typo
* fmt
* [ci skip] add some code-doc
* [skip ci] update
* fix ci
* rename webview impl
* fix windows build
* rename to `webkitgtk` on linux
* chore(bench): WIP benches for wry
Including `binary_size`, `cargo_deps`, `thread_count`, `max_memory`
* Use `bench_start_time` example
* Make sure to build correct example
* WIP add execution time with hyperfine
* add size for all binary (example)
* WIP bench tests
* fmt
* cleanup
* fmt
* WIP benchmarks publishing
* fmt
* fix CI matrix
* add other platforms
* add `cpu_intensive` benchmark
* reduce github actions use for now
* fix ci
* fmt
* try to build from ci…
* simplify run commands
* add `custom_protocol` bench
* add tauri-bot email as its required
* install webview2 if needed
* fmt
* use `actions/checkout`
* give a try with `GITHUB_TOKEN`
* use `secrets.BENCH_PAT`
* trigger new build with new sha1-hash
* bump
* include platform specific dep count with cargo tree
* fix `cargo_deps`
* bump new bench
* enable cpu_intensive test
* add `prefix` for graph merge
* fix example name
* bump new build on new sha1
* update CI
* [ci skip] update CI name
* [ci skip] add WRY in commit message
* [ci skip] add `workflow_dispatch`
* add empty readme file
* cleanup
* [ci skip] fix comments
* [ci skip] clean CI file
Co-authored-by: chip reed <chip@chip.sh>