Timeline
Apr 2, 2022:
- 10:39 PM Changeset in webkit [292274] by
-
- 13 edits2 adds in trunk
[Cocoa] Automatically relayout the page when new fonts are installed
https://bugs.webkit.org/show_bug.cgi?id=238483
<rdar://problem/80544133>
Reviewed by Chris Dumez.
Source/WebCore:
This patch simply calls setNeedsRecalcStyleInAllFrames on every Page when we receive a
kCTFontManagerRegisteredFontsChangedNotification.
FontCache::invalidateAllFontCaches() can't do this directly because it's in platform/ and
therefore isn't allowed to know what Pages are. Instead, this patch takes a process-global
callback and calls that instead. This callback is set at initialization time.
Test: fast/text/install-font-style-recalc.html
- page/Page.cpp:
(WebCore::m_contentSecurityPolicyModeForExtension):
(WebCore::Page::firstTimeInitialization):
- page/Page.h:
- platform/graphics/FontCache.cpp:
(WebCore::Function<void):
(WebCore::FontCache::registerFontCacheInvalidationCallback):
(WebCore::FontCache::invalidateAllFontCaches):
- platform/graphics/FontCache.h:
Tools:
Make TestRunner::dumpResourceLoadStatistics() clear any currently-recorded statistics.
This avoids the problem where spurious layouts during the time when the page has been created but
before the test has begun record irrelevant statistics.
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
(WTR::InjectedBundle::clearResourceLoadStatistics):
- WebKitTestRunner/InjectedBundle/InjectedBundle.h:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::dumpResourceLoadStatistics):
LayoutTests:
- TestExpectations:
- fast/text/install-font-style-recalc-expected.txt: Added.
- fast/text/install-font-style-recalc.html: Added.
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 10:24 PM Changeset in webkit [292273] by
-
- 24 edits in trunk/Source
Plumb the IOSurfacePool through to ImageBufferBackend creation via ImageBuffer::CreationContext
https://bugs.webkit.org/show_bug.cgi?id=238695
Reviewed by Said Abou-Hallawa.
Wrap the existing HostWindow* and a new IOSurfacePool* pointers into a ImageBuffer::CreationContext
struct, and replace the HostWindow* argument with it in buffer creation functions.
RemoteLayerBackingStoreCollection::allocateBufferForBackingStore() passes the singleton IOSurfacePool
which is thus used in the non-GPU Process code path (DOM rendering disabled).
Source/WebCore:
- css/CSSFilterImageValue.cpp:
(WebCore::CSSFilterImageValue::image):
- platform/graphics/ConcreteImageBuffer.h:
(WebCore::ConcreteImageBuffer::create):
- platform/graphics/ImageBuffer.cpp:
(WebCore::ImageBuffer::create):
- platform/graphics/ImageBuffer.h:
(WebCore::ImageBuffer::CreationContext::CreationContext):
(WebCore::ImageBuffer::create):
- platform/graphics/ImageBufferBackend.h:
- platform/graphics/PlatformImageBuffer.h:
- platform/graphics/cairo/ImageBufferCairoImageSurfaceBackend.cpp:
(WebCore::ImageBufferCairoImageSurfaceBackend::create):
- platform/graphics/cairo/ImageBufferCairoImageSurfaceBackend.h:
- platform/graphics/cg/IOSurfacePool.cpp:
(WebCore::IOSurfacePool::poolStatistics const):
- platform/graphics/cg/ImageBufferCGBitmapBackend.cpp:
(WebCore::ImageBufferCGBitmapBackend::create):
- platform/graphics/cg/ImageBufferCGBitmapBackend.h:
- platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:
(WebCore::ImageBufferIOSurfaceBackend::create):
- platform/graphics/cg/ImageBufferIOSurfaceBackend.h:
- platform/graphics/displaylists/DisplayListImageBuffer.h:
Source/WebKit:
- Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.cpp:
(WebKit::CGDisplayListImageBufferBackend::create):
- Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.h:
- Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::ensureFrontBuffer):
- Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm:
(WebKit::RemoteLayerBackingStoreCollection::allocateBufferForBackingStore):
- WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.cpp:
(WebKit::ImageBufferShareableBitmapBackend::create):
- WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.h:
- WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.cpp:
(WebKit::ImageBufferShareableMappedIOSurfaceBackend::create):
- WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.h:
- 8:56 PM Changeset in webkit [292272] by
-
- 43 edits in trunk/Source
Add default constructor to ASCIILiteral
https://bugs.webkit.org/show_bug.cgi?id=238700
Reviewed by Geoffrey Garen.
Add default constructor to ASCIILiteral, to replace the more verbose ASCIILiteral::null().
Source/JavaScriptCore:
- Scripts/tests/builtins/expected/JavaScriptCore-Builtin.Promise-Combined.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-Builtin.Promise-Separate.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-Builtin.prototype-Combined.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-Builtin.prototype-Separate.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-BuiltinConstructor-Combined.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-BuiltinConstructor-Separate.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-InternalClashingNames-Combined.js-result:
- Scripts/tests/builtins/expected/WebCore-AnotherGuardedInternalBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-ArbitraryConditionalGuard-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-GuardedBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-GuardedInternalBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-UnguardedBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-xmlCasingTest-Separate.js-result:
- Scripts/wkbuiltins/builtins_model.py:
(BuiltinFunction.fromString):
- runtime/ArrayBufferSharingMode.h:
(JSC::arrayBufferSharingModeName):
- runtime/IntlCollator.cpp:
(JSC::IntlCollator::initializeCollator):
(JSC::IntlCollator::usageString):
(JSC::IntlCollator::sensitivityString):
(JSC::IntlCollator::caseFirstString):
- runtime/IntlDateTimeFormat.cpp:
(JSC::IntlDateTimeFormat::initializeDateTimeFormat):
(JSC::IntlDateTimeFormat::hourCycleString):
(JSC::IntlDateTimeFormat::weekdayString):
(JSC::IntlDateTimeFormat::eraString):
(JSC::IntlDateTimeFormat::yearString):
(JSC::IntlDateTimeFormat::monthString):
(JSC::IntlDateTimeFormat::dayString):
(JSC::IntlDateTimeFormat::dayPeriodString):
(JSC::IntlDateTimeFormat::hourString):
(JSC::IntlDateTimeFormat::minuteString):
(JSC::IntlDateTimeFormat::secondString):
(JSC::IntlDateTimeFormat::timeZoneNameString):
(JSC::IntlDateTimeFormat::formatStyleString):
- runtime/IntlDisplayNames.cpp:
(JSC::IntlDisplayNames::styleString):
(JSC::IntlDisplayNames::typeString):
(JSC::IntlDisplayNames::fallbackString):
(JSC::IntlDisplayNames::languageDisplayString):
- runtime/IntlListFormat.cpp:
(JSC::IntlListFormat::styleString):
(JSC::IntlListFormat::typeString):
- runtime/IntlLocale.cpp:
(JSC::IntlLocale::initializeLocale):
- runtime/IntlNumberFormat.cpp:
(JSC::IntlNumberFormat::initializeNumberFormat):
(JSC::IntlNumberFormat::styleString):
(JSC::IntlNumberFormat::currencyDisplayString):
(JSC::IntlNumberFormat::notationString):
(JSC::IntlNumberFormat::currencySignString):
(JSC::IntlNumberFormat::unitDisplayString):
(JSC::IntlNumberFormat::compactDisplayString):
(JSC::IntlNumberFormat::signDisplayString):
(JSC::IntlNumberFormat::roundingModeString):
(JSC::IntlNumberFormat::trailingZeroDisplayString):
(JSC::IntlNumberFormat::roundingPriorityString):
- runtime/IntlObject.cpp:
(JSC::relevantExtensionKeyString):
- runtime/IntlRelativeTimeFormat.cpp:
(JSC::IntlRelativeTimeFormat::initializeRelativeTimeFormat):
(JSC::IntlRelativeTimeFormat::styleString):
- runtime/IntlSegmenter.cpp:
(JSC::IntlSegmenter::granularityString):
- runtime/JSObjectInlines.h:
(JSC::JSObject::putDirectInternal):
- runtime/TemporalDuration.cpp:
(JSC::TemporalDuration::total const):
- runtime/TemporalObject.cpp:
(JSC::temporalLargestUnit):
(JSC::temporalSmallestUnit):
- yarr/YarrErrorCode.cpp:
(JSC::Yarr::errorMessage):
Source/WebCore:
- css/makevalues.pl:
- dom/DOMException.cpp:
(WebCore::DOMException::description const):
- platform/cocoa/PasteboardCocoa.mm:
(WebCore::imageTypeToFakeFilename):
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::propertyIdToString):
Source/WebKit:
- NetworkProcess/WebStorage/LocalStorageDatabase.cpp:
(WebKit::LocalStorageDatabase::migrateItemTableIfNeeded):
- UIProcess/AuxiliaryProcessProxy.cpp:
(WebKit::AuxiliaryProcessProxy::sendMessage):
- WebProcess/Inspector/WebInspectorUI.cpp:
(WebKit::WebInspectorUI::setDockSide):
Source/WebKitLegacy:
- Storage/StorageAreaSync.cpp:
(WebKit::StorageAreaSync::migrateItemTableIfNeeded):
Source/WTF:
- wtf/cocoa/ResourceUsageCocoa.cpp:
(WTF::displayNameForVMTag):
- wtf/text/ASCIILiteral.h:
- 2:52 PM Changeset in webkit [292271] by
-
- 3 edits in trunk/Tools
Add to MiniBrowser the ability to log a textual representation of the AX trees for the current page.
https://bugs.webkit.org/show_bug.cgi?id=238566
<rdar://problem/91059308>
Reviewed by Chris Fleizach and Simon Fraser.
MiniBrowser can now log a textual representation of the AX trees via
Debug > Log Accessibility Trees menu item, or pressing the keystroke
Cmd Opt A.
- MiniBrowser/mac/MainMenu.xib:
- MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController logAccessibilityTrees:]):
- 2:03 PM Changeset in webkit [292270] by
-
- 21 edits in trunk
[Ruby] Remove incorrect implicit integral floor in RenderRubyText::adjustInlineDirectionLineBounds
https://bugs.webkit.org/show_bug.cgi?id=238671
Reviewed by Simon Fraser.
Source/WebCore:
In case of a fractional width value, the unintended integral flooring makes us believe we've got content overflow and we apply
a fractional inset which slightly moves the content in the inline direction.
- rendering/RenderRubyText.cpp:
(WebCore::RenderRubyText::adjustInlineDirectionLineBounds const):
LayoutTests:
- TestExpectations:
- fast/ruby/bopomofo-mixed-expected.txt:
- platform/mac/fast/css/bidi-override-in-anonymous-block-expected.txt:
- platform/mac/fast/ruby/bopomofo-expected.txt:
- platform/mac/fast/ruby/bopomofo-letter-spacing-expected.txt:
- platform/mac/fast/ruby/bopomofo-rl-expected.txt:
- platform/mac/fast/ruby/ruby-run-break-expected.txt:
- platform/mac/fast/ruby/ruby-runs-expected.txt:
- platform/mac/fast/ruby/ruby-runs-spans-expected.txt:
- platform/mac/fast/ruby/ruby-text-before-after-content-expected.txt:
- platform/mac/fast/ruby/rubyDOM-insert-rt-expected.txt:
- platform/mac/fast/ruby/rubyDOM-insert-text1-expected.txt:
- 1:36 PM Changeset in webkit [292269] by
-
- 2 edits in trunk/Source/JavaScriptCore
AI should do int32 optimization in ValueRep
https://bugs.webkit.org/show_bug.cgi?id=238699
Reviewed by Saam Barati.
When constant folding an int52 into a ValueRep AI doesn't
do our normal int32 boxing optimization. I'm not sure if
it matters since I couldn't find a test but it probably
doesn't hurt.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- 11:38 AM Changeset in webkit [292268] by
-
- 8 edits in trunk
[css-ui] Only apply 'overflow:visible' to elements that support menulist appearance
https://bugs.webkit.org/show_bug.cgi?id=238501
Reviewed by Tim Nguyen.
Source/WebCore:
This CL adds support to alias appearance <compat-auto> keywords to 'auto' for menulist.
When an element supports '-webkit-appearance: menulist' or 'appearance: menulist' appearance,
we will apply 'overflow: visible'. The existing code, though, apply 'overflow: visible' before
the 'menulist' appearance is workable. This patch corrects it.
It is an import of chromium CL at
https://chromium.googlesource.com/chromium/src.git/+/1635202d8979f4d42b96021d8386278261e52768
- rendering/RenderTheme.cpp:
(WebCore::RenderTheme::adjustAppearanceForElement const):
(WebCore::RenderTheme::adjustMenuListStyle const):
- rendering/RenderThemeAdwaita.cpp:
(WebCore::RenderThemeAdwaita::adjustMenuListStyle const):
- rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::adjustMenuListStyle const):
- rendering/RenderThemeWin.cpp:
(WebCore::RenderThemeWin::adjustMenuListStyle const):
- style/StyleAdjuster.cpp:
(WebCore::Style::Adjuster::adjust const):
LayoutTests:
Unskip the tests that are now passing.
- 9:36 AM Changeset in webkit [292267] by
-
- 2 edits in trunk/Source/WebKit
[Cocoa] semaphore_timedwait() can return KERN_ABORTED
https://bugs.webkit.org/show_bug.cgi?id=238694
Reviewed by Geoffrey Garen.
I was hitting this assert while debugging WebKit today.
- Platform/IPC/darwin/IPCSemaphoreDarwin.cpp:
(IPC::Semaphore::waitFor):
- 9:22 AM Changeset in webkit [292266] by
-
- 8 edits in trunk
CSP: Improve compatibility of source matching
https://bugs.webkit.org/show_bug.cgi?id=235873
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Update expectation as passing.
- web-platform-tests/content-security-policy/connect-src/connect-src-websocket-self.sub-expected.txt:
Source/WebCore:
- Improved handling of protocol changes:
- For host and self sources direct upgrades are allowed (ws->wss) (http->https already worked).
- For self sources side grades are now allowed (http->ws).
- For self sources upgrades are always allowed (*->https, *->wss).
This is documented here: https://www.w3.org/TR/CSP3/#match-url-to-source-expression
I also included some minor cleanups and adding of comments.
- page/csp/ContentSecurityPolicy.cpp:
(WebCore::ContentSecurityPolicy::updateSourceSelf):
(WebCore::ContentSecurityPolicy::protocolMatchesSelf const): Deleted.
- page/csp/ContentSecurityPolicy.h:
(WebCore::ContentSecurityPolicy::selfProtocol const):
- page/csp/ContentSecurityPolicySource.cpp:
(WebCore::ContentSecurityPolicySource::ContentSecurityPolicySource):
(WebCore::ContentSecurityPolicySource::matches const):
(WebCore::ContentSecurityPolicySource::schemeMatches const):
(WebCore::ContentSecurityPolicySource::portMatches const):
- page/csp/ContentSecurityPolicySource.h:
- page/csp/ContentSecurityPolicySourceList.cpp:
(WebCore::ContentSecurityPolicySourceList::isProtocolAllowedByStar const):
(WebCore::ContentSecurityPolicySourceList::parse):
- 8:59 AM Changeset in webkit [292265] by
-
- 2 edits in trunk/Source/WebKit
GTK doesn't compile with ENABLE_ACCESSIBILITY=0
https://bugs.webkit.org/show_bug.cgi?id=238669
Reviewed by Michael Catanzaro.
Fix GTK compilation with ENABLE_ACCESSIBILITY=0
No new tests.
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseDispose):
(webkit_web_view_base_class_init):
- 6:35 AM Changeset in webkit [292264] by
-
- 11 edits in trunk/Source
Expose AXObjectCache::treeData to the UI process.
https://bugs.webkit.org/show_bug.cgi?id=238563
<rdar://problem/91057915>
Reviewed by Chris Fleizach.
Source/WebCore:
Added Page::accessibilityTreeData so that it can be invoked from the UI
process. This will be used to log a textual representation of the AX
trees from the browser process.
- page/Page.cpp:
(WebCore::Page::accessibilityTreeData const):
- page/Page.h:
Source/WebKit:
Exposed Page::accessibilityTreeData so that it can be invoked from the UI
process. This will be used to log a textual representation of the AX
trees from the browser process.
- UIProcess/API/Cocoa/WKWebView.h:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView retrieveAccessibilityTreeData:]):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::getAccessibilityTreeData):
- UIProcess/WebPageProxy.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::getAccessibilityTreeData):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- 3:57 AM Changeset in webkit [292263] by
-
- 198 edits7 adds9 deletes in trunk
[GTK] Replace gtk-doc with gi-docgen
https://bugs.webkit.org/show_bug.cgi?id=226662
Reviewed by Michael Catanzaro.
Import two new CMake modules which define commands to easy setup of GObject-Introspection
and gi-docgen. These in turn allow to remove a bunch of duplicated CMake code, reuse
the same for both the WPE and GTK ports, and remove the gnarly DocBook templates and
other auxiliary files previously used by gtk-doc (which amount to a sizeable amount of
code).
While at it, do a quick pass to fix the most egregious issues reported by gi-docgen's
linting mode and that all public symbols end up with at least some documentation in
the generated output. Follow-up patches will be needed to keep adapting to the style
encouraged by gi-docgen, fix linking between documented entities, make code examples
display properly, and a few other things.
.:
- Source/PlatformGTK.cmake: Adapted to use the new CMake modules.
- Source/PlatformWPE.cmake: Ditto.
- Source/cmake/FindGI.cmake: Added.
- Source/cmake/FindGIDocgen.cmake: Added.
- Source/cmake/FindGObjectIntrospection.cmake: Removed.
- Source/cmake/OptionsGTK.cmake: Adapted to use the new CMake modules.
- Source/cmake/OptionsWPE.cmake: Ditto.
Source/JavaScriptCore:
- API/glib/JSCClass.cpp: Fix documentation comments.
- API/glib/JSCContext.cpp: Ditto.
- API/glib/JSCDefines.h: Ditto.
- API/glib/JSCException.cpp: Ditto.
- API/glib/JSCValue.cpp: Ditto.
- API/glib/JSCVersion.cpp: Ditto.
- API/glib/JSCVersion.h.in: Ditto.
- API/glib/JSCVirtualMachine.cpp: Ditto.
- API/glib/JSCWeakValue.cpp: Ditto.
- API/glib/docs/jsc-glib-4.0-sections.txt: Removed.
- API/glib/docs/jsc-glib-4.0.types: Removed.
- API/glib/docs/jsc-glib-docs.sgml: Removed.
- API/glib/docs/jsc.toml.in: Added.
- PlatformGTK.cmake: Adapt to use the new CMake modules.
Source/WebKit:
- PlatformGTK.cmake: Adapt to use the new CMake modules.
- PlatformWPE.cmake: Ditto.
- Shared/API/glib/WebKitContextMenu.cpp: Fix documentation comments.
- Shared/API/glib/WebKitContextMenuItem.cpp: Ditto.
- Shared/API/glib/WebKitHitTestResult.cpp: Ditto.
- Shared/API/glib/WebKitURIRequest.cpp: Ditto.
- Shared/API/glib/WebKitURIResponse.cpp: Ditto.
- Shared/API/glib/WebKitUserMessage.cpp: Ditto.
- UIProcess/API/glib/WebKitApplicationInfo.cpp: Ditto.
- UIProcess/API/glib/WebKitAuthenticationRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitAutomationSession.cpp: Ditto.
- UIProcess/API/glib/WebKitBackForwardList.cpp: Ditto.
- UIProcess/API/glib/WebKitBackForwardListItem.cpp: Ditto.
- UIProcess/API/glib/WebKitCookieManager.cpp: Ditto.
- UIProcess/API/glib/WebKitCredential.cpp: Ditto.
- UIProcess/API/glib/WebKitDeviceInfoPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitDownload.cpp: Ditto.
- UIProcess/API/glib/WebKitEditorState.cpp: Ditto.
- UIProcess/API/glib/WebKitError.cpp: Ditto.
- UIProcess/API/glib/WebKitFaviconDatabase.cpp: Ditto.
- UIProcess/API/glib/WebKitFileChooserRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitFindController.cpp: Ditto.
- UIProcess/API/glib/WebKitFormSubmissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitGeolocationManager.cpp: Ditto.
- UIProcess/API/glib/WebKitGeolocationPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitInputMethodContext.cpp: Ditto.
(webkit_input_method_context_class_init): Ditto.
- UIProcess/API/glib/WebKitInstallMissingMediaPluginsPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitJavascriptResult.cpp: Ditto.
- UIProcess/API/glib/WebKitMediaKeySystemPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitMemoryPressureSettings.cpp: Ditto.
- UIProcess/API/glib/WebKitMimeInfo.cpp: Ditto.
- UIProcess/API/glib/WebKitNavigationAction.cpp: Ditto.
- UIProcess/API/glib/WebKitNavigationPolicyDecision.cpp: Ditto.
- UIProcess/API/glib/WebKitNetworkProxySettings.cpp: Ditto.
- UIProcess/API/glib/WebKitNotification.cpp: Ditto.
- UIProcess/API/glib/WebKitNotificationPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitOptionMenu.cpp: Ditto.
- UIProcess/API/glib/WebKitOptionMenuItem.cpp: Ditto.
- UIProcess/API/glib/WebKitPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitPlugin.cpp: Ditto.
- UIProcess/API/glib/WebKitPointerLockPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitPolicyDecision.cpp: Ditto.
- UIProcess/API/glib/WebKitResponsePolicyDecision.cpp: Ditto.
- UIProcess/API/glib/WebKitScriptDialog.cpp: Ditto.
- UIProcess/API/glib/WebKitSecurityManager.cpp: Ditto.
- UIProcess/API/glib/WebKitSecurityOrigin.cpp: Ditto.
- UIProcess/API/glib/WebKitSettings.cpp: Ditto.
- UIProcess/API/glib/WebKitURISchemeRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitURISchemeResponse.cpp: Ditto.
(webkit_uri_scheme_response_class_init): Ditto.
- UIProcess/API/glib/WebKitURIUtilities.cpp: Ditto.
- UIProcess/API/glib/WebKitUserContent.cpp: Ditto.
- UIProcess/API/glib/WebKitUserContentFilterStore.cpp: Ditto.
- UIProcess/API/glib/WebKitUserContentManager.cpp: Ditto.
- UIProcess/API/glib/WebKitUserMediaPermissionRequest.cpp: Ditto.
(webkit_user_media_permission_request_class_init): Ditto.
- UIProcess/API/glib/WebKitVersion.cpp: Ditto.
- UIProcess/API/glib/WebKitWebContext.cpp: Ditto.
- UIProcess/API/glib/WebKitWebResource.cpp: Ditto.
- UIProcess/API/glib/WebKitWebView.cpp: Ditto.
- UIProcess/API/glib/WebKitWebViewSessionState.cpp: Ditto.
- UIProcess/API/glib/WebKitWebsiteData.cpp: Ditto.
- UIProcess/API/glib/WebKitWebsiteDataAccessPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitWebsiteDataManager.cpp: Ditto.
- UIProcess/API/glib/WebKitWebsitePolicies.cpp: Ditto.
- UIProcess/API/glib/WebKitWindowProperties.cpp: Ditto.
(webkit_window_properties_class_init): Ditto.
- UIProcess/API/gtk/WebKitAuthenticationDialog.h: Ditto.
- UIProcess/API/gtk/WebKitAuthenticationRequest.h: Ditto.
- UIProcess/API/gtk/WebKitAutomationSession.h: Ditto.
- UIProcess/API/gtk/WebKitBackForwardList.h: Ditto.
- UIProcess/API/gtk/WebKitBackForwardListItem.h: Ditto.
- UIProcess/API/gtk/WebKitColorChooserRequest.cpp: Ditto.
(webkit_color_chooser_request_class_init): Ditto.
- UIProcess/API/gtk/WebKitContextMenu.h: Ditto.
- UIProcess/API/gtk/WebKitCookieManager.h: Ditto.
- UIProcess/API/gtk/WebKitDefines.h: Ditto.
- UIProcess/API/gtk/WebKitDeviceInfoPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitDownload.h: Ditto.
- UIProcess/API/gtk/WebKitEditorState.h: Ditto.
- UIProcess/API/gtk/WebKitError.h: Ditto.
- UIProcess/API/gtk/WebKitFaviconDatabase.h: Ditto.
- UIProcess/API/gtk/WebKitFileChooserRequest.h: Ditto.
- UIProcess/API/gtk/WebKitFindController.h: Ditto.
- UIProcess/API/gtk/WebKitFormSubmissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitGeolocationManager.h: Ditto.
- UIProcess/API/gtk/WebKitGeolocationPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitHitTestResult.h: Ditto.
- UIProcess/API/gtk/WebKitInstallMissingMediaPluginsPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitMediaKeySystemPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitNavigationPolicyDecision.h: Ditto.
- UIProcess/API/gtk/WebKitNotification.h: Ditto.
- UIProcess/API/gtk/WebKitOptionMenu.h: Ditto.
- UIProcess/API/gtk/WebKitPlugin.h: Ditto.
- UIProcess/API/gtk/WebKitPointerLockPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitPolicyDecision.h: Ditto.
- UIProcess/API/gtk/WebKitPrintCustomWidget.cpp: Ditto.
- UIProcess/API/gtk/WebKitPrintCustomWidget.h: Ditto.
- UIProcess/API/gtk/WebKitPrintOperation.cpp: Ditto.
- UIProcess/API/gtk/WebKitPrintOperation.h: Ditto.
- UIProcess/API/gtk/WebKitResponsePolicyDecision.h: Ditto.
- UIProcess/API/gtk/WebKitSecurityManager.h: Ditto.
- UIProcess/API/gtk/WebKitSettings.h: Ditto.
- UIProcess/API/gtk/WebKitURIRequest.h: Ditto.
- UIProcess/API/gtk/WebKitURIResponse.h: Ditto.
- UIProcess/API/gtk/WebKitURISchemeRequest.h: Ditto.
- UIProcess/API/gtk/WebKitURISchemeResponse.h: Ditto.
- UIProcess/API/gtk/WebKitUserContentFilterStore.h: Ditto.
- UIProcess/API/gtk/WebKitUserContentManager.h: Ditto.
- UIProcess/API/gtk/WebKitUserMediaPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitUserMessage.h: Ditto.
- UIProcess/API/gtk/WebKitVersion.h.in: Ditto.
- UIProcess/API/gtk/WebKitWebContext.h: Ditto.
- UIProcess/API/gtk/WebKitWebInspector.cpp: Ditto.
- UIProcess/API/gtk/WebKitWebInspector.h: Ditto.
- UIProcess/API/gtk/WebKitWebResource.h: Ditto.
- UIProcess/API/gtk/WebKitWebView.h: Ditto.
- UIProcess/API/gtk/WebKitWebViewBase.cpp: Ditto.
- UIProcess/API/gtk/WebKitWebViewDialog.h: Ditto.
- UIProcess/API/gtk/WebKitWebsiteDataAccessPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitWebsiteDataManager.h: Ditto.
- UIProcess/API/gtk/WebKitWebsitePolicies.h: Ditto.
- UIProcess/API/gtk/WebKitWindowProperties.h: Ditto.
- UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Removed.
- UIProcess/API/gtk/docs/webkit2gtk-4.0.types: Removed.
- UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Removed.
- UIProcess/API/wpe/WebKitAuthenticationRequest.h: Fix documentation comments.
- UIProcess/API/wpe/WebKitAutomationSession.h: Ditto.
- UIProcess/API/wpe/WebKitBackForwardList.h: Ditto.
- UIProcess/API/wpe/WebKitBackForwardListItem.h: Ditto.
- UIProcess/API/wpe/WebKitColor.cpp: Ditto.
- UIProcess/API/wpe/WebKitColor.h: Ditto.
- UIProcess/API/wpe/WebKitContextMenu.h: Ditto.
- UIProcess/API/wpe/WebKitContextMenuItem.h: Ditto.
- UIProcess/API/wpe/WebKitCookieManager.h: Ditto.
- UIProcess/API/wpe/WebKitDefines.h: Ditto.
- UIProcess/API/wpe/WebKitDeviceInfoPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitDownload.h: Ditto.
- UIProcess/API/wpe/WebKitEditorState.h: Ditto.
- UIProcess/API/wpe/WebKitError.h: Ditto.
- UIProcess/API/wpe/WebKitFaviconDatabase.h: Ditto.
- UIProcess/API/wpe/WebKitFileChooserRequest.h: Ditto.
- UIProcess/API/wpe/WebKitFindController.h: Ditto.
- UIProcess/API/wpe/WebKitFormSubmissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitGeolocationManager.h: Ditto.
- UIProcess/API/wpe/WebKitGeolocationPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitHitTestResult.h: Ditto.
- UIProcess/API/wpe/WebKitInputMethodContext.h: Ditto.
- UIProcess/API/wpe/WebKitInstallMissingMediaPluginsPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitMediaKeySystemPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitNavigationPolicyDecision.h: Ditto.
- UIProcess/API/wpe/WebKitNotification.h: Ditto.
- UIProcess/API/wpe/WebKitOptionMenu.h: Ditto.
- UIProcess/API/wpe/WebKitPlugin.h: Ditto.
- UIProcess/API/wpe/WebKitPolicyDecision.h: Ditto.
- UIProcess/API/wpe/WebKitRectangle.cpp: Ditto.
- UIProcess/API/wpe/WebKitRectangle.h: Ditto.
- UIProcess/API/wpe/WebKitResponsePolicyDecision.h: Ditto.
- UIProcess/API/wpe/WebKitSecurityManager.h: Ditto.
- UIProcess/API/wpe/WebKitSettings.h: Ditto.
- UIProcess/API/wpe/WebKitURIRequest.h: Ditto.
- UIProcess/API/wpe/WebKitURIResponse.h: Ditto.
- UIProcess/API/wpe/WebKitURISchemeRequest.h: Ditto.
- UIProcess/API/wpe/WebKitURISchemeResponse.h: Ditto.
- UIProcess/API/wpe/WebKitUserContentFilterStore.h: Ditto.
- UIProcess/API/wpe/WebKitUserContentManager.h: Ditto.
- UIProcess/API/wpe/WebKitUserMediaPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitUserMessage.h: Ditto.
- UIProcess/API/wpe/WebKitVersion.h.in: Ditto.
- UIProcess/API/wpe/WebKitWebContext.h: Ditto.
- UIProcess/API/wpe/WebKitWebResource.h: Ditto.
- UIProcess/API/wpe/WebKitWebView.h: Ditto.
- UIProcess/API/wpe/WebKitWebViewBackend.cpp: Ditto.
- UIProcess/API/wpe/WebKitWebViewWPE.cpp: Ditto.
- UIProcess/API/wpe/WebKitWebsiteDataAccessPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitWebsiteDataManager.h: Ditto.
- UIProcess/API/wpe/WebKitWebsitePolicies.h: Ditto.
- UIProcess/API/wpe/WebKitWindowProperties.h: Ditto.
- UIProcess/API/wpe/docs/wpe-1.0-sections.txt: Removed.
- UIProcess/API/wpe/docs/wpe-docs.sgml: Removed.
- WebProcess/InjectedBundle/API/glib/WebKitFrame.cpp: Fix documentation comments.
- WebProcess/InjectedBundle/API/glib/WebKitWebEditor.cpp: Ditto.
- WebProcess/InjectedBundle/API/glib/WebKitWebExtension.cpp: Ditto.
- WebProcess/InjectedBundle/API/glib/WebKitWebHitTestResult.cpp: Ditto.
- WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp: Ditto.
- WebProcess/InjectedBundle/API/gtk/DOM/docs/webkitdomgtk-4.0-sections.txt: Removed.
- WebProcess/InjectedBundle/API/gtk/DOM/docs/webkitdomgtk-docs.sgml: Removed.
- WebProcess/InjectedBundle/API/gtk/WebKitFrame.h: Fix documentation comments.
- WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h: Ditto.
- WebProcess/InjectedBundle/API/wpe/WebKitFrame.h: Ditto.
- WebProcess/InjectedBundle/API/wpe/WebKitWebPage.h: Ditto.
- WebProcess/InjectedBundle/API/wpe/docs/wpe-webextensions-1.0-sections.txt: Removed.
- WebProcess/InjectedBundle/API/wpe/docs/wpe-webextensions-docs.sgml: Removed.
- gtk/webkit2gtk-webextension.toml.in: Added.
- gtk/webkit2gtk.toml.in: Added.
- wpe/wpewebextension.toml.in: Added.
- wpe/wpewebkit.toml.in: Added.
Tools:
- gtkdoc/generate-gtkdoc: Removed.
- gtkdoc/gtkdoc.py: Removed.
(GTKDoc): Deleted.
(GTKDoc.init): Deleted.
(GTKDoc.generate): Deleted.
(GTKDoc._delete_file_if_exists): Deleted.
(GTKDoc._create_directory_if_nonexistent): Deleted.
(GTKDoc._raise_exception_if_file_inaccessible): Deleted.
(GTKDoc._output_has_warnings): Deleted.
(GTKDoc._ask_yes_or_no_question): Deleted.
(GTKDoc._run_command): Deleted.
(GTKDoc._copy_doc_files_to_output_dir): Deleted.
(GTKDoc._copy_doc_files_to_output_dir.copy_file_replacing_existing): Deleted.
(GTKDoc._copy_doc_files_to_output_dir.copy_all_files_in_directory): Deleted.
(GTKDoc._write_version_xml): Deleted.
(GTKDoc._ignored_files_basenames): Deleted.
(GTKDoc._run_gtkdoc_scan): Deleted.
(GTKDoc._run_gtkdoc_scangobj): Deleted.
(GTKDoc._run_gtkdoc_mkdb): Deleted.
(GTKDoc._run_gtkdoc_mkhtml): Deleted.
(GTKDoc._run_gtkdoc_fixxref): Deleted.
(GTKDoc.rebase_installed_docs): Deleted.
(GTKDoc.api_missing_documentation): Deleted.
(PkgConfigGTKDoc): Deleted.
(PkgConfigGTKDoc.init): Deleted.
- 12:20 AM Changeset in webkit [292262] by
-
- 5 edits3 adds in trunk
Remove notifications from notification list when notification gets closed
https://bugs.webkit.org/show_bug.cgi?id=238665
Reviewed by Darin Adler.
Source/WebCore:
Test: http/tests/workers/service/getnotifications-stop.html
- Modules/notifications/Notification.cpp:
(WebCore::Notification::stop):
Do not destroy persistent permissions when the JS object gets stopped.
Source/WebKit:
Cancelling a notification should trigger the close steps, which means removing the notification from the notification list.
- UIProcess/Notifications/WebNotificationManagerProxy.cpp:
(WebKit::WebNotificationManagerProxy::cancel):
(WebKit::WebNotificationManagerProxy::didDestroyNotification):
LayoutTests:
- http/tests/workers/service/getnotifications-stop-expected.txt: Added.
- http/tests/workers/service/getnotifications-stop.html: Added.
- http/tests/workers/service/resources/getNotifications-iframe.html: Added.
Apr 1, 2022:
- 11:33 PM Changeset in webkit [292261] by
-
- 2 edits in trunk/Source/WebKit
[iOS] WKFullScreenWindowController's UIViewController leaks after entering element fullscreen
https://bugs.webkit.org/show_bug.cgi?id=238684
Reviewed by Eric Carlson.
The window controller's
_rootViewControlleris aRetainPtr, but we're missing anadoptNSwhen creating a
new view controller. Fix the leak by usingadoptNSto prevent the redundant-retainwhen constructing
RetainPtr.
- UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm:
(-[WKFullScreenWindowController enterFullScreen]):
- 11:27 PM Changeset in webkit [292260] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Several tests in media/modern-media-controls crash in -[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]
https://bugs.webkit.org/show_bug.cgi?id=238687
Reviewed by Tim Horton.
Fixes several debug assertions that are hit when running layout tests in media/modern-media-controls, due to
exercising undefined behavior in the case where there is only one item. This is because we currently use
Vector's move assignment operator to setitemstoitems[0].children; however, this move assignment operator
starts by calling the destructor on the contents ofitem, which puts the first item's vector of children in an
invalid state.
Instead, simply add a new temporary variable, and move into the temporary variable instead.
- UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]):
(-[WKActionSheetAssistant showMediaControlsContextMenu:items:completionHandler:]):
- 11:10 PM Changeset in webkit [292259] by
-
- 4 edits in trunk/Tools
Fix internal iOS build
https://bugs.webkit.org/show_bug.cgi?id=238032
This is what we get when we add files to unified builds.
- TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
- TestWebKitAPI/Tests/WebKitCocoa/ImageAnalysisTests.mm:
- TestWebKitAPI/ios/UIKitSPI.h:
- 10:18 PM Changeset in webkit [292258] by
-
- 16 edits in trunk/Source
Stop copying StagedFrameworks to the secondary path by default
https://bugs.webkit.org/show_bug.cgi?id=238688
Reviewed by Saam Barati.
Decoupled COPY_STAGED_FRAMEWORKS_TO_SECONDARY_PATH from USE_SYSTEM_CONTENT_PATH so we won't
always copy frameworks to the secondary path on macOS. Instead, the build configuration can set
COPY_STAGED_FRAMEWORKS_TO_SECONDARY_PATH as appropriate.
Source/JavaScriptCore:
- Configurations/Base.xcconfig:
Source/ThirdParty/ANGLE:
- Configurations/ANGLE-dynamic.xcconfig:
Source/ThirdParty/libwebrtc:
- Configurations/libwebrtc.xcconfig:
Source/WebCore:
- Configurations/WebCore.xcconfig:
Source/WebGPU:
- Configurations/WebGPU.xcconfig:
Source/WebInspectorUI:
- Configurations/WebInspectorUIFramework.xcconfig:
Source/WebKit:
- Configurations/Base.xcconfig:
Source/WebKitLegacy/mac:
- Configurations/Base.xcconfig:
- 8:53 PM Changeset in webkit [292257] by
-
- 2 edits in trunk/LayoutTests
[CSS-contain] Update select element failures with bugzilla link.
Unreviewed.
- 8:46 PM Changeset in webkit [292256] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, fix non-unified build after r292225
- Platform/IPC/unix/IPCSemaphoreUnix.cpp: Add poll.h and remove
duplicated Decoder.h and Encoder.h headers.
- 8:29 PM Changeset in webkit [292255] by
-
- 5 edits in trunk
Avoid initializing default WKWebsiteDataStore in -[WKWebViewConfiguration copyWithZone]
https://bugs.webkit.org/show_bug.cgi?id=238531
rdar://90628101
Reviewed by Tim Horton.
Source/WebKit:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _initializeWithConfiguration:]):
- UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration copyWithZone:]):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
- 8:04 PM Changeset in webkit [292254] by
-
- 21 edits3 adds in trunk
WKBundlePageUIClient console message support should include source URL, column number, and console messages with arguments
https://bugs.webkit.org/show_bug.cgi?id=238032
Patch by Jeff Miller <jeffm@apple.com> on 2022-04-01
Reviewed by Alex Christensen.
Source/JavaScriptCore:
Add a function to ScriptArguments to get a vector of argument strings. As we do in
ScriptArguments::getFirstArgumentAsString(), avoid triggering Proxy traps on a Proxy object when
generating the vector.
- inspector/ScriptArguments.cpp:
(Inspector::ScriptArguments::getArgumentAtIndexAsString const):
Refactored from getFirstArgumentAsString().
(Inspector::ScriptArguments::getFirstArgumentAsString const):
Use getArgumentAtIndexAsString().
(Inspector::ScriptArguments::getArgumentsAsStrings const):
- inspector/ScriptArguments.h:
Source/WebCore:
Add a new ChromeClient addMessageWithArgumentsToConsole() member function for adding a console
message that includes formatted arguments. I left the existing behavior of addMessageToConsole()
unchanged since layout tests expect to get the console message without these arguments.
New API test was added in TestWebKitAPI/Tests/WebKitCocoa/ConsoleMessageWithDetails.mm.
- loader/EmptyClients.h:
Added addMessageWithArgumentsToConsole().
- page/ChromeClient.h:
(WebCore::ChromeClient::addMessageWithArgumentsToConsole):
Added, subclasses can optionally override this.
- page/PageConsoleClient.cpp:
(WebCore::additionalArgumentsFromArgumentsVector):
Added, pulls out any additional arguments beyond the initial message.
(WebCore::PageConsoleClient::addMessage):
Create a Span of any message arguments and include it when calling the new
addMessageWithArgumentsToConsole() function.
(WebCore::PageConsoleClient::messageWithTypeAndLevel):
Ditto.
Source/WebKit:
Add a new ChromeClient addMessageWithArgumentsToConsole() member function for adding a console
message that includes formatted arguments. I left the existing behavior of addMessageToConsole()
unchanged since layout tests expect to get the console message without these arguments.
- Shared/API/APIArray.cpp:
(API::Array::createStringArray):
Added, creates an array from a Span.
- Shared/API/APIArray.h:
- WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:
(API::InjectedBundle::PageUIClient::willAddMessageWithArgumentsToConsole):
Added.
- WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
Add WKBundlePageUIClientV5 with a new willAddMessageWithDetailsToConsole callback. This callback is
similar to the existing willAddMessageToConsole callback, but includes any message arguments, the
column number, and source URL.
- WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
(WebKit::InjectedBundlePageUIClient::willAddMessageWithArgumentsToConsole):
Added, invokes the new willAddMessageWithDetailsToConsole callback.
- WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
Add a new bundle page UI client version.
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::addMessageWithArgumentsToConsole):
Added.
- WebProcess/WebCoreSupport/WebChromeClient.h:
Added addMessageWithArgumentsToConsole().
Tools:
Add a test for the new willAddMessageWithDetailsToConsole callback in WKBundlePageUIClient. This
includes a new WKWebProcessPlugIn subclass, BundlePageConsoleMessageWithDetails, that implements
this callback and formats the message and arguments into a single string which it sends to the UI
process.
- TestWebKitAPI/SourcesCocoa.txt:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/BundlePageConsoleMessageWithDetails.mm: Added.
(willAddMessageWithDetailsToConsoleCallback):
(-[BundlePageConsoleMessageWithDetails webProcessPlugIn:didCreateBrowserContextController:]):
- TestWebKitAPI/Tests/WebKitCocoa/ConsoleMessageWithDetails.mm: Added.
(TestWebKitAPI::didReceivePageMessageFromInjectedBundle):
(TestWebKitAPI::setInjectedBundleClient):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/console-message-with-details.html: Added.
- 7:14 PM Changeset in webkit [292253] by
-
- 2 edits in trunk/Source/WebCore
Fix the WebGPU-less build
https://bugs.webkit.org/show_bug.cgi?id=238692
Reviewed by Myles Maxfield.
- Configurations/WebCore.xcconfig:
- 7:09 PM Changeset in webkit [292252] by
-
- 15 edits in trunk/Source
[iOS] [WK2] Add plumbing for extracting video frames in element fullscreen
https://bugs.webkit.org/show_bug.cgi?id=238607
rdar://91102888
Reviewed by Eric Carlson.
Source/WebCore:
Add a helper function on HTMLMediaElement to return the identifier of its MediaPlayer. See WebKit ChangeLog for
more information.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::playerIdentifier const):
- html/HTMLMediaElement.h:
Source/WebKit:
Add WebKit2 client layer plumbing for triggering video extraction for the prominent video in element fullscreen.
See below for more details.
- UIProcess/PageClient.h:
(WebKit::PageClient::beginElementFullscreenVideoExtraction):
(WebKit::PageClient::cancelElementFullscreenVideoExtraction):
Add new PageClient hooks to start and cancel video element extraction in element fullscreen. We only implement
these on iOS, for now.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::extractVideoInElementFullScreen):
(WebKit::WebPageProxy::cancelVideoExtractionInElementFullScreen):
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
Add IPC plumbing from WebPage to WebPageProxy for starting and canceling video element extraction.
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::beginElementFullscreenVideoExtraction):
(WebKit::PageClientImpl::cancelElementFullscreenVideoExtraction):
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView beginElementFullscreenVideoExtraction:bounds:]):
(-[WKContentView cancelElementFullscreenVideoExtraction]):
Add method stubs for non-internal builds.
- WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::WebFullScreenManager::mainVideoElementExtractionTimerFired):
(WebKit::WebFullScreenManager::endMainVideoElementExtractionIfNeeded):
Remove the FIXMEs and call into the new helper methods on WebPage to start and cancel video element extraction.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::extractVideoInElementFullScreen):
(WebKit::WebPage::cancelVideoExtractionInElementFullScreen):
- WebProcess/WebPage/WebPage.h:
- 7:01 PM Changeset in webkit [292251] by
-
- 93 edits in trunk/Tools
Prepare Tools/ for making the String(const char*) constructor explicit
https://bugs.webkit.org/show_bug.cgi?id=238530
Reviewed by Geoffrey Garen.
- DumpRenderTree/TestRunner.cpp:
(TestRunner::setAccummulateLogsForChannel):
- DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebViewToConsistentState):
- TestWebKitAPI/Tests/WTF/FileSystem.cpp:
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WTF/HashCountedSet.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/JSONValue.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
(TestWebKitAPI::expectBuilderContent):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/StringView.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/URL.cpp:
(TestWebKitAPI::TEST_F):
(TestWebKitAPI::createURL):
- TestWebKitAPI/Tests/WTF/URLParser.cpp:
(TestWebKitAPI::insertTabAtLocation):
(TestWebKitAPI::invalidParts):
(TestWebKitAPI::checkURL):
(TestWebKitAPI::checkRelativeURL):
(TestWebKitAPI::checkURLDifferences):
(TestWebKitAPI::checkRelativeURLDifferences):
(TestWebKitAPI::shouldFail):
(TestWebKitAPI::testUserPassword):
- TestWebKitAPI/Tests/WTF/Vector.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/WTFString.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
(ApplicationManifestParserTest::SetUp):
(ApplicationManifestParserTest::testStartURL):
(ApplicationManifestParserTest::testDisplay):
(ApplicationManifestParserTest::testName):
(ApplicationManifestParserTest::testDescription):
(ApplicationManifestParserTest::testShortName):
(ApplicationManifestParserTest::testThemeColor):
(ApplicationManifestParserTest::testIconsSrc):
(ApplicationManifestParserTest::testIconsType):
(ApplicationManifestParserTest::testIconsSizes):
(ApplicationManifestParserTest::testIconsPurposes):
(TEST_F):
- TestWebKitAPI/Tests/WebCore/CBORReaderTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/CBORValueTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/CBORWriterTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/CSSParser.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(TestWebKitAPI::mainDocumentRequest):
(TestWebKitAPI::subResourceRequest):
(TestWebKitAPI::requestInTopAndFrameURLs):
(TestWebKitAPI::makeBackend):
(TestWebKitAPI::TEST_F):
(TestWebKitAPI::actionsEqual):
(TestWebKitAPI::sequenceInstances):
(TestWebKitAPI::checkCompilerError):
- TestWebKitAPI/Tests/WebCore/CtapPinTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/FidoTestData.h:
- TestWebKitAPI/Tests/WebCore/GridPosition.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/HTMLParserIdioms.cpp:
(TestWebKitAPI::testParseHTMLInteger):
(TestWebKitAPI::parseHTMLIntegerFails):
(TestWebKitAPI::testParseHTMLNonNegativeInteger):
(TestWebKitAPI::parseHTMLNonNegativeIntegerFails):
- TestWebKitAPI/Tests/WebCore/HTTPHeaderField.cpp:
(TEST):
- TestWebKitAPI/Tests/WebCore/HTTPHeaderMap.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/KeyedCoding.cpp:
(TestWebKitAPI::TEST):
(TestWebKitAPI::testSimpleValue):
(TestWebKitAPI::KeyedCodingTestObject::encode):
(TestWebKitAPI::KeyedCodingTestObject::decode):
- TestWebKitAPI/Tests/WebCore/MIMETypeRegistry.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/NowPlayingInfoTests.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/ParsedContentRange.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/ParsedContentType.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/PublicSuffix.cpp:
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WebCore/PushDatabase.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/PushMessageCrypto.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WebCore/StringUtilities.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/StringWithDirection.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp:
(TestWebKitAPI::constructMakeCredentialRequest):
(TestWebKitAPI::constructGetAssertionRequest):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp:
(TestWebKitAPI::invalidParts):
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WebCore/YouTubePluginReplacement.cpp:
(TestWebKitAPI::test):
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WebCore/cg/BifurcatedGraphicsContextTestsCG.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKit/GetUserMedia.mm:
- TestWebKitAPI/Tests/WebKit/MediaSessionCoordinatorTest.mm:
(TestWebKitAPI::MediaSessionCoordinatorTest::loadPageAndBecomeReady):
(TestWebKitAPI::MediaSessionCoordinatorTest::play):
(TestWebKitAPI::MediaSessionCoordinatorTest::pause):
- TestWebKitAPI/Tests/WebKit/WebRTC.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKit/XPCEndpoint.mm:
- TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
(TEST):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(-[BlobWithUSDZExtensionDownloadDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
(TestWebKitAPI::downloadAtRate):
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm:
(TestWebKitAPI::runBasicPCMTest):
(TestWebKitAPI::triggerAttributionWithSubresourceRedirect):
(TestWebKitAPI::signUnlinkableTokenAndSendSecretToken):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/FTP.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/FileSystemAccess.mm:
- TestWebKitAPI/Tests/WebKitCocoa/HSTS.mm:
(TestWebKitAPI::hstsServer):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName.mm:
(runTest):
(createDirectories):
- TestWebKitAPI/Tests/WebKitCocoa/MediaLoading.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/MediaSession.mm:
(TestWebKitAPI::MediaSessionTest::loadPageAndBecomeNowPlaying):
(TestWebKitAPI::MediaSessionTest::runScriptWithUserGesture):
(TestWebKitAPI::MediaSessionTest::play):
(TestWebKitAPI::MediaSessionTest::pause):
(TestWebKitAPI::MediaSessionTest::eventListenerWasCalled):
(TestWebKitAPI::MediaSessionTest::waitForEventListenerToBeCalled):
(TestWebKitAPI::MediaSessionTest::sessionHandlerWasCalled):
(TestWebKitAPI::MediaSessionTest::waitForSessionHandlerToBeCalled):
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/NowPlaying.mm:
(NowPlayingTest::loadPage):
(NowPlayingTest::runScriptWithUserGesture):
(NowPlayingTest::runScriptWithoutUserGesture):
(TEST_F):
- TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
- TestWebKitAPI/Tests/WebKitCocoa/Proxy.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm:
- TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
- TestWebKitAPI/Tests/WebKitCocoa/StorageQuota.mm:
- TestWebKitAPI/Tests/WebKitCocoa/TLSDeprecation.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/TestSOAuthorization.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
- TestWebKitAPI/Tests/WebKitCocoa/UploadDirectory.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/WKContentExtensionStore.mm:
(TEST_F):
- TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
- TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEvaluateJavaScript.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/WebLocks.mm:
(TestWebKitAPI::runSnapshotAcrossPagesTest):
(TestWebKitAPI::runLockRequestWaitingOnAnotherPage):
- TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:
(TestWebKitAPI::TEST):
(TestWebKitAPI::WebPushDTest::loadRequest):
- TestWebKitAPI/Tests/WebKitCocoa/WebSocket.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm:
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/cocoa/HTTPServer.h:
- TestWebKitAPI/cocoa/HTTPServer.mm:
(TestWebKitAPI::HTTPServer::respondWithChallengeThenOK):
(TestWebKitAPI::HTTPServer::respondWithOK):
(TestWebKitAPI::HTTPServer::request const):
(TestWebKitAPI::HTTPServer::requestWithLocalhost const):
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::outputText):
- WebKitTestRunner/InjectedBundle/InjectedBundle.h:
- WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::dumpPath):
(WTR::string):
(WTR::pathSuitableForTestResult):
(WTR::dumpErrorDescriptionSuitableForTestResult):
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::findAndDumpWorldLeaks):
(WTR::TestController::didReceiveLiveDocumentsList):
(WTR::TestController::canAuthenticateAgainstProtectionSpace):
(WTR::TestController::didReceiveAuthenticationChallenge):
(WTR::TestController::downloadDidStart):
(WTR::TestController::decideDestinationWithSuggestedFilename):
(WTR::TestController::downloadDidFinish):
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::waitToDumpWatchdogTimerFired):
(WTR::TestInvocation::waitForPostDumpWatchdogTimerFired):
- WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaResetStateToConsistentValues):
- 7:00 PM Changeset in webkit [292250] by
-
- 2 edits in trunk/LayoutTests
Unreviewed gardening.
- platform/ios-wk2/TestExpectations: Forms test was flaky before turning GPUP on by default,
move it out of the section of GPUP-specific failures. Update WebGL failure with bugzilla link.
- 6:29 PM Changeset in webkit [292249] by
-
- 19 edits in trunk
Hoist the IOSurfacePool out of IOSurface
https://bugs.webkit.org/show_bug.cgi?id=238675
Reviewed by Tim Horton.
Source/WebCore:
A future patch will break the assumption that there is a singleton IOSurfacePool per
process, so we can't have IOSurface::create() consult the pool internally. Instead,
pass the pool to the create() functions, and to the moveToPool() function.
Callers in the web process pass IOSurfacePool::sharedPool(); those in the UI process
pass nullptr to avoid pool creation there.
- Modules/system-preview/ARKitBadgeSystemImage.mm:
(WebCore::ARKitBadgeSystemImage::draw const):
- platform/graphics/cg/IOSurfacePool.cpp:
(WebCore::IOSurfacePool::addSurface):
- platform/graphics/cg/IOSurfacePool.h:
- platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:
(WebCore::ImageBufferIOSurfaceBackend::create):
(WebCore::ImageBufferIOSurfaceBackend::releaseBufferToPool):
- platform/graphics/cocoa/GraphicsContextGLCocoa.mm:
(WebCore::GraphicsContextGLCocoa::allocateAndBindDisplayBufferBacking):
- platform/graphics/cocoa/IOSurface.h: createFromImageBuffer() was unused; remove it.
- platform/graphics/cocoa/IOSurface.mm:
(WebCore::IOSurface::create):
(WebCore::IOSurface::createFromImage):
(WebCore::IOSurface::moveToPool):
(WebCore::IOSurface::surfaceFromPool): Deleted.
- testing/WebFakeXRDevice.cpp:
(WebCore::SimulatedXRDevice::frameTimerFired):
Source/WebKit:
A future patch will break the assumption that there is a singleton IOSurfacePool per
process, so we can't have IOSurface::create() consult the pool internally. Instead,
pass the pool to the create() functions, and to the moveToPool() function.
Callers in the web process pass IOSurfacePool::sharedPool(); those in the UI process
pass nullptr to avoid pool creation there.
- GPUProcess/media/RemoteImageDecoderAVFProxy.cpp:
(WebKit::RemoteImageDecoderAVFProxy::createFrameImageAtIndex):
- GPUProcess/media/cocoa/RemoteMediaPlayerProxyCocoa.mm:
(WebKit::RemoteMediaPlayerProxy::nativeImageForCurrentTime):
- Shared/RemoteLayerTree/RemoteLayerBackingStore.h:
- UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView _takeViewSnapshot]):
(-[WKWebView _snapshotRectAfterScreenUpdates:rectInViewCoordinates:intoImageOfWidth:completionHandler:]):
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::takeViewSnapshot):
- WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.cpp:
(WebKit::ImageBufferShareableMappedIOSurfaceBackend::create):
Tools:
A future patch will break the assumption that there is a singleton IOSurfacePool per
process, so we can't have IOSurface::create() consult the pool internally. Instead,
pass the pool to the create() functions, and to the moveToPool() function.
Callers in the web process pass IOSurfacePool::sharedPool(); those in the UI process
pass nullptr to avoid pool creation there.
- DumpRenderTree/ios/PixelDumpSupportIOS.mm:
(createBitmapContextFromWebView):
- 6:18 PM Changeset in webkit [292248] by
-
- 2 edits in trunk/Source/WebKit
Fix build break after r292225 for Playstation.
https://bugs.webkit.org/show_bug.cgi?id=238683
Patch by Jigen Zhou <jigen.zhou@sony.com> on 2022-04-01
Reviewed by Don Olmstead.
Unreviewed build fix after 292225 for Playstation build.
- Platform/IPC/unix/IPCSemaphoreUnix.cpp:
- 5:46 PM Changeset in webkit [292247] by
-
- 3 edits1 add in trunk
Fix 'Error: too many values to unpack (expected 2)'
https://bugs.webkit.org/show_bug.cgi?id=238682
Reviewed by Jonathan Bedard.
- Tools/Scripts/libraries/resultsdbpy/resultsdbpy/bug_trackers/bug_description_unittest.py: Added.
(MockCommit):
(MockCommit.init):
(MockCommitContext):
(MockCommitContext.init):
(MockCommitContext.find_commits_by_uuid):
(MockCommitContext.url):
(TestBugDescription):
(TestBugDescription.setUp):
(TestBugDescription.test_single_row_and_single_test_failure):
- Tools/Scripts/libraries/resultsdbpy/resultsdbpy/bug_trackers/bugzilla.py:
(WebKitBugzilla.create_bug):
- Tools/Scripts/libraries/resultsdbpy/resultsdbpy/run-tests:
Canonical link: https://commits.webkit.org/249145@main
- 5:43 PM Changeset in webkit [292246] by
-
- 3 edits in trunk/LayoutTests
REGRESSION(r292072): [ Mac iOS ] http/tests/webAPIStatistics/canvas-read-and-write-data-collection.html is a constant text failure
https://bugs.webkit.org/show_bug.cgi?id=238580
Unreviewed test gardening.
Remove expectations as cause has been reverted.
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 5:41 PM Changeset in webkit [292245] by
-
- 7 edits2 deletes in trunk
Unreviewed, reverting r292072.
https://bugs.webkit.org/show_bug.cgi?id=238690
Caused webAPIStatistics test failures
Reverted changeset:
"[Cocoa] Automatically relayout the page when new fonts are
installed"
https://bugs.webkit.org/show_bug.cgi?id=238483
https://commits.webkit.org/r292072
Patch by Commit Queue <commit-queue@webkit.org> on 2022-04-01
- 5:25 PM Changeset in webkit [292244] by
-
- 9 edits in trunk/Source
Source/WebCore:
Unreviewed, fix non-unified build after r292208
- css/typedom/ComputedStylePropertyMapReadOnly.cpp:
- css/typedom/StylePropertyMapReadOnly.cpp:
- page/FrameSnapshotting.h:
- page/InteractionRegion.cpp:
- platform/graphics/gbm/GBMDevice.cpp:
Source/WebKit:
Unreviewed, fix non-unified build after r292218
- Platform/IPC/unix/IPCSemaphoreUnix.cpp:
- UIProcess/Notifications/WebNotificationManagerProxy.h:
- 5:23 PM Changeset in webkit [292243] by
-
- 2 edits in trunk/LayoutTests
REGRESSION(r290822?): [ wk1 ] storage/websql/change-version.html is a flaky timeout
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 4:57 PM Changeset in webkit [292242] by
-
- 6 edits in trunk
Change one-shot maxTimerNestingLevel from 5 to 10
https://bugs.webkit.org/show_bug.cgi?id=237168
Reviewed by Sam Weinig, Saam Barati, and Cameron McCormack .
Source/WebCore:
Recently, we found from Chromium change[1] that changing this from 5 to 10 offers 10% Speedometer2 improvement
because Speedometer2's setTimeout nesting level is typically 7-8. We discussed with folks including Chris, Maciej,
Saam, and Cameron and for now, we increase this from 5 to 10 to align to Blink's change to keep these kind of web
content fast. This is not aligned to the spec, and currently, we only apply it to one-shot timer.
[1]: https://chromium-review.googlesource.com/c/chromium/src/+/3473463
- page/DOMTimer.cpp:
(WebCore::DOMTimer::intervalClampedToMinimum const):
(WebCore::DOMTimer::alignedFireTime const):
LayoutTests:
- fast/dom/timer-increase-min-interval.html:
- fast/dom/timer-throttling-hidden-page-expected.txt:
- fast/dom/timer-throttling-hidden-page.html:
- 4:35 PM Changeset in webkit [292241] by
-
- 1 copy in tags/Safari-614.1.8.1
Tag Safari-614.1.8.1.
- 4:31 PM Changeset in webkit [292240] by
-
- 9 edits in branches/safari-614.1.8-branch/Source
Versioning.
WebKit-7614.1.8.1
- 4:04 PM Changeset in webkit [292239] by
-
- 9 edits in branches/safari-614.1.7-branch/Source
Versioning.
WebKit-7614.1.7.5
- 3:42 PM Changeset in webkit [292238] by
-
- 2 edits in trunk/Source/WTF
Unreviewed, drop unnecessary WTF_EXPORT_PRIVATE on String(ASCIILiteral)
This constructor was recently inlined.
- wtf/text/WTFString.h:
- 3:38 PM Changeset in webkit [292237] by
-
- 5 edits in trunk/LayoutTests
Unreviewed gardening.
This is based on auditing the failing tests cited after turning DOM in GPUP on by default.
- TestExpectations: One test was flaky on the bots before we turned on the flag.
- platform/ios-simulator-wk2/TestExpectations: Some tests have fail/pass results only when the iOS sim is on an arm64 host.
- platform/ios-wk2/TestExpectations: Lots of tests no longer fail.
- platform/ios/TestExpectations:
- 2:38 PM Changeset in webkit [292236] by
-
- 3 edits in trunk/Source/WebKit
Expose WebKitWebView from WPEQtView
https://bugs.webkit.org/show_bug.cgi?id=236746
Patch by Tusooa Zhu <tusooa@kazv.moe> on 2022-04-01
Reviewed by Adrian Perez de Castro.
WPEQtView currently does not allow manipulating the underlying WebKitWebView.
This patch allows retrieving the WebKitWebView from the WPEQtView.
No tests needed, as this patch only adds a trivial getter.
- UIProcess/API/wpe/qt/WPEQtView.cpp:
(WPEQtView::webView const):
- UIProcess/API/wpe/qt/WPEQtView.h:
- 2:29 PM Changeset in webkit [292235] by
-
- 3 edits in trunk/Tools
[Merge-Queue] Canonicalize commit without rebase
https://bugs.webkit.org/show_bug.cgi?id=238614
<rdar://problem/91113465>
Reviewed by Aakash Jain.
This is helpful immiediatly after landing a subversion commit
and allows us to bypass the 60 second sleep in PushCommitToWebKitRepo.
- Tools/CISupport/ews-build/steps.py:
(Canonicalize.init): Allow caller to opt out of rebasing.
(Canonicalize.run): Ditto.
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249136@main
- 2:21 PM Changeset in webkit [292234] by
-
- 1 copy in tags/Safari-613.2.5
Tag Safari-613.2.5.
- 2:18 PM Changeset in webkit [292233] by
-
- 4 edits in trunk/LayoutTests
REGRESSION(r292072): [ wk1 ] fast/text/install-font-style-recalc.html is a constant text failure
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 1:47 PM Changeset in webkit [292232] by
-
- 12 edits in trunk
Add more push-related logging
https://bugs.webkit.org/show_bug.cgi?id=238591
Reviewed by Youenn Fablet.
Source/WebCore:
Add logging to help diagnose Push API errors. We currently log very little, which is making
it hard for us to diagnose bug reports.
- Log if PushManager.subscribe fails the user gesture check. We log this to both syslog and the developer console. We do the latter to inform developers, and we already log an identical message from Notification.requestPermission when that fails in this manner.
- Log if we can't fire a push event because the service worker registration went away.
- Modules/push-api/PushManager.cpp:
(WebCore::PushManager::subscribe):
- workers/service/server/SWServer.cpp:
(WebCore::SWServer::processPushMessage):
Source/WebKit:
Add logging to help diagnose Push API errors. We currently log very little, which is making
it hard for us to diagnose bug reports.
- Log when we try to fetch or process push messages in NetworkProcess.
- Log when we enqueue, start, and finish a PushServiceRequest. This helps catch issues such as a queued request never running because the OS push daemon never completing a request.
- Log if we failed trying to wake up the browser to process a push message.
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::processPushMessage):
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _getPendingPushMessages:]):
(-[WKWebsiteDataStore _processPushMessage:completionHandler:]):
- webpushd/PushService.mm:
(WebPushD::PushService::create):
(WebPushD::PushServiceRequestImpl::fulfill):
(WebPushD::PushServiceRequestImpl::reject):
(WebPushD::SubscribeRequest::startImpl):
(WebPushD::UnsubscribeRequest::startInternal):
(WebPushD::PushService::enqueuePushServiceRequest):
(WebPushD::PushService::incrementSilentPushCount):
(WebPushD::PushService::removeRecordsImpl):
(WebPushD::makeRawPushMessage):
(WebPushD::PushService::didReceivePushMessage):
- webpushd/WebPushDaemon.mm:
(WebPushD::Daemon::injectEncryptedPushMessageForTesting):
(WebPushD::Daemon::notifyClientPushMessageIsAvailable):
(WebPushD::Daemon::getPendingPushMessages):
LayoutTests:
Modify test cases to check for user gesture error console message.
- http/tests/push-api/subscribe-default-permissions-expected.txt:
- http/tests/push-api/subscribe-default-permissions-iframe-same-origin-expected.txt:
- http/tests/push-api/subscribe-deny-permissions-on-prompt-expected.txt:
- 12:53 PM Changeset in webkit [292231] by
-
- 2 edits in trunk/LayoutTests
REGRESSION(r292072): [ wk1 ] fast/text/install-font-style-recalc.html is a constant text failure
https://bugs.webkit.org/show_bug.cgi?id=238641
Unreviewed test gardening.
platform/mac-wk1/TestExpectations:
- 12:30 PM Changeset in webkit [292230] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION(r292197): 3 TestWebKitAPI.ContentRuleList API tests are constant failures/timeout
https://bugs.webkit.org/show_bug.cgi?id=238678
<rdar://91173297>
Unreviewed, in r292197, I made a last minute mistake when applying some of Darin's review comments.
I converted a few calls toNSURL.absoluteURL.fileSystemRepresentationto
NSURL.absoluteStringinstead ofNSURL.absoluteURL.path. As a result, the file://
prefix was still present and some characters may still be URL-encoded.
No new tests, covered by existing API tests failing on the bots.
- UIProcess/API/Cocoa/WKContentRuleListStore.mm:
(+[WKContentRuleListStore storeWithURL:]):
(+[WKContentRuleListStore storeWithURLAndLegacyFilename:]):
- 12:26 PM Changeset in webkit [292229] by
-
- 8 edits5 adds in trunk
CSP: WASM fails to execute after window.open
https://bugs.webkit.org/show_bug.cgi?id=238562
<rdar://problem/90778752>
Reviewed by Brent Fulgham.
Source/WebCore:
Test: http/tests/security/contentSecurityPolicy/allow-wasm-after-window-open.html
Reset WASM enabled value after a window.open() call. This patch simplifies
eval and wasm setters by removing the distinct enable/disable functions
and using one consistent setter.
- bindings/js/ScriptController.cpp:
(WebCore::ScriptController::setEvalEnabled):
(WebCore::ScriptController::setWebAssemblyEnabled):
(WebCore::ScriptController::enableEval): Deleted.
(WebCore::ScriptController::enableWebAssembly): Deleted.
(WebCore::ScriptController::disableEval): Deleted.
(WebCore::ScriptController::disableWebAssembly): Deleted.
- bindings/js/ScriptController.h:
- dom/Document.cpp:
(WebCore::Document::disableEval):
(WebCore::Document::disableWebAssembly):
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::clear):
- page/csp/ContentSecurityPolicy.h:
(WebCore::ContentSecurityPolicy::webAssemblyErrorMessage const):
LayoutTests:
Layout test coverage. Copy some wasm helper scripts into the http directory.
- platform/win/TestExpectations:
We don't support wasm on win.
- http/tests/security/contentSecurityPolicy/allow-wasm-after-window-open-expected.txt: Added.
- http/tests/security/contentSecurityPolicy/allow-wasm-after-window-open.html: Added.
- http/tests/security/contentSecurityPolicy/resources/load_wasm.js: Added.
(createWasmModule):
- http/tests/security/contentSecurityPolicy/resources/run-web-assembly.html: Added.
- http/tests/security/contentSecurityPolicy/resources/wasm-builder.js: Added.
(const._fail):
(const.isNotA.assert.isNotA):
(const):
(switch.typeof):
(Builder):
(Builder.prototype.setChecked):
(Builder.prototype.setPreamble):
(Builder.prototype._functionIndexSpaceKeyHash):
(Builder.prototype._registerFunctionToIndexSpace):
(Builder.prototype._getFunctionFromIndexSpace):
(Builder.prototype._registerSectionBuilders.const.section.in.WASM.description.section.switch.section.case.string_appeared_here.this.section):
(Builder.prototype._registerSectionBuilders.const.section.in.WASM.description.section.switch.section.const.codeBuilder.End.switch.case.string_appeared_here.e):
(Builder.prototype._registerSectionBuilders.this.Unknown):
- 12:23 PM Changeset in webkit [292228] by
-
- 2 edits in trunk/Source/WebCore
(REGRESSION r291992) showRenderTree fails to print the name of the renderer when "(" is present
https://bugs.webkit.org/show_bug.cgi?id=238666
Reviewed by Antti Koivisto.
- rendering/RenderObject.cpp:
(WebCore::RenderObject::outputRenderObject const): with names like "RenderRubyBase (anonymous)" we print an address and not "RenderRubyBase"
- 12:03 PM Changeset in webkit [292227] by
-
- 1 copy in tags/Safari-614.1.8
Tag Safari-614.1.8.
- 11:41 AM Changeset in webkit [292226] by
-
- 7 edits2 adds in trunk
[Ruby] Statically positioned out-of-flow block boxes are mispositioned
https://bugs.webkit.org/show_bug.cgi?id=238653
Reviewed by Antti Koivisto.
Source/WebCore:
A statically positioned out-of-flow ruby base e.g.
<div>A<ruby><rb style="position: absolute">B</rb></ruby></div>
and
<div>A<span style="position: absolute">B</span></div>
should match layout where <rb> box's top is aligned with current line box's top position
(as if <rb> was inflow, which then puts "A" and "B" (somewhat) next to each other vertically).
However since we wrap such content (<rb>) inside an inline-block type anonymous box (RenderRubyBase), in practice
we match instead this:
<div>A
<span style="display: inline-block">
<span style="position: absolute">B</span>
</span>
</div>
where <rb>'s top is now aligned with the top of the wrapper inline-block box's top.
But this inline-block box sits on the line box's baseline with the height of 0 (it's inflow empty)
which makes the <rb> aligned with the line box's baseline instead of its top (and now "B" in below "A" under the baseline).
This patch fixes this by making sure that the (inflow empty) inline-block box's baseline is computed as if it had inflow content.
Test: fast/ruby/ruby-with-out-of-flow-base-content.html
- rendering/RenderRubyBase.cpp:
(WebCore::RenderRubyBase::isEmptyOrHasInFlowContent const):
- rendering/RenderRubyBase.h:
- rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::baselinePosition const):
- rendering/RenderRubyRun.h:
LayoutTests:
- TestExpectations:
- fast/ruby/ruby-with-out-of-flow-base-content-expected.html: Added.
- fast/ruby/ruby-with-out-of-flow-base-content.html: Added.
- 10:43 AM Changeset in webkit [292225] by
-
- 3 edits in trunk/Source/WebKit
[Linux] Implement IPC::Semaphore
https://bugs.webkit.org/show_bug.cgi?id=238596
Patch by Zan Dobersek <zdobersek@igalia.com> on 2022-04-01
Reviewed by Adrian Perez de Castro.
Provide a Linux implementation for IPC::Semaphore that's based on
eventfd mechanics.
The IPC::Semaphore class now has a UNIX-specific file descriptor member
variable. For Linux, this file descriptor is an eventfd with semaphore
semantics (eventfd being Linux-specific). Signalling and waiting on
such semaphore is done through the read() and write() functions.
Non-Linux platforms are expected to provide something equivalent, if
possible.
For encoding and decoding that's necessary to move these semaphores
across process boundaries, IPC::Attachment is used. For encoding the
eventfd is simply duplicated and pushed into the Attachment, and for
decoding the Attachment's file descriptor is taken and adopted by the
Semaphore object.
- Platform/IPC/IPCSemaphore.h:
(IPC::Semaphore::operator bool const):
- Platform/IPC/unix/IPCSemaphoreUnix.cpp:
(IPC::Semaphore::Semaphore):
(IPC::Semaphore::~Semaphore):
(IPC::Semaphore::operator=):
(IPC::Semaphore::signal):
(IPC::waitImpl):
(IPC::Semaphore::wait):
(IPC::Semaphore::waitFor):
(IPC::Semaphore::encode const):
(IPC::Semaphore::decode):
(IPC::Semaphore::destroy):
- 10:22 AM Changeset in webkit [292224] by
-
- 3 edits in trunk/LayoutTests
REGRESSION(r292072): [ Mac iOS ] http/tests/webAPIStatistics/canvas-read-and-write-data-collection.html is a constant text failure
https://bugs.webkit.org/show_bug.cgi?id=238580
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 9:42 AM Changeset in webkit [292223] by
-
- 3 edits in trunk/Source/WebCore
Add AXObjectCache::treeData() to retrieve serialized representation of the AX trees.
https://bugs.webkit.org/show_bug.cgi?id=238561
<rdar://problem/91055027>
Reviewed by Chris Fleizach.
Added AXObjectCache::treeData() to retrieve a serialized representation
of both the live and isolated AX trees. The immediate application of
this will be log to file the trees from the browser. Other application
down the road may be to expose a text document-like representation of
the web page for AT clients.
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::treeData):
- accessibility/AXObjectCache.h:
(WebCore::AXObjectCache::treeData):
- 8:35 AM Changeset in webkit [292222] by
-
- 13 edits in trunk
[css-logical] Add support for block/inline CSS values for resize property
https://bugs.webkit.org/show_bug.cgi?id=218088
Reviewed by Antti Koivisto.
LayoutTests/imported/w3c:
Marked relevant WPT as passing.
- web-platform-tests/css/css-logical/logical-values-resize-expected.txt:
Source/WebCore:
Tests:
- Parsing: imported/w3c/web-platform-tests/css/css-logical/logical-values-resize.html
- Functionality: fast/css/resize-single-axis.html
- css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator Resize const):
- css/CSSProperties.json:
- css/parser/CSSParserFastPaths.cpp:
(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::resize):
- rendering/style/RenderStyleConstants.cpp:
(WebCore::operator<<):
- rendering/style/RenderStyleConstants.h:
- rendering/style/StyleRareNonInheritedData.h:
LayoutTests:
Add tests for functionality.
- fast/css/resize-single-axis-expected.txt:
- fast/css/resize-single-axis.html:
- 7:45 AM Changeset in webkit [292221] by
-
- 4 edits in trunk/Source/WebCore
Add RenderGrid parameter to resolveGridPositionsFromStyle
https://bugs.webkit.org/show_bug.cgi?id=238660
Patch by Rob Buis <rbuis@igalia.com> on 2022-04-01
Reviewed by Javier Fernandez.
The containing block of an out of flow grid item does
not have to be of type RenderGrid. To obtain the correct
RenderGrid pass it at the time the RenderGrid calls
resolveGridPositionsFromStyle.
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::populateExplicitGridAndOrderIterator const):
(WebCore::RenderGrid::computeGridPositionsForOutOfFlowChild const):
- rendering/style/GridPositionsResolver.cpp:
(WebCore::GridPositionsResolver::resolveGridPositionsFromStyle):
- rendering/style/GridPositionsResolver.h:
- 7:39 AM Changeset in webkit [292220] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, update DerivedSources-output.xcfilelist to fix build.
- DerivedSources-output.xcfilelist:
- 7:11 AM Changeset in webkit [292219] by
-
- 2 edits in trunk/Source/WebCore
Abort formatBlock command on null start or end selections
https://bugs.webkit.org/show_bug.cgi?id=238657
Patch by Rob Buis <rbuis@igalia.com> on 2022-04-01
Reviewed by Wenson Hsieh.
Abort formatBlock command in case selectionForParagraphIteration
returns with a null start or end selection due to inline table specific
adjustments.
- editing/ApplyBlockElementCommand.cpp:
(WebCore::ApplyBlockElementCommand::doApply):
- 6:12 AM Changeset in webkit [292218] by
-
- 24 edits in trunk
ServiceWorkerRegistration.getNotifications should list all persistent notifications
https://bugs.webkit.org/show_bug.cgi?id=238544
Reviewed by Darin Adler.
Source/WebCore:
Remove context based notification list since the list is global.
Add creation time to notification data.
Instead of reading the list locally, use the SWClient connection to get it.
Covered by updated test.
- Modules/notifications/Notification.cpp:
- Modules/notifications/Notification.h:
- Modules/notifications/NotificationData.h:
- workers/service/SWClientConnection.h:
- workers/service/ServiceWorkerContainer.cpp:
- workers/service/ServiceWorkerContainer.h:
- workers/service/ServiceWorkerRegistration.cpp:
- workers/service/ServiceWorkerRegistration.h:
- workers/service/ServiceWorkerRegistration.idl:
- workers/service/WorkerSWClientConnection.cpp:
- workers/service/WorkerSWClientConnection.h:
Source/WebKit:
Go from WebProcess to UIProcess to read the notification map through IPC messaging.
Filter out the notifications according tag, origin and session.
Sort the notifications according creationTime with UIProcess identifier as tie breaker.
- UIProcess/Notifications/WebNotificationManagerProxy.cpp:
- UIProcess/Notifications/WebNotificationManagerProxy.h:
- UIProcess/WebProcessProxy.cpp:
- UIProcess/WebProcessProxy.h:
- UIProcess/WebProcessProxy.messages.in:
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
- WebProcess/Notifications/WebNotificationManager.cpp:
- WebProcess/Storage/WebSWClientConnection.cpp:
- WebProcess/Storage/WebSWClientConnection.h:
LayoutTests:
- http/tests/workers/service/getnotifications-expected.txt:
- http/tests/workers/service/getnotifications.html:
- 5:08 AM Changeset in webkit [292217] by
-
- 2 edits in trunk/JSTests
Skip flaky test on mips
https://bugs.webkit.org/show_bug.cgi?id=238656
Unreviewed gardening.
- stress/new-largeish-contiguous-array-with-size.js:
- 4:48 AM Changeset in webkit [292216] by
-
- 9 edits in trunk
Notification should be exposed to ServiceWorker contexts
https://bugs.webkit.org/show_bug.cgi?id=238548
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
- web-platform-tests/notifications/idlharness.https.any.serviceworker-expected.txt:
Source/WebCore:
Mark Notification as exposed in ServiceWorker (not yet Worker as it would not be functional).
Add a dedicated createForServiceWorker routine that takes a registration URL to create persistent permissions.
Throw an exception in case of calling Notification constructor directly in a ServiceWorkerGlobalScope, as per spec.
Covered by updated and existing tests.
- Modules/notifications/Notification.cpp:
- Modules/notifications/Notification.h:
- Modules/notifications/Notification.idl:
- workers/service/ServiceWorkerRegistration.cpp:
LayoutTests:
- http/tests/workers/service/resources/shownotification-worker.js:
- 4:00 AM Changeset in webkit [292215] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer][WebRTC] Improve RTP stats gathering
https://bugs.webkit.org/show_bug.cgi?id=238602
Patch by Philippe Normand <philn@igalia.com> on 2022-04-01
Reviewed by Xabier Rodriguez-Calvar.
Proxy a few more stats fields from GstWebRTC to the WebCore StatsCollector.
- Modules/mediastream/gstreamer/GStreamerStatsCollector.cpp:
(WebCore::fillInboundRTPStreamStats):
(WebCore::fillOutboundRTPStreamStats):
- 3:49 AM Changeset in webkit [292214] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, fix obsolete FIXME comments in CSSParserFastPaths.cpp
- overflow-anchor is still not implemented, and the visible value has been removed from the spec.
- text-combine-upright was implemented in r287487
- css/parser/CSSParserFastPaths.cpp:
(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
- 2:17 AM Changeset in webkit [292213] by
-
- 3 edits in trunk
[GTK][WPE] Enable CSS Typed OM by default
https://bugs.webkit.org/show_bug.cgi?id=238659
Reviewed by Adrian Perez de Castro.
Always build with Typed OM enabled, it's handled by an off by default setting.
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/OptionsWPE.cmake:
- 2:05 AM Changeset in webkit [292212] by
-
- 1 edit1 add in trunk/Source/WebCore/platform/gtk/po
Croatian translation for WebKitGTK
https://bugs.webkit.org/show_bug.cgi?id=238611
Patch by gogo <trebelnik2@gmail.com> on 2022-04-01
Rubber-stamped by Carlos Garcia Campos.
- hr.po: Added.
- 2:00 AM Changeset in webkit [292211] by
-
- 11 edits in trunk/Source
REGRESSION(r290360): [GLX] Crash on process exit
https://bugs.webkit.org/show_bug.cgi?id=238494
Reviewed by Michael Catanzaro.
Source/WebCore:
When creating a PlatformDisplay from a shared GdkDisplay, we need to keep a reference to the display and connect
to closed signal to release our display dependent resources. Closed signal is emitted right before the native
display is actually closed by GDK. We also need to make sure that the sharing GL context is released before the
PlatformDisplay is destroyed. This is always happening for EGL because the sharing GL context is cleared before
terminating the EGL display in the atexit handler, but that's not the case of GLX. Since X11 only allows one
PlatformDisplay, which is always the shared one, we can just install an atexit handler in the constructor to
clear the sharing context before the destructor is called.
- platform/graphics/PlatformDisplay.cpp:
(WebCore::PlatformDisplay::createPlatformDisplay):
(WebCore::PlatformDisplay::PlatformDisplay):
(WebCore::PlatformDisplay::sharedDisplayDidClose):
(WebCore::PlatformDisplay::~PlatformDisplay):
(WebCore::PlatformDisplay::clearSharingGLContext):
(WebCore::PlatformDisplay::terminateEGLDisplay):
- platform/graphics/PlatformDisplay.h:
- platform/graphics/libwpe/PlatformDisplayLibWPE.cpp:
(WebCore::PlatformDisplayLibWPE::PlatformDisplayLibWPE):
- platform/graphics/wayland/PlatformDisplayWayland.cpp:
(WebCore::PlatformDisplayWayland::create):
(WebCore::PlatformDisplayWayland::PlatformDisplayWayland):
(WebCore::PlatformDisplayWayland::~PlatformDisplayWayland):
(WebCore::PlatformDisplayWayland::sharedDisplayDidClose):
- platform/graphics/wayland/PlatformDisplayWayland.h:
- platform/graphics/win/PlatformDisplayWin.h:
- platform/graphics/x11/PlatformDisplayX11.cpp:
(WebCore::PlatformDisplayX11::create):
(WebCore::clearSharingGLContextAtExit):
(WebCore::PlatformDisplayX11::PlatformDisplayX11):
(WebCore::PlatformDisplayX11::~PlatformDisplayX11):
(WebCore::PlatformDisplayX11::sharedDisplayDidClose):
- platform/graphics/x11/PlatformDisplayX11.h:
Source/WebKit:
- WebProcess/gtk/WaylandCompositorDisplay.cpp:
(WebKit::WaylandCompositorDisplay::WaylandCompositorDisplay):
- 1:29 AM Changeset in webkit [292210] by
-
- 45 edits1 copy2 adds1 delete in trunk
Add support for element.computedStyleMap()
https://bugs.webkit.org/show_bug.cgi?id=238375
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
Update test expectations.
- web-platform-tests/css/css-color/system-color-compute-expected.txt:
- web-platform-tests/css/css-properties-values-api/at-property-typedom-expected.txt:
- web-platform-tests/css/css-properties-values-api/property-cascade-expected.txt:
- web-platform-tests/css/css-properties-values-api/typedom-expected.txt:
- web-platform-tests/css/css-transforms/animation/transform-interpolation-computed-value-expected.txt:
- web-platform-tests/css/css-typed-om/idlharness-expected.txt:
- web-platform-tests/css/css-typed-om/stylevalue-serialization/cssStyleValue-cssom-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/computed.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-auto-min-size-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-invalid-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-position-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-shorthand-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/getAll-shorthand-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/getAll.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/has.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/iterable.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/getAll-shorthand-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/getAll.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/has.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/iterable.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transform-interpolated-expected.txt:
Source/WebCore:
Covered by existing w3c tests.
- CMakeLists.txt:
- Sources.txt:
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue): Add PropertyValueType parameter to get either the computed or
resolved value.
- css/CSSComputedStyleDeclaration.h:
- css/typedom/CSSStyleValueFactory.cpp:
(WebCore::CSSStyleValueFactory::reifyValue): Handle more cases of custom property.
- css/typedom/ComputedStylePropertyMapReadOnly.cpp: Added.
(WebCore::ComputedStylePropertyMapReadOnly::create):
(WebCore::ComputedStylePropertyMapReadOnly::ComputedStylePropertyMapReadOnly):
(WebCore::ComputedStylePropertyMapReadOnly::get const):
(WebCore::ComputedStylePropertyMapReadOnly::getAll const):
(WebCore::ComputedStylePropertyMapReadOnly::has const):
(WebCore::ComputedStylePropertyMapReadOnly::size const):
(WebCore::ComputedStylePropertyMapReadOnly::entries const):
- css/typedom/ComputedStylePropertyMapReadOnly.h: Added.
- css/typedom/StylePropertyMapReadOnly.cpp:
(WebCore::StylePropertyMapReadOnly::reifyValueToVector): Returns a Vector so in case of CSSValueList, every
value is added to the vector.
(WebCore::StylePropertyMapReadOnly::Iterator::Iterator): Add iterator implementation, since this is now iterable.
(WebCore::StylePropertyMapReadOnly::Iterator::next): Ditto.
- css/typedom/StylePropertyMapReadOnly.h:
(WebCore::StylePropertyMapReadOnly::createIterator):
- css/typedom/StylePropertyMapReadOnly.idl:
- dom/Element+ComputedStyleMap.idl: Added.
- dom/Element.cpp:
(WebCore::Element::computedStyleMap): Get or create the computed style map.
- dom/Element.h:
- dom/ElementRareData.cpp:
- dom/ElementRareData.h:
(WebCore::ElementRareData::computedStyleMap):
(WebCore::ElementRareData::setComputedStyleMap):
(WebCore::ElementRareData::useTypes const):
- dom/NodeRareData.h:
- dom/StyledElement.cpp:
- html/CustomPaintImage.cpp:
LayoutTests:
Update test expectations.
- platform/glib/imported/w3c/web-platform-tests/css/css-color/system-color-compute-expected.txt:
- platform/glib/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-computed-value-expected.txt: Removed.
- platform/ios/imported/w3c/web-platform-tests/css/css-color/system-color-compute-expected.txt:
- 1:26 AM Changeset in webkit [292209] by
-
- 4 edits in trunk/Source/WebKit
Translated applications cannot use remote methods with BOOL arguments
https://bugs.webkit.org/show_bug.cgi?id=238651
<rdar://90509457>
Reviewed by Geoffrey Garen.
Propagate the fix from r261155 to WKRemoteObjectCoder's method-signature-equality test as well,
so that BOOL arguments correctly compare as equal between a Rosetta application and its
native ARM Web Content process.
- Shared/API/Cocoa/WKRemoteObjectCoder.h:
- Shared/API/Cocoa/WKRemoteObjectCoder.mm:
(WebKit::methodSignaturesAreCompatible):
(decodeInvocation):
Relax argument signature validation slightly, considering signed char and BOOL,
which are equivalent and sometimes substituted for each other, to be equal.
- Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
(-[_WKRemoteObjectRegistry _invokeMethod:]):
(blockSignaturesAreCompatible): Deleted.
- 1:17 AM Changeset in webkit [292208] by
-
- 29 edits2 adds in trunk
Add a debug overlay for interaction regions
https://bugs.webkit.org/show_bug.cgi?id=238187
Reviewed by Wenson Hsieh.
Source/WebCore:
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- dom/Node.cpp:
(WebCore::Node::willRespondToTouchEvents):
- dom/Node.h:
Expose
willRespondToTouchEvents, similar towillRespondToMouseMoveEvents.
- page/DebugOverlayRegions.h:
- page/DebugPageOverlays.cpp:
(WebCore::InteractionRegionOverlay::updateRegion):
(WebCore::pathsForRegion):
(WebCore::InteractionRegionOverlay::activeRegion):
(WebCore::drawCheckbox):
(WebCore::InteractionRegionOverlay::rectForSettingAtIndex):
(WebCore::InteractionRegionOverlay::valueForSetting):
(WebCore::InteractionRegionOverlay::drawSettings):
(WebCore::InteractionRegionOverlay::drawRect):
(WebCore::InteractionRegionOverlay::mouseEvent):
(WebCore::RegionOverlay::create):
(WebCore::DebugPageOverlays::updateOverlayRegionVisibility):
- page/DebugPageOverlays.h:
(WebCore::DebugPageOverlays::didLayout):
(WebCore::DebugPageOverlays::didChangeEventHandlers):
(WebCore::DebugPageOverlays::doAfterUpdateRendering):
Add an overlay for indicating interaction regions.
- page/FrameSnapshotting.cpp:
(WebCore::styleContainsComplexBackground):
(WebCore::estimatedBackgroundColorForRange):
- page/FrameSnapshotting.h:
- page/TextIndicator.cpp:
(WebCore::styleContainsComplexBackground): Deleted.
(WebCore::estimatedBackgroundColorForRange): Deleted.
MoveestimatedBackgroundColorForRangefrom TextIndicator to
FrameSnapshotting for ease of reuse.
- page/InteractionRegion.cpp: Added.
(WebCore::absoluteBoundingRectForRange):
(WebCore::regionForElement):
(WebCore::cursorTypeForElement):
(WebCore::interactionRegions):
- page/InteractionRegion.h: Added.
(WebCore::InteractionRegion::encode const):
(WebCore::InteractionRegion::decode):
Add InteractionRegion, which keeps track of the location of and metadata
about interaction regions.
- platform/graphics/LayoutSize.h:
(WebCore::LayoutSize::minDimension const):
(WebCore::LayoutSize::maxDimension const):
- platform/graphics/RoundedRect.h:
(WebCore::RoundedRect::Radii::minimumRadius const):
Add minimumRadius() to Radii.
Source/WebKit:
- Shared/mac/MediaFormatReader/MediaFormatReader.cpp:
Unified source fixes.
- UIProcess/API/Cocoa/WKPreferencesPrivate.h:
Add plumbing for a new debug overlay.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::interactionRegions):
(WebKit::WebPageProxy::interactableRegionsInRootViewCoordinates): Deleted.
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView interactionRegionsForHoverPlatter:inRect:completionHandler:]):
(-[WKContentView interactableRegionsForHoverPlatter:inRect:completionHandler:]): Deleted.
- UIProcess/ios/WKHoverPlatter.h:
- UIProcess/ios/WKHoverPlatter.mm:
(-[WKHoverPlatter updateDebugIndicator]):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::interactionRegions):
Move interactionRegions() from WebPage to WebCore::InteractionRegion.
(WebKit::WebPage::interactableRegionsInRootViewCoordinates): Deleted.
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
Tools:
- MiniBrowser/mac/SettingsController.h:
- MiniBrowser/mac/SettingsController.m:
(-[SettingsController _populateMenu]):
(-[SettingsController interactionRegionOverlayVisible]):
(-[SettingsController preferenceKeyForRegionOverlayTag:]):
- MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController didChangeSettings]):
Add a switch for the new debug overlay in MiniBrowser.
- 1:03 AM Changeset in webkit [292207] by
-
- 8 edits2 adds in trunk
Persistent notifications should work in document scopes as well as service worker global scopes
https://bugs.webkit.org/show_bug.cgi?id=238601
Reviewed by Brady Eidson.
Source/WebCore:
Add a m_serviceWorkerRegistrationURL in Notification to identify whether a notfication is persistent or not.
Set that field when creating a notification from NotificationData or from ServiceWorkerRegistration::showNotification.
Test: http/tests/workers/service/shownotification-allowed-document.html
- Modules/notifications/Notification.cpp:
(WebCore::Notification::create):
(WebCore::Notification::data const):
- Modules/notifications/Notification.h:
- workers/service/ServiceWorkerRegistration.cpp:
(WebCore::ServiceWorkerRegistration::showNotification):
Source/WebKit:
In case of notification message coming from a WebPage, check whether the notification is persistent or not.
If persistent, go to ServiceWorkerNotificationHandler, otherwise use the current code path through WebPageProxy.
- UIProcess/Notifications/ServiceWorkerNotificationHandler.h:
- UIProcess/Notifications/WebNotificationManagerMessageHandler.cpp:
(WebKit::WebNotificationManagerMessageHandler::showNotification):
(WebKit::WebNotificationManagerMessageHandler::cancelNotification):
(WebKit::WebNotificationManagerMessageHandler::clearNotifications):
(WebKit::WebNotificationManagerMessageHandler::didDestroyNotification):
LayoutTests:
- http/tests/workers/service/shownotification-allowed-document-expected.txt: Added.
- http/tests/workers/service/shownotification-allowed-document.html: Added.
- 12:11 AM Changeset in webkit [292206] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, fix non-unified build after r292191
- runtime/ScriptExecutableInlines.h: