[webkit-changes] [187018] trunk

2015-07-20 Thread timothy_horton
Title: [187018] trunk








Revision 187018
Author timothy_hor...@apple.com
Date 2015-07-19 23:38:40 -0700 (Sun, 19 Jul 2015)


Log Message
Make shrink-wrapping test a ref-test instead of pixel-test
https://bugs.webkit.org/show_bug.cgi?id=147081

Reviewed by Sam Weinig.

Source/WebCore:

Nobody runs pixel tests.

* svg/SVGPathUtilities.cpp:
(WebCore::pathIteratorForBuildingString):
(WebCore::buildStringFromPath):
* svg/SVGPathUtilities.h:
Add a helper that turns a Path into a SVG path string.

* testing/Internals.cpp:
(WebCore::Internals::pathStringWithShrinkWrappedRects):
* testing/Internals.h:
* testing/Internals.idl:
Have the internals shrink-wrap method return an SVG path instead of a DOMPath.

LayoutTests:

* fast/shrink-wrap/rect-shrink-wrap-expected.html: Added.
* fast/shrink-wrap/rect-shrink-wrap-expected.png: Removed.
* fast/shrink-wrap/rect-shrink-wrap-expected.txt: Removed.
* fast/shrink-wrap/rect-shrink-wrap.html:
SVG all the things.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/shrink-wrap/rect-shrink-wrap.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/svg/SVGPathUtilities.cpp
trunk/Source/WebCore/svg/SVGPathUtilities.h
trunk/Source/WebCore/testing/Internals.cpp
trunk/Source/WebCore/testing/Internals.h
trunk/Source/WebCore/testing/Internals.idl


Added Paths

trunk/LayoutTests/fast/shrink-wrap/rect-shrink-wrap-expected.html


Removed Paths

trunk/LayoutTests/fast/shrink-wrap/rect-shrink-wrap-expected.png
trunk/LayoutTests/fast/shrink-wrap/rect-shrink-wrap-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (187017 => 187018)

--- trunk/LayoutTests/ChangeLog	2015-07-19 23:37:45 UTC (rev 187017)
+++ trunk/LayoutTests/ChangeLog	2015-07-20 06:38:40 UTC (rev 187018)
@@ -1,3 +1,16 @@
+2015-07-19  Tim Horton  timothy_hor...@apple.com
+
+Make shrink-wrapping test a ref-test instead of pixel-test
+https://bugs.webkit.org/show_bug.cgi?id=147081
+
+Reviewed by Sam Weinig.
+
+* fast/shrink-wrap/rect-shrink-wrap-expected.html: Added.
+* fast/shrink-wrap/rect-shrink-wrap-expected.png: Removed.
+* fast/shrink-wrap/rect-shrink-wrap-expected.txt: Removed.
+* fast/shrink-wrap/rect-shrink-wrap.html:
+SVG all the things.
+
 2015-07-19  Jordan Harband  ljh...@gmail.com
 
 new Date(NaN).toJSON() must return null instead of throwing a TypeError


Added: trunk/LayoutTests/fast/shrink-wrap/rect-shrink-wrap-expected.html (0 => 187018)

--- trunk/LayoutTests/fast/shrink-wrap/rect-shrink-wrap-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/shrink-wrap/rect-shrink-wrap-expected.html	2015-07-20 06:38:40 UTC (rev 187018)
@@ -0,0 +1,215 @@
+style
+body {
+margin: 0;
+}
+/style
+
+svg id=paths width=800 height=600
+g transform=translate(20, 20)
+rect x=0 y=0 width=50 height=20 fill=rgba(0, 0, 0, 0.2) stroke=rgba(0, 0, 0, 0.5)/rect
+rect x=0 y=20 width=35 height=20 fill=rgba(0, 0, 0, 0.2) stroke=rgba(0, 0, 0, 0.5)/rect
+rect x=0 y=40 width=20 height=20 fill=rgba(0, 0, 0, 0.2) stroke=rgba(0, 0, 0, 0.5)/rect
+path d=M 0 8 L 0 8 C 5.41083e-16 3.58172 3.58172 1.50582e-15 8 1.77636e-15 L 42 0 L 42 0 C 46.4183 2.70542e-16 50 3.58172 50 8 L 50 12.5 L 50 12.5 C 50 16.6421 46.6421 20 42.5 20 L 42.5 20 L 42.5 20 C 38.3579 20 35 23.3579 35 27.5 L 35 32.5 L 35 32.5 C 35 36.6421 31.6421 40 27.5 40 L 27.5 40 L 27.5 40 C 23.3579 40 20 43.3579 20 47.5 L 20 52 L 20 52 C 20 56.4183 16.4183 60 12 60 L 8 60 L 8 60 C 3.58172 60 5.41083e-16 56.4183 0 52 L 0 48 L 8.88178e-16 40 L 0 28 L 8.88178e-16 20 Z fill=none stroke=blue stroke-width=3/path
+/g
+g transform=translate(20, 90)
+rect x=0 y=0 width=20 height=20 fill=rgba(0, 0, 0, 0.2) stroke=rgba(0, 0, 0, 0.5)/rect
+rect x=0 y=20 width=35 height=20 fill=rgba(0, 0, 0, 0.2) stroke=rgba(0, 0, 0, 0.5)/rect
+rect x=0 y=40 width=50 height=20 fill=rgba(0, 0, 0, 0.2) stroke=rgba(0, 0, 0, 0.5)/rect
+path d=M 0 8 L 0 8 C 5.41083e-16 3.58172 3.58172 1.50582e-15 8 1.77636e-15 L 12 0 L 12 0 C 16.4183 2.70542e-16 20 3.58172 20 8 L 20 12.5 L 20 12.5 C 20 16.6421 23.3579 20 27.5 20 L 27.5 20 L 27.5 20 C 31.6421 20 35 23.3579 35 27.5 L 35 32.5 L 35 32.5 C 35 36.6421 38.3579 40 42.5 40 L 42.5 40 L 42.5 40 C 46.6421 40 50 43.3579 50 47.5 L 50 52 L 50 52 C 50 56.4183 46.4183 60 42 60 L 8 60 L 8 60 C 3.58172 60 5.41083e-16 56.4183 0 52 L 0 48 L 8.88178e-16 40 L 0 28 L 8.88178e-16 20 Z fill=none stroke=blue stroke-width=3/path
+/g
+g transform=translate(80, 20)
+rect x=0 y=0 width=50 height=20 fill=rgba(0, 0, 0, 0.2) stroke=rgba(0, 0, 0, 0.5)/rect
+rect x=15 y=20 width=35 height=20 fill=rgba(0, 0, 0, 0.2) stroke=rgba(0, 0, 0, 0.5)/rect
+rect x=30 y=40 width=20 height=20 fill=rgba(0, 0, 0, 0.2) stroke=rgba(0, 0, 0, 0.5)/rect
+path d=M 0 8 L 0 8 C 5.41083e-16 3.58172 3.58172 1.50582e-15 8 1.77636e-15 L 42 0 L 42 0 C 46.4183 2.70542e-16 50 3.58172 50 8 L 50 12 L 50 20 

[webkit-changes] [187024] trunk

2015-07-20 Thread commit-queue
Title: [187024] trunk








Revision 187024
Author commit-qu...@webkit.org
Date 2015-07-20 10:42:01 -0700 (Mon, 20 Jul 2015)


Log Message
[GTK] Add selection-changed signal to the WebKit2 API
https://bugs.webkit.org/show_bug.cgi?id=137116

Patch by Tomas Popela tpop...@redhat.com on 2015-07-20
Reviewed by Carlos Garcia Campos.

Source/WebKit2:

Add a new object WebKitWebEditor where the editing capabilities of a
WebPage will be grouped and exposed. Add the selection-changed signal
there (we used the same name as in WK1 API).

* PlatformGTK.cmake:
* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
* WebProcess/InjectedBundle/API/gtk/WebKitWebEditor.cpp: Added.
(didChangeSelection):
(webkitWebEditorCreate):
(webkit_web_editor_get_page):
* WebProcess/InjectedBundle/API/gtk/WebKitWebEditor.h: Added.
* WebProcess/InjectedBundle/API/gtk/WebKitWebEditorPrivate.h: Added.
* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
(webkitWebPageGetPage):
(webkit_web_page_get_editor):
* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h:
* WebProcess/InjectedBundle/API/gtk/WebKitWebPagePrivate.h:
* WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:

Tools:

Add a new WebProcess test TestEditor that is testing the WebKitWebEditor
(namely the selection-changed signal).

* TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
* TestWebKitAPI/Tests/WebKit2Gtk/EditorTest.cpp: Added.
(WebKitWebEditorTest::create):
(WebKitWebEditorTest::selectionChangedCallback):
(WebKitWebEditorTest::testSelectionSelectAll):
(WebKitWebEditorTest::testSelectionCollapse):
(WebKitWebEditorTest::testSelectionModifyMove):
(WebKitWebEditorTest::testSelectionModifyExtend):
(WebKitWebEditorTest::testSelectionUnselect):
(registerTests):
* TestWebKitAPI/Tests/WebKit2Gtk/TestEditor.cpp: Added.
(testWebKitWebEditorSelectionChanged):
(beforeAll):
(afterAll):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/PlatformGTK.cmake
trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPagePrivate.h
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt


Added Paths

trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebEditor.cpp
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebEditor.h
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebEditorPrivate.h
trunk/Tools/TestWebKitAPI/Tests/WebKit2Gtk/EditorTest.cpp
trunk/Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestEditor.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (187023 => 187024)

--- trunk/Source/WebKit2/ChangeLog	2015-07-20 17:08:10 UTC (rev 187023)
+++ trunk/Source/WebKit2/ChangeLog	2015-07-20 17:42:01 UTC (rev 187024)
@@ -1,3 +1,29 @@
+2015-07-20  Tomas Popela  tpop...@redhat.com
+
+[GTK] Add selection-changed signal to the WebKit2 API
+https://bugs.webkit.org/show_bug.cgi?id=137116
+
+Reviewed by Carlos Garcia Campos.
+
+Add a new object WebKitWebEditor where the editing capabilities of a
+WebPage will be grouped and exposed. Add the selection-changed signal
+there (we used the same name as in WK1 API).
+
+* PlatformGTK.cmake:
+* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
+* WebProcess/InjectedBundle/API/gtk/WebKitWebEditor.cpp: Added.
+(didChangeSelection):
+(webkitWebEditorCreate):
+(webkit_web_editor_get_page):
+* WebProcess/InjectedBundle/API/gtk/WebKitWebEditor.h: Added.
+* WebProcess/InjectedBundle/API/gtk/WebKitWebEditorPrivate.h: Added.
+* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
+(webkitWebPageGetPage):
+(webkit_web_page_get_editor):
+* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h:
+* WebProcess/InjectedBundle/API/gtk/WebKitWebPagePrivate.h:
+* WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
+
 2015-07-16  Anders Carlsson  ander...@apple.com
 
 WebsiteDataStore operations need to grab background assertions


Modified: trunk/Source/WebKit2/PlatformGTK.cmake (187023 => 187024)

--- trunk/Source/WebKit2/PlatformGTK.cmake	2015-07-20 17:08:10 UTC (rev 187023)
+++ trunk/Source/WebKit2/PlatformGTK.cmake	2015-07-20 17:42:01 UTC (rev 187024)
@@ -314,6 +314,7 @@
 
 WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp
 WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp
+WebProcess/InjectedBundle/API/gtk/WebKitWebEditor.cpp
 WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp
 WebProcess/InjectedBundle/API/gtk/WebKitWebHitTestResult.cpp
 WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp
@@ -418,6 +419,7 @@
 set(WebKit2WebExtension_INSTALLED_HEADERS
 

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

2015-07-20 Thread fpizlo
Title: [187028] trunk/Source/_javascript_Core








Revision 187028
Author fpi...@apple.com
Date 2015-07-20 12:04:19 -0700 (Mon, 20 Jul 2015)


Log Message
REGRESSION(186691): OSR entry is broken on loop headers that have no live variables
https://bugs.webkit.org/show_bug.cgi?id=147074
rdar://problem/21869970

Reviewed by Michael Saboff.

The OSR entry must-handle block/value widening introduced in r186691 would cause the
CFA to reexecute if it caused any live local variables to change value. But this fails
if the must-handle block has no live local variables, and the entry block otherwise
appears to be unreachable.

This fixes the bug by having the change detection include whether the block hadn't been
visited in addition to whether any local variable values got widened.

This is a ~4% speed-up on SunSpider in browser.

* dfg/DFGCFAPhase.cpp:
(JSC::DFG::CFAPhase::run):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/dfg/DFGCFAPhase.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (187027 => 187028)

--- trunk/Source/_javascript_Core/ChangeLog	2015-07-20 18:51:41 UTC (rev 187027)
+++ trunk/Source/_javascript_Core/ChangeLog	2015-07-20 19:04:19 UTC (rev 187028)
@@ -1,3 +1,24 @@
+2015-07-18  Filip Pizlo  fpi...@apple.com
+
+REGRESSION(186691): OSR entry is broken on loop headers that have no live variables
+https://bugs.webkit.org/show_bug.cgi?id=147074
+rdar://problem/21869970
+
+Reviewed by Michael Saboff.
+
+The OSR entry must-handle block/value widening introduced in r186691 would cause the
+CFA to reexecute if it caused any live local variables to change value. But this fails
+if the must-handle block has no live local variables, and the entry block otherwise
+appears to be unreachable.
+
+This fixes the bug by having the change detection include whether the block hadn't been
+visited in addition to whether any local variable values got widened.
+
+This is a ~4% speed-up on SunSpider in browser.
+
+* dfg/DFGCFAPhase.cpp:
+(JSC::DFG::CFAPhase::run):
+
 2015-07-20  Mark Lam  mark@apple.com
 
 Rollout r187020 and r187021: breaks JSC API tests on debug builds.


Modified: trunk/Source/_javascript_Core/dfg/DFGCFAPhase.cpp (187027 => 187028)

--- trunk/Source/_javascript_Core/dfg/DFGCFAPhase.cpp	2015-07-20 18:51:41 UTC (rev 187027)
+++ trunk/Source/_javascript_Core/dfg/DFGCFAPhase.cpp	2015-07-20 19:04:19 UTC (rev 187028)
@@ -107,7 +107,7 @@
 m_graph, resultFor(node-variableAccessData()-flushFormat()));
 }
 
-if (changed) {
+if (changed || !block-cfaHasVisited) {
 m_changed = true;
 block-cfaShouldRevisit = true;
 }






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


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

2015-07-20 Thread adachan
Title: [187025] trunk/Source/WebCore








Revision 187025
Author adac...@apple.com
Date 2015-07-20 11:05:59 -0700 (Mon, 20 Jul 2015)


Log Message
Fix deadlock between -[AVPlayerItem currentTime] and -[AVPlayer isExternalPlaybackActive]
https://bugs.webkit.org/show_bug.cgi?id=147085
rdar://problem/21878275

Reviewed by Jer Noble.

* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::isPlayingAudioDidChange):
Call Document::updateIsPlayingMedia() on the main thread, since we could be on the audio I/O
thread here and the Document::updateIsPlayingMedia() call could block, causing a deadlock.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/webaudio/AudioContext.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (187024 => 187025)

--- trunk/Source/WebCore/ChangeLog	2015-07-20 17:42:01 UTC (rev 187024)
+++ trunk/Source/WebCore/ChangeLog	2015-07-20 18:05:59 UTC (rev 187025)
@@ -1,3 +1,16 @@
+2015-07-18  Ada Chan  adac...@apple.com
+
+Fix deadlock between -[AVPlayerItem currentTime] and -[AVPlayer isExternalPlaybackActive]
+https://bugs.webkit.org/show_bug.cgi?id=147085
+rdar://problem/21878275
+
+Reviewed by Jer Noble.
+
+* Modules/webaudio/AudioContext.cpp:
+(WebCore::AudioContext::isPlayingAudioDidChange):
+Call Document::updateIsPlayingMedia() on the main thread, since we could be on the audio I/O
+thread here and the Document::updateIsPlayingMedia() call could block, causing a deadlock.
+
 2015-07-20  Alex Christensen  achristen...@webkit.org
 
 Resurrect CMake build on Windows.


Modified: trunk/Source/WebCore/Modules/webaudio/AudioContext.cpp (187024 => 187025)

--- trunk/Source/WebCore/Modules/webaudio/AudioContext.cpp	2015-07-20 17:42:01 UTC (rev 187024)
+++ trunk/Source/WebCore/Modules/webaudio/AudioContext.cpp	2015-07-20 18:05:59 UTC (rev 187025)
@@ -1069,7 +1069,12 @@
 
 void AudioContext::isPlayingAudioDidChange()
 {
-document()-updateIsPlayingMedia();
+// Make sure to call Document::updateIsPlayingMedia() on the main thread, since
+// we could be on the audio I/O thread here and the call into WebCore could block.
+RefPtrAudioContext strongThis(this);
+callOnMainThread([strongThis] {
+strongThis-document()-updateIsPlayingMedia();
+});
 }
 
 void AudioContext::fireCompletionEvent()






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


[webkit-changes] [187026] trunk/Source

2015-07-20 Thread mark . lam
Title: [187026] trunk/Source








Revision 187026
Author mark@apple.com
Date 2015-07-20 11:12:56 -0700 (Mon, 20 Jul 2015)


Log Message
Rollout r187020 and r187021: breaks JSC API tests on debug builds.
https://bugs.webkit.org/show_bug.cgi?id=147110

Source/_javascript_Core:

* heap/MachineStackMarker.cpp:
(JSC::MachineThreads::addCurrentThread):
* runtime/JSLock.cpp:
(JSC::JSLockHolder::~JSLockHolder):
(JSC::JSLock::JSLock):
(JSC::JSLock::willDestroyVM):
(JSC::JSLock::setExclusiveThread):
(JSC::JSLock::lock):
(JSC::JSLock::unlock):
(JSC::JSLock::currentThreadIsHoldingLock):
(JSC::JSLock::dropAllLocks):
* runtime/JSLock.h:
(JSC::JSLock::vm):
(JSC::JSLock::hasExclusiveThread):
(JSC::JSLock::exclusiveThread):
* runtime/VM.h:
(JSC::VM::hasExclusiveThread):
(JSC::VM::exclusiveThread):
(JSC::VM::setExclusiveThread):

Source/WebCore:

* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::commonVM):

Source/WTF:

* wtf/WTFThreadData.cpp:
(WTF::WTFThreadData::WTFThreadData):
* wtf/WTFThreadData.h:
(WTF::WTFThreadData::stack):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/heap/MachineStackMarker.cpp
trunk/Source/_javascript_Core/runtime/JSLock.cpp
trunk/Source/_javascript_Core/runtime/JSLock.h
trunk/Source/_javascript_Core/runtime/VM.h
trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/WTFThreadData.cpp
trunk/Source/WTF/wtf/WTFThreadData.h
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/bindings/js/JSDOMWindowBase.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (187025 => 187026)

--- trunk/Source/_javascript_Core/ChangeLog	2015-07-20 18:05:59 UTC (rev 187025)
+++ trunk/Source/_javascript_Core/ChangeLog	2015-07-20 18:12:56 UTC (rev 187026)
@@ -1,3 +1,28 @@
+2015-07-20  Mark Lam  mark@apple.com
+
+Rollout r187020 and r187021: breaks JSC API tests on debug builds.
+https://bugs.webkit.org/show_bug.cgi?id=147110
+
+* heap/MachineStackMarker.cpp:
+(JSC::MachineThreads::addCurrentThread):
+* runtime/JSLock.cpp:
+(JSC::JSLockHolder::~JSLockHolder):
+(JSC::JSLock::JSLock):
+(JSC::JSLock::willDestroyVM):
+(JSC::JSLock::setExclusiveThread):
+(JSC::JSLock::lock):
+(JSC::JSLock::unlock):
+(JSC::JSLock::currentThreadIsHoldingLock):
+(JSC::JSLock::dropAllLocks):
+* runtime/JSLock.h:
+(JSC::JSLock::vm):
+(JSC::JSLock::hasExclusiveThread):
+(JSC::JSLock::exclusiveThread):
+* runtime/VM.h:
+(JSC::VM::hasExclusiveThread):
+(JSC::VM::exclusiveThread):
+(JSC::VM::setExclusiveThread):
+
 2015-07-20  Per Arne Vollan  pe...@outlook.com
 
 Unreviewed debug build fix after r187020.


Modified: trunk/Source/_javascript_Core/heap/MachineStackMarker.cpp (187025 => 187026)

--- trunk/Source/_javascript_Core/heap/MachineStackMarker.cpp	2015-07-20 18:05:59 UTC (rev 187025)
+++ trunk/Source/_javascript_Core/heap/MachineStackMarker.cpp	2015-07-20 18:12:56 UTC (rev 187026)
@@ -284,7 +284,7 @@
 
 void MachineThreads::addCurrentThread()
 {
-ASSERT(!m_heap-vm()-hasExclusiveThread() || m_heap-vm()-exclusiveThread() == currentThread());
+ASSERT(!m_heap-vm()-hasExclusiveThread() || m_heap-vm()-exclusiveThread() == std::this_thread::get_id());
 
 if (threadSpecificGet(m_threadSpecific)) {
 ASSERT(threadSpecificGet(m_threadSpecific) == this);


Modified: trunk/Source/_javascript_Core/runtime/JSLock.cpp (187025 => 187026)

--- trunk/Source/_javascript_Core/runtime/JSLock.cpp	2015-07-20 18:05:59 UTC (rev 187025)
+++ trunk/Source/_javascript_Core/runtime/JSLock.cpp	2015-07-20 18:12:56 UTC (rev 187026)
@@ -26,6 +26,7 @@
 #include JSGlobalObject.h
 #include JSObject.h
 #include JSCInlines.h
+#include thread
 
 namespace JSC {
 
@@ -77,7 +78,7 @@
 }
 
 JSLock::JSLock(VM* vm)
-: m_ownerThreadID(0)
+: m_ownerThreadID(std::thread::id())
 , m_lockCount(0)
 , m_lockDropDepth(0)
 , m_hasExclusiveThread(false)
@@ -96,10 +97,10 @@
 m_vm = nullptr;
 }
 
-void JSLock::setExclusiveThread(ThreadIdentifier threadId)
+void JSLock::setExclusiveThread(std::thread::id threadId)
 {
-RELEASE_ASSERT(!m_lockCount  !m_ownerThreadID);
-m_hasExclusiveThread = !!threadId;
+RELEASE_ASSERT(!m_lockCount  m_ownerThreadID == std::thread::id());
+m_hasExclusiveThread = (threadId != std::thread::id());
 m_ownerThreadID = threadId;
 }
 
@@ -118,7 +119,7 @@
 
 if (!m_hasExclusiveThread) {
 m_lock.lock();
-m_ownerThreadID = currentThread();
+m_ownerThreadID = std::this_thread::get_id();
 }
 ASSERT(!m_lockCount);
 m_lockCount = lockCount;
@@ -166,7 +167,7 @@
 if (!m_lockCount) {
 
 if (!m_hasExclusiveThread) {
-m_ownerThreadID = 0;
+m_ownerThreadID = std::thread::id();
 m_lock.unlock();
 }
 }
@@ -199,17 +200,17 @@
 
 bool JSLock::currentThreadIsHoldingLock()
 {
-

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

2015-07-20 Thread bfulgham
Title: [187027] trunk/Source/WebKit








Revision 187027
Author bfulg...@apple.com
Date 2015-07-20 11:51:41 -0700 (Mon, 20 Jul 2015)


Log Message
[Win] Certain Debug builds can take close to 3 hours to link
https://bugs.webkit.org/show_bug.cgi?id=147114
rdar://problem/21882777

Reviewed by Tim Horton.

Correct the 64-bit DebugSuffix link target to match the 32-bit version.

* WebKit.vcxproj/WebKit/WebKit.vcxproj: Turn off the REF and ICF
flags for the 64-bit DebugSuffix link target.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj




Diff

Modified: trunk/Source/WebKit/ChangeLog (187026 => 187027)

--- trunk/Source/WebKit/ChangeLog	2015-07-20 18:12:56 UTC (rev 187026)
+++ trunk/Source/WebKit/ChangeLog	2015-07-20 18:51:41 UTC (rev 187027)
@@ -1,3 +1,16 @@
+2015-07-20  Brent Fulgham  bfulg...@apple.com
+
+[Win] Certain Debug builds can take close to 3 hours to link
+https://bugs.webkit.org/show_bug.cgi?id=147114
+rdar://problem/21882777
+
+Reviewed by Tim Horton.
+
+Correct the 64-bit DebugSuffix link target to match the 32-bit version.
+
+* WebKit.vcxproj/WebKit/WebKit.vcxproj: Turn off the REF and ICF
+flags for the 64-bit DebugSuffix link target.
+
 2015-07-20  Alex Christensen  achristen...@webkit.org
 
 Resurrect CMake build on Windows.


Modified: trunk/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj (187026 => 187027)

--- trunk/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj	2015-07-20 18:12:56 UTC (rev 187026)
+++ trunk/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj	2015-07-20 18:51:41 UTC (rev 187027)
@@ -233,6 +233,9 @@
 Link /
 ClCompile /
 Link /
+Link
+  OptimizeReferencesfalse/OptimizeReferences
+/Link
   /ItemDefinitionGroup
   ItemDefinitionGroup Condition='$(Configuration)|$(Platform)'=='Release|Win32'
 Link /
@@ -287,6 +290,11 @@
   EnableCOMDATFoldingfalse/EnableCOMDATFolding
 /Link
   /ItemDefinitionGroup
+  ItemDefinitionGroup Condition='$(Configuration)|$(Platform)'=='DebugSuffix|x64'
+Link
+  EnableCOMDATFoldingfalse/EnableCOMDATFolding
+/Link
+  /ItemDefinitionGroup
   ItemGroup
 ClCompile Include=..\..\Storage\StorageAreaImpl.cpp /
 ClCompile Include=..\..\Storage\StorageAreaSync.cpp /






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


[webkit-changes] [187023] trunk/Source/WebKit2

2015-07-20 Thread andersca
Title: [187023] trunk/Source/WebKit2








Revision 187023
Author ander...@apple.com
Date 2015-07-20 10:08:10 -0700 (Mon, 20 Jul 2015)


Log Message
WebsiteDataStore operations need to grab background assertions
https://bugs.webkit.org/show_bug.cgi?id=147015
rdar://problem/21799011

Reviewed by Sam Weinig.

* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::fetchWebsiteData):
(WebKit::NetworkProcessProxy::deleteWebsiteData):
(WebKit::NetworkProcessProxy::deleteWebsiteDataForOrigins):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::fetchWebsiteData):
(WebKit::WebProcessProxy::deleteWebsiteData):
(WebKit::WebProcessProxy::deleteWebsiteDataForOrigins):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp
trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (187022 => 187023)

--- trunk/Source/WebKit2/ChangeLog	2015-07-20 15:55:03 UTC (rev 187022)
+++ trunk/Source/WebKit2/ChangeLog	2015-07-20 17:08:10 UTC (rev 187023)
@@ -1,3 +1,20 @@
+2015-07-16  Anders Carlsson  ander...@apple.com
+
+WebsiteDataStore operations need to grab background assertions
+https://bugs.webkit.org/show_bug.cgi?id=147015
+rdar://problem/21799011
+
+Reviewed by Sam Weinig.
+
+* UIProcess/Network/NetworkProcessProxy.cpp:
+(WebKit::NetworkProcessProxy::fetchWebsiteData):
+(WebKit::NetworkProcessProxy::deleteWebsiteData):
+(WebKit::NetworkProcessProxy::deleteWebsiteDataForOrigins):
+* UIProcess/WebProcessProxy.cpp:
+(WebKit::WebProcessProxy::fetchWebsiteData):
+(WebKit::WebProcessProxy::deleteWebsiteData):
+(WebKit::WebProcessProxy::deleteWebsiteDataForOrigins):
+
 2015-07-19  Michael Catanzaro  mcatanz...@igalia.com
 
 Unreviewed, placate -Wmismatched-tags after r187011


Modified: trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp (187022 => 187023)

--- trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp	2015-07-20 15:55:03 UTC (rev 187022)
+++ trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp	2015-07-20 17:08:10 UTC (rev 187023)
@@ -125,16 +125,23 @@
 ASSERT(canSendMessage());
 
 uint64_t callbackID = generateCallbackID();
-m_pendingFetchWebsiteDataCallbacks.add(callbackID, WTF::move(completionHandler));
+auto token = throttler().backgroundActivityToken();
 
+m_pendingFetchWebsiteDataCallbacks.add(callbackID, [token, completionHandler](WebsiteData websiteData) {
+completionHandler(WTF::move(websiteData));
+});
+
 send(Messages::WebProcess::FetchWebsiteData(sessionID, dataTypes, callbackID), 0);
 }
 
 void NetworkProcessProxy::deleteWebsiteData(WebCore::SessionID sessionID, WebsiteDataTypes dataTypes, std::chrono::system_clock::time_point modifiedSince,  std::functionvoid () completionHandler)
 {
 auto callbackID = generateCallbackID();
+auto token = throttler().backgroundActivityToken();
 
-m_pendingDeleteWebsiteDataCallbacks.add(callbackID, WTF::move(completionHandler));
+m_pendingDeleteWebsiteDataCallbacks.add(callbackID, [token, completionHandler] {
+completionHandler();
+});
 send(Messages::NetworkProcess::DeleteWebsiteData(sessionID, dataTypes, modifiedSince, callbackID), 0);
 }
 
@@ -143,8 +150,12 @@
 ASSERT(canSendMessage());
 
 uint64_t callbackID = generateCallbackID();
-m_pendingDeleteWebsiteDataForOriginsCallbacks.add(callbackID, WTF::move(completionHandler));
+auto token = throttler().backgroundActivityToken();
 
+m_pendingDeleteWebsiteDataForOriginsCallbacks.add(callbackID, [token, completionHandler] {
+completionHandler();
+});
+
 VectorSecurityOriginData originData;
 for (auto origin : origins)
 originData.append(SecurityOriginData::fromSecurityOrigin(*origin));


Modified: trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp (187022 => 187023)

--- trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp	2015-07-20 15:55:03 UTC (rev 187022)
+++ trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp	2015-07-20 17:08:10 UTC (rev 187023)
@@ -713,8 +713,12 @@
 ASSERT(canSendMessage());
 
 uint64_t callbackID = generateCallbackID();
-m_pendingFetchWebsiteDataCallbacks.add(callbackID, WTF::move(completionHandler));
+auto token = throttler().backgroundActivityToken();
 
+m_pendingFetchWebsiteDataCallbacks.add(callbackID, [token, completionHandler](WebsiteData websiteData) {
+completionHandler(WTF::move(websiteData));
+});
+
 send(Messages::WebProcess::FetchWebsiteData(sessionID, dataTypes, callbackID), 0);
 }
 
@@ -723,8 +727,11 @@
 ASSERT(canSendMessage());
 
 uint64_t callbackID = generateCallbackID();
+auto token = throttler().backgroundActivityToken();
 
-m_pendingDeleteWebsiteDataCallbacks.add(callbackID, WTF::move(completionHandler));
+

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

2015-07-20 Thread ddkilzer
Title: [187034] trunk/Source/WebCore








Revision 187034
Author ddkil...@apple.com
Date 2015-07-20 14:20:34 -0700 (Mon, 20 Jul 2015)


Log Message
Unexpected ABI diffference between armv7 and armv7s in WebCore::GraphicsLayerCA::~GraphicsLayerCA()
http://webkit.org/b/147101

Reviewed by Michael Saboff.

* platform/graphics/transforms/TransformationMatrix.h: Align
Matrix4 on both armv7 and armv7s.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/transforms/TransformationMatrix.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (187033 => 187034)

--- trunk/Source/WebCore/ChangeLog	2015-07-20 21:16:41 UTC (rev 187033)
+++ trunk/Source/WebCore/ChangeLog	2015-07-20 21:20:34 UTC (rev 187034)
@@ -1,3 +1,13 @@
+2015-07-20  David Kilzer  ddkil...@apple.com
+
+Unexpected ABI diffference between armv7 and armv7s in WebCore::GraphicsLayerCA::~GraphicsLayerCA()
+http://webkit.org/b/147101
+
+Reviewed by Michael Saboff.
+
+* platform/graphics/transforms/TransformationMatrix.h: Align
+Matrix4 on both armv7 and armv7s.
+
 2015-07-20  Anders Carlsson  ander...@apple.com
 
 Add the necessary platform checks to iOS SPI headers


Modified: trunk/Source/WebCore/platform/graphics/transforms/TransformationMatrix.h (187033 => 187034)

--- trunk/Source/WebCore/platform/graphics/transforms/TransformationMatrix.h	2015-07-20 21:16:41 UTC (rev 187033)
+++ trunk/Source/WebCore/platform/graphics/transforms/TransformationMatrix.h	2015-07-20 21:20:34 UTC (rev 187034)
@@ -65,7 +65,7 @@
 WTF_MAKE_FAST_ALLOCATED;
 public:
 
-#if CPU(APPLE_ARMV7S) || defined(TRANSFORMATION_MATRIX_USE_X86_64_SSE2)
+#if (PLATFORM(IOS)  CPU(ARM_THUMB2)) || defined(TRANSFORMATION_MATRIX_USE_X86_64_SSE2)
 #if COMPILER(MSVC)
 __declspec(align(16)) typedef double Matrix4[4][4];
 #else






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


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

2015-07-20 Thread commit-queue
Title: [187036] trunk/Source/WebCore








Revision 187036
Author commit-qu...@webkit.org
Date 2015-07-20 14:37:18 -0700 (Mon, 20 Jul 2015)


Log Message
Allow video to rotate when app doesnt allow rotation.
https://bugs.webkit.org/show_bug.cgi?id=147121

Patch by Jeremy Jones jere...@apple.com on 2015-07-20
Reviewed by Jer Noble.

Set an SPI bool on the fullscreen video root view controller to allow it to override app rotation restrictions.
This allows video to be played in landscape in portrait only apps.

* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(WebVideoFullscreenInterfaceAVKit::setupFullscreen):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (187035 => 187036)

--- trunk/Source/WebCore/ChangeLog	2015-07-20 21:28:45 UTC (rev 187035)
+++ trunk/Source/WebCore/ChangeLog	2015-07-20 21:37:18 UTC (rev 187036)
@@ -1,3 +1,16 @@
+2015-07-20  Jeremy Jones  jere...@apple.com
+
+Allow video to rotate when app doesnt allow rotation.
+https://bugs.webkit.org/show_bug.cgi?id=147121
+
+Reviewed by Jer Noble.
+
+Set an SPI bool on the fullscreen video root view controller to allow it to override app rotation restrictions. 
+This allows video to be played in landscape in portrait only apps.
+
+* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
+(WebVideoFullscreenInterfaceAVKit::setupFullscreen):
+
 2015-07-20  Andreas Kling  akl...@apple.com
 
 Unreviewed assertion fix following r187031.


Modified: trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm (187035 => 187036)

--- trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm	2015-07-20 21:28:45 UTC (rev 187035)
+++ trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm	2015-07-20 21:37:18 UTC (rev 187036)
@@ -897,6 +897,10 @@
 -(BOOL)_isHostedInAnotherProcess;
 @end
 
+@interface UIViewController ()
+@property (nonatomic, assign, setter=_setIgnoreAppSupportedOrientations:) BOOL _ignoreAppSupportedOrientations;
+@end
+
 void WebVideoFullscreenInterfaceAVKit::setupFullscreen(PlatformLayer videoLayer, const WebCore::IntRect initialRect, UIView* parentView, HTMLMediaElementEnums::VideoFullscreenMode mode, bool allowsPictureInPicturePlayback)
 {
 ASSERT(mode != HTMLMediaElementEnums::VideoFullscreenModeNone);
@@ -916,6 +920,7 @@
 [m_window setBackgroundColor:[getUIColorClass() clearColor]];
 m_viewController = adoptNS([allocUIViewControllerInstance() init]);
 [[m_viewController view] setFrame:[m_window bounds]];
+[m_viewController _setIgnoreAppSupportedOrientations:YES];
 [m_window setRootViewController:m_viewController.get()];
 [m_window makeKeyAndVisible];
 }






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


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

2015-07-20 Thread andersca
Title: [187032] trunk/Source/WebCore








Revision 187032
Author ander...@apple.com
Date 2015-07-20 13:45:42 -0700 (Mon, 20 Jul 2015)


Log Message
Add the necessary platform checks to iOS SPI headers
https://bugs.webkit.org/show_bug.cgi?id=147120

Reviewed by Tim Horton.

* platform/spi/ios/GraphicsServicesSPI.h:
* platform/spi/ios/MediaPlayerSPI.h:
* platform/spi/ios/MobileGestaltSPI.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/spi/ios/GraphicsServicesSPI.h
trunk/Source/WebCore/platform/spi/ios/MediaPlayerSPI.h
trunk/Source/WebCore/platform/spi/ios/MobileGestaltSPI.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (187031 => 187032)

--- trunk/Source/WebCore/ChangeLog	2015-07-20 20:16:18 UTC (rev 187031)
+++ trunk/Source/WebCore/ChangeLog	2015-07-20 20:45:42 UTC (rev 187032)
@@ -1,3 +1,14 @@
+2015-07-20  Anders Carlsson  ander...@apple.com
+
+Add the necessary platform checks to iOS SPI headers
+https://bugs.webkit.org/show_bug.cgi?id=147120
+
+Reviewed by Tim Horton.
+
+* platform/spi/ios/GraphicsServicesSPI.h:
+* platform/spi/ios/MediaPlayerSPI.h:
+* platform/spi/ios/MobileGestaltSPI.h:
+
 2015-07-20  Andreas Kling  akl...@apple.com
 
 Improve behavior of media elements in page cache.


Modified: trunk/Source/WebCore/platform/spi/ios/GraphicsServicesSPI.h (187031 => 187032)

--- trunk/Source/WebCore/platform/spi/ios/GraphicsServicesSPI.h	2015-07-20 20:16:18 UTC (rev 187031)
+++ trunk/Source/WebCore/platform/spi/ios/GraphicsServicesSPI.h	2015-07-20 20:45:42 UTC (rev 187032)
@@ -26,6 +26,10 @@
 #ifndef GraphicsServicesSPI_h
 #define GraphicsServicesSPI_h
 
+#import wtf/Platform.h
+
+#if PLATFORM(IOS)
+
 #if USE(APPLE_INTERNAL_SDK)
 
 #import GraphicsServices/GraphicsServices.h
@@ -39,4 +43,6 @@
 
 WTF_EXTERN_C_END
 
+#endif
+
 #endif // GraphicsServicesSPI_h


Modified: trunk/Source/WebCore/platform/spi/ios/MediaPlayerSPI.h (187031 => 187032)

--- trunk/Source/WebCore/platform/spi/ios/MediaPlayerSPI.h	2015-07-20 20:16:18 UTC (rev 187031)
+++ trunk/Source/WebCore/platform/spi/ios/MediaPlayerSPI.h	2015-07-20 20:45:42 UTC (rev 187032)
@@ -23,6 +23,10 @@
  * THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+#import wtf/Platform.h
+
+#if PLATFORM(IOS)
+
 #import Foundation/Foundation.h
 #import UIKit/UIKit.h
 
@@ -72,3 +76,5 @@
 @end
 
 #endif
+
+#endif


Modified: trunk/Source/WebCore/platform/spi/ios/MobileGestaltSPI.h (187031 => 187032)

--- trunk/Source/WebCore/platform/spi/ios/MobileGestaltSPI.h	2015-07-20 20:16:18 UTC (rev 187031)
+++ trunk/Source/WebCore/platform/spi/ios/MobileGestaltSPI.h	2015-07-20 20:45:42 UTC (rev 187032)
@@ -26,6 +26,10 @@
 #ifndef MobileGestaltSPI_h
 #define MobileGestaltSPI_h
 
+#import wtf/Platform.h
+
+#if PLATFORM(IOS)
+
 #include CoreFoundation/CoreFoundation.h
 
 #if USE(APPLE_INTERNAL_SDK)
@@ -46,4 +50,6 @@
 EXTERN_C bool MGGetBoolAnswer(CFStringRef question);
 #endif
 
+#endif
+
 #endif // MobileGestaltSPI_h






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


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

2015-07-20 Thread akling
Title: [187035] trunk/Source/WebCore








Revision 187035
Author akl...@apple.com
Date 2015-07-20 14:28:45 -0700 (Mon, 20 Jul 2015)


Log Message
Unreviewed assertion fix following r187031.

Just have GenericEventQueue::resume() return early if the queue isn't suspended.
Suspend/Resume calls are not always symmetrical in HTMLMediaElement.

* dom/GenericEventQueue.cpp:
(WebCore::GenericEventQueue::resume):

Modified Paths

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




Diff

Modified: trunk/Source/WebCore/ChangeLog (187034 => 187035)

--- trunk/Source/WebCore/ChangeLog	2015-07-20 21:20:34 UTC (rev 187034)
+++ trunk/Source/WebCore/ChangeLog	2015-07-20 21:28:45 UTC (rev 187035)
@@ -1,3 +1,13 @@
+2015-07-20  Andreas Kling  akl...@apple.com
+
+Unreviewed assertion fix following r187031.
+
+Just have GenericEventQueue::resume() return early if the queue isn't suspended.
+Suspend/Resume calls are not always symmetrical in HTMLMediaElement.
+
+* dom/GenericEventQueue.cpp:
+(WebCore::GenericEventQueue::resume):
+
 2015-07-20  David Kilzer  ddkil...@apple.com
 
 Unexpected ABI diffference between armv7 and armv7s in WebCore::GraphicsLayerCA::~GraphicsLayerCA()


Modified: trunk/Source/WebCore/dom/GenericEventQueue.cpp (187034 => 187035)

--- trunk/Source/WebCore/dom/GenericEventQueue.cpp	2015-07-20 21:20:34 UTC (rev 187034)
+++ trunk/Source/WebCore/dom/GenericEventQueue.cpp	2015-07-20 21:28:45 UTC (rev 187035)
@@ -131,7 +131,9 @@
 
 void GenericEventQueue::resume()
 {
-ASSERT(m_isSuspended);
+if (!m_isSuspended)
+return;
+
 m_isSuspended = false;
 
 if (m_pendingEvents.isEmpty())






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


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

2015-07-20 Thread saambarati1
Title: [187033] trunk/Source/_javascript_Core








Revision 187033
Author saambara...@gmail.com
Date 2015-07-20 14:16:41 -0700 (Mon, 20 Jul 2015)


Log Message
let scoping introduced incoherent story about symbol table cloning
https://bugs.webkit.org/show_bug.cgi?id=147046

Reviewed by Filip Pizlo.

This patch now establishes a clear set of rules for how SymbolTables
are owned by CodeBlock. Every SymbolTable that is used by a bytecode
instruction must live in CodeBlock's constant register pool. When CodeBlock
is being linked, it ensures that every SymbolTable in the constant pool is cloned. 
This leaves no room for an un-cloned symbol table to be used by a bytecode instruction. 
Some instructions may refer to SymbolTable's indirectly through a JSLexicalEnvironment. 
This is fine, all JSLexicalEnvironment's are allocated with references to cloned symbol tables.

Another goal of this patch is to remove the notion that a SymbolTable is 1 to 1 
with a CodeBlock. With lexical scoping, this view of the world is no longer
correct. This patch begins to remove this assumption by making CodeBlock's
symbolTable() getter method private. There is still one place where we need
to purge our codebase of this assumption and that is the type profiler. It 
has not been updated for lexical scoping. After it is updated in 
https://bugs.webkit.org/show_bug.cgi?id=145438
we will be able to remove CodeBlock's symbolTable() getter entirely.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::nameForRegister):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::addStringSwitchJumpTable):
(JSC::CodeBlock::stringSwitchJumpTable):
(JSC::CodeBlock::evalCodeCache):
(JSC::CodeBlock::symbolTable):
* bytecode/UnlinkedCodeBlock.cpp:
(JSC::UnlinkedFunctionExecutable::visitChildren):
(JSC::UnlinkedFunctionExecutable::link):
(JSC::UnlinkedFunctionExecutable::codeBlockFor):
* bytecode/UnlinkedCodeBlock.h:
(JSC::UnlinkedCodeBlock::addExceptionHandler):
(JSC::UnlinkedCodeBlock::exceptionHandler):
(JSC::UnlinkedCodeBlock::setSymbolTableConstantIndex):
(JSC::UnlinkedCodeBlock::symbolTableConstantIndex):
(JSC::UnlinkedCodeBlock::symbolTable): Deleted.
(JSC::UnlinkedCodeBlock::setSymbolTable): Deleted.
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::generate):
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::pushLexicalScope):
(JSC::BytecodeGenerator::variableForLocalEntry):
(JSC::BytecodeGenerator::createVariable):
(JSC::BytecodeGenerator::resolveType):
(JSC::BytecodeGenerator::emitResolveScope):
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::thisRegister):
(JSC::BytecodeGenerator::instructions):
(JSC::BytecodeGenerator::symbolTable): Deleted.
* dfg/DFGGraph.h:
(JSC::DFG::Graph::baselineCodeBlockFor):
(JSC::DFG::Graph::isStrictModeFor):
(JSC::DFG::Graph::symbolTableFor): Deleted.
* jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::baselineCodeBlock):
(JSC::AssemblyHelpers::argumentsStart):
(JSC::AssemblyHelpers::symbolTableFor): Deleted.
* runtime/CommonSlowPaths.cpp:
(JSC::SLOW_PATH_DECL):
* runtime/Executable.cpp:
(JSC::FunctionExecutable::visitChildren):
(JSC::FunctionExecutable::clearUnlinkedCodeForRecompilation):
(JSC::FunctionExecutable::symbolTable): Deleted.
* runtime/Executable.h:

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp
trunk/Source/_javascript_Core/bytecode/CodeBlock.h
trunk/Source/_javascript_Core/bytecode/UnlinkedCodeBlock.cpp
trunk/Source/_javascript_Core/bytecode/UnlinkedCodeBlock.h
trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.cpp
trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.h
trunk/Source/_javascript_Core/dfg/DFGGraph.h
trunk/Source/_javascript_Core/jit/AssemblyHelpers.h
trunk/Source/_javascript_Core/runtime/CommonSlowPaths.cpp
trunk/Source/_javascript_Core/runtime/Executable.cpp
trunk/Source/_javascript_Core/runtime/Executable.h




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (187032 => 187033)

--- trunk/Source/_javascript_Core/ChangeLog	2015-07-20 20:45:42 UTC (rev 187032)
+++ trunk/Source/_javascript_Core/ChangeLog	2015-07-20 21:16:41 UTC (rev 187033)
@@ -1,3 +1,74 @@
+2015-07-20  Saam barati  saambara...@gmail.com
+
+let scoping introduced incoherent story about symbol table cloning
+https://bugs.webkit.org/show_bug.cgi?id=147046
+
+Reviewed by Filip Pizlo.
+
+This patch now establishes a clear set of rules for how SymbolTables
+are owned by CodeBlock. Every SymbolTable that is used by a bytecode
+instruction must live in CodeBlock's constant register pool. When CodeBlock
+is being linked, it ensures that every SymbolTable in the constant pool is cloned. 
+This leaves no room for an un-cloned symbol table to be used by a bytecode instruction. 
+Some instructions may refer to SymbolTable's indirectly through a JSLexicalEnvironment. 
+This is fine, all JSLexicalEnvironment's are 

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

2015-07-20 Thread achristensen
Title: [187037] trunk/Source/WebCore








Revision 187037
Author achristen...@apple.com
Date 2015-07-20 14:43:13 -0700 (Mon, 20 Jul 2015)


Log Message
[Win] Unreviewed build fix after r187022.

* platform/win/WindowsTouch.h:
Undid changes from r187022

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/win/WindowsTouch.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (187036 => 187037)

--- trunk/Source/WebCore/ChangeLog	2015-07-20 21:37:18 UTC (rev 187036)
+++ trunk/Source/WebCore/ChangeLog	2015-07-20 21:43:13 UTC (rev 187037)
@@ -1,3 +1,10 @@
+2015-07-20  Alex Christensen  achristen...@webkit.org
+
+[Win] Unreviewed build fix after r187022.
+
+* platform/win/WindowsTouch.h:
+Undid changes from r187022
+
 2015-07-20  Jeremy Jones  jere...@apple.com
 
 Allow video to rotate when app doesnt allow rotation.


Modified: trunk/Source/WebCore/platform/win/WindowsTouch.h (187036 => 187037)

--- trunk/Source/WebCore/platform/win/WindowsTouch.h	2015-07-20 21:37:18 UTC (rev 187036)
+++ trunk/Source/WebCore/platform/win/WindowsTouch.h	2015-07-20 21:43:13 UTC (rev 187037)
@@ -71,4 +71,42 @@
 #define GC_PRESSANDTAP 0x0001
 #define GC_ROLLOVER GC_PRESSANDTAP
 
+// GESTUREINFO struct definition
+typedef struct tagGESTUREINFO {
+UINT cbSize;// size, in bytes, of this structure (including variable length Args field)
+DWORD dwFlags;  // see GF_* flags
+DWORD dwID; // gesture ID, see GID_* defines
+HWND hwndTarget;// handle to window targeted by this gesture
+POINTS ptsLocation; // current location of this gesture
+DWORD dwInstanceID; // internally used
+DWORD dwSequenceID; // internally used
+ULONGLONG ullArguments; // arguments for gestures whose arguments fit in 8 BYTES
+UINT cbExtraArgs;   // size, in bytes, of extra arguments, if any, that accompany this gesture
+} GESTUREINFO, *PGESTUREINFO;
+typedef GESTUREINFO const * PCGESTUREINFO;
+
+// GESTURECONFIG struct defintion
+typedef struct tagGESTURECONFIG {
+DWORD dwID; // gesture ID
+DWORD dwWant;   // settings related to gesture ID that are to be turned on
+DWORD dwBlock;  // settings related to gesture ID that are to be turned off
+} GESTURECONFIG, *PGESTURECONFIG;
+
+/*
+ * Gesture notification structure
+ *   - The WM_GESTURENOTIFY message lParam contains a pointer to this structure.
+ *   - The WM_GESTURENOTIFY message notifies a window that gesture recognition is
+ * in progress and a gesture will be generated if one is recognized under the
+ * current gesture settings.
+ */
+typedef struct tagGESTURENOTIFYSTRUCT {
+UINT cbSize;// size, in bytes, of this structure
+DWORD dwFlags;  // unused
+HWND hwndTarget;// handle to window targeted by the gesture
+POINTS ptsLocation; // starting location
+DWORD dwInstanceID; // internally used
+} GESTURENOTIFYSTRUCT, *PGESTURENOTIFYSTRUCT;
+
+DECLARE_HANDLE(HGESTUREINFO);
+
 #endif






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


[webkit-changes] [187029] trunk/Source/WebKit2

2015-07-20 Thread ossy
Title: [187029] trunk/Source/WebKit2








Revision 187029
Author o...@webkit.org
Date 2015-07-20 12:50:54 -0700 (Mon, 20 Jul 2015)


Log Message
Fix the !ENABLE(VIDEO) build after r186396
https://bugs.webkit.org/show_bug.cgi?id=147116

Reviewed by Brent Fulgham.

* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::didClose):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/WebProcess.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (187028 => 187029)

--- trunk/Source/WebKit2/ChangeLog	2015-07-20 19:04:19 UTC (rev 187028)
+++ trunk/Source/WebKit2/ChangeLog	2015-07-20 19:50:54 UTC (rev 187029)
@@ -1,3 +1,13 @@
+2015-07-20  Csaba Osztrogonác  o...@webkit.org
+
+Fix the !ENABLE(VIDEO) build after r186396
+https://bugs.webkit.org/show_bug.cgi?id=147116
+
+Reviewed by Brent Fulgham.
+
+* WebProcess/WebProcess.cpp:
+(WebKit::WebProcess::didClose):
+
 2015-07-20  Tomas Popela  tpop...@redhat.com
 
 [GTK] Add selection-changed signal to the WebKit2 API


Modified: trunk/Source/WebKit2/WebProcess/WebProcess.cpp (187028 => 187029)

--- trunk/Source/WebKit2/WebProcess/WebProcess.cpp	2015-07-20 19:04:19 UTC (rev 187028)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.cpp	2015-07-20 19:50:54 UTC (rev 187029)
@@ -657,10 +657,12 @@
 GCController::singleton().garbageCollectSoon();
 FontCache::singleton().invalidate();
 MemoryCache::singleton().setDisabled(true);
-#endif
+#endif
 
+#if ENABLE(VIDEO)
 // FIXME(146657): This explicit media stop command should not be necessary
 PlatformMediaSessionManager::sharedManager().stopAllMediaPlaybackForProcess();
+#endif
 
 // The UI process closed this connection, shut down.
 stopRunLoop();






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


[webkit-changes] [187030] trunk/Source/WebKit2

2015-07-20 Thread mcatanzaro
Title: [187030] trunk/Source/WebKit2








Revision 187030
Author mcatanz...@igalia.com
Date 2015-07-20 13:06:27 -0700 (Mon, 20 Jul 2015)


Log Message
[Seccomp] Should be easier to debug blocked syscalls
https://bugs.webkit.org/show_bug.cgi?id=142980

These should be printed even when not running in debug mode. There is no
value in hiding errors from release build users.

Reviewed by Žan Doberšek.

* Shared/linux/SeccompFilters/SeccompBroker.cpp:
(WebKit::SeccompBroker::runLoop): Don't close stderr et. al. in release builds.
* Shared/linux/SeccompFilters/Syscall.cpp:
(WebKit::write_uint): Added.
(WebKit::reportUnexpectedSyscall): Added.
(WebKit::Syscall::createFromContext): Call reportUnexpectedSyscall. Also, no need to crash
here in release builds.
* Shared/linux/SeccompFilters/SyscallPolicy.cpp:
(WebKit::SyscallPolicy::hasPermissionForPath): Print a warning when access is denied.
(WebKit::SyscallPolicy::permissionToString): Added.
* Shared/linux/SeccompFilters/SyscallPolicy.h: Add permissionToString.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/Shared/linux/SeccompFilters/SeccompBroker.cpp
trunk/Source/WebKit2/Shared/linux/SeccompFilters/Syscall.cpp
trunk/Source/WebKit2/Shared/linux/SeccompFilters/SyscallPolicy.cpp
trunk/Source/WebKit2/Shared/linux/SeccompFilters/SyscallPolicy.h




Diff

Modified: trunk/Source/WebKit2/ChangeLog (187029 => 187030)

--- trunk/Source/WebKit2/ChangeLog	2015-07-20 19:50:54 UTC (rev 187029)
+++ trunk/Source/WebKit2/ChangeLog	2015-07-20 20:06:27 UTC (rev 187030)
@@ -1,3 +1,25 @@
+2015-07-20  Michael Catanzaro  mcatanz...@igalia.com
+
+[Seccomp] Should be easier to debug blocked syscalls
+https://bugs.webkit.org/show_bug.cgi?id=142980
+
+These should be printed even when not running in debug mode. There is no
+value in hiding errors from release build users.
+
+Reviewed by Žan Doberšek.
+
+* Shared/linux/SeccompFilters/SeccompBroker.cpp:
+(WebKit::SeccompBroker::runLoop): Don't close stderr et. al. in release builds.
+* Shared/linux/SeccompFilters/Syscall.cpp:
+(WebKit::write_uint): Added.
+(WebKit::reportUnexpectedSyscall): Added.
+(WebKit::Syscall::createFromContext): Call reportUnexpectedSyscall. Also, no need to crash
+here in release builds.
+* Shared/linux/SeccompFilters/SyscallPolicy.cpp:
+(WebKit::SyscallPolicy::hasPermissionForPath): Print a warning when access is denied.
+(WebKit::SyscallPolicy::permissionToString): Added.
+* Shared/linux/SeccompFilters/SyscallPolicy.h: Add permissionToString.
+
 2015-07-20  Csaba Osztrogonác  o...@webkit.org
 
 Fix the !ENABLE(VIDEO) build after r186396


Modified: trunk/Source/WebKit2/Shared/linux/SeccompFilters/SeccompBroker.cpp (187029 => 187030)

--- trunk/Source/WebKit2/Shared/linux/SeccompFilters/SeccompBroker.cpp	2015-07-20 19:50:54 UTC (rev 187029)
+++ trunk/Source/WebKit2/Shared/linux/SeccompFilters/SeccompBroker.cpp	2015-07-20 20:06:27 UTC (rev 187030)
@@ -320,16 +320,11 @@
 
 NO_RETURN void SeccompBroker::runLoop(int socket)
 {
-#ifndef NDEBUG
-int i = STDERR_FILENO + 1;
-#else
-int i = 0;
-#endif
-// Close all inherited file descriptors other
-// than the socket to the sandboxed process.
-for (; i  FD_SETSIZE; ++i)
+// Close unnecessary inherited file descriptors.
+for (int i = STDERR_FILENO + 1; i  FD_SETSIZE; ++i) {
 if (i != socket)
 close(i);
+}
 
 while (true) {
 char buffer[messageMaxSize];


Modified: trunk/Source/WebKit2/Shared/linux/SeccompFilters/Syscall.cpp (187029 => 187030)

--- trunk/Source/WebKit2/Shared/linux/SeccompFilters/Syscall.cpp	2015-07-20 19:50:54 UTC (rev 187029)
+++ trunk/Source/WebKit2/Shared/linux/SeccompFilters/Syscall.cpp	2015-07-20 20:06:27 UTC (rev 187030)
@@ -1,5 +1,6 @@
 /*
  * Copyright (C) 2013 Intel Corporation. All rights reserved.
+ * Copyright (C) 2015 Igalia S.L.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -32,10 +33,47 @@
 #include OpenSyscall.h
 #include SigactionSyscall.h
 #include SigprocmaskSyscall.h
+#include limits
 #include seccomp.h
+#include string.h
+#include unistd.h
 
 namespace WebKit {
 
+// The redundant constexpr const is to placate Clang's -Wwritable-strings.
+static constexpr const char* const message = Blocked unexpected syscall: ;
+
+// Since sprintf is not signal-safe, reimplement %d here. Based on code from
+// http://outflux.net/teach-seccomp by Will Drewry and Kees Cook, released under
+// the Chromium BSD license.
+static void writeUnsignedInt(char* buf, unsigned val)
+{
+int width = 0;
+unsigned tens;
+
+if (!val) {
+strcpy(buf, 0);
+return;
+}
+for (tens = val; tens; tens /= 10)
+++width;
+buf[width] = '\0';
+for (tens = val; tens; tens /= 10)
+buf[--width] = '0' + 

[webkit-changes] [187031] trunk

2015-07-20 Thread akling
Title: [187031] trunk








Revision 187031
Author akl...@apple.com
Date 2015-07-20 13:16:18 -0700 (Mon, 20 Jul 2015)


Log Message
Improve behavior of media elements in page cache.
https://webkit.org/b/147020
rdar://problem/21712311

Reviewed by Chris Dumez.

Source/WebCore:

Make improvements for media elements when transitioning in/out of page cache:

- Events that were scheduled when going into cache will now be delivered
  when the page is restored from cache.

- Data buffering is turned off while in the cache. This reduces the memory
  cost of cached pages with media elements on iOS (where mediaserverd would
  keep upcoming video frames in memory for cached pages.)

Test: media/restore-from-page-cache.html (amended)

* dom/GenericEventQueue.h:
* dom/GenericEventQueue.cpp:
(WebCore::GenericEventQueue::enqueueEvent):
(WebCore::GenericEventQueue::suspend):
(WebCore::GenericEventQueue::resume):

Add a simple suspend/resume mechanism to GenericEventQueue that can
be used to support page caching.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::stop):
(WebCore::HTMLMediaElement::suspend):
(WebCore::HTMLMediaElement::resume):
(WebCore::HTMLMediaElement::stopWithoutDestroyingMediaPlayer):

Adapt to event queueing changes and add calls to setShouldBufferData().

* html/HTMLSourceElement.h:
* html/HTMLSourceElement.cpp:
(WebCore::HTMLSourceElement::HTMLSourceElement):
(WebCore::HTMLSourceElement::create):
(WebCore::HTMLSourceElement::activeDOMObjectName):
(WebCore::HTMLSourceElement::canSuspendForPageCache):
(WebCore::HTMLSourceElement::suspend):
(WebCore::HTMLSourceElement::resume):
(WebCore::HTMLSourceElement::stop):

Turn HTMLSourceElement into an ActiveDOMObject so it gets all the
appropriate page cache notifications directly. Suspend the delayed
error event delivery timer when cached.

LayoutTests:

Add some coverage for suspend/resume of queued events on cached media elements.

* media/restore-from-page-cache-expected.txt:
* media/restore-from-page-cache.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/media/restore-from-page-cache-expected.txt
trunk/LayoutTests/media/restore-from-page-cache.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/GenericEventQueue.cpp
trunk/Source/WebCore/dom/GenericEventQueue.h
trunk/Source/WebCore/html/HTMLMediaElement.cpp
trunk/Source/WebCore/html/HTMLSourceElement.cpp
trunk/Source/WebCore/html/HTMLSourceElement.h




Diff

Modified: trunk/LayoutTests/ChangeLog (187030 => 187031)

--- trunk/LayoutTests/ChangeLog	2015-07-20 20:06:27 UTC (rev 187030)
+++ trunk/LayoutTests/ChangeLog	2015-07-20 20:16:18 UTC (rev 187031)
@@ -1,3 +1,16 @@
+2015-07-20  Andreas Kling  akl...@apple.com
+
+Improve behavior of media elements in page cache.
+https://webkit.org/b/147020
+rdar://problem/21712311
+
+Reviewed by Chris Dumez.
+
+Add some coverage for suspend/resume of queued events on cached media elements.
+
+* media/restore-from-page-cache-expected.txt:
+* media/restore-from-page-cache.html:
+
 2015-07-19  Tim Horton  timothy_hor...@apple.com
 
 Make shrink-wrapping test a ref-test instead of pixel-test


Modified: trunk/LayoutTests/media/restore-from-page-cache-expected.txt (187030 => 187031)

--- trunk/LayoutTests/media/restore-from-page-cache-expected.txt	2015-07-20 20:06:27 UTC (rev 187030)
+++ trunk/LayoutTests/media/restore-from-page-cache-expected.txt	2015-07-20 20:16:18 UTC (rev 187031)
@@ -5,8 +5,12 @@
 EVENT(canplaythrough)
 EXPECTED (loadCount == '0') OK
 *** Page going into cache
+*** Changing playbackRate just before going into cache, to schedule a ratechange event.
+*** Changing volume just before going into cache, to schedule a volumechange event.
 *** Page returned from cache
 EXPECTED (loadCount == '1') OK
 EXPECTED (videoComputedStyle.width == '320px') OK
 EXPECTED (videoComputedStyle.height == '240px') OK
+*** ratechange event fired. This should happen AFTER returning from cache.
+*** volumechange event fired. This should happen AFTER returning from cache.
 


Modified: trunk/LayoutTests/media/restore-from-page-cache.html (187030 => 187031)

--- trunk/LayoutTests/media/restore-from-page-cache.html	2015-07-20 20:06:27 UTC (rev 187030)
+++ trunk/LayoutTests/media/restore-from-page-cache.html	2015-07-20 20:16:18 UTC (rev 187031)
@@ -33,17 +33,33 @@
 setTimeout(function() { if (window.testRunner) testRunner.notifyDone(); }, 200);
 }
 }
-
+
+function pagehide()
+{
+// Have the video element generate some events that need to be suspended.
+// We use multiple events to verify that they fire in the correct order.
+consoleWrite(*** Changing playbackRate just before going into cache, to schedule a ratechange event.);
+document.getElementsByTagName(video)[0].playbackRate = 2; 
+

[webkit-changes] [187022] trunk

2015-07-20 Thread achristensen
Title: [187022] trunk








Revision 187022
Author achristen...@apple.com
Date 2015-07-20 08:55:03 -0700 (Mon, 20 Jul 2015)


Log Message
Resurrect CMake build on Windows.
https://bugs.webkit.org/show_bug.cgi?id=147083

Reviewed by Gyuyoung Kim.

.:

* Source/cmake/OptionsCommon.cmake:
* Source/cmake/OptionsWindows.cmake:
Change features to get it to compile.  Still not a complete feature set.

Source/WebCore:

* CMakeLists.txt:
* PlatformWin.cmake:
* dom/Document.cpp:
(WebCore::Document::~Document):
* dom/Range.cpp:
* dom/Text.cpp:
* editing/CompositeEditCommand.cpp:
* platform/graphics/texmap/BitmapTexturePool.cpp:
(WebCore::BitmapTexturePool::createTexture):
* platform/win/WindowsTouch.h:
* rendering/RenderThemeWin.h:
Fixed some including and compiling quirks needed for different configurations.

Source/WebKit:

* PlatformWin.cmake: Added.
Based on original work by Patrick Gansterer and Mark Salisbury
in https://bugs.webkit.org/show_bug.cgi?id=72816

Source/WTF:

* wtf/PlatformWin.cmake:

Tools:

* DumpRenderTree/CMakeLists.txt:
* DumpRenderTree/PlatformWin.cmake: Added.
* WinLauncher/CMakeLists.txt:

Modified Paths

trunk/ChangeLog
trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/PlatformWin.cmake
trunk/Source/WebCore/CMakeLists.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/PlatformWin.cmake
trunk/Source/WebCore/dom/Document.cpp
trunk/Source/WebCore/dom/Range.cpp
trunk/Source/WebCore/dom/Text.cpp
trunk/Source/WebCore/editing/CompositeEditCommand.cpp
trunk/Source/WebCore/platform/graphics/texmap/BitmapTexturePool.cpp
trunk/Source/WebCore/platform/win/WindowsTouch.h
trunk/Source/WebCore/rendering/RenderThemeWin.h
trunk/Source/WebKit/ChangeLog
trunk/Source/cmake/OptionsCommon.cmake
trunk/Source/cmake/OptionsWindows.cmake
trunk/Tools/ChangeLog
trunk/Tools/DumpRenderTree/CMakeLists.txt
trunk/Tools/WinLauncher/CMakeLists.txt


Added Paths

trunk/Source/WebKit/PlatformWin.cmake
trunk/Tools/DumpRenderTree/PlatformWin.cmake




Diff

Modified: trunk/ChangeLog (187021 => 187022)

--- trunk/ChangeLog	2015-07-20 12:04:20 UTC (rev 187021)
+++ trunk/ChangeLog	2015-07-20 15:55:03 UTC (rev 187022)
@@ -1,3 +1,14 @@
+2015-07-20  Alex Christensen  achristen...@webkit.org
+
+Resurrect CMake build on Windows.
+https://bugs.webkit.org/show_bug.cgi?id=147083
+
+Reviewed by Gyuyoung Kim.
+
+* Source/cmake/OptionsCommon.cmake:
+* Source/cmake/OptionsWindows.cmake:
+Change features to get it to compile.  Still not a complete feature set.
+
 2015-07-19  Michael Catanzaro  mcatanz...@igalia.com
 
 [GTK] Add seccomp filters support


Modified: trunk/Source/WTF/ChangeLog (187021 => 187022)

--- trunk/Source/WTF/ChangeLog	2015-07-20 12:04:20 UTC (rev 187021)
+++ trunk/Source/WTF/ChangeLog	2015-07-20 15:55:03 UTC (rev 187022)
@@ -1,3 +1,12 @@
+2015-07-20  Alex Christensen  achristen...@webkit.org
+
+Resurrect CMake build on Windows.
+https://bugs.webkit.org/show_bug.cgi?id=147083
+
+Reviewed by Gyuyoung Kim.
+
+* wtf/PlatformWin.cmake:
+
 2015-07-20  Per Arne Vollan  pe...@outlook.com
 
 _javascript_Core performance is very bad on Windows


Modified: trunk/Source/WTF/wtf/PlatformWin.cmake (187021 => 187022)

--- trunk/Source/WTF/wtf/PlatformWin.cmake	2015-07-20 12:04:20 UTC (rev 187021)
+++ trunk/Source/WTF/wtf/PlatformWin.cmake	2015-07-20 15:55:03 UTC (rev 187022)
@@ -4,8 +4,6 @@
 text/cf/StringImplCF.cpp
 text/cf/StringViewCF.cpp
 
-threads/win/BinarySemaphoreWin.cpp
-
 win/MainThreadWin.cpp
 win/RunLoopWin.cpp
 win/WTFDLL.cpp


Modified: trunk/Source/WebCore/CMakeLists.txt (187021 => 187022)

--- trunk/Source/WebCore/CMakeLists.txt	2015-07-20 12:04:20 UTC (rev 187021)
+++ trunk/Source/WebCore/CMakeLists.txt	2015-07-20 15:55:03 UTC (rev 187022)
@@ -3513,6 +3513,7 @@
 
 GENERATE_EVENT_FACTORY(${WEBCORE_DIR}/dom/EventTargetFactory.in EventTargetInterfaces.h)
 ADD_SOURCE_WEBCORE_DERIVED_DEPENDENCIES(${WEBCORE_DIR}/dom/EventNames.cpp EventTargetInterfaces.h)
+list(APPEND WebCore_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/EventTargetInterfaces.h)
 
 
 GENERATE_EXCEPTION_CODE_DESCRIPTION(${WEBCORE_DIR}/dom/DOMExceptions.in ExceptionCodeDescription.cpp)


Modified: trunk/Source/WebCore/ChangeLog (187021 => 187022)

--- trunk/Source/WebCore/ChangeLog	2015-07-20 12:04:20 UTC (rev 187021)
+++ trunk/Source/WebCore/ChangeLog	2015-07-20 15:55:03 UTC (rev 187022)
@@ -1,3 +1,23 @@
+2015-07-20  Alex Christensen  achristen...@webkit.org
+
+Resurrect CMake build on Windows.
+https://bugs.webkit.org/show_bug.cgi?id=147083
+
+Reviewed by Gyuyoung Kim.
+
+* CMakeLists.txt:
+* PlatformWin.cmake:
+* dom/Document.cpp:
+(WebCore::Document::~Document):
+* dom/Range.cpp:
+* dom/Text.cpp:
+* editing/CompositeEditCommand.cpp:
+* platform/graphics/texmap/BitmapTexturePool.cpp:
+(WebCore::BitmapTexturePool::createTexture):
+* 

[webkit-changes] [187054] trunk/Source/WebKit2

2015-07-20 Thread simon . fraser
Title: [187054] trunk/Source/WebKit2








Revision 187054
Author simon.fra...@apple.com
Date 2015-07-20 19:00:56 -0700 (Mon, 20 Jul 2015)


Log Message
Facebook in tiled fullscreen is slow
https://bugs.webkit.org/show_bug.cgi?id=147134
rdar://problem/21823349

Reviewed by Tim Horton.

TiledCoreAnimationDrawingArea::scaleViewToFitDocumentIfNeeded() could cause a page to toggle
between two fixed layout sizes differing by a pixel, because of rounding. This would cause
lots of extra layouts and painting.

This happened because the the fixed layout size was computed using ceil(m_webPage.size().width() / viewScale)

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::scaleViewToFitDocumentIfNeeded):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (187053 => 187054)

--- trunk/Source/WebKit2/ChangeLog	2015-07-21 01:08:53 UTC (rev 187053)
+++ trunk/Source/WebKit2/ChangeLog	2015-07-21 02:00:56 UTC (rev 187054)
@@ -1,3 +1,20 @@
+2015-07-20  Simon Fraser  simon.fra...@apple.com
+
+Facebook in tiled fullscreen is slow
+https://bugs.webkit.org/show_bug.cgi?id=147134
+rdar://problem/21823349
+
+Reviewed by Tim Horton.
+
+TiledCoreAnimationDrawingArea::scaleViewToFitDocumentIfNeeded() could cause a page to toggle
+between two fixed layout sizes differing by a pixel, because of rounding. This would cause
+lots of extra layouts and painting.
+
+This happened because the the fixed layout size was computed using ceil(m_webPage.size().width() / viewScale)
+
+* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
+(WebKit::TiledCoreAnimationDrawingArea::scaleViewToFitDocumentIfNeeded):
+
 2015-07-20  Wenson Hsieh  wenson_hs...@apple.com
 
 Fix crash due to RemoteLayerTreeDisplayRefreshMonitor outliving RemoteLayerTreeDrawingArea


Modified: trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm (187053 => 187054)

--- trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2015-07-21 01:08:53 UTC (rev 187053)
+++ trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2015-07-21 02:00:56 UTC (rev 187054)
@@ -283,10 +283,12 @@
 m_webPage.layoutIfNeeded();
 
 int viewWidth = m_webPage.size().width();
-bool documentWidthChangedOrInvalidated = m_webPage.mainFrame()-view()-needsLayout() || (m_lastDocumentSizeForScaleToFit.width() != m_webPage.mainFrameView()-renderView()-unscaledDocumentRect().width());
+int documentWidth = m_webPage.mainFrameView()-renderView()-unscaledDocumentRect().width();
+
+bool documentWidthChanged = m_lastDocumentSizeForScaleToFit.width() != documentWidth;
 bool viewWidthChanged = m_lastViewSizeForScaleToFit.width() != viewWidth;
 
-if (!documentWidthChangedOrInvalidated  !viewWidthChanged)
+if (!documentWidthChanged  !viewWidthChanged)
 return;
 
 // The view is now bigger than the document, so we'll re-evaluate whether we have to scale.
@@ -295,14 +297,16 @@
 
 // Our current understanding of the document width is still up to date, and we're in scaling mode.
 // Update the viewScale without doing an extra layout to re-determine the document width.
-if (m_isScalingViewToFitDocument  !documentWidthChangedOrInvalidated) {
+if (m_isScalingViewToFitDocument  !documentWidthChanged) {
+m_lastViewSizeForScaleToFit = m_webPage.size();
 float viewScale = (float)viewWidth / (float)m_lastDocumentSizeForScaleToFit.width();
-m_lastViewSizeForScaleToFit = m_webPage.size();
-viewScale = std::max(viewScale, minimumViewScale);
+if (viewScale  minimumViewScale) {
+viewScale = minimumViewScale;
+documentWidth = std::ceil(viewWidth / viewScale);
+}
+IntSize fixedLayoutSize(documentWidth, std::ceil((m_webPage.size().height() - m_webPage.corePage()-topContentInset()) / viewScale));
+m_webPage.setFixedLayoutSize(fixedLayoutSize);
 m_webPage.scaleView(viewScale);
-
-IntSize fixedLayoutSize(std::ceil(m_webPage.size().width() / viewScale), std::ceil((m_webPage.size().height() - m_webPage.corePage()-topContentInset()) / viewScale));
-m_webPage.setFixedLayoutSize(fixedLayoutSize);
 return;
 }
 
@@ -314,7 +318,7 @@
 m_lastViewSizeForScaleToFit = m_webPage.size();
 m_lastDocumentSizeForScaleToFit = documentSize;
 
-int documentWidth = documentSize.width();
+documentWidth = documentSize.width();
 
 float viewScale = 1;
 
@@ -325,8 +329,11 @@
 m_isScalingViewToFitDocument = true;
 m_webPage.setUseFixedLayout(true);
 viewScale = (float)viewWidth / (float)documentWidth;
-viewScale = std::max(viewScale, minimumViewScale);
-IntSize 

[webkit-changes] [187042] branches/safari-600.1.4.17-branch/Source/WebCore

2015-07-20 Thread lforschler
Title: [187042] branches/safari-600.1.4.17-branch/Source/WebCore








Revision 187042
Author lforsch...@apple.com
Date 2015-07-20 16:23:12 -0700 (Mon, 20 Jul 2015)


Log Message
Merged r186895.  rdar://problem/21714851

Modified Paths

branches/safari-600.1.4.17-branch/Source/WebCore/ChangeLog
branches/safari-600.1.4.17-branch/Source/WebCore/platform/network/cf/CookieJarCFNet.cpp




Diff

Modified: branches/safari-600.1.4.17-branch/Source/WebCore/ChangeLog (187041 => 187042)

--- branches/safari-600.1.4.17-branch/Source/WebCore/ChangeLog	2015-07-20 22:52:25 UTC (rev 187041)
+++ branches/safari-600.1.4.17-branch/Source/WebCore/ChangeLog	2015-07-20 23:23:12 UTC (rev 187042)
@@ -1,3 +1,19 @@
+2015-07-20  Lucas Forschler  lforsch...@apple.com
+
+Merge r186895
+
+2015-07-16  Brady Eidson  beid...@apple.com
+
+WebKit document.cookie mis-parsing.
+rdar://problem/21715050 and https://bugs.webkit.org/show_bug.cgi?id=146976
+
+Reviewed by Sam Weinig.
+
+* platform/network/cf/CookieJarCFNet.cpp:
+(WebCore::createCookies): Use new SPI if available.
+(WebCore::setCookiesFromDOM):
+* platform/spi/cf/CFNetworkSPI.h:
+
 2015-07-17  Andy Estes  aes...@apple.com
 
 Merge r186982. rdar://problem/21709404


Modified: branches/safari-600.1.4.17-branch/Source/WebCore/platform/network/cf/CookieJarCFNet.cpp (187041 => 187042)

--- branches/safari-600.1.4.17-branch/Source/WebCore/platform/network/cf/CookieJarCFNet.cpp	2015-07-20 22:52:25 UTC (rev 187041)
+++ branches/safari-600.1.4.17-branch/Source/WebCore/platform/network/cf/CookieJarCFNet.cpp	2015-07-20 23:23:12 UTC (rev 187042)
@@ -47,6 +47,12 @@
 };
 #endif
 
+#ifdef __cplusplus
+extern C CFArrayRef _CFHTTPParsedCookiesWithResponseHeaderFields(CFAllocatorRef inAllocator, CFDictionaryRef headerFields, CFURLRef inURL);
+#else
+extern CFArrayRef _CFHTTPParsedCookiesWithResponseHeaderFields(CFAllocatorRef inAllocator, CFDictionaryRef headerFields, CFURLRef inURL);
+#endif
+
 namespace WebCore {
 
 static const CFStringRef s_setCookieKeyCF = CFSTR(Set-Cookie);
@@ -112,6 +118,15 @@
 #endif
 }
 
+static CFArrayRef createCookies(CFDictionaryRef headerFields, CFURLRef url)
+{
+#if (PLATFORM(IOS)  __IPHONE_OS_VERSION_MIN_REQUIRED = 9)
+return _CFHTTPParsedCookiesWithResponseHeaderFields(kCFAllocatorDefault, headerFields, url);
+#else
+return CFHTTPCookieCreateWithResponseHeaderFields(kCFAllocatorDefault, headerFields, url);
+#endif
+}
+
 void setCookiesFromDOM(const NetworkStorageSession session, const URL firstParty, const URL url, const String value)
 {
 // rdar://problem/5632883 CFHTTPCookieStorage stores an empty cookie, which would be sent as Cookie: =.
@@ -130,10 +145,8 @@
 (const void**)s_setCookieKeyCF, (const void**)cookieStringCF, 1,
 kCFTypeDictionaryKeyCallBacks, kCFTypeDictionaryValueCallBacks));
 
-RetainPtrCFArrayRef cookiesCF = adoptCF(CFHTTPCookieCreateWithResponseHeaderFields(kCFAllocatorDefault,
-headerFieldsCF.get(), urlCF.get()));
-
-CFHTTPCookieStorageSetCookies(session.cookieStorage().get(), filterCookies(cookiesCF.get()).get(), urlCF.get(), firstPartyForCookiesCF.get());
+RetainPtrCFArrayRef unfilteredCookies = adoptCF(createCookies(headerFieldsCF.get(), urlCF.get()));
+CFHTTPCookieStorageSetCookies(session.cookieStorage().get(), filterCookies(unfilteredCookies.get()).get(), urlCF.get(), firstPartyForCookiesCF.get());
 }
 
 String cookiesForDOM(const NetworkStorageSession session, const URL firstParty, const URL url)






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


[webkit-changes] [187046] trunk/LayoutTests

2015-07-20 Thread burg
Title: [187046] trunk/LayoutTests








Revision 187046
Author b...@cs.washington.edu
Date 2015-07-20 16:35:51 -0700 (Mon, 20 Jul 2015)


Log Message
Web Inspector: start using Promises to handle asynchronous steps in protocol tests
https://bugs.webkit.org/show_bug.cgi?id=147096

Reviewed by Joseph Pecoraro.

Existing protocol tests use lots of reinvented wheels to run
multiple asynchronous tests. This patch begins consolidation of
these redundant wheels, using a tiny test framework based on
promises.

The first change is to introduce InspectorTest.awaitCommand,
which returns a promise that is fulfilled or rejected if the command
succeeds or fails. This is the building block for writing protocol
tests with promises.

The second change is the introduction of InspectorTest.AsyncTestSuite.
This properly chains together multiple asynchronous test methods
using the promise interface. A synchronous version is also added.

To demonstrate how async tests can be written using this new approach,
this patch converts existing protocol test. Test coverage for the
new frameworks also demonstrates their use.

* http/tests/inspector-protocol/resources/InspectorTest.js:
(InspectorTest.sendCommand):
(InspectorTest.awaitCommand):
(InspectorTest.sendMessage):
(InspectorFrontendAPI.dispatchMessageAsync):
(InspectorTest.AsyncTestSuite): Add tests for this micro framework.
(InspectorTest.AsyncTestSuite.prototype.get passCount):
(InspectorTest.AsyncTestSuite.prototype.get skipCount):
(InspectorTest.AsyncTestSuite.prototype.addTestCase):
(InspectorTest.AsyncTestSuite.prototype.runTestCasesAndFinish.finish):
(InspectorTest.AsyncTestSuite.prototype.runTestCasesAndFinish):
(InspectorTest.AsyncTestSuite.prototype.runTestCases):
(InspectorTest.SyncTestSuite): Add tests for this micro framework.
(InspectorTest.SyncTestSuite.prototype.get passCount):
(InspectorTest.SyncTestSuite.prototype.get skipCount):
(InspectorTest.SyncTestSuite.prototype.addTestCase):
(InspectorTest.SyncTestSuite.prototype.runTestCasesAndFinish):
(InspectorTest.SyncTestSuite.prototype.runTestCases):
(InspectorTest.log):
(InspectorTest.assert):
* inspector-protocol/runtime/getProperties-expected.txt:
* inspector-protocol/runtime/getProperties.html: Rewrite.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/http/tests/inspector-protocol/resources/InspectorTest.js
trunk/LayoutTests/inspector-protocol/runtime/getProperties-expected.txt
trunk/LayoutTests/inspector-protocol/runtime/getProperties.html


Added Paths

trunk/LayoutTests/inspector-protocol/async-test-suite-expected.txt
trunk/LayoutTests/inspector-protocol/async-test-suite.html
trunk/LayoutTests/inspector-protocol/sync-test-suite-expected.txt
trunk/LayoutTests/inspector-protocol/sync-test-suite.html




Diff

Modified: trunk/LayoutTests/ChangeLog (187045 => 187046)

--- trunk/LayoutTests/ChangeLog	2015-07-20 23:31:55 UTC (rev 187045)
+++ trunk/LayoutTests/ChangeLog	2015-07-20 23:35:51 UTC (rev 187046)
@@ -1,3 +1,51 @@
+2015-07-20  Brian J. Burg  b...@cs.washington.edu
+
+Web Inspector: start using Promises to handle asynchronous steps in protocol tests
+https://bugs.webkit.org/show_bug.cgi?id=147096
+
+Reviewed by Joseph Pecoraro.
+
+Existing protocol tests use lots of reinvented wheels to run
+multiple asynchronous tests. This patch begins consolidation of
+these redundant wheels, using a tiny test framework based on
+promises.
+
+The first change is to introduce InspectorTest.awaitCommand,
+which returns a promise that is fulfilled or rejected if the command
+succeeds or fails. This is the building block for writing protocol
+tests with promises.
+
+The second change is the introduction of InspectorTest.AsyncTestSuite.
+This properly chains together multiple asynchronous test methods
+using the promise interface. A synchronous version is also added.
+
+To demonstrate how async tests can be written using this new approach,
+this patch converts existing protocol test. Test coverage for the
+new frameworks also demonstrates their use.
+
+* http/tests/inspector-protocol/resources/InspectorTest.js:
+(InspectorTest.sendCommand):
+(InspectorTest.awaitCommand):
+(InspectorTest.sendMessage):
+(InspectorFrontendAPI.dispatchMessageAsync):
+(InspectorTest.AsyncTestSuite): Add tests for this micro framework.
+(InspectorTest.AsyncTestSuite.prototype.get passCount):
+(InspectorTest.AsyncTestSuite.prototype.get skipCount):
+(InspectorTest.AsyncTestSuite.prototype.addTestCase):
+(InspectorTest.AsyncTestSuite.prototype.runTestCasesAndFinish.finish):
+(InspectorTest.AsyncTestSuite.prototype.runTestCasesAndFinish):
+(InspectorTest.AsyncTestSuite.prototype.runTestCases):
+(InspectorTest.SyncTestSuite): Add tests for this micro framework.
+

[webkit-changes] [187049] trunk/Source

2015-07-20 Thread achristensen
Title: [187049] trunk/Source








Revision 187049
Author achristen...@apple.com
Date 2015-07-20 17:12:13 -0700 (Mon, 20 Jul 2015)


Log Message
[Content Extensions] Cache actions with domains that match everything
https://bugs.webkit.org/show_bug.cgi?id=147050

Reviewed by Benjamin Poulain.

Source/WebCore:

If you have lots of rules with triggers like {url-filter:.*,if-domain:[*webkit.org]}
we will spend a lot of time adding unnecessary actions to HashSets when you are not on webkit.org.
Caching all the rules and only adding them to a collection once when the domain changes saves a lot of URL interpreting time.

We already had an optimization for the css-display-none actions with triggers that matched everything using a special bytecode operation.
This removes the need for a special bytecode operation by caching the triggers that match everything with and without domains,
then from those cached actions we compile a stylesheet, and create cached actions for every new domain we visit.

All functionality is covered by existing API tests.

* contentextensions/CompiledContentExtension.cpp:
(WebCore::ContentExtensions::CompiledContentExtension::~CompiledContentExtension):
(WebCore::ContentExtensions::CompiledContentExtension::globalDisplayNoneSelectors): Deleted.
* contentextensions/CompiledContentExtension.h:
* contentextensions/ContentExtension.cpp:
(WebCore::ContentExtensions::ContentExtension::ContentExtension):
(WebCore::ContentExtensions::ContentExtension::findFirstIgnorePreviousRules):
(WebCore::ContentExtensions::ContentExtension::globalDisplayNoneStyleSheet):
(WebCore::ContentExtensions::ContentExtension::compileGlobalDisplayNoneStyleSheet):
(WebCore::ContentExtensions::ContentExtension::populateDomainCacheIfNeeded):
(WebCore::ContentExtensions::ContentExtension::cachedDomainActions):
(WebCore::ContentExtensions::ContentExtension::universalActionsWithDomains):
* contentextensions/ContentExtension.h:
(WebCore::ContentExtensions::ContentExtension::compiledExtension):
(WebCore::ContentExtensions::ContentExtension::universalActionsWithoutDomains):
* contentextensions/ContentExtensionCompiler.cpp:
(WebCore::ContentExtensions::compileRuleList):
* contentextensions/ContentExtensionRule.cpp:
(WebCore::ContentExtensions::ContentExtensionRule::ContentExtensionRule):
(WebCore::ContentExtensions::Action::deserialize):
(WebCore::ContentExtensions::Action::deserializeType):
(WebCore::ContentExtensions::Action::serializedLength):
* contentextensions/ContentExtensionRule.h:
(WebCore::ContentExtensions::Action::operator==):
(WebCore::ContentExtensions::Action::setExtensionIdentifier):
(WebCore::ContentExtensions::Action::extensionIdentifier):
* contentextensions/ContentExtensionsBackend.cpp:
(WebCore::ContentExtensions::ContentExtensionsBackend::actionsForResourceLoad):
* contentextensions/DFABytecode.h:
(WebCore::ContentExtensions::instructionSizeWithArguments):
* contentextensions/DFABytecodeCompiler.cpp:
(WebCore::ContentExtensions::DFABytecodeCompiler::emitAppendAction):
* contentextensions/DFABytecodeInterpreter.cpp:
(WebCore::ContentExtensions::DFABytecodeInterpreter::interpretAppendAction):
(WebCore::ContentExtensions::DFABytecodeInterpreter::interpretTestFlagsAndAppendAction):
(WebCore::ContentExtensions::DFABytecodeInterpreter::actionsMatchingEverything):
(WebCore::ContentExtensions::DFABytecodeInterpreter::interpret):
(WebCore::ContentExtensions::DFABytecodeInterpreter::actionsForDefaultStylesheetFromDFARoot): Deleted.
* contentextensions/DFABytecodeInterpreter.h:
* loader/ResourceLoadInfo.h:

Source/WebKit2:

* UIProcess/API/APIUserContentExtensionStore.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/contentextensions/CompiledContentExtension.cpp
trunk/Source/WebCore/contentextensions/CompiledContentExtension.h
trunk/Source/WebCore/contentextensions/ContentExtension.cpp
trunk/Source/WebCore/contentextensions/ContentExtension.h
trunk/Source/WebCore/contentextensions/ContentExtensionCompiler.cpp
trunk/Source/WebCore/contentextensions/ContentExtensionRule.cpp
trunk/Source/WebCore/contentextensions/ContentExtensionRule.h
trunk/Source/WebCore/contentextensions/ContentExtensionsBackend.cpp
trunk/Source/WebCore/contentextensions/DFABytecode.h
trunk/Source/WebCore/contentextensions/DFABytecodeCompiler.cpp
trunk/Source/WebCore/contentextensions/DFABytecodeInterpreter.cpp
trunk/Source/WebCore/contentextensions/DFABytecodeInterpreter.h
trunk/Source/WebCore/loader/ResourceLoadInfo.h
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/APIUserContentExtensionStore.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (187048 => 187049)

--- trunk/Source/WebCore/ChangeLog	2015-07-20 23:48:45 UTC (rev 187048)
+++ trunk/Source/WebCore/ChangeLog	2015-07-21 00:12:13 UTC (rev 187049)
@@ -1,3 +1,61 @@
+2015-07-20  Alex Christensen  achristen...@webkit.org
+
+[Content Extensions] Cache actions with domains that match everything
+

[webkit-changes] [187050] trunk/Source/WebKit2

2015-07-20 Thread wenson_hsieh
Title: [187050] trunk/Source/WebKit2








Revision 187050
Author wenson_hs...@apple.com
Date 2015-07-20 17:23:05 -0700 (Mon, 20 Jul 2015)


Log Message
Fix crash due to RemoteLayerTreeDisplayRefreshMonitor outliving RemoteLayerTreeDrawingArea
https://bugs.webkit.org/show_bug.cgi?id=147124
rdar://problem/21582858

Reviewed by Simon Fraser.

Refactors RemoteLayerTreeDisplayRefreshMonitor to use a weak pointer rather than a reference
to its RemoteLayerTreeDrawingArea, since the drawing area may be deallocated before the monitor
in some rare cases. This rarely caused pages using requestAnimationFrame to crash on iOS. However,
this should not be the case: logically, a RemoteLayerTreeDrawingArea should always outlive its
refresh monitors. Refer to https://bugs.webkit.org/show_bug.cgi?id=147128 for more details.

* WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h:
* WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm:
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::RemoteLayerTreeDisplayRefreshMonitor):
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::~RemoteLayerTreeDisplayRefreshMonitor): On destruction, checks
first to see whether or not the drawing area has been deallocated before telling it to update its monitors.
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::requestRefreshCallback):
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
(WebKit::RemoteLayerTreeDrawingArea::createWeakPtr): Creates and returns a new weak pointer to itself.
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h
trunk/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm
trunk/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h
trunk/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (187049 => 187050)

--- trunk/Source/WebKit2/ChangeLog	2015-07-21 00:12:13 UTC (rev 187049)
+++ trunk/Source/WebKit2/ChangeLog	2015-07-21 00:23:05 UTC (rev 187050)
@@ -1,3 +1,28 @@
+2015-07-20  Wenson Hsieh  wenson_hs...@apple.com
+
+Fix crash due to RemoteLayerTreeDisplayRefreshMonitor outliving RemoteLayerTreeDrawingArea
+https://bugs.webkit.org/show_bug.cgi?id=147124
+rdar://problem/21582858
+
+Reviewed by Simon Fraser.
+
+Refactors RemoteLayerTreeDisplayRefreshMonitor to use a weak pointer rather than a reference
+to its RemoteLayerTreeDrawingArea, since the drawing area may be deallocated before the monitor
+in some rare cases. This rarely caused pages using requestAnimationFrame to crash on iOS. However,
+this should not be the case: logically, a RemoteLayerTreeDrawingArea should always outlive its
+refresh monitors. Refer to https://bugs.webkit.org/show_bug.cgi?id=147128 for more details.
+
+* WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h:
+* WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm:
+(WebKit::RemoteLayerTreeDisplayRefreshMonitor::RemoteLayerTreeDisplayRefreshMonitor):
+(WebKit::RemoteLayerTreeDisplayRefreshMonitor::~RemoteLayerTreeDisplayRefreshMonitor): On destruction, checks
+first to see whether or not the drawing area has been deallocated before telling it to update its monitors.
+(WebKit::RemoteLayerTreeDisplayRefreshMonitor::requestRefreshCallback):
+* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
+(WebKit::RemoteLayerTreeDrawingArea::createWeakPtr): Creates and returns a new weak pointer to itself.
+* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
+(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
+
 2015-07-20  Alex Christensen  achristen...@webkit.org
 
 [Content Extensions] Cache actions with domains that match everything


Modified: trunk/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h (187049 => 187050)

--- trunk/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h	2015-07-21 00:12:13 UTC (rev 187049)
+++ trunk/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h	2015-07-21 00:23:05 UTC (rev 187050)
@@ -49,7 +49,7 @@
 private:
 explicit RemoteLayerTreeDisplayRefreshMonitor(PlatformDisplayID, RemoteLayerTreeDrawingArea);
 
-RemoteLayerTreeDrawingArea m_drawingArea;
+WeakPtrRemoteLayerTreeDrawingArea m_drawingArea;
 };
 
 }


Modified: trunk/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm (187049 => 187050)

--- trunk/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm	2015-07-21 00:12:13 UTC (rev 187049)
+++ trunk/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm	2015-07-21 

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

2015-07-20 Thread commit-queue
Title: [187052] trunk/Source/WebInspectorUI








Revision 187052
Author commit-qu...@webkit.org
Date 2015-07-20 17:58:38 -0700 (Mon, 20 Jul 2015)


Log Message
Web Inspector: console.assert(false, Message) message is not visible in console
https://bugs.webkit.org/show_bug.cgi?id=147130

Patch by Joseph Pecoraro pecor...@apple.com on 2015-07-20
Reviewed by Timothy Hatcher.

* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Views/ConsoleMessageView.js:
(WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
We were forgetting to assign the result of args.concat back into args.
In re-addressing this, improve the formatting of output if there is
a string message or not as the second argument to console.assert(), as
that is the common usage.

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js
trunk/Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (187051 => 187052)

--- trunk/Source/WebInspectorUI/ChangeLog	2015-07-21 00:27:56 UTC (rev 187051)
+++ trunk/Source/WebInspectorUI/ChangeLog	2015-07-21 00:58:38 UTC (rev 187052)
@@ -1,3 +1,18 @@
+2015-07-20  Joseph Pecoraro  pecor...@apple.com
+
+Web Inspector: console.assert(false, Message) message is not visible in console
+https://bugs.webkit.org/show_bug.cgi?id=147130
+
+Reviewed by Timothy Hatcher.
+
+* Localizations/en.lproj/localizedStrings.js:
+* UserInterface/Views/ConsoleMessageView.js:
+(WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
+We were forgetting to assign the result of args.concat back into args.
+In re-addressing this, improve the formatting of output if there is
+a string message or not as the second argument to console.assert(), as
+that is the common usage.
+
 2015-07-18  Saam barati  saambara...@gmail.com
 
 [ES6] Add support for block scope const


Modified: trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js (187051 => 187052)

--- trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js	2015-07-21 00:27:56 UTC (rev 187051)
+++ trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js	2015-07-21 00:58:38 UTC (rev 187052)
@@ -67,7 +67,7 @@
 localizedStrings[Application Cache] = Application Cache;
 localizedStrings[Assertion] = Assertion;
 localizedStrings[Assertion Failed] = Assertion Failed;
-localizedStrings[Assertion failed:] = Assertion failed:;
+localizedStrings[Assertion Failed: %s] = Assertion Failed: %s;
 localizedStrings[Assertion with message: %s] = Assertion with message: %s;
 localizedStrings[Assertive] = Assertive;
 localizedStrings[Attribute] = Attribute;


Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js (187051 => 187052)

--- trunk/Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js	2015-07-21 00:27:56 UTC (rev 187051)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js	2015-07-21 00:58:38 UTC (rev 187052)
@@ -232,9 +232,13 @@
 break;
 
 case WebInspector.ConsoleMessage.MessageType.Assert:
-var args = [WebInspector.UIString(Assertion failed:)];
-if (this._message.parameters)
-args.concat(this._message.parameters);
+var args = [WebInspector.UIString(Assertion Failed)];
+if (this._message.parameters) {
+if (this._message.parameters[0].type === string)
+args = [WebInspector.UIString(Assertion Failed: %s)].concat(this._message.parameters);
+else
+args = args.concat(this._message.parameters);
+}
 this._appendFormattedArguments(element, args);
 break;
 






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


[webkit-changes] [187053] trunk

2015-07-20 Thread commit-queue
Title: [187053] trunk








Revision 187053
Author commit-qu...@webkit.org
Date 2015-07-20 18:08:53 -0700 (Mon, 20 Jul 2015)


Log Message
AX: Selection change as a result of focusing an element may cause Safari to crash
https://bugs.webkit.org/show_bug.cgi?id=147052
rdar://problem/21778212

Patch by Nan Wang n_w...@apple.com on 2015-07-20
Reviewed by Chris Fleizach.

Source/WebCore:

When focusing an element, it may trigger a deferred layout that invalidates the render
element, which will cause axObjectCache() to be a nullptr, and lead to a crash. Fix that
by using a RefPtr to hold the object and also caching the axObjectCache().

Test: platform/mac/accessibility/focus-crash.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::setFocused):
(WebCore::AccessibilityRenderObject::setSelectedRows):

LayoutTests:

* platform/mac/accessibility/focus-crash-expected.txt: Added.
* platform/mac/accessibility/focus-crash.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp


Added Paths

trunk/LayoutTests/platform/mac/accessibility/focus-crash-expected.txt
trunk/LayoutTests/platform/mac/accessibility/focus-crash.html




Diff

Modified: trunk/LayoutTests/ChangeLog (187052 => 187053)

--- trunk/LayoutTests/ChangeLog	2015-07-21 00:58:38 UTC (rev 187052)
+++ trunk/LayoutTests/ChangeLog	2015-07-21 01:08:53 UTC (rev 187053)
@@ -1,3 +1,14 @@
+2015-07-20  Nan Wang  n_w...@apple.com
+
+AX: Selection change as a result of focusing an element may cause Safari to crash
+https://bugs.webkit.org/show_bug.cgi?id=147052
+rdar://problem/21778212
+
+Reviewed by Chris Fleizach.
+
+* platform/mac/accessibility/focus-crash-expected.txt: Added.
+* platform/mac/accessibility/focus-crash.html: Added.
+
 2015-07-20  Brian J. Burg  b...@cs.washington.edu
 
 Web Inspector: start using Promises to handle asynchronous steps in protocol tests


Added: trunk/LayoutTests/platform/mac/accessibility/focus-crash-expected.txt (0 => 187053)

--- trunk/LayoutTests/platform/mac/accessibility/focus-crash-expected.txt	(rev 0)
+++ trunk/LayoutTests/platform/mac/accessibility/focus-crash-expected.txt	2015-07-21 01:08:53 UTC (rev 187053)
@@ -0,0 +1,10 @@
+This tests that focusing and removing element won't cause crash.
+
+On success, you will see a series of PASS messages, followed by TEST COMPLETE.
+
+
+PASS document.getElementById(toBeRemoved) is null
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: trunk/LayoutTests/platform/mac/accessibility/focus-crash.html (0 => 187053)

--- trunk/LayoutTests/platform/mac/accessibility/focus-crash.html	(rev 0)
+++ trunk/LayoutTests/platform/mac/accessibility/focus-crash.html	2015-07-21 01:08:53 UTC (rev 187053)
@@ -0,0 +1,42 @@
+!DOCTYPE HTML
+html
+body
+script src=""
+
+input type=text id=toBeRemoved _onfocus_=focusHandler(this)/input
+
+
+script
+
+var jsTestIsAsync = true;
+
+description(This tests that focusing and removing element won't cause crash.);
+
+if (window.testRunner  window.accessibilityController) {
+
+// Try to focus on the element.
+accessibilityController.accessibleElementById(toBeRemoved).takeFocus();
+}
+
+function focusHandler(node) 
+{
+// Make sure we don't crash after removing the element. 
+node.parentNode.removeChild(node);
+gc();
+setTimeout(finishTest(), 0);
+}
+
+function finishTest()
+{
+// Element should be removed while on focus
+shouldBe(document.getElementById(\toBeRemoved\), null);
+
+// Make sure accessing the element won't lead to crash
+var detached = accessibilityController.accessibleElementById(toBeRemoved)
+finishJSTest();
+}
+/script
+
+script src=""
+/body
+/html
\ No newline at end of file


Modified: trunk/Source/WebCore/ChangeLog (187052 => 187053)

--- trunk/Source/WebCore/ChangeLog	2015-07-21 00:58:38 UTC (rev 187052)
+++ trunk/Source/WebCore/ChangeLog	2015-07-21 01:08:53 UTC (rev 187053)
@@ -1,3 +1,21 @@
+2015-07-20  Nan Wang  n_w...@apple.com
+
+AX: Selection change as a result of focusing an element may cause Safari to crash
+https://bugs.webkit.org/show_bug.cgi?id=147052
+rdar://problem/21778212
+
+Reviewed by Chris Fleizach.
+
+When focusing an element, it may trigger a deferred layout that invalidates the render 
+element, which will cause axObjectCache() to be a nullptr, and lead to a crash. Fix that
+by using a RefPtr to hold the object and also caching the axObjectCache().
+
+Test: platform/mac/accessibility/focus-crash.html
+
+* accessibility/AccessibilityRenderObject.cpp:
+(WebCore::AccessibilityRenderObject::setFocused):
+(WebCore::AccessibilityRenderObject::setSelectedRows):
+
 2015-07-20  Alex Christensen  achristen...@webkit.org
 
 Unreviewed build fix after 

[webkit-changes] [187041] branches/safari-600.1.4.17-branch/Source/WebKit2

2015-07-20 Thread lforschler
Title: [187041] branches/safari-600.1.4.17-branch/Source/WebKit2








Revision 187041
Author lforsch...@apple.com
Date 2015-07-20 15:52:25 -0700 (Mon, 20 Jul 2015)


Log Message
Merged r186812.  rdar://problem/21877914

Modified Paths

branches/safari-600.1.4.17-branch/Source/WebKit2/ChangeLog
branches/safari-600.1.4.17-branch/Source/WebKit2/Shared/mac/WebCoreArgumentCodersMac.mm




Diff

Modified: branches/safari-600.1.4.17-branch/Source/WebKit2/ChangeLog (187040 => 187041)

--- branches/safari-600.1.4.17-branch/Source/WebKit2/ChangeLog	2015-07-20 22:36:18 UTC (rev 187040)
+++ branches/safari-600.1.4.17-branch/Source/WebKit2/ChangeLog	2015-07-20 22:52:25 UTC (rev 187041)
@@ -1,3 +1,20 @@
+2015-07-20  Lucas Forschler  lforsch...@apple.com
+
+Merge r186812
+
+2015-07-14  Sam Weinig  s...@webkit.org
+
+WebKit needs to serialize numeric values in NSError userInfo
+rdar://problem/21818117
+https://bugs.webkit.org/show_bug.cgi?id=146936
+
+Reviewed by Anders Carlsson.
+
+* Shared/mac/WebCoreArgumentCodersMac.mm:
+(IPC::ArgumentCoderResourceError::encodePlatformData):
+Encode userInfo values that are NSNumbers in addition to NSStrings and NSURLs. Decoding 
+is already handled.
+
 2015-07-17  Andy Estes  aes...@apple.com
 
 Merge r186982. rdar://problem/21709404


Modified: branches/safari-600.1.4.17-branch/Source/WebKit2/Shared/mac/WebCoreArgumentCodersMac.mm (187040 => 187041)

--- branches/safari-600.1.4.17-branch/Source/WebKit2/Shared/mac/WebCoreArgumentCodersMac.mm	2015-07-20 22:36:18 UTC (rev 187040)
+++ branches/safari-600.1.4.17-branch/Source/WebKit2/Shared/mac/WebCoreArgumentCodersMac.mm	2015-07-20 22:52:25 UTC (rev 187041)
@@ -229,7 +229,7 @@
 RetainPtrCFMutableDictionaryRef filteredUserInfo = adoptCF(CFDictionaryCreateMutable(kCFAllocatorDefault, userInfo.count, kCFTypeDictionaryKeyCallBacks, kCFTypeDictionaryValueCallBacks));
 
 [userInfo enumerateKeysAndObjectsUsingBlock:^(id key, id value, BOOL*) {
-if ([value isKindOfClass:[NSString class]] || [value isKindOfClass:[NSURL class]])
+if ([value isKindOfClass:[NSString class]] || [value isKindOfClass:[NSURL class]] || [value isKindOfClass:[NSNumber class]])
 CFDictionarySetValue(filteredUserInfo.get(), key, value);
 }];
 






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


[webkit-changes] [187044] trunk/Source

2015-07-20 Thread commit-queue
Title: [187044] trunk/Source








Revision 187044
Author commit-qu...@webkit.org
Date 2015-07-20 16:27:49 -0700 (Mon, 20 Jul 2015)


Log Message
Adopt AVPlayerLayerView
https://bugs.webkit.org/show_bug.cgi?id=146862

Patch by Jeremy Jones jere...@apple.com on 2015-07-20
Source/WebCore:

Reviewed by Jer Noble.

The CALayerHost is replaced with WebLayerHostView to be compatible with UIView animations.
Some animation is improved in the conversion.

WebAVPlayerLayerView and WebAVPictureInPicturePlayerLayerView derive from AVKit and UIKit respectively.
Because these frameworks are loaded at runtime, these classes must be generate using objc/runtime.h to
register them from c functions at runtime. The most important part of these UIViews is that their
backing layer is a WebAVPlayerLayer.

WebCALayerHostWrapper and WebAVVideoLayer are combined into WebAVPlayerLayer to simplify the hierarchy.
WebAVPlayerLayer is a stand-in for an AVPlayerLayer.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenLayer): -removeFromSuperlayer is redundant.
(WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenGravity): syncTextTrackBounds on change.
(WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenFrame):
We never want animation here, since all animation will happen in UIViews.
This is just for going into the final size after a transform based animation.

* platform/ios/WebVideoFullscreenControllerAVKit.mm:
(WebVideoFullscreenControllerContext::didSetupFullscreen): layer - view
(WebVideoFullscreenControllerContext::didCleanupFullscreen): layer - view
(WebVideoFullscreenControllerContext::setUpFullscreen): layer - view

(WebVideoFullscreenControllerContext::setVideoLayerFrame): layer - view
Use fence port to synchronize between the UIThread and the WebThread,
the same way WebKit2 uses a fence port to synchronize between processes.

(WebVideoFullscreenControllerContext::setVideoLayerGravity):
No longer necessary to cache videoGravity at this level.

* platform/ios/WebVideoFullscreenInterfaceAVKit.h:
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(-[WebAVPlayerLayer init]):
(-[WebAVPlayerLayer dealloc]):
(-[WebAVPlayerLayer playerController]):
(-[WebAVPlayerLayer setBounds:]):
(-[WebAVPlayerLayer resolveBounds]):
(-[WebAVPlayerLayer setVideoGravity:]):
(-[WebAVPlayerLayer videoGravity]):
(-[WebAVPlayerLayer videoRect]):
(+[WebAVPlayerLayer keyPathsForValuesAffectingVideoRect]):
Added class WebAVPlayerLayer, replacing WebAVVideoLayer and WebCALayerHostWrapper.

(WebAVPictureInPicturePlayerLayerView_layerClass):
(getWebAVPictureInPicturePlayerLayerViewClass):
Added runtime class WebAVPictureInPicturePlayerLayerView

(WebAVPlayerLayerView_layerClass):
(WebAVPlayerLayerView_playerController):
(WebAVPlayerLayerView_setPlayerController):
(WebAVPlayerLayerView_videoView):
(WebAVPlayerLayerView_setVideoView):
(WebAVPlayerLayerView_startRoutingVideoToPictureInPicturePlayerLayerView):
(WebAVPlayerLayerView_stopRoutingVideoToPictureInPicturePlayerLayerView):
(WebAVPlayerLayerView_pictureInPicturePlayerLayerView):
(getWebAVPlayerLayerViewClass):
Added runtime class WebAVPlayerLayerView

(WebVideoFullscreenInterfaceAVKit::setVideoDimensions):
Dimensions are also stored in WebAVPlayerLayer so it can make decisions about
animating the video layer.

(WebVideoFullscreenInterfaceAVKit::setExternalPlayback):
(WebVideoFullscreenInterfaceAVKit::enterFullscreen):
(WebVideoFullscreenInterfaceAVKit::didStopPictureInPicture):
(WebVideoFullscreenInterfaceAVKit::cleanupFullscreen):
Straightforward layer to view conversion.

(WebVideoFullscreenInterfaceAVKit::preparedToReturnToInline):
Set view frame using the view hierarchy instead of assuming it is directly in a window.

(WebVideoFullscreenInterfaceAVKit::exitFullscreen):
Set view frame using the view hierarchy instead of assuming it is directly in a window.
dispatch_async before calling didExitFullscreen() to allows CATransactions to complete.

(WebVideoFullscreenInterfaceAVKit::setupFullscreen):
Set view frame using the view hierarchy instead of assuming it is directly in a window.
dispatch_async before calling didSetupFullscreen() to allows CATransactions to complete.

(-[WebCALayerHostWrapper dealloc]): Deleted.
(-[WebCALayerHostWrapper setVideoSublayer:]): Deleted.
(-[WebCALayerHostWrapper videoSublayer]): Deleted.
(-[WebCALayerHostWrapper setBounds:]): Deleted.
(-[WebCALayerHostWrapper resolveBounds]): Deleted.
Class WebCALayerHostWrapper deleted. Functionality rolled into WebAVPlayerLayer.

(+[WebAVVideoLayer videoLayer]): Deleted.
(-[WebAVVideoLayer init]): Deleted.
(-[WebAVVideoLayer setPlayerViewController:]): Deleted.
(-[WebAVVideoLayer setVideoSublayer:]): Deleted.
(-[WebAVVideoLayer setBounds:]): Deleted.
(-[WebAVVideoLayer setVideoLayerGravity:]): Deleted.
(-[WebAVVideoLayer videoLayerGravity]): Deleted.
(-[WebAVVideoLayer enterPIPModeRedirectingVideoToLayer:]): Deleted.

[webkit-changes] [187047] trunk/Source/WebKit2

2015-07-20 Thread andersca
Title: [187047] trunk/Source/WebKit2








Revision 187047
Author ander...@apple.com
Date 2015-07-20 16:45:41 -0700 (Mon, 20 Jul 2015)


Log Message
Support blocking a plug-in for non-security reasons
https://bugs.webkit.org/show_bug.cgi?id=145009

Patch by Gordon Sheridan gordon_sheri...@apple.com on 2015-07-20
Reviewed by Anders Carlsson.

* Shared/Plugins/PluginModuleInfo.h:
Replace PluginModuleBlocked with separate enum values for blocking for security and compatibility.

* UIProcess/API/C/WKAPICast.h:
(WebKit::toWKPluginLoadPolicy):
Modify to handle change to PluginModuleBlocked enum.

(WebKit::toPluginModuleLoadPolicy):
Ditto.

* UIProcess/API/C/WKPluginLoadPolicy.h:
Added enum value for blocking a plugin for compatibility reasons.

* UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
(WebKit::shouldBlockPlugin):
Check load policy for both reasons a plugin may be blocked.

(WebKit::WKPlugInModuleLoadPolicyToPluginModuleLoadPolicy):
Added function to convert between load policy enum types.

(WebKit::PluginInfoStore::defaultLoadPolicyForPlugin):
Modified to call WKLoadPolicyForPluginVersion() which can distinguish between blocked for security or compatibility.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::findPlugin):
Updated to recognize both PluginModuleBlocked enum values that indicate a plugin is blocked.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::createPlugin):
Ditto.

(WebKit::WebPage::canPluginHandleResponse):
Ditto.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/Shared/Plugins/PluginModuleInfo.h
trunk/Source/WebKit2/UIProcess/API/C/WKAPICast.h
trunk/Source/WebKit2/UIProcess/API/C/WKPluginLoadPolicy.h
trunk/Source/WebKit2/UIProcess/Plugins/mac/PluginInfoStoreMac.mm
trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (187046 => 187047)

--- trunk/Source/WebKit2/ChangeLog	2015-07-20 23:35:51 UTC (rev 187046)
+++ trunk/Source/WebKit2/ChangeLog	2015-07-20 23:45:41 UTC (rev 187047)
@@ -1,3 +1,44 @@
+2015-07-20  Gordon Sheridan  gordon_sheri...@apple.com
+
+Support blocking a plug-in for non-security reasons
+https://bugs.webkit.org/show_bug.cgi?id=145009
+
+Reviewed by Anders Carlsson.
+
+* Shared/Plugins/PluginModuleInfo.h:
+Replace PluginModuleBlocked with separate enum values for blocking for security and compatibility.
+
+* UIProcess/API/C/WKAPICast.h:
+(WebKit::toWKPluginLoadPolicy):
+Modify to handle change to PluginModuleBlocked enum.
+
+(WebKit::toPluginModuleLoadPolicy):
+Ditto.
+
+* UIProcess/API/C/WKPluginLoadPolicy.h:
+Added enum value for blocking a plugin for compatibility reasons.
+
+* UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
+(WebKit::shouldBlockPlugin):
+Check load policy for both reasons a plugin may be blocked.
+
+(WebKit::WKPlugInModuleLoadPolicyToPluginModuleLoadPolicy):
+Added function to convert between load policy enum types.
+
+(WebKit::PluginInfoStore::defaultLoadPolicyForPlugin):
+Modified to call WKLoadPolicyForPluginVersion() which can distinguish between blocked for security or compatibility.
+
+* UIProcess/WebPageProxy.cpp:
+(WebKit::WebPageProxy::findPlugin):
+Updated to recognize both PluginModuleBlocked enum values that indicate a plugin is blocked.
+
+* WebProcess/WebPage/WebPage.cpp:
+(WebKit::WebPage::createPlugin):
+Ditto.
+
+(WebKit::WebPage::canPluginHandleResponse):
+Ditto.
+
 2015-07-20  Antti Koivisto  an...@apple.com
 
 NSURLCache fallback does not work on iOS due to sandboxing


Modified: trunk/Source/WebKit2/Shared/Plugins/PluginModuleInfo.h (187046 => 187047)

--- trunk/Source/WebKit2/Shared/Plugins/PluginModuleInfo.h	2015-07-20 23:35:51 UTC (rev 187046)
+++ trunk/Source/WebKit2/Shared/Plugins/PluginModuleInfo.h	2015-07-20 23:45:41 UTC (rev 187047)
@@ -43,7 +43,8 @@
 
 // The plug-in should be blocked from being instantiated.
 // Note that the plug-in will still be seen by e.g. navigator.plugins
-PluginModuleBlocked,
+PluginModuleBlockedForSecurity,
+PluginModuleBlockedForCompatibility,
 };
 
 struct PluginModuleInfo {


Modified: trunk/Source/WebKit2/UIProcess/API/C/WKAPICast.h (187046 => 187047)

--- trunk/Source/WebKit2/UIProcess/API/C/WKAPICast.h	2015-07-20 23:35:51 UTC (rev 187046)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKAPICast.h	2015-07-20 23:45:41 UTC (rev 187047)
@@ -469,8 +469,10 @@
 return kWKPluginLoadPolicyLoadNormally;
 case PluginModuleLoadUnsandboxed:
 return kWKPluginLoadPolicyLoadUnsandboxed;
-case PluginModuleBlocked:
+case PluginModuleBlockedForSecurity:
 return kWKPluginLoadPolicyBlocked;
+case PluginModuleBlockedForCompatibility:
+return kWKPluginLoadPolicyBlockedForCompatibility;
 }
 
 

[webkit-changes] [187048] branches/safari-600.1.4.17-branch/Source/WebCore/platform/network/ cf/CookieJarCFNet.cpp

2015-07-20 Thread lforschler
Title: [187048] branches/safari-600.1.4.17-branch/Source/WebCore/platform/network/cf/CookieJarCFNet.cpp








Revision 187048
Author lforsch...@apple.com
Date 2015-07-20 16:48:45 -0700 (Mon, 20 Jul 2015)


Log Message
Follow-up fix after r187042.

Modified Paths

branches/safari-600.1.4.17-branch/Source/WebCore/platform/network/cf/CookieJarCFNet.cpp




Diff

Modified: branches/safari-600.1.4.17-branch/Source/WebCore/platform/network/cf/CookieJarCFNet.cpp (187047 => 187048)

--- branches/safari-600.1.4.17-branch/Source/WebCore/platform/network/cf/CookieJarCFNet.cpp	2015-07-20 23:45:41 UTC (rev 187047)
+++ branches/safari-600.1.4.17-branch/Source/WebCore/platform/network/cf/CookieJarCFNet.cpp	2015-07-20 23:48:45 UTC (rev 187048)
@@ -120,11 +120,7 @@
 
 static CFArrayRef createCookies(CFDictionaryRef headerFields, CFURLRef url)
 {
-#if (PLATFORM(IOS)  __IPHONE_OS_VERSION_MIN_REQUIRED = 9)
 return _CFHTTPParsedCookiesWithResponseHeaderFields(kCFAllocatorDefault, headerFields, url);
-#else
-return CFHTTPCookieCreateWithResponseHeaderFields(kCFAllocatorDefault, headerFields, url);
-#endif
 }
 
 void setCookiesFromDOM(const NetworkStorageSession session, const URL firstParty, const URL url, const String value)






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


[webkit-changes] [187039] trunk/Source

2015-07-20 Thread timothy_horton
Title: [187039] trunk/Source








Revision 187039
Author timothy_hor...@apple.com
Date 2015-07-20 15:33:16 -0700 (Mon, 20 Jul 2015)


Log Message
REGRESSION (r174287): Flash of black when opening a new web view or navigating to a new page
https://bugs.webkit.org/show_bug.cgi?id=147127
rdar://problem/21474317

Reviewed by Simon Fraser.

* rendering/RenderView.cpp:
(WebCore::RenderView::paintBoxDecorations):

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::snapshotAtSize):
Avoid using an invalid documentBackgroundColor, fall back to baseBackgroundColor
like we did before r174287.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/RenderView.cpp
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (187038 => 187039)

--- trunk/Source/WebCore/ChangeLog	2015-07-20 21:48:04 UTC (rev 187038)
+++ trunk/Source/WebCore/ChangeLog	2015-07-20 22:33:16 UTC (rev 187039)
@@ -1,3 +1,16 @@
+2015-07-20  Tim Horton  timothy_hor...@apple.com
+
+REGRESSION (r174287): Flash of black when opening a new web view or navigating to a new page
+https://bugs.webkit.org/show_bug.cgi?id=147127
+rdar://problem/21474317
+
+Reviewed by Simon Fraser.
+
+* rendering/RenderView.cpp:
+(WebCore::RenderView::paintBoxDecorations):
+Avoid using an invalid documentBackgroundColor, fall back to baseBackgroundColor
+like we did before r174287.
+
 2015-07-20  Alex Christensen  achristen...@webkit.org
 
 [Win] Unreviewed build fix after r187022.


Modified: trunk/Source/WebCore/rendering/RenderView.cpp (187038 => 187039)

--- trunk/Source/WebCore/rendering/RenderView.cpp	2015-07-20 21:48:04 UTC (rev 187038)
+++ trunk/Source/WebCore/rendering/RenderView.cpp	2015-07-20 22:33:16 UTC (rev 187039)
@@ -612,7 +612,8 @@
 if (frameView().isTransparent()) // FIXME: This needs to be dynamic. We should be able to go back to blitting if we ever stop being transparent.
 frameView().setCannotBlitToWindow(); // The parent must show behind the child.
 else {
-Color backgroundColor = backgroundShouldExtendBeyondPage ? frameView().documentBackgroundColor() : frameView().baseBackgroundColor();
+Color documentBackgroundColor = frameView().documentBackgroundColor();
+Color backgroundColor = (backgroundShouldExtendBeyondPage  documentBackgroundColor.isValid()) ? documentBackgroundColor : frameView().baseBackgroundColor();
 if (backgroundColor.alpha()) {
 CompositeOperator previousOperator = paintInfo.context-compositeOperation();
 paintInfo.context-setCompositeOperation(CompositeCopy);


Modified: trunk/Source/WebKit2/ChangeLog (187038 => 187039)

--- trunk/Source/WebKit2/ChangeLog	2015-07-20 21:48:04 UTC (rev 187038)
+++ trunk/Source/WebKit2/ChangeLog	2015-07-20 22:33:16 UTC (rev 187039)
@@ -1,3 +1,16 @@
+2015-07-20  Tim Horton  timothy_hor...@apple.com
+
+REGRESSION (r174287): Flash of black when opening a new web view or navigating to a new page
+https://bugs.webkit.org/show_bug.cgi?id=147127
+rdar://problem/21474317
+
+Reviewed by Simon Fraser.
+
+* WebProcess/WebPage/WebPage.cpp:
+(WebKit::WebPage::snapshotAtSize):
+Avoid using an invalid documentBackgroundColor, fall back to baseBackgroundColor
+like we did before r174287.
+
 2015-07-20  Michael Catanzaro  mcatanz...@igalia.com
 
 [Seccomp] Should be easier to debug blocked syscalls


Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (187038 => 187039)

--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2015-07-20 21:48:04 UTC (rev 187038)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2015-07-20 22:33:16 UTC (rev 187039)
@@ -1731,7 +1731,8 @@
 
 auto graphicsContext = snapshot-bitmap()-createGraphicsContext();
 
-Color backgroundColor = coreFrame-settings().backgroundShouldExtendBeyondPage() ? frameView-documentBackgroundColor() : frameView-baseBackgroundColor();
+Color documentBackgroundColor = frameView-documentBackgroundColor();
+Color backgroundColor = (coreFrame-settings().backgroundShouldExtendBeyondPage()  documentBackgroundColor.isValid()) ? documentBackgroundColor : frameView-baseBackgroundColor();
 graphicsContext-fillRect(IntRect(IntPoint(), bitmapSize), backgroundColor, ColorSpaceDeviceRGB);
 
 if (!(options  SnapshotOptionsExcludeDeviceScaleFactor)) {






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


[webkit-changes] [187040] branches/safari-600.1.4.17-branch/Tools/WebKitTestRunner/ InjectedBundle/InjectedBundlePage.cpp

2015-07-20 Thread matthew_hanson
Title: [187040] branches/safari-600.1.4.17-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp








Revision 187040
Author matthew_han...@apple.com
Date 2015-07-20 15:36:18 -0700 (Mon, 20 Jul 2015)


Log Message
Build fix after r186983.

Modified Paths

branches/safari-600.1.4.17-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp




Diff

Modified: branches/safari-600.1.4.17-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp (187039 => 187040)

--- branches/safari-600.1.4.17-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp	2015-07-20 22:33:16 UTC (rev 187039)
+++ branches/safari-600.1.4.17-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp	2015-07-20 22:36:18 UTC (rev 187040)
@@ -1260,7 +1260,7 @@
 
 WKBundlePagePolicyAction InjectedBundlePage::decidePolicyForResponse(WKBundlePageRef page, WKBundleFrameRef, WKURLResponseRef response, WKURLRequestRef, WKTypeRef*)
 {
-if (InjectedBundle::singleton().testRunner()-isPolicyDelegateEnabled()  WKURLResponseIsAttachment(response)) {
+if (InjectedBundle::shared().testRunner()-isPolicyDelegateEnabled()  WKURLResponseIsAttachment(response)) {
 StringBuilder stringBuilder;
 WKRetainPtrWKStringRef filename = adoptWK(WKURLResponseCopySuggestedFilename(response));
 stringBuilder.appendLiteral(Policy delegate: resource is an attachment, suggested file name \');






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


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

2015-07-20 Thread andersca
Title: [187043] trunk/Source/WebCore








Revision 187043
Author ander...@apple.com
Date 2015-07-20 16:26:04 -0700 (Mon, 20 Jul 2015)


Log Message
Add PLATFORM #ifdefs for Mac SPI headers
https://bugs.webkit.org/show_bug.cgi?id=147129

Reviewed by Tim Horton.

* Configurations/WebCore.xcconfig:
Skip NPAPI headers on iOS.

* platform/mac/WebVideoFullscreenController.h:
* platform/spi/mac/DataDetectorsSPI.h:
* platform/spi/mac/NSEventSPI.h:
* platform/spi/mac/NSFontSPI.h:
* platform/spi/mac/NSMenuSPI.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Configurations/WebCore.xcconfig
trunk/Source/WebCore/platform/mac/WebVideoFullscreenController.h
trunk/Source/WebCore/platform/spi/mac/DataDetectorsSPI.h
trunk/Source/WebCore/platform/spi/mac/NSEventSPI.h
trunk/Source/WebCore/platform/spi/mac/NSFontSPI.h
trunk/Source/WebCore/platform/spi/mac/NSMenuSPI.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (187042 => 187043)

--- trunk/Source/WebCore/ChangeLog	2015-07-20 23:23:12 UTC (rev 187042)
+++ trunk/Source/WebCore/ChangeLog	2015-07-20 23:26:04 UTC (rev 187043)
@@ -1,3 +1,19 @@
+2015-07-20  Anders Carlsson  ander...@apple.com
+
+Add PLATFORM #ifdefs for Mac SPI headers
+https://bugs.webkit.org/show_bug.cgi?id=147129
+
+Reviewed by Tim Horton.
+
+* Configurations/WebCore.xcconfig:
+Skip NPAPI headers on iOS.
+
+* platform/mac/WebVideoFullscreenController.h:
+* platform/spi/mac/DataDetectorsSPI.h:
+* platform/spi/mac/NSEventSPI.h:
+* platform/spi/mac/NSFontSPI.h:
+* platform/spi/mac/NSMenuSPI.h:
+
 2015-07-20  Tim Horton  timothy_hor...@apple.com
 
 REGRESSION (r174287): Flash of black when opening a new web view or navigating to a new page


Modified: trunk/Source/WebCore/Configurations/WebCore.xcconfig (187042 => 187043)

--- trunk/Source/WebCore/Configurations/WebCore.xcconfig	2015-07-20 23:23:12 UTC (rev 187042)
+++ trunk/Source/WebCore/Configurations/WebCore.xcconfig	2015-07-20 23:26:04 UTC (rev 187043)
@@ -94,5 +94,5 @@
 EXCLUDED_SOURCE_FILE_NAMES_FOR_GESTURE_EVENTS = $(EXCLUDED_SOURCE_FILE_NAMES_FOR_GESTURE_EVENTS_IF_ENABLED_$(ENABLE_IOS_GESTURE_EVENTS));
 EXCLUDED_SOURCE_FILE_NAMES_FOR_GESTURE_EVENTS_IF_ENABLED_ = JSGesture* DOMGesture*;
 
-EXCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = *.tiff *Cursor.png AccessibilityObjectMac.mm AXObjectCacheMac.mm ColorMac.mm Cursor.cpp CursorMac.mm DataTransferMac.mm EditorMac.mm EventHandlerMac.mm EventLoopMac.mm GeolocationServiceMac.mm GraphicsContext3DOpenGLES.cpp IconDatabase.cpp IconMac.mm KillRingMac.mm LocalCurrentGraphicsContext.mm MIMETypeRegistryMac.mm MediaPlayerPrivateQTKit.mm NSScrollerImpDetails.mm NetworkStateNotifierMac.cpp PasteboardMac.mm PlatformEventFactoryMac.mm PlatformMouseEventMac.mm PlatformPasteboardMac.mm PlatformScreenMac.mm PlatformSpeechSynthesizerMac.mm RunLoopMac.mm SSLKeyGeneratorMac.cpp ScrollViewMac.mm ScrollbarThemeMac.mm SharedTimerMac.mm SoundMac.mm SystemTimeMac.cpp ThemeMac.mm ThreadCheck.mm UserAgentMac.mm WebAccessibilityObjectWrapperMac.mm WebCoreSystemInterface.mm WebCoreView.m WebVideoFullscreenController.mm WebVideoFullscreenHUDWindowController.mm WebWindowAnimation.mm WidgetMac.mm DisplayRefreshMonitorMac.cpp $(EXCLUDED
 _SOURCE_FILE_NAMES_FOR_TOUCH_EVENTS) $(EXCLUDED_SOURCE_FILE_NAMES_FOR_GESTURE_EVENTS);
+EXCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = *.tiff *Cursor.png AccessibilityObjectMac.mm AXObjectCacheMac.mm ColorMac.mm Cursor.cpp CursorMac.mm DataTransferMac.mm EditorMac.mm EventHandlerMac.mm EventLoopMac.mm GeolocationServiceMac.mm GraphicsContext3DOpenGLES.cpp IconDatabase.cpp IconMac.mm KillRingMac.mm LocalCurrentGraphicsContext.mm MIMETypeRegistryMac.mm MediaPlayerPrivateQTKit.mm NSScrollerImpDetails.mm NetworkStateNotifierMac.cpp PasteboardMac.mm PlatformEventFactoryMac.mm PlatformMouseEventMac.mm PlatformPasteboardMac.mm PlatformScreenMac.mm PlatformSpeechSynthesizerMac.mm RunLoopMac.mm SSLKeyGeneratorMac.cpp ScrollViewMac.mm ScrollbarThemeMac.mm SharedTimerMac.mm SoundMac.mm SystemTimeMac.cpp ThemeMac.mm ThreadCheck.mm UserAgentMac.mm WebAccessibilityObjectWrapperMac.mm WebCoreSystemInterface.mm WebCoreView.m WebVideoFullscreenController.mm WebVideoFullscreenHUDWindowController.mm WebWindowAnimation.mm WidgetMac.mm DisplayRefreshMonitorMac.cpp npapi.h npf
 unctions.h npruntime.h npruntime_internal.h $(EXCLUDED_SOURCE_FILE_NAMES_FOR_TOUCH_EVENTS) $(EXCLUDED_SOURCE_FILE_NAMES_FOR_GESTURE_EVENTS);
 EXCLUDED_SOURCE_FILE_NAMES[sdk=macosx*] = *IOS.h *IOS.cpp *IOS.mm KillRingNone.cpp WAKAppKitStubs.h WAKClipView.h WAKResponder.h WAKScrollView.h WAKView.h WAKViewPrivate.h WAKWindow.h WKContentObservation.h WKGraphics.h WKTypes.h WKUtilities.h WKView.h WKViewPrivate.h WebCoreThread.h WebCoreThreadMessage.h WebCoreThreadRun.h WebCoreThreadSystemInterface.h $(EXCLUDED_SOURCE_FILE_NAMES_FOR_TOUCH_EVENTS) $(EXCLUDED_SOURCE_FILE_NAMES_FOR_GESTURE_EVENTS);


Modified: 

[webkit-changes] [187045] trunk/Source/WebKit2

2015-07-20 Thread antti
Title: [187045] trunk/Source/WebKit2








Revision 187045
Author an...@apple.com
Date 2015-07-20 16:31:55 -0700 (Mon, 20 Jul 2015)


Log Message
NSURLCache fallback does not work on iOS due to sandboxing
https://bugs.webkit.org/show_bug.cgi?id=146314
rdar://problem/21433691

Reviewed by Anders Carlsson.

This broke with earlier cache path computation changes.

* NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):

NSURLCache path is relative to the container cache path so . is sufficient.
This puts the cache files under
container/Library/Caches/com.apple.WebKit.Networking/

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkProcessCocoa.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (187044 => 187045)

--- trunk/Source/WebKit2/ChangeLog	2015-07-20 23:27:49 UTC (rev 187044)
+++ trunk/Source/WebKit2/ChangeLog	2015-07-20 23:31:55 UTC (rev 187045)
@@ -1,3 +1,20 @@
+2015-07-20  Antti Koivisto  an...@apple.com
+
+NSURLCache fallback does not work on iOS due to sandboxing
+https://bugs.webkit.org/show_bug.cgi?id=146314
+rdar://problem/21433691
+
+Reviewed by Anders Carlsson.
+
+This broke with earlier cache path computation changes.
+
+* NetworkProcess/cocoa/NetworkProcessCocoa.mm:
+(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
+
+NSURLCache path is relative to the container cache path so . is sufficient.
+This puts the cache files under
+container/Library/Caches/com.apple.WebKit.Networking/
+
 2015-07-20  Jeremy Jones  jere...@apple.com
 
 Adopt AVPlayerLayerView


Modified: trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkProcessCocoa.mm (187044 => 187045)

--- trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkProcessCocoa.mm	2015-07-20 23:27:49 UTC (rev 187044)
+++ trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkProcessCocoa.mm	2015-07-20 23:31:55 UTC (rev 187045)
@@ -101,17 +101,16 @@
 return;
 }
 #endif
+String nsURLCacheDirectory = m_diskCacheDirectory;
 #if PLATFORM(IOS)
+// NSURLCache path is relative to network process cache directory.
+// This puts cache files under container/Library/Caches/com.apple.WebKit.Networking/
+nsURLCacheDirectory = .;
+#endif
 [NSURLCache setSharedURLCache:adoptNS([[NSURLCache alloc]
-_initWithMemoryCapacity:parameters.nsURLCacheMemoryCapacity
-diskCapacity:parameters.nsURLCacheDiskCapacity
-relativePath:parameters.uiProcessBundleIdentifier]).get()];
-#else
-[NSURLCache setSharedURLCache:adoptNS([[NSURLCache alloc]
 initWithMemoryCapacity:parameters.nsURLCacheMemoryCapacity
 diskCapacity:parameters.nsURLCacheDiskCapacity
-diskPath:parameters.diskCacheDirectory]).get()];
-#endif
+diskPath:nsURLCacheDirectory]).get()];
 }
 
 RetainPtrCFURLCacheRef cache = adoptCF(CFURLCacheCopySharedURLCache());






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


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

2015-07-20 Thread achristensen
Title: [187051] trunk/Source/WebCore








Revision 187051
Author achristen...@apple.com
Date 2015-07-20 17:27:56 -0700 (Mon, 20 Jul 2015)


Log Message
Unreviewed build fix after r187049.

* contentextensions/ContentExtension.cpp:
(WebCore::ContentExtensions::ContentExtension::populateDomainCacheIfNeeded):
Can't shrinkToFit HashSets.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/contentextensions/ContentExtension.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (187050 => 187051)

--- trunk/Source/WebCore/ChangeLog	2015-07-21 00:23:05 UTC (rev 187050)
+++ trunk/Source/WebCore/ChangeLog	2015-07-21 00:27:56 UTC (rev 187051)
@@ -1,5 +1,13 @@
 2015-07-20  Alex Christensen  achristen...@webkit.org
 
+Unreviewed build fix after r187049.
+
+* contentextensions/ContentExtension.cpp:
+(WebCore::ContentExtensions::ContentExtension::populateDomainCacheIfNeeded):
+Can't shrinkToFit HashSets.
+
+2015-07-20  Alex Christensen  achristen...@webkit.org
+
 [Content Extensions] Cache actions with domains that match everything
 https://bugs.webkit.org/show_bug.cgi?id=147050
 


Modified: trunk/Source/WebCore/contentextensions/ContentExtension.cpp (187050 => 187051)

--- trunk/Source/WebCore/contentextensions/ContentExtension.cpp	2015-07-21 00:23:05 UTC (rev 187050)
+++ trunk/Source/WebCore/contentextensions/ContentExtension.cpp	2015-07-21 00:27:56 UTC (rev 187051)
@@ -133,7 +133,6 @@
 if (!!(action  IfDomainFlag) == m_cachedDomainActions.contains(action))
 m_cachedUniversalDomainActions.append(static_castuint32_t(action));
 }
-m_cachedDomainActions.shrinkToFit();
 m_cachedUniversalDomainActions.shrinkToFit();
 m_cachedDomain = domain;
 }






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


[webkit-changes] [187071] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187071] branches/safari-601.1-branch/Source/WebCore








Revision 187071
Author matthew_han...@apple.com
Date 2015-07-20 21:37:32 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186979. rdar://problem/19192076

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/Modules/mediacontrols/mediaControlsiOS.js
branches/safari-601.1-branch/Source/WebCore/html/MediaElementSession.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187070 => 187071)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:29 UTC (rev 187070)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:32 UTC (rev 187071)
@@ -1,5 +1,30 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186979. rdar://problem/19192076
+
+2015-07-17  Dean Jackson  d...@apple.com
+
+Picture in Picture interacts poorly with AirPlay/HDMI
+https://bugs.webkit.org/show_bug.cgi?id=147061
+rdar://problem/19192076
+
+Reviewed by Tim Horton.
+
+When we are actively playing to an external target, the
+picture in picture button should be hidden.
+
+Also, the availability of picture in picture is also
+dependent on AirPlay, so that we don't auto-pip when
+we're displaying on a TV.
+
+* Modules/mediacontrols/mediaControlsiOS.js:
+(ControllerIOS.prototype.configureInlineControls): Call the update function.
+(ControllerIOS.prototype.updatePictureInPictureButton): Add or remove a hidden class.
+* html/MediaElementSession.cpp:
+(WebCore::MediaElementSession::allowsPictureInPicture): Check Airplay status.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186978. rdar://problem/21643094
 
 2015-07-17  Tim Horton  timothy_hor...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/Modules/mediacontrols/mediaControlsiOS.js (187070 => 187071)

--- branches/safari-601.1-branch/Source/WebCore/Modules/mediacontrols/mediaControlsiOS.js	2015-07-21 04:37:29 UTC (rev 187070)
+++ branches/safari-601.1-branch/Source/WebCore/Modules/mediacontrols/mediaControlsiOS.js	2015-07-21 04:37:32 UTC (rev 187071)
@@ -193,8 +193,7 @@
 // Hide the scrubber on audio until the user starts playing.
 this.controls.timelineBox.classList.add(this.ClassNames.hidden);
 } else {
-if (Controller.gSimulatePictureInPictureAvailable || ('webkitSupportsPresentationMode' in this.video  this.video.webkitSupportsPresentationMode('picture-in-picture')))
-this.controls.panel.appendChild(this.controls.pictureInPictureButton);
+this.updatePictureInPictureButton();
 this.controls.panel.appendChild(this.controls.fullscreenButton);
 }
 },
@@ -573,6 +572,16 @@
 Controller.prototype.setShouldListenForPlaybackTargetAvailabilityEvent.call(this, shouldListen);
 },
 
+updatePictureInPictureButton: function()
+{
+var shouldShowPictureInPictureButton = Controller.gSimulatePictureInPictureAvailable || ('webkitSupportsPresentationMode' in this.video  this.video.webkitSupportsPresentationMode('picture-in-picture'));
+if (shouldShowPictureInPictureButton) {
+this.controls.panel.appendChild(this.controls.pictureInPictureButton);
+this.controls.pictureInPictureButton.classList.remove(this.ClassNames.hidden);
+} else
+this.controls.pictureInPictureButton.classList.add(this.ClassNames.hidden);
+},
+
 handlePresentationModeChange: function(event)
 {
 var presentationMode = this.presentationMode();


Modified: branches/safari-601.1-branch/Source/WebCore/html/MediaElementSession.cpp (187070 => 187071)

--- branches/safari-601.1-branch/Source/WebCore/html/MediaElementSession.cpp	2015-07-21 04:37:29 UTC (rev 187070)
+++ branches/safari-601.1-branch/Source/WebCore/html/MediaElementSession.cpp	2015-07-21 04:37:32 UTC (rev 187071)
@@ -382,7 +382,7 @@
 bool MediaElementSession::allowsPictureInPicture(const HTMLMediaElement element) const
 {
 Settings* settings = element.document().settings();
-return settings  settings-allowsPictureInPictureMediaPlayback();
+return settings  settings-allowsPictureInPictureMediaPlayback()  !element.webkitCurrentPlaybackTargetIsWireless();
 }
 
 #if ENABLE(MEDIA_SOURCE)






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


[webkit-changes] [187066] branches/safari-601.1-branch

2015-07-20 Thread matthew_hanson
Title: [187066] branches/safari-601.1-branch








Revision 187066
Author matthew_han...@apple.com
Date 2015-07-20 21:37:14 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186968. rdar://problem/21359811

Modified Paths

branches/safari-601.1-branch/LayoutTests/ChangeLog
branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/rendering/RenderLayerBacking.cpp


Added Paths

branches/safari-601.1-branch/LayoutTests/compositing/video/poster-expected.html
branches/safari-601.1-branch/LayoutTests/compositing/video/poster.html




Diff

Modified: branches/safari-601.1-branch/LayoutTests/ChangeLog (187065 => 187066)

--- branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:37:11 UTC (rev 187065)
+++ branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:37:14 UTC (rev 187066)
@@ -1,5 +1,19 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186968. rdar://problem/21359811
+
+2015-07-17  Myles C. Maxfield  mmaxfi...@apple.com
+
+Video posters disappear once media has loaded
+https://bugs.webkit.org/show_bug.cgi?id=147045
+
+Reviewed by Simon Fraser.
+
+* compositing/video/poster-expected.html: Added.
+* compositing/video/poster.html: Added.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186957. rdar://problem/21867831
 
 2015-07-17  Benjamin Poulain  bpoul...@apple.com


Added: branches/safari-601.1-branch/LayoutTests/compositing/video/poster-expected.html (0 => 187066)

--- branches/safari-601.1-branch/LayoutTests/compositing/video/poster-expected.html	(rev 0)
+++ branches/safari-601.1-branch/LayoutTests/compositing/video/poster-expected.html	2015-07-21 04:37:14 UTC (rev 187066)
@@ -0,0 +1,21 @@
+!DOCTYPE html
+html
+head
+style
+video {
+width: 300px;
+height: 300px;
+}
+video::-webkit-media-controls-fullscreen-button,
+video::-webkit-media-controls-timeline-container,
+video::-webkit-media-controls-mute-button,
+video::-webkit-media-controls-wireless-playback-picker-button {
+display: none;
+}
+/style
+/head
+body
+pThis test makes sure that video posters are displayed even after the source is loaded/p
+video controls poster=../resources/simple_image.png/video
+/body
+/html


Added: branches/safari-601.1-branch/LayoutTests/compositing/video/poster.html (0 => 187066)

--- branches/safari-601.1-branch/LayoutTests/compositing/video/poster.html	(rev 0)
+++ branches/safari-601.1-branch/LayoutTests/compositing/video/poster.html	2015-07-21 04:37:14 UTC (rev 187066)
@@ -0,0 +1,32 @@
+!DOCTYPE html
+html
+head
+style
+video {
+width: 300px;
+height: 300px;
+}
+video::-webkit-media-controls-fullscreen-button,
+video::-webkit-media-controls-timeline-container,
+video::-webkit-media-controls-mute-button,
+video::-webkit-media-controls-wireless-playback-picker-button {
+display: none;
+}
+/style
+script src=""
+/head
+body
+pThis test makes sure that video posters are displayed even after the source is loaded/p
+video controls id=v poster=../resources/simple_image.png/video
+script
+var v = document.getElementById(v);
+if (window.testRunner) {
+testRunner.waitUntilDone();
+v.addEventListener(canplaythrough, function() {
+testRunner.notifyDone();
+});
+}
+v.setAttribute(src, findMediaFile(video, ../resources/video));
+/script
+/body
+/html


Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187065 => 187066)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:11 UTC (rev 187065)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:14 UTC (rev 187066)
@@ -1,5 +1,26 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186968. rdar://problem/21359811
+
+2015-07-17  Myles C. Maxfield  mmaxfi...@apple.com
+
+Video posters disappear once media has loaded
+https://bugs.webkit.org/show_bug.cgi?id=147045
+
+Reviewed by Simon Fraser.
+
+After r184932, all video elements are composited. However, there is logic in
+RenderLayerBacking::updateConfiguration() which adds the video layer to the page
+if the video is composited, without checking first to see if it should actually
+do so.
+
+Test: compositing/video/poster.html
+
+* rendering/RenderLayerBacking.cpp:
+(WebCore::RenderLayerBacking::updateConfiguration):
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186964. rdar://problem/21803781
 
 2015-07-17  Dan Bernstein  m...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/rendering/RenderLayerBacking.cpp (187065 => 187066)

--- branches/safari-601.1-branch/Source/WebCore/rendering/RenderLayerBacking.cpp	2015-07-21 04:37:11 UTC (rev 187065)
+++ branches/safari-601.1-branch/Source/WebCore/rendering/RenderLayerBacking.cpp	

[webkit-changes] [187065] branches/safari-601.1-branch

2015-07-20 Thread matthew_hanson
Title: [187065] branches/safari-601.1-branch








Revision 187065
Author matthew_han...@apple.com
Date 2015-07-20 21:37:11 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186964. rdar://problem/21803781

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/loader/FrameLoader.cpp
branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/UIProcess/Cocoa/UIDelegate.mm
branches/safari-601.1-branch/Source/WebKit2/UIProcess/WebPageProxy.cpp
branches/safari-601.1-branch/Source/WebKit2/UIProcess/WebPageProxy.h
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
branches/safari-601.1-branch/Tools/ChangeLog
branches/safari-601.1-branch/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj


Added Paths

branches/safari-601.1-branch/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/ShouldOpenExternalURLsInNewWindowActions.mm




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187064 => 187065)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:05 UTC (rev 187064)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:11 UTC (rev 187065)
@@ -1,5 +1,28 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186964. rdar://problem/21803781
+
+2015-07-17  Dan Bernstein  m...@apple.com
+
+WebCore part of rdar://problem/21803781 The external URL policy is not reported correctly in navigation actions that create new windows
+https://bugs.webkit.org/show_bug.cgi?id=147040
+
+Reviewed by Dean Jackson.
+
+Test: TestWebKitAPI/Tests/WebKit2Cocoa/ShouldOpenExternalURLsInNewWindowActions.mm
+
+* loader/FrameLoader.cpp:
+(WebCore::shouldOpenExternalURLsPolicyToApply): Pulled the logic out of
+applyShouldOpenExternalURLsPolicyToNewDocumentLoader into this new helper.
+(WebCore::FrameLoader::loadURL): When targeting a new frame, apply the external URLs policy
+to the action passed to checkNewWindowPolicy.
+(WebCore::FrameLoader::applyShouldOpenExternalURLsPolicyToNewDocumentLoader): Call the new
+helper function.
+(WebCore::createWindow): Include the external URL policy in the action passed to
+createWindow.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186957. rdar://problem/21867831
 
 2015-07-17  Benjamin Poulain  bpoul...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/loader/FrameLoader.cpp (187064 => 187065)

--- branches/safari-601.1-branch/Source/WebCore/loader/FrameLoader.cpp	2015-07-21 04:37:05 UTC (rev 187064)
+++ branches/safari-601.1-branch/Source/WebCore/loader/FrameLoader.cpp	2015-07-21 04:37:11 UTC (rev 187065)
@@ -1187,6 +1187,15 @@
 }
 }
 
+static ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicyToApply(Frame sourceFrame, ShouldOpenExternalURLsPolicy propagatedPolicy)
+{
+if (!sourceFrame.isMainFrame())
+return ShouldOpenExternalURLsPolicy::ShouldNotAllow;
+if (ScriptController::processingUserGesture())
+return ShouldOpenExternalURLsPolicy::ShouldAllow;
+return propagatedPolicy;
+}
+
 void FrameLoader::loadURL(const FrameLoadRequest frameLoadRequest, const String referrer, FrameLoadType newLoadType, Event* event, PassRefPtrFormState prpFormState)
 {
 if (m_inStopAllLoaders)
@@ -1233,6 +1242,7 @@
 NavigationAction action(request, newLoadType, isFormSubmission, event, frameLoadRequest.shouldOpenExternalURLsPolicy());
 
 if (!targetFrame  !frameName.isEmpty()) {
+action = "" frameLoadRequest.shouldOpenExternalURLsPolicy()));
 policyChecker().checkNewWindowPolicy(action, request, formState.release(), frameName, [this, allowNavigationToInvalidURL, openerPolicy](const ResourceRequest request, PassRefPtrFormState formState, const String frameName, const NavigationAction action, bool shouldContinue) {
 continueLoadAfterNewWindowPolicy(request, formState, frameName, action, shouldContinue, allowNavigationToInvalidURL, openerPolicy);
 });
@@ -3457,12 +3467,7 @@
 
 void FrameLoader::applyShouldOpenExternalURLsPolicyToNewDocumentLoader(DocumentLoader documentLoader, ShouldOpenExternalURLsPolicy propagatedPolicy)
 {
-if (!m_frame.isMainFrame())
-documentLoader.setShouldOpenExternalURLsPolicy(ShouldOpenExternalURLsPolicy::ShouldNotAllow);
-else if (ScriptController::processingUserGesture())
-documentLoader.setShouldOpenExternalURLsPolicy(ShouldOpenExternalURLsPolicy::ShouldAllow);
-else
-documentLoader.setShouldOpenExternalURLsPolicy(propagatedPolicy);
+documentLoader.setShouldOpenExternalURLsPolicy(shouldOpenExternalURLsPolicyToApply(m_frame, propagatedPolicy));
 }
 
 bool 

[webkit-changes] [187072] trunk/Source/WebKit2

2015-07-20 Thread simon . fraser
Title: [187072] trunk/Source/WebKit2








Revision 187072
Author simon.fra...@apple.com
Date 2015-07-20 21:37:33 -0700 (Mon, 20 Jul 2015)


Log Message
Fix the iOS build.

* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h




Diff

Modified: trunk/Source/WebKit2/ChangeLog (187071 => 187072)

--- trunk/Source/WebKit2/ChangeLog	2015-07-21 04:37:32 UTC (rev 187071)
+++ trunk/Source/WebKit2/ChangeLog	2015-07-21 04:37:33 UTC (rev 187072)
@@ -1,5 +1,11 @@
 2015-07-20  Simon Fraser  simon.fra...@apple.com
 
+Fix the iOS build.
+
+* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
+
+2015-07-20  Simon Fraser  simon.fra...@apple.com
+
 Facebook in tiled fullscreen is slow
 https://bugs.webkit.org/show_bug.cgi?id=147134
 rdar://problem/21823349


Modified: trunk/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h (187071 => 187072)

--- trunk/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h	2015-07-21 04:37:32 UTC (rev 187071)
+++ trunk/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h	2015-07-21 04:37:33 UTC (rev 187072)
@@ -34,6 +34,7 @@
 #include atomic
 #include dispatch/dispatch.h
 #include wtf/HashMap.h
+#include wtf/WeakPtr.h
 
 namespace WebCore {
 class PlatformCALayer;






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


[webkit-changes] [187059] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187059] branches/safari-601.1-branch/Source/WebCore








Revision 187059
Author matthew_han...@apple.com
Date 2015-07-20 21:36:42 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186875. rdar://problem/21643094

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/html/canvas/DOMPath.h




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187058 => 187059)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:40 UTC (rev 187058)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:42 UTC (rev 187059)
@@ -1,5 +1,16 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186875. rdar://problem/21643094
+
+2015-07-15  Brent Fulgham  bfulg...@apple.com
+
+[Win] Another build fix after r186858.
+
+* html/canvas/DOMPath.h: Don't use WEBCORE_EXPORT on the
+overall class and the destructor declaration.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186867. rdar://problem/21643094
 
 2015-07-15  Brent Fulgham  bfulg...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/html/canvas/DOMPath.h (187058 => 187059)

--- branches/safari-601.1-branch/Source/WebCore/html/canvas/DOMPath.h	2015-07-21 04:36:40 UTC (rev 187058)
+++ branches/safari-601.1-branch/Source/WebCore/html/canvas/DOMPath.h	2015-07-21 04:36:42 UTC (rev 187059)
@@ -38,7 +38,7 @@
 class WEBCORE_EXPORT DOMPath final : public RefCountedDOMPath, public CanvasPathMethods {
 WTF_MAKE_FAST_ALLOCATED;
 public:
-WEBCORE_EXPORT virtual ~DOMPath();
+virtual ~DOMPath();
 
 static RefDOMPath create() { return adoptRef(*new DOMPath); }
 static RefDOMPath create(const Path path) { return adoptRef(*new DOMPath(path)); }






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


[webkit-changes] [187060] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187060] branches/safari-601.1-branch/Source/WebCore








Revision 187060
Author matthew_han...@apple.com
Date 2015-07-20 21:36:45 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186890. rdar://problem/21643094

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp
branches/safari-601.1-branch/Source/WebCore/page/mac/TextIndicatorWindow.mm




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187059 => 187060)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:42 UTC (rev 187059)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:45 UTC (rev 187060)
@@ -1,5 +1,35 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186890. rdar://problem/21643094
+
+2015-07-15  Tim Horton  timothy_hor...@apple.com
+
+Move indicator rect uniting code to TextIndicatorWindow instead of TextIndicator
+https://bugs.webkit.org/show_bug.cgi?id=146992
+rdar://problem/21643094
+
+Reviewed by Daniel Bates.
+
+Having to unite all the rects if any overlap is an implementation
+detail of the Mac TextIndicatorWindow presentation, not a fundamental
+property of TextIndicator.
+
+Other TextIndicator presentations might be able to handle overlapping
+rects more effectively, so we shouldn't lose information unless we need to.
+
+This also avoids having a second copy of some constants!
+
+* page/TextIndicator.cpp:
+(WebCore::outsetIndicatorRectIncludingShadow): Deleted.
+(WebCore::textIndicatorsForTextRectsOverlap): Deleted.
+(WebCore::TextIndicator::TextIndicator): Deleted.
+* page/mac/TextIndicatorWindow.mm:
+(outsetIndicatorRectIncludingShadow):
+(textIndicatorsForTextRectsOverlap):
+(-[WebTextIndicatorView initWithFrame:textIndicator:margin:offset:]):
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186875. rdar://problem/21643094
 
 2015-07-15  Brent Fulgham  bfulg...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp (187059 => 187060)

--- branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp	2015-07-21 04:36:42 UTC (rev 187059)
+++ branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp	2015-07-21 04:36:45 UTC (rev 187060)
@@ -40,52 +40,8 @@
 
 using namespace WebCore;
 
-// These should match the values in TextIndicatorWindow.
-// FIXME: Ideally these would only be in one place.
-#if ENABLE(LEGACY_TEXT_INDICATOR_STYLE)
-const float horizontalBorder = 3;
-const float verticalBorder = 1;
-const float dropShadowBlurRadius = 1.5;
-#else
-const float horizontalBorder = 2;
-const float verticalBorder = 1;
-const float dropShadowBlurRadius = 12;
-#endif
-
 namespace WebCore {
 
-static FloatRect outsetIndicatorRectIncludingShadow(const FloatRect rect)
-{
-FloatRect outsetRect = rect;
-outsetRect.inflateX(dropShadowBlurRadius + horizontalBorder);
-outsetRect.inflateY(dropShadowBlurRadius + verticalBorder);
-return outsetRect;
-}
-
-static bool textIndicatorsForTextRectsOverlap(const VectorFloatRect textRects)
-{
-size_t count = textRects.size();
-if (count = 1)
-return false;
-
-VectorFloatRect indicatorRects;
-indicatorRects.reserveInitialCapacity(count);
-
-for (size_t i = 0; i  count; ++i) {
-FloatRect indicatorRect = outsetIndicatorRectIncludingShadow(textRects[i]);
-
-for (size_t j = indicatorRects.size(); j; ) {
---j;
-if (indicatorRect.intersects(indicatorRects[j]))
-return true;
-}
-
-indicatorRects.uncheckedAppend(indicatorRect);
-}
-
-return false;
-}
-
 RefTextIndicator TextIndicator::create(const TextIndicatorData data)
 {
 return adoptRef(*new TextIndicator(data));
@@ -189,11 +145,6 @@
 : m_data(data)
 {
 ASSERT(m_data.contentImageScaleFactor != 1 || m_data.contentImage-size() == enclosingIntRect(m_data.selectionRectInRootViewCoordinates).size());
-
-if (textIndicatorsForTextRectsOverlap(m_data.textRectsInBoundingRectCoordinates)) {
-m_data.textRectsInBoundingRectCoordinates[0] = unionRect(m_data.textRectsInBoundingRectCoordinates);
-m_data.textRectsInBoundingRectCoordinates.shrink(1);
-}
 }
 
 TextIndicator::~TextIndicator()


Modified: branches/safari-601.1-branch/Source/WebCore/page/mac/TextIndicatorWindow.mm (187059 => 187060)

--- branches/safari-601.1-branch/Source/WebCore/page/mac/TextIndicatorWindow.mm	2015-07-21 04:36:42 UTC (rev 187059)
+++ branches/safari-601.1-branch/Source/WebCore/page/mac/TextIndicatorWindow.mm	2015-07-21 04:36:45 UTC (rev 187060)
@@ -29,6 +29,7 @@
 #if PLATFORM(MAC)
 
 #import CoreGraphicsSPI.h
+#import GeometryUtilities.h
 #import GraphicsContext.h
 

[webkit-changes] [187061] branches/safari-601.1-branch

2015-07-20 Thread matthew_hanson
Title: [187061] branches/safari-601.1-branch








Revision 187061
Author matthew_han...@apple.com
Date 2015-07-20 21:36:49 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186912. rdar://problem/21866271

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtension.cpp
branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtension.h
branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtensionsBackend.cpp
branches/safari-601.1-branch/Source/WebCore/contentextensions/DFABytecodeInterpreter.cpp
branches/safari-601.1-branch/Source/WebCore/contentextensions/DFABytecodeInterpreter.h
branches/safari-601.1-branch/Tools/ChangeLog
branches/safari-601.1-branch/Tools/TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187060 => 187061)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:45 UTC (rev 187060)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:49 UTC (rev 187061)
@@ -1,5 +1,40 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186912. rdar://problem/21866271
+
+2015-07-16  Alex Christensen  achristen...@webkit.org
+
+[Content Extensions] Cache domain actions
+https://bugs.webkit.org/show_bug.cgi?id=146817
+
+Reviewed by Benjamin Poulain.
+
+Right now we run regular expressions on the domain every time we have any rules that match with if-domain or unless-domain.
+This caches the results of running regular expressions on the domain of the main document's url so we only need to
+run those regular expressions when the main document changes domain.  We also spend less time adding unused actions into HashSets.
+
+All behavior is covered by existing api tests, but I added some to explicitly test if-domain and unless-domain with multiple load types.
+
+* contentextensions/ContentExtension.cpp:
+(WebCore::ContentExtensions::ContentExtension::globalDisplayNoneStyleSheet):
+(WebCore::ContentExtensions::ContentExtension::cachedDomainActions):
+* contentextensions/ContentExtension.h:
+(WebCore::ContentExtensions::ContentExtension::identifier):
+(WebCore::ContentExtensions::ContentExtension::compiledExtension):
+* contentextensions/ContentExtensionsBackend.cpp:
+(WebCore::ContentExtensions::ContentExtensionsBackend::actionsForResourceLoad):
+* contentextensions/DFABytecodeInterpreter.cpp:
+(WebCore::ContentExtensions::getJumpDistance):
+(WebCore::ContentExtensions::matchesDomain):
+(WebCore::ContentExtensions::DFABytecodeInterpreter::interpretAppendAction):
+(WebCore::ContentExtensions::DFABytecodeInterpreter::interpretTestFlagsAndAppendAction):
+(WebCore::ContentExtensions::DFABytecodeInterpreter::actionsForDefaultStylesheetFromDFARoot):
+(WebCore::ContentExtensions::DFABytecodeInterpreter::interpretWithDomains):
+(WebCore::ContentExtensions::DFABytecodeInterpreter::interpret):
+* contentextensions/DFABytecodeInterpreter.h:
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186890. rdar://problem/21643094
 
 2015-07-15  Tim Horton  timothy_hor...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtension.cpp (187060 => 187061)

--- branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtension.cpp	2015-07-21 04:36:45 UTC (rev 187060)
+++ branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtension.cpp	2015-07-21 04:36:49 UTC (rev 187061)
@@ -75,6 +75,21 @@
 return m_globalDisplayNoneStyleSheet.get();
 }
 
+const DFABytecodeInterpreter::Actions ContentExtension::cachedDomainActions(const String domain)
+{
+if (m_cachedDomain != domain) {
+DFABytecodeInterpreter interpreter(m_compiledExtension-domainFiltersBytecode(), m_compiledExtension-domainFiltersBytecodeLength());
+const uint16_t allLoadTypesAndResourceTypes = LoadTypeMask | ResourceTypeMask;
+auto domainActions = interpreter.interpret(domain.utf8(), allLoadTypesAndResourceTypes);
+
+m_cachedDomainActions.clear();
+for (uint64_t action : domainActions)
+m_cachedDomainActions.add(action);
+m_cachedDomain = domain;
+}
+return m_cachedDomainActions;
+}
+
 } // namespace ContentExtensions
 } // namespace WebCore
 


Modified: branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtension.h (187060 => 187061)

--- branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtension.h	2015-07-21 04:36:45 UTC (rev 187060)
+++ branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtension.h	

[webkit-changes] [187058] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187058] branches/safari-601.1-branch/Source/WebCore








Revision 187058
Author matthew_han...@apple.com
Date 2015-07-20 21:36:40 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186867. rdar://problem/21643094

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
branches/safari-601.1-branch/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187057 => 187058)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:37 UTC (rev 187057)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:40 UTC (rev 187058)
@@ -1,5 +1,18 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186867. rdar://problem/21643094
+
+2015-07-15  Brent Fulgham  bfulg...@apple.com
+
+[Win] Unreviewed build fix after r186858.
+
+Add missing DOMPath and PathUtilities files to project.
+
+* WebCore.vcxproj/WebCore.vcxproj:
+* WebCore.vcxproj/WebCore.vcxproj.filters:
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186863. rdar://problem/21715050
 
 2015-07-15  Brady Eidson  beid...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj (187057 => 187058)

--- branches/safari-601.1-branch/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj	2015-07-21 04:36:37 UTC (rev 187057)
+++ branches/safari-601.1-branch/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj	2015-07-21 04:36:40 UTC (rev 187058)
@@ -6664,6 +6664,7 @@
 ClCompile Include=..\html\canvas\ANGLEInstancedArrays.cpp /
 ClCompile Include=..\html\canvas\CanvasContextAttributes.cpp /
 ClCompile Include=..\html\canvas\CanvasPathMethods.cpp /
+ClCompile Include=..\html\canvas\DOMPath.cpp /
 ClCompile Include=..\html\canvas\EXTShaderTextureLOD.cpp /
 ClCompile Include=..\html\canvas\EXTsRGB.cpp /
 ClCompile Include=..\html\canvas\EXTBlendMinMax.cpp /
@@ -7654,6 +7655,7 @@
 ClCompile Include=..\platform\graphics\opengl\GraphicsContext3DOpenGLCommon.cpp /
 ClCompile Include=..\platform\graphics\opengl\GraphicsContext3DOpenGLES.cpp /
 ClCompile Include=..\platform\graphics\opengl\TemporaryOpenGLSetting.cpp /
+ClCompile Include=..\platform\graphics\PathUtilities.cpp /
 ClCompile Include=..\platform\graphics\PlatformDisplay.cpp
   ExcludedFromBuild Condition='$(Configuration)|$(Platform)'=='Debug|Win32'true/ExcludedFromBuild
   ExcludedFromBuild Condition='$(Configuration)|$(Platform)'=='Debug|x64'true/ExcludedFromBuild
@@ -19569,6 +19571,7 @@
 ClInclude Include=..\html\canvas\ANGLEInstancedArrays.h /
 ClInclude Include=..\html\canvas\CanvasContextAttributes.h /
 ClInclude Include=..\html\canvas\CanvasPathMethods.h /
+ClInclude Include=..\html\canvas\DOMPath.h /
 ClInclude Include=..\html\canvas\EXTShaderTextureLOD.h /
 ClInclude Include=..\html\canvas\EXTsRGB.h /
 ClInclude Include=..\html\canvas\EXTFragDepth.h /
@@ -20050,6 +20053,7 @@
 ClInclude Include=..\platform\graphics\opengl\GLDefs.h /
 ClInclude Include=..\platform\graphics\opengl\GLPlatformContext.h /
 ClInclude Include=..\platform\graphics\opengl\GLPlatformSurface.h /
+ClInclude Include=..\platform\graphics\PathUtilities.h /
 ClInclude Include=..\platform\graphics\PlatformDisplay.h /
 ClInclude Include=..\platform\graphics\texmap\BitmapTexture.h /
 ClInclude Include=..\platform\graphics\texmap\BitmapTextureGL.h /


Modified: branches/safari-601.1-branch/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters (187057 => 187058)

--- branches/safari-601.1-branch/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters	2015-07-21 04:36:37 UTC (rev 187057)
+++ branches/safari-601.1-branch/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters	2015-07-21 04:36:40 UTC (rev 187058)
@@ -7258,6 +7258,17 @@
 ClCompile Include=..\platform\win\MemoryPressureHandlerWin.cpp
   Filterplatform\win/Filter
 /ClCompile
+ClCompile Include=..\dom\NodeOrString.cpp /
+ClCompile Include=..\bindings\js\JSCharacterDataCustom.cpp /
+ClCompile Include=..\bindings\js\JSDocumentFragmentCustom.cpp /
+ClCompile Include=..\bindings\js\JSDocumentTypeCustom.cpp /
+ClCompile Include=..\bindings\js\JSNodeOrString.cpp /
+ClCompile Include=..\html\canvas\DOMPath.cpp
+  Filterhtml\canvas/Filter
+/ClCompile
+ClCompile Include=..\platform\graphics\PathUtilities.cpp
+  Filterplatform\graphics/Filter
+/ClCompile
   /ItemGroup
   ItemGroup
 ClInclude Include=..\Modules\geolocation\Coordinates.h
@@ -15239,6 +15250,14 @@
 ClInclude Include=..\platform\VNodeTracker.h
   Filterplatform/Filter
 /ClInclude
+ClInclude Include=..\dom\NodeOrString.h /
+ClInclude Include=..\bindings\js\JSNodeOrString.h /
+ClInclude 

[webkit-changes] [187055] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187055] branches/safari-601.1-branch/Source/WebCore








Revision 187055
Author matthew_han...@apple.com
Date 2015-07-20 21:36:27 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186854. rdar://problem/21840147

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/Modules/mediasession/WebMediaSessionManager.cpp
branches/safari-601.1-branch/Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.cpp
branches/safari-601.1-branch/Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.h
branches/safari-601.1-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h
branches/safari-601.1-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.mm




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187054 => 187055)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 02:00:56 UTC (rev 187054)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:27 UTC (rev 187055)
@@ -1,3 +1,32 @@
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
+Merge r186854. rdar://problem/21840147
+
+2015-07-15  Eric Carlson  eric.carl...@apple.com
+
+[Mac] AirPlay route is not always set automatically
+https://bugs.webkit.org/show_bug.cgi?id=146969
+
+Reviewed by Jer Noble.
+
+* Modules/mediasession/WebMediaSessionManager.cpp:
+(WebCore::WebMediaSessionManager::configurePlaybackTargetClients): Return early if there are
+  no clients. Make the first client in the vector automatically play to the target if there
+  is no other match and there is an active route.
+(WebCore::WebMediaSessionManager::watchdogTimerFired): Call picker.invalidatePlaybackTargets,
+  not stopMonitoringPlaybackTargets.
+
+* platform/graphics/MediaPlaybackTargetPicker.cpp:
+(WebCore::MediaPlaybackTargetPicker::invalidatePlaybackTargets): New.
+* platform/graphics/MediaPlaybackTargetPicker.h:
+
+* platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h:
+* platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.mm:
+(WebCore::MediaPlaybackTargetPickerMac::stopMonitoringPlaybackTargets): Do nothing, AirPlay
+  automatically stops monitoring when appropriate and release the picker also releases
+  the output context, which drops the route.
+(WebCore::MediaPlaybackTargetPickerMac::invalidatePlaybackTargets): New.
+
 2015-07-16  Matthew Hanson  matthew_han...@apple.com
 
 Merge r186799. rdar://problem/20542574


Modified: branches/safari-601.1-branch/Source/WebCore/Modules/mediasession/WebMediaSessionManager.cpp (187054 => 187055)

--- branches/safari-601.1-branch/Source/WebCore/Modules/mediasession/WebMediaSessionManager.cpp	2015-07-21 02:00:56 UTC (rev 187054)
+++ branches/safari-601.1-branch/Source/WebCore/Modules/mediasession/WebMediaSessionManager.cpp	2015-07-21 04:36:27 UTC (rev 187055)
@@ -245,6 +245,9 @@
 
 void WebMediaSessionManager::configurePlaybackTargetClients()
 {
+if (m_clientState.isEmpty())
+return;
+
 size_t indexOfClientThatRequestedPicker = notFound;
 size_t indexOfLastClientToRequestPicker = notFound;
 size_t indexOfClientWillPlayToTarget = notFound;
@@ -269,6 +272,8 @@
 indexOfClientWillPlayToTarget = indexOfClientThatRequestedPicker;
 if (indexOfClientWillPlayToTarget == notFound  indexOfLastClientToRequestPicker != notFound)
 indexOfClientWillPlayToTarget = indexOfLastClientToRequestPicker;
+if (indexOfClientWillPlayToTarget == notFound  haveActiveRoute)
+indexOfClientWillPlayToTarget = 0;
 
 LOG(Media, WebMediaSessionManager::configurePlaybackTargetClients - indexOfClientWillPlayToTarget = %zu, indexOfClientWillPlayToTarget);
 
@@ -288,7 +293,6 @@
 
 if (haveActiveRoute  indexOfClientWillPlayToTarget != notFound) {
 auto state = m_clientState[indexOfClientWillPlayToTarget];
-
 if (!flagsAreSet(state-flags, MediaProducer::IsPlayingToExternalDevice))
 state-client.setShouldPlayToPlaybackTarget(state-contextId, true);
 }
@@ -410,7 +414,7 @@
 if (!m_playbackTarget)
 return;
 
-targetPicker().stopMonitoringPlaybackTargets();
+targetPicker().invalidatePlaybackTargets();
 }
 
 } // namespace WebCore


Modified: branches/safari-601.1-branch/Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.cpp (187054 => 187055)

--- branches/safari-601.1-branch/Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.cpp	2015-07-21 02:00:56 UTC (rev 187054)
+++ branches/safari-601.1-branch/Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.cpp	2015-07-21 04:36:27 UTC (rev 187055)
@@ -55,6 +55,11 @@
 ASSERT_NOT_REACHED();
 }
 
+void 

[webkit-changes] [187062] branches/safari-601.1-branch/Source

2015-07-20 Thread matthew_hanson
Title: [187062] branches/safari-601.1-branch/Source








Revision 187062
Author matthew_han...@apple.com
Date 2015-07-20 21:36:55 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186916. rdar://problem/21643094

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj
branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp
branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.h
branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/Shared/InteractionInformationAtPosition.cpp
branches/safari-601.1-branch/Source/WebKit2/Shared/InteractionInformationAtPosition.h
branches/safari-601.1-branch/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.h
branches/safari-601.1-branch/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187061 => 187062)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:49 UTC (rev 187061)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:55 UTC (rev 187062)
@@ -1,5 +1,34 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186916. rdar://problem/21643094
+
+2015-07-16  Tim Horton  timothy_hor...@apple.com
+
+Add shrink-wrapped link highlights
+https://bugs.webkit.org/show_bug.cgi?id=147021
+rdar://problem/21643094
+
+Reviewed by Enrica Casucci.
+
+* WebCore.xcodeproj/project.pbxproj:
+* page/TextIndicator.cpp:
+(WebCore::TextIndicator::createWithRange):
+(WebCore::TextIndicator::createWithSelectionInFrame):
+* page/TextIndicator.h:
+Add a margin parameter to TextIndicator; this inflates each text rect
+by the given amount.
+
+Use snapshotFrameRect instead of snapshotSelection because we really
+want an image that exactly fits textBoundingRectInDocumentCoordinates,
+and snapshotSelection comes up with selection rects in different ways,
+especially on iOS (where it comes up with nothing!).
+
+For now, avoid forcing black text or painting only the selection on iOS.
+Eventually, we should have TextIndicator options for these things that
+are then respected at the presentation layer.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186912. rdar://problem/21866271
 
 2015-07-16  Alex Christensen  achristen...@webkit.org


Modified: branches/safari-601.1-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj (187061 => 187062)

--- branches/safari-601.1-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2015-07-21 04:36:49 UTC (rev 187061)
+++ branches/safari-601.1-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2015-07-21 04:36:55 UTC (rev 187062)
@@ -1126,7 +1126,7 @@
 		2D4F96F81A1ECC240098BF88 /* TextIndicatorWindow.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D4F96F41A1ECC240098BF88 /* TextIndicatorWindow.mm */; };
 		2D5002F81B56D7810020AAF7 /* DOMPath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D5002F71B56D7810020AAF7 /* DOMPath.cpp */; };
 		2D5002FB1B56D7990020AAF7 /* PathUtilities.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D5002F91B56D7990020AAF7 /* PathUtilities.cpp */; };
-		2D5002FC1B56D7990020AAF7 /* PathUtilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D5002FA1B56D7990020AAF7 /* PathUtilities.h */; };
+		2D5002FC1B56D7990020AAF7 /* PathUtilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D5002FA1B56D7990020AAF7 /* PathUtilities.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		2D58D8551A15F65F00A5F726 /* DataDetection.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D58D8531A15F65F00A5F726 /* DataDetection.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		2D58D8561A15F65F00A5F726 /* DataDetection.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D58D8541A15F65F00A5F726 /* DataDetection.mm */; };
 		2D59F1BF1A0044C6001F3D29 /* DataDetectorsSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D59F1BE1A0044C6001F3D29 /* DataDetectorsSPI.h */; settings = {ATTRIBUTES = (Private, ); }; };


Modified: branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp (187061 => 187062)

--- branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp	2015-07-21 04:36:49 UTC (rev 187061)
+++ branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp	2015-07-21 04:36:55 UTC (rev 187062)
@@ -47,7 +47,7 @@
 return adoptRef(*new TextIndicator(data));
 }
 
-RefPtrTextIndicator TextIndicator::createWithRange(const Range range, TextIndicatorPresentationTransition presentationTransition)
+RefPtrTextIndicator TextIndicator::createWithRange(const Range range, 

[webkit-changes] [187068] branches/safari-601.1-branch

2015-07-20 Thread matthew_hanson
Title: [187068] branches/safari-601.1-branch








Revision 187068
Author matthew_han...@apple.com
Date 2015-07-20 21:37:20 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186974. rdar://problem/21106945

Modified Paths

branches/safari-601.1-branch/LayoutTests/ChangeLog
branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/accessibility/AccessibilityTable.cpp


Added Paths

branches/safari-601.1-branch/LayoutTests/accessibility/iframe-within-cell-expected.txt
branches/safari-601.1-branch/LayoutTests/accessibility/iframe-within-cell.html




Diff

Modified: branches/safari-601.1-branch/LayoutTests/ChangeLog (187067 => 187068)

--- branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:37:17 UTC (rev 187067)
+++ branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:37:20 UTC (rev 187068)
@@ -1,5 +1,20 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186974. rdar://problem/21106945
+
+2015-07-17  Nan Wang  n_w...@apple.com
+
+AX: iframe within table cell is inaccessible to VoiceOver
+https://bugs.webkit.org/show_bug.cgi?id=147001
+rdar://problem/21106945
+
+Reviewed by Chris Fleizach.
+
+* accessibility/iframe-within-cell-expected.txt: Added.
+* accessibility/iframe-within-cell.html: Added.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186968. rdar://problem/21359811
 
 2015-07-17  Myles C. Maxfield  mmaxfi...@apple.com


Added: branches/safari-601.1-branch/LayoutTests/accessibility/iframe-within-cell-expected.txt (0 => 187068)

--- branches/safari-601.1-branch/LayoutTests/accessibility/iframe-within-cell-expected.txt	(rev 0)
+++ branches/safari-601.1-branch/LayoutTests/accessibility/iframe-within-cell-expected.txt	2015-07-21 04:37:20 UTC (rev 187068)
@@ -0,0 +1,11 @@
+This tests iframe within a cell is accessible.
+
+On success, you will see a series of PASS messages, followed by TEST COMPLETE.
+
+
+PASS successfullyParsed is true
+
+TEST COMPLETE
+Role for iframe cell is:  AXRole: AXCell .
+
+Cell A		Cell C


Added: branches/safari-601.1-branch/LayoutTests/accessibility/iframe-within-cell.html (0 => 187068)

--- branches/safari-601.1-branch/LayoutTests/accessibility/iframe-within-cell.html	(rev 0)
+++ branches/safari-601.1-branch/LayoutTests/accessibility/iframe-within-cell.html	2015-07-21 04:37:20 UTC (rev 187068)
@@ -0,0 +1,37 @@
+!DOCTYPE HTML PUBLIC -//IETF//DTD HTML//EN
+html
+head
+script src=""
+script
+
+if (window.testRunner)
+testRunner.dumpAsText();
+
+function runTest()
+{
+document.getElementById(frame_cell).focus()
+if (window.accessibilityController) {
+document.body.focus();
+var frameElement = accessibilityController.accessibleElementById(frame_cell);
+debug(Role for iframe cell is:   + frameElement.role +  .\n);
+}
+}
+
+/script
+/head
+
+body _onload_=runTest()
+table cellpadding=0 cellspacing=0 border=2
+tr
+td Cell A /td
+td id=frame_cell description=Cell Biframe src="" width=100%/iframe/td
+td Cell C /td
+/tr
+/table
+
+script
+description(This tests iframe within a cell is accessible.);
+/script
+script src=""
+/body
+/html


Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187067 => 187068)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:17 UTC (rev 187067)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:20 UTC (rev 187068)
@@ -1,5 +1,27 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186974. rdar://problem/21106945
+
+2015-07-17  Nan Wang  n_w...@apple.com
+
+AX: iframe within table cell is inaccessible to VoiceOver
+https://bugs.webkit.org/show_bug.cgi?id=147001
+rdar://problem/21106945
+
+Reviewed by Chris Fleizach.
+
+When a table cell is created before its parent table determines if it should be ignored or not,
+the table cell may cache the wrong role. Fix that by allowing each table cell to update its role
+after the table makes this determination.
+
+Test: accessibility/iframe-within-cell.html
+
+* accessibility/AccessibilityTable.cpp:
+(WebCore::AccessibilityTable::addChildren):
+(WebCore::AccessibilityTable::addChildrenFromSection):
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186968. rdar://problem/21359811
 
 2015-07-17  Myles C. Maxfield  mmaxfi...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/accessibility/AccessibilityTable.cpp (187067 => 187068)

--- branches/safari-601.1-branch/Source/WebCore/accessibility/AccessibilityTable.cpp	2015-07-21 04:37:17 UTC (rev 187067)
+++ branches/safari-601.1-branch/Source/WebCore/accessibility/AccessibilityTable.cpp	2015-07-21 04:37:20 UTC (rev 187068)
@@ 

[webkit-changes] [187070] branches/safari-601.1-branch/Source

2015-07-20 Thread matthew_hanson
Title: [187070] branches/safari-601.1-branch/Source








Revision 187070
Author matthew_han...@apple.com
Date 2015-07-20 21:37:29 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186978. rdar://problem/21643094

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/editing/FrameSelection.cpp
branches/safari-601.1-branch/Source/WebCore/editing/FrameSelection.h
branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp
branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187069 => 187070)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:25 UTC (rev 187069)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:29 UTC (rev 187070)
@@ -1,5 +1,31 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186978. rdar://problem/21643094
+
+2015-07-17  Tim Horton  timothy_hor...@apple.com
+
+[iOS] TextIndicator has a large forehead when line-height  1
+https://bugs.webkit.org/show_bug.cgi?id=147058
+rdar://problem/21643094
+
+Reviewed by Dean Jackson.
+
+* editing/FrameSelection.cpp:
+(WebCore::FrameSelection::getClippedVisibleTextRectangles):
+* editing/FrameSelection.h:
+Add a parameter controlling whether getClippedVisibleTextRectangles
+returns selection-height rects (including extra line-height) or text-height
+rects (including only the text height). Plumb it down.
+
+* page/TextIndicator.cpp:
+(WebCore::TextIndicator::createWithRange):
+(WebCore::TextIndicator::createWithSelectionInFrame):
+Use the tighter text-height rects on iOS, where there's no selection highlight to cover up.
+Remove an assertion that is no longer always true, and which is mostly obsoleted by the
+fact that we don't let FrameSnapshotting code arbitrarily decide the rect to snapshot anymore.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186976. rdar://problem/21643094
 
 2015-07-17  Tim Horton  timothy_hor...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/editing/FrameSelection.cpp (187069 => 187070)

--- branches/safari-601.1-branch/Source/WebCore/editing/FrameSelection.cpp	2015-07-21 04:37:25 UTC (rev 187069)
+++ branches/safari-601.1-branch/Source/WebCore/editing/FrameSelection.cpp	2015-07-21 04:37:29 UTC (rev 187070)
@@ -2075,7 +2075,7 @@
 return clipToVisibleContent ? intersection(selectionRect, view-visibleContentRect(ScrollableArea::LegacyIOSDocumentVisibleRect)) : selectionRect;
 }
 
-void FrameSelection::getClippedVisibleTextRectangles(VectorFloatRect rectangles) const
+void FrameSelection::getClippedVisibleTextRectangles(VectorFloatRect rectangles, TextRectangleHeight textRectHeight) const
 {
 RenderView* root = m_frame-contentRenderer();
 if (!root)
@@ -2084,7 +2084,7 @@
 FloatRect visibleContentRect = m_frame-view()-visibleContentRect(ScrollableArea::LegacyIOSDocumentVisibleRect);
 
 VectorFloatQuad quads;
-toNormalizedRange()-textQuads(quads, true);
+toNormalizedRange()-textQuads(quads, textRectHeight == TextRectangleHeight::SelectionHeight);
 
 size_t size = quads.size();
 for (size_t i = 0; i  size; ++i) {


Modified: branches/safari-601.1-branch/Source/WebCore/editing/FrameSelection.h (187069 => 187070)

--- branches/safari-601.1-branch/Source/WebCore/editing/FrameSelection.h	2015-07-21 04:37:25 UTC (rev 187069)
+++ branches/safari-601.1-branch/Source/WebCore/editing/FrameSelection.h	2015-07-21 04:37:29 UTC (rev 187070)
@@ -260,7 +260,8 @@
 
 WEBCORE_EXPORT FloatRect selectionBounds(bool clipToVisibleContent = true) const;
 
-WEBCORE_EXPORT void getClippedVisibleTextRectangles(VectorFloatRect) const;
+enum class TextRectangleHeight { TextHeight, SelectionHeight };
+WEBCORE_EXPORT void getClippedVisibleTextRectangles(VectorFloatRect, TextRectangleHeight = TextRectangleHeight::SelectionHeight) const;
 
 WEBCORE_EXPORT HTMLFormElement* currentForm() const;
 


Modified: branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp (187069 => 187070)

--- branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp	2015-07-21 04:37:25 UTC (rev 187069)
+++ branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp	2015-07-21 04:37:29 UTC (rev 187070)
@@ -104,8 +104,17 @@
 RefPtrTextIndicator TextIndicator::createWithSelectionInFrame(Frame frame, TextIndicatorPresentationTransition presentationTransition, unsigned margin)
 {
 VectorFloatRect textRects;
-frame.selection().getClippedVisibleTextRectangles(textRects);
 
+// On iOS, we don't need to expand the TextIndicator to cover the whole selection height.
+// 

[webkit-changes] [187067] branches/safari-601.1-branch/Source/WebKit2

2015-07-20 Thread matthew_hanson
Title: [187067] branches/safari-601.1-branch/Source/WebKit2








Revision 187067
Author matthew_han...@apple.com
Date 2015-07-20 21:37:17 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186969. rdar://problem/21803781

Modified Paths

branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/UIProcess/WebPageProxy.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebKit2/ChangeLog (187066 => 187067)

--- branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 04:37:14 UTC (rev 187066)
+++ branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 04:37:17 UTC (rev 187067)
@@ -1,5 +1,20 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186969. rdar://problem/21803781
+
+2015-07-17  Dan Bernstein  m...@apple.com
+
+REGRESSION (r186964): Crash in WebKit2.CloseFromWithinCreatePage
+https://bugs.webkit.org/show_bug.cgi?id=147055
+
+Reviewed by Alex Christensen.
+
+* UIProcess/WebPageProxy.cpp:
+(WebKit::WebPageProxy::createNewPage): Grab the main frame’s URL before calling out to the
+client, who may destroy the frame.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186964. rdar://problem/21803781
 
 2015-07-17  Dan Bernstein  m...@apple.com


Modified: branches/safari-601.1-branch/Source/WebKit2/UIProcess/WebPageProxy.cpp (187066 => 187067)

--- branches/safari-601.1-branch/Source/WebKit2/UIProcess/WebPageProxy.cpp	2015-07-21 04:37:14 UTC (rev 187066)
+++ branches/safari-601.1-branch/Source/WebKit2/UIProcess/WebPageProxy.cpp	2015-07-21 04:37:17 UTC (rev 187067)
@@ -3526,6 +3526,8 @@
 WebFrameProxy* frame = m_process-webFrame(frameID);
 MESSAGE_CHECK(frame);
 
+auto mainFrameURL = m_mainFrame-url();
+
 RefPtrWebPageProxy newPage = m_uiClient-createNewPage(this, frame, securityOriginData, request, windowFeatures, navigationActionData);
 if (!newPage) {
 newPageID = 0;
@@ -3536,7 +3538,7 @@
 newPageParameters = newPage-creationParameters();
 
 WebsiteDataStore::cloneSessionData(*this, *newPage);
-newPage-m_shouldSuppressAppLinksInNextNavigationPolicyDecision = protocolHostAndPortAreEqual(URL(ParsedURLString, m_mainFrame-url()), request.url());
+newPage-m_shouldSuppressAppLinksInNextNavigationPolicyDecision = protocolHostAndPortAreEqual(URL(ParsedURLString, mainFrameURL), request.url());
 }
 
 void WebPageProxy::showPage()






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


[webkit-changes] [187063] branches/safari-601.1-branch/Source

2015-07-20 Thread matthew_hanson
Title: [187063] branches/safari-601.1-branch/Source








Revision 187063
Author matthew_han...@apple.com
Date 2015-07-20 21:37:00 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186956. rdar://problem/21643094

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/page/FrameSnapshotting.cpp
branches/safari-601.1-branch/Source/WebCore/page/FrameSnapshotting.h
branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp
branches/safari-601.1-branch/Source/WebCore/rendering/PaintPhase.h
branches/safari-601.1-branch/Source/WebCore/rendering/RenderElement.cpp
branches/safari-601.1-branch/Source/WebCore/rendering/RenderLayer.cpp
branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/WebProcess/Plugins/PluginView.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187062 => 187063)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:55 UTC (rev 187062)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:00 UTC (rev 187063)
@@ -1,5 +1,43 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186956. rdar://problem/21643094
+
+2015-07-17  Tim Horton  timothy_hor...@apple.com
+
+iOS TextIndicators include text that is not supposed to be indicated
+https://bugs.webkit.org/show_bug.cgi?id=147028
+rdar://problem/21643094
+
+Reviewed by Sam Weinig.
+
+Paint the selection and background, but not other foregrounds, for iOS TextIndicators.
+
+* page/FrameSnapshotting.cpp:
+(WebCore::snapshotFrameRect):
+* page/FrameSnapshotting.h:
+Add a new snapshot option where we'll paint backgrounds and the selected
+foreground and nothing else.
+Pass the new snapshot option through as a paint behavior.
+
+* page/TextIndicator.cpp:
+(WebCore::TextIndicator::createWithRange):
+Implement the incantations necessary to make a temporary selection
+change not get sent to the UI process and actually have WebCore know about it
+and accurately respond to questions about it.
+
+(WebCore::TextIndicator::createWithSelectionInFrame):
+Paint selection and backgrounds on iOS.
+
+* rendering/PaintPhase.h:
+* rendering/RenderLayer.cpp:
+(WebCore::RenderLayer::paintLayerContents):
+* rendering/RenderElement.cpp:
+(WebCore::RenderElement::selectionColor):
+Add a new paint behavior, SelectionAndBackgroundsOnly, which behaves
+the same as selection only except it allows backgrounds to paint.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186916. rdar://problem/21643094
 
 2015-07-16  Tim Horton  timothy_hor...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/page/FrameSnapshotting.cpp (187062 => 187063)

--- branches/safari-601.1-branch/Source/WebCore/page/FrameSnapshotting.cpp	2015-07-21 04:36:55 UTC (rev 187062)
+++ branches/safari-601.1-branch/Source/WebCore/page/FrameSnapshotting.cpp	2015-07-21 04:37:00 UTC (rev 187063)
@@ -87,6 +87,8 @@
 paintBehavior |= PaintBehaviorForceBlackText;
 if (options  SnapshotOptionsPaintSelectionOnly)
 paintBehavior |= PaintBehaviorSelectionOnly;
+if (options  SnapshotOptionsPaintSelectionAndBackgroundsOnly)
+paintBehavior |= PaintBehaviorSelectionAndBackgroundsOnly;
 
 // Other paint behaviors are set by paintContentsForSnapshot.
 frame.view()-setPaintBehavior(paintBehavior);


Modified: branches/safari-601.1-branch/Source/WebCore/page/FrameSnapshotting.h (187062 => 187063)

--- branches/safari-601.1-branch/Source/WebCore/page/FrameSnapshotting.h	2015-07-21 04:36:55 UTC (rev 187062)
+++ branches/safari-601.1-branch/Source/WebCore/page/FrameSnapshotting.h	2015-07-21 04:37:00 UTC (rev 187063)
@@ -45,6 +45,7 @@
 SnapshotOptionsPaintSelectionOnly = 1  1,
 SnapshotOptionsInViewCoordinates = 1  2,
 SnapshotOptionsForceBlackText = 1  3,
+SnapshotOptionsPaintSelectionAndBackgroundsOnly = 1  4,
 };
 typedef unsigned SnapshotOptions;
 


Modified: branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp (187062 => 187063)

--- branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp	2015-07-21 04:36:55 UTC (rev 187062)
+++ branches/safari-601.1-branch/Source/WebCore/page/TextIndicator.cpp	2015-07-21 04:37:00 UTC (rev 187063)
@@ -27,6 +27,7 @@
 #include TextIndicator.h
 
 #include Document.h
+#include Editor.h
 #include Frame.h
 #include FrameSelection.h
 #include FrameSnapshotting.h
@@ -54,6 +55,11 @@
 if (!frame)
 return nullptr;
 
+#if PLATFORM(IOS)
+frame-editor().setIgnoreCompositionSelectionChange(true);
+frame-selection().setUpdateAppearanceEnabled(true);
+#endif
+
 

[webkit-changes] [187057] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187057] branches/safari-601.1-branch/Source/WebCore








Revision 187057
Author matthew_han...@apple.com
Date 2015-07-20 21:36:37 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186863. rdar://problem/21715050

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/platform/network/mac/CookieJarMac.mm




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187056 => 187057)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:34 UTC (rev 187056)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:36:37 UTC (rev 187057)
@@ -1,5 +1,19 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186863. rdar://problem/21715050
+
+2015-07-15  Brady Eidson  beid...@apple.com
+
+WebKit document.cookie mis-parsing.
+rdar://problem/21715050 and https://bugs.webkit.org/show_bug.cgi?id=146976
+
+Reviewed by Sam Weinig.
+
+* platform/network/mac/CookieJarMac.mm:
+(WebCore::setCookiesFromDOM): Use new CFNetwork SPI when available.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186858. rdar://problem/21643094
 
 2015-07-15  Tim Horton  timothy_hor...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/platform/network/mac/CookieJarMac.mm (187056 => 187057)

--- branches/safari-601.1-branch/Source/WebCore/platform/network/mac/CookieJarMac.mm	2015-07-21 04:36:34 UTC (rev 187056)
+++ branches/safari-601.1-branch/Source/WebCore/platform/network/mac/CookieJarMac.mm	2015-07-21 04:36:37 UTC (rev 187057)
@@ -118,7 +118,18 @@
 String cookieString = cookieStr.contains('=') ? cookieStr : cookieStr + =;
 
 NSURL *cookieURL = url;
-RetainPtrNSArray filteredCookies = filterCookies([NSHTTPCookie cookiesWithResponseHeaderFields:[NSDictionary dictionaryWithObject:cookieString forKey:@Set-Cookie] forURL:cookieURL]);
+NSDictionary *headerFields = [NSDictionary dictionaryWithObject:cookieString forKey:@Set-Cookie];
+
+NSArray *unfilteredCookies;
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored -Wundeclared-selector
+if ([[NSHTTPCookie class] respondsToSelector:@selector(_parsedCookiesWithResponseHeaderFields:forURL:)])
+unfilteredCookies = [NSHTTPCookie performSelector:@selector(_parsedCookiesWithResponseHeaderFields:forURL:) withObject:headerFields withObject:cookieURL];
+#pragma clang diagnostic pop
+else
+unfilteredCookies = [NSHTTPCookie cookiesWithResponseHeaderFields:headerFields forURL:cookieURL];
+
+RetainPtrNSArray filteredCookies = filterCookies(unfilteredCookies);
 ASSERT([filteredCookies.get() count] = 1);
 
 wkSetHTTPCookiesForURL(session.cookieStorage().get(), filteredCookies.get(), cookieURL, firstParty);






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


[webkit-changes] [187075] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187075] branches/safari-601.1-branch/Source/WebCore








Revision 187075
Author matthew_han...@apple.com
Date 2015-07-20 21:37:46 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186990. rdar://problem/21643094

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/platform/graphics/PathUtilities.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187074 => 187075)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:43 UTC (rev 187074)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:46 UTC (rev 187075)
@@ -1,5 +1,19 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186990. rdar://problem/21643094
+
+2015-07-18  David Kilzer  ddkil...@apple.com
+
+REGRESSION (r186976): Windows build broke due to missing definition of M_PI
+
+Attempt to fix the following build failure:
+
+PathUtilities.cpp(182): error C2065: 'M_PI' : undeclared identifier [...\Source\WebCore\WebCore.vcxproj\WebCore.vcxproj]
+
+* platform/graphics/PathUtilities.cpp: Include wtf/MathExtras.h.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186982. rdar://problem/21567820
 
 2015-07-17  Andy Estes  aes...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/platform/graphics/PathUtilities.cpp (187074 => 187075)

--- branches/safari-601.1-branch/Source/WebCore/platform/graphics/PathUtilities.cpp	2015-07-21 04:37:43 UTC (rev 187074)
+++ branches/safari-601.1-branch/Source/WebCore/platform/graphics/PathUtilities.cpp	2015-07-21 04:37:46 UTC (rev 187075)
@@ -31,6 +31,7 @@
 #include FloatRect.h
 #include GeometryUtilities.h
 #include math.h
+#include wtf/MathExtras.h
 
 namespace WebCore {
 






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


[webkit-changes] [187074] branches/safari-601.1-branch/LayoutTests

2015-07-20 Thread matthew_hanson
Title: [187074] branches/safari-601.1-branch/LayoutTests








Revision 187074
Author matthew_han...@apple.com
Date 2015-07-20 21:37:43 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186988. rdar://problem/21567820

Modified Paths

branches/safari-601.1-branch/LayoutTests/ChangeLog
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/form-submission-disabled-expected.txt
branches/safari-601.1-branch/LayoutTests/loader/meta-refresh-disabled-expected.txt




Diff

Modified: branches/safari-601.1-branch/LayoutTests/ChangeLog (187073 => 187074)

--- branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:37:40 UTC (rev 187073)
+++ branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:37:43 UTC (rev 187074)
@@ -1,5 +1,22 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186988. rdar://problem/21567820
+
+2015-07-18  David Kilzer  ddkil...@apple.com
+
+REGRESSION (r186982): http/tests/contentdispositionattachmentsandbox/form-submission-disabled.html and loader/meta-refresh-disabled.html fail
+
+Part of:
+https://bugs.webkit.org/show_bug.cgi?id=147044
+rdar://problem/21567820
+
+* http/tests/contentdispositionattachmentsandbox/form-submission-disabled-expected.txt:
+- Fix line number of console message.
+* loader/meta-refresh-disabled-expected.txt:
+- Add newly expected console message.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186982. rdar://problem/21567820
 
 2015-07-17  Andy Estes  aes...@apple.com


Modified: branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/form-submission-disabled-expected.txt (187073 => 187074)

--- branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/form-submission-disabled-expected.txt	2015-07-21 04:37:40 UTC (rev 187073)
+++ branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/form-submission-disabled-expected.txt	2015-07-21 04:37:43 UTC (rev 187074)
@@ -1,4 +1,4 @@
-CONSOLE MESSAGE: line 21: Blocked form submission to 'http://127.0.0.1:8000/contentdispositionattachmentsandbox/resources/form-submission-frame.php' because the form's frame is sandboxed and the 'allow-forms' permission is not set.
+CONSOLE MESSAGE: line 20: Blocked form submission to 'http://127.0.0.1:8000/contentdispositionattachmentsandbox/resources/form-submission-frame.php' because the form's frame is sandboxed and the 'allow-forms' permission is not set.
 This test verifies that form submission is disabled when 'Content-Disposition: attachment' sandboxing is enabled. A security error will be logged to the console if the test passes.
 
  


Modified: branches/safari-601.1-branch/LayoutTests/loader/meta-refresh-disabled-expected.txt (187073 => 187074)

--- branches/safari-601.1-branch/LayoutTests/loader/meta-refresh-disabled-expected.txt	2015-07-21 04:37:40 UTC (rev 187073)
+++ branches/safari-601.1-branch/LayoutTests/loader/meta-refresh-disabled-expected.txt	2015-07-21 04:37:43 UTC (rev 187074)
@@ -1,3 +1,4 @@
+CONSOLE MESSAGE: line 33: http-equiv 'refresh' is disabled by the embedder.
 This test makes sure the preference to disable meta refreshes works as expected.
 You should see this text when the test is done.
 If you do not see this text, and instead you see a blank page, then the redirect happened, which it should not have.






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


[webkit-changes] [187064] branches/safari-601.1-branch

2015-07-20 Thread matthew_hanson
Title: [187064] branches/safari-601.1-branch








Revision 187064
Author matthew_han...@apple.com
Date 2015-07-20 21:37:05 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186957. rdar://problem/21867831

Modified Paths

branches/safari-601.1-branch/LayoutTests/ChangeLog
branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtensionCompiler.cpp
branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtensionRule.h
branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtensionsBackend.cpp
branches/safari-601.1-branch/Source/WebCore/loader/DocumentLoader.cpp
branches/safari-601.1-branch/Source/WebCore/loader/DocumentLoader.h


Added Paths

branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/css-display-none-with-different-case-sensitivity-are-not-merged-expected.txt
branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/css-display-none-with-different-case-sensitivity-are-not-merged.html
branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/css-display-none-with-different-case-sensitivity-are-not-merged.html.json
branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/css-display-none-with-different-triggers-are-not-merged-expected.txt
branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/css-display-none-with-different-triggers-are-not-merged.html
branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/css-display-none-with-different-triggers-are-not-merged.html.json
branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/two-distinguishable-css-display-none-rules-on-main-resource-expected.txt
branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/two-distinguishable-css-display-none-rules-on-main-resource.html
branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/two-distinguishable-css-display-none-rules-on-main-resource.html.json




Diff

Modified: branches/safari-601.1-branch/LayoutTests/ChangeLog (187063 => 187064)

--- branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:37:00 UTC (rev 187063)
+++ branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:37:05 UTC (rev 187064)
@@ -1,5 +1,26 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186957. rdar://problem/21867831
+
+2015-07-17  Benjamin Poulain  bpoul...@apple.com
+
+[Content Extensions] CSS-display-none rules are not working properly
+https://bugs.webkit.org/show_bug.cgi?id=147024
+
+Reviewed by Sam Weinig.
+
+* http/tests/contentextensions/css-display-none-with-different-case-sensitivity-are-not-merged-expected.txt: Added.
+* http/tests/contentextensions/css-display-none-with-different-case-sensitivity-are-not-merged.html: Added.
+* http/tests/contentextensions/css-display-none-with-different-case-sensitivity-are-not-merged.html.json: Added.
+* http/tests/contentextensions/css-display-none-with-different-triggers-are-not-merged-expected.txt: Added.
+* http/tests/contentextensions/css-display-none-with-different-triggers-are-not-merged.html: Added.
+* http/tests/contentextensions/css-display-none-with-different-triggers-are-not-merged.html.json: Added.
+* http/tests/contentextensions/two-distinguishable-css-display-none-rules-on-main-resource-expected.txt: Added.
+* http/tests/contentextensions/two-distinguishable-css-display-none-rules-on-main-resource.html: Added.
+* http/tests/contentextensions/two-distinguishable-css-display-none-rules-on-main-resource.html.json: Added.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186858. rdar://problem/21643094
 
 2015-07-15  Tim Horton  timothy_hor...@apple.com


Added: branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/css-display-none-with-different-case-sensitivity-are-not-merged-expected.txt (0 => 187064)

--- branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/css-display-none-with-different-case-sensitivity-are-not-merged-expected.txt	(rev 0)
+++ branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/css-display-none-with-different-case-sensitivity-are-not-merged-expected.txt	2015-07-21 04:37:05 UTC (rev 187064)
@@ -0,0 +1,5 @@
+This text should be visible
+
+This text should be visible
+
+This text should be visible


Added: branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/css-display-none-with-different-case-sensitivity-are-not-merged.html (0 => 187064)

--- branches/safari-601.1-branch/LayoutTests/http/tests/contentextensions/css-display-none-with-different-case-sensitivity-are-not-merged.html	(rev 0)
+++ 

[webkit-changes] [187073] branches/safari-601.1-branch

2015-07-20 Thread matthew_hanson
Title: [187073] branches/safari-601.1-branch








Revision 187073
Author matthew_han...@apple.com
Date 2015-07-20 21:37:40 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186982. rdar://problem/21567820

Modified Paths

branches/safari-601.1-branch/LayoutTests/ChangeLog
branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/dom/Document.cpp
branches/safari-601.1-branch/Source/WebCore/dom/Document.h
branches/safari-601.1-branch/Source/WebCore/loader/cache/CachedResourceLoader.cpp
branches/safari-601.1-branch/Source/WebCore/page/Settings.in
branches/safari-601.1-branch/Source/WebKit/mac/ChangeLog
branches/safari-601.1-branch/Source/WebKit/mac/WebView/WebView.mm
branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/WebPage.cpp
branches/safari-601.1-branch/Tools/ChangeLog
branches/safari-601.1-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp


Added Paths

branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/cross-origin-frames-disabled-expected.txt
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/cross-origin-frames-disabled.html
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/form-submission-disabled-expected.txt
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/form-submission-disabled.html
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/http-equiv-disabled-expected.txt
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/http-equiv-disabled.html
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/plugins-disabled-expected.html
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/plugins-disabled.html
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/resources/
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/resources/cross-origin-frames-frame.php
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/resources/form-submission-frame.php
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/resources/http-equiv-frame.php
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/resources/plugins-frame.php
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/resources/scripts-frame.php
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/scripts-disabled-expected.txt
branches/safari-601.1-branch/LayoutTests/http/tests/contentdispositionattachmentsandbox/scripts-disabled.html




Diff

Modified: branches/safari-601.1-branch/LayoutTests/ChangeLog (187072 => 187073)

--- branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:37:33 UTC (rev 187072)
+++ branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:37:40 UTC (rev 187073)
@@ -1,5 +1,33 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186982. rdar://problem/21567820
+
+2015-07-17  Andy Estes  aes...@apple.com
+
+[iOS] Further tighten the sandbox around pages fetched with Content-Disposition: attachment
+https://bugs.webkit.org/show_bug.cgi?id=147044
+rdar://problem/21567820
+
+Reviewed by Brady Eidson.
+
+* http/tests/contentdispositionattachmentsandbox/cross-origin-frames-disabled-expected.txt: Added.
+* http/tests/contentdispositionattachmentsandbox/cross-origin-frames-disabled.html: Added.
+* http/tests/contentdispositionattachmentsandbox/form-submission-disabled-expected.txt: Added.
+* http/tests/contentdispositionattachmentsandbox/form-submission-disabled.html: Added.
+* http/tests/contentdispositionattachmentsandbox/http-equiv-disabled-expected.txt: Added.
+* http/tests/contentdispositionattachmentsandbox/http-equiv-disabled.html: Added.
+* http/tests/contentdispositionattachmentsandbox/plugins-disabled-expected.html: Added.
+* http/tests/contentdispositionattachmentsandbox/plugins-disabled.html: Added.
+* http/tests/contentdispositionattachmentsandbox/resources/cross-origin-frames-frame.php: Added.
+* http/tests/contentdispositionattachmentsandbox/resources/form-submission-frame.php: Added.
+* http/tests/contentdispositionattachmentsandbox/resources/http-equiv-frame.php: Added.
+* http/tests/contentdispositionattachmentsandbox/resources/plugins-frame.php: Added.
+* http/tests/contentdispositionattachmentsandbox/resources/scripts-frame.php: Added.
+  

[webkit-changes] [187080] branches/safari-601.1-branch/Source/JavaScriptCore

2015-07-20 Thread matthew_hanson
Title: [187080] branches/safari-601.1-branch/Source/_javascript_Core








Revision 187080
Author matthew_han...@apple.com
Date 2015-07-20 21:37:58 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187028. rdar://problem/21869970

Modified Paths

branches/safari-601.1-branch/Source/_javascript_Core/ChangeLog
branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGCFAPhase.cpp




Diff

Modified: branches/safari-601.1-branch/Source/_javascript_Core/ChangeLog (187079 => 187080)

--- branches/safari-601.1-branch/Source/_javascript_Core/ChangeLog	2015-07-21 04:37:55 UTC (rev 187079)
+++ branches/safari-601.1-branch/Source/_javascript_Core/ChangeLog	2015-07-21 04:37:58 UTC (rev 187080)
@@ -1,3 +1,28 @@
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
+Merge r187028. rdar://problem/21869970
+
+2015-07-18  Filip Pizlo  fpi...@apple.com
+
+REGRESSION(186691): OSR entry is broken on loop headers that have no live variables
+https://bugs.webkit.org/show_bug.cgi?id=147074
+rdar://problem/21869970
+
+Reviewed by Michael Saboff.
+
+The OSR entry must-handle block/value widening introduced in r186691 would cause the
+CFA to reexecute if it caused any live local variables to change value. But this fails
+if the must-handle block has no live local variables, and the entry block otherwise
+appears to be unreachable.
+
+This fixes the bug by having the change detection include whether the block hadn't been
+visited in addition to whether any local variable values got widened.
+
+This is a ~4% speed-up on SunSpider in browser.
+
+* dfg/DFGCFAPhase.cpp:
+(JSC::DFG::CFAPhase::run):
+
 2015-07-16  Matthew Hanson  matthew_han...@apple.com
 
 Merge r186920. rdar://problem/21764196


Modified: branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGCFAPhase.cpp (187079 => 187080)

--- branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGCFAPhase.cpp	2015-07-21 04:37:55 UTC (rev 187079)
+++ branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGCFAPhase.cpp	2015-07-21 04:37:58 UTC (rev 187080)
@@ -107,7 +107,7 @@
 m_graph, resultFor(node-variableAccessData()-flushFormat()));
 }
 
-if (changed) {
+if (changed || !block-cfaHasVisited) {
 m_changed = true;
 block-cfaShouldRevisit = true;
 }






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


[webkit-changes] [187077] branches/safari-601.1-branch/Source/WebKit2

2015-07-20 Thread matthew_hanson
Title: [187077] branches/safari-601.1-branch/Source/WebKit2








Revision 187077
Author matthew_han...@apple.com
Date 2015-07-20 21:37:51 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187001. rdar://problem/21769577

Modified Paths

branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm




Diff

Modified: branches/safari-601.1-branch/Source/WebKit2/ChangeLog (187076 => 187077)

--- branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 04:37:48 UTC (rev 187076)
+++ branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 04:37:51 UTC (rev 187077)
@@ -1,5 +1,37 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187001. rdar://problem/21769577
+
+2015-07-18  Simon Fraser  simon.fra...@apple.com
+
+Scroll position jumps when scrolling scaling pages down in split view
+https://bugs.webkit.org/show_bug.cgi?id=147072
+rdar://problem/21769577
+
+Reviewed by Sam Weinig.
+
+When apple.com/music is in Split View at a reduced scale, scrolling the page
+can cause unwanted scroll jumps. This happened because we'd enter
+TiledCoreAnimationDrawingArea::scaleViewToFitDocumentIfNeeded() with a pending
+layout, so run the autosizing logic. When scrolled near the bottom, the unconstrained
+layout resulted in a shorter document, which truncated the scroll position. The
+scaled layout then restored the longer document, but it also restored that
+truncated scroll position.
+
+Forcing a layout is sufficient to fix the bug for this page, and doing a single
+layout (which will happen anyway) is preferable to running the autosize logic
+if layout happens to be dirty.
+
+I was not able to make a test to reproduce the problem. Entering
+scaleViewToFitDocumentIfNeeded() with pending layout was triggerable
+using a transform transition, but I was not able to reproduce incorrect
+scroll position restoration.
+
+* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
+(WebKit::TiledCoreAnimationDrawingArea::scaleViewToFitDocumentIfNeeded):
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186982. rdar://problem/21567820
 
 2015-07-17  Andy Estes  aes...@apple.com


Modified: branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm (187076 => 187077)

--- branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2015-07-21 04:37:48 UTC (rev 187076)
+++ branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2015-07-21 04:37:51 UTC (rev 187077)
@@ -280,6 +280,8 @@
 if (!m_shouldScaleViewToFitDocument)
 return;
 
+m_webPage.layoutIfNeeded();
+
 int viewWidth = m_webPage.size().width();
 bool documentWidthChangedOrInvalidated = m_webPage.mainFrame()-view()-needsLayout() || (m_lastDocumentSizeForScaleToFit.width() != m_webPage.mainFrameView()-renderView()-unscaledDocumentRect().width());
 bool viewWidthChanged = m_lastViewSizeForScaleToFit.width() != viewWidth;






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


[webkit-changes] [187085] branches/safari-601.1-branch

2015-07-20 Thread matthew_hanson
Title: [187085] branches/safari-601.1-branch








Revision 187085
Author matthew_han...@apple.com
Date 2015-07-20 21:38:19 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186955. rdar://problem/14489674

Modified Paths

branches/safari-601.1-branch/LayoutTests/ChangeLog
branches/safari-601.1-branch/LayoutTests/fast/events/constructors/custom-event-constructor-expected.txt
branches/safari-601.1-branch/LayoutTests/fast/events/constructors/custom-event-constructor.html
branches/safari-601.1-branch/Source/WebCore/CMakeLists.txt
branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj
branches/safari-601.1-branch/Source/WebCore/bindings/js/DOMWrapperWorld.h
branches/safari-601.1-branch/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp
branches/safari-601.1-branch/Source/WebCore/bindings/js/JSMessageEventCustom.cpp
branches/safari-601.1-branch/Source/WebCore/bindings/js/JSPopStateEventCustom.cpp
branches/safari-601.1-branch/Source/WebCore/dom/CustomEvent.cpp
branches/safari-601.1-branch/Source/WebCore/dom/CustomEvent.h
branches/safari-601.1-branch/Source/WebCore/dom/CustomEvent.idl
branches/safari-601.1-branch/Source/WebCore/dom/MessageEvent.cpp
branches/safari-601.1-branch/Source/WebCore/dom/MessageEvent.h
branches/safari-601.1-branch/Source/WebCore/dom/PopStateEvent.cpp
branches/safari-601.1-branch/Source/WebCore/dom/PopStateEvent.h
branches/safari-601.1-branch/Source/WebCore/testing/Internals.cpp
branches/safari-601.1-branch/Source/WebCore/testing/Internals.h
branches/safari-601.1-branch/Source/WebCore/testing/Internals.idl


Added Paths

branches/safari-601.1-branch/LayoutTests/fast/events/event-leak-objects-expected.txt
branches/safari-601.1-branch/LayoutTests/fast/events/event-leak-objects.html
branches/safari-601.1-branch/LayoutTests/fast/events/event-properties-gc-expected.txt
branches/safari-601.1-branch/LayoutTests/fast/events/event-properties-gc.html
branches/safari-601.1-branch/Source/WebCore/bindings/js/JSCustomEventCustom.cpp




Diff

Modified: branches/safari-601.1-branch/LayoutTests/ChangeLog (187084 => 187085)

--- branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:38:11 UTC (rev 187084)
+++ branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:38:19 UTC (rev 187085)
@@ -1,5 +1,27 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186955. rdar://problem/14489674
+
+2015-07-16  Mark Lam  mark@apple.com
+
+Remove leak of objects between isolated worlds on custom events, message events, and pop state events.
+https://bugs.webkit.org/show_bug.cgi?id=118884
+
+Reviewed by Filip Pizlo and Mark Lam.
+Patch by Keith Miller  keith_mil...@apple.com.
+
+These tests ensure ensure objects are not leaked across isolated worlds and that those properties are not prematurely
+garbage collected.
+
+* fast/events/constructors/custom-event-constructor-expected.txt:
+* fast/events/constructors/custom-event-constructor.html:
+* fast/events/event-leak-objects-expected.txt: Added.
+* fast/events/event-leak-objects.html: Added.
+* fast/events/event-properties-gc-expected.txt: Added.
+* fast/events/event-properties-gc.html: Added.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r187031. rdar://problem/21712311
 
 2015-07-20  Andreas Kling  akl...@apple.com


Modified: branches/safari-601.1-branch/LayoutTests/fast/events/constructors/custom-event-constructor-expected.txt (187084 => 187085)

--- branches/safari-601.1-branch/LayoutTests/fast/events/constructors/custom-event-constructor-expected.txt	2015-07-21 04:38:11 UTC (rev 187084)
+++ branches/safari-601.1-branch/LayoutTests/fast/events/constructors/custom-event-constructor-expected.txt	2015-07-21 04:38:19 UTC (rev 187085)
@@ -13,8 +13,11 @@
 PASS new CustomEvent('eventType', { detail: 'string' }).detail is 'string'
 PASS new CustomEvent('eventType', { detail: detailObject }).detail is detailObject
 PASS new CustomEvent('eventType', { detail: document }).detail is document
+PASS new CustomEvent('eventType', { detail: undefined }).detail is undefined
+PASS new CustomEvent('eventType', { detail: null }).detail is null
 PASS new CustomEvent('eventType', { get detail() { return true; } }).detail is true
 PASS new CustomEvent('eventType', { get detail() { throw 'Custom Error'; } }) threw exception Custom Error.
+PASS event.detail is detailObject
 PASS successfullyParsed is true
 
 TEST COMPLETE


Modified: branches/safari-601.1-branch/LayoutTests/fast/events/constructors/custom-event-constructor.html (187084 => 187085)

--- branches/safari-601.1-branch/LayoutTests/fast/events/constructors/custom-event-constructor.html	2015-07-21 04:38:11 UTC (rev 187084)
+++ branches/safari-601.1-branch/LayoutTests/fast/events/constructors/custom-event-constructor.html	2015-07-21 04:38:19 

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

2015-07-20 Thread carlosgc
Title: [187095] trunk/Source/WebCore








Revision 187095
Author carlo...@webkit.org
Date 2015-07-20 22:33:50 -0700 (Mon, 20 Jul 2015)


Log Message
Remove RenderTheme::shouldShowPlaceholderWhenFocused()
https://bugs.webkit.org/show_bug.cgi?id=147104

Reviewed by Martin Robinson.

GTK+ is the only port that returns false in
shouldShowPlaceholderWhenFocused(). That's inconsistent with all
other browsers that show the placeholder text even for focused
entries in all platforms. We should change the GTK+ port
behaviour, but that would leave all implementations of
shouldShowPlaceholderWhenFocused returning true, so let's just
remove it.

* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
Do not consider whether the entry is focused or not.
* platform/efl/RenderThemeEfl.h:
* rendering/RenderTheme.h:
(WebCore::RenderTheme::shouldShowPlaceholderWhenFocused): Deleted.
* rendering/RenderThemeIOS.h:
* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::shouldShowPlaceholderWhenFocused): Deleted.
* rendering/RenderThemeMac.h:
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::shouldShowPlaceholderWhenFocused): Deleted.
* rendering/RenderThemeSafari.h:
(WebCore::RenderThemeSafari::shouldShowPlaceholderWhenFocused): Deleted.
* rendering/RenderThemeWin.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp
trunk/Source/WebCore/platform/efl/RenderThemeEfl.h
trunk/Source/WebCore/rendering/RenderTheme.h
trunk/Source/WebCore/rendering/RenderThemeIOS.h
trunk/Source/WebCore/rendering/RenderThemeIOS.mm
trunk/Source/WebCore/rendering/RenderThemeMac.h
trunk/Source/WebCore/rendering/RenderThemeMac.mm
trunk/Source/WebCore/rendering/RenderThemeSafari.h
trunk/Source/WebCore/rendering/RenderThemeWin.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (187094 => 187095)

--- trunk/Source/WebCore/ChangeLog	2015-07-21 05:27:58 UTC (rev 187094)
+++ trunk/Source/WebCore/ChangeLog	2015-07-21 05:33:50 UTC (rev 187095)
@@ -1,3 +1,34 @@
+2015-07-20  Carlos Garcia Campos  cgar...@igalia.com
+
+Remove RenderTheme::shouldShowPlaceholderWhenFocused()
+https://bugs.webkit.org/show_bug.cgi?id=147104
+
+Reviewed by Martin Robinson.
+
+GTK+ is the only port that returns false in
+shouldShowPlaceholderWhenFocused(). That's inconsistent with all
+other browsers that show the placeholder text even for focused
+entries in all platforms. We should change the GTK+ port
+behaviour, but that would leave all implementations of
+shouldShowPlaceholderWhenFocused returning true, so let's just
+remove it.
+
+* html/HTMLTextFormControlElement.cpp:
+(WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
+Do not consider whether the entry is focused or not.
+* platform/efl/RenderThemeEfl.h:
+* rendering/RenderTheme.h:
+(WebCore::RenderTheme::shouldShowPlaceholderWhenFocused): Deleted.
+* rendering/RenderThemeIOS.h:
+* rendering/RenderThemeIOS.mm:
+(WebCore::RenderThemeIOS::shouldShowPlaceholderWhenFocused): Deleted.
+* rendering/RenderThemeMac.h:
+* rendering/RenderThemeMac.mm:
+(WebCore::RenderThemeMac::shouldShowPlaceholderWhenFocused): Deleted.
+* rendering/RenderThemeSafari.h:
+(WebCore::RenderThemeSafari::shouldShowPlaceholderWhenFocused): Deleted.
+* rendering/RenderThemeWin.h:
+
 2015-07-20  Zan Dobersek  zdober...@igalia.com
 
 [CoordinatedGraphics] CoordinatedGraphicsLayer::setContentsToImage() should avoid scheduling unnecessary flushes


Modified: trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp (187094 => 187095)

--- trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp	2015-07-21 05:27:58 UTC (rev 187094)
+++ trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp	2015-07-21 05:33:50 UTC (rev 187095)
@@ -150,10 +150,7 @@
 {
 // This function is used by the style resolver to match the :placeholder-shown pseudo class.
 // Since it is used for styling, it must not use any value depending on the style.
-return supportsPlaceholder()
- isEmptyValue()
- !isPlaceholderEmpty()
- (document().focusedElement() != this || (document().page()-theme().shouldShowPlaceholderWhenFocused()));
+return supportsPlaceholder()  isEmptyValue()  !isPlaceholderEmpty();
 }
 
 void HTMLTextFormControlElement::updatePlaceholderVisibility()


Modified: trunk/Source/WebCore/platform/efl/RenderThemeEfl.h (187094 => 187095)

--- trunk/Source/WebCore/platform/efl/RenderThemeEfl.h	2015-07-21 05:27:58 UTC (rev 187094)
+++ trunk/Source/WebCore/platform/efl/RenderThemeEfl.h	2015-07-21 05:33:50 UTC (rev 187095)
@@ -175,7 +175,6 @@
 #if ENABLE(VIDEO_TRACK)
 virtual bool supportsClosedCaptioning() const override { return true; }
 #endif
-virtual bool shouldShowPlaceholderWhenFocused() const override { 

[webkit-changes] [187097] branches/safari-601.1-branch/Source/WebKit2

2015-07-20 Thread matthew_hanson
Title: [187097] branches/safari-601.1-branch/Source/WebKit2








Revision 187097
Author matthew_han...@apple.com
Date 2015-07-20 22:35:37 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187072. rdar://problem/21582858

Modified Paths

branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h




Diff

Modified: branches/safari-601.1-branch/Source/WebKit2/ChangeLog (187096 => 187097)

--- branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 05:35:33 UTC (rev 187096)
+++ branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 05:35:37 UTC (rev 187097)
@@ -1,5 +1,15 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187072. rdar://problem/21582858
+
+2015-07-20  Simon Fraser  simon.fra...@apple.com
+
+Fix the iOS build.
+
+* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r187050. rdar://problem/21582858
 
 2015-07-20  Wenson Hsieh  wenson_hs...@apple.com


Modified: branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h (187096 => 187097)

--- branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h	2015-07-21 05:35:33 UTC (rev 187096)
+++ branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h	2015-07-21 05:35:37 UTC (rev 187097)
@@ -34,6 +34,7 @@
 #include atomic
 #include dispatch/dispatch.h
 #include wtf/HashMap.h
+#include wtf/WeakPtr.h
 
 namespace WebCore {
 class PlatformCALayer;






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


[webkit-changes] [187096] branches/safari-601.1-branch/Source/WebKit2

2015-07-20 Thread matthew_hanson
Title: [187096] branches/safari-601.1-branch/Source/WebKit2








Revision 187096
Author matthew_han...@apple.com
Date 2015-07-20 22:35:33 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187050. rdar://problem/21582858

Modified Paths

branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm




Diff

Modified: branches/safari-601.1-branch/Source/WebKit2/ChangeLog (187095 => 187096)

--- branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 05:33:50 UTC (rev 187095)
+++ branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 05:35:33 UTC (rev 187096)
@@ -1,5 +1,34 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187050. rdar://problem/21582858
+
+2015-07-20  Wenson Hsieh  wenson_hs...@apple.com
+
+Fix crash due to RemoteLayerTreeDisplayRefreshMonitor outliving RemoteLayerTreeDrawingArea
+https://bugs.webkit.org/show_bug.cgi?id=147124
+rdar://problem/21582858
+
+Reviewed by Simon Fraser.
+
+Refactors RemoteLayerTreeDisplayRefreshMonitor to use a weak pointer rather than a reference
+to its RemoteLayerTreeDrawingArea, since the drawing area may be deallocated before the monitor
+in some rare cases. This rarely caused pages using requestAnimationFrame to crash on iOS. However,
+this should not be the case: logically, a RemoteLayerTreeDrawingArea should always outlive its
+refresh monitors. Refer to https://bugs.webkit.org/show_bug.cgi?id=147128 for more details.
+
+* WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h:
+* WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm:
+(WebKit::RemoteLayerTreeDisplayRefreshMonitor::RemoteLayerTreeDisplayRefreshMonitor):
+(WebKit::RemoteLayerTreeDisplayRefreshMonitor::~RemoteLayerTreeDisplayRefreshMonitor): On destruction, checks
+first to see whether or not the drawing area has been deallocated before telling it to update its monitors.
+(WebKit::RemoteLayerTreeDisplayRefreshMonitor::requestRefreshCallback):
+* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
+(WebKit::RemoteLayerTreeDrawingArea::createWeakPtr): Creates and returns a new weak pointer to itself.
+* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
+(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r187054. rdar://problem/21823349
 
 2015-07-20  Simon Fraser  simon.fra...@apple.com


Modified: branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h (187095 => 187096)

--- branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h	2015-07-21 05:33:50 UTC (rev 187095)
+++ branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.h	2015-07-21 05:35:33 UTC (rev 187096)
@@ -49,7 +49,7 @@
 private:
 explicit RemoteLayerTreeDisplayRefreshMonitor(PlatformDisplayID, RemoteLayerTreeDrawingArea);
 
-RemoteLayerTreeDrawingArea m_drawingArea;
+WeakPtrRemoteLayerTreeDrawingArea m_drawingArea;
 };
 
 }


Modified: branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm (187095 => 187096)

--- branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm	2015-07-21 05:33:50 UTC (rev 187095)
+++ branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/Cocoa/RemoteLayerTreeDisplayRefreshMonitor.mm	2015-07-21 05:35:33 UTC (rev 187096)
@@ -36,22 +36,23 @@
 
 RemoteLayerTreeDisplayRefreshMonitor::RemoteLayerTreeDisplayRefreshMonitor(PlatformDisplayID displayID, RemoteLayerTreeDrawingArea drawingArea)
 : DisplayRefreshMonitor(displayID)
-, m_drawingArea(drawingArea)
+, m_drawingArea(drawingArea.createWeakPtr())
 {
 }
 
 RemoteLayerTreeDisplayRefreshMonitor::~RemoteLayerTreeDisplayRefreshMonitor()
 {
-m_drawingArea.willDestroyDisplayRefreshMonitor(this);
+if (m_drawingArea)
+m_drawingArea-willDestroyDisplayRefreshMonitor(this);
 }
 
 bool RemoteLayerTreeDisplayRefreshMonitor::requestRefreshCallback()
 {
-if (!isActive())
+if (!m_drawingArea || !isActive())
 return false;
 
 if (!isScheduled())
-static_castDrawingArea(m_drawingArea).scheduleCompositingLayerFlush();
+

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

2015-07-20 Thread adachan
Title: [187098] trunk/Source/WebCore








Revision 187098
Author adac...@apple.com
Date 2015-07-20 22:39:55 -0700 (Mon, 20 Jul 2015)


Log Message
Follow-up to my earlier fix for r147085
https://bugs.webkit.org/show_bug.cgi?id=147085

Reviewed by Eric Carlson.

* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::isPlayingAudioDidChange):
Null-check document() before dereferencing it in case the audio context's document is destroyed
by the time the code block is called on the main thread.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/webaudio/AudioContext.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (187097 => 187098)

--- trunk/Source/WebCore/ChangeLog	2015-07-21 05:35:37 UTC (rev 187097)
+++ trunk/Source/WebCore/ChangeLog	2015-07-21 05:39:55 UTC (rev 187098)
@@ -1,3 +1,15 @@
+2015-07-20  Ada Chan  adac...@apple.com
+
+Follow-up to my earlier fix for r147085
+https://bugs.webkit.org/show_bug.cgi?id=147085
+
+Reviewed by Eric Carlson.
+
+* Modules/webaudio/AudioContext.cpp:
+(WebCore::AudioContext::isPlayingAudioDidChange):
+Null-check document() before dereferencing it in case the audio context's document is destroyed
+by the time the code block is called on the main thread.
+
 2015-07-20  Carlos Garcia Campos  cgar...@igalia.com
 
 Remove RenderTheme::shouldShowPlaceholderWhenFocused()


Modified: trunk/Source/WebCore/Modules/webaudio/AudioContext.cpp (187097 => 187098)

--- trunk/Source/WebCore/Modules/webaudio/AudioContext.cpp	2015-07-21 05:35:37 UTC (rev 187097)
+++ trunk/Source/WebCore/Modules/webaudio/AudioContext.cpp	2015-07-21 05:39:55 UTC (rev 187098)
@@ -1073,7 +1073,8 @@
 // we could be on the audio I/O thread here and the call into WebCore could block.
 RefPtrAudioContext strongThis(this);
 callOnMainThread([strongThis] {
-strongThis-document()-updateIsPlayingMedia();
+if (strongThis-document())
+strongThis-document()-updateIsPlayingMedia();
 });
 }
 






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


[webkit-changes] [187086] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187086] branches/safari-601.1-branch/Source/WebCore








Revision 187086
Author matthew_han...@apple.com
Date 2015-07-20 22:08:13 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186715. rdar://problem/21863296

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/contentextensions/CombinedURLFilters.cpp
branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtensionsDebugging.h
branches/safari-601.1-branch/Source/WebCore/contentextensions/DFA.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187085 => 187086)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:38:19 UTC (rev 187085)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 05:08:13 UTC (rev 187086)
@@ -1,5 +1,26 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186715. rdar://problem/21863296
+
+2015-07-11  Benjamin Poulain  benja...@webkit.org
+
+Fix CONTENT_EXTENSIONS_STATE_MACHINE_DEBUGGING
+https://bugs.webkit.org/show_bug.cgi?id=146879
+
+Reviewed by Andreas Kling.
+
+Some of my recent changes broke CONTENT_EXTENSIONS_STATE_MACHINE_DEBUGGING :(
+
+* contentextensions/CombinedURLFilters.cpp:
+(WebCore::ContentExtensions::prefixTreeVertexToString):
+(WebCore::ContentExtensions::recursivePrint):
+(WebCore::ContentExtensions::CombinedURLFilters::print):
+* contentextensions/ContentExtensionsDebugging.h:
+* contentextensions/DFA.cpp:
+(WebCore::ContentExtensions::DFA::debugPrintDot):
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186955. rdar://problem/14489674
 
 2015-07-17  Mark Lam  mark@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/contentextensions/CombinedURLFilters.cpp (187085 => 187086)

--- branches/safari-601.1-branch/Source/WebCore/contentextensions/CombinedURLFilters.cpp	2015-07-21 04:38:19 UTC (rev 187085)
+++ branches/safari-601.1-branch/Source/WebCore/contentextensions/CombinedURLFilters.cpp	2015-07-21 05:08:13 UTC (rev 187086)
@@ -78,16 +78,16 @@
 #endif
 
 #if CONTENT_EXTENSIONS_STATE_MACHINE_DEBUGGING
-static String prefixTreeVertexToString(const PrefixTreeVertex vertex, unsigned depth)
+static String prefixTreeVertexToString(const PrefixTreeVertex vertex, const HashMapconst PrefixTreeVertex*, ActionList actions, unsigned depth)
 {
 StringBuilder builder;
 while (depth--)
 builder.append(  );
 builder.append(vertex actions: );
 
-auto actionsSlot = m_actions.find(vertex);
-if (actionsSlot != m_actions.end()) {
-for (auto action : *actionsSlot-value) {
+auto actionsSlot = actions.find(vertex);
+if (actionsSlot != actions.end()) {
+for (uint64_t action : actionsSlot-value) {
 builder.appendNumber(action);
 builder.append(',');
 }
@@ -96,9 +96,9 @@
 return builder.toString();
 }
 
-static void recursivePrint(const PrefixTreeVertex vertex, unsigned depth)
+static void recursivePrint(const PrefixTreeVertex vertex, const HashMapconst PrefixTreeVertex*, ActionList actions, unsigned depth)
 {
-dataLogF(%s, prefixTreeVertexToString(vertex, depth).utf8().data());
+dataLogF(%s, prefixTreeVertexToString(vertex, actions, depth).utf8().data());
 for (const auto edge : vertex.edges) {
 StringBuilder builder;
 for (unsigned i = 0; i  depth * 2; ++i)
@@ -108,13 +108,13 @@
 builder.append('\n');
 dataLogF(%s, builder.toString().utf8().data());
 ASSERT(edge.child);
-recursivePrint(*edge.child.get(), depth + 1);
+recursivePrint(*edge.child.get(), actions, depth + 1);
 }
 }
 
 void CombinedURLFilters::print() const
 {
-recursivePrint(*m_prefixTreeRoot.get(), 0);
+recursivePrint(*m_prefixTreeRoot.get(), m_actions, 0);
 }
 #endif
 


Modified: branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtensionsDebugging.h (187085 => 187086)

--- branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtensionsDebugging.h	2015-07-21 04:38:19 UTC (rev 187085)
+++ branches/safari-601.1-branch/Source/WebCore/contentextensions/ContentExtensionsDebugging.h	2015-07-21 05:08:13 UTC (rev 187086)
@@ -38,7 +38,7 @@
 #define CONTENT_EXTENSIONS_PAGE_SIZE 16384
 
 #if CONTENT_EXTENSIONS_STATE_MACHINE_DEBUGGING
-typedef CrashOnOverflow ContentExtensionsOverflowHandler;
+typedef WTF::CrashOnOverflow ContentExtensionsOverflowHandler;
 #else
 typedef UnsafeVectorOverflow ContentExtensionsOverflowHandler;
 #endif


Modified: branches/safari-601.1-branch/Source/WebCore/contentextensions/DFA.cpp (187085 => 187086)

--- branches/safari-601.1-branch/Source/WebCore/contentextensions/DFA.cpp	2015-07-21 04:38:19 UTC (rev 187085)
+++ branches/safari-601.1-branch/Source/WebCore/contentextensions/DFA.cpp	2015-07-21 05:08:13 

[webkit-changes] [187099] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187099] branches/safari-601.1-branch/Source/WebCore








Revision 187099
Author matthew_han...@apple.com
Date 2015-07-20 22:56:40 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187098. rdar://problem/21878275

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/Modules/webaudio/AudioContext.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187098 => 187099)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 05:39:55 UTC (rev 187098)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 05:56:40 UTC (rev 187099)
@@ -1,5 +1,21 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187098. rdar://problem/21878275
+
+2015-07-20  Ada Chan  adac...@apple.com
+
+Follow-up to my earlier fix for r147085
+https://bugs.webkit.org/show_bug.cgi?id=147085
+
+Reviewed by Eric Carlson.
+
+* Modules/webaudio/AudioContext.cpp:
+(WebCore::AudioContext::isPlayingAudioDidChange):
+Null-check document() before dereferencing it in case the audio context's document is destroyed
+by the time the code block is called on the main thread.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r187053. rdar://problem/21778212
 
 2015-07-20  Nan Wang  n_w...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/Modules/webaudio/AudioContext.cpp (187098 => 187099)

--- branches/safari-601.1-branch/Source/WebCore/Modules/webaudio/AudioContext.cpp	2015-07-21 05:39:55 UTC (rev 187098)
+++ branches/safari-601.1-branch/Source/WebCore/Modules/webaudio/AudioContext.cpp	2015-07-21 05:56:40 UTC (rev 187099)
@@ -1073,7 +1073,8 @@
 // we could be on the audio I/O thread here and the call into WebCore could block.
 RefPtrAudioContext strongThis(this);
 callOnMainThread([strongThis] {
-strongThis-document()-updateIsPlayingMedia();
+if (strongThis-document())
+strongThis-document()-updateIsPlayingMedia();
 });
 }
 






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


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

2015-07-20 Thread zandobersek
Title: [187088] trunk/Source/WebCore








Revision 187088
Author zandober...@gmail.com
Date 2015-07-20 22:16:44 -0700 (Mon, 20 Jul 2015)


Log Message
[CoordinatedGraphics] CoordinatedGraphicsLayer::setContentsToImage() should avoid scheduling unnecessary flushes
https://bugs.webkit.org/show_bug.cgi?id=147118

Reviewed by Martin Robinson.

Have CoordinatedGraphicsLayer::setContentsToImage() return early if the new
passed-in Image and the corresponding native image pointer are equal to the
currently set values.

This specifically avoids scheduling unnecessary flushes when setContentsToImage()
is repeatedly called with a null Image pointer, which in previous code would
unconditionally result in a scheduled flush even if there was no Image assigned
as the content of this layer before. Until now the layer flush scheduling was only
avoided if the two non-null native image pointers were equal.

* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setContentsToImage):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (187087 => 187088)

--- trunk/Source/WebCore/ChangeLog	2015-07-21 05:08:21 UTC (rev 187087)
+++ trunk/Source/WebCore/ChangeLog	2015-07-21 05:16:44 UTC (rev 187088)
@@ -1,3 +1,23 @@
+2015-07-20  Zan Dobersek  zdober...@igalia.com
+
+[CoordinatedGraphics] CoordinatedGraphicsLayer::setContentsToImage() should avoid scheduling unnecessary flushes
+https://bugs.webkit.org/show_bug.cgi?id=147118
+
+Reviewed by Martin Robinson.
+
+Have CoordinatedGraphicsLayer::setContentsToImage() return early if the new
+passed-in Image and the corresponding native image pointer are equal to the
+currently set values.
+
+This specifically avoids scheduling unnecessary flushes when setContentsToImage()
+is repeatedly called with a null Image pointer, which in previous code would
+unconditionally result in a scheduled flush even if there was no Image assigned
+as the content of this layer before. Until now the layer flush scheduling was only
+avoided if the two non-null native image pointers were equal.
+
+* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
+(WebCore::CoordinatedGraphicsLayer::setContentsToImage):
+
 2015-07-20  Nan Wang  n_w...@apple.com
 
 AX: Selection change as a result of focusing an element may cause Safari to crash


Modified: trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp (187087 => 187088)

--- trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp	2015-07-21 05:08:21 UTC (rev 187087)
+++ trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp	2015-07-21 05:16:44 UTC (rev 187088)
@@ -460,19 +460,12 @@
 
 void CoordinatedGraphicsLayer::setContentsToImage(Image* image)
 {
-NativeImagePtr newNativeImagePtr = image ? image-nativeImageForCurrentFrame() : 0;
-if (newNativeImagePtr) {
-// This code makes the assumption that pointer equality on a NativeImagePtr is a valid way to tell if the image is changed.
-// This assumption is true in Qt, GTK and EFL.
-if (newNativeImagePtr == m_compositedNativeImagePtr)
-return;
+NativeImagePtr nativeImagePtr = image ? image-nativeImageForCurrentFrame() : nullptr;
+if (m_compositedImage == image  m_compositedNativeImagePtr == nativeImagePtr)
+return;
 
-m_compositedImage = image;
-m_compositedNativeImagePtr = newNativeImagePtr;
-} else {
-m_compositedImage = nullptr;
-m_compositedNativeImagePtr = nullptr;
-}
+m_compositedImage = image;
+m_compositedNativeImagePtr = nativeImagePtr;
 
 GraphicsLayer::setContentsToImage(image);
 didChangeImageBacking();






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


[webkit-changes] [187087] branches/safari-601.1-branch

2015-07-20 Thread matthew_hanson
Title: [187087] branches/safari-601.1-branch








Revision 187087
Author matthew_han...@apple.com
Date 2015-07-20 22:08:21 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186910. rdar://problem/21863296

Modified Paths

branches/safari-601.1-branch/Source/WTF/ChangeLog
branches/safari-601.1-branch/Source/WTF/wtf/Vector.h
branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj
branches/safari-601.1-branch/Source/WebCore/contentextensions/CombinedURLFilters.cpp
branches/safari-601.1-branch/Source/WebCore/contentextensions/DFA.cpp
branches/safari-601.1-branch/Source/WebCore/contentextensions/ImmutableNFANodeBuilder.h
branches/safari-601.1-branch/Source/WebCore/contentextensions/Term.h
branches/safari-601.1-branch/Tools/ChangeLog
branches/safari-601.1-branch/Tools/TestWebKitAPI/Tests/WTF/Vector.cpp
branches/safari-601.1-branch/Tools/TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp
branches/safari-601.1-branch/Tools/TestWebKitAPI/Tests/WebCore/DFAMinimizer.cpp


Added Paths

branches/safari-601.1-branch/Source/WebCore/contentextensions/HashableActionList.h




Diff

Modified: branches/safari-601.1-branch/Source/WTF/ChangeLog (187086 => 187087)

--- branches/safari-601.1-branch/Source/WTF/ChangeLog	2015-07-21 05:08:13 UTC (rev 187086)
+++ branches/safari-601.1-branch/Source/WTF/ChangeLog	2015-07-21 05:08:21 UTC (rev 187087)
@@ -1,3 +1,22 @@
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
+Merge r186910. rdar://problem/21863296
+
+2015-07-16  Benjamin Poulain  bpoul...@apple.com
+
+[Content extensions] Combine suffixes when generating NFAs
+https://bugs.webkit.org/show_bug.cgi?id=146961
+
+Reviewed by Alex Christensen.
+
+* wtf/Vector.h:
+(WTF::minCapacity::Vector):
+(WTF::=):
+Copying a vector with a different inline capacity was broken due to
+the addition of MinimumCapacity.
+
+This feature was needed by this patch so I fixed WTF.
+
 2015-07-15  Lucas Forschler  lforsch...@apple.com
 
 Merge r186826


Modified: branches/safari-601.1-branch/Source/WTF/wtf/Vector.h (187086 => 187087)

--- branches/safari-601.1-branch/Source/WTF/wtf/Vector.h	2015-07-21 05:08:13 UTC (rev 187086)
+++ branches/safari-601.1-branch/Source/WTF/wtf/Vector.h	2015-07-21 05:08:21 UTC (rev 187087)
@@ -638,12 +638,12 @@
 }
 
 Vector(const Vector);
-templatesize_t otherCapacity, typename otherOverflowBehaviour
-explicit Vector(const VectorT, otherCapacity, otherOverflowBehaviour);
+templatesize_t otherCapacity, typename otherOverflowBehaviour, size_t otherMinimumCapacity
+explicit Vector(const VectorT, otherCapacity, otherOverflowBehaviour, otherMinimumCapacity);
 
 Vector operator=(const Vector);
-templatesize_t otherCapacity, typename otherOverflowBehaviour
-Vector operator=(const VectorT, otherCapacity, otherOverflowBehaviour);
+templatesize_t otherCapacity, typename otherOverflowBehaviour, size_t otherMinimumCapacity
+Vector operator=(const VectorT, otherCapacity, otherOverflowBehaviour, otherMinimumCapacity);
 
 Vector(Vector);
 Vector operator=(Vector);
@@ -819,8 +819,8 @@
 }
 
 templatetypename T, size_t inlineCapacity, typename OverflowHandler, size_t minCapacity
-templatesize_t otherCapacity, typename otherOverflowBehaviour
-VectorT, inlineCapacity, OverflowHandler, minCapacity::Vector(const VectorT, otherCapacity, otherOverflowBehaviour other)
+templatesize_t otherCapacity, typename otherOverflowBehaviour, size_t otherMinimumCapacity
+VectorT, inlineCapacity, OverflowHandler, minCapacity::Vector(const VectorT, otherCapacity, otherOverflowBehaviour, otherMinimumCapacity other)
 : Base(other.capacity(), other.size())
 {
 asanSetInitialBufferSizeTo(other.size());
@@ -855,8 +855,8 @@
 inline bool typelessPointersAreEqual(const void* a, const void* b) { return a == b; }
 
 templatetypename T, size_t inlineCapacity, typename OverflowHandler, size_t minCapacity
-templatesize_t otherCapacity, typename otherOverflowBehaviour
-VectorT, inlineCapacity, OverflowHandler, minCapacity VectorT, inlineCapacity, OverflowHandler, minCapacity::operator=(const VectorT, otherCapacity, otherOverflowBehaviour other)
+templatesize_t otherCapacity, typename otherOverflowBehaviour, size_t otherMinimumCapacity
+VectorT, inlineCapacity, OverflowHandler, minCapacity VectorT, inlineCapacity, OverflowHandler, minCapacity::operator=(const VectorT, otherCapacity, otherOverflowBehaviour, otherMinimumCapacity other)
 {
 // If the inline capacities match, we should call the more specific
 // template.  If the inline capacities don't match, the two objects


Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187086 => 187087)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 05:08:13 UTC (rev 187086)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	

[webkit-changes] [187093] branches/safari-601.1-branch

2015-07-20 Thread matthew_hanson
Title: [187093] branches/safari-601.1-branch








Revision 187093
Author matthew_han...@apple.com
Date 2015-07-20 22:27:55 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187053. rdar://problem/21778212

Modified Paths

branches/safari-601.1-branch/LayoutTests/ChangeLog
branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/accessibility/AccessibilityRenderObject.cpp


Added Paths

branches/safari-601.1-branch/LayoutTests/platform/mac/accessibility/focus-crash-expected.txt
branches/safari-601.1-branch/LayoutTests/platform/mac/accessibility/focus-crash.html




Diff

Modified: branches/safari-601.1-branch/LayoutTests/ChangeLog (187092 => 187093)

--- branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 05:27:51 UTC (rev 187092)
+++ branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 05:27:55 UTC (rev 187093)
@@ -1,5 +1,20 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187053. rdar://problem/21778212
+
+2015-07-20  Nan Wang  n_w...@apple.com
+
+AX: Selection change as a result of focusing an element may cause Safari to crash
+https://bugs.webkit.org/show_bug.cgi?id=147052
+rdar://problem/21778212
+
+Reviewed by Chris Fleizach.
+
+* platform/mac/accessibility/focus-crash-expected.txt: Added.
+* platform/mac/accessibility/focus-crash.html: Added.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186955. rdar://problem/14489674
 
 2015-07-16  Mark Lam  mark@apple.com


Added: branches/safari-601.1-branch/LayoutTests/platform/mac/accessibility/focus-crash-expected.txt (0 => 187093)

--- branches/safari-601.1-branch/LayoutTests/platform/mac/accessibility/focus-crash-expected.txt	(rev 0)
+++ branches/safari-601.1-branch/LayoutTests/platform/mac/accessibility/focus-crash-expected.txt	2015-07-21 05:27:55 UTC (rev 187093)
@@ -0,0 +1,10 @@
+This tests that focusing and removing element won't cause crash.
+
+On success, you will see a series of PASS messages, followed by TEST COMPLETE.
+
+
+PASS document.getElementById(toBeRemoved) is null
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: branches/safari-601.1-branch/LayoutTests/platform/mac/accessibility/focus-crash.html (0 => 187093)

--- branches/safari-601.1-branch/LayoutTests/platform/mac/accessibility/focus-crash.html	(rev 0)
+++ branches/safari-601.1-branch/LayoutTests/platform/mac/accessibility/focus-crash.html	2015-07-21 05:27:55 UTC (rev 187093)
@@ -0,0 +1,42 @@
+!DOCTYPE HTML
+html
+body
+script src=""
+
+input type=text id=toBeRemoved _onfocus_=focusHandler(this)/input
+
+
+script
+
+var jsTestIsAsync = true;
+
+description(This tests that focusing and removing element won't cause crash.);
+
+if (window.testRunner  window.accessibilityController) {
+
+// Try to focus on the element.
+accessibilityController.accessibleElementById(toBeRemoved).takeFocus();
+}
+
+function focusHandler(node) 
+{
+// Make sure we don't crash after removing the element. 
+node.parentNode.removeChild(node);
+gc();
+setTimeout(finishTest(), 0);
+}
+
+function finishTest()
+{
+// Element should be removed while on focus
+shouldBe(document.getElementById(\toBeRemoved\), null);
+
+// Make sure accessing the element won't lead to crash
+var detached = accessibilityController.accessibleElementById(toBeRemoved)
+finishJSTest();
+}
+/script
+
+script src=""
+/body
+/html
\ No newline at end of file


Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187092 => 187093)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 05:27:51 UTC (rev 187092)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 05:27:55 UTC (rev 187093)
@@ -1,5 +1,27 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187053. rdar://problem/21778212
+
+2015-07-20  Nan Wang  n_w...@apple.com
+
+AX: Selection change as a result of focusing an element may cause Safari to crash
+https://bugs.webkit.org/show_bug.cgi?id=147052
+rdar://problem/21778212
+
+Reviewed by Chris Fleizach.
+
+When focusing an element, it may trigger a deferred layout that invalidates the render
+element, which will cause axObjectCache() to be a nullptr, and lead to a crash. Fix that
+by using a RefPtr to hold the object and also caching the axObjectCache().
+
+Test: platform/mac/accessibility/focus-crash.html
+
+* accessibility/AccessibilityRenderObject.cpp:
+(WebCore::AccessibilityRenderObject::setFocused):
+(WebCore::AccessibilityRenderObject::setSelectedRows):
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r187044. rdar://problem/21661808
 
 2015-07-20  Jeremy Jones  jere...@apple.com


Modified: 

[webkit-changes] [187091] branches/safari-601.1-branch/Source

2015-07-20 Thread matthew_hanson
Title: [187091] branches/safari-601.1-branch/Source








Revision 187091
Author matthew_han...@apple.com
Date 2015-07-20 22:27:45 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187039. rdar://problem/21474317

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/rendering/RenderView.cpp
branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/WebPage.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187090 => 187091)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 05:27:42 UTC (rev 187090)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 05:27:45 UTC (rev 187091)
@@ -1,5 +1,22 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187039. rdar://problem/21474317
+
+2015-07-20  Tim Horton  timothy_hor...@apple.com
+
+REGRESSION (r174287): Flash of black when opening a new web view or navigating to a new page
+https://bugs.webkit.org/show_bug.cgi?id=147127
+rdar://problem/21474317
+
+Reviewed by Simon Fraser.
+
+* rendering/RenderView.cpp:
+(WebCore::RenderView::paintBoxDecorations):
+Avoid using an invalid documentBackgroundColor, fall back to baseBackgroundColor
+like we did before r174287.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186910. rdar://problem/21863296
 
 2015-07-16  Benjamin Poulain  bpoul...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/rendering/RenderView.cpp (187090 => 187091)

--- branches/safari-601.1-branch/Source/WebCore/rendering/RenderView.cpp	2015-07-21 05:27:42 UTC (rev 187090)
+++ branches/safari-601.1-branch/Source/WebCore/rendering/RenderView.cpp	2015-07-21 05:27:45 UTC (rev 187091)
@@ -611,7 +611,8 @@
 if (frameView().isTransparent()) // FIXME: This needs to be dynamic. We should be able to go back to blitting if we ever stop being transparent.
 frameView().setCannotBlitToWindow(); // The parent must show behind the child.
 else {
-Color backgroundColor = backgroundShouldExtendBeyondPage ? frameView().documentBackgroundColor() : frameView().baseBackgroundColor();
+Color documentBackgroundColor = frameView().documentBackgroundColor();
+Color backgroundColor = (backgroundShouldExtendBeyondPage  documentBackgroundColor.isValid()) ? documentBackgroundColor : frameView().baseBackgroundColor();
 if (backgroundColor.alpha()) {
 CompositeOperator previousOperator = paintInfo.context-compositeOperation();
 paintInfo.context-setCompositeOperation(CompositeCopy);


Modified: branches/safari-601.1-branch/Source/WebKit2/ChangeLog (187090 => 187091)

--- branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 05:27:42 UTC (rev 187090)
+++ branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 05:27:45 UTC (rev 187091)
@@ -1,5 +1,22 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187039. rdar://problem/21474317
+
+2015-07-20  Tim Horton  timothy_hor...@apple.com
+
+REGRESSION (r174287): Flash of black when opening a new web view or navigating to a new page
+https://bugs.webkit.org/show_bug.cgi?id=147127
+rdar://problem/21474317
+
+Reviewed by Simon Fraser.
+
+* WebProcess/WebPage/WebPage.cpp:
+(WebKit::WebPage::snapshotAtSize):
+Avoid using an invalid documentBackgroundColor, fall back to baseBackgroundColor
+like we did before r174287.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r187047. rdar://problem/20860410
 
 2015-07-20  Gordon Sheridan  gordon_sheri...@apple.com


Modified: branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (187090 => 187091)

--- branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2015-07-21 05:27:42 UTC (rev 187090)
+++ branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2015-07-21 05:27:45 UTC (rev 187091)
@@ -1732,7 +1732,8 @@
 
 auto graphicsContext = snapshot-bitmap()-createGraphicsContext();
 
-Color backgroundColor = coreFrame-settings().backgroundShouldExtendBeyondPage() ? frameView-documentBackgroundColor() : frameView-baseBackgroundColor();
+Color documentBackgroundColor = frameView-documentBackgroundColor();
+Color backgroundColor = (coreFrame-settings().backgroundShouldExtendBeyondPage()  documentBackgroundColor.isValid()) ? documentBackgroundColor : frameView-baseBackgroundColor();
 graphicsContext-fillRect(IntRect(IntPoint(), bitmapSize), backgroundColor, ColorSpaceDeviceRGB);
 
 if (!(options  SnapshotOptionsExcludeDeviceScaleFactor)) {






___
webkit-changes mailing list
webkit-changes@lists.webkit.org

[webkit-changes] [187092] branches/safari-601.1-branch/Source

2015-07-20 Thread matthew_hanson
Title: [187092] branches/safari-601.1-branch/Source








Revision 187092
Author matthew_han...@apple.com
Date 2015-07-20 22:27:51 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187044. rdar://problem/21661808

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm
branches/safari-601.1-branch/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm
branches/safari-601.1-branch/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.h
branches/safari-601.1-branch/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm
branches/safari-601.1-branch/Source/WebCore/platform/ios/WebVideoFullscreenModel.h
branches/safari-601.1-branch/Source/WebCore/platform/ios/WebVideoFullscreenModelVideoElement.h
branches/safari-601.1-branch/Source/WebCore/platform/ios/WebVideoFullscreenModelVideoElement.mm
branches/safari-601.1-branch/Source/WebCore/platform/spi/cocoa/AVKitSPI.h
branches/safari-601.1-branch/Source/WebCore/platform/spi/cocoa/QuartzCoreSPI.h
branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.h
branches/safari-601.1-branch/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm
branches/safari-601.1-branch/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.mm




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187091 => 187092)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 05:27:45 UTC (rev 187091)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 05:27:51 UTC (rev 187092)
@@ -1,5 +1,123 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187044. rdar://problem/21661808
+
+2015-07-20  Jeremy Jones  jere...@apple.com
+
+Adopt AVPlayerLayerView
+https://bugs.webkit.org/show_bug.cgi?id=146862
+
+Reviewed by Jer Noble.
+
+The CALayerHost is replaced with WebLayerHostView to be compatible with UIView animations.
+Some animation is improved in the conversion.
+
+WebAVPlayerLayerView and WebAVPictureInPicturePlayerLayerView derive from AVKit and UIKit respectively.
+Because these frameworks are loaded at runtime, these classes must be generate using objc/runtime.h to
+register them from c functions at runtime. The most important part of these UIViews is that their
+backing layer is a WebAVPlayerLayer.
+
+WebCALayerHostWrapper and WebAVVideoLayer are combined into WebAVPlayerLayer to simplify the hierarchy.
+WebAVPlayerLayer is a stand-in for an AVPlayerLayer.
+
+* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
+(WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenLayer): -removeFromSuperlayer is redundant.
+(WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenGravity): syncTextTrackBounds on change.
+(WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenFrame):
+We never want animation here, since all animation will happen in UIViews.
+This is just for going into the final size after a transform based animation.
+
+* platform/ios/WebVideoFullscreenControllerAVKit.mm:
+(WebVideoFullscreenControllerContext::didSetupFullscreen): layer - view
+(WebVideoFullscreenControllerContext::didCleanupFullscreen): layer - view
+(WebVideoFullscreenControllerContext::setUpFullscreen): layer - view
+
+(WebVideoFullscreenControllerContext::setVideoLayerFrame): layer - view
+Use fence port to synchronize between the UIThread and the WebThread,
+the same way WebKit2 uses a fence port to synchronize between processes.
+
+(WebVideoFullscreenControllerContext::setVideoLayerGravity):
+No longer necessary to cache videoGravity at this level.
+
+* platform/ios/WebVideoFullscreenInterfaceAVKit.h:
+* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
+
+(-[WebAVPlayerLayer init]):
+(-[WebAVPlayerLayer dealloc]):
+(-[WebAVPlayerLayer playerController]):
+(-[WebAVPlayerLayer setBounds:]):
+(-[WebAVPlayerLayer resolveBounds]):
+(-[WebAVPlayerLayer setVideoGravity:]):
+(-[WebAVPlayerLayer videoGravity]):
+(-[WebAVPlayerLayer videoRect]):
+(+[WebAVPlayerLayer keyPathsForValuesAffectingVideoRect]):
+Added class WebAVPlayerLayer, replacing WebAVVideoLayer and WebCALayerHostWrapper.
+
+(WebAVPictureInPicturePlayerLayerView_layerClass):
+(getWebAVPictureInPicturePlayerLayerViewClass):
+Added runtime class WebAVPictureInPicturePlayerLayerView
+
+

[webkit-changes] [187094] branches/safari-601.1-branch/Source/WebKit2

2015-07-20 Thread matthew_hanson
Title: [187094] branches/safari-601.1-branch/Source/WebKit2








Revision 187094
Author matthew_han...@apple.com
Date 2015-07-20 22:27:58 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187054. rdar://problem/21823349

Modified Paths

branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm




Diff

Modified: branches/safari-601.1-branch/Source/WebKit2/ChangeLog (187093 => 187094)

--- branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 05:27:55 UTC (rev 187093)
+++ branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 05:27:58 UTC (rev 187094)
@@ -1,5 +1,26 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187054. rdar://problem/21823349
+
+2015-07-20  Simon Fraser  simon.fra...@apple.com
+
+Facebook in tiled fullscreen is slow
+https://bugs.webkit.org/show_bug.cgi?id=147134
+rdar://problem/21823349
+
+Reviewed by Tim Horton.
+
+TiledCoreAnimationDrawingArea::scaleViewToFitDocumentIfNeeded() could cause a page to toggle
+between two fixed layout sizes differing by a pixel, because of rounding. This would cause
+lots of extra layouts and painting.
+
+This happened because the the fixed layout size was computed using ceil(m_webPage.size().width() / viewScale)
+
+* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
+(WebKit::TiledCoreAnimationDrawingArea::scaleViewToFitDocumentIfNeeded):
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r187044. rdar://problem/21661808
 
 2015-07-20  Jeremy Jones  jere...@apple.com


Modified: branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm (187093 => 187094)

--- branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2015-07-21 05:27:55 UTC (rev 187093)
+++ branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2015-07-21 05:27:58 UTC (rev 187094)
@@ -283,10 +283,12 @@
 m_webPage.layoutIfNeeded();
 
 int viewWidth = m_webPage.size().width();
-bool documentWidthChangedOrInvalidated = m_webPage.mainFrame()-view()-needsLayout() || (m_lastDocumentSizeForScaleToFit.width() != m_webPage.mainFrameView()-renderView()-unscaledDocumentRect().width());
+int documentWidth = m_webPage.mainFrameView()-renderView()-unscaledDocumentRect().width();
+
+bool documentWidthChanged = m_lastDocumentSizeForScaleToFit.width() != documentWidth;
 bool viewWidthChanged = m_lastViewSizeForScaleToFit.width() != viewWidth;
 
-if (!documentWidthChangedOrInvalidated  !viewWidthChanged)
+if (!documentWidthChanged  !viewWidthChanged)
 return;
 
 // The view is now bigger than the document, so we'll re-evaluate whether we have to scale.
@@ -295,14 +297,16 @@
 
 // Our current understanding of the document width is still up to date, and we're in scaling mode.
 // Update the viewScale without doing an extra layout to re-determine the document width.
-if (m_isScalingViewToFitDocument  !documentWidthChangedOrInvalidated) {
+if (m_isScalingViewToFitDocument  !documentWidthChanged) {
+m_lastViewSizeForScaleToFit = m_webPage.size();
 float viewScale = (float)viewWidth / (float)m_lastDocumentSizeForScaleToFit.width();
-m_lastViewSizeForScaleToFit = m_webPage.size();
-viewScale = std::max(viewScale, minimumViewScale);
+if (viewScale  minimumViewScale) {
+viewScale = minimumViewScale;
+documentWidth = std::ceil(viewWidth / viewScale);
+}
+IntSize fixedLayoutSize(documentWidth, std::ceil((m_webPage.size().height() - m_webPage.corePage()-topContentInset()) / viewScale));
+m_webPage.setFixedLayoutSize(fixedLayoutSize);
 m_webPage.scaleView(viewScale);
-
-IntSize fixedLayoutSize(std::ceil(m_webPage.size().width() / viewScale), std::ceil((m_webPage.size().height() - m_webPage.corePage()-topContentInset()) / viewScale));
-m_webPage.setFixedLayoutSize(fixedLayoutSize);
 return;
 }
 
@@ -314,7 +318,7 @@
 m_lastViewSizeForScaleToFit = m_webPage.size();
 m_lastDocumentSizeForScaleToFit = documentSize;
 
-int documentWidth = documentSize.width();
+documentWidth = documentSize.width();
 
 float viewScale = 1;
 
@@ -325,8 +329,11 @@
 m_isScalingViewToFitDocument = true;
 m_webPage.setUseFixedLayout(true);
 viewScale = (float)viewWidth / (float)documentWidth;
-viewScale = std::max(viewScale, minimumViewScale);
-IntSize fixedLayoutSize(std::ceil(m_webPage.size().width() / viewScale), std::ceil((m_webPage.size().height() - m_webPage.corePage()-topContentInset()) / viewScale));
+if (viewScale  minimumViewScale) {
+viewScale = 

[webkit-changes] [187089] branches/safari-601.1-branch/Source/JavaScriptCore

2015-07-20 Thread matthew_hanson
Title: [187089] branches/safari-601.1-branch/Source/_javascript_Core








Revision 187089
Author matthew_han...@apple.com
Date 2015-07-20 22:27:39 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186819. rdar://problem/21729083

Modified Paths

branches/safari-601.1-branch/Source/_javascript_Core/ChangeLog
branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp
branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGValidate.cpp
branches/safari-601.1-branch/Source/_javascript_Core/tests/stress/arith-add-with-constants.js




Diff

Modified: branches/safari-601.1-branch/Source/_javascript_Core/ChangeLog (187088 => 187089)

--- branches/safari-601.1-branch/Source/_javascript_Core/ChangeLog	2015-07-21 05:16:44 UTC (rev 187088)
+++ branches/safari-601.1-branch/Source/_javascript_Core/ChangeLog	2015-07-21 05:27:39 UTC (rev 187089)
@@ -1,5 +1,34 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186819. rdar://problem/21729083
+
+2015-07-14  Matthew Mirman  mmir...@apple.com
+
+Repatch. Makes compileArithSub in the DFG ensure that the constant is an int32.
+https://bugs.webkit.org/show_bug.cgi?id=146910
+rdar://problem/21729083
+
+Reviewed by Filip Pizlo.
+
+Also fixes the debug build problem where all edges are assumed to
+have UntypedUse before the fixup phase.
+
+* dfg/DFGSpeculativeJIT.cpp:
+(JSC::DFG::SpeculativeJIT::compileArithSub):
+* dfg/DFGValidate.cpp:
+(JSC::DFG::Validate::validateEdgeWithDoubleResultIfNecessary):
+* tests/stress/arith-add-with-constants.js: Added some tests for this case.
+(arithAdd42WrittenAsInteger):
+(testArithAdd42WrittenAsInteger):
+(arithSub42WrittenAsDouble):
+(testArithSub42WrittenAsDouble):
+(doubleConstant):
+(testDoubleConstant): Added test for the case of +0.0 and Math.min(0.0)
+(arithAdd42WrittenAsDouble): Deleted.
+(testArithAdd42WrittenAsDouble): Deleted.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r187028. rdar://problem/21869970
 
 2015-07-18  Filip Pizlo  fpi...@apple.com


Modified: branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp (187088 => 187089)

--- branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp	2015-07-21 05:16:44 UTC (rev 187088)
+++ branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGSpeculativeJIT.cpp	2015-07-21 05:27:39 UTC (rev 187089)
@@ -2989,7 +2989,7 @@
 case Int32Use: {
 ASSERT(!shouldCheckNegativeZero(node-arithMode()));
 
-if (node-child2()-isNumberConstant()) {
+if (node-child2()-isInt32Constant()) {
 SpeculateInt32Operand op1(this, node-child1());
 int32_t imm2 = node-child2()-asInt32();
 GPRTemporary result(this);
@@ -3006,7 +3006,7 @@
 return;
 }
 
-if (node-child1()-isNumberConstant()) {
+if (node-child1()-isInt32Constant()) {
 int32_t imm1 = node-child1()-asInt32();
 SpeculateInt32Operand op2(this, node-child2());
 GPRTemporary result(this);


Modified: branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGValidate.cpp (187088 => 187089)

--- branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGValidate.cpp	2015-07-21 05:16:44 UTC (rev 187088)
+++ branches/safari-601.1-branch/Source/_javascript_Core/dfg/DFGValidate.cpp	2015-07-21 05:27:39 UTC (rev 187089)
@@ -544,9 +544,9 @@
 return;
 
 if (m_graph.m_planStage  PlanStage::AfterFixup)
-VALIDATE((node, edge), edge.useKind() == UntypedUse);
-else
-VALIDATE((node, edge), edge.useKind() == DoubleRepUse || edge.useKind() == DoubleRepRealUse || edge.useKind() == DoubleRepMachineIntUse);
+return;
+
+VALIDATE((node, edge), edge.useKind() == DoubleRepUse || edge.useKind() == DoubleRepRealUse || edge.useKind() == DoubleRepMachineIntUse);
 }
 
 void checkOperand(


Modified: branches/safari-601.1-branch/Source/_javascript_Core/tests/stress/arith-add-with-constants.js (187088 => 187089)

--- branches/safari-601.1-branch/Source/_javascript_Core/tests/stress/arith-add-with-constants.js	2015-07-21 05:16:44 UTC (rev 187088)
+++ branches/safari-601.1-branch/Source/_javascript_Core/tests/stress/arith-add-with-constants.js	2015-07-21 05:27:39 UTC (rev 187089)
@@ -167,56 +167,105 @@
 testArithAdd42WrittenAsInteger();
 
 
-function arithAdd42WrittenAsDouble(x) {
-var a = x + 42.0;
-var b = 42. + x;
+
+
+// Test value + 42.
+function arithAdd42WrittenAsInteger(x) {
+var a = x + 42;
+var b = 42 + x;
 if (!(isNaN(x)  isNaN(a)  isNaN(b))  a !== b)
-throw Internal error on arithAdd42WrittenAsDouble, a =  + a +  b =  + b;
+throw Internal error on 

[webkit-changes] [187090] branches/safari-601.1-branch/Source/WebKit

2015-07-20 Thread matthew_hanson
Title: [187090] branches/safari-601.1-branch/Source/WebKit








Revision 187090
Author matthew_han...@apple.com
Date 2015-07-20 22:27:42 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187027. rdar://problem/21882777

Modified Paths

branches/safari-601.1-branch/Source/WebKit/ChangeLog
branches/safari-601.1-branch/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj




Diff

Modified: branches/safari-601.1-branch/Source/WebKit/ChangeLog (187089 => 187090)

--- branches/safari-601.1-branch/Source/WebKit/ChangeLog	2015-07-21 05:27:39 UTC (rev 187089)
+++ branches/safari-601.1-branch/Source/WebKit/ChangeLog	2015-07-21 05:27:42 UTC (rev 187090)
@@ -1,3 +1,20 @@
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
+Merge r187027. rdar://problem/21882777
+
+2015-07-20  Brent Fulgham  bfulg...@apple.com
+
+[Win] Certain Debug builds can take close to 3 hours to link
+https://bugs.webkit.org/show_bug.cgi?id=147114
+rdar://problem/21882777
+
+Reviewed by Tim Horton.
+
+Correct the 64-bit DebugSuffix link target to match the 32-bit version.
+
+* WebKit.vcxproj/WebKit/WebKit.vcxproj: Turn off the REF and ICF
+flags for the 64-bit DebugSuffix link target.
+
 2015-07-09  Per Arne Vollan  pe...@outlook.com
 
 [Win] Add memory pressure handler.


Modified: branches/safari-601.1-branch/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj (187089 => 187090)

--- branches/safari-601.1-branch/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj	2015-07-21 05:27:39 UTC (rev 187089)
+++ branches/safari-601.1-branch/Source/WebKit/WebKit.vcxproj/WebKit/WebKit.vcxproj	2015-07-21 05:27:42 UTC (rev 187090)
@@ -233,6 +233,9 @@
 Link /
 ClCompile /
 Link /
+Link
+  OptimizeReferencesfalse/OptimizeReferences
+/Link
   /ItemDefinitionGroup
   ItemDefinitionGroup Condition='$(Configuration)|$(Platform)'=='Release|Win32'
 Link /
@@ -287,6 +290,11 @@
   EnableCOMDATFoldingfalse/EnableCOMDATFolding
 /Link
   /ItemDefinitionGroup
+  ItemDefinitionGroup Condition='$(Configuration)|$(Platform)'=='DebugSuffix|x64'
+Link
+  EnableCOMDATFoldingfalse/EnableCOMDATFolding
+/Link
+  /ItemDefinitionGroup
   ItemGroup
 ClCompile Include=..\..\Storage\StorageAreaImpl.cpp /
 ClCompile Include=..\..\Storage\StorageAreaSync.cpp /






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


[webkit-changes] [187084] branches/safari-601.1-branch/Source/WebKit2

2015-07-20 Thread matthew_hanson
Title: [187084] branches/safari-601.1-branch/Source/WebKit2








Revision 187084
Author matthew_han...@apple.com
Date 2015-07-20 21:38:11 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187047. rdar://problem/20860410

Modified Paths

branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/Shared/Plugins/PluginModuleInfo.h
branches/safari-601.1-branch/Source/WebKit2/UIProcess/API/C/WKAPICast.h
branches/safari-601.1-branch/Source/WebKit2/UIProcess/API/C/WKPluginLoadPolicy.h
branches/safari-601.1-branch/Source/WebKit2/UIProcess/Plugins/mac/PluginInfoStoreMac.mm
branches/safari-601.1-branch/Source/WebKit2/UIProcess/WebPageProxy.cpp
branches/safari-601.1-branch/Source/WebKit2/WebProcess/WebPage/WebPage.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebKit2/ChangeLog (187083 => 187084)

--- branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 04:38:07 UTC (rev 187083)
+++ branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 04:38:11 UTC (rev 187084)
@@ -1,5 +1,50 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187047. rdar://problem/20860410
+
+2015-07-20  Gordon Sheridan  gordon_sheri...@apple.com
+
+Support blocking a plug-in for non-security reasons
+https://bugs.webkit.org/show_bug.cgi?id=145009
+
+Reviewed by Anders Carlsson.
+
+* Shared/Plugins/PluginModuleInfo.h:
+Replace PluginModuleBlocked with separate enum values for blocking for security and compatibility.
+
+* UIProcess/API/C/WKAPICast.h:
+(WebKit::toWKPluginLoadPolicy):
+Modify to handle change to PluginModuleBlocked enum.
+
+(WebKit::toPluginModuleLoadPolicy):
+Ditto.
+
+* UIProcess/API/C/WKPluginLoadPolicy.h:
+Added enum value for blocking a plugin for compatibility reasons.
+
+* UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
+(WebKit::shouldBlockPlugin):
+Check load policy for both reasons a plugin may be blocked.
+
+(WebKit::WKPlugInModuleLoadPolicyToPluginModuleLoadPolicy):
+Added function to convert between load policy enum types.
+
+(WebKit::PluginInfoStore::defaultLoadPolicyForPlugin):
+Modified to call WKLoadPolicyForPluginVersion() which can distinguish between blocked for security or compatibility.
+
+* UIProcess/WebPageProxy.cpp:
+(WebKit::WebPageProxy::findPlugin):
+Updated to recognize both PluginModuleBlocked enum values that indicate a plugin is blocked.
+
+* WebProcess/WebPage/WebPage.cpp:
+(WebKit::WebPage::createPlugin):
+Ditto.
+
+(WebKit::WebPage::canPluginHandleResponse):
+Ditto.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r187023. rdar://problem/21799011
 
 2015-07-16  Anders Carlsson  ander...@apple.com


Modified: branches/safari-601.1-branch/Source/WebKit2/Shared/Plugins/PluginModuleInfo.h (187083 => 187084)

--- branches/safari-601.1-branch/Source/WebKit2/Shared/Plugins/PluginModuleInfo.h	2015-07-21 04:38:07 UTC (rev 187083)
+++ branches/safari-601.1-branch/Source/WebKit2/Shared/Plugins/PluginModuleInfo.h	2015-07-21 04:38:11 UTC (rev 187084)
@@ -43,7 +43,8 @@
 
 // The plug-in should be blocked from being instantiated.
 // Note that the plug-in will still be seen by e.g. navigator.plugins
-PluginModuleBlocked,
+PluginModuleBlockedForSecurity,
+PluginModuleBlockedForCompatibility,
 };
 
 struct PluginModuleInfo {


Modified: branches/safari-601.1-branch/Source/WebKit2/UIProcess/API/C/WKAPICast.h (187083 => 187084)

--- branches/safari-601.1-branch/Source/WebKit2/UIProcess/API/C/WKAPICast.h	2015-07-21 04:38:07 UTC (rev 187083)
+++ branches/safari-601.1-branch/Source/WebKit2/UIProcess/API/C/WKAPICast.h	2015-07-21 04:38:11 UTC (rev 187084)
@@ -469,8 +469,10 @@
 return kWKPluginLoadPolicyLoadNormally;
 case PluginModuleLoadUnsandboxed:
 return kWKPluginLoadPolicyLoadUnsandboxed;
-case PluginModuleBlocked:
+case PluginModuleBlockedForSecurity:
 return kWKPluginLoadPolicyBlocked;
+case PluginModuleBlockedForCompatibility:
+return kWKPluginLoadPolicyBlockedForCompatibility;
 }
 
 ASSERT_NOT_REACHED();
@@ -502,13 +504,15 @@
 case kWKPluginLoadPolicyLoadNormally:
 return PluginModuleLoadNormally;
 case kWKPluginLoadPolicyBlocked:
-return PluginModuleBlocked;
+return PluginModuleBlockedForSecurity;
+case kWKPluginLoadPolicyBlockedForCompatibility:
+return PluginModuleBlockedForCompatibility;
 case kWKPluginLoadPolicyLoadUnsandboxed:
 return PluginModuleLoadUnsandboxed;
 }
 
 ASSERT_NOT_REACHED();
-return PluginModuleBlocked;
+return PluginModuleBlockedForSecurity;
 }
 
 inline WebCore::PluginLoadClientPolicy 

[webkit-changes] [187079] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187079] branches/safari-601.1-branch/Source/WebCore








Revision 187079
Author matthew_han...@apple.com
Date 2015-07-20 21:37:55 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187025. rdar://problem/21878275

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/Modules/webaudio/AudioContext.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187078 => 187079)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:53 UTC (rev 187078)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:55 UTC (rev 187079)
@@ -1,5 +1,22 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187025. rdar://problem/21878275
+
+2015-07-18  Ada Chan  adac...@apple.com
+
+Fix deadlock between -[AVPlayerItem currentTime] and -[AVPlayer isExternalPlaybackActive]
+https://bugs.webkit.org/show_bug.cgi?id=147085
+rdar://problem/21878275
+
+Reviewed by Jer Noble.
+
+* Modules/webaudio/AudioContext.cpp:
+(WebCore::AudioContext::isPlayingAudioDidChange):
+Call Document::updateIsPlayingMedia() on the main thread, since we could be on the audio I/O
+thread here and the Document::updateIsPlayingMedia() call could block, causing a deadlock.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186991. rdar://problem/21643094
 
 2015-07-18  David Kilzer  ddkil...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/Modules/webaudio/AudioContext.cpp (187078 => 187079)

--- branches/safari-601.1-branch/Source/WebCore/Modules/webaudio/AudioContext.cpp	2015-07-21 04:37:53 UTC (rev 187078)
+++ branches/safari-601.1-branch/Source/WebCore/Modules/webaudio/AudioContext.cpp	2015-07-21 04:37:55 UTC (rev 187079)
@@ -1069,7 +1069,12 @@
 
 void AudioContext::isPlayingAudioDidChange()
 {
-document()-updateIsPlayingMedia();
+// Make sure to call Document::updateIsPlayingMedia() on the main thread, since
+// we could be on the audio I/O thread here and the call into WebCore could block.
+RefPtrAudioContext strongThis(this);
+callOnMainThread([strongThis] {
+strongThis-document()-updateIsPlayingMedia();
+});
 }
 
 void AudioContext::fireCompletionEvent()






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


[webkit-changes] [187076] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187076] branches/safari-601.1-branch/Source/WebCore








Revision 187076
Author matthew_han...@apple.com
Date 2015-07-20 21:37:48 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r186991. rdar://problem/21643094

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/platform/graphics/PathUtilities.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187075 => 187076)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:46 UTC (rev 187075)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:37:48 UTC (rev 187076)
@@ -1,5 +1,21 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r186991. rdar://problem/21643094
+
+2015-07-18  David Kilzer  ddkil...@apple.com
+
+REGRESSION (r186976): Use piFloat instead of M_PI
+
+Attempt to fix the following build failure:
+
+PathUtilities.cpp(183): error C2065: 'M_PI' : undeclared identifier [...\Source\WebCore\WebCore.vcxproj\WebCore.vcxproj]
+
+* platform/graphics/PathUtilities.cpp:
+(WebCore::walkGraphAndExtractPolygon): Use piFloat since M_PI is
+not defined on Windows.
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186990. rdar://problem/21643094
 
 2015-07-18  David Kilzer  ddkil...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/platform/graphics/PathUtilities.cpp (187075 => 187076)

--- branches/safari-601.1-branch/Source/WebCore/platform/graphics/PathUtilities.cpp	2015-07-21 04:37:46 UTC (rev 187075)
+++ branches/safari-601.1-branch/Source/WebCore/platform/graphics/PathUtilities.cpp	2015-07-21 04:37:48 UTC (rev 187076)
@@ -180,7 +180,7 @@
 float crossZ = nextVec.x() * currentVec.y() - nextVec.y() * currentVec.x();
 
 if (crossZ  0)
-angle = (2 * M_PI) - angle;
+angle = (2 * piFloat) - angle;
 
 if (!nextNode || angle  nextNodeAngle) {
 nextNode = potentialNextNode;






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


[webkit-changes] [187078] branches/safari-601.1-branch/Source/WebKit2

2015-07-20 Thread matthew_hanson
Title: [187078] branches/safari-601.1-branch/Source/WebKit2








Revision 187078
Author matthew_han...@apple.com
Date 2015-07-20 21:37:53 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187023. rdar://problem/21799011

Modified Paths

branches/safari-601.1-branch/Source/WebKit2/ChangeLog
branches/safari-601.1-branch/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp
branches/safari-601.1-branch/Source/WebKit2/UIProcess/WebProcessProxy.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebKit2/ChangeLog (187077 => 187078)

--- branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 04:37:51 UTC (rev 187077)
+++ branches/safari-601.1-branch/Source/WebKit2/ChangeLog	2015-07-21 04:37:53 UTC (rev 187078)
@@ -1,5 +1,26 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187023. rdar://problem/21799011
+
+2015-07-16  Anders Carlsson  ander...@apple.com
+
+WebsiteDataStore operations need to grab background assertions
+https://bugs.webkit.org/show_bug.cgi?id=147015
+rdar://problem/21799011
+
+Reviewed by Sam Weinig.
+
+* UIProcess/Network/NetworkProcessProxy.cpp:
+(WebKit::NetworkProcessProxy::fetchWebsiteData):
+(WebKit::NetworkProcessProxy::deleteWebsiteData):
+(WebKit::NetworkProcessProxy::deleteWebsiteDataForOrigins):
+* UIProcess/WebProcessProxy.cpp:
+(WebKit::WebProcessProxy::fetchWebsiteData):
+(WebKit::WebProcessProxy::deleteWebsiteData):
+(WebKit::WebProcessProxy::deleteWebsiteDataForOrigins):
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r187001. rdar://problem/21769577
 
 2015-07-18  Simon Fraser  simon.fra...@apple.com


Modified: branches/safari-601.1-branch/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp (187077 => 187078)

--- branches/safari-601.1-branch/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp	2015-07-21 04:37:51 UTC (rev 187077)
+++ branches/safari-601.1-branch/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp	2015-07-21 04:37:53 UTC (rev 187078)
@@ -125,16 +125,23 @@
 ASSERT(canSendMessage());
 
 uint64_t callbackID = generateCallbackID();
-m_pendingFetchWebsiteDataCallbacks.add(callbackID, WTF::move(completionHandler));
+auto token = throttler().backgroundActivityToken();
 
+m_pendingFetchWebsiteDataCallbacks.add(callbackID, [token, completionHandler](WebsiteData websiteData) {
+completionHandler(WTF::move(websiteData));
+});
+
 send(Messages::WebProcess::FetchWebsiteData(sessionID, dataTypes, callbackID), 0);
 }
 
 void NetworkProcessProxy::deleteWebsiteData(WebCore::SessionID sessionID, WebsiteDataTypes dataTypes, std::chrono::system_clock::time_point modifiedSince,  std::functionvoid () completionHandler)
 {
 auto callbackID = generateCallbackID();
+auto token = throttler().backgroundActivityToken();
 
-m_pendingDeleteWebsiteDataCallbacks.add(callbackID, WTF::move(completionHandler));
+m_pendingDeleteWebsiteDataCallbacks.add(callbackID, [token, completionHandler] {
+completionHandler();
+});
 send(Messages::NetworkProcess::DeleteWebsiteData(sessionID, dataTypes, modifiedSince, callbackID), 0);
 }
 
@@ -143,8 +150,12 @@
 ASSERT(canSendMessage());
 
 uint64_t callbackID = generateCallbackID();
-m_pendingDeleteWebsiteDataForOriginsCallbacks.add(callbackID, WTF::move(completionHandler));
+auto token = throttler().backgroundActivityToken();
 
+m_pendingDeleteWebsiteDataForOriginsCallbacks.add(callbackID, [token, completionHandler] {
+completionHandler();
+});
+
 VectorSecurityOriginData originData;
 for (auto origin : origins)
 originData.append(SecurityOriginData::fromSecurityOrigin(*origin));


Modified: branches/safari-601.1-branch/Source/WebKit2/UIProcess/WebProcessProxy.cpp (187077 => 187078)

--- branches/safari-601.1-branch/Source/WebKit2/UIProcess/WebProcessProxy.cpp	2015-07-21 04:37:51 UTC (rev 187077)
+++ branches/safari-601.1-branch/Source/WebKit2/UIProcess/WebProcessProxy.cpp	2015-07-21 04:37:53 UTC (rev 187078)
@@ -713,8 +713,12 @@
 ASSERT(canSendMessage());
 
 uint64_t callbackID = generateCallbackID();
-m_pendingFetchWebsiteDataCallbacks.add(callbackID, WTF::move(completionHandler));
+auto token = throttler().backgroundActivityToken();
 
+m_pendingFetchWebsiteDataCallbacks.add(callbackID, [token, completionHandler](WebsiteData websiteData) {
+completionHandler(WTF::move(websiteData));
+});
+
 send(Messages::WebProcess::FetchWebsiteData(sessionID, dataTypes, callbackID), 0);
 }
 
@@ -723,8 +727,11 @@
 ASSERT(canSendMessage());
 
 uint64_t callbackID = generateCallbackID();
+auto token = throttler().backgroundActivityToken();
 
-m_pendingDeleteWebsiteDataCallbacks.add(callbackID, WTF::move(completionHandler));
+

[webkit-changes] [187081] branches/safari-601.1-branch

2015-07-20 Thread matthew_hanson
Title: [187081] branches/safari-601.1-branch








Revision 187081
Author matthew_han...@apple.com
Date 2015-07-20 21:38:02 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187031. rdar://problem/21712311

Modified Paths

branches/safari-601.1-branch/LayoutTests/ChangeLog
branches/safari-601.1-branch/LayoutTests/media/restore-from-page-cache-expected.txt
branches/safari-601.1-branch/LayoutTests/media/restore-from-page-cache.html
branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/dom/GenericEventQueue.cpp
branches/safari-601.1-branch/Source/WebCore/dom/GenericEventQueue.h
branches/safari-601.1-branch/Source/WebCore/html/HTMLMediaElement.cpp
branches/safari-601.1-branch/Source/WebCore/html/HTMLSourceElement.cpp
branches/safari-601.1-branch/Source/WebCore/html/HTMLSourceElement.h




Diff

Modified: branches/safari-601.1-branch/LayoutTests/ChangeLog (187080 => 187081)

--- branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:37:58 UTC (rev 187080)
+++ branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-21 04:38:02 UTC (rev 187081)
@@ -1,5 +1,22 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187031. rdar://problem/21712311
+
+2015-07-20  Andreas Kling  akl...@apple.com
+
+Improve behavior of media elements in page cache.
+https://webkit.org/b/147020
+rdar://problem/21712311
+
+Reviewed by Chris Dumez.
+
+Add some coverage for suspend/resume of queued events on cached media elements.
+
+* media/restore-from-page-cache-expected.txt:
+* media/restore-from-page-cache.html:
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r186988. rdar://problem/21567820
 
 2015-07-18  David Kilzer  ddkil...@apple.com


Modified: branches/safari-601.1-branch/LayoutTests/media/restore-from-page-cache-expected.txt (187080 => 187081)

--- branches/safari-601.1-branch/LayoutTests/media/restore-from-page-cache-expected.txt	2015-07-21 04:37:58 UTC (rev 187080)
+++ branches/safari-601.1-branch/LayoutTests/media/restore-from-page-cache-expected.txt	2015-07-21 04:38:02 UTC (rev 187081)
@@ -5,8 +5,12 @@
 EVENT(canplaythrough)
 EXPECTED (loadCount == '0') OK
 *** Page going into cache
+*** Changing playbackRate just before going into cache, to schedule a ratechange event.
+*** Changing volume just before going into cache, to schedule a volumechange event.
 *** Page returned from cache
 EXPECTED (loadCount == '1') OK
 EXPECTED (videoComputedStyle.width == '320px') OK
 EXPECTED (videoComputedStyle.height == '240px') OK
+*** ratechange event fired. This should happen AFTER returning from cache.
+*** volumechange event fired. This should happen AFTER returning from cache.
 


Modified: branches/safari-601.1-branch/LayoutTests/media/restore-from-page-cache.html (187080 => 187081)

--- branches/safari-601.1-branch/LayoutTests/media/restore-from-page-cache.html	2015-07-21 04:37:58 UTC (rev 187080)
+++ branches/safari-601.1-branch/LayoutTests/media/restore-from-page-cache.html	2015-07-21 04:38:02 UTC (rev 187081)
@@ -33,17 +33,33 @@
 setTimeout(function() { if (window.testRunner) testRunner.notifyDone(); }, 200);
 }
 }
-
+
+function pagehide()
+{
+// Have the video element generate some events that need to be suspended.
+// We use multiple events to verify that they fire in the correct order.
+consoleWrite(*** Changing playbackRate just before going into cache, to schedule a ratechange event.);
+document.getElementsByTagName(video)[0].playbackRate = 2; 
+consoleWrite(*** Changing volume just before going into cache, to schedule a volumechange event.);
+document.getElementsByTagName(video)[0].volume = 0.5; 
+}
+
 function canplaythrough() 
 {
 testExpected(loadCount, 0);
 if (!loadCount) {
+video = document.getElementsByTagName('video')[0];
 consoleWrite(*** Page going into cache);
 setTimeout('window.location = data:text/html,scripthistory.back() + /script', 0);
 }
 ++loadCount;
 }
 
+function propertyChangeCallback(evt)
+{
+consoleWrite(***  + evt.type +   event fired. This should happen AFTER returning from cache.);
+}
+
 function setup()
 {
 video = mediaElement = document.getElementsByTagName('video')[0];
@@ -52,9 +68,13 @@
 waitForEvent('canplaythrough', canplaythrough);
 
 video.src = ""
+
+video._onratechange_ = propertyChangeCallback;
+video._onvolumechange_ = propertyChangeCallback;
 }
 
 

[webkit-changes] [187082] branches/safari-601.1-branch/Source/WebCore

2015-07-20 Thread matthew_hanson
Title: [187082] branches/safari-601.1-branch/Source/WebCore








Revision 187082
Author matthew_han...@apple.com
Date 2015-07-20 21:38:05 -0700 (Mon, 20 Jul 2015)


Log Message
Merge r187035. rdar://problem/21712311

Modified Paths

branches/safari-601.1-branch/Source/WebCore/ChangeLog
branches/safari-601.1-branch/Source/WebCore/dom/GenericEventQueue.cpp




Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187081 => 187082)

--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:38:02 UTC (rev 187081)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-21 04:38:05 UTC (rev 187082)
@@ -1,5 +1,19 @@
 2015-07-20  Matthew Hanson  matthew_han...@apple.com
 
+Merge r187035. rdar://problem/21712311
+
+2015-07-20  Andreas Kling  akl...@apple.com
+
+Unreviewed assertion fix following r187031.
+
+Just have GenericEventQueue::resume() return early if the queue isn't suspended.
+Suspend/Resume calls are not always symmetrical in HTMLMediaElement.
+
+* dom/GenericEventQueue.cpp:
+(WebCore::GenericEventQueue::resume):
+
+2015-07-20  Matthew Hanson  matthew_han...@apple.com
+
 Merge r187031. rdar://problem/21712311
 
 2015-07-20  Andreas Kling  akl...@apple.com


Modified: branches/safari-601.1-branch/Source/WebCore/dom/GenericEventQueue.cpp (187081 => 187082)

--- branches/safari-601.1-branch/Source/WebCore/dom/GenericEventQueue.cpp	2015-07-21 04:38:02 UTC (rev 187081)
+++ branches/safari-601.1-branch/Source/WebCore/dom/GenericEventQueue.cpp	2015-07-21 04:38:05 UTC (rev 187082)
@@ -131,7 +131,9 @@
 
 void GenericEventQueue::resume()
 {
-ASSERT(m_isSuspended);
+if (!m_isSuspended)
+return;
+
 m_isSuspended = false;
 
 if (m_pendingEvents.isEmpty())






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