Title: [211394] trunk
Revision 211394
Author za...@apple.com
Date 2017-01-30 16:17:04 -0800 (Mon, 30 Jan 2017)
Log Message
Simple line layout: Small tweaks to improve performance.
https://bugs.webkit.org/show_bug.cgi?id=167611
Reviewed by Simon Fraser.
PerformanceTests:
* Layout/simple-line-layout-non-repeating-text.html: Added.
Source/WebCore:
This is ~10% progression on the attached test case (paragraphs with non-redundant content).
median: 102.08 runs/s -> median: 114.25 runs/s
* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::LineState::appendFragmentAndCreateRunIfNeeded):
* rendering/SimpleLineLayoutFlowContents.cpp:
(WebCore::SimpleLineLayout::initializeSegments):
(WebCore::SimpleLineLayout::FlowContents::FlowContents):
* rendering/SimpleLineLayoutFlowContents.h:
* rendering/SimpleLineLayoutTextFragmentIterator.cpp:
(WebCore::SimpleLineLayout::TextFragmentIterator::nextNonWhitespacePosition):
(WebCore::SimpleLineLayout::TextFragmentIterator::skipToNextPosition):
* rendering/SimpleLineLayoutTextFragmentIterator.h:
Modified Paths
trunk/PerformanceTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/SimpleLineLayout.cpp
trunk/Source/WebCore/rendering/SimpleLineLayoutFlowContents.cpp
trunk/Source/WebCore/rendering/SimpleLineLayoutFlowContents.h
trunk/Source/WebCore/rendering/SimpleLineLayoutTextFragmentIterator.cpp
trunk/Source/WebCore/rendering/SimpleLineLayoutTextFragmentIterator.h
Added Paths
trunk/PerformanceTests/Layout/simple-line-layout-non-repeating-text.html
Diff
Modified: trunk/PerformanceTests/ChangeLog (211393 => 211394)
--- trunk/PerformanceTests/ChangeLog 2017-01-31 00:11:49 UTC (rev 211393)
+++ trunk/PerformanceTests/ChangeLog 2017-01-31 00:17:04 UTC (rev 211394)
@@ -1,3 +1,13 @@
+2017-01-30 Zalan Bujtas
+
+Simple line layout: Small tweaks to improve performance.
+https://bugs.webkit.org/show_bug.cgi?id=167611
+
+
+Reviewed by Simon Fraser.
+
+* Layout/simple-line-layout-non-repeating-text.html: Added.
+
2017-01-13 Said Abou-Hallawa
26 MotionMark performance tests failing
Added: trunk/PerformanceTests/Layout/simple-line-layout-non-repeating-text.html (0 => 211394)
--- trunk/PerformanceTests/Layout/simple-line-layout-non-repeating-text.html (rev 0)
+++ trunk/PerformanceTests/Layout/simple-line-layout-non-repeating-text.html 2017-01-31 00:17:04 UTC (rev 211394)
@@ -0,0 +1,179 @@
+
+
+
+Line breaking performance test
+
+
+
+
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc iaculis eu turpis varius euismod. Curabitur sed aliquet ante. Nunc pharetra egestas justo vitae placerat. Integer rhoncus elit at orci euismod, eu convallis dui pretium. Integer in libero at orci tincidunt tempor id ut nisi. Duis ullamcorper sollicitudin ex ac pulvinar. Morbi nec commodo nisl, id consectetur justo. Donec euismod velit eu libero varius elementum. Fusce bibendum sed ligula at hendrerit. Sed tincidunt justo convallis eros imperdiet varius. Sed ut neque ut tellus pretium bibendum. Pellentesque sapien felis, placerat id risus eget, congue tincidunt velit. Curabitur a arcu metus. Vivamus vel arcu sed ex volutpat viverra a nec tortor.
+
Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Vivamus id leo malesuada, iaculis sem a, tristique nunc. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Sed vitae sollicitudin nulla, sed auctor arcu. Interdum et malesuada fames ac ante ipsum primis in faucibus. Integer commodo, odio sed auctor hendrerit, ex magna porta ipsum, a bibendum justo risus in sem. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam aliquet nec erat ac sagittis. Vivamus mattis, metus vel ullamcorper aliquam, ipsum tellus tempor erat, vitae sodales arcu erat sed lorem. Morbi consequat, dolor ut vestibulum sodales, nunc mi ultricies ex, ac egestas sem risus at purus. Morbi sem libero, bibendum vel porta et, commodo non nulla. Nullam non nibh leo.
+
Praesent in leo id lorem egestas posuere at in erat. Pellentesque interdum laoreet odio, vel iaculis orci ullamcorper ut. Sed sed quam nec mi lobortis sollicitudin non non ipsum. Donec placerat molestie massa ut euismod. Pellentesque sed diam ac risus pharetra pulvinar eu vel purus. Donec ut ornare risus. Proin ultrices felis mattis tempus molestie. Etiam sollicitudin, enim quis placerat pellentesque, justo nisl consequat magna, ut tincidunt enim purus in diam. Etiam ut tempus erat. Mauris at diam sed sapien molestie blandit at hendrerit nisi. Quisque justo neque, pellentesque sit amet tellus ut, bibendum cursus lectus. Curabitur viverra nunc nisi. Sed nec mi at sapien lobortis dapibus non eu nunc. In hac habitasse platea dictumst. Donec accumsan auctor lorem a porttitor. Cum sociis natoque penatibus
Title: [211393] trunk
Revision 211393
Author cdu...@apple.com
Date 2017-01-30 16:11:49 -0800 (Mon, 30 Jan 2017)
Log Message
Drop legacy constants on Event interface
https://bugs.webkit.org/show_bug.cgi?id=167602
Reviewed by Sam Weinig.
LayoutTests/imported/w3c:
Rebaseline W3C test now that more checks are passing.
* web-platform-tests/dom/historical-expected.txt:
Source/WebCore:
Drop legacy constants on Event interface:
MOUSEDOWN, MOUSEUP, MOUSEOVER, MOUSEOUT, MOUSEMOVE, MOUSEDRAG,
CLICK, DBLCLICK, KEYDOWN, KEYUP, KEYPRESS, DRAGDROP, FOCUS,
BLUR, SELECT, and CHANGE.
Those constants are not used for anything, they are not in the
specification and Chrome / Firefox do not have them.
No new tests, rebaselined existing test.
* dom/Event.idl:
LayoutTests:
Update / Rebaseline existing tests to stop covering those constants.
* fast/dom/constants-expected.txt:
* fast/dom/constants.html:
* fast/xmlhttprequest/xmlhttprequest-get-expected.txt:
* http/tests/workers/worker-importScriptsOnError-expected.txt:
* inspector/model/remote-object-get-properties-expected.txt:
Modified Paths
trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/dom/constants-expected.txt
trunk/LayoutTests/fast/dom/constants.html
trunk/LayoutTests/fast/xmlhttprequest/xmlhttprequest-get-expected.txt
trunk/LayoutTests/http/tests/workers/worker-importScriptsOnError-expected.txt
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/dom/historical-expected.txt
trunk/LayoutTests/inspector/model/remote-object-get-properties-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Event.h
trunk/Source/WebCore/dom/Event.idl
Diff
Modified: trunk/LayoutTests/ChangeLog (211392 => 211393)
--- trunk/LayoutTests/ChangeLog 2017-01-31 00:08:45 UTC (rev 211392)
+++ trunk/LayoutTests/ChangeLog 2017-01-31 00:11:49 UTC (rev 211393)
@@ -1,3 +1,18 @@
+2017-01-30 Chris Dumez
+
+Drop legacy constants on Event interface
+https://bugs.webkit.org/show_bug.cgi?id=167602
+
+Reviewed by Sam Weinig.
+
+Update / Rebaseline existing tests to stop covering those constants.
+
+* fast/dom/constants-expected.txt:
+* fast/dom/constants.html:
+* fast/xmlhttprequest/xmlhttprequest-get-expected.txt:
+* http/tests/workers/worker-importScriptsOnError-expected.txt:
+* inspector/model/remote-object-get-properties-expected.txt:
+
2017-01-30 Simon Fraser
[iOS] position:fixed inside touch-scrollable overflow is mispositioned
Modified: trunk/LayoutTests/fast/dom/constants-expected.txt (211392 => 211393)
--- trunk/LayoutTests/fast/dom/constants-expected.txt 2017-01-31 00:08:45 UTC (rev 211392)
+++ trunk/LayoutTests/fast/dom/constants-expected.txt 2017-01-31 00:11:49 UTC (rev 211393)
@@ -44,39 +44,7 @@
PASS: event.CAPTURING_PHASE should be 1 and is.
PASS: event.AT_TARGET should be 2 and is.
PASS: event.BUBBLING_PHASE should be 3 and is.
-PASS: event.MOUSEDOWN should be 1 and is.
-PASS: event.MOUSEUP should be 2 and is.
-PASS: event.MOUSEOVER should be 4 and is.
-PASS: event.MOUSEOUT should be 8 and is.
-PASS: event.MOUSEMOVE should be 16 and is.
-PASS: event.MOUSEDRAG should be 32 and is.
-PASS: event.CLICK should be 64 and is.
-PASS: event.DBLCLICK should be 128 and is.
-PASS: event.KEYDOWN should be 256 and is.
-PASS: event.KEYUP should be 512 and is.
-PASS: event.KEYPRESS should be 1024 and is.
-PASS: event.DRAGDROP should be 2048 and is.
-PASS: event.FOCUS should be 4096 and is.
-PASS: event.BLUR should be 8192 and is.
-PASS: event.SELECT should be 16384 and is.
-PASS: event.CHANGE should be 32768 and is.
PASS: window.Event.NONE should be 0 and is.
PASS: window.Event.CAPTURING_PHASE should be 1 and is.
PASS: window.Event.AT_TARGET should be 2 and is.
PASS: window.Event.BUBBLING_PHASE should be 3 and is.
-PASS: window.Event.MOUSEDOWN should be 1 and is.
-PASS: window.Event.MOUSEUP should be 2 and is.
-PASS: window.Event.MOUSEOVER should be 4 and is.
-PASS: window.Event.MOUSEOUT should be 8 and is.
-PASS: window.Event.MOUSEMOVE should be 16 and is.
-PASS: window.Event.MOUSEDRAG should be 32 and is.
-PASS: window.Event.CLICK should be 64 and is.
-PASS: window.Event.DBLCLICK should be 128 and is.
-PASS: window.Event.KEYDOWN should be 256 and is.
-PASS: window.Event.KEYUP should be 512 and is.
-PASS: window.Event.KEYPRESS should be 1024 and is.
-PASS: window.Event.DRAGDROP should be 2048 and is.
-PASS: window.Event.FOCUS should be 4096 and is.
-PASS: window.Event.BLUR should be 8192 and is.
-PASS: window.Event.SELECT should be 16384 and is.
-PASS: window.Event.CHANGE should be 32768 and is.
Modified: trunk/LayoutTests/fast/dom/constants.html (211392 => 211393)
--- trunk/LayoutTests/fast/dom/constants.html 2017-01-31 00:08:45 UTC (rev 211392)
+++ trunk/LayoutTests/fast/dom/constants.html 2017-01-31 00:11:49 UTC (rev 211393)
@@ -88,43 +88,11 @@
shouldBe("event.CAPTURING_PHASE", 1);
shouldBe("event.AT_TARGET", 2);
Title: [211392] tags/Safari-604.1.5.1/
Revision 211392
Author matthew_han...@apple.com
Date 2017-01-30 16:08:45 -0800 (Mon, 30 Jan 2017)
Log Message
New tag.
Added Paths
tags/Safari-604.1.5.1/
Diff
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211391] trunk/Source/ThirdParty/libwebrtc
Revision 211391
Author commit-qu...@webkit.org
Date 2017-01-30 16:06:48 -0800 (Mon, 30 Jan 2017)
Log Message
[WebRTC] Upload a diff of WebKit libwebrtc code and original libwebrtc code
https://bugs.webkit.org/show_bug.cgi?id=167573
Patch by Youenn Fablet on 2017-01-30
Reviewed by Alex Christensen.
* WebKit/patch-libwebrtc: Added.
Modified Paths
trunk/Source/ThirdParty/libwebrtc/ChangeLog
Added Paths
trunk/Source/ThirdParty/libwebrtc/WebKit/patch-libwebrtc
Diff
Modified: trunk/Source/ThirdParty/libwebrtc/ChangeLog (211390 => 211391)
--- trunk/Source/ThirdParty/libwebrtc/ChangeLog 2017-01-30 23:37:57 UTC (rev 211390)
+++ trunk/Source/ThirdParty/libwebrtc/ChangeLog 2017-01-31 00:06:48 UTC (rev 211391)
@@ -1,3 +1,12 @@
+2017-01-30 Youenn Fablet
+
+[WebRTC] Upload a diff of WebKit libwebrtc code and original libwebrtc code
+https://bugs.webkit.org/show_bug.cgi?id=167573
+
+Reviewed by Alex Christensen.
+
+* WebKit/patch-libwebrtc: Added.
+
2017-01-27 Dan Bernstein
Ignore Xcode’s project.xcworkspace and userdata directories in this new project like we do
Added: trunk/Source/ThirdParty/libwebrtc/WebKit/patch-libwebrtc (0 => 211391)
--- trunk/Source/ThirdParty/libwebrtc/WebKit/patch-libwebrtc (rev 0)
+++ trunk/Source/ThirdParty/libwebrtc/WebKit/patch-libwebrtc 2017-01-31 00:06:48 UTC (rev 211391)
@@ -0,0 +1,979 @@
+diff --git a/Source/ThirdParty/libwebrtc/Source/webrtc/api/datachannelinterface.h b/Source/ThirdParty/libwebrtc/Source/webrtc/api/datachannelinterface.h
+index ddeb1e5..4b2e232 100644
+--- a/Source/ThirdParty/libwebrtc/Source/webrtc/api/datachannelinterface.h
b/Source/ThirdParty/libwebrtc/Source/webrtc/api/datachannelinterface.h
+@@ -75,7 +75,7 @@ class DataChannelObserver {
+ // A data buffer was successfully received.
+ virtual void OnMessage(const DataBuffer& buffer) = 0;
+ // The data channel's buffered_amount has changed.
+- virtual void OnBufferedAmountChange(uint64_t previous_amount){};
++ virtual void OnBufferedAmountChange(uint64_t){};
+
+ protected:
+ virtual ~DataChannelObserver() {}
+diff --git a/Source/ThirdParty/libwebrtc/Source/webrtc/api/jsep.h b/Source/ThirdParty/libwebrtc/Source/webrtc/api/jsep.h
+index e11a2ad..9d7bf9d 100644
+--- a/Source/ThirdParty/libwebrtc/Source/webrtc/api/jsep.h
b/Source/ThirdParty/libwebrtc/Source/webrtc/api/jsep.h
+@@ -98,7 +98,7 @@ class SessionDescriptionInterface {
+ // Removes the candidates from the description.
+ // Returns the number of candidates removed.
+ virtual size_t RemoveCandidates(
+- const std::vector& candidates) { return 0; }
++ const std::vector&) { return 0; }
+
+ // Returns the number of m- lines in the session description.
+ virtual size_t number_of_mediasections() const = 0;
+diff --git a/Source/ThirdParty/libwebrtc/Source/webrtc/api/mediastreaminterface.h b/Source/ThirdParty/libwebrtc/Source/webrtc/api/mediastreaminterface.h
+index baebad7..91a8705 100644
+--- a/Source/ThirdParty/libwebrtc/Source/webrtc/api/mediastreaminterface.h
b/Source/ThirdParty/libwebrtc/Source/webrtc/api/mediastreaminterface.h
+@@ -134,9 +134,9 @@ class VideoTrackInterface
+ public rtc::VideoSourceInterface {
+ public:
+ // Register a video sink for this track.
+- void AddOrUpdateSink(rtc::VideoSinkInterface* sink,
+- const rtc::VideoSinkWants& wants) override{};
+- void RemoveSink(rtc::VideoSinkInterface* sink) override{};
++ void AddOrUpdateSink(rtc::VideoSinkInterface*,
++ const rtc::VideoSinkWants&) override {};
++ void RemoveSink(rtc::VideoSinkInterface*) override {};
+
+ virtual VideoTrackSourceInterface* GetSource() const = 0;
+
+@@ -174,15 +174,15 @@ class AudioSourceInterface : public MediaSourceInterface {
+ // Sets the volume to the source. |volume| is in the range of [0, 10].
+ // TODO(tommi): This method should be on the track and ideally volume should
+ // be applied in the track in a way that does not affect clones of the track.
+- virtual void SetVolume(double volume) {}
++ virtual void SetVolume(double) {}
+
+ // Registers/unregisters observer to the audio source.
+- virtual void RegisterAudioObserver(AudioObserver* observer) {}
+- virtual void UnregisterAudioObserver(AudioObserver* observer) {}
++ virtual void RegisterAudioObserver(AudioObserver*) {}
++ virtual void UnregisterAudioObserver(AudioObserver*) {}
+
+ // TODO(tommi): Make pure virtual.
+- virtual void AddSink(AudioTrackSinkInterface* sink) {}
+- virtual void RemoveSink(AudioTrackSinkInterface* sink) {}
++ virtual void AddSink(AudioTrackSinkInterface*) {}
++ virtual void RemoveSink(AudioTrackSinkInterface*) {}
+ };
+
+ // Interface of the audio processor used by the audio track to collect
+@@ -230,7 +230,7 @@ class AudioTrackInterface : public MediaStreamTrackInterface {
+ // Return true on success, othe
Title: [211390] trunk/Source/WebKit2
Revision 211390
Author ander...@apple.com
Date 2017-01-30 15:37:57 -0800 (Mon, 30 Jan 2017)
Log Message
Add some more crash reporter information to diagnose a failed mach_msg
https://bugs.webkit.org/show_bug.cgi?id=167610
Reviewed by Dean Jackson.
Include the receive port name as well.
* Platform/IPC/mac/ConnectionMac.mm:
(IPC::readFromMachPort):
Modified Paths
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm
Diff
Modified: trunk/Source/WebKit2/ChangeLog (211389 => 211390)
--- trunk/Source/WebKit2/ChangeLog 2017-01-30 23:21:57 UTC (rev 211389)
+++ trunk/Source/WebKit2/ChangeLog 2017-01-30 23:37:57 UTC (rev 211390)
@@ -1,3 +1,15 @@
+2017-01-30 Anders Carlsson
+
+Add some more crash reporter information to diagnose a failed mach_msg
+https://bugs.webkit.org/show_bug.cgi?id=167610
+
+Reviewed by Dean Jackson.
+
+Include the receive port name as well.
+
+* Platform/IPC/mac/ConnectionMac.mm:
+(IPC::readFromMachPort):
+
2017-01-30 Simon Fraser
[iOS] position:fixed inside touch-scrollable overflow is mispositioned
Modified: trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm (211389 => 211390)
--- trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm 2017-01-30 23:21:57 UTC (rev 211389)
+++ trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm 2017-01-30 23:37:57 UTC (rev 211390)
@@ -498,7 +498,7 @@
if (kr != MACH_MSG_SUCCESS) {
#if !ASSERT_DISABLED
-WKSetCrashReportApplicationSpecificInformation((CFStringRef)[NSString stringWithFormat:@"Unhandled error code %x from mach_msg", kr]);
+WKSetCrashReportApplicationSpecificInformation((CFStringRef)[NSString stringWithFormat:@"Unhandled error code %x from mach_msg, receive port is %x", kr, machPort]);
#endif
ASSERT_NOT_REACHED();
return 0;
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211389] trunk/Tools
Revision 211389
Author aakash_j...@apple.com
Date 2017-01-30 15:21:57 -0800 (Mon, 30 Jan 2017)
Log Message
QueueStatusServer should have an explicit timeout for _fetch_url
https://bugs.webkit.org/show_bug.cgi?id=167467
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/common/net/statusserver.py:
(StatusServer._fetch_url): Add an explicit timeout of 300s.
Modified Paths
trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/common/net/statusserver.py
Diff
Modified: trunk/Tools/ChangeLog (211388 => 211389)
--- trunk/Tools/ChangeLog 2017-01-30 23:03:27 UTC (rev 211388)
+++ trunk/Tools/ChangeLog 2017-01-30 23:21:57 UTC (rev 211389)
@@ -1,3 +1,13 @@
+2017-01-30 Aakash Jain
+
+QueueStatusServer should have an explicit timeout for _fetch_url
+https://bugs.webkit.org/show_bug.cgi?id=167467
+
+Reviewed by Alexey Proskuryakov.
+
+* Scripts/webkitpy/common/net/statusserver.py:
+(StatusServer._fetch_url): Add an explicit timeout of 300s.
+
2017-01-30 Kocsen Chung
Add support for Trac instances that host multiple projects.
Modified: trunk/Tools/Scripts/webkitpy/common/net/statusserver.py (211388 => 211389)
--- trunk/Tools/Scripts/webkitpy/common/net/statusserver.py 2017-01-30 23:03:27 UTC (rev 211388)
+++ trunk/Tools/Scripts/webkitpy/common/net/statusserver.py 2017-01-30 23:21:57 UTC (rev 211389)
@@ -166,7 +166,7 @@
def _fetch_url(self, url):
# FIXME: This should use NetworkTransaction's 404 handling instead.
try:
-return urllib2.urlopen(url).read()
+return urllib2.urlopen(url, timeout=300).read()
except urllib2.HTTPError, e:
if e.code == 404:
return None
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211388] trunk/Tools
Revision 211388
Author commit-qu...@webkit.org
Date 2017-01-30 15:03:27 -0800 (Mon, 30 Jan 2017)
Log Message
Add support for Trac instances that host multiple projects.
https://bugs.webkit.org/show_bug.cgi?id=167524
Patch by Kocsen Chung on 2017-01-30
Reviewed by Alexey Proskuryakov.
When multiple projects are hosted on a single Trac instance, the current
behavior will retrieve changesets from all tracked projects.
This patch teaches Trac.js to get project-specific changesets from Trac.
We do this by replacing the parameter `changeset=on` to `repo-projectname=on`
when querying the Trac timeline.
To tell Trac to be aware of multi-project instances we leverage the
`options` parameter when creating a new instance:
new Trac("https://mytrac.com/", { projectIdentifier: "tracProjectName" });
If this option is not provided, the original behaviour will prevail.
Additionally, add corresponding tests.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
(Trac): Reason about new optional parameter 'projectIdentifier'.
(Trac.prototype.revisionURL): Given a projectIdentifier, append it to the end of the URL.
(Trac.prototype._xmlTimelineURL): Given a projectIdentifier,
replace default parameter `changeset=on` with `repo-projectname=on`.
(Trac.prototype._convertCommitInfoElementToObject): Fix missing ';'.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockTrac.js:
(MockTrac): Add support for instantiating Trac with a projectIdentifier.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
(setup): Provide a multiple-project MockTrac instance to all test cases for testing.
Add the following tests:
test("revisionURL")
test("revisionURL with Trac Identifier")
test("_xmlTimelineURL")
test("_xmlTimelineURL with Trac Identifier")
(this.view._latestProductiveIteration): Fix missing ';'.
Modified Paths
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockTrac.js
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js
trunk/Tools/ChangeLog
Diff
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js (211387 => 211388)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js 2017-01-30 22:51:52 UTC (rev 211387)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js 2017-01-30 23:03:27 UTC (rev 211388)
@@ -30,7 +30,11 @@
console.assert(baseURL);
this.baseURL = baseURL;
-this._needsAuthentication = (typeof options === "object") && options[Trac.NeedsAuthentication] === true;
+if (typeof options === "object") {
+this._needsAuthentication = options[Trac.NeedsAuthentication] === true;
+// We expect the projectIdentifier option iff the target Trac instance is hosting multiple repositories && Trac version > 1.0
+this._projectName = options[Trac.ProjectIdentifier];
+}
this.recordedCommits = []; // Will be sorted in ascending order.
};
@@ -40,6 +44,7 @@
Trac.NO_MORE_REVISIONS = null;
Trac.NeedsAuthentication = "needsAuthentication";
+Trac.ProjectIdentifier = "projectIdentifier";
Trac.UpdateInterval = 45000; // 45 seconds
Trac.Event = {
@@ -103,7 +108,10 @@
revisionURL: function(revision)
{
-return this.baseURL + "changeset/" + encodeURIComponent(revision);
+var url = "" + "changeset/" + encodeURIComponent(revision);
+if (this._projectName)
+url += '/' + encodeURIComponent(this._projectName);
+return url;
},
_xmlTimelineURL: function(fromDate, toDate)
@@ -112,10 +120,14 @@
var fromDay = new Date(fromDate.getFullYear(), fromDate.getMonth(), fromDate.getDate());
var toDay = new Date(toDate.getFullYear(), toDate.getMonth(), toDate.getDate());
+var changesetParameter = this._projectName ? "repo-" + this._projectName : "changeset";
-return this.baseURL + "timeline?changeset=on&format=rss&max=0" +
-"&from=" + toDay.toISOString().slice(0, 10) +
-"&daysback=" + ((toDay - fromDay) / 1000 / 60 / 60 / 24);
+return this.baseURL + "timeline?" +
+changesetParameter + "=on" +
+"&format=rss" +
+"&max=0" +
+"&from=" + encodeURIComponent(toDay.toISOString().slice(0, 10)) +
+"&daysback=" + encodeURIComponent((toDay - fromDay) / 1000 / 60 / 60 / 24);
},
_parseRevisionFromURL: function(url)
@@ -150,7 +162,7 @@
var location = "";
if (parsedDescription.firstChild && parsedDescription.firstChild.className === "changes") {
// We can extract branch information whe
Title: [211387] trunk
Revision 211387
Author simon.fra...@apple.com
Date 2017-01-30 14:51:52 -0800 (Mon, 30 Jan 2017)
Log Message
[iOS] position:fixed inside touch-scrollable overflow is mispositioned
https://bugs.webkit.org/show_bug.cgi?id=167604
Source/WebCore:
rdar://problem/29500273
Reviewed by Zalan Bujtas.
For layers inside touch-scrollable overflow, RenderLayerBacking::computeParentGraphicsLayerRect() needs
to account for the offset from the ancestor compositing layer's origin, to handle scrollable elements with
box-shadow, for example.
Also make the compositing log output a little easier to read.
Test: compositing/scrolling/fixed-inside-scroll.html
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::computeParentGraphicsLayerRect):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::logLayerInfo):
Source/WebKit2:
rdar://problem/29500273
Reviewed by Zalan Bujtas.
Make sure we tell m_webPageProxy.computeCustomFixedPositionRect() when visual viewports are enabled.
* UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm:
(WebKit::RemoteScrollingCoordinatorProxy::customFixedPositionRect):
LayoutTests:
Reviewed by Zalan Bujtas.
* compositing/scrolling/fixed-inside-scroll-expected.html: Added.
* compositing/scrolling/fixed-inside-scroll.html: Added.
Modified Paths
trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/RenderLayerBacking.cpp
trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm
Added Paths
trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll-expected.html
trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll.html
Diff
Modified: trunk/LayoutTests/ChangeLog (211386 => 211387)
--- trunk/LayoutTests/ChangeLog 2017-01-30 22:09:01 UTC (rev 211386)
+++ trunk/LayoutTests/ChangeLog 2017-01-30 22:51:52 UTC (rev 211387)
@@ -1,3 +1,13 @@
+2017-01-30 Simon Fraser
+
+[iOS] position:fixed inside touch-scrollable overflow is mispositioned
+https://bugs.webkit.org/show_bug.cgi?id=167604
+
+Reviewed by Zalan Bujtas.
+
+* compositing/scrolling/fixed-inside-scroll-expected.html: Added.
+* compositing/scrolling/fixed-inside-scroll.html: Added.
+
2017-01-30 Matt Baker
Web Inspector: Need some limit on Async Call Stacks for async loops (rAF loops)
Added: trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll-expected.html (0 => 211387)
--- trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll-expected.html (rev 0)
+++ trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll-expected.html 2017-01-30 22:51:52 UTC (rev 211387)
@@ -0,0 +1,52 @@
+
+
+
+
+
+html {
+ -webkit-overflow-scrolling: touch;
+}
+
+.scroller {
+height: 500px;
+width: 300px;
+margin: 50px;
+border: 25px solid gray;
+padding: 10px;
+overflow: scroll;
+box-shadow: 0 0 30px black;
+}
+
+.contents {
+width: 400px;
+height: 2000px;
+}
+
+.fixed {
+position: absolute;
+background-color: green;
+left: 70px;
+top: 70px;
+height: 200px;
+width: 200px;
+}
+
+.indicator {
+position: absolute;
+left: 70px;
+top: 70px;
+height: 200px;
+width: 200px;
+background-color: red;
+}
+
+
+
+
+
+
+
+
+
+
+
Added: trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll.html (0 => 211387)
--- trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll.html (rev 0)
+++ trunk/LayoutTests/compositing/scrolling/fixed-inside-scroll.html 2017-01-30 22:51:52 UTC (rev 211387)
@@ -0,0 +1,52 @@
+
+
+
+
+
+html {
+ -webkit-overflow-scrolling: touch;
+}
+
+.scroller {
+height: 500px;
+width: 300px;
+margin: 50px;
+border: 25px solid gray;
+padding: 10px;
+overflow: scroll;
+box-shadow: 0 0 30px black;
+}
+
+.contents {
+width: 400px;
+height: 2000px;
+}
+
+.fixed {
+position: fixed;
+background-color: green;
+left: 70px;
+top: 70px;
+height: 200px;
+width: 200px;
+}
+
+.indicator {
+position: absolute;
+left: 70px;
+top: 70px;
+height: 200px;
+width: 200px;
+background-color: red;
+}
+
+
+
+
+
+
+
+
+
+
+
Modified: trunk/Source/WebCore/ChangeLog (211386 => 211387)
--- trunk/Source/WebCore/ChangeLog 2017-01-30 22:09:01 UTC (rev 211386)
+++ trunk/Source/WebCore/ChangeLog 2017-01-30 22:51:52 UTC (rev 211387)
@@ -1,3 +1,24 @@
+2017-01-30 Simon Fraser
+
+[iOS] position:fixed inside touch-scrollable
Title: [211386] trunk/Source/WebCore
Revision 211386
Author jer.no...@apple.com
Date 2017-01-30 14:09:01 -0800 (Mon, 30 Jan 2017)
Log Message
NULL-deref crash at PlatformMediaSession::endInterruption
https://bugs.webkit.org/show_bug.cgi?id=167595
Reviewed by Eric Carlson.
Use the same, NULL-aware forEachSession() iterator rather than iterating over m_sessions directly.
* platform/audio/PlatformMediaSessionManager.cpp:
(WebCore::PlatformMediaSessionManager::beginInterruption):
(WebCore::PlatformMediaSessionManager::endInterruption):
Modified Paths
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp
Diff
Modified: trunk/Source/WebCore/ChangeLog (211385 => 211386)
--- trunk/Source/WebCore/ChangeLog 2017-01-30 22:01:07 UTC (rev 211385)
+++ trunk/Source/WebCore/ChangeLog 2017-01-30 22:09:01 UTC (rev 211386)
@@ -1,3 +1,16 @@
+2017-01-30 Jer Noble
+
+NULL-deref crash at PlatformMediaSession::endInterruption
+https://bugs.webkit.org/show_bug.cgi?id=167595
+
+Reviewed by Eric Carlson.
+
+Use the same, NULL-aware forEachSession() iterator rather than iterating over m_sessions directly.
+
+* platform/audio/PlatformMediaSessionManager.cpp:
+(WebCore::PlatformMediaSessionManager::beginInterruption):
+(WebCore::PlatformMediaSessionManager::endInterruption):
+
2017-01-30 Myles C. Maxfield
Correct spacing regression on inter-element complex path shaping on some fonts
Modified: trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp (211385 => 211386)
--- trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp 2017-01-30 22:01:07 UTC (rev 211385)
+++ trunk/Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp 2017-01-30 22:09:01 UTC (rev 211386)
@@ -112,9 +112,9 @@
LOG(Media, "PlatformMediaSessionManager::beginInterruption");
m_interrupted = true;
-Vector sessions = m_sessions;
-for (auto* session : sessions)
-session->beginInterruption(type);
+forEachSession([type] (PlatformMediaSession& session, size_t) {
+session.beginInterruption(type);
+});
updateSessionState();
}
@@ -123,9 +123,9 @@
LOG(Media, "PlatformMediaSessionManager::endInterruption");
m_interrupted = false;
-Vector sessions = m_sessions;
-for (auto* session : sessions)
-session->endInterruption(flags);
+forEachSession([flags] (PlatformMediaSession& session, size_t) {
+session.endInterruption(flags);
+});
}
void PlatformMediaSessionManager::addSession(PlatformMediaSession& session)
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211385] trunk
Revision 211385
Author mattba...@apple.com
Date 2017-01-30 14:01:07 -0800 (Mon, 30 Jan 2017)
Log Message
Web Inspector: Need some limit on Async Call Stacks for async loops (rAF loops)
https://bugs.webkit.org/show_bug.cgi?id=165633
Reviewed by Joseph Pecoraro.
Source/_javascript_Core:
This patch limits the memory used by the Inspector backend to store async
stack trace data.
Asynchronous stack traces are stored as a disjoint set of parent pointer
trees. Tree nodes represent asynchronous operations, and hold a copy of
the stack trace at the time the operation was scheduled. Each tree can
be regarded as a set of stack traces, stored as singly linked lists that
share part of their structure (specifically their tails). Traces belonging
to the same tree will at least share a common root. A stack trace begins
at a leaf node and follows the chain of parent pointers to the root of
of the tree. Leaf nodes always contain pending asynchronous calls.
When an asynchronous operation is scheduled with requestAnimationFrame,
setInterval, etc, a node is created containing the current call stack and
some bookkeeping data for the operation. An unique identifier comprised
of an operation type and callback identifier is mapped to the node. If
scheduling the callback was itself the result of an asynchronous call,
the node becomes a child of the node associated with that call, otherwise
it becomes the root of a new tree.
A node is either `pending`, `active`, `dispatched`, or `canceled`. Nodes
start out as pending. After a callback for a pending node is dispatched
the node is marked as such, unless it is a repeating callback such as
setInterval, in which case it remains pending. Once a node is no longer
pending it is removed, as long as it has no children. Since nodes are
reference counted, it is a property of the stack trace tree that nodes
that are no longer pending and have no children pointing to them will be
automatically pruned from the tree.
If an async operation is canceled (e.g. cancelTimeout), the associated
node is marked as such. If the callback is not being dispatched at the
time, and has no children, it is removed.
Because async operations can be chained indefinitely, stack traces are
limited to a maximum depth. The depth of a stack trace is equal to the
sum of the depths of its nodes, with a node's depth equal to the number
of frames in its associated call stack. For any stack trace,
S = { s𝟶, s𝟷, …, s𝑘 }, with endpoints s𝟶, s𝑘
depth(S) = depth(s𝟶) + depth(s𝟷) + … + depth(s𝑘)
A stack trace is truncated when it exceeds the maximum depth. Truncation
occurs on node boundaries, not call frames, consequently the maximum depth
is more of a target than a guarantee:
d = maximum stack trace depth
for all S, depth(S) ≤ d + depth(s𝑘)
Because nodes can belong to multiple stack traces, it may be necessary
to clone the tail of a stack trace being truncated to prevent other traces
from being effected.
* CMakeLists.txt:
* _javascript_Core.xcodeproj/project.pbxproj:
* inspector/AsyncStackTrace.cpp: Added.
(Inspector::AsyncStackTrace::create):
(Inspector::AsyncStackTrace::AsyncStackTrace):
(Inspector::AsyncStackTrace::~AsyncStackTrace):
(Inspector::AsyncStackTrace::isPending):
(Inspector::AsyncStackTrace::isLocked):
(Inspector::AsyncStackTrace::willDispatchAsyncCall):
(Inspector::AsyncStackTrace::didDispatchAsyncCall):
(Inspector::AsyncStackTrace::didCancelAsyncCall):
(Inspector::AsyncStackTrace::buildInspectorObject):
(Inspector::AsyncStackTrace::truncate):
(Inspector::AsyncStackTrace::remove):
* inspector/AsyncStackTrace.h:
* inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::InspectorDebuggerAgent::didScheduleAsyncCall):
(Inspector::InspectorDebuggerAgent::didCancelAsyncCall):
(Inspector::InspectorDebuggerAgent::willDispatchAsyncCall):
(Inspector::InspectorDebuggerAgent::didDispatchAsyncCall):
(Inspector::InspectorDebuggerAgent::didPause):
(Inspector::InspectorDebuggerAgent::clearAsyncStackTraceData):
(Inspector::InspectorDebuggerAgent::buildAsyncStackTrace): Deleted.
(Inspector::InspectorDebuggerAgent::refAsyncCallData): Deleted.
(Inspector::InspectorDebuggerAgent::derefAsyncCallData): Deleted.
* inspector/agents/InspectorDebuggerAgent.h:
* inspector/protocol/Console.json:
Source/WebInspectorUI:
* Localizations/en.lproj/localizedStrings.js:
Text for "Truncated" marker tree element.
* UserInterface/Models/StackTrace.js:
(WebInspector.StackTrace):
(WebInspector.StackTrace.fromPayload):
(WebInspector.StackTrace.prototype.get truncated):
Plumbing for new Console.StackTrace property `truncated`.
* UserInterface/Views/ThreadTreeElement.css:
(.tree-outline > .item.thread + ol > .item.truncated-call-frames):
(.tree-outline > .item.thread + ol > .item.truncated-call-frames .icon):
Styles for "Truncated" marker tree element.
* UserInterface/Views/ThreadTreeElement.js:
(WebInspector.ThreadTreeElement.prototype.refresh):
Append "Truncated" marker tree element if necess
Title: [211383] branches/safari-604.1.5-branch/Source
Revision 211383
Author matthew_han...@apple.com
Date 2017-01-30 13:02:13 -0800 (Mon, 30 Jan 2017)
Log Message
Versioning.
Modified Paths
branches/safari-604.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig
branches/safari-604.1.5-branch/Source/WebCore/Configurations/Version.xcconfig
branches/safari-604.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig
branches/safari-604.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig
branches/safari-604.1.5-branch/Source/WebKit/mac/Configurations/Version.xcconfig
branches/safari-604.1.5-branch/Source/WebKit2/Configurations/Version.xcconfig
Diff
Modified: branches/safari-604.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig (211382 => 211383)
--- branches/safari-604.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2017-01-30 20:43:14 UTC (rev 211382)
+++ branches/safari-604.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2017-01-30 21:02:13 UTC (rev 211383)
@@ -24,9 +24,9 @@
MAJOR_VERSION = 604;
MINOR_VERSION = 1;
TINY_VERSION = 5;
-MICRO_VERSION = 0;
-NANO_VERSION = 1;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 0;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
// The bundle version and short version string are set based on the current build configuration, see below.
BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));
Modified: branches/safari-604.1.5-branch/Source/WebCore/Configurations/Version.xcconfig (211382 => 211383)
--- branches/safari-604.1.5-branch/Source/WebCore/Configurations/Version.xcconfig 2017-01-30 20:43:14 UTC (rev 211382)
+++ branches/safari-604.1.5-branch/Source/WebCore/Configurations/Version.xcconfig 2017-01-30 21:02:13 UTC (rev 211383)
@@ -24,9 +24,9 @@
MAJOR_VERSION = 604;
MINOR_VERSION = 1;
TINY_VERSION = 5;
-MICRO_VERSION = 0;
-NANO_VERSION = 1;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 0;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
// The bundle version and short version string are set based on the current build configuration, see below.
BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));
Modified: branches/safari-604.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (211382 => 211383)
--- branches/safari-604.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2017-01-30 20:43:14 UTC (rev 211382)
+++ branches/safari-604.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2017-01-30 21:02:13 UTC (rev 211383)
@@ -24,9 +24,9 @@
MAJOR_VERSION = 604;
MINOR_VERSION = 1;
TINY_VERSION = 5;
-MICRO_VERSION = 0;
-NANO_VERSION = 1;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 0;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
// The bundle version and short version string are set based on the current build configuration, see below.
BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));
Modified: branches/safari-604.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (211382 => 211383)
--- branches/safari-604.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2017-01-30 20:43:14 UTC (rev 211382)
+++ branches/safari-604.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2017-01-30 21:02:13 UTC (rev 211383)
@@ -1,9 +1,9 @@
MAJOR_VERSION = 604;
MINOR_VERSION = 1;
TINY_VERSION = 5;
-MICRO_VERSION = 0;
-NANO_VERSION = 1;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 0;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
// The system version prefix is based on the current system version.
SYSTEM_VERSION_PREFIX[sdk=iphone*] = 8;
Modified: branches/safari-604.1.5-branch/Source/WebKit/mac/Configurations/Version.xcconfig (211382 => 211383)
--- branches/safari-604.1.5-branch/Source/WebKit/mac/Configurations/Version.xcconfig 2017-01-30 20:43:14 UTC (rev 211382)
+++ branches/safari-604.1.5-branch/Source/WebKit/mac/Configurations/Version.xcconfig 2017-01-30 21:02:13 UTC (rev 211383)
@@ -24,9 +24,9 @@
MAJOR_VERSION = 604;
MINOR_VERSION = 1;
TINY_VERSION = 5;
-MICRO_VERSION = 0;
-NANO_VERSION = 1;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 0;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION);
// The bundle version and short version string are set based on the current build configuration, see below.
BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));
Modified:
Title: [211384] branches/safari-604.1.5-branch/Source/WebKit/mac
Revision 211384
Author matthew_han...@apple.com
Date 2017-01-30 13:02:16 -0800 (Mon, 30 Jan 2017)
Log Message
Merge r211323. rdar://problem/30107776
Modified Paths
branches/safari-604.1.5-branch/Source/WebKit/mac/ChangeLog
branches/safari-604.1.5-branch/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm
branches/safari-604.1.5-branch/Source/WebKit/mac/WebView/WebView.mm
Diff
Modified: branches/safari-604.1.5-branch/Source/WebKit/mac/ChangeLog (211383 => 211384)
--- branches/safari-604.1.5-branch/Source/WebKit/mac/ChangeLog 2017-01-30 21:02:13 UTC (rev 211383)
+++ branches/safari-604.1.5-branch/Source/WebKit/mac/ChangeLog 2017-01-30 21:02:16 UTC (rev 211384)
@@ -1,3 +1,30 @@
+2017-01-30 Matthew Hanson
+
+Merge r211323. rdar://problem/30107776
+
+2017-01-27 Wenson Hsieh
+
+[WK1] Do not prevent the drag client from initializing on Mac
+https://bugs.webkit.org/show_bug.cgi?id=167541
+
+Reviewed by Dan Bernstein.
+
+Fixes fallout from r211192. To ensure compability with WebKit clients, we need to ensure that WebDragClient is
+initialized everywhere when creating a WebView. Stub out method implementations as no-ops for non-Mac platforms.
+This caused certain clients, such as Mail, to crash when a webView closes due to null dereference.
+
+* WebCoreSupport/WebDragClient.mm:
+(WebDragClient::WebDragClient):
+(WebDragClient::actionMaskForDrag):
+(WebDragClient::willPerformDragDestinationAction):
+(WebDragClient::dragSourceActionMaskForPoint):
+(WebDragClient::willPerformDragSourceAction):
+(WebDragClient::startDrag):
+(WebDragClient::declareAndWriteDragImage):
+(WebDragClient::declareAndWriteAttachment):
+* WebView/WebView.mm:
+(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
+
2017-01-26 Chris Dumez
Crash when navigating back to a page in PacheCache when one of its frames has been removed
Modified: branches/safari-604.1.5-branch/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm (211383 => 211384)
--- branches/safari-604.1.5-branch/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm 2017-01-30 21:02:13 UTC (rev 211383)
+++ branches/safari-604.1.5-branch/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm 2017-01-30 21:02:16 UTC (rev 211384)
@@ -25,7 +25,7 @@
#import "WebDragClient.h"
-#if ENABLE(DRAG_SUPPORT) && PLATFORM(MAC)
+#if ENABLE(DRAG_SUPPORT)
#import "DOMElementInternal.h"
#import "WebArchive.h"
@@ -36,11 +36,15 @@
#import "WebHTMLViewPrivate.h"
#import "WebKitLogging.h"
#import "WebKitNSStringExtras.h"
-#import "WebNSPasteboardExtras.h"
#import "WebNSURLExtras.h"
#import "WebUIDelegate.h"
#import "WebUIDelegatePrivate.h"
#import "WebViewInternal.h"
+
+#if PLATFORM(MAC)
+#import "WebNSPasteboardExtras.h"
+#endif
+
#import
#import
#import
@@ -57,8 +61,11 @@
WebDragClient::WebDragClient(WebView* webView)
: m_webView(webView)
{
+UNUSED_PARAM(m_webView);
}
+#if PLATFORM(MAC)
+
static WebHTMLView *getTopHTMLView(Frame* frame)
{
ASSERT(frame);
@@ -138,9 +145,45 @@
}
#endif
+#else
+
+WebCore::DragDestinationAction WebDragClient::actionMaskForDrag(const WebCore::DragData&)
+{
+return DragDestinationActionNone;
+}
+
+void WebDragClient::willPerformDragDestinationAction(WebCore::DragDestinationAction, const WebCore::DragData&)
+{
+}
+
+WebCore::DragSourceAction WebDragClient::dragSourceActionMaskForPoint(const IntPoint&)
+{
+return DragSourceActionNone;
+}
+
+void WebDragClient::willPerformDragSourceAction(WebCore::DragSourceAction, const WebCore::IntPoint&, WebCore::DataTransfer&)
+{
+}
+
+void WebDragClient::startDrag(DragImageRef, const IntPoint&, const IntPoint&, DataTransfer&, Frame&, bool)
+{
+}
+
+void WebDragClient::declareAndWriteDragImage(const String&, Element&, const URL&, const String&, WebCore::Frame*)
+{
+}
+
+#if ENABLE(ATTACHMENT_ELEMENT)
+void WebDragClient::declareAndWriteAttachment(const String&, Element&, const URL&, const String&, WebCore::Frame*)
+{
+}
+#endif
+
+#endif
+
void WebDragClient::dragControllerDestroyed()
{
delete this;
}
-#endif // ENABLE(DRAG_SUPPORT) && PLATFORM(MAC)
+#endif // ENABLE(DRAG_SUPPORT)
Modified: branches/safari-604.1.5-branch/Source/WebKit/mac/WebView/WebView.mm (211383 => 211384)
--- branches/safari-604.1.5-branch/Source/WebKit/mac/WebView/WebView.mm 2017-01-30 21:02:13 UTC (rev 211383)
+++ branches/safari-604.1.5-branch/Source/WebKit/mac/WebView/WebView.mm 2017-01-30 21:02:16 UTC (rev 211384)
@@ -1609,7 +1609,7 @@
makeUniqueRef()
);
pageConfiguration.chromeClient = new WebChromeClientIOS(self);
-#if ENABLE(DRAG_SUPPORT) && PLATFORM(MAC)
+#if ENABLE(DRAG_SUPPORT)
pageConfiguration.dragClient = new WebDragClient(self);
#endif
Title: [211382] trunk
Revision 211382
Author mmaxfi...@apple.com
Date 2017-01-30 12:43:14 -0800 (Mon, 30 Jan 2017)
Log Message
Correct spacing regression on inter-element complex path shaping on some fonts
https://bugs.webkit.org/show_bug.cgi?id=166013
Reviewed by Simon Fraser.
Source/WebCore:
This patch brings the implementation of ComplexTextController in-line with the
design at https://trac.webkit.org/wiki/ComplexTextController. Previously,
ComplexTextController had a few problems:
- The total width computed by ComplexTextController didn't match the width if
you iterated over the entire string and added up the advances
- FontCascade::getGlyphsAndAdvancesForComplexText() tried to compensate for
the above by construing the concepts of paint advances as distinct from layout
advances
- Initial advances were considered part of layout sometimes and part of painting
other times, depending on which function reports the information
- For RTL runs, the wrong origin was added to the initial advance, and the origin
should have been subtracted instead of added
This patch exhaustively updates every function in ComplexTextController to be
consistent with the design linked to above. This design solves all of these
problems.
Tests: ComplexTextControllerTest.InitialAdvanceWithLeftRunInRTL
ComplexTextControllerTest.InitialAdvanceInRTL
ComplexTextControllerTest.InitialAdvanceWithLeftRunInLTR
ComplexTextControllerTest.InitialAdvanceInLTR
ComplexTextControllerTest.InitialAdvanceInRTLNoOrigins
ComplexTextControllerTest.LeadingExpansion
ComplexTextControllerTest.VerticalAdvances
* platform/graphics/GlyphBuffer.h:
(WebCore::GlyphBuffer::setLeadingExpansion): Deleted. No longer necessary.
(WebCore::GlyphBuffer::leadingExpansion): Deleted. Ditto.
* platform/graphics/cocoa/FontCascadeCocoa.mm:
(WebCore::FontCascade::adjustSelectionRectForComplexText): Removed use of
unnecessary leadingExpansion().
(WebCore::FontCascade::getGlyphsAndAdvancesForComplexText): This function needs
to compute paint advances, which means that it can't base this information off
of layout advances. This function uses the trick mentioned at the end of the
above link to compute the paint offset of an arbitrary glyph in the middle of
an RTL run.
* platform/graphics/mac/ComplexTextController.cpp:
(WebCore::ComplexTextController::computeExpansionOpportunity): Refactored for
testing.
(WebCore::ComplexTextController::ComplexTextController): Ditto.
(WebCore::ComplexTextController::finishConstruction): Ditto.
(WebCore::ComplexTextController::offsetForPosition): This function operates on
layout advances, and the initial layout advance is already added into the
m_adjustedBaseAdvances vector by adjustGlyphsAndAdvances(). Therefore, there is
no need to add it again here.
(WebCore::ComplexTextController::advance): This function had completely busted
logic about the relationship between initial advances and the first origin in
each run. Because of the fortunate choice of only representing layout advances
in m_adjustedBaseAdvances, this entire block can be removed and the raw paint
initial advance can be reported to the GlyphBuffer. Later in the function, we
have to update the logic about how to compute a paint advance given a layout
advance and some origins. In particular, there are two tricky pieces here: 1.
The layout advance for the first glyph is equal to (initial advance - first
origin + first Core Text advance, so computing the paint offset must cancel out
the initial layout offset, and 2. the last paint advance in a run must actually
end up at the position of the first glyph in the next run, so the next run's
initial advance must be queried.
(WebCore::ComplexTextController::adjustGlyphsAndAdvances): Previously, we
represented an initial advance of a successive run by just adding it to the
previous run's last advance. However, this is incompatible with the new model
presented in the link above, so we remove this section. We also have to add in
the logic that the layout advance for the first glyph is equal to the formula
presented above.
* platform/graphics/mac/ComplexTextController.h:
(WebCore::ComplexTextController::ComplexTextRun::initialAdvance): Adjust comment
to reflect reality.
(WebCore::ComplexTextController::leadingExpansion): Deleted.
Tools:
Unskip existing tests and make some new tests:
- Testing complex text with no origins
- Testing initial expansions
- Testing the sign of vertical advances
* TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
(TestWebKitAPI::TEST_F):
Modified Paths
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/GlyphBuffer.h
trunk/Source/WebCore/platform/graphics/cocoa/FontCascadeCocoa.mm
trunk/Source/WebCore/platform/graphics/mac/ComplexTextController.cpp
trunk/Source/WebCore/platform/graphics/mac/ComplexTextController.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp
Diff
Modified: trunk/Source/WebCore
Title: [211381] trunk
Revision 211381
Author ryanhad...@apple.com
Date 2017-01-30 12:08:29 -0800 (Mon, 30 Jan 2017)
Log Message
Unreviewed, rolling out r211345.
The LayoutTest for this change is failing an assertion.
Reverted changeset:
"Web Inspector: Need some limit on Async Call Stacks for async
loops (rAF loops)"
https://bugs.webkit.org/show_bug.cgi?id=165633
http://trac.webkit.org/changeset/211345
Modified Paths
trunk/LayoutTests/ChangeLog
trunk/LayoutTests/inspector/debugger/async-stack-trace-expected.txt
trunk/LayoutTests/inspector/debugger/async-stack-trace.html
trunk/Source/_javascript_Core/CMakeLists.txt
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj
trunk/Source/_javascript_Core/inspector/agents/InspectorDebuggerAgent.cpp
trunk/Source/_javascript_Core/inspector/agents/InspectorDebuggerAgent.h
trunk/Source/_javascript_Core/inspector/protocol/Console.json
trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js
trunk/Source/WebInspectorUI/UserInterface/Models/StackTrace.js
trunk/Source/WebInspectorUI/UserInterface/Views/ThreadTreeElement.css
trunk/Source/WebInspectorUI/UserInterface/Views/ThreadTreeElement.js
trunk/Source/WebInspectorUI/Versions/Inspector-iOS-10.3.json
Removed Paths
trunk/LayoutTests/inspector/debugger/resources/log-active-stack-trace.js
trunk/Source/_javascript_Core/inspector/AsyncStackTrace.cpp
trunk/Source/_javascript_Core/inspector/AsyncStackTrace.h
Diff
Modified: trunk/LayoutTests/ChangeLog (211380 => 211381)
--- trunk/LayoutTests/ChangeLog 2017-01-30 20:05:34 UTC (rev 211380)
+++ trunk/LayoutTests/ChangeLog 2017-01-30 20:08:29 UTC (rev 211381)
@@ -1,3 +1,16 @@
+2017-01-30 Ryan Haddad
+
+Unreviewed, rolling out r211345.
+
+The LayoutTest for this change is failing an assertion.
+
+Reverted changeset:
+
+"Web Inspector: Need some limit on Async Call Stacks for async
+loops (rAF loops)"
+https://bugs.webkit.org/show_bug.cgi?id=165633
+http://trac.webkit.org/changeset/211345
+
2017-01-30 Simon Fraser
Fixed elements should not rubber-band in WK2, nor remain at negative offsets
Modified: trunk/LayoutTests/inspector/debugger/async-stack-trace-expected.txt (211380 => 211381)
--- trunk/LayoutTests/inspector/debugger/async-stack-trace-expected.txt 2017-01-30 20:05:34 UTC (rev 211380)
+++ trunk/LayoutTests/inspector/debugger/async-stack-trace-expected.txt 2017-01-30 20:08:29 UTC (rev 211381)
@@ -6,64 +6,57 @@
PAUSE #1
CALL STACK:
0: [F] pauseThenFinishTest
-ASYNC CALL STACK:
-1: --- requestAnimationFrame ---
-2: [F] testRequestAnimationFrame
-3: [P] Global Code
+-- [N] requestAnimationFrame
+1: [F] testRequestAnimationFrame
+2: [P] Global Code
-- Running test case: CheckAsyncStackTrace.SetTimeout
PAUSE #1
CALL STACK:
0: [F] pauseThenFinishTest
-ASYNC CALL STACK:
-1: --- setTimeout ---
-2: [F] testSetTimeout
-3: [P] Global Code
+-- [N] setTimeout
+1: [F] testSetTimeout
+2: [P] Global Code
-- Running test case: CheckAsyncStackTrace.SetInterval
PAUSE #1
CALL STACK:
0: [F] intervalFired
-ASYNC CALL STACK:
-1: --- setInterval ---
-2: [F] testSetInterval
-3: [P] Global Code
+-- [N] setInterval
+1: [F] testSetInterval
+2: [P] Global Code
PAUSE #2
CALL STACK:
0: [F] intervalFired
-ASYNC CALL STACK:
-1: --- setInterval ---
-2: [F] testSetInterval
-3: [P] Global Code
+-- [N] setInterval
+1: [F] testSetInterval
+2: [P] Global Code
PAUSE #3
CALL STACK:
0: [F] intervalFired
-ASYNC CALL STACK:
-1: --- setInterval ---
-2: [F] testSetInterval
-3: [P] Global Code
+-- [N] setInterval
+1: [F] testSetInterval
+2: [P] Global Code
-- Running test case: CheckAsyncStackTrace.ChainedRequestAnimationFrame
PAUSE #1
CALL STACK:
0: [F] pauseThenFinishTest
-ASYNC CALL STACK:
-1: --- requestAnimationFrame ---
-2: [F] testRequestAnimationFrame
-3: --- requestAnimationFrame ---
-4: [F] testChainedRequestAnimationFrame
-5: [P] Global Code
+-- [N] requestAnimationFrame
+1: [F] testRequestAnimationFrame
+-- [N] requestAnimationFrame
+2: [F] testChainedRequestAnimationFrame
+3: [P] Global Code
-- Running test case: CheckAsyncStackTrace.ReferenceCounting
PAUSE #1
CALL STACK:
0: [F] pauseThenFinishTest
-ASYNC CALL STACK:
-1: --- setTimeout ---
-2: [F] intervalFired
-3: --- setInterval ---
-4: [F] testReferenceCounting
-5: [P] Global Code
+-- [N] setTimeout
+1: [F] intervalFired
+-- [N] setInterval
+2: [F] testReferenceCounting
+3: [P] Global Code
-- Running test setup.
Save DebuggerManager.asyncStackTraceDepth
@@ -74,44 +67,8 @@
-- Running test setup.
Save DebuggerManager.asyncStackTraceDepth
--- Running test case: AsyncStackTrace.ForceTruncationOnCallStackBoundary
-Set Debugger.asyncStackTraceDepth equal to 4
-PASS: Non-root StackTrace should not be truncated.
-PASS: Non-root StackTrace should not be truncated.
-PASS: Stack
Title: [211380] trunk/Tools
Revision 211380
Author clo...@igalia.com
Date 2017-01-30 12:05:34 -0800 (Mon, 30 Jan 2017)
Log Message
[GTK][EFL] Avoid using a thin directory to create the built product on the archive-built-product step.
https://bugs.webkit.org/show_bug.cgi?id=167596
Reviewed by Daniel Bates.
We avoid needing a thin directory by invoking the zip program with
the list of directories from the build directory to be zipped,
and by using the zip feature to exclude files matching a pattern.
* BuildSlaveSupport/built-product-archive:
(copyBuildFiles):
(createZipFromList):
(archiveBuiltProduct):
Modified Paths
trunk/Tools/BuildSlaveSupport/built-product-archive
trunk/Tools/ChangeLog
Diff
Modified: trunk/Tools/BuildSlaveSupport/built-product-archive (211379 => 211380)
--- trunk/Tools/BuildSlaveSupport/built-product-archive 2017-01-30 19:46:40 UTC (rev 211379)
+++ trunk/Tools/BuildSlaveSupport/built-product-archive 2017-01-30 20:05:34 UTC (rev 211380)
@@ -24,6 +24,7 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+import errno
import optparse
import os
import shutil
@@ -97,6 +98,25 @@
shutil.copytree(source, destination, ignore=shutil.ignore_patterns(*patterns))
+def createZipFromList(listToZip, configuration, excludePattern=None):
+archiveDir = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', 'WebKitBuild'))
+archiveFile = os.path.join(archiveDir, configuration + '.zip')
+
+try:
+os.unlink(archiveFile)
+except OSError, e:
+if e.errno != errno.ENOENT:
+raise
+
+if sys.platform.startswith('linux'):
+zipCommand = ['zip', '-y', '-r', archiveFile] + listToZip
+if excludePattern:
+zipCommand += ['-x', excludePattern]
+return subprocess.call(zipCommand, cwd=_configurationBuildDirectory)
+
+raise NotImplementedError('Unsupported platform: {platform}'.format(platform=sys.platform))
+
+
def createZipManually(directoryToZip, archiveFile):
archiveZip = zipfile.ZipFile(archiveFile, "w")
@@ -115,7 +135,7 @@
try:
os.unlink(archiveFile)
except OSError, e:
-if e.errno != 2:
+if e.errno != errno.ENOENT:
raise
if sys.platform == 'darwin':
@@ -183,32 +203,17 @@
shutil.rmtree(thinDirectory)
elif platform == 'gtk' or platform == 'efl':
-thinDirectory = os.path.join(_configurationBuildDirectory, 'thin')
-
-removeDirectoryIfExists(thinDirectory)
-os.mkdir(thinDirectory)
-
-neededDirectories = ["bin", "lib"]
-
+# On GTK+/EFL we don't need the intermediate step of creating a thinDirectory
+# to be compressed in a ZIP file, because we can create the ZIP directly.
+# This is faster and requires less disk resources.
+neededDirectories = ['bin', 'lib']
# When debug fission is enabled the directories below contain dwo files
# with the debug information needed to generate backtraces with GDB.
-for objectDir in ["Tools", "Source"]:
+for objectDir in ['Tools', 'Source']:
if dirContainsdwo(objectDir):
neededDirectories.append(objectDir)
-for dirname in neededDirectories:
-fromDir = os.path.join(_configurationBuildDirectory, dirname, '.')
-toDir = os.path.join(thinDirectory, dirname)
-os.makedirs(toDir)
-if subprocess.call('cp -R %s %s' % (fromDir, toDir), shell=True):
-return 1
-
-for root, dirs, files in os.walk(thinDirectory, topdown=False):
-for name in files:
-if name.endswith(".o"):
-os.remove(os.path.join(root, name))
-
-if createZip(thinDirectory, configuration):
+if createZipFromList(neededDirectories, configuration, excludePattern='*.o'):
return 1
def unzipArchive(directoryToExtractTo, configuration):
Modified: trunk/Tools/ChangeLog (211379 => 211380)
--- trunk/Tools/ChangeLog 2017-01-30 19:46:40 UTC (rev 211379)
+++ trunk/Tools/ChangeLog 2017-01-30 20:05:34 UTC (rev 211380)
@@ -1,3 +1,19 @@
+2017-01-30 Carlos Alberto Lopez Perez
+
+[GTK][EFL] Avoid using a thin directory to create the built product on the archive-built-product step.
+https://bugs.webkit.org/show_bug.cgi?id=167596
+
+Reviewed by Daniel Bates.
+
+We avoid needing a thin directory by invoking the zip program with
+the list of directories from the build directory to be zipped,
+and by using the zip feature to exclude files matching a pattern.
+
+* BuildSlaveSupport/built-product-archive:
+(copyBuildFiles):
+(createZipFromList):
+(archiveBuiltProduct):
+
2017-01-30 Jonathan Bedard
Use simctl instead of LayoutTestRelay
___
Title: [211379] trunk
Revision 211379
Author simon.fra...@apple.com
Date 2017-01-30 11:46:40 -0800 (Mon, 30 Jan 2017)
Log Message
Fixed elements should not rubber-band in WK2, nor remain at negative offsets
https://bugs.webkit.org/show_bug.cgi?id=167484
rdar://problem/29453068
Reviewed by Dean Jackson.
Source/WebCore:
There were various problems with the layout rect computation:
1. It ignored the scrollBehaviorForFixedElements() which we use to avoid rubber-banding fixed
elements in WK2, but allow in WK1, so make use of that.
2. Sometimes layouts/paints of fixed elements would be triggered when coalesced calls to
AsyncScrollingCoordinator::scheduleUpdateScrollPositionAfterAsyncScroll() failed to
copy the layoutViewportOrigin to the scheduled update.
3. The layout viewport could be left with a negative top/left after rubber-banding.
Also add a way to do unconstrained scrollTo(), so that a test can call window.scrollTo(-10, -10) to
simulate rubberbanding.
Tests: fast/visual-viewport/rubberbanding-viewport-rects-header-footer.html
fast/visual-viewport/rubberbanding-viewport-rects.html
* page/FrameView.cpp:
(WebCore::FrameView::computeLayoutViewportOrigin): Handle ScrollBehaviorForFixedElements, incorporating it
into logic that clamps layoutViewportOrigin between min/max when rubberbanding is not allowed, or not in progress.
(WebCore::FrameView::updateLayoutViewport): Pass in scrollBehaviorForFixedElements().
(WebCore::FrameView::visibleDocumentRect): The clamping here was preventing the visible rect from
escaping the document bounds, which caused fixed elements to bounce with rubber-banding, so remove the clamping,
and fix the logic to allow rubber-banding while taking headers and footers into account.
* page/FrameView.h:
* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::scheduleUpdateScrollPositionAfterAsyncScroll): layoutViewportOrigin has to
be pushed onto the scheduled update, just like scroll position.
* page/scrolling/ScrollingTreeFrameScrollingNode.cpp:
(WebCore::ScrollingTreeFrameScrollingNode::layoutViewportForScrollPosition): Pass in m_behaviorForFixed.
* platform/ScrollView.cpp:
(WebCore::ScrollView::ScrollView):
(WebCore::ScrollView::adjustScrollPositionWithinRange):
(WebCore::ScrollView::setScrollOffset):
* platform/ScrollView.h:
(WebCore::ScrollView::setAllowsUnclampedScrollPositionForTesting):
(WebCore::ScrollView::allowsUnclampedScrollPosition):
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::setAllowUnclampedScrollPosition):
* testing/InternalSettings.h:
* testing/InternalSettings.idl:
Source/WebKit2:
Pass in StickToViewportBounds as we did before visual viewports.
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::computeCustomFixedPositionRect):
LayoutTests:
Add two tests that use internals.settings.setAllowUnclampedScrollPosition(true) and then
over-scroll to simulator rubber-banding, dumping viewport rects.
setAllowUnclampedScrollPosition() only works in WebKit2, so skip the tests elsewhere.
* TestExpectations:
* fast/visual-viewport/rubberbanding-viewport-rects-expected.txt: Added.
* fast/visual-viewport/rubberbanding-viewport-rects-header-footer-expected.txt: Added.
* fast/visual-viewport/rubberbanding-viewport-rects-header-footer.html: Added.
* fast/visual-viewport/rubberbanding-viewport-rects.html: Added.
* platform/ios-simulator-wk2/TestExpectations:
* platform/ios-simulator-wk2/fast/visual-viewport/rubberbanding-viewport-rects-expected.txt: Added.
* platform/ios-simulator-wk2/fast/visual-viewport/rubberbanding-viewport-rects-header-footer-expected.txt: Added.
* platform/mac-wk2/TestExpectations:
Modified Paths
trunk/LayoutTests/ChangeLog
trunk/LayoutTests/TestExpectations
trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations
trunk/LayoutTests/platform/mac-wk2/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/FrameView.cpp
trunk/Source/WebCore/page/FrameView.h
trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTreeFrameScrollingNode.cpp
trunk/Source/WebCore/platform/ScrollView.cpp
trunk/Source/WebCore/platform/ScrollView.h
trunk/Source/WebCore/testing/InternalSettings.cpp
trunk/Source/WebCore/testing/InternalSettings.h
trunk/Source/WebCore/testing/InternalSettings.idl
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm
Added Paths
trunk/LayoutTests/fast/visual-viewport/rubberbanding-viewport-rects-expected.txt
trunk/LayoutTests/fast/visual-viewport/rubberbanding-viewport-rects-header-footer-expected.txt
trunk/LayoutTests/fast/visual-viewport/rubberbanding-viewport-rects-header-footer.html
trunk/LayoutTests/fast/visual-viewport/rubberbanding-viewport-rects.html
trunk/LayoutTests/platform/ios-simulator-wk2/fast/visual-viewport/rubberbanding-viewport-rects-expected.txt
trunk/LayoutTests/platform/ios-simulator-wk2/fast/visual-viewport/rubberbanding-viewport-rects-heade
Title: [211378] branches/safari-604.1.5-branch/
Revision 211378
Author matthew_han...@apple.com
Date 2017-01-30 11:40:48 -0800 (Mon, 30 Jan 2017)
Log Message
New Branch.
Added Paths
branches/safari-604.1.5-branch/
Diff
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211377] trunk/Source/WebCore
Revision 211377
Author wenson_hs...@apple.com
Date 2017-01-30 10:59:36 -0800 (Mon, 30 Jan 2017)
Log Message
Web content process crashes when initiating a drag on a very large image
https://bugs.webkit.org/show_bug.cgi?id=167564
Reviewed by Beth Dakin.
If we begin dragging an image element that is too large to show the cached image for, we will show an image file
icon instead of the cached image. This may return null if createDragImageIconForCachedImageFilename is
unimplemented, so in the meantime, we should not assume that dragImage will always exist before calling into
doSystemDrag in doImageDrag and bail from the drag operation if that is the case.
* page/DragController.cpp:
(WebCore::DragController::doImageDrag):
Modified Paths
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/DragController.cpp
Diff
Modified: trunk/Source/WebCore/ChangeLog (211376 => 211377)
--- trunk/Source/WebCore/ChangeLog 2017-01-30 18:45:21 UTC (rev 211376)
+++ trunk/Source/WebCore/ChangeLog 2017-01-30 18:59:36 UTC (rev 211377)
@@ -1,3 +1,18 @@
+2017-01-30 Wenson Hsieh
+
+Web content process crashes when initiating a drag on a very large image
+https://bugs.webkit.org/show_bug.cgi?id=167564
+
+Reviewed by Beth Dakin.
+
+If we begin dragging an image element that is too large to show the cached image for, we will show an image file
+icon instead of the cached image. This may return null if createDragImageIconForCachedImageFilename is
+unimplemented, so in the meantime, we should not assume that dragImage will always exist before calling into
+doSystemDrag in doImageDrag and bail from the drag operation if that is the case.
+
+* page/DragController.cpp:
+(WebCore::DragController::doImageDrag):
+
2017-01-30 Chris Dumez
Update DiagnosticLoggingClient::logDiagnosticMessageWithValue() to take in the value as a double
Modified: trunk/Source/WebCore/page/DragController.cpp (211376 => 211377)
--- trunk/Source/WebCore/page/DragController.cpp 2017-01-30 18:45:21 UTC (rev 211376)
+++ trunk/Source/WebCore/page/DragController.cpp 2017-01-30 18:59:36 UTC (rev 211377)
@@ -977,6 +977,9 @@
}
}
+if (!dragImage)
+return;
+
dragImageOffset = mouseDownPoint + scaledOrigin;
doSystemDrag(dragImage, dragImageOffset, dragOrigin, dataTransfer, frame, false);
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211376] trunk/Source
Revision 211376
Author cdu...@apple.com
Date 2017-01-30 10:45:21 -0800 (Mon, 30 Jan 2017)
Log Message
Update DiagnosticLoggingClient::logDiagnosticMessageWithValue() to take in the value as a double
https://bugs.webkit.org/show_bug.cgi?id=167536
Reviewed by Darin Adler.
Update DiagnosticLoggingClient::logDiagnosticMessageWithValue() to take in the value as a double
instead of a string. The value needs to be numeric and the current API is error-prone.
Source/WebCore:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerEngineFailedToLoad):
* loader/EmptyClients.cpp:
* page/DiagnosticLoggingClient.h:
Source/WebKit2:
* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::logDiagnosticMessage):
(WebKit::NetworkProcess::logDiagnosticMessageWithResult):
(WebKit::NetworkProcess::logDiagnosticMessageWithValue):
* NetworkProcess/NetworkProcess.h:
* Scripts/webkit/messages.py:
(headers_for_type):
* Shared/WebCoreArgumentCoders.h:
* UIProcess/HighPerformanceGraphicsUsageSampler.cpp:
(WebKit::HighPerformanceGraphicsUsageSampler::timerFired):
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::logDiagnosticMessage):
(WebKit::NetworkProcessProxy::logDiagnosticMessageWithResult):
(WebKit::NetworkProcessProxy::logDiagnosticMessageWithValue):
* UIProcess/Network/NetworkProcessProxy.h:
* UIProcess/Network/NetworkProcessProxy.messages.in:
* UIProcess/PerActivityStateCPUUsageSampler.cpp:
(WebKit::PerActivityStateCPUUsageSampler::loggingTimerFired):
* UIProcess/WebBackForwardList.cpp:
(WebKit::WebBackForwardList::goToItem):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::logDiagnosticMessage):
(WebKit::WebPageProxy::logDiagnosticMessageWithResult):
(WebKit::WebPageProxy::logDiagnosticMessageWithValue):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.cpp:
(WebKit::WebDiagnosticLoggingClient::logDiagnosticMessage):
(WebKit::WebDiagnosticLoggingClient::logDiagnosticMessageWithResult):
(WebKit::WebDiagnosticLoggingClient::logDiagnosticMessageWithValue):
* WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.h:
Modified Paths
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/HTMLMediaElement.cpp
trunk/Source/WebCore/loader/EmptyClients.cpp
trunk/Source/WebCore/page/DiagnosticLoggingClient.h
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/NetworkProcess/NetworkProcess.cpp
trunk/Source/WebKit2/NetworkProcess/NetworkProcess.h
trunk/Source/WebKit2/Scripts/webkit/messages.py
trunk/Source/WebKit2/Shared/WebCoreArgumentCoders.h
trunk/Source/WebKit2/UIProcess/HighPerformanceGraphicsUsageSampler.cpp
trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp
trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.h
trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.messages.in
trunk/Source/WebKit2/UIProcess/PerActivityStateCPUUsageSampler.cpp
trunk/Source/WebKit2/UIProcess/WebBackForwardList.cpp
trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit2/UIProcess/WebPageProxy.h
trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in
trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.cpp
trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.h
Diff
Modified: trunk/Source/WebCore/ChangeLog (211375 => 211376)
--- trunk/Source/WebCore/ChangeLog 2017-01-30 18:18:46 UTC (rev 211375)
+++ trunk/Source/WebCore/ChangeLog 2017-01-30 18:45:21 UTC (rev 211376)
@@ -1,3 +1,18 @@
+2017-01-30 Chris Dumez
+
+Update DiagnosticLoggingClient::logDiagnosticMessageWithValue() to take in the value as a double
+https://bugs.webkit.org/show_bug.cgi?id=167536
+
+Reviewed by Darin Adler.
+
+Update DiagnosticLoggingClient::logDiagnosticMessageWithValue() to take in the value as a double
+instead of a string. The value needs to be numeric and the current API is error-prone.
+
+* html/HTMLMediaElement.cpp:
+(WebCore::HTMLMediaElement::mediaPlayerEngineFailedToLoad):
+* loader/EmptyClients.cpp:
+* page/DiagnosticLoggingClient.h:
+
2017-01-30 Ryan Haddad
Unreviewed, rollout r211235 Pointer lock events should be delivered directly to the target element.
Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (211375 => 211376)
--- trunk/Source/WebCore/html/HTMLMediaElement.cpp 2017-01-30 18:18:46 UTC (rev 211375)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp 2017-01-30 18:45:21 UTC (rev 211376)
@@ -6472,7 +6472,7 @@
return;
if (auto* page = document().page())
-page->diagnosticLoggingClient().logDiagnosticMessageWithValue(DiagnosticLoggingKeys::engineFailedToLoadKey(), m_player->engineDescription(), String::number(m_player->platformErrorCode()), ShouldSample::No);
+page->diagnosticLoggingClient().logDiagnosticMessageWithValue(DiagnosticLoggingKeys::engineFailedToLoadKey(), m_player->engineDescripti
Title: [211375] trunk
Revision 211375
Author ryanhad...@apple.com
Date 2017-01-30 10:18:46 -0800 (Mon, 30 Jan 2017)
Log Message
Unreviewed, rollout r211235 Pointer lock events should be delivered directly to the target element.
The LayoutTest for this change is frequently failing.
Source/WebCore:
* page/EventHandler.cpp:
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleMouseDoubleClickEvent):
(WebCore::EventHandler::handleMouseMoveEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):
(WebCore::EventHandler::handleMouseForceEvent):
(WebCore::EventHandler::handleWheelEvent):
* page/PointerLockController.cpp:
(WebCore::PointerLockController::isLocked): Deleted.
(WebCore::PointerLockController::dispatchLockedWheelEvent): Deleted.
* page/PointerLockController.h:
LayoutTests:
* platform/mac/TestExpectations:
* pointer-lock/mouse-event-delivery-expected.txt:
* pointer-lock/mouse-event-delivery.html:
Modified Paths
trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac/TestExpectations
trunk/LayoutTests/pointer-lock/mouse-event-delivery-expected.txt
trunk/LayoutTests/pointer-lock/mouse-event-delivery.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/EventHandler.cpp
trunk/Source/WebCore/page/PointerLockController.cpp
trunk/Source/WebCore/page/PointerLockController.h
Diff
Modified: trunk/LayoutTests/ChangeLog (211374 => 211375)
--- trunk/LayoutTests/ChangeLog 2017-01-30 18:16:57 UTC (rev 211374)
+++ trunk/LayoutTests/ChangeLog 2017-01-30 18:18:46 UTC (rev 211375)
@@ -1,3 +1,13 @@
+2017-01-30 Ryan Haddad
+
+Unreviewed, rollout r211235 Pointer lock events should be delivered directly to the target element.
+
+The LayoutTest for this change is frequently failing.
+
+* platform/mac/TestExpectations:
+* pointer-lock/mouse-event-delivery-expected.txt:
+* pointer-lock/mouse-event-delivery.html:
+
2017-01-30 Antoine Quint
LayoutTest media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html is flaky
Modified: trunk/LayoutTests/platform/mac/TestExpectations (211374 => 211375)
--- trunk/LayoutTests/platform/mac/TestExpectations 2017-01-30 18:16:57 UTC (rev 211374)
+++ trunk/LayoutTests/platform/mac/TestExpectations 2017-01-30 18:18:46 UTC (rev 211375)
@@ -280,6 +280,7 @@
# Pointer Lock can only check some of the API at the moment.
pointer-lock/bug90391-move-then-window-open-crash.html
pointer-lock/locked-element-iframe-removed-from-dom.html
+pointer-lock/mouse-event-delivery.html
pointer-lock/pointerlockchange-event-on-lock-lost.html
pointer-lock/pointerlockchange-pointerlockerror-events.html
pointer-lock/pointerlockelement-null-when-pending.html
Modified: trunk/LayoutTests/pointer-lock/mouse-event-delivery-expected.txt (211374 => 211375)
--- trunk/LayoutTests/pointer-lock/mouse-event-delivery-expected.txt 2017-01-30 18:16:57 UTC (rev 211374)
+++ trunk/LayoutTests/pointer-lock/mouse-event-delivery-expected.txt 2017-01-30 18:18:46 UTC (rev 211375)
@@ -5,17 +5,11 @@
PASS document.onpointerlockchange event received.
PASS document.pointerLockElement is targetdiv1
- With a lock in place send a wheel event.
-PASS event type: wheel, target: target1, received on: target1
-PASS event type: wheel, target: target1, received on: body
With a lock in place send a click.
PASS event type: mousedown, target: target1, received on: target1
PASS event type: mousedown, target: target1, received on: body
PASS document.onpointerlockchange event received.
PASS document.pointerLockElement is targetdiv2
- With a lock in place send a wheel event.
-PASS event type: wheel, target: target2, received on: target2
-PASS event type: wheel, target: target2, received on: body
With a lock in place send a click.
PASS event type: mousedown, target: target2, received on: target2
PASS event type: mousedown, target: target2, received on: body
Modified: trunk/LayoutTests/pointer-lock/mouse-event-delivery.html (211374 => 211375)
--- trunk/LayoutTests/pointer-lock/mouse-event-delivery.html 2017-01-30 18:16:57 UTC (rev 211374)
+++ trunk/LayoutTests/pointer-lock/mouse-event-delivery.html 2017-01-30 18:18:46 UTC (rev 211375)
@@ -42,18 +42,6 @@
// doNextStep() called by onpointerlockchange handler.
},
function () {
-debug(" With a lock in place send a wheel event.")
-targetdiv1._onwheel_ = eventExpected;
-targetdiv2._onwheel_ = eventNotExpected;
-document.body._onwheel_ = eventExpected;
-if (window.eventSender) {
-window.eventSender.mouseMoveTo(20,20);
-window.eventSender.leapForward(1000);
-window.eventSender.mouseScrollBy(0,10);
-}
-doNextStep();
-},
-function () {
debug(" With a lock in place send a click.")
targetdiv1._onmousedown_ = eventExpected;
Title: [211374] trunk
Revision 211374
Author grao...@webkit.org
Date 2017-01-30 10:16:57 -0800 (Mon, 30 Jan 2017)
Log Message
LayoutTest media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=167254
Reviewed by Dean Jackson.
Source/WebCore:
When we would identify that we need to prolong an existing auto-hide timer, when the previous
auto-hide timer was marked as non-cancelable, calling _cancelAutoHideTimer() would not actually
cancel the previous timer, which would let it fire and hide the controls bar. We now have two
methods, _cancelAutoHideTimer() which always cancels the current auto-hide timer, and
_cancelNonEnforcedAutoHideTimer() which is used from all other existing call sites, which only
cancels the current auto-hide timer if it was marked as cancelable. This, and revised timing in
the test itself, make media/modern-media-controls/media-controller/media-controller-auto-hide-
mouse-leave-after-play.html a lot more reliable.
We also make a small drive-by fix where we ensure the "autoHideDelay" property is set first so
that setting other members which may set a timer do not used an undefined value for the auto-hide
timer delay.
* Modules/modern-media-controls/controls/controls-bar.js:
(ControlsBar.prototype.set visible):
(ControlsBar.prototype.handleEvent):
(ControlsBar.prototype._cancelNonEnforcedAutoHideTimer):
(ControlsBar.prototype._cancelAutoHideTimer):
LayoutTests:
We improve the test by setting off timers when the actual "play" and "pause" events are
triggered rather than when we call .play() or .pause() on the media element. This matches
when the auto-hide timer are set in ControlsBar and makes the test more robust. Combined
with the modern-media-controls WebCore module source changes, we can now stop marking this
test as flaky.
We apply the same change to media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html
since it also sets off a timer based on the media being paused.
* media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt:
* media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html:
* media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html:
* platform/mac/TestExpectations:
Modified Paths
trunk/LayoutTests/ChangeLog
trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt
trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html
trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html
trunk/LayoutTests/platform/mac/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/modern-media-controls/controls/controls-bar.js
Diff
Modified: trunk/LayoutTests/ChangeLog (211373 => 211374)
--- trunk/LayoutTests/ChangeLog 2017-01-30 18:14:25 UTC (rev 211373)
+++ trunk/LayoutTests/ChangeLog 2017-01-30 18:16:57 UTC (rev 211374)
@@ -1,3 +1,25 @@
+2017-01-30 Antoine Quint
+
+LayoutTest media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html is flaky
+https://bugs.webkit.org/show_bug.cgi?id=167254
+
+
+Reviewed by Dean Jackson.
+
+We improve the test by setting off timers when the actual "play" and "pause" events are
+triggered rather than when we call .play() or .pause() on the media element. This matches
+when the auto-hide timer are set in ControlsBar and makes the test more robust. Combined
+with the modern-media-controls WebCore module source changes, we can now stop marking this
+test as flaky.
+
+We apply the same change to media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html
+since it also sets off a timer based on the media being paused.
+
+* media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt:
+* media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html:
+* media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html:
+* platform/mac/TestExpectations:
+
2017-01-30 Daniel Bates
[QuickLook] Make HTTP QuickLook tests work in Apple Internal DumpRenderTree
Modified: trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt (211373 => 211374)
--- trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt 2017-01-30 18:14:25 UTC (rev 211373)
+++ trunk/LayoutTests/media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt 2017-01-30 18:1
Title: [211373] trunk/LayoutTests
Revision 211373
Author dba...@webkit.org
Date 2017-01-30 10:14:25 -0800 (Mon, 30 Jan 2017)
Log Message
[QuickLook] Make HTTP QuickLook tests work in Apple Internal DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=167483
Reviewed by Andy Estes.
Write QuickLook tests that tap a hyperlink in terms of UIHelper (in LayoutTests/resources/ui-helper.js)
so that we can run these tests in an Apple Internal build of DumpRenderTree.
* http/tests/quicklook/at-import-stylesheet-blocked.html: Write in terms of UIHelper.
* http/tests/quicklook/base-url-blocked.html: Ditto.
* http/tests/quicklook/cross-origin-iframe-blocked.html: Ditto.
* http/tests/quicklook/document-domain-is-empty-string.html: Ditto.
* http/tests/quicklook/external-stylesheet-blocked.html: Ditto.
* http/tests/quicklook/hide-referer-on-navigation.html: Ditto.
* http/tests/quicklook/resources/tap-at-point-and-notify-done.js: Removed.
* http/tests/quicklook/resources/tap-run-test-hyperlink.js: Added.
(runTest):
* http/tests/quicklook/submit-form-blocked.html: Ditto.
* http/tests/quicklook/top-navigation-blocked.html: Ditto.
* platform/ios-simulator-wk1/TestExpectations: Unskip QuickLook tests as we can now run
them in an Apple Internal build of DumpRenderTree. Note that these test are listed in
file LayoutTests/platform/ios-simulator/TestExpectations so that they are skipped in
WebKit for iOS Simulator built with the public iOS SDK as we need to fix .
* platform/ios-simulator-wk1/http/tests/quicklook/top-navigation-blocked-expected.txt: Added.
For some reason the console message "Unsafe _javascript_ attempt to initiate navigation" includes
a line number in DumpRenderTree (why?). This line number is not emitted when the test is run
in WebKitTestRunner. Add platform-specific result for now.
Modified Paths
trunk/LayoutTests/ChangeLog
trunk/LayoutTests/http/tests/quicklook/at-import-stylesheet-blocked.html
trunk/LayoutTests/http/tests/quicklook/base-url-blocked.html
trunk/LayoutTests/http/tests/quicklook/cross-origin-iframe-blocked.html
trunk/LayoutTests/http/tests/quicklook/document-domain-is-empty-string.html
trunk/LayoutTests/http/tests/quicklook/external-stylesheet-blocked.html
trunk/LayoutTests/http/tests/quicklook/hide-referer-on-navigation.html
trunk/LayoutTests/http/tests/quicklook/rtf-document-domain-is-empty-string.html
trunk/LayoutTests/http/tests/quicklook/submit-form-blocked.html
trunk/LayoutTests/http/tests/quicklook/top-navigation-blocked.html
trunk/LayoutTests/platform/ios-simulator-wk1/TestExpectations
Added Paths
trunk/LayoutTests/http/tests/quicklook/resources/tap-run-test-hyperlink.js
trunk/LayoutTests/platform/ios-simulator-wk1/http/tests/quicklook/
trunk/LayoutTests/platform/ios-simulator-wk1/http/tests/quicklook/top-navigation-blocked-expected.txt
Removed Paths
trunk/LayoutTests/http/tests/quicklook/resources/tap-at-point-and-notify-done.js
Diff
Modified: trunk/LayoutTests/ChangeLog (211372 => 211373)
--- trunk/LayoutTests/ChangeLog 2017-01-30 18:13:11 UTC (rev 211372)
+++ trunk/LayoutTests/ChangeLog 2017-01-30 18:14:25 UTC (rev 211373)
@@ -1,3 +1,33 @@
+2017-01-30 Daniel Bates
+
+[QuickLook] Make HTTP QuickLook tests work in Apple Internal DumpRenderTree
+https://bugs.webkit.org/show_bug.cgi?id=167483
+
+Reviewed by Andy Estes.
+
+Write QuickLook tests that tap a hyperlink in terms of UIHelper (in LayoutTests/resources/ui-helper.js)
+so that we can run these tests in an Apple Internal build of DumpRenderTree.
+
+* http/tests/quicklook/at-import-stylesheet-blocked.html: Write in terms of UIHelper.
+* http/tests/quicklook/base-url-blocked.html: Ditto.
+* http/tests/quicklook/cross-origin-iframe-blocked.html: Ditto.
+* http/tests/quicklook/document-domain-is-empty-string.html: Ditto.
+* http/tests/quicklook/external-stylesheet-blocked.html: Ditto.
+* http/tests/quicklook/hide-referer-on-navigation.html: Ditto.
+* http/tests/quicklook/resources/tap-at-point-and-notify-done.js: Removed.
+* http/tests/quicklook/resources/tap-run-test-hyperlink.js: Added.
+(runTest):
+* http/tests/quicklook/submit-form-blocked.html: Ditto.
+* http/tests/quicklook/top-navigation-blocked.html: Ditto.
+* platform/ios-simulator-wk1/TestExpectations: Unskip QuickLook tests as we can now run
+them in an Apple Internal build of DumpRenderTree. Note that these test are listed in
+file LayoutTests/platform/ios-simulator/TestExpectations so that they are skipped in
+WebKit for iOS Simulator built with the public iOS SDK as we need to fix .
+* platform/ios-simulator-wk1/http/tests/quicklook/top-navigation-blocked-expected.txt: Added.
+For some reason the console message "Unsafe _javascript_ attempt to initiate navigation" includes
+a line number in DumpRenderTree (why?). This line number is not emitted when the test is ru
Title: [211372] trunk/Source/WebCore
Revision 211372
Author carlo...@webkit.org
Date 2017-01-30 10:13:11 -0800 (Mon, 30 Jan 2017)
Log Message
REGRESSION(r202615?): [GStreamer] ASSERTION FAILED: isMainThread() in WebCore::BuiltinResourceHandleConstructorMap& WebCore::builtinResourceHandleConstructorMap()
https://bugs.webkit.org/show_bug.cgi?id=167003
Reviewed by Michael Catanzaro.
Add a way to create a ResourceHandle for a given SoupNetworkSession and use it in the GStreamer streaming client
to ensure both the session and the handle are created and destroyed in the secondary thread. This way we also
avoid using the default session for downloading HLS fragments.
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(ResourceHandleStreamingClient::ResourceHandleStreamingClient): Create a SoupNetworkSession and pass it to ResourceHandle::create().
* platform/network/ResourceHandle.h: Add create and constructor to receive a SoupNetworkSession.
* platform/network/ResourceHandleInternal.h: Add SoupNetworkSession member.
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ResourceHandleInternal::soupSession): Return the SoupNetworkSession if not nullptr.
(WebCore::ResourceHandle::create): Create a ResourceHandle without trying to use any builtin constructor and
using the given SoupNetworkSession.
(WebCore::ResourceHandle::ResourceHandle): Set the SoupNetworkSession if early request validations didn't fail.
Modified Paths
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
trunk/Source/WebCore/platform/network/ResourceHandle.h
trunk/Source/WebCore/platform/network/ResourceHandleInternal.h
trunk/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
Diff
Modified: trunk/Source/WebCore/ChangeLog (211371 => 211372)
--- trunk/Source/WebCore/ChangeLog 2017-01-30 17:36:43 UTC (rev 211371)
+++ trunk/Source/WebCore/ChangeLog 2017-01-30 18:13:11 UTC (rev 211372)
@@ -1,3 +1,24 @@
+2017-01-30 Carlos Garcia Campos
+
+REGRESSION(r202615?): [GStreamer] ASSERTION FAILED: isMainThread() in WebCore::BuiltinResourceHandleConstructorMap& WebCore::builtinResourceHandleConstructorMap()
+https://bugs.webkit.org/show_bug.cgi?id=167003
+
+Reviewed by Michael Catanzaro.
+
+Add a way to create a ResourceHandle for a given SoupNetworkSession and use it in the GStreamer streaming client
+to ensure both the session and the handle are created and destroyed in the secondary thread. This way we also
+avoid using the default session for downloading HLS fragments.
+
+* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+(ResourceHandleStreamingClient::ResourceHandleStreamingClient): Create a SoupNetworkSession and pass it to ResourceHandle::create().
+* platform/network/ResourceHandle.h: Add create and constructor to receive a SoupNetworkSession.
+* platform/network/ResourceHandleInternal.h: Add SoupNetworkSession member.
+* platform/network/soup/ResourceHandleSoup.cpp:
+(WebCore::ResourceHandleInternal::soupSession): Return the SoupNetworkSession if not nullptr.
+(WebCore::ResourceHandle::create): Create a ResourceHandle without trying to use any builtin constructor and
+using the given SoupNetworkSession.
+(WebCore::ResourceHandle::ResourceHandle): Set the SoupNetworkSession if early request validations didn't fail.
+
2017-01-30 Youenn Fablet
[WebRTC] Add support for libwebrtc data channel
Modified: trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp (211371 => 211372)
--- trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp 2017-01-30 17:36:43 UTC (rev 211371)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp 2017-01-30 18:13:11 UTC (rev 211372)
@@ -46,6 +46,10 @@
#include
#include
+#if USE(SOUP)
+#include "SoupNetworkSession.h"
+#endif
+
using namespace WebCore;
class StreamingClient {
@@ -111,6 +115,9 @@
Lock m_terminateRunLoopConditionMutex;
Condition m_terminateRunLoopCondition;
RefPtr m_resource;
+#if USE(SOUP)
+std::unique_ptr m_session;
+#endif
};
enum MainThreadSourceNotification {
@@ -1071,7 +1078,13 @@
{
LockHolder locker(m_initializeRunLoopConditionMutex);
m_runLoop = &RunLoop::current();
+#if USE(SOUP)
+m_session = std::make_unique();
+m_resource = ResourceHandle::create(*m_session, request, this, true, false);
+#else
+// FIXME: This create will hit an assert in debug builds. See https://bugs.webkit.org/show_bug.cgi?id=167003.
m_resource = ResourceHandle::create(nullptr /*context*/, request, this, true, false);
+#endif
m_initializeRunLoopCondition.notifyOne();
}
if (!m_resource)
@@ -1085,6 +1098,9 @@
m_resource->clearClient();
Title: [211371] trunk/Source/WebCore
Revision 211371
Author commit-qu...@webkit.org
Date 2017-01-30 09:36:43 -0800 (Mon, 30 Jan 2017)
Log Message
[WebRTC] Add support for libwebrtc data channel
https://bugs.webkit.org/show_bug.cgi?id=167489
Patch by Youenn Fablet on 2017-01-30
Reviewed by Alex Christensen.
Partially covered by webrtc/datachannel/basic.html but not yet enabled on bots.
Introducing LibWebRTCDataChannelHandler as the integration layer between WebCore (RTCDataChannel)
and libwebrtc (DataChannelObserver).
* Modules/mediastream/RTCDataChannel.cpp:
(WebCore::RTCDataChannel::create):
(WebCore::RTCDataChannel::RTCDataChannel):
(WebCore::RTCDataChannel::bufferedAmount):
(WebCore::RTCDataChannel::bufferedAmountIsDecreasing):
* Modules/mediastream/RTCDataChannel.h:
* Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp: Added.
(WebCore::LibWebRTCDataChannelHandler::~LibWebRTCDataChannelHandler):
(WebCore::LibWebRTCDataChannelHandler::setClient):
(WebCore::LibWebRTCDataChannelHandler::sendStringData):
(WebCore::LibWebRTCDataChannelHandler::sendRawData):
(WebCore::LibWebRTCDataChannelHandler::close):
(WebCore::LibWebRTCDataChannelHandler::OnStateChange):
(WebCore::LibWebRTCDataChannelHandler::OnMessage):
* Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.h:
* Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
(WebCore::LibWebRTCMediaEndpoint::OnRemoveStream):
(WebCore::LibWebRTCMediaEndpoint::addDataChannel):
(): Deleted.
* Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:
(WebCore::LibWebRTCPeerConnectionBackend::createDataChannelHandler):
* dom/EventNames.h:
* platform/mediastream/RTCDataChannelHandler.h:
* platform/mediastream/RTCDataChannelHandlerClient.h:
* platform/mock/RTCDataChannelHandlerMock.h:
Modified Paths
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediastream/RTCDataChannel.cpp
trunk/Source/WebCore/Modules/mediastream/RTCDataChannel.h
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp
trunk/Source/WebCore/dom/EventNames.h
trunk/Source/WebCore/platform/mediastream/RTCDataChannelHandler.h
trunk/Source/WebCore/platform/mediastream/RTCDataChannelHandlerClient.h
trunk/Source/WebCore/platform/mock/RTCDataChannelHandlerMock.h
Added Paths
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.h
Diff
Modified: trunk/Source/WebCore/ChangeLog (211370 => 211371)
--- trunk/Source/WebCore/ChangeLog 2017-01-30 17:31:47 UTC (rev 211370)
+++ trunk/Source/WebCore/ChangeLog 2017-01-30 17:36:43 UTC (rev 211371)
@@ -1,3 +1,41 @@
+2017-01-30 Youenn Fablet
+
+[WebRTC] Add support for libwebrtc data channel
+https://bugs.webkit.org/show_bug.cgi?id=167489
+
+Reviewed by Alex Christensen.
+
+Partially covered by webrtc/datachannel/basic.html but not yet enabled on bots.
+
+Introducing LibWebRTCDataChannelHandler as the integration layer between WebCore (RTCDataChannel)
+and libwebrtc (DataChannelObserver).
+
+* Modules/mediastream/RTCDataChannel.cpp:
+(WebCore::RTCDataChannel::create):
+(WebCore::RTCDataChannel::RTCDataChannel):
+(WebCore::RTCDataChannel::bufferedAmount):
+(WebCore::RTCDataChannel::bufferedAmountIsDecreasing):
+* Modules/mediastream/RTCDataChannel.h:
+* Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp: Added.
+(WebCore::LibWebRTCDataChannelHandler::~LibWebRTCDataChannelHandler):
+(WebCore::LibWebRTCDataChannelHandler::setClient):
+(WebCore::LibWebRTCDataChannelHandler::sendStringData):
+(WebCore::LibWebRTCDataChannelHandler::sendRawData):
+(WebCore::LibWebRTCDataChannelHandler::close):
+(WebCore::LibWebRTCDataChannelHandler::OnStateChange):
+(WebCore::LibWebRTCDataChannelHandler::OnMessage):
+* Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.h:
+* Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
+(WebCore::LibWebRTCMediaEndpoint::OnRemoveStream):
+(WebCore::LibWebRTCMediaEndpoint::addDataChannel):
+(): Deleted.
+* Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:
+(WebCore::LibWebRTCPeerConnectionBackend::createDataChannelHandler):
+* dom/EventNames.h:
+* platform/mediastream/RTCDataChannelHandler.h:
+* platform/mediastream/RTCDataChannelHandlerClient.h:
+* platform/mock/RTCDataChannelHandlerMock.h:
+
2017-01-30 Carlos Garcia Campos
Several web timing tests crash in GTK+ and AppleWin bots
Modified: trunk/Source/WebCore/Modules/mediastream/RTCDataChannel.cpp (211370 => 211371)
--- trunk/Source/WebCore/Modules/medias
Title: [211370] trunk/Tools
Revision 211370
Author jbed...@apple.com
Date 2017-01-30 09:31:47 -0800 (Mon, 30 Jan 2017)
Log Message
Use simctl instead of LayoutTestRelay
https://bugs.webkit.org/show_bug.cgi?id=165927
Reviewed by Daniel Bates.
Part 1
LayoutTestRelay uses SPI, since recent versions of the iOS SDK allow for installing apps on
simulators through simctl (iOS 10 and later), use this functionality instead.
* Scripts/webkitpy/port/base.py:
(Port.__init__): Added _test_runner_process_constructor.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort.app_identifier_from_bundle): Added function to extract bundle ID from plist.
* Scripts/webkitpy/port/driver.py:
(Driver._start): Pass worker_number to server_process so we can look up the correct simulator device to use.
(IOSSimulatorDriver): Deleted.
* Scripts/webkitpy/port/driver_unittest.py:
(DriverTest.test_stop_cleans_up_properly): Set _test_runner_process_constructor for testing.
(DriverTest.test_two_starts_cleans_up_properly): Ditto.
(DriverTest.test_start_actually_starts): Ditto.
* Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort): Remove relay_name.
(IOSSimulatorPort.__init__): Set _test_runner_process_constructor to SimulatorProcess for IOSSimulatorPort.
(IOSSimulatorPort._create_simulators): Formatting change.
(IOSSimulatorPort.relay_path): Deleted.
(IOSSimulatorPort._check_relay): Deleted.
(IOSSimulatorPort._check_port_build): Deleted. Use base class implementation
(IOSSimulatorPort._build_relay): Deleted.
(IOSSimulatorPort._build_driver): Deleted. Use base class implementation
(IOSSimulatorPort._driver_class): Deleted. Use base class implementation
* Scripts/webkitpy/port/ios_unittest.py:
(iosTest.test_32bit): Update test.
(iosTest.test_64bit): Update test.
* Scripts/webkitpy/port/server_process.py:
(ServerProcess.__init__): Added argument worker_number. This class does not make use of it. We will make use of this argument in SimulatorProcess to lookup the associated simulator device.
(ServerProcess._set_file_nonblocking): Added to share common code.
* Scripts/webkitpy/port/server_process_mock.py:
(MockServerProcess.__init__): Added argument worker_number.
* Scripts/webkitpy/port/simulator_process.py: Added.
(SimulatorProcess): Added.
(SimulatorProcess.Popen): Added.
(SimulatorProcess.Popen.__init__): Added. Initialize Popen structure with stdin, stdout, stderr and pid.
(SimulatorProcess.Popen.poll): Added. Check if the process is running.
(SimulatorProcess.Popen.wait): Added. Wait for process to close.
(SimulatorProcess.__init__): Added. Install app to device specified through port and worker_number.
(SimulatorProcess._reset): Added. Unlink fifos.
(SimulatorProcess._start): Added. Launch app on simulator, link fifos.
(SimulatorProcess._kill): Added. Shutdown app on simulator.
* Scripts/webkitpy/xcode/simulator.py:
(Device.__init__): Accept host to run install/launch/terminate.
(Device.install_app): Install app to target Device.
(Device.launch_app): Launch app on target Device.
(Device.terminate_app): Shutdown app on target Device.
(Simulator._parse_devices): Pass host to Device.
Modified Paths
trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/port/base.py
trunk/Tools/Scripts/webkitpy/port/darwin.py
trunk/Tools/Scripts/webkitpy/port/driver.py
trunk/Tools/Scripts/webkitpy/port/driver_unittest.py
trunk/Tools/Scripts/webkitpy/port/ios.py
trunk/Tools/Scripts/webkitpy/port/ios_unittest.py
trunk/Tools/Scripts/webkitpy/port/server_process.py
trunk/Tools/Scripts/webkitpy/port/server_process_mock.py
trunk/Tools/Scripts/webkitpy/xcode/simulator.py
Added Paths
trunk/Tools/Scripts/webkitpy/port/simulator_process.py
Diff
Modified: trunk/Tools/ChangeLog (211369 => 211370)
--- trunk/Tools/ChangeLog 2017-01-30 17:09:06 UTC (rev 211369)
+++ trunk/Tools/ChangeLog 2017-01-30 17:31:47 UTC (rev 211370)
@@ -1,3 +1,61 @@
+2017-01-30 Jonathan Bedard
+
+Use simctl instead of LayoutTestRelay
+https://bugs.webkit.org/show_bug.cgi?id=165927
+
+Reviewed by Daniel Bates.
+
+Part 1
+
+LayoutTestRelay uses SPI, since recent versions of the iOS SDK allow for installing apps on
+simulators through simctl (iOS 10 and later), use this functionality instead.
+
+* Scripts/webkitpy/port/base.py:
+(Port.__init__): Added _test_runner_process_constructor.
+* Scripts/webkitpy/port/darwin.py:
+(DarwinPort.app_identifier_from_bundle): Added function to extract bundle ID from plist.
+* Scripts/webkitpy/port/driver.py:
+(Driver._start): Pass worker_number to server_process so we can look up the correct simulator device to use.
+(IOSSimulatorDriver): Deleted.
+* Scripts/webkitpy/port/driver_unittest.py:
+(DriverTest.test_stop_cleans_up_properly): Set _test_runner_process_constructor for testing.
+(DriverTest.test_two_starts_cleans_up_properly): Ditto.
+(DriverTest.test_start_actually_starts): Ditto.
+* Scripts/webkitpy/port/io
Title: [211369] trunk/Tools
Revision 211369
Author clo...@igalia.com
Date 2017-01-30 09:09:06 -0800 (Mon, 30 Jan 2017)
Log Message
[GTK] pixman fails to compile on Raspberry Pi (GCC crash)
https://bugs.webkit.org/show_bug.cgi?id=167411
Reviewed by Michael Catanzaro.
Disable the ARM iwMMXt fast path for pixman, because it triggers
a GCC bug on the RPi with Raspbian/PIXEL causing a build failure.
* gtk/jhbuild.modules:
Modified Paths
trunk/Tools/ChangeLog
trunk/Tools/gtk/jhbuild.modules
Diff
Modified: trunk/Tools/ChangeLog (211368 => 211369)
--- trunk/Tools/ChangeLog 2017-01-30 17:04:18 UTC (rev 211368)
+++ trunk/Tools/ChangeLog 2017-01-30 17:09:06 UTC (rev 211369)
@@ -1,3 +1,15 @@
+2017-01-30 Carlos Alberto Lopez Perez
+
+[GTK] pixman fails to compile on Raspberry Pi (GCC crash)
+https://bugs.webkit.org/show_bug.cgi?id=167411
+
+Reviewed by Michael Catanzaro.
+
+Disable the ARM iwMMXt fast path for pixman, because it triggers
+a GCC bug on the RPi with Raspbian/PIXEL causing a build failure.
+
+* gtk/jhbuild.modules:
+
2017-01-30 Carlos Garcia Campos
[GTK] Add API to handle the accelerated compositing policy
Modified: trunk/Tools/gtk/jhbuild.modules (211368 => 211369)
--- trunk/Tools/gtk/jhbuild.modules 2017-01-30 17:04:18 UTC (rev 211368)
+++ trunk/Tools/gtk/jhbuild.modules 2017-01-30 17:09:06 UTC (rev 211369)
@@ -101,8 +101,12 @@
+
- autogenargs="--enable-gtk=no --disable-mmx">
+ autogenargs="--enable-gtk=no --disable-mmx --disable-arm-iwmmxt">
repo="cairographics.org"
hash="sha256:3dfed13b8060eadabf0a4945c7045b7793cc7e3e910e748a8bb0f0dc3e794904"
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211368] trunk/Source/WebKit2
Revision 211368
Author o...@webkit.org
Date 2017-01-30 09:04:18 -0800 (Mon, 30 Jan 2017)
Log Message
[Mac][cmake] Fix the build after r211354.
https://bugs.webkit.org/show_bug.cgi?id=167565
Unreviewed buildfix.
* PlatformMac.cmake:
Modified Paths
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/PlatformMac.cmake
Diff
Modified: trunk/Source/WebKit2/ChangeLog (211367 => 211368)
--- trunk/Source/WebKit2/ChangeLog 2017-01-30 16:53:09 UTC (rev 211367)
+++ trunk/Source/WebKit2/ChangeLog 2017-01-30 17:04:18 UTC (rev 211368)
@@ -1,3 +1,12 @@
+2017-01-30 Csaba Osztrogonác
+
+[Mac][cmake] Fix the build after r211354.
+https://bugs.webkit.org/show_bug.cgi?id=167565
+
+Unreviewed buildfix.
+
+* PlatformMac.cmake:
+
2017-01-30 Miguel Gomez
[GTK] Scrolling iframes, doesn't redraw their content
Modified: trunk/Source/WebKit2/PlatformMac.cmake (211367 => 211368)
--- trunk/Source/WebKit2/PlatformMac.cmake 2017-01-30 16:53:09 UTC (rev 211367)
+++ trunk/Source/WebKit2/PlatformMac.cmake 2017-01-30 17:04:18 UTC (rev 211368)
@@ -492,6 +492,7 @@
UIProcess/API/C
+UIProcess/API/C/Cocoa
UIProcess/API/C/mac
UIProcess/API/cpp
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211366] trunk/Source/WebKit2
Revision 211366
Author carlo...@webkit.org
Date 2017-01-30 08:47:15 -0800 (Mon, 30 Jan 2017)
Log Message
Unreviewed. Fix GTK+ debug build after r211365.
Remove invalid assert.
* WebProcess/WebPage/AcceleratedDrawingArea.cpp:
(WebKit::AcceleratedDrawingArea::exitAcceleratedCompositingModeNow):
Modified Paths
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.cpp
Diff
Modified: trunk/Source/WebKit2/ChangeLog (211365 => 211366)
--- trunk/Source/WebKit2/ChangeLog 2017-01-30 16:42:12 UTC (rev 211365)
+++ trunk/Source/WebKit2/ChangeLog 2017-01-30 16:47:15 UTC (rev 211366)
@@ -1,5 +1,14 @@
2017-01-30 Carlos Garcia Campos
+Unreviewed. Fix GTK+ debug build after r211365.
+
+Remove invalid assert.
+
+* WebProcess/WebPage/AcceleratedDrawingArea.cpp:
+(WebKit::AcceleratedDrawingArea::exitAcceleratedCompositingModeNow):
+
+2017-01-30 Carlos Garcia Campos
+
[GTK] Do not release OpenGL resource immediately when leaving accelerated compositing mode
https://bugs.webkit.org/show_bug.cgi?id=167544
Modified: trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.cpp (211365 => 211366)
--- trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.cpp 2017-01-30 16:42:12 UTC (rev 211365)
+++ trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.cpp 2017-01-30 16:47:15 UTC (rev 211366)
@@ -372,7 +372,6 @@
void AcceleratedDrawingArea::exitAcceleratedCompositingModeNow()
{
-ASSERT(!m_alwaysUseCompositing);
ASSERT(!m_layerTreeStateIsFrozen);
m_exitCompositingTimer.stop();
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211365] trunk/Source/WebKit2
Revision 211365
Author carlo...@webkit.org
Date 2017-01-30 08:42:12 -0800 (Mon, 30 Jan 2017)
Log Message
[GTK] Do not release OpenGL resource immediately when leaving accelerated compositing mode
https://bugs.webkit.org/show_bug.cgi?id=167544
Reviewed by Michael Catanzaro.
Sometimes the conditions to be in AC mode or not change quickly, and then we leave AC mode just enter it again
after a very short period of time. In those cases we are dropping all the GL resources and the compositor
thread, and creating it again. We could keep the layer tree host alive for a while when exiting AC mode, and
reuse it if we enter AC mode before the previous one has been discarded. While the previous layer tree host is
alive we still need to keep it up to date, for example if the web view is resized or contents size change, and
synchronize with the threaded compositor when it becomes the layer tree host again.
* WebProcess/WebPage/AcceleratedDrawingArea.cpp:
(WebKit::AcceleratedDrawingArea::~AcceleratedDrawingArea): Discard the previous layer tree host.
(WebKit::AcceleratedDrawingArea::AcceleratedDrawingArea): Initialize the timer to discard the previous layer
tree host.
(WebKit::AcceleratedDrawingArea::pageBackgroundTransparencyChanged): Notify the previous layer tree host if needed.
(WebKit::AcceleratedDrawingArea::mainFrameContentSizeChanged): Ditto.
(WebKit::AcceleratedDrawingArea::updateBackingStoreState): Ditto.
(WebKit::AcceleratedDrawingArea::enterAcceleratedCompositingMode): Reuse the previous layer tree host if possible.
(WebKit::AcceleratedDrawingArea::exitAcceleratedCompositingModeNow): Exit AC mode and save the layer tree host
starting a timer of 5 seconds to discard it if not reused.
(WebKit::AcceleratedDrawingArea::discardPreviousLayerTreeHost): Invalidate and destroy the previous layer tree host.
(WebKit::AcceleratedDrawingArea::didChangeViewportAttributes): Notify the previous layer tree host if needed.
(WebKit::AcceleratedDrawingArea::deviceOrPageScaleFactorChanged): Ditto.
* WebProcess/WebPage/AcceleratedDrawingArea.h:
* WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:
(WebKit::ThreadedCoordinatedLayerTreeHost::scrollNonCompositedContents): If it's discardable add the action to
be synchronized instead.
(WebKit::ThreadedCoordinatedLayerTreeHost::contentsSizeChanged): Ditto.
(WebKit::ThreadedCoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged): Ditto.
(WebKit::ThreadedCoordinatedLayerTreeHost::pageBackgroundTransparencyChanged): Ditto.
(WebKit::ThreadedCoordinatedLayerTreeHost::sizeDidChange): Ditto.
(WebKit::ThreadedCoordinatedLayerTreeHost::didChangeViewportAttributes): Ditto.
(WebKit::ThreadedCoordinatedLayerTreeHost::setIsDiscardable): When the layer tree host becomes discardable,
reset the sync actions and return. When it becomes the real layer tree host again, apply all pending actions to
synchronize with the threaded compositor.
* WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h:
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::scroll): Notify the previous layer tree host if needed.
(WebKit::DrawingAreaImpl::mainFrameContentSizeChanged): Ditto.
(WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): Use AcceleratedDrawingArea::exitAcceleratedCompositingModeNow().
* WebProcess/WebPage/LayerTreeHost.h:
(WebKit::LayerTreeHost::setIsDiscardable): Added.
Modified Paths
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.cpp
trunk/Source/WebKit2/WebProcess/WebPage/AcceleratedDrawingArea.h
trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp
trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h
trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp
trunk/Source/WebKit2/WebProcess/WebPage/LayerTreeHost.h
Diff
Modified: trunk/Source/WebKit2/ChangeLog (211364 => 211365)
--- trunk/Source/WebKit2/ChangeLog 2017-01-30 16:35:03 UTC (rev 211364)
+++ trunk/Source/WebKit2/ChangeLog 2017-01-30 16:42:12 UTC (rev 211365)
@@ -1,3 +1,50 @@
+2017-01-30 Carlos Garcia Campos
+
+[GTK] Do not release OpenGL resource immediately when leaving accelerated compositing mode
+https://bugs.webkit.org/show_bug.cgi?id=167544
+
+Reviewed by Michael Catanzaro.
+
+Sometimes the conditions to be in AC mode or not change quickly, and then we leave AC mode just enter it again
+after a very short period of time. In those cases we are dropping all the GL resources and the compositor
+thread, and creating it again. We could keep the layer tree host alive for a while when exiting AC mode, and
+reuse it if we enter AC mode before the previous one has been discarded. While the previous layer tree host is
+alive we still need to keep it up to date, for example if the web view is resized or contents size change, and
+
Title: [211364] trunk/Source/WebKit2
Revision 211364
Author r...@igalia.com
Date 2017-01-30 08:35:03 -0800 (Mon, 30 Jan 2017)
Log Message
[GTK] Remove support to enable/disable experimental features
https://bugs.webkit.org/show_bug.cgi?id=167586
Reviewed by Michael Catanzaro.
As requested in bug #167578 we should remove the support to enable/disable
experimental features in WebKitGTK+.
One reason is that CSS Grid Layout is going to be enabled by default now,
so we don't need it to be in this file.
Another is that this support needs to be rewritten to use
the enumerable experimental features API.
* PlatformGTK.cmake:
* UIProcess/API/gtk/WebKitSettings.cpp:
(webKitSettingsConstructed):
* UIProcess/gtk/ExperimentalFeatures.cpp: Removed.
* UIProcess/gtk/ExperimentalFeatures.h: Removed.
Modified Paths
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/PlatformGTK.cmake
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp
Removed Paths
trunk/Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.cpp
trunk/Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.h
Diff
Modified: trunk/Source/WebKit2/ChangeLog (211363 => 211364)
--- trunk/Source/WebKit2/ChangeLog 2017-01-30 13:50:37 UTC (rev 211363)
+++ trunk/Source/WebKit2/ChangeLog 2017-01-30 16:35:03 UTC (rev 211364)
@@ -1,3 +1,23 @@
+2017-01-30 Manuel Rego Casasnovas
+
+[GTK] Remove support to enable/disable experimental features
+https://bugs.webkit.org/show_bug.cgi?id=167586
+
+Reviewed by Michael Catanzaro.
+
+As requested in bug #167578 we should remove the support to enable/disable
+experimental features in WebKitGTK+.
+One reason is that CSS Grid Layout is going to be enabled by default now,
+so we don't need it to be in this file.
+Another is that this support needs to be rewritten to use
+the enumerable experimental features API.
+
+* PlatformGTK.cmake:
+* UIProcess/API/gtk/WebKitSettings.cpp:
+(webKitSettingsConstructed):
+* UIProcess/gtk/ExperimentalFeatures.cpp: Removed.
+* UIProcess/gtk/ExperimentalFeatures.h: Removed.
+
2017-01-30 Carlos Garcia Campos
[GTK] Add API to handle the accelerated compositing policy
Modified: trunk/Source/WebKit2/PlatformGTK.cmake (211363 => 211364)
--- trunk/Source/WebKit2/PlatformGTK.cmake 2017-01-30 13:50:37 UTC (rev 211363)
+++ trunk/Source/WebKit2/PlatformGTK.cmake 2017-01-30 16:35:03 UTC (rev 211364)
@@ -309,7 +309,6 @@
UIProcess/gtk/AcceleratedBackingStoreWayland.cpp
UIProcess/gtk/AcceleratedBackingStoreX11.cpp
UIProcess/gtk/DragAndDropHandler.cpp
-UIProcess/gtk/ExperimentalFeatures.cpp
UIProcess/gtk/GestureController.cpp
UIProcess/gtk/InputMethodFilter.cpp
UIProcess/gtk/KeyBindingTranslator.cpp
Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp (211363 => 211364)
--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp 2017-01-30 13:50:37 UTC (rev 211363)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp 2017-01-30 16:35:03 UTC (rev 211364)
@@ -31,7 +31,6 @@
#include "config.h"
#include "WebKitSettings.h"
-#include "ExperimentalFeatures.h"
#include "WebKitEnumTypes.h"
#include "WebKitPrivate.h"
#include "WebKitSettingsPrivate.h"
@@ -156,10 +155,6 @@
WebPreferences* prefs = WEBKIT_SETTINGS(object)->priv->preferences.get();
prefs->setShouldRespectImageOrientation(true);
-ExperimentalFeatures features;
-bool cssGridLayoutEnabled = features.isEnabled(ExperimentalFeatures::CSSGridLayout);
-if (prefs->cssGridLayoutEnabled() != cssGridLayoutEnabled)
-prefs->setCSSGridLayoutEnabled(cssGridLayoutEnabled);
}
static void webKitSettingsSetProperty(GObject* object, guint propId, const GValue* value, GParamSpec* paramSpec)
Deleted: trunk/Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.cpp (211363 => 211364)
--- trunk/Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.cpp 2017-01-30 13:50:37 UTC (rev 211363)
+++ trunk/Source/WebKit2/UIProcess/gtk/ExperimentalFeatures.cpp 2017-01-30 16:35:03 UTC (rev 211364)
@@ -1,86 +0,0 @@
-/*
- * Copyright (c) 2013, Opera Software ASA. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *notice, this list of conditions and the following disclaimer in the
- *documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Opera Software ASA nor the names of its
- *contributors may be used to endorse or promote products derived
- *from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS
Title: [211363] trunk
Revision 211363
Author carlo...@webkit.org
Date 2017-01-30 05:50:37 -0800 (Mon, 30 Jan 2017)
Log Message
[GTK] Add API to handle the accelerated compositing policy
https://bugs.webkit.org/show_bug.cgi?id=167509
Reviewed by Michael Catanzaro.
Source/WebKit2:
Now that we have brought back the on demand mode, we should allow applications to choose the policy, without
having to deal with environment variables. Settings also allows to set different policy depending on the web
view, so for example evolution could disable AC for the composer, but leave the on demand mode for the email
viewer. This patch adds a single new setting hardware-acceleration-policy to handle both
acceleratedCompositingEnabled and forceCompositingMode preferences using an enum with values
WEBKIT_HARDWARE_ACCELERATION_POLICY_ON_DEMAND, WEBKIT_HARDWARE_ACCELERATION_POLICY_ALWAYS and
WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER.
* UIProcess/API/gtk/WebKitSettings.cpp:
(webKitSettingsSetProperty): Add setter for hardware-acceleration-policy property.
(webKitSettingsGetProperty): Add getter for hardware-acceleration-policy property.
(webkit_settings_class_init): Add hardware-acceleration-policy property.
(webkit_settings_get_hardware_acceleration_policy): Return policy according to the preferences.
(webkit_settings_set_hardware_acceleration_policy): set preferences according to the given policy.
* UIProcess/API/gtk/WebKitSettings.h:
* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols.
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::updatePreferences):
Tools:
Handle new setting in MiniBrowser. The settings dialog doesn't support enum settings so it needs to be handled
as a special case. Also add test cases to the get/set API.
* MiniBrowser/gtk/BrowserSettingsDialog.c:
(hardwareAccelerationPolicyToString):
(stringToHardwareAccelerationPolicy):
(cellRendererChanged):
(browserSettingsDialogConstructed):
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp:
(testWebKitSettings):
Modified Paths
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.h
trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt
trunk/Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp
trunk/Tools/ChangeLog
trunk/Tools/MiniBrowser/gtk/BrowserSettingsDialog.c
trunk/Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp
Diff
Modified: trunk/Source/WebKit2/ChangeLog (211362 => 211363)
--- trunk/Source/WebKit2/ChangeLog 2017-01-30 12:07:15 UTC (rev 211362)
+++ trunk/Source/WebKit2/ChangeLog 2017-01-30 13:50:37 UTC (rev 211363)
@@ -1,3 +1,29 @@
+2017-01-30 Carlos Garcia Campos
+
+[GTK] Add API to handle the accelerated compositing policy
+https://bugs.webkit.org/show_bug.cgi?id=167509
+
+Reviewed by Michael Catanzaro.
+
+Now that we have brought back the on demand mode, we should allow applications to choose the policy, without
+having to deal with environment variables. Settings also allows to set different policy depending on the web
+view, so for example evolution could disable AC for the composer, but leave the on demand mode for the email
+viewer. This patch adds a single new setting hardware-acceleration-policy to handle both
+acceleratedCompositingEnabled and forceCompositingMode preferences using an enum with values
+WEBKIT_HARDWARE_ACCELERATION_POLICY_ON_DEMAND, WEBKIT_HARDWARE_ACCELERATION_POLICY_ALWAYS and
+WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER.
+
+* UIProcess/API/gtk/WebKitSettings.cpp:
+(webKitSettingsSetProperty): Add setter for hardware-acceleration-policy property.
+(webKitSettingsGetProperty): Add getter for hardware-acceleration-policy property.
+(webkit_settings_class_init): Add hardware-acceleration-policy property.
+(webkit_settings_get_hardware_acceleration_policy): Return policy according to the preferences.
+(webkit_settings_set_hardware_acceleration_policy): set preferences according to the given policy.
+* UIProcess/API/gtk/WebKitSettings.h:
+* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols.
+* WebProcess/WebPage/DrawingAreaImpl.cpp:
+(WebKit::DrawingAreaImpl::updatePreferences):
+
2017-01-29 Carlos Garcia Campos
[Threaded Compositor] Crash on WebCore::GLContext::version()
Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp (211362 => 211363)
--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp 2017-01-30 12:07:15 UTC (rev 211362)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp 2017-01-30 13:50:37 UTC (rev 211363)
@@ -32,6 +32,7 @@
#include "WebKitSettings.h"
#include "ExperimentalFeatures.h"
+#include "WebKitEnumTypes.h"
#include "WebKitPrivate.h"
#include "WebKitSettingsPrivate.h"
#include "WebPageProxy.h"
@@ -
Title: [211362] trunk/Source/WebKit/mac
Revision 211362
Author akl...@apple.com
Date 2017-01-30 04:07:15 -0800 (Mon, 30 Jan 2017)
Log Message
[macOS] WebHTMLView has an internal retain cycle with its flagsChangedEventMonitor.
Reviewed by Antti Koivisto.
Avoid the implicit strong capture of self by keeping it in a __block variable.
Also add code to dealloc to unregister the event monitor, since it will otherwise leak.
This fixes huge WebHTMLView leaks seen on the leaks bot.
* WebView/WebHTMLView.mm:
(-[WebHTMLViewPrivate dealloc]):
(-[WebHTMLView viewDidMoveToWindow]):
Modified Paths
trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/WebView/WebHTMLView.mm
Diff
Modified: trunk/Source/WebKit/mac/ChangeLog (211361 => 211362)
--- trunk/Source/WebKit/mac/ChangeLog 2017-01-30 10:27:00 UTC (rev 211361)
+++ trunk/Source/WebKit/mac/ChangeLog 2017-01-30 12:07:15 UTC (rev 211362)
@@ -1,3 +1,18 @@
+2017-01-30 Andreas Kling
+
+[macOS] WebHTMLView has an internal retain cycle with its flagsChangedEventMonitor.
+
+
+Reviewed by Antti Koivisto.
+
+Avoid the implicit strong capture of self by keeping it in a __block variable.
+Also add code to dealloc to unregister the event monitor, since it will otherwise leak.
+This fixes huge WebHTMLView leaks seen on the leaks bot.
+
+* WebView/WebHTMLView.mm:
+(-[WebHTMLViewPrivate dealloc]):
+(-[WebHTMLView viewDidMoveToWindow]):
+
2017-01-29 Andy Estes
[QuickLook] Add a WebPreference to enable saving QuickLook documents in WebKitLegacy
Modified: trunk/Source/WebKit/mac/WebView/WebHTMLView.mm (211361 => 211362)
--- trunk/Source/WebKit/mac/WebView/WebHTMLView.mm 2017-01-30 10:27:00 UTC (rev 211361)
+++ trunk/Source/WebKit/mac/WebView/WebHTMLView.mm 2017-01-30 12:07:15 UTC (rev 211362)
@@ -1066,6 +1066,11 @@
#if !PLATFORM(IOS)
if (promisedDragTIFFDataSource)
promisedDragTIFFDataSource->removeClient(promisedDataClient());
+
+if (flagsChangedEventMonitor) {
+[NSEvent removeMonitor:flagsChangedEventMonitor];
+flagsChangedEventMonitor = nil;
+}
#endif
[super dealloc];
@@ -3504,8 +3509,9 @@
#if !PLATFORM(IOS)
if (!_private->flagsChangedEventMonitor) {
+__block WebHTMLView *weakSelf = self;
_private->flagsChangedEventMonitor = [NSEvent addLocalMonitorForEventsMatchingMask:NSEventMaskFlagsChanged handler:^(NSEvent *flagsChangedEvent) {
-[self _postFakeMouseMovedEventForFlagsChangedEvent:flagsChangedEvent];
+[weakSelf _postFakeMouseMovedEventForFlagsChangedEvent:flagsChangedEvent];
return flagsChangedEvent;
}];
}
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211361] trunk/LayoutTests
Revision 211361
Author carlo...@webkit.org
Date 2017-01-30 02:27:00 -0800 (Mon, 30 Jan 2017)
Log Message
Unreviewed. Skip more tests timing out in GTK+ bots.
Skip two mores tests that use UIScriptController to generate events and another one expecting native
HTML form validation popover.
* platform/gtk/TestExpectations:
Modified Paths
trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/gtk/TestExpectations
Diff
Modified: trunk/LayoutTests/ChangeLog (211360 => 211361)
--- trunk/LayoutTests/ChangeLog 2017-01-30 10:14:36 UTC (rev 211360)
+++ trunk/LayoutTests/ChangeLog 2017-01-30 10:27:00 UTC (rev 211361)
@@ -1,5 +1,14 @@
2017-01-30 Carlos Garcia Campos
+Unreviewed. Skip more tests timing out in GTK+ bots.
+
+Skip two mores tests that use UIScriptController to generate events and another one expecting native
+HTML form validation popover.
+
+* platform/gtk/TestExpectations:
+
+2017-01-30 Carlos Garcia Campos
+
Unreviewed. Skip form validation tests timing out in GTK+ bots.
* platform/gtk/TestExpectations:
Modified: trunk/LayoutTests/platform/gtk/TestExpectations (211360 => 211361)
--- trunk/LayoutTests/platform/gtk/TestExpectations 2017-01-30 10:14:36 UTC (rev 211360)
+++ trunk/LayoutTests/platform/gtk/TestExpectations 2017-01-30 10:27:00 UTC (rev 211361)
@@ -667,10 +667,12 @@
# WIRELESS_PLAYBACK_TARGET not enabled.
media/airplay-target-availability.html
-# Skip tests requiring UIScriptController
+# Skip tests requiring UIScriptController to generate events
webkit.org/b/153833 css3/touch-action/touch-action-manipulation-fast-clicks.html [ Skip ]
webkit.org/b/153833 fast/events/can-click-element-on-page-with-active-pseudo-class-and-search-field.html [ Skip ]
webkit.org/b/153833 fast/shadow-dom/touch-event-ios.html [ Skip ]
+webkit.org/b/153833 fast/events/before-input-prevent-insert-replacement.html [ Skip ]
+webkit.org/b/153833 fast/events/input-event-insert-replacement.html [ Skip ]
# Skip tests expecting native HTML form validation popover
webkit.org/b/167579 fast/forms/validation-bubble-disappears-when-input-detached.html [ Skip ]
@@ -680,6 +682,7 @@
webkit.org/b/167579 fast/forms/validation-message-detached-iframe.html [ Skip ]
webkit.org/b/167579 fast/forms/validation-message-detached-iframe2.html [ Skip ]
webkit.org/b/167579 fast/forms/validation-messages.html [ Skip ]
+webkit.org/b/167579 http/tests/navigation/navigation-dismisses-validation-bubbles.html [ Skip ]
# Tests failing with GStreamer 1.6.3
webkit.org/b/154390 http/tests/media/video-referer.html [ Failure ]
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211360] trunk/Source/WebCore
Revision 211360
Author carlo...@webkit.org
Date 2017-01-30 02:14:36 -0800 (Mon, 30 Jan 2017)
Log Message
Several web timing tests crash in GTK+ and AppleWin bots
https://bugs.webkit.org/show_bug.cgi?id=167577
Reviewed by Ryosuke Niwa.
The problem is that entry is used in both the key, to get name, and in the value with WTFMove. So, the name is
invalidated by the move. It could be fixed by simply copying the name, instead of using entry->name, but I think
that code could be simplified using HashMap::ensure and then we don't need any string copy, nor even the static
insertPerformanceEntry().
Fix crashes in several imported/w3c/web-platform-tests/user-timing/ tests.
* page/PerformanceUserTiming.cpp:
(WebCore::UserTiming::mark):
(WebCore::UserTiming::measure):
(WebCore::insertPerformanceEntry): Deleted.
Modified Paths
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/PerformanceUserTiming.cpp
Diff
Modified: trunk/Source/WebCore/ChangeLog (211359 => 211360)
--- trunk/Source/WebCore/ChangeLog 2017-01-30 10:10:40 UTC (rev 211359)
+++ trunk/Source/WebCore/ChangeLog 2017-01-30 10:14:36 UTC (rev 211360)
@@ -1,5 +1,24 @@
2017-01-30 Carlos Garcia Campos
+Several web timing tests crash in GTK+ and AppleWin bots
+https://bugs.webkit.org/show_bug.cgi?id=167577
+
+Reviewed by Ryosuke Niwa.
+
+The problem is that entry is used in both the key, to get name, and in the value with WTFMove. So, the name is
+invalidated by the move. It could be fixed by simply copying the name, instead of using entry->name, but I think
+that code could be simplified using HashMap::ensure and then we don't need any string copy, nor even the static
+insertPerformanceEntry().
+
+Fix crashes in several imported/w3c/web-platform-tests/user-timing/ tests.
+
+* page/PerformanceUserTiming.cpp:
+(WebCore::UserTiming::mark):
+(WebCore::UserTiming::measure):
+(WebCore::insertPerformanceEntry): Deleted.
+
+2017-01-30 Carlos Garcia Campos
+
[Threaded Compositor] Crash in GraphicsContext3D::deleteTexture when destroying TextureMapperPlatformLayerProxy
https://bugs.webkit.org/show_bug.cgi?id=167575
Modified: trunk/Source/WebCore/page/PerformanceUserTiming.cpp (211359 => 211360)
--- trunk/Source/WebCore/page/PerformanceUserTiming.cpp 2017-01-30 10:10:40 UTC (rev 211359)
+++ trunk/Source/WebCore/page/PerformanceUserTiming.cpp 2017-01-30 10:14:36 UTC (rev 211360)
@@ -88,16 +88,6 @@
{
}
-static void insertPerformanceEntry(PerformanceEntryMap& performanceEntryMap, Ref&& performanceEntry)
-{
-RefPtr entry = WTFMove(performanceEntry);
-auto it = performanceEntryMap.find(entry->name());
-if (it != performanceEntryMap.end())
-it->value.append(WTFMove(entry));
-else
-performanceEntryMap.set(entry->name(), Vector> { WTFMove(entry) });
-}
-
static void clearPerformanceEntries(PerformanceEntryMap& performanceEntryMap, const String& name)
{
if (name.isNull()) {
@@ -113,7 +103,9 @@
if (restrictedMarkFunction(markName))
return Exception { SYNTAX_ERR };
-insertPerformanceEntry(m_marksMap, PerformanceMark::create(markName, m_performance.now()));
+auto& performanceEntryList = m_marksMap.ensure(markName, [] { return Vector>(); }).iterator->value;
+performanceEntryList.append(PerformanceMark::create(markName, m_performance.now()));
+
return { };
}
@@ -161,7 +153,9 @@
endTime = endMarkResult.releaseReturnValue();
}
-insertPerformanceEntry(m_measuresMap, PerformanceMeasure::create(measureName, startTime, endTime));
+auto& performanceEntryList = m_measuresMap.ensure(measureName, [] { return Vector>(); }).iterator->value;
+performanceEntryList.append(PerformanceMeasure::create(measureName, startTime, endTime));
+
return { };
}
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211359] trunk/LayoutTests
Revision 211359
Author carlo...@webkit.org
Date 2017-01-30 02:10:40 -0800 (Mon, 30 Jan 2017)
Log Message
Unreviewed. Skip form validation tests timing out in GTK+ bots.
* platform/gtk/TestExpectations:
Modified Paths
trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/gtk/TestExpectations
Diff
Modified: trunk/LayoutTests/ChangeLog (211358 => 211359)
--- trunk/LayoutTests/ChangeLog 2017-01-30 08:47:30 UTC (rev 211358)
+++ trunk/LayoutTests/ChangeLog 2017-01-30 10:10:40 UTC (rev 211359)
@@ -1,3 +1,9 @@
+2017-01-30 Carlos Garcia Campos
+
+Unreviewed. Skip form validation tests timing out in GTK+ bots.
+
+* platform/gtk/TestExpectations:
+
2017-01-29 Nan Wang
AX: WKContentView needs to implement UITextInput methods to make speak selection highlighting work
Modified: trunk/LayoutTests/platform/gtk/TestExpectations (211358 => 211359)
--- trunk/LayoutTests/platform/gtk/TestExpectations 2017-01-30 08:47:30 UTC (rev 211358)
+++ trunk/LayoutTests/platform/gtk/TestExpectations 2017-01-30 10:10:40 UTC (rev 211359)
@@ -672,6 +672,15 @@
webkit.org/b/153833 fast/events/can-click-element-on-page-with-active-pseudo-class-and-search-field.html [ Skip ]
webkit.org/b/153833 fast/shadow-dom/touch-event-ios.html [ Skip ]
+# Skip tests expecting native HTML form validation popover
+webkit.org/b/167579 fast/forms/validation-bubble-disappears-when-input-detached.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-bubble-disappears-when-input-moved.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-bubble-disappears-when-input-no-longer-visible.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-custom-message.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-message-detached-iframe.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-message-detached-iframe2.html [ Skip ]
+webkit.org/b/167579 fast/forms/validation-messages.html [ Skip ]
+
# Tests failing with GStreamer 1.6.3
webkit.org/b/154390 http/tests/media/video-referer.html [ Failure ]
webkit.org/b/154390 http/tests/media/video-cancel-load.html [ Pass Timeout Failure ]
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
Title: [211358] trunk/Source/WebCore
Revision 211358
Author carlo...@webkit.org
Date 2017-01-30 00:47:30 -0800 (Mon, 30 Jan 2017)
Log Message
[Threaded Compositor] Crash in GraphicsContext3D::deleteTexture when destroying TextureMapperPlatformLayerProxy
https://bugs.webkit.org/show_bug.cgi?id=167575
Reviewed by Žan Doberšek.
We should clear all the buffers on invalidate to ensure we don't have textures alive after CoordinatedGraphicsScene::purgeGLResources().
Fix crash in media/video-poster-background.html.
* platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp:
(WebCore::TextureMapperPlatformLayerProxy::invalidate): Clear current, pending and all used buffers.
Modified Paths
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp
Diff
Modified: trunk/Source/WebCore/ChangeLog (211357 => 211358)
--- trunk/Source/WebCore/ChangeLog 2017-01-30 05:55:34 UTC (rev 211357)
+++ trunk/Source/WebCore/ChangeLog 2017-01-30 08:47:30 UTC (rev 211358)
@@ -1,3 +1,17 @@
+2017-01-30 Carlos Garcia Campos
+
+[Threaded Compositor] Crash in GraphicsContext3D::deleteTexture when destroying TextureMapperPlatformLayerProxy
+https://bugs.webkit.org/show_bug.cgi?id=167575
+
+Reviewed by Žan Doberšek.
+
+We should clear all the buffers on invalidate to ensure we don't have textures alive after CoordinatedGraphicsScene::purgeGLResources().
+
+Fix crash in media/video-poster-background.html.
+
+* platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp:
+(WebCore::TextureMapperPlatformLayerProxy::invalidate): Clear current, pending and all used buffers.
+
2017-01-29 Carlos Garcia Campos
[Threaded Compositor] Crash on WebCore::GLContext::version()
Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp (211357 => 211358)
--- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp 2017-01-30 05:55:34 UTC (rev 211357)
+++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp 2017-01-30 08:47:30 UTC (rev 211358)
@@ -78,6 +78,11 @@
m_compositor = nullptr;
m_targetLayer = nullptr;
+m_currentBuffer = nullptr;
+m_pendingBuffer = nullptr;
+m_releaseUnusedBuffersTimer.stop();
+m_usedBuffers.clear();
+
// Clear the timer and dispatch the update function manually now.
m_compositorThreadUpdateTimer = nullptr;
if (!m_compositorThreadUpdateFunction)
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes
50 matches
Mail list logo