forked from WebKit/WebKit-http
-
Notifications
You must be signed in to change notification settings - Fork 141
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Broadcom Nexus API support for ANGLE WebGL #1343
Draft
q66
wants to merge
55
commits into
WebPlatformForEmbedded:main-next
Choose a base branch
from
q66:main-next-nexus
base: main-next
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
We need to configure UA for some apps that don't pass isValidUserAgentHeaderValue check, but it is still a valid header value.
Fix Security Origin handling in network process Currently, when a custom uri scheme handler is registered, its existence is not passed to the network process. Consequently, when creating a SecurityOrigin object for an URI that uses a custom scheme handler, the instance may be created as unique due shouldTreatAsUniqueOrigin() not detecting the associated scheme as registered (in LegacySchemeRegistry). This will cause calls to SecurityPolicy::isAccessAllowed() to not return the correct authorization in case a custom URI is whitelisted using webkit_web_extension_add_origin_access_whitelist_entry() API, which leads to the inclusion of the "Origin" header with the custom URI in network requests when it should not be included in such case.
API is exposed via WebKitWebExtension, similiar to the CORS whitelist. Wildcards can be used, with '*' replacing any string
Signed-off-by: Eugene Mutavchi <[email protected]>
…ndow.close is called When allow_scripts_to_close_windows property is set to true, scripts can close windows that are not opened by them. But after window.close API is called, page is in "is closing" and browser expects window to be closed. When integrator wants to hide browser window/suspend browser, instead of closing it, page will be stuck in "is closing" state, where some APIs don't work anymore. This change introduces new property allow_move_to_suspend_on_window_close (disabled by default) which removes setting "is closing" state and just sends notification to browser integration, without any expectations on how it's handled.
[MemoryPressure] Handle video memory usage besides normal memory Delete JIT code only on synchronous requests: Tune memory pressure settings for rapid mem usage changes When playing an asset with video, frequent seek/jump operations within a short period may cause rapid memory increases. The current pressure settings may not allow (enough) memory release in time to avoid an app running in a container to be killed due it reaching the memory limits. To allow sufficient, in time, memory release, the release needs to happen with the "synchrounous" flag set to true, allowing full garbage collection cycle when reaching critical limits. Furthermore, the critical threshold needs to be lowered as well considering that the release is not instantaneous and on embedded devices the 95% original threshold does not allow enough room for mem release on apps with lower allowed memory usage limits. [1203][MemoryPressureHandler] Increase default fraction values Do critical and synchonous memory release when limit is exceeded and print log message. Signed-off-by: Andrzej Surdej <[email protected]> Improve 'MemoryPressureMonitor' to use cgroup memory measurements within container MemoryPressureMonitor: Fix cgroup memory statistics Fix "memory.memsw.usage_in_bytes" file path so it acounts for swap also
- Disable caching of ArrayBuffer XHR. - Setting the environment variable WPE_DISABLE_XHR_RESPONSE_CACHING disables the memory cache for xhr responses. This is useful to reduce the memory footprint when the responses are quite big and cannot be reused. XMLHttpReques: allow disabling the cache for selected protocols
TCPKeepAlive is implemented only for libsoup 3.x
…th --gc-sections.
This saves about 1500 kB on a production build on ARMv7.
This fix helps to build debug version of WPE for 32-bit RPi. Unfortunately the build can be done only with at least -O1 (for 32-bit RPi).
Needed for building on a X86-64 desktop, where the linker complains about this option a lot.
…ectorResources.so
Destroying RemoteInspectorHTTPServer with on different thread that it was created on causes RELEASE_ASSERT to be triggered (via ~RemoteInspectorClient -> ~TimerBase). Such case happens when main UIProcess loop doesn't run in the main thread (like WPE WebKitBrowser plugin scenario)
With this port being dynamic, it's not possible to add specific iptables rules allowing this traffic - and with restrictive rules this traffic may be blocked. Allow selecting the port - controlled by WEBKIT_INSPECTOR_PORT env
Fetch the text of sibling node to the grid/table row
…tion Allow <div> or <td> retrieval of 'visibleText' for nested <div> & <td> elements.
Make Voice Guidance to differentiate between an actual page load and an iframe being added to the DOM.
- Add missing functions - Add proper error handling (similar to WebPlatformForEmbedded#823 with optional as in WebPlatformForEmbedded#875) for both UIProcess and WebProcess
Implement registerNotifyCallback via filesystem watch Original from 2.28 pull request: WebPlatformForEmbedded#1039
Some custom URI schemes may assign a different meaning to the port of an URI. Webkit restricts, by default, usage of certain ports. To bypass the check, an env var allows specifying which protocols shall be allowed unrestricted ports usage. Some network based protocols (e.g. http, https, and others) are kept still restricted.
Enabling MALLOC_HEAP_BREAKDOWN currently disables MemoryPressureHandler. We would like to keep both enabled to be able to track memory related issues.
…how_bug.cgi?id=273314 Reviewed by NOBODY (OOPS!). Recent refactorings introduced the breakages. They were fixed partially in ea2be40 but not entirely. Notably, a misplacement of an #endif in WebCoreArgumentCoders resulted in strange IPC errors. * Source/WebCore/Modules/WebGPU/GPUDevice.cpp: * Source/WebCore/Modules/WebGPU/GPUDevice.h: * Source/WebCore/page/InteractionRegion.cpp: (WebCore::interactionRegionForRenderedRegion): * Source/WebCore/page/Page.cpp: (WebCore::Page::shouldBlockLayerTreeFreezingForVideo): * Source/WebCore/platform/graphics/MediaResourceSniffer.cpp: * Source/WebCore/platform/graphics/MediaResourceSniffer.h: * Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in: * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::startObservingNowPlayingMetadata): (WebKit::WebPage::stopObservingNowPlayingMetadata):
… a main frame resource
Co-authored-by: dkolesa <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This is the broadcom nexus angle/webgl support code originally written by @zdobersek and cleaned up by me. It seems to be working as I'm testing it on the device without apparent problems. It comes with some additional semi-backports (the
ENABLE(VIDEO)
fixes are upstream so they will disappear on next rebase, I will upstream some of the other minor fixes). The suspend/resume backport is fairly minimal as the original commit assumes presence of noncomposite webgl, which we don't have in the branch yet.Otherwise it is a draft for now as other people need to look at it. Particularly the changes to ANGLE itself are not ideal.
I have other code elsewhere to support the new WPE platform API but not including that here for now (I cut it out for the time being).