* 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>
* perf: Change return type of custom protocol handler from `Vec<u8>` to `Cow<'static, [u8]>`
to allow returning static resources without heap allocation
* chore(examples): Fix some comments
following the review https://github.com/tauri-apps/wry/pull/797#pullrequestreview-1210580935
* fix(android): Change return type of response to `Cow`
* Add real android support
* Add loadUrl
* Add on_create
* Update remaining webview api
* Move glue to tao
* Add MainPipe
* Update to tao ndk branch
* Update tao to 0.13
* refactor: Custom protcol request/response
Signed-off-by: David Lemarier <david@lemarier.ca>
* fix tests
Signed-off-by: David Lemarier <david@lemarier.ca>
* make clippy happy
Signed-off-by: David Lemarier <david@lemarier.ca>
* implement windows
Signed-off-by: David Lemarier <david@lemarier.ca>
* WIP linux implementation
Signed-off-by: David Lemarier <david@lemarier.ca>
* add request method for windows
Signed-off-by: David Lemarier <david@lemarier.ca>
* fix examples for windows
Signed-off-by: David Lemarier <david@lemarier.ca>
* better doc and add form post handler
Signed-off-by: David Lemarier <david@lemarier.ca>
* implement body on request for windows and fix fmt
Signed-off-by: David Lemarier <david@lemarier.ca>
* fix test and fmt
Signed-off-by: David Lemarier <david@lemarier.ca>
* remove `#[non_exhaustive]`
Signed-off-by: David Lemarier <david@lemarier.ca>
* make mimetype optional and finalize tauri integration
Signed-off-by: David Lemarier <david@lemarier.ca>
* use a string for URI as it doesnt support `file:///`
Signed-off-by: David Lemarier <david@lemarier.ca>
* fmt
Signed-off-by: David Lemarier <david@lemarier.ca>
* fix examples
Signed-off-by: David Lemarier <david@lemarier.ca>
* convert mimetype to `&str`
Signed-off-by: David Lemarier <david@lemarier.ca>
* make clippy happy
Signed-off-by: David Lemarier <david@lemarier.ca>
* remove unwanted logging
Signed-off-by: David Lemarier <david@lemarier.ca>
* support multiple WebViews in a single WebContext
* wait for load-change::finished
* add doc_cfg for errors
* update os specific cfgs
* cargo +nightly fmt
* Revert "update os specific cfgs"
This reverts commit a1f1776f48983a6641d5b26dbefeb40f2bccb908.
* Revert "add doc_cfg for errors"
This reverts commit efe7b0228d72bd9e187fa43ce44089d290ba8338.
* remove updated cfg values
* updated documentation
* change web_context refs to mut
* update changelog
* clippy
* clippy for win/macos
* update system tray example to track tao dev changes
* remove Window from custom protocol handlers
* add changefile
* blind fix macOS
Co-authored-by: Ngo Iok Ui <wusyong9104@gmail.com>
* Add `Application` back, require it for `WebviewBuilder`
Linux only so far. Until further notice, this entire branch is going to only
work on Linux until I can decide on a good interface to expose WebDriver stuff.
`Application` makes it so that multiple windows can share a single WebContext
and UserContentManager (data directory). This is required for WebDriver because
only a single `WebContext` is allowed to be marked to allow automation. It
seems that macOS and Windows have similar limitations to some extent.
Only the multi_window example has been updated so far.
* Create automated webviews from webdriver clients
again, linux only for now.
updated detect_js_ecma example also
* cargo +nightly fmt
* update env var value for automation
* allow closing the window from the webdriver client
* add support for win32 windows
* add wry::Application support to macOS
* change how ApplicationExt work to match std
* update all examples to use wry::Application
* remove now unneeded uuid dependency
* add webdriver support to new example
* cargo +nightly fmt
* remove automation flag from mac/win ApplicationInner
* allow dead_code in Application inner field
is there a better proper fix? probably - but we will be redoing this interface
soon I imagine.
* cargo +nightly fmt
* update all WebviewBuilder::new calls
* cargo +nightly fmt
* super builder
* update ecma example
* enable automation if specific build env is set
* change build env var to feature
* move the super builder to its own module
* cargo +nightly fmt
* update builder docs
* explicitly allow inlining on wry::Builder
* revert everything to dev
* update webkit2gtk to v2_18 to allow for automation
* set custom cfg on rustdocs to allow for nightly doc features
* simplify application module
* enable nightly doc features when cfg is set
* add WebContext as a required item to `WebViewBuilder`
* add changes file
* move web_context to build from new
* update WebContextData path for windows,macos
* mark WebContextData as private
* update examples and doc tests
* allow os impl WebContextImpl to be dead_code
* fix windows webview builder initialization
* add winrt note to add window close event handler
* add smart link to WebContext docs
Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <wusyong9104@gmail.com>
* update WebContext doc smartlink
* remove doc_cfg from empty non-linux WebContextImpls
* fix clippy error in unrelated code
* make clippy happy (new nightly lints)
Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <wusyong9104@gmail.com>