PackageTrack
Sign in Get early access

zikzak_inappwebview_platform_interface

A common platform interface for the zikzak_inappwebview plugin.

5.0.1 6.2K downloads/mo #3545 most downloaded on pub.dev arrrrny/zikzak_inappwebview

What this package is like to depend on

Last release today

22 Aug 2026

Release timing varies

gaps range from 8 days to 3 months

Most releases are documented

notes for 59 of 71 stable releases

Nothing withdrawn

no release was ever pulled

2 years old

71 releases · first in 2024

46 releases in the last 12 months

see the full history below

Release timeline

71 releases · Sep 2024 to Aug 2026
2025 2026
Release Pre-release

Releases

latest 60 of 71
  1. 5.0.1 22 Aug 2026
    Release notes

    Fixes

    • Fixed Android ClassCastException failures when enum settings were serialized as string names instead of their expected integer wire values. Added the missing enum wire converters and corrected affected platform-interface JSON mappings.
    Open source →
    Release notes

    Fixes

    • [Android] Fix ClassCastException: java.lang.String cannot be cast to java.lang.Integer in InAppWebViewSettings.parse() — the Dart toJson() was serializing enum settings (forceDark, forceDarkStrategy, mixedContentMode, cacheMode, disabledActionModeMenuItems, overScrollMode, scrollBarStyle, verticalScrollbarPosition, preferredContentMode, webAuthenticationSupport) as string names instead of the integer wire values that the Android platform channel expects. Added toJson/fromJson converters on all affected @JsonKey annotations using the existing toWire/fromWire functions, which correctly handle non-sequential wire values (e.g., CacheMode → -1/1/2/3, ScrollBarStyle → 0/16777216/...).
    • Added missing webAuthenticationSupportToWire/webAuthenticationSupportFromWire helper functions.
    Open source →
  2. 5.0.0 16 Aug 2026
    Release notes

    Breaking Changes

    • Migrated the entire platform_interface model layer to Zorphy entities — every model class is now a Zorphy entity instead of a hand-written @ExchangeableObject-style class (Phases 1–3j). This changes the public API surface of the platform interface (class structure, toJson/fromJson, equality) and may require updates to custom platform implementations.

    Features

    • [platform_interface] Migrated model families to Zorphy entities: JS dialogue, ajax request, fetch request, console message, web resource, permission/safe-browsing, navigation, auth/ssl, pull-to-refresh, web storage, web message, web authentication session, context menu, webview environment, chrome safari browser, print job, InAppBrowserMenuItem, tracing settings, user script, image/rect/screenshot config, in-app webview settings, and script HTML tag attributes

    Chores

    • Removed the dead @ExchangeableObject codegen toolchain
    • Removed the Docusaurus website (to be replaced by a zread wiki)
    Open source →
    Release notes

    Breaking Changes

    • Migrated the entire platform_interface model layer to Zorphy entities — every model class is now a Zorphy entity instead of a hand-written @ExchangeableObject-style class (Phases 1–3j). This changes the public API surface of the platform interface (class structure, toJson/fromJson, equality) and may require updates to custom platform implementations.

    Features

    • [platform_interface] Migrated model families to Zorphy entities: JS dialogue, ajax request, fetch request, console message, web resource, permission/safe-browsing, navigation, auth/ssl, pull-to-refresh, web storage, web message, web authentication session, context menu, webview environment, chrome safari browser, print job, InAppBrowserMenuItem, tracing settings, user script, image/rect/screenshot config, in-app webview settings, and script HTML tag attributes

    Chores

    • Removed the dead @ExchangeableObject codegen toolchain
    • Removed the Docusaurus website (to be replaced by a zread wiki)
    Open source →
  3. 4.10.0 16 Aug 2026
    Release notes

    fix(publish): convert example pubspec sibling deps to versioned for 4…

    Open source →
    Release notes

    Fixes

    • [iOS] Gate HeadlessInAppWebView.run() on web-process readiness — the first real loadUrl after run() could be silently dropped by WKWebView while its content process was still booting, surfacing as "Unable to fetch data" on the very first request. run() now completes only after the initial navigation reaches a terminal state (didFinish/didFail); signal-driven, no timeout constant
    • [iOS] Guard run() against a missing web view (no silent hang)
    • [Android] Same headless readiness gate — run() completes only after onPageFinished or a main-frame error (both InAppWebViewClient and InAppWebViewClientCompat)
    • [macOS] Same headless readiness gate — run() completes only after didFinish/didFail
    • [Linux] Same headless readiness gate — the headless "run" channel handler responds only after the first WEBKIT_LOAD_FINISHED

    Features

    • [example] Add First-Load Race Stress screen — reproduces the first-load race for headless and visible webviews (fresh webview + immediate loadUrl, 10 sequential attempts)
    Open source →
  4. 4.9.0 14 Aug 2026
    Release notes

    Features

    • Session recipe — record and replay user sessions in the WebView: JS
      tap-listener injection, selector-candidate extraction, scripted click replay,
      and recipe models (#216)
    • Navigation tracker — JS-assisted URL-cycle tracking through the webview (#216)
    • Dialogue dismisser — inject JS to auto-dismiss modal dialogs (#216)
    • Navigation guards — keepNavigationInWebView helper that keeps user-tapped
      links inside the WebView, avoiding iOS universal-link handoff (#216)
    • [Windows] Virtual host name to folder mapping — CORS-safe serving of local
      folders (CORS bypass for local resources) (#185)
    • [macOS] Popup windows — window.open / target=_blank now load their URL
      via WKUIDelegate createWebViewWith off-screen-window support, reparented
      into a Flutter platform view when onCreateWindow is handled (#182, #183, #187)

    Fixes

    • [macOS] Popup window crash, settings key, and event delivery fixes (#187)
    • [macOS] Network Capture API callbacks never fired — JS bridge name aligned
      with iOS/Android so onNetworkRequest / onNetworkResponse /
      onNetworkLoadingFinished reach Dart (#182)
    • [Linux] Blue screen instead of webview — offscreen rendering via
      GtkOffscreenWindow + software rendering, plus openDevTools support (#184)
    • [Linux] Native plugin compile regression — broken takeScreenshot string
      literal and missing include path (#179)
    • Chore: renamed remaining flutter_inappwebview residuals to
      zikzak_inappwebview (JS bridge name, method channel, platform view type id) (#186)
    • Chore: dependency bumps (npm deps, brace-expansion) (#189, #210)
    Open source →
    Release notes

    Features

    • Session recipe — record and replay user sessions in the WebView: JS tap-listener injection, selector-candidate extraction, scripted click replay, and recipe models (#216)
    • Navigation tracker — JS-assisted URL-cycle tracking through the webview (#216)
    • Dialogue dismisser — inject JS to auto-dismiss modal dialogs (#216)
    • Navigation guards — keepNavigationInWebView helper that keeps user-tapped links inside the WebView, avoiding iOS universal-link handoff (#216)
    • [Windows] Virtual host name to folder mapping — CORS-safe serving of local folders (CORS bypass for local resources) (#185)
    • [macOS] Popup windows — window.open / target=_blank now load their URL via WKUIDelegate createWebViewWith off-screen-window support, reparented into a Flutter platform view when onCreateWindow is handled (#182, #183, #187)

    Fixes

    • [macOS] Popup window crash, settings key, and event delivery fixes (#187)
    • [macOS] Network Capture API callbacks never fired — JS bridge name aligned with iOS/Android so onNetworkRequest / onNetworkResponse / onNetworkLoadingFinished reach Dart (#182)
    • [Linux] Blue screen instead of webview — offscreen rendering via GtkOffscreenWindow + software rendering, plus openDevTools support (#184)
    • [Linux] Native plugin compile regression — broken takeScreenshot string literal and missing include path (#179)
    • Chore: renamed remaining flutter_inappwebview residuals to zikzak_inappwebview (JS bridge name, method channel, platform view type id) (#186)
    • Chore: dependency bumps (npm deps, brace-expansion) (#189, #210)
    Open source →
  5. 4.8.0 14 Aug 2026
    Release notes

    Features

    • [macOS] Add context-menu support — disableContextMenu / disableLongPressContextMenuOnLinks settings now honored, onCreateContextMenu event fired (#208, fixes #196)
    • [macOS] Implement WKNavigationDelegate authentication challenges — HTTP basic/digest/NTLM/Negotiate, TLS server-trust, and client-certificate requests (#207, fixes #193)
    • [macOS] Method-channel parity — ~50 controller methods implemented on iOS are now available on macOS (MissingPluginException resolved) (#205, fixes #197)
    • [macOS] Implement print page support reusing the iOS pattern (#190, fixes #188)
    • [Android] Add window-insets control for web content (setInsetsForWebContentToIgnore equivalent) (#206, fixes #198)
    • [iOS] Add UIScrollView bouncesHorizontally / bouncesVertically (iOS 17.4+) (#209, fixes #199)
    • [Android] Bump toolchain — androidx.webkit 1.15.0, AGP 8.13.1, JVM target 17 (#211, fixes #201)
    • Refactor: split InAppWebViewController into domain-specific controllers (#176)
    • Refactor: standardize dispose patterns across all wrapper classes (#175)

    Fixes

    • [macOS] Implement media-capture permission prompts for getUserMedia() — no longer silently denied (#204, fixes #195)
    • [macOS] Implement webViewWebContentProcessDidTerminate — no more blank/unrecoverable WebView after content-process kill (#203, fixes #194)
    • [macOS] Await shouldOverrideUrlLoading response so cancellations are honored (#202, fixes #192)
    • [macOS] Use WKWebpagePreferences.allowsContentJavaScript instead of deprecated WKPreferences.javaScriptEnabled (#212, fixes #200)
    • [macOS] Replace deprecated javaScriptEnabled read in getSelectedText (#213)
    • [macOS] Repair SPM build — duplicate Util.swift, iOS-only APIs, init ordering (#215)
    • [macOS] Add missing onPageCommitVisible / onDidReceiveServerRedirectForProvisionalNavigation method-channel handlers (#217)
    • [Windows] Forward additionalBrowserArguments to WebView2 (#214, fixes #178)
    • [Windows] Implement addJavaScriptHandler + JS bridge (fixes #177)
    • [Android] Use androidx.core.view.OnApplyWindowInsetsListener type directly (#217)
    Open source →
    Release notes

    Features

    • [macOS] Add context-menu support — disableContextMenu / disableLongPressContextMenuOnLinks settings now honored, onCreateContextMenu event fired (#208, fixes #196)
    • [macOS] Implement WKNavigationDelegate authentication challenges — HTTP basic/digest/NTLM/Negotiate, TLS server-trust, and client-certificate requests (#207, fixes #193)
    • [macOS] Method-channel parity — ~50 controller methods implemented on iOS are now available on macOS (MissingPluginException resolved) (#205, fixes #197)
    • [macOS] Implement print page support reusing the iOS pattern (#190, fixes #188)
    • [Android] Add window-insets control for web content (setInsetsForWebContentToIgnore equivalent) (#206, fixes #198)
    • [iOS] Add UIScrollView bouncesHorizontally / bouncesVertically (iOS 17.4+) (#209, fixes #199)
    • [Android] Bump toolchain — androidx.webkit 1.15.0, AGP 8.13.1, JVM target 17 (#211, fixes #201)
    • Refactor: split InAppWebViewController into domain-specific controllers (#176)
    • Refactor: standardize dispose patterns across all wrapper classes (#175)

    Fixes

    • [macOS] Implement media-capture permission prompts for getUserMedia() — no longer silently denied (#204, fixes #195)
    • [macOS] Implement webViewWebContentProcessDidTerminate — no more blank/unrecoverable WebView after content-process kill (#203, fixes #194)
    • [macOS] Await shouldOverrideUrlLoading response so cancellations are honored (#202, fixes #192)
    • [macOS] Use WKWebpagePreferences.allowsContentJavaScript instead of deprecated WKPreferences.javaScriptEnabled (#212, fixes #200)
    • [macOS] Replace deprecated javaScriptEnabled read in getSelectedText (#213)
    • [macOS] Repair SPM build — duplicate Util.swift, iOS-only APIs, init ordering (#215)
    • [macOS] Add missing onPageCommitVisible / onDidReceiveServerRedirectForProvisionalNavigation method-channel handlers (#217)
    • [Windows] Forward additionalBrowserArguments to WebView2 (#214, fixes #178)
    • [Windows] Implement addJavaScriptHandler + JS bridge (fixes #177)
    • [Android] Use androidx.core.view.OnApplyWindowInsetsListener type directly (#217)
    Open source →
  6. 4.7.0 29 Jul 2026
    Release notes

    Features

    • Added iOS proxy support (iOS 17.0+) — set process-wide proxy for WKWebView
    • Added Network Capture API — capture XHR/fetch requests and response bodies
    • Added Network Capture Scraper example screen

    Fixes

    • Fixed: Web/WASM build failure — HeadlessInAppWebViewWeb.dispose() missing
      isKeepAlive parameter that was added to PlatformHeadlessInAppWebView.dispose
      interface, causing dart2wasm and dart2js compile errors
    • Fixed iOS: removed duplicate else clause in ProxyManager guard statement
    • Fixed iOS: added missing Flutter import and fixed Swift API usage in ProxyManager
    • Fixed Linux: removed unused <iostream> includes and call load_initial in
      createHeadless
    • Fixed Linux: fixed pre-existing C++ issues in in_app_webview.cc
    • Fixed: restored Disposable interface on PlatformProxyController

    Chores

    • Removed network capture example from public package
    • Added .clangd and compile_flags.txt for Linux Flutter header resolution
    • Bumped svgo dependency
    Open source →
    Release notes

    Features

    • Added iOS proxy support (iOS 17.0+) — set process-wide proxy for WKWebView
    • Added Network Capture API — capture XHR/fetch requests and response bodies
    • Added Network Capture Scraper example screen

    Fixes

    • Fixed: Web/WASM build failure — HeadlessInAppWebViewWeb.dispose() missing isKeepAlive parameter that was added to PlatformHeadlessInAppWebView.dispose interface, causing dart2wasm and dart2js compile errors
    • Fixed iOS: removed duplicate else clause in ProxyManager guard statement
    • Fixed iOS: added missing Flutter import and fixed Swift API usage in ProxyManager
    • Fixed Linux: removed unused <iostream> includes and call load_initial in createHeadless
    • Fixed Linux: fixed pre-existing C++ issues in in_app_webview.cc
    • Fixed: restored Disposable interface on PlatformProxyController

    Chores

    • Removed network capture example from public package
    • Added .clangd and compile_flags.txt for Linux Flutter header resolution
    • Bumped svgo dependency
    Open source →
  7. 4.6.3 21 Jul 2026
    Release notes
    • Fixed: Web/WASM build failure — HeadlessInAppWebViewWeb.dispose() missing
      isKeepAlive parameter that was added to PlatformHeadlessInAppWebView.dispose
      interface, causing dart2wasm and dart2js compile errors
    Open source →
  8. 4.6.2 21 Jul 2026
    Release notes
    • Fixed: Web/WASM compilation broken by unconditional dart:io import in platform
      interface — replaced with conditional export if (dart.library.io) to compile
      a stub on Web/WASM and the real HttpServer-based implementation on native
    Open source →
    Release notes
    • Fixed: Web/WASM compilation broken by unconditional dart:io import in platform interface — replaced with conditional export if (dart.library.io) to compile a stub on Web/WASM and the real HttpServer-based implementation on native
    Open source →
  9. 4.6.1 21 Jul 2026
    Release notes
    • Fixed: iOS compile error in URLValidationManager integration — removed extraneous argument label url: from validateURL call that caused Swift compiler error when archiving for device
    Open source →
  10. 4.6.0 21 Jul 2026
    Release notes
    • Fixed: iOS InAppBrowser crash after SPM migration — storyboard now loaded via Bundle.module instead of main bundle, resolving "Could not find a storyboard named 'WebView'" exception when opening the in-app browser
    • Fixed: Android WebView lifecycle — onFlutterViewDetached() now properly destroys the WebView (guarded against keepAlive)
    • Fixed: Android WebSettings OEM crash protection — 18 WebSettingsCompat.* calls wrapped in try/catch for Huawei/Honor/OnePlus devices
    • Fixed: iOS webViewWebContentProcessDidTerminate now auto-reloads after 500ms with isDisposed guard
    • Fixed: iOS URLValidationManager wired into navigation flow — blocks javascript:, vbscript:, jar, wyciwyg schemes at native level
    • Fixed: InAppLocalhostServer race condition — added Completer gate to prevent SocketException: Address already in use on rapid start/close
    • Fixed: PullToRefreshController — added _isDisposed guard with MissingPluginException catch
    • Fixed: Headless WebView cleanup — explicit stopLoading() and script removal in deinit/dispose across iOS, Android, and Dart layers
    • Fixed: webkit2gtk-4.0 compile failure with proper memory cleanup
    • Feature: Web platform — added addJavaScriptHandler/removeJavaScriptHandler/ hasJavaScriptHandler via postMessage bridge
    • Feature: Windows — wired WebViewEnvironmentSettings.userDataFolder into WebView2 initialization with writability verification
    • Security: iOS native URL scheme validation via URLValidationManager
    • Perf: CookieManager — all 7 methods wrapped with Lock.synchronized() for thread-safe concurrent access
    Open source →
  11. 4.5.3 20 Jul 2026
    Release notes
    • Fixed: iOS InAppBrowser crash after SPM migration — storyboard now loaded via Bundle.module instead of main bundle, resolving "Could not find a storyboard named 'WebView'" exception when opening the in-app browser
    • Cleaned up any version constraints from dev/example pubspec files
    Open source →
  12. 4.5.2 19 Jul 2026
    Release notes
    • Fixed: Generator no longer produces InvalidType for fields referencing other generated types (e.g. PrintJobColorMode?) — the exchangeable_object_generator now falls back to AST source text when the analyzer can't resolve a type
    • Feature: Added camelCase convenience getters for all SCREAMING_SNAKE_CASE enum constants (e.g. UserScriptInjectionTime.atDocumentStart, Sandbox.allowPopups, ConsoleMessageLevel.warning)
    • Fixed: exchangeable_enum_generator no longer attempts to generate getters for Dart reserved words (default, switch, etc.) or @ExchangeableEnumCustomValue fields with non-standard types
    • Docs: Added GENERATOR_NOTES.md documenting the console_message.g.dart null-safety hand-edit and regeneration workflow
    Open source →
  13. 4.5.1 19 Jul 2026
    Release notes
    • Fixed: macOS addJavaScriptHandler bridge now uses postMessage with a JSON string instead of structured clone — eliminates EXC_BAD_ACCESS crash in WebCore's wrap<DOMException> when passing large or complex data through callHandler
    • Fixed: macOS evaluateJavascript now returns null to Dart instead of throwing PlatformException when WKWebView returns nil (e.g., for undefined, void, or Promise expressions)
    • Fixed: macOS initialUserScripts parameter was silently ignored — WKWebView now properly injects user scripts during initialization
    • Added: UserScriptInjectionTime.atDocumentStart and atDocumentEnd convenience getters (in addition to existing AT_DOCUMENT_START / AT_DOCUMENT_END)
    • Removed: CocoaPods podspec files from iOS and macOS packages (project is now 100% SPM)
    Open source →
  14. 4.5.0 18 Jul 2026
    Release notes
    • Feature: Added addJavaScriptHandler / removeJavaScriptHandler / hasJavaScriptHandler support on macOS — the JavaScript bridge (window.flutter_inappwebview.callHandler()) is now fully functional, enabling bidirectional communication between Dart and JavaScript in macOS WKWebView
    • Fixed: macOS ConsoleMessage.fromMap crash when receiving null message or messageLevel values from JavaScript — fixed at the Swift native layer (coerces null to empty string), Dart macOS controller (null-safe constructor) and shared ConsoleMessage.fromMap (null-safe defaults for all platforms)
    • Tests: Added unit tests for macOS controller (addJavaScriptHandler lifecycle) and platform interface (ConsoleMessage.fromMap null safety)
    Open source →
  15. 4.4.5 18 Jul 2026
    Release notes
    • Fixed: macOS InAppWebView no longer returns WKWebView directly as the platform view — it now wraps it in a container NSView with proper autoresizing masks, eliminating the blank screen caused by a zero-frame WKWebView that couldn't resize to fill its allocated space
    • Fixed: macOS example app entitlements — added missing com.apple.security.network.client to both DebugProfile and Release entitlements, granting WKWebView's networking process outgoing access so it can load remote web pages under App Sandbox
    • Updated: Flutter SDK upgrade with project configuration migration across all platforms (Android build.gradle → build.gradle.kts, iOS SceneDelegate, Xcode project updates, platform file regeneration)
    Open source →
  16. 4.4.4 03 Jul 2026
    Release notes
    • Fixed: macOS headless WebView now uses a dedicated off-screen NSWindow instead of attaching to the main window with alphaValue = 0.01 — eliminates potential mouse event interception behind the Flutter surface while still providing the view hierarchy WKWebView needs for rendering and JS execution
    Open source →
  17. 4.4.3 24 Jun 2026
    Release notes
    • Fixed: iOS JavaScript handler error messages with newlines, backslashes, or carriage returns are now properly escaped via JSONSerialization instead of single-quote interpolation that produced SyntaxError: Unexpected EOF and left JS promises pending forever — matches Android's JSONObject.quote()
    Open source →
  18. 4.4.2 19 Jun 2026
    Release notes
    • Fixed: Windows and Linux onWebViewCreated type mismatch — platform controllers (InAppWebViewWindowsController, LinuxInAppWebViewController) are now wrapped through controllerFromPlatform to return proper InAppWebViewController instances
    Open source →
  19. 4.4.1 16 Jun 2026
    Release notes
    • Fixed: Android build failure — URLRequest constructor calls in InAppWebViewClient, InAppWebViewClientCompat, and InAppWebViewChromeClient now pass the 5th timeoutInterval parameter to match the updated constructor signature
    Open source →
  20. 4.4.0 16 Jun 2026
    Release notes
    • Feature: Android URLRequest now supports timeoutInterval — the InAppWebView will stop loading after the specified interval, making rendered HTML available for extraction via getHtml() even if the page hasn't fully loaded
    • Feature: macOS URLRequest native extension with full property support — init(fromPluginMap:) and toMap() covering method, body, headers, cache policy, network service type, timeout interval, and more
    • Refactor: macOS InAppWebView uses the new URLRequest(fromPluginMap:) extension for cleaner URL loading in both initial load and loadUrl()
    • Chore: prepare_for_publish.sh no longer attempts to update CocoaPods podspecs (migrated to Swift Package Manager)
    • Chore: Updated dependency lock files
    Open source →
  21. 4.3.8 15 Jun 2026
    Release notes
    • fixed macos setting and removed pods from example
    • 'updated deps'
    Open source →
  22. 4.3.7 15 Jun 2026
    Release notes
    • Remove debugPrint dealloc statements from Swift deinit blocks
    • published
    Open source →
  23. 4.3.6 14 Jun 2026
    Release notes
    • Merge pull request #147 from arrrrny/fix/issue144-stuck-loading
    • fixed timer issue
    • bumped gradle
    • fix(android): resume global WebView timers when preparing a new InAppWebView
    • chore(android): bump Gradle wrapper to 9.1.1 for AGP 9.0
    • chore(android): upgrade AGP to 9.0.0
    • chore(android): add .kotlin/ to gitignore
    • chore: remove accidentally committed .kotlin session file
    • fix(android): upgrade Gradle/AGP/Kotlin and migrate off kotlin-android
    • Merge branch 'publish-4.3.5'
    • 'pub get
    • Merge pull request #146 from arrrrny/fix/v4.3.5-build-fixes
    Open source →
  24. 4.3.5 12 Jun 2026
    Release notes
    • Fixed: macOS build failure — removed stray } that closed the InAppWebView class prematurely, leaving WKNavigationDelegate/WKUIDelegate methods outside the class scope. Also removed dead result variable reference from shouldOverrideUrlLoading (#145)
    • Fixed: Android AGP 9+ build failure — replaced getDefaultProguardFile('proguard-android.txt') with getDefaultProguardFile('proguard-android-optimize.txt') in android/build.gradle (#143)
    • Fixed: Linux build failure with WebKitGTK 2.52+ — migrated deprecated webkit_web_view_run_javascriptwebkit_web_view_evaluate_javascript and replaced removed synchronous webkit_web_view_get_snapshot with async version (#142)
    • Fixed: Windows build failure — removed pluginClass from pubspec.yaml; the Windows plugin is Dart-only (uses webview_windows package), so no native CMake project is needed (#142)
    • Fixed: CMake include directory visibility for Linux plugin — changed INTERFACE to PUBLIC so the plugin can find its own headers (#142)
    Open source →
  25. 4.3.4 12 Jun 2026
    Release notes
    • Fixed: iOS type 'int' is not a subtype of type 'WebAuthenticationSupport?' crash in getHtml()/getSettings()InAppWebViewSettings.fromMap() now converts webAuthenticationSupport via WebAuthenticationSupport.fromNativeValue() instead of assigning the raw int value from the platform channel map
    Open source →
  26. 4.3.3 04 Jun 2026
    Release notes
    Open source →
  27. 4.3.2 04 Jun 2026
    Release notes
    • fix: use KVC for webAuthenticationSupport to avoid SDK availability issue
    Open source →
  28. 4.3.1 04 Jun 2026
    Release notes
    • Fixed: iOS Passkey/WebAuthn support — wired webAuthenticationSupport setting into native WKWebViewWebAuthenticationSupport.boundKeychainForPasskeys on iOS 16.4+ (#131)
    • Fixed: macOS 26 crash in AppKit NSToolbar when InAppBrowser window closes — added isClosing guard and window?.delegate = nil before teardown (#87)
    • Fixed: macOS WebView native frame drift with fractional platform view widths — overrode layout() to explicitly sync frame from superview bounds (#93)
    • Fixed: iOS shouldOverrideUrlLoading deadlock when adding custom headers — added isNavigatingWithCustomAction flag to prevent re-entrant navigation callbacks (#132)
    • Fixed: InAppLocalhostServer fails after app resumes from background — added AppLifecycleListener to close and reset server state on resume (#113)
    • Fixed: build_runner fails due to missing generators package — added as dev_dependency in platform_interface pubspec (#139)
    • Feature: WebAuthenticationSession now supports additionalHeaderFields for custom HTTP headers — available on iOS 17.4+ (#100)
    • Chore: Raised minimum Flutter version from 3.29.0 to 3.38.6 for iOS touch fix (#128)
    Open source →
  29. 4.3.0 03 Jun 2026
    Release notes
    • Fixed: iOS onCreateWindow not respecting client return value — now returns nil when the client handles the window creation, preventing WebKit from creating an unused window WebView (#107)
    • Fixed: iOS crash on InAppWebView.dispose() when KVO observers fire after disposal — added isDisposed guard to observeValue, made dispose() idempotent with isDisposed = true, added dispose() call in deinit (#120, #129)
    • Fixed: macOS SIGSEGV crash in callAsyncJavaScript — added isDisposed guard to observeValue, added optional chaining on channel?.invokeMethod calls (#126)
    • Chore: Updated minimum iOS build version to 16.0
    Open source →
  30. 4.2.4 03 Jun 2026
    Release notes
    • Feature: WebAuthn (passkey) support — added webAuthenticationSupport setting + WebAuthenticationSupport enum for native passkey authentication in WebViews (Upstream PR #2743 @susemeee)
    • Feature: Google Pay support — added paymentRequestEnabled setting for WebViewFeature.PAYMENT_REQUEST (Upstream PR #2722 @AzarouAmine)
    • Feature: Audio capture for file picker — added getAudioIntent() for <input type="file" accept="audio/*"> support (Upstream PR #2823 @PrimozRatej)
    • Fixed: takeScreenshot now renders content outside the viewport — disabled scrollbars during capture, added layout() before draw() (Upstream PR #2390 @lucasdessy)
    • Fixed: AJAX blob interception — use request.response instead of undefined blob variable (Upstream PR #2099 @EArminjon)
    • Fixed: Chrome not supported error handling — wrapped onCustomTabsConnected in try-catch with onBrowserNotSupported callback (Upstream PR #2070 @luckyhandler)
    • Fixed: Restored working .g.dart files after build_runner regeneration
    • Chore: Bumped androidx.webkit:webkit from 1.13.0 to 1.14.0
    • Chore: Added generators dependency to platform_interface for proper code generation
    Open source →
  31. 4.2.3 03 Jun 2026
    Release notes
    • Fixed: Android onWebViewCreated not firing on ~50% release cold starts — deferred JS bridge registration (addJavascriptInterface, addDocumentStartJavaScript) to View.post() so binder IPC doesn't suppress engine's onPlatformViewCreated dispatch
    • Fixed: Changed dismissDialogues setting default from true to false (opt-in behavior)
    • Fixed: Android 15 edge-to-edge — skip deprecated setNavigationBarColor/setNavigationBarDividerColor APIs on SDK 35+ (PR #2729 @NIKDISSV-Forever)
    • Fixed: Java deprecation cleanup — new Handler(Looper.getMainLooper()), clearSessionCookies() helper, @SuppressWarnings on WebViewClient classes (PR #2817 @Khairul989)
    • Fixed: KeepAlive NPE — use remove() instead of put(null), copy-on-iterate in dispose() (PR #2638 @mustafayildiz12)
    • Fixed: CVE-2020-6563 — sandbox file access protection in file picker (PR #2243 @AlexV525)
    • Fixed: debugAssertNotDisposed() crash — use this._channel directly in disposeChannel() (PR #2558 @MSOB7YY)
    • Fixed: onCreateWindow URL for window.open() — handle HitTestResult.UNKNOWN_TYPE (PR #1679 @zopagaduanjr)
    • Fixed: pana/pub.dev analysis failure — analysis_options.yaml linter rules (PR #2758 @note11g)
    • Fixed: Bumped example app AGP 8.4.0 → 8.6.0
    • Feature: KeepAlive URL tracking — added currentUrl to InAppWebViewControllerKeepAliveProps (PR #2614 @Hamed233)
    • Chore: Added .build/ to .gitignore — removed 3,344 tracked SPM build artifacts
    • Chore: Improved changelog generation — root CHANGELOG.md as single source of truth, actual commit messages as fallback instead of generic placeholder
    • Chore: Created UPSTREAM_ISSUES_TRIAGE.md — comprehensive triage of all 156 upstream issues
    • Chore: Created 72 tracking issues, closed 18 non-applicable, notified 25+ upstream PR authors
    Open source →
  32. 4.2.2 03 Jun 2026
    Release notes
    • Prepare for publishing version 4.2.2
    Open source →
  33. 4.2.1 24 May 2026
    Release notes
    • Prepare for publishing version 4.2.1
    Open source →
  34. 4.2.0 23 May 2026
    Release notes
    • Prepare for publishing version 4.2.0
    Open source →
  35. 4.1.0 23 May 2026
    Release notes
    • Prepare for publishing version 4.1.0
    Open source →
  36. 4.0.10 01 Apr 2026
    Release notes
    • Prepare for publishing version 4.0.10
    Open source →
  37. 4.0.9 17 Feb 2026
    Release notes
    • Prepare for publishing version 4.0.9
    Open source →
  38. 4.0.8 16 Feb 2026
    Release notes
    • Prepare for publishing version 4.0.8
    Open source →
  39. 4.0.6 16 Feb 2026
    Release notes
    • Fixed: GetHtml is tested on mac/web
    Open source →
  40. 4.0.5 16 Feb 2026
    Release notes
    • Fix: updated missing linux package reference

    • Updated dependencies to use hosted references

    Open source →
  41. 4.0.4 16 Feb 2026

    Nothing published for this version

  42. 4.0.3 16 Feb 2026
    Release notes
    • Fixed: EdgeInsets conversion issue on getHtml

    • Fix: Added getHtml method for macos,windows,web,linux platforms

    • Updated dependencies to use hosted references

    Open source →
  43. 4.0.2 16 Feb 2026
    Release notes
    • Prepare for publishing version 4.0.2
    • Updated dependencies to use hosted references
    Open source →
  44. 4.0.1 16 Feb 2026

    Nothing published for this version

  45. 4.0.0 15 Feb 2026
    Release notes
    • Refactored with Gemini-3-Flash
    • Updated dependencies to use hosted references
    Open source →
  46. 3.0.0 05 Nov 2025
    Release notes
    • removed macos,linux,web,windows support. implemented fixes for issues with Claude AI
    • Updated dependencies to use hosted references
    Open source →
  47. 2.4.28 25 Jul 2025
    Release notes
    • fixed cocoapods issues
    • Updated dependencies to use hosted references
    Open source →
  48. 2.4.27 25 Jul 2025

    Nothing published for this version

  49. 2.4.18 25 Jul 2025

    Nothing published for this version

  50. 2.4.17 25 Jul 2025

    Nothing published for this version

  51. 2.4.16 25 Jul 2025

    Nothing published for this version

  52. 2.4.15 25 Jul 2025

    Nothing published for this version

  53. 2.4.14 25 Jul 2025

    Nothing published for this version

  54. 2.4.11 25 Jul 2025

    Nothing published for this version

  55. 2.4.10 25 Jul 2025

    Nothing published for this version

  56. 2.4.8 16 Jun 2025
    Release notes
    • cocoapads paths updated
    • Updated dependencies to use hosted references
    Open source →
  57. 2.4.7 16 Jun 2025
    Release notes
    • update cocoapods path
    • Updated dependencies to use hosted references
    Open source →
  58. 2.4.6 16 Jun 2025
    Release notes
    • updated pod repo paths
    • Updated dependencies to use hosted references
    Open source →
  59. 2.4.3 16 Jun 2025
    Release notes
    • bump versions
    • Updated dependencies to use hosted references
    Open source →
  60. 2.4.2 15 Jun 2025
    Release notes
    • bump OrderedSet to 6.0.3 to satisfy Xcode 16
    • Updated dependencies to use hosted references
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive