Commit e3eb999
authored
v1.4.0
## Version 1.4.0 - (2026-01-01)
### Added
- **Unified Settings & Permissions (New Property System)**
- Implemented a comprehensive set of Read/Write properties to control WebView2 behavior directly from AutoIt.
- **Properties** (DispIds 170-179, 183):
- `AreDevToolsEnabled` (170): Toggle Developer Tools.
- `AreDefaultContextMenusEnabled` (171): Control native context menus.
- `AreDefaultScriptDialogsEnabled` (172): Suppress or allow alerts/prompts.
- `AreBrowserAcceleratorKeysEnabled` (173): Manage browser shortcuts.
- `IsStatusBarEnabled` (174): Toggle the status bar.
- ZoomFactor (175): Direct access to zoom level.
- `BackColor` (176): Set background color using Hex strings (e.g., "0xFFFFFF").
- `AreHostObjectsAllowed` (177): Control JS bridge access.
- `Anchor` (178): Manage control resizing behavior.
- `BorderStyle` (179): Placeholder for border style configuration.
- `AreBrowserPopupsAllowed` (183): Control new window/popup allowance.
- **Methods** (DispIds 180-182, 184):
- SetZoomFactor (180): Helper method for zoom.
- OpenDevToolsWindow (181): Programmatically open DevTools.
- WebViewSetFocus (182): Force focus to the WebView control.
- **
AddInitializationScript** (184): Injects and manages persistent JS logic.
- **Custom Context Menu System**
- Implemented `OnContextMenu` COM event (DispId 6) to intercept user right-clicks.
- Added data payload support providing context metadata (**Coordinates, Kind, TagName, Selection, Source URL, Link URL**) via JSON.
- Sent as raw JSON string (prefixed with "JSON:") to avoid Base64 overhead.
- **Focus Management Overhaul**
- `OnBrowserGotFocus` (DispId 11): Native event triggering when WebView gains focus.
- `OnBrowserLostFocus` (DispId 12): Native event triggering when focus leaves the WebView hierarchy.
- Refactored logic to use `AreDevToolsEnabled` style properties instead of legacy timers for cleaner integration.
- **Utilities**
- EncodeURI (DispId 165): Native UTF-8 encoding for safe URL parameter generation.
- DecodeURI (DispId 166): Native decoding to convert percent-encoded strings.
- EncodeB64 (DispId 167): Native encoding (UTF-8) -> Base64.
- DecodeB64 (DispId 168): Native decoding Base64 -> String (UTF8).
- **Navigation Lifecycle Events**
- `OnNavigationStarting` (DispId 2): Intercepts and validates URLs before loading.
- `OnNavigationCompleted` (DispId 3): Detailed navigation status and `WebErrorStatus`.
- **State Synchronization**
- `OnTitleChanged` (DispId 4): Real-time synchronization of document title.
- `OnURLChanged` (DispId 13): Real-time tracking of URL changes.
- `OnZoomChanged` (DispId 10): Event fired when zoom level changes.
- **Property Getters**
- GetSource (**DispId 135**) &
GetDocumentTitle (**DispId 134**).
- GetCanGoBack (DispId 162) &
GetCanGoForward (DispId 163).
- GetBrowserProcessId (DispId 164).
- **Permanent JavaScript Injection System**
- Implemented
AddInitializationScript (DispId 184): Allows permanent injection of JavaScript libraries (like `bridge.js`) that persist across navigations and page refreshes.
- Added automated script lifecycle management using `AddScriptToExecuteOnDocumentCreatedAsync`.
- Integrated **Script ID Tracking**: The library now remembers the last injected script ID to allow clean replacement or removal, preventing memory leaks and script duplication.
---
### Fixed
- **Focus Bounce Issue** Resolved where internal focus changes triggered false "LostFocus" events. Implemented robust checks using `BeginInvoke` and `GetFocus` with `IsChild` verification.
- **CS1061 Compile Error** Corrected `TitleChanged` to standard `DocumentTitleChanged` event mapping.
- **Context Menu JSON** Fixed JSON escaping for special characters in selection text and URLs.
### Changed
- **Refactored Event Registration** Cleaned up
RegisterEvents to remove legacy AdBlock/Context Menu duplication while preserving functionality.
- **DispId Standardization** Re-mapped `OnURLChanged` to DispId 13 to avoid conflicts.
- **Extension Management**
- AddExtension (DispId 150) now **triggers a notification event** with the internal ID for better lifecycle management via
RemoveExtension (DispId 151).1 parent 1bc2e43 commit e3eb999
85 files changed
Lines changed: 96120 additions & 58 deletions
File tree
- Doc
- bin
- examples
- Extensions_Lib/DarkReader_eimadpbcbfnmbkopoojfekhnkhdbieeh
- _locales
- ar
- be
- bg
- bn
- cs
- da_DK
- de
- el
- en_GB
- en_US
- en
- es_419
- es
- fa_IR
- fa
- fil
- fr
- he
- hi
- id
- it
- ja
- ko
- ms
- nl
- no
- pl
- pt_BR
- background
- config
- icons
- inject
- ui
- assets
- fonts
- images
- devtools
- options
- popup
- stylesheet-editor
- src
- Properties
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
4 | 66 | | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
5 | 79 | | |
6 | 80 | | |
7 | 81 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
Binary file not shown.
Binary file not shown.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
183 | 183 | | |
184 | 184 | | |
185 | 185 | | |
186 | | - | |
| 186 | + | |
| 187 | + | |
187 | 188 | | |
188 | 189 | | |
189 | 190 | | |
| |||
0 commit comments