[webkit-changes] [221719] trunk/Source/WebCore

2017-09-06 Thread carlosgc
Title: [221719] trunk/Source/WebCore








Revision 221719
Author carlo...@webkit.org
Date 2017-09-06 23:20:58 -0700 (Wed, 06 Sep 2017)


Log Message
Unreviewed. Temporary disable the changes introduced in r221670 for WPE.

It caused a lot of test failures. Once WPE upgrades to Freetype 2.8 and removes the 2.4.11 patch, we can enable
it again.

* platform/graphics/freetype/SimpleFontDataFreeType.cpp:
(WebCore::Font::platformInit):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (221718 => 221719)

--- trunk/Source/WebCore/ChangeLog	2017-09-07 05:58:32 UTC (rev 221718)
+++ trunk/Source/WebCore/ChangeLog	2017-09-07 06:20:58 UTC (rev 221719)
@@ -1,3 +1,13 @@
+2017-09-06  Carlos Garcia Campos  
+
+Unreviewed. Temporary disable the changes introduced in r221670 for WPE.
+
+It caused a lot of test failures. Once WPE upgrades to Freetype 2.8 and removes the 2.4.11 patch, we can enable
+it again.
+
+* platform/graphics/freetype/SimpleFontDataFreeType.cpp:
+(WebCore::Font::platformInit):
+
 2017-09-06  Zan Dobersek  
 
 [GStreamer] Implement MediaPlayerPrivateGStreamerMSE::attempToDecryptWithInstance()


Modified: trunk/Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp (221718 => 221719)

--- trunk/Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp	2017-09-07 05:58:32 UTC (rev 221718)
+++ trunk/Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp	2017-09-07 06:20:58 UTC (rev 221719)
@@ -54,6 +54,8 @@
 
 namespace WebCore {
 
+// FIXME: Remove this ifdef once WPE upgrqades to Freetype 2.8 and removes the patch for 2.4.11.
+#if !PLATFORM(WPE)
 static RefPtr scaledFontWithoutMetricsHinting(cairo_scaled_font_t* scaledFont)
 {
 CairoUniquePtr fontOptions(cairo_font_options_create());
@@ -65,6 +67,7 @@
 cairo_scaled_font_get_ctm(scaledFont, &fontCTM);
 return adoptRef(cairo_scaled_font_create(cairo_scaled_font_get_font_face(scaledFont), &fontMatrix, &fontCTM, fontOptions.get()));
 }
+#endif
 
 void Font::platformInit()
 {
@@ -72,6 +75,11 @@
 return;
 
 ASSERT(m_platformData.scaledFont());
+// FIXME: Remove this ifdef once WPE upgrqades to Freetype 2.8 and removes the patch for 2.4.11.
+#if PLATFORM(WPE)
+cairo_font_extents_t fontExtents;
+cairo_scaled_font_extents(m_platformData.scaledFont(), &fontExtents);
+#else
 // Temporarily create a clone that doesn't have metrics hinting in order to avoid incorrect
 // rounding resulting in incorrect baseline positioning since the sum of ascent and descent
 // becomes larger than the line height.
@@ -78,6 +86,7 @@
 auto fontWithoutMetricsHinting = scaledFontWithoutMetricsHinting(m_platformData.scaledFont());
 cairo_font_extents_t fontExtents;
 cairo_scaled_font_extents(fontWithoutMetricsHinting.get(), &fontExtents);
+#endif
 
 float ascent = narrowPrecisionToFloat(fontExtents.ascent);
 float descent = narrowPrecisionToFloat(fontExtents.descent);
@@ -106,7 +115,12 @@
 m_fontMetrics.setAscent(ascent);
 m_fontMetrics.setDescent(descent);
 m_fontMetrics.setCapHeight(capHeight);
+// FIXME: Remove this ifdef once WPE upgrqades to Freetype 2.8 and removes the patch for 2.4.11.
+#if PLATFORM(WPE)
+m_fontMetrics.setLineSpacing(lroundf(ascent) + lroundf(descent) + lroundf(lineGap));
+#else
 m_fontMetrics.setLineSpacing(ascent + descent + lineGap);
+#endif
 m_fontMetrics.setLineGap(lineGap);
 
 cairo_text_extents_t textExtents;






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221718] trunk/Source/WebCore

2017-09-06 Thread zandobersek
Title: [221718] trunk/Source/WebCore








Revision 221718
Author zandober...@gmail.com
Date 2017-09-06 22:58:32 -0700 (Wed, 06 Sep 2017)


Log Message
[GStreamer] Implement MediaPlayerPrivateGStreamerMSE::attempToDecryptWithInstance()
https://bugs.webkit.org/show_bug.cgi?id=176445

Reviewed by Xabier Rodriguez-Calvar.

Implement MediaPlayerPrivateGStreamerMSE::attempToDecryptWithInstance(), also
adding support for dispatching ClearKey keys into the append pipelines.

CDMInstanceClearKey::Key is added, containing key ID and value buffers as well
as the key status value. Vector of keys for a specific CDMInstance is
accessible through the CDMInstanceClearKey::keys() getter.

In MediaPlayerPrivateGStreamerMSE, that Vector is retrieved and then iterated
over, constructing corresponding key ID and key value lists that contain
GstBuffer objects into which each key ID and value data is copied. Both lists
are then set on the 'drm-cipher-clearkey' structure before it's dispatched
against each AppendPipeline object.

* platform/encryptedmedia/clearkey/CDMClearKey.h:
* platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::attemptToDecryptWithInstance):
* platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/encryptedmedia/clearkey/CDMClearKey.h
trunk/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp
trunk/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (221717 => 221718)

--- trunk/Source/WebCore/ChangeLog	2017-09-07 04:23:35 UTC (rev 221717)
+++ trunk/Source/WebCore/ChangeLog	2017-09-07 05:58:32 UTC (rev 221718)
@@ -1,3 +1,28 @@
+2017-09-06  Zan Dobersek  
+
+[GStreamer] Implement MediaPlayerPrivateGStreamerMSE::attempToDecryptWithInstance()
+https://bugs.webkit.org/show_bug.cgi?id=176445
+
+Reviewed by Xabier Rodriguez-Calvar.
+
+Implement MediaPlayerPrivateGStreamerMSE::attempToDecryptWithInstance(), also
+adding support for dispatching ClearKey keys into the append pipelines.
+
+CDMInstanceClearKey::Key is added, containing key ID and value buffers as well
+as the key status value. Vector of keys for a specific CDMInstance is
+accessible through the CDMInstanceClearKey::keys() getter.
+
+In MediaPlayerPrivateGStreamerMSE, that Vector is retrieved and then iterated
+over, constructing corresponding key ID and key value lists that contain
+GstBuffer objects into which each key ID and value data is copied. Both lists
+are then set on the 'drm-cipher-clearkey' structure before it's dispatched
+against each AppendPipeline object.
+
+* platform/encryptedmedia/clearkey/CDMClearKey.h:
+* platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
+(WebCore::MediaPlayerPrivateGStreamerMSE::attemptToDecryptWithInstance):
+* platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:
+
 2017-09-06  Joseph Pecoraro  
 
 Fetch's Response.statusText is unexpectedly the full http status line for HTTP/2 responses


Modified: trunk/Source/WebCore/platform/encryptedmedia/clearkey/CDMClearKey.h (221717 => 221718)

--- trunk/Source/WebCore/platform/encryptedmedia/clearkey/CDMClearKey.h	2017-09-07 04:23:35 UTC (rev 221717)
+++ trunk/Source/WebCore/platform/encryptedmedia/clearkey/CDMClearKey.h	2017-09-07 05:58:32 UTC (rev 221718)
@@ -33,6 +33,7 @@
 #include "CDMFactory.h"
 #include "CDMInstance.h"
 #include "CDMPrivate.h"
+#include "SharedBuffer.h"
 
 namespace WebCore {
 
@@ -91,6 +92,17 @@
 void storeRecordOfKeyUsage(const String&) override;
 
 const String& keySystem() const final;
+
+struct Key {
+KeyStatus status;
+RefPtr keyIDData;
+RefPtr keyValueData;
+};
+
+const Vector& keys() const { return m_keys; }
+
+private:
+Vector m_keys;
 };
 
 } // namespace WebCore


Modified: trunk/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp (221717 => 221718)

--- trunk/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp	2017-09-07 04:23:35 UTC (rev 221717)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp	2017-09-07 05:58:32 UTC (rev 221718)
@@ -53,6 +53,11 @@
 #include 
 #include 
 
+#if ENABLE(ENCRYPTED_MEDIA)
+#include "CDMClearKey.h"
+#include "SharedBuffer.h"
+#endif
+
 static const char* dumpReadyState(WebCore::MediaPlayer::ReadyState readyState)
 {
 switch (readyState) {
@@ -927,6 +932,43 @@
 return result;
 }
 
+#if ENABLE(ENCRYPTED_MEDIA)
+void MediaPlayerPrivateGStreamerMSE::attemptToDecryptWithInstance(const CDMInstance& instance)
+{
+if (is(instance)) {
+auto& ckInstance = downcast(instance);
+if (ckInstance.keys().isEmpty())
+  

[webkit-changes] [221717] trunk/Websites/perf.webkit.org

2017-09-06 Thread aakash_jain
Title: [221717] trunk/Websites/perf.webkit.org








Revision 221717
Author aakash_j...@apple.com
Date 2017-09-06 21:23:35 -0700 (Wed, 06 Sep 2017)


Log Message
Add initSyncers method in BuildbotTriggerable
https://bugs.webkit.org/show_bug.cgi?id=176125

Reviewed by Ryosuke Niwa.

* tools/sync-buildbot.js:
(syncLoop): Use initSyncers() which returns a promise. Modified to handle the promise.
* tools/js/buildbot-triggerable.js:
(BuildbotTriggerable): Invokes initSyncers() appropriately.
(BuildbotTriggerable.prototype.initSyncers): Returns a promise which initialize all the syncers.
* server-tests/tools-buildbot-triggerable-tests.js: Updated tests to handle initSyncers().
* server-tests/tools-sync-buildbot-integration-tests.js: Ditto.

Modified Paths

trunk/Websites/perf.webkit.org/ChangeLog
trunk/Websites/perf.webkit.org/server-tests/tools-buildbot-triggerable-tests.js
trunk/Websites/perf.webkit.org/server-tests/tools-sync-buildbot-integration-tests.js
trunk/Websites/perf.webkit.org/tools/js/buildbot-triggerable.js
trunk/Websites/perf.webkit.org/tools/sync-buildbot.js




Diff

Modified: trunk/Websites/perf.webkit.org/ChangeLog (221716 => 221717)

--- trunk/Websites/perf.webkit.org/ChangeLog	2017-09-07 04:05:25 UTC (rev 221716)
+++ trunk/Websites/perf.webkit.org/ChangeLog	2017-09-07 04:23:35 UTC (rev 221717)
@@ -1,3 +1,18 @@
+2017-09-06  Aakash Jain  
+
+Add initSyncers method in BuildbotTriggerable
+https://bugs.webkit.org/show_bug.cgi?id=176125
+
+Reviewed by Ryosuke Niwa.
+
+* tools/sync-buildbot.js:
+(syncLoop): Use initSyncers() which returns a promise. Modified to handle the promise.
+* tools/js/buildbot-triggerable.js:
+(BuildbotTriggerable): Invokes initSyncers() appropriately.
+(BuildbotTriggerable.prototype.initSyncers): Returns a promise which initialize all the syncers.
+* server-tests/tools-buildbot-triggerable-tests.js: Updated tests to handle initSyncers().
+* server-tests/tools-sync-buildbot-integration-tests.js: Ditto.
+
 2017-09-05  Ryosuke Niwa  
 
 Add a button to show two weeks of data to perf dashboard


Modified: trunk/Websites/perf.webkit.org/server-tests/tools-buildbot-triggerable-tests.js (221716 => 221717)

--- trunk/Websites/perf.webkit.org/server-tests/tools-buildbot-triggerable-tests.js	2017-09-07 04:05:25 UTC (rev 221716)
+++ trunk/Websites/perf.webkit.org/server-tests/tools-buildbot-triggerable-tests.js	2017-09-07 04:23:35 UTC (rev 221717)
@@ -35,7 +35,7 @@
 const logger = new MockLogger;
 const slaveInfo = {name: 'sync-slave', password: 'password'};
 const triggerable = new BuildbotTriggerable(config, TestServer.remoteAPI(), MockRemoteAPI, slaveInfo, logger);
-syncPromise = triggerable.syncOnce();
+syncPromise = triggerable.initSyncers().then(() => triggerable.syncOnce());
 return MockRemoteAPI.waitForRequest();
 }).then(() => {
 assert.equal(BuildRequest.all().length, 4);
@@ -89,7 +89,7 @@
 let logger = new MockLogger;
 let slaveInfo = {name: 'sync-slave', password: 'password'};
 let triggerable = new BuildbotTriggerable(config, TestServer.remoteAPI(), MockRemoteAPI, slaveInfo, logger);
-syncPromise = triggerable.syncOnce();
+syncPromise = triggerable.initSyncers().then(() => triggerable.syncOnce());
 return MockRemoteAPI.waitForRequest();
 }).then(() => {
 assert.equal(MockRemoteAPI.requests[0].method, 'GET');
@@ -137,7 +137,7 @@
 const logger = new MockLogger;
 const slaveInfo = {name: 'sync-slave', password: 'password'};
 const triggerable = new BuildbotTriggerable(config, TestServer.remoteAPI(), MockRemoteAPI, slaveInfo, logger);
-syncPromise = triggerable.syncOnce();
+syncPromise = triggerable.initSyncers().then(() => triggerable.syncOnce());
 return MockRemoteAPI.waitForRequest();
 }).then(() => {
 assert.equal(MockRemoteAPI.requests.length, 2);
@@ -216,7 +216,7 @@
 let logger = new MockLogger;
 let slaveInfo = {name: 'sync-slave', password: 'password'};
 let triggerable = new BuildbotTriggerable(config, TestServer.remoteAPI(), MockRemoteAPI, slaveInfo, logger);
-syncPromise = triggerable.syncOnce();
+syncPromise = triggerable.initSyncers().then(() => triggerable.syncOnce());
 return MockRemoteAPI.waitForRequest();
 }).then(() => {
 assert.equal(MockRemoteAPI.requests.length, 2);
@@ -288,7 +288,7 @@
 const logger = new MockLogger;
 const slaveInfo = {name: 'sync-slave', password: 'password'};
 const triggerable = new BuildbotTriggerable(config, 

[webkit-changes] [221716] trunk

2017-09-06 Thread commit-queue
Title: [221716] trunk








Revision 221716
Author commit-qu...@webkit.org
Date 2017-09-06 21:05:25 -0700 (Wed, 06 Sep 2017)


Log Message
Fetch's Response.statusText is unexpectedly the full http status line for HTTP/2 responses
https://bugs.webkit.org/show_bug.cgi?id=176479

Patch by Joseph Pecoraro  on 2017-09-06
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Test: http/wpt/fetch/response-status-text.html

HTTP/2 doesn't include a status reason phrase. So the "status line"
ends up just being the version and status code. Fallback to the empty
string instead of the full line.

* platform/network/HTTPParsers.cpp:
(WebCore::extractReasonPhraseFromHTTPStatusLine):

LayoutTests:

* http/wpt/fetch/resources/status-garbage.asis: Added.
* http/wpt/fetch/resources/status-normal.txt: Added.
* http/wpt/fetch/resources/status-with-message.asis: Added.
* http/wpt/fetch/resources/status-without-message.asis: Added.
Various text HTTP responses with different status lines.

* http/wpt/fetch/response-status-text-expected.txt: Added.
* http/wpt/fetch/response-status-text.html: Added.
Test the Fetch Response's status / statusText for different HTTP status lines.
The status without a message is similiar to HTTP/2 because HTTP/2 only
has a :status pseudo-header and lacks a reason phrase.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/network/HTTPParsers.cpp


Added Paths

trunk/LayoutTests/http/wpt/fetch/resources/
trunk/LayoutTests/http/wpt/fetch/resources/status-garbage.asis
trunk/LayoutTests/http/wpt/fetch/resources/status-normal.txt
trunk/LayoutTests/http/wpt/fetch/resources/status-with-message.asis
trunk/LayoutTests/http/wpt/fetch/resources/status-without-message.asis
trunk/LayoutTests/http/wpt/fetch/response-status-text-expected.txt
trunk/LayoutTests/http/wpt/fetch/response-status-text.html




Diff

Modified: trunk/LayoutTests/ChangeLog (221715 => 221716)

--- trunk/LayoutTests/ChangeLog	2017-09-07 04:02:16 UTC (rev 221715)
+++ trunk/LayoutTests/ChangeLog	2017-09-07 04:05:25 UTC (rev 221716)
@@ -1,3 +1,22 @@
+2017-09-06  Joseph Pecoraro  
+
+Fetch's Response.statusText is unexpectedly the full http status line for HTTP/2 responses
+https://bugs.webkit.org/show_bug.cgi?id=176479
+
+Reviewed by Alexey Proskuryakov.
+
+* http/wpt/fetch/resources/status-garbage.asis: Added.
+* http/wpt/fetch/resources/status-normal.txt: Added.
+* http/wpt/fetch/resources/status-with-message.asis: Added.
+* http/wpt/fetch/resources/status-without-message.asis: Added.
+Various text HTTP responses with different status lines.
+
+* http/wpt/fetch/response-status-text-expected.txt: Added.
+* http/wpt/fetch/response-status-text.html: Added.
+Test the Fetch Response's status / statusText for different HTTP status lines.
+The status without a message is similiar to HTTP/2 because HTTP/2 only
+has a :status pseudo-header and lacks a reason phrase.
+
 2017-09-06  Youenn Fablet  
 
 NetworkProcess Cache and Caches should be cleared when the last related WebProcess Cache or CacheStorage is destroyed


Added: trunk/LayoutTests/http/wpt/fetch/resources/status-garbage.asis (0 => 221716)

--- trunk/LayoutTests/http/wpt/fetch/resources/status-garbage.asis	(rev 0)
+++ trunk/LayoutTests/http/wpt/fetch/resources/status-garbage.asis	2017-09-07 04:05:25 UTC (rev 221716)
@@ -0,0 +1 @@
+ALPHA BETA


Added: trunk/LayoutTests/http/wpt/fetch/resources/status-normal.txt (0 => 221716)

--- trunk/LayoutTests/http/wpt/fetch/resources/status-normal.txt	(rev 0)
+++ trunk/LayoutTests/http/wpt/fetch/resources/status-normal.txt	2017-09-07 04:05:25 UTC (rev 221716)
@@ -0,0 +1 @@
+Intentionally empty.


Added: trunk/LayoutTests/http/wpt/fetch/resources/status-with-message.asis (0 => 221716)

--- trunk/LayoutTests/http/wpt/fetch/resources/status-with-message.asis	(rev 0)
+++ trunk/LayoutTests/http/wpt/fetch/resources/status-with-message.asis	2017-09-07 04:05:25 UTC (rev 221716)
@@ -0,0 +1 @@
+HTTP/1.1 200 Alpha


Added: trunk/LayoutTests/http/wpt/fetch/resources/status-without-message.asis (0 => 221716)

--- trunk/LayoutTests/http/wpt/fetch/resources/status-without-message.asis	(rev 0)
+++ trunk/LayoutTests/http/wpt/fetch/resources/status-without-message.asis	2017-09-07 04:05:25 UTC (rev 221716)
@@ -0,0 +1 @@
+HTTP/1.1 200


Added: trunk/LayoutTests/http/wpt/fetch/response-status-text-expected.txt (0 => 221716)

--- trunk/LayoutTests/http/wpt/fetch/response-status-text-expected.txt	(rev 0)
+++ trunk/LayoutTests/http/wpt/fetch/response-status-text-expected.txt	2017-09-07 04:05:25 UTC (rev 221716)
@@ -0,0 +1,6 @@
+
+PASS Normal status text. 
+PASS Abnormal status text. 
+PASS Empty status text. 
+PASS Garbage status line. 
+


Added: trunk/LayoutTests/http/wpt/fetch/response-status-text.

[webkit-changes] [221715] trunk/Tools

2017-09-06 Thread commit-queue
Title: [221715] trunk/Tools








Revision 221715
Author commit-qu...@webkit.org
Date 2017-09-06 21:02:16 -0700 (Wed, 06 Sep 2017)


Log Message
Remove new-run-webkit-httpd as it appears to be old
https://bugs.webkit.org/show_bug.cgi?id=176493

Patch by Joseph Pecoraro  on 2017-09-06
Reviewed by Alexey Proskuryakov.

* Scripts/new-run-webkit-httpd: Removed.

Modified Paths

trunk/Tools/ChangeLog


Removed Paths

trunk/Tools/Scripts/new-run-webkit-httpd




Diff

Modified: trunk/Tools/ChangeLog (221714 => 221715)

--- trunk/Tools/ChangeLog	2017-09-07 03:42:39 UTC (rev 221714)
+++ trunk/Tools/ChangeLog	2017-09-07 04:02:16 UTC (rev 221715)
@@ -1,3 +1,12 @@
+2017-09-06  Joseph Pecoraro  
+
+Remove new-run-webkit-httpd as it appears to be old
+https://bugs.webkit.org/show_bug.cgi?id=176493
+
+Reviewed by Alexey Proskuryakov.
+
+* Scripts/new-run-webkit-httpd: Removed.
+
 2017-09-06  Alex Christensen  
 
 Add WKUIDelegatePrivate equivalent of WKPageUIClient's pageDidScroll


Deleted: trunk/Tools/Scripts/new-run-webkit-httpd (221714 => 221715)

--- trunk/Tools/Scripts/new-run-webkit-httpd	2017-09-07 03:42:39 UTC (rev 221714)
+++ trunk/Tools/Scripts/new-run-webkit-httpd	2017-09-07 04:02:16 UTC (rev 221715)
@@ -1,99 +0,0 @@
-#!/usr/bin/env python
-# Copyright (C) 2010 Google Inc. All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * 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.
-# * Neither the name of Google Inc. 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 AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""A utility script for starting and stopping the HTTP server with the
-   same configuration as used in the layout tests."""
-
-#
-# FIXME: currently this code only works with the Chromium ports and LigHTTPd.
-# It should be made to work on all ports.
-#
-# This script is also used by Chromium's ui_tests to run http layout tests
-# in a browser.
-#
-import optparse
-import os
-import sys
-import tempfile
-
-import webkitpy.common.version_check
-
-from webkitpy.common.host import Host
-from webkitpy.layout_tests.servers import http_server
-
-
-def run(options):
-if not options.server:
-print ('Usage: %s --server {start|stop} [--root=root_dir]'
-   ' [--port=port_number]' % sys.argv[0])
-else:
-if (options.root is None) and (options.port is not None):
-# specifying root but not port means we want httpd on default
-# set of ports that LayoutTest use, but pointing to a different
-# source of tests. Specifying port but no root does not seem
-# meaningful.
-raise 'Specifying port requires also a root.'
-host = Host()
-# FIXME: Make this work with other ports as well.
-port_obj = host.port_factory.get(port_name='win', options=options)
-httpd = http_server.Lighttpd(port_obj,
- tempfile.gettempdir(),
- port=options.port,
- root=options.root,
- run_background=options.run_background,
- layout_tests_dir=options.layout_tests_dir)
-if options.server == 'start':
-httpd.start()
-else:
-httpd.stop()
-
-
-def main():
-option_parser = optparse.OptionParser()
-option_parser.add_option('-k', '--server',
-help='Server action (start|stop)')
-option_parser.add_option('-p', '--port',
-help='Port to listen on (overrides layout test ports)')
-option_parser.add_option('-r', '--root',
-help='Absolute path to DocumentRoot (overrides layout test roots)

[webkit-changes] [221714] trunk

2017-09-06 Thread achristensen
Title: [221714] trunk








Revision 221714
Author achristen...@apple.com
Date 2017-09-06 20:42:39 -0700 (Wed, 06 Sep 2017)


Log Message
Add WKUIDelegatePrivate equivalent of WKPageUIClient's pageDidScroll
https://bugs.webkit.org/show_bug.cgi?id=176482


Reviewed by Tim Horton.
Source/WebKit:


Covered by a new API test!

* UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
* UIProcess/Cocoa/UIDelegate.h:
* UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::setDelegate):
(WebKit::UIDelegate::UIClient::pageDidScroll):

Tools:


* TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
(-[DidScrollDelegate _webViewDidScroll:]):
(TEST):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h
trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.h
trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (221713 => 221714)

--- trunk/Source/WebKit/ChangeLog	2017-09-07 03:29:21 UTC (rev 221713)
+++ trunk/Source/WebKit/ChangeLog	2017-09-07 03:42:39 UTC (rev 221714)
@@ -1,3 +1,19 @@
+2017-09-06  Alex Christensen  
+
+Add WKUIDelegatePrivate equivalent of WKPageUIClient's pageDidScroll
+https://bugs.webkit.org/show_bug.cgi?id=176482
+
+
+Reviewed by Tim Horton.
+
+Covered by a new API test!
+
+* UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
+* UIProcess/Cocoa/UIDelegate.h:
+* UIProcess/Cocoa/UIDelegate.mm:
+(WebKit::UIDelegate::setDelegate):
+(WebKit::UIDelegate::UIClient::pageDidScroll):
+
 2017-09-06  Youenn Fablet  
 
 NetworkProcess Cache and Caches should be cleared when the last related WebProcess Cache or CacheStorage is destroyed


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h (221713 => 221714)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h	2017-09-07 03:29:21 UTC (rev 221713)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h	2017-09-07 03:42:39 UTC (rev 221714)
@@ -152,6 +152,7 @@
 - (void)_showWebView:(WKWebView *)webView WK_API_AVAILABLE(macosx(WK_MAC_TBA));
 - (void)_focusWebView:(WKWebView *)webView WK_API_AVAILABLE(macosx(WK_MAC_TBA));
 - (void)_unfocusWebView:(WKWebView *)webView WK_API_AVAILABLE(macosx(WK_MAC_TBA));
+- (void)_webViewDidScroll:(WKWebView *)webView WK_API_AVAILABLE(macosx(WK_MAC_TBA));
 - (void)_webView:(WKWebView *)webView takeFocus:(_WKFocusDirection)direction WK_API_AVAILABLE(macosx(WK_MAC_TBA));
 - (void)_webView:(WKWebView *)webView didNotHandleWheelEvent:(NSEvent *)event WK_API_AVAILABLE(macosx(WK_MAC_TBA));
 - (void)_webView:(WKWebView *)webView handleAutoplayEvent:(_WKAutoplayEvent)event withFlags:(_WKAutoplayEventFlags)flags WK_API_AVAILABLE(macosx(WK_MAC_TBA));


Modified: trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.h (221713 => 221714)

--- trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.h	2017-09-07 03:29:21 UTC (rev 221713)
+++ trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.h	2017-09-07 03:42:39 UTC (rev 221714)
@@ -100,6 +100,7 @@
 void takeFocus(WebPageProxy*, WKFocusDirection) final;
 void focus(WebPageProxy*) final;
 void unfocus(WebPageProxy*) final;
+void pageDidScroll(WebPageProxy*) final;
 void didNotHandleWheelEvent(WebPageProxy*, const NativeWebWheelEvent&) final;
 void handleAutoplayEvent(WebPageProxy&, WebCore::AutoplayEvent, OptionSet) final;
 void unavailablePluginButtonClicked(WebKit::WebPageProxy&, WKPluginUnavailabilityReason, API::Dictionary&) final;
@@ -152,6 +153,7 @@
 bool focusWebView : 1;
 bool unfocusWebView : 1;
 bool webViewTakeFocus : 1;
+bool webViewDidScroll : 1;
 bool webViewDidNotHandleWheelEvent : 1;
 bool webViewHandleAutoplayEventWithFlags : 1;
 bool webViewUnavailablePlugInButtonClicked : 1;


Modified: trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm (221713 => 221714)

--- trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm	2017-09-07 03:29:21 UTC (rev 221713)
+++ trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm	2017-09-07 03:42:39 UTC (rev 221714)
@@ -109,6 +109,7 @@
 m_delegateMethods.focusWebView = [delegate respondsToSelector:@selector(_focusWebView:)];
 m_delegateMethods.unfocusWebView = [delegate respondsToSelector:@selector(_unfocusWebView:)];
 m_delegateMethods.webViewTakeFocus = [delegate respondsToSelector:@selector(_webView:takeFocus:)];
+m_delegateMethods.webViewDidScroll = [delegate respondsToSelector:@selector(_webViewDidScroll:)];
 m_delegateMethods.webViewGetToolbarsAreVisibleWithCompletionHandler = [delegate respondsToSelector:@selector(_webView:getToolbarsAreVisibleWithCompletionHandler:)];
 m_delegateMethods.webViewDidNotHandleWheelEvent = [delegate respondsToSelector:@selector(_webView:didNotHandleWheelEvent:)];
 m_delegateMethods.webViewUnavailablePlugInButtonCl

[webkit-changes] [221713] trunk/Source/WebInspectorUI

2017-09-06 Thread mattbaker
Title: [221713] trunk/Source/WebInspectorUI








Revision 221713
Author mattba...@apple.com
Date 2017-09-06 20:29:21 -0700 (Wed, 06 Sep 2017)


Log Message
Web Inspector: Relax the maximum sidebar width
https://bugs.webkit.org/show_bug.cgi?id=175808


Reviewed by Devin Rousso.

This patch introduces a constant, `minimumContentBrowserWidth`, which
constrains the maximum width of either sidebar:

maxSidebarWidth = window.innerWidth - minimumContentBrowserWidth - otherSidebarWidth

A value of 100px for `minimumContentBrowserWidth` leaves enough space for
three NavigationItems at their minimum width (32px), with a few pixels
left over for good measure. For most tabs this will ensure that the buttons
for showing the sidebars will be visible, along with an addition button.

* UserInterface/Base/Main.js:
* UserInterface/Views/Sidebar.js:
(WI.Sidebar.prototype.get maximumWidth):

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Base/Main.js
trunk/Source/WebInspectorUI/UserInterface/Views/Sidebar.js




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (221712 => 221713)

--- trunk/Source/WebInspectorUI/ChangeLog	2017-09-07 02:32:57 UTC (rev 221712)
+++ trunk/Source/WebInspectorUI/ChangeLog	2017-09-07 03:29:21 UTC (rev 221713)
@@ -1,3 +1,25 @@
+2017-09-06  Matt Baker  
+
+Web Inspector: Relax the maximum sidebar width
+https://bugs.webkit.org/show_bug.cgi?id=175808
+
+
+Reviewed by Devin Rousso.
+
+This patch introduces a constant, `minimumContentBrowserWidth`, which
+constrains the maximum width of either sidebar:
+
+maxSidebarWidth = window.innerWidth - minimumContentBrowserWidth - otherSidebarWidth
+
+A value of 100px for `minimumContentBrowserWidth` leaves enough space for
+three NavigationItems at their minimum width (32px), with a few pixels
+left over for good measure. For most tabs this will ensure that the buttons
+for showing the sidebars will be visible, along with an addition button.
+
+* UserInterface/Base/Main.js:
+* UserInterface/Views/Sidebar.js:
+(WI.Sidebar.prototype.get maximumWidth):
+
 2017-09-06  Devin Rousso  
 
 Web Inspector: Support overloaded CanvasRenderingContext2D actions with identical parameter counts


Modified: trunk/Source/WebInspectorUI/UserInterface/Base/Main.js (221712 => 221713)

--- trunk/Source/WebInspectorUI/UserInterface/Base/Main.js	2017-09-07 02:32:57 UTC (rev 221712)
+++ trunk/Source/WebInspectorUI/UserInterface/Base/Main.js	2017-09-07 03:29:21 UTC (rev 221713)
@@ -1054,6 +1054,30 @@
 this.detailsSidebar.collapsed = false;
 };
 
+WI.getMaximumSidebarWidth = function(sidebar)
+{
+console.assert(sidebar instanceof WI.Sidebar);
+
+const minimumContentBrowserWidth = 100;
+
+let minimumWidth = window.innerWidth - minimumContentBrowserWidth;
+let tabContentView = this.tabBrowser.selectedTabContentView;
+console.assert(tabContentView);
+if (!tabContentView)
+return minimumWidth;
+
+let otherSidebar = null;
+if (sidebar === this.navigationSidebar)
+otherSidebar = tabContentView.detailsSidebarPanels.length ? this.detailsSidebar : null;
+else
+otherSidebar = tabContentView.navigationSidebarPanel ? this.navigationSidebar : null;
+
+if (otherSidebar)
+minimumWidth -= otherSidebar.width;
+
+return minimumWidth;
+};
+
 WI.tabContentViewClassForRepresentedObject = function(representedObject)
 {
 if (representedObject instanceof WI.DOMTree)


Modified: trunk/Source/WebInspectorUI/UserInterface/Views/Sidebar.js (221712 => 221713)

--- trunk/Source/WebInspectorUI/UserInterface/Views/Sidebar.js	2017-09-07 02:32:57 UTC (rev 221712)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/Sidebar.js	2017-09-07 03:29:21 UTC (rev 221713)
@@ -168,9 +168,7 @@
 
 get maximumWidth()
 {
-// FIXME: This is kind of arbitrary and ideally would be a more complex calculation based on the
-// available space for the sibling elements.
-return Math.round(window.innerWidth / 3);
+return WI.getMaximumSidebarWidth(this);
 }
 
 get width()






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221712] trunk

2017-09-06 Thread eric . carlson
Title: [221712] trunk








Revision 221712
Author eric.carl...@apple.com
Date 2017-09-06 19:32:57 -0700 (Wed, 06 Sep 2017)


Log Message
Require LoggingHelper overrides to provide identifier
https://bugs.webkit.org/show_bug.cgi?id=176477

Reviewed by Jer Noble.

Source/WebCore:

No new tests, updated API test.

* html/HTMLMediaElement.cpp:
(WebCore::nextLogIdentifier): New.
(WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_logIdendifier. LOGTHIS -> LOGIDENTIFIER.
(WebCore::HTMLMediaElement::~HTMLMediaElement): Ditto.
* html/HTMLMediaElement.h:

Source/WebCore/PAL:

* pal/Logger.h:
(PAL::Logger::LogSiteIdentifier::LogSiteIdentifier):
(PAL::LogArgument::toString):
(PAL::Logger::notice const): Deleted.
(PAL::Logger::MethodAndPointer::MethodAndPointer): Deleted.
(PAL::LogArgument::toString): Deleted.
* pal/LoggerHelper.h:

Source/WTF:

* wtf/Assertions.cpp: No more WTFLogLevelNotice.
* wtf/Assertions.h: Ditto.

Tools:

* TestWebKitAPI/Tests/WebCore/Logging.cpp:
(TestWebKitAPI::TEST_F):

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/Assertions.cpp
trunk/Source/WTF/wtf/Assertions.h
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/PAL/ChangeLog
trunk/Source/WebCore/PAL/pal/Logger.h
trunk/Source/WebCore/PAL/pal/LoggerHelper.h
trunk/Source/WebCore/html/HTMLMediaElement.cpp
trunk/Source/WebCore/html/HTMLMediaElement.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebCore/Logging.cpp




Diff

Modified: trunk/Source/WTF/ChangeLog (221711 => 221712)

--- trunk/Source/WTF/ChangeLog	2017-09-07 00:57:35 UTC (rev 221711)
+++ trunk/Source/WTF/ChangeLog	2017-09-07 02:32:57 UTC (rev 221712)
@@ -1,3 +1,13 @@
+2017-09-06  Eric Carlson  
+
+Require LoggingHelper overrides to provide identifier
+https://bugs.webkit.org/show_bug.cgi?id=176477
+
+Reviewed by Jer Noble.
+
+* wtf/Assertions.cpp: No more WTFLogLevelNotice.
+* wtf/Assertions.h: Ditto.
+
 2017-09-06  Per Arne Vollan  
 
 [Win] WebCore failed to build, InbandTextTrackPrivateAVF: base class undefined.


Modified: trunk/Source/WTF/wtf/Assertions.cpp (221711 => 221712)

--- trunk/Source/WTF/wtf/Assertions.cpp	2017-09-07 00:57:35 UTC (rev 221711)
+++ trunk/Source/WTF/wtf/Assertions.cpp	2017-09-07 02:32:57 UTC (rev 221712)
@@ -569,8 +569,6 @@
 logChannelLevel = WTFLogLevelError;
 else if (equalLettersIgnoringASCIICase(level, "warning"))
 logChannelLevel = WTFLogLevelWarning;
-else if (equalLettersIgnoringASCIICase(level, "notice"))
-logChannelLevel = WTFLogLevelNotice;
 else if (equalLettersIgnoringASCIICase(level, "info"))
 logChannelLevel = WTFLogLevelInfo;
 else if (equalLettersIgnoringASCIICase(level, "debug"))


Modified: trunk/Source/WTF/wtf/Assertions.h (221711 => 221712)

--- trunk/Source/WTF/wtf/Assertions.h	2017-09-07 00:57:35 UTC (rev 221711)
+++ trunk/Source/WTF/wtf/Assertions.h	2017-09-07 02:32:57 UTC (rev 221712)
@@ -148,7 +148,7 @@
 #endif
 
 typedef enum { WTFLogChannelOff, WTFLogChannelOn, WTFLogChannelOnWithAccumulation } WTFLogChannelState;
-typedef enum { WTFLogLevelAlways, WTFLogLevelError, WTFLogLevelWarning, WTFLogLevelNotice, WTFLogLevelInfo, WTFLogLevelDebug } WTFLogLevel;
+typedef enum { WTFLogLevelAlways, WTFLogLevelError, WTFLogLevelWarning, WTFLogLevelInfo, WTFLogLevelDebug } WTFLogLevel;
 
 typedef struct {
 WTFLogChannelState state;


Modified: trunk/Source/WebCore/ChangeLog (221711 => 221712)

--- trunk/Source/WebCore/ChangeLog	2017-09-07 00:57:35 UTC (rev 221711)
+++ trunk/Source/WebCore/ChangeLog	2017-09-07 02:32:57 UTC (rev 221712)
@@ -1,3 +1,18 @@
+2017-09-06  Eric Carlson  
+
+Require LoggingHelper overrides to provide identifier
+https://bugs.webkit.org/show_bug.cgi?id=176477
+
+Reviewed by Jer Noble.
+
+No new tests, updated API test.
+
+* html/HTMLMediaElement.cpp:
+(WebCore::nextLogIdentifier): New.
+(WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_logIdendifier. LOGTHIS -> LOGIDENTIFIER.
+(WebCore::HTMLMediaElement::~HTMLMediaElement): Ditto.
+* html/HTMLMediaElement.h:
+
 2017-09-06  Youenn Fablet  
 
 NetworkProcess Cache and Caches should be cleared when the last related WebProcess Cache or CacheStorage is destroyed


Modified: trunk/Source/WebCore/PAL/ChangeLog (221711 => 221712)

--- trunk/Source/WebCore/PAL/ChangeLog	2017-09-07 00:57:35 UTC (rev 221711)
+++ trunk/Source/WebCore/PAL/ChangeLog	2017-09-07 02:32:57 UTC (rev 221712)
@@ -1,3 +1,18 @@
+2017-09-06  Eric Carlson  
+
+Require LoggingHelper overrides to provide identifier
+https://bugs.webkit.org/show_bug.cgi?id=176477
+
+Reviewed by Jer Noble.
+
+* pal/Logger.h:
+(PAL::Logger::LogSiteIdentifier::LogSiteIdentifier):
+(PAL::LogArgument::toString):
+(PAL::Logger::notice const): Deleted.
+(PAL::Logger::MethodAndPointer::

[webkit-changes] [221711] trunk

2017-09-06 Thread mark . lam
Title: [221711] trunk








Revision 221711
Author mark@apple.com
Date 2017-09-06 17:57:35 -0700 (Wed, 06 Sep 2017)


Log Message
constructGenericTypedArrayViewWithArguments() is missing an exception check.
https://bugs.webkit.org/show_bug.cgi?id=176485


Reviewed by Keith Miller.

JSTests:

* stress/regress-176485.js: Added.

Source/_javascript_Core:

* runtime/JSGenericTypedArrayViewConstructorInlines.h:
(JSC::constructGenericTypedArrayViewWithArguments):

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/runtime/JSGenericTypedArrayViewConstructorInlines.h


Added Paths

trunk/JSTests/stress/regress-176485.js




Diff

Modified: trunk/JSTests/ChangeLog (221710 => 221711)

--- trunk/JSTests/ChangeLog	2017-09-07 00:03:13 UTC (rev 221710)
+++ trunk/JSTests/ChangeLog	2017-09-07 00:57:35 UTC (rev 221711)
@@ -1,3 +1,13 @@
+2017-09-06  Mark Lam  
+
+constructGenericTypedArrayViewWithArguments() is missing an exception check.
+https://bugs.webkit.org/show_bug.cgi?id=176485
+
+
+Reviewed by Keith Miller.
+
+* stress/regress-176485.js: Added.
+
 2017-09-05  Saam Barati  
 
 isNotCellSpeculation is wrong with respect to SpecEmpty


Added: trunk/JSTests/stress/regress-176485.js (0 => 221711)

--- trunk/JSTests/stress/regress-176485.js	(rev 0)
+++ trunk/JSTests/stress/regress-176485.js	2017-09-07 00:57:35 UTC (rev 221711)
@@ -0,0 +1,11 @@
+var exception;
+try {
+a2 = {};//some method ok//what ever object//Date()
+Object.defineProperty(a2, "length",{get: Int32Array});//Int32Array here wrong,need a function
+new Int32Array(this.a2);
+} catch (e) {
+exception = e;
+}
+
+if (exception != "TypeError: calling Int32Array constructor without new is invalid")
+throw "Exception not thrown";


Modified: trunk/Source/_javascript_Core/ChangeLog (221710 => 221711)

--- trunk/Source/_javascript_Core/ChangeLog	2017-09-07 00:03:13 UTC (rev 221710)
+++ trunk/Source/_javascript_Core/ChangeLog	2017-09-07 00:57:35 UTC (rev 221711)
@@ -1,3 +1,14 @@
+2017-09-06  Mark Lam  
+
+constructGenericTypedArrayViewWithArguments() is missing an exception check.
+https://bugs.webkit.org/show_bug.cgi?id=176485
+
+
+Reviewed by Keith Miller.
+
+* runtime/JSGenericTypedArrayViewConstructorInlines.h:
+(JSC::constructGenericTypedArrayViewWithArguments):
+
 2017-09-06  Saam Barati  
 
 Air should have a Vector of prologue generators instead of a HashMap representing an optional prologue generator


Modified: trunk/Source/_javascript_Core/runtime/JSGenericTypedArrayViewConstructorInlines.h (221710 => 221711)

--- trunk/Source/_javascript_Core/runtime/JSGenericTypedArrayViewConstructorInlines.h	2017-09-07 00:03:13 UTC (rev 221710)
+++ trunk/Source/_javascript_Core/runtime/JSGenericTypedArrayViewConstructorInlines.h	2017-09-07 00:57:35 UTC (rev 221711)
@@ -185,8 +185,14 @@
 return constructGenericTypedArrayViewFromIterator(exec, structure, iterator);
 }
 
-length = lengthSlot.isUnset() ? 0 : lengthSlot.getValue(exec, vm.propertyNames->length).toUInt32(exec);
-RETURN_IF_EXCEPTION(scope, nullptr);
+if (lengthSlot.isUnset())
+length = 0;
+else {
+JSValue value = lengthSlot.getValue(exec, vm.propertyNames->length);
+RETURN_IF_EXCEPTION(scope, nullptr);
+length = value.toUInt32(exec);
+RETURN_IF_EXCEPTION(scope, nullptr);
+}
 }
 
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221710] trunk

2017-09-06 Thread commit-queue
Title: [221710] trunk








Revision 221710
Author commit-qu...@webkit.org
Date 2017-09-06 17:03:13 -0700 (Wed, 06 Sep 2017)


Log Message
NetworkProcess Cache and Caches should be cleared when the last related WebProcess Cache or CacheStorage is destroyed
https://bugs.webkit.org/show_bug.cgi?id=176249

Patch by Youenn Fablet  on 2017-09-06
Reviewed by Alex Christensen.

Source/WebCore:

Test: http/tests/cache-storage/cache-representation.https.html

Each Cache construction/destruction is notified to the CacheStorageConnection
so that the WebKit2 engine can handle memory management accordingly.

Adding an internal API to grab the representation of an engine at any time.

* Modules/cache/Cache.cpp:
(WebCore::Cache::Cache):
(WebCore::Cache::~Cache):
* Modules/cache/CacheStorageConnection.h:
(WebCore::CacheStorageConnection::reference):
(WebCore::CacheStorageConnection::dereference):
* Modules/cache/WorkerCacheStorageConnection.cpp:
(WebCore::WorkerCacheStorageConnection::reference):
(WebCore::WorkerCacheStorageConnection::dereference):
* Modules/cache/WorkerCacheStorageConnection.h:
* testing/Internals.cpp:
(WebCore::Internals::cacheStorageEngineRepresentation):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit:

CacheStorageEngineConnection will store the number of Caches references for its related WebProcess.
For a new reference, CacheStorageEngineConnection will notify its engine to lock the related Cache.
When the last reference is gone, CacheStorageEngineConnection will ask the engine to release the lock.

CacheStorageEngine will keep locks as a counter for each Cache object.
When the counter goes to zero, the engine asks the Cache to dispose itself.
Disposal is done by its parent Caches as only Caches knows whether the Cache is persistent or has been removed.

The Caches will remove the Cache from memory.
For removed caches, all information will be lost.
For caches that are not removed, they will keep their identifiers but all in-memory record information will be discarded.
If there is a need to reopen the Cache, it will need to read its information from the filesystem.
If the Caches has no longer any active Cache object, it will ask the engine to release itself.

WebProcess crashing is handled correctly as the CacheStorageEngineConnection will release its locks at destruction
time of the connection to the web process.

Adding the possiblity to grab an engine representation for test purposes.

* NetworkProcess/cache/CacheStorageEngine.cpp:
(WebKit::CacheStorage::Engine::readCachesFromDisk):
(WebKit::CacheStorage::Engine::removeCaches):
(WebKit::CacheStorage::Engine::lock):
(WebKit::CacheStorage::Engine::unlock):
* NetworkProcess/cache/CacheStorageEngine.h:
* NetworkProcess/cache/CacheStorageEngineCache.cpp:
(WebKit::CacheStorage::Cache::Cache):
(WebKit::CacheStorage::Cache::dispose):
(WebKit::CacheStorage::Cache::clearMemoryRepresentation):
* NetworkProcess/cache/CacheStorageEngineCache.h:
(WebKit::CacheStorage::Cache::isActive const):
* NetworkProcess/cache/CacheStorageEngineCaches.cpp:
(WebKit::CacheStorage::Caches::Caches):
(WebKit::CacheStorage::Caches::open):
(WebKit::CacheStorage::Caches::dispose):
(WebKit::CacheStorage::Caches::readCachesFromDisk):
(WebKit::CacheStorage::Caches::clearMemoryRepresentation):
* NetworkProcess/cache/CacheStorageEngineCaches.h:
(WebKit::CacheStorage::Caches::create):
* NetworkProcess/cache/CacheStorageEngineConnection.cpp:
(WebKit::CacheStorageEngineConnection::~CacheStorageEngineConnection):
(WebKit::CacheStorageEngineConnection::reference):
(WebKit::CacheStorageEngineConnection::dereference):
* NetworkProcess/cache/CacheStorageEngineConnection.h:
* NetworkProcess/cache/CacheStorageEngineConnection.messages.in:
* WebProcess/Cache/WebCacheStorageConnection.cpp:
(WebKit::WebCacheStorageConnection::reference):
(WebKit::WebCacheStorageConnection::dereference):
* WebProcess/Cache/WebCacheStorageConnection.h:

LayoutTests:

* http/tests/cache-storage/cache-representation.https-expected.txt: Added.
* http/tests/cache-storage/cache-representation.https.html: Added.
* http/tests/cache-storage/resources/cache-persistency-iframe.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/http/tests/cache-storage/cache-origins.https.html
trunk/LayoutTests/http/tests/cache-storage/resources/cache-persistency-iframe.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/cache/CacheStorageConnection.h
trunk/Source/WebCore/Modules/cache/DOMCache.cpp
trunk/Source/WebCore/Modules/cache/WorkerCacheStorageConnection.cpp
trunk/Source/WebCore/Modules/cache/WorkerCacheStorageConnection.h
trunk/Source/WebCore/testing/Internals.cpp
trunk/Source/WebCore/testing/Internals.h
trunk/Source/WebCore/testing/Internals.idl
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/cache/CacheStorageEngine.cpp
trunk/Source/WebKit/NetworkProcess/cache/CacheStorageEngine.h
trunk/Source/WebKit/NetworkProcess/cache/CacheStorageEngineCache.cpp
trunk/Source/WebKit/Ne

[webkit-changes] [221709] trunk/Source/WebCore

2017-09-06 Thread mrajca
Title: [221709] trunk/Source/WebCore








Revision 221709
Author mra...@apple.com
Date 2017-09-06 17:02:27 -0700 (Wed, 06 Sep 2017)


Log Message
Support new autoplay quirk for arbitrary user gestures.
https://bugs.webkit.org/show_bug.cgi?id=176402

Reviewed by Eric Carlson.

This quirk allows any user gesture to allow autoplay in a document.

No new tests because this specifically targets one host.

* html/MediaElementSession.cpp:
(WebCore::needsArbitraryUserGestureAutoplayQuirk):
(WebCore::MediaElementSession::playbackPermitted const):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/MediaElementSession.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (221708 => 221709)

--- trunk/Source/WebCore/ChangeLog	2017-09-06 23:33:21 UTC (rev 221708)
+++ trunk/Source/WebCore/ChangeLog	2017-09-07 00:02:27 UTC (rev 221709)
@@ -1,3 +1,18 @@
+2017-09-05  Matt Rajca  
+
+Support new autoplay quirk for arbitrary user gestures.
+https://bugs.webkit.org/show_bug.cgi?id=176402
+
+Reviewed by Eric Carlson.
+
+This quirk allows any user gesture to allow autoplay in a document.
+
+No new tests because this specifically targets one host.
+
+* html/MediaElementSession.cpp:
+(WebCore::needsArbitraryUserGestureAutoplayQuirk):
+(WebCore::MediaElementSession::playbackPermitted const):
+
 2017-09-06  Youenn Fablet  
 
 Support caching of Response with a ReadableStream body


Modified: trunk/Source/WebCore/html/MediaElementSession.cpp (221708 => 221709)

--- trunk/Source/WebCore/html/MediaElementSession.cpp	2017-09-06 23:33:21 UTC (rev 221708)
+++ trunk/Source/WebCore/html/MediaElementSession.cpp	2017-09-07 00:02:27 UTC (rev 221709)
@@ -148,6 +148,17 @@
 m_restrictions &= ~restriction;
 }
 
+#if PLATFORM(MAC)
+static bool needsArbitraryUserGestureAutoplayQuirk(const Document& document)
+{
+if (!document.settings().needsSiteSpecificQuirks())
+return false;
+
+auto host = document.url().host();
+return equalLettersIgnoringASCIICase(host, "washingtonpost.com") || host.endsWithIgnoringASCIICase(".washingtonpost.com");
+}
+#endif // PLATFORM(MAC)
+
 SuccessOr MediaElementSession::playbackPermitted(const HTMLMediaElement& element) const
 {
 if (element.document().isMediaDocument() && !element.document().ownerElement())
@@ -178,6 +189,9 @@
 const auto& topDocument = element.document().topDocument();
 if (topDocument.mediaState() & MediaProducer::HasUserInteractedWithMediaElement && topDocument.settings().needsSiteSpecificQuirks())
 return { };
+
+if (element.document().hasHadUserInteraction() && needsArbitraryUserGestureAutoplayQuirk(element.document()))
+return { };
 #endif
 
 if (m_restrictions & RequireUserGestureForVideoRateChange && element.isVideo() && !element.document().processingUserGestureForMedia()) {






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221708] trunk/LayoutTests

2017-09-06 Thread jlewis3
Title: [221708] trunk/LayoutTests








Revision 221708
Author jlew...@apple.com
Date 2017-09-06 16:33:21 -0700 (Wed, 06 Sep 2017)


Log Message
Marked media/video-main-content-allow-then-scroll.html as flaky on macOS and failing on iOS.
https://bugs.webkit.org/show_bug.cgi?id=161491

Unreviewed test gardening.

* platform/ios-wk2/TestExpectations:
* platform/mac/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios-wk2/TestExpectations
trunk/LayoutTests/platform/mac/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (221707 => 221708)

--- trunk/LayoutTests/ChangeLog	2017-09-06 23:27:46 UTC (rev 221707)
+++ trunk/LayoutTests/ChangeLog	2017-09-06 23:33:21 UTC (rev 221708)
@@ -1,3 +1,13 @@
+2017-09-06  Matt Lewis  
+
+Marked media/video-main-content-allow-then-scroll.html as flaky on macOS and failing on iOS.
+https://bugs.webkit.org/show_bug.cgi?id=161491
+
+Unreviewed test gardening.
+
+* platform/ios-wk2/TestExpectations:
+* platform/mac/TestExpectations:
+
 2017-09-06  Youenn Fablet  
 
 Support caching of Response with a ReadableStream body


Modified: trunk/LayoutTests/platform/ios-wk2/TestExpectations (221707 => 221708)

--- trunk/LayoutTests/platform/ios-wk2/TestExpectations	2017-09-06 23:27:46 UTC (rev 221707)
+++ trunk/LayoutTests/platform/ios-wk2/TestExpectations	2017-09-06 23:33:21 UTC (rev 221708)
@@ -1861,7 +1861,7 @@
 webkit.org/b/161323 media/track/track-remove-crash.html [ Skip ]
 
 webkit.org/b/142152 media/track/track-in-band-cues-added-once.html [ Failure Timeout ]
-webkit.org/b/161491 media/video-main-content-allow-then-scroll.html [ Pass Failure ]
+webkit.org/b/161491 media/video-main-content-allow-then-scroll.html [ Failure ]
 
 webkit.org/b/160591 http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/upgrade-insecure-fetch-in-worker.html [ Failure Timeout ]
 
@@ -1965,4 +1965,4 @@
 webkit.org/b/173487 imported/w3c/web-platform-tests/IndexedDB/large-nested-cloning.html [ Pass Failure ]
 
 # 
-imported/w3c/web-platform-tests/XMLHttpRequest/setrequestheader-content-type.htm [ Failure ]
\ No newline at end of file
+imported/w3c/web-platform-tests/XMLHttpRequest/setrequestheader-content-type.htm [ Failure ]


Modified: trunk/LayoutTests/platform/mac/TestExpectations (221707 => 221708)

--- trunk/LayoutTests/platform/mac/TestExpectations	2017-09-06 23:27:46 UTC (rev 221707)
+++ trunk/LayoutTests/platform/mac/TestExpectations	2017-09-06 23:33:21 UTC (rev 221708)
@@ -1631,4 +1631,7 @@
 crypto/subtle/ecdsa-import-key-verify-p521.html
 crypto/subtle/ecdsa-import-pkcs8-key-p521-validate-ecprivatekey-parameters-publickey.html
 
-webkit.org/b/176444 fast/canvas/webgl/webgl2-getActiveUniforms.html [ Failure ]
\ No newline at end of file
+webkit.org/b/176444 fast/canvas/webgl/webgl2-getActiveUniforms.html [ Failure ]
+
+webkit.org/b/161491 media/video-main-content-allow-then-scroll.html [ Pass Failure ]
+






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221707] trunk

2017-09-06 Thread achristensen
Title: [221707] trunk








Revision 221707
Author achristen...@apple.com
Date 2017-09-06 16:27:46 -0700 (Wed, 06 Sep 2017)


Log Message
Add WKUIDelegatePrivate equivalent of WKPageUIClient's pinnedStateDidChange
https://bugs.webkit.org/show_bug.cgi?id=176474


Reviewed by Tim Horton.

Source/WebKit:

Rather than telling the UIClient that the pinned state changed and having the application check 4 bools
like we do with WKPage, I made a KVO property on the WKWebView.  I introduce _WKRectEdge for this purpose,
which is like UIRectEdge but unfortunately NSRectEdge and CGRectEdge cannot be used as NS_OPTIONS/flags.
This same structure is used for rubber band state.

Covered by a new API test.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _pinnedState]):
(-[WKWebView _rubberBandState]):
(-[WKWebView _setRubberBandState:]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:
* UIProcess/Cocoa/WebViewImpl.h:
* UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::pinnedState):
(WebKit::WebViewImpl::rubberBandState):
(WebKit::WebViewImpl::setRubberBandState):
* UIProcess/PageClient.h:
(WebKit::PageClient::pinnedStateWillChange):
(WebKit::PageClient::pinnedStateDidChange):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didChangeScrollOffsetPinningForMainFrame):
* UIProcess/mac/PageClientImplMac.h:
* UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::pinnedStateWillChange):
(WebKit::PageClientImpl::pinnedStateDidChange):

Tools:

* TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
(-[PinnedStateObserver observeValueForKeyPath:ofObject:change:context:]):
(TEST):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h
trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h
trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm
trunk/Source/WebKit/UIProcess/PageClient.h
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit/UIProcess/mac/PageClientImplMac.h
trunk/Source/WebKit/UIProcess/mac/PageClientImplMac.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (221706 => 221707)

--- trunk/Source/WebKit/ChangeLog	2017-09-06 22:01:30 UTC (rev 221706)
+++ trunk/Source/WebKit/ChangeLog	2017-09-06 23:27:46 UTC (rev 221707)
@@ -1,3 +1,38 @@
+2017-09-06  Alex Christensen  
+
+Add WKUIDelegatePrivate equivalent of WKPageUIClient's pinnedStateDidChange
+https://bugs.webkit.org/show_bug.cgi?id=176474
+
+
+Reviewed by Tim Horton.
+
+Rather than telling the UIClient that the pinned state changed and having the application check 4 bools
+like we do with WKPage, I made a KVO property on the WKWebView.  I introduce _WKRectEdge for this purpose,
+which is like UIRectEdge but unfortunately NSRectEdge and CGRectEdge cannot be used as NS_OPTIONS/flags.
+This same structure is used for rubber band state.
+
+Covered by a new API test.
+
+* UIProcess/API/Cocoa/WKWebView.mm:
+(-[WKWebView _pinnedState]):
+(-[WKWebView _rubberBandState]):
+(-[WKWebView _setRubberBandState:]):
+* UIProcess/API/Cocoa/WKWebViewPrivate.h:
+* UIProcess/Cocoa/WebViewImpl.h:
+* UIProcess/Cocoa/WebViewImpl.mm:
+(WebKit::WebViewImpl::pinnedState):
+(WebKit::WebViewImpl::rubberBandState):
+(WebKit::WebViewImpl::setRubberBandState):
+* UIProcess/PageClient.h:
+(WebKit::PageClient::pinnedStateWillChange):
+(WebKit::PageClient::pinnedStateDidChange):
+* UIProcess/WebPageProxy.cpp:
+(WebKit::WebPageProxy::didChangeScrollOffsetPinningForMainFrame):
+* UIProcess/mac/PageClientImplMac.h:
+* UIProcess/mac/PageClientImplMac.mm:
+(WebKit::PageClientImpl::pinnedStateWillChange):
+(WebKit::PageClientImpl::pinnedStateDidChange):
+
 2017-09-06  Youenn Fablet  
 
 Introduce asynchronous opening of CacheStorageEngine cache


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm (221706 => 221707)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm	2017-09-06 22:01:30 UTC (rev 221706)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm	2017-09-06 23:27:46 UTC (rev 221707)
@@ -5281,6 +5281,21 @@
 return _impl->pageExtendedBackgroundColor();
 }
 
+- (_WKRectEdge)_pinnedState
+{
+return _impl->pinnedState();
+}
+
+- (_WKRectEdge)_rubberBandingEnabled
+{
+return _impl->rubberBandingEnabled();
+}
+
+- (void)_setRubberBandingEnabled:(_WKRectEdge)state
+{
+_impl->setRubberBandingEnabled(state);
+}
+
 - (id)_immediateActionAnimationControllerForHitTestResult:(_WKHitTestResult *)hitTestResult withType:(_WKImmediateActionType)type userData:(id)userData
 {
 return nil;


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h (221706 => 221707)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h	2

[webkit-changes] [221706] releases/Apple

2017-09-06 Thread mitz
Title: [221706] releases/Apple








Revision 221706
Author m...@apple.com
Date 2017-09-06 15:01:30 -0700 (Wed, 06 Sep 2017)


Log Message
Added a tag for Safari Technology Preview release 39.

Added Paths

releases/Apple/Safari Technology Preview 39/
releases/Apple/Safari Technology Preview 39/ANGLE/
releases/Apple/Safari Technology Preview 39/_javascript_Core/
releases/Apple/Safari Technology Preview 39/WTF/
releases/Apple/Safari Technology Preview 39/WebCore/
releases/Apple/Safari Technology Preview 39/WebInspectorUI/
releases/Apple/Safari Technology Preview 39/WebKit/
releases/Apple/Safari Technology Preview 39/WebKitLegacy/
releases/Apple/Safari Technology Preview 39/bmalloc/
releases/Apple/Safari Technology Preview 39/libwebrtc/




Diff
Index: releases/Apple/Safari Technology Preview 39/ANGLE
===
--- tags/Safari-605.1.4/Source/ThirdParty/ANGLE	2017-09-06 21:37:00 UTC (rev 221705)
+++ releases/Apple/Safari Technology Preview 39/ANGLE	2017-09-06 22:01:30 UTC (rev 221706)

Property changes: releases/Apple/Safari Technology Preview 39/ANGLE



Added: allow-tabs
+true
\ No newline at end of property

Added: svn:mergeinfo
+/trunk/Source/ThirdParty/ANGLE:53455
\ No newline at end of property
Index: releases/Apple/Safari Technology Preview 39/_javascript_Core
===
--- tags/Safari-605.1.4/Source/_javascript_Core	2017-09-06 21:37:00 UTC (rev 221705)
+++ releases/Apple/Safari Technology Preview 39/_javascript_Core	2017-09-06 22:01:30 UTC (rev 221706)

Property changes: releases/Apple/Safari Technology Preview 39/_javascript_Core



Added: svn:mergeinfo
+/trunk/Source/_javascript_Core:53455
\ No newline at end of property
Index: releases/Apple/Safari Technology Preview 39/WTF
===
--- tags/Safari-605.1.4/Source/WTF	2017-09-06 21:37:00 UTC (rev 221705)
+++ releases/Apple/Safari Technology Preview 39/WTF	2017-09-06 22:01:30 UTC (rev 221706)

Property changes: releases/Apple/Safari Technology Preview 39/WTF



Added: svn:mergeinfo
+/trunk/Source/WTF:53455
\ No newline at end of property
Index: releases/Apple/Safari Technology Preview 39/WebInspectorUI
===
--- tags/Safari-605.1.4/Source/WebInspectorUI	2017-09-06 21:37:00 UTC (rev 221705)
+++ releases/Apple/Safari Technology Preview 39/WebInspectorUI	2017-09-06 22:01:30 UTC (rev 221706)

Property changes: releases/Apple/Safari Technology Preview 39/WebInspectorUI



Added: svn:mergeinfo
+/trunk/Source/WebInspectorUI:53455
\ No newline at end of property
Index: releases/Apple/Safari Technology Preview 39/bmalloc
===
--- tags/Safari-605.1.4/Source/bmalloc	2017-09-06 21:37:00 UTC (rev 221705)
+++ releases/Apple/Safari Technology Preview 39/bmalloc	2017-09-06 22:01:30 UTC (rev 221706)

Property changes: releases/Apple/Safari Technology Preview 39/bmalloc



Added: svn:mergeinfo
+/trunk/Source/bmalloc:53455
\ No newline at end of property
Index: releases/Apple/Safari Technology Preview 39/libwebrtc
===
--- tags/Safari-605.1.4/Source/ThirdParty/libwebrtc	2017-09-06 21:37:00 UTC (rev 221705)
+++ releases/Apple/Safari Technology Preview 39/libwebrtc	2017-09-06 22:01:30 UTC (rev 221706)

Property changes: releases/Apple/Safari Technology Preview 39/libwebrtc



Added: svn:mergeinfo
+/trunk/Source/ThirdParty/libwebrtc:53455
\ No newline at end of property




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221705] trunk/Source/WebKit

2017-09-06 Thread commit-queue
Title: [221705] trunk/Source/WebKit








Revision 221705
Author commit-qu...@webkit.org
Date 2017-09-06 14:37:00 -0700 (Wed, 06 Sep 2017)


Log Message
Introduce asynchronous opening of CacheStorageEngine cache
https://bugs.webkit.org/show_bug.cgi?id=176425

Patch by Youenn Fablet  on 2017-09-06
Reviewed by Alex Christensen.

Introducing Cache::open to allow reading from the filesystem to fill the Cache.
This is called by Caches when engine requests to open an existing Cache.

* NetworkProcess/cache/CacheStorageEngineCache.cpp:
(WebKit::CacheStorage::Cache::Cache):
(WebKit::CacheStorage::Cache::open):
(WebKit::CacheStorage::Cache::finishOpening):
(WebKit::CacheStorage::Cache::readRecordsList):
* NetworkProcess/cache/CacheStorageEngineCache.h:
* NetworkProcess/cache/CacheStorageEngineCaches.cpp:
(WebKit::CacheStorage::Caches::find):
(WebKit::CacheStorage::Caches::open):
(WebKit::CacheStorage::Caches::remove):
(WebKit::CacheStorage::Caches::readCachesFromDisk):
(WebKit::CacheStorage::Caches::find const): Deleted.
* NetworkProcess/cache/CacheStorageEngineCaches.h:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/cache/CacheStorageEngineCache.cpp
trunk/Source/WebKit/NetworkProcess/cache/CacheStorageEngineCache.h
trunk/Source/WebKit/NetworkProcess/cache/CacheStorageEngineCaches.cpp
trunk/Source/WebKit/NetworkProcess/cache/CacheStorageEngineCaches.h




Diff

Modified: trunk/Source/WebKit/ChangeLog (221704 => 221705)

--- trunk/Source/WebKit/ChangeLog	2017-09-06 21:25:19 UTC (rev 221704)
+++ trunk/Source/WebKit/ChangeLog	2017-09-06 21:37:00 UTC (rev 221705)
@@ -1,3 +1,27 @@
+2017-09-06  Youenn Fablet  
+
+Introduce asynchronous opening of CacheStorageEngine cache
+https://bugs.webkit.org/show_bug.cgi?id=176425
+
+Reviewed by Alex Christensen.
+
+Introducing Cache::open to allow reading from the filesystem to fill the Cache.
+This is called by Caches when engine requests to open an existing Cache.
+
+* NetworkProcess/cache/CacheStorageEngineCache.cpp:
+(WebKit::CacheStorage::Cache::Cache):
+(WebKit::CacheStorage::Cache::open):
+(WebKit::CacheStorage::Cache::finishOpening):
+(WebKit::CacheStorage::Cache::readRecordsList):
+* NetworkProcess/cache/CacheStorageEngineCache.h:
+* NetworkProcess/cache/CacheStorageEngineCaches.cpp:
+(WebKit::CacheStorage::Caches::find):
+(WebKit::CacheStorage::Caches::open):
+(WebKit::CacheStorage::Caches::remove):
+(WebKit::CacheStorage::Caches::readCachesFromDisk):
+(WebKit::CacheStorage::Caches::find const): Deleted.
+* NetworkProcess/cache/CacheStorageEngineCaches.h:
+
 2017-09-06  Alex Christensen  
 
 Unreviewed, rolling out r221694.


Modified: trunk/Source/WebKit/NetworkProcess/cache/CacheStorageEngineCache.cpp (221704 => 221705)

--- trunk/Source/WebKit/NetworkProcess/cache/CacheStorageEngineCache.cpp	2017-09-06 21:25:19 UTC (rev 221704)
+++ trunk/Source/WebKit/NetworkProcess/cache/CacheStorageEngineCache.cpp	2017-09-06 21:37:00 UTC (rev 221705)
@@ -65,12 +65,53 @@
 return results;
 }
 
-Cache::Cache(uint64_t identifier, String&& name)
-: m_identifier(identifier)
+Cache::Cache(Caches& caches, uint64_t identifier, State state, String&& name)
+: m_caches(caches)
+, m_state(state)
+, m_identifier(identifier)
 , m_name(WTFMove(name))
 {
 }
 
+void Cache::open(CompletionCallback&& callback)
+{
+if (m_state == State::Open) {
+callback(std::nullopt);
+return;
+}
+if (m_state == State::Opening) {
+m_pendingOpeningCallbacks.append(WTFMove(callback));
+return;
+}
+m_state = State::Opening;
+readRecordsList([caches = makeRef(m_caches), identifier = m_identifier, callback = WTFMove(callback)](std::optional&& error) mutable {
+auto* cache = caches->find(identifier);
+if (!cache) {
+callback(Error::Internal);
+return;
+}
+cache->finishOpening(WTFMove(callback), WTFMove(error));
+});
+}
+
+void Cache::finishOpening(CompletionCallback&& callback, std::optional&& error)
+{
+if (error) {
+m_state = State::Uninitialized;
+callback(error.value());
+auto callbacks = WTFMove(m_pendingOpeningCallbacks);
+for (auto& callback : callbacks)
+callback(error.value());
+return;
+}
+m_state = State::Open;
+
+callback(std::nullopt);
+auto callbacks = WTFMove(m_pendingOpeningCallbacks);
+for (auto& callback : callbacks)
+callback(std::nullopt);
+}
+
 Vector Cache::retrieveRecords(const URL& url) const
 {
 if (url.isNull()) {
@@ -209,6 +250,12 @@
 });
 }
 
+void Cache::readRecordsList(CompletionCallback&& callback)
+{
+// FIXME: Implement this.
+callback(std::nullopt);
+}
+
 void Cache::writeRecordsList(CompletionCallback&& callback)
 {
 // FIXME: Implement this.


Modified: trunk/Source/

[webkit-changes] [221704] trunk

2017-09-06 Thread commit-queue
Title: [221704] trunk








Revision 221704
Author commit-qu...@webkit.org
Date 2017-09-06 14:25:19 -0700 (Wed, 06 Sep 2017)


Log Message
Support caching of Response with a ReadableStream body
https://bugs.webkit.org/show_bug.cgi?id=176462

Patch by Youenn Fablet  on 2017-09-06
Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

* web-platform-tests/service-workers/cache-storage/worker/cache-put.https-expected.txt:

Source/WebCore:

Tests: http/wpt/cache-storage/cache-put-stream.https.any.html
   http/wpt/cache-storage/cache-put-stream.https.any.worker.html

Making FetchResponse use more of ReadableStream:
- Cloning of its body is done through ReadableStream.
- Computation of disturbed and locked is done through ReadableStream.
- Storing of the ReadableStream body given at constructor time is done in FetchBody for FetchResponse.
This allows making FetchResponse closer to FetchRequest.
This also allows to correctly compute disturbed and locked in clone cases.

Adding the ability to consume a Response ReadableStream body as a SharedBuffer.
Using that ability in DOMCache.

* Modules/cache/DOMCache.cpp:
(WebCore::DOMCache::putWithResponseData):
(WebCore::DOMCache::put):
* Modules/cache/DOMCache.h:
* Modules/fetch/FetchBody.h:
(WebCore::FetchBody::readableStream const):
* Modules/fetch/FetchBodyConsumer.cpp:
(WebCore::FetchBodyConsumer::extract):
* Modules/fetch/FetchBodyConsumer.h:
* Modules/fetch/FetchBodyOwner.cpp:
(WebCore::FetchBodyOwner::isDisturbed const):
(WebCore::FetchBodyOwner::isDisturbedOrLocked const):
* Modules/fetch/FetchBodyOwner.h:
(WebCore::FetchBodyOwner::hasReadableStreamBody const):
* Modules/fetch/FetchBodySource.cpp:
* Modules/fetch/FetchBodySource.h:
* Modules/fetch/FetchResponse.cpp:
(WebCore::FetchResponse::consumeBodyFromReadableStream):
(WebCore::FetchResponse::consumeBodyWhenLoaded):
(WebCore::FetchResponse::consumeBodyAsStream):
* Modules/fetch/FetchResponse.h:
* Modules/fetch/FetchResponse.idl:
* Modules/fetch/FetchResponse.js:
(initializeFetchResponse):
(clone):
* bindings/js/ReadableStream.cpp:
(WebCore::callFunction):
(WebCore::ReadableStream::pipeTo):
(WebCore::ReadableStream::tee):
(WebCore::checkReadableStream):
(WebCore::ReadableStream::isLocked const):
(WebCore::ReadableStream::isDisturbed const):
(WebCore::ReadableStream::isDisturbed):
* bindings/js/ReadableStream.h:
* bindings/js/ReadableStreamDefaultController.cpp:
* bindings/js/ReadableStreamDefaultController.h:
* bindings/js/WebCoreBuiltinNames.h:
* testing/Internals.cpp:
(WebCore::Internals::isReadableStreamDisturbed):

LayoutTests:

* TestExpectations: Removing flakiness expectation for cache-put tests.
* http/wpt/cache-storage/cache-put-stream.https.any-expected.txt: Added.
* http/wpt/cache-storage/cache-put-stream.https.any.html: Added.
* http/wpt/cache-storage/cache-put-stream.https.any.js: Added.
(cache_test.):
(cache_test):
(string_appeared_here.cache_test.return.reader.read.then.):
(string_appeared_here.cache_test):
* http/wpt/cache-storage/cache-put-stream.https.any.worker-expected.txt: Added.
* http/wpt/cache-storage/cache-put-stream.https.any.worker.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/TestExpectations
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/service-workers/cache-storage/worker/cache-put.https-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/cache/DOMCache.cpp
trunk/Source/WebCore/Modules/cache/DOMCache.h
trunk/Source/WebCore/Modules/fetch/FetchBody.h
trunk/Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp
trunk/Source/WebCore/Modules/fetch/FetchBodyConsumer.h
trunk/Source/WebCore/Modules/fetch/FetchBodyOwner.cpp
trunk/Source/WebCore/Modules/fetch/FetchBodyOwner.h
trunk/Source/WebCore/Modules/fetch/FetchBodySource.cpp
trunk/Source/WebCore/Modules/fetch/FetchBodySource.h
trunk/Source/WebCore/Modules/fetch/FetchResponse.cpp
trunk/Source/WebCore/Modules/fetch/FetchResponse.h
trunk/Source/WebCore/Modules/fetch/FetchResponse.idl
trunk/Source/WebCore/Modules/fetch/FetchResponse.js
trunk/Source/WebCore/bindings/js/ReadableStream.cpp
trunk/Source/WebCore/bindings/js/ReadableStream.h
trunk/Source/WebCore/bindings/js/ReadableStreamDefaultController.cpp
trunk/Source/WebCore/bindings/js/ReadableStreamDefaultController.h
trunk/Source/WebCore/bindings/js/WebCoreBuiltinNames.h
trunk/Source/WebCore/testing/Internals.cpp


Added Paths

trunk/LayoutTests/http/wpt/cache-storage/cache-put-stream.https.any-expected.txt
trunk/LayoutTests/http/wpt/cache-storage/cache-put-stream.https.any.html
trunk/LayoutTests/http/wpt/cache-storage/cache-put-stream.https.any.js
trunk/LayoutTests/http/wpt/cache-storage/cache-put-stream.https.any.worker-expected.txt
trunk/LayoutTests/http/wpt/cache-storage/cache-put-stream.https.any.worker.html




Diff

Modified: trunk/LayoutTests/ChangeLog (221703 => 221704)

--- trunk/LayoutTests/ChangeLog	2017-09-06 21:04:25 UTC (rev 221703)
+++ trunk/LayoutTests/ChangeLog	2017-09-06

[webkit-changes] [221703] trunk/Source/JavaScriptCore

2017-09-06 Thread sbarati
Title: [221703] trunk/Source/_javascript_Core








Revision 221703
Author sbar...@apple.com
Date 2017-09-06 14:04:25 -0700 (Wed, 06 Sep 2017)


Log Message
Air should have a Vector of prologue generators instead of a HashMap representing an optional prologue generator
https://bugs.webkit.org/show_bug.cgi?id=176346

Reviewed by Mark Lam.

* b3/B3Procedure.cpp:
(JSC::B3::Procedure::Procedure):
(JSC::B3::Procedure::setNumEntrypoints):
* b3/B3Procedure.h:
(JSC::B3::Procedure::setNumEntrypoints): Deleted.
* b3/air/AirCode.cpp:
(JSC::B3::Air::defaultPrologueGenerator):
(JSC::B3::Air::Code::Code):
(JSC::B3::Air::Code::setNumEntrypoints):
* b3/air/AirCode.h:
(JSC::B3::Air::Code::setPrologueForEntrypoint):
(JSC::B3::Air::Code::prologueGeneratorForEntrypoint):
(JSC::B3::Air::Code::setEntrypoints):
(JSC::B3::Air::Code::setEntrypointLabels):
* b3/air/AirGenerate.cpp:
(JSC::B3::Air::generate):
* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::lower):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/b3/B3Procedure.cpp
trunk/Source/_javascript_Core/b3/B3Procedure.h
trunk/Source/_javascript_Core/b3/air/AirCode.cpp
trunk/Source/_javascript_Core/b3/air/AirCode.h
trunk/Source/_javascript_Core/b3/air/AirGenerate.cpp
trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (221702 => 221703)

--- trunk/Source/_javascript_Core/ChangeLog	2017-09-06 20:54:36 UTC (rev 221702)
+++ trunk/Source/_javascript_Core/ChangeLog	2017-09-06 21:04:25 UTC (rev 221703)
@@ -1,5 +1,31 @@
 2017-09-06  Saam Barati  
 
+Air should have a Vector of prologue generators instead of a HashMap representing an optional prologue generator
+https://bugs.webkit.org/show_bug.cgi?id=176346
+
+Reviewed by Mark Lam.
+
+* b3/B3Procedure.cpp:
+(JSC::B3::Procedure::Procedure):
+(JSC::B3::Procedure::setNumEntrypoints):
+* b3/B3Procedure.h:
+(JSC::B3::Procedure::setNumEntrypoints): Deleted.
+* b3/air/AirCode.cpp:
+(JSC::B3::Air::defaultPrologueGenerator):
+(JSC::B3::Air::Code::Code):
+(JSC::B3::Air::Code::setNumEntrypoints):
+* b3/air/AirCode.h:
+(JSC::B3::Air::Code::setPrologueForEntrypoint):
+(JSC::B3::Air::Code::prologueGeneratorForEntrypoint):
+(JSC::B3::Air::Code::setEntrypoints):
+(JSC::B3::Air::Code::setEntrypointLabels):
+* b3/air/AirGenerate.cpp:
+(JSC::B3::Air::generate):
+* ftl/FTLLowerDFGToB3.cpp:
+(JSC::FTL::DFG::LowerDFGToB3::lower):
+
+2017-09-06  Saam Barati  
+
 ASSERTION FAILED: op() == CheckStructure in Source/_javascript_Core/dfg/DFGNode.h(443)
 https://bugs.webkit.org/show_bug.cgi?id=176470
 


Modified: trunk/Source/_javascript_Core/b3/B3Procedure.cpp (221702 => 221703)

--- trunk/Source/_javascript_Core/b3/B3Procedure.cpp	2017-09-06 20:54:36 UTC (rev 221702)
+++ trunk/Source/_javascript_Core/b3/B3Procedure.cpp	2017-09-06 21:04:25 UTC (rev 221703)
@@ -52,6 +52,7 @@
 , m_byproducts(std::make_unique())
 , m_code(new Air::Code(*this))
 {
+m_code->setNumEntrypoints(m_numEntrypoints);
 }
 
 Procedure::~Procedure()
@@ -420,6 +421,12 @@
 return code().mutableFPRs();
 }
 
+void Procedure::setNumEntrypoints(unsigned numEntrypoints)
+{
+m_numEntrypoints = numEntrypoints;
+m_code->setNumEntrypoints(numEntrypoints);
+}
+
 } } // namespace JSC::B3
 
 #endif // ENABLE(B3_JIT)


Modified: trunk/Source/_javascript_Core/b3/B3Procedure.h (221702 => 221703)

--- trunk/Source/_javascript_Core/b3/B3Procedure.h	2017-09-06 20:54:36 UTC (rev 221702)
+++ trunk/Source/_javascript_Core/b3/B3Procedure.h	2017-09-06 21:04:25 UTC (rev 221703)
@@ -186,8 +186,8 @@
 bool isFastConstant(const ValueKey&);
 
 unsigned numEntrypoints() const { return m_numEntrypoints; }
-void setNumEntrypoints(unsigned numEntrypoints) { m_numEntrypoints = numEntrypoints; }
-
+JS_EXPORT_PRIVATE void setNumEntrypoints(unsigned);
+
 // Only call this after code generation is complete. Note that the label for the 0th entrypoint
 // should point to exactly where the code generation cursor was before you started generating
 // code.


Modified: trunk/Source/_javascript_Core/b3/air/AirCode.cpp (221702 => 221703)

--- trunk/Source/_javascript_Core/b3/air/AirCode.cpp	2017-09-06 20:54:36 UTC (rev 221702)
+++ trunk/Source/_javascript_Core/b3/air/AirCode.cpp	2017-09-06 21:04:25 UTC (rev 221703)
@@ -30,6 +30,7 @@
 
 #include "AirCCallSpecial.h"
 #include "AirCFG.h"
+#include "AllowMacroScratchRegisterUsageIf.h"
 #include "B3BasicBlockUtils.h"
 #include "B3Procedure.h"
 #include "B3StackSlot.h"
@@ -37,10 +38,22 @@
 
 namespace JSC { namespace B3 { namespace Air {
 
+static void defaultPrologueGenerator(CCallHelpers& jit, Code& code)
+{
+jit.emitFunctionPrologue();
+if (code.frameSize()) {
+AllowMacroScratchRegisterUsageIf allowScratch(jit, isARM64());
+   

[webkit-changes] [221702] trunk

2017-09-06 Thread achristensen
Title: [221702] trunk








Revision 221702
Author achristen...@apple.com
Date 2017-09-06 13:54:36 -0700 (Wed, 06 Sep 2017)


Log Message
Unreviewed, rolling out r221694.

broke build

Reverted changeset:

"Add WKUIDelegatePrivate equivalent of WKPageUIClient's
pinnedStateDidChange"
https://bugs.webkit.org/show_bug.cgi?id=176474
http://trac.webkit.org/changeset/221694

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h
trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h
trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm
trunk/Source/WebKit/UIProcess/PageClient.h
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit/UIProcess/mac/PageClientImplMac.h
trunk/Source/WebKit/UIProcess/mac/PageClientImplMac.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (221701 => 221702)

--- trunk/Source/WebKit/ChangeLog	2017-09-06 20:51:02 UTC (rev 221701)
+++ trunk/Source/WebKit/ChangeLog	2017-09-06 20:54:36 UTC (rev 221702)
@@ -1,3 +1,16 @@
+2017-09-06  Alex Christensen  
+
+Unreviewed, rolling out r221694.
+
+broke build
+
+Reverted changeset:
+
+"Add WKUIDelegatePrivate equivalent of WKPageUIClient's
+pinnedStateDidChange"
+https://bugs.webkit.org/show_bug.cgi?id=176474
+http://trac.webkit.org/changeset/221694
+
 2017-09-06  Ryan Haddad  
 
 Unreviewed, rolling out r221461.


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm (221701 => 221702)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm	2017-09-06 20:51:02 UTC (rev 221701)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm	2017-09-06 20:54:36 UTC (rev 221702)
@@ -5281,21 +5281,6 @@
 return _impl->pageExtendedBackgroundColor();
 }
 
-- (_WKRectEdge)_pinnedState
-{
-return _impl->pinnedState();
-}
-
-- (_WKRectEdge)_rubberBandingEnabled
-{
-return _impl->rubberBandingEnabled();
-}
-
-- (void)_setRubberBandingEnabled:(_WKRectEdge)state
-{
-_impl->setRubberBandingEnabled(state);
-}
-
 - (id)_immediateActionAnimationControllerForHitTestResult:(_WKHitTestResult *)hitTestResult withType:(_WKImmediateActionType)type userData:(id)userData
 {
 return nil;


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h (221701 => 221702)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h	2017-09-06 20:51:02 UTC (rev 221701)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h	2017-09-06 20:54:36 UTC (rev 221702)
@@ -80,15 +80,6 @@
 _WKImmediateActionTelLink
 } WK_API_AVAILABLE(macosx(10.12));
 
-typedef NS_OPTIONS(NSInteger, _WKRectEdge) {
-_WKRectEdgeNone = 0,
-_WKRectEdgeLeft = 1 << CGRectMinXEdge,
-_WKRectEdgeTop = 1 << CGRectMinYEdge,
-_WKRectEdgeRight = 1 << CGRectMaxXEdge,
-_WKRectEdgeBottom = 1 << CGRectMaxYEdge,
-_WKRectEdgeAll = _WKRectEdgeLeft | _WKRectEdgeTop | _WKRectEdgeRight | _WKRectEdgeBottom,
-} WK_API_AVAILABLE(macosx(WK_MAC_TBA));
-
 #endif
 
 @class WKBrowsingContextHandle;
@@ -247,10 +238,6 @@
 - (void)_accessibilityDidGetSpeakSelectionContent:(NSString *)content WK_API_AVAILABLE(ios(WK_IOS_TBA));
 
 #else
-
-@property (nonatomic, readonly) _WKRectEdge _pinnedState;
-@property (nonatomic, setter=_setRubberBandingEnabled:) _WKRectEdge _rubberBandingEnabled;
-
 @property (readonly) NSColor *_pageExtendedBackgroundColor;
 @property (nonatomic, setter=_setDrawsBackground:) BOOL _drawsBackground;
 @property (nonatomic, setter=_setTopContentInset:) CGFloat _topContentInset;


Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h (221701 => 221702)

--- trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h	2017-09-06 20:51:02 UTC (rev 221701)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h	2017-09-06 20:54:36 UTC (rev 221702)
@@ -23,7 +23,8 @@
  * THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#pragma once
+#ifndef WebViewImpl_h
+#define WebViewImpl_h
 
 #if PLATFORM(MAC)
 
@@ -41,8 +42,6 @@
 #include 
 #include 
 
-using _WKRectEdge = NSInteger;
-
 OBJC_CLASS NSAccessibilityRemoteUIElement;
 OBJC_CLASS NSImmediateActionGestureRecognizer;
 OBJC_CLASS NSTextInputContext;
@@ -237,10 +236,6 @@
 void setUnderlayColor(NSColor *);
 NSColor *underlayColor() const;
 NSColor *pageExtendedBackgroundColor() const;
-
-_WKRectEdge pinnedState();
-_WKRectEdge rubberBandingEnabled();
-void setRubberBandingEnabled(_WKRectEdge);
 
 void setOverlayScrollbarStyle(std::optional scrollbarStyle);
 std::optional overlayScrollbarStyle() const;
@@ -737,3 +732,5 @@
 } // namespace WebKit
 
 #endif // PLATFORM(MAC)
+
+#endif // WebViewImpl_h


Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm (221701 => 221702)

--- trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm	2017-09-06 20:51:02 UTC (rev 221701)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm	2017-09-06 20:54:36 

[webkit-changes] [221701] trunk/Source/JavaScriptCore

2017-09-06 Thread sbarati
Title: [221701] trunk/Source/_javascript_Core








Revision 221701
Author sbar...@apple.com
Date 2017-09-06 13:51:02 -0700 (Wed, 06 Sep 2017)


Log Message
ASSERTION FAILED: op() == CheckStructure in Source/_javascript_Core/dfg/DFGNode.h(443)
https://bugs.webkit.org/show_bug.cgi?id=176470

Reviewed by Mark Lam.

Update Node::convertToCheckStructureImmediate's assertion to allow
the node to either be a CheckStructure or CheckStructureOrEmpty.

* dfg/DFGNode.h:
(JSC::DFG::Node::convertToCheckStructureImmediate):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/dfg/DFGNode.h




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (221700 => 221701)

--- trunk/Source/_javascript_Core/ChangeLog	2017-09-06 20:48:01 UTC (rev 221700)
+++ trunk/Source/_javascript_Core/ChangeLog	2017-09-06 20:51:02 UTC (rev 221701)
@@ -1,3 +1,16 @@
+2017-09-06  Saam Barati  
+
+ASSERTION FAILED: op() == CheckStructure in Source/_javascript_Core/dfg/DFGNode.h(443)
+https://bugs.webkit.org/show_bug.cgi?id=176470
+
+Reviewed by Mark Lam.
+
+Update Node::convertToCheckStructureImmediate's assertion to allow
+the node to either be a CheckStructure or CheckStructureOrEmpty.
+
+* dfg/DFGNode.h:
+(JSC::DFG::Node::convertToCheckStructureImmediate):
+
 2017-09-05  Saam Barati  
 
 isNotCellSpeculation is wrong with respect to SpecEmpty


Modified: trunk/Source/_javascript_Core/dfg/DFGNode.h (221700 => 221701)

--- trunk/Source/_javascript_Core/dfg/DFGNode.h	2017-09-06 20:48:01 UTC (rev 221700)
+++ trunk/Source/_javascript_Core/dfg/DFGNode.h	2017-09-06 20:51:02 UTC (rev 221701)
@@ -440,7 +440,7 @@
 
 void convertToCheckStructureImmediate(Node* structure)
 {
-ASSERT(op() == CheckStructure);
+ASSERT(op() == CheckStructure || op() == CheckStructureOrEmpty);
 m_op = CheckStructureImmediate;
 children.setChild1(Edge(structure, CellUse));
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221700] trunk/Tools

2017-09-06 Thread pvollan
Title: [221700] trunk/Tools








Revision 221700
Author pvol...@apple.com
Date 2017-09-06 13:48:01 -0700 (Wed, 06 Sep 2017)


Log Message
[Win] test-webkitpy test timeout_context_unittest is failing.
https://bugs.webkit.org/show_bug.cgi?id=176471

Reviewed by Brent Fulgham.

This assert failure is possibly caused by different time resolution on
various platforms.

* Scripts/webkitpy/common/timeout_context_unittest.py:
(TimeoutContextTests.test_timeout_data):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/common/timeout_context_unittest.py




Diff

Modified: trunk/Tools/ChangeLog (221699 => 221700)

--- trunk/Tools/ChangeLog	2017-09-06 20:40:01 UTC (rev 221699)
+++ trunk/Tools/ChangeLog	2017-09-06 20:48:01 UTC (rev 221700)
@@ -1,3 +1,16 @@
+2017-09-06  Per Arne Vollan  
+
+[Win] test-webkitpy test timeout_context_unittest is failing.
+https://bugs.webkit.org/show_bug.cgi?id=176471
+
+Reviewed by Brent Fulgham.
+
+This assert failure is possibly caused by different time resolution on
+various platforms.
+ 
+* Scripts/webkitpy/common/timeout_context_unittest.py:
+(TimeoutContextTests.test_timeout_data):
+
 2017-09-06  Aakash Jain  
 
 status-bubbles turn orange after checking relevance of patch


Modified: trunk/Tools/Scripts/webkitpy/common/timeout_context_unittest.py (221699 => 221700)

--- trunk/Tools/Scripts/webkitpy/common/timeout_context_unittest.py	2017-09-06 20:40:01 UTC (rev 221699)
+++ trunk/Tools/Scripts/webkitpy/common/timeout_context_unittest.py	2017-09-06 20:48:01 UTC (rev 221700)
@@ -44,7 +44,7 @@
 with tmp:
 self.assertNotEqual(None, tmp.data)
 self.assertEqual(threading.current_thread().ident, tmp.data.thread_id)
-self.assertGreater(time.time() + 1, tmp.data.alarm_time)
+self.assertTrue(time.time() + 1 >= tmp.data.alarm_time)
 self.assertEqual(None, tmp.data)
 
 def test_nested_inner_precedence(self):






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221699] trunk

2017-09-06 Thread ryanhaddad
Title: [221699] trunk








Revision 221699
Author ryanhad...@apple.com
Date 2017-09-06 13:40:01 -0700 (Wed, 06 Sep 2017)


Log Message
Unreviewed, rolling out r221461.

The LayoutTest added with this change crashes under
GuardMalloc.

Reverted changeset:

"Add (entirely incorrect) fetching of ServiceWorker scripts."
https://bugs.webkit.org/show_bug.cgi?id=176179
http://trac.webkit.org/changeset/221461

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/http/tests/workers/service/basic-register-expected.txt
trunk/LayoutTests/http/tests/workers/service/resources/basic-register.js
trunk/LayoutTests/http/tests/workers/service/resources/registration-task-queue-scheduling-1.js
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/workers/service/ServiceWorkerContainer.cpp
trunk/Source/WebCore/workers/service/ServiceWorkerContainer.h
trunk/Source/WebCore/workers/service/ServiceWorkerJob.cpp
trunk/Source/WebCore/workers/service/ServiceWorkerJob.h
trunk/Source/WebCore/workers/service/ServiceWorkerJobClient.h
trunk/Source/WebCore/workers/service/server/SWClientConnection.cpp
trunk/Source/WebCore/workers/service/server/SWClientConnection.h
trunk/Source/WebCore/workers/service/server/SWServer.cpp
trunk/Source/WebCore/workers/service/server/SWServer.h
trunk/Source/WebCore/workers/service/server/SWServerRegistration.cpp
trunk/Source/WebCore/workers/service/server/SWServerRegistration.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/StorageProcess/ServiceWorker/WebSWServerConnection.cpp
trunk/Source/WebKit/StorageProcess/ServiceWorker/WebSWServerConnection.h
trunk/Source/WebKit/StorageProcess/ServiceWorker/WebSWServerConnection.messages.in
trunk/Source/WebKit/WebProcess/Storage/WebSWClientConnection.cpp
trunk/Source/WebKit/WebProcess/Storage/WebSWClientConnection.h
trunk/Source/WebKit/WebProcess/Storage/WebSWClientConnection.messages.in


Removed Paths

trunk/Source/WebCore/workers/service/ServiceWorkerFetchResult.h




Diff

Modified: trunk/LayoutTests/ChangeLog (221698 => 221699)

--- trunk/LayoutTests/ChangeLog	2017-09-06 20:26:43 UTC (rev 221698)
+++ trunk/LayoutTests/ChangeLog	2017-09-06 20:40:01 UTC (rev 221699)
@@ -1,3 +1,16 @@
+2017-09-06  Ryan Haddad  
+
+Unreviewed, rolling out r221461.
+
+The LayoutTest added with this change crashes under
+GuardMalloc.
+
+Reverted changeset:
+
+"Add (entirely incorrect) fetching of ServiceWorker scripts."
+https://bugs.webkit.org/show_bug.cgi?id=176179
+http://trac.webkit.org/changeset/221461
+
 2017-09-06  Devin Rousso  
 
 Web Inspector: Support overloaded CanvasRenderingContext2D actions with identical parameter counts


Modified: trunk/LayoutTests/http/tests/workers/service/basic-register-expected.txt (221698 => 221699)

--- trunk/LayoutTests/http/tests/workers/service/basic-register-expected.txt	2017-09-06 20:26:43 UTC (rev 221698)
+++ trunk/LayoutTests/http/tests/workers/service/basic-register-expected.txt	2017-09-06 20:40:01 UTC (rev 221699)
@@ -1,3 +1,2 @@
-CONSOLE MESSAGE: line 10: Registration failed with error: UnknownError: Script URL http://127.0.0.1:8000/workers/service/resources/empty-worker.js fetched with 41 bytes, but we're not using the result yet
-CONSOLE MESSAGE: line 21: Registration failed with error: UnknownError: Script URL http://127.0.0.1:8000/workers/service/resources/empty-worker-doesnt-exist.js fetch resulted in error: ServiceWorker script network fetch failed with HTTP status code 404
+CONSOLE MESSAGE: line 11: Registration failed with error: UnknownError: serviceWorker job scheduling is not yet implemented
 


Modified: trunk/LayoutTests/http/tests/workers/service/resources/basic-register.js (221698 => 221699)

--- trunk/LayoutTests/http/tests/workers/service/resources/basic-register.js	2017-09-06 20:26:43 UTC (rev 221698)
+++ trunk/LayoutTests/http/tests/workers/service/resources/basic-register.js	2017-09-06 20:40:01 UTC (rev 221699)
@@ -6,16 +6,6 @@
 navigator.serviceWorker.register("resources/empty-worker.js", { })
 .then(function(r) {
 	console.log("Registered!");
-}, function(e) {
-	console.log("Registration failed with error: " + e);
-})
-.catch(function(e) {
-	console.log("Exception registering: " + e);
-});
-
-navigator.serviceWorker.register("resources/empty-worker-doesnt-exist.js", { })
-.then(function(r) {
-	console.log("Registered!");
 	done();
 }, function(e) {
 	console.log("Registration failed with error: " + e);


Modified: trunk/LayoutTests/http/tests/workers/service/resources/registration-task-queue-scheduling-1.js (221698 => 221699)

--- trunk/LayoutTests/http/tests/workers/service/resources/registration-task-queue-scheduling-1.js	2017-09-06 20:26:43 UTC (rev 221698)
+++ trunk/LayoutTests/http/tests/workers/service/resources/registration-task-queue-scheduling-1.js	2017-09-06 20:40:01 UTC (rev 221699)
@@ -48,8 +48,8 @@
 		console.log("Original window resolved successfully (unexpected)")
 		done(

[webkit-changes] [221698] trunk/Source/WebKit

2017-09-06 Thread achristensen
Title: [221698] trunk/Source/WebKit








Revision 221698
Author achristen...@apple.com
Date 2017-09-06 13:26:43 -0700 (Wed, 06 Sep 2017)


Log Message
Add modern decoders for POD types
https://bugs.webkit.org/show_bug.cgi?id=176456

Reviewed by Geoffrey Garen.

* Platform/IPC/Decoder.cpp:
(IPC::Decoder::getOptional):
(IPC::Decoder::operator>>):
* Platform/IPC/Decoder.h:
* Shared/NavigationActionData.cpp:
(WebKit::NavigationActionData::decode):
* Shared/NavigationActionData.h:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Platform/IPC/Decoder.cpp
trunk/Source/WebKit/Platform/IPC/Decoder.h
trunk/Source/WebKit/Shared/NavigationActionData.cpp
trunk/Source/WebKit/Shared/NavigationActionData.h




Diff

Modified: trunk/Source/WebKit/ChangeLog (221697 => 221698)

--- trunk/Source/WebKit/ChangeLog	2017-09-06 20:24:56 UTC (rev 221697)
+++ trunk/Source/WebKit/ChangeLog	2017-09-06 20:26:43 UTC (rev 221698)
@@ -1,5 +1,20 @@
 2017-09-06  Alex Christensen  
 
+Add modern decoders for POD types
+https://bugs.webkit.org/show_bug.cgi?id=176456
+
+Reviewed by Geoffrey Garen.
+
+* Platform/IPC/Decoder.cpp:
+(IPC::Decoder::getOptional):
+(IPC::Decoder::operator>>):
+* Platform/IPC/Decoder.h:
+* Shared/NavigationActionData.cpp:
+(WebKit::NavigationActionData::decode):
+* Shared/NavigationActionData.h:
+
+2017-09-06  Alex Christensen  
+
 Add WKUIDelegatePrivate equivalent of WKPageUIClient's pinnedStateDidChange
 https://bugs.webkit.org/show_bug.cgi?id=176474
 


Modified: trunk/Source/WebKit/Platform/IPC/Decoder.cpp (221697 => 221698)

--- trunk/Source/WebKit/Platform/IPC/Decoder.cpp	2017-09-06 20:24:56 UTC (rev 221697)
+++ trunk/Source/WebKit/Platform/IPC/Decoder.cpp	2017-09-06 20:26:43 UTC (rev 221698)
@@ -188,6 +188,63 @@
 bufferPosition += sizeof(Type);
 }
 
+template
+Decoder& Decoder::getOptional(std::optional& optional)
+{
+Type result;
+if (!alignBufferPosition(sizeof(result), sizeof(result)))
+return *this;
+
+decodeValueFromBuffer(result, m_bufferPos);
+optional = result;
+return *this;
+}
+
+Decoder& Decoder::operator>>(std::optional& optional)
+{
+return getOptional(optional);
+}
+
+Decoder& Decoder::operator>>(std::optional& optional)
+{
+return getOptional(optional);
+}
+
+Decoder& Decoder::operator>>(std::optional& optional)
+{
+return getOptional(optional);
+}
+
+Decoder& Decoder::operator>>(std::optional& optional)
+{
+return getOptional(optional);
+}
+
+Decoder& Decoder::operator>>(std::optional& optional)
+{
+return getOptional(optional);
+}
+
+Decoder& Decoder::operator>>(std::optional& optional)
+{
+return getOptional(optional);
+}
+
+Decoder& Decoder::operator>>(std::optional& optional)
+{
+return getOptional(optional);
+}
+
+Decoder& Decoder::operator>>(std::optional& optional)
+{
+return getOptional(optional);
+}
+
+Decoder& Decoder::operator>>(std::optional& optional)
+{
+return getOptional(optional);
+}
+
 bool Decoder::decode(bool& result)
 {
 if (!alignBufferPosition(sizeof(result), sizeof(result)))


Modified: trunk/Source/WebKit/Platform/IPC/Decoder.h (221697 => 221698)

--- trunk/Source/WebKit/Platform/IPC/Decoder.h	2017-09-06 20:24:56 UTC (rev 221697)
+++ trunk/Source/WebKit/Platform/IPC/Decoder.h	2017-09-06 20:26:43 UTC (rev 221698)
@@ -78,14 +78,23 @@
 bool decodeVariableLengthByteArray(DataReference&);
 
 bool decode(bool&);
+Decoder& operator>>(std::optional&);
 bool decode(uint8_t&);
+Decoder& operator>>(std::optional&);
 bool decode(uint16_t&);
+Decoder& operator>>(std::optional&);
 bool decode(uint32_t&);
+Decoder& operator>>(std::optional&);
 bool decode(uint64_t&);
+Decoder& operator>>(std::optional&);
 bool decode(int32_t&);
+Decoder& operator>>(std::optional&);
 bool decode(int64_t&);
+Decoder& operator>>(std::optional&);
 bool decode(float&);
+Decoder& operator>>(std::optional&);
 bool decode(double&);
+Decoder& operator>>(std::optional&);
 
 template
 auto decode(E& e) -> std::enable_if_t::value, bool>
@@ -143,6 +152,7 @@
 private:
 bool alignBufferPosition(unsigned alignment, size_t);
 bool bufferIsLargeEnoughToContain(unsigned alignment, size_t) const;
+template Decoder& getOptional(std::optional&);
 
 const uint8_t* m_buffer;
 const uint8_t* m_bufferPos;


Modified: trunk/Source/WebKit/Shared/NavigationActionData.cpp (221697 => 221698)

--- trunk/Source/WebKit/Shared/NavigationActionData.cpp	2017-09-06 20:24:56 UTC (rev 221697)
+++ trunk/Source/WebKit/Shared/NavigationActionData.cpp	2017-09-06 20:26:43 UTC (rev 221698)
@@ -49,30 +49,53 @@
 encoder << isRedirect;
 }
 
-bool NavigationActionData::decode(IPC::Decoder& decoder, NavigationActionData& result)
+std::optional NavigationActionData::decode(IPC::Decoder& decoder)
 {
-if (!decoder.decodeEnum(result.navigationType)

[webkit-changes] [221697] branches/safari-604-branch/Source

2017-09-06 Thread matthew_hanson
Title: [221697] branches/safari-604-branch/Source








Revision 221697
Author matthew_han...@apple.com
Date 2017-09-06 13:24:56 -0700 (Wed, 06 Sep 2017)


Log Message
Versioning.

Modified Paths

branches/safari-604-branch/Source/_javascript_Core/Configurations/Version.xcconfig
branches/safari-604-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
branches/safari-604-branch/Source/WebCore/Configurations/Version.xcconfig
branches/safari-604-branch/Source/WebCore/PAL/Configurations/Version.xcconfig
branches/safari-604-branch/Source/WebInspectorUI/Configurations/Version.xcconfig
branches/safari-604-branch/Source/WebKit/Configurations/Version.xcconfig
branches/safari-604-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig




Diff

Modified: branches/safari-604-branch/Source/_javascript_Core/Configurations/Version.xcconfig (221696 => 221697)

--- branches/safari-604-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2017-09-06 20:21:47 UTC (rev 221696)
+++ branches/safari-604-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2017-09-06 20:24:56 UTC (rev 221697)
@@ -23,7 +23,7 @@
 
 MAJOR_VERSION = 604;
 MINOR_VERSION = 2;
-TINY_VERSION = 8;
+TINY_VERSION = 9;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);


Modified: branches/safari-604-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (221696 => 221697)

--- branches/safari-604-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2017-09-06 20:21:47 UTC (rev 221696)
+++ branches/safari-604-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2017-09-06 20:24:56 UTC (rev 221697)
@@ -23,7 +23,7 @@
 
 MAJOR_VERSION = 604;
 MINOR_VERSION = 2;
-TINY_VERSION = 8;
+TINY_VERSION = 9;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);


Modified: branches/safari-604-branch/Source/WebCore/Configurations/Version.xcconfig (221696 => 221697)

--- branches/safari-604-branch/Source/WebCore/Configurations/Version.xcconfig	2017-09-06 20:21:47 UTC (rev 221696)
+++ branches/safari-604-branch/Source/WebCore/Configurations/Version.xcconfig	2017-09-06 20:24:56 UTC (rev 221697)
@@ -23,7 +23,7 @@
 
 MAJOR_VERSION = 604;
 MINOR_VERSION = 2;
-TINY_VERSION = 8;
+TINY_VERSION = 9;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);


Modified: branches/safari-604-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (221696 => 221697)

--- branches/safari-604-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2017-09-06 20:21:47 UTC (rev 221696)
+++ branches/safari-604-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2017-09-06 20:24:56 UTC (rev 221697)
@@ -23,7 +23,7 @@
 
 MAJOR_VERSION = 604;
 MINOR_VERSION = 2;
-TINY_VERSION = 8;
+TINY_VERSION = 9;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);


Modified: branches/safari-604-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (221696 => 221697)

--- branches/safari-604-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-09-06 20:21:47 UTC (rev 221696)
+++ branches/safari-604-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-09-06 20:24:56 UTC (rev 221697)
@@ -1,6 +1,6 @@
 MAJOR_VERSION = 604;
 MINOR_VERSION = 2;
-TINY_VERSION = 8;
+TINY_VERSION = 9;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);


Modified: branches/safari-604-branch/Source/WebKit/Configurations/Version.xcconfig (221696 => 221697)

--- branches/safari-604-branch/Source/WebKit/Configurations/Version.xcconfig	2017-09-06 20:21:47 UTC (rev 221696)
+++ branches/safari-604-branch/Source/WebKit/Configurations/Version.xcconfig	2017-09-06 20:24:56 UTC (rev 221697)
@@ -23,7 +23,7 @@
 
 MAJOR_VERSION = 604;
 MINOR_VERSION = 2;
-TINY_VERSION = 8;
+TINY_VERSION = 9;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);


Modified: branches/safari-604-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig (221696 => 221697)

--- branches/safari-604-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig	2017-09-06 20:21:47 UTC (rev 221696)
+++ branches/safari-604-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig	2017-09-06 20:24:56 UTC (rev 221697)
@@ -23,7 +23,7 @@
 
 MAJOR_VERSION = 604;
 MINOR_VERSION = 2;
-TINY_VERSION = 8;
+TINY_VERSION = 9;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221696] trunk/Tools

2017-09-06 Thread aakash_jain
Title: [221696] trunk/Tools








Revision 221696
Author aakash_j...@apple.com
Date 2017-09-06 13:21:47 -0700 (Wed, 06 Sep 2017)


Log Message
status-bubbles turn orange after checking relevance of patch
https://bugs.webkit.org/show_bug.cgi?id=176457

Reviewed by Alexey Proskuryakov.

* QueueStatusServer/handlers/statusbubble.py: Added "Checked relevance of patch" as a progress_statuses.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/QueueStatusServer/handlers/statusbubble.py




Diff

Modified: trunk/Tools/ChangeLog (221695 => 221696)

--- trunk/Tools/ChangeLog	2017-09-06 20:16:31 UTC (rev 221695)
+++ trunk/Tools/ChangeLog	2017-09-06 20:21:47 UTC (rev 221696)
@@ -1,3 +1,12 @@
+2017-09-06  Aakash Jain  
+
+status-bubbles turn orange after checking relevance of patch
+https://bugs.webkit.org/show_bug.cgi?id=176457
+
+Reviewed by Alexey Proskuryakov.
+
+* QueueStatusServer/handlers/statusbubble.py: Added "Checked relevance of patch" as a progress_statuses.
+
 2017-09-06  Alex Christensen  
 
 Add WKUIDelegatePrivate equivalent of WKPageUIClient's pinnedStateDidChange


Modified: trunk/Tools/QueueStatusServer/handlers/statusbubble.py (221695 => 221696)

--- trunk/Tools/QueueStatusServer/handlers/statusbubble.py	2017-09-06 20:16:31 UTC (rev 221695)
+++ trunk/Tools/QueueStatusServer/handlers/statusbubble.py	2017-09-06 20:21:47 UTC (rev 221696)
@@ -44,6 +44,7 @@
 "Started processing patch",
 "Cleaned working directory",
 "Updated working directory",
+"Checked relevance of patch",
 "Applied patch",
 "Built patch",
 "Watchlist applied",






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221694] trunk

2017-09-06 Thread achristensen
Title: [221694] trunk








Revision 221694
Author achristen...@apple.com
Date 2017-09-06 13:15:47 -0700 (Wed, 06 Sep 2017)


Log Message
Add WKUIDelegatePrivate equivalent of WKPageUIClient's pinnedStateDidChange
https://bugs.webkit.org/show_bug.cgi?id=176474


Reviewed by Tim Horton.

Source/WebKit:

Rather than telling the UIClient that the pinned state changed and having the application check 4 bools
like we do with WKPage, I made a KVO property on the WKWebView.  I introduce _WKRectEdge for this purpose,
which is like UIRectEdge but unfortunately NSRectEdge and CGRectEdge cannot be used as NS_OPTIONS/flags.
This same structure is used for rubber band state.

Covered by a new API test.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _pinnedState]):
(-[WKWebView _rubberBandState]):
(-[WKWebView _setRubberBandState:]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:
* UIProcess/Cocoa/WebViewImpl.h:
* UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::pinnedState):
(WebKit::WebViewImpl::rubberBandState):
(WebKit::WebViewImpl::setRubberBandState):
* UIProcess/PageClient.h:
(WebKit::PageClient::pinnedStateWillChange):
(WebKit::PageClient::pinnedStateDidChange):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didChangeScrollOffsetPinningForMainFrame):
* UIProcess/mac/PageClientImplMac.h:
* UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::pinnedStateWillChange):
(WebKit::PageClientImpl::pinnedStateDidChange):

Tools:

* TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
(-[PinnedStateObserver observeValueForKeyPath:ofObject:change:context:]):
(TEST):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h
trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h
trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm
trunk/Source/WebKit/UIProcess/PageClient.h
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit/UIProcess/mac/PageClientImplMac.h
trunk/Source/WebKit/UIProcess/mac/PageClientImplMac.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (221693 => 221694)

--- trunk/Source/WebKit/ChangeLog	2017-09-06 20:09:28 UTC (rev 221693)
+++ trunk/Source/WebKit/ChangeLog	2017-09-06 20:15:47 UTC (rev 221694)
@@ -1,3 +1,38 @@
+2017-09-06  Alex Christensen  
+
+Add WKUIDelegatePrivate equivalent of WKPageUIClient's pinnedStateDidChange
+https://bugs.webkit.org/show_bug.cgi?id=176474
+
+
+Reviewed by Tim Horton.
+
+Rather than telling the UIClient that the pinned state changed and having the application check 4 bools
+like we do with WKPage, I made a KVO property on the WKWebView.  I introduce _WKRectEdge for this purpose,
+which is like UIRectEdge but unfortunately NSRectEdge and CGRectEdge cannot be used as NS_OPTIONS/flags.
+This same structure is used for rubber band state.
+
+Covered by a new API test.
+
+* UIProcess/API/Cocoa/WKWebView.mm:
+(-[WKWebView _pinnedState]):
+(-[WKWebView _rubberBandState]):
+(-[WKWebView _setRubberBandState:]):
+* UIProcess/API/Cocoa/WKWebViewPrivate.h:
+* UIProcess/Cocoa/WebViewImpl.h:
+* UIProcess/Cocoa/WebViewImpl.mm:
+(WebKit::WebViewImpl::pinnedState):
+(WebKit::WebViewImpl::rubberBandState):
+(WebKit::WebViewImpl::setRubberBandState):
+* UIProcess/PageClient.h:
+(WebKit::PageClient::pinnedStateWillChange):
+(WebKit::PageClient::pinnedStateDidChange):
+* UIProcess/WebPageProxy.cpp:
+(WebKit::WebPageProxy::didChangeScrollOffsetPinningForMainFrame):
+* UIProcess/mac/PageClientImplMac.h:
+* UIProcess/mac/PageClientImplMac.mm:
+(WebKit::PageClientImpl::pinnedStateWillChange):
+(WebKit::PageClientImpl::pinnedStateDidChange):
+
 2017-09-06  Brent Fulgham  
 
 Deny third-party cookie creation for prevalent resources without interaction


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm (221693 => 221694)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm	2017-09-06 20:09:28 UTC (rev 221693)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm	2017-09-06 20:15:47 UTC (rev 221694)
@@ -5281,6 +5281,21 @@
 return _impl->pageExtendedBackgroundColor();
 }
 
+- (_WKRectEdge)_pinnedState
+{
+return _impl->pinnedState();
+}
+
+- (_WKRectEdge)_rubberBandingEnabled
+{
+return _impl->rubberBandingEnabled();
+}
+
+- (void)_setRubberBandingEnabled:(_WKRectEdge)state
+{
+_impl->setRubberBandingEnabled(state);
+}
+
 - (id)_immediateActionAnimationControllerForHitTestResult:(_WKHitTestResult *)hitTestResult withType:(_WKImmediateActionType)type userData:(id)userData
 {
 return nil;


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h (221693 => 221694)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/WK

[webkit-changes] [221693] trunk/Source

2017-09-06 Thread pvollan
Title: [221693] trunk/Source








Revision 221693
Author pvol...@apple.com
Date 2017-09-06 13:09:28 -0700 (Wed, 06 Sep 2017)


Log Message
[Win] WebCore failed to build, InbandTextTrackPrivateAVF: base class undefined.
https://bugs.webkit.org/show_bug.cgi?id=176431

Reviewed by Alex Christensen.

Source/WebCore:

AVFoundation header detection should be done in WebCore because of build dependencies.

No new tests, covered by existing tests.

* AVFoundationSupport.py: Copied from Source/WTF/AVFoundationSupport.py.
* PlatformWin.cmake:
* config.h:
* platform/graphics/ca/win/PlatformCALayerWin.cpp:
* platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:

Source/WTF:

AVFoundation header detection should be done in WebCore because of build dependencies. 

* AVFoundationSupport.py: Removed.
* wtf/Platform.h:
* wtf/PlatformWin.cmake:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/Platform.h
trunk/Source/WTF/wtf/PlatformWin.cmake
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/PlatformWin.cmake
trunk/Source/WebCore/config.h
trunk/Source/WebCore/platform/graphics/ca/win/PlatformCALayerWin.cpp
trunk/Source/WebCore/platform/graphics/ca/win/PlatformCALayerWinInternal.cpp


Added Paths

trunk/Source/WebCore/AVFoundationSupport.py


Removed Paths

trunk/Source/WTF/AVFoundationSupport.py




Diff

Deleted: trunk/Source/WTF/AVFoundationSupport.py (221692 => 221693)

--- trunk/Source/WTF/AVFoundationSupport.py	2017-09-06 20:03:59 UTC (rev 221692)
+++ trunk/Source/WTF/AVFoundationSupport.py	2017-09-06 20:09:28 UTC (rev 221693)
@@ -1,64 +0,0 @@
-#!/usr/bin/python
-
-# Copyright (C) 2015 Apple Inc.  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 Apple puter, Inc. ("Apple") 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 APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
-# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-# DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
-# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (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 re
-import sys
-import os
-
-
-def lookFor(relativePath):
-return os.path.isfile(sys.argv[1] + relativePath)
-
-
-def fileContains(relativePath, regexp):
-with open(sys.argv[1] + relativePath) as file:
-for line in file:
-if regexp.search(line):
-return True
-return False
-
-
-print "/* Identifying AVFoundation Support */"
-if lookFor("/include/AVFoundationCF/AVCFBase.h"):
-print "#define HAVE_AVCF 1"
-if lookFor("/include/AVFoundationCF/AVCFPlayerItemLegibleOutput.h"):
-print "#define HAVE_AVCF_LEGIBLE_OUTPUT 1"
-if lookFor("/include/AVFoundationCF/AVCFAssetResourceLoader.h"):
-print "#define HAVE_AVFOUNDATION_LOADER_DELEGATE 1"
-if lookFor("/include/AVFoundationCF/AVCFAsset.h"):
-regexp = re.compile("AVCFURLAssetIsPlayableExtendedMIMEType")
-if fileContains("/include/AVFoundationCF/AVCFAsset.h", regexp):
-print "#define HAVE_AVCFURL_PLAYABLE_MIMETYPE 1"
-if lookFor("/include/QuartzCore/CACFLayer.h"):
-regexp = re.compile("CACFLayerSetContentsScale")
-if fileContains("/include/QuartzCore/CACFLayer.h", regexp):
-print "#define HAVE_CACFLAYER_SETCONTENTSSCALE 1"
-if lookFor("/include/AVFoundationCF/AVCFPlayerItemLegibleOutput.h"):
-regexp = re.compile("kAVCFPlayerItemLegibleOutput_CallbacksVersion_2")
-if fileContains("/include/AVFoundationCF/AVCFPlayerItemLegibleOutput.h", regexp):
-print "#define HAVE_AVCFPLAYERITEM_CALLBACK_VERSION_2 1"


Modified: trunk/Source/WTF/ChangeLog (221692 => 221693)

--- trunk/Source/WTF/ChangeLog	2017-09-06 20:03:59 UTC (rev 221692)
+++ trunk/Source/WTF/ChangeLog	2017-09-06 20:09:28 UTC (rev 221693)
@@ -1,3 +1,16 @@
+2017-09-06  Per Arne Vollan  
+
+[Win] WebCore failed to build, InbandTextTrackPrivateAVF: base class undefined.
+https://bugs.webki

[webkit-changes] [221692] trunk/Tools

2017-09-06 Thread fpizlo
Title: [221692] trunk/Tools








Revision 221692
Author fpi...@apple.com
Date 2017-09-06 13:03:59 -0700 (Wed, 06 Sep 2017)


Log Message
WSL: Inliner doesn't allow double-negation
https://bugs.webkit.org/show_bug.cgi?id=176440

Reviewed by Mylex Maxfield.

The problem was that we were visiting the operands to calls while inside doVisit. This is too strict
since it rejects nested calls like foo(foo(x)). The solution is to visit the operands to calls before
entering doVisit.

This also fixes some other issues in the parser that made the Inliner's error really strange.

* WebGPUShadingLanguageRI/Func.js:
(Func):
* WebGPUShadingLanguageRI/Inliner.js:
(Inliner.prototype.visitCallExpression):
(Inliner):
* WebGPUShadingLanguageRI/Parse.js:
(parseOperatorFuncDefValues):
(parseNonOperatorFuncDefValues):
(parseGenericFuncDefValues):
(parseFuncDecl):
* WebGPUShadingLanguageRI/Test.js:
* WebGPUShadingLanguageRI/VisitingSet.js:
(VisitingSet.prototype.doVisit):
(VisitingSet):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/WebGPUShadingLanguageRI/Func.js
trunk/Tools/WebGPUShadingLanguageRI/Inliner.js
trunk/Tools/WebGPUShadingLanguageRI/Test.js
trunk/Tools/WebGPUShadingLanguageRI/VisitingSet.js




Diff

Modified: trunk/Tools/ChangeLog (221691 => 221692)

--- trunk/Tools/ChangeLog	2017-09-06 19:46:38 UTC (rev 221691)
+++ trunk/Tools/ChangeLog	2017-09-06 20:03:59 UTC (rev 221692)
@@ -1,3 +1,31 @@
+2017-09-06  Filip Pizlo  
+
+WSL: Inliner doesn't allow double-negation
+https://bugs.webkit.org/show_bug.cgi?id=176440
+
+Reviewed by Mylex Maxfield.
+
+The problem was that we were visiting the operands to calls while inside doVisit. This is too strict
+since it rejects nested calls like foo(foo(x)). The solution is to visit the operands to calls before
+entering doVisit.
+
+This also fixes some other issues in the parser that made the Inliner's error really strange.
+
+* WebGPUShadingLanguageRI/Func.js:
+(Func):
+* WebGPUShadingLanguageRI/Inliner.js:
+(Inliner.prototype.visitCallExpression):
+(Inliner):
+* WebGPUShadingLanguageRI/Parse.js:
+(parseOperatorFuncDefValues):
+(parseNonOperatorFuncDefValues):
+(parseGenericFuncDefValues):
+(parseFuncDecl):
+* WebGPUShadingLanguageRI/Test.js:
+* WebGPUShadingLanguageRI/VisitingSet.js:
+(VisitingSet.prototype.doVisit):
+(VisitingSet):
+
 2017-09-06  Myles C. Maxfield  
 
 WSL should support the bool type


Modified: trunk/Tools/WebGPUShadingLanguageRI/Func.js (221691 => 221692)

--- trunk/Tools/WebGPUShadingLanguageRI/Func.js	2017-09-06 19:46:38 UTC (rev 221691)
+++ trunk/Tools/WebGPUShadingLanguageRI/Func.js	2017-09-06 20:03:59 UTC (rev 221692)
@@ -27,6 +27,8 @@
 class Func extends Node {
 constructor(origin, name, returnType, typeParameters, parameters, isCast)
 {
+if (!(origin instanceof LexerToken))
+throw new Error("Bad origin: " + origin);
 super();
 this._origin = origin;
 this._name = name;


Modified: trunk/Tools/WebGPUShadingLanguageRI/Inliner.js (221691 => 221692)

--- trunk/Tools/WebGPUShadingLanguageRI/Inliner.js	2017-09-06 19:46:38 UTC (rev 221691)
+++ trunk/Tools/WebGPUShadingLanguageRI/Inliner.js	2017-09-06 20:03:59 UTC (rev 221692)
@@ -43,19 +43,16 @@
 
 visitCallExpression(node)
 {
+let result = super.visitCallExpression(node);
 return this._visiting.doVisit(node.func, () => {
-let func = this._program.funcInstantiator.getUnique(node.func, node.actualTypeArguments);
+let func = this._program.funcInstantiator.getUnique(result.func, result.actualTypeArguments);
 if (func.isNative) {
-let result = super.visitCallExpression(node);
 result.nativeFuncInstance = func;
 return result;
 }
 _inlineFunction(this._program, func, this._visiting);
 return new FunctionLikeBlock(
-node.origin,
-func.returnType,
-node.argumentList.map(argument => argument.visit(this)),
-func.parameters, func.body);
+result.origin, func.returnType, result.argumentList, func.parameters, func.body);
 });
 }
 


Modified: trunk/Tools/WebGPUShadingLanguageRI/Test.js (221691 => 221692)

--- trunk/Tools/WebGPUShadingLanguageRI/Test.js	2017-09-06 19:46:38 UTC (rev 221691)
+++ trunk/Tools/WebGPUShadingLanguageRI/Test.js	2017-09-06 20:03:59 UTC (rev 221692)
@@ -977,6 +977,18 @@
 });
 }
 
+function TEST_doubleNot()
+{
+let program = doPrep(`
+bool foo(bool x)
+{
+return !!x;
+}
+`);
+checkBool(program, callFunction(program, "foo", [], [makeBool(program, true)]), true);
+checkBool(program, callFunction(program, "foo", [], [makeBool(program, false)]), false

[webkit-changes] [221691] trunk/Source/WebInspectorUI

2017-09-06 Thread commit-queue
Title: [221691] trunk/Source/WebInspectorUI








Revision 221691
Author commit-qu...@webkit.org
Date 2017-09-06 12:46:38 -0700 (Wed, 06 Sep 2017)


Log Message
Web Inspector: ⌘E and ⌘G do not work in main content area when quick console drawer is open
https://bugs.webkit.org/show_bug.cgi?id=176433

Patch by Joseph Pecoraro  on 2017-09-06
Reviewed by Brian Burg.

Make the ⌘E and ⌘G keyboard shortcuts behave more like the global ⌘K clear shortcut.
Instead of keeping them inside of FindBanner, and enabling/disabling them when they
make sense to apply, we make a single global instance of the keyboard shortcut and
apply it to whatever content view / content browser is active. This avoids conflicts
in situations where there are two ContentViews that are visible and each can handle
the keyboard shortcut.

* UserInterface/Base/Main.js:
(WI.contentLoaded):
New keyboard shortcuts.

(WI._populateFind):
(WI._findNext):
(WI._findPrevious):
Perform the shortcut on the active content view or content browser.

* UserInterface/Views/ContentBrowser.js:
(WI.ContentBrowser.prototype.shown):
(WI.ContentBrowser.prototype.hidden):
(WI.ContentBrowser.prototype.handlePopulateFindShortcut):
(WI.ContentBrowser.prototype.handleFindNextShortcut):
(WI.ContentBrowser.prototype.handleFindPreviousShortcut):
(WI.ContentBrowser.prototype.findBannerSearchQueryForSelection): Deleted.
* UserInterface/Views/LogContentView.js:
(WI.LogContentView.prototype.handlePopulateFindShortcut):
(WI.LogContentView.prototype.handleFindNextShortcut):
(WI.LogContentView.prototype.handleFindPreviousShortcut):
ContentBrowser and LogContentView (the only content view with a custom find banner)
now each handle the global keyboard shortcut handlers to do the right thing for
their respective cases.

* UserInterface/Views/FindBanner.js:
(WI.FindBanner.prototype.enableKeyboardShortcuts): Deleted.
(WI.FindBanner.prototype.disableKeyboardShortcuts): Deleted.
(WI.FindBanner.prototype._populateSearchQueryFromSelection): Deleted.
Move keyboard shortcut handling up to Main.js to be global.

* UserInterface/Views/ContentView.js:
(WI.ContentView.prototype.searchQueryWithSelection):
Default implementation should grab the selected text from the selection.
Previously shortcut selections only worked for selections in text editors.

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Base/Main.js
trunk/Source/WebInspectorUI/UserInterface/Views/ContentBrowser.js
trunk/Source/WebInspectorUI/UserInterface/Views/ContentView.js
trunk/Source/WebInspectorUI/UserInterface/Views/FindBanner.js
trunk/Source/WebInspectorUI/UserInterface/Views/LogContentView.js




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (221690 => 221691)

--- trunk/Source/WebInspectorUI/ChangeLog	2017-09-06 19:34:29 UTC (rev 221690)
+++ trunk/Source/WebInspectorUI/ChangeLog	2017-09-06 19:46:38 UTC (rev 221691)
@@ -1,3 +1,52 @@
+2017-09-06  Joseph Pecoraro  
+
+Web Inspector: ⌘E and ⌘G do not work in main content area when quick console drawer is open
+https://bugs.webkit.org/show_bug.cgi?id=176433
+
+Reviewed by Brian Burg.
+
+Make the ⌘E and ⌘G keyboard shortcuts behave more like the global ⌘K clear shortcut.
+Instead of keeping them inside of FindBanner, and enabling/disabling them when they
+make sense to apply, we make a single global instance of the keyboard shortcut and
+apply it to whatever content view / content browser is active. This avoids conflicts
+in situations where there are two ContentViews that are visible and each can handle
+the keyboard shortcut.
+
+* UserInterface/Base/Main.js:
+(WI.contentLoaded):
+New keyboard shortcuts.
+
+(WI._populateFind):
+(WI._findNext):
+(WI._findPrevious):
+Perform the shortcut on the active content view or content browser.
+
+* UserInterface/Views/ContentBrowser.js:
+(WI.ContentBrowser.prototype.shown):
+(WI.ContentBrowser.prototype.hidden):
+(WI.ContentBrowser.prototype.handlePopulateFindShortcut):
+(WI.ContentBrowser.prototype.handleFindNextShortcut):
+(WI.ContentBrowser.prototype.handleFindPreviousShortcut):
+(WI.ContentBrowser.prototype.findBannerSearchQueryForSelection): Deleted.
+* UserInterface/Views/LogContentView.js:
+(WI.LogContentView.prototype.handlePopulateFindShortcut):
+(WI.LogContentView.prototype.handleFindNextShortcut):
+(WI.LogContentView.prototype.handleFindPreviousShortcut):
+ContentBrowser and LogContentView (the only content view with a custom find banner)
+now each handle the global keyboard shortcut handlers to do the right thing for
+their respective cases.
+
+* UserInterface/Views/FindBanner.js:
+(WI.FindBanner.prototype.enableKeyboardShortcuts): Deleted.
+(WI.FindBanner.prototype.disableKeyboardShortcuts): Deleted.
+(WI.F

[webkit-changes] [221690] trunk/Tools

2017-09-06 Thread mmaxfield
Title: [221690] trunk/Tools








Revision 221690
Author mmaxfi...@apple.com
Date 2017-09-06 12:34:29 -0700 (Wed, 06 Sep 2017)


Log Message
WSL should support the bool type
https://bugs.webkit.org/show_bug.cgi?id=176285

Reviewed by Filip Pizlo.

I forgot to commit a couple files.

* WebGPUShadingLanguageRI/StandardLibraryEpilogue.js: Added.
(const.standardLibraryEpilogue.operator.bool.T.Equatable):
* WebGPUShadingLanguageRI/StandardLibraryPrologue.js: Added.
(operator.T.T):

Modified Paths

trunk/Tools/ChangeLog


Added Paths

trunk/Tools/WebGPUShadingLanguageRI/StandardLibraryEpilogue.js
trunk/Tools/WebGPUShadingLanguageRI/StandardLibraryPrologue.js




Diff

Modified: trunk/Tools/ChangeLog (221689 => 221690)

--- trunk/Tools/ChangeLog	2017-09-06 18:49:47 UTC (rev 221689)
+++ trunk/Tools/ChangeLog	2017-09-06 19:34:29 UTC (rev 221690)
@@ -1,5 +1,19 @@
 2017-09-06  Myles C. Maxfield  
 
+WSL should support the bool type
+https://bugs.webkit.org/show_bug.cgi?id=176285
+
+Reviewed by Filip Pizlo.
+
+I forgot to commit a couple files.
+
+* WebGPUShadingLanguageRI/StandardLibraryEpilogue.js: Added.
+(const.standardLibraryEpilogue.operator.bool.T.Equatable):
+* WebGPUShadingLanguageRI/StandardLibraryPrologue.js: Added.
+(operator.T.T):
+
+2017-09-06  Myles C. Maxfield  
+
 WSL should correctly handle the interaction between casting operators and complex types
 https://bugs.webkit.org/show_bug.cgi?id=176316
 


Added: trunk/Tools/WebGPUShadingLanguageRI/StandardLibraryEpilogue.js (0 => 221690)

--- trunk/Tools/WebGPUShadingLanguageRI/StandardLibraryEpilogue.js	(rev 0)
+++ trunk/Tools/WebGPUShadingLanguageRI/StandardLibraryEpilogue.js	2017-09-06 19:34:29 UTC (rev 221690)
@@ -0,0 +1,33 @@
+/*
+ * Copyright (C) 2017 Apple Inc. 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.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ */
+"use strict";
+
+// NOTE: The next line is line 28, and we rely on this in Prepare.js.
+const standardLibraryEpilogue = `
+operator bool<>(T x) {
+T defaultValue;
+return x != defaultValue;
+}
+`;


Added: trunk/Tools/WebGPUShadingLanguageRI/StandardLibraryPrologue.js (0 => 221690)

--- trunk/Tools/WebGPUShadingLanguageRI/StandardLibraryPrologue.js	(rev 0)
+++ trunk/Tools/WebGPUShadingLanguageRI/StandardLibraryPrologue.js	2017-09-06 19:34:29 UTC (rev 221690)
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 2017 Apple Inc. 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.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISE

[webkit-changes] [221689] trunk

2017-09-06 Thread commit-queue
Title: [221689] trunk








Revision 221689
Author commit-qu...@webkit.org
Date 2017-09-06 11:49:47 -0700 (Wed, 06 Sep 2017)


Log Message
REGRESSION (r221598): Legacy "round" and "bevel" options can no longer be used with the legacy CanvasRenderingContext2D setLineJoin operation
https://bugs.webkit.org/show_bug.cgi?id=176461

Patch by Sam Weinig  on 2017-09-06
Reviewed by Alex Christensen.

Source/WebCore:

Tests: fast/canvas/canvas-strokePath-cap-join-legacy-functions-match-attribute.html
   fast/canvas/canvas-strokePath-cap-join-legacy.html

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::setLineJoin):

Fix silly typo, ifs -> else ifs.

LayoutTests:

Add tests showing that the legacy setLineJoin and setLineCap operations are correct
and match the corresponding standard attributes.

* fast/canvas/canvas-strokePath-cap-join-legacy-functions-match-attribute-expected.html: Added.
* fast/canvas/canvas-strokePath-cap-join-legacy-functions-match-attribute.html: Added.
* fast/canvas/canvas-strokePath-cap-join-legacy-expected.txt: Added.
* fast/canvas/canvas-strokePath-cap-join-legacy.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp


Added Paths

trunk/LayoutTests/fast/canvas/canvas-strokePath-cap-join-legacy-expected.txt
trunk/LayoutTests/fast/canvas/canvas-strokePath-cap-join-legacy-functions-match-attribute-expected.html
trunk/LayoutTests/fast/canvas/canvas-strokePath-cap-join-legacy-functions-match-attribute.html
trunk/LayoutTests/fast/canvas/canvas-strokePath-cap-join-legacy.html




Diff

Modified: trunk/LayoutTests/ChangeLog (221688 => 221689)

--- trunk/LayoutTests/ChangeLog	2017-09-06 18:45:38 UTC (rev 221688)
+++ trunk/LayoutTests/ChangeLog	2017-09-06 18:49:47 UTC (rev 221689)
@@ -1,3 +1,18 @@
+2017-09-06  Sam Weinig  
+
+REGRESSION (r221598): Legacy "round" and "bevel" options can no longer be used with the legacy CanvasRenderingContext2D setLineJoin operation
+https://bugs.webkit.org/show_bug.cgi?id=176461
+
+Reviewed by Alex Christensen.
+
+Add tests showing that the legacy setLineJoin and setLineCap operations are correct
+and match the corresponding standard attributes.
+
+* fast/canvas/canvas-strokePath-cap-join-legacy-functions-match-attribute-expected.html: Added.
+* fast/canvas/canvas-strokePath-cap-join-legacy-functions-match-attribute.html: Added.
+* fast/canvas/canvas-strokePath-cap-join-legacy-expected.txt: Added.
+* fast/canvas/canvas-strokePath-cap-join-legacy.html: Added.
+
 2017-09-06  Per Arne Vollan  
 
 Rebaseline printing/width-overflow.html after r219121.


Added: trunk/LayoutTests/fast/canvas/canvas-strokePath-cap-join-legacy-expected.txt (0 => 221689)

--- trunk/LayoutTests/fast/canvas/canvas-strokePath-cap-join-legacy-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/canvas/canvas-strokePath-cap-join-legacy-expected.txt	2017-09-06 18:49:47 UTC (rev 221689)
@@ -0,0 +1,43 @@
+Ensure correct behavior of canvas with path stroke with legacy setLineCap and setLineJoin functions.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS data[0] is 0
+PASS data[0] is 255
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: trunk/LayoutTests/fast/canvas/canvas-strokePath-cap-join-legacy-functions-match-attribute-expected.html (0 => 221689)

--- trunk/LayoutTests/fast/canvas/canvas-strokePath-cap-join-legacy-functions-match-attribute-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/canvas/canvas-strokePath-cap-join-legacy-functions-match-attribute-expected.html	2017-09-06 18:49:47 UTC (rev 221689)
@@ -0,0 +1,119 @@
+
+
+
+
+
+// Ensures that CanvasRendingContext2D's legacy setLineCap and setLineJoin operations match the behavior of the standard lineCap and lineJoin attributes.
+
+var canvas = document.createElement('canvas');
+document.body.appendChild(canvas);
+canvas.setAttribute('width', '700');
+canvas.setAttribute('height', '200');
+var ctx = canvas.getContext('2d');
+
+ctx.miterLimit = 5;
+ctx.lineWidth = 15;
+
+ctx.fillStyle="rgba(255, 255, 255, 1.0)";
+ctx.fillRect(0, 0, 700, 200);
+
+ctx.strokeStyle="rgba(0, 0, 0, 1.0)";
+ctx.lineJoin = "mi

[webkit-changes] [221688] trunk/LayoutTests

2017-09-06 Thread pvollan
Title: [221688] trunk/LayoutTests








Revision 221688
Author pvol...@apple.com
Date 2017-09-06 11:45:38 -0700 (Wed, 06 Sep 2017)


Log Message
Rebaseline printing/width-overflow.html after r219121.

Unreviewed test gardening.

* platform/win/printing/width-overflow-expected.txt:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/win/printing/width-overflow-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (221687 => 221688)

--- trunk/LayoutTests/ChangeLog	2017-09-06 18:26:21 UTC (rev 221687)
+++ trunk/LayoutTests/ChangeLog	2017-09-06 18:45:38 UTC (rev 221688)
@@ -1,3 +1,11 @@
+2017-09-06  Per Arne Vollan  
+
+Rebaseline printing/width-overflow.html after r219121.
+
+Unreviewed test gardening.
+
+* platform/win/printing/width-overflow-expected.txt:
+
 2017-09-06  Matt Lewis  
 
 Marked js/arraybuffer-wrappers.html as flaky.


Modified: trunk/LayoutTests/platform/win/printing/width-overflow-expected.txt (221687 => 221688)

--- trunk/LayoutTests/platform/win/printing/width-overflow-expected.txt	2017-09-06 18:26:21 UTC (rev 221687)
+++ trunk/LayoutTests/platform/win/printing/width-overflow-expected.txt	2017-09-06 18:45:38 UTC (rev 221688)
@@ -1,9 +1,9 @@
 layer at (0,0) size 1300x2284
   RenderView at (0,0) size 1300x2284
-layer at (0,0) size 981x2284
-  RenderBlock {HTML} at (0,0) size 981x2284
-RenderBody {BODY} at (0,16) size 981x2252
-  RenderBlock {P} at (0,0) size 981x18
+layer at (0,0) size 1300x2284
+  RenderBlock {HTML} at (0,0) size 1300x2284
+RenderBody {BODY} at (0,16) size 1300x2252
+  RenderBlock {P} at (0,0) size 1300x18
 RenderText {#text} at (0,0) size 748x18
   text run at (0,0) width 748: "To run this test manually, print this page. If the right side of any lines is printed without being truncated, the test passes."
   RenderBlock {DIV} at (0,34) size 1300x2218






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221687] trunk/LayoutTests

2017-09-06 Thread jlewis3
Title: [221687] trunk/LayoutTests








Revision 221687
Author jlew...@apple.com
Date 2017-09-06 11:26:21 -0700 (Wed, 06 Sep 2017)


Log Message
Marked js/arraybuffer-wrappers.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=155092

Unreviewed test gardening.

* platform/ios/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (221686 => 221687)

--- trunk/LayoutTests/ChangeLog	2017-09-06 18:25:55 UTC (rev 221686)
+++ trunk/LayoutTests/ChangeLog	2017-09-06 18:26:21 UTC (rev 221687)
@@ -1,3 +1,12 @@
+2017-09-06  Matt Lewis  
+
+Marked js/arraybuffer-wrappers.html as flaky.
+https://bugs.webkit.org/show_bug.cgi?id=155092
+
+Unreviewed test gardening.
+
+* platform/ios/TestExpectations:
+
 2017-09-06  Brent Fulgham  
 
 Deny third-party cookie creation for prevalent resources without interaction


Modified: trunk/LayoutTests/platform/ios/TestExpectations (221686 => 221687)

--- trunk/LayoutTests/platform/ios/TestExpectations	2017-09-06 18:25:55 UTC (rev 221686)
+++ trunk/LayoutTests/platform/ios/TestExpectations	2017-09-06 18:26:21 UTC (rev 221687)
@@ -2899,3 +2899,6 @@
 crypto/subtle/ecdsa-import-key-sign-p521.html
 crypto/subtle/ecdsa-import-key-verify-p521.html
 crypto/subtle/ecdsa-import-pkcs8-key-p521-validate-ecprivatekey-parameters-publickey.html
+
+webkit.org/b/155092 js/arraybuffer-wrappers.html [ Pass Timeout ]
+






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221686] trunk/Tools

2017-09-06 Thread mmaxfield
Title: [221686] trunk/Tools








Revision 221686
Author mmaxfi...@apple.com
Date 2017-09-06 11:25:55 -0700 (Wed, 06 Sep 2017)


Log Message
WSL should correctly handle the interaction between casting operators and complex types
https://bugs.webkit.org/show_bug.cgi?id=176316

Reviewed by Filip Pizlo.

This allows the standard library to include all identity cast operators for all exsting
and yet-to-exist types. The standard library now has a function with the signature:
operator T<>(T). This means "for all T, define a cast operator from T to T<>." The
duplicate <>s lets us say things like operator OutputVector(InputVector x).

For testing, this patch also adds the ability to cast an arbitrary Equatable type to bool,
by comparing the value to the default value for that type.

* WebGPUShadingLanguageRI/All.js:
* WebGPUShadingLanguageRI/CastExpression.js: Copied from Tools/WebGPUShadingLanguageRI/NativeFuncInstance.js.
(CastExpression):
(CastExpression.prototype.get functionName):
(CastExpression.prototype.get returnType):
(CastExpression.prototype.toString):
* WebGPUShadingLanguageRI/Checker.js:
* WebGPUShadingLanguageRI/Func.js:
(Func.prototype.toDeclString):
* WebGPUShadingLanguageRI/FuncInstantiator.js:
(FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitNativeFunc):
(FuncInstantiator.prototype.getUnique.Instantiate):
(FuncInstantiator.prototype.getUnique):
(FuncInstantiator):
* WebGPUShadingLanguageRI/Inliner.js:
(Inliner.prototype.visitCastExpression):
(Inliner):
* WebGPUShadingLanguageRI/Intrinsics.js:
(Intrinsics):
* WebGPUShadingLanguageRI/NativeFunc.js:
* WebGPUShadingLanguageRI/NativeFuncInstance.js:
(NativeFuncInstance):
* WebGPUShadingLanguageRI/Parse.js:
(parsePossiblePrefix):
(parseFuncDecl):
(parseOperatorFuncDefValues): Deleted.
(parseNonOperatorFuncDefValues): Deleted.
(parseGenericFuncDefValues): Deleted.
* WebGPUShadingLanguageRI/Prepare.js:
(prepare):
* WebGPUShadingLanguageRI/Program.js:
(Program.prototype.resolveFuncOverload):
* WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
(resolveOverloadImpl):
* WebGPUShadingLanguageRI/Rewriter.js:
(Rewriter.prototype.processDerivedCallData):
(Rewriter.prototype.visitCastExpression):
(Rewriter.prototype.visitCallExpression):
* WebGPUShadingLanguageRI/StandardLibrary.js: Removed.
* WebGPUShadingLanguageRI/Test.html:
* WebGPUShadingLanguageRI/Test.js:
* WebGPUShadingLanguageRI/TypeDefResolver.js:
(TypeDefResolver):
(TypeDefResolver.prototype.visitFuncDef): Deleted.
* WebGPUShadingLanguageRI/Visitor.js:
(Visitor.prototype.visitCastExpression):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/WebGPUShadingLanguageRI/All.js
trunk/Tools/WebGPUShadingLanguageRI/Checker.js
trunk/Tools/WebGPUShadingLanguageRI/Func.js
trunk/Tools/WebGPUShadingLanguageRI/FuncInstantiator.js
trunk/Tools/WebGPUShadingLanguageRI/Inliner.js
trunk/Tools/WebGPUShadingLanguageRI/Intrinsics.js
trunk/Tools/WebGPUShadingLanguageRI/NativeFunc.js
trunk/Tools/WebGPUShadingLanguageRI/NativeFuncInstance.js
trunk/Tools/WebGPUShadingLanguageRI/Parse.js
trunk/Tools/WebGPUShadingLanguageRI/Prepare.js
trunk/Tools/WebGPUShadingLanguageRI/Program.js
trunk/Tools/WebGPUShadingLanguageRI/ResolveOverloadImpl.js
trunk/Tools/WebGPUShadingLanguageRI/Rewriter.js
trunk/Tools/WebGPUShadingLanguageRI/Test.html
trunk/Tools/WebGPUShadingLanguageRI/Test.js
trunk/Tools/WebGPUShadingLanguageRI/TypeDefResolver.js
trunk/Tools/WebGPUShadingLanguageRI/Visitor.js


Added Paths

trunk/Tools/WebGPUShadingLanguageRI/CastExpression.js


Removed Paths

trunk/Tools/WebGPUShadingLanguageRI/StandardLibrary.js




Diff

Modified: trunk/Tools/ChangeLog (221685 => 221686)

--- trunk/Tools/ChangeLog	2017-09-06 18:16:56 UTC (rev 221685)
+++ trunk/Tools/ChangeLog	2017-09-06 18:25:55 UTC (rev 221686)
@@ -1,3 +1,65 @@
+2017-09-06  Myles C. Maxfield  
+
+WSL should correctly handle the interaction between casting operators and complex types
+https://bugs.webkit.org/show_bug.cgi?id=176316
+
+Reviewed by Filip Pizlo.
+
+This allows the standard library to include all identity cast operators for all exsting
+and yet-to-exist types. The standard library now has a function with the signature:
+operator T<>(T). This means "for all T, define a cast operator from T to T<>." The
+duplicate <>s lets us say things like operator OutputVector(InputVector x).
+
+For testing, this patch also adds the ability to cast an arbitrary Equatable type to bool,
+by comparing the value to the default value for that type.
+
+* WebGPUShadingLanguageRI/All.js:
+* WebGPUShadingLanguageRI/CastExpression.js: Copied from Tools/WebGPUShadingLanguageRI/NativeFuncInstance.js.
+(CastExpression):
+(CastExpression.prototype.get functionName):
+(CastExpression.prototype.get returnType):
+(CastExpression.prototype.toString):
+* WebGPUShadingLanguageRI/Checker.js:
+* WebGPUShadingLanguageRI/Func.js:
+(Func.prototype.

[webkit-changes] [221685] trunk/PerformanceTests

2017-09-06 Thread fpizlo
Title: [221685] trunk/PerformanceTests








Revision 221685
Author fpi...@apple.com
Date 2017-09-06 11:16:56 -0700 (Wed, 06 Sep 2017)


Log Message
We should have more tests of tail calls
https://bugs.webkit.org/show_bug.cgi?id=175754

Reviewed by Sam Weinig.

This introduces a new test suite called TailBench9000, which will have benchmarks written in
_javascript_ that avoid all looping except by tail call. As a warmup, I wrote a mergesort
benchmark and I proted n-body to use tail calls instead of for loops.

* TailBench9000: Added.
* TailBench9000/merge-sort-run.js: Added.
* TailBench9000/merge-sort.js: Added.
(TEST_mergeSort.createRNG):
(TEST_mergeSort.):
(TEST_mergeSort.merge):
(TEST_mergeSort.mergeSorted):
(TEST_mergeSort.checkSorted.check):
(TEST_mergeSort.checkSorted):
(TEST_mergeSort.add):
(TEST_mergeSort.build):
(TEST_mergeSort.compare):
(TEST_mergeSort.checkSpectrum):
(TEST_mergeSort.buildArray):
(TEST_mergeSort):
* TailBench9000/n-body-run.js: Added.
* TailBench9000/n-body.js: Added.
(TEST_nBody.Body):
(TEST_nBody.Body.prototype.offsetMomentum):
(TEST_nBody.Jupiter):
(TEST_nBody.Saturn):
(TEST_nBody.Uranus):
(TEST_nBody.Neptune):
(TEST_nBody.Sun):
(TEST_nBody.NBodySystem):
(TEST_nBody.NBodySystem.prototype.advance):
(TEST_nBody.NBodySystem.prototype.energy):
(TEST_nBody):

Modified Paths

trunk/PerformanceTests/ChangeLog


Added Paths

trunk/PerformanceTests/TailBench9000/
trunk/PerformanceTests/TailBench9000/merge-sort-run.js
trunk/PerformanceTests/TailBench9000/merge-sort.js
trunk/PerformanceTests/TailBench9000/n-body-run.js
trunk/PerformanceTests/TailBench9000/n-body.js




Diff

Modified: trunk/PerformanceTests/ChangeLog (221684 => 221685)

--- trunk/PerformanceTests/ChangeLog	2017-09-06 17:47:29 UTC (rev 221684)
+++ trunk/PerformanceTests/ChangeLog	2017-09-06 18:16:56 UTC (rev 221685)
@@ -1,3 +1,43 @@
+2017-08-19  Filip Pizlo  
+
+We should have more tests of tail calls
+https://bugs.webkit.org/show_bug.cgi?id=175754
+
+Reviewed by Sam Weinig.
+
+This introduces a new test suite called TailBench9000, which will have benchmarks written in
+_javascript_ that avoid all looping except by tail call. As a warmup, I wrote a mergesort
+benchmark and I proted n-body to use tail calls instead of for loops.
+
+* TailBench9000: Added.
+* TailBench9000/merge-sort-run.js: Added.
+* TailBench9000/merge-sort.js: Added.
+(TEST_mergeSort.createRNG):
+(TEST_mergeSort.):
+(TEST_mergeSort.merge):
+(TEST_mergeSort.mergeSorted):
+(TEST_mergeSort.checkSorted.check):
+(TEST_mergeSort.checkSorted):
+(TEST_mergeSort.add):
+(TEST_mergeSort.build):
+(TEST_mergeSort.compare):
+(TEST_mergeSort.checkSpectrum):
+(TEST_mergeSort.buildArray):
+(TEST_mergeSort):
+* TailBench9000/n-body-run.js: Added.
+* TailBench9000/n-body.js: Added.
+(TEST_nBody.Body):
+(TEST_nBody.Body.prototype.offsetMomentum):
+(TEST_nBody.Jupiter):
+(TEST_nBody.Saturn):
+(TEST_nBody.Uranus):
+(TEST_nBody.Neptune):
+(TEST_nBody.Sun):
+(TEST_nBody.NBodySystem):
+(TEST_nBody.NBodySystem.prototype.advance):
+(TEST_nBody.NBodySystem.prototype.energy):
+(TEST_nBody):
+
 2017-09-05  Ryosuke Niwa  
 
 Compute the final score using geometric mean in Speedometer 2.0


Added: trunk/PerformanceTests/TailBench9000/merge-sort-run.js (0 => 221685)

--- trunk/PerformanceTests/TailBench9000/merge-sort-run.js	(rev 0)
+++ trunk/PerformanceTests/TailBench9000/merge-sort-run.js	2017-09-06 18:16:56 UTC (rev 221685)
@@ -0,0 +1,4 @@
+load("merge-sort.js");
+
+for (var i = 0; i < 3000; ++i)
+TEST_mergeSort();


Added: trunk/PerformanceTests/TailBench9000/merge-sort.js (0 => 221685)

--- trunk/PerformanceTests/TailBench9000/merge-sort.js	(rev 0)
+++ trunk/PerformanceTests/TailBench9000/merge-sort.js	2017-09-06 18:16:56 UTC (rev 221685)
@@ -0,0 +1,154 @@
+"use strict";
+
+function TEST_mergeSort()
+{
+function createRNG(seed)
+{
+return function() {
+// Robert Jenkins' 32 bit integer hash function.
+seed = ((seed + 0x7ed55d16) + (seed << 12))  & 0x;
+seed = ((seed ^ 0xc761c23c) ^ (seed >>> 19)) & 0x;
+seed = ((seed + 0x165667b1) + (seed << 5))   & 0x;
+seed = ((seed + 0xd3a2646c) ^ (seed << 9))   & 0x;
+seed = ((seed + 0xfd7046c5) + (seed << 3))   & 0x;
+seed = ((seed ^ 0xb55a4f09) ^ (seed >>> 16)) & 0x;
+return (seed & 0xfff) / 0x1000;
+};
+}
+
+let random = createRNG(0x7a11bec8);
+
+function mergeSorted(array, compare)
+{
+if (array.length <= 1)
+return array;
+
+let midIndex = Math.floor(array.length / 2);

[webkit-changes] [221684] trunk/Source/WebCore

2017-09-06 Thread pvollan
Title: [221684] trunk/Source/WebCore








Revision 221684
Author pvol...@apple.com
Date 2017-09-06 10:47:29 -0700 (Wed, 06 Sep 2017)


Log Message
[Win] Compile errors in Document::updateTitleElement.
https://bugs.webkit.org/show_bug.cgi?id=176381

Reviewed by Alex Christensen.

MSVC is not able to compile the statement:
'auto result = boolExpression ? lambda1 : lambda2;'
where 'lambda1' and 'lambda2' have the same signature.

* dom/Document.cpp:
(WebCore::findHTMLTitle):
(WebCore::isHTMLTitle):
(WebCore::isHTMLTitleEligible):
(WebCore::findSVGTitle):
(WebCore::isSVGTitle):
(WebCore::isSVGTitleEligible):
(WebCore::Document::updateTitleElement):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Document.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (221683 => 221684)

--- trunk/Source/WebCore/ChangeLog	2017-09-06 17:30:50 UTC (rev 221683)
+++ trunk/Source/WebCore/ChangeLog	2017-09-06 17:47:29 UTC (rev 221684)
@@ -1,3 +1,23 @@
+2017-09-06  Per Arne Vollan  
+
+[Win] Compile errors in Document::updateTitleElement.
+https://bugs.webkit.org/show_bug.cgi?id=176381
+
+Reviewed by Alex Christensen.
+
+MSVC is not able to compile the statement:
+'auto result = boolExpression ? lambda1 : lambda2;'
+where 'lambda1' and 'lambda2' have the same signature.
+
+* dom/Document.cpp:
+(WebCore::findHTMLTitle):
+(WebCore::isHTMLTitle):
+(WebCore::isHTMLTitleEligible):
+(WebCore::findSVGTitle):
+(WebCore::isSVGTitle):
+(WebCore::isSVGTitleEligible):
+(WebCore::Document::updateTitleElement):
+
 2017-09-06  Brent Fulgham  
 
 Deny third-party cookie creation for prevalent resources without interaction


Modified: trunk/Source/WebCore/dom/Document.cpp (221683 => 221684)

--- trunk/Source/WebCore/dom/Document.cpp	2017-09-06 17:30:50 UTC (rev 221683)
+++ trunk/Source/WebCore/dom/Document.cpp	2017-09-06 17:47:29 UTC (rev 221684)
@@ -1542,28 +1542,38 @@
 updateTitle({ title, LTR });
 }
 
-void Document::updateTitleElement(Element& changingTitleElement)
+static Element* findHTMLTitle(Document& document)
 {
-auto findHTMLTitle = [] (Document& document) -> Element* {
-return descendantsOfType(document).first();
-};
-auto isHTMLTitle = [] (Element& element) {
-return is(element);
-};
-auto isHTMLTitleEligible = [] (Element& element) {
-return element.isConnected() && !element.isInShadowTree();
-};
+return descendantsOfType(document).first();
+};
 
-auto findSVGTitle = [] (Document& document) -> Element* {
-return childrenOfType(*document.documentElement()).first();
-};
-auto isSVGTitle = [] (Element& element) {
-return is(element);
-};
-auto isSVGTitleEligible = [] (Element& element) {
-return element.parentNode() == element.document().documentElement();
-};
+static bool isHTMLTitle(Element& element)
+{
+return is(element);
+};
 
+static bool isHTMLTitleEligible(Element& element)
+{
+return element.isConnected() && !element.isInShadowTree();
+};
+
+static Element* findSVGTitle(Document& document)
+{
+return childrenOfType(*document.documentElement()).first();
+};
+
+static bool isSVGTitle(Element& element)
+{
+return is(element);
+};
+
+static bool isSVGTitleEligible(Element& element)
+{
+return element.parentNode() == element.document().documentElement();
+};
+
+void Document::updateTitleElement(Element& changingTitleElement)
+{
 // Most documents use HTML title rules.
 // Documents with SVG document elements use SVG title rules.
 bool useSVGTitle = is(documentElement());






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221683] trunk

2017-09-06 Thread bfulgham
Title: [221683] trunk








Revision 221683
Author bfulg...@apple.com
Date 2017-09-06 10:30:50 -0700 (Wed, 06 Sep 2017)


Log Message
Deny third-party cookie creation for prevalent resources without interaction
https://bugs.webkit.org/show_bug.cgi?id=175232


Reviewed by Alex Christensen.

Source/WebCore:

Prior to Intelligent Tracking Prevention, WebKit would deny the ability to create a third party cookie if the user's
settings prohibited it. Due to the internal mechanics of cookie partitioning, we now accept the third party cookie,
but destroy it at some arbitrary moment which is difficult for websites to work with.

This patch revises WebKit so that attempts to set third party cookies without user interaction fails immediately,
which is what sites are expecting from Safari.

Tests: http/tests/loading/resourceLoadStatistics/third-party-cookie-with-and-without-user-interaction.html

* platform/network/NetworkStorageSession.h:
* platform/network/cf/NetworkStorageSessionCFNet.cpp:
(WebCore::NetworkStorageSession::shouldPartitionCookies const): Revise for new naming.
(WebCore::NetworkStorageSession::shouldAllowThirdPartyCookies const): Allow third party cookies when the
user interaction property applies.
(WebCore::NetworkStorageSession::shouldBlockCookies const): Deny cookies for origins that are not allowed by
user interaction, and that are not being partitioned.
(WebCore::NetworkStorageSession::setPrevalentDomainsWithAndWithoutInteraction): Revise for new naming, and
to track prevalent origins with and without user interaction.
(WebCore::NetworkStorageSession::setShouldPartitionCookiesForHosts): Renamed to setPrevalentDomainsWithAndWithoutInteraction.
(WebCore::NetworkStorageSession::removePrevalentDomains): New helper function for testing.

Source/WebKit:

Prior to Intelligent Tracking Prevention, WebKit would deny the ability to create a third party cookie if the user's
settings prohibited it. Due to the internal mechanics of cookie partitioning, we now accept the third party cookie,
but destroy it at some arbitrary moment which is difficult for websites to work with.

This patch revises WebKit so that attempts to set third party cookies without user interaction fails immediately,
which is what sites are expecting from Safari.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::updatePrevalentDomainsWithAndWithoutInteraction):
(WebKit::NetworkProcess::updateCookiePartitioningForTopPrivatelyOwnedDomains): Renamed to updatePrevalentDomainsWithAndWithoutInteraction.
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkProcess.messages.in: Renamed the UpdateCookiePartitioningForTopPrivatelyOwnedDomains message
to UpdatePrevalentDomainsWithAndWithoutInteraction.
* NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
(WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa): Recognize cases where a network session should block cookies, and
use the stateless session so we fail immediately when attempting an invalid cookie set operation.
* UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(WebKit::WKWebsiteDataStore::_resourceLoadStatisticsSetShouldPartitionCookies): Use new helper function to clear partitioning state.
* UIProcess/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore): Update for revised naming.
(WebKit::WebResourceLoadStatisticsStore::updateCookiePartitioning): Track domains with and without interaction so that we can recognize
domains that should be immediately blocked from setting cookies.
(WebKit::WebResourceLoadStatisticsStore::updateCookiePartitioningForDomains): Update for revised naming.
(WebKit::WebResourceLoadStatisticsStore::scheduleClearPartitioningStateForDomains): Added helper function for testing.
* UIProcess/WebResourceLoadStatisticsStore.h:
* UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::updatePrevalentDomainsWithAndWithoutInteraction): Update for revised naming.
(WebKit::WebsiteDataStore::enableResourceLoadStatisticsAndSetTestingCallback): Ditto.
(WebKit::WebsiteDataStore::updateCookiePartitioningForTopPrivatelyOwnedDomains): Renamed to updatePrevalentDomainsWithAndWithoutInteraction.
* UIProcess/WebsiteData/WebsiteDataStore.h:

LayoutTests:

* http/tests/loading/resourceLoadStatistics/third-party-cookie-with-and-without-user-interaction-expected.txt: Added.
* http/tests/loading/resourceLoadStatistics/third-party-cookie-with-and-without-user-interaction.html: Added.
* platform/mac-highsierra-wk2/TestExpectations: Add new test expectation.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac-highsierra-wk2/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/network/NetworkStorageSession.h
trunk/Source/WebCore/platform/network/cf/NetworkStorageSessionCFNet.cpp
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp
trunk/Source/WebKit/NetworkProcess/NetworkProcess.h
trunk/Source/WebKit/NetworkProcess/NetworkPr

[webkit-changes] [221682] trunk/LayoutTests

2017-09-06 Thread pvollan
Title: [221682] trunk/LayoutTests








Revision 221682
Author pvol...@apple.com
Date 2017-09-06 10:24:38 -0700 (Wed, 06 Sep 2017)


Log Message
Layout Test http/tests/preload/single_download_preload.html is flaky.
https://bugs.webkit.org/show_bug.cgi?id=176465.

Unreviewed test gardening.

* platform/win/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/win/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (221681 => 221682)

--- trunk/LayoutTests/ChangeLog	2017-09-06 17:05:47 UTC (rev 221681)
+++ trunk/LayoutTests/ChangeLog	2017-09-06 17:24:38 UTC (rev 221682)
@@ -1,3 +1,12 @@
+2017-09-06  Per Arne Vollan  
+
+Layout Test http/tests/preload/single_download_preload.html is flaky.
+https://bugs.webkit.org/show_bug.cgi?id=176465.
+
+Unreviewed test gardening.
+
+* platform/win/TestExpectations:
+
 2017-09-06  Ms2ger  
 
 [WPE] Add missing test expectations


Modified: trunk/LayoutTests/platform/win/TestExpectations (221681 => 221682)

--- trunk/LayoutTests/platform/win/TestExpectations	2017-09-06 17:05:47 UTC (rev 221681)
+++ trunk/LayoutTests/platform/win/TestExpectations	2017-09-06 17:24:38 UTC (rev 221682)
@@ -4087,8 +4087,9 @@
 imported/w3c/web-platform-tests/streams/readable-streams/tee.serviceworker.https.html [ Skip ]
 imported/w3c/web-platform-tests/streams/readable-streams/templated.serviceworker.https.html [ Skip ]
 
-# This test is flaky on Windows.
+# Flaky tests on Windows:
 webkit.org/b/157916 http/tests/misc/slow-loading-animated-image.html [ Pass ImageOnlyFailure ]
+webkit.org/b/176465 http/tests/preload/single_download_preload.html [ Pass Failure Crash ]
 
 # DatatransferItem tests are timing out.
 webkit.org/b/176423 editing/pasteboard/datatransfer-items-copy-plaintext.html [ Skip ]






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221681] trunk/Source/WebKit

2017-09-06 Thread aperez
Title: [221681] trunk/Source/WebKit








Revision 221681
Author ape...@igalia.com
Date 2017-09-06 10:05:47 -0700 (Wed, 06 Sep 2017)


Log Message
[WPE][CMake] Fix path to the WebKitApplicationInfo.h header.

Unreviewed build fix.

This doesn't really make a difference for the build bots, but it makes
it possible to craft working release tarballs of WPE.

* PlatformWPE.cmake: Use the WPE version of WebKitApplicationInfo.h

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/PlatformWPE.cmake




Diff

Modified: trunk/Source/WebKit/ChangeLog (221680 => 221681)

--- trunk/Source/WebKit/ChangeLog	2017-09-06 17:02:14 UTC (rev 221680)
+++ trunk/Source/WebKit/ChangeLog	2017-09-06 17:05:47 UTC (rev 221681)
@@ -1,3 +1,14 @@
+2017-09-06  Adrian Perez de Castro  
+
+[WPE][CMake] Fix path to the WebKitApplicationInfo.h header.
+
+Unreviewed build fix.
+
+This doesn't really make a difference for the build bots, but it makes
+it possible to craft working release tarballs of WPE.
+
+* PlatformWPE.cmake: Use the WPE version of WebKitApplicationInfo.h
+
 2017-09-06  Frédéric Wang  
 
 Introduce ScrollingTreeScrollingNodeDelegateIOS to share code between overflow and frame scrolling


Modified: trunk/Source/WebKit/PlatformWPE.cmake (221680 => 221681)

--- trunk/Source/WebKit/PlatformWPE.cmake	2017-09-06 17:02:14 UTC (rev 221680)
+++ trunk/Source/WebKit/PlatformWPE.cmake	2017-09-06 17:05:47 UTC (rev 221681)
@@ -279,7 +279,7 @@
 
 set(WPE_API_INSTALLED_HEADERS
 ${DERIVED_SOURCES_WPE_API_DIR}/WebKitEnumTypes.h
-${WEBKIT2_DIR}/UIProcess/API/gtk/WebKitApplicationInfo.h
+${WEBKIT2_DIR}/UIProcess/API/wpe/WebKitApplicationInfo.h
 ${WEBKIT2_DIR}/UIProcess/API/wpe/WebKitAuthenticationRequest.h
 ${WEBKIT2_DIR}/UIProcess/API/wpe/WebKitAutomationSession.h
 ${WEBKIT2_DIR}/UIProcess/API/wpe/WebKitBackForwardList.h






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221680] trunk/LayoutTests

2017-09-06 Thread commit-queue
Title: [221680] trunk/LayoutTests








Revision 221680
Author commit-qu...@webkit.org
Date 2017-09-06 10:02:14 -0700 (Wed, 06 Sep 2017)


Log Message
[WPE] Add missing test expectations
https://bugs.webkit.org/show_bug.cgi?id=176453

Unreviewed test gardening.

Patch by Ms2ger  on 2017-09-06

* platform/wpe/TestExpectations:
* platform/wpe/fast/events/context-no-deselect-expected.txt: Added.
* platform/wpe/fast/events/event-listener-on-link-expected.txt: Added.
* platform/wpe/fast/events/ghostly-mousemoves-in-subframe-expected.txt: Added.
* platform/wpe/fast/events/onload-re-entry-expected.txt: Added.
* platform/wpe/fast/events/pointer-events-2-expected.txt: Added.
* platform/wpe/fast/events/resize-events-expected.txt: Added.
* platform/wpe/fast/events/reveal-link-when-focused-expected.txt: Added.
* platform/wpe/fast/events/updateLayoutForHitTest-expected.txt: Added.
* platform/wpe/fast/inspector-support/matchedrules-expected.txt: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/wpe/TestExpectations


Added Paths

trunk/LayoutTests/platform/wpe/fast/events/context-no-deselect-expected.txt
trunk/LayoutTests/platform/wpe/fast/events/event-listener-on-link-expected.txt
trunk/LayoutTests/platform/wpe/fast/events/ghostly-mousemoves-in-subframe-expected.txt
trunk/LayoutTests/platform/wpe/fast/events/onload-re-entry-expected.txt
trunk/LayoutTests/platform/wpe/fast/events/pointer-events-2-expected.txt
trunk/LayoutTests/platform/wpe/fast/events/resize-events-expected.txt
trunk/LayoutTests/platform/wpe/fast/events/reveal-link-when-focused-expected.txt
trunk/LayoutTests/platform/wpe/fast/events/updateLayoutForHitTest-expected.txt
trunk/LayoutTests/platform/wpe/fast/inspector-support/
trunk/LayoutTests/platform/wpe/fast/inspector-support/matchedrules-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (221679 => 221680)

--- trunk/LayoutTests/ChangeLog	2017-09-06 16:55:49 UTC (rev 221679)
+++ trunk/LayoutTests/ChangeLog	2017-09-06 17:02:14 UTC (rev 221680)
@@ -1,3 +1,21 @@
+2017-09-06  Ms2ger  
+
+[WPE] Add missing test expectations
+https://bugs.webkit.org/show_bug.cgi?id=176453
+
+Unreviewed test gardening.
+
+* platform/wpe/TestExpectations:
+* platform/wpe/fast/events/context-no-deselect-expected.txt: Added.
+* platform/wpe/fast/events/event-listener-on-link-expected.txt: Added.
+* platform/wpe/fast/events/ghostly-mousemoves-in-subframe-expected.txt: Added.
+* platform/wpe/fast/events/onload-re-entry-expected.txt: Added.
+* platform/wpe/fast/events/pointer-events-2-expected.txt: Added.
+* platform/wpe/fast/events/resize-events-expected.txt: Added.
+* platform/wpe/fast/events/reveal-link-when-focused-expected.txt: Added.
+* platform/wpe/fast/events/updateLayoutForHitTest-expected.txt: Added.
+* platform/wpe/fast/inspector-support/matchedrules-expected.txt: Added.
+
 2017-09-06  Carlos Garcia Campos  
 
 Unreviewed GTK+ gardening. Rebaseline tests after Freetype version bump in r221670. Part 7.


Modified: trunk/LayoutTests/platform/wpe/TestExpectations (221679 => 221680)

--- trunk/LayoutTests/platform/wpe/TestExpectations	2017-09-06 16:55:49 UTC (rev 221679)
+++ trunk/LayoutTests/platform/wpe/TestExpectations	2017-09-06 17:02:14 UTC (rev 221680)
@@ -543,6 +543,7 @@
 webkit.org/b/173419 fast/events/touch/touch-target-limited.html [ Timeout ]
 webkit.org/b/173419 fast/events/touch/touch-target.html [ Timeout ]
 
+webkit.org/b/163858 fast/events/touch/touch-constructor.html [ Skip ]
 webkit.org/b/173411 fast/events/touch/frame-hover-update.html [ Failure ]
 
 fast/events/ios [ Skip ]


Added: trunk/LayoutTests/platform/wpe/fast/events/context-no-deselect-expected.txt (0 => 221680)

--- trunk/LayoutTests/platform/wpe/fast/events/context-no-deselect-expected.txt	(rev 0)
+++ trunk/LayoutTests/platform/wpe/fast/events/context-no-deselect-expected.txt	2017-09-06 17:02:14 UTC (rev 221680)
@@ -0,0 +1,14 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+RenderBody {BODY} at (8,8) size 784x584
+  RenderTextControl {INPUT} at (2,2) size 172x23 [bgcolor=#FF] [border: (2px inset #00)]
+  RenderText {#text} at (0,0) size 0x0
+  RenderText {#text} at (0,0) size 0x0
+layer at (13,13) size 166x17
+  RenderBlock {DIV} at (3,3) size 166x17
+RenderText {#text} at (0,0) size 108x17
+  text run at (0,0) width 108: "some sample text"
+selection start: position 5 of child 0 {#text} of child 0 {DIV} of {#document-fragment} of child 1 {INPUT} of body
+selection end:   position 15 of child 0 {#text} of child 0 {DIV} of {#document-fragment} of child 1 {INPUT} of body


Added: trunk/LayoutTests/platform/wpe/fast/events/event-listener-on-link-expected.txt (0 => 221680)

--- trunk/LayoutTests/platform/wpe/fast/events/event-listener-on-link-expected.t

[webkit-changes] [221679] trunk/Tools

2017-09-06 Thread dbates
Title: [221679] trunk/Tools








Revision 221679
Author dba...@webkit.org
Date 2017-09-06 09:55:49 -0700 (Wed, 06 Sep 2017)


Log Message
Copy WebKit Permalink may generate wrong URL with SVN checkout
https://bugs.webkit.org/show_bug.cgi?id=176427

Reviewed by Darin Adler.

Fixes an issue where Copy WebKit Permalink would generate an incorrect URL for
any file not in the top-level directory of the repository when using an SVN
checkout of WebKit.

Copy WebKit Permalink changes directories to the containing directory D of the
active Xcode document F before running "svn info ". Currently we use
the value of "Path" from the output of "svn info" when generating the permalink.
This path is relative to D. But we want the path to F relative to the top-level
checkout directory. We need to explicitly compute this.

* CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow:

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow




Diff

Modified: trunk/Tools/ChangeLog (221678 => 221679)

--- trunk/Tools/ChangeLog	2017-09-06 16:39:45 UTC (rev 221678)
+++ trunk/Tools/ChangeLog	2017-09-06 16:55:49 UTC (rev 221679)
@@ -1,3 +1,22 @@
+2017-09-06  Daniel Bates  
+
+Copy WebKit Permalink may generate wrong URL with SVN checkout
+https://bugs.webkit.org/show_bug.cgi?id=176427
+
+Reviewed by Darin Adler.
+
+Fixes an issue where Copy WebKit Permalink would generate an incorrect URL for
+any file not in the top-level directory of the repository when using an SVN
+checkout of WebKit.
+
+Copy WebKit Permalink changes directories to the containing directory D of the
+active Xcode document F before running "svn info ". Currently we use
+the value of "Path" from the output of "svn info" when generating the permalink.
+This path is relative to D. But we want the path to F relative to the top-level
+checkout directory. We need to explicitly compute this.
+
+* CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow:
+
 2017-09-06  Carlos Garcia Campos  
 
 [GTK] Bump freetype version to 2.8.0


Modified: trunk/Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow (221678 => 221679)

--- trunk/Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow	2017-09-06 16:39:45 UTC (rev 221678)
+++ trunk/Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow	2017-09-06 16:55:49 UTC (rev 221679)
@@ -200,50 +200,50 @@
 
 function pathRelativeToRepositoryRootForPath(path)
 {
-var checkoutDirectory = isDirectory(path) ? path : dirname(path);
+var directoryInCheckout = isDirectory(path) ? path : dirname(path);
 if (g_isSVN)
-return svnPathRelativeToRepositoryRootForPath(path, checkoutDirectory);
+return svnPathRelativeToRepositoryRootForPath(path, directoryInCheckout);
 if (g_isGit)
-return gitPathRelativeToRepositoryRootForPath(path, checkoutDirectory);
+return gitPathRelativeToRepositoryRootForPath(path, directoryInCheckout);
 return "";
 }
 
-function gitPathRelativeToRepositoryRootForPath(path, checkoutDirectory)
+function gitPathRelativeToRepositoryRootForPath(path, directoryInCheckout)
 {
-return App.doShellScript(`git -C '${checkoutDirectory}' ls-tree --full-name --name-only HEAD '${path}'`);
+return App.doShellScript(`git -C '${directoryInCheckout}' ls-tree --full-name --name-only HEAD '${path}'`);
 }
 
-function svnPathRelativeToRepositoryRootForPath(path, checkoutDirectory)
+function svnPathRelativeToRepositoryRootForPath(path, directoryInCheckout)
 {
-return svnInfoForPath(path, checkoutDirectory).path;
+return svnInfoForPath(path, directoryInCheckout).path;
 }
 
 function revisionInfoForPath(path)
 {
-var checkoutDirectory = isDirectory(path) ? path : dirname(path);
+var directoryInCheckout = isDirectory(path) ? path : dirname(path);
 if (g_isSVN || g_isGitSVN)
-return svnRevisionInfoForPath(path, checkoutDirectory);
+return svnRevisionInfoForPath(path, directoryInCheckout);
 if (g_isGit)
-return gitRevisionInfoForPath(path, checkoutDirectory);
+return gitRevisionInfoForPath(path, directoryInCheckout);
 return "";
 }
 
-function svnRevisionInfoForPath(path, checkoutDirectory)
+function svnRevisionInfoForPath(path, directoryInCheckout)
 {
-var svnInfo = svnInfoForPath(path, checkoutDirectory);
+var svnInfo = svnInfoForPath(path, directoryInCheckout);
 return { "branch": svnInfo.branch, "revision": svnInfo.revision, "repositoryURL": svnInfo.repositoryRoot };
 }
 
-function gitRevisionInfoForPath(path, checkoutDirectory)
+function gitRevisionInfoForPath(path, directoryInCheckout)
 {
-var repositoryURL = App.doShellScript(`git -C '${checkoutDirectory}' remote get-url origin`);
-var revision = App.doShellScript(`git -C '${checkoutDirectory}' log -1 --for

[webkit-changes] [221677] trunk/Source/WebCore

2017-09-06 Thread tpopela
Title: [221677] trunk/Source/WebCore








Revision 221677
Author tpop...@redhat.com
Date 2017-09-06 09:37:57 -0700 (Wed, 06 Sep 2017)


Log Message
Missing break in URLParser
https://bugs.webkit.org/show_bug.cgi?id=176357

Reviewed by Darin Adler.

Add a missing break so the currently set state is not overwritten
after the block. Found by Coverity scan.

* platform/URLParser.cpp:
(WebCore::URLParser::parse):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/URLParser.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (221676 => 221677)

--- trunk/Source/WebCore/ChangeLog	2017-09-06 16:25:52 UTC (rev 221676)
+++ trunk/Source/WebCore/ChangeLog	2017-09-06 16:37:57 UTC (rev 221677)
@@ -1,3 +1,16 @@
+2017-09-06  Tomas Popela  
+
+Missing break in URLParser
+https://bugs.webkit.org/show_bug.cgi?id=176357
+
+Reviewed by Darin Adler.
+
+Add a missing break so the currently set state is not overwritten
+after the block. Found by Coverity scan.
+
+* platform/URLParser.cpp:
+(WebCore::URLParser::parse):
+
 2017-09-06  Dominik Röttsches  
 
 [GTK] Bump freetype version to 2.8.0


Modified: trunk/Source/WebCore/platform/URLParser.cpp (221676 => 221677)

--- trunk/Source/WebCore/platform/URLParser.cpp	2017-09-06 16:25:52 UTC (rev 221676)
+++ trunk/Source/WebCore/platform/URLParser.cpp	2017-09-06 16:37:57 UTC (rev 221677)
@@ -1253,6 +1253,7 @@
 m_asciiBuffer.clear();
 state = State::NoScheme;
 c = beginAfterControlAndSpace;
+break;
 }
 state = State::Scheme;
 } else






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [221670] trunk

2017-09-06 Thread carlosgc
Title: [221670] trunk








Revision 221670
Author carlo...@webkit.org
Date 2017-09-06 08:10:56 -0700 (Wed, 06 Sep 2017)


Log Message
[GTK] Bump freetype version to 2.8.0
https://bugs.webkit.org/show_bug.cgi?id=176351

Source/WebCore:

Patch by Dominik Röttsches  on 2017-09-06
Reviewed by Carlos Alberto Lopez Perez.

Retrieving line spacing info without metrics hinting - FreeType's metric hinting
uses rounding which results in the sum of ascent and descent being larger
than the line height. To work around this without globally disabling font metrics
hinting, I am temporarily creating a new cairo scaled font with metrics hinting
off and retrieving the height values from this one.

* platform/graphics/freetype/SimpleFontDataFreeType.cpp:
(WebCore::scaledFontWithoutMetricsHinting): New function to clone the existing font, only with metrics hinting
disabled.
(WebCore::Font::platformInit): Get height info from non-metrics hinted font, disable rounding for linespacing.

Tools:

Reviewed by Carlos Alberto Lopez Perez.

Remove the patch we were using since it was reverted upstream.

* gtk/jhbuild.modules:
* gtk/patches/freetype6-2.4.11-truetype-font-height-fix.patch: Removed.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp
trunk/Tools/ChangeLog
trunk/Tools/gtk/jhbuild.modules


Removed Paths

trunk/Tools/gtk/patches/freetype6-2.4.11-truetype-font-height-fix.patch




Diff

Modified: trunk/Source/WebCore/ChangeLog (221669 => 221670)

--- trunk/Source/WebCore/ChangeLog	2017-09-06 12:42:46 UTC (rev 221669)
+++ trunk/Source/WebCore/ChangeLog	2017-09-06 15:10:56 UTC (rev 221670)
@@ -1,3 +1,21 @@
+2017-09-06  Dominik Röttsches  
+
+[GTK] Bump freetype version to 2.8.0
+https://bugs.webkit.org/show_bug.cgi?id=176351
+
+Reviewed by Carlos Alberto Lopez Perez.
+
+Retrieving line spacing info without metrics hinting - FreeType's metric hinting
+uses rounding which results in the sum of ascent and descent being larger
+than the line height. To work around this without globally disabling font metrics
+hinting, I am temporarily creating a new cairo scaled font with metrics hinting
+off and retrieving the height values from this one.
+
+* platform/graphics/freetype/SimpleFontDataFreeType.cpp:
+(WebCore::scaledFontWithoutMetricsHinting): New function to clone the existing font, only with metrics hinting
+disabled.
+(WebCore::Font::platformInit): Get height info from non-metrics hinted font, disable rounding for linespacing.
+
 2017-09-06  Frédéric Wang  
 
 Introduce ScrollingTreeScrollingNodeDelegateIOS to share code between overflow and frame scrolling


Modified: trunk/Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp (221669 => 221670)

--- trunk/Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp	2017-09-06 12:42:46 UTC (rev 221669)
+++ trunk/Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp	2017-09-06 15:10:56 UTC (rev 221670)
@@ -33,6 +33,7 @@
 #include "config.h"
 #include "Font.h"
 
+#include "CairoUniquePtr.h"
 #include "CairoUtilities.h"
 #include "FloatConversion.h"
 #include "FloatRect.h"
@@ -40,6 +41,7 @@
 #include "FontDescription.h"
 #include "GlyphBuffer.h"
 #include "OpenTypeTypes.h"
+#include "RefPtrCairo.h"
 #include "UTF16UChar32Iterator.h"
 #include 
 #include 
@@ -52,6 +54,18 @@
 
 namespace WebCore {
 
+static RefPtr scaledFontWithoutMetricsHinting(cairo_scaled_font_t* scaledFont)
+{
+CairoUniquePtr fontOptions(cairo_font_options_create());
+cairo_scaled_font_get_font_options(scaledFont, fontOptions.get());
+cairo_font_options_set_hint_metrics(fontOptions.get(), CAIRO_HINT_METRICS_OFF);
+cairo_matrix_t fontMatrix;
+cairo_scaled_font_get_font_matrix(scaledFont, &fontMatrix);
+cairo_matrix_t fontCTM;
+cairo_scaled_font_get_ctm(scaledFont, &fontCTM);
+return adoptRef(cairo_scaled_font_create(cairo_scaled_font_get_font_face(scaledFont), &fontMatrix, &fontCTM, fontOptions.get()));
+}
+
 void Font::platformInit()
 {
 if (!m_platformData.size())
@@ -58,8 +72,12 @@
 return;
 
 ASSERT(m_platformData.scaledFont());
+// Temporarily create a clone that doesn't have metrics hinting in order to avoid incorrect
+// rounding resulting in incorrect baseline positioning since the sum of ascent and descent
+// becomes larger than the line height.
+auto fontWithoutMetricsHinting = scaledFontWithoutMetricsHinting(m_platformData.scaledFont());
 cairo_font_extents_t fontExtents;
-cairo_scaled_font_extents(m_platformData.scaledFont(), &fontExtents);
+cairo_scaled_font_extents(fontWithoutMetricsHinting.get(), &fontExtents);
 
 float ascent = narrowPrecisionToFloat(fontExtents.ascent);
 float descent = narrowPrecisionToFloat(fontExtents.descent);
@@ -88,9 +106,7 @@
 m_fontMetrics.setAscent(ascent);
 m_fontMe

[webkit-changes] [221669] trunk/Source

2017-09-06 Thread commit-queue
Title: [221669] trunk/Source








Revision 221669
Author commit-qu...@webkit.org
Date 2017-09-06 05:42:46 -0700 (Wed, 06 Sep 2017)


Log Message
Introduce ScrollingTreeScrollingNodeDelegateIOS to share code between overflow and frame scrolling
https://bugs.webkit.org/show_bug.cgi?id=174097

Patch by Frédéric Wang  on 2017-09-06
Reviewed by Darin Adler.

Source/WebCore:

No new tests, behavior unchanged.

* WebCore.xcodeproj/project.pbxproj: Add ScrollingTreeScrollingNodeDelegate.
* page/scrolling/ScrollingTreeScrollingNode.h: Make ScrollingTreeScrollingNodeDelegate a
friend so that it can access private members.
* page/scrolling/ScrollingTreeScrollingNodeDelegate.cpp: Added. New delegate class for a
scrolling node, which is used by the UI process.
(WebCore::ScrollingTreeScrollingNodeDelegate::ScrollingTreeScrollingNodeDelegate):
Constructor, taking the scrolling node as a parameter.
(WebCore::ScrollingTreeScrollingNodeDelegate::~ScrollingTreeScrollingNodeDelegate):
(WebCore::ScrollingTreeScrollingNodeDelegate::scrollingTree const): Expose the scrolling
tree containing the scrolling node.
(WebCore::ScrollingTreeScrollingNodeDelegate::lastCommittedScrollPosition const): Expose
the last committed scroll position of the scrolling node.
* page/scrolling/ScrollingTreeScrollingNodeDelegate.h: Added.
(WebCore::ScrollingTreeScrollingNodeDelegate::scrollingNode): Expose the scrolling node.
(WebCore::ScrollingTreeScrollingNodeDelegate::scrollingNode const): Ditto.

Source/WebKit:

This patch introduces a new ScrollingTreeScrollingNodeDelegateIOS that can be used by
WKOverflowScrollViewDelegate to communicate to the scrolling tree and nodes. It can also be
used as a helper class by ScrollingTreeOverflowScrollingNodeIOS. For now, only the non-
overriden member functions of ScrollingTreeOverflowScrollingNodeIOS are moved to that new
class. In follow-up commits, WKOverflowScrollViewDelegate can become a generic
ScrollViewDelegate and more code can be moved into the ScrollingTreeScrollingNodeDelegateIOS
file. Frame scrolling nodes will then be able to share the same UI code as overflow:auto when
iOS frame scrolling is implemented (bug 149264).

* UIProcess/RemoteLayerTree/ios/ScrollingTreeOverflowScrollingNodeIOS.h: Move non-overriden member
functions and m_updatingFromStateNode into the delegate class. Also define a member to store
that delegate.
* UIProcess/RemoteLayerTree/ios/ScrollingTreeOverflowScrollingNodeIOS.mm: Use the node delegate to
communicate to the scrolling tree and node.
(-[WKOverflowScrollViewDelegate initWithScrollingTreeNodeDelegate:]): Init with a delegate.
(-[WKOverflowScrollViewDelegate scrollViewDidScroll:]): Call the delegate function.
(-[WKOverflowScrollViewDelegate scrollViewWillBeginDragging:]): Ditto.
(-[WKOverflowScrollViewDelegate scrollViewWillEndDragging:withVelocity:targetContentOffset:]):
Use the delegate functions or pass by ScrollingTreeScrollingNodeDelegateIOS::scrollingNode().
(-[WKOverflowScrollViewDelegate scrollViewDidEndDragging:willDecelerate:]): Use the delegate
functions.
(-[WKOverflowScrollViewDelegate scrollViewDidEndDecelerating:]): Ditto.
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::ScrollingTreeOverflowScrollingNodeIOS):
Init the delegate for this class.
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::commitStateAfterChildren): Use the delegate.
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::setScrollLayerPosition): Use the delegate
function.
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateLayersAfterDelegatedScroll): Ditto.
(-[WKOverflowScrollViewDelegate initWithScrollingTreeNode:]): Deleted. This is renamed
initWithScrollingTreeNodeDelegate and accepts a delegate.
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateChildNodesAfterScroll): Deleted. Moved
to ScrollingTreeScrollingNodeDelegateIOS.
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::overflowScrollWillStart): Ditto.
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::overflowScrollDidEnd): Ditto.
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::overflowScrollViewWillStartPanGesture): Ditto.
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::scrollViewDidScroll): Ditto.
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::currentSnapPointIndicesDidChange): Ditto.
* UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.h: Added. New delegate class
for ScrollingTreeOverflowScrollingNodeIOS. The members used by WKOverflowScrollViewDelegate
are public and the others are private. ScrollingTreeOverflowScrollingNodeIOS is a friend of
ScrollingTreeScrollingNodeDelegateIOS so that it can access private members e.g.
updateChildNodesAfterScroll() or  m_updatingFromStateNode.
* UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm: Added.
(WebKit::ScrollingTreeScrollingNodeDelegateIOS::ScrollingTreeScrollingNodeDelegateIOS):
(WebKit::ScrollingTreeScrollingNodeDelegateIOS::~ScrollingTreeScrollingNodeDelegateIOS):
(WebKit::ScrollingTreeScrollingNodeDelegateIOS::updateChildNodesAfterScroll): Co

[webkit-changes] [221668] trunk

2017-09-06 Thread rego
Title: [221668] trunk








Revision 221668
Author r...@igalia.com
Date 2017-09-06 02:59:26 -0700 (Wed, 06 Sep 2017)


Log Message
[css-grid] grid shorthand should not reset the gutter properties
https://bugs.webkit.org/show_bug.cgi?id=176375

Reviewed by Sergio Villar Senin.

LayoutTests/imported/w3c:

Import new test from WPT.

* web-platform-tests/css/css-grid-1/grid-definition/grid-shorthand-001-expected.txt: Added.
* web-platform-tests/css/css-grid-1/grid-definition/grid-shorthand-001.html: Added.
* web-platform-tests/css/css-grid-1/grid-definition/w3c-import.log:

Source/WebCore:

The CSS WG has resolved that the "grid" shorthand shouldn't reset
the gutter properties anymore:
https://github.com/w3c/csswg-drafts/issues/1036

This was originally implemented in r195529, so this is somehow
a revert of that change.

Test: imported/w3c/web-platform-tests/css/css-grid-1/grid-definition/grid-shorthand-001.html

* css/CSSProperties.json:
* css/parser/CSSPropertyParser.cpp:
(WebCore::CSSPropertyParser::consumeGridShorthand):

LayoutTests:

Update the test to check the new behavior.

* fast/css-grid-layout/grid-shorthand-get-set-expected.txt:
* fast/css-grid-layout/grid-shorthand-get-set.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/css-grid-layout/grid-shorthand-get-set-expected.txt
trunk/LayoutTests/fast/css-grid-layout/grid-shorthand-get-set.html
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/grid-definition/w3c-import.log
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/CSSProperties.json
trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp


Added Paths

trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/grid-definition/grid-shorthand-001-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/grid-definition/grid-shorthand-001.html




Diff

Modified: trunk/LayoutTests/ChangeLog (221667 => 221668)

--- trunk/LayoutTests/ChangeLog	2017-09-06 08:17:59 UTC (rev 221667)
+++ trunk/LayoutTests/ChangeLog	2017-09-06 09:59:26 UTC (rev 221668)
@@ -1,3 +1,15 @@
+2017-09-06  Manuel Rego Casasnovas  
+
+[css-grid] grid shorthand should not reset the gutter properties
+https://bugs.webkit.org/show_bug.cgi?id=176375
+
+Reviewed by Sergio Villar Senin.
+
+Update the test to check the new behavior.
+
+* fast/css-grid-layout/grid-shorthand-get-set-expected.txt:
+* fast/css-grid-layout/grid-shorthand-get-set.html:
+
 2017-09-06  Zan Dobersek  
 
 [WebGL2] Implement getActiveUniforms()


Modified: trunk/LayoutTests/fast/css-grid-layout/grid-shorthand-get-set-expected.txt (221667 => 221668)

--- trunk/LayoutTests/fast/css-grid-layout/grid-shorthand-get-set-expected.txt	2017-09-06 08:17:59 UTC (rev 221667)
+++ trunk/LayoutTests/fast/css-grid-layout/grid-shorthand-get-set-expected.txt	2017-09-06 09:59:26 UTC (rev 221668)
@@ -331,11 +331,11 @@
 PASS getComputedStyle(element, '').getPropertyValue('grid-auto-rows') is "auto"
 PASS element.style.gridAutoRows is "initial"
 
-Test the inherit value on reset-only subproperties (grid-*-gap)
+Test the inherit value does not affect gutter properties (grid-*-gap)
 PASS getComputedStyle(anotherElement, '').getPropertyValue('grid-column-gap') is "0px"
 PASS getComputedStyle(anotherElement, '').getPropertyValue('grid-row-gap') is "0px"
-PASS getComputedStyle(anotherElement, '').getPropertyValue('grid-column-gap') is "20px"
-PASS getComputedStyle(anotherElement, '').getPropertyValue('grid-row-gap') is "100px"
+PASS getComputedStyle(anotherElement, '').getPropertyValue('grid-column-gap') is "0px"
+PASS getComputedStyle(anotherElement, '').getPropertyValue('grid-row-gap') is "0px"
 PASS successfullyParsed is true
 
 TEST COMPLETE


Modified: trunk/LayoutTests/fast/css-grid-layout/grid-shorthand-get-set.html (221667 => 221668)

--- trunk/LayoutTests/fast/css-grid-layout/grid-shorthand-get-set.html	2017-09-06 08:17:59 UTC (rev 221667)
+++ trunk/LayoutTests/fast/css-grid-layout/grid-shorthand-get-set.html	2017-09-06 09:59:26 UTC (rev 221668)
@@ -205,7 +205,7 @@
 testGridDefinitionsSetJSValues("none", "none", "none", "none", "row", "auto", "auto", "none", "none", "none", "initial", "initial", "initial");
 
 debug("");
-debug("Test the inherit value on reset-only subproperties (grid-*-gap)");
+debug("Test the inherit value does not affect gutter properties (grid-*-gap)");
 document.body.style.gridRowGap = "100px";
 document.body.style.gridColumnGap = "20px";
 var anotherElement = document.createElement("div");
@@ -213,8 +213,8 @@
 shouldBeEqualToString("getComputedStyle(anotherElement, '').getPropertyValue('grid-column-gap')", "0px");
 shouldBeEqualToString("getComputedStyle(anotherElement, '').getPropertyValue('grid-row-gap')", "0px");
 anotherElement.style.grid = "inherit";
-shouldBeEqualToString("getComputedStyle(anotherElement, '').getPropertyValue('grid-column-gap')

[webkit-changes] [221667] trunk

2017-09-06 Thread zandobersek
Title: [221667] trunk








Revision 221667
Author zandober...@gmail.com
Date 2017-09-06 01:17:59 -0700 (Wed, 06 Sep 2017)


Log Message
[WebGL2] Implement getActiveUniforms()
https://bugs.webkit.org/show_bug.cgi?id=175203

Reviewed by Darin Adler.

Source/WebCore:

Align getActiveUniforms() WebIDL signature with the spec -- making it
return a WebGLAny object, making the program parameter non-nullable,
and making the uniformIndices parameter a sequence on GLuint values.

The getActiveUniforms() implementation in WebGL2RenderingContext
validates the passed-in program and parameter name and then calls the
GraphicsContext3D::getActiveUniforms() method, retrieving an array of
integers that represent values of the requested parameter name for
each uniform whose index was passed through uniformIndices.

Test: fast/canvas/webgl/webgl2-getActiveUniforms.html

* bindings/js/JSDOMConvertWebGL.cpp:
(WebCore::convertToJSValue):
* html/canvas/WebGL2RenderingContext.cpp:
(WebCore::WebGL2RenderingContext::getActiveUniforms):
* html/canvas/WebGL2RenderingContext.h:
* html/canvas/WebGL2RenderingContext.idl:
* html/canvas/WebGLAny.h:
* platform/graphics/GraphicsContext3D.h:
* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::getActiveUniforms):

LayoutTests:

Add a basic gl.getActiveUniforms() test that checks proper return values
for a mat4 uniform in the simple vertex shader that's used when creating
the 'standard' program through webgl-test.js utilities. The test remains
skipped on GTK+ and Windows (WebGL 2.0 disabled). Mac port skips it as
well since the shader can't be compiled properly. WPE and iOS run the
test and are passing it.

* fast/canvas/webgl/webgl2-getActiveUniforms-expected.txt: Added.
* fast/canvas/webgl/webgl2-getActiveUniforms.html: Added.
* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/gtk/TestExpectations
trunk/LayoutTests/platform/mac/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/bindings/js/JSDOMConvertWebGL.cpp
trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp
trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.h
trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.idl
trunk/Source/WebCore/html/canvas/WebGLAny.h
trunk/Source/WebCore/platform/graphics/GraphicsContext3D.h
trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp


Added Paths

trunk/LayoutTests/fast/canvas/webgl/webgl2-getActiveUniforms-expected.txt
trunk/LayoutTests/fast/canvas/webgl/webgl2-getActiveUniforms.html




Diff

Modified: trunk/LayoutTests/ChangeLog (221666 => 221667)

--- trunk/LayoutTests/ChangeLog	2017-09-06 07:23:38 UTC (rev 221666)
+++ trunk/LayoutTests/ChangeLog	2017-09-06 08:17:59 UTC (rev 221667)
@@ -1,3 +1,22 @@
+2017-09-06  Zan Dobersek  
+
+[WebGL2] Implement getActiveUniforms()
+https://bugs.webkit.org/show_bug.cgi?id=175203
+
+Reviewed by Darin Adler.
+
+Add a basic gl.getActiveUniforms() test that checks proper return values
+for a mat4 uniform in the simple vertex shader that's used when creating
+the 'standard' program through webgl-test.js utilities. The test remains
+skipped on GTK+ and Windows (WebGL 2.0 disabled). Mac port skips it as
+well since the shader can't be compiled properly. WPE and iOS run the
+test and are passing it.
+
+* fast/canvas/webgl/webgl2-getActiveUniforms-expected.txt: Added.
+* fast/canvas/webgl/webgl2-getActiveUniforms.html: Added.
+* platform/gtk/TestExpectations:
+* platform/mac/TestExpectations:
+
 2017-09-05  Chris Dumez  
 
 Unreviewed, rebaseline test after r221639.


Added: trunk/LayoutTests/fast/canvas/webgl/webgl2-getActiveUniforms-expected.txt (0 => 221667)

--- trunk/LayoutTests/fast/canvas/webgl/webgl2-getActiveUniforms-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/canvas/webgl/webgl2-getActiveUniforms-expected.txt	2017-09-06 08:17:59 UTC (rev 221667)
@@ -0,0 +1,21 @@
+CONSOLE MESSAGE: line 1: WebGL: INVALID_ENUM: getActiveUniforms: invalid parameter name
+Checks for proper getActiveUniforms() behavior on a simple WebGL 2 program.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS gl.getError() is gl.NO_ERROR
+PASS gl.getActiveUniforms(program, [mvpLocation], gl.UNIFORM_TYPE) is [gl.FLOAT_MAT4]
+PASS gl.getActiveUniforms(program, [mvpLocation], gl.UNIFORM_SIZE) is [1]
+PASS gl.getActiveUniforms(program, [mvpLocation], gl.UNIFORM_BLOCK_INDEX) is [-1]
+PASS gl.getActiveUniforms(program, [mvpLocation], gl.UNIFORM_OFFSET) is [-1]
+PASS gl.getActiveUniforms(program, [mvpLocation], gl.UNIFORM_ARRAY_STRIDE) is [-1]
+PASS gl.getActiveUniforms(program, [mvpLocation], gl.UNIFORM_MATRIX_STRIDE) is [-1]
+PASS gl.getActiveUniforms(program, [mvpLocation], gl.UNIFORM_IS_ROW_MAJOR) is [0]
+PASS gl.getError() is gl.

[webkit-changes] [221666] trunk/Tools

2017-09-06 Thread commit-queue
Title: [221666] trunk/Tools








Revision 221666
Author commit-qu...@webkit.org
Date 2017-09-06 00:23:38 -0700 (Wed, 06 Sep 2017)


Log Message
[Win] Tools/TestWebKitAPI/Tests/WTF/PriorityQueue.cpp fails to compile with MSVC 2015
https://bugs.webkit.org/show_bug.cgi?id=176442

Patch by Yoshiaki Jitsukawa  on 2017-09-06
Reviewed by Keith Miller.

* TestWebKitAPI/Tests/WTF/PriorityQueue.cpp:
(TEST):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WTF/PriorityQueue.cpp




Diff

Modified: trunk/Tools/ChangeLog (221665 => 221666)

--- trunk/Tools/ChangeLog	2017-09-06 06:48:49 UTC (rev 221665)
+++ trunk/Tools/ChangeLog	2017-09-06 07:23:38 UTC (rev 221666)
@@ -1,3 +1,13 @@
+2017-09-06  Yoshiaki Jitsukawa  
+
+[Win] Tools/TestWebKitAPI/Tests/WTF/PriorityQueue.cpp fails to compile with MSVC 2015
+https://bugs.webkit.org/show_bug.cgi?id=176442
+
+Reviewed by Keith Miller.
+
+* TestWebKitAPI/Tests/WTF/PriorityQueue.cpp:
+(TEST):
+
 2017-09-05  Darin Adler  
 
 Fix a few minor problems found while working toward removing unneeded calls to updateStyle


Modified: trunk/Tools/TestWebKitAPI/Tests/WTF/PriorityQueue.cpp (221665 => 221666)

--- trunk/Tools/TestWebKitAPI/Tests/WTF/PriorityQueue.cpp	2017-09-06 06:48:49 UTC (rev 221665)
+++ trunk/Tools/TestWebKitAPI/Tests/WTF/PriorityQueue.cpp	2017-09-06 07:23:38 UTC (rev 221666)
@@ -56,7 +56,11 @@
 TEST(WTF_PriorityQueue, Basic)
 {
 const unsigned numElements = 10;
+#if defined(_MSC_VER) && _MSC_VER < 1910 // FIXME: Remove this workaround after we drop MSVC 2015 support (https://bugs.webkit.org/show_bug.cgi?id=176443).
+PriorityQueue> queue;
+#else
 PriorityQueue queue;
+#endif
 
 EXPECT_EQ(0_z, queue.size());
 EXPECT_TRUE(queue.isEmpty());
@@ -76,7 +80,11 @@
 TEST(WTF_PriorityQueue, CustomPriorityFunction)
 {
 const unsigned numElements = 10;
+#if defined(_MSC_VER) && _MSC_VER < 1910 // FIXME: Remove this workaround after we drop MSVC 2015 support (https://bugs.webkit.org/show_bug.cgi?id=176443).
+PriorityQueue> queue;
+#else
 PriorityQueue> queue;
+#endif
 
 EXPECT_EQ(0_z, queue.size());
 EXPECT_TRUE(queue.isEmpty());
@@ -106,7 +114,11 @@
 
 TEST(WTF_PriorityQueue, MoveOnly)
 {
+#if defined(_MSC_VER) && _MSC_VER < 1910 // FIXME: Remove this workaround after we drop MSVC 2015 support (https://bugs.webkit.org/show_bug.cgi?id=176443).
+PriorityQueue>::compare> queue;
+#else
 PriorityQueue>::compare> queue;
+#endif
 
 Vector values = { 23, 54, 4, 8, 1, 2, 4, 0 };
 Vector sorted = values;
@@ -123,7 +135,11 @@
 
 TEST(WTF_PriorityQueue, DecreaseKey)
 {
+#if defined(_MSC_VER) && _MSC_VER < 1910 // FIXME: Remove this workaround after we drop MSVC 2015 support (https://bugs.webkit.org/show_bug.cgi?id=176443).
+PriorityQueue>::compare> queue;
+#else
 PriorityQueue>::compare> queue;
+#endif
 
 Vector values = { 23, 54, 4, 8, 1, 2, 4, 0 };
 Vector sorted = values;
@@ -149,7 +165,11 @@
 
 TEST(WTF_PriorityQueue, IncreaseKey)
 {
+#if defined(_MSC_VER) && _MSC_VER < 1910 // FIXME: Remove this workaround after we drop MSVC 2015 support (https://bugs.webkit.org/show_bug.cgi?id=176443).
+PriorityQueue>::compare> queue;
+#else
 PriorityQueue>::compare> queue;
+#endif
 
 Vector values = { 23, 54, 4, 8, 1, 2, 4, 0 };
 Vector sorted = values;
@@ -175,7 +195,11 @@
 
 TEST(WTF_PriorityQueue, Iteration)
 {
+#if defined(_MSC_VER) && _MSC_VER < 1910 // FIXME: Remove this workaround after we drop MSVC 2015 support (https://bugs.webkit.org/show_bug.cgi?id=176443).
+PriorityQueue>::compare> queue;
+#else
 PriorityQueue>::compare> queue;
+#endif
 
 Vector values = { 23, 54, 4, 8, 1, 2, 4, 0 };
 Vector sorted = values;
@@ -207,7 +231,11 @@
 return randomNumber;
 };
 
+#if defined(_MSC_VER) && _MSC_VER < 1910 // FIXME: Remove this workaround after we drop MSVC 2015 support (https://bugs.webkit.org/show_bug.cgi?id=176443).
+PriorityQueue> queue;
+#else
 PriorityQueue queue;
+#endif
 Vector values;
 
 enum Cases {






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes