diff --git a/docs/assets/hierarchy.js b/docs/assets/hierarchy.js
index e4999f5..5c5f763 100644
--- a/docs/assets/hierarchy.js
+++ b/docs/assets/hierarchy.js
@@ -1 +1 @@
-window.hierarchyData = "eJytlk1TgzAQhv9LzlELJFB686OenLHj58HpIZatZAxBk7R1xul/N1TbAYoaooflkM3L+0wWNvuOVFkajUYPlBJM6GCKkYK5gJnhpbTr74hWD8kKQCN0fA+PdxxWCKNnLjM0CsIhRgslbG4mmNagj1bwuLRbDrd7D3NTCCvY5O0+o7ODSnzwubDGyNrWPL5k4zczXoI0Z8ywnV1I460dlwbUnM1qjh3Kb8138iqZc5EpkPYUCA0xGVJM0oENiukgwjSwEYaYRoGN2EaKKaHTDXlYI78oWdaXuaHpT5tgEkc20k+apEVzbZgy4AXVljqwVQhx1EI455Lr3I9hT+sKkdYgrvNyIbLLJSjFM7hVwqdMP7+kd92SZFOvJOnk/A9MP8oKakhbFZyo8kmB1j4V3NM6QqT1jnDDjYDTnMmn/p9Rp9YVgjbb0rEA5dOUmjo3c9t4mub2JIsXH/eW0NE+aNmflnLOVeHh31Y6AoThHoAuBfgBNJSOAFFQA7iC1wVoMwFVcK2rq7EvyA9vcAWKO25Jzyuyr3W9oY6r1PlCCD1TALIvwndyRxRS/ynHb9z8gaRb7QhCSefQcsI0uIxHTcUvQ1Lj9rCTx3r9AeprSzM="
\ No newline at end of file
+window.hierarchyData = "eJytlstSgzAUht8l61gLJIDdeakrZ3S8Lpwu0nJaMoagSVqdcfruhmo7QFFDdBEWJB//Nxw4yTtSZWk0Gj1SSjGhwQQjBXMBM8NLae+/I1pdJCsAjdDxA0zvObwijJ64zNAoCFOMlkrYuZlgWoM+fIXpyi4ZbNcOclMIC2zm7Tqjs4MKPvi8scbIxtYyvrDxmxmvQJozZtguLqTxNo5LA2rOZrXEDvLb8B1eTeZcZAqkfQuERpikMSZHgR0xpkOCaWBHGGEahXYkmJKhHfFkYx7VzC9KlvV1bjD9bVNMYoJJMvy0SVs2N4YpA15SbdTBrVKISUvhnEuucz+HPdZRIhnWJG7ycimyyxUoxTO4U8KnTD8/pHfdknRTryTt9PwPTT/LSiqNWxW8UuVCgdY+FdxjHSWO6h3hlhsBpzmTi/6fUSfrKhE329KxAOXTlJqcW7htPM1w+yaLZ5/0FugYH7TiT0s556rwyG+TjgJhtCegSwF+Ag3SUSAKawLX8LIEba5AFVzramvsK/LDE1yFko5d0nOL7BlN6g11XE2dL4XQMwUg+yp8h7uq1H/K8Rs3fzDpph1FKO08tJwwDS7HoybxyyGpsXvQyXq9/gDqJksx"
\ No newline at end of file
diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js
index cb0dad5..b60eaa8 100644
--- a/docs/assets/navigation.js
+++ b/docs/assets/navigation.js
@@ -1 +1 @@
-window.navigationData = "eJylmFtT2zAQhf+Ln+mNFtryloQwE1poBgeYKcODIm9iFVlydcllOv3vlSHElh2v5ekrPuc7a2mlLH74ExnYmOgsWsN8xWAdHUU5Man7QyYTy0G/2z14m5qMu6dPTCTR2fFRRFPGEwUiOnvYQ8YrEOaaZKBLDgiblZRS4QO//D3aUwb3ML/zaqGcaF2p5VXhMz4cVym3Qts8l8pAEp9/GyslVTvwgBhj7+LHGzMkGtqxvg4jjoUBdWE511QBiOdlOieGlGxWKBaEVvBtptpenZxWgzbM9M457MFiJuIXUDPeALUGLsmKxFSx3KAxLR4s5rskSdg7eMou5AUTTKfQA91wdEWU73cDWlpFoTOjaekKmSq5VKB1+Hs0HF0RsSHFqQlPqBu6A7Yc4hQgfKGaFizkBn5b0GYKKmNaMykClwvxYXFxKi1PfqxAsQRuFQ9vYdQZFvkfmX1DZ8xwGKVELEO746ADiyju1qm7tF3T5qAMq/7sHOA35Rjc3d0D7mRhtTfUHeiRFAumsmB4Xd+N15JDH7yn78C7Fczy8JWpyTvgz7+YoWhPHALehJdd12P4EaEpXMmkcjmZbV7h7QU1yvuvnz+cHFdI12TFlsS4+2TmAG04X9XFfO38O8JtK9ITdREJ53KtJ4IzAVeQMDLlZDsn9Gl3uLZlyoooRubVUbLT7Kd/9IKtkS+DwmU8dHfSEoISW11I1Nwybibip5SZOx9GSa5DshAbEkZf+yMkoiFGwInr3LmbPmMjFQlbrRYLFgJzuwytviHGwEznrjn67gFiw8Jk1meVGmoEzbSb3CTnY1FAkhB+iwUJ4SxjRpdXg57JQZ4PpRXJucwIE0FrF05BSsmqx7qYlJibKm81qAEtmCF1BCKQIjQlDjh1OzSTF8yEhLZY0JBik4ZETUTCKHEdccc0c9CwuA5zd7DbF9ony9NjeEWDqKUMg738d12cxyBoU47ArYZ7N5zWxjs0oMWChKx60OtaBLvez14h4KYaQe8mmJlyc82IGFhKhcIP6Rv4R7/2wvhGGdr62ah4GPTpKIEFsbzygWDh+vT5+vFQO5mPPP3k6nr8B25ot1g="
\ No newline at end of file
+window.navigationData = "eJylmFtT2zAQhf9LnumNFtryloQwE1pohgSYKcODIm9iFVlydQnJdPrfK4cQ3+L1evqKz/mOLK02ix/+9BysXe+s9wzzlYDn3lEvZS4Of0h05CXYd7sHb2OXyPD0Saiod3Z81OOxkJEB1Tt72ENGK1DumiVgcw4on+SUXFEGfvl7tKf072F+V1oLl8zawlpeFWXGh+Mi5VZZn6baOIim599GxmjTDDwgxti7+NHaDZiFZmxZhxFHyoG58FJabgDUdpvOmWM5W2SKBeMFfJOpclYnp8WgtXCdcw57sJix+gXcjdbAvYNLtmJTbkTq0JgGDxbzXbOI9g4lZRvyQihhY+iArjnaIvL3uwGrveHQmlG3tIVMjF4asJb+HjVHW8TUsezW0BOqhvaAjYRpDEDfqLoFC7mB3x6sm4BJhLVCK+J2IT4sbhprL6MfKzAiglsj6SWMOmmR/5HZNXQmnIRhzNSSWh0HHVhE1lsnoWmHok3BOFH82TnAr8sxeOjdfRlktLXX1C3ooVYLYRIyvKpvx1stoQu+pG/Bhx1MUvrOVOQt8O0vJhVdElPAa/qyq3oMP2Q8hisdFZqT26QF3l5Qobz/+vnDyXGBdM1WYslc6CezAGjClVVtzNfKv2PSNyJLojYik1I/27GSQsEVRIJNJNvMGX/aXa5NnrJiRrB5cZRsNZfTP5aCvdMvg8LldBB60hJIiY0uJGruhXRj9VPrJNwPZ7S0lCzEhoTx1/qgRNTEGNhbp5NbC6a/DIVMwh+2ICFRuB7zMOJOnTaMdiQNFiwE5n5J3aKaGAMLm4YK7HrQiA0L00mXXaqpEbSwYTzUUo5UBoko/AYLEiJFIpzN+4+d6X6aDrRX0blOmFCkvaNTkKUkxd6RjWMijK7bsuUZk7IOIgJZhOUsACfhhGb6QpDuV4MFDckOacDMWEWCs1ARd8KKAKXFtZjbg8O58C5ZJT2GN5xEzWUY7OVf+Ow+kqB1OQL3Fu7DBFyZIdGABgsSsupAr2oR7PN+wKOA62oEvRuTZiYMT0PmYKkNCj+kr+Efy2vPjG+M443fprKHpO9TESyYl4WvEItQp9v2U0LtZGXk6aewrsd/gqDcYQ=="
\ No newline at end of file
diff --git a/docs/assets/search.js b/docs/assets/search.js
index 7c25e75..adf754e 100644
--- a/docs/assets/search.js
+++ b/docs/assets/search.js
@@ -1 +1 @@
-window.searchData = "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";
\ No newline at end of file
+window.searchData = "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";
\ No newline at end of file
diff --git a/docs/classes/webview.AWebView.html b/docs/classes/webview.AWebView.html
index c0fd7db..0a0febd 100644
--- a/docs/classes/webview.AWebView.html
+++ b/docs/classes/webview.AWebView.html
@@ -93,91 +93,91 @@
zoom Auto Inject WebView JavaScript Bridge on load finished? Defaults to true. List of js-files to be auto injected on load finished List of css-files to be auto injected on load finished Android: Is the built-in zoom mechanisms being used Android: Enable/Disabled database storage API.
+ Auto Inject WebView JavaScript Bridge on load finished? Defaults to true. List of js-files to be auto injected on load finished List of css-files to be auto injected on load finished Android: Is the built-in zoom mechanisms being used Android: Enable/Disabled database storage API.
Note: It affects all webviews in the process. Android: Enable/disable debug-mode Android: displays on-screen zoom controls when using the built-in zoom mechanisms Android: Enable/Disabled DOM Storage API. E.g localStorage Whether to install event bridge Whether to install promise polyfill ANDROID: should the webview support nested scroll. Default to true Android: Enable/disable debug-mode Android: displays on-screen zoom controls when using the built-in zoom mechanisms Android: Enable/Disabled DOM Storage API. E.g localStorage Whether to install event bridge Whether to install promise polyfill ANDROID: should the webview support nested scroll. Default to true Note: This can break some web views like maps pinch to zoom. iOS: Should the scrollView bounce? Defaults to true. Gets or sets the url, local file path or HTML string. Android: should the webview support zoom Prevent this.src loading changes from the webview's onLoadFinished-event Set viewport metadata for the webview.
+ iOS: Should the scrollView bounce? Defaults to true. Gets or sets the url, local file path or HTML string. Android: should the webview support zoom Prevent this.src loading changes from the webview's onLoadFinished-event Set viewport metadata for the webview.
Set to false to disable. Note: WkWebView defaults initial-scale=1.0. Is Fetch API supported? Is Fetch API supported? Note: Android's Native Fetch API needs to be replaced with the polyfill. Does this platform's WebView support promises? Gets a value indicating whether the WebView can navigate back. Gets a value indicating whether the WebView can navigate forward. String value used when hooking to loadFinished event. String value used when hooking to loadStarted event. String value used when hooking to shouldOverrideUrlLoading event Callback for the loadFinished-event. Called from the native-webview Callback for onLoadStarted-event from the native webview Does this platform's WebView support promises? Gets a value indicating whether the WebView can navigate back. Gets a value indicating whether the WebView can navigate forward. String value used when hooking to loadFinished event. String value used when hooking to loadStarted event. String value used when hooking to shouldOverrideUrlLoading event Callback for the loadFinished-event. Called from the native-webview Callback for onLoadStarted-event from the native webview URL being loaded Type of navigation (iOS-only) Callback for should override url loading.
+ Callback for should override url loading.
Called from the native-webview GET, POST etc Type of navigation (iOS-only) Execute JavaScript inside the webview.
+ Execute JavaScript inside the webview.
The code should be wrapped inside an anonymous-function.
Larger scripts should be injected with loadJavaScriptFile.
NOTE: stringifyResult only applies on iOS. Get document.title
+ Load multiple JavaScript-files on the current page in the webview. Load multiple stylesheet-files on the current page in the webview Load URL - Wait for promise A basic method signature to hook an event listener (shortcut alias to the addEventListener method). Load multiple JavaScript-files on the current page in the webview. Load multiple stylesheet-files on the current page in the webview Load URL - Wait for promise A basic method signature to hook an event listener (shortcut alias to the addEventListener method). String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by Callback function which will be executed when event is raised. An optional parameter which will be used as Raised before the webview requests an URL.
+ Raised before the webview requests an URL.
Can be cancelled by settings args.cancel = true in your event handler. Raised when a loadStarted event occurs. Raised when a loadFinished event occurs. Raised when a loadProgress event occurs. Raised when a titleChanged event occurs. Override web alerts to replace them.
+ Raised when a loadStarted event occurs. Raised when a loadFinished event occurs. Raised when a loadProgress event occurs. Raised when a titleChanged event occurs. Override web alerts to replace them.
Call args.cancel() on close. Override web confirm dialogs to replace them.
+ Override web confirm dialogs to replace them.
Call args.cancel(res) on close. Override web confirm prompts to replace them.
+ Override web confirm prompts to replace them.
Call args.cancel(res) on close. Get Android WebView console entries. Get Android WebView console entries. Called from delegate on webview event.
+ Get Android WebView console entries. Get Android WebView console entries. Properties
Protected
autoauto
Protected
autoProtected
autobuilt
cache
database
auto
Protected
autoProtected
autobuilt
cache
database
debug
display
dom
inject
inject
nested
debug
display
dom
inject
inject
nested
scroll
scroll
src
Readonly
supportXLocalsupport
Protected
tempview
scroll
scroll
src
Readonly
supportXLocalsupport
Protected
tempview
web
webRTC
Static
isweb
webRTC
Static
isStatic
isStatic
Readonly
supportXLocal Accessors
Abstract
canReturns boolean
Abstract
canReturns boolean
intercept
Returns string
Static
enterReturns EventNames
Static
exitReturns EventNames
Static
loadReturns EventNames
Static
loadReturns EventNames
Static
loadReturns EventNames
Static
requestReturns EventNames
Static
shouldReturns EventNames
Static
titleReturns EventNames
Static
webReturns EventNames
Static
webReturns EventNames
Static
webReturns EventNames
Static
webReturns EventNames
Methods
Abstract
_load_load
Abstract
_load_on
_on
_on
Parameters
Optional
error: stringReturns Promise<LoadFinishedEventData>
_on
Static
isStatic
Readonly
supportXLocal Accessors
Abstract
canReturns boolean
Abstract
canReturns boolean
intercept
Returns string
Static
enterReturns EventNames
Static
exitReturns EventNames
Static
loadReturns EventNames
Static
loadReturns EventNames
Static
loadReturns EventNames
Static
requestReturns EventNames
Static
shouldReturns EventNames
Static
titleReturns EventNames
Static
webReturns EventNames
Static
webReturns EventNames
Static
webReturns EventNames
Static
webReturns EventNames
Methods
Abstract
_load_load
Abstract
_load_on
_on
_on
Parameters
Optional
error: stringReturns Promise<LoadFinishedEventData>
_on
Parameters
Optional
navigationType: NavigationTypeReturns void
_on
_on
url: string,
httpMethod: string,
navigationType?: NavigationType,
): booleanReturns void
_on
_on
url: string,
httpMethod: string,
navigationType?: NavigationType,
): booleanParameters
Optional
navigationType: NavigationTypeReturns boolean
_title
_web
_web
_web
_web
auto
auto
auto
emit
Abstract
executeReturns boolean
_title
_web
_web
_web
_web
auto
auto
auto
emit
Abstract
executeType Parameters
Parameters
Optional
stringifyResult: booleanReturns Promise<T>
execute
execute
execute
fix
generate
generate
generate
Abstract
getAbstract
getType Parameters
Parameters
Optional
timeout: numberReturns Promise<T>
execute
fix
generate
generate
generate
Abstract
getAbstract
getAbstract
goAbstract
goProtected
injectProtected
injectload
load
Parameters
Returns Promise<void>
load
load
Parameters
Returns Promise<void>
load
Parameters
Returns Promise<LoadFinishedEventData>
on
eventNames: string,
callback: (data: WebViewEventData) => void,
thisArg?: any,
): anyReturns Promise<string | void>
Abstract
goAbstract
goProtected
injectProtected
injectload
load
Parameters
Returns Promise<void>
load
load
Parameters
Returns Promise<void>
load
Parameters
Returns Promise<LoadFinishedEventData>
on
eventNames: string,
callback: (data: WebViewEventData) => void,
thisArg?: any,
): anyParameters
,
(e.g. "propertyChange", "change").Optional
thisArg: anythis
context for callback execution.Returns any
event: ShouldOverrideUrlLoading,
callback: (args: ShouldOverrideUrlLoadEventData) => void,
thisArg?: any,
): anyReturns any
event: ShouldOverrideUrlLoading,
callback: (args: ShouldOverrideUrlLoadEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadStarted,
callback: (args: LoadStartedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadFinished,
callback: (args: LoadFinishedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadProgress,
callback: (args: LoadProgressEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: TitleChanged,
callback: (args: TitleChangedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebAlert,
callback: (args: WebAlertEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadStarted,
callback: (args: LoadStartedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadFinished,
callback: (args: LoadFinishedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadProgress,
callback: (args: LoadProgressEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: TitleChanged,
callback: (args: TitleChangedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebAlert,
callback: (args: WebAlertEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebConfirm,
callback: (args: WebConfirmEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebConfirm,
callback: (args: WebConfirmEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebPrompt,
callback: (args: WebPromptEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebPrompt,
callback: (args: WebPromptEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebConsole,
callback: (args: WebConsoleEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: RequestPermissions,
callback: (args: WebConsoleEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
once
eventNames: string,
callback: (data: WebViewEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: ShouldOverrideUrlLoading,
callback: (args: ShouldOverrideUrlLoadEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadStarted,
callback: (args: LoadStartedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadFinished,
callback: (args: LoadFinishedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadProgress,
callback: (args: LoadProgressEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: TitleChanged,
callback: (args: TitleChangedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebAlert,
callback: (args: WebAlertEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebConfirm,
callback: (args: WebConfirmEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebPrompt,
callback: (args: WebPromptEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebConsole,
callback: (args: WebConsoleEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: RequestPermissions,
callback: (args: WebConsoleEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
on
Parameters
Optional
thisArg: anyReturns any
event: WebConsole,
callback: (args: WebConsoleEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: RequestPermissions,
callback: (args: WebConsoleEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
once
eventNames: string,
callback: (data: WebViewEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: ShouldOverrideUrlLoading,
callback: (args: ShouldOverrideUrlLoadEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadStarted,
callback: (args: LoadStartedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadFinished,
callback: (args: LoadFinishedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: LoadProgress,
callback: (args: LoadProgressEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: TitleChanged,
callback: (args: TitleChangedEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebAlert,
callback: (args: WebAlertEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebConfirm,
callback: (args: WebConfirmEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebPrompt,
callback: (args: WebPromptEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: WebConsole,
callback: (args: WebConsoleEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
event: RequestPermissions,
callback: (args: WebConsoleEventData) => void,
thisArg?: any,
): anyParameters
Optional
thisArg: anyReturns any
on
Protected
parseAbstract
registerProtected
parseAbstract
registerAbstract
reloadremove
remove
remove
resolve
Abstract
stopAbstract
unregisterwrite
Abstract
zoomAbstract
zoomAbstract
zoom
List of code blocks to be executed after JS-files and CSS-files have been loaded.
-