Skip to content

V2.2.2 alpha#128

Open
ioa747 wants to merge 15 commits into
mainfrom
v2.2.2-alpha
Open

V2.2.2 alpha#128
ioa747 wants to merge 15 commits into
mainfrom
v2.2.2-alpha

Conversation

@ioa747

@ioa747 ioa747 commented Jun 27, 2026

Copy link
Copy Markdown
Owner

Important

Thanks for your effort and interest 💛 in improving the project. It's very appreciated.

Description

Provide a configurable throttling mechanism for messages sent from JavaScript to AutoIt via the WebView2 bridge to prevent message loss when throttling is too restrictive for certain use cases, while keeping safety defaults.

🔗 Linked GitHub Issues

(#127)

Closes #\127

📋 What is the current behavior?

The loss of messages from JavaScript to AutoIt message due to the tight throttling mechanism

🚀 What is the new behavior?

Implement the ThrottlingIntervalMs property on the manager class, forwarding to the bridge object

  • ThrottlingIntervalMs [Property]: Gets or sets the throttling interval in milliseconds for messages sent from JavaScript to AutoIt.
    Set to 0 to disable throttling entirely.
    Default is 20 ms.

Type of changes

  • 🪲 Bugfix (change which fixes an issue)
  • ⭐ New Feature (change which adds functionality)
  • ⭐ New Example (this PR adds a new example)
  • 🔒 Security fix (change which improves security)
  • 🔮 Code style update (formatting, renaming)
  • 🔨 Refactoring (code optimization without functional change)
  • 📚 Documentation (updates to README or docs)
  • ⚙️ Build or CI related changes
  • 🧿 Other type

Breaking changes 🔥

  • Yes
  • No

How and where was this tested?

🖥️ Describe where you tested your changes

System:

  • Windows 11 (x64)
  • Windows 10 (x64)
  • Windows 10 (x86)
  • Windows Server ......

Context:

  • COM object NetJson.Parser
  • COM object NetWebView2.Manager - WebView2
  • COM object NetWebView2.Manager - Bridge
  • UDF - NetWebView2Lib.au3
  • Examples: 024-ConfigurableThrottling.au3
  • with ...

🔬 Describe how you tested your changes

  • Manually tested in system and context shown above
  • Ran automatic tests (unit tests, integration tests, etc.)
  • Other ways

Checklist

  • I have read and understood the available contributing guidelines.
  • I have ensured my code follows the available code conventions.
  • I have reviewed my changes.
  • I have made corresponding changes to the documentation (if applicable).
  • I have added/updated necessary tests to cover the changes (if applicable).
  • I have checked for potential security implications.

Additional context

Added as a new parameter to the signature of _NetWebView2_CreateManager

_NetWebView2_CreateManager($sUserAgent = "", $s_fnEventPrefix = "", $s_AddBrowserArgs = "", $bVerbose = False, $iThrottlingIntervalMs = 20)

$iThrottlingIntervalMs - [optional] an integer value.
Sets the JS-to-AutoIt message throttling interval in ms.
Default is 20.
Set to 0 to disable throttling.

Screenshots

Note to reviewers

ioa747 added 15 commits June 26, 2026 13:39
Added configurable message throttling for JavaScript to AutoIt communication and updated key features and enhancements.
Added details about configurable message throttling in v2.2.2-alpha.
Added a section about the new configurable message throttling feature in version 2.2.2-alpha.
Added support for dynamic throttling in the WebView2 test, allowing phase transitions and message counting. Updated the HTML structure for better user interaction and feedback.
Added as a new parameter to the signature of `_NetWebView2_CreateManager`

`_NetWebView2_CreateManager($sUserAgent = "", $s_fnEventPrefix = "", $s_AddBrowserArgs = "", $bVerbose = False, $iThrottlingIntervalMs = 20)`

$iThrottlingIntervalMs - [optional] an integer value. 
Sets the JS-to-AutoIt message throttling interval in ms. 
Default is 20.
Set to 0 to disable throttling.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant