Skip to content

feat(webview2): port generator overhaul, generated tests and examples to v3/internal/webview2#5768

Open
taliesin-ai wants to merge 3 commits into
masterfrom
feat/webview2-gen-v3
Open

feat(webview2): port generator overhaul, generated tests and examples to v3/internal/webview2#5768
taliesin-ai wants to merge 3 commits into
masterfrom
feat/webview2-gen-v3

Conversation

@taliesin-ai

Copy link
Copy Markdown
Collaborator

What

Ports the WebView2 binding-generator overhaul onto the folded layout at v3/internal/webview2 (following #5711). The overhaul was previously staged as a standalone /v2 module on feat/webview2-v2-clean; that module strategy is now obsolete, so this drops it entirely — no go.mod, no tags, versions with v3 itself.

Scope — dormant by design

The generated pkg/webview2 package has no production importer. The v3 runtime still drives WebView2 exclusively through the hand-maintained pkg/edge + webviewloader (untouched by this PR). Merging therefore changes zero runtime behavior — it lands the generator + tested bindings so a follow-up PR can migrate chromium.go onto them. That migration is tracked separately.

All runtime fixes already on master are preserved: #5734 (mixed-DPI), #5658 (transient COM recovery), #5597 (non-fatal SetSize/PutBounds), #5568 (Focus guard) live in pkg/edge and are not touched. The by-value-double ABI fix #5741 is subsumed structurally by the generator (generated bindings are correct by construction).

Contents

  • scripts/ — overhauled webview2gen pipeline (download/generate/capabilities/changelog/latest/verify/full), incremental generation, internal idl/notes/capabilities/idlversion packages, at 100% test coverage.
  • pkg/webview2/ — regenerated from SDK 1.0.3967.48 with the ABI fixes (inherited vtbl slots, per-arch by-value doubles/aggregates, QI helpers on the right types, LPWSTR**/array marshalling, 24-byte VARIANT, BOOL struct layout) plus 1,020+ generated hermetic tests and a live smoke test.
  • _examples/ — minimal, interactive (12 code-kind PASS/FAIL checklist), kitchensink (17-feature interactive control panel).
  • docs — README/ARCHITECTURE/CHANGELOG rewritten for the folded layout.
  • CIwebview2-verify.yml (hermetic + live Windows jobs + regeneration-determinism gate) and webview2-update.yml (weekly SDK-update PRs) at the new paths. Release machinery stays retired (ci: retire webview2 release machinery after the fold #5748).

Validation

  • webview2gen verify: 587 files byte-identical to committed output.
  • scripts suite green; v3 cross-builds for windows/amd64+arm64+386.
  • Full generated suite PASS on real Windows (amd64 + native 386, exercising the two-word/four-word marshalling paths).
  • Live environment round-trip through the generated binding returned runtime 149.0.4022.98.
  • Example apps manually verified on real Windows.

… to v3/internal/webview2

Realigns the feat/webview2-v2-clean work with the fold (#5711): the binding
now lives inside the v3 module, so the /v2 module strategy is dropped
(no go.mod, no tags — versions with v3 itself).

- scripts/: replace the generator with the overhauled webview2gen pipeline
  (download/generate/capabilities/changelog/latest/verify/full subcommands,
  incremental generation, internal idl/notes/capabilities/idlversion
  packages) at 100% test coverage.
- pkg/webview2/: regenerate from SDK 1.0.3967.48 with the ABI fixes
  (inherited vtbl slots, per-arch by-value doubles/aggregates, QI helpers
  on the right types, LPWSTR**/array marshalling, 24-byte VARIANT, BOOL
  struct layout) plus 267 generated *_gen_test.go files (1020 hermetic
  tests) and a live smoke test. The putdouble/putrect helper files are
  superseded by inlined compile-time arch switches in the generated code.
- pkg/edge/, webviewloader/, combridge/: untouched — all runtime fixes
  that landed on master (#5734, #5741, #5658, #5597, #5568) are preserved;
  the generated bindings subsume #5741's by-value double handling.
- _examples/: minimal, interactive (12 code-kind PASS/FAIL checklist) and
  kitchensink (17-feature interactive control panel), all verified on real
  Windows.
- docs: README/ARCHITECTURE/CHANGELOG rewritten for the folded layout.
- CI: webview2-verify.yml (hermetic + live Windows jobs, regeneration
  determinism gate) and webview2-update.yml (weekly SDK-update PRs) at the
  new paths; release machinery stays retired (#5748).

Validated: webview2gen verify reports 587 files byte-identical; scripts
suite green; v3 cross-builds for windows/amd64+arm64+386; full generated
suite PASS on win-node1 (amd64 + native 386); live environment round-trip
via the generated binding returned runtime 149.0.4022.98.
@coderabbitai

coderabbitai Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Too many files!

This PR contains 653 files, which is 503 over the limit of 150.

To get a review, narrow the scope:
• coderabbit review --type committed # exclude uncommitted changes
• coderabbit review --dir # limit to a subdirectory
• coderabbit review --base # compare against a closer base

Upgrade to a paid plan to raise the limit.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: ea1548f0-eb28-4047-b352-9910c9901d06

📥 Commits

Reviewing files that changed from the base of the PR and between 3440ae5 and 76be053.

📒 Files selected for processing (653)
  • .github/workflows/webview2-update.yml
  • .github/workflows/webview2-verify.yml
  • v3/internal/webview2/.gitattributes
  • v3/internal/webview2/.gitignore
  • v3/internal/webview2/ARCHITECTURE.md
  • v3/internal/webview2/CHANGELOG.md
  • v3/internal/webview2/README.md
  • v3/internal/webview2/_examples/interactive/main.go
  • v3/internal/webview2/_examples/kitchensink/main.go
  • v3/internal/webview2/_examples/minimal/main.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_BOUNDS_MODE.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_BROWSING_DATA_KINDS.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_CAPTURE_PREVIEW_IMAGE_FORMAT.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_CHANNEL_SEARCH_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_CLIENT_CERTIFICATE_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_CONTEXT_MENU_ITEM_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_CONTEXT_MENU_TARGET_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_COOKIE_SAME_SITE_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_DEFAULT_DOWNLOAD_DIALOG_CORNER_ALIGNMENT.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_DOWNLOAD_INTERRUPT_REASON.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_DOWNLOAD_STATE.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_FAVICON_IMAGE_FORMAT.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_FILE_SYSTEM_HANDLE_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_FILE_SYSTEM_HANDLE_PERMISSION.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_FRAME_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_HOST_RESOURCE_ACCESS_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_KEY_EVENT_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_MEMORY_USAGE_TARGET_LEVEL.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_MOUSE_EVENT_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_MOUSE_EVENT_VIRTUAL_KEYS.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_MOVE_FOCUS_REASON.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_NAVIGATION_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_NON_CLIENT_REGION_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PDF_TOOLBAR_ITEMS.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PERMISSION_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PERMISSION_STATE.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PHYSICAL_KEY_STATUS.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_POINTER_EVENT_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PREFERRED_COLOR_SCHEME.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PRINT_COLLATION.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PRINT_COLOR_MODE.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PRINT_DIALOG_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PRINT_DUPLEX.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PRINT_MEDIA_SIZE.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PRINT_ORIENTATION.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PRINT_STATUS.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PROCESS_FAILED_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PROCESS_FAILED_REASON.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_PROCESS_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_RELEASE_CHANNELS.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_SAVE_AS_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_SAVE_AS_UI_RESULT.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_SCRIPT_DIALOG_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_SCROLLBAR_STYLE.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_SERVER_CERTIFICATE_ERROR_ACTION.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_SHARED_BUFFER_ACCESS.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_TEXT_DIRECTION_KIND.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_TRACKING_PREVENTION_LEVEL.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_WEB_ERROR_STATUS.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_WEB_RESOURCE_CONTEXT.go
  • v3/internal/webview2/pkg/webview2/COREWEBVIEW2_WEB_RESOURCE_REQUEST_SOURCE_KINDS.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2AcceleratorKeyPressedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2AcceleratorKeyPressedEventArgs2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2AcceleratorKeyPressedEventArgs2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2AcceleratorKeyPressedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2AcceleratorKeyPressedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2AcceleratorKeyPressedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2AddScriptToExecuteOnDocumentCreatedCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2AddScriptToExecuteOnDocumentCreatedCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BasicAuthenticationRequestedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BasicAuthenticationRequestedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BasicAuthenticationRequestedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BasicAuthenticationRequestedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BasicAuthenticationResponse.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BasicAuthenticationResponse_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserExtension.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserExtensionEnableCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserExtensionEnableCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserExtensionList.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserExtensionList_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserExtensionRemoveCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserExtensionRemoveCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserExtension_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserProcessExitedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserProcessExitedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserProcessExitedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BrowserProcessExitedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BytesReceivedChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2BytesReceivedChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CallDevToolsProtocolMethodCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CallDevToolsProtocolMethodCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CapturePreviewCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CapturePreviewCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Certificate.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Certificate_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClearBrowsingDataCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClearBrowsingDataCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClearServerCertificateErrorActionsCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClearServerCertificateErrorActionsCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClientCertificate.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClientCertificateCollection.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClientCertificateCollection_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClientCertificateRequestedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClientCertificateRequestedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClientCertificateRequestedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClientCertificateRequestedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ClientCertificate_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CompositionController.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CompositionController2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CompositionController2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CompositionController3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CompositionController3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CompositionController4.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CompositionController4_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CompositionController5.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CompositionController5_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CompositionController_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContainsFullScreenElementChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContainsFullScreenElementChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContentLoadingEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContentLoadingEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContentLoadingEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContentLoadingEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContextMenuItem.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContextMenuItemCollection.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContextMenuItemCollection_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContextMenuItem_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContextMenuRequestedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContextMenuRequestedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContextMenuRequestedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContextMenuRequestedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContextMenuTarget.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ContextMenuTarget_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Controller.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Controller2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Controller2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Controller3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Controller3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Controller4.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Controller4_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ControllerOptions.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ControllerOptions2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ControllerOptions2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ControllerOptions3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ControllerOptions3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ControllerOptions4.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ControllerOptions4_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ControllerOptions_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Controller_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Cookie.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CookieList.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CookieList_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CookieManager.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CookieManager_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Cookie_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CreateCoreWebView2CompositionControllerCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CreateCoreWebView2CompositionControllerCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CreateCoreWebView2ControllerCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CreateCoreWebView2ControllerCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CreateCoreWebView2EnvironmentCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CreateCoreWebView2EnvironmentCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CursorChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CursorChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CustomItemSelectedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CustomItemSelectedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CustomSchemeRegistration.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2CustomSchemeRegistration_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DOMContentLoadedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DOMContentLoadedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DOMContentLoadedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DOMContentLoadedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Deferral.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Deferral_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DevToolsProtocolEventReceivedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DevToolsProtocolEventReceivedEventArgs2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DevToolsProtocolEventReceivedEventArgs2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DevToolsProtocolEventReceivedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DevToolsProtocolEventReceivedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DevToolsProtocolEventReceivedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DevToolsProtocolEventReceiver.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DevToolsProtocolEventReceiver_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DocumentTitleChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DocumentTitleChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DownloadOperation.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DownloadOperation_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DownloadStartingEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DownloadStartingEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DownloadStartingEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DownloadStartingEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DragStartingEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DragStartingEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DragStartingEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2DragStartingEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment10.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment10_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment11.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment11_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment12.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment12_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment13.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment13_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment14.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment14_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment15.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment15_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment4.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment4_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment5.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment5_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment6.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment6_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment7.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment7_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment8.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment8_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment9.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment9_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions4.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions4_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions5.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions5_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions6.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions6_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions7.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions7_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions8.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions8_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EnvironmentOptions_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Environment_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EstimatedEndTimeChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2EstimatedEndTimeChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ExecuteScriptCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ExecuteScriptCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ExecuteScriptResult.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ExecuteScriptResult_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ExecuteScriptWithResultCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ExecuteScriptWithResultCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FaviconChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FaviconChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2File.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FileSystemHandle.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FileSystemHandle_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2File_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Find.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FindActiveMatchIndexChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FindActiveMatchIndexChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FindMatchCountChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FindMatchCountChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FindOptions.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FindOptions_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FindStartCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FindStartCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Find_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FocusChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FocusChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame4.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame4_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame5.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame5_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame6.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame6_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame7.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame7_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameChildFrameCreatedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameChildFrameCreatedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameContentLoadingEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameContentLoadingEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameCreatedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameCreatedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameCreatedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameCreatedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameDOMContentLoadedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameDOMContentLoadedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameDestroyedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameDestroyedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameInfo.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameInfo2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameInfo2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameInfoCollection.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameInfoCollectionIterator.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameInfoCollectionIterator_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameInfoCollection_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameInfo_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameNameChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameNameChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameNavigationCompletedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameNavigationCompletedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameNavigationStartingEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameNavigationStartingEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FramePermissionRequestedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FramePermissionRequestedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameScreenCaptureStartingEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameScreenCaptureStartingEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameWebMessageReceivedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2FrameWebMessageReceivedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Frame_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2GetCookiesCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2GetCookiesCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2GetFaviconCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2GetFaviconCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2GetNonDefaultPermissionSettingsCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2GetNonDefaultPermissionSettingsCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2GetProcessExtendedInfosCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2GetProcessExtendedInfosCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2HistoryChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2HistoryChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2HttpHeadersCollectionIterator.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2HttpHeadersCollectionIterator_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2HttpRequestHeaders.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2HttpRequestHeaders_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2HttpResponseHeaders.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2HttpResponseHeaders_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2IsDefaultDownloadDialogOpenChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2IsDefaultDownloadDialogOpenChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2IsDocumentPlayingAudioChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2IsDocumentPlayingAudioChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2IsMutedChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2IsMutedChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2LaunchingExternalUriSchemeEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2LaunchingExternalUriSchemeEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2LaunchingExternalUriSchemeEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2LaunchingExternalUriSchemeEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2MoveFocusRequestedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2MoveFocusRequestedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2MoveFocusRequestedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2MoveFocusRequestedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationCompletedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationCompletedEventArgs2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationCompletedEventArgs2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationCompletedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationCompletedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationCompletedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationStartingEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationStartingEventArgs2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationStartingEventArgs2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationStartingEventArgs3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationStartingEventArgs3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationStartingEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationStartingEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NavigationStartingEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NewBrowserVersionAvailableEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NewBrowserVersionAvailableEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NewWindowRequestedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NewWindowRequestedEventArgs2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NewWindowRequestedEventArgs2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NewWindowRequestedEventArgs3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NewWindowRequestedEventArgs3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NewWindowRequestedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NewWindowRequestedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NewWindowRequestedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NonClientRegionChangedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NonClientRegionChangedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NonClientRegionChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NonClientRegionChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Notification.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NotificationCloseRequestedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NotificationCloseRequestedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NotificationReceivedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NotificationReceivedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NotificationReceivedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2NotificationReceivedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Notification_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ObjectCollection.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ObjectCollectionView.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ObjectCollectionView_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ObjectCollection_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionRequestedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionRequestedEventArgs2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionRequestedEventArgs2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionRequestedEventArgs3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionRequestedEventArgs3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionRequestedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionRequestedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionRequestedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionSetting.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionSettingCollectionView.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionSettingCollectionView_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PermissionSetting_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PointerInfo.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PointerInfo_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PrintCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PrintCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PrintSettings.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PrintSettings2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PrintSettings2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PrintSettings_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PrintToPdfCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PrintToPdfCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PrintToPdfStreamCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2PrintToPdfStreamCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessExtendedInfo.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessExtendedInfoCollection.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessExtendedInfoCollection_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessExtendedInfo_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessFailedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessFailedEventArgs2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessFailedEventArgs2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessFailedEventArgs3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessFailedEventArgs3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessFailedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessFailedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessFailedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessInfo.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessInfoCollection.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessInfoCollection_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessInfo_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessInfosChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProcessInfosChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile4.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile4_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile5.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile5_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile6.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile6_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile7.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile7_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile8.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile8_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProfileAddBrowserExtensionCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProfileAddBrowserExtensionCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProfileDeletedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProfileDeletedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProfileGetBrowserExtensionsCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ProfileGetBrowserExtensionsCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Profile_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2RasterizationScaleChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2RasterizationScaleChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2RegionRectCollectionView.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2RegionRectCollectionView_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SaveAsUIShowingEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SaveAsUIShowingEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SaveAsUIShowingEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SaveAsUIShowingEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SaveFileSecurityCheckStartingEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SaveFileSecurityCheckStartingEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SaveFileSecurityCheckStartingEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SaveFileSecurityCheckStartingEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ScreenCaptureStartingEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ScreenCaptureStartingEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ScreenCaptureStartingEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ScreenCaptureStartingEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ScriptDialogOpeningEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ScriptDialogOpeningEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ScriptDialogOpeningEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ScriptDialogOpeningEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ScriptException.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ScriptException_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ServerCertificateErrorDetectedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ServerCertificateErrorDetectedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ServerCertificateErrorDetectedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ServerCertificateErrorDetectedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SetPermissionStateCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SetPermissionStateCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings4.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings4_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings5.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings5_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings6.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings6_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings7.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings7_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings8.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings8_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings9.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings9_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2Settings_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SharedBuffer.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SharedBuffer_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ShowSaveAsUICompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ShowSaveAsUICompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SourceChangedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SourceChangedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SourceChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2SourceChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2StateChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2StateChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2StatusBarTextChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2StatusBarTextChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2StringCollection.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2StringCollection_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2TrySuspendCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2TrySuspendCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebMessageReceivedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebMessageReceivedEventArgs2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebMessageReceivedEventArgs2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebMessageReceivedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebMessageReceivedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebMessageReceivedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceRequest.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceRequest_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceRequestedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceRequestedEventArgs2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceRequestedEventArgs2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceRequestedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceRequestedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceRequestedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceResponse.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceResponseReceivedEventArgs.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceResponseReceivedEventArgs_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceResponseReceivedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceResponseReceivedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceResponseView.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceResponseViewGetContentCompletedHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceResponseViewGetContentCompletedHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceResponseView_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WebResourceResponse_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WindowCloseRequestedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WindowCloseRequestedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WindowFeatures.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2WindowFeatures_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ZoomFactorChangedEventHandler.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2ZoomFactorChangedEventHandler_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_10.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_10_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_11.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_11_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_12.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_12_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_13.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_13_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_14.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_14_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_15.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_15_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_16.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_16_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_17.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_17_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_18.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_18_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_19.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_19_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_2.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_20.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_20_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_21.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_21_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_22.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_22_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_23.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_23_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_24.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_24_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_25.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_25_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_26.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_26_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_27.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_27_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_28.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_28_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_2_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_3.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_3_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_4.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_4_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_5.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_5_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_6.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_6_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_7.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_7_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_8.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_8_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_9.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_9_gen_test.go
  • v3/internal/webview2/pkg/webview2/ICoreWebView2_gen_test.go
  • v3/internal/webview2/pkg/webview2/abi_gen_test.go
  • v3/internal/webview2/pkg/webview2/capabilities.go
  • v3/internal/webview2/pkg/webview2/com.go
  • v3/internal/webview2/pkg/webview2/comtest_support_test.go
  • v3/internal/webview2/pkg/webview2/doc.go
  • v3/internal/webview2/pkg/webview2/live_smoke_test.go
  • v3/internal/webview2/pkg/webview2/putdouble.go
  • v3/internal/webview2/pkg/webview2/putdouble_386.go
  • v3/internal/webview2/pkg/webview2/putdouble_amd64.go
  • v3/internal/webview2/pkg/webview2/putdouble_arm64.go
  • v3/internal/webview2/pkg/webview2/putrect_386.go
  • v3/internal/webview2/pkg/webview2/putrect_amd64.go
  • v3/internal/webview2/pkg/webview2/putrect_arm64.go
  • v3/internal/webview2/scripts/WebView2.1.0.3967.48.idl
  • v3/internal/webview2/scripts/cmd/webview2gen/main.go
  • v3/internal/webview2/scripts/cmd/webview2gen/main_test.go
  • v3/internal/webview2/scripts/generator/idl_parse_test.go
  • v3/internal/webview2/scripts/generator/interface_bool_test.go
  • v3/internal/webview2/scripts/generator/interface_int_test.go
  • v3/internal/webview2/scripts/generator/parser.go
  • v3/internal/webview2/scripts/generator/pipeline_test.go
  • v3/internal/webview2/scripts/generator/testfiles/ICoreWebView2.go.txt
  • v3/internal/webview2/scripts/generator/testfiles/ICoreWebView2AcceleratorKeyPressedEventArgs.go.txt
  • v3/internal/webview2/scripts/generator/testfiles/ICoreWebView2CustomSchemeRegistration.go.txt
  • v3/internal/webview2/scripts/generator/testfiles/ICoreWebView2FrameInfo.go.txt
  • v3/internal/webview2/scripts/generator/testfiles/ICoreWebView2ProcessFailedEventArgs2.go.txt
  • v3/internal/webview2/scripts/generator/testfiles/ICoreWebView2_3.go.txt
  • v3/internal/webview2/scripts/generator/typemap_test.go
  • v3/internal/webview2/scripts/generator/types/crafted_idl_test.go
  • v3/internal/webview2/scripts/generator/types/enum.go
  • v3/internal/webview2/scripts/generator/types/idl.go
  • v3/internal/webview2/scripts/generator/types/interface.go
  • v3/internal/webview2/scripts/generator/types/param.go
  • v3/internal/webview2/scripts/generator/types/pipeline_types_test.go
  • v3/internal/webview2/scripts/generator/types/struct.go
  • v3/internal/webview2/scripts/generator/types/templates.go
  • v3/internal/webview2/scripts/generator/types/templates/com.tmpl
  • v3/internal/webview2/scripts/generator/types/templates/inputBoolSetup.tmpl
  • v3/internal/webview2/scripts/generator/types/templates/inputInterfaceArraySetup.tmpl
  • v3/internal/webview2/scripts/generator/types/templates/inputStringArraySetup.tmpl
  • v3/internal/webview2/scripts/generator/types/templates/interfaceInvoke.tmpl
  • v3/internal/webview2/scripts/generator/types/templates/interfaceMethod.tmpl
  • v3/internal/webview2/scripts/generator/types/templates/interfacevtbl.tmpl
  • v3/internal/webview2/scripts/generator/types/templates/outputInterfaceArrayCleanup.tmpl
  • v3/internal/webview2/scripts/generator/types/templates/outputInterfaceArraySetup.tmpl
  • v3/internal/webview2/scripts/generator/types/templates/outputStringArrayCleanup.tmpl
  • v3/internal/webview2/scripts/generator/types/templates/outputStringArraySetup.tmpl
  • v3/internal/webview2/scripts/generator/types/tests.go
  • v3/internal/webview2/scripts/generator/types/typemap.go
  • v3/internal/webview2/scripts/generator/types/whitebox_test.go
  • v3/internal/webview2/scripts/internal/capabilities/capabilities.go
  • v3/internal/webview2/scripts/internal/capabilities/capabilities_test.go
  • v3/internal/webview2/scripts/internal/idl/fetch.go
  • v3/internal/webview2/scripts/internal/idl/fetch_extra_test.go
  • v3/internal/webview2/scripts/internal/idl/fetch_test.go
  • v3/internal/webview2/scripts/internal/idlversion/version.go
  • v3/internal/webview2/scripts/internal/idlversion/version_test.go
  • v3/internal/webview2/scripts/internal/notes/notes.go
  • v3/internal/webview2/scripts/internal/notes/notes_test.go
  • v3/internal/webview2/scripts/test.md

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/webview2-gen-v3

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added Documentation Improvements or additions to documentation v3-alpha templates labels Jul 8, 2026
Comment on lines +15 to +50
runs-on: ubuntu-latest
env:
GOWORK: "off"
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: '1.24'

- name: Generator tests
working-directory: v3/internal/webview2/scripts
run: go test -race ./...

- name: Verify generated bindings are up to date
working-directory: v3/internal/webview2/scripts
run: |
go run ./cmd/webview2gen verify
# capabilities.go is also generator-output; regenerate it from the
# cached release-notes snapshot and fail if it changes.
go run ./cmd/webview2gen capabilities --source test.md
if ! git diff --exit-code -- ../pkg/webview2/capabilities.go; then
echo "::error::pkg/webview2/capabilities.go is out of date — run 'webview2gen capabilities'"
exit 1
fi

- name: Cross-compile generated bindings + tests for Windows
working-directory: v3
run: |
GOOS=windows GOARCH=amd64 go vet ./internal/webview2/pkg/webview2/
GOOS=windows GOARCH=arm64 go vet ./internal/webview2/pkg/webview2/
GOOS=windows GOARCH=386 go vet ./internal/webview2/pkg/webview2/

test-windows:
Comment on lines +51 to +100
runs-on: windows-latest
env:
GOWORK: "off"
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: '1.24'
cache-dependency-path: |
v3/internal/webview2/scripts/go.sum
v3/go.sum

- name: Generator tests
working-directory: v3/internal/webview2/scripts
shell: bash
run: go test -race ./...

- name: Binding + generated binding tests (amd64)
working-directory: v3
shell: bash
run: |
go build ./internal/webview2/...
go test ./internal/webview2/...

# Live smoke test: create a real CoreWebView2 environment and call a
# generated binding (GetBrowserVersionString) through the live vtable.
# This is the only layer that proves the generator's ABI model matches
# Microsoft's actual DLL; it is opt-in (WEBVIEW2_LIVE=1) because it spawns
# a browser process and pumps a message loop. windows-latest ships the
# Evergreen runtime preinstalled, so the environment can be created.
- name: Live WebView2 environment smoke test (amd64)
working-directory: v3
shell: bash
timeout-minutes: 3
env:
WEBVIEW2_LIVE: "1"
run: go test -v -run TestLiveEnvironmentCreation ./internal/webview2/pkg/webview2/

# Windows runs 32-bit binaries natively, so the 386 marshalling
# branches (two-word doubles/tokens, four-word RECTs) are executed
# for real here, not just compiled.
- name: Generated binding tests (386)
working-directory: v3
shell: bash
env:
GOARCH: "386"
run: go test ./internal/webview2/pkg/webview2/

func fetchOne(url string) ([]byte, error) {
client := &http.Client{Timeout: FetchTimeout}
resp, err := client.Get(url)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Medium severity and reachable issue identified in your code:
Line 82 has a vulnerable usage of golang.org/x/net, introducing a medium severity vulnerability.

ℹ️ Why this is reachable

A reachable issue is a real security risk because your project actually executes the vulnerable code. This issue is reachable because your code uses a certain version of golang.org/x/net.
Affected versions of golang.org/x/net, golang.org/x/net/http2, and net/http are vulnerable to Uncontrolled Resource Consumption. An attacker may cause an HTTP/2 endpoint to read arbitrary amounts of header data by sending an excessive number of CONTINUATION frames.

References: GHSA, CVE

To resolve this comment:
Upgrade this dependency to at least version 0.23.0 at v3/internal/webview2/scripts/go.mod.

💬 Ignore this finding

To ignore this, reply with:

  • /fp <comment> for false positive
  • /ar <comment> for acceptable risk
  • /other <comment> for all other reasons

You can view more details on this finding in the Semgrep AppSec Platform here.

}

url := fmt.Sprintf(NuGetPackageURL, version)
resp, err := f.HTTPClient.Get(url)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Medium severity and reachable issue identified in your code:
Line 107 has a vulnerable usage of golang.org/x/net, introducing a medium severity vulnerability.

ℹ️ Why this is reachable

A reachable issue is a real security risk because your project actually executes the vulnerable code. This issue is reachable because your code uses a certain version of golang.org/x/net.
Affected versions of golang.org/x/net, golang.org/x/net/http2, and net/http are vulnerable to Uncontrolled Resource Consumption. An attacker may cause an HTTP/2 endpoint to read arbitrary amounts of header data by sending an excessive number of CONTINUATION frames.

References: GHSA, CVE

To resolve this comment:
Upgrade this dependency to at least version 0.23.0 at v3/internal/webview2/scripts/go.mod.

💬 Ignore this finding

To ignore this, reply with:

  • /fp <comment> for false positive
  • /ar <comment> for acceptable risk
  • /other <comment> for all other reasons

You can view more details on this finding in the Semgrep AppSec Platform here.

leaanthony and others added 2 commits July 9, 2026 08:08
The amd64 test step ran 'go test ./internal/webview2/...', which swept in
pkg/edge's real-WebView2 integration tests (TestCookieManager). Those need
an interactive environment — TestCookieManager CoInitializes without locking
the OS thread, so a goroutine migration mid-test yields 'CoInitialize has
not been called' and the test hangs to the 10m timeout. That package is
already covered by the main v3 CI (build-and-test-v3.yml). Test only
pkg/webview2 here (matching the 386 and live-smoke steps); keep the broad
'go build' for compile coverage.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Documentation Improvements or additions to documentation templates v3-alpha

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants