[webkit-changes] [WebKit/WebKit] 3b2f1f: Branch WebKitGTK for 2.30
Adrian Perez
noreply at github.com
Thu Dec 1 11:54:54 PST 2022
Branch: refs/heads/webkitgtk/2.30
Home: https://github.com/WebKit/WebKit
Commit: 3b2f1f256e3981c37a7c30713b61bbd053fed53d
https://github.com/WebKit/WebKit/commit/3b2f1f256e3981c37a7c30713b61bbd053fed53d
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2020-08-12 (Wed, 12 Aug 2020)
Changed paths:
Log Message:
-----------
Branch WebKitGTK for 2.30
Commit: f02f6df4e31611b32feeb947a1f1b277fff1cd6e
https://github.com/WebKit/WebKit/commit/f02f6df4e31611b32feeb947a1f1b277fff1cd6e
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/accessibility/AccessibilityMenuListOption.cpp
M Source/WebCore/page/Quirks.h
M Source/WebCore/page/UndoItem.cpp
Log Message:
-----------
Merge r265559 - Unreviewed non-unified build fix.
No new tests needed.
* accessibility/AccessibilityMenuListOption.cpp: Add missing inclusion of
HTMLSelectElement.h.
* page/Quirks.h: Add mising forward declaration of HTMLVideoElement.
* page/UndoItem.cpp: Add missing inclusion of Document.h.
Commit: 3071f7ccbd6f3e67d730180ca6338cedea80ee16
https://github.com/WebKit/WebKit/commit/3071f7ccbd6f3e67d730180ca6338cedea80ee16
Author: Wenson Hsieh <wenson_hsieh at apple.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/WebPageProxy.cpp
Log Message:
-----------
Merge r265560 - WebPageProxy::registerEditCommand should be robust against invalid undo step identifiers
https://bugs.webkit.org/show_bug.cgi?id=215412
<rdar://problem/66296820>
Reviewed by Tim Horton.
Add a `MESSAGE_CHECK` to avoid ever creating a `WebEditCommandProxy` with an invalid command identifier.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::registerEditCommand):
Commit: 4659503efd4b8fc30c3a8a46b0b08dd32fb3c981
https://github.com/WebKit/WebKit/commit/4659503efd4b8fc30c3a8a46b0b08dd32fb3c981
Author: Wenson Hsieh <wenson_hsieh at apple.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/editing/TextManipulationController.cpp
M Tools/ChangeLog
M Tools/TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm
Log Message:
-----------
Merge r265561 - Broken formatting in price table on yandex.ru after translating to English
https://bugs.webkit.org/show_bug.cgi?id=215416
<rdar://problem/66354018>
Reviewed by Tim Horton.
Source/WebCore:
Extend the behavior added in r265188 so that it applies to all elements that have `display: table-cell;`, rather
than only table data cell elements.
* editing/TextManipulationController.cpp:
(WebCore::isEnclosingItemBoundaryElement):
Tools:
* TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
(TestWebKitAPI::TEST):
Commit: 5a30bb48cd8c222882d5e4880f342201bb0851ca
https://github.com/WebKit/WebKit/commit/5a30bb48cd8c222882d5e4880f342201bb0851ca
Author: Stephan Szabo <stephan.szabo at sony.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/accessibility/AXObjectCache.h
Log Message:
-----------
Merge r265564 - [PlayStation] Build fix for !ENABLE(ACCESSIBILITY) after r265514
https://bugs.webkit.org/show_bug.cgi?id=215426
AXObjectCache::getOrCreate(AccessibilityRole) changed names
in the above, but the short definition for
!ENABLE(ACCESSIBILITY) didn't update.
Unreviewed build fix.
* accessibility/AXObjectCache.h: Update name to match new name
Commit: af5041b94788d89936704365a50424c2ddfe7647
https://github.com/WebKit/WebKit/commit/af5041b94788d89936704365a50424c2ddfe7647
Author: Devin Rousso <drousso at apple.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M Source/WebInspectorUI/ChangeLog
M Source/WebInspectorUI/UserInterface/Views/BoxShadowEditor.js
Log Message:
-----------
Merge r265597 - Web Inspector: REGRESSION(r259170): text inputs in box-shadow editor push sliders offscreen
https://bugs.webkit.org/show_bug.cgi?id=215436
Reviewed by Darin Adler.
* UserInterface/Views/BoxShadowEditor.js:
(WI.BoxShadowEditor.createInputRow):
Make sure the inputs are `type="text"` so that CSS is able to distinguish them from sliders.
Commit: 5463e37a9874d31e4850050b87c557dc86f80dc2
https://github.com/WebKit/WebKit/commit/5463e37a9874d31e4850050b87c557dc86f80dc2
Author: Lauro Moura <lmoura at igalia.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M LayoutTests/ChangeLog
M LayoutTests/imported/w3c/ChangeLog
M LayoutTests/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-biquadfilternode-interface/biquad-highpass-expected.txt
R LayoutTests/platform/glib/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-biquadfilternode-interface/biquad-highpass-expected.txt
M LayoutTests/platform/mac-wk2/TestExpectations
R LayoutTests/webaudio/biquad-allpass-expected.txt
R LayoutTests/webaudio/biquad-allpass.html
R LayoutTests/webaudio/biquad-bandpass-expected.txt
R LayoutTests/webaudio/biquad-bandpass.html
R LayoutTests/webaudio/biquad-getFrequencyResponse-expected.txt
R LayoutTests/webaudio/biquad-getFrequencyResponse.html
R LayoutTests/webaudio/biquad-highpass-expected.txt
R LayoutTests/webaudio/biquad-highpass.html
R LayoutTests/webaudio/biquad-highshelf-expected.txt
R LayoutTests/webaudio/biquad-highshelf.html
R LayoutTests/webaudio/biquad-lowpass-expected.txt
R LayoutTests/webaudio/biquad-lowpass.html
R LayoutTests/webaudio/biquad-lowshelf-expected.txt
R LayoutTests/webaudio/biquad-lowshelf.html
R LayoutTests/webaudio/biquad-notch-expected.txt
R LayoutTests/webaudio/biquad-notch.html
R LayoutTests/webaudio/biquad-peaking-expected.txt
R LayoutTests/webaudio/biquad-peaking.html
R LayoutTests/webaudio/biquadfilternode-basic-expected.txt
R LayoutTests/webaudio/biquadfilternode-basic.html
R LayoutTests/webaudio/resources/biquad-testing.js
M Source/WebCore/ChangeLog
M Source/WebCore/platform/audio/Biquad.cpp
Log Message:
-----------
Merge r265599 - Highpass Biquads use old formulas
https://bugs.webkit.org/show_bug.cgi?id=181191
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
*
web-platform-tests/webaudio/the-audio-api/the-biquadfilternode-interface/biquad-highpass-expected.txt:
Rebaselined
Source/WebCore:
Like r265517, but for the highpass filter.
Spec: https://www.w3.org/TR/webaudio/#dom-biquadfiltertype-highpass
Covered by existing tests
* platform/audio/Biquad.cpp:
(WebCore::Biquad::setHighpassParams):
LayoutTests:
Gardening r265517 (lowpass) showed our test failing for GStreamer due
to a different threshold than used by the imported WPT biquad tests.
As they test the same functionality, remove the old webaudio/biquad
tests and keep using the imported WPT ones with the detailed
thresholds.
* platform/glib/imported/w3c/web-platform-tests/webaudio/the-audio-api/the-biquadfilternode-interface/biquad-highpass-expected.txt: Removed.
* platform/mac-wk2/TestExpectations: Removed expectation regarding
deleted file.
* webaudio/biquad-allpass-expected.txt: Removed.
* webaudio/biquad-allpass.html: Removed.
* webaudio/biquad-bandpass-expected.txt: Removed.
* webaudio/biquad-bandpass.html: Removed.
* webaudio/biquad-getFrequencyResponse-expected.txt: Removed.
* webaudio/biquad-getFrequencyResponse.html: Removed.
* webaudio/biquad-highpass-expected.txt: Removed.
* webaudio/biquad-highpass.html: Removed.
* webaudio/biquad-highshelf-expected.txt: Removed.
* webaudio/biquad-highshelf.html: Removed.
* webaudio/biquad-lowpass-expected.txt: Removed.
* webaudio/biquad-lowpass.html: Removed.
* webaudio/biquad-lowshelf-expected.txt: Removed.
* webaudio/biquad-lowshelf.html: Removed.
* webaudio/biquad-notch-expected.txt: Removed.
* webaudio/biquad-notch.html: Removed.
* webaudio/biquad-peaking-expected.txt: Removed.
* webaudio/biquad-peaking.html: Removed.
* webaudio/biquadfilternode-basic-expected.txt: Removed.
* webaudio/biquadfilternode-basic.html: Removed.
* webaudio/resources/biquad-testing.js: Removed.
Commit: bfd7ec1c8bcc1e4eadf83eedfe9e17eb6fa8bae5
https://github.com/WebKit/WebKit/commit/bfd7ec1c8bcc1e4eadf83eedfe9e17eb6fa8bae5
Author: Myles C. Maxfield <mmaxfield at apple.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M LayoutTests/ChangeLog
A LayoutTests/fast/loader/font-load-timer-expected.html
A LayoutTests/fast/loader/font-load-timer.html
A LayoutTests/fast/loader/resources/font-load-timer-navigation-destination.html
M Source/WebCore/ChangeLog
M Source/WebCore/css/CSSFontSelector.cpp
M Source/WebCore/css/CSSFontSelector.h
M Source/WebCore/dom/Document.cpp
M Source/WebCore/loader/DocumentLoader.cpp
Log Message:
-----------
Merge r265603 - Font loads quickly followed by navigations may fail indefinitely
https://bugs.webkit.org/show_bug.cgi?id=215435
<rdar://problem/65560550>
Reviewed by Darin Adler.
Source/WebCore:
Font loads are coalesced using a zero-delay timer. However, that zero-delay timer
can fire while the page is in the middle of a navigation, which will cause the font
loads to fail. Then, the second page can request those same fonts, which are marked
as failed, and as such will never actually load/use the desired web font.
This patch just stops the zero-delay timer during navigations, and resumes it
when resuming the document. This means:
1. The second page in the above story will not see that the font has failed, or
even started, and will then re-request the font and load it successfully
2. If the user goes "back" to the previous page, the zero-delay timer is restarted,
the CachedFont realizes it's already succeeded, and the previous page is rendered
as expected.
Test: fast/loader/font-load-timer.html
* css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::suspendFontLoadingTimer):
(WebCore::CSSFontSelector::restartFontLoadingTimer):
* css/CSSFontSelector.h:
* dom/Document.cpp:
(WebCore::Document::resume):
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::stopLoading):
LayoutTests:
1) The page has some content that has “font-family: WebFont” but there are no @font-face blocks on the page
2) In script, after the page has loaded, add an @font-face rule to the page with “font-family: WebFont” and some valid font URL
3) Synchronously, within the same turn of the run loop, trigger a synchronous layout of the element (using offsetWidth or something). This will add the font to the 0-delay time work list.
4) Synchronously, within the same turn of the run loop, navigate to a second page that doesn’t use the web font.
5) The second page waits some small-but-positive amount of time. This will cause the 0-delay timer to fire, but because the page is in the middle of navigating, the font load should fail.
6) The second page adds the same @font-face rule to itself using script. This should pull the same (failed) CachedResource object out of the memory cache.
7) Use the CSS Font Loading API to wait for the font load to complete
8) Make sure that the font is used on the second page (as a reference test). Today, the second page’s font load will fail because it pulled the failed font out of the memory cache. The test makes sure the second page’s font load succeeds.
* fast/loader/font-load-timer-expected.html: Added.
* fast/loader/font-load-timer.html: Added.
* fast/loader/resources/font-load-timer-navigation-destination.html: Added.
Commit: 14115c67f6167c668b76ba8616d6c1dc21d7b185
https://github.com/WebKit/WebKit/commit/14115c67f6167c668b76ba8616d6c1dc21d7b185
Author: Alan Bujtas <zalan at apple.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/rendering/RenderLayer.cpp
A Source/WebCore/rendering/RenderTreeMutationDisallowedScope.cpp
A Source/WebCore/rendering/RenderTreeMutationDisallowedScope.h
M Source/WebCore/rendering/updating/RenderTreeBuilder.cpp
Log Message:
-----------
Merge r265630 - Add RenderTreeMutationDisallowedScope to track intrusive render tree mutations
https://bugs.webkit.org/show_bug.cgi?id=215463
<rdar://problem/67012831>
Reviewed by Simon Fraser.
RenderLayer::enclosingScrollableLayer should not mutate the render tree accidentally.
This is related to <rdar://problem/64739768>.
* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* rendering/RenderTreeMutationDisallowedScope.cpp: Added.
* rendering/RenderTreeMutationDisallowedScope.h: Added.
(WebCore::RenderTreeMutationDisallowedScope::RenderTreeMutationDisallowedScope):
(WebCore::RenderTreeMutationDisallowedScope::~RenderTreeMutationDisallowedScope):
(WebCore::RenderTreeMutationDisallowedScope::isMutationAllowed):
* rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::destroy):
Commit: 85b6d76948a3cb5e4c416f83fa533633dcfa00f8
https://github.com/WebKit/WebKit/commit/85b6d76948a3cb5e4c416f83fa533633dcfa00f8
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M LayoutTests/ChangeLog
A LayoutTests/editing/pasteboard/copy-across-shadow-boundaries-crash-expected.txt
A LayoutTests/editing/pasteboard/copy-across-shadow-boundaries-crash.html
M Source/WebCore/ChangeLog
M Source/WebCore/editing/markup.cpp
Log Message:
-----------
Merge r265647 - Crash in WebCore::StyledMarkupAccumulator::traverseNodesForSerialization
https://bugs.webkit.org/show_bug.cgi?id=199224
Reviewed by Michael Catanzaro.
Source/WebCore:
The crash happens in StyledMarkupAccumulator::traverseNodesForSerialization() when we can't enter the node and
nextSkippingChildren() returns nullptr.
Test: editing/pasteboard/copy-across-shadow-boundaries-crash.html
* editing/markup.cpp:
(WebCore::StyledMarkupAccumulator::traverseNodesForSerialization): Set next to pastEnd if nextSkippingChildren()
returns nullptr.
LayoutTests:
* editing/pasteboard/copy-across-shadow-boundaries-crash-expected.txt: Added.
* editing/pasteboard/copy-across-shadow-boundaries-crash.html: Added.
Commit: 1ac9ba1aa0f19e2e51a1203fad3c3be2d2a3760f
https://github.com/WebKit/WebKit/commit/1ac9ba1aa0f19e2e51a1203fad3c3be2d2a3760f
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/cairo/CairoOperations.cpp
Log Message:
-----------
Merge r265648 - REGRESSION(r254506): [Freetype] Spektra variable font does not work properly
https://bugs.webkit.org/show_bug.cgi?id=215214
<rdar://problem/66984524>
Reviewed by Adrian Perez de Castro.
This regressed in r254506, when a font smoothing mode is passed to drawGlyphsToContext() a new cairo font
options is set, using the default font options and changing the antialiasing. This means the font options from
the font (the ones containing the variation settings) set in the context by cairo_set_scaled_font() are
lost. We should copy the scaled font options instead, then set the antialiasing and apply them.
* platform/graphics/cairo/CairoOperations.cpp:
(WebCore::Cairo::drawGlyphsToContext): Use cairo_scaled_font_get_font_options() instead of getDefaultCairoFontOptions().
Commit: fbc33455b317a8babf9810ff752b365a0f881385
https://github.com/WebKit/WebKit/commit/fbc33455b317a8babf9810ff752b365a0f881385
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/API/gtk/DropTargetGtk3.cpp
Log Message:
-----------
Merge r265649 - [GTK] Do not accept drag operations when the matched target list is empty
https://bugs.webkit.org/show_bug.cgi?id=215372
Reviewed by Adrian Perez de Castro.
Do not initialize m_selectionData if we don't have valid targets.
* UIProcess/API/gtk/DropTargetGtk3.cpp:
(WebKit::DropTarget::accept):
(WebKit::DropTarget::leaveTimerFired):
Commit: 260c5aa7ebca8b31de1aed828c47b012cf439e16
https://github.com/WebKit/WebKit/commit/260c5aa7ebca8b31de1aed828c47b012cf439e16
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/API/gtk/DropTargetGtk4.cpp
Log Message:
-----------
Merge r265650 - [GTK4] Notify the web process on drag leave
https://bugs.webkit.org/show_bug.cgi?id=215373
Reviewed by Adrian Perez de Castro.
We missed this when implemented drag and drop support for GTK4.
* UIProcess/API/gtk/DropTargetGtk4.cpp:
(WebKit::DropTarget::leave): Call dragExited() and resetCurrentDragInformation() on WebPageProxy.
Commit: 27be87733345ebeb61de68cfc67b46ade5268d55
https://github.com/WebKit/WebKit/commit/27be87733345ebeb61de68cfc67b46ade5268d55
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/gtk/NEWS
M Source/cmake/OptionsGTK.cmake
Log Message:
-----------
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.29.90 release
.:
* Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
* gtk/NEWS: Add release notes for 2.29.90.
Commit: c794137d359387cb68931ef11087c768f0f8fb0a
https://github.com/WebKit/WebKit/commit/c794137d359387cb68931ef11087c768f0f8fb0a
Author: Alan Bujtas <zalan at apple.com>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/rendering/RenderLayer.cpp
R Source/WebCore/rendering/RenderTreeMutationDisallowedScope.cpp
R Source/WebCore/rendering/RenderTreeMutationDisallowedScope.h
M Source/WebCore/rendering/updating/RenderTreeBuilder.cpp
Log Message:
-----------
Revert r265658 - Merge r265630 - REGRESSION(r254506): [Freetype] Spektra variable font does not work properly
https://bugs.webkit.org/show_bug.cgi?id=215214
<rdar://problem/66984524>
Reviewed by Adrian Perez de Castro.
This regressed in r254506, when a font smoothing mode is passed to drawGlyphsToContext() a new cairo font
options is set, using the default font options and changing the antialiasing. This means the font options from
the font (the ones containing the variation settings) set in the context by cairo_set_scaled_font() are
lost. We should copy the scaled font options instead, then set the antialiasing and apply them.
* platform/graphics/cairo/CairoOperations.cpp:
(WebCore::Cairo::drawGlyphsToContext): Use cairo_scaled_font_get_font_options() instead of getDefaultCairoFontOptions().
Commit: 1e0375704bc7304404354e9705407ec93d2364d6
https://github.com/WebKit/WebKit/commit/1e0375704bc7304404354e9705407ec93d2364d6
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2020-08-14 (Fri, 14 Aug 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/gtk/NEWS
M Source/cmake/OptionsGTK.cmake
Log Message:
-----------
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.29.91 release
.:
* Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
* gtk/NEWS: Add release notes for 2.29.91.
Commit: 2c04b18c2fa11638d629b3c646f752602fd96a37
https://github.com/WebKit/WebKit/commit/2c04b18c2fa11638d629b3c646f752602fd96a37
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-08-15 (Sat, 15 Aug 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/wpe/NEWS
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.29.90 release
.:
* Source/cmake/OptionsWPE.cmake: Bump version numbers.
Source/WebKit:
* wpe/NEWS: Add release notes for 2.29.90.
Commit: ab49a4a4d556966308b97d699abb4cacf82e4449
https://github.com/WebKit/WebKit/commit/ab49a4a4d556966308b97d699abb4cacf82e4449
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-08-15 (Sat, 15 Aug 2020)
Changed paths:
M Source/JavaScriptCore/ChangeLog
M Source/JavaScriptCore/heap/RegisterState.h
Log Message:
-----------
Merged r265692 - [ARMv7][JSC] Conservative GC is not considering `r7` as a root
https://bugs.webkit.org/show_bug.cgi?id=215512
Reviewed by Yusuke Suzuki.
Since `r7` is a callee-saved register on ARMv7
we need to consider it as a conservative root.
See the statement "A subroutine must preserve
the contents of the registers r4-r8, r10, r11
and SP (and r9 in PCS variants that designate
r9 as v6) form page 15 of
https://developer.arm.com/documentation/ihi0042/f/.
* heap/RegisterState.h:
Commit: d2bad8f89f3d6f2ccc1e345e1246637d48d7ff13
https://github.com/WebKit/WebKit/commit/d2bad8f89f3d6f2ccc1e345e1246637d48d7ff13
Author: Piotr Drąg <piotrdrag at gmail.com>
Date: 2020-08-17 (Mon, 17 Aug 2020)
Changed paths:
M Source/WebCore/platform/gtk/po/ChangeLog
M Source/WebCore/platform/gtk/po/pl.po
Log Message:
-----------
Merge r265754 - [GTK][l10n] Updated Polish translation of WebKitGTK for 2.30
https://bugs.webkit.org/show_bug.cgi?id=215547
Patch by Piotr Drąg <piotrdrag at gmail.com> on 2020-08-17
Rubber-stamped by Carlos Garcia Campos.
* pl.po:
Commit: f5a258ace9c6eb583ef362782820f48c0a05ccba
https://github.com/WebKit/WebKit/commit/f5a258ace9c6eb583ef362782820f48c0a05ccba
Author: Alan Bujtas <zalan at apple.com>
Date: 2020-09-01 (Tue, 01 Sep 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/rendering/RenderLayer.cpp
A Source/WebCore/rendering/RenderTreeMutationDisallowedScope.cpp
A Source/WebCore/rendering/RenderTreeMutationDisallowedScope.h
M Source/WebCore/rendering/updating/RenderTreeBuilder.cpp
Log Message:
-----------
Merge r265630 - Add RenderTreeMutationDisallowedScope to track intrusive render tree mutations
https://bugs.webkit.org/show_bug.cgi?id=215463
<rdar://problem/67012831>
Reviewed by Simon Fraser.
RenderLayer::enclosingScrollableLayer should not mutate the render tree accidentally.
This is related to <rdar://problem/64739768>.
* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* rendering/RenderTreeMutationDisallowedScope.cpp: Added.
* rendering/RenderTreeMutationDisallowedScope.h: Added.
(WebCore::RenderTreeMutationDisallowedScope::RenderTreeMutationDisallowedScope):
(WebCore::RenderTreeMutationDisallowedScope::~RenderTreeMutationDisallowedScope):
(WebCore::RenderTreeMutationDisallowedScope::isMutationAllowed):
* rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::destroy):
Commit: baed3bfd0a9817504bceff40abd0748a43295e88
https://github.com/WebKit/WebKit/commit/baed3bfd0a9817504bceff40abd0748a43295e88
Author: Alan Bujtas <zalan at apple.com>
Date: 2020-09-01 (Tue, 01 Sep 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/rendering/RenderTextControlSingleLine.cpp
Log Message:
-----------
Merge r265722 - RenderTextControlSingleLine::scroll* functions should not call Element::scroll* on the inner text content
https://bugs.webkit.org/show_bug.cgi?id=215516
<rdar://problem/64739768>
Reviewed by Simon Fraser.
Normally the RenderBox::content*, border*, padding* and scroll* functions grab the geometry information from the renderer itself.
The clients of these functions expect the geometry data to be consistent with the rest of the rendering context
(e.g coordinates are in the coordinate system of the containing block, paint time operations are not applied etc).
Also these functions are supposed to be const. They should not mutate the geometry or the render tree itself.
Forwarding ::scroll* calls to Element::scroll* can't guarantee neither of these above.
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::scrollWidth const):
(WebCore::RenderTextControlSingleLine::scrollHeight const):
(WebCore::RenderTextControlSingleLine::scrollLeft const):
(WebCore::RenderTextControlSingleLine::scrollTop const):
Commit: 83a609db1ec73f60a5e6492e8078d667c8fcb7f3
https://github.com/WebKit/WebKit/commit/83a609db1ec73f60a5e6492e8078d667c8fcb7f3
Author: Youenn Fablet <youennf at gmail.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/WebProcess/Network/WebSocketChannel.cpp
Log Message:
-----------
Merge r265856 - WebSocketChannel::didClose should correctly compute whether a closing handshake was received
https://bugs.webkit.org/show_bug.cgi?id=215644
Reviewed by Darin Adler.
Covered by LayoutTests/http/tests/websocket/tests/hybi/close-code-and-reason.html with NSURLSession code path enabled.
* WebProcess/Network/WebSocketChannel.cpp:
(WebKit::WebSocketChannel::didClose):
As noted by Jiten Mehta, absence of closing handshake from the server is notified by WebSocketChannel::CloseEventCodeAbnormalClosure.
Update check accordingly.
Commit: bbc42fb9d79632aefa45ae0f1ca1fe99c2c8263d
https://github.com/WebKit/WebKit/commit/bbc42fb9d79632aefa45ae0f1ca1fe99c2c8263d
Author: Lauro Moura <lmoura at igalia.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M LayoutTests/ChangeLog
M LayoutTests/platform/glib/http/tests/websocket/tests/hybi/close-code-and-reason-expected.txt
M LayoutTests/platform/glib/http/tests/websocket/tests/hybi/workers/close-code-and-reason-expected.txt
M Source/WebKit/ChangeLog
M Source/WebKit/NetworkProcess/soup/WebSocketTaskSoup.cpp
Log Message:
-----------
Merge r265940 - REGRESSION(r265856) [GTK][WPE] hybi websockets tests failing
https://bugs.webkit.org/show_bug.cgi?id=215679
Reviewed by Carlos Garcia Campos.
Source/WebKit:
r265856 changed WebSocketChannel to expect AbnormalClosure when the
closing handshake is not received.
Covered by existing tests.
* NetworkProcess/soup/WebSocketTaskSoup.cpp:
(WebKit::WebSocketTask::didFail):
LayoutTests:
Rebaseline and update expectations.
* platform/glib/TestExpectations:
* platform/glib/http/tests/websocket/tests/hybi/close-code-and-reason-expected.txt:
* platform/glib/http/tests/websocket/tests/hybi/workers/close-code-and-reason-expected.txt:
Commit: e7320c8a74c0f085df4ceba06ce6f011f9be2bda
https://github.com/WebKit/WebKit/commit/e7320c8a74c0f085df4ceba06ce6f011f9be2bda
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M Source/WTF/ChangeLog
M Source/WTF/wtf/RunLoop.h
M Source/WTF/wtf/glib/RunLoopGLib.cpp
M Source/WebCore/ChangeLog
M Source/WebCore/inspector/agents/InspectorTimelineAgent.cpp
M Source/WebCore/inspector/agents/InspectorTimelineAgent.h
Log Message:
-----------
Merge r266103 - [GTK] Implement rendering frames timeline panel for GTK+ port
https://bugs.webkit.org/show_bug.cgi?id=150392
<rdar://problem/23200510>
Reviewed by Brian Burg.
Source/WebCore:
Use new RunLoop API to observe the run loop events when the GLib event loop is used.
* inspector/agents/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::internalStart):
(WebCore::InspectorTimelineAgent::internalStop):
* inspector/agents/InspectorTimelineAgent.h:
Source/WTF:
Add API to observe RunLoop events for GLib event loop implementation.
* wtf/RunLoop.h:
* wtf/glib/RunLoopGLib.cpp:
(WTF::RunLoop::RunLoop): Use RunLoopSource struct and initialize the RunLoop.
(WTF::RunLoop::observe): Add the given observer to the set.
(WTF::RunLoop::notify): Notife observers of the given event.
(WTF::RunLoop::TimerBase::TimerBase): Use RunLoopSource struct and initialize the RunLoop.
Commit: d94788ab4d776b09c7b13971e8a816e4d9292993
https://github.com/WebKit/WebKit/commit/d94788ab4d776b09c7b13971e8a816e4d9292993
Author: Jim Mason <jmason at ibinx.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M Source/WTF/ChangeLog
M Source/WTF/wtf/glib/RunLoopGLib.cpp
Log Message:
-----------
Merge r266331 - [GTK] REGRESSION(r150392) insufficient space allocation results in heap corruption
https://bugs.webkit.org/show_bug.cgi?id=215976
Patch by Jim Mason <jmason at ibinx.com> on 2020-08-30
Reviewed by Carlos Garcia Campos.
* wtf/glib/RunLoopGLib.cpp:
(WTF::RunLoop::TimerBase::TimerBase):
Commit: 4b72b4ec7833bd7cd0ee03ab44b43ddc1308d576
https://github.com/WebKit/WebKit/commit/4b72b4ec7833bd7cd0ee03ab44b43ddc1308d576
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M Source/WTF/ChangeLog
M Source/WTF/wtf/RunLoop.h
M Source/WTF/wtf/glib/RunLoopGLib.cpp
M Source/WebCore/ChangeLog
M Source/WebCore/inspector/TimelineRecordFactory.cpp
M Source/WebCore/inspector/TimelineRecordFactory.h
M Source/WebCore/inspector/agents/InspectorTimelineAgent.cpp
M Source/WebInspectorUI/ChangeLog
M Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js
M Source/WebInspectorUI/UserInterface/Controllers/TimelineManager.js
M Source/WebInspectorUI/UserInterface/Models/RenderingFrameTimelineRecord.js
M Source/WebInspectorUI/UserInterface/Views/TimelineTabContentView.js
Log Message:
-----------
Merge r266227 - [GTK] Include the run loop source name in frame rendering timeline
https://bugs.webkit.org/show_bug.cgi?id=215847
Reviewed by Adrian Perez de Castro.
Source/WebCore:
Include the given name in rendering frame record data.
* inspector/TimelineRecordFactory.cpp:
(WebCore::TimelineRecordFactory::createRenderingFrameData):
* inspector/TimelineRecordFactory.h:
* inspector/agents/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::internalStart):
Source/WebInspectorUI:
Show the frame name if present in timeline panel.
* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Controllers/TimelineManager.js:
(WI.TimelineManager.prototype._processRecord):
* UserInterface/Models/RenderingFrameTimelineRecord.js:
(WI.RenderingFrameTimelineRecord):
(WI.RenderingFrameTimelineRecord.prototype.get name):
* UserInterface/Views/TimelineTabContentView.js:
(WI.TimelineTabContentView.displayNameForRecord):
Source/WTF:
Pass the run loop source name to the observer.
* wtf/RunLoop.h:
* wtf/glib/RunLoopGLib.cpp:
(WTF::RunLoop::RunLoop):
(WTF::RunLoop::notify):
Commit: 3e3e9cd287a32dba10325f4d6739975210c1462e
https://github.com/WebKit/WebKit/commit/3e3e9cd287a32dba10325f4d6739975210c1462e
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M Source/JavaScriptCore/ChangeLog
M Source/JavaScriptCore/runtime/SamplingProfiler.cpp
M Source/JavaScriptCore/runtime/SamplingProfiler.h
M Source/WTF/ChangeLog
M Source/WTF/wtf/Threading.cpp
M Source/WTF/wtf/Threading.h
M Source/WTF/wtf/ThreadingPrimitives.h
M Source/WTF/wtf/posix/ThreadingPOSIX.cpp
M Source/WebCore/ChangeLog
M Source/WebCore/page/ResourceUsageThread.h
M Source/WebCore/page/cocoa/ResourceUsageThreadCocoa.mm
M Source/WebCore/page/linux/ResourceUsageThreadLinux.cpp
Log Message:
-----------
Merge r266388 - [Linux] Web Inspector: show per thread cpu usage
https://bugs.webkit.org/show_bug.cgi?id=215883
Reviewed by Adrian Perez de Castro.
Source/JavaScriptCore:
Remove platform specific getter machThread() and add thread() to return the Thread instead. The caller knows how
to get the machThread or id from a Thread.
* runtime/SamplingProfiler.cpp:
(JSC::SamplingProfiler::reportTopBytecodes):
(JSC::SamplingProfiler::machThread): Deleted.
* runtime/SamplingProfiler.h:
(JSC::SamplingProfiler::thread):
Source/WebCore:
Get per thread CPU usage and information to fill ResourceUsageData in Linux.
* page/ResourceUsageThread.h:
* page/cocoa/ResourceUsageThreadCocoa.mm:
(WebCore::ResourceUsageThread::platformSaveStateBeforeStarting): Update to new API in SamplingProfiler.
* page/linux/ResourceUsageThreadLinux.cpp:
(WebCore::ResourceUsageThread::platformSaveStateBeforeStarting): Initialize m_samplingProfilerThreadID.
(WebCore::threadInfoMap):
(WebCore::threadCPUUsage):
(WebCore::collectCPUUsage):
(WebCore::ResourceUsageThread::platformCollectCPUData):
(WebCore::cpuUsage): Deleted.
Source/WTF:
Add API to get the thread ID in Linux platform.
* wtf/Threading.cpp:
(WTF::Thread::initializeInThread):
* wtf/Threading.h:
(WTF::Thread::id const):
* wtf/ThreadingPrimitives.h:
* wtf/posix/ThreadingPOSIX.cpp:
(WTF::Thread::currentID):
Commit: f942bcf28210adb9ad0a100b01f7d9c06f3c3517
https://github.com/WebKit/WebKit/commit/f942bcf28210adb9ad0a100b01f7d9c06f3c3517
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M LayoutTests/ChangeLog
M LayoutTests/platform/glib/TestExpectations
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/nicosia/NicosiaAnimation.cpp
M Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp
M Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h
M Source/WebKit/ChangeLog
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp
Log Message:
-----------
Merge r266000 - [GTK][WPE] Debug crashes in backdrop filter tests
https://bugs.webkit.org/show_bug.cgi?id=215209
Patch by Carlos Garcia Campos <cgarcia at igalia.com> on 2020-08-20
Reviewed by Adrian Perez de Castro.
Source/WebCore:
This only happens in WKTR because RenderLayerCompositor::flushPendingLayerChanges() is called from
RenderLayerCompositor::layerTreeAsText(), so the coordinator doesn't know layers are being flushed and we don't
return early from notifyFlushRequired(). We don't really need to have a coordinator associated to the backdrop
layer, we just need to attach the layer to the coordinator to ensure it's updated.
* platform/graphics/nicosia/NicosiaAnimation.cpp:
(Nicosia::Animation::applyInternal): Handle AnimatedPropertyWebkitBackdropFilter.
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer): Detach also the backdrop layer.
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly): Attach the backdrop layer to the
coordinator if there's one.
(WebCore::CoordinatedGraphicsLayer::syncPendingStateChangesIncludingSubLayers): Do not call this for the
backdrop layer.
(WebCore::CoordinatedGraphicsLayer::invalidateCoordinator): Set coordinator to nullptr.
(WebCore::CoordinatedGraphicsLayer::setCoordinatorIncludingSubLayersIfNeeded): Set the coordinator and attach
the layer. Also attach the backdrop layer.
(WebCore::CoordinatedGraphicsLayer::setCoordinator): Deleted.
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
Source/WebKit:
* WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:
(WebKit::CompositingCoordinator::~CompositingCoordinator): Use invalidateCoordinator() instead of setCoordinator()
that has been removed.
(WebKit::CompositingCoordinator::createGraphicsLayer): Use setCoordinatorIncludingSubLayersIfNeeded() instead of
attaching the layer directly.
(WebKit::CompositingCoordinator::attachLayer): Do not call setCoordinator(), the caller is expected to set the
coordinator.
LayoutTests:
Remove expectations for tests that are now passing.
* platform/glib/TestExpectations:
Commit: f7fbdf36577290f36e4b2bf2b81eacec20fba782
https://github.com/WebKit/WebKit/commit/f7fbdf36577290f36e4b2bf2b81eacec20fba782
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp
Log Message:
-----------
Merge r266389 - [GTK][WPE] Do not use the default WebsiteDataStore for downloads
https://bugs.webkit.org/show_bug.cgi?id=216001
Reviewed by Adrian Perez de Castro.
Use the web context one instead.
* UIProcess/API/glib/WebKitWebContext.cpp:
(webkitWebContextStartDownload):
Commit: 3fbd46fcda9a3d227947abb4406bc7ba07820dd2
https://github.com/WebKit/WebKit/commit/3fbd46fcda9a3d227947abb4406bc7ba07820dd2
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.cpp
M Source/WebKit/UIProcess/API/glib/WebKitDownloadClient.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/UIProcess/WebProcessPool.cpp
M Source/WebKit/UIProcess/gtk/WebPageProxyGtk.cpp
M Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm
M Source/WebKit/UIProcess/mac/WebPageProxyMac.mm
M Source/WebKit/UIProcess/playstation/WebPageProxyPlayStation.cpp
M Source/WebKit/UIProcess/win/WebPageProxyWin.cpp
M Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp
M Tools/ChangeLog
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp
Log Message:
-----------
Merge r266576 - [GTK] Unexpected User-Agent on redirect
https://bugs.webkit.org/show_bug.cgi?id=191858
Reviewed by Youenn Fablet.
Source/WebKit:
Clear the user agent on new request after a redirect to ensure a new one is computed taking into account the
quirks if needed. Also ensure quirks are applied for downloads started in the UI process.
* NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::NetworkDataTaskSoup::continueHTTPRedirection): Clear the user agent on new request.
* UIProcess/API/glib/WebKitDownloadClient.cpp:
* UIProcess/WebPageProxy.h: Add userAgentForURL().
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::download): Use userAgentForURL() instead of userAgent().
* UIProcess/gtk/WebPageProxyGtk.cpp:
(WebKit::WebPageProxy::userAgentForURL): Implement it to apply quirks if needed.
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::userAgentForURL): Just return the web page user agent.
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::userAgentForURL): Ditto.
* UIProcess/playstation/WebPageProxyPlayStation.cpp:
(WebKit::WebPageProxy::userAgentForURL): Ditto.
* UIProcess/win/WebPageProxyWin.cpp:
(WebKit::WebPageProxy::userAgentForURL): Ditto.
* UIProcess/wpe/WebPageProxyWPE.cpp:
(WebKit::WebPageProxy::userAgentForURL): Ditto.
Tools:
Add unit tests to check the user agent is sent in headers and preserved after a redirect for both main resource
and subresources.
* TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
(serverCallback):
(testDownloadUserAgent):
(beforeAll):
* TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
(testUserAgent):
(serverCallback):
(beforeAll):
Commit: 4910c41706d85987f143b99f0176258e2dcf9f70
https://github.com/WebKit/WebKit/commit/4910c41706d85987f143b99f0176258e2dcf9f70
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M Source/JavaScriptCore/API/glib/JSCValue.cpp
M Source/JavaScriptCore/ChangeLog
Log Message:
-----------
Merge r266577 - Unreviewed. [GLIB] Add missing return
There's no change in behavior because jsObjectCall() returns undefined in case of failure, but fixes a memory leak.
* API/glib/JSCValue.cpp:
(jsc_value_object_invoke_methodv):
Commit: b877ce0f127ea4b6c17e81601eecc4e5d3138b52
https://github.com/WebKit/WebKit/commit/b877ce0f127ea4b6c17e81601eecc4e5d3138b52
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M ChangeLog
M LayoutTests/ChangeLog
M LayoutTests/platform/wpe/TestExpectations
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
Merge r266297 - [WPE] Enable Notifications support
https://bugs.webkit.org/show_bug.cgi?id=215924
Reviewed by Philippe Normand.
.:
Enable web notifications support for the WPE port. The code is shared with the GTK
port, but as we do not try to find and enable libnotify the default implementation
is a stub: embedders can customize how to display notifications by connecting to
the WebKitWebView:show-notification signal. This way we do not add any additional
build dependencies.
* Source/cmake/OptionsWPE.cmake: Flip ENABLE_NOTIFICATIONS to ON.
LayoutTests:
* platform/wpe/TestExpectations: Update test expectations.
Commit: 3bb0edff39dfe05f3cd1647516773ebb20854c4c
https://github.com/WebKit/WebKit/commit/3bb0edff39dfe05f3cd1647516773ebb20854c4c
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/UserAgentQuirks.cpp
M Tools/ChangeLog
M Tools/TestWebKitAPI/PlatformGTK.cmake
M Tools/TestWebKitAPI/PlatformWPE.cmake
M Tools/TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp
Log Message:
-----------
Merge r266584 - [GLIB] Stop using firefox user agent quirk for google docs
https://bugs.webkit.org/show_bug.cgi?id=215845
Reviewed by Adrian Perez de Castro.
Source/WebCore:
It causes problems with the CSP headers when accounts.youtube.com is used by google login and it no longer works
for google docs in any case.
* platform/UserAgentQuirks.cpp:
(WebCore::isGoogle):
(WebCore::urlRequiresFirefoxBrowser):
Tools:
Update API tests. Bring back UserAgentQuirks.cpp to the build that was removed in r244857.
* TestWebKitAPI/PlatformGTK.cmake:
* TestWebKitAPI/PlatformWPE.cmake:
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::TEST):
Commit: 61cd0b4d26e5d0e978db6fea54560a92748e4f47
https://github.com/WebKit/WebKit/commit/61cd0b4d26e5d0e978db6fea54560a92748e4f47
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/gtk/NEWS
M Source/cmake/OptionsGTK.cmake
Log Message:
-----------
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.29.92 release
.:
* Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
* gtk/NEWS: Add release notes for 2.29.92.
Commit: 789e2066c9fd7e1b7ab95f32c8f3e2a23feacecc
https://github.com/WebKit/WebKit/commit/789e2066c9fd7e1b7ab95f32c8f3e2a23feacecc
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-09-04 (Fri, 04 Sep 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/wpe/NEWS
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.29.91 release
.:
* Source/cmake/OptionsWPE.cmake: Bump version numbers.
Source/WebKit:
* wpe/NEWS: Add release notes for the 2.29.91 release.
Commit: 5567459b755a34a356a91b160fae0843a2810c76
https://github.com/WebKit/WebKit/commit/5567459b755a34a356a91b160fae0843a2810c76
Author: Mike Gorse <mgorse at suse.com>
Date: 2020-09-11 (Fri, 11 Sep 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/PlatformGTK.cmake
Log Message:
-----------
Merge r266702 - Build failure; cannot find seccomp.h
https://bugs.webkit.org/show_bug.cgi?id=216226
Patch by Mike Gorse <mgorse at suse.com> on 2020-09-07
Reviewed by Darin Adler.
No new tests (build fix only).
* PlatformGTK.cmake: Add LIBSECCOMP_INCLUDE_DIRS to
WebKit_SYSTEM_INCLUDE_DIRECTORIES.
Commit: 6aa4d879b84cd9bf0878cebc7e066b562a4e26b7
https://github.com/WebKit/WebKit/commit/6aa4d879b84cd9bf0878cebc7e066b562a4e26b7
Author: Mike Gorse <mgorse at suse.com>
Date: 2020-09-11 (Fri, 11 Sep 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreWayland.cpp
Log Message:
-----------
Merge r266726 - [GTK] AcceleratedBackingStoreWayland might erroneously try to use SHM with older wpebackend-fdo
https://bugs.webkit.org/show_bug.cgi?id=216254
Patch by Mike Gorse <mgorse at suse.com> on 2020-09-08
Reviewed by Adrian Perez de Castro.
* UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:
(WebKit::tryInitializeSHM): Return false for wpebackend-fdo < 1.7.0.
Commit: d41c972d2d728ecbcad3aebe8df57c8126d5b796
https://github.com/WebKit/WebKit/commit/d41c972d2d728ecbcad3aebe8df57c8126d5b796
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-11 (Fri, 11 Sep 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/network/soup/SoupNetworkSession.cpp
Log Message:
-----------
Merge r266819 - [GTK][WPE] Support NTLM authentication
https://bugs.webkit.org/show_bug.cgi?id=122952
Reviewed by Adrian Perez de Castro.
Add SoupAuthNTLM feature to the session.
* platform/network/soup/SoupNetworkSession.cpp:
(WebCore::SoupNetworkSession::SoupNetworkSession):
Commit: 585c813f090cd659ee7dd629c1854d4c02a2098a
https://github.com/WebKit/WebKit/commit/585c813f090cd659ee7dd629c1854d4c02a2098a
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2020-09-11 (Fri, 11 Sep 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/gtk/NEWS
M Source/cmake/OptionsGTK.cmake
Log Message:
-----------
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.30.0 release
.:
* Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
* gtk/NEWS: Add release notes for 2.30.0
Commit: 5fefd87abd14eedaf6e83f7f925c58ca13cd08ed
https://github.com/WebKit/WebKit/commit/5fefd87abd14eedaf6e83f7f925c58ca13cd08ed
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-09-11 (Fri, 11 Sep 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/wpe/NEWS
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.30.0 release
.:
* Source/cmake/OptionsWPE.cmake: Bump version numbers.
Source/WebKit:
* wpe/NEWS: Add release notes for 2.30.0
Commit: 6e779d1229191824908d36344dd046957beb2532
https://github.com/WebKit/WebKit/commit/6e779d1229191824908d36344dd046957beb2532
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2020-09-18 (Fri, 18 Sep 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp
Log Message:
-----------
Unreviewed. [GTK] Add an env var to force single process model
WEBKIT_USE_SINGLE_WEB_PROCESS=1 can be used to force the single process model when PSON is disabled. This is a
temporary solution for applications still depending on the single process mode behavior. It will be only
available in 2.28 series.
* UIProcess/API/glib/WebKitWebContext.cpp:
(webkitWebContextConstructed):
Commit: f6e223f72997db72292f455c1acf20ae8df2db57
https://github.com/WebKit/WebKit/commit/f6e223f72997db72292f455c1acf20ae8df2db57
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-18 (Fri, 18 Sep 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/WebProcessPool.cpp
M Tools/ChangeLog
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp
Log Message:
-----------
Merge r267226 - [GTK] Epiphany does not make connections in Incognito Mode after clearing .cache
https://bugs.webkit.org/show_bug.cgi?id=216430
Reviewed by Adrian Perez de Castro.
Source/WebKit:
The problem is that when using an ephemeral context, the download is started before the ephemeral session has
been registered in the network process, so it's just ignored.
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::createDownloadProxy): Pass the given WebsiteDataStore to ensureNetworkProcess().
Tools:
Add unit test to check we can start downloads in ephemeral sessions before a web view is created.
* TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
(testDownloadEphemeralContext):
(beforeAll):
Commit: e9c1f39c21113e0e11aea91006ec80866be5f946
https://github.com/WebKit/WebKit/commit/e9c1f39c21113e0e11aea91006ec80866be5f946
Author: Rafael Fontenelle <rafaelff at gnome.org>
Date: 2020-09-18 (Fri, 18 Sep 2020)
Changed paths:
M Source/WebCore/platform/gtk/po/ChangeLog
M Source/WebCore/platform/gtk/po/pt_BR.po
Log Message:
-----------
Merge r267228 - [l10n] [pt_BR] Updated Brazilian Portuguese translation
https://bugs.webkit.org/show_bug.cgi?id=216436
Patch by Rafael Fontenelle <rafaelff at gnome.org> on 2020-09-18
Rubber-stamped by Carlos Garcia Campos.
* pt_BR.po:
Commit: 53c75dae9f76b4acf1bed3166a60833a841f51e8
https://github.com/WebKit/WebKit/commit/53c75dae9f76b4acf1bed3166a60833a841f51e8
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2020-09-21 (Mon, 21 Sep 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/gtk/NEWS
M Source/cmake/OptionsGTK.cmake
Log Message:
-----------
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.30.1 release
.:
* Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
* gtk/NEWS: Add release notes for 2.30.1.
Commit: 700b5db16b37900d04d0e99fbc0aed373abb88a0
https://github.com/WebKit/WebKit/commit/700b5db16b37900d04d0e99fbc0aed373abb88a0
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-09-21 (Mon, 21 Sep 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/wpe/NEWS
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.30.1 release
.:
* Source/cmake/OptionsWPE.cmake: Bump version numbers.
Source/WebKit:
* wpe/NEWS: Add release notes for 2.30.1.
Commit: 399465a7a6a7fa535fd9c3ca77f3e7c3ac119f45
https://github.com/WebKit/WebKit/commit/399465a7a6a7fa535fd9c3ca77f3e7c3ac119f45
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-28 (Mon, 28 Sep 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/Modules/websockets/ThreadableWebSocketChannel.cpp
Log Message:
-----------
Merge r267620 - [SOUP] Slack.com is not working, new messages do not load due to WebSocket authentication failure issue
https://bugs.webkit.org/show_bug.cgi?id=149551
Reviewed by Michael Catanzaro.
The problem is that we are not including all the cookies in the web socket request. There are two cookies with
the Lax same-site policy set, that are not included for the websocket request.
* Modules/websockets/ThreadableWebSocketChannel.cpp:
(WebCore::ThreadableWebSocketChannel::webSocketConnectRequest): Add same site information to WebSocket requests.
Commit: 5905824c6d97b00ad70b79d00131dc841d0acb6f
https://github.com/WebKit/WebKit/commit/5905824c6d97b00ad70b79d00131dc841d0acb6f
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-28 (Mon, 28 Sep 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/network/soup/ResourceRequestSoup.cpp
M Source/WebKit/ChangeLog
M Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.cpp
Log Message:
-----------
Merge r267621 - [SOUP] Do not set site for cookies twice in case of redirection
https://bugs.webkit.org/show_bug.cgi?id=217010
Reviewed by Michael Catanzaro.
Source/WebCore:
Only set is-toplevel-navigation on SoupMessage when same site info is present.
* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::updateSoupMessageMembers const):
Source/WebKit:
ResourceRequest::updateSoupMessage() already fills the same site information, but we are duplicating the code in
NetworkDataTaskSoup::continueHTTPRedirection().
* NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::NetworkDataTaskSoup::continueHTTPRedirection): Do not set same site information here, it will be done
again in NetworkDataTaskSoup::createRequest().
Commit: 00b10281cba85963e11e07d5d29af5a6479fc8f9
https://github.com/WebKit/WebKit/commit/00b10281cba85963e11e07d5d29af5a6479fc8f9
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-09-28 (Mon, 28 Sep 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/NetworkProcess/soup/WebSocketTaskSoup.cpp
Log Message:
-----------
Merge r267655 - [SOUP] WebSocket: cookies set in request don't appear in the inspector
https://bugs.webkit.org/show_bug.cgi?id=217012
Reviewed by Michael Catanzaro.
Cookies are set by libsoup and we are notifying about the handshake being sent before the cookie header is added
to the request.
* NetworkProcess/soup/WebSocketTaskSoup.cpp:
(WebKit::WebSocketTask::WebSocketTask): Connect to SoupMessage::starting to notify the web process the handshake
request has been sent.
Commit: efcbd209f02027fa5de0568d0589ffc4a8d5195c
https://github.com/WebKit/WebKit/commit/efcbd209f02027fa5de0568d0589ffc4a8d5195c
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-10-04 (Sun, 04 Oct 2020)
Changed paths:
M ChangeLog
M Source/WebCore/ChangeLog
M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioData.h
M Source/cmake/GStreamerChecks.cmake
Log Message:
-----------
Merge r267882 - [GTK] Build broken with ENABLE_MEDIA_STREAM enabled and ENABLE_WEB_RTC_DISABLED
https://bugs.webkit.org/show_bug.cgi?id=217128
Reviewed by Philippe Normand.
.:
* Source/cmake/GStreamerChecks.cmake: Only enable USE_LIBWEBRTC when both
ENABLE_MEDIA_STREAM and ENABLE_WEB_RTC is defined. This prevents trying to
build code that uses libwebrtc types when ENABLE_WEB_RTC is disabled but
ENABLE_MEDIA_STREAM is enabled.
Source/WebCore:
No new tests needed.
* platform/mediastream/gstreamer/GStreamerAudioData.h: Remove USE(LIBWEBRTC) guard, as
there is nothing specific to WebRTC in this file, and it is needed when building with
ENABLE_MEDIA_STREAM enabled.
Commit: 84ecf513960dcb456cd97edd58b536a41fc03100
https://github.com/WebKit/WebKit/commit/84ecf513960dcb456cd97edd58b536a41fc03100
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-10-04 (Sun, 04 Oct 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp
M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.h
M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCapturer.cpp
M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCapturer.h
M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioStreamDescription.h
M Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp
M Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.h
M Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp
M Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h
M Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp
M Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCapturer.h
M Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.cpp
M Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.h
M Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp
M Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h
M Source/WebCore/platform/mediastream/gstreamer/RealtimeMediaSourceCenterLibWebRTC.cpp
M Source/WebCore/platform/mock/MockRealtimeAudioSource.cpp
M Source/WebCore/platform/mock/MockRealtimeVideoSource.cpp
Log Message:
-----------
Merge r267934 - [GTK] Build broken with ENABLE_MEDIA_STREAM enabled and ENABLE_WEB_RTC_DISABLED
https://bugs.webkit.org/show_bug.cgi?id=217128
Remove USE(LIBWEBRTC) guards from media stream code, as it does not actually
depend on libwebrtc and can be built by itself. This allows using e.g. live
audio recording inputs with WebAudio.
Reviewed by Philippe Normand.
No new tests needed.
* platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp:
* platform/mediastream/gstreamer/GStreamerAudioCaptureSource.h:
* platform/mediastream/gstreamer/GStreamerAudioCapturer.cpp:
(WebCore::GStreamerAudioCapturer::GStreamerAudioCapturer):
* platform/mediastream/gstreamer/GStreamerAudioCapturer.h:
* platform/mediastream/gstreamer/GStreamerAudioStreamDescription.h:
* platform/mediastream/gstreamer/GStreamerCapturer.cpp:
* platform/mediastream/gstreamer/GStreamerCapturer.h:
* platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp:
* platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h:
* platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp:
* platform/mediastream/gstreamer/GStreamerVideoCapturer.h:
* platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.cpp:
* platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.h:
* platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp:
* platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h:
* platform/mediastream/gstreamer/RealtimeMediaSourceCenterLibWebRTC.cpp:
* platform/mock/MockRealtimeAudioSource.cpp:
* platform/mock/MockRealtimeVideoSource.cpp:
Commit: 25ace15960e1b1181e0729c85619fb4e1184b3c4
https://github.com/WebKit/WebKit/commit/25ace15960e1b1181e0729c85619fb4e1184b3c4
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-10-12 (Mon, 12 Oct 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/cairo/ImageBufferCairoGLSurfaceBackend.cpp
M Source/WebCore/platform/graphics/cairo/ImageBufferCairoGLSurfaceBackend.h
Log Message:
-----------
Merge r268350 - REGRESSION(r256892): [WPE][GTK] Build broken with ENABLE_ACCELERATED_2D_CANVAS=ON
https://bugs.webkit.org/show_bug.cgi?id=217384
Most of the patch by Žan Doberšek.
Reviewed by Darin Adler.
No new tests needed.
* platform/graphics/cairo/ImageBufferCairoGLSurfaceBackend.cpp: Move the namespace
declaration after the #include statements, to avoid incorrect nested WebCore::WebCore
namespace declarations.
(WebCore::ImageBufferCairoGLSurfaceBackend::create): Add missing semicolon to statement,
use getter for Cairo surface.
(WebCore::ImageBufferCairoGLSurfaceBackend::platformLayer const): Rename from
ImageBuffer::platformLayer.
(WebCore::ImageBufferCairoGLSurfaceBackend::copyToPlatformTexture const): Add missing
first argument.
* platform/graphics/cairo/ImageBufferCairoGLSurfaceBackend.h: Adapt.
Commit: b2fa4080a5b218bfd57f9d15cf5caa815f7e0e2c
https://github.com/WebKit/WebKit/commit/b2fa4080a5b218bfd57f9d15cf5caa815f7e0e2c
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-10-14 (Wed, 14 Oct 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/Headers.cmake
M Source/WebCore/platform/gamepad/EmptyGamepadProvider.h
M Source/WebCore/platform/gamepad/manette/ManetteGamepad.cpp
M Source/WebCore/platform/gamepad/manette/ManetteGamepad.h
M Source/WebCore/platform/gamepad/manette/ManetteGamepadProvider.cpp
M Source/WebCore/platform/gamepad/manette/ManetteGamepadProvider.h
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/Gamepad/UIGamepadProvider.h
M Source/WebKit/UIProcess/WebProcessPool.cpp
M Source/WebKit/WebProcess/Gamepad/WebGamepadProvider.h
Log Message:
-----------
Merge r268312 - [GTK] Build broken with ENABLE_GAMEPAD enabled
https://bugs.webkit.org/show_bug.cgi?id=217226
Reviewed by Darin Adler.
Source/WebCore:
No new tests needed.
* Headers.cmake: List SharedGamepadValue.h in WebCore_PRIVATE_FRAMEWORK_HEADERS, which
was missing.
* platform/gamepad/EmptyGamepadProvider.h: Mark class as final, because the destructor
is final itself.
* platform/gamepad/manette/ManetteGamepad.cpp:
(WebCore::ManetteGamepad::ManetteGamepad): Adapt to use SharedGamepadValue.
(WebCore::ManetteGamepad::buttonPressedOrReleased): Ditto.
(WebCore::ManetteGamepad::absoluteAxisChanged): Ditto.
* platform/gamepad/manette/ManetteGamepad.h: Ditto.
* platform/gamepad/manette/ManetteGamepadProvider.cpp: Rename m_connectionDelayTimer
to m_initialGamepadsConnectedTimer, which better reflects the usage and also makes the
provider a bit more similar to HIDGamepadProvider (from the Mac port). Arrange to use
the EventMakesGamepadsVisible flag.
(WebCore::ManetteGamepadProvider::ManetteGamepadProvider): Remove the loop that iterates
over the pre-detected gamepads because they are being added too early before any client
has had the chance to be attached.
(WebCore::ManetteGamepadProvider::startMonitoringGamepads): The loop that iterates and
adds pre-detected gamepads is moved here, once there is at least a client. This solves
hitting an assertion later on when UIGamepadProvider checks that the number of gamepads
it has been notified of matches the amount tracked by ManetteGamepadProvider.
(WebCore::ManetteGamepadProvider::stopMonitoringGamepads):
(WebCore::ManetteGamepadProvider::deviceConnected):
(WebCore::ManetteGamepadProvider::deviceDisconnected):
(WebCore::ManetteGamepadProvider::initialGamepadsConnectedTimerFired):
(WebCore::ManetteGamepadProvider::inputNotificationTimerFired):
* platform/gamepad/manette/ManetteGamepadProvider.h: Ditto.
Source/WebKit:
* UIProcess/Gamepad/UIGamepadProvider.h: Mark class as final, because the destructor is
final itself.
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::numberOfConnectedGamepadsForTesting): Reorganize PLATFORM(MAC)
guards to use GameControllerGamepadProvider only on macOS, as it is unavailable on other
ports.
* WebProcess/Gamepad/WebGamepadProvider.h: Mark class as final, because the destructor
is final itself.
Commit: 38b62a935f8980177dd584b2409a87b6d1a5a335
https://github.com/WebKit/WebKit/commit/38b62a935f8980177dd584b2409a87b6d1a5a335
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-10-14 (Wed, 14 Oct 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/gamepad/manette/ManetteGamepadProvider.cpp
Log Message:
-----------
Merge r268390 - [GTK] Make gamepads visible after their first input is received
https://bugs.webkit.org/show_bug.cgi?id=217494
Reviewed by Carlos Garcia Campos.
Turns out this was mostly working already, with a small caveat: Sometimes there would
be a timing issue if m_inputNotificationTimer would be fired before having a chance
of setting the m_initialGamepadsConnected flag, and in that case the early return
would prevent dispatchPlatformGamepadInputActivity() from ever being called. This
re-arms the timer to be fired again in the next event loop iteration if the flag was
unset, so it will be checked again after it has been toggled. This same approach is
used by HIDGamepadProvider in the Mac port, for example.
* platform/gamepad/manette/ManetteGamepadProvider.cpp:
(WebCore::ManetteGamepadProvider::inputNotificationTimerFired): Re-arm timer if
m_initialGamepadsConnected was not yet set.
Commit: 8ff713697b8b424239c1359517fb031ad11101e4
https://github.com/WebKit/WebKit/commit/8ff713697b8b424239c1359517fb031ad11101e4
Author: Philippe Normand <pnormand at igalia.com>
Date: 2020-10-23 (Fri, 23 Oct 2020)
Changed paths:
M LayoutTests/ChangeLog
M LayoutTests/media/media-can-play-mpeg4-video-expected.txt
M LayoutTests/media/media-can-play-mpeg4-video.html
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.cpp
Log Message:
-----------
Merge r268392 - [GStreamer] Crash in WebCore::GStreamerRegistryScanner::isAVC1CodecSupported
https://bugs.webkit.org/show_bug.cgi?id=217647
Reviewed by Xabier Rodriguez-Calvar.
Source/WebCore:
The registry scanner was assuming the avc1 codec field is always of the form
avc1.codecprofile, which is wrong.
Covered by test: media/media-can-play-mpeg4-video.html
* platform/graphics/gstreamer/GStreamerRegistryScanner.cpp:
(WebCore::GStreamerRegistryScanner::isAVC1CodecSupported const): Check for '.' presence and
fallback to unconstrained check if no profile or level information was extracted.
LayoutTests:
* media/media-can-play-mpeg4-video-expected.txt:
* media/media-can-play-mpeg4-video.html: Add test for "avc1" codec.
Commit: d7de385662b95bdd8b61e7dfb29fdfcec6eca401
https://github.com/WebKit/WebKit/commit/d7de385662b95bdd8b61e7dfb29fdfcec6eca401
Author: Michael Catanzaro <mcatanzaro at gnome.org>
Date: 2020-10-23 (Fri, 23 Oct 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/network/soup/CertificateInfo.h
M Source/WebCore/platform/network/soup/CertificateInfoSoup.cpp
Log Message:
-----------
Merge r268394 - [SOUP] webkit_web_view_get_https_status() broken with service workers
https://bugs.webkit.org/show_bug.cgi?id=216038
Patch by Michael Catanzaro <mcatanzaro at gnome.org> on 2020-10-13
Reviewed by Carlos Garcia Campos.
This implements CertificateInfo::isolatedCopy for libsoup ports. This is impossible to do
completely, because we cannot copy the private key portion of the GTlsCertificate, because
it is a write-only property, because it might be backed by a hardware token and therefore
really impossible to write software to get it. If we were to implement g_tls_certificate_copy()
in GLib -- which I will probably do eventually, because I need this outside WebKit as well --
then GTlsCertificate implementations could copy the private key or PKCS#11 handle or
whatever.
But anyway, let not perfect be the enemy of the good. We only need this for service workers
currently. (Probably that's all we'll *ever* need it for.) So we are only working with
server certificates, and the private portion of the certificate is guaranteed to not exist
(because servers don't send us their private keys), and we can just forget about it. As
long as nobody tries to copy a client certificate in the future -- where we really would
need the private key portion of the certificate -- this will be perfectly fine.
Actually copying the certificate is kind of annoying, because a chain of certificates is
represented by having the main (server) certificate keep a reference to its issuer, which is
not referenced anywhere else, so we have to reconstruct the chain in reverse order starting
from the final certificate, working back towards the server cert. Fun. Let's also be
careful to construct a completely new GByteArray rather than expecting the GTlsCertificate
implementation to copy it for us. Because GTlsCertificate is implemented by an extension
point and applications and system administrators can -- and do -- implement their own,
implementations could do anything, including keep a reference to the GByteArray that we
pass in.
It would be nice to have a test for this, but writing tests is hard. Also, I don't really
want to learn what service workers are. :)
Drive-by fix: also remove explicit from a constructor that doesn't need it.
* platform/network/soup/CertificateInfo.h:
(WebCore::CertificateInfo::isolatedCopy const):
* platform/network/soup/CertificateInfoSoup.cpp:
(WebCore::createCertificate):
(WebCore::CertificateInfo::isolatedCopy const):
Commit: 1f6b01d3cb04d4be0a82b6da85028e7f770be2eb
https://github.com/WebKit/WebKit/commit/1f6b01d3cb04d4be0a82b6da85028e7f770be2eb
Author: Michael Catanzaro <mcatanzaro at gnome.org>
Date: 2020-10-23 (Fri, 23 Oct 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/NetworkProcess/soup/WebSocketTaskSoup.cpp
Log Message:
-----------
Merge r268906 - [SOUP] Fix crash in WebSocketTask
https://bugs.webkit.org/show_bug.cgi?id=217892
Patch by Michael Catanzaro <mcatanzaro at gnome.org> on 2020-10-23
Reviewed by Carlos Garcia Campos.
The WebSocketTask connects to the "starting" signal of its SoupMessage and never disconnects
this signal, which is only safe if it is guaranteed to outlive its SoupMessage. However, it
is not. We crash when the signal is emitted after the WebSocketTask is destroyed. To solve
this, we just need to disconnect the signal when required. Normally that would be done in
the destructor, but the WebSocketTask drops its ownership of the SoupMessage prior to that
point, so we need to disconnect on each possible paths.
* NetworkProcess/soup/WebSocketTaskSoup.cpp:
(WebKit::WebSocketTask::~WebSocketTask):
(WebKit::WebSocketTask::didConnect):
(WebKit::WebSocketTask::didFail):
Commit: 9326a02f63584fb14a3c987ffe7d64db459153af
https://github.com/WebKit/WebKit/commit/9326a02f63584fb14a3c987ffe7d64db459153af
Author: Alexander Mikhaylenko <alexm at gnome.org>
Date: 2020-10-23 (Fri, 23 Oct 2020)
Changed paths:
M Source/WTF/ChangeLog
M Source/WTF/wtf/glib/ChassisType.cpp
Log Message:
-----------
Merge r267789 - [GTK] Chassis type check fails if the value is quoted
https://bugs.webkit.org/show_bug.cgi?id=217123
Patch by Alexander Mikhaylenko <alexm at gnome.org> on 2020-09-30
Reviewed by Carlos Garcia Campos.
Sometimes the chassis type can be quoted, in this case we'll fail to
parse it and fall back to desktop type. Unquote the string before
attempting to parse it.
* wtf/glib/ChassisType.cpp:
(WTF::readMachineInfoChassisType):
Commit: 52e4986d32ddd13a247695dc2592b422672d3d9d
https://github.com/WebKit/WebKit/commit/52e4986d32ddd13a247695dc2592b422672d3d9d
Author: Chris Lord <clord at igalia.com>
Date: 2020-10-23 (Fri, 23 Oct 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.cpp
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.h
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.cpp
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.h
M Source/WebCore/platform/ScrollAnimation.h
M Source/WebCore/platform/ScrollAnimationKinetic.cpp
M Source/WebCore/platform/ScrollAnimationKinetic.h
M Source/WebCore/platform/ScrollAnimationSmooth.cpp
M Source/WebCore/platform/ScrollAnimationSmooth.h
M Source/WebCore/platform/ScrollAnimator.cpp
M Source/WebCore/platform/generic/ScrollAnimatorGeneric.cpp
Log Message:
-----------
Merge r266390 - [GTK][WPE] Add support for smooth scrolling animation with async scrolling
https://bugs.webkit.org/show_bug.cgi?id=210382
Reviewed by Carlos Garcia Campos.
This removes the dependency on ScrollableArea from
ScrollAnimationSmooth, which allows its use as a utility class for
smooth scrolling. This class is then used in the Nicosia async layer
composition scrolling code to provide smooth scrolling, when the
feature is enabled. This mirrors the work done in bug 209230 for
kinetic scrolling.
No new tests, enabling existing functionality in more situations.
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::scrollTo):
* page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.cpp:
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::ScrollingTreeFrameScrollingNodeNicosia):
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::commitStateAfterChildren):
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::handleWheelEvent):
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::stopScrollAnimations):
* page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.h:
* page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.cpp:
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::ScrollingTreeOverflowScrollingNodeNicosia):
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::commitStateAfterChildren):
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::handleWheelEvent):
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::stopScrollAnimations):
* page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.h:
* platform/ScrollAnimation.h:
(WebCore::ScrollAnimation::serviceAnimation):
* platform/ScrollAnimationKinetic.cpp:
* platform/ScrollAnimationKinetic.h:
* platform/ScrollAnimationSmooth.cpp:
(WebCore::ScrollAnimationSmooth::ScrollAnimationSmooth):
(WebCore::ScrollAnimationSmooth::scroll):
(WebCore::ScrollAnimationSmooth::stop):
(WebCore::ScrollAnimationSmooth::updateVisibleLengths):
(WebCore::ScrollAnimationSmooth::animationTimerFired):
* platform/ScrollAnimationSmooth.h:
* platform/ScrollAnimator.cpp:
(WebCore::ScrollAnimator::ScrollAnimator):
* platform/generic/ScrollAnimatorGeneric.cpp:
(WebCore::ScrollAnimatorGeneric::ScrollAnimatorGeneric):
(WebCore::ScrollAnimatorGeneric::ensureSmoothScrollingAnimation):
Commit: 704848853294b6dea16542a1ef16b8c5630ea2ab
https://github.com/WebKit/WebKit/commit/704848853294b6dea16542a1ef16b8c5630ea2ab
Author: Chris Lord <clord at igalia.com>
Date: 2020-10-23 (Fri, 23 Oct 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp
M Source/WebCore/page/scrolling/AsyncScrollingCoordinator.h
M Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp
M Source/WebCore/page/scrolling/ThreadedScrollingTree.h
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.cpp
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.h
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.cpp
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.h
M Source/WebCore/platform/PlatformWheelEvent.h
M Source/WebCore/platform/ScrollAnimation.h
M Source/WebCore/platform/ScrollAnimationKinetic.cpp
M Source/WebCore/platform/ScrollAnimationKinetic.h
M Source/WebCore/platform/ScrollAnimationSmooth.cpp
M Source/WebCore/platform/ScrollAnimationSmooth.h
M Source/WebCore/platform/generic/ScrollAnimatorGeneric.cpp
M Source/WebKit/ChangeLog
M Source/WebKit/Shared/WebEvent.h
M Source/WebKit/Shared/WebEventConversion.cpp
M Source/WebKit/Shared/WebWheelEvent.cpp
M Source/WebKit/Shared/gtk/NativeWebWheelEventGtk.cpp
M Source/WebKit/Shared/gtk/WebEventFactory.cpp
M Source/WebKit/Shared/libwpe/WebEventFactory.cpp
M Source/WebKit/UIProcess/WebPageProxy.cpp
Log Message:
-----------
Merge r268522 - [GTK][WPE] Add support for smooth scrolling animation with async scrolling
https://bugs.webkit.org/show_bug.cgi?id=210382
Reviewed by Carlos Garcia Campos.
Source/WebCore:
Respect smooth-scrolling setting and fix deadlock issues with async
scrolling on nicosia path.
No new tests, no functional change.
* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::scrollAnimatorEnabled const):
* page/scrolling/AsyncScrollingCoordinator.h:
* page/scrolling/ThreadedScrollingTree.cpp:
(WebCore::ThreadedScrollingTree::ThreadedScrollingTree):
* page/scrolling/ThreadedScrollingTree.h:
(WebCore::ThreadedScrollingTree::scrollAnimatorEnabled const):
* page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.cpp:
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::ScrollingTreeFrameScrollingNodeNicosia):
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::commitStateAfterChildren):
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::ensureScrollAnimationKinetic):
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::ensureScrollAnimationSmooth):
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::handleWheelEvent):
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::stopScrollAnimations):
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::repositionRelatedLayers):
* page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.h:
* page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.cpp:
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::ScrollingTreeOverflowScrollingNodeNicosia):
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::commitStateAfterChildren):
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::repositionScrollingLayers):
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::ensureScrollAnimationKinetic):
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::ensureScrollAnimationSmooth):
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::handleWheelEvent):
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::stopScrollAnimations):
* page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.h:
* platform/PlatformWheelEvent.h:
* platform/ScrollAnimation.h:
* platform/ScrollAnimationKinetic.cpp:
(WebCore::ScrollAnimationKinetic::isActive const):
* platform/ScrollAnimationKinetic.h:
* platform/ScrollAnimationSmooth.cpp:
(WebCore::ScrollAnimationSmooth::scroll):
(WebCore::ScrollAnimationSmooth::isActive const):
* platform/ScrollAnimationSmooth.h:
* platform/generic/ScrollAnimatorGeneric.cpp:
(WebCore::ScrollAnimatorGeneric::ensureSmoothScrollingAnimation):
Source/WebKit:
Add hasPreciseScrollingDeltas to GTK/WPE wheel events.
No new tests needed.
* Shared/WebEventConversion.cpp:
(WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent):
* Shared/WebWheelEvent.cpp:
(WebKit::WebWheelEvent::WebWheelEvent):
(WebKit::WebWheelEvent::encode const):
(WebKit::WebWheelEvent::decode):
* Shared/WebWheelEvent.h:
* Shared/WebWheelEventCoalescer.cpp:
(WebKit::WebWheelEventCoalescer::canCoalesce):
(WebKit::WebWheelEventCoalescer::coalesce):
* Shared/gtk/NativeWebWheelEventGtk.cpp:
(WebKit::NativeWebWheelEvent::NativeWebWheelEvent):
* Shared/gtk/WebEventFactory.cpp:
(WebKit::WebEventFactory::createWebWheelEvent):
* Shared/libwpe/WebEventFactory.cpp:
(WebKit::WebEventFactory::createWebWheelEvent):
Commit: 14a609ee4c13abd51764febc555973d615bf66ac
https://github.com/WebKit/WebKit/commit/14a609ee4c13abd51764febc555973d615bf66ac
Author: Sergio Villar Senin <svillar at igalia.com>
Date: 2020-10-23 (Fri, 23 Oct 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp
Log Message:
-----------
Merge r268472 - [GLIB] Fix linking error for systems not providing <sys/memfd.h>
https://bugs.webkit.org/show_bug.cgi?id=217514
Reviewed by Carlos Garcia Campos.
* UIProcess/Launcher/glib/BubblewrapLauncher.cpp: Unconditionally check for <sys/mman.h> which should always exist instead
of <sys/memfd.h>. Also define the fallback with syscall() only for linux systems (as it requires <linux/memfd.h>).
Commit: fd12a6a24203926ffc7278159830292afe2791b6
https://github.com/WebKit/WebKit/commit/fd12a6a24203926ffc7278159830292afe2791b6
Author: Enrique Ocaña González <eocanha at igalia.com>
Date: 2020-10-23 (Fri, 23 Oct 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/glx/GLContextGLX.cpp
Log Message:
-----------
Merge r268000 - [GTK][X11] WebProcess crash in WebCore::GLContextGLX::createPbufferContext() with NVidia proprietary drivers
https://bugs.webkit.org/show_bug.cgi?id=217323
Reviewed by Adrian Perez de Castro.
The returnedElements variable might remain uninitialized if the glXChooseFBConfig()
function call fails, leading to execution of the wrong code branch later.
* platform/graphics/glx/GLContextGLX.cpp:
(WebCore::GLContextGLX::createPbufferContext): Initialized the returnedElements variable.
Commit: c323ca60e783a1c296c18ef1bdb341aa5c06ac9b
https://github.com/WebKit/WebKit/commit/c323ca60e783a1c296c18ef1bdb341aa5c06ac9b
Author: Alexander Mikhaylenko <alexm at gnome.org>
Date: 2020-10-23 (Fri, 23 Oct 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp
Log Message:
-----------
Merge r267875 - [GTK] WPE and backend versions are mixed up in webkit://gpu
https://bugs.webkit.org/show_bug.cgi?id=217210
Patch by Alexander Mikhaylenko <alexm at gnome.org> on 2020-10-02
Reviewed by Adrian Perez de Castro.
* UIProcess/API/glib/WebKitProtocolHandler.cpp:
(WebKit::WebKitProtocolHandler::handleGPU):
Commit: 2512f8d4f70e210f46d4c8b96287adb886b067be
https://github.com/WebKit/WebKit/commit/2512f8d4f70e210f46d4c8b96287adb886b067be
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2020-10-23 (Fri, 23 Oct 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/gtk/NEWS
M Source/cmake/OptionsGTK.cmake
Log Message:
-----------
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.30.2 release
.:
* Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
* gtk/NEWS: Add release notes for 2.30.2.
Commit: 7db915a1d517f30382612c6464f26a8edbcd934f
https://github.com/WebKit/WebKit/commit/7db915a1d517f30382612c6464f26a8edbcd934f
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-10-23 (Fri, 23 Oct 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/wpe/NEWS
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.30.2 release
.:
* Source/cmake/OptionsWPE.cmake: Bump version numbers.
Source/WebKit:
* wpe/NEWS: Add release notes for 2.30.2.
Commit: 3d61e043c1a165425495eec9b6d554913bada651
https://github.com/WebKit/WebKit/commit/3d61e043c1a165425495eec9b6d554913bada651
Author: Philippe Normand <pnormand at igalia.com>
Date: 2020-10-27 (Tue, 27 Oct 2020)
Changed paths:
M LayoutTests/ChangeLog
A LayoutTests/fast/images/animated-image-mp3-crash-expected.txt
A LayoutTests/fast/images/animated-image-mp3-crash.html
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/gstreamer/ImageDecoderGStreamer.cpp
Log Message:
-----------
Merge r269055 - [GStreamer] Bad handling of audio files in the ImageDecoder
https://bugs.webkit.org/show_bug.cgi?id=218239
Patch by Philippe Normand <pnormand at igalia.com> on 2020-10-27
Reviewed by Adrian Perez de Castro.
Source/WebCore:
The final main thread notification needs to be blocking otherwise the decoder might get
disposed of too early.
Test: fast/images/animated-image-mp3-crash.html
* platform/graphics/gstreamer/ImageDecoderGStreamer.cpp:
(WebCore::ImageDecoderGStreamer::pushEncodedData):
LayoutTests:
* fast/images/animated-image-mp3-crash-expected.txt: Added.
* fast/images/animated-image-mp3-crash.html: Added.
Commit: 95a180e07ecb7f2a0790b510265575491f1c6cab
https://github.com/WebKit/WebKit/commit/95a180e07ecb7f2a0790b510265575491f1c6cab
Author: Tadeu Zagallo <tzagallo at apple.com>
Date: 2020-11-13 (Fri, 13 Nov 2020)
Changed paths:
M Source/JavaScriptCore/ChangeLog
M Source/JavaScriptCore/b3/B3ReduceStrength.cpp
M Source/JavaScriptCore/b3/testb3.h
M Source/JavaScriptCore/b3/testb3_1.cpp
M Source/JavaScriptCore/b3/testb3_5.cpp
Log Message:
-----------
Merge r265891 - B3 IntRange is incorrect for negative masks
https://bugs.webkit.org/show_bug.cgi?id=215536
<rdar://problem/67130430>
Reviewed by Michael Saboff and Robin Morisset.
In the B3 ReduceStrength phase, we compute rangeForMask as (0, mask). This is correct for
positive values, but incorrect when negative. To fix it, we use `(INT_MIN & mask, INT_MAX & mask)`
as the range for negative masks.
* b3/B3ReduceStrength.cpp:
* b3/testb3.h:
* b3/testb3_1.cpp:
(run):
* b3/testb3_5.cpp:
(testCheckSubBitAnd):
Commit: 4248216d4628b4cde35b15ece16802c55d886da2
https://github.com/WebKit/WebKit/commit/4248216d4628b4cde35b15ece16802c55d886da2
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-11-16 (Mon, 16 Nov 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/Modules/webaudio/AudioContext.cpp
M Source/WebKit/ChangeLog
M Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.cpp
Log Message:
-----------
[GTK][WPE] Build broken in stable 2.30.x releases with ENABLE_VIDEO=OFF
https://bugs.webkit.org/show_bug.cgi?id=218921
Reviewed by Carlos Garcia Campos.
Source/WebCore:
No new tests needed.
* Modules/webaudio/AudioContext.cpp: Add missing Document.h include.
Source/WebKit:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner): Use ENABLE(VIDEO)
guard to prevent usage of function which does not get compiled in when video support
disabled
Commit: 2628cb15e7aa075f0b4935f57bb9dd1c79dd37f8
https://github.com/WebKit/WebKit/commit/2628cb15e7aa075f0b4935f57bb9dd1c79dd37f8
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/network/ResourceResponseBase.cpp
Log Message:
-----------
Merge r269948 - Unreviewed. Fix the build with GCC 10
Add a temporary workaround for a GCC 10 bug.
* platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::sanitizeHTTPHeaderFieldsAccordingToTainting):
Commit: 3658215d444b8d46e1e4085e770f878d50e76a51
https://github.com/WebKit/WebKit/commit/3658215d444b8d46e1e4085e770f878d50e76a51
Author: Michael Catanzaro <mcatanzaro at gnome.org>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M ChangeLog
M Source/WTF/ChangeLog
M Source/WTF/wtf/PageBlock.h
M Source/cmake/WebKitFeatures.cmake
Log Message:
-----------
Merge r269396 - Add new build option USE(64KB_PAGE_BLOCK)
https://bugs.webkit.org/show_bug.cgi?id=217989
Patch by Michael Catanzaro <mcatanzaro at gnome.org> on 2020-11-04
Reviewed by Yusuke Suzuki.
.:
Why do we need this option? Because JSC and bmalloc both want to know the userspace page
size at compile time, which is impossible on Linux because it's a runtime setting. We
cannot test the system page size at build time in hopes that it will be the same on the
target system, because (a) cross compiling wouldn't work, and (b) the build system could
use a different page size than the target system (which will be true for Fedora aarch64,
because Fedora is built using RHEL), so the best we can do is guess based on the target CPU
architecture. In practice, guessing works for all architectures except aarch64 (unless
unusual page sizes are used), but it fails for aarch64 because distros are split between
using 4 KB and 64 KB pages there. Most distros (including Fedora) use 4 KB, but RHEL uses
64 KB. SUSE actually supports both. Since there is no way to guess correctly, the best we
can do is provide an option for it. You should probably only use this if building for
aarch64. Otherwise, known CPUs except PowerPC will use 4 KB, while PowerPC and unknown CPUs
will use 64 KB (see wtf/PageBlock.h). aarch64 will continue to default to 4 KB because this
is a much better default on systems where it doesn't crash.
Having one flag will help avoid mistakes. E.g. both RHEL and SUSE were manually passing
-DENABLE_JIT=OFF and -DUSE_SYSTEM_MALLOC=ON, but we missed -DENABLE_C_LOOP=ON and
-DENABLE_SAMPLING_PROFILER=OFF, so wound up running with both JIT and cloop disabled, a
configuration not otherwise used on Linux (and not supported by GTK or WPE ports). It will
be easier to not mess up if we only have to pass one special build option. This will also
allow us to stop patching PageBlock.h downstream, because I don't like downstream patches
that we have to keep forever.
* Source/cmake/WebKitFeatures.cmake:
Source/WTF:
* wtf/PageBlock.h:
Commit: 5094cf2561aa4abbe70bc1416827a0734ab52806
https://github.com/WebKit/WebKit/commit/5094cf2561aa4abbe70bc1416827a0734ab52806
Author: Michael Catanzaro <mcatanzaro at gnome.org>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M ChangeLog
M Source/cmake/WebKitFeatures.cmake
Log Message:
-----------
Merge r269586 - Enable llint asm on aarch64 when USE(64KB_PAGE_BLOCK) is enabled
https://bugs.webkit.org/show_bug.cgi?id=218613
Patch by Michael Catanzaro <mcatanzaro at gnome.org> on 2020-11-09
Reviewed by Carlos Alberto Lopez Perez.
Normally we fall back to cloop when JIT is not supported. But on aarch64, llint asm is well-
supported, so it is safe to use that here. This will only happen on aarch64, and only when
USE(64KB_PAGE_BLOCK) is enabled, which should probably only be used by RHEL and SUSE.
Everyone else should get the JIT.
* Source/cmake/WebKitFeatures.cmake:
Commit: 4ac67409b8006beea681d6b60b54a39b26bf4c69
https://github.com/WebKit/WebKit/commit/4ac67409b8006beea681d6b60b54a39b26bf4c69
Author: Youenn Fablet <youennf at gmail.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M LayoutTests/ChangeLog
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/ChangeLog
R LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-bad-port-expected.txt
A LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-bad-port.any.html
A LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-bad-port.any.js
A LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-bad-port.any.worker-expected.txt
A LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-bad-port.any.worker.html
R LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-bad-port.html
M LayoutTests/imported/w3c/web-platform-tests/tools/wptserve/wptserve/utils.py
M LayoutTests/imported/w3c/web-platform-tests/websockets/Create-blocked-port.any-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/websockets/Create-blocked-port.any.js
M LayoutTests/imported/w3c/web-platform-tests/websockets/Create-blocked-port.any.worker-expected.txt
M Source/WTF/ChangeLog
M Source/WTF/wtf/URL.cpp
Log Message:
-----------
Merge r269436 - Consider blocking ports 5060 and 5061
https://bugs.webkit.org/show_bug.cgi?id=218557
<rdar://problem/71031479>
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
* web-platform-tests/fetch/api/request/request-bad-port.any-expected.txt: Added.
* web-platform-tests/fetch/api/request/request-bad-port.any.html: Added.
* web-platform-tests/fetch/api/request/request-bad-port.any.js: Added.
(BLOCKED_PORTS_LIST.map):
* web-platform-tests/fetch/api/request/request-bad-port.any.worker-expected.txt: Added.
* web-platform-tests/fetch/api/request/request-bad-port.any.worker.html: Added.
* web-platform-tests/fetch/api/request/request-bad-port.html: Removed.
* web-platform-tests/tools/wptserve/wptserve/utils.py:
(is_bad_port):
* web-platform-tests/websockets/Create-blocked-port.any-expected.txt:
* web-platform-tests/websockets/Create-blocked-port.any.js:
* web-platform-tests/websockets/Create-blocked-port.any.worker-expected.txt:
Source/WTF:
* wtf/URL.cpp:
(WTF::portAllowed):
LayoutTests:
* TestExpectations:
Commit: 44514e9a1466f5059ce3f97b01b845c4ec254a7f
https://github.com/WebKit/WebKit/commit/44514e9a1466f5059ce3f97b01b845c4ec254a7f
Author: Michael Catanzaro <mcatanzaro at gnome.org>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/glib/WebProcessPoolGLib.cpp
Log Message:
-----------
Merge r269504 - [GTK] dlopen libWPEBackend-fdo-1.0.so.1 instead of libWPEBackend-fdo-1.0.so
https://bugs.webkit.org/show_bug.cgi?id=218584
Patch by Michael Catanzaro <mcatanzaro at gnome.org> on 2020-11-06
Reviewed by Carlos Garcia Campos.
wpe_loader_init() tries to dlopen a development symlink, but these will not usually be
installed. It only works in the GNOME flatpak runtime because we don't use devel split
rules in the GNOME runtime, but we really ought to, and freedesktop-sdk already does, so
it's going to break upstream too once that gets implemented. It's easier for everyone if
we tackle this now. Since all major distros except Arch Linux use devel split, this patch
is really required for almost every distro to use WPE renderer.
The downside is that this makes it harder to update the wpebackend-fdo library version,
since minor changes there will now unnecessarily break WebKit. This is not good, but it's
better than forcing distros to apply this same patch downstream. I considered trying a bunch
of different library versions in a loop in order to maximize the chance of success in case
the wpebackend-fdo library version increases in the future, but it's probably nicer to just
be careful about not changing its library version until we find a better solution for this.
* UIProcess/glib/WebProcessPoolGLib.cpp:
(WebKit::WebProcessPool::platformInitializeWebProcess):
Commit: 5043b5a51cccd4f7762889c5d1c40d98aaa5b59a
https://github.com/WebKit/WebKit/commit/5043b5a51cccd4f7762889c5d1c40d98aaa5b59a
Author: Milan Crha <mcrha at redhat.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/API/gtk/DropTargetGtk3.cpp
Log Message:
-----------
Merge r269505 - [GTK] Application cannot override drag&drop callbacks
https://bugs.webkit.org/show_bug.cgi?id=218562
Patch by Milan Crha <mcrha at redhat.com> on 2020-11-06
Reviewed by Michael Catanzaro.
* UIProcess/API/gtk/DropTargetGtk3.cpp:
(WebKit::DropTarget::DropTarget): Use g_signal_connect_after(), thus
any descendants can override the callbacks.
(WebKit::DropTarget::didPerformAction): Always call gdk_drag_status(),
to have gtk+ notified about drag progress.
Commit: 85dae20f1f5365d360cb3779e0db28d36411fa81
https://github.com/WebKit/WebKit/commit/85dae20f1f5365d360cb3779e0db28d36411fa81
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/API/gtk/DropTarget.h
M Source/WebKit/UIProcess/API/gtk/DropTargetGtk3.cpp
M Source/WebKit/UIProcess/API/gtk/DropTargetGtk4.cpp
Log Message:
-----------
Merge r269620 - [GTK] Crash in WebKit::DropTarget::drop
https://bugs.webkit.org/show_bug.cgi?id=217482
Reviewed by Michael Catanzaro.
If we don't have selection data when drop is called, just return early to let leave continue. Also change
accept() to receive the drop context and position to be set after leaving any previous operation.
* UIProcess/API/gtk/DropTarget.h:
* UIProcess/API/gtk/DropTargetGtk3.cpp:
(WebKit::DropTarget::DropTarget):
(WebKit::DropTarget::accept):
(WebKit::DropTarget::drop):
* UIProcess/API/gtk/DropTargetGtk4.cpp:
(WebKit::DropTarget::DropTarget):
(WebKit::DropTarget::accept):
Commit: a53741e5e52a86abaf6272ee9f33d05b348a80e4
https://github.com/WebKit/WebKit/commit/a53741e5e52a86abaf6272ee9f33d05b348a80e4
Author: Michael Catanzaro <mcatanzaro at gnome.org>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/UserAgentQuirks.cpp
M Tools/ChangeLog
M Tools/TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp
Log Message:
-----------
Merge r269955 - [WPE][GTK] Update Outlook user agent quirk
https://bugs.webkit.org/show_bug.cgi?id=219049
Patch by Michael Catanzaro <mcatanzaro at gnome.org> on 2020-11-18
Reviewed by Carlos Garcia Campos.
Source/WebCore:
Users report that our user agent quirk for Outlook no longer works. Problem is
outlook.live.com has moved to outlook.office.com. Thanks to Adrian Vovk for rebuilding
WebKit to confirm that this patch fixes the issue.
* platform/UserAgentQuirks.cpp:
(WebCore::urlRequiresMacintoshPlatform):
Tools:
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::TEST):
Commit: ff493f89860ff3b922f3e0dbe570724bf18de303
https://github.com/WebKit/WebKit/commit/ff493f89860ff3b922f3e0dbe570724bf18de303
Author: Chris Lord <clord at igalia.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/page/scrolling/ThreadedScrollingTree.h
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.cpp
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.h
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeNicosia.cpp
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeNicosia.h
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.cpp
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.h
M Source/WebCore/platform/graphics/nicosia/NicosiaPlatformLayer.h
Log Message:
-----------
Merge r269579 - [GTK][WPE] Scrolling with mouse wheel doesn't work on iframes with async scrolling enabled
https://bugs.webkit.org/show_bug.cgi?id=214179
Reviewed by Žan Doberšek.
Implement ScrollingTree::scrollingNodeForPoint in
ScrollingTreeNicosia. This fixes overflow and iframe scrolling when
async scrolling is enabled on WPE and GTK ports.
* page/scrolling/ThreadedScrollingTree.h:
* page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.cpp:
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::commitStateBeforeChildren):
* page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.h:
* page/scrolling/nicosia/ScrollingTreeNicosia.cpp:
(WebCore::collectDescendantLayersAtPoint):
(WebCore::ScrollingTreeNicosia::scrollingNodeForPoint):
* page/scrolling/nicosia/ScrollingTreeNicosia.h:
* page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.cpp:
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::commitStateBeforeChildren):
* page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.h:
* platform/graphics/nicosia/NicosiaPlatformLayer.h:
(Nicosia::CompositionLayer::flushState):
(Nicosia::CompositionLayer::accessPending):
Commit: c178338f3e2f6ed630495a71d74c5560d7e62b03
https://github.com/WebKit/WebKit/commit/c178338f3e2f6ed630495a71d74c5560d7e62b03
Author: Chris Lord <clord at igalia.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.cpp
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.cpp
M Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.h
M Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp
M Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h
Log Message:
-----------
Merge r269909 - REGRESSION(r269579) [WPE] Many tests with scrolling flaky after this revision
https://bugs.webkit.org/show_bug.cgi?id=218859
Reviewed by Simon Fraser.
Set scrolling node ID correctly on CoordinatedGraphicsLayer.
* page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.cpp:
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::commitStateBeforeChildren):
* page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.cpp:
* page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.h:
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setScrollingNodeID):
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
Commit: c84ada0dc7c7d45f8a7372c2b55a15b03f5052bd
https://github.com/WebKit/WebKit/commit/c84ada0dc7c7d45f8a7372c2b55a15b03f5052bd
Author: Miguel Gomez <magomez at igalia.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M LayoutTests/ChangeLog
M LayoutTests/platform/gtk/TestExpectations
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/ClipStack.cpp
M Source/WebCore/platform/graphics/texmap/ClipStack.h
M Source/WebCore/platform/graphics/texmap/TextureMapper.h
M Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperGL.h
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.h
M Source/WebKit/ChangeLog
M Source/WebKit/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp
Log Message:
-----------
Merge r268923 - [GTK][WPE] Implement antialiased rounded rectangle clipping in TextureMapper
https://bugs.webkit.org/show_bug.cgi?id=174457
Reviewed by Carlos Garcia Campos.
Source/WebCore:
Implement rounded rectangle clipping in TextureMapperGL, supporting up to 10 simultaneous
rounded rectangle clips. TextureMapper::beginClip() now receives a rounded rectangle, and
it applies the appropriate clipping method as required.
The rounded rectangle clip implementation uses the fragment shader to calculate whether
each pixel is inside the defined rounded rectangles, and paints or skips it as needed.
* platform/graphics/texmap/ClipStack.cpp:
(WebCore::ClipStack::addRoundedRect):
* platform/graphics/texmap/ClipStack.h:
(WebCore::ClipStack::State::State):
(WebCore::ClipStack::roundedRectComponents const):
(WebCore::ClipStack::roundedRectInverseTransformComponents const):
(WebCore::ClipStack::roundedRectCount const):
(WebCore::ClipStack::isRoundedRectClipEnabled const):
(WebCore::ClipStack::isRoundedRectClipAllowed const):
* platform/graphics/texmap/TextureMapper.h:
* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::prepareRoundedRectClip):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::TextureMapperGL::drawTexturePlanarYUV):
(WebCore::TextureMapperGL::drawTextureSemiPlanarYUV):
(WebCore::TextureMapperGL::drawTexturePackedYUV):
(WebCore::TextureMapperGL::drawSolidColor):
(WebCore::TextureMapperGL::beginRoundedRectClip):
(WebCore::TextureMapperGL::beginClip):
* platform/graphics/texmap/TextureMapperGL.h:
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::paintSelf):
(WebCore::TextureMapperLayer::paintSelfAndChildren):
(WebCore::TextureMapperLayer::paintUsingOverlapRegions):
* platform/graphics/texmap/TextureMapperShaderProgram.cpp:
(WebCore::TextureMapperShaderProgram::create):
* platform/graphics/texmap/TextureMapperShaderProgram.h:
Source/WebKit:
Use the new TextureMapper::beginClip() method that receives a FloatRoundedRect.
* Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
(WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext):
LayoutTests:
Update expectations for passing test.
* platform/gtk/TestExpectations:
Commit: 3b381b8491392cfe8248a17da0f1e605101ff001
https://github.com/WebKit/WebKit/commit/3b381b8491392cfe8248a17da0f1e605101ff001
Author: Miguel Gomez <magomez at igalia.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/nicosia/texmap/NicosiaImageBackingTextureMapperImpl.cpp
M Source/WebCore/platform/graphics/nicosia/texmap/NicosiaImageBackingTextureMapperImpl.h
M Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp
Log Message:
-----------
Merge r269179 - [GTK] Direct composited images may not be rendered after a window resize
https://bugs.webkit.org/show_bug.cgi?id=218292
Reviewed by Carlos Garcia Campos.
Ensure that valid buffers passed for ImageBackings are not destroyed until the
CoordinatedGraphicsScene consumes them.
* platform/graphics/nicosia/texmap/NicosiaImageBackingTextureMapperImpl.cpp:
(Nicosia::ImageBackingTextureMapperImpl::flushUpdate):
* platform/graphics/nicosia/texmap/NicosiaImageBackingTextureMapperImpl.h:
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
(WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
Commit: 050c7582dda6a68204e016e71acff7835008e81c
https://github.com/WebKit/WebKit/commit/050c7582dda6a68204e016e71acff7835008e81c
Author: Miguel Gomez <magomez at igalia.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/BitmapTextureGL.cpp
Log Message:
-----------
Merge r269765 - [GTK][WPE] FilterInfo must cleared when reusing BitmapTextureGL
https://bugs.webkit.org/show_bug.cgi?id=218854
Reviewed by Carlos Garcia Campos.
Clear the FilterInfo attribute when reusing a BitmapTextureGL.
* platform/graphics/texmap/BitmapTextureGL.cpp:
(WebCore::BitmapTextureGL::didReset):
Commit: 942bff4528842fc15f0955c0c33502d83e55e89c
https://github.com/WebKit/WebKit/commit/942bff4528842fc15f0955c0c33502d83e55e89c
Author: Fujii Hironori <Hironori.Fujii at sony.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp
Log Message:
-----------
Merge r268992 - [TextureMapper] min(genIType) isn't supported for GLSL ES < 3.0
https://bugs.webkit.org/show_bug.cgi?id=218164
Reviewed by Don Olmstead.
Nothing is drawn in AC mode of WinCairo port since r268923.
r268923 added a shader code of using min of int type which is
supported since GLSL ES 3.0.
* platform/graphics/texmap/TextureMapperShaderProgram.cpp: Added fragmentTemplateES to define int type of min.
(WebCore::TextureMapperShaderProgram::create):
Commit: 627c82387fe6414ec6c780c3262e72287f352a48
https://github.com/WebKit/WebKit/commit/627c82387fe6414ec6c780c3262e72287f352a48
Author: Miguel Gomez <magomez at igalia.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp
Log Message:
-----------
Merge r269040 - [WPE] REGRESSION(r268992) Redefinition of min() inside TextureMapperShaderProgram for GLES > 3.0
https://bugs.webkit.org/show_bug.cgi?id=218231
Reviewed by Sergio Villar Senin.
Remove the definition of the min() function and replace its usage with an if. This works for
every GLSL version.
* platform/graphics/texmap/TextureMapperShaderProgram.cpp:
(WebCore::TextureMapperShaderProgram::create):
(WebCore::STRINGIFY): Deleted.
Commit: 3b8dbbabc6cb6a458091f74ca307467d4dca9068
https://github.com/WebKit/WebKit/commit/3b8dbbabc6cb6a458091f74ca307467d4dca9068
Author: Fujii Hironori <Hironori.Fujii at sony.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M LayoutTests/ChangeLog
M LayoutTests/platform/gtk/TestExpectations
M LayoutTests/platform/gtk/compositing/reflections/nested-reflection-transformed-expected.png
M LayoutTests/platform/gtk/compositing/reflections/nested-reflection-transformed2-expected.png
M LayoutTests/platform/gtk/compositing/reflections/reflection-positioning2-expected.png
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
Log Message:
-----------
Merge r269072 - [TextureMapper][GTK] Test compositing/clipping/border-radius-stacking-context-clip.html is failing
https://bugs.webkit.org/show_bug.cgi?id=214868
Reviewed by Carlos Garcia Campos.
Source/WebCore:
If a replica layer has m_state.pos, m_layerTransforms.combined
should be translated by them.
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::computeTransformsRecursive):
* platform/graphics/texmap/TextureMapperLayer.h:
LayoutTests:
* platform/gtk/TestExpectations: Unmarked compositing/clipping/border-radius-stacking-context-clip.html.
* platform/gtk/compositing/reflections/nested-reflection-transformed-expected.png: Updated.
* platform/gtk/compositing/reflections/nested-reflection-transformed2-expected.png: Updated.
* platform/gtk/compositing/reflections/reflection-positioning2-expected.png: Updated.
Commit: f7229baa635a81cbfee600bf9d2690454eece826
https://github.com/WebKit/WebKit/commit/f7229baa635a81cbfee600bf9d2690454eece826
Author: Fujii Hironori <Hironori.Fujii at sony.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
Log Message:
-----------
Merge r269116 - TextureMapperLayer::paintWithIntermediateSurface: Reduce BitmapTextures by unifying replicaSurface and mainSurface
https://bugs.webkit.org/show_bug.cgi?id=217943
Reviewed by Don Olmstead.
TextureMapperLayer::paintWithIntermediateSurface was using two
BitmapTextures for the main layer and replica layer. But, a single
BitmapTexture suffices. Create a BitmapTexture and render both
layers onto it.
No new tests, no behavior changes.
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::paintIntoSurface):
(WebCore::TextureMapperLayer::paintWithIntermediateSurface):
* platform/graphics/texmap/TextureMapperLayer.h:
Commit: b9f5295aeb324f1499c0aa518c48c79c674aa3e8
https://github.com/WebKit/WebKit/commit/b9f5295aeb324f1499c0aa518c48c79c674aa3e8
Author: Fujii Hironori <Hironori.Fujii at sony.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M LayoutTests/ChangeLog
A LayoutTests/compositing/reflections/opacity-in-reflection-expected.html
A LayoutTests/compositing/reflections/opacity-in-reflection.html
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
Log Message:
-----------
Merge r269204 - [TextureMapper] Replica layers don't blend correctly because computeOverlapRegions doesn't take TextureMapperPaintOptions::transform into account
https://bugs.webkit.org/show_bug.cgi?id=218307
Reviewed by Don Olmstead.
Source/WebCore:
Blending in replica layers didn't work as expected because
computeOverlapRegions didn't take the transform of
TextureMapperPaintOptions into account. Rendering replica layers
are achieved by using the transform.
TextureMapperLayer::paintWithIntermediateSurface also should take
the transform. commitSurface no longer needs to transform by it.
Test: compositing/reflections/opacity-in-reflection.html
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::computeOverlapRegions):
(WebCore::TextureMapperLayer::paintUsingOverlapRegions):
(WebCore::commitSurface):
(WebCore::TextureMapperLayer::paintWithIntermediateSurface):
* platform/graphics/texmap/TextureMapperLayer.h:
LayoutTests:
* compositing/reflections/opacity-in-reflection-expected.html: Added.
* compositing/reflections/opacity-in-reflection.html: Added.
Commit: 579fe23597f23efbb581b3e70b3e9e80d2d1a539
https://github.com/WebKit/WebKit/commit/579fe23597f23efbb581b3e70b3e9e80d2d1a539
Author: Fujii Hironori <Hironori.Fujii at sony.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M LayoutTests/ChangeLog
A LayoutTests/compositing/tiling/huge-layer-with-opacity-expected.html
A LayoutTests/compositing/tiling/huge-layer-with-opacity.html
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
Log Message:
-----------
Merge r269328 - [TextureMapper] Crashed in TextureMapperLayer::paintUsingOverlapRegions
https://bugs.webkit.org/show_bug.cgi?id=214817
<rdar://problem/66489090>
Reviewed by Don Olmstead.
Source/WebCore:
TextureMapperLayer::paintUsingOverlapRegions has the expression
`overlapRegion.bounds().size().area()` which crashes for a very
large layer.
computeOverlapRegions returned very large overlap and non-overlap
regions without taking the clip bounds into account.
Change computeOverlapRegions to return clipped regions.
paintUsingOverlapRegions no longer needs to clip the returned
regions.
Test: compositing/tiling/huge-layer-with-opacity.html
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::computeOverlapRegions):
(WebCore::TextureMapperLayer::paintUsingOverlapRegions):
* platform/graphics/texmap/TextureMapperLayer.h:
LayoutTests:
* compositing/tiling/huge-layer-with-opacity-expected.html: Added.
* compositing/tiling/huge-layer-with-opacity.html: Added.
Commit: 40a828aa084b1ae4330d7b5807e1a7635ac87f54
https://github.com/WebKit/WebKit/commit/40a828aa084b1ae4330d7b5807e1a7635ac87f54
Author: Fujii Hironori <Hironori.Fujii at sony.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp
Log Message:
-----------
Merge r269569 - [GraphicsLayerTextureMapper] reflection masks aren't applied
https://bugs.webkit.org/show_bug.cgi?id=218429
Reviewed by Don Olmstead.
The backing store of the mask layer of replica layers aren't
updated at all since r178111.
* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::updateBackingStoreIncludingSubLayers):
Use updateBackingStoreIncludingSubLayers for the replica layer to
update backing stores recursively instead of updating only one
layer by using updateBackingStoreIfNeeded.
Commit: 66a605fe335781e13a53e8850443dabe5ca987b1
https://github.com/WebKit/WebKit/commit/66a605fe335781e13a53e8850443dabe5ca987b1
Author: Fujii Hironori <Hironori.Fujii at sony.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M LayoutTests/ChangeLog
A LayoutTests/compositing/reflections/nested-reflection-opacity2-expected.html
A LayoutTests/compositing/reflections/nested-reflection-opacity2.html
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
Log Message:
-----------
Merge r269570 - TextureMapperLayer::computeOverlapRegions: Accumulate nested replica transform matrices recursively
https://bugs.webkit.org/show_bug.cgi?id=218364
Reviewed by Don Olmstead.
Source/WebCore:
Transformed nested reflection layers were wrongly clipped because
computeOverlapRegions applied replica transform matrices
incorrectly.
Test: compositing/reflections/nested-reflection-opacity2.html
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::resolveOverlaps):
(WebCore::TextureMapperLayer::computeOverlapRegions):
(WebCore::TextureMapperLayer::paintUsingOverlapRegions):
* platform/graphics/texmap/TextureMapperLayer.h:
LayoutTests:
* compositing/reflections/nested-reflection-opacity2-expected.html: Added.
* compositing/reflections/nested-reflection-opacity2.html: Added.
Commit: 866dfa8bf72930910c053b15cf39e0221f07b830
https://github.com/WebKit/WebKit/commit/866dfa8bf72930910c053b15cf39e0221f07b830
Author: Fujii Hironori <Hironori.Fujii at sony.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M LayoutTests/ChangeLog
A LayoutTests/compositing/filters/drop-shadow-expected.html
A LayoutTests/compositing/filters/drop-shadow.html
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp
Log Message:
-----------
Merge r269588 - [TextureMapper] The top and left sides of drop-shadow are clipped
https://bugs.webkit.org/show_bug.cgi?id=218647
Reviewed by Don Olmstead.
Source/WebCore:
TextureMapperLayer::computeOverlapRegions incorrectly calculated
the local bounding rect for top and left of outsets.
The drop-shadow was incorrectly blended with the content.
Test: compositing/filters/drop-shadow.html
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::computeOverlapRegions): Stopped
using std::max for the left and top of outsets. Stopped taking the
unite with unfilteredTargetRect because outsets are always
positive.
* platform/graphics/texmap/TextureMapperShaderProgram.cpp:
Fixed sourceOver().
LayoutTests:
* compositing/filters/drop-shadow-expected.html: Added.
* compositing/filters/drop-shadow.html: Added.
Commit: 77a72d0cf7361928606bdf5b78783862cd151376
https://github.com/WebKit/WebKit/commit/77a72d0cf7361928606bdf5b78783862cd151376
Author: Fujii Hironori <Hironori.Fujii at sony.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M LayoutTests/ChangeLog
M LayoutTests/platform/glib/TestExpectations
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
Log Message:
-----------
Merge r269599 - [TextureMapper] backdrop-filter should use the identity transform to render the root layer
https://bugs.webkit.org/show_bug.cgi?id=218699
Reviewed by Don Olmstead.
Source/WebCore:
Even thouth CSS reflections mirror the content, backdrop-filter in
the reflection doesn't. It sees through the background.
css3/filters/backdrop/backdrop-filter-with-reflection.html is the
test case.
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica):
(WebCore::TextureMapperLayer::paintIntoSurface):
(WebCore::TextureMapperLayer::paintWithIntermediateSurface):
Removed TextureMapperPaintOptions::isReplica.
LayoutTests:
* platform/glib/TestExpectations: Unmarked
css3/filters/backdrop/{backdrop-filter-with-reflection-add-backdrop.html,
backdrop-filter-with-reflection-value-change.html,backdrop-filter-with-reflection.html}
Commit: 01a08498c6e1be7ab4b4594a131ead3b76d84172
https://github.com/WebKit/WebKit/commit/01a08498c6e1be7ab4b4594a131ead3b76d84172
Author: Miguel Gomez <magomez at igalia.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M LayoutTests/ChangeLog
M LayoutTests/platform/glib/TestExpectations
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/nicosia/NicosiaPlatformLayer.h
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
M Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp
M Source/WebKit/ChangeLog
M Source/WebKit/Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp
Log Message:
-----------
Merge r269772 - [GTK][WPE] CSS backdrop overlay corners are not rounded on results.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=215445
Reviewed by Carlos Garcia Campos.
Source/WebCore:
Pass the backdropFiltersRect from CoordinatedGraphicsLayer through Nicosia to TextureMapperLayer. The
latter will use this value to clip when painting the backdrop layer.
Based on a patch created by Carlos Garcia Campos <cgarcia at igalia.com>.
* platform/graphics/nicosia/NicosiaPlatformLayer.h:
(Nicosia::CompositionLayer::flushState):
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::paintSelfAndChildren):
(WebCore::TextureMapperLayer::setBackdropFiltersRect):
* platform/graphics/texmap/TextureMapperLayer.h:
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setBackdropFilters):
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
Source/WebKit:
Pass the backdropFiltersRect from the state to TextureMapperLayer.
* Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
(WebKit::CoordinatedGraphicsScene::updateSceneState):
LayoutTests:
Update expectations for passing tests.
* platform/glib/TestExpectations:
Commit: 531ac651dc65d43914695bc86db17087a13b5101
https://github.com/WebKit/WebKit/commit/531ac651dc65d43914695bc86db17087a13b5101
Author: Fujii Hironori <Hironori.Fujii at sony.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M LayoutTests/ChangeLog
A LayoutTests/platform/glib/css3/filters/backdrop/blur-input-bounds-expected.png
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp
Log Message:
-----------
Merge r269837 - [TextureMapper] The edges of blur backdrop-filter look gradient tranparent
https://bugs.webkit.org/show_bug.cgi?id=218645
<rdar://problem/71356999>
Reviewed by Carlos Garcia Campos.
Source/WebCore:
The blur backdrop-filter needs a larger input image than an output
image. However, it's not easy to get a larger input image in the
edges of the windows. Cocoa port is doing extrapolation by
duplicating edges pixels of the input image which has the same
size with the output image (Bug 146215). Take the same approach.
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::computeOverlapRegions): Don't
inflate the local bounding rect by the outsets for backdrop
layers.
* platform/graphics/texmap/TextureMapperShaderProgram.cpp:
(sampleColorAtRadius): Don't clamp 'coord'.
LayoutTests:
* platform/glib/css3/filters/backdrop/blur-input-bounds-expected.png: Added.
Commit: 94b173d6cc277e86e10205d1b4e43aa44ab227ba
https://github.com/WebKit/WebKit/commit/94b173d6cc277e86e10205d1b4e43aa44ab227ba
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/WebProcess/Network/WebSocketChannel.cpp
Log Message:
-----------
Merge r270021 - Protect WebSocketChannel before calling client methods
https://bugs.webkit.org/show_bug.cgi?id=216791
Patch by Carlos Garcia Campos <cgarcia at igalia.com> on 2020-11-19
Reviewed by Youenn Fablet.
Ensure we keep a reference to the WebSocketChannel before calling client methods that might close the channel.
* WebProcess/Network/WebSocketChannel.cpp:
(WebKit::WebSocketChannel::close):
(WebKit::WebSocketChannel::fail):
(WebKit::WebSocketChannel::didClose):
(WebKit::WebSocketChannel::resume):
Commit: 57b881d2d13f0a415f499d24e8630cf601ef0201
https://github.com/WebKit/WebKit/commit/57b881d2d13f0a415f499d24e8630cf601ef0201
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/gtk/NEWS
M Source/cmake/OptionsGTK.cmake
Log Message:
-----------
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.30.3 release
.:
* Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
* gtk/NEWS: Add release notes for 2.30.3.
Commit: 2cd2cc7cc1d3c3253b50851536912ed5fd174f66
https://github.com/WebKit/WebKit/commit/2cd2cc7cc1d3c3253b50851536912ed5fd174f66
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/wpe/NEWS
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.30.3 release
.:
* Source/cmake/OptionsWPE.cmake: Bump version numbers.
Source/WebKit:
* wpe/NEWS: Add release notes for 2.30.3.
Commit: 478c406e015ab542de44c03975b1f1cf194d6e18
https://github.com/WebKit/WebKit/commit/478c406e015ab542de44c03975b1f1cf194d6e18
Author: Stephan Szabo <stephan.szabo at sony.com>
Date: 2020-12-15 (Tue, 15 Dec 2020)
Changed paths:
M Source/WTF/ChangeLog
M Source/WTF/wtf/text/icu/UTextProvider.h
M Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp
M Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp
M Source/WebCore/ChangeLog
M Source/WebCore/platform/text/TextCodecICU.cpp
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp
Log Message:
-----------
Merge r269325 - [WinCairo/PlayStation] ICU 68.1 no longer exposes FALSE and TRUE macros by default
https://bugs.webkit.org/show_bug.cgi?id=218522
Reviewed by Don Olmstead.
Source/WebCore:
* platform/text/TextCodecICU.cpp: Replace use of TRUE with true
Source/WebKit:
* UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp: Replace FALSE with false
Source/WTF:
Replace uses of FALSE and TRUE with false and true.
* wtf/text/icu/UTextProvider.h:
* wtf/text/icu/UTextProviderLatin1.cpp:
* wtf/text/icu/UTextProviderUTF16.cpp:
Commit: 279dc4e17ae7507bc7182cde277d04eefe854c73
https://github.com/WebKit/WebKit/commit/279dc4e17ae7507bc7182cde277d04eefe854c73
Author: Fujii Hironori <Hironori.Fujii at sony.com>
Date: 2020-12-15 (Tue, 15 Dec 2020)
Changed paths:
M LayoutTests/ChangeLog
A LayoutTests/compositing/masks/clip-path-composited-descendent-2-expected.html
A LayoutTests/compositing/masks/clip-path-composited-descendent-2.html
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
Log Message:
-----------
Merge r270698 - [TextureMapper] REGRESION(r269570): mask layer doesn't clip descendent layers
https://bugs.webkit.org/show_bug.cgi?id=219136
<rdar://problem/71742605>
Reviewed by Carlos Garcia Campos.
Source/WebCore:
computeOverlapRegions shouldn't include the descendent layer
region for layers with a mask layer. Add a new mode Mask to
ComputeOverlapRegionMode which is like Union mode but doesn't
include descendent layers.
Test: compositing/masks/clip-path-composited-descendent-2.html
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::computeOverlapRegions): Skip
children for the Mask mode.
(WebCore::TextureMapperLayer::paintUsingOverlapRegions): Use
ComputeOverlapRegionMode::Mask for a layer with mask layer.
* platform/graphics/texmap/TextureMapperLayer.h (ComputeOverlapRegionMode): Added Mask.
LayoutTests:
* compositing/masks/clip-path-composited-descendent-2-expected.html: Added.
* compositing/masks/clip-path-composited-descendent-2.html: Added.
Commit: 3cfa5fd804b8e6c6b3079142f443bbb7827a689d
https://github.com/WebKit/WebKit/commit/3cfa5fd804b8e6c6b3079142f443bbb7827a689d
Author: Miguel Gomez <magomez at igalia.com>
Date: 2020-12-15 (Tue, 15 Dec 2020)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp
Log Message:
-----------
Merge r270675 - REGRESSION(r268923): [WPE] Nothing renders on the rpi3 using the proprietary video driver
https://bugs.webkit.org/show_bug.cgi?id=219739
Reviewed by Carlos Garcia Campos.
Rewrite the GLSL code to perform rounded rectangle clipping so it works with the limitations
of the raspberrypi3 proprietary video driver.
* platform/graphics/texmap/TextureMapperShaderProgram.cpp:
Commit: 5fa7995881d1ebadf2df226003baec33fac9efdc
https://github.com/WebKit/WebKit/commit/5fa7995881d1ebadf2df226003baec33fac9efdc
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2020-12-15 (Tue, 15 Dec 2020)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/NetworkProcess/soup/WebSocketTaskSoup.cpp
Log Message:
-----------
Merge r270825 - [SOUP] WebSockets: wrong data sent in some cases with libsoup < 2.68
https://bugs.webkit.org/show_bug.cgi?id=219850
Patch by Carlos Garcia Campos <cgarcia at igalia.com> on 2020-12-15
Reviewed by Michael Catanzaro.
We are using soup_websocket_connection_send_text() when libsoup < 2.68, which expects a null terminated string,
but we are receiving a IPC::DataReference that needs to be converted to a null terminated string by taking into
account its size.
* NetworkProcess/soup/WebSocketTaskSoup.cpp:
(WebKit::WebSocketTask::sendString):
Commit: 81dace66bf00ef35f25e9bcd64505d6b5f4d04d7
https://github.com/WebKit/WebKit/commit/81dace66bf00ef35f25e9bcd64505d6b5f4d04d7
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2020-12-15 (Tue, 15 Dec 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/gtk/NEWS
M Source/cmake/OptionsGTK.cmake
Log Message:
-----------
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.30.4 release
.:
* Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
* gtk/NEWS: Add release notes for 2.30.4.
Commit: c0c040b6b4d937c9f63af18358de57b5b6530393
https://github.com/WebKit/WebKit/commit/c0c040b6b4d937c9f63af18358de57b5b6530393
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2020-12-16 (Wed, 16 Dec 2020)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/wpe/NEWS
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.30.4 release
.:
* Source/cmake/OptionsWPE.cmake: Bump version numbers.
Source/WebKit:
* wpe/NEWS: Add release notes for 2.30.4.
Commit: ad9d2ec5366260b777c683a6fff5a1bcbc267eab
https://github.com/WebKit/WebKit/commit/ad9d2ec5366260b777c683a6fff5a1bcbc267eab
Author: Jim Mason <jmason at ibinx.com>
Date: 2021-02-01 (Mon, 01 Feb 2021)
Changed paths:
M Source/WebKit/CMakeLists.txt
M Source/WebKit/ChangeLog
Log Message:
-----------
[GTK] WebKitPluginProcess is built but not installed
https://bugs.webkit.org/show_bug.cgi?id=220154
Patch by Jim Mason <jmason at ibinx.com> on 2020-12-27
Reviewed by Carlos Garcia Campos.
* CMakeLists.txt:
Commit: 7082b19c0720ccabbfc010e5b1dd0963fc7e62a3
https://github.com/WebKit/WebKit/commit/7082b19c0720ccabbfc010e5b1dd0963fc7e62a3
Author: Žan Doberšek <zdobersek at igalia.com>
Date: 2021-02-01 (Mon, 01 Feb 2021)
Changed paths:
M Source/WTF/ChangeLog
M Source/WTF/wtf/RunLoop.cpp
M Source/WTF/wtf/RunLoop.h
M Tools/ChangeLog
M Tools/TestWebKitAPI/Tests/WTF/RunLoop.cpp
Log Message:
-----------
Merge r270496 - [GLib] Leaked RunLoop objects on worker threads
https://bugs.webkit.org/show_bug.cgi?id=219232
<rdar://problem/71772277>
Patch by Zan Dobersek <zdobersek at igalia.com> on 2020-12-07
Reviewed by Geoffrey Garen.
Source/WTF:
During the thread-local RunLoop::Holder destruction, explicitly clear out
the iteration Deque objects on the held RunLoop, destroying any Function
objects that never got to execute on this thread. Generally, this allows
for any RunLoop reference stored in these objects to be released.
Specifically, this would allow for destruction of the RunLoop::Timer
object that's queued up in the JSRunLoopTimer::Manager::PerVMData
destructor but never gets dispatched because the thread (a JS worker) is
shut down before that happens. Destruction of the timer will release the
reference of the RunLoop that's held by the RunLoop::Holder, finally
enabling the RunLoop object itself be destroyed once the RunLoop::Holder
reference is let go.
* wtf/RunLoop.cpp:
(WTF::RunLoop::Holder::~Holder):
(WTF::RunLoop::threadWillExit):
* wtf/RunLoop.h:
Tools:
Add a unit test covering proper RunLoop teardown upon thread destruction
even if RunLoop references are stored in the dispatch queues.
* TestWebKitAPI/Tests/WTF/RunLoop.cpp:
(TestWebKitAPI::TEST):
Commit: 96ef55af9aa04b32a3dcd85f085af92b215e412b
https://github.com/WebKit/WebKit/commit/96ef55af9aa04b32a3dcd85f085af92b215e412b
Author: Michael Catanzaro <mcatanzaro at gnome.org>
Date: 2021-02-01 (Mon, 01 Feb 2021)
Changed paths:
M Source/JavaScriptCore/ChangeLog
M Source/JavaScriptCore/PlatformGTK.cmake
M Source/WebKit/ChangeLog
M Source/WebKit/PlatformGTK.cmake
Log Message:
-----------
Merge r271580 - [GTK] Multilib conflicts in gir files
https://bugs.webkit.org/show_bug.cgi?id=220636
Patch by Michael Catanzaro <mcatanzaro at gnome.org> on 2021-01-18
Reviewed by Carlos Garcia Campos.
Source/JavaScriptCore:
* PlatformGTK.cmake:
Source/WebKit:
By passing --sources-top-dirs to g-ir-scanner, we ensure all paths in the generated gir
files are relative to the toplevel builddir. This avoids multilib conflicts when the
builddir contains the target architecture.
* PlatformGTK.cmake:
Commit: 04d858a22f767e89bd3bf4da6c9c87fe5e98fbbc
https://github.com/WebKit/WebKit/commit/04d858a22f767e89bd3bf4da6c9c87fe5e98fbbc
Author: Lauro Moura <lmoura at igalia.com>
Date: 2021-02-01 (Mon, 01 Feb 2021)
Changed paths:
M ChangeLog
M Source/JavaScriptCore/ChangeLog
M Source/JavaScriptCore/PlatformGTK.cmake
M Source/WebKit/ChangeLog
M Source/WebKit/PlatformGTK.cmake
M Source/cmake/FindGObjectIntrospection.cmake
Log Message:
-----------
Merge r271608 - REGRESSION(r271580) [GTK] LTS/Debian build failure due to unsupported g-ir-scanner parameter
https://bugs.webkit.org/show_bug.cgi?id=220730
Reviewed by Philippe Normand.
.:
* Source/cmake/FindGObjectIntrospection.cmake: Expose variable about the
presence of --sources-top-dirs.
Source/JavaScriptCore:
No new behavior. No new tests.
* PlatformGTK.cmake: Expose --sources-top-dirs only if available.
Source/WebKit:
No new behavior. No new tests.
* PlatformGTK.cmake: Expose --sources-top-dirs only if available.
Commit: 2d97056952b10cadd3a75e39d0adcabebe3d01a6
https://github.com/WebKit/WebKit/commit/2d97056952b10cadd3a75e39d0adcabebe3d01a6
Author: Michael Catanzaro <mcatanzaro at gnome.org>
Date: 2021-02-01 (Mon, 01 Feb 2021)
Changed paths:
M Source/JavaScriptCore/ChangeLog
M Source/JavaScriptCore/assembler/ARM64Assembler.h
M Source/JavaScriptCore/assembler/AbstractMacroAssembler.h
M Source/JavaScriptCore/assembler/LinkBuffer.cpp
M Source/JavaScriptCore/jit/ExecutableAllocator.cpp
M Source/JavaScriptCore/jit/ExecutableAllocator.h
M Source/WTF/ChangeLog
M Source/WTF/wtf/PlatformEnable.h
Log Message:
-----------
Merge r270377 - aarch64 llint does not build with JIT disabled
https://bugs.webkit.org/show_bug.cgi?id=219288
<rdar://problem/71855960>
Source/JavaScriptCore:
Patch by Michael Catanzaro <mcatanzaro at gnome.org> on 2020-12-02
Reviewed by Darin Adler.
* assembler/ARM64Assembler.h: Rename USE(JUMP_ISLANDS) to ENABLE(JUMP_ISLANDS).
(JSC::ARM64Assembler::replaceWithJump):
(JSC::ARM64Assembler::linkJumpOrCall):
* assembler/AbstractMacroAssembler.h: Rename USE(JUMP_ISLANDS) to ENABLE(JUMP_ISLANDS).
(JSC::AbstractMacroAssembler::prepareForAtomicRepatchNearCallConcurrently):
* assembler/LinkBuffer.cpp:
(JSC::LinkBuffer::copyCompactAndLinkCode): Guard JIT-specific code with ENABLE(JIT).
* jit/ExecutableAllocator.cpp: Rename USE(JUMP_ISLANDS) to ENABLE(JUMP_ISLANDS).
(JSC::initializeJITPageReservation):
* jit/ExecutableAllocator.h: Rename USE(JUMP_ISLANDS) to ENABLE(JUMP_ISLANDS).
Source/WTF:
Rename USE(JUMP_ISLANDS) to ENABLE(JUMP_ISLANDS), and make it depend on ENABLE(JIT). We need
it to depend on ENABLE(JIT) to fix the build, but this is awkward to do otherwise, because
USE macros are defined in PlatformUse.h before ENABLE macros in PlatformEnable.h. But it
makes sense, since USE macros should be used for "a particular third-party library or
optional OS service," and jump islands are neither, so ENABLE is more suitable anyway.
Patch by Michael Catanzaro <mcatanzaro at gnome.org> on 2020-12-02
Reviewed by Darin Adler.
* wtf/PlatformEnable.h:
* wtf/PlatformUse.h:
Commit: dfff805b0e20d06fb3819ccb8144db81f0f03624
https://github.com/WebKit/WebKit/commit/dfff805b0e20d06fb3819ccb8144db81f0f03624
Author: Michael Catanzaro <mcatanzaro at gnome.org>
Date: 2021-02-01 (Mon, 01 Feb 2021)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/UserAgentQuirks.cpp
M Source/WebCore/platform/UserAgentQuirks.h
M Source/WebCore/platform/glib/UserAgentGLib.cpp
M Tools/ChangeLog
M Tools/TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp
Log Message:
-----------
Merge r270168 - [WPE][GTK] Use Internet Explorer quirk for Google Docs
https://bugs.webkit.org/show_bug.cgi?id=219278
Patch by Michael Catanzaro <mcatanzaro at gnome.org> on 2020-11-26
Reviewed by Carlos Garcia Campos.
Source/WebCore:
Since r266584, we've suffered from an annoying unsupported browser warning when using Google
Docs. We don't have many options to avoid it. I'm afraid that Firefox or Chrome quirks are
too risky, since these seem to tempt Google into using web platform features that WebKit
does not support. The safest quirk is the macOS platform quirk, but that doesn't work well
here because it breaks various keyboard shortcuts like Ctrl+A and Ctrl+Z. So an Internet
Explorer quirk is really the last card we have left.
I think this is the safest Google quirk we've ever had, in that it's pretty unlikely that
Google will try to send Internet Explorer anything that doesn't work in WebKit. However, it
will break eventually, whenever Google decides that Internet Explorer is no longer
supported. I guess that date is probably at least five years away, so we can only hope that
Google drops this anticompetitive nonsense before then.
P.S. Let's also switch Google Drive to this new quirk. The unsupported browser warning on
Google Drive seems to be completely independent, but the IE quirk seems safer that the
existing Firefox quirk, so why not?
* platform/UserAgentQuirks.cpp:
(WebCore::isGoogle):
(WebCore::urlRequiresInternetExplorerBrowser):
(WebCore::urlRequiresWindowsPlatform):
(WebCore::urlRequiresLinuxDesktopPlatform):
(WebCore::UserAgentQuirks::quirksForURL):
(WebCore::UserAgentQuirks::stringForQuirk):
* platform/UserAgentQuirks.h:
* platform/glib/UserAgentGLib.cpp:
(WebCore::buildUserAgentString):
Tools:
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::assertUserAgentForURLHasChromeBrowserQuirk):
(TestWebKitAPI::assertUserAgentForURLHasFirefoxBrowserQuirk):
(TestWebKitAPI::assertUserAgentForURLHasInternetExplorerBrowserQuirk):
(TestWebKitAPI::assertUserAgentForURLHasWindowsPlatformQuirk):
(TestWebKitAPI::TEST):
Commit: 64fc76b2d0e0d259f38476d85a8f1b67eb81c48f
https://github.com/WebKit/WebKit/commit/64fc76b2d0e0d259f38476d85a8f1b67eb81c48f
Author: Philippe Normand <pnormand at igalia.com>
Date: 2021-02-11 (Thu, 11 Feb 2021)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/audio/gstreamer/AudioSourceProviderGStreamer.cpp
Log Message:
-----------
Merge r270184 - [GStreamer] AudioSourceProvider can potentially invoke an already-freed client
https://bugs.webkit.org/show_bug.cgi?id=217952
Reviewed by Xabier Rodriguez-Calvar.
* platform/audio/gstreamer/AudioSourceProviderGStreamer.cpp:
(WebCore::AudioSourceProviderGStreamer::deinterleavePadsConfigured): Check the provider has
a client before setting up the audio format.
Commit: bbba6bd7de984a03dd6a26c51abfa1270f38b60a
https://github.com/WebKit/WebKit/commit/bbba6bd7de984a03dd6a26c51abfa1270f38b60a
Author: Xabier Rodriguez-Calvar <calvaris at igalia.com>
Date: 2021-02-11 (Thu, 11 Feb 2021)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/audio/AudioSourceProviderClient.h
M Source/WebCore/platform/audio/gstreamer/AudioSourceProviderGStreamer.cpp
M Source/WebCore/platform/audio/gstreamer/AudioSourceProviderGStreamer.h
Log Message:
-----------
Merge r272646 - [GStreamer] Make m_client WeakPtr in AudioSourceProviderGStreamer
https://bugs.webkit.org/show_bug.cgi?id=217952
Reviewed by Carlos Garcia Campos.
* platform/audio/AudioSourceProviderClient.h: Turned into
CanMakeWeakPtr.
* platform/audio/gstreamer/AudioSourceProviderGStreamer.cpp:
(WebCore::AudioSourceProviderGStreamer::setClient): Adapt to use
WeakPtr.
* platform/audio/gstreamer/AudioSourceProviderGStreamer.h: Turned
m_client into WeakPtr.
Commit: 86e8b80c954b23ca53bdcc64c00653dfb5fe0abe
https://github.com/WebKit/WebKit/commit/86e8b80c954b23ca53bdcc64c00653dfb5fe0abe
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2021-02-11 (Thu, 11 Feb 2021)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/gtk/NEWS
M Source/cmake/OptionsGTK.cmake
Log Message:
-----------
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.30.5 release
.:
* Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
* gtk/NEWS: Add release notes for 2.30.5.
Commit: 5c0e297b1e81f3e598acf2000d10b8c446a42960
https://github.com/WebKit/WebKit/commit/5c0e297b1e81f3e598acf2000d10b8c446a42960
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2021-02-12 (Fri, 12 Feb 2021)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/wpe/NEWS
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.30.5 release
.:
* Source/cmake/OptionsWPE.cmake: Bump version numbers.
Source/WebKit:
* wpe/NEWS: Add release notes for 2.30.5.
Commit: 0f8615351bf03124844fbc696da25c7cf77cd620
https://github.com/WebKit/WebKit/commit/0f8615351bf03124844fbc696da25c7cf77cd620
Author: Michael Catanzaro <mcatanzaro at gnome.org>
Date: 2021-03-18 (Thu, 18 Mar 2021)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/platform/UserAgentQuirks.cpp
M Source/WebCore/platform/glib/UserAgentGLib.cpp
M Tools/ChangeLog
M Tools/TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp
Log Message:
-----------
Merge r272921 - [GTK] Need new user agent quirk for Google Docs and Google Drive
https://bugs.webkit.org/show_bug.cgi?id=221845
Patch by Michael Catanzaro <mcatanzaro at gnome.org> on 2021-02-16
Reviewed by Adrian Perez de Castro.
Source/WebCore:
Switch Google Docs to use a Chrome browser quirk instead of an Internet Explorer quirk.
Remove the Google Drive quirk altogether. Remove the Internet Explorer and Windows platform
quirks, which are no longer used. Retarget the Google Docs quirk to apply only to
docs.google.com because we no longer need to send the quirk to accounts.youtube.com for it
to be effective. Lastly, update Chrome and Firefox version strings for good measure.
* platform/UserAgentQuirks.cpp:
(WebCore::urlRequiresChromeBrowser):
(WebCore::urlRequiresLinuxDesktopPlatform):
(WebCore::UserAgentQuirks::quirksForURL):
(WebCore::UserAgentQuirks::stringForQuirk):
(WebCore::urlRequiresInternetExplorerBrowser): Deleted.
(WebCore::urlRequiresWindowsPlatform): Deleted.
* platform/glib/UserAgentGLib.cpp:
(WebCore::buildUserAgentString):
Tools:
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::assertUserAgentForURLHasChromeBrowserQuirk):
(TestWebKitAPI::assertUserAgentForURLHasFirefoxBrowserQuirk):
(TestWebKitAPI::assertUserAgentForURLHasLinuxPlatformQuirk):
(TestWebKitAPI::assertUserAgentForURLHasMacPlatformQuirk):
(TestWebKitAPI::TEST):
(TestWebKitAPI::assertUserAgentForURLHasInternetExplorerBrowserQuirk): Deleted.
(TestWebKitAPI::assertUserAgentForURLHasWindowsPlatformQuirk): Deleted.
Commit: 807fa65c5ba0ec3772789f1003c2c8a21d179ea9
https://github.com/WebKit/WebKit/commit/807fa65c5ba0ec3772789f1003c2c8a21d179ea9
Author: Chris Dumez <cdumez at apple.com>
Date: 2021-03-18 (Thu, 18 Mar 2021)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/css/MediaQueryMatcher.cpp
M Source/WebCore/dom/EventTarget.cpp
M Source/WebCore/page/FrameView.cpp
M Source/WebCore/page/Page.h
M Source/WebCore/page/Quirks.cpp
M Source/WebCore/page/Quirks.h
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/UIProcess/ios/WKApplicationStateTrackingView.mm
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
M Source/WebKit/WebProcess/WebPage/WebPage.h
M Source/WebKit/WebProcess/WebPage/WebPage.messages.in
Log Message:
-----------
Merge r265623 - REGRESSION (r260684): Messages YouTube inline video: after Multitasking away and Back, Audio is heard but icon indicates "muted"
https://bugs.webkit.org/show_bug.cgi?id=215453
<rdar://problem/66136673>
Reviewed by Tim Horton.
Source/WebCore:
r260684 silenced all JS events during the snapshot sequence that occurs whenever the user homes out of Safari.
This was meant to address compatibility with websites that did not expect various resize/orientationchange
events when homing out. However, the snapshot sequence is fairly long and this was causing us to silence JS
events which have nothing to do with the snapshot sequence, like window.postMessage()'s message events. This is
what caused this regression.
To address the issue, this patch basically reverts r260684 and deals with websites-compatibility issues via
less risky site-specific and event-specific quirks:
- We silence Window resize events on nytimes.com to address <rdar://problem/59763843>.
- We silence Window resize events and MediaQueryList change events on twitter.com to address <rdar://problem/58804852>
and <rdar://problem/61731801>.
* css/MediaQueryMatcher.cpp:
(WebCore::MediaQueryMatcher::evaluateAll):
* dom/EventTarget.cpp:
(WebCore::EventTarget::fireEventListeners):
* page/FrameView.cpp:
(WebCore::FrameView::sendResizeEventIfNeeded):
* page/Page.h:
(WebCore::Page::isTakingSnapshotsForApplicationSuspension const):
(WebCore::Page::setIsTakingSnapshotsForApplicationSuspension):
(WebCore::Page::shouldFireEvents const): Deleted.
(WebCore::Page::setShouldFireEvents): Deleted.
* page/Quirks.cpp:
(WebCore::Quirks::shouldSilenceWindowResizeEvents const):
(WebCore::Quirks::shouldSilenceMediaQueryListChangeEvents const):
* page/Quirks.h:
Source/WebKit:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setIsDoingSnapshotSequence):
(WebKit::WebPageProxy::setShouldFireEvents): Deleted.
* UIProcess/WebPageProxy.h:
* UIProcess/ios/WKApplicationStateTrackingView.mm:
(-[WKApplicationStateTrackingView _willBeginSnapshotSequence]):
(-[WKApplicationStateTrackingView _didCompleteSnapshotSequence]):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setIsDoingSnapshotSequence):
(WebKit::WebPage::setShouldFireEvents): Deleted.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
Commit: e917816c75c1786b32e65243956db4203ae34e02
https://github.com/WebKit/WebKit/commit/e917816c75c1786b32e65243956db4203ae34e02
Author: Brady Eidson <beidson at apple.com>
Date: 2021-03-18 (Thu, 18 Mar 2021)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp
M Source/WebKit/UIProcess/Network/NetworkProcessProxy.h
M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp
M Tools/ChangeLog
M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm
Log Message:
-----------
Merge r266798 - Make sure WKWebsiteDataStore operations reuse existing process pools even when all WKWebViews have closed.
<rdar://problem/62978295> and https://bugs.webkit.org/show_bug.cgi?id=216317
Reviewed by Geoffrey Garen.
Source/WebKit:
Covered by new API test.
When WebsiteDataStores are gathering all the NetworkProcesses they might need to message, they miss some
obvious candidates if there are no longer any related WKWebViews.
Fix that by tracking which sessions a NetworkProcess knows about.
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::addSession):
(WebKit::NetworkProcessProxy::hasSession const):
(WebKit::NetworkProcessProxy::removeSession):
* UIProcess/Network/NetworkProcessProxy.h:
* UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::isAssociatedProcessPool const):
Tools:
* TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
Commit: 0172de7274030fc3393b7cec15489e00b83ed02d
https://github.com/WebKit/WebKit/commit/0172de7274030fc3393b7cec15489e00b83ed02d
Author: Chris Dumez <cdumez at apple.com>
Date: 2021-03-18 (Thu, 18 Mar 2021)
Changed paths:
M Source/WebCore/ChangeLog
M Source/WebCore/page/FrameView.cpp
Log Message:
-----------
Merge r267287 - Crash under WebCore::shouldResetFocusNavigationStartingNode()
https://bugs.webkit.org/show_bug.cgi?id=216714
<rdar://problem/68132047>
Reviewed by Darin Adler.
Protect anchorElement in FrameView::scrollToFragmentInternal() to make sure
it stays alive until the time we pass it to setFocusNavigationStartingNode().
* page/FrameView.cpp:
(WebCore::FrameView::scrollToFragmentInternal):
Commit: 3b798aab71cc20953a6baa19b0cc87e08b7ac54d
https://github.com/WebKit/WebKit/commit/3b798aab71cc20953a6baa19b0cc87e08b7ac54d
Author: Youenn Fablet <youennf at gmail.com>
Date: 2021-03-18 (Thu, 18 Mar 2021)
Changed paths:
M LayoutTests/ChangeLog
M LayoutTests/imported/w3c/ChangeLog
M LayoutTests/webrtc/rtcpeerconnection-error-messages-expected.txt
M LayoutTests/webrtc/stun-server-filtering.html
M Source/WebCore/CMakeLists.txt
M Source/WebCore/ChangeLog
M Source/WebCore/DerivedSources-input.xcfilelist
M Source/WebCore/DerivedSources-output.xcfilelist
M Source/WebCore/DerivedSources.make
M Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp
M Source/WebCore/Modules/mediastream/RTCPeerConnection.h
M Source/WebCore/Modules/mediastream/RTCPeerConnection.idl
A Source/WebCore/Modules/mediastream/RTCPeerConnectionIceErrorEvent.cpp
A Source/WebCore/Modules/mediastream/RTCPeerConnectionIceErrorEvent.h
A Source/WebCore/Modules/mediastream/RTCPeerConnectionIceErrorEvent.idl
M Source/WebCore/Sources.txt
M Source/WebCore/bindings/js/WebCoreBuiltinNames.h
M Source/WebCore/dom/EventNames.h
M Source/WebCore/dom/EventNames.in
Log Message:
-----------
Merge r270101 - Add support for RTCPeerConnection.onicecandidateerror event
https://bugs.webkit.org/show_bug.cgi?id=169644
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
* web-platform-tests/webrtc/idlharness.https.window-expected.txt:
Source/WebCore:
Expose RTCPeerConnection.onicecandidateerror and use it for wrong STUN/TURN server URLs.
For that matter, add RTCPeerConnectionIceErrorEvent as per spec with a slight change to the init directory to keep the same terminology between event and init dictionary.
Covered by updated webrtc/stun-server-filtering.html test.
* CMakeLists.txt:
* DerivedSources-input.xcfilelist:
* DerivedSources-output.xcfilelist:
* DerivedSources.make:
* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::iceServersFromConfiguration):
(WebCore::iceServersFromConfiguration): Deleted.
* Modules/mediastream/RTCPeerConnection.h:
* Modules/mediastream/RTCPeerConnection.idl:
* Modules/mediastream/RTCPeerConnectionIceErrorEvent.cpp: Added.
(WebCore::RTCPeerConnectionIceErrorEvent::create):
(WebCore::RTCPeerConnectionIceErrorEvent::RTCPeerConnectionIceErrorEvent):
(WebCore::RTCPeerConnectionIceErrorEvent::eventInterface const):
* Modules/mediastream/RTCPeerConnectionIceErrorEvent.h: Added.
* Modules/mediastream/RTCPeerConnectionIceErrorEvent.idl: Added.
* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/WebCoreBuiltinNames.h:
* dom/EventNames.h:
* dom/EventNames.in:
LayoutTests:
* webrtc/rtcpeerconnection-error-messages-expected.txt:
* webrtc/stun-server-filtering.html:
Commit: cccd1da691e069702aba0a80daf4e19788f98da2
https://github.com/WebKit/WebKit/commit/cccd1da691e069702aba0a80daf4e19788f98da2
Author: Youenn Fablet <youennf at gmail.com>
Date: 2021-03-18 (Thu, 18 Mar 2021)
Changed paths:
M LayoutTests/imported/w3c/ChangeLog
M LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-bad-port.any.js
M LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-bad-port.any.worker-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/websockets/Create-blocked-port.any.js
M Source/WTF/ChangeLog
M Source/WTF/wtf/URL.cpp
Log Message:
-----------
Merge r270321 - Update list of block ports according fetch spec
https://bugs.webkit.org/show_bug.cgi?id=219154
Reviewed by Sam Weinig.
LayoutTests/imported/w3c:
* web-platform-tests/fetch/api/request/request-bad-port.any-expected.txt:
* web-platform-tests/fetch/api/request/request-bad-port.any.js:
* web-platform-tests/fetch/api/request/request-bad-port.any.worker-expected.txt:
* web-platform-tests/websockets/Create-blocked-port.any-expected.txt:
* web-platform-tests/websockets/Create-blocked-port.any.js:
* web-platform-tests/websockets/Create-blocked-port.any.worker-expected.txt:
Source/WTF:
* wtf/URL.cpp:
(WTF::portAllowed):
Commit: 32a48e13287bfffe453dcf1f6d8b06046878c706
https://github.com/WebKit/WebKit/commit/32a48e13287bfffe453dcf1f6d8b06046878c706
Author: Chris Dumez <cdumez at apple.com>
Date: 2021-03-18 (Thu, 18 Mar 2021)
Changed paths:
M LayoutTests/ChangeLog
A LayoutTests/http/tests/security/block-top-level-navigations-by-third-party-sandboxed-iframe-expected.txt
A LayoutTests/http/tests/security/block-top-level-navigations-by-third-party-sandboxed-iframe.html
A LayoutTests/http/tests/security/resources/navigate-top-level-frame-to-failure-page-via-sandboxed-iframe.html
M Source/WebCore/ChangeLog
M Source/WebCore/dom/Document.cpp
Log Message:
-----------
Merge r270367 - Block suspicious top level navigations by iframes even if sandbox=allow-top-navigation is specified
https://bugs.webkit.org/show_bug.cgi?id=219408
<rdar://problem/71049726>
Reviewed by Geoffrey Garen.
Source/WebCore:
Block suspicious top level navigations by iframes even if sandbox=allow-top-navigation is specified,
when the parent of the sandboxed iframe is not first-party.
Test: http/tests/security/block-top-level-navigations-by-third-party-sandboxed-iframe.html
* dom/Document.cpp:
(WebCore::Document::isNavigationBlockedByThirdPartyIFrameRedirectBlocking):
LayoutTests:
Add layout test coverage.
* http/tests/security/block-top-level-navigations-by-third-party-sandboxed-iframe-expected.txt: Added.
* http/tests/security/block-top-level-navigations-by-third-party-sandboxed-iframe.html: Added.
* http/tests/security/resources/navigate-top-level-frame-to-failure-page-via-sandboxed-iframe.html: Added.
Commit: 8fbd4d2238e544775d3cadfafb5b0c5214012985
https://github.com/WebKit/WebKit/commit/8fbd4d2238e544775d3cadfafb5b0c5214012985
Author: Chris Dumez <cdumez at apple.com>
Date: 2021-03-18 (Thu, 18 Mar 2021)
Changed paths:
M LayoutTests/ChangeLog
A LayoutTests/http/tests/security/block-top-level-navigations-by-sandboxed-iframe-with-propagated-user-gesture-expected.txt
A LayoutTests/http/tests/security/block-top-level-navigations-by-sandboxed-iframe-with-propagated-user-gesture.html
A LayoutTests/http/tests/security/resources/navigate-top-level-frame-to-failure-page-via-message-handler.html
M Source/WebCore/ChangeLog
M Source/WebCore/dom/Document.cpp
M Source/WebCore/dom/UserGestureIndicator.cpp
M Source/WebCore/dom/UserGestureIndicator.h
Log Message:
-----------
Merge r270373 - iframe with `sandbox=allow-top-navigation-by-user-activation` can navigate top frame when the user interacts with an iframe from another origin
https://bugs.webkit.org/show_bug.cgi?id=219413
<rdar://problem/64887657>
Reviewed by Geoffrey Garen.
Source/WebCore:
An iframe with `sandbox=allow-top-navigation-by-user-activation` can navigate the top frame when the user
interacts with an frame from another origin. This is not strict enough and does not match the behavior of
Chrome.
In Chrome, the user activation is only valid for the purpose of navigation if the user interacted with either:
- The iframe triggering the navigation
- A descendant iframe of the iframe triggering the navigation
- A frame from the same origin as the iframe triggering the navigation
This patch aligns our behavior with Chrome's.
Test: http/tests/security/block-top-level-navigations-by-sandboxed-iframe-with-propagated-user-gesture.html
* dom/Document.cpp:
(WebCore::Document::canNavigateInternal):
* dom/UserGestureIndicator.cpp:
(WebCore::UserGestureToken::UserGestureToken):
(WebCore::UserGestureToken::isValidForDocument const):
(WebCore::UserGestureIndicator::processingUserGesture):
* dom/UserGestureIndicator.h:
(WebCore::UserGestureToken::create):
LayoutTests:
Add layout test coverage.
* http/tests/security/block-top-level-navigations-by-sandboxed-iframe-with-propagated-user-gesture-expected.txt: Added.
* http/tests/security/block-top-level-navigations-by-sandboxed-iframe-with-propagated-user-gesture.html: Added.
* http/tests/security/resources/navigate-top-level-frame-to-failure-page-via-message-handler.html: Added.
Commit: 70661b7e60103960ae75661f29a2bf803dcd5f67
https://github.com/WebKit/WebKit/commit/70661b7e60103960ae75661f29a2bf803dcd5f67
Author: Tadeu Zagallo <tzagallo at apple.com>
Date: 2021-03-18 (Thu, 18 Mar 2021)
Changed paths:
M Source/JavaScriptCore/ChangeLog
M Source/JavaScriptCore/runtime/JSPropertyNameEnumerator.h
Log Message:
-----------
Merge r271144 - propertyNameEnumerator must check it can still take the fast path after getGenericPropertyNames
https://bugs.webkit.org/show_bug.cgi?id=219957
<rdar://71156284>
Reviewed by Yusuke Suzuki.
We need to check if we still `canAccessPropertiesQuicklyForEnumeration` on
`structureAfterGettingPropertyNames`, since we might call out out to a proxy's
`getPrototypeOf` callback through `getGenericPropertyNames`.
* runtime/JSPropertyNameEnumerator.h:
(JSC::propertyNameEnumerator):
Commit: 27cb7bb0299766cb969e6e6b06b6ec8c03bb6624
https://github.com/WebKit/WebKit/commit/27cb7bb0299766cb969e6e6b06b6ec8c03bb6624
Author: Yusuke Suzuki <ysuzuki at apple.com>
Date: 2021-03-18 (Thu, 18 Mar 2021)
Changed paths:
M Source/JavaScriptCore/ChangeLog
M Source/JavaScriptCore/dfg/DFGPreciseLocalClobberize.h
Log Message:
-----------
Merge r271544 - [JSC] Clean up DFGPreciseLocalClobberize to avoid duplicate code
https://bugs.webkit.org/show_bug.cgi?id=220670
Reviewed by Filip Pizlo.
This patch cleans up DFGPreciseLocalClobberize by extracting code to lambda to remove duplicate code.
* dfg/DFGPreciseLocalClobberize.h:
(JSC::DFG::PreciseLocalClobberizeAdaptor::readTop):
Commit: 49170e8549e939f0cb64d2ce2774682a9afca1db
https://github.com/WebKit/WebKit/commit/49170e8549e939f0cb64d2ce2774682a9afca1db
Author: Carlos Garcia Campos <carlosgc at webkit.org>
Date: 2021-03-18 (Thu, 18 Mar 2021)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/gtk/NEWS
M Source/cmake/OptionsGTK.cmake
Log Message:
-----------
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.30.6 release
.:
* Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
* gtk/NEWS: Add release notes for 2.30.6.
Commit: 3dc67d0e08ab86d4abf01bed2431b6eafd5a9c4c
https://github.com/WebKit/WebKit/commit/3dc67d0e08ab86d4abf01bed2431b6eafd5a9c4c
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2021-03-19 (Fri, 19 Mar 2021)
Changed paths:
M Source/WebKit/ChangeLog
M Source/WebKit/GPUProcess/media/RemoteMediaResourceLoader.cpp
M Source/WebKit/NetworkProcess/webrtc/NetworkRTCProvider.cpp
Log Message:
-----------
Unreviewed non-unified build fixes
* GPUProcess/media/RemoteMediaResourceLoader.cpp:
* NetworkProcess/webrtc/NetworkRTCProvider.cpp:
Commit: 31da42f0b1ee02a9a4920486ec8fcb54f7e0be84
https://github.com/WebKit/WebKit/commit/31da42f0b1ee02a9a4920486ec8fcb54f7e0be84
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2021-03-23 (Tue, 23 Mar 2021)
Changed paths:
M ChangeLog
M Source/WebKit/ChangeLog
M Source/WebKit/wpe/NEWS
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.30.6 release
.:
* Source/cmake/OptionsWPE.cmake: Bump version numbers.
Source/WebKit:
* wpe/NEWS: Add release notes for 2.30.6.
Compare: https://github.com/WebKit/WebKit/compare/3b2f1f256e39%5E...31da42f0b1ee
More information about the webkit-changes
mailing list