` |
-
----
-
-### `utils/vector.h` - Vector Utilities
-
-| Function | Description |
-|----------|-------------|
-| `vector_remove(vec, el)` | Remove element |
-| `vector_remove_if(vec, pre# `utils/uri.h` - URI Utilities
-
-| Function | Description |
-|----------|-------------|
-| `get_origin_from_url(url)` | Extract origin |
-| `is_valid_url(url)` | Validate URL |
-| `get_scheme_from_url(url)` | Extract scheme |
-| `get_host_from_url(url)` | Extract host |
-| `url_encode(value)` | URL-encode string |
-
----
-
-### `utils/defer.h` - RAII Cleanup
-
-| Function | Description |
-|----------|-------------|
-| `defer(handle, callback)` | shared_ptr with custom deleter |
-| `make_scope_guard(func)` | RAII guard |
-
----
-
-### `utils/uuid.h` - UUID Generation
-
-| Function | Description |
-|----------|-------------|
-| `get_uuid()` | Generate UUID v4 string |
-
----
-
-### `utils/util.h` - General Utilities
-
-| Function | Description |
-|----------|-------------|
-| `make_pointer_optional(ptr)` | Pointer to optional |
-| `variant_to_string(var)` | Variant to string |
-
----
-
-## Plugin Scripts JS Reference
-
-JavaScript files injected into WebViews for native-web communication:
-
-| Script | File | Description |
-|--------|------|-------------|
-| **JavaScriptBridgeJS** | `javascript_bridge_js.h` | Core bridge enabling `window.flutter_inappwebview.callHandler()` for Dart-JS communication. Uses `chrome.webview.postMessage` for WebView2 communication. |
-
-**Helper class:** `plugin_scripts_util.h` contains utility functions for script management.
-
-**Note:** Windows implementation currently has fewer plugin scripts than iOS/macOS. Most functionality is handled natively through WebView2 APIs:
-- Console messages: `ICoreWebView2.add_ConsoleMessage`
-- Resource loading: `ICoreWebView2.add_WebResourceRequested`
-- Navigation: `ICoreWebView2.add_NavigationStarting`, `add_NavigationCompleted`
-- Print: `ICoreWebView2PrintSettings`
-
-Additional scripts may be needed for features not natively supported by WebView2 (e.g., AJAX/Fetch interception).
-
----
-
-## Dart-Side Development
-
-For Dart-only changes:
-1. Implement platform interface from `flutter_inappwebview_platform_interface`
-2. Windows-specific features: `WebViewEnvironment` for session isolation
-3. `WebViewInterface` enum maps to ICoreWebView2 interface versions
-
-## Native Code Development
-
-When modifying C++ code:
-- Located in `windows/`
-- **Prefer standard C++17** over Windows-specific APIs for maintainability
-- Plugin class: `FlutterInappwebviewWindowsPluginCApi`
-- Uses Flutter texture for rendering WebView2 content
-
-## Build Commands
-
-```bash
-cd flutter_inappwebview_windows && flutter pub get
-cd example && flutter build windows --debug
-```
-
-## Key C++ Files
-
-- `flutter_inappwebview_windows_plugin.cpp` - Plugin entry point
-- `in_app_webview/in_app_webview.cpp` - WebView2 wrapper
-- `webview_environment/webview_environment.cpp` - Environment management
-
-## Debugging & Inspection
-
-- **Edge DevTools**:
- - Enable debugging in your app:
- ```dart
- InAppWebViewSettings(isInspectable: true) // or areDevToolsEnabled: true
- ```
- - Right-click in the WebView and select "Inspect".
- - Or open `edge://inspect` in Edge browser.
-- **Logs**: Use `debugLog()` in C++ which prints to the Output window in Visual Studio.
-- **Visual Studio**: Attach debugger to the running process for C++ debugging.
diff --git a/.github/workflows/lock.yaml b/.github/workflows/lock.yaml
deleted file mode 100644
index e4f6f41265..0000000000
--- a/.github/workflows/lock.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-# Configuration for Lock Threads - https://github.com/dessant/lock-threads
-
-name: 'Lock Threads'
-
-# By specifying the access of one of the scopes, all of those that are not
-# specified are set to 'none'.
-permissions:
- issues: write
-
-on:
- schedule:
- - cron: '0 0 * * *' # Run every day at midnight
-
-jobs:
- lock:
- permissions:
- issues: write
- runs-on: ubuntu-latest
- steps:
- - uses: dessant/lock-threads@v5.0.1
- with:
- process-only: 'issues'
- github-token: ${{ github.token }}
- # Number of days of inactivity before a closed issue is locked.
- issue-inactive-days: 14
- issue-comment: >
- This thread has been automatically locked since there has not been
- any recent activity after it was closed. If you are still experiencing a
- similar issue, please open a new bug and a minimal reproduction of the issue.
\ No newline at end of file
diff --git a/.github/workflows/no-response.yaml b/.github/workflows/no-response.yaml
deleted file mode 100644
index b353a97287..0000000000
--- a/.github/workflows/no-response.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
-
-name: No Response
-
-# Both `issue_comment` and `scheduled` event types are required for this Action
-# to work properly.
-on:
- issue_comment:
- types: [created]
- schedule:
- - cron: '0 0 * * *' # Run every day at midnight
-
-# By specifying the access of one of the scopes, all of those that are not
-# specified are set to 'none'.
-permissions:
- issues: write
-
-jobs:
- noResponse:
- runs-on: ubuntu-latest
- steps:
- - uses: godofredoc/no-response@0ce2dc0e63e1c7d2b87752ceed091f6d32c9df09
- with:
- token: ${{ github.token }}
- # Comment to post when closing an Issue for lack of response. Set to `false` to disable
- closeComment: >
- Without additional information, we are unfortunately not sure how to
- resolve this issue. We are therefore reluctantly going to close this
- bug for now.
-
- If you find this problem please file a new issue with the same description,
- what happens and logs. It's always better to open new issues and reference
- the related ones.
-
- Thanks for your contribution.
- # Number of days of inactivity before an issue is closed for lack of response.
- daysUntilClose: 21
- # Label requiring a response.
- responseRequiredLabel: "waiting for customer response"
diff --git a/.github/workflows/stale.yaml b/.github/workflows/stale.yaml
deleted file mode 100644
index 13ffa0832d..0000000000
--- a/.github/workflows/stale.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-name: Close Stale Issues
-
-on:
- schedule:
- - cron: '0 0 * * *' # Run every day at midnight
-
-jobs:
- close-issues:
- runs-on: ubuntu-latest
- permissions:
- issues: write
- steps:
- - name: Close stale issues
- uses: actions/stale@v9.0.0
- with:
- days-before-issue-stale: 365
- days-before-issue-close: 0
- stale-issue-label: "stale"
- stale-issue-message: "This issue is stale and has been automatically closed because it has been open for more than 365 days with no activity. Please reopen a new issue if you still have it."
- days-before-pr-stale: -1
- days-before-pr-close: -1
- repo-token: ${{ secrets.GITHUB_TOKEN }}
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
deleted file mode 100755
index 5fab91a7bc..0000000000
--- a/.gitignore
+++ /dev/null
@@ -1,36 +0,0 @@
-# Miscellaneous
-*.class
-*.log
-*.pyc
-*.swp
-.DS_Store
-.atom/
-.buildlog/
-.history
-.svn/
-
-# IntelliJ related
-*.iml
-*.ipr
-*.iws
-.idea/
-
-# The .vscode folder contains launch configuration and tasks you configure in
-# VS Code which you may wish to be included in version control, so this line
-# is commented out by default.
-#.vscode/
-
-# Flutter/Dart/Pub related
-# Libraries should not include pubspec.lock, per https://dart.dev/guides/libraries/private-files#pubspeclock.
-/pubspec.lock
-doc/api/
-.dart_tool/
-.packages
-build/
-.fvm/
-
-flutter_driver_tests.log
-tool/chromedriver
-tool/chromedriver.*
-
-plans/
\ No newline at end of file
diff --git a/.metadata b/.metadata
deleted file mode 100644
index b0199f3a28..0000000000
--- a/.metadata
+++ /dev/null
@@ -1,39 +0,0 @@
-# This file tracks properties of this Flutter project.
-# Used by Flutter tool to assess capabilities and perform upgrades etc.
-#
-# This file should be version controlled.
-
-version:
- revision: 18a827f3933c19f51862dde3fa472197683249d6
- channel: stable
-
-project_type: plugin
-
-# Tracks metadata for the flutter migrate command
-migration:
- platforms:
- - platform: root
- create_revision: 18a827f3933c19f51862dde3fa472197683249d6
- base_revision: 18a827f3933c19f51862dde3fa472197683249d6
- - platform: android
- create_revision: 18a827f3933c19f51862dde3fa472197683249d6
- base_revision: 18a827f3933c19f51862dde3fa472197683249d6
- - platform: ios
- create_revision: 18a827f3933c19f51862dde3fa472197683249d6
- base_revision: 18a827f3933c19f51862dde3fa472197683249d6
- - platform: macos
- create_revision: 18a827f3933c19f51862dde3fa472197683249d6
- base_revision: 18a827f3933c19f51862dde3fa472197683249d6
- - platform: web
- create_revision: 18a827f3933c19f51862dde3fa472197683249d6
- base_revision: 18a827f3933c19f51862dde3fa472197683249d6
-
- # User provided section
-
- # List of Local paths (relative to this file) that should be
- # ignored by the migrate tool.
- #
- # Files that are not part of the templates will be ignored by default.
- unmanaged_files:
- - 'lib/main.dart'
- - 'ios/Runner.xcodeproj/project.pbxproj'
diff --git a/.vscode/launch.json b/.vscode/launch.json
deleted file mode 100644
index 229674fe59..0000000000
--- a/.vscode/launch.json
+++ /dev/null
@@ -1,334 +0,0 @@
-{
- // Use IntelliSense to learn about possible attributes.
- // Hover to view descriptions of existing attributes.
- // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
- "version": "0.2.0",
- "configurations": [
- {
- "name": "flutter_inappwebview",
- "cwd": "flutter_inappwebview",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "flutter_inappwebview (profile mode)",
- "cwd": "flutter_inappwebview",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "flutter_inappwebview (release mode)",
- "cwd": "flutter_inappwebview",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "flutter_inappwebview_android",
- "cwd": "flutter_inappwebview_android",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "flutter_inappwebview_android (profile mode)",
- "cwd": "flutter_inappwebview_android",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "flutter_inappwebview_android (release mode)",
- "cwd": "flutter_inappwebview_android",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "flutter_inappwebview_ios",
- "cwd": "flutter_inappwebview_ios",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "flutter_inappwebview_ios (profile mode)",
- "cwd": "flutter_inappwebview_ios",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "flutter_inappwebview_ios (release mode)",
- "cwd": "flutter_inappwebview_ios",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "flutter_inappwebview_linux",
- "cwd": "flutter_inappwebview_linux",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "flutter_inappwebview_linux (profile mode)",
- "cwd": "flutter_inappwebview_linux",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "flutter_inappwebview_linux (release mode)",
- "cwd": "flutter_inappwebview_linux",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "flutter_inappwebview_macos",
- "cwd": "flutter_inappwebview_macos",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "flutter_inappwebview_macos (profile mode)",
- "cwd": "flutter_inappwebview_macos",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "flutter_inappwebview_macos (release mode)",
- "cwd": "flutter_inappwebview_macos",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "flutter_inappwebview_platform_interface",
- "cwd": "flutter_inappwebview_platform_interface",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "flutter_inappwebview_platform_interface (profile mode)",
- "cwd": "flutter_inappwebview_platform_interface",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "flutter_inappwebview_platform_interface (release mode)",
- "cwd": "flutter_inappwebview_platform_interface",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "flutter_inappwebview_web",
- "cwd": "flutter_inappwebview_web",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "flutter_inappwebview_web (profile mode)",
- "cwd": "flutter_inappwebview_web",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "flutter_inappwebview_web (release mode)",
- "cwd": "flutter_inappwebview_web",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "flutter_inappwebview_windows",
- "cwd": "flutter_inappwebview_windows",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "flutter_inappwebview_windows (profile mode)",
- "cwd": "flutter_inappwebview_windows",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "flutter_inappwebview_windows (release mode)",
- "cwd": "flutter_inappwebview_windows",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "flutter_inappwebview_internal_annotations",
- "cwd": "dev_packages/flutter_inappwebview_internal_annotations",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "generators",
- "cwd": "dev_packages/generators",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "generators (profile mode)",
- "cwd": "dev_packages/generators",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "generators (release mode)",
- "cwd": "dev_packages/generators",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "example",
- "cwd": "flutter_inappwebview/example",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "example (profile mode)",
- "cwd": "flutter_inappwebview/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "example (release mode)",
- "cwd": "flutter_inappwebview/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "android example",
- "cwd": "flutter_inappwebview_android/example",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "android example (profile mode)",
- "cwd": "flutter_inappwebview_android/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "android example (release mode)",
- "cwd": "flutter_inappwebview_android/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "ios example",
- "cwd": "flutter_inappwebview_ios/example",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "ios example (profile mode)",
- "cwd": "flutter_inappwebview_ios/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "ios example (release mode)",
- "cwd": "flutter_inappwebview_ios/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "linux example",
- "cwd": "flutter_inappwebview_linux/example",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "linux example (profile mode)",
- "cwd": "flutter_inappwebview_linux/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "linux example (release mode)",
- "cwd": "flutter_inappwebview_linux/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "macos example",
- "cwd": "flutter_inappwebview_macos/example",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "macos example (profile mode)",
- "cwd": "flutter_inappwebview_macos/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "macos example (release mode)",
- "cwd": "flutter_inappwebview_macos/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "web example",
- "cwd": "flutter_inappwebview_web/example",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "web example (profile mode)",
- "cwd": "flutter_inappwebview_web/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "web example (release mode)",
- "cwd": "flutter_inappwebview_web/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- },
- {
- "name": "windows example",
- "cwd": "flutter_inappwebview_windows/example",
- "request": "launch",
- "type": "dart"
- },
- {
- "name": "windows example (profile mode)",
- "cwd": "flutter_inappwebview_windows/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "profile"
- },
- {
- "name": "windows example (release mode)",
- "cwd": "flutter_inappwebview_windows/example",
- "request": "launch",
- "type": "dart",
- "flutterMode": "release"
- }
- ]
-}
\ No newline at end of file
diff --git a/.vscode/settings.json b/.vscode/settings.json
deleted file mode 100644
index f08edc2aaf..0000000000
--- a/.vscode/settings.json
+++ /dev/null
@@ -1,76 +0,0 @@
-{
- "cmake.configureOnOpen": false,
- "files.associations": {
- "algorithm": "cpp",
- "any": "cpp",
- "array": "cpp",
- "atomic": "cpp",
- "bit": "cpp",
- "cctype": "cpp",
- "charconv": "cpp",
- "chrono": "cpp",
- "clocale": "cpp",
- "cmath": "cpp",
- "compare": "cpp",
- "concepts": "cpp",
- "coroutine": "cpp",
- "cstddef": "cpp",
- "cstdint": "cpp",
- "cstdio": "cpp",
- "cstdlib": "cpp",
- "cstring": "cpp",
- "ctime": "cpp",
- "cwchar": "cpp",
- "exception": "cpp",
- "format": "cpp",
- "forward_list": "cpp",
- "functional": "cpp",
- "initializer_list": "cpp",
- "iomanip": "cpp",
- "ios": "cpp",
- "iosfwd": "cpp",
- "iostream": "cpp",
- "istream": "cpp",
- "iterator": "cpp",
- "limits": "cpp",
- "list": "cpp",
- "locale": "cpp",
- "map": "cpp",
- "memory": "cpp",
- "new": "cpp",
- "optional": "cpp",
- "ostream": "cpp",
- "ratio": "cpp",
- "set": "cpp",
- "sstream": "cpp",
- "stdexcept": "cpp",
- "stop_token": "cpp",
- "streambuf": "cpp",
- "string": "cpp",
- "system_error": "cpp",
- "thread": "cpp",
- "tuple": "cpp",
- "type_traits": "cpp",
- "typeinfo": "cpp",
- "unordered_map": "cpp",
- "utility": "cpp",
- "variant": "cpp",
- "vector": "cpp",
- "xfacet": "cpp",
- "xhash": "cpp",
- "xiosbase": "cpp",
- "xlocale": "cpp",
- "xlocbuf": "cpp",
- "xlocinfo": "cpp",
- "xlocmes": "cpp",
- "xlocmon": "cpp",
- "xlocnum": "cpp",
- "xloctime": "cpp",
- "xmemory": "cpp",
- "xstring": "cpp",
- "xtr1common": "cpp",
- "xtree": "cpp",
- "xutility": "cpp"
- },
- "dart.flutterSdkPath": ".fvm/flutter_sdk/bin"
-}
\ No newline at end of file
diff --git a/LICENSE b/LICENSE
deleted file mode 100755
index 6ccd8da42c..0000000000
--- a/LICENSE
+++ /dev/null
@@ -1,201 +0,0 @@
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright 2023 Lorenzo Pichilli
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
diff --git a/README.md b/README.md
deleted file mode 100755
index f6cafe5f44..0000000000
--- a/README.md
+++ /dev/null
@@ -1,226 +0,0 @@
-
-
-# Flutter InAppWebView Plugin [](https://twitter.com/intent/tweet?text=Flutter%20InAppBrowser%20plugin!&url=https://github.com/pichillilorenzo/flutter_inappwebview&hashtags=flutter,flutterio,dart,dartlang,webview) [](https://www.facebook.com/sharer/sharer.php?u=https%3A//github.com/pichillilorenzo/flutter_inappwebview)
-
-
-
-
-[](#contributors-)
-
-
-[](https://pub.dartlang.org/packages/flutter_inappwebview)
-[](https://pub.dev/packages/flutter_inappwebview/score)
-[](https://pub.dev/packages/flutter_inappwebview/score)
-[](https://pub.dev/packages/flutter_inappwebview/score)
-[](https://stackoverflow.com/questions/tagged/flutter-inappwebview)
-[](/LICENSE)
-
-[](https://inappwebview.dev/donate/)
-[](https://github.com/pichillilorenzo/flutter_inappwebview)
-[](https://github.com/pichillilorenzo/flutter_inappwebview)
-
-###### Supported Platforms
-
-[](https://pub.dartlang.org/packages/flutter_inappwebview_platform_interface)
-[](https://pub.dartlang.org/packages/flutter_inappwebview_android)
-[](https://pub.dartlang.org/packages/flutter_inappwebview_ios)
-[](https://pub.dartlang.org/packages/flutter_inappwebview_macos)
-[](https://pub.dartlang.org/packages/flutter_inappwebview_windows)
-[](https://pub.dartlang.org/packages/flutter_inappwebview_linux)
-[](https://pub.dartlang.org/packages/flutter_inappwebview_web)
-
-A Flutter plugin that allows you to add an inline webview, to use an headless webview, and to open an in-app browser window.
-
-
-
-## Articles/Resources
-
-- [Official documentation: inappwebview.dev/docs](https://inappwebview.dev/docs/intro)
-- Read the online [API Reference](https://pub.dartlang.org/documentation/flutter_inappwebview/latest/) to get the **full API documentation**.
-- [Official blog: inappwebview.dev/blog](https://inappwebview.dev/blog/)
-- Find open source projects on the [Official Showcase page: inappwebview.dev/showcase](https://inappwebview.dev/showcase/)
-- Check the [flutter_inappwebview_examples](https://github.com/pichillilorenzo/flutter_inappwebview_examples) repository for project examples
-- Check the [flutter_inappwebview/example/integration_test/webview_flutter_test.dart](https://github.com/pichillilorenzo/flutter_inappwebview/blob/master/flutter_inappwebview/example/integration_test/webview_flutter_test.dart) file for other code examples
-- [Flutter Browser App](https://github.com/pichillilorenzo/flutter_browser_app): A Full-Featured Mobile Browser App (such as the Google Chrome mobile browser) created using Flutter and the features offered by the flutter_inappwebview plugin
-
-## Showcase - Who use it
-
-Check the [Showcase](https://inappwebview.dev/showcase/) page to see an open list of Apps built with **Flutter** and **Flutter InAppWebView**.
-
-#### Are you using the **Flutter InAppWebView** plugin and would you like to add your App there?
-
-Send a submission request to the [Submit App](https://inappwebview.dev/submit-app/) page!
-
-## Requirements
-
-- Dart sdk: "^3.8.0"
-- Flutter: ">=3.32.0"
-- Android: `minSdkVersion >= 19`, [AGP](https://developer.android.com/build/releases/gradle-plugin) version `>= 7.3.0` (use [Android Studio - Android Gradle plugin Upgrade Assistant](https://developer.android.com/build/agp-upgrade-assistant) for help)
-- iOS 12.0+, Xcode version `>= 15.0`
-- MacOS 10.14+: Xcode version `>= 15.0`
-- Windows: [NuGet CLI](https://learn.microsoft.com/en-us/nuget/install-nuget-client-tools?tabs=windows#nugetexe-cli) available on your PATH environment variable
-- Linux: WPE 2.0 WebKit built
-
-## Installation
-
-Add `flutter_inappwebview` as a [dependency in your pubspec.yaml file](https://flutter.io/using-packages/).
-
-### Platform Installation Setup:
-- [Android](https://inappwebview.dev/docs/intro/#setup-android)
-- [iOS](https://inappwebview.dev/docs/intro/#setup-ios)
-- [macOS](https://inappwebview.dev/docs/intro/#setup-macos)
-- [Windows](https://inappwebview.dev/docs/intro/#setup-windows)
-- [Web](https://inappwebview.dev/docs/intro/#setup-web)
-
-## Support
-
-Did you find this plugin useful? Please consider to [make a donation](https://inappwebview.dev/donate/) to help improve it!
-
-## Contributors ✨
-
-Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
-
-
-
-
-
-
-
-
-
-
-
-This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
diff --git a/dev_packages/flutter_inappwebview_internal_annotations/.gitignore b/dev_packages/flutter_inappwebview_internal_annotations/.gitignore
deleted file mode 100755
index cac255942f..0000000000
--- a/dev_packages/flutter_inappwebview_internal_annotations/.gitignore
+++ /dev/null
@@ -1,34 +0,0 @@
-# Miscellaneous
-*.class
-*.log
-*.pyc
-*.swp
-.DS_Store
-.atom/
-.buildlog/
-.history
-.svn/
-
-# IntelliJ related
-*.iml
-*.ipr
-*.iws
-.idea/
-
-# The .vscode folder contains launch configuration and tasks you configure in
-# VS Code which you may wish to be included in version control, so this line
-# is commented out by default.
-#.vscode/
-
-# Flutter/Dart/Pub related
-# Libraries should not include pubspec.lock, per https://dart.dev/guides/libraries/private-files#pubspeclock.
-/pubspec.lock
-**/doc/api/
-.dart_tool/
-.packages
-build/
-.fvm/
-
-flutter_driver_tests.log
-tool/chromedriver
-tool/chromedriver.*
\ No newline at end of file
diff --git a/dev_packages/flutter_inappwebview_internal_annotations/CHANGELOG.md b/dev_packages/flutter_inappwebview_internal_annotations/CHANGELOG.md
deleted file mode 100755
index dc2825f477..0000000000
--- a/dev_packages/flutter_inappwebview_internal_annotations/CHANGELOG.md
+++ /dev/null
@@ -1,19 +0,0 @@
-## 1.3.0
-
-- Updated linux platform name
-
-## 1.2.0
-
-- Updated `ExchangeableEnum` and `ExchangeableObjectProperty`.
-
-## 1.1.1
-
-- Added `ExchangeableObject.fromMapForceAllInline`.
-
-## 1.1.0
-
-- Added `ExchangeableObject.copyMethod`.
-
-## 1.0.0
-
-Initial release.
\ No newline at end of file
diff --git a/dev_packages/flutter_inappwebview_internal_annotations/LICENSE b/dev_packages/flutter_inappwebview_internal_annotations/LICENSE
deleted file mode 100755
index 6ccd8da42c..0000000000
--- a/dev_packages/flutter_inappwebview_internal_annotations/LICENSE
+++ /dev/null
@@ -1,201 +0,0 @@
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright 2023 Lorenzo Pichilli
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
diff --git a/dev_packages/flutter_inappwebview_internal_annotations/README.md b/dev_packages/flutter_inappwebview_internal_annotations/README.md
deleted file mode 100644
index 2576dc56c4..0000000000
--- a/dev_packages/flutter_inappwebview_internal_annotations/README.md
+++ /dev/null
@@ -1 +0,0 @@
-Internal annotations used by the generator of [flutter_inappwebview](https://github.com/pichillilorenzo/flutter_inappwebview) plugin.
\ No newline at end of file
diff --git a/dev_packages/flutter_inappwebview_internal_annotations/lib/flutter_inappwebview_internal_annotations.dart b/dev_packages/flutter_inappwebview_internal_annotations/lib/flutter_inappwebview_internal_annotations.dart
deleted file mode 100644
index 1ff80f76ae..0000000000
--- a/dev_packages/flutter_inappwebview_internal_annotations/lib/flutter_inappwebview_internal_annotations.dart
+++ /dev/null
@@ -1,11 +0,0 @@
-library flutter_inappwebview_internal_annotations;
-
-export 'src/exchangeable_object.dart';
-export 'src/exchangeable_object_constructor.dart';
-export 'src/exchangeable_object_property.dart';
-export 'src/exchangeable_object_method.dart';
-export 'src/exchangeable_enum.dart';
-export 'src/exchangeable_enum_custom_value.dart';
-export 'src/supported_platforms.dart';
-export 'src/enum_supported_platforms.dart';
-export 'src/constants.dart';
\ No newline at end of file
diff --git a/dev_packages/flutter_inappwebview_internal_annotations/lib/src/constants.dart b/dev_packages/flutter_inappwebview_internal_annotations/lib/src/constants.dart
deleted file mode 100644
index ee3ddc7eb1..0000000000
--- a/dev_packages/flutter_inappwebview_internal_annotations/lib/src/constants.dart
+++ /dev/null
@@ -1,29 +0,0 @@
-const kPlatformNameAndroid = "Android WebView";
-const kPlatformNameIOS = "iOS WKWebView";
-const kPlatformNameMacOS = "macOS WKWebView";
-const kPlatformNameWindows = "Windows WebView2";
-const kPlatformNameLinux = "Linux WPE WebKit";
-const kPlatformNameWeb = "Web \\