[Wootzview] WebviewApi Layer Implementation #162
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR introduces the complete implementation of the WootzView WebAPI layer. The following components have been added and integrated to enhance the browser's functionality:
Overview
This PR introduces the full implementation of the
WootzView
Web API layer, which is part of the broader Wootz browser project. The primary purpose of this layer is to manage various components essential for the web view's functionality, bridging custom settings, client interactions, and proxy management between the Chromium base and the Wootz browser.Changes
The following key components have been implemented:
Proxy Implementations: Bridged the functionality of WootzView with underlying Chromium components, such as:
WootzAwContentsClientProxy.java
: A proxy to handle client interactions forAwContents
, supporting features like JavaScript prompts, auth handling, and SSL error processing.WootzHttpAuthHandlerProxy.java
: A proxy to manage HTTP authentication requests from the web client.WootzInitializer.java
: Responsible for initializing core Wootz browser components and setting up the environment.WootzJsPromptResultProxy.java
&WootzJsResultReceiverProxy.java
: Proxies for managing JavaScript prompts and their result handling.WootzSettingsProxy.java
: Acts as a bridge for web view settings between Wootz and Chromium's web settings.WootzSslErrorHandlerProxy.java
: Handles SSL errors in the client-side interactions for secure connections.Main Components
WootzCookieManager.java
: Manages cookies within the Wootz browser, offering control over HTTP cookies in web views.WootzHttpAuthHandler.java
: Supports authentication requests for HTTP connections initiated within the browser.WootzJavascriptInterface.java
: Provides a JavaScript interface to interact with native Java objects, enhancing the browser's scripting capabilities.WootzSettings.java
: Manages core settings specific to WootzView, including security, privacy, and performance optimizations.WootzSslErrorHandler.java
: Handles SSL errors for secure connections, working in conjunction with the proxy.Client and View Management
WootzViewClient.java
: Manages client-side interactions, facilitating communication between the Chromium base and the Wootz browser.WootzView.java
: Implements the core functionality of the custom Wootz web view, handling rendering, navigation, and session management.WootzWebClient.java
: Focused on managing the web client, which acts as a bridge for executing web content within the browser.