Closed msmtamburro closed 6 months ago
Apologies: the code for this fix ended up in the (merged) PR to address 1157. I verified that everything looks good locally in cordova-ios@7.0.1. (I can successfully utilize the CDVWebViewEngineConfigurationDelegate to update the configuration of the CDVWebViewEngine.)
Feature Request
Motivation Behind Feature
A websiteDataStore can both be configured (e.g., set to non-persistent) and re-used (e.g., in other web browser components).
Feature Description
Optionally exposing the configuration as typically done with the "Cordova settings" model may not suffice. For example, if you only added a Cordova setting for persistent vs. non-persistent, this would still not give us a handle to the websiteDataStore for re-use elsewhere. More specifically, allowing Cordova to use an existing websiteDataStore that was created and used prior to Cordova reaching its
createConfigurationFromSettings
method is important in my case. You could accomplish this by providing a protocol that allows us to return a websiteDataStore.For example, add the following lines to CDVWebViewEngine.h:
and then expose this property:
And finally, in CDVWebViewEngine.m, inside of
createConfigurationFromSettings:
start with:Alternatives or Workarounds
When using the CDVWKWebViewEngine (the old plugin), it was possible to override createConfigurationFromSettings to customize portions of the configuration that were not exposed through Cordova settings. With the migration to CDVWebViewEngine, its private status prevents this type of customization without resorting to swizzling.