wry
Cross-platform WebView rendering library in Rust.
0.56.x
0.56.0
-
affbb3c(#1720) Updated Android lifecycle JNI calls inWryActivityfor Tao 0.36's renames:> -
createtoonFirstActivityCreate> -onActivityCreatetoonCreate> -starttoonStart> -resumetoonResume> -pausetoonPause> -stoptoonStop> - RemovedonActivitySaveInstanceState> -onActivityDestroytoonDestroy> -onActivityLowMemorytoonLowMemory> >onLowMemoryno longer takes any parameters. >onFirstActivityCreateno longer takes any parameters.and also emitting them as window-specific events.
-
145b36f(#1736) Remove Send, Sync bounds from NewWindowOpener. -
871497a(#1748) Add back/forward navigation APIs (go_back,go_forward,can_go_back, andcan_go_forward) toWebView. -
fe52ff9(#1715) On Android, release REQUEST_HANDLER mutex sooner by cloning the underlying Send + Sync handler. -
9d0a9fe(#1712) On Windows, AddWebViewExtWindows::hwndgetter to access the child HWND containing the webview. -
4ee8c38(#1779) Enable WebView element fullscreen support on macOS 12.3+ and iOS 15.4+ without using private APIs. -
5bdda32(#1719) On macOS, avoid an extra copy for owned custom protocol response bodies by transferring the body buffer intoNSData. -
6ef93b3(#1737) On macOS, updatedobjc2-*dependencies to 0.3.2 -
9f9a237(#1654) Add an expanded permission handling API for WebView2, WKWebView, WebKitGTK, and Android. This includes:PermissionKindexpansion:DisplayCapture,Midi,Sensors,MediaKeySystemAccess,LocalFonts,WindowManagement,PointerLock,AutomaticDownloads,FileSystemAccess,Autoplay.- Support for
PermissionResponse::Promptto trigger native system dialogs. - Android support via JNI bridge (
onPermissionRequestinRustWebChromeClient). - macOS: Split camera/microphone requests;
CameraAndMicrophoneresolved from individual responses. - Linux:
DisplayCapturedetection for WebKitGTK < 2.42 (getDisplayMedia fix). - Windows: Full coverage of all 12
COREWEBVIEW2_PERMISSION_KINDvalues.
-
bd1decc(#1780) Breaking Change: Removed the macOS/iOS specifictransparentandfullscreenfeature flags. The functionalities are now always enabled. Please reach out immediatly if you see issues in the App Store submission process. -
d29cd57(#1787) Removedprotocolfeature, previously gatedWebViewBuilder::with_custom_protocol,WebViewBuilder::with_asynchronous_custom_protocolandWebViewBuilder::with_asset_loaderare now always available -
10fdf73(#1738) On Windows, addWebViewBuilderExtWindows::with_profile_nameto opt the webview into a named WebView2 profile. Webviews with different profile names within the same environment have isolated cookies, storage, IndexedDB, and cache while sharing the runtime — matching WebView2's documented multi-profile pattern.
0.55.x
0.55.1
3860359(#1721 by @lucasfernog) Tweak ProGuard rules to keep the getId required activity method.
0.55.0
a535fd9(#1699 by @FabianLars) On Android, fixed panics on custom protocol timeouts. Increased timeout for non-internal requests to 30 seconds.781f371(#1633 by @lucasfernog) Update to latest tao to support multi-window on Android and iOS.848aff7(#1660 by @Legend-Master) Runnew_window_req_handleron main thread and remove theSend + Syncrestriction on it92114b2(#1634 by @lucasfernog) CallonNewIntentfor tao's 0.35 Opened event.05440b8(#1688 by @Legend-Master) Removeddrag-dropfeature, previously gatedWebViewAttributes::drag_drop_handlerandWebViewBuilder::with_drag_drop_handlerare now always available222c63d(#1698 by @FabianLars) RemoveWebViewAttributes,WebView::newandWebView::new_as_childfrom public API. UseWebViewBuilderinstead.
0.54.x
0.54.4
0.54.3
40a7032(#1677 by @russellmcc) Fix bug where wry would crash when loaded by multiple dylibs in the same process on macOS.
Dependencies
146e36e(#1671 by @thomaseizinger) Refactors HTML manipulation on Android to usedom_queryinstead ofkuchikiki.
enhance
e430558(#1649 by @aoxiangtianyu-go) Add an option to control browser-level autofill behavior on Windows.
bug
a7de137(#1680 by @Legend-Master) Fix infinite loop on main thread if creating the webview failed or getting cookie failed
0.54.2
1d1b870(#1662 by @JSKitty) On macOS, implementbackground_colorsupport for WKWebView behind thetransparentfeature. Disables the default white background via thedrawsBackgroundKVC key at init and appliesunderPageBackgroundColoron macOS 12+ for both initial creation and runtimeset_background_colorcalls.e3761e5(#1668 by @zeta-gundam) Fixed an issue that caused "Symbol not found: _NSHTTPCookieSameSite…" panics on macOS10.13&10.14.e3761e5(#1668 by @zeta-gundam) Fixed an issue that caused "[<WKWebViewConfiguration 0x6000003f4d00> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key drawsBackground." panics on macOS10.13
0.54.1
0.54.0
-
5fdd1a9(#1625) Use OnBackPressedCallback instead of the deprecated onKeyDown for back navigation on Android. -
51d06d0(#1646) Remove redundant clones in WebView and download handling. No user facing changes. -
7b77322(#1647) Fix clippy io_other_error. No user facing changes. -
ff8876d(#1652) Improve wkwebview performance. No user-facing changes. -
27ba73fAdd handler for web content process termination. -
4fcff14(#1547) SetWebsiteDataManagerBuilder::base_cache_directorywith the same path asbase_data_directory.This change allows the cache directory to be changed instead of using the default one from WebKitGTK.
0.53.x
0.53.5
- #1622 Fixed an issue that caused docs.rs builds to fail. No user facing changes.
0.53.4
093856a(#1622 by @lucasfernog) Add flag to opt out of automatic back navigation handling on Android viaWryActivity#handleBackNavigation.0f51d67(#1605 by @dgerhardt) On Linux, removed a workaround which forced inital requests for multiple webviews to be handled sequentially. The workaround was intended to fix a concurrency bug with loading multiple URIs at the same time on WebKitGTK. But it prevented parallelization and could cause a deadlock in certain situations. It is no longer needed with newer WebKitGTK versions.
0.53.3
6aa5854(#1609 by @lucasfernog) Enhance error handling of thewebview_versionfunction on macOS.
0.53.2
1743e7f(#1608 by @lucasfernog) Fix new_window_req_handler craashing when creating new window for webview that has a custom data_store_identifier.
0.53.1
ccdf912(#1603 by @lucasfernog) Fix the build when not enabling thex11feature.
0.53.0
1456f8e(#1602 by @FabianLars) Enabled all downloads by default to match WebView2 and browser behavior on all platforms. To disable this, provide a customdownload_started_handler.43e78ff(#1588 by @zphrs) AddWebViewBuilder::with_limit_navigations_to_app_bound_domainsonly on iOS. Function is a no-op if iOS version is less than iOS 14.60dba38(#1569 by @WSH032) AddWebView::set_cookieandWebView::delete_cookieAPIs.88cbb01(#1561 by @dgerhardt) On Linux, fix a deadlock, which could occur when destroying a WebView before loading has finished.eb562ca(#1596 by @lucasfernog) Do not firenew_window_req_handleron navigation events on macOS and iOS.78634b3(#1594 by @FabianLars) On Linux, macOS and iOS, thedownload_started_handlerwill now get the correct suggested destination path.5399823(#1600 by @lucasfernog) Fixesnew_window_req_handlernot creating the webview on Linux when executingwindow.open().eb562ca(#1596 by @lucasfernog) Fixesnew_window_req_handlernot fired on macOS when executingwindow.open().3f978d3(#1601 by @lucasfernog) RefactorWebViewBuilder::with_new_window_req_handlerto allow creating the webview manually.3f978d3(#1601 by @lucasfernog) Disable new window creation by default on Windows to match behavior of other platforms. UseWebViewBuilder::with_new_window_req_handlerto enable.
0.52.x
0.52.1
63eaab8(#1573 by @Legend-Master) Fixwry::DragDropEvent::Drop::pathsreturns random data on Windows
0.52.0
5e6b0e6(#1555 by @FabianLars) Added iOS support forset_background_color.99dab51(#1570 by @renovate) Updatedwebview2-comto0.38.41f4a3a(#1572 by @FabianLars) On Windows on systems running WebView2 v137+ wry now uses a new default background color API which should reduce white flashes. The use of theRemoveRedirectionBitmapbrowser flag (v134+) was removed due to crashes on Insider builds.eb40ac8(#1528 by @aurelj) Addedx11feature flag (enabled by default).
breaking
-
1567635(#1558 by @amrbashir) RenameWebViewBuildermethods for consistency and clarity:- Renamed
WebViewBuilder::with_web_contexttoWebViewBuilder::new_with_web_context - Renamed
WebViewBuilder::with_attributestoWebViewBuilder::new_with_attributes
- Renamed
-
f868658(#1556 by @Legend-Master)WebContext::is_custom_protocol_registerednow takes&strinstead ofString
0.51.x
0.51.2
f7781a7(#1544 by @lucasfernog) Allow modifying or removing the input accessory view on iOS viaWebViewBuilderExtIos::with_input_accessory_view_builder.
0.51.1
3e24d6b(#1543 by @lucasfernog) Fix async custom protocol not responding.
0.51.0
f99bbd9(#1507 by @Simon-Laux) RenamedError::UrlPrasetoError::UrlParseto fix typo.2d753c6(#1531 by @Legend-Master) Breaking Change:WebViewAttributes::initialization_scriptstakesVec::<InitializationScript>now instead ofVec::<(String, bool)>78b83a0(#1537 by @Brendonovich) Moved protocol handler functions to a thread local instead of storing them as ivars to prevent a race condition between webview close and custom protocol handling.5f1e4ba(#1538 by @syrel) macOS: Handle flipped coordinates when adding a WebView as a child4ec951a(#1526 by @Legend-Master) Updatedwebview2-comto0.37,windowsto0.61.2d753c6(#1531 by @Legend-Master) Init scripts are always executed on all frames on Windows WebView22d753c6(#1531 by @Legend-Master) Fix init script sometimes get executed too late on Windows WebView2
feat
-
ecbced2(#1534 by @Simon-Laux) macOS/iOS: add option to disable link previews when building a webview (the webkit API has it enabled by default)WebViewBuilderExtDarwin.with_allow_link_preview(bool)
Full Changelog
Version List
- v0.56.0 Jul 30, 2026
- v0.55.1 May 4, 2026
- v0.55.0 Mar 23, 2026
- v0.54.4 Mar 17, 2026
- v0.54.3 Mar 9, 2026
- v0.54.2 Feb 14, 2026
- v0.54.1 Jan 18, 2026
- v0.54.0 Jan 15, 2026
- v0.53.5 Oct 22, 2025
- v0.53.4 Oct 6, 2025
- v0.53.3 Aug 27, 2025
- v0.53.2 Aug 25, 2025
- v0.53.1 Aug 16, 2025
- v0.53.0 Aug 16, 2025
- v0.52.1 Jun 26, 2025
- v0.52.0 Jun 24, 2025
- v0.51.2 Apr 12, 2025
- v0.51.1 Apr 11, 2025
- v0.51.0 Apr 7, 2025
- v0.50.5 Mar 15, 2025
- v0.50.4 Mar 8, 2025
- v0.50.3 Mar 2, 2025
- v0.50.2 Mar 2, 2025
- v0.50.1 Feb 26, 2025
- v0.50.0 Feb 25, 2025
- v0.49.0 Feb 21, 2025
- v0.48.1 Jan 13, 2025
- v0.48.0 Jan 1, 2025
- v0.47.2 Nov 20, 2024
- v0.47.1 Nov 18, 2024
- v0.47.0 Nov 9, 2024
- v0.46.3 Oct 21, 2024
- v0.46.2 Oct 16, 2024
- v0.46.1 Oct 15, 2024
- v0.46.0 Oct 12, 2024
- v0.45.0 Sep 26, 2024
- v0.44.1 Sep 20, 2024
- v0.44.0 Sep 18, 2024
- v0.43.1 Sep 4, 2024
- v0.43.0 Sep 2, 2024
- v0.42.0 Aug 16, 2024
- v0.41.0 Jun 12, 2024
- v0.40.1 Jun 1, 2024
- v0.40.0 May 21, 2024
- v0.39.5 May 9, 2024
- v0.39.4 May 7, 2024
- v0.39.3 Apr 24, 2024
- v0.39.2 Apr 22, 2024
- v0.39.1 Apr 15, 2024
- v0.39.0 Apr 1, 2024
- v0.38.2 Mar 25, 2024
- v0.38.1 Mar 19, 2024
- v0.38.0 Mar 19, 2024
- v0.37.0 Feb 21, 2024
- v0.36.0 Feb 6, 2024
- v0.35.2 Jan 2, 2024
- v0.35.1 Dec 19, 2023
- v0.35.0 Nov 21, 2023
- v0.34.2 Oct 26, 2023
- v0.34.1 Oct 24, 2023
- v0.34.0 Oct 23, 2023
- v0.33.1 Oct 10, 2023
- v0.33.0 Sep 11, 2023
- v0.32.0 Sep 6, 2023
- v0.31.0 Aug 13, 2023
- v0.30.0 Jul 14, 2023
- v0.29.0 Jun 13, 2023
- v0.28.3 Apr 27, 2023
- v0.28.2 Apr 24, 2023
- v0.28.1 Apr 23, 2023
- v0.28.0 Apr 18, 2023
- v0.27.3 Apr 10, 2023
- v0.27.2 Apr 5, 2023
- v0.27.1 Mar 23, 2023
- v0.27.0 Feb 13, 2023
- v0.26.0 Jan 31, 2023
- v0.25.0 Jan 26, 2023
- v0.24.1 Jan 11, 2023
- v0.24.0 Jan 11, 2023
- v0.23.4 Dec 13, 2022
- v0.23.3 Dec 10, 2022
- v0.23.2 Dec 9, 2022
- v0.23.1 Dec 5, 2022
- v0.23.0 Dec 5, 2022
- v0.22.6 Dec 5, 2022
- v0.22.5 Nov 25, 2022
- v0.22.4 Nov 24, 2022
- v0.22.3 Nov 21, 2022
- v0.22.2 Nov 21, 2022
- v0.22.1 Nov 16, 2022
- v0.22.0 Nov 8, 2022
- v0.21.1 Sep 15, 2022
- v0.21.0 Sep 13, 2022
- v0.20.2 Aug 14, 2022
- v0.20.1 Aug 9, 2022
- v0.20.0 Jul 27, 2022
- v0.19.0 Jun 28, 2022
- v0.18.3 Jun 14, 2022
- v0.18.2 Jun 7, 2022
- v0.18.1 May 31, 2022
- v0.18.0 May 31, 2022
- v0.17.0 May 24, 2022
- v0.16.2 May 10, 2022
- v0.16.1 May 8, 2022
- v0.16.0 May 4, 2022
- v0.15.1 Apr 27, 2022
- v0.15.0 Apr 7, 2022
- v0.14.0 Mar 28, 2022
- v0.13.3 Feb 27, 2022
- v0.13.2 Feb 18, 2022
- v0.13.1 Feb 7, 2022
- v0.13.0 Feb 5, 2022
- v0.12.2 Aug 23, 2021
- v0.12.1 Aug 12, 2021
- v0.12.0 Aug 9, 2021
- v0.11.0 Jul 15, 2021
- v0.10.3 Jun 29, 2021
- v0.10.2 Jun 23, 2021
- v0.10.1 Jun 22, 2021
- v0.10.0 Jun 22, 2021
- v0.9.4 May 18, 2021
- v0.9.3 May 17, 2021
- v0.9.2 May 10, 2021
- v0.9.1 May 9, 2021
- v0.9.0 Apr 28, 2021
- v0.8.0 Apr 14, 2021
- v0.7.0 Apr 2, 2021
- v0.6.2 Apr 1, 2021
- v0.6.1 Mar 21, 2021
- v0.6.0 Mar 11, 2021
© 2026 Tauri Contributors. CC-BY / MIT