WebKit-https.git
4 years agoAdd myself as the will-change contact.
simon.fraser@apple.com [Thu, 20 Aug 2015 18:43:49 +0000 (18:43 +0000)]
Add myself as the will-change contact.

* features.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188692 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: console assertion when hitting breakpoint after auto-recording ends
bburg@apple.com [Thu, 20 Aug 2015 18:11:46 +0000 (18:11 +0000)]
Web Inspector: console assertion when hitting breakpoint after auto-recording ends
https://bugs.webkit.org/show_bug.cgi?id=148225

Reviewed by Timothy Hatcher.

Add checks for the precondition to starting/stopping time updates.

* UserInterface/Views/TimelineRecordingContentView.js:
(WebInspector.TimelineRecordingContentView.prototype._capturingStarted):
(WebInspector.TimelineRecordingContentView.prototype._debuggerPaused):
(WebInspector.TimelineRecordingContentView.prototype._debuggerResumed):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188691 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Cocoa] Treat Epoch as invalid value for "Last-Modified" header
cdumez@apple.com [Thu, 20 Aug 2015 17:47:08 +0000 (17:47 +0000)]
[Cocoa] Treat Epoch as invalid value for "Last-Modified" header
https://bugs.webkit.org/show_bug.cgi?id=148162
rdar://problem/22330837

Reviewed by Antti Koivisto.

Source/WebCore:

Ignore "Last-Modified" header when computing heuristic freshness if it
is Epoch. CFNetwork currently converts a malformed date for Last-Modified
into Epoch so there is no way for us to distinguish Epoch from invalid
input. Without this, we would end up with cached resources that have a
giant lifetime (> 4 years) due to a malformed HTTP header.

Some Websites (e.g. www.popehat.com) also wrongly return Epoch as
Last-Modified value and we would end up caching it overly aggressively.
Now that we consider Epoch as an invalid value for Last-Modified, it will
also work around this content bug.

Test: http/tests/cache/disk-cache/disk-cache-last-modified.html

* platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::lastModified):

LayoutTests:

Add better layout test coverage for using the "Last-Modified" header to
compute heuristic freshness. In particular, it adds coverage for the
following values: Epoch, malformed date.

* http/tests/cache/disk-cache/disk-cache-last-modified-expected.txt: Added.
* http/tests/cache/disk-cache/disk-cache-last-modified.html: Added.
New test.

* http/tests/cache/disk-cache/resources/cache-test.js:
(makeHeaderValue):
makeHeaderValue() was not resolving 'now(-1000)' into a date. This means that the
tests using it would end up sending an invalid "Last-Modified" header which our
networking code was translating to Epoch. We now ignore Epoch as Last-Modified
value for computing heuristic freshness to not cache due to malformed headers.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188690 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoA watchdog tests is failing on Windows.
mark.lam@apple.com [Thu, 20 Aug 2015 17:41:43 +0000 (17:41 +0000)]
A watchdog tests is failing on Windows.
https://bugs.webkit.org/show_bug.cgi?id=148228

Reviewed by Brent Fulgham.

The test just needed a little more time because Windows' timer resolution is low.
After increasing the test deadlines, the test started passing.

* API/tests/ExecutionTimeLimitTest.cpp:
(testExecutionTimeLimit):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188689 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoFixed some warnings on Windows.
mark.lam@apple.com [Thu, 20 Aug 2015 17:40:48 +0000 (17:40 +0000)]
Fixed some warnings on Windows.
https://bugs.webkit.org/show_bug.cgi?id=148224

Reviewed by Brent Fulgham.

The Windows build was complaining that function params were hiding a global variable.
Since the function params were unused, I resolved this by removing the param names.

* API/tests/ExecutionTimeLimitTest.cpp:
(currentCPUTimeAsJSFunctionCallback):
(shouldTerminateCallback):
(cancelTerminateCallback):
(extendTerminateCallback):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188688 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: add TestHarness option to tee all commands to system console
bburg@apple.com [Thu, 20 Aug 2015 16:43:53 +0000 (16:43 +0000)]
Web Inspector: add TestHarness option to tee all commands to system console
https://bugs.webkit.org/show_bug.cgi?id=148181

Reviewed by Joseph Pecoraro.

Source/WebCore:

* inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::unbufferedLog): Remove log prefix so output
to stderr can be diffed against expected results without processing.

Source/WebInspectorUI:

It is currently difficult to trace what's going on when a test times out
on a buildbot instance. The existing option for forcing debug logging can
still drop messages that don't make it from the inspector to the test page.

This patch adds an option which logs all TestHarness commands directly to
stderr in the Inspector instance using InspectorFrontendHost::unbufferedLog.

Clean up how existing harness logging code calls into each other. Extract
the stringifying code that is duplicated everywhere.

* UserInterface/Test.html: Reorganize options and add new option.
* UserInterface/Test/FrontendTestHarness.js:
(FrontendTestHarness.prototype.completeTest):
(FrontendTestHarness.prototype.addResult):
(FrontendTestHarness.prototype.debugLog):
(FrontendTestHarness.prototype.testPageDidLoad):
(FrontendTestHarness.prototype._resendResults):
(FrontendTestHarness):
* UserInterface/Test/ProtocolTestHarness.js:
(ProtocolTestHarness.prototype.completeTest):
(ProtocolTestHarness.prototype.addResult):
(ProtocolTestHarness.prototype.debugLog):
* UserInterface/Test/TestHarness.js:
(TestHarness.prototype.log):
(TestHarness.prototype.assert):
(TestHarness.prototype.expectThat):
(TestHarness.messageAsString):
(TestHarness):
* UserInterface/TestStub.html: Reorganize options and add new option.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188687 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRevert accidental commit of a new test that isn't ready for prime time.
eric.carlson@apple.com [Thu, 20 Aug 2015 15:11:07 +0000 (15:11 +0000)]
Revert accidental commit of a new test that isn't ready for prime time.

Unreviewed build fix.

* http/tests/media/video-media-document-disposition-download.html: Removed.
* http/tests/media/resources/serve-video.php: Remove contentDisposition support.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188686 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[GTK] Auto-detection of cairo-gl fails
gns@gnome.org [Thu, 20 Aug 2015 13:55:06 +0000 (13:55 +0000)]
[GTK] Auto-detection of cairo-gl fails
https://bugs.webkit.org/show_bug.cgi?id=148189

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> on 2015-08-20
Reviewed by Žan Doberšek.

* Source/cmake/FindCairoGL.cmake: only check for components if the main package has
been found. Otherwise, if either GLX or EGL are available, cairo-gl will also be
deemed available, which might not be the case.
* Source/cmake/OptionsGTK.cmake: fix the usage of the CAIROGL_FOUND variable.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188685 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Streams API] Sync tests with upstream reference
calvaris@igalia.com [Thu, 20 Aug 2015 08:00:43 +0000 (08:00 +0000)]
[Streams API] Sync tests with upstream reference
https://bugs.webkit.org/show_bug.cgi?id=148078

Synced with the upstream reference tests. This means that we moved
some of ours to the reference and brought some new ones. Of course
expectations were updated accordingly.

Reviewed by Darin Adler.

* streams/readable-stream-controller-error-expected.txt: Expectations.
* streams/readable-stream-controller-error.html: Changed test descriptions and moved one test to the reference.
* streams/readable-stream-gc-expected.txt: Removed.
* streams/readable-stream-gc.html: Moved to the reference.
* streams/readable-stream-reader-read-expected.txt: Expectations.
* streams/readable-stream-reader-read.html: Moved a test to the reference.
* streams/reference-implementation/readable-stream-expected.txt:
* streams/reference-implementation/readable-stream-reader-expected.txt: Expectations.
* streams/reference-implementation/readable-stream-reader.html: Brought changes from upstream reference and
uncomented async pull source test (which had been commented since a long time ago and is working now).
* streams/reference-implementation/readable-stream-tee.html: Brought changes from upstream reference.
* streams/reference-implementation/readable-stream-templated-expected.txt: Expectations.
* streams/reference-implementation/readable-stream-templated.html:
* streams/reference-implementation/readable-stream.html: Brought changes from upstream reference.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188684 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Remove unused temporary variable
commit-queue@webkit.org [Thu, 20 Aug 2015 07:41:11 +0000 (07:41 +0000)]
Web Inspector: Remove unused temporary variable
https://bugs.webkit.org/show_bug.cgi?id=148215

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-08-20
Reviewed by Timothy Hatcher.

* UserInterface/Views/VisualStyleDetailsPanel.js:
(WebInspector.VisualStyleDetailsPanel):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188683 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Visual styles panel does not work with pseudo-elements
drousso@apple.com [Thu, 20 Aug 2015 05:03:06 +0000 (05:03 +0000)]
Web Inspector: Visual styles panel does not work with pseudo-elements
https://bugs.webkit.org/show_bug.cgi?id=148187

Reviewed by Timothy Hatcher.

If the inline style does not exist, such as for pseudo-elements, default to the first matched rule.

* UserInterface/Views/VisualStyleSelectorSection.js:
(WebInspector.VisualStyleSelectorSection.prototype.update):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188682 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAdd InternalPromise to use Promises safely in the internals
utatane.tea@gmail.com [Thu, 20 Aug 2015 04:43:24 +0000 (04:43 +0000)]
Add InternalPromise to use Promises safely in the internals
https://bugs.webkit.org/show_bug.cgi?id=148136

Reviewed by Saam Barati.

This patch implements InternalPromise.
It is completely different instance set (constructor, prototype, instance)
but it has the same feature to the Promise.

In the Promise operations, when resolving the promise with the returned promise
from the fulfill handler, we need to look up "then" method.

e.g.
    var p3 = p1.then(function handler(...) {
        return p2;
    });

When handler is executed, we retrieve the returned `p2` promise. And to resolve
the returned promise by "then" method (that is `p3`), we construct the chain by executing
`p2.then(resolving function for p3)`. So if the user modify the Promise.prototype.then,
we can observe the internal operations.

By using InternalPromise, we completely hide InternalPromise.prototype from the users.
It allows JSC to use Promises internally; even if the user modify / override
the Promise.prototype.then function, it does not effect on InternalPromise.

One limitation is that the implementation need to take care not to leak the InternalPromise instance
to the user space.

* CMakeLists.txt:
* DerivedSources.make:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:
* builtins/InternalPromiseConstructor.js: Added.
(internalAll.newResolveElement):
(internalAll):
* builtins/Operations.Promise.js:
(newPromiseDeferred): Deleted.
* builtins/PromiseConstructor.js:
(privateAll.newResolveElement): Deleted.
(privateAll): Deleted.
* runtime/CommonIdentifiers.h:
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::visitChildren):
* runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::promiseConstructor):
(JSC::JSGlobalObject::internalPromiseConstructor):
(JSC::JSGlobalObject::newPromiseCapabilityFunction):
(JSC::JSGlobalObject::newPromiseDeferredFunction): Deleted.
* runtime/JSInternalPromise.cpp: Copied from Source/JavaScriptCore/runtime/JSPromisePrototype.h.
(JSC::JSInternalPromise::create):
(JSC::JSInternalPromise::createStructure):
(JSC::JSInternalPromise::JSInternalPromise):
* runtime/JSInternalPromise.h: Copied from Source/JavaScriptCore/runtime/JSPromise.h.
* runtime/JSInternalPromiseConstructor.cpp: Added.
(JSC::JSInternalPromiseConstructor::create):
(JSC::JSInternalPromiseConstructor::createStructure):
(JSC::JSInternalPromiseConstructor::JSInternalPromiseConstructor):
(JSC::constructPromise):
(JSC::JSInternalPromiseConstructor::getConstructData):
(JSC::JSInternalPromiseConstructor::getCallData):
(JSC::JSInternalPromiseConstructor::getOwnPropertySlot):
* runtime/JSInternalPromiseConstructor.h: Copied from Source/JavaScriptCore/runtime/JSPromiseConstructor.h.
* runtime/JSInternalPromiseDeferred.cpp: Added.
(JSC::JSInternalPromiseDeferred::create):
(JSC::JSInternalPromiseDeferred::JSInternalPromiseDeferred):
(JSC::JSInternalPromiseDeferred::promise):
* runtime/JSInternalPromiseDeferred.h: Copied from Source/JavaScriptCore/runtime/JSPromisePrototype.h.
* runtime/JSInternalPromisePrototype.cpp: Copied from Source/JavaScriptCore/runtime/JSPromisePrototype.cpp.
(JSC::JSInternalPromisePrototype::create):
(JSC::JSInternalPromisePrototype::createStructure):
(JSC::JSInternalPromisePrototype::JSInternalPromisePrototype):
* runtime/JSInternalPromisePrototype.h: Copied from Source/JavaScriptCore/runtime/JSPromise.h.
* runtime/JSPromise.cpp:
(JSC::JSPromise::create):
(JSC::JSPromise::JSPromise):
(JSC::JSPromise::initialize):
* runtime/JSPromise.h:
* runtime/JSPromiseConstructor.cpp:
(JSC::JSPromiseConstructor::JSPromiseConstructor):
(JSC::constructPromise):
(JSC::JSPromiseConstructor::getOwnPropertySlot):
(JSC::JSPromiseConstructor::finishCreation): Deleted.
* runtime/JSPromiseConstructor.h:
* runtime/JSPromiseDeferred.cpp:
(JSC::newPromiseCapability):
(JSC::JSPromiseDeferred::create):
(JSC::JSPromiseDeferred::JSPromiseDeferred):
* runtime/JSPromiseDeferred.h:
* runtime/JSPromisePrototype.cpp:
(JSC::JSPromisePrototype::getOwnPropertySlot):
* runtime/JSPromisePrototype.h:
* runtime/VM.cpp:
(JSC::VM::VM):
* runtime/VM.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188681 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Win] Build fix after r188662.
achristensen@apple.com [Thu, 20 Aug 2015 04:38:53 +0000 (04:38 +0000)]
[Win] Build fix after r188662.

* Interfaces/IWebViewPrivate.idl:
* WebView.cpp:
(WebView::removeAllUserContentFromGroup):
(WebView::invalidateBackingStore):
Making the RECT* optional was a change that caused a compiler error or warning.
It looks like it was a mistake in r188662.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188680 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: DOMTree leaks on main resource changes
commit-queue@webkit.org [Thu, 20 Aug 2015 04:09:14 +0000 (04:09 +0000)]
Web Inspector: DOMTree leaks on main resource changes
https://bugs.webkit.org/show_bug.cgi?id=148158

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-08-19
Reviewed by Timothy Hatcher.

* UserInterface/Models/DOMTree.js:
(WebInspector.DOMTree.prototype.disconnect):
Add a way to disconnect the DOMTree and allow it to get garbage collected.

(WebInspector.DOMTree.prototype.invalidate.performInvalidate):
(WebInspector.DOMTree.prototype.invalidate):
(WebInspector.DOMTree.prototype._requestRootDOMNode):
(WebInspector.DOMTree.prototype._framePageExecutionContextChanged):
Remove some uses of the delete operator.

* UserInterface/Models/Frame.js:
(WebInspector.Frame.prototype.removeChildFrame):
(WebInspector.Frame.prototype.removeAllChildFrames):
(WebInspector.Frame.prototype._detachFromParentFrame):
When a frame gets removed from its parent, disconnect its DOMTree.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188679 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: The first style in the Rules panel for pseudo-elements needs padding
drousso@apple.com [Thu, 20 Aug 2015 02:38:20 +0000 (02:38 +0000)]
Web Inspector: The first style in the Rules panel for pseudo-elements needs padding
https://bugs.webkit.org/show_bug.cgi?id=148207

Reviewed by Timothy Hatcher.

* UserInterface/Views/RulesStyleDetailsPanel.css:
(.sidebar > .panel.details.css-style .rules .label:first-child):
If the first element in the Rules panel is a label, add some top padding.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188678 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemove WTF::SpinLock
fpizlo@apple.com [Thu, 20 Aug 2015 02:34:02 +0000 (02:34 +0000)]
Remove WTF::SpinLock
https://bugs.webkit.org/show_bug.cgi?id=148208

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Remove the one remaining use of SpinLock.

* API/JSValue.mm:
(handerForStructTag):

Source/WTF:

Remove the SpinLock.h file and remove references to the SpinLock class. Put the old SpinLock
algorithm in LockSpeedTest.cpp - which isn't compiled as part of a WTF or WebKit build - just
so we can still benchmark our locking algorithms against a spinlock baseline.

* WTF.vcxproj/WTF.vcxproj:
* WTF.xcodeproj/project.pbxproj:
* benchmarks/LockSpeedTest.cpp:
* wtf/CMakeLists.txt:
* wtf/Lock.h:
* wtf/SpinLock.h: Removed.
* wtf/WordLock.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188677 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Committing a valid selector in the styles sidebar replaces the new...
drousso@apple.com [Thu, 20 Aug 2015 02:15:39 +0000 (02:15 +0000)]
Web Inspector: Committing a valid selector in the styles sidebar replaces the new selector with the old one
https://bugs.webkit.org/show_bug.cgi?id=148206

Reviewed by Timothy Hatcher.

* UserInterface/Views/CSSStyleDeclarationSection.js:
(WebInspector.CSSStyleDeclarationSection.prototype._markSelector):
No longer unnecessarily refreshes the section if the selector is valid.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188676 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoclearCode() should clear code
ggaren@apple.com [Thu, 20 Aug 2015 01:18:45 +0000 (01:18 +0000)]
clearCode() should clear code
https://bugs.webkit.org/show_bug.cgi?id=148203

Reviewed by Saam Barati.

Clearing code used to require two steps: clearCode() and
clearUnlinkedCodeForRecompilation(). Unsurprisingly, clients sometimes
did one or the other or both without much rhyme or reason.

This patch simplifies things by merging both functions into clearCode().

* bytecode/UnlinkedFunctionExecutable.h:
* debugger/Debugger.cpp:
* heap/Heap.cpp:
(JSC::Heap::deleteAllCompiledCode):
(JSC::Heap::clearUnmarkedExecutables):
(JSC::Heap::deleteAllUnlinkedFunctionCode): Deleted. No need for this
function anymore since it was only used by clients who already called
clearCode() (and it would be terribly wrong to use without doing both.)

* heap/Heap.h:
(JSC::Heap::sizeAfterLastFullCollection):
* inspector/agents/InspectorRuntimeAgent.cpp:
(Inspector::TypeRecompiler::visit):
(Inspector::TypeRecompiler::operator()):
* runtime/Executable.cpp:
(JSC::FunctionExecutable::visitChildren):
(JSC::FunctionExecutable::clearCode):
(JSC::FunctionExecutable::clearUnlinkedCodeForRecompilation): Deleted.
* runtime/Executable.h:
* runtime/VM.cpp:
(JSC::VM::deleteAllCode):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188675 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Win] Unreviewed build fix after r188663.
bfulgham@apple.com [Thu, 20 Aug 2015 00:59:22 +0000 (00:59 +0000)]
[Win] Unreviewed build fix after r188663.

The new bindings file was added to the Visual Studio project, but was marked to not
be built. It should have also been added to the "JSBindingsAllInOne.cpp" file so
that the new code gets compiled.

* bindings/js/JSBindingsAllInOne.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188674 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoCMake Windows build should not include files directly from other Source directories
achristensen@apple.com [Thu, 20 Aug 2015 00:56:23 +0000 (00:56 +0000)]
CMake Windows build should not include files directly from other Source directories
https://bugs.webkit.org/show_bug.cgi?id=148198

Reviewed by Brent Fulgham.

.:

* Source/cmake/WebKitMacros.cmake:

Source/JavaScriptCore:

* CMakeLists.txt:
JavaScriptCore_FORWARDING_HEADERS_FILES is no longer necessary because all the headers
that used to be in it are now in JavaScriptCore_FORWARDING_HEADERS_DIRECTORIES
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* PlatformMac.cmake:
* PlatformWin.cmake:

Source/WebCore:

* CMakeLists.txt:
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* PlatformWin.cmake:

Source/WebKit:

* CMakeLists.txt:
* PlatformWin.cmake:

Source/WebKit/win:

* WebKitPrefix.h:
Include cmakeconfig.h to properly define all enabled features.

Source/WTF:

* wtf/CMakeLists.txt:
* wtf/PlatformWin.cmake:

Tools:

* DumpRenderTree/DumpRenderTreePrefix.h:
Include cmakeconfig.h to properly define all enabled features.
* DumpRenderTree/PlatformWin.cmake:
* TestWebKitAPI/PlatformWin.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188673 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoSelect validation does not correctly work when handling change event
wenson_hsieh@apple.com [Thu, 20 Aug 2015 00:55:10 +0000 (00:55 +0000)]
Select validation does not correctly work when handling change event
https://bugs.webkit.org/show_bug.cgi?id=145869

Reviewed by Dean Jackson.

Source/WebCore:

When selecting an option in a <select> with validation that also has an onchange listener, calling
checkValidity() for the select within the onchange handler would produce incorrect results and (on
a debug build) crash at an assertion. This is because the change events were being dispatched before
form validity was updated. Making the validation step come before the change event dispatch fixes
this issue.

Test: fast/forms/onchange-select-check-validity.html

* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::selectOption): Update validity before dispatching change events.

LayoutTests:

Tests that checkValidity() returns correct results from within the onchange handler of a
<select> when the validity of the selected option changes.

* fast/forms/onchange-select-check-validity-expected.txt: Added.
* fast/forms/onchange-select-check-validity.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188672 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Uncaught Exceptions regarding PseudoElements / TemplateContent
commit-queue@webkit.org [Thu, 20 Aug 2015 00:37:21 +0000 (00:37 +0000)]
Web Inspector: Uncaught Exceptions regarding PseudoElements / TemplateContent
https://bugs.webkit.org/show_bug.cgi?id=148190

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-08-19
Reviewed by Brian Burg.

* UserInterface/Controllers/DOMTreeManager.js:
(WebInspector.DOMTreeManager.prototype._unbind):
Iterate over the values in the map, not the iterator pairs.

* UserInterface/Models/DOMNode.js:
When removing a pseudo element, don't assume this._children
exists, it may be null. So separate the two paths.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188670 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: long selectors in the visual editor sidebar can overflow
drousso@apple.com [Thu, 20 Aug 2015 00:27:15 +0000 (00:27 +0000)]
Web Inspector: long selectors in the visual editor sidebar can overflow
https://bugs.webkit.org/show_bug.cgi?id=148185

Reviewed by Timothy Hatcher.

Selectors in the Visual editor sidebar are now clipped and use ellipses.

* UserInterface/Views/VisualStyleSelectorSection.css:
(.details-section.visual-style-selector-section > .header > .current-selector):
(.details-section.visual-style-selector-section:not(.collapsed) > .content):
(.details-section.visual-style-selector-section > .content > .selectors > .selector-list > .section-divider > .titles):
(.details-section.visual-style-selector-section > .content > .selectors > .selector-list > .section-divider > .titles > .title): Deleted.

* UserInterface/Views/VisualStyleSelectorTreeItem.css:
(.item.visual-style-selector-item):
(.item.visual-style-selector-item > .titles):
(.item.visual-style-selector-item > input[type="checkbox"]):
(.item.visual-style-selector-item > .icon):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188667 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoGraphicsContext3D::activeTexture should not be called with zero-based index
commit-queue@webkit.org [Thu, 20 Aug 2015 00:27:00 +0000 (00:27 +0000)]
GraphicsContext3D::activeTexture should not be called with zero-based index
https://bugs.webkit.org/show_bug.cgi?id=148020

Patch by Jinyoung Hur <hur.ims@navercorp.com> on 2015-08-19
Reviewed by Alex Christensen.

Source/WebCore:

GraphicsContext3D::activeTexture should be called with an argument that is greater than or equal to
GraphicsContext3D::TEXTURE0.

Test: fast/canvas/webgl/texture-complete.html

* html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::checkTextureCompleteness):

LayoutTests:

Insert WebGLRenderingContext.activeTexture call during the texture complete test to verify
a meaningless change of the active texture doesn't make any gl errors.

* fast/canvas/webgl/texture-complete.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188666 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Include Legacy Inspector JSON for iOS 9
commit-queue@webkit.org [Thu, 20 Aug 2015 00:23:26 +0000 (00:23 +0000)]
Web Inspector: Include Legacy Inspector JSON for iOS 9
https://bugs.webkit.org/show_bug.cgi?id=148200

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-08-19
Reviewed by Timothy Hatcher.

* UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js: Added.
* Versions/Inspector-iOS-9.0.json: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188665 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Update Copyright in minified / combined output
commit-queue@webkit.org [Thu, 20 Aug 2015 00:14:05 +0000 (00:14 +0000)]
Web Inspector: Update Copyright in minified / combined output
https://bugs.webkit.org/show_bug.cgi?id=148201

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-08-19
Reviewed by Timothy Hatcher.

* Scripts/copy-user-interface-resources.pl:
Include copyright comments from missing 2014 and 2015 contributors
in the comment in the minified / combined Main.js.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188664 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAvoid double hash lookup in our JS bindings named property getter code
cdumez@apple.com [Thu, 20 Aug 2015 00:06:30 +0000 (00:06 +0000)]
Avoid double hash lookup in our JS bindings named property getter code
https://bugs.webkit.org/show_bug.cgi?id=148193

Reviewed by Geoffrey Garen.

Avoid double hash lookup in our JS bindings named property getter code
for performance reasons.

* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:
Add new file.

* bindings/js/JSDOMNamedFlowCollectionCustom.cpp: Added.
(WebCore::JSDOMNamedFlowCollection::nameGetter):
Moved custom named getter code for DOMNamedFlowCollection from the
bindings generator to an actual custom bindings file.

* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
* bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
* bindings/scripts/test/JS/JSTestEventTarget.h:
* bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
* bindings/scripts/test/JS/JSTestOverrideBuiltins.h:
Rebaseline bindings tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188663 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Win] Replace MIDL [in/out] comments with equivalent SAL
bfulgham@apple.com [Thu, 20 Aug 2015 00:00:38 +0000 (00:00 +0000)]
[Win] Replace MIDL [in/out] comments with equivalent SAL
https://bugs.webkit.org/show_bug.cgi?id=148001

Reviewed by Tim Horton.

../..:

* WebKit.vcxproj/Interfaces/InterfacesCommon.props: Turn
on SAL declarations in MIDL output.

../../win:

Change the many "/*[in]*/" and "/*[out]*/" comments in the
Windows interface code to use the equivalent SAL macros. This
will allow MSVC static analysis to actually enforce that these
semantics are being honored, and provide better compile-time
support for avoiding API misuse.

While making these changes, I also corrected a number of bad
style issues in the Windows code:
- Use 'nullptr' instead of 0
- Check for null input pointers instead of blindly dereferencing
them.
- Enforce the null-on-error behavior expected on COM interfaces.

* AccessibleBase.cpp:
(AccessibleBase::AccessibleBase):
(AccessibleBase::createInstance):
(AccessibleBase::QueryService):
(AccessibleBase::QueryInterface):
(AccessibleBase::Release):
(AccessibleBase::get_attribute):
(AccessibleBase::get_accessibleWithCaret):
(AccessibleBase::get_relationTargetsOfType):
(AccessibleBase::get_nRelations):
(AccessibleBase::get_relation):
(AccessibleBase::get_relations):
(AccessibleBase::role):
(AccessibleBase::scrollToPoint):
(AccessibleBase::get_groupPosition):
(AccessibleBase::get_states):
(AccessibleBase::get_extendedRole):
(AccessibleBase::get_localizedExtendedRole):
(AccessibleBase::get_nExtendedStates):
(AccessibleBase::get_extendedStates):
(AccessibleBase::get_localizedExtendedStates):
(AccessibleBase::get_uniqueID):
(AccessibleBase::get_windowHandle):
(AccessibleBase::get_indexInParent):
(AccessibleBase::get_locale):
(AccessibleBase::get_attributes):
(AccessibleBase::get_accParent):
(AccessibleBase::get_accChildCount):
(AccessibleBase::get_accChild):
(AccessibleBase::get_accName):
(AccessibleBase::get_accValue):
(AccessibleBase::get_accDescription):
(AccessibleBase::get_accRole):
(AccessibleBase::state):
(AccessibleBase::get_accState):
(AccessibleBase::get_accHelp):
(AccessibleBase::get_accKeyboardShortcut):
(AccessibleBase::accSelect):
(AccessibleBase::get_accSelection):
(AccessibleBase::get_accFocus):
(AccessibleBase::get_accDefaultAction):
(AccessibleBase::accLocation):
(AccessibleBase::accNavigate):
(AccessibleBase::accHitTest):
(AccessibleBase::accDoDefaultAction):
(AccessibleBase::wrapper):
(AccessibleBase::isSameObject):
* AccessibleBase.h:
* AccessibleTextImpl.cpp:
(AccessibleText::get_attributes):
(AccessibleText::QueryInterface):
* AccessibleTextImpl.h:
(AccessibleText::AddRef):
* CFDictionaryPropertyBag.cpp:
(CFDictionaryPropertyBag::CFDictionaryPropertyBag):
(CFDictionaryPropertyBag::QueryInterface):
(CFDictionaryPropertyBag::AddRef):
(CFDictionaryPropertyBag::Read):
(CFDictionaryPropertyBag::Write):
* CFDictionaryPropertyBag.h:
* COMEnumVariant.h:
(COMEnumVariant::COMEnumVariant):
(COMEnumVariant::~COMEnumVariant):
(COMEnumVariant<ContainerType>::QueryInterface):
(COMEnumVariant<ContainerType>::Reset):
(COMEnumVariant<ContainerType>::Clone):
* COMPropertyBag.h:
(COMPropertyBag::COMPropertyBag):
(COMPropertyBag::~COMPropertyBag):
(HashType>::QueryInterface):
(HashType>::Read):
(HashType>::Write):
(HashType>::CountProperties):
(HashType>::GetPropertyInfo):
(HashType>::LoadObject):
* DOMCSSClasses.cpp:
(DOMCSSStyleDeclaration::DOMCSSStyleDeclaration):
(DOMCSSStyleDeclaration::createInstance):
(DOMCSSStyleDeclaration::QueryInterface):
(DOMCSSStyleDeclaration::cssText):
(DOMCSSStyleDeclaration::setCssText):
(DOMCSSStyleDeclaration::getPropertyValue):
(DOMCSSStyleDeclaration::getPropertyCSSValue):
(DOMCSSStyleDeclaration::removeProperty):
(DOMCSSStyleDeclaration::getPropertyPriority):
(DOMCSSStyleDeclaration::setProperty):
(DOMCSSStyleDeclaration::length):
(DOMCSSStyleDeclaration::item):
(DOMCSSStyleDeclaration::parentRule):
* DOMCSSClasses.h:
(DOMCSSStyleDeclaration::AddRef):
(DOMCSSStyleDeclaration::Release):
(DOMCSSStyleDeclaration::throwException):
(DOMCSSStyleDeclaration::callWebScriptMethod):
(DOMCSSStyleDeclaration::evaluateWebScript):
(DOMCSSStyleDeclaration::removeWebScriptKey):
(DOMCSSStyleDeclaration::stringRepresentation):
(DOMCSSStyleDeclaration::webScriptValueAtIndex):
(DOMCSSStyleDeclaration::setWebScriptValueAtIndex):
(DOMCSSStyleDeclaration::setException):
* DOMCoreClasses.cpp:
(DOMObject::QueryInterface):
(DOMNode::QueryInterface):
(DOMNode::nodeName):
(DOMNode::nodeValue):
(DOMNode::setNodeValue):
(DOMNode::nodeType):
(DOMNode::parentNode):
(DOMNode::childNodes):
(DOMNode::firstChild):
(DOMNode::lastChild):
(DOMNode::previousSibling):
(DOMNode::nextSibling):
(DOMNode::attributes):
(DOMNode::ownerDocument):
(DOMNode::insertBefore):
(DOMNode::replaceChild):
(DOMNode::removeChild):
(DOMNode::appendChild):
(DOMNode::hasChildNodes):
(DOMNode::cloneNode):
(DOMNode::normalize):
(DOMNode::isSupported):
(DOMNode::namespaceURI):
(DOMNode::prefix):
(DOMNode::setPrefix):
(DOMNode::localName):
(DOMNode::hasAttributes):
(DOMNode::isSameNode):
(DOMNode::isEqualNode):
(DOMNode::textContent):
(DOMNode::setTextContent):
(DOMNode::addEventListener):
(DOMNode::removeEventListener):
(DOMNode::dispatchEvent):
(DOMNode::DOMNode):
(DOMNode::createInstance):
(DOMNodeList::QueryInterface):
(DOMNodeList::item):
(DOMNodeList::length):
(DOMNodeList::DOMNodeList):
(DOMNodeList::createInstance):
(DOMDocument::QueryInterface):
(DOMDocument::doctype):
(DOMDocument::implementation):
(DOMDocument::documentElement):
(DOMDocument::createElement):
(DOMDocument::createDocumentFragment):
(DOMDocument::createTextNode):
(DOMDocument::createComment):
(DOMDocument::createCDATASection):
(DOMDocument::createProcessingInstruction):
(DOMDocument::createAttribute):
(DOMDocument::createEntityReference):
(DOMDocument::getElementsByTagName):
(DOMDocument::importNode):
(DOMDocument::createElementNS):
(DOMDocument::createAttributeNS):
(DOMDocument::getElementsByTagNameNS):
(DOMDocument::getElementById):
(DOMDocument::getComputedStyle):
(DOMDocument::createEvent):
(DOMDocument::DOMDocument):
(DOMDocument::createInstance):
(DOMWindow::QueryInterface):
(DOMWindow::document):
(DOMWindow::getComputedStyle):
(DOMWindow::getMatchedCSSRules):
(DOMWindow::devicePixelRatio):
(DOMWindow::addEventListener):
(DOMWindow::removeEventListener):
(DOMWindow::dispatchEvent):
(DOMWindow::DOMWindow):
(DOMWindow::createInstance):
(DOMElement::QueryInterface):
(DOMElement::boundingBox):
(DOMElement::lineBoxRects):
(DOMElement::tagName):
(DOMElement::getAttribute):
(DOMElement::setAttribute):
(DOMElement::removeAttribute):
(DOMElement::getAttributeNode):
(DOMElement::setAttributeNode):
(DOMElement::removeAttributeNode):
(DOMElement::getElementsByTagName):
(DOMElement::getAttributeNS):
(DOMElement::setAttributeNS):
(DOMElement::removeAttributeNS):
(DOMElement::getAttributeNodeNS):
(DOMElement::setAttributeNodeNS):
(DOMElement::getElementsByTagNameNS):
(DOMElement::hasAttribute):
(DOMElement::hasAttributeNS):
(DOMElement::focus):
(DOMElement::blur):
(DOMElement::coreElement):
(DOMElement::isEqual):
(DOMElement::isFocused):
(DOMElement::innerText):
(DOMElement::font):
(DOMElement::renderedImage):
(DOMElement::markerTextForListItem):
(DOMElement::shadowPseudoId):
(DOMElement::style):
(DOMElement::offsetLeft):
(DOMElement::offsetTop):
(DOMElement::offsetWidth):
(DOMElement::offsetHeight):
(DOMElement::offsetParent):
(DOMElement::clientWidth):
(DOMElement::clientHeight):
(DOMElement::scrollLeft):
(DOMElement::setScrollLeft):
(DOMElement::scrollTop):
(DOMElement::setScrollTop):
(DOMElement::scrollWidth):
(DOMElement::scrollHeight):
(DOMElement::scrollIntoView):
(DOMElement::scrollIntoViewIfNeeded):
(DOMElement::DOMElement):
(DOMElement::createInstance):
(DOMRange::QueryInterface):
(DOMRange::createInstance):
(DOMRange::startContainer):
(DOMRange::startOffset):
(DOMRange::endContainer):
(DOMRange::endOffset):
(DOMRange::collapsed):
(DOMRange::commonAncestorContainer):
(DOMRange::setStart):
(DOMRange::setEnd):
(DOMRange::setStartBefore):
(DOMRange::setStartAfter):
(DOMRange::setEndBefore):
(DOMRange::setEndAfter):
(DOMRange::collapse):
(DOMRange::selectNode):
(DOMRange::selectNodeContents):
(DOMRange::compareBoundaryPoints):
(DOMRange::deleteContents):
(DOMRange::extractContents):
(DOMRange::cloneContents):
(DOMRange::insertNode):
(DOMRange::surroundContents):
(DOMRange::cloneRange):
(DOMRange::toString):
(DOMRange::detach):
* DOMCoreClasses.h:
(DOMObject::AddRef):
(DOMObject::Release):
(DOMObject::throwException):
(DOMObject::callWebScriptMethod):
(DOMObject::evaluateWebScript):
(DOMObject::removeWebScriptKey):
(DOMObject::stringRepresentation):
(DOMObject::webScriptValueAtIndex):
(DOMObject::setWebScriptValueAtIndex):
(DOMObject::setException):
(DOMNodeList::AddRef):
(DOMNodeList::Release):
(DOMNodeList::throwException):
(DOMNodeList::callWebScriptMethod):
(DOMNodeList::evaluateWebScript):
(DOMNodeList::removeWebScriptKey):
(DOMNodeList::stringRepresentation):
(DOMNodeList::webScriptValueAtIndex):
(DOMNodeList::setWebScriptValueAtIndex):
(DOMNodeList::setException):
(DOMDocument::AddRef):
(DOMDocument::Release):
(DOMDocument::throwException):
(DOMDocument::callWebScriptMethod):
(DOMDocument::evaluateWebScript):
(DOMDocument::removeWebScriptKey):
(DOMDocument::stringRepresentation):
(DOMDocument::webScriptValueAtIndex):
(DOMDocument::setWebScriptValueAtIndex):
(DOMDocument::setException):
(DOMDocument::nodeName):
(DOMDocument::nodeValue):
(DOMDocument::setNodeValue):
(DOMDocument::nodeType):
(DOMDocument::parentNode):
(DOMDocument::childNodes):
(DOMDocument::firstChild):
(DOMDocument::lastChild):
(DOMDocument::previousSibling):
(DOMDocument::nextSibling):
(DOMDocument::attributes):
(DOMDocument::ownerDocument):
(DOMDocument::insertBefore):
(DOMDocument::replaceChild):
(DOMDocument::removeChild):
(DOMDocument::appendChild):
(DOMDocument::hasChildNodes):
(DOMDocument::cloneNode):
(DOMDocument::normalize):
(DOMDocument::isSupported):
(DOMDocument::namespaceURI):
(DOMDocument::prefix):
(DOMDocument::setPrefix):
(DOMDocument::localName):
(DOMDocument::hasAttributes):
(DOMDocument::isSameNode):
(DOMDocument::isEqualNode):
(DOMDocument::textContent):
(DOMDocument::setTextContent):
(DOMDocument::document):
(DOMWindow::AddRef):
(DOMWindow::Release):
(DOMWindow::throwException):
(DOMWindow::callWebScriptMethod):
(DOMWindow::evaluateWebScript):
(DOMWindow::removeWebScriptKey):
(DOMWindow::stringRepresentation):
(DOMWindow::webScriptValueAtIndex):
(DOMWindow::setWebScriptValueAtIndex):
(DOMWindow::setException):
(DOMWindow::window):
(DOMElement::AddRef):
(DOMElement::Release):
(DOMElement::throwException):
(DOMElement::callWebScriptMethod):
(DOMElement::evaluateWebScript):
(DOMElement::removeWebScriptKey):
(DOMElement::stringRepresentation):
(DOMElement::webScriptValueAtIndex):
(DOMElement::setWebScriptValueAtIndex):
(DOMElement::setException):
(DOMElement::nodeName):
(DOMElement::nodeValue):
(DOMElement::setNodeValue):
(DOMElement::nodeType):
(DOMElement::parentNode):
(DOMElement::childNodes):
(DOMElement::firstChild):
(DOMElement::lastChild):
(DOMElement::previousSibling):
(DOMElement::nextSibling):
(DOMElement::attributes):
(DOMElement::ownerDocument):
(DOMElement::insertBefore):
(DOMElement::replaceChild):
(DOMElement::removeChild):
(DOMElement::appendChild):
(DOMElement::hasChildNodes):
(DOMElement::cloneNode):
(DOMElement::normalize):
(DOMElement::isSupported):
(DOMElement::namespaceURI):
(DOMElement::prefix):
(DOMElement::setPrefix):
(DOMElement::localName):
(DOMElement::hasAttributes):
(DOMElement::isSameNode):
(DOMElement::isEqualNode):
(DOMElement::textContent):
(DOMElement::setTextContent):
(DOMElement::element):
(DOMRange::AddRef):
(DOMRange::Release):
(DOMRange::throwException):
(DOMRange::callWebScriptMethod):
(DOMRange::evaluateWebScript):
(DOMRange::removeWebScriptKey):
(DOMRange::stringRepresentation):
(DOMRange::webScriptValueAtIndex):
(DOMRange::setWebScriptValueAtIndex):
(DOMRange::setException):
* DOMEventsClasses.cpp:
(DOMEventListener::QueryInterface):
(DOMEventListener::handleEvent):
(DOMEvent::DOMEvent):
(DOMEvent::createInstance):
(DOMEvent::QueryInterface):
(DOMEvent::type):
(DOMEvent::target):
(DOMEvent::currentTarget):
(DOMEvent::eventPhase):
(DOMEvent::bubbles):
(DOMEvent::cancelable):
(DOMEvent::timeStamp):
(DOMEvent::stopPropagation):
(DOMEvent::preventDefault):
(DOMEvent::initEvent):
(DOMUIEvent::QueryInterface):
(DOMUIEvent::view):
(DOMUIEvent::detail):
(DOMUIEvent::initUIEvent):
(DOMUIEvent::keyCode):
(DOMUIEvent::charCode):
(DOMUIEvent::unused1):
(DOMUIEvent::unused2):
(DOMUIEvent::pageX):
(DOMUIEvent::pageY):
(DOMUIEvent::which):
(DOMKeyboardEvent::QueryInterface):
(DOMKeyboardEvent::keyIdentifier):
(DOMKeyboardEvent::location):
(DOMKeyboardEvent::keyLocation):
(DOMKeyboardEvent::ctrlKey):
(DOMKeyboardEvent::shiftKey):
(DOMKeyboardEvent::altKey):
(DOMKeyboardEvent::metaKey):
(DOMKeyboardEvent::altGraphKey):
(DOMKeyboardEvent::getModifierState):
(DOMKeyboardEvent::initKeyboardEvent):
(DOMMouseEvent::QueryInterface):
(DOMMouseEvent::screenX):
(DOMMouseEvent::screenY):
(DOMMouseEvent::clientX):
(DOMMouseEvent::clientY):
(DOMMouseEvent::ctrlKey):
(DOMMouseEvent::shiftKey):
(DOMMouseEvent::altKey):
(DOMMouseEvent::metaKey):
(DOMMouseEvent::button):
(DOMMouseEvent::relatedTarget):
(DOMMouseEvent::initMouseEvent):
(DOMMouseEvent::offsetX):
(DOMMouseEvent::offsetY):
(DOMMouseEvent::x):
(DOMMouseEvent::y):
(DOMMouseEvent::fromElement):
(DOMMouseEvent::toElement):
(DOMMutationEvent::QueryInterface):
(DOMMutationEvent::relatedNode):
(DOMMutationEvent::prevValue):
(DOMMutationEvent::newValue):
(DOMMutationEvent::attrName):
(DOMMutationEvent::attrChange):
(DOMMutationEvent::initMutationEvent):
(DOMOverflowEvent::QueryInterface):
(DOMOverflowEvent::orient):
(DOMOverflowEvent::horizontalOverflow):
(DOMOverflowEvent::verticalOverflow):
(DOMWheelEvent::QueryInterface):
(DOMWheelEvent::screenX):
(DOMWheelEvent::screenY):
(DOMWheelEvent::clientX):
(DOMWheelEvent::clientY):
(DOMWheelEvent::ctrlKey):
(DOMWheelEvent::shiftKey):
(DOMWheelEvent::altKey):
(DOMWheelEvent::metaKey):
(DOMWheelEvent::wheelDelta):
(DOMWheelEvent::wheelDeltaX):
(DOMWheelEvent::wheelDeltaY):
(DOMWheelEvent::offsetX):
(DOMWheelEvent::offsetY):
(DOMWheelEvent::x):
(DOMWheelEvent::y):
(DOMWheelEvent::isHorizontal):
(DOMWheelEvent::initWheelEvent):
* DOMEventsClasses.h:
(DOMEventListener::AddRef):
(DOMEventListener::Release):
(DOMEventListener::throwException):
(DOMEventListener::callWebScriptMethod):
(DOMEventListener::evaluateWebScript):
(DOMEventListener::removeWebScriptKey):
(DOMEventListener::stringRepresentation):
(DOMEventListener::webScriptValueAtIndex):
(DOMEventListener::setWebScriptValueAtIndex):
(DOMEventListener::setException):
(DOMEvent::AddRef):
(DOMEvent::Release):
(DOMEvent::throwException):
(DOMEvent::callWebScriptMethod):
(DOMEvent::evaluateWebScript):
(DOMEvent::removeWebScriptKey):
(DOMEvent::stringRepresentation):
(DOMEvent::webScriptValueAtIndex):
(DOMEvent::setWebScriptValueAtIndex):
(DOMEvent::setException):
(DOMEvent::coreEvent):
(DOMUIEvent::DOMUIEvent):
(DOMUIEvent::AddRef):
(DOMUIEvent::Release):
(DOMUIEvent::throwException):
(DOMUIEvent::callWebScriptMethod):
(DOMUIEvent::evaluateWebScript):
(DOMUIEvent::removeWebScriptKey):
(DOMUIEvent::stringRepresentation):
(DOMUIEvent::webScriptValueAtIndex):
(DOMUIEvent::setWebScriptValueAtIndex):
(DOMUIEvent::setException):
(DOMUIEvent::type):
(DOMUIEvent::target):
(DOMUIEvent::currentTarget):
(DOMUIEvent::eventPhase):
(DOMUIEvent::bubbles):
(DOMUIEvent::cancelable):
(DOMUIEvent::timeStamp):
(DOMUIEvent::stopPropagation):
(DOMUIEvent::preventDefault):
(DOMUIEvent::initEvent):
(DOMKeyboardEvent::DOMKeyboardEvent):
(DOMKeyboardEvent::AddRef):
(DOMKeyboardEvent::Release):
(DOMKeyboardEvent::throwException):
(DOMKeyboardEvent::callWebScriptMethod):
(DOMKeyboardEvent::evaluateWebScript):
(DOMKeyboardEvent::removeWebScriptKey):
(DOMKeyboardEvent::stringRepresentation):
(DOMKeyboardEvent::webScriptValueAtIndex):
(DOMKeyboardEvent::setWebScriptValueAtIndex):
(DOMKeyboardEvent::setException):
(DOMKeyboardEvent::type):
(DOMKeyboardEvent::target):
(DOMKeyboardEvent::currentTarget):
(DOMKeyboardEvent::eventPhase):
(DOMKeyboardEvent::bubbles):
(DOMKeyboardEvent::cancelable):
(DOMKeyboardEvent::timeStamp):
(DOMKeyboardEvent::stopPropagation):
(DOMKeyboardEvent::preventDefault):
(DOMKeyboardEvent::initEvent):
(DOMKeyboardEvent::view):
(DOMKeyboardEvent::detail):
(DOMKeyboardEvent::initUIEvent):
(DOMKeyboardEvent::keyCode):
(DOMKeyboardEvent::charCode):
(DOMKeyboardEvent::unused1):
(DOMKeyboardEvent::unused2):
(DOMKeyboardEvent::pageX):
(DOMKeyboardEvent::pageY):
(DOMKeyboardEvent::which):
(DOMMouseEvent::DOMMouseEvent):
(DOMMouseEvent::AddRef):
(DOMMouseEvent::Release):
(DOMMouseEvent::throwException):
(DOMMouseEvent::callWebScriptMethod):
(DOMMouseEvent::evaluateWebScript):
(DOMMouseEvent::removeWebScriptKey):
(DOMMouseEvent::stringRepresentation):
(DOMMouseEvent::webScriptValueAtIndex):
(DOMMouseEvent::setWebScriptValueAtIndex):
(DOMMouseEvent::setException):
(DOMMouseEvent::type):
(DOMMouseEvent::target):
(DOMMouseEvent::currentTarget):
(DOMMouseEvent::eventPhase):
(DOMMouseEvent::bubbles):
(DOMMouseEvent::cancelable):
(DOMMouseEvent::timeStamp):
(DOMMouseEvent::stopPropagation):
(DOMMouseEvent::preventDefault):
(DOMMouseEvent::initEvent):
(DOMMouseEvent::view):
(DOMMouseEvent::detail):
(DOMMouseEvent::initUIEvent):
(DOMMouseEvent::keyCode):
(DOMMouseEvent::charCode):
(DOMMouseEvent::unused1):
(DOMMouseEvent::unused2):
(DOMMouseEvent::pageX):
(DOMMouseEvent::pageY):
(DOMMouseEvent::which):
(DOMMutationEvent::DOMMutationEvent):
(DOMMutationEvent::AddRef):
(DOMMutationEvent::Release):
(DOMMutationEvent::throwException):
(DOMMutationEvent::callWebScriptMethod):
(DOMMutationEvent::evaluateWebScript):
(DOMMutationEvent::removeWebScriptKey):
(DOMMutationEvent::stringRepresentation):
(DOMMutationEvent::webScriptValueAtIndex):
(DOMMutationEvent::setWebScriptValueAtIndex):
(DOMMutationEvent::setException):
(DOMMutationEvent::type):
(DOMMutationEvent::target):
(DOMMutationEvent::currentTarget):
(DOMMutationEvent::eventPhase):
(DOMMutationEvent::bubbles):
(DOMMutationEvent::cancelable):
(DOMMutationEvent::timeStamp):
(DOMMutationEvent::stopPropagation):
(DOMMutationEvent::preventDefault):
(DOMMutationEvent::initEvent):
(DOMOverflowEvent::DOMOverflowEvent):
(DOMOverflowEvent::AddRef):
(DOMOverflowEvent::Release):
(DOMOverflowEvent::throwException):
(DOMOverflowEvent::callWebScriptMethod):
(DOMOverflowEvent::evaluateWebScript):
(DOMOverflowEvent::removeWebScriptKey):
(DOMOverflowEvent::stringRepresentation):
(DOMOverflowEvent::webScriptValueAtIndex):
(DOMOverflowEvent::setWebScriptValueAtIndex):
(DOMOverflowEvent::setException):
(DOMOverflowEvent::type):
(DOMOverflowEvent::target):
(DOMOverflowEvent::currentTarget):
(DOMOverflowEvent::eventPhase):
(DOMOverflowEvent::bubbles):
(DOMOverflowEvent::cancelable):
(DOMOverflowEvent::timeStamp):
(DOMOverflowEvent::stopPropagation):
(DOMOverflowEvent::preventDefault):
(DOMOverflowEvent::initEvent):
(DOMWheelEvent::DOMWheelEvent):
(DOMWheelEvent::AddRef):
(DOMWheelEvent::Release):
(DOMWheelEvent::throwException):
(DOMWheelEvent::callWebScriptMethod):
(DOMWheelEvent::evaluateWebScript):
(DOMWheelEvent::removeWebScriptKey):
(DOMWheelEvent::stringRepresentation):
(DOMWheelEvent::webScriptValueAtIndex):
(DOMWheelEvent::setWebScriptValueAtIndex):
(DOMWheelEvent::setException):
(DOMWheelEvent::type):
(DOMWheelEvent::target):
(DOMWheelEvent::currentTarget):
(DOMWheelEvent::eventPhase):
(DOMWheelEvent::bubbles):
(DOMWheelEvent::cancelable):
(DOMWheelEvent::timeStamp):
(DOMWheelEvent::stopPropagation):
(DOMWheelEvent::preventDefault):
(DOMWheelEvent::initEvent):
(DOMWheelEvent::view):
(DOMWheelEvent::detail):
(DOMWheelEvent::initUIEvent):
(DOMWheelEvent::keyCode):
(DOMWheelEvent::charCode):
(DOMWheelEvent::unused1):
(DOMWheelEvent::unused2):
(DOMWheelEvent::pageX):
(DOMWheelEvent::pageY):
(DOMWheelEvent::which):
* DOMHTMLClasses.cpp:
(DOMHTMLCollection::QueryInterface):
(DOMHTMLCollection::length):
(DOMHTMLCollection::item):
(DOMHTMLCollection::namedItem):
(DOMHTMLOptionsCollection::QueryInterface):
(DOMHTMLOptionsCollection::createInstance):
(DOMHTMLOptionsCollection::length):
(DOMHTMLOptionsCollection::setLength):
(DOMHTMLOptionsCollection::item):
(DOMHTMLOptionsCollection::namedItem):
(DOMHTMLDocument::QueryInterface):
(DOMHTMLDocument::title):
(DOMHTMLDocument::setTitle):
(DOMHTMLDocument::referrer):
(DOMHTMLDocument::domain):
(DOMHTMLDocument::URL):
(DOMHTMLDocument::body):
(DOMHTMLDocument::setBody):
(DOMHTMLDocument::images):
(DOMHTMLDocument::applets):
(DOMHTMLDocument::links):
(DOMHTMLDocument::forms):
(DOMHTMLDocument::anchors):
(DOMHTMLDocument::cookie):
(DOMHTMLDocument::setCookie):
(DOMHTMLDocument::open):
(DOMHTMLDocument::close):
(DOMHTMLDocument::write):
(DOMHTMLDocument::writeln):
(DOMHTMLDocument::getElementById_):
(DOMHTMLDocument::getElementsByName):
(DOMHTMLElement::QueryInterface):
(DOMHTMLElement::idName):
(DOMHTMLElement::setIdName):
(DOMHTMLElement::title):
(DOMHTMLElement::setTitle):
(DOMHTMLElement::lang):
(DOMHTMLElement::setLang):
(DOMHTMLElement::dir):
(DOMHTMLElement::setDir):
(DOMHTMLElement::className):
(DOMHTMLElement::setClassName):
(DOMHTMLElement::innerHTML):
(DOMHTMLElement::setInnerHTML):
(DOMHTMLElement::innerText):
(DOMHTMLElement::setInnerText):
(DOMHTMLFormElement::QueryInterface):
(DOMHTMLFormElement::elements):
(DOMHTMLFormElement::length):
(DOMHTMLFormElement::name):
(DOMHTMLFormElement::setName):
(DOMHTMLFormElement::acceptCharset):
(DOMHTMLFormElement::setAcceptCharset):
(DOMHTMLFormElement::action):
(DOMHTMLFormElement::setAction):
(DOMHTMLFormElement::encType):
(DOMHTMLFormElement::setEnctype):
(DOMHTMLFormElement::method):
(DOMHTMLFormElement::setMethod):
(DOMHTMLFormElement::target):
(DOMHTMLFormElement::setTarget):
(DOMHTMLFormElement::submit):
(DOMHTMLFormElement::reset):
(DOMHTMLSelectElement::QueryInterface):
(DOMHTMLSelectElement::type):
(DOMHTMLSelectElement::selectedIndex):
(DOMHTMLSelectElement::setSelectedIndx):
(DOMHTMLSelectElement::value):
(DOMHTMLSelectElement::setValue):
(DOMHTMLSelectElement::length):
(DOMHTMLSelectElement::form):
(DOMHTMLSelectElement::options):
(DOMHTMLSelectElement::disabled):
(DOMHTMLSelectElement::setDisabled):
(DOMHTMLSelectElement::multiple):
(DOMHTMLSelectElement::setMultiple):
(DOMHTMLSelectElement::name):
(DOMHTMLSelectElement::setName):
(DOMHTMLSelectElement::size):
(DOMHTMLSelectElement::setSize):
(DOMHTMLSelectElement::tabIndex):
(DOMHTMLSelectElement::setTabIndex):
(DOMHTMLSelectElement::add):
(DOMHTMLSelectElement::remove):
(DOMHTMLSelectElement::activateItemAtIndex):
(DOMHTMLOptionElement::QueryInterface):
(DOMHTMLOptionElement::form):
(DOMHTMLOptionElement::defaultSelected):
(DOMHTMLOptionElement::setDefaultSelected):
(DOMHTMLOptionElement::text):
(DOMHTMLOptionElement::index):
(DOMHTMLOptionElement::disabled):
(DOMHTMLOptionElement::setDisabled):
(DOMHTMLOptionElement::label):
(DOMHTMLOptionElement::setLabel):
(DOMHTMLOptionElement::selected):
(DOMHTMLOptionElement::setSelected):
(DOMHTMLOptionElement::value):
(DOMHTMLOptionElement::setValue):
(DOMHTMLInputElement::QueryInterface):
(DOMHTMLInputElement::defaultValue):
(DOMHTMLInputElement::setDefaultValue):
(DOMHTMLInputElement::defaultChecked):
(DOMHTMLInputElement::setDefaultChecked):
(DOMHTMLInputElement::form):
(DOMHTMLInputElement::accept):
(DOMHTMLInputElement::setAccept):
(DOMHTMLInputElement::accessKey):
(DOMHTMLInputElement::setAccessKey):
(DOMHTMLInputElement::align):
(DOMHTMLInputElement::setAlign):
(DOMHTMLInputElement::alt):
(DOMHTMLInputElement::setAlt):
(DOMHTMLInputElement::checked):
(DOMHTMLInputElement::setChecked):
(DOMHTMLInputElement::disabled):
(DOMHTMLInputElement::setDisabled):
(DOMHTMLInputElement::maxLength):
(DOMHTMLInputElement::setMaxLength):
(DOMHTMLInputElement::name):
(DOMHTMLInputElement::setName):
(DOMHTMLInputElement::readOnly):
(DOMHTMLInputElement::setReadOnly):
(DOMHTMLInputElement::size):
(DOMHTMLInputElement::setSize):
(DOMHTMLInputElement::src):
(DOMHTMLInputElement::setSrc):
(DOMHTMLInputElement::tabIndex):
(DOMHTMLInputElement::setTabIndex):
(DOMHTMLInputElement::type):
(DOMHTMLInputElement::setType):
(DOMHTMLInputElement::useMap):
(DOMHTMLInputElement::setUseMap):
(DOMHTMLInputElement::value):
(DOMHTMLInputElement::setValue):
(DOMHTMLInputElement::setValueForUser):
(DOMHTMLInputElement::select):
(DOMHTMLInputElement::click):
(DOMHTMLInputElement::setSelectionStart):
(DOMHTMLInputElement::selectionStart):
(DOMHTMLInputElement::setSelectionEnd):
(DOMHTMLInputElement::selectionEnd):
(DOMHTMLInputElement::isTextField):
(DOMHTMLInputElement::rectOnScreen):
(DOMHTMLInputElement::replaceCharactersInRange):
(DOMHTMLInputElement::selectedRange):
(DOMHTMLInputElement::setAutofilled):
(DOMHTMLInputElement::isAutofilled):
(DOMHTMLInputElement::isUserEdited):
(DOMHTMLTextAreaElement::QueryInterface):
(DOMHTMLTextAreaElement::defaultValue):
(DOMHTMLTextAreaElement::setDefaultValue):
(DOMHTMLTextAreaElement::form):
(DOMHTMLTextAreaElement::accessKey):
(DOMHTMLTextAreaElement::setAccessKey):
(DOMHTMLTextAreaElement::cols):
(DOMHTMLTextAreaElement::setCols):
(DOMHTMLTextAreaElement::disabled):
(DOMHTMLTextAreaElement::setDisabled):
(DOMHTMLTextAreaElement::name):
(DOMHTMLTextAreaElement::setName):
(DOMHTMLTextAreaElement::readOnly):
(DOMHTMLTextAreaElement::setReadOnly):
(DOMHTMLTextAreaElement::rows):
(DOMHTMLTextAreaElement::setRows):
(DOMHTMLTextAreaElement::tabIndex):
(DOMHTMLTextAreaElement::setTabIndex):
(DOMHTMLTextAreaElement::type):
(DOMHTMLTextAreaElement::value):
(DOMHTMLTextAreaElement::setValue):
(DOMHTMLTextAreaElement::select):
(DOMHTMLTextAreaElement::isUserEdited):
(DOMHTMLIFrameElement::QueryInterface):
(DOMHTMLIFrameElement::contentFrame):
* DOMHTMLClasses.h:
(DOMHTMLCollection::AddRef):
(DOMHTMLCollection::Release):
(DOMHTMLCollection::throwException):
(DOMHTMLCollection::callWebScriptMethod):
(DOMHTMLCollection::evaluateWebScript):
(DOMHTMLCollection::removeWebScriptKey):
(DOMHTMLCollection::stringRepresentation):
(DOMHTMLCollection::webScriptValueAtIndex):
(DOMHTMLCollection::setWebScriptValueAtIndex):
(DOMHTMLCollection::setException):
(DOMHTMLOptionsCollection::AddRef):
(DOMHTMLOptionsCollection::Release):
(DOMHTMLOptionsCollection::throwException):
(DOMHTMLOptionsCollection::callWebScriptMethod):
(DOMHTMLOptionsCollection::evaluateWebScript):
(DOMHTMLOptionsCollection::removeWebScriptKey):
(DOMHTMLOptionsCollection::stringRepresentation):
(DOMHTMLOptionsCollection::webScriptValueAtIndex):
(DOMHTMLOptionsCollection::setWebScriptValueAtIndex):
(DOMHTMLOptionsCollection::setException):
(DOMHTMLDocument::DOMHTMLDocument):
(DOMHTMLDocument::AddRef):
(DOMHTMLDocument::Release):
(DOMHTMLDocument::throwException):
(DOMHTMLDocument::callWebScriptMethod):
(DOMHTMLDocument::evaluateWebScript):
(DOMHTMLDocument::removeWebScriptKey):
(DOMHTMLDocument::stringRepresentation):
(DOMHTMLDocument::webScriptValueAtIndex):
(DOMHTMLDocument::setWebScriptValueAtIndex):
(DOMHTMLDocument::setException):
(DOMHTMLDocument::nodeName):
(DOMHTMLDocument::nodeValue):
(DOMHTMLDocument::setNodeValue):
(DOMHTMLDocument::nodeType):
(DOMHTMLDocument::parentNode):
(DOMHTMLDocument::childNodes):
(DOMHTMLDocument::firstChild):
(DOMHTMLDocument::lastChild):
(DOMHTMLDocument::previousSibling):
(DOMHTMLDocument::nextSibling):
(DOMHTMLDocument::attributes):
(DOMHTMLDocument::ownerDocument):
(DOMHTMLDocument::insertBefore):
(DOMHTMLDocument::replaceChild):
(DOMHTMLDocument::removeChild):
(DOMHTMLDocument::appendChild):
(DOMHTMLDocument::hasChildNodes):
(DOMHTMLDocument::cloneNode):
(DOMHTMLDocument::normalize):
(DOMHTMLDocument::isSupported):
(DOMHTMLDocument::namespaceURI):
(DOMHTMLDocument::prefix):
(DOMHTMLDocument::setPrefix):
(DOMHTMLDocument::localName):
(DOMHTMLDocument::hasAttributes):
(DOMHTMLDocument::isSameNode):
(DOMHTMLDocument::isEqualNode):
(DOMHTMLDocument::textContent):
(DOMHTMLDocument::setTextContent):
(DOMHTMLDocument::doctype):
(DOMHTMLDocument::implementation):
(DOMHTMLDocument::documentElement):
(DOMHTMLDocument::createElement):
(DOMHTMLDocument::createDocumentFragment):
(DOMHTMLDocument::createTextNode):
(DOMHTMLDocument::createComment):
(DOMHTMLDocument::createCDATASection):
(DOMHTMLDocument::createProcessingInstruction):
(DOMHTMLDocument::createAttribute):
(DOMHTMLDocument::createEntityReference):
(DOMHTMLDocument::getElementsByTagName):
(DOMHTMLDocument::importNode):
(DOMHTMLDocument::createElementNS):
(DOMHTMLDocument::createAttributeNS):
(DOMHTMLDocument::getElementsByTagNameNS):
(DOMHTMLDocument::getElementById):
(DOMHTMLElement::DOMHTMLElement):
(DOMHTMLElement::AddRef):
(DOMHTMLElement::Release):
(DOMHTMLElement::throwException):
(DOMHTMLElement::callWebScriptMethod):
(DOMHTMLElement::evaluateWebScript):
(DOMHTMLElement::removeWebScriptKey):
(DOMHTMLElement::stringRepresentation):
(DOMHTMLElement::webScriptValueAtIndex):
(DOMHTMLElement::setWebScriptValueAtIndex):
(DOMHTMLElement::setException):
(DOMHTMLElement::nodeName):
(DOMHTMLElement::nodeValue):
(DOMHTMLElement::setNodeValue):
(DOMHTMLElement::nodeType):
(DOMHTMLElement::parentNode):
(DOMHTMLElement::childNodes):
(DOMHTMLElement::firstChild):
(DOMHTMLElement::lastChild):
(DOMHTMLElement::previousSibling):
(DOMHTMLElement::nextSibling):
(DOMHTMLElement::attributes):
(DOMHTMLElement::ownerDocument):
(DOMHTMLElement::insertBefore):
(DOMHTMLElement::replaceChild):
(DOMHTMLElement::removeChild):
(DOMHTMLElement::appendChild):
(DOMHTMLElement::hasChildNodes):
(DOMHTMLElement::cloneNode):
(DOMHTMLElement::normalize):
(DOMHTMLElement::isSupported):
(DOMHTMLElement::namespaceURI):
(DOMHTMLElement::prefix):
(DOMHTMLElement::setPrefix):
(DOMHTMLElement::localName):
(DOMHTMLElement::hasAttributes):
(DOMHTMLElement::isSameNode):
(DOMHTMLElement::isEqualNode):
(DOMHTMLElement::textContent):
(DOMHTMLElement::setTextContent):
(DOMHTMLElement::tagName):
(DOMHTMLElement::getAttribute):
(DOMHTMLElement::setAttribute):
(DOMHTMLElement::removeAttribute):
(DOMHTMLElement::getAttributeNode):
(DOMHTMLElement::setAttributeNode):
(DOMHTMLElement::removeAttributeNode):
(DOMHTMLElement::getElementsByTagName):
(DOMHTMLElement::getAttributeNS):
(DOMHTMLElement::setAttributeNS):
(DOMHTMLElement::removeAttributeNS):
(DOMHTMLElement::getAttributeNodeNS):
(DOMHTMLElement::setAttributeNodeNS):
(DOMHTMLElement::getElementsByTagNameNS):
(DOMHTMLElement::hasAttribute):
(DOMHTMLElement::hasAttributeNS):
(DOMHTMLElement::focus):
(DOMHTMLElement::blur):
(DOMHTMLFormElement::DOMHTMLFormElement):
(DOMHTMLFormElement::AddRef):
(DOMHTMLFormElement::Release):
(DOMHTMLFormElement::throwException):
(DOMHTMLFormElement::callWebScriptMethod):
(DOMHTMLFormElement::evaluateWebScript):
(DOMHTMLFormElement::removeWebScriptKey):
(DOMHTMLFormElement::stringRepresentation):
(DOMHTMLFormElement::webScriptValueAtIndex):
(DOMHTMLFormElement::setWebScriptValueAtIndex):
(DOMHTMLFormElement::setException):
(DOMHTMLFormElement::nodeName):
(DOMHTMLFormElement::nodeValue):
(DOMHTMLFormElement::setNodeValue):
(DOMHTMLFormElement::nodeType):
(DOMHTMLFormElement::parentNode):
(DOMHTMLFormElement::childNodes):
(DOMHTMLFormElement::firstChild):
(DOMHTMLFormElement::lastChild):
(DOMHTMLFormElement::previousSibling):
(DOMHTMLFormElement::nextSibling):
(DOMHTMLFormElement::attributes):
(DOMHTMLFormElement::ownerDocument):
(DOMHTMLFormElement::insertBefore):
(DOMHTMLFormElement::replaceChild):
(DOMHTMLFormElement::removeChild):
(DOMHTMLFormElement::appendChild):
(DOMHTMLFormElement::hasChildNodes):
(DOMHTMLFormElement::cloneNode):
(DOMHTMLFormElement::normalize):
(DOMHTMLFormElement::isSupported):
(DOMHTMLFormElement::namespaceURI):
(DOMHTMLFormElement::prefix):
(DOMHTMLFormElement::setPrefix):
(DOMHTMLFormElement::localName):
(DOMHTMLFormElement::hasAttributes):
(DOMHTMLFormElement::isSameNode):
(DOMHTMLFormElement::isEqualNode):
(DOMHTMLFormElement::textContent):
(DOMHTMLFormElement::setTextContent):
(DOMHTMLFormElement::tagName):
(DOMHTMLFormElement::getAttribute):
(DOMHTMLFormElement::setAttribute):
(DOMHTMLFormElement::removeAttribute):
(DOMHTMLFormElement::getAttributeNode):
(DOMHTMLFormElement::setAttributeNode):
(DOMHTMLFormElement::removeAttributeNode):
(DOMHTMLFormElement::getElementsByTagName):
(DOMHTMLFormElement::getAttributeNS):
(DOMHTMLFormElement::setAttributeNS):
(DOMHTMLFormElement::removeAttributeNS):
(DOMHTMLFormElement::getAttributeNodeNS):
(DOMHTMLFormElement::setAttributeNodeNS):
(DOMHTMLFormElement::getElementsByTagNameNS):
(DOMHTMLFormElement::hasAttribute):
(DOMHTMLFormElement::hasAttributeNS):
(DOMHTMLFormElement::focus):
(DOMHTMLFormElement::blur):
(DOMHTMLFormElement::idName):
(DOMHTMLFormElement::setIdName):
(DOMHTMLFormElement::title):
(DOMHTMLFormElement::setTitle):
(DOMHTMLFormElement::lang):
(DOMHTMLFormElement::setLang):
(DOMHTMLFormElement::dir):
(DOMHTMLFormElement::setDir):
(DOMHTMLFormElement::className):
(DOMHTMLFormElement::setClassName):
(DOMHTMLFormElement::innerHTML):
(DOMHTMLFormElement::setInnerHTML):
(DOMHTMLFormElement::innerText):
(DOMHTMLFormElement::setInnerText):
(DOMHTMLSelectElement::DOMHTMLSelectElement):
(DOMHTMLSelectElement::AddRef):
(DOMHTMLSelectElement::Release):
(DOMHTMLSelectElement::throwException):
(DOMHTMLSelectElement::callWebScriptMethod):
(DOMHTMLSelectElement::evaluateWebScript):
(DOMHTMLSelectElement::removeWebScriptKey):
(DOMHTMLSelectElement::stringRepresentation):
(DOMHTMLSelectElement::webScriptValueAtIndex):
(DOMHTMLSelectElement::setWebScriptValueAtIndex):
(DOMHTMLSelectElement::setException):
(DOMHTMLSelectElement::nodeName):
(DOMHTMLSelectElement::nodeValue):
(DOMHTMLSelectElement::setNodeValue):
(DOMHTMLSelectElement::nodeType):
(DOMHTMLSelectElement::parentNode):
(DOMHTMLSelectElement::childNodes):
(DOMHTMLSelectElement::firstChild):
(DOMHTMLSelectElement::lastChild):
(DOMHTMLSelectElement::previousSibling):
(DOMHTMLSelectElement::nextSibling):
(DOMHTMLSelectElement::attributes):
(DOMHTMLSelectElement::ownerDocument):
(DOMHTMLSelectElement::insertBefore):
(DOMHTMLSelectElement::replaceChild):
(DOMHTMLSelectElement::removeChild):
(DOMHTMLSelectElement::appendChild):
(DOMHTMLSelectElement::hasChildNodes):
(DOMHTMLSelectElement::cloneNode):
(DOMHTMLSelectElement::normalize):
(DOMHTMLSelectElement::isSupported):
(DOMHTMLSelectElement::namespaceURI):
(DOMHTMLSelectElement::prefix):
(DOMHTMLSelectElement::setPrefix):
(DOMHTMLSelectElement::localName):
(DOMHTMLSelectElement::hasAttributes):
(DOMHTMLSelectElement::isSameNode):
(DOMHTMLSelectElement::isEqualNode):
(DOMHTMLSelectElement::textContent):
(DOMHTMLSelectElement::setTextContent):
(DOMHTMLSelectElement::tagName):
(DOMHTMLSelectElement::getAttribute):
(DOMHTMLSelectElement::setAttribute):
(DOMHTMLSelectElement::removeAttribute):
(DOMHTMLSelectElement::getAttributeNode):
(DOMHTMLSelectElement::setAttributeNode):
(DOMHTMLSelectElement::removeAttributeNode):
(DOMHTMLSelectElement::getElementsByTagName):
(DOMHTMLSelectElement::getAttributeNS):
(DOMHTMLSelectElement::setAttributeNS):
(DOMHTMLSelectElement::removeAttributeNS):
(DOMHTMLSelectElement::getAttributeNodeNS):
(DOMHTMLSelectElement::setAttributeNodeNS):
(DOMHTMLSelectElement::getElementsByTagNameNS):
(DOMHTMLSelectElement::hasAttribute):
(DOMHTMLSelectElement::hasAttributeNS):
(DOMHTMLSelectElement::focus):
(DOMHTMLSelectElement::blur):
(DOMHTMLSelectElement::idName):
(DOMHTMLSelectElement::setIdName):
(DOMHTMLSelectElement::title):
(DOMHTMLSelectElement::setTitle):
(DOMHTMLSelectElement::lang):
(DOMHTMLSelectElement::setLang):
(DOMHTMLSelectElement::dir):
(DOMHTMLSelectElement::setDir):
(DOMHTMLSelectElement::className):
(DOMHTMLSelectElement::setClassName):
(DOMHTMLSelectElement::innerHTML):
(DOMHTMLSelectElement::setInnerHTML):
(DOMHTMLSelectElement::innerText):
(DOMHTMLSelectElement::setInnerText):
(DOMHTMLOptionElement::DOMHTMLOptionElement):
(DOMHTMLOptionElement::AddRef):
(DOMHTMLOptionElement::Release):
(DOMHTMLOptionElement::throwException):
(DOMHTMLOptionElement::callWebScriptMethod):
(DOMHTMLOptionElement::evaluateWebScript):
(DOMHTMLOptionElement::removeWebScriptKey):
(DOMHTMLOptionElement::stringRepresentation):
(DOMHTMLOptionElement::webScriptValueAtIndex):
(DOMHTMLOptionElement::setWebScriptValueAtIndex):
(DOMHTMLOptionElement::setException):
(DOMHTMLOptionElement::nodeName):
(DOMHTMLOptionElement::nodeValue):
(DOMHTMLOptionElement::setNodeValue):
(DOMHTMLOptionElement::nodeType):
(DOMHTMLOptionElement::parentNode):
(DOMHTMLOptionElement::childNodes):
(DOMHTMLOptionElement::firstChild):
(DOMHTMLOptionElement::lastChild):
(DOMHTMLOptionElement::previousSibling):
(DOMHTMLOptionElement::nextSibling):
(DOMHTMLOptionElement::attributes):
(DOMHTMLOptionElement::ownerDocument):
(DOMHTMLOptionElement::insertBefore):
(DOMHTMLOptionElement::replaceChild):
(DOMHTMLOptionElement::removeChild):
(DOMHTMLOptionElement::appendChild):
(DOMHTMLOptionElement::hasChildNodes):
(DOMHTMLOptionElement::cloneNode):
(DOMHTMLOptionElement::normalize):
(DOMHTMLOptionElement::isSupported):
(DOMHTMLOptionElement::namespaceURI):
(DOMHTMLOptionElement::prefix):
(DOMHTMLOptionElement::setPrefix):
(DOMHTMLOptionElement::localName):
(DOMHTMLOptionElement::hasAttributes):
(DOMHTMLOptionElement::isSameNode):
(DOMHTMLOptionElement::isEqualNode):
(DOMHTMLOptionElement::textContent):
(DOMHTMLOptionElement::setTextContent):
(DOMHTMLOptionElement::tagName):
(DOMHTMLOptionElement::getAttribute):
(DOMHTMLOptionElement::setAttribute):
(DOMHTMLOptionElement::removeAttribute):
(DOMHTMLOptionElement::getAttributeNode):
(DOMHTMLOptionElement::setAttributeNode):
(DOMHTMLOptionElement::removeAttributeNode):
(DOMHTMLOptionElement::getElementsByTagName):
(DOMHTMLOptionElement::getAttributeNS):
(DOMHTMLOptionElement::setAttributeNS):
(DOMHTMLOptionElement::removeAttributeNS):
(DOMHTMLOptionElement::getAttributeNodeNS):
(DOMHTMLOptionElement::setAttributeNodeNS):
(DOMHTMLOptionElement::getElementsByTagNameNS):
(DOMHTMLOptionElement::hasAttribute):
(DOMHTMLOptionElement::hasAttributeNS):
(DOMHTMLOptionElement::focus):
(DOMHTMLOptionElement::blur):
(DOMHTMLOptionElement::idName):
(DOMHTMLOptionElement::setIdName):
(DOMHTMLOptionElement::title):
(DOMHTMLOptionElement::setTitle):
(DOMHTMLOptionElement::lang):
(DOMHTMLOptionElement::setLang):
(DOMHTMLOptionElement::dir):
(DOMHTMLOptionElement::setDir):
(DOMHTMLOptionElement::className):
(DOMHTMLOptionElement::setClassName):
(DOMHTMLOptionElement::innerHTML):
(DOMHTMLOptionElement::setInnerHTML):
(DOMHTMLOptionElement::innerText):
(DOMHTMLOptionElement::setInnerText):
(DOMHTMLInputElement::DOMHTMLInputElement):
(DOMHTMLInputElement::AddRef):
(DOMHTMLInputElement::Release):
(DOMHTMLInputElement::throwException):
(DOMHTMLInputElement::callWebScriptMethod):
(DOMHTMLInputElement::evaluateWebScript):
(DOMHTMLInputElement::removeWebScriptKey):
(DOMHTMLInputElement::stringRepresentation):
(DOMHTMLInputElement::webScriptValueAtIndex):
(DOMHTMLInputElement::setWebScriptValueAtIndex):
(DOMHTMLInputElement::setException):
(DOMHTMLInputElement::nodeName):
(DOMHTMLInputElement::nodeValue):
(DOMHTMLInputElement::setNodeValue):
(DOMHTMLInputElement::nodeType):
(DOMHTMLInputElement::parentNode):
(DOMHTMLInputElement::childNodes):
(DOMHTMLInputElement::firstChild):
(DOMHTMLInputElement::lastChild):
(DOMHTMLInputElement::previousSibling):
(DOMHTMLInputElement::nextSibling):
(DOMHTMLInputElement::attributes):
(DOMHTMLInputElement::ownerDocument):
(DOMHTMLInputElement::insertBefore):
(DOMHTMLInputElement::replaceChild):
(DOMHTMLInputElement::removeChild):
(DOMHTMLInputElement::appendChild):
(DOMHTMLInputElement::hasChildNodes):
(DOMHTMLInputElement::cloneNode):
(DOMHTMLInputElement::normalize):
(DOMHTMLInputElement::isSupported):
(DOMHTMLInputElement::namespaceURI):
(DOMHTMLInputElement::prefix):
(DOMHTMLInputElement::setPrefix):
(DOMHTMLInputElement::localName):
(DOMHTMLInputElement::hasAttributes):
(DOMHTMLInputElement::isSameNode):
(DOMHTMLInputElement::isEqualNode):
(DOMHTMLInputElement::textContent):
(DOMHTMLInputElement::setTextContent):
(DOMHTMLInputElement::tagName):
(DOMHTMLInputElement::getAttribute):
(DOMHTMLInputElement::setAttribute):
(DOMHTMLInputElement::removeAttribute):
(DOMHTMLInputElement::getAttributeNode):
(DOMHTMLInputElement::setAttributeNode):
(DOMHTMLInputElement::removeAttributeNode):
(DOMHTMLInputElement::getElementsByTagName):
(DOMHTMLInputElement::getAttributeNS):
(DOMHTMLInputElement::setAttributeNS):
(DOMHTMLInputElement::removeAttributeNS):
(DOMHTMLInputElement::getAttributeNodeNS):
(DOMHTMLInputElement::setAttributeNodeNS):
(DOMHTMLInputElement::getElementsByTagNameNS):
(DOMHTMLInputElement::hasAttribute):
(DOMHTMLInputElement::hasAttributeNS):
(DOMHTMLInputElement::focus):
(DOMHTMLInputElement::blur):
(DOMHTMLInputElement::idName):
(DOMHTMLInputElement::setIdName):
(DOMHTMLInputElement::title):
(DOMHTMLInputElement::setTitle):
(DOMHTMLInputElement::lang):
(DOMHTMLInputElement::setLang):
(DOMHTMLInputElement::dir):
(DOMHTMLInputElement::setDir):
(DOMHTMLInputElement::className):
(DOMHTMLInputElement::setClassName):
(DOMHTMLInputElement::innerHTML):
(DOMHTMLInputElement::setInnerHTML):
(DOMHTMLInputElement::innerText):
(DOMHTMLInputElement::setInnerText):
(DOMHTMLTextAreaElement::DOMHTMLTextAreaElement):
(DOMHTMLTextAreaElement::AddRef):
(DOMHTMLTextAreaElement::Release):
(DOMHTMLTextAreaElement::throwException):
(DOMHTMLTextAreaElement::callWebScriptMethod):
(DOMHTMLTextAreaElement::evaluateWebScript):
(DOMHTMLTextAreaElement::removeWebScriptKey):
(DOMHTMLTextAreaElement::stringRepresentation):
(DOMHTMLTextAreaElement::webScriptValueAtIndex):
(DOMHTMLTextAreaElement::setWebScriptValueAtIndex):
(DOMHTMLTextAreaElement::setException):
(DOMHTMLTextAreaElement::nodeName):
(DOMHTMLTextAreaElement::nodeValue):
(DOMHTMLTextAreaElement::setNodeValue):
(DOMHTMLTextAreaElement::nodeType):
(DOMHTMLTextAreaElement::parentNode):
(DOMHTMLTextAreaElement::childNodes):
(DOMHTMLTextAreaElement::firstChild):
(DOMHTMLTextAreaElement::lastChild):
(DOMHTMLTextAreaElement::previousSibling):
(DOMHTMLTextAreaElement::nextSibling):
(DOMHTMLTextAreaElement::attributes):
(DOMHTMLTextAreaElement::ownerDocument):
(DOMHTMLTextAreaElement::insertBefore):
(DOMHTMLTextAreaElement::replaceChild):
(DOMHTMLTextAreaElement::removeChild):
(DOMHTMLTextAreaElement::appendChild):
(DOMHTMLTextAreaElement::hasChildNodes):
(DOMHTMLTextAreaElement::cloneNode):
(DOMHTMLTextAreaElement::normalize):
(DOMHTMLTextAreaElement::isSupported):
(DOMHTMLTextAreaElement::namespaceURI):
(DOMHTMLTextAreaElement::prefix):
(DOMHTMLTextAreaElement::setPrefix):
(DOMHTMLTextAreaElement::localName):
(DOMHTMLTextAreaElement::hasAttributes):
(DOMHTMLTextAreaElement::isSameNode):
(DOMHTMLTextAreaElement::isEqualNode):
(DOMHTMLTextAreaElement::textContent):
(DOMHTMLTextAreaElement::setTextContent):
(DOMHTMLTextAreaElement::tagName):
(DOMHTMLTextAreaElement::getAttribute):
(DOMHTMLTextAreaElement::setAttribute):
(DOMHTMLTextAreaElement::removeAttribute):
(DOMHTMLTextAreaElement::getAttributeNode):
(DOMHTMLTextAreaElement::setAttributeNode):
(DOMHTMLTextAreaElement::removeAttributeNode):
(DOMHTMLTextAreaElement::getElementsByTagName):
(DOMHTMLTextAreaElement::getAttributeNS):
(DOMHTMLTextAreaElement::setAttributeNS):
(DOMHTMLTextAreaElement::removeAttributeNS):
(DOMHTMLTextAreaElement::getAttributeNodeNS):
(DOMHTMLTextAreaElement::setAttributeNodeNS):
(DOMHTMLTextAreaElement::getElementsByTagNameNS):
(DOMHTMLTextAreaElement::hasAttribute):
(DOMHTMLTextAreaElement::hasAttributeNS):
(DOMHTMLTextAreaElement::focus):
(DOMHTMLTextAreaElement::blur):
(DOMHTMLTextAreaElement::idName):
(DOMHTMLTextAreaElement::setIdName):
(DOMHTMLTextAreaElement::title):
(DOMHTMLTextAreaElement::setTitle):
(DOMHTMLTextAreaElement::lang):
(DOMHTMLTextAreaElement::setLang):
(DOMHTMLTextAreaElement::dir):
(DOMHTMLTextAreaElement::setDir):
(DOMHTMLTextAreaElement::className):
(DOMHTMLTextAreaElement::setClassName):
(DOMHTMLTextAreaElement::innerHTML):
(DOMHTMLTextAreaElement::setInnerHTML):
(DOMHTMLTextAreaElement::innerText):
(DOMHTMLTextAreaElement::setInnerText):
(DOMHTMLIFrameElement::DOMHTMLIFrameElement):
(DOMHTMLIFrameElement::AddRef):
(DOMHTMLIFrameElement::Release):
(DOMHTMLIFrameElement::throwException):
(DOMHTMLIFrameElement::callWebScriptMethod):
(DOMHTMLIFrameElement::evaluateWebScript):
(DOMHTMLIFrameElement::removeWebScriptKey):
(DOMHTMLIFrameElement::stringRepresentation):
(DOMHTMLIFrameElement::webScriptValueAtIndex):
(DOMHTMLIFrameElement::setWebScriptValueAtIndex):
(DOMHTMLIFrameElement::setException):
(DOMHTMLIFrameElement::nodeName):
(DOMHTMLIFrameElement::nodeValue):
(DOMHTMLIFrameElement::setNodeValue):
(DOMHTMLIFrameElement::nodeType):
(DOMHTMLIFrameElement::parentNode):
(DOMHTMLIFrameElement::childNodes):
(DOMHTMLIFrameElement::firstChild):
(DOMHTMLIFrameElement::lastChild):
(DOMHTMLIFrameElement::previousSibling):
(DOMHTMLIFrameElement::nextSibling):
(DOMHTMLIFrameElement::attributes):
(DOMHTMLIFrameElement::ownerDocument):
(DOMHTMLIFrameElement::insertBefore):
(DOMHTMLIFrameElement::replaceChild):
(DOMHTMLIFrameElement::removeChild):
(DOMHTMLIFrameElement::appendChild):
(DOMHTMLIFrameElement::hasChildNodes):
(DOMHTMLIFrameElement::cloneNode):
(DOMHTMLIFrameElement::normalize):
(DOMHTMLIFrameElement::isSupported):
(DOMHTMLIFrameElement::namespaceURI):
(DOMHTMLIFrameElement::prefix):
(DOMHTMLIFrameElement::setPrefix):
(DOMHTMLIFrameElement::localName):
(DOMHTMLIFrameElement::hasAttributes):
(DOMHTMLIFrameElement::isSameNode):
(DOMHTMLIFrameElement::isEqualNode):
(DOMHTMLIFrameElement::textContent):
(DOMHTMLIFrameElement::setTextContent):
(DOMHTMLIFrameElement::tagName):
(DOMHTMLIFrameElement::getAttribute):
(DOMHTMLIFrameElement::setAttribute):
(DOMHTMLIFrameElement::removeAttribute):
(DOMHTMLIFrameElement::getAttributeNode):
(DOMHTMLIFrameElement::setAttributeNode):
(DOMHTMLIFrameElement::removeAttributeNode):
(DOMHTMLIFrameElement::getElementsByTagName):
(DOMHTMLIFrameElement::getAttributeNS):
(DOMHTMLIFrameElement::setAttributeNS):
(DOMHTMLIFrameElement::removeAttributeNS):
(DOMHTMLIFrameElement::getAttributeNodeNS):
(DOMHTMLIFrameElement::setAttributeNodeNS):
(DOMHTMLIFrameElement::getElementsByTagNameNS):
(DOMHTMLIFrameElement::hasAttribute):
(DOMHTMLIFrameElement::hasAttributeNS):
(DOMHTMLIFrameElement::focus):
(DOMHTMLIFrameElement::blur):
(DOMHTMLIFrameElement::idName):
(DOMHTMLIFrameElement::setIdName):
(DOMHTMLIFrameElement::title):
(DOMHTMLIFrameElement::setTitle):
(DOMHTMLIFrameElement::lang):
(DOMHTMLIFrameElement::setLang):
(DOMHTMLIFrameElement::dir):
(DOMHTMLIFrameElement::setDir):
(DOMHTMLIFrameElement::className):
(DOMHTMLIFrameElement::setClassName):
(DOMHTMLIFrameElement::innerHTML):
(DOMHTMLIFrameElement::setInnerHTML):
(DOMHTMLIFrameElement::innerText):
(DOMHTMLIFrameElement::setInnerText):
* DefaultDownloadDelegate.cpp:
(DefaultDownloadDelegate::DefaultDownloadDelegate):
(DefaultDownloadDelegate::QueryInterface):
(DefaultDownloadDelegate::AddRef):
(DefaultDownloadDelegate::Release):
(DefaultDownloadDelegate::decideDestinationWithSuggestedFilename):
(DefaultDownloadDelegate::didCancelAuthenticationChallenge):
(DefaultDownloadDelegate::didCreateDestination):
(DefaultDownloadDelegate::didReceiveAuthenticationChallenge):
(DefaultDownloadDelegate::didReceiveDataOfLength):
(DefaultDownloadDelegate::didReceiveResponse):
(DefaultDownloadDelegate::shouldDecodeSourceDataOfMIMEType):
(DefaultDownloadDelegate::willResumeWithResponse):
(DefaultDownloadDelegate::willSendRequest):
(DefaultDownloadDelegate::didBegin):
(DefaultDownloadDelegate::didFinish):
(DefaultDownloadDelegate::didFailWithError):
* DefaultDownloadDelegate.h:
* DefaultPolicyDelegate.cpp:
(DefaultPolicyDelegate::DefaultPolicyDelegate):
(DefaultPolicyDelegate::QueryInterface):
(DefaultPolicyDelegate::AddRef):
(DefaultPolicyDelegate::Release):
(DefaultPolicyDelegate::decidePolicyForNavigationAction):
(DefaultPolicyDelegate::decidePolicyForNewWindowAction):
(DefaultPolicyDelegate::decidePolicyForMIMEType):
(DefaultPolicyDelegate::unableToImplementPolicyWithError):
* DefaultPolicyDelegate.h:
* Interfaces/Accessible2/Accessible2.idl:
* Interfaces/Accessible2/Accessible2_2.idl:
* Interfaces/Accessible2/AccessibleApplication.idl:
* Interfaces/Accessible2/AccessibleEditableText.idl:
* Interfaces/Accessible2/AccessibleRelation.idl:
* Interfaces/Accessible2/AccessibleStates.idl:
* Interfaces/Accessible2/AccessibleText.idl:
* Interfaces/Accessible2/AccessibleText2.idl:
* Interfaces/IWebApplicationCache.idl:
* Interfaces/IWebView.idl:
* Interfaces/IWebViewPrivate.idl:
* Interfaces/WebKit.idl:
* MemoryStream.cpp:
(MemoryStream::QueryInterface):
(MemoryStream::AddRef):
* MemoryStream.h:
* WebActionPropertyBag.cpp:
(WebActionPropertyBag::WebActionPropertyBag):
(WebActionPropertyBag::QueryInterface):
(WebActionPropertyBag::AddRef):
(WebActionPropertyBag::Release):
(findMouseEvent):
(WebActionPropertyBag::Read):
(WebActionPropertyBag::Write):
* WebActionPropertyBag.h:
* WebApplicationCache.cpp:
(WebApplicationCache::QueryInterface):
(WebApplicationCache::AddRef):
* WebApplicationCache.h:
* WebArchive.cpp:
(WebArchive::createInstance):
(WebArchive::WebArchive):
(WebArchive::~WebArchive):
(WebArchive::QueryInterface):
(WebArchive::AddRef):
(WebArchive::Release):
(WebArchive::initWithMainResource):
(WebArchive::initWithData):
(WebArchive::initWithNode):
(WebArchive::mainResource):
(WebArchive::subResources):
(WebArchive::subframeArchives):
(WebArchive::data):
* WebArchive.h:
* WebBackForwardList.cpp:
(backForwardListWrappers):
(WebBackForwardList::WebBackForwardList):
(WebBackForwardList::createInstance):
(WebBackForwardList::QueryInterface):
(WebBackForwardList::AddRef):
(WebBackForwardList::Release):
(WebBackForwardList::addItem):
(WebBackForwardList::goBack):
(WebBackForwardList::goForward):
(WebBackForwardList::goToItem):
(WebBackForwardList::backItem):
(WebBackForwardList::currentItem):
(WebBackForwardList::forwardItem):
(WebBackForwardList::backListWithLimit):
(WebBackForwardList::forwardListWithLimit):
(WebBackForwardList::capacity):
(WebBackForwardList::setCapacity):
(WebBackForwardList::backListCount):
(WebBackForwardList::forwardListCount):
(WebBackForwardList::containsItem):
(WebBackForwardList::itemAtIndex):
(WebBackForwardList::removeItem):
* WebBackForwardList.h:
* WebCache.cpp:
(WebCache::WebCache):
(WebCache::QueryInterface):
(WebCache::AddRef):
(WebCache::Release):
(WebCache::statistics):
(WebCache::empty):
(WebCache::setDisabled):
(WebCache::disabled):
(WebCache::cacheFolder):
(WebCache::setCacheFolder):
* WebCache.h:
* WebCoreStatistics.cpp:
(WebCoreStatistics::WebCoreStatistics):
(WebCoreStatistics::QueryInterface):
(WebCoreStatistics::AddRef):
(WebCoreStatistics::Release):
(WebCoreStatistics::javaScriptObjectsCount):
(WebCoreStatistics::javaScriptGlobalObjectsCount):
(WebCoreStatistics::javaScriptProtectedObjectsCount):
(WebCoreStatistics::javaScriptProtectedGlobalObjectsCount):
(WebCoreStatistics::javaScriptProtectedObjectTypeCounts):
(WebCoreStatistics::javaScriptObjectTypeCounts):
(WebCoreStatistics::iconPageURLMappingCount):
(WebCoreStatistics::iconRetainedPageURLCount):
(WebCoreStatistics::iconRecordCount):
(WebCoreStatistics::iconsWithDataCount):
(WebCoreStatistics::cachedFontDataCount):
(WebCoreStatistics::cachedFontDataInactiveCount):
(WebCoreStatistics::purgeInactiveFontData):
(WebCoreStatistics::glyphPageCount):
(WebCoreStatistics::setJavaScriptGarbageCollectorTimerEnabled):
(WebCoreStatistics::shouldPrintExceptions):
(WebCoreStatistics::stopIgnoringWebCoreNodeLeaks):
(WebCoreStatistics::memoryStatistics):
(WebCoreStatistics::returnFreeMemoryToSystem):
(WebCoreStatistics::cachedPageCount):
(WebCoreStatistics::cachedFrameCount):
* WebCoreStatistics.h:
* WebCoreSupport/WebDesktopNotificationsDelegate.cpp:
(NotificationCOMWrapper::create):
(NotificationCOMWrapper::QueryInterface):
* WebCoreSupport/WebEditorClient.cpp:
(WebEditorUndoTarget::QueryInterface):
(WebEditorUndoTarget::AddRef):
(WebEditorUndoCommand::execute):
(WebEditorUndoCommand::QueryInterface):
(WebEditorUndoCommand::AddRef):
* WebCoreSupport/WebInspectorDelegate.cpp:
(WebInspectorDelegate::WebInspectorDelegate):
(WebInspectorDelegate::createInstance):
(QueryInterface):
(WebInspectorDelegate::AddRef):
(WebInspectorDelegate::Release):
(WebInspectorDelegate::dragDestinationActionMaskForDraggingInfo):
(WebInspectorDelegate::createWebViewWithRequest):
(WebInspectorDelegate::willPerformDragSourceAction):
(WebInspectorDelegate::createModalDialog):
(WebInspectorDelegate::desktopNotificationsDelegate):
(:m_refCount): Deleted.
* WebCoreSupport/WebInspectorDelegate.h:
(WebInspectorDelegate::webViewShow):
(WebInspectorDelegate::webViewClose):
(WebInspectorDelegate::webViewFocus):
(WebInspectorDelegate::webViewUnfocus):
(WebInspectorDelegate::webViewFirstResponder):
(WebInspectorDelegate::makeFirstResponder):
(WebInspectorDelegate::setStatusText):
(WebInspectorDelegate::webViewStatusText):
(WebInspectorDelegate::webViewAreToolbarsVisible):
(WebInspectorDelegate::setToolbarsVisible):
(WebInspectorDelegate::webViewIsStatusBarVisible):
(WebInspectorDelegate::setStatusBarVisible):
(WebInspectorDelegate::webViewIsResizable):
(WebInspectorDelegate::setResizable):
(WebInspectorDelegate::setFrame):
(WebInspectorDelegate::webViewFrame):
(WebInspectorDelegate::setContentRect):
(WebInspectorDelegate::webViewContentRect):
(WebInspectorDelegate::runJavaScriptAlertPanelWithMessage):
(WebInspectorDelegate::runJavaScriptConfirmPanelWithMessage):
(WebInspectorDelegate::runJavaScriptTextInputPanelWithPrompt):
(WebInspectorDelegate::runBeforeUnloadConfirmPanelWithMessage):
(WebInspectorDelegate::runOpenPanelForFileButtonWithResultListener):
(WebInspectorDelegate::mouseDidMoveOverElement):
(WebInspectorDelegate::contextMenuItemsForElement):
(WebInspectorDelegate::validateUserInterfaceItem):
(WebInspectorDelegate::shouldPerformAction):
(WebInspectorDelegate::willPerformDragDestinationAction):
(WebInspectorDelegate::dragSourceActionMaskForPoint):
(WebInspectorDelegate::contextMenuItemSelected):
(WebInspectorDelegate::hasCustomMenuImplementation):
(WebInspectorDelegate::trackCustomPopupMenu):
(WebInspectorDelegate::measureCustomMenuItem):
(WebInspectorDelegate::drawCustomMenuItem):
(WebInspectorDelegate::addCustomMenuDrawingData):
(WebInspectorDelegate::cleanUpCustomMenuDrawingData):
(WebInspectorDelegate::canTakeFocus):
(WebInspectorDelegate::takeFocus):
(WebInspectorDelegate::registerUndoWithTarget):
(WebInspectorDelegate::removeAllActionsWithTarget):
(WebInspectorDelegate::setActionTitle):
(WebInspectorDelegate::undo):
(WebInspectorDelegate::redo):
(WebInspectorDelegate::canUndo):
(WebInspectorDelegate::canRedo):
(WebInspectorDelegate::printFrame):
(WebInspectorDelegate::ftpDirectoryTemplatePath):
(WebInspectorDelegate::webViewHeaderHeight):
(WebInspectorDelegate::webViewFooterHeight):
(WebInspectorDelegate::drawHeaderInRect):
(WebInspectorDelegate::drawFooterInRect):
(WebInspectorDelegate::webViewPrintingMarginRect):
(WebInspectorDelegate::canRunModal):
(WebInspectorDelegate::runModal):
(WebInspectorDelegate::isMenuBarVisible):
(WebInspectorDelegate::setMenuBarVisible):
(WebInspectorDelegate::runDatabaseSizeLimitPrompt):
(WebInspectorDelegate::paintCustomScrollbar):
(WebInspectorDelegate::paintCustomScrollCorner):
(WebInspectorDelegate::QueryInterface): Deleted.
(WebInspectorDelegate::createWebViewWithRequest): Deleted.
(WebInspectorDelegate::willPerformDragSourceAction): Deleted.
(WebInspectorDelegate::createModalDialog): Deleted.
(WebInspectorDelegate::desktopNotificationsDelegate): Deleted.
* WebDataSource.cpp:
(WebDataSource::overrideEncoding):
(WebDataSource::setOverrideEncoding):
(WebDataSource::mainDocumentError):
(WebDataSource::setDeferMainResourceDataLoad):
(WebDataSource::QueryInterface):
(WebDataSource::AddRef):
(WebDataSource::Release):
(WebDataSource::initWithRequest):
(WebDataSource::data):
(WebDataSource::representation):
(WebDataSource::webFrame):
(WebDataSource::initialRequest):
(WebDataSource::request):
(WebDataSource::response):
(WebDataSource::textEncodingName):
(WebDataSource::isLoading):
(WebDataSource::pageTitle):
(WebDataSource::unreachableURL):
(WebDataSource::webArchive):
(WebDataSource::mainResource):
(WebDataSource::subresources):
(WebDataSource::subresourceForURL):
(WebDataSource::addSubresource):
* WebDataSource.h:
* WebDatabaseManager.cpp:
(DatabaseDetailsPropertyBag::DatabaseDetailsPropertyBag):
(DatabaseDetailsPropertyBag::~DatabaseDetailsPropertyBag):
(DatabaseDetailsPropertyBag::createInstance):
(DatabaseDetailsPropertyBag::AddRef):
(DatabaseDetailsPropertyBag::Release):
(DatabaseDetailsPropertyBag::QueryInterface):
(DatabaseDetailsPropertyBag::Read):
(DatabaseDetailsPropertyBag::Write):
(WebDatabaseManager::createInstance):
(WebDatabaseManager::WebDatabaseManager):
(WebDatabaseManager::~WebDatabaseManager):
(WebDatabaseManager::QueryInterface):
(WebDatabaseManager::AddRef):
(WebDatabaseManager::Release):
(WebDatabaseManager::sharedWebDatabaseManager):
(WebDatabaseManager::origins):
(WebDatabaseManager::databasesWithOrigin):
(WebDatabaseManager::detailsForDatabase):
(WebDatabaseManager::deleteAllDatabases):
(WebDatabaseManager::deleteOrigin):
(WebDatabaseManager::deleteDatabase):
(WebDatabaseManager::dispatchDidModifyOrigin):
(WebDatabaseManager::setQuota):
* WebDatabaseManager.h:
* WebDownload.cpp:
(WebDownload::WebDownload):
(WebDownload::QueryInterface):
(WebDownload::AddRef):
(WebDownload::Release):
(WebDownload::canResumeDownloadDecodedWithEncodingMIMEType):
(WebDownload::bundlePathForTargetPath):
(WebDownload::request):
* WebDownload.h:
* WebDownloadCFNet.cpp:
(WebDownload::initWithRequest):
(WebDownload::initToResumeWithBundle):
(WebDownload::start):
(WebDownload::cancel):
(WebDownload::cancelForResume):
(WebDownload::deletesFileUponFailure):
(WebDownload::setDeletesFileUponFailure):
(WebDownload::setDestination):
(WebDownload::cancelAuthenticationChallenge):
(WebDownload::continueWithoutCredentialForAuthenticationChallenge):
(WebDownload::useCredential):
* WebDropSource.cpp:
(WebDropSource::createInstance):
(WebDropSource::WebDropSource):
(WebDropSource::~WebDropSource):
(WebDropSource::QueryInterface):
(WebDropSource::AddRef):
(WebDropSource::Release):
(generateMouseEvent):
(WebDropSource::QueryContinueDrag):
(WebDropSource::GiveFeedback):
* WebDropSource.h:
* WebElementPropertyBag.cpp:
(WebElementPropertyBag::WebElementPropertyBag):
(WebElementPropertyBag::QueryInterface):
(WebElementPropertyBag::AddRef):
(WebElementPropertyBag::Release):
(WebElementPropertyBag::Read):
(WebElementPropertyBag::Write):
* WebElementPropertyBag.h:
* WebError.cpp:
(WebError::WebError):
(WebError::QueryInterface):
(WebError::AddRef):
(WebError::Release):
(WebError::init):
(WebError::code):
(WebError::domain):
(WebError::localizedDescription):
(WebError::localizedFailureReason):
(WebError::localizedRecoveryOptions):
(WebError::localizedRecoverySuggestion):
(WebError::recoverAttempter):
(WebError::userInfo):
(WebError::failingURL):
(WebError::isPolicyChangeError):
(WebError::sslPeerCertificate):
* WebError.h:
* WebFrame.cpp:
(kit):
(core):
(elementFromDOMElement):
(WebFrame::WebFramePrivate::WebFramePrivate):
(WebFrame::WebFramePrivate::~WebFramePrivate):
(WebFrame::WebFramePrivate::frameView):
(WebFrame::WebFrame):
(WebFrame::createInstance):
(WebFrame::setAllowsScrolling):
(WebFrame::allowsScrolling):
(WebFrame::setIsDisconnected):
(WebFrame::setExcludeFromTextSearch):
(WebFrame::reloadFromOrigin):
(WebFrame::paintDocumentRectToContext):
(WebFrame::paintScrollViewRectToContextAtPoint):
(WebFrame::QueryInterface):
(WebFrame::AddRef):
(WebFrame::Release):
(WebFrame::name):
(WebFrame::webView):
(WebFrame::frameView):
(WebFrame::DOMDocument):
(WebFrame::DOMWindow):
(WebFrame::frameElement):
(WebFrame::currentForm):
(WebFrame::globalContext):
(WebFrame::globalContextForScriptWorld):
(WebFrame::loadRequest):
(WebFrame::loadData):
(WebFrame::loadPlainTextString):
(WebFrame::loadHTMLString):
(WebFrame::loadAlternateHTMLString):
(WebFrame::loadArchive):
(getWebDataSource):
(WebFrame::dataSource):
(WebFrame::provisionalDataSource):
(WebFrame::url):
(WebFrame::stopLoading):
(WebFrame::reload):
(WebFrame::findFrameNamed):
(WebFrame::parentFrame):
(EnumChildFrames::EnumChildFrames):
(EnumChildFrames::QueryInterface):
(EnumChildFrames::AddRef):
(EnumChildFrames::Clone):
(WebFrame::childFrames):
(WebFrame::renderTreeAsExternalRepresentation):
(WebFrame::pageNumberForElementById):
(WebFrame::numberOfPages):
(WebFrame::scrollOffset):
(WebFrame::layout):
(WebFrame::firstLayoutDone):
(WebFrame::pendingFrameUnloadEventCount):
(WebFrame::hasSpellingMarker):
(WebFrame::clearOpener):
(WebFrame::setTextDirection):
(WebFrame::supportsTextEncoding):
(WebFrame::selectedString):
(WebFrame::selectAll):
(WebFrame::deselectAll):
(WebFrame::formForElement):
(WebFrame::elementDoesAutoComplete):
(WebFrame::resumeAnimations):
(WebFrame::suspendAnimations):
(WebFrame::pauseAnimation):
(WebFrame::pauseTransition):
(WebFrame::visibleContentRect):
(WebFrame::numberOfActiveAnimations):
(WebFrame::isDisplayingStandaloneImage):
(WebFrame::allowsFollowingLink):
(WebFrame::searchForLabelsBeforeElement):
(WebFrame::matchLabelsAgainstElement):
(WebFrame::canProvideDocumentSource):
(WebFrame::layerTreeAsText):
(WebFrame::setPrinting):
(WebFrame::setInPrintingMode):
(WebFrame::computePageRects):
(WebFrame::getPrintedPageCount):
(WebFrame::spoolPages):
(WebFrame::isFrameSet):
(WebFrame::string):
(WebFrame::size):
(WebFrame::hasScrollBars):
(WebFrame::contentBounds):
(WebFrame::frameBounds):
(WebFrame::isDescendantOfFrame):
(WebFrame::updateBackground):
(WebFrame::isMainFrame):
* WebFrame.h:
* WebFramePolicyListener.cpp:
(WebFramePolicyListener::WebFramePolicyListener):
(WebFramePolicyListener::QueryInterface):
(WebFramePolicyListener::AddRef):
(WebFramePolicyListener::Release):
(WebFramePolicyListener::use):
(WebFramePolicyListener::download):
(WebFramePolicyListener::ignore):
(WebFramePolicyListener::continueSubmit):
* WebFramePolicyListener.h:
* WebGeolocationPolicyListener.cpp:
(WebGeolocationPolicyListener::QueryInterface):
(WebGeolocationPolicyListener::AddRef):
(WebGeolocationPolicyListener::Release):
(WebGeolocationPolicyListener::allow):
(WebGeolocationPolicyListener::deny):
* WebGeolocationPolicyListener.h:
* WebGeolocationPosition.cpp:
(WebGeolocationPosition::createInstance):
(WebGeolocationPosition::WebGeolocationPosition):
(WebGeolocationPosition::~WebGeolocationPosition):
(WebGeolocationPosition::QueryInterface):
* WebGeolocationPosition.h:
(WebGeolocationPosition::impl):
* WebHTMLRepresentation.cpp:
(WebHTMLRepresentation::WebHTMLRepresentation):
(WebHTMLRepresentation::~WebHTMLRepresentation):
(WebHTMLRepresentation::QueryInterface):
(WebHTMLRepresentation::AddRef):
(WebHTMLRepresentation::Release):
(WebHTMLRepresentation::supportedMIMETypes):
(WebHTMLRepresentation::supportedNonImageMIMETypes):
(WebHTMLRepresentation::supportedImageMIMETypes):
(WebHTMLRepresentation::attributedStringFromDOMNodes):
(WebHTMLRepresentation::elementWithName):
(WebHTMLRepresentation::elementDoesAutoComplete):
(WebHTMLRepresentation::elementIsPassword):
(WebHTMLRepresentation::formForElement):
(WebHTMLRepresentation::currentForm):
(WebHTMLRepresentation::controlsInForm):
(WebHTMLRepresentation::deprecatedSearchForLabels):
(WebHTMLRepresentation::matchLabels):
(WebHTMLRepresentation::searchForLabels):
(WebHTMLRepresentation::setDataSource):
(WebHTMLRepresentation::receivedData):
(WebHTMLRepresentation::receivedError):
(WebHTMLRepresentation::finishedLoadingWithDataSource):
(WebHTMLRepresentation::canProvideDocumentSource):
(WebHTMLRepresentation::documentSource):
(WebHTMLRepresentation::title):
* WebHTMLRepresentation.h:
* WebHistory.cpp:
(WebHistory::WebHistory):
(WebHistory::QueryInterface):
(WebHistory::AddRef):
(WebHistory::Release):
(WebHistory::sharedHistory):
(WebHistory::optionalSharedHistory):
(WebHistory::setOptionalSharedHistory):
(WebHistory::unused1):
(WebHistory::unused2):
(WebHistory::addItems):
(WebHistory::removeItems):
(WebHistory::removeAllItems):
(WebHistory::orderedLastVisitedDays):
(WebHistory::orderedItemsLastVisitedOnDay):
(WebHistory::allItems):
(WebHistory::removeAllVisitedLinks):
(WebHistory::setHistoryItemLimit):
(WebHistory::historyItemLimit):
(WebHistory::setHistoryAgeInDaysLimit):
(WebHistory::historyAgeInDaysLimit):
(WebHistory::visitedURL):
(WebHistory::itemForURL):
* WebHistory.h:
* WebHistoryItem.cpp:
(historyItemWrappers):
(WebHistoryItem::WebHistoryItem):
(WebHistoryItem::initFromDictionaryRepresentation):
(WebHistoryItem::dictionaryRepresentation):
(WebHistoryItem::hasURLString):
(WebHistoryItem::visitCount):
(WebHistoryItem::setVisitCount):
(WebHistoryItem::mergeAutoCompleteHints):
(WebHistoryItem::setLastVisitedTimeInterval):
(WebHistoryItem::setTitle):
(WebHistoryItem::RSSFeedReferrer):
(WebHistoryItem::setRSSFeedReferrer):
(WebHistoryItem::hasPageCache):
(WebHistoryItem::setHasPageCache):
(WebHistoryItem::target):
(WebHistoryItem::isTargetItem):
(WebHistoryItem::children):
(WebHistoryItem::lastVisitWasFailure):
(WebHistoryItem::setLastVisitWasFailure):
(WebHistoryItem::lastVisitWasHTTPNonGet):
(WebHistoryItem::setLastVisitWasHTTPNonGet):
(WebHistoryItem::redirectURLs):
(WebHistoryItem::visitedWithTitle):
(WebHistoryItem::getDailyVisitCounts):
(WebHistoryItem::getWeeklyVisitCounts):
(WebHistoryItem::recordInitialVisit):
(WebHistoryItem::QueryInterface):
(WebHistoryItem::AddRef):
(WebHistoryItem::Release):
(WebHistoryItem::initWithURLString):
(WebHistoryItem::originalURLString):
(WebHistoryItem::URLString):
(WebHistoryItem::title):
(WebHistoryItem::lastVisitedTimeInterval):
(WebHistoryItem::setAlternateTitle):
(WebHistoryItem::alternateTitle):
(WebHistoryItem::icon):
* WebHistoryItem.h:
* WebIconDatabase.cpp:
(WebIconDatabase::WebIconDatabase):
(WebIconDatabase::QueryInterface):
(WebIconDatabase::AddRef):
(WebIconDatabase::Release):
(WebIconDatabase::sharedIconDatabase):
(WebIconDatabase::iconForURL):
(WebIconDatabase::defaultIconWithSize):
(WebIconDatabase::retainIconForURL):
(WebIconDatabase::releaseIconForURL):
(WebIconDatabase::removeAllIcons):
(WebIconDatabase::delayDatabaseCleanup):
(WebIconDatabase::allowDatabaseCleanup):
(WebIconDatabase::iconURLForURL):
(WebIconDatabase::isEnabled):
(WebIconDatabase::setEnabled):
(WebIconDatabase::hasIconForURL):
* WebIconDatabase.h:
* WebInspector.cpp:
(WebInspector::createInstance):
(WebInspector::WebInspector):
(WebInspector::frontendClient):
(WebInspector::webViewClosed):
(WebInspector::QueryInterface):
(WebInspector::AddRef):
(WebInspector::Release):
(WebInspector::show):
(WebInspector::showConsole):
(WebInspector::unused1):
(WebInspector::close):
(WebInspector::attach):
(WebInspector::detach):
(WebInspector::isDebuggingJavaScript):
(WebInspector::toggleDebuggingJavaScript):
(WebInspector::isProfilingJavaScript):
(WebInspector::toggleProfilingJavaScript):
(WebInspector::isJavaScriptProfilingEnabled):
(WebInspector::setJavaScriptProfilingEnabled):
(WebInspector::evaluateInFrontend):
(WebInspector::isTimelineProfilingEnabled):
(WebInspector::setTimelineProfilingEnabled):
* WebInspector.h:
* WebJavaScriptCollector.cpp:
(WebJavaScriptCollector::WebJavaScriptCollector):
(WebJavaScriptCollector::QueryInterface):
(WebJavaScriptCollector::AddRef):
(WebJavaScriptCollector::collect):
(WebJavaScriptCollector::collectOnAlternateThread):
(WebJavaScriptCollector::objectCount):
* WebJavaScriptCollector.h:
* WebKitCOMAPI.cpp:
(classFactory):
(WebKitCreateInstance):
* WebKitCOMAPI.h:
* WebKitClassFactory.cpp:
(WebKitClassFactory::WebKitClassFactory):
(WebKitClassFactory::~WebKitClassFactory):
(WebKitClassFactory::QueryInterface):
(WebKitClassFactory::AddRef):
(leakRefFromCreateInstance):
(WebKitClassFactory::CreateInstance):
* WebKitClassFactory.h:
* WebKitDLL.cpp:
* WebKitMessageLoop.cpp:
* WebKitMessageLoop.h:
* WebKitStatistics.cpp:
* WebKitStatistics.h:
* WebMutableURLRequest.cpp:
* WebMutableURLRequest.h:
* WebNavigationData.cpp:
* WebNavigationData.h:
* WebNotification.cpp:
* WebNotification.h:
* WebNotificationCenter.cpp:
* WebNotificationCenter.h:
* WebPreferences.cpp:
* WebPreferences.h:
* WebResource.cpp:
* WebResource.h:
* WebScriptObject.cpp:
* WebScriptObject.h:
* WebScriptWorld.cpp:
* WebScriptWorld.h:
* WebSecurityOrigin.cpp:
* WebSecurityOrigin.h:
* WebSerializedJSValue.cpp:
* WebSerializedJSValue.h:
* WebTextRenderer.cpp:
* WebTextRenderer.h:
* WebURLAuthenticationChallenge.cpp:
* WebURLAuthenticationChallenge.h:
* WebURLAuthenticationChallengeSender.cpp:
* WebURLAuthenticationChallengeSender.h:
* WebURLAuthenticationChallengeSenderCFNet.cpp:
* WebURLCredential.cpp:
* WebURLCredential.h:
* WebURLProtectionSpace.cpp:
* WebURLProtectionSpace.h:
* WebURLResponse.cpp:
* WebURLResponse.h:
* WebUserContentURLPattern.cpp:
* WebUserContentURLPattern.h:
* WebView.cpp:
* WebView.h:
* WebWorkersPrivate.cpp:
* WebWorkersPrivate.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188662 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAdd CSS will-change to the feature list
simon.fraser@apple.com [Wed, 19 Aug 2015 23:43:54 +0000 (23:43 +0000)]
Add CSS will-change to the feature list
https://bugs.webkit.org/show_bug.cgi?id=148199

Reviewed by Dean Jackson.

* features.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188661 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemove ENABLE_WEBVTT_REGIONS
eric.carlson@apple.com [Wed, 19 Aug 2015 23:14:49 +0000 (23:14 +0000)]
Remove ENABLE_WEBVTT_REGIONS
https://bugs.webkit.org/show_bug.cgi?id=148184

Reviewed by Jer Noble.

* Configurations/FeatureDefines.xcconfig: Remove ENABLE_WEBVTT_REGIONS.
Source/WebCore:

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::textTrackRemoveCue):
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlTextTrackContainerElement::updateDisplay):
* html/track/InbandGenericTextTrack.cpp:
(WebCore::InbandGenericTextTrack::newCuesParsed):
(WebCore::InbandGenericTextTrack::newRegionsParsed):
(WebCore::InbandGenericTextTrack::fileFailedToParse):
* html/track/InbandGenericTextTrack.h:
* html/track/InbandWebVTTTextTrack.cpp:
(WebCore::InbandWebVTTTextTrack::newCuesParsed):
(WebCore::InbandWebVTTTextTrack::newRegionsParsed):
(WebCore::InbandWebVTTTextTrack::fileFailedToParse):
* html/track/InbandWebVTTTextTrack.h:
* html/track/LoadableTextTrack.cpp:
(WebCore::LoadableTextTrack::cueLoadingCompleted):
(WebCore::LoadableTextTrack::newRegionsAvailable):
(WebCore::LoadableTextTrack::id):
* html/track/LoadableTextTrack.h:
* html/track/TextTrack.cpp:
(WebCore::TextTrack::TextTrack):
(WebCore::TextTrack::~TextTrack):
(WebCore::TextTrack::removeCue):
(WebCore::TextTrack::ensureVTTRegionList):
(WebCore::TextTrack::removeRegion):
(WebCore::TextTrack::cueWillChange):
* html/track/TextTrack.h:
* html/track/TextTrack.idl:
* html/track/TextTrackCue.cpp:
* html/track/VTTCue.cpp:
(WebCore::VTTCueBox::applyCSSProperties):
(WebCore::VTTCue::createCueRenderingTree):
(WebCore::VTTCue::setRegionId):
(WebCore::VTTCue::notifyRegionWhenRemovingDisplayTree):
(WebCore::VTTCue::setIsActive):
(WebCore::VTTCue::removeDisplayTree):
(WebCore::VTTCue::settingName):
(WebCore::VTTCue::setCueSettings):
(WebCore::VTTCue::getCSSAlignment):
* html/track/VTTCue.h:
(WebCore::VTTCue::regionId):
* html/track/VTTCue.idl:
* html/track/VTTRegion.cpp:
* html/track/VTTRegion.h:
* html/track/VTTRegion.idl:
* html/track/VTTRegionList.cpp:
* html/track/VTTRegionList.h:
* html/track/VTTRegionList.idl:
* html/track/WebVTTParser.cpp:
(WebCore::WebVTTParser::parseFloatPercentageValue):
(WebCore::WebVTTParser::parseFloatPercentageValuePair):
(WebCore::WebVTTParser::WebVTTParser):
(WebCore::WebVTTParser::getNewCues):
(WebCore::WebVTTParser::getNewRegions):
(WebCore::WebVTTParser::parseFileHeader):
(WebCore::WebVTTParser::parse):
(WebCore::WebVTTParser::collectMetadataHeader):
(WebCore::WebVTTParser::collectCueId):
(WebCore::WebVTTParser::resetCueValues):
(WebCore::WebVTTParser::createNewRegion):
(WebCore::WebVTTParser::collectTimeStamp):
* html/track/WebVTTParser.h:
(WebCore::WebVTTParserClient::~WebVTTParserClient):
* loader/TextTrackLoader.cpp:
(WebCore::TextTrackLoader::newCuesParsed):
(WebCore::TextTrackLoader::newRegionsParsed):
(WebCore::TextTrackLoader::fileFailedToParse):
(WebCore::TextTrackLoader::getNewCues):
(WebCore::TextTrackLoader::getNewRegions):
* loader/TextTrackLoader.h:
* rendering/RenderVTTCue.cpp:
(WebCore::RenderVTTCue::layout):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188660 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoScrollable area container is not properly cleared when page is going into the PageCache
bfulgham@apple.com [Wed, 19 Aug 2015 23:06:03 +0000 (23:06 +0000)]
Scrollable area container is not properly cleared when page is going into the PageCache
https://bugs.webkit.org/show_bug.cgi?id=148182
<rdar://problem/21969170>

Reviewed by Dean Jackson.

Must be tested manually going back and forth in history several times.

* history/CachedFrame.cpp:
(WebCore::CachedFrame::CachedFrame): Clear the cached ScrollableAreas from the FrameView.
* page/FrameView.cpp:
(WebCore::FrameView::clearScrollableAreas): Added.
* page/FrameView.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188659 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agooutline-style: auto leaves bits behind on strava's flyby view.
zalan@apple.com [Wed, 19 Aug 2015 23:04:52 +0000 (23:04 +0000)]
outline-style: auto leaves bits behind on strava's flyby view.
https://bugs.webkit.org/show_bug.cgi?id=148178

Reviewed by Simon Fraser.

RenderView::m_maximalOutlineSize should include outline-offset.

Source/WebCore:

Test: fast/repaint/outline-auto-with-width-less-than-focus-ring-width-and-offset-repaint.html

* rendering/RenderElement.cpp:
(WebCore::RenderElement::computeMaxOutlineSize):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::adjustRectForOutlineAndShadow):

LayoutTests:

* fast/repaint/outline-auto-with-width-less-than-focus-ring-width-and-offset-repaint-expected.txt: Added.
* fast/repaint/outline-auto-with-width-less-than-focus-ring-width-and-offset-repaint.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188658 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoFix errors on bots.
andersca@apple.com [Wed, 19 Aug 2015 22:33:25 +0000 (22:33 +0000)]
Fix errors on bots.

Ask the backend to cleanup and terminate

* Modules/webdatabase/SQLTransaction.cpp:
(WebCore::SQLTransaction::computeNextStateAndCleanupIfNeeded):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188657 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Unexpected node preview format for an element with newlines in classNa...
commit-queue@webkit.org [Wed, 19 Aug 2015 22:33:12 +0000 (22:33 +0000)]
Web Inspector: Unexpected node preview format for an element with newlines in className attribute
https://bugs.webkit.org/show_bug.cgi?id=148192

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-08-19
Reviewed by Brian Burg.

* inspector/InjectedScriptSource.js:
(InjectedScript.prototype._nodePreview):
Replace whitespace blocks with single spaces to produce a simpler class string for previews.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188656 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Uncaught exception in inspector page while handling event DOMStorage...
commit-queue@webkit.org [Wed, 19 Aug 2015 22:30:04 +0000 (22:30 +0000)]
Web Inspector: Uncaught exception in inspector page while handling event DOMStorage.domStorageItemRemoved
https://bugs.webkit.org/show_bug.cgi?id=148191

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-08-19
Reviewed by Brian Burg.

* UserInterface/Controllers/StorageManager.js:
(WebInspector.StorageManager.prototype.itemsCleared):
(WebInspector.StorageManager.prototype.itemRemoved):
(WebInspector.StorageManager.prototype.itemAdded):
(WebInspector.StorageManager.prototype.itemUpdated):
Check if the DOMStorage for the identifier actually exists.
Due to how the backend emits events, the page may have already
navigated when we get a storage update for the previous page.
In that case, we don't want to create a DOMStorage for the
previous page if it doesn't exist.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188655 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoClean up our CSS files (e.g. remove prefixes)
dino@apple.com [Wed, 19 Aug 2015 22:20:32 +0000 (22:20 +0000)]
Clean up our CSS files (e.g. remove prefixes)
https://bugs.webkit.org/show_bug.cgi?id=148194
<rdar://problem/22351034>

Reviewed by Brent Fulgham.

A lot of our internal CSS was still using prefixed forms of properties.
As I started cleaning those up, I noticed lots of small things
like missing semicolons and whitespace.

No change in behaviour for testing.

* css/fullscreen.css:
* css/html.css:
* css/mathml.css:
* css/mediaControls.css:
* css/mediaControlsGtk.css:
* css/plugIns.css:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188653 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoCleanup outline-style: auto painting.
zalan@apple.com [Wed, 19 Aug 2015 22:09:27 +0000 (22:09 +0000)]
Cleanup outline-style: auto painting.
https://bugs.webkit.org/show_bug.cgi?id=148159

Reviewed by Simon Fraser.

Old platform style required the focus ring to be painted with an offset. (https://trac.webkit.org/r5358)
(and it has the side effect of growing outline-width adds further, unwanted offset)
Default css for :focus is adjusted to remove this offset by setting the outline-width to 5px
and the outline-offset to -2px. (https://trac.webkit.org/r13639)
This patch removes both the old logic and the workaround for getting rid of the unwanted offset.

Source/WebCore:

Test: fast/repaint/outline-auto-with-default-width-and-offset-repaint.html

* css/html.css:
(:focus):
(input:focus, textarea:focus, isindex:focus, keygen:focus, select:focus): Deleted.
* platform/graphics/mac/GraphicsContextMac.mm:
(WebCore::GraphicsContext::drawFocusRing):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::computeMaxOutlineSize):
(WebCore::RenderElement::paintFocusRing):
(WebCore::RenderElement::paintOutline): Short circuit painting outline when painting is disabled. It
only change behaviour for non-auto outlines -which are anyway not supposed to be painted when painting is disabled.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::adjustRectForOutlineAndShadow):
* rendering/RenderTheme.h:
(WebCore::RenderTheme::platformFocusRingWidth):
(WebCore::RenderTheme::platformFocusRingMaxWidth): Deleted.

LayoutTests:

* fast/repaint/outline-auto-with-default-width-and-offset-repaint-expected.txt: Added.
* fast/repaint/outline-auto-with-default-width-and-offset-repaint.html: Copied from LayoutTests/fast/repaint/outline-with2px-auto-repaint-rect.html.
* fast/repaint/outline-with1px-auto-repaint-rect.html:
* fast/repaint/outline-with2px-auto-repaint-rect.html:
* fast/repaint/outline-with3px-auto-repaint-rect.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188652 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoCrash @ bmalloc::Environment::computeIsBmallocEnabled
ggaren@apple.com [Wed, 19 Aug 2015 21:31:30 +0000 (21:31 +0000)]
Crash @ bmalloc::Environment::computeIsBmallocEnabled
https://bugs.webkit.org/show_bug.cgi?id=148183

Reviewed by NOBODY Michael Saboff.

CrashTracer says we have some crashes beneath computeIsBmallocEnabled
dereferencing null in strstr. We null check getenv but not
_dyld_get_image_name, so deduction indicates that _dyld_get_image_name
must be returning null. _dyld_get_image_name isn't really documented,
so let's assume it can return null.

* bmalloc/Environment.cpp:
(bmalloc::isASanEnabled): Check _dyld_get_image_name's return value for
null because we can't prove it won't be null.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188651 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: use unprefixed CSS property 'filter' instead of '-webkit-filter'
bburg@apple.com [Wed, 19 Aug 2015 21:24:14 +0000 (21:24 +0000)]
Web Inspector: use unprefixed CSS property 'filter' instead of '-webkit-filter'
https://bugs.webkit.org/show_bug.cgi?id=148186

Reviewed by Dean Jackson.

* UserInterface/Views/BreakpointActionView.css:
(.breakpoint-action-remove-button:active):
* UserInterface/Views/CSSStyleDeclarationSection.css:
(.style-declaration-section:not(.invalid-selector) > .header > .icon.toggle-able:hover):
* UserInterface/Views/CSSStyleDeclarationTextEditor.css:
(.css-style-text-editor > .CodeMirror .CodeMirror-lines .invalid-warning-marker.clickable:hover):
(.css-style-text-editor > .CodeMirror .CodeMirror-lines .cubic-bezier-marker:hover):
(.css-style-text-editor > .CodeMirror .CodeMirror-lines .cubic-bezier-marker:active):
* UserInterface/Views/ChartDetailsSectionRow.css:
(body.window-inactive .details-section > .content > .group > .row.chart > .chart-content > .legend > .legend-item > label > input[type=checkbox]):
* UserInterface/Views/ChartDetailsSectionRow.js:
(WebInspector.ChartDetailsSectionRow.prototype._addCheckboxColorFilter):
* UserInterface/Views/NewTabContentView.css:
(.new-tab.tab.content-view > .tab-item.disabled):
(.new-tab.tab.content-view > .tab-item:not(.disabled):hover > .box):
(.new-tab.tab.content-view > .tab-item:not(.disabled):active > .box):
* UserInterface/Views/TimelineSidebarPanel.css:
(.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph):
(.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph:hover):
(.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph:active):
* UserInterface/Views/VisualStyleKeywordIconList.css:
(.visual-style-property-container.keyword-icon-list > .visual-style-property-value-container > .keyword-icon-list-container > .keyword-icon:not(.selected) > div):
* UserInterface/Views/VisualStyleSelectorSection.css:
(.details-section.visual-style-selector-section > .header > .controls > .visual-style-selector-section-add-rule):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188650 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAdd support for CheckWatchdogTimer as slow path in DFG and FTL.
mark.lam@apple.com [Wed, 19 Aug 2015 21:18:15 +0000 (21:18 +0000)]
Add support for CheckWatchdogTimer as slow path in DFG and FTL.
https://bugs.webkit.org/show_bug.cgi?id=147968

Reviewed by Michael Saboff.

Re-implement the DFG's CheckWatchdogTimer as a slow path instead of a speculation
check.  Since the watchdog timer can fire spuriously, this allows the code to
stay optimized if all we have are spurious fires.

Implement the equivalent slow path for CheckWatchdogTimer in the FTL.

The watchdog tests in ExecutionTimeLimitTest.cpp has already been updated in
https://bugs.webkit.org/show_bug.cgi?id=148125 to test for the FTL's watchdog
implementation.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::DFG::LowerDFGToLLVM::compileNode):
(JSC::FTL::DFG::LowerDFGToLLVM::compileMaterializeCreateActivation):
(JSC::FTL::DFG::LowerDFGToLLVM::compileCheckWatchdogTimer):
(JSC::FTL::DFG::LowerDFGToLLVM::isInlinableSize):

* jit/JIT.h:
* jit/JITInlines.h:
(JSC::JIT::callOperation):
* jit/JITOperations.cpp:
* jit/JITOperations.h:
- Changed operationHandleWatchdogTimer() to return an unused nullptr.  This
  allows me to reuse the existing DFG slow path generator mechanism.  I didn't
  think that operationHandleWatchdogTimer() was worth introducing a whole new set
  of machinery just so we can have a slow path that returns void.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188649 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAdd ability to save and restore JSC options.
mark.lam@apple.com [Wed, 19 Aug 2015 20:41:30 +0000 (20:41 +0000)]
Add ability to save and restore JSC options.
https://bugs.webkit.org/show_bug.cgi?id=148125

Reviewed by Saam Barati.

* API/tests/ExecutionTimeLimitTest.cpp:
(testExecutionTimeLimit):
- Employ the new options getter/setter to run watchdog tests for each of the
  execution engine tiers.
- Also altered the test scripts to be in a function instead of global code.
  This is one of 2 changes needed to give them an opportunity to be FTL compiled.
  The other is to add support for compiling CheckWatchdogTimer in the FTL (which
  will be addressed in a separate patch).

* jsc.cpp:
(CommandLine::parseArguments):
* runtime/Options.cpp:
(JSC::parse):
- Add the ability to clear a string option with a nullptr value.
  This is needed to restore a default string option value which may be null.

(JSC::OptionRange::init):
- Add the ability to clear a range option with a null value.
  This is needed to restore a default range option value which may be null.

(JSC::Options::initialize):
(JSC::Options::dumpOptionsIfNeeded):
- Factor code to dump options out to dumpOptionsIfNeeded() since we will need
  that logic elsewhere.

(JSC::Options::setOptions):
- Parse an options string and set each of the specified options.

(JSC::Options::dumpAllOptions):
(JSC::Options::dumpAllOptionsInALine):
(JSC::Options::dumpOption):
(JSC::Option::dump):
- Refactored so that the underlying dumper dumps to a StringBuilder instead of
  stderr.  This lets us reuse this code to serialize all the options into a
  single string for dumpAllOptionsInALine().

* runtime/Options.h:
(JSC::OptionRange::rangeString):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188648 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoSupport CSS filters without webkit prefix
dino@apple.com [Wed, 19 Aug 2015 20:22:50 +0000 (20:22 +0000)]
Support CSS filters without webkit prefix
https://bugs.webkit.org/show_bug.cgi?id=148138
<rdar://problem/22331434>

Reviewed by Sam Weinig.

Source/WebCore:

Add support for the un-prefixed form of the CSS filter property.
This was straightforward for the general case on HTML content.
It was a bit more tricky on SVG content, where there already
was an existing "filter" property/attribute. The parsing
code is now shared between SVG and HTML, as is the
computed style output.

Covered by updating the existing tests, and
adding one new test: css3/filters/unprefixed.html

* css/CSSComputedStyleDeclaration.cpp: Rename CSSPropertyWebkitFilter to CSSPropertyFilter.
(WebCore::isLayoutDependent):
(WebCore::ComputedStyleExtractor::propertyValue):

* css/CSSFilterImageValue.cpp:
(WebCore::CSSFilterImageValue::customCSSText): Use "filter(" as the prefix.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue): Rename CSSPropertyWebkitFilter to CSSPropertyFilter.
(WebCore::CSSParser::isGeneratedImageValue): Add support for "filter()".
(WebCore::CSSParser::parseGeneratedImage): Ditto.
(WebCore::CSSParser::parseBuiltinFilterArguments):

* css/CSSPropertyNames.in: Add filter. Make -webkit-filter an alias.

* css/SVGCSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::svgPropertyValue): Deleted.

* page/animation/CSSPropertyAnimation.cpp: Rename CSSPropertyWebkitFilter to CSSPropertyFilter.
(WebCore::PropertyWrapperAcceleratedFilter::PropertyWrapperAcceleratedFilter):
* page/animation/KeyframeAnimation.cpp: Ditto.
(WebCore::KeyframeAnimation::checkForMatchingFilterFunctionLists):

* platform/graphics/GraphicsLayer.cpp: Rename AnimatedPropertyWebkitFilter to AnimatedPropertyFilter.
(WebCore::GraphicsLayer::validateFilterOperations):
* platform/graphics/GraphicsLayerClient.h: Ditto.
* platform/graphics/ca/GraphicsLayerCA.cpp: Ditto.
(WebCore::GraphicsLayerCA::moveOrCopyAnimations):
(WebCore::GraphicsLayerCA::addAnimation):
(WebCore::GraphicsLayerCA::createAnimationFromKeyframes):
(WebCore::GraphicsLayerCA::createFilterAnimationsFromKeyframes):

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateOrRemoveFilterClients): SVG manages its own filter resources,
so we shouldn't add a layer that has an SVG root to the filter clients.

* rendering/RenderLayerBacking.cpp: Renaming.
(WebCore::RenderLayerBacking::startAnimation):
(WebCore::RenderLayerBacking::startTransition):
(WebCore::RenderLayerBacking::graphicsLayerToCSSProperty):
(WebCore::RenderLayerBacking::cssToGraphicsLayerProperty):
* rendering/RenderLayerCompositor.cpp: Ditto.
(WebCore::RenderLayerCompositor::requiresCompositingForAnimation):

* rendering/style/SVGRenderStyle.h: Remove the SVG filter style.
(WebCore::SVGRenderStyle::isolatesBlending): No need to check for hasFilter().
(WebCore::SVGRenderStyle::initialFilterResource): Deleted.
(WebCore::SVGRenderStyle::setFilterResource): Deleted.
(WebCore::SVGRenderStyle::filterResource): Deleted.
(WebCore::SVGRenderStyle::hasFilter): Deleted.

* rendering/style/SVGRenderStyleDefs.cpp: Remove the filter resource.
(WebCore::StyleResourceData::StyleResourceData): Deleted.
(WebCore::StyleResourceData::operator==): Deleted.
* rendering/style/SVGRenderStyleDefs.h:

* rendering/style/WillChangeData.cpp: Renaming.
(WebCore::propertyCreatesStackingContext):
(WebCore::propertyTriggersCompositing):

* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::isolatesBlending): Since SVGRenderStyle no longer checks
hasFilter() in its isolatesBlending(), we need to do it here.

* rendering/svg/SVGRenderingContext.cpp:
(WebCore::SVGRenderingContext::prepareToRenderSVGContent):

* rendering/svg/SVGRenderTreeAsText.cpp:
(WebCore::writeResources): Dump from the CSS style value.
* rendering/svg/SVGResources.cpp: Ditto.
(WebCore::SVGResources::buildCachedResources):
* rendering/svg/SVGResources.h:
* rendering/svg/SVGResourcesCache.cpp:
(WebCore::SVGResourcesCache::addResourcesFromRenderer):

* platform/graphics/texmap/TextureMapperLayer.cpp: Renaming.
* platform/graphics/texmap/TextureMapperAnimation.cpp:
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:

Source/WebKit2:

Rename WebkitFilter to Filter.

* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(IPC::ArgumentCoder<TextureMapperAnimation>::encode):
(IPC::ArgumentCoder<TextureMapperAnimation>::decode):

LayoutTests:

Globally change -webkit-filter to filter in as many places as
possible. Then add a new test that makes sure the prefixed
and unprefixed value resolve to the same computed style.

* animations/resources/animation-test-helpers.js:
(parseCSSImage):
* css3/filters/backdrop/effect-hw-expected.html:
* css3/filters/effect-blur-hw.html:
* css3/filters/effect-blur.html:
* css3/filters/effect-brightness-clamping-hw.html:
* css3/filters/effect-brightness-clamping.html:
* css3/filters/effect-brightness-hw.html:
* css3/filters/effect-brightness.html:
* css3/filters/effect-combined-hw.html:
* css3/filters/effect-combined.html:
* css3/filters/effect-contrast-hw.html:
* css3/filters/effect-contrast.html:
* css3/filters/effect-drop-shadow-hw.html:
* css3/filters/effect-drop-shadow.html:
* css3/filters/effect-grayscale-hw.html:
* css3/filters/effect-grayscale.html:
* css3/filters/effect-hue-rotate-hw.html:
* css3/filters/effect-hue-rotate.html:
* css3/filters/effect-invert-hw.html:
* css3/filters/effect-invert.html:
* css3/filters/effect-opacity-hw.html:
* css3/filters/effect-opacity.html:
* css3/filters/effect-reference-composite-hw.html:
* css3/filters/effect-reference-composite.html:
* css3/filters/effect-reference-hw.html:
* css3/filters/effect-reference-ordering-hw.html:
* css3/filters/effect-reference-ordering.html:
* css3/filters/effect-reference.html:
* css3/filters/effect-saturate-hw.html:
* css3/filters/effect-saturate.html:
* css3/filters/effect-sepia-hw.html:
* css3/filters/effect-sepia.html:
* css3/filters/filter-property-computed-style-expected.txt:
* css3/filters/filter-property-parsing-expected.txt:
* css3/filters/script-tests/filter-property-computed-style.js:
(testComputedFilterRule):
* css3/filters/script-tests/filter-property-parsing.js:
(testFilterRule):
* css3/filters/script-tests/unprefixed.js: Copied from LayoutTests/css3/filters/script-tests/filter-property-computed-style.js.
(testComputedFilterRule):
* css3/filters/unprefixed-expected.txt: Copied from LayoutTests/css3/filters/filter-property-computed-style-expected.txt.
* css3/filters/unprefixed.html: Added.
* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* fast/filter-image/clipped-filter-expected.html:
* fast/filter-image/clipped-filter.html:
* fast/filter-image/filter-image-animation-expected.txt:
* fast/filter-image/filter-image-animation.html:
* fast/filter-image/filter-image-blur.html:
* fast/filter-image/filter-image-expected.html:
* fast/filter-image/filter-image-svg.html:
* fast/filter-image/filter-image.html:
* fast/filter-image/parse-filter-image-expected.txt:
* fast/filter-image/parse-filter-image.html:
* svg/css/getComputedStyle-basic-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188647 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMore work on simplifying the WebSQL code
andersca@apple.com [Wed, 19 Aug 2015 20:19:28 +0000 (20:19 +0000)]
More work on simplifying the WebSQL code
https://bugs.webkit.org/show_bug.cgi?id=148145

Reviewed by Tim Horton.

Eliminate SQLTransaction::sendToBackendState.

* Modules/webdatabase/SQLTransaction.cpp:
(WebCore::SQLTransaction::stateFunctionFor):
Change sendToBackendState to unreachableState,

(WebCore::SQLTransaction::deliverTransactionCallback):
Call deliverTransactionErrorCallback directly and schedule RunStatements on the backend.

(WebCore::SQLTransaction::deliverTransactionErrorCallback):
Schedule CleanupAfterTransactionErrorCallback on the backend.

(WebCore::SQLTransaction::deliverStatementCallback):
Fold nextStateForTransactionError into here. Schedule backend states explicitly.

(WebCore::SQLTransaction::deliverQuotaIncreaseCallback):
Schedule RunStatements on the backend.

(WebCore::SQLTransaction::deliverSuccessCallback):
Schedule CleanupAndTerminate on the backend.

(WebCore::SQLTransaction::computeNextStateAndCleanupIfNeeded):
The return value of this function isn't used to make it return void.

(WebCore::SQLTransaction::nextStateForTransactionError): Deleted.
Remove this, it's been folded into deliverStatementCallback.

(WebCore::SQLTransaction::sendToBackendState): Deleted.
Get rid of this.

* Modules/webdatabase/SQLTransaction.h:
Update member functions.

* Modules/webdatabase/SQLTransactionBackend.cpp:
(WebCore::SQLTransactionBackend::openTransactionAndPreflight):
Just call runStatements() directly.

(WebCore::SQLTransactionBackend::cleanupAfterTransactionErrorCallback):
Just call cleanupAndTerminate() directly.

(WebCore::SQLTransactionBackend::shouldPerformWhilePaused): Deleted.
Get rid of an iOS member function that's no longer used.

* Modules/webdatabase/SQLTransactionBackend.h:
Remove member function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188646 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Uncaught Exception while handling event DOM.pseudoElementRemoved reloa...
commit-queue@webkit.org [Wed, 19 Aug 2015 19:32:12 +0000 (19:32 +0000)]
Web Inspector: Uncaught Exception while handling event DOM.pseudoElementRemoved reloading twitter pages
https://bugs.webkit.org/show_bug.cgi?id=148180

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-08-19
Reviewed by Brian Burg.

* UserInterface/Views/DOMTreeElement.js:
(WebInspector.DOMTreeElement.prototype._visibleChildren):
DOMNode.children can be null before it is filled in.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188645 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: InspectorTest should be a subclass of TestHarness
bburg@apple.com [Wed, 19 Aug 2015 19:09:34 +0000 (19:09 +0000)]
Web Inspector: InspectorTest should be a subclass of TestHarness
https://bugs.webkit.org/show_bug.cgi?id=148079

Reviewed by Timothy Hatcher.

Source/WebInspectorUI:

Extract the frontend test harness into a subclass. Delete some code that
is now redundant. Sprinkle some ES6 syntax where possible.

Rewrite the code that redirects the Inspector page's console messages to
the test page, since it didn't appear to work any more.

* UserInterface/Test.html: Add debug options here, and a wiki link.
* UserInterface/Test/FrontendTestHarness.js: Added.
(FrontendTestHarness):
(FrontendTestHarness.prototype.completeTest):
(FrontendTestHarness.prototype.addResult):
(FrontendTestHarness.prototype.debugLog):
(FrontendTestHarness.prototype.evaluateInPage):
(FrontendTestHarness.prototype.expectNoError):
(FrontendTestHarness.prototype.testPageDidLoad):
(FrontendTestHarness.prototype.reloadPage):
(FrontendTestHarness.prototype.redirectConsoleToTestOutput.createProxyConsoleHandler):
(FrontendTestHarness.prototype.redirectConsoleToTestOutput):
(FrontendTestHarness.prototype.reportUncaughtException):
(FrontendTestHarness.prototype._resendResults):
* UserInterface/Test/Test.js:
(WebInspector.loaded):
(WebInspector.UIString): Arrow it.
(WebInspector.updateDockedState): Arrow it.
(WebInspector.updateDockingAvailability): Arrow it.
(InspectorTest.EventDispatcher.prototype.dispatchEvent): Deleted.
(InspectorTest.EventDispatcher): Deleted.
(InspectorTest.log): Deleted.
(InspectorTest.assert): Deleted.
(InspectorTest.expectThat): Deleted.
(InspectorTest.debugLog): Deleted.
(InspectorTest.expectNoError): Deleted.
(InspectorTest.completeTest): Deleted.
(InspectorTest.evaluateInPage): Deleted.
(InspectorTest.addResult): Deleted.
(InspectorTest._resendResults): Deleted.
(InspectorTest.testPageDidLoad): Deleted.
(InspectorTest.reloadPage): Deleted.
(InspectorTest.reportUncaughtException): Deleted.
* UserInterface/Test/TestSuite.js: Clean an unnecessary self = this.
(SyncTestSuite.prototype.runTestCases):
(SyncTestSuite):
* UserInterface/TestStub.html: Add matching link to wiki.

LayoutTests:

Rename InspectorTestProxy to TestPage. Update some code style in
the harness script files to be consistent.

* http/tests/inspector/debugger/debugger-test.js:
* http/tests/inspector/dom/shapes-test.js:
* http/tests/inspector/replay/replay-test.js:
* http/tests/inspector/resources/inspector-test.js:
(TestPage.registerInitializer):
(runTest.runInitializationMethodsInFrontend):
(runTest.runTestMethodInFrontend):
(runTest):
(TestPage.completeTest):
(TestPage.debugLog):
(TestPage.addResult):
(TestPage.reportUncaughtException):
(InspectorTestProxy.registerInitializer): Deleted.
(InspectorTestProxy.completeTest): Deleted.
(InspectorTestProxy.debugLog): Deleted.
(InspectorTestProxy.addResult): Deleted.
(InspectorTestProxy.reportUncaughtException): Deleted.
* inspector/debugger/breakpoint-action-eval.html:
* inspector/debugger/resources/break-on-exception-tests.js:
* inspector/debugger/resources/script-for-breakpoint-actions.js:
(breakpointActions):
* inspector/debugger/search-scripts.html:
* inspector/replay/window-navigator-plugins-memoized.html:
* inspector/timeline/debugger-paused-while-recording.html:
* inspector/timeline/exception-in-injected-script-while-recording.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188644 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoBuild TestWTF on Mac with CMake.
commit-queue@webkit.org [Wed, 19 Aug 2015 18:37:02 +0000 (18:37 +0000)]
Build TestWTF on Mac with CMake.
https://bugs.webkit.org/show_bug.cgi?id=147972

Patch by Alex Christensen <achristensen@webkit.org> on 2015-08-19
Reviewed by Tim Horton.

.:

* Source/cmake/OptionsMac.cmake:
Enable API tests in Mac's CMake build.

Source/WebKit2:

* PlatformMac.cmake:
Make more forwarding headers.

Tools:

TestWTF only depends on gtest and WTF instead of TestWebKitAPi depending on all of WebKit.
Now I can run the WTF API tests after a few seconds of building instead of waiting for all of WebKit to build.

* TestWebKitAPI/CMakeLists.txt:
Added WTF as a dependency for platforms that do not have ForwardingHeadersForTestWebKitAPI_NAME.
WTF was already a library that was linked, but having at least one item makes the syntax of add_dependencies work.
* TestWebKitAPI/PlatformMac.cmake: Added.
* TestWebKitAPI/config.h:
Postpone some build fixes until WebKit builds completely on Mac with CMake.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188643 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoReplace all uses of std::mutex/std::condition_variable with WTF::Lock/WTF::Condition
fpizlo@apple.com [Wed, 19 Aug 2015 18:18:19 +0000 (18:18 +0000)]
Replace all uses of std::mutex/std::condition_variable with WTF::Lock/WTF::Condition
https://bugs.webkit.org/show_bug.cgi?id=148140

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

* inspector/remote/RemoteInspector.h:
* inspector/remote/RemoteInspector.mm:
(Inspector::RemoteInspector::registerDebuggable):
(Inspector::RemoteInspector::unregisterDebuggable):
(Inspector::RemoteInspector::updateDebuggable):
(Inspector::RemoteInspector::updateDebuggableAutomaticInspectCandidate):
(Inspector::RemoteInspector::sendMessageToRemoteFrontend):
(Inspector::RemoteInspector::setupFailed):
(Inspector::RemoteInspector::setupCompleted):
(Inspector::RemoteInspector::start):
(Inspector::RemoteInspector::stop):
(Inspector::RemoteInspector::setupXPCConnectionIfNeeded):
(Inspector::RemoteInspector::setParentProcessInformation):
(Inspector::RemoteInspector::xpcConnectionReceivedMessage):
(Inspector::RemoteInspector::xpcConnectionFailed):
(Inspector::RemoteInspector::pushListingSoon):
(Inspector::RemoteInspector::receivedIndicateMessage):
(Inspector::RemoteInspector::receivedProxyApplicationSetupMessage):
* inspector/remote/RemoteInspectorXPCConnection.h:
* inspector/remote/RemoteInspectorXPCConnection.mm:
(Inspector::RemoteInspectorXPCConnection::close):
(Inspector::RemoteInspectorXPCConnection::closeFromMessage):
(Inspector::RemoteInspectorXPCConnection::deserializeMessage):
(Inspector::RemoteInspectorXPCConnection::handleEvent):

Source/WebCore:

No new tests because no new behavior.

* Modules/webaudio/AudioBufferSourceNode.cpp:
(WebCore::AudioBufferSourceNode::process):
(WebCore::AudioBufferSourceNode::setBuffer):
* Modules/webaudio/AudioBufferSourceNode.h:
* Modules/webaudio/AudioParamTimeline.cpp:
(WebCore::AudioParamTimeline::insertEvent):
(WebCore::AudioParamTimeline::cancelScheduledValues):
(WebCore::AudioParamTimeline::valueForContextTime):
(WebCore::AudioParamTimeline::valuesForTimeRange):
* Modules/webaudio/AudioParamTimeline.h:
* Modules/webaudio/ConvolverNode.cpp:
(WebCore::ConvolverNode::process):
(WebCore::ConvolverNode::reset):
(WebCore::ConvolverNode::setBuffer):
* Modules/webaudio/ConvolverNode.h:
* Modules/webaudio/MediaElementAudioSourceNode.cpp:
(WebCore::MediaElementAudioSourceNode::process):
* Modules/webaudio/MediaElementAudioSourceNode.h:
* Modules/webaudio/MediaStreamAudioSourceNode.cpp:
(WebCore::MediaStreamAudioSourceNode::setFormat):
(WebCore::MediaStreamAudioSourceNode::process):
* Modules/webaudio/MediaStreamAudioSourceNode.h:
* Modules/webaudio/OscillatorNode.cpp:
(WebCore::OscillatorNode::process):
(WebCore::OscillatorNode::setPeriodicWave):
* Modules/webaudio/OscillatorNode.h:
* Modules/webaudio/PannerNode.cpp:
(WebCore::PannerNode::process):
(WebCore::PannerNode::setPanningModel):
* Modules/webaudio/PannerNode.h:
* Modules/webaudio/WaveShaperProcessor.cpp:
(WebCore::WaveShaperProcessor::setCurve):
(WebCore::WaveShaperProcessor::setOversample):
(WebCore::WaveShaperProcessor::process):
* Modules/webaudio/WaveShaperProcessor.h:
* Modules/webdatabase/Database.cpp:
(WebCore::retrieveTextResultFromDatabase):
(WebCore::guidToVersionMap):
(WebCore::Database::Database):
(WebCore::Database::performOpenAndVerify):
(WebCore::Database::closeDatabase):
(WebCore::Database::getCachedVersion):
(WebCore::Database::setCachedVersion):
(WebCore::guidMutex): Deleted.
* Modules/webdatabase/DatabaseManager.cpp:
(WebCore::DatabaseManager::existingDatabaseContextFor):
(WebCore::DatabaseManager::registerDatabaseContext):
(WebCore::DatabaseManager::unregisterDatabaseContext):
(WebCore::DatabaseManager::didConstructDatabaseContext):
(WebCore::DatabaseManager::didDestructDatabaseContext):
(WebCore::DatabaseManager::addProposedDatabase):
(WebCore::DatabaseManager::removeProposedDatabase):
(WebCore::DatabaseManager::fullPathForDatabase):
(WebCore::DatabaseManager::detailsForNameAndOrigin):
* Modules/webdatabase/DatabaseManager.h:
* bindings/objc/DOMInternal.mm:
(getDOMWrapper):
(addDOMWrapper):
(removeDOMWrapper):
(wrapperCacheLock): Deleted.
* crypto/CryptoAlgorithmRegistry.cpp:
(WebCore::CryptoAlgorithmRegistry::singleton):
(WebCore::CryptoAlgorithmRegistry::CryptoAlgorithmRegistry):
(WebCore::CryptoAlgorithmRegistry::getIdentifierForName):
(WebCore::CryptoAlgorithmRegistry::nameForIdentifier):
(WebCore::CryptoAlgorithmRegistry::create):
(WebCore::CryptoAlgorithmRegistry::registerAlgorithm):
(WebCore::registryMutex): Deleted.
* inspector/WorkerDebuggerAgent.cpp:
(WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
(WebCore::WorkerDebuggerAgent::~WorkerDebuggerAgent):
(WebCore::WorkerDebuggerAgent::interruptAndDispatchInspectorCommands):
* page/WheelEventTestTrigger.cpp:
(WebCore::WheelEventTestTrigger::clearAllTestDeferrals):
(WebCore::WheelEventTestTrigger::setTestCallbackAndStartNotificationTimer):
(WebCore::WheelEventTestTrigger::deferTestsForReason):
(WebCore::WheelEventTestTrigger::removeTestDeferralForReason):
(WebCore::WheelEventTestTrigger::triggerTestTimerFired):
* page/WheelEventTestTrigger.h:
* page/scrolling/ScrollingThread.cpp:
(WebCore::ScrollingThread::dispatch):
(WebCore::ScrollingThread::createThreadIfNeeded):
(WebCore::ScrollingThread::dispatchFunctionsFromScrollingThread):
* page/scrolling/ScrollingThread.h:
* page/scrolling/mac/ScrollingThreadMac.mm:
(WebCore::ScrollingThread::initializeRunLoop):
* platform/audio/ReverbConvolver.cpp:
(WebCore::ReverbConvolver::~ReverbConvolver):
(WebCore::ReverbConvolver::backgroundThreadEntry):
(WebCore::ReverbConvolver::process):
(WebCore::ReverbConvolver::reset):
* platform/audio/ReverbConvolver.h:
* platform/ios/wak/WebCoreThreadRun.cpp:
* platform/mac/Language.mm:
(WebCore::preferredLanguages):
(+[WebLanguageChangeObserver languagePreferencesDidChange:]):
(WebCore::platformUserPreferredLanguages):
(WebCore::preferredLanguagesMutex): Deleted.
* platform/network/cf/LoaderRunLoopCF.cpp:
(WebCore::emptyPerform):
(WebCore::runLoaderThread):
(WebCore::loaderRunLoop):
(WebCore::loaderRunLoopMutex): Deleted.
(WebCore::loaderRunLoopConditionVariable): Deleted.
* platform/network/cf/SocketStreamHandleCFNet.cpp:
(WebCore::callOnMainThreadAndWait):
* platform/network/curl/SocketStreamHandle.h:
* platform/network/curl/SocketStreamHandleCurl.cpp:
(WebCore::SocketStreamHandle::platformSend):
(WebCore::SocketStreamHandle::sendData):
* platform/sql/SQLiteDatabaseTracker.cpp:
(WebCore::SQLiteDatabaseTracker::setClient):
(WebCore::SQLiteDatabaseTracker::incrementTransactionInProgressCount):
(WebCore::SQLiteDatabaseTracker::decrementTransactionInProgressCount):
(WebCore::SQLiteDatabaseTracker::transactionInProgressMutex): Deleted.
* platform/text/TextBreakIterator.cpp:
(WebCore::compareAndSwapNonSharedCharacterBreakIterator):
* platform/text/TextEncodingRegistry.cpp:
(WebCore::newTextCodec):
(WebCore::atomicCanonicalTextEncodingName):
(WebCore::dumpTextEncodingNameMap):
(WebCore::encodingRegistryMutex): Deleted.
* workers/WorkerThread.cpp:
(WebCore::workerThreads):
(WebCore::WorkerThread::workerThreadCount):
(WebCore::WorkerThread::WorkerThread):
(WebCore::WorkerThread::~WorkerThread):
(WebCore::WorkerThread::releaseFastMallocFreeMemoryInAllThreads):
(WebCore::threadSetMutex): Deleted.

Source/WebKit2:

* NetworkProcess/cache/NetworkCacheStorage.cpp:
(WebKit::NetworkCache::Storage::traverse):
* Platform/IPC/Connection.cpp:
(IPC::Connection::SyncMessageState::processIncomingMessage):
(IPC::Connection::SyncMessageState::dispatchMessages):
(IPC::Connection::SyncMessageState::dispatchMessageAndResetDidScheduleDispatchMessagesForConnection):
(IPC::Connection::sendMessage):
(IPC::Connection::waitForMessage):
(IPC::Connection::processIncomingMessage):
(IPC::Connection::installIncomingSyncMessageCallback):
(IPC::Connection::uninstallIncomingSyncMessageCallback):
(IPC::Connection::hasIncomingSyncMessage):
(IPC::Connection::connectionDidClose):
(IPC::Connection::sendOutgoingMessages):
(IPC::Connection::enqueueIncomingMessage):
(IPC::Connection::dispatchOneMessage):
* Platform/IPC/Connection.h:
* Shared/BlockingResponseMap.h:
(BlockingResponseMap::waitForResponse):
(BlockingResponseMap::didReceiveResponse):
(BlockingResponseMap::cancel):
* UIProcess/Plugins/gtk/PluginInfoCache.cpp:
(WebKit::PluginInfoCache::saveToFile):
(WebKit::PluginInfoCache::updatePluginInfo):
* UIProcess/Plugins/gtk/PluginInfoCache.h:
* UIProcess/mac/WKPrintingView.h:
* UIProcess/mac/WKPrintingView.mm:
(-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]):
(prepareDataForPrintingOnSecondaryThread):
(-[WKPrintingView knowsPageRange:]):

Source/WTF:

Also beef up Condition by giving it a StaticCondition variant.

* wtf/Condition.h:
(WTF::ConditionBase::notifyAll):
(WTF::ConditionBase::waitForSecondsImpl):
(WTF::ConditionBase::absoluteFromRelative):
(WTF::Condition::Condition):
(WTF::Condition::notifyAll): Deleted.
(WTF::Condition::waitForSecondsImpl): Deleted.
(WTF::Condition::absoluteFromRelative): Deleted.
* wtf/CryptographicallyRandomNumber.cpp:
* wtf/HashTable.cpp:
(WTF::HashTableStats::recordCollisionAtCount):
(WTF::HashTableStats::dumpStats):
(WTF::hashTableStatsMutex): Deleted.
* wtf/HashTable.h:
(WTF::KeyTraits>::HashTable):
(WTF::KeyTraits>::invalidateIterators):
(WTF::addIterator):
(WTF::removeIterator):
* wtf/Lock.h:
* wtf/MainThread.cpp:
(WTF::functionQueue):
(WTF::dispatchFunctionsFromMainThread):
(WTF::callOnMainThread):
(WTF::cancelCallOnMainThread):
(WTF::mainThreadFunctionQueueMutex): Deleted.
* wtf/StackStats.cpp:
(WTF::StackStats::PerThreadStats::PerThreadStats):
(WTF::StackStats::CheckPoint::CheckPoint):
(WTF::StackStats::CheckPoint::~CheckPoint):
(WTF::StackStats::probe):
(WTF::StackStats::LayoutCheckPoint::LayoutCheckPoint):
(WTF::StackStats::LayoutCheckPoint::~LayoutCheckPoint):
(WTF::StackStats::initialize): Deleted.
* wtf/StackStats.h:
(WTF::StackStats::LayoutCheckPoint::LayoutCheckPoint):
(WTF::StackStats::probe):
(WTF::StackStats::initialize): Deleted.
* wtf/ThreadingPthreads.cpp:
(WTF::initializeThreading):
* wtf/mac/DeprecatedSymbolsUsedBySafari.mm:
(WTF::callOnMainThread):
(WTF::lockAtomicallyInitializedStaticMutex):
(WTF::unlockAtomicallyInitializedStaticMutex):
(WTF::atomicallyInitializedStaticMutex): Deleted.
* wtf/text/StringView.cpp:
(WTF::StringView::UnderlyingString::UnderlyingString):
(WTF::underlyingStrings):
(WTF::StringView::invalidate):
(WTF::StringView::adoptUnderlyingString):
(WTF::StringView::setUnderlyingString):
(WTF::underlyingStringsMutex): Deleted.
* wtf/unicode/icu/CollatorICU.cpp:
(WTF::Collator::Collator):
(WTF::Collator::~Collator):
(WTF::cachedCollatorMutex): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188642 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoScroll snapping should trigger when receiving a momentum end wheel event
wenson_hsieh@apple.com [Wed, 19 Aug 2015 18:13:53 +0000 (18:13 +0000)]
Scroll snapping should trigger when receiving a momentum end wheel event
https://bugs.webkit.org/show_bug.cgi?id=148155

Reviewed by Alexey Proskuryakov.

No new tests, since the purpose of this patch is to get existing tests to pass when
allowing similar wheel events to coalesce. To accomplish this, we relax our assumption
that the user must have generated at least 3 momentum wheel events in order for the
gliding animation to trigger. Upon receiving a wheel event indicating the end of the
momentum phase, we now kick off the gliding animation as long as any momentum event
was tracked earlier in the gesture with a nonzero wheel delta.

* platform/cocoa/ScrollController.mm:
(WebCore::ScrollController::processWheelEventForScrollSnapOnAxis): Added logic to
    begin a glide animation if we have received a momentum end event but have not
    yet triggered a gliding animation.
* platform/cocoa/ScrollSnapAnimatorState.h:
* platform/cocoa/ScrollSnapAnimatorState.mm:
(WebCore::ScrollSnapAnimatorState::wheelDeltaTrackingIsInProgress): Minor refactoring
    to make the wheel event processing code more readable.
(WebCore::ScrollSnapAnimatorState::hasFinishedTrackingWheelDeltas): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188641 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWebKit may keep outdated entry in the disk cache after a reload
cdumez@apple.com [Wed, 19 Aug 2015 16:50:50 +0000 (16:50 +0000)]
WebKit may keep outdated entry in the disk cache after a reload
https://bugs.webkit.org/show_bug.cgi?id=148137
<rdar://problem/22299547>

Reviewed by Antti Koivisto.

Source/WebKit2:

WebKit would keep outdated entry in the disk cache after a reload
in the following scenario:
1. We have an entry in the cache
2. The user reloads
3. We get a fresh resource from the network but this one is not cacheable

In this case, we now remove the stale entry from the cache to make sure
it is not served to following requests (e.g. history navigations).

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::didFinishLoading):
Remove the entry from the cache if its redirection is no longer
cacheable.

* NetworkProcess/cache/NetworkCache.cpp:
(WebKit::NetworkCache::Cache::store):
If we make the decision not to store the response, then remove the
entry in the cache for this resource if it exists.

(WebKit::NetworkCache::Cache::remove):
* NetworkProcess/cache/NetworkCache.h:
Add new remove() overload taking a ResourceRequest argument so the
call site does not have the compute the key.

* NetworkProcess/cache/NetworkCacheStorage.cpp:
(WebKit::NetworkCache::Storage::removeFromPendingWriteOperations):
(WebKit::NetworkCache::Storage::remove):
* NetworkProcess/cache/NetworkCacheStorage.h:
When we're asked to remove an entry with a given key, also remove
it from the pending write operations. This pre-existing bug would
prevent the new layout test from passing.

LayoutTests:

Add layout test to make sure that stale disk cached entries are removed
when it becomes uncacheable.

* http/tests/cache/disk-cache/resource-becomes-uncacheable-expected.txt: Added.
* http/tests/cache/disk-cache/resource-becomes-uncacheable.html: Added.
* http/tests/cache/disk-cache/resources/generate-response-optionally-cacheable.cgi: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188640 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: split TestStub.js into multiple files and modernize it
bburg@apple.com [Wed, 19 Aug 2015 16:14:04 +0000 (16:14 +0000)]
Web Inspector: split TestStub.js into multiple files and modernize it
https://bugs.webkit.org/show_bug.cgi?id=148077

Reviewed by Timothy Hatcher.
Source/WebInspectorUI:

Since we want to share files between the two harnesses, split some of the parts
into different files so not everything has to be included at once.

Rename InjectedTestHarness to just TestHarness. Update some code to use
ES6 features where appropriate. Put test classes into Test/ directory.

* UserInterface/Base/TestStub.js: Removed.
* UserInterface/Test.html:
* UserInterface/Test/InspectorProtocol.js: Added.
(InspectorProtocol.sendCommand):
(InspectorProtocol.awaitCommand):
(InspectorProtocol.awaitEvent.):
(InspectorProtocol.awaitEvent):
(InspectorProtocol.addEventListener):
(InspectorProtocol.sendMessage):
(InspectorProtocol.checkForError):
(InspectorProtocol.dispatchMessageFromBackend):
* UserInterface/Test/ProtocolTestHarness.js: Added.
(ProtocolTestHarness.prototype.completeTest):
(ProtocolTestHarness.prototype.addResult):
(ProtocolTestHarness.prototype.debugLog):
(ProtocolTestHarness.prototype.evaluateInPage):
(ProtocolTestHarness):
* UserInterface/Test/Test.js: Renamed from Source/WebInspectorUI/UserInterface/Base/Test.js.
(WebInspector.loaded):
(WebInspector.contentLoaded):
(WebInspector.UIString):
(WebInspector.updateDockedState):
(WebInspector.updateDockingAvailability):
(InspectorTest.EventDispatcher.prototype.dispatchEvent):
(InspectorTest.EventDispatcher):
(InspectorTest.log):
(InspectorTest.assert):
(InspectorTest.expectThat):
(InspectorTest.debugLog):
(InspectorTest.expectNoError):
(InspectorTest.completeTest):
(InspectorTest.evaluateInPage):
(InspectorTest.addResult):
(InspectorTest._resendResults):
(InspectorTest.testPageDidLoad):
(InspectorTest.reloadPage):
(InspectorTest.reportUncaughtException):
* UserInterface/Test/TestHarness.js: Added.
(TestHarness):
(TestHarness.prototype.completeTest):
(TestHarness.prototype.addResult):
(TestHarness.prototype.debugLog):
(TestHarness.prototype.evaluateInPage):
(TestHarness.prototype.createAsyncSuite):
(TestHarness.prototype.createSyncSuite):
(TestHarness.prototype.get logCount):
(TestHarness.prototype.log):
(TestHarness.prototype.assert):
(TestHarness.prototype.expectThat):
* UserInterface/Test/TestStub.js: Added.
* UserInterface/Test/TestSuite.js: Added.
(TestSuite):
(TestSuite.prototype.runTestCasesAndFinish):
(TestSuite.prototype.runTestCases):
(TestSuite.prototype.get passCount):
(TestSuite.prototype.get skipCount):
(TestSuite.prototype.addTestCase):
(AsyncTestSuite.prototype.runTestCasesAndFinish.finish):
(AsyncTestSuite.prototype.runTestCasesAndFinish):
(AsyncTestSuite.prototype.runTestCases):
(AsyncTestSuite):
(SyncTestSuite.prototype.runTestCasesAndFinish):
(SyncTestSuite.prototype.runTestCases):
(SyncTestSuite):
* UserInterface/TestStub.html:

LayoutTests:

Add the prefix 'TestPage' to everything in protocol-test.js. Continue
exporting it to the global namespace for backwards compatibility, too.

Rename some things to match changes in the test harness. Tighten up
preconditions for test suite and test case names. Sprinkle some ES6.

* http/tests/inspector/dom/resources/InspectorDOMListener.js:
* http/tests/inspector/resources/console-test.js:
* http/tests/inspector/resources/probe-test.js:
* http/tests/inspector/resources/protocol-test.js:
(TestPage.registerInitializer):
(TestPage.debugLog.window.debugLog):
(TestPage.log.window.log):
(TestPage.closeTest.window.closeTest):
(TestPage.runTest.window.runTest):
(ProtocolTestProxy.registerInitializer): Deleted.
(debugLog): Deleted.
(log): Deleted.
(closeTest): Deleted.
(runTest): Deleted.
* inspector/dom/resources/dom-search-queries.js:
* inspector/unit-tests/async-test-suite.html:
* inspector/unit-tests/sync-test-suite.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188639 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, add Aleksandr Skachkov to the list of contributors.
bburg@apple.com [Wed, 19 Aug 2015 15:38:14 +0000 (15:38 +0000)]
Unreviewed, add Aleksandr Skachkov to the list of contributors.

* Scripts/webkitpy/common/config/contributors.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188638 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Pressing Command-Enter should re-evaluate selected console user command
nvasilyev@apple.com [Wed, 19 Aug 2015 09:35:36 +0000 (09:35 +0000)]
Web Inspector: Pressing Command-Enter should re-evaluate selected console user command
https://bugs.webkit.org/show_bug.cgi?id=147918

Reviewed by Timothy Hatcher.

* UserInterface/Views/LogContentView.js:
(WebInspector.LogContentView.prototype._keyDown):
(WebInspector.LogContentView.prototype._commandEnterWasPressed):
Only re-evaluate one selected user command.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188637 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoREGRESSION (r188581): Web Inspector: Console user command isn't visible after reloadi...
nvasilyev@apple.com [Wed, 19 Aug 2015 07:12:55 +0000 (07:12 +0000)]
REGRESSION (r188581): Web Inspector: Console user command isn't visible after reloading the page
https://bugs.webkit.org/show_bug.cgi?id=148166

Reviewed by Timothy Hatcher.

* UserInterface/Controllers/JavaScriptLogViewController.js:
(WebInspector.JavaScriptLogViewController.prototype.startNewSession):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188636 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoREGRESSION (r188581): Web Inspector: Option-Enter no longer inserts a new line in...
nvasilyev@apple.com [Wed, 19 Aug 2015 07:11:36 +0000 (07:11 +0000)]
REGRESSION (r188581): Web Inspector: Option-Enter no longer inserts a new line in the console
https://bugs.webkit.org/show_bug.cgi?id=148165

Make Option-Enter insert a new line, as it was before r188581.
Make Command-Enter keep executed command in the prompt.

Reviewed by Timothy Hatcher.

* UserInterface/Views/ConsolePrompt.js:
(WebInspector.ConsolePrompt): Deleted.
(WebInspector.ConsolePrompt.prototype._handleCommandEnterKey):
(WebInspector.ConsolePrompt.prototype._handleOptionEnterKey): Deleted.
(WebInspector.ConsolePrompt.prototype._handleCommandOptionEnterKey): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188635 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Cocoa] Punctuation near Hindi text is garbled when styled with the system font
mmaxfield@apple.com [Wed, 19 Aug 2015 06:23:41 +0000 (06:23 +0000)]
[Cocoa] Punctuation near Hindi text is garbled when styled with the system font
https://bugs.webkit.org/show_bug.cgi?id=148164

Reviewed by Brian Burg.

Source/WebCore:

Fonts cache whether or not they are the system font. This caching took place at the end of Font::platformInit().
However, in the middle of Font::platformInit(), we look up a glyph, which calls GlyphPage::fill() which consults
with this cache. However, at this point, the cache has not been constructed yet. The solution is just to
construct the cache earlier (at the beginning of the function).

Consulting with the cache before it is populated causes it to erroneously say that no fonts are system fonts.
Then, we use Core Graphics to ask for glyphs instead of Core Text. Core Graphics, however, is incapable of
handling the system font, and returns us garbled results. In particular, when the system language is set to
Japanese, the system font does not support punctuation, and Core Text tells us so. However, Core Graphics
erroneously tells us that the system font does support punctuation.

Then, if text is near the punctuation which causes us to take the complex text codepath (such as Hindi text),
we tell Core Text to explicitly lay out the punctuation using the system font (which does not support
punctuation). Core Text then replies that the provided font doesn't support the punctuation, and that we should
use LastResort with some other glyphs instead. WebKit then disregards the font CoreText told us to use (because
we are oh-so-sure that the font in question supports punctuation) and uses the LastResort glyph IDs with our
font, which causes arbitrary glyphs to be shown.

Test: fast/text/hindi-system-font-punctuation.html

* platform/graphics/cocoa/FontCocoa.mm:
(WebCore::Font::platformInit):

LayoutTests:

This test is only relevant when the system font is set to Japanese or Simplified Chinese. In these
languages, the system font doesn't support punctuation, but CG will erroneously say that it does.

I intend to implement testing infrastructure which will allow us to mock the system language,
thereby allowing this test to be valid on all machines. The tracking bug for this effort is
https://bugs.webkit.org/show_bug.cgi?id=148168

* fast/text/hindi-system-font-punctuation-expected.html: Added.
* fast/text/hindi-system-font-punctuation.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188634 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[GLib] GMainLoopSource should receive the std::function<> objects through rvalue...
zandobersek@gmail.com [Wed, 19 Aug 2015 05:52:28 +0000 (05:52 +0000)]
[GLib] GMainLoopSource should receive the std::function<> objects through rvalue references
https://bugs.webkit.org/show_bug.cgi?id=147981

Reviewed by Carlos Garcia Campos.

Source/WebKit2:

* NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp:
(WebKit::NetworkCache::runTaskInQueue): Move the std::function<> into the scheduling call.

Source/WTF:

Scheduling methods on GMainLoopSource and GThreadSafeMainLoopSource should
have the std::function<> objects passed through rvalue references, and should
move the passed-in objects forward when required.

* wtf/glib/GMainLoopSource.cpp:
(WTF::GMainLoopSource::schedule):
(WTF::GMainLoopSource::scheduleAfterDelay):
(WTF::GMainLoopSource::scheduleAndDeleteOnDestroy):
(WTF::GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy):
* wtf/glib/GMainLoopSource.h:
* wtf/glib/GThreadSafeMainLoopSource.cpp:
(WTF::GThreadSafeMainLoopSource::schedule):
(WTF::GThreadSafeMainLoopSource::scheduleAfterDelay):
* wtf/glib/GThreadSafeMainLoopSource.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188633 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Win] Test Gardening after r188598
bburg@apple.com [Wed, 19 Aug 2015 05:09:50 +0000 (05:09 +0000)]
[Win] Test Gardening after r188598

Unreviewed. Really skip all inspector/ tests until the test harnesses are fixed.
This work is tracked by <https://bugs.webkit.org/show_bug.cgi?id=148025> and
<https://bugs.webkit.org/show_bug.cgi?id=148037>.

* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188632 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Links for rules in <style> are incorrect, do not account for <style...
commit-queue@webkit.org [Wed, 19 Aug 2015 05:00:35 +0000 (05:00 +0000)]
Web Inspector: Links for rules in <style> are incorrect, do not account for <style> offset in the document
https://bugs.webkit.org/show_bug.cgi?id=148141

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-08-18
Reviewed by Brian Burg.

Source/JavaScriptCore:

* inspector/protocol/CSS.json:
Extend StyleSheetHeader to include start offset information and a bit
for whether or not this was an inline style tag created by the parser.
These match additions to Blink's protocol.

Source/WebCore:

Test: inspector/css/getAllStyleSheets.html

* css/CSSStyleSheet.h:
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::create):
(WebCore::CSSStyleSheet::createInline):
(WebCore::CSSStyleSheet::CSSStyleSheet):
Include the starting position when created by the Parser.
Default to the minimum position, which should never be
possible for an inline <style> because the "<style>" characters
themselves require at least some offset.

* dom/InlineStyleSheetOwner.cpp:
(WebCore::InlineStyleSheetOwner::createSheet):
Provide the start position offset for this stylesheet if it was inline.

* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
Include new protocol values for the style sheet.

Source/WebInspectorUI:

* UserInterface/Controllers/CSSStyleManager.js:
(WebInspector.CSSStyleManager):
(WebInspector.CSSStyleManager.prototype.get styleSheets):
(WebInspector.CSSStyleManager.prototype.fetchStyleSheetsIfNeeded):
(WebInspector.CSSStyleManager.prototype.styleSheetForIdentifier):
(WebInspector.CSSStyleManager.prototype._mainResourceDidChange):
Update more information about a StyleSheet when fetched.

* UserInterface/Models/CSSRule.js:
(WebInspector.CSSRule.prototype.update):
Eliminate usage of `delete`.

* UserInterface/Models/CSSStyleSheet.js:
(WebInspector.CSSStyleSheet):
(WebInspector.CSSStyleSheet.prototype.get startLineNumber):
(WebInspector.CSSStyleSheet.prototype.get startColumnNumber):
(WebInspector.CSSStyleSheet.prototype.hasInfo):
(WebInspector.CSSStyleSheet.prototype.isInlineStyleTag):
(WebInspector.CSSStyleSheet.prototype.updateInfo):
Include more information about this stylesheet.

(WebInspector.CSSStyleSheet.prototype.offsetSourceCodeLocation):
Include helper API to offset a source code location by the startLine/Column
of this stylesheet itself, if it was an inline style.

(WebInspector.CSSStyleSheet.prototype.isInlineStyleAttributeStyleSheet):
(WebInspector.CSSStyleSheet.prototype.markAsInlineStyleAttributeStyleSheet):
(WebInspector.CSSStyleSheet.isInlineStyle): Deleted.
(WebInspector.CSSStyleSheet.prototype.markAsInlineStyle): Deleted.
Rename for clarity.

* UserInterface/Models/DOMNodeStyles.js:
(WebInspector.DOMNodeStyles.prototype.refresh):
Fetch stylesheet header information eagerly, so we have them early on.

(WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
(WebInspector.DOMNodeStyles.prototype._parseRulePayload):
Offset sourceCodeLocations for CSSRules based on the StyleSheet offset.

* UserInterface/Models/SourceCodeLocation.js:
(WebInspector.SourceCodeLocation.prototype.update):
Improve coding style.

LayoutTests:

* inspector/css/getAllStyleSheets-expected.txt: Added.
* inspector/css/getAllStyleSheets.html: Added.
* inspector/css/resources/external.css: Added.
(body):
Test for style sheet header information for external and inline stylesheets.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188631 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Add proper formatting for editing styles in the Visual Panel
drousso@apple.com [Wed, 19 Aug 2015 04:56:30 +0000 (04:56 +0000)]
Web Inspector: Add proper formatting for editing styles in the Visual Panel
https://bugs.webkit.org/show_bug.cgi?id=148147

Reviewed by Timothy Hatcher.

Editing styles in the Visual styles panel now preserves whitespace in the related resource file.

* UserInterface/Views/VisualStylePropertyCombiner.js:
(WebInspector.VisualStylePropertyCombiner):
(WebInspector.VisualStylePropertyCombiner.prototype.modifyPropertyText):

* UserInterface/Views/VisualStylePropertyEditor.js:
(WebInspector.VisualStylePropertyEditor):
(WebInspector.VisualStylePropertyEditor.generateFormattedTextForNewProperty):
(WebInspector.VisualStylePropertyEditor.prototype.modifyPropertyText):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188630 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Add support for positioning Visual editors on non-retina displays
drousso@apple.com [Wed, 19 Aug 2015 04:54:10 +0000 (04:54 +0000)]
Web Inspector: Add support for positioning Visual editors on non-retina displays
https://bugs.webkit.org/show_bug.cgi?id=148160

Reviewed by Timothy Hatcher.

Cleans up the positioning, dimensions, and widths of the
Visual editors on non-retina displays.

* UserInterface/Views/VisualStyleColorPicker.css:
(.visual-style-property-container.input-color-picker > .visual-style-property-value-container > input):

* UserInterface/Views/VisualStyleDetailsPanel.css:
(.sidebar > .panel.details.css-style .visual > .details-section .details-section > .content .group > .row.visual-style-separated-row):
(@media (-webkit-min-device-pixel-ratio: 2)):

* UserInterface/Views/VisualStyleDetailsPanel.js:
(WebInspector.VisualStyleDetailsPanel.prototype._clearModifiedSection):

* UserInterface/Views/VisualStylePropertyEditorLink.css:
(.visual-style-property-editor-link):
(.visual-style-property-editor-link > .visual-style-property-editor-link-border.left):
(.visual-style-property-editor-link.link-all > .visual-style-property-editor-link-border.left):
(.visual-style-property-editor-link.link-all.linked > .visual-style-property-editor-link-border):
(.visual-style-property-editor-link > .visual-style-property-editor-link-icon):
(.visual-style-property-editor-link:not(.link-all) > .visual-style-property-editor-link-icon):
(@media (-webkit-min-device-pixel-ratio: 2)):
(.visual-style-property-editor-link.link-all.linked > .visual-style-property-editor-link-border.left):
(.visual-style-property-editor-link.link-all.linked > .visual-style-property-editor-link-icon:hover + .visual-style-property-editor-link-border.right): Deleted.
(.visual-style-property-editor-link.link-all.linked > .visual-style-property-editor-link-border.right): Deleted.
(.visual-style-property-editor-link.link-all > .visual-style-property-editor-link-icon): Deleted.

* UserInterface/Views/VisualStyleSelectorTreeItem.css:
(.item.visual-style-selector-item > input[type="checkbox"]):
(.item.visual-style-selector-item > .icon):
(.item.visual-style-selector-item.selector-invalid > .titles > .title::before):
(@media (-webkit-min-device-pixel-ratio: 2)):
(.item.visual-style-selector-item > .titles):
(.item.visual-style-selector-item.selector-invalid > .icon): Deleted.

* UserInterface/Views/VisualStyleTimingEditor.css:
(.visual-style-property-container.timing-editor > .visual-style-property-value-container > .bezier-editor):
(@media (-webkit-min-device-pixel-ratio: 2)):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188629 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Show the computed value in an overlay for numerical Visual Editors
drousso@apple.com [Wed, 19 Aug 2015 04:50:38 +0000 (04:50 +0000)]
Web Inspector: Show the computed value in an overlay for numerical Visual Editors
https://bugs.webkit.org/show_bug.cgi?id=148161

Reviewed by Timothy Hatcher.

Adds an "Unchanged" option to the number-based Visual editors that shows the
computed value if it is not a number (it would therefore be a keyword).

* UserInterface/Views/VisualStyleNumberInputBox.css:
(.visual-style-property-container > .visual-style-property-value-container > .number-input-container):
(.visual-style-property-container > .visual-style-property-value-container > .number-input-container:not(.has-value) > span):

* UserInterface/Views/VisualStyleNumberInputBox.js:
(WebInspector.VisualStyleNumberInputBox):
(WebInspector.VisualStyleNumberInputBox.prototype.set value):
(WebInspector.VisualStyleNumberInputBox.prototype.get units):
(WebInspector.VisualStyleNumberInputBox.prototype.set units):
(WebInspector.VisualStyleNumberInputBox.prototype.set placeholder):
(WebInspector.VisualStyleNumberInputBox.prototype.get synthesizedValue):
(WebInspector.VisualStyleNumberInputBox.prototype.set _unitsElementTextContent):
(WebInspector.VisualStyleNumberInputBox.prototype._markUnitsContainerIfInputHasValue):
(WebInspector.VisualStyleNumberInputBox.prototype._keywordChanged):
(WebInspector.VisualStyleNumberInputBox.prototype._valueNumberInputKeyDown):
(WebInspector.VisualStyleNumberInputBox.prototype._numberInputChanged):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188628 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[iOS] Safari’s Web Content process crashes when decoding an NSError containing an...
mitz@apple.com [Wed, 19 Aug 2015 04:50:15 +0000 (04:50 +0000)]
[iOS] Safari’s Web Content process crashes when decoding an NSError containing an identity
https://bugs.webkit.org/show_bug.cgi?id=148135

Reviewed by Sam Weinig.

* Configurations/WebContent-iOS.entitlements: Added the com.apple.identities keychain
  access group. The Networking process already has it since r169655.

* UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitialize): Always allow the UI process to decode keys.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188627 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Small Caps variant checkbox should be to the left of the Small Caps...
drousso@apple.com [Wed, 19 Aug 2015 04:35:31 +0000 (04:35 +0000)]
Web Inspector: Small Caps variant checkbox should be to the left of the Small Caps label
https://bugs.webkit.org/show_bug.cgi?id=148102

Reviewed by Timothy Hatcher.

* UserInterface/Views/VisualStyleKeywordCheckbox.css:
(.visual-style-property-container.keyword-checkbox.font-variant > .visual-style-property-value-container > input): Deleted.
(.visual-style-property-container.keyword-checkbox.font-variant > .visual-style-property-value-container > input::after):
(.visual-style-property-container.keyword-checkbox.font-variant > .visual-style-property-value-container > input::before): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188626 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[EFL] Web Inspector: make to use StringBuilder in inspectorBaseURL
commit-queue@webkit.org [Wed, 19 Aug 2015 04:23:16 +0000 (04:23 +0000)]
[EFL] Web Inspector: make to use StringBuilder in inspectorBaseURL
https://bugs.webkit.org/show_bug.cgi?id=148126

Patch by Jincheol Jo <jincheol.jo@navercorp.com> on 2015-08-18
Reviewed by Gyuyoung Kim.

* UIProcess/efl/WebInspectorProxyEfl.cpp:
(WebKit::WebInspectorProxy::inspectorBaseURL):
(WebKit::WebInspectorProxy::platformInspectedWindowHeight):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188625 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[JSC] Optimize more cases of something-compared-to-null/undefined
benjamin@webkit.org [Wed, 19 Aug 2015 04:09:12 +0000 (04:09 +0000)]
[JSC] Optimize more cases of something-compared-to-null/undefined
https://bugs.webkit.org/show_bug.cgi?id=148157

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-08-18
Reviewed by Geoffrey Garen and Filip Pizlo.

Source/JavaScriptCore:

CompareEq is fairly trivial if you assert one of the operands is either
null or undefined. Under those conditions, the only way to have "true"
is to have the other operand be null/undefined or have an object
that masquerades to undefined.

JSC already had a fast path in CompareEqConstant.
With this patch, I generalize this fast path to more cases and try
to eliminate the checks whenever possible.

CompareEq now does the job of CompareEqConstant. If any operand can
be proved to be undefined/other, its edge is set to OtherUse. Whenever
any edge is OtherUse, we generate the fast code we had for CompareEqConstant.

The AbstractInterpreter has additional checks to reduce the node to a constant
whenever possible.

There are two additional changes in this patch:
-The Fixup Phase tries to set edges to OtherUse early. This is done correctly
 in ConstantFoldingPhase but setting it up early helps the phases relying
 on Clobberize.
-The codegen for CompareEqConstant was improved. The reason is the comparison
 for ObjectOrOther could be faster just because the codegen was better.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize): Deleted.
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
* dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC): Deleted.
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGNode.h:
(JSC::DFG::Node::isUndefinedOrNullConstant):
* dfg/DFGNodeType.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate): Deleted.
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute): Deleted.
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compilePeepHoleBranch):
(JSC::DFG::SpeculativeJIT::compare):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::isKnownNotOther):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNullOrUndefined):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNullOrUndefined):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull): Deleted.
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull): Deleted.
(JSC::DFG::SpeculativeJIT::nonSpeculativeCompareNull): Deleted.
(JSC::DFG::SpeculativeJIT::compile): Deleted.
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNullOrUndefined):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNullOrUndefined):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull): Deleted.
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull): Deleted.
(JSC::DFG::SpeculativeJIT::nonSpeculativeCompareNull): Deleted.
(JSC::DFG::SpeculativeJIT::compile): Deleted.
* dfg/DFGValidate.cpp:
(JSC::DFG::Validate::validate): Deleted.
* dfg/DFGWatchpointCollectionPhase.cpp:
(JSC::DFG::WatchpointCollectionPhase::handle):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::DFG::LowerDFGToLLVM::compileCompareEq):
(JSC::FTL::DFG::LowerDFGToLLVM::compileNode): Deleted.
(JSC::FTL::DFG::LowerDFGToLLVM::compileCompareEqConstant): Deleted.
* tests/stress/compare-eq-on-null-and-undefined-non-peephole.js: Added.
(string_appeared_here.useForMath):
(testUseForMath):
* tests/stress/compare-eq-on-null-and-undefined-optimized-in-constant-folding.js: Added.
(string_appeared_here.unreachableCodeTest):
(inlinedCompareToNull):
(inlinedComparedToUndefined):
(warmupInlineFunctions):
(testInlineFunctions):
* tests/stress/compare-eq-on-null-and-undefined.js: Added.
(string_appeared_here.compareConstants):
(opaqueNull):
(opaqueUndefined):
(compareConstantsAndDynamicValues):
(compareDynamicValues):
(compareDynamicValueToItself):
(arrayTesting):
(opaqueCompare1):
(testNullComparatorUpdate):
(opaqueCompare2):
(testUndefinedComparatorUpdate):
(opaqueCompare3):
(testNullAndUndefinedComparatorUpdate):

LayoutTests:

* js/dom/document-all-watchpoint-covers-eliminated-compare-eq-expected.txt: Added.
* js/dom/document-all-watchpoint-covers-eliminated-compare-eq.html: Added.
* js/dom/script-tests/document-all-watchpoint-covers-eliminated-compare-eq.js: Added.
(compareFunction):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188624 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAttempt to fix the failing search-padding-cancel-results-buttons.html test by making
wenson_hsieh@apple.com [Wed, 19 Aug 2015 02:09:44 +0000 (02:09 +0000)]
Attempt to fix the failing search-padding-cancel-results-buttons.html test by making
platform-specific versions of the test.

* TestExpectations: Added search-padding-cancel-results-buttons-expected.txt with a default [ Skip ].
* fast/forms/search/search-padding-cancel-results-buttons-expected.txt: Copied from LayoutTests/platform/mac/fast/forms/search/search-padding-cancel-results-buttons-expected.txt.
* fast/forms/search/search-padding-cancel-results-buttons.html: Renamed from LayoutTests/platform/mac/fast/forms/search/search-padding-cancel-results-buttons.html.
* platform/mac-mavericks/fast/forms/search/search-padding-cancel-results-buttons-expected.txt: Renamed from LayoutTests/platform/mac/fast/forms/search/search-padding-cancel-results-buttons-expected.txt.
* platform/mac/TestExpectations: Enable the test only for Mac platforms.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188623 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAdd null check in ImageBufferData::getData
dino@apple.com [Wed, 19 Aug 2015 01:55:15 +0000 (01:55 +0000)]
Add null check in ImageBufferData::getData
https://bugs.webkit.org/show_bug.cgi?id=148156
<rdar://problem/22337157>

Reviewed by Simon Fraser.

We're getting a number of crash reports that suggest the allocation
of the result buffer has failed, but have been unable to reproduce.
This patch adds a null check to the allocation, and logs a message
to the system console. This might avoid the crashes, and hopefully
we'll see the message.

No new tests, since we're unable to reproduce this crash.

* platform/graphics/cg/ImageBufferDataCG.cpp:
(WebCore::ImageBufferData::getData): Add a null-check and early
return.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188622 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Visual editor links should unlink when switching styles
drousso@apple.com [Wed, 19 Aug 2015 01:41:58 +0000 (01:41 +0000)]
Web Inspector: Visual editor links should unlink when switching styles
https://bugs.webkit.org/show_bug.cgi?id=148153

Reviewed by Timothy Hatcher.

Visual editor links are now deactivated when switching rules/nodes.

* UserInterface/Images/VisualStylePropertyUnlinked.svg:
* UserInterface/Views/VisualStyleDetailsPanel.js:
(WebInspector.VisualStyleDetailsPanel.prototype._updateProperties):
(WebInspector.VisualStyleDetailsPanel.prototype._generateMetricSectionRows):

* UserInterface/Views/VisualStylePropertyEditorLink.js:
(WebInspector.VisualStylePropertyEditorLink.prototype.set linked):
(WebInspector.VisualStylePropertyEditorLink.prototype._iconClicked):
(WebInspector.VisualStylePropertyEditorLink):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188621 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoREGRESSION(r188548): [GTK] Build broken.
clopez@igalia.com [Wed, 19 Aug 2015 01:37:50 +0000 (01:37 +0000)]
REGRESSION(r188548): [GTK] Build broken.
https://bugs.webkit.org/show_bug.cgi?id=148154

Reviewed by Martin Robinson.

* WebKitTestRunner/gtk/TestControllerGtk.cpp:
(WTR::TestController::updatePlatformSpecificViewOptionsForTest):
Even if we don't need to add/override any settings in ViewOptions,
we need to define this as an empty function to make it build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188620 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUse CSSValuePool::singleton() instead of cssValuePool()
cdumez@apple.com [Wed, 19 Aug 2015 01:28:03 +0000 (01:28 +0000)]
Use CSSValuePool::singleton() instead of cssValuePool()
https://bugs.webkit.org/show_bug.cgi?id=148132

Reviewed by Simon Fraser.

Use CSSValuePool::singleton() instead of cssValuePool() to access the
global CSSValuePool instance, as per coding style.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188619 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoFix conversion-null warning in conversion.cpp of TestWebKitAPI
gyuyoung.kim@webkit.org [Wed, 19 Aug 2015 01:25:31 +0000 (01:25 +0000)]
Fix conversion-null warning in conversion.cpp of TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=148073

Reviewed by Alexey Proskuryakov.

* TestWebKitAPI/Tests/WTF/Condition.cpp: Use EXPECT_FALSE instead of EXPECT_EQ.
(TestWebKitAPI::TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188618 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Consider showing style summary on collapsed visual sidebar sections
drousso@apple.com [Wed, 19 Aug 2015 01:22:10 +0000 (01:22 +0000)]
Web Inspector: Consider showing style summary on collapsed visual sidebar sections
https://bugs.webkit.org/show_bug.cgi?id=148104

Reviewed by Timothy Hatcher.

The blue indicator dot on a section now means that that section has at least one set value.
If a section has been modified, it will display a trash can that will clear those modifications.

* UserInterface/Views/VisualStyleDetailsPanel.css:
(.sidebar > .panel.details.css-style .visual > .details-section .details-section.has-set-property > .header > span::after):
(.sidebar > .panel.details.css-style .visual > .details-section .details-section.modified > .header > span::after): Deleted.

* UserInterface/Views/VisualStyleDetailsPanel.js:
(WebInspector.VisualStyleDetailsPanel.prototype._updateProperties):
(WebInspector.VisualStyleDetailsPanel.prototype._sectionModified):
(WebInspector.VisualStyleDetailsPanel.prototype._groupHasSetProperty):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188617 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: round sub-pixel values we get from computed style in visual sidebar
drousso@apple.com [Wed, 19 Aug 2015 01:18:49 +0000 (01:18 +0000)]
Web Inspector: round sub-pixel values we get from computed style in visual sidebar
https://bugs.webkit.org/show_bug.cgi?id=148105

Reviewed by Timothy Hatcher.

* UserInterface/Views/VisualStyleNumberInputBox.js:
(WebInspector.VisualStyleNumberInputBox.prototype.set value):
(WebInspector.VisualStyleNumberInputBox.prototype.set placeholder):
Now rounds the value and placeholder to the nearest 100th.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188616 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMedia Session: don't begin listening for interruptions when an interruption provider...
mrajca@apple.com [Wed, 19 Aug 2015 01:04:56 +0000 (01:04 +0000)]
Media Session: don't begin listening for interruptions when an interruption provider is created
https://bugs.webkit.org/show_bug.cgi?id=148109

Reviewed by Eric Carlson.

If we call `beginListeningForInterruption` in MediaSessionInterruptionProvider's constructor, the current
class's implementation will get called, not implementations provided by subclasses (this makes sense since base
classes are initialized before derived classes). To fix this, we let clients of
MediaSessionInterruptionProvider start listening for interruptions instead. As a corollary of this, we can make
MediaSessionInterruptionProvider's methods pure virtual.

* Modules/mediasession/MediaSessionManager.cpp:
(WebCore::MediaSessionManager::MediaSessionManager):
* platform/mediasession/MediaSessionInterruptionProvider.h:
* platform/mediasession/MediaSessionInterruptionProvider.cpp:
(WebCore::MediaSessionInterruptionProvider::MediaSessionInterruptionProvider):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188615 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: transparent color swatches have lopsided checkered background on non...
commit-queue@webkit.org [Wed, 19 Aug 2015 00:56:57 +0000 (00:56 +0000)]
Web Inspector: transparent color swatches have lopsided checkered background on non-retina
https://bugs.webkit.org/show_bug.cgi?id=148150

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-08-18
Reviewed by Timothy Hatcher.

* UserInterface/Views/CSSStyleDeclarationTextEditor.css:
(@media (-webkit-max-device-pixel-ratio: 1)):
Make color and bezier widgets slightly smaller, but evenly sized so the
checkered background is not lopsided and the curve is a little less blurry.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188614 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoFix a rare flakiness in svg/animations/svgPreserveAspectRatio-animation-1.html
commit-queue@webkit.org [Wed, 19 Aug 2015 00:43:48 +0000 (00:43 +0000)]
Fix a rare flakiness in svg/animations/svgPreserveAspectRatio-animation-1.html
https://bugs.webkit.org/show_bug.cgi?id=148149

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2015-08-18
Reviewed by Tim Horton.

Do not sample the SVG animation at the middle of the animation period. At
that time, the SVG animation test script changes the value of the animated
attribute from the from-value to the to-value. It is safer to sample
immediately before and after the middle of the animation period.

* svg/animations/script-tests/svgPreserveAspectRatio-animation-1.js:
* svg/animations/svgPreserveAspectRatio-animation-1-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188613 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemove "platform text track menu"
eric.carlson@apple.com [Wed, 19 Aug 2015 00:32:58 +0000 (00:32 +0000)]
Remove "platform text track menu"
https://bugs.webkit.org/show_bug.cgi?id=148139

Reviewed by Jer Noble.

Source/WebCore:

No new tests, this patch removes unused code.

* WebCore.xcodeproj/project.pbxproj: Remove PlatformTextTrackMenu.h.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::scheduleDelayedAction): Remove PLATFORM_TEXT_TRACK_MENU.
(WebCore::HTMLMediaElement::pendingActionTimerFired):
(WebCore::HTMLMediaElement::textTrackModeChanged):
(WebCore::HTMLMediaElement::mediaPlayerDidRemoveVideoTrack):
(WebCore::HTMLMediaElement::closeCaptionTracksChanged):
(WebCore::HTMLMediaElement::addAudioTrack):
(WebCore::HTMLMediaElement::clearMediaPlayer):
(WebCore::HTMLMediaElement::setSelectedTextTrack): Deleted.
(WebCore::HTMLMediaElement::platformTextTracks): Deleted.
(WebCore::HTMLMediaElement::notifyMediaPlayerOfTextTrackChanges): Deleted.
(WebCore::HTMLMediaElement::platformTextTrackMenu): Deleted.
* html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::player):
* html/track/InbandTextTrack.h:
* html/track/TextTrack.cpp:
(WebCore::TextTrack::hasCue):
(WebCore::TextTrack::isMainProgramContent):
(WebCore::TextTrack::platformTextTrack): Deleted.
* html/track/TextTrack.h:
(WebCore::TextTrack::create):
* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::resetMediaEngines):
(WebCore::MediaPlayer::implementsTextTrackControls): Deleted.
(WebCore::MediaPlayer::textTrackMenu): Deleted.
* platform/graphics/MediaPlayer.h:
* platform/graphics/MediaPlayerPrivate.h:
(WebCore::MediaPlayerPrivateInterface::tracksChanged):
(WebCore::MediaPlayerPrivateInterface::simulateAudioInterruption):
(WebCore::MediaPlayerPrivateInterface::implementsTextTrackControls): Deleted.
(WebCore::MediaPlayerPrivateInterface::textTrackMenu): Deleted.
* platform/graphics/PlatformTextTrack.h:
* platform/graphics/PlatformTextTrackMenu.h: Removed.

Source/WTF:

* wtf/Platform.h: Remove PLATFORM_TEXT_TRACK_MENU.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188612 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoSearch input results and clear icons are misaligned when padding is added
wenson_hsieh@apple.com [Wed, 19 Aug 2015 00:23:49 +0000 (00:23 +0000)]
Search input results and clear icons are misaligned when padding is added
https://bugs.webkit.org/show_bug.cgi?id=148146
<rdar://problem/22310951>

Reviewed by Zalan Bujtas.

Source/WebCore:

Use content box rect to determine where to draw the results and cancel buttons
of a search field that has -webkit-appearance: textfield. Previously, we used
the bounding box, which caused the buttons to render in the input's padding
region.

Test: platform/mac/fast/forms/search/search-padding-cancel-results-buttons.html

* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintSearchFieldCancelButton): Use content box to
    compute where to render cancel button.
(WebCore::RenderThemeMac::paintSearchFieldResultsButton): Use content box to
    compute where to render results button.

LayoutTests:

Tests that for a search field with -webkit-appearance: textfield; and padding will not clip
its cancel and results buttons.

* platform/mac/fast/forms/search/search-padding-cancel-results-buttons-expected.txt: Added.
* platform/mac/fast/forms/search/search-padding-cancel-results-buttons.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188611 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoCAOpenGLLayer doesn't need an SPI declaration
dino@apple.com [Wed, 19 Aug 2015 00:21:48 +0000 (00:21 +0000)]
CAOpenGLLayer doesn't need an SPI declaration
https://bugs.webkit.org/show_bug.cgi?id=148151

Reviewed by Tim Horton.

Follow-up to https://trac.webkit.org/r188608.
The property is in the public SDK, so we don't need
to declare it.

* platform/spi/cocoa/QuartzCoreSPI.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188610 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[El Capitan] Fix the open source build
mmaxfield@apple.com [Tue, 18 Aug 2015 23:53:57 +0000 (23:53 +0000)]
[El Capitan] Fix the open source build
https://bugs.webkit.org/show_bug.cgi?id=148134

Reviewed by Anders Carlsson.

No new tests because there is no behavior change.

Need to declare CGFontRenderingStyle.

* platform/spi/cocoa/CoreTextSPI.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188609 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoCAOpenGLLayer needs a named class extension for non-internal installs
dino@apple.com [Tue, 18 Aug 2015 23:47:36 +0000 (23:47 +0000)]
CAOpenGLLayer needs a named class extension for non-internal installs
https://bugs.webkit.org/show_bug.cgi?id=148151
<rdar://problem/22335111>

Reviewed by Tim Horton.

In order to build using the public SDK on El Capitan, we can't
use a class extension to declare this SPI.

No change in behaviour, so no new tests.

* platform/spi/cocoa/QuartzCoreSPI.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188608 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoFix test failure fallout from r188602 by using a V5 page ui client struct.
andersca@apple.com [Tue, 18 Aug 2015 23:31:03 +0000 (23:31 +0000)]
Fix test failure fallout from r188602 by using a V5 page ui client struct.

* TestWebKitAPI/Tests/WebKit2/WKPageIsPlayingAudio.cpp:
(TestWebKitAPI::setUpClients):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188607 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoFix build, and fix the version check.
andersca@apple.com [Tue, 18 Aug 2015 22:52:55 +0000 (22:52 +0000)]
Fix build, and fix the version check.

* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageUIClient):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188606 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWTF::Condition should have a fast path for notifyOne/notifyAll that avoids calling...
fpizlo@apple.com [Tue, 18 Aug 2015 22:35:25 +0000 (22:35 +0000)]
WTF::Condition should have a fast path for notifyOne/notifyAll that avoids calling unparkOne/unparkAll
https://bugs.webkit.org/show_bug.cgi?id=148090

Reviewed by Geoffrey Garen.

This change makes notifyOne()/notifyAll() blazing fast when nobody is waiting, by using the
various hooks that ParkingLot gives us to maintain a m_hasWaiters variable. When it's false, it
means that any unpark operation would simply return immediately.

This is a 45% speed-up for the 1-producer/1-consumer scenario with a 100-element queue when you
use the notifyOne()-per-enqueue style. What's cool about this change is that you can now safely
call notifyOne() (or notifyAll()) out of paranoia, just in case someone might be waiting. It's
free to do so if nobody is waiting!

* wtf/Condition.h:
(WTF::Condition::Condition):
(WTF::Condition::waitUntil):
(WTF::Condition::notifyOne):
(WTF::Condition::notifyAll):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188605 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agowill-change: backface-visibility should not cause stacking context
simon.fraser@apple.com [Tue, 18 Aug 2015 22:35:08 +0000 (22:35 +0000)]
will-change: backface-visibility should not cause stacking context
https://bugs.webkit.org/show_bug.cgi?id=148091

Reviewed by Zalan Bujtas.

Source/WebCore:

Take CSSPropertyWebkitBackfaceVisibility out of the list of properties that causes
will-change to create stacking context, since no value of the property creates
stacking.

Move willChangeCreatesStackingContext() and shouldWillChangeCreateStackingContext()
into RenderInline since it's only called from there.

* rendering/RenderElement.cpp:
(WebCore::RenderElement::shouldWillChangeCreateStackingContext): Deleted.
* rendering/RenderElement.h:
(WebCore::RenderElement::willChangeCreatesStackingContext): Deleted.
* rendering/RenderInline.h:
(WebCore::RenderInline::willChangeCreatesStackingContext):
* rendering/style/WillChangeData.cpp:
(WebCore::propertyCreatesStackingContext): Deleted.

LayoutTests:

Test that will-change: -webkit-backface-visibility does not create
stacking context.

* fast/css/will-change/resources/will-change-stacking-helper.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188604 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoIntroduce non-user-observable Promise functions to use Promises internally
utatane.tea@gmail.com [Tue, 18 Aug 2015 22:32:13 +0000 (22:32 +0000)]
Introduce non-user-observable Promise functions to use Promises internally
https://bugs.webkit.org/show_bug.cgi?id=148118

Reviewed by Saam Barati.

To leverage the Promises internally (like ES6 Module Loaders), we add
the several non-user-observable private methods, like @then, @all. And
refactor the existing Promises implementation to make it easy to use
internally.

But still the trappable part remains. When resolving the promise with
the returned value, we look up the "then" function. So users can trap
by replacing "then" function of the Promise's prototype.
To avoid this situation, we'll introduce completely differnt promise
instances called InternalPromise in the subsequent patch[1].

No behavior change.

[1]: https://bugs.webkit.org/show_bug.cgi?id=148136

* builtins/PromiseConstructor.js:
(privateAll.newResolveElement):
(privateAll):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::visitChildren): Deleted.
* runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::promiseConstructor): Deleted.
(JSC::JSGlobalObject::promisePrototype): Deleted.
(JSC::JSGlobalObject::promiseStructure): Deleted.
* runtime/JSPromiseConstructor.cpp:
(JSC::JSPromiseConstructor::finishCreation):
* runtime/JSPromiseDeferred.cpp:
(JSC::callFunction):
(JSC::JSPromiseDeferred::resolve):
(JSC::JSPromiseDeferred::reject):
* runtime/JSPromiseDeferred.h:
* runtime/JSPromisePrototype.cpp:
(JSC::JSPromisePrototype::create):
(JSC::JSPromisePrototype::JSPromisePrototype):
* runtime/JSPromisePrototype.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188603 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoREGRESSION: Playing audio causes near-instant crash
andersca@apple.com [Tue, 18 Aug 2015 22:18:47 +0000 (22:18 +0000)]
REGRESSION: Playing audio causes near-instant crash
https://bugs.webkit.org/show_bug.cgi?id=148059
rdar://problem/22282680

Reviewed by Sam Weinig.

The version of WebKit that Safari 6.2.8, 7.1.8 and 8.0.8 built against
had an ABI incompatible WKPageUIClientV4 struct. Thankfully we're not going to ship any
versions of Safari that use the "normal" WKPageUIClientV4 struct so just assume that it's always the
broken one and fix it up by converting it to a WKPageUIClientV5 struct and setting that as the page UI client.

* UIProcess/API/C/WKPage.cpp:
(fixUpBotchedPageUIClient):
(WKPageSetPageUIClient):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188602 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Modernize CSSStyleManager
joepeck@webkit.org [Tue, 18 Aug 2015 22:11:40 +0000 (22:11 +0000)]
Web Inspector: Modernize CSSStyleManager
https://bugs.webkit.org/show_bug.cgi?id=148143

Reviewed by Brian Burg.

* UserInterface/Controllers/CSSStyleManager.js:
  - Eliminate `delete` operator use.
  - Move from using Objects as hashmaps to Map.
  - Fix typos.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188601 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, fix the cairo build after r188594.
achristensen@apple.com [Tue, 18 Aug 2015 22:05:48 +0000 (22:05 +0000)]
Unreviewed, fix the cairo build after r188594.

* platform/network/curl/CurlDownload.h:
* platform/network/curl/ResourceHandleManager.cpp:
Include Lock.h

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188600 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMark fast/css/will-change/will-change-creates-stacking-context.html as an image-only
simon.fraser@apple.com [Tue, 18 Aug 2015 21:54:38 +0000 (21:54 +0000)]
Mark fast/css/will-change/will-change-creates-stacking-context.html as an image-only
failure. Filed webkit.org/b/148144 to track it.

* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188599 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: load ProtocolTestStub from the WebInspectorUI bundle
bburg@apple.com [Tue, 18 Aug 2015 21:53:23 +0000 (21:53 +0000)]
Web Inspector: load ProtocolTestStub from the WebInspectorUI bundle
https://bugs.webkit.org/show_bug.cgi?id=147955

Reviewed by Timothy Hatcher.

Source/WebInspectorUI:

Move ProtocolTestStub.{html,js} into the actual WebInspectorUI project.

* UserInterface/Base/TestStub.js: Renamed from LayoutTests/http/tests/inspector/resources/ProtocolTestStub.js.
* UserInterface/TestStub.html: Renamed from LayoutTests/http/tests/inspector/resources/ProtocolTestStub.html.

Tools:

To enable sharing of common test code between protocol and model tests,
start loading the protocol TestStub.js through the WebInspectorUI bundle.

This patch adds the read-only getter TestRunner.inspectorTestStubURL, which
protocol-test.js uses to load the inspector frontend stub into its iframe
from an arbitrary local file URL.

* DumpRenderTree/TestRunner.cpp:
(getInspectorTestStubURLCallback):
(TestRunner::staticValues):
* DumpRenderTree/TestRunner.h:
* DumpRenderTree/mac/TestRunnerMac.mm:
(SOFT_LINK_STAGED_FRAMEWORK):
(TestRunner::inspectorTestStubURL):
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::inspectorTestStubURL):
* WebKitTestRunner/Configurations/Base.xcconfig:
Since WebKitTestRunner now includes WebCore private headers, also search
for the WebCore framework inside the WebKit umbrella framework.

* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/InjectedBundle/efl/TestRunnerEfl.cpp:
(WTR::TestRunner::inspectorTestStubURL):
* WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
(WTR::TestRunner::inspectorTestStubURL):
* WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
(WTR::TestRunner::inspectorTestStubURL):

LayoutTests:

Since the inspector stub cannot open files that live in the LayoutTests
directory, adopt the test helper marshalling approach used by inspector.js.
Each helper must register its code for marshalling and explicitly put globals
on the window object.

Use script tags rather than importScript to include helpers in a test.

* TestExpectations: For now, skip inspector http tests. These should be rewritten
to use inspector-test.js, which does not run into cross-origin problems.

Rebaseline some test results to account for shifted line numbers (yuck).

* http/tests/inspector/dom/resources/InspectorDOMListener.js:
* http/tests/inspector/resources/console-test.js:
* http/tests/inspector/resources/probe-test.js:
* http/tests/inspector/resources/protocol-test.js:
(ProtocolTestProxy.registerInitializer):
(log):
(runTest.runInitializationMethodsInFrontend):
(runTest.runTestMethodInFrontend):
(runTest):
* inspector/console/console-message.html:
* inspector/console/css-source-locations-expected.txt:
* inspector/console/css-source-locations.html:
* inspector/console/js-source-locations-expected.txt:
* inspector/console/js-source-locations.html:
* inspector/console/x-frame-options-message-expected.txt:
* inspector/console/x-frame-options-message.html:
* inspector/debugger/didSampleProbe-multiple-probes.html:
* inspector/debugger/setBreakpoint-actions.html:
* inspector/debugger/setBreakpoint-options-exception.html:
* inspector/dom/dom-search-expected.txt:
* inspector/dom/dom-search-with-context.html:
* inspector/dom/dom-search.html:
* inspector/dom/resources/dom-search-queries.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188598 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Win] Test gardening after r188591
mmaxfield@apple.com [Tue, 18 Aug 2015 21:45:29 +0000 (21:45 +0000)]
[Win] Test gardening after r188591
https://bugs.webkit.org/show_bug.cgi?id=148119

Unreviewed.

* platform/win/fast/text/trak-optimizeLegibility-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188597 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, fix GTK build.
fpizlo@apple.com [Tue, 18 Aug 2015 21:28:31 +0000 (21:28 +0000)]
Unreviewed, fix GTK build.

* TestWebKitAPI/Tests/WTF/glib/WorkQueueGLib.cpp:
(TestWebKitAPI::TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188596 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, fix the cairo build.
fpizlo@apple.com [Tue, 18 Aug 2015 19:52:53 +0000 (19:52 +0000)]
Unreviewed, fix the cairo build.

* platform/graphics/win/MediaPlayerPrivateMediaFoundation.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188595 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoReplace all remaining uses of WTF::Mutex with WTF::Lock
fpizlo@apple.com [Tue, 18 Aug 2015 19:31:28 +0000 (19:31 +0000)]
Replace all remaining uses of WTF::Mutex with WTF::Lock
https://bugs.webkit.org/show_bug.cgi?id=148089

Reviewed by Geoffrey Garen.

Source/WebCore:

No new tests because no new behavior.

* Modules/webaudio/AsyncAudioDecoder.cpp:
(WebCore::AsyncAudioDecoder::AsyncAudioDecoder):
(WebCore::AsyncAudioDecoder::runLoop):
* Modules/webaudio/AsyncAudioDecoder.h:
* Modules/webaudio/AudioContext.h:
* Modules/webaudio/MediaStreamAudioSource.cpp:
(WebCore::MediaStreamAudioSource::addAudioConsumer):
(WebCore::MediaStreamAudioSource::removeAudioConsumer):
(WebCore::MediaStreamAudioSource::setAudioFormat):
(WebCore::MediaStreamAudioSource::consumeAudio):
* Modules/webaudio/MediaStreamAudioSource.h:
* Modules/webdatabase/Database.cpp:
(WebCore::Database::close):
(WebCore::Database::runTransaction):
(WebCore::Database::inProgressTransactionCompleted):
(WebCore::Database::hasPendingTransaction):
* Modules/webdatabase/Database.h:
* Modules/webdatabase/DatabaseTask.cpp:
(WebCore::DatabaseTaskSynchronizer::taskCompleted):
* Modules/webdatabase/DatabaseTask.h:
* Modules/webdatabase/DatabaseThread.cpp:
(WebCore::DatabaseThread::start):
(WebCore::DatabaseThread::databaseThread):
* Modules/webdatabase/DatabaseThread.h:
* Modules/webdatabase/DatabaseTracker.cpp:
(WebCore::DatabaseTracker::setDatabaseDirectoryPath):
(WebCore::DatabaseTracker::canEstablishDatabase):
(WebCore::DatabaseTracker::retryCanEstablishDatabase):
(WebCore::DatabaseTracker::hasEntryForOrigin):
(WebCore::DatabaseTracker::getMaxSizeForDatabase):
(WebCore::DatabaseTracker::closeAllDatabases):
(WebCore::DatabaseTracker::fullPathForDatabase):
(WebCore::DatabaseTracker::origins):
(WebCore::DatabaseTracker::databaseNamesForOrigin):
(WebCore::DatabaseTracker::detailsForNameAndOrigin):
(WebCore::DatabaseTracker::setDatabaseDetails):
(WebCore::DatabaseTracker::doneCreatingDatabase):
(WebCore::DatabaseTracker::addOpenDatabase):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::getOpenDatabases):
(WebCore::DatabaseTracker::originLockFor):
(WebCore::DatabaseTracker::quotaForOrigin):
(WebCore::DatabaseTracker::setQuota):
(WebCore::DatabaseTracker::deleteOrigin):
(WebCore::DatabaseTracker::deleteDatabase):
(WebCore::DatabaseTracker::deleteDatabaseFile):
(WebCore::DatabaseTracker::removeDeletedOpenedDatabases):
(WebCore::DatabaseTracker::deleteDatabaseFileIfEmpty):
(WebCore::DatabaseTracker::openDatabaseMutex):
(WebCore::DatabaseTracker::setClient):
(WebCore::notificationMutex):
(WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
(WebCore::DatabaseTracker::notifyDatabasesChanged):
* Modules/webdatabase/DatabaseTracker.h:
* Modules/webdatabase/OriginLock.h:
* Modules/webdatabase/SQLCallbackWrapper.h:
(WebCore::SQLCallbackWrapper::clear):
(WebCore::SQLCallbackWrapper::unwrap):
(WebCore::SQLCallbackWrapper::hasCallback):
* Modules/webdatabase/SQLTransactionBackend.cpp:
(WebCore::SQLTransactionBackend::doCleanup):
(WebCore::SQLTransactionBackend::enqueueStatementBackend):
(WebCore::SQLTransactionBackend::getNextStatement):
* Modules/webdatabase/SQLTransactionBackend.h:
* bindings/js/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::scheduleExecutionTermination):
(WebCore::WorkerScriptController::isExecutionTerminating):
* bindings/js/WorkerScriptController.h:
* dom/default/PlatformMessagePortChannel.cpp:
(WebCore::MessagePortChannel::postMessageToRemote):
(WebCore::MessagePortChannel::tryGetMessageFromRemote):
(WebCore::MessagePortChannel::isConnectedTo):
(WebCore::MessagePortChannel::hasPendingActivity):
(WebCore::MessagePortChannel::locallyEntangledPort):
(WebCore::PlatformMessagePortChannel::setRemotePort):
(WebCore::PlatformMessagePortChannel::entangledChannel):
(WebCore::PlatformMessagePortChannel::closeInternal):
* dom/default/PlatformMessagePortChannel.h:
* loader/icon/IconDatabase.cpp:
(WebCore::IconDatabase::removeAllIcons):
(WebCore::IconDatabase::synchronousIconForPageURL):
(WebCore::IconDatabase::synchronousNativeIconForPageURL):
(WebCore::IconDatabase::synchronousIconURLForPageURL):
(WebCore::IconDatabase::retainIconForPageURL):
(WebCore::IconDatabase::performRetainIconForPageURL):
(WebCore::IconDatabase::releaseIconForPageURL):
(WebCore::IconDatabase::performReleaseIconForPageURL):
(WebCore::IconDatabase::setIconDataForIconURL):
(WebCore::IconDatabase::setIconURLForPageURL):
(WebCore::IconDatabase::synchronousLoadDecisionForIconURL):
(WebCore::IconDatabase::synchronousIconDataKnownForIconURL):
(WebCore::IconDatabase::pageURLMappingCount):
(WebCore::IconDatabase::retainedPageURLCount):
(WebCore::IconDatabase::iconRecordCount):
(WebCore::IconDatabase::iconRecordCountWithData):
(WebCore::IconDatabase::wakeSyncThread):
(WebCore::IconDatabase::scheduleOrDeferSyncTimer):
(WebCore::IconDatabase::isOpenBesidesMainThreadCallbacks):
(WebCore::IconDatabase::databasePath):
(WebCore::IconDatabase::getOrCreatePageURLRecord):
(WebCore::IconDatabase::iconDatabaseSyncThread):
(WebCore::IconDatabase::performOpenInitialization):
(WebCore::IconDatabase::performURLImport):
(WebCore::IconDatabase::syncThreadMainLoop):
(WebCore::IconDatabase::performPendingRetainAndReleaseOperations):
(WebCore::IconDatabase::readFromDatabase):
(WebCore::IconDatabase::writeToDatabase):
(WebCore::IconDatabase::pruneUnretainedIcons):
(WebCore::IconDatabase::cleanupSyncThread):
* loader/icon/IconDatabase.h:
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::shouldHandleWheelEventSynchronously):
(WebCore::ScrollingTree::commitNewTreeState):
(WebCore::ScrollingTree::setMainFramePinState):
(WebCore::ScrollingTree::mainFrameScrollPosition):
(WebCore::ScrollingTree::setMainFrameScrollPosition):
(WebCore::ScrollingTree::isPointInNonFastScrollableRegion):
(WebCore::ScrollingTree::isRubberBandInProgress):
(WebCore::ScrollingTree::setMainFrameIsRubberBanding):
(WebCore::ScrollingTree::isScrollSnapInProgress):
(WebCore::ScrollingTree::setMainFrameIsScrollSnapping):
(WebCore::ScrollingTree::setCanRubberBandState):
(WebCore::ScrollingTree::rubberBandsAtLeft):
(WebCore::ScrollingTree::rubberBandsAtRight):
(WebCore::ScrollingTree::rubberBandsAtBottom):
(WebCore::ScrollingTree::rubberBandsAtTop):
(WebCore::ScrollingTree::setScrollPinningBehavior):
(WebCore::ScrollingTree::scrollPinningBehavior):
(WebCore::ScrollingTree::willWheelEventStartSwipeGesture):
(WebCore::ScrollingTree::latchedNode):
(WebCore::ScrollingTree::setLatchedNode):
(WebCore::ScrollingTree::clearLatchedNode):
* page/scrolling/ScrollingTree.h:
* platform/MemoryPressureHandler.h:
* platform/audio/HRTFDatabaseLoader.cpp:
(WebCore::HRTFDatabaseLoader::loadAsynchronously):
(WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):
* platform/audio/HRTFDatabaseLoader.h:
* platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::setReceivedMemoryPressure):
(WebCore::MemoryPressureHandler::clearMemoryPressure):
(WebCore::MemoryPressureHandler::shouldWaitForMemoryClearMessage):
(WebCore::MemoryPressureHandler::respondToMemoryPressureIfNeeded):
* platform/graphics/DisplayRefreshMonitor.cpp:
(WebCore::DisplayRefreshMonitor::displayDidRefresh):
* platform/graphics/DisplayRefreshMonitor.h:
(WebCore::DisplayRefreshMonitor::setMonotonicAnimationStartTime):
(WebCore::DisplayRefreshMonitor::mutex):
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::setDelayCallbacks):
(WebCore::MediaPlayerPrivateAVFoundation::clearMainThreadPendingFlag):
(WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::AVFWrapper::callbackContext):
(WebCore::AVFWrapper::~AVFWrapper):
(WebCore::AVFWrapper::mapLock):
(WebCore::AVFWrapper::addToMap):
(WebCore::AVFWrapper::removeFromMap):
(WebCore::AVFWrapper::periodicTimeObserverCallback):
(WebCore::AVFWrapper::processNotification):
(WebCore::AVFWrapper::loadPlayableCompletionCallback):
(WebCore::AVFWrapper::loadMetadataCompletionCallback):
(WebCore::AVFWrapper::seekCompletedCallback):
(WebCore::AVFWrapper::processCue):
(WebCore::AVFWrapper::legibleOutputCallback):
(WebCore::AVFWrapper::processShouldWaitForLoadingOfResource):
(WebCore::AVFWrapper::resourceLoaderShouldWaitForLoadingOfRequestedResource):
* platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:
(WebCore::InbandTextTrackPrivateGStreamer::handleSample):
(WebCore::InbandTextTrackPrivateGStreamer::notifyTrackOfSample):
* platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::TrackPrivateBaseGStreamer::tagsChanged):
(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged):
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
* platform/graphics/mac/DisplayRefreshMonitorMac.cpp:
(WebCore::DisplayRefreshMonitorMac::requestRefreshCallback):
(WebCore::DisplayRefreshMonitorMac::displayLinkFired):
* platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:
(WebCore::MediaPlayerPrivateMediaFoundation::addListener):
(WebCore::MediaPlayerPrivateMediaFoundation::removeListener):
(WebCore::MediaPlayerPrivateMediaFoundation::notifyDeleted):
(WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::Invoke):
(WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::onMediaPlayerDeleted):
* platform/graphics/win/MediaPlayerPrivateMediaFoundation.h:
* platform/ios/LegacyTileCache.h:
* platform/ios/LegacyTileCache.mm:
(WebCore::LegacyTileCache::setTilesOpaque):
(WebCore::LegacyTileCache::doLayoutTiles):
(WebCore::LegacyTileCache::setCurrentScale):
(WebCore::LegacyTileCache::commitScaleChange):
(WebCore::LegacyTileCache::layoutTilesNow):
(WebCore::LegacyTileCache::layoutTilesNowForRect):
(WebCore::LegacyTileCache::removeAllNonVisibleTiles):
(WebCore::LegacyTileCache::removeAllTiles):
(WebCore::LegacyTileCache::removeForegroundTiles):
(WebCore::LegacyTileCache::setContentReplacementImage):
(WebCore::LegacyTileCache::contentReplacementImage):
(WebCore::LegacyTileCache::tileCreationTimerFired):
(WebCore::LegacyTileCache::setNeedsDisplayInRect):
(WebCore::LegacyTileCache::updateTilingMode):
(WebCore::LegacyTileCache::setTilingMode):
(WebCore::LegacyTileCache::doPendingRepaints):
(WebCore::LegacyTileCache::flushSavedDisplayRects):
(WebCore::LegacyTileCache::prepareToDraw):
* platform/ios/LegacyTileLayerPool.h:
* platform/ios/LegacyTileLayerPool.mm:
(WebCore::LegacyTileLayerPool::addLayer):
(WebCore::LegacyTileLayerPool::takeLayerWithSize):
(WebCore::LegacyTileLayerPool::setCapacity):
(WebCore::LegacyTileLayerPool::prune):
(WebCore::LegacyTileLayerPool::drain):
* platform/network/curl/CurlDownload.cpp:
(WebCore::CurlDownloadManager::add):
(WebCore::CurlDownloadManager::remove):
(WebCore::CurlDownloadManager::getActiveDownloadCount):
(WebCore::CurlDownloadManager::getPendingDownloadCount):
(WebCore::CurlDownloadManager::stopThreadIfIdle):
(WebCore::CurlDownloadManager::updateHandleList):
(WebCore::CurlDownload::~CurlDownload):
(WebCore::CurlDownload::init):
(WebCore::CurlDownload::getTempPath):
(WebCore::CurlDownload::getUrl):
(WebCore::CurlDownload::getResponse):
(WebCore::CurlDownload::closeFile):
(WebCore::CurlDownload::didReceiveHeader):
(WebCore::CurlDownload::didReceiveData):
(WebCore::CurlDownload::didFail):
* platform/network/curl/CurlDownload.h:
* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::cookieJarPath):
(WebCore::sharedResourceMutex):
(WebCore::curl_lock_callback):
(WebCore::curl_unlock_callback):
* platform/network/ios/QuickLook.mm:
(WebCore::QLDirectoryAttributes):
(qlPreviewConverterDictionaryMutex):
(WebCore::addQLPreviewConverterWithFileForURL):
(WebCore::qlPreviewConverterUTIForURL):
(WebCore::removeQLPreviewConverterForURL):
(WebCore::safeQLURLForDocumentURLAndResourceURL):
* platform/sql/SQLiteDatabase.cpp:
(WebCore::SQLiteDatabase::close):
(WebCore::SQLiteDatabase::maximumSize):
(WebCore::SQLiteDatabase::setMaximumSize):
(WebCore::SQLiteDatabase::pageSize):
(WebCore::SQLiteDatabase::freeSpaceSize):
(WebCore::SQLiteDatabase::totalSize):
(WebCore::SQLiteDatabase::runIncrementalVacuumCommand):
(WebCore::SQLiteDatabase::setAuthorizer):
* platform/sql/SQLiteDatabase.h:
(WebCore::SQLiteDatabase::databaseMutex):
* platform/sql/SQLiteStatement.cpp:
(WebCore::SQLiteStatement::prepare):
(WebCore::SQLiteStatement::step):
* workers/WorkerThread.cpp:
(WebCore::WorkerThread::start):
(WebCore::WorkerThread::workerThread):
(WebCore::WorkerThread::stop):
* workers/WorkerThread.h:

Source/WebKit:

* Storage/StorageAreaSync.cpp:
(WebCore::StorageAreaSync::syncTimerFired):
(WebCore::StorageAreaSync::markImported):
(WebCore::StorageAreaSync::blockUntilImportComplete):
(WebCore::StorageAreaSync::performSync):
* Storage/StorageAreaSync.h:
* Storage/StorageTracker.cpp:
(WebCore::StorageTracker::setDatabaseDirectoryPath):
(WebCore::StorageTracker::finishedImportingOriginIdentifiers):
(WebCore::StorageTracker::syncImportOriginIdentifiers):
(WebCore::StorageTracker::syncFileSystemAndTrackerDatabase):
(WebCore::StorageTracker::setOriginDetails):
(WebCore::StorageTracker::syncSetOriginDetails):
(WebCore::StorageTracker::origins):
(WebCore::StorageTracker::deleteAllOrigins):
(WebCore::StorageTracker::syncDeleteAllOrigins):
(WebCore::StorageTracker::deleteOrigin):
(WebCore::StorageTracker::syncDeleteOrigin):
(WebCore::StorageTracker::canDeleteOrigin):
(WebCore::StorageTracker::cancelDeletingOrigin):
(WebCore::StorageTracker::diskUsageForOrigin):
* Storage/StorageTracker.h:

Source/WebKit/ios:

* WebCoreSupport/WebFixedPositionContent.mm:
(WebFixedPositionContentDataLock):
(-[WebFixedPositionContent scrollOrZoomChanged:]):
(-[WebFixedPositionContent overflowScrollPositionForLayer:changedTo:]):
(-[WebFixedPositionContent setViewportConstrainedLayers:stickyContainerMap:]):
(-[WebFixedPositionContent hasFixedOrStickyPositionLayers]):
(-[WebFixedPositionContent minimumOffsetFromFixedPositionLayersToAnchorEdge:ofRect:inLayer:]):

Source/WebKit/mac:

* Storage/WebDatabaseManager.mm:
(transactionBackgroundTaskIdentifierLock):
(+[WebDatabaseManager startBackgroundTask]):
(+[WebDatabaseManager endBackgroundTask]):
* WebView/WebView.mm:
(-[WebView _synchronizeCustomFixedPositionLayoutRect]):
(-[WebView _setCustomFixedPositionLayoutRectInWebThread:synchronize:]):
(-[WebView _setCustomFixedPositionLayoutRect:]):
(-[WebView _fetchCustomFixedPositionLayoutRect:]):
* WebView/WebViewData.h:

Source/WebKit/win:

* Plugins/PluginMainThreadScheduler.cpp:
(WebCore::PluginMainThreadScheduler::scheduleCall):
(WebCore::PluginMainThreadScheduler::registerPlugin):
(WebCore::PluginMainThreadScheduler::unregisterPlugin):
(WebCore::PluginMainThreadScheduler::dispatchCallsForPlugin):
* Plugins/PluginMainThreadScheduler.h:
* WebIconDatabase.cpp:
(WebIconDatabase::didRemoveAllIcons):
(WebIconDatabase::didImportIconURLForPageURL):
(WebIconDatabase::deliverNotifications):
* WebIconDatabase.h:
* WebLocalizableStrings.cpp:
(mainBundleLocStrings):
(frameworkLocStringsMutex):
(findCachedString):
(cacheString):

Source/WebKit2:

* DatabaseProcess/DatabaseProcess.cpp:
(WebKit::DatabaseProcess::postDatabaseTask):
(WebKit::DatabaseProcess::performNextDatabaseTask):
* DatabaseProcess/DatabaseProcess.h:
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::shutdown):
(WebKit::UniqueIDBDatabase::postMainThreadTask):
(WebKit::UniqueIDBDatabase::performNextMainThreadTask):
(WebKit::UniqueIDBDatabase::postDatabaseTask):
(WebKit::UniqueIDBDatabase::performNextDatabaseTask):
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
* Platform/IPC/Connection.cpp:
(IPC::Connection::sendSyncMessage):
(IPC::Connection::sendSyncMessageFromSecondaryThread):
(IPC::Connection::waitForSyncReply):
(IPC::Connection::processIncomingSyncReply):
(IPC::Connection::connectionDidClose):
* Platform/IPC/Connection.h:
* Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
(WebKit::CoordinatedGraphicsScene::appendUpdate):
* Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h:
* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
(WebKit::ThreadedCompositor::createCompositingThread):
(WebKit::ThreadedCompositor::runCompositingThread):
(WebKit::ThreadedCompositor::terminateCompositingThread):
* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
* Shared/Network/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm:
(WebKit::CustomProtocolManager::addCustomProtocol):
(WebKit::CustomProtocolManager::removeCustomProtocol):
(WebKit::CustomProtocolManager::registerScheme):
(WebKit::CustomProtocolManager::unregisterScheme):
(WebKit::CustomProtocolManager::supportsScheme):
(WebKit::CustomProtocolManager::protocolForID):
* Shared/Network/CustomProtocols/CustomProtocolManager.h:
* Shared/linux/SeccompFilters/SeccompBroker.cpp:
* WebProcess/Plugins/PluginProcessConnectionManager.cpp:
(WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
(WebKit::PluginProcessConnectionManager::removePluginProcessConnection):
(WebKit::PluginProcessConnectionManager::pluginProcessCrashed):
* WebProcess/Plugins/PluginProcessConnectionManager.h:
* WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::addScrollingTreeForPage):
(WebKit::EventDispatcher::removeScrollingTreeForPage):
(WebKit::EventDispatcher::wheelEvent):
* WebProcess/WebPage/EventDispatcher.h:
* WebProcess/soup/WebKitSoupRequestInputStream.cpp:
(webkitSoupRequestInputStreamReadAsync):
(webkitSoupRequestInputStreamAddData):

Source/WTF:

This also beefs up and rationalizes the Condition API, so that it can deal with units of time
other than just steady_clock. This makes it easier to port ThreadCondition and
std::condition_variable code over to Condition. This patch does not take a position on what
kind of time is best; from reading a lot of the uses in WebCore, it seems like our use of
double to measure seconds is often nicer than the many different classes in std::chrono.

Also added a Condition speed test, to make sure that all of this is a good idea. And indeed it
is. The 1-producer/1-consumer scenario with a 100-element queue runs 36x faster using
Lock/Condition than Mutex/ThreadCondition when you use the notifyOne()-per-enqueue style. It
runs 58x faster with Lock/Condition when you use the notifyAll()-at-boundary style. Note that
I have a bug open for making the notifyOne()-per-enqueue style even faster:
https://bugs.webkit.org/show_bug.cgi?id=148090. Also, the 10-consumer/10-producer scenario with
a 100-element queue runs 20x faster with Lock/Condition for notifyOne()-per-enqueue and 30x
faster with notifyAll()-at-boundary. The only way to tweak the test to get
Mutex/ThreadCondition to win is to have one producer, one consumer, a 1-element queue, and use
the notifyOne()-per-enqueue style. In that case, one of the two threads is going to be waiting
most of the time and the test basically measures wake-up latency and nothing else. Because
Condition::wait() does a little bit more work than ThreadCondition::wait(),
Mutex/ThreadCondition end up running 3% faster in this test case. But if you vary any of the
parameters of the test, Mutex/ThreadCondition ends up losing - all it takes is more threads or
a queue size of 5 or more. To my knowledge, we never do producer/consumer with a queue bounded
to one element precisely because that approach is the least efficient regardless of locking
algorithm. For example, neither WTF::MessageQueue nor DFG::Worklist have any bounds on their
queue size. So, it seems that replacing all uses of system mutexes and condition variables with
our own thing is a great idea.

* benchmarks/LockSpeedTest.cpp:
* benchmarks/ConditionSpeedTest.cpp: Added.
* wtf/Condition.h:
(WTF::Condition::Condition):
(WTF::Condition::waitUntil):
(WTF::Condition::waitFor):
(WTF::Condition::wait):
(WTF::Condition::waitUntilWallClockSeconds):
(WTF::Condition::waitUntilMonotonicClockSeconds):
(WTF::Condition::notifyOne):
(WTF::Condition::notifyAll):
(WTF::Condition::waitForSecondsImpl):
(WTF::Condition::waitForImpl):
(WTF::Condition::absoluteFromRelative):
* wtf/MessageQueue.h:
(WTF::MessageQueue::infiniteTime):
(WTF::MessageQueue<DataType>::append):
(WTF::MessageQueue<DataType>::appendAndKill):
(WTF::MessageQueue<DataType>::appendAndCheckEmpty):
(WTF::MessageQueue<DataType>::prepend):
(WTF::MessageQueue<DataType>::removeIf):
(WTF::MessageQueue<DataType>::isEmpty):
(WTF::MessageQueue<DataType>::kill):
(WTF::MessageQueue<DataType>::killed):
* wtf/ParallelJobsGeneric.cpp:
(WTF::ParallelEnvironment::ThreadPrivate::execute):
(WTF::ParallelEnvironment::ThreadPrivate::waitForFinish):
(WTF::ParallelEnvironment::ThreadPrivate::workerThread):
* wtf/ParallelJobsGeneric.h:
* wtf/ParkingLot.cpp:
(WTF::ParkingLot::parkConditionally):
* wtf/ParkingLot.h:
(WTF::ParkingLot::compareAndPark):
* wtf/ThreadingPthreads.cpp:
(WTF::initializeThreading):
* wtf/ThreadingWin.cpp:
(WTF::initializeThreading):
* wtf/dtoa.cpp:
(WTF::pow5mult):
* wtf/dtoa.h:

Tools:

* DumpRenderTree/JavaScriptThreading.cpp:
(javaScriptThreadsMutex):
(runJavaScriptThread):
(startJavaScriptThreads):
(stopJavaScriptThreads):
* TestWebKitAPI/Tests/WTF/Condition.cpp: Fixed a bug in the test that I found from turning the test into a benchmark.
* TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WTF/glib/WorkQueueGLib.cpp:
(TestWebKitAPI::TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188594 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoTry to fix the CLOOP build.
ggaren@apple.com [Tue, 18 Aug 2015 19:28:37 +0000 (19:28 +0000)]
Try to fix the CLOOP build.

Unreviewed.

* bytecode/CodeBlock.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188593 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agohttp/tests/navigation/page-cache-iframe-provisional-load.html is flaky
cdumez@apple.com [Tue, 18 Aug 2015 19:24:15 +0000 (19:24 +0000)]
http/tests/navigation/page-cache-iframe-provisional-load.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=148133

Reviewed by Alexey Proskuryakov.

http/tests/navigation/page-cache-iframe-provisional-load.html would fail if
the slow load would finish before navigating away. To greatly reduce the
chances of it happening, increase the slow load delay from 100ms to 3s.

Also make the test faster by using page-cache-helper.html instead of
page-cache-helper-slow.html. The idea of using a slow helper was for the
load to potentially finish while the page was in the PageCache. However,
now that we've increased the slow load delay, this will no longer happen.

* http/tests/navigation/page-cache-iframe-provisional-load.html:
* http/tests/navigation/resources/page-cache-helper-slow.html: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188592 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Cocoa] Honor the 'trak' table by opting in via text-rendering: optimizeLegibility
mmaxfield@apple.com [Tue, 18 Aug 2015 19:19:49 +0000 (19:19 +0000)]
[Cocoa] Honor the 'trak' table by opting in via text-rendering: optimizeLegibility
https://bugs.webkit.org/show_bug.cgi?id=148119
<rdar://problem/22291561>

Reviewed by Tim Horton.

Source/WebCore:

When the author has opted in by specifying "text-rendering: optimizeLegibility;", we should
honor the font's 'trak' table. We do this by specifying kCTFontOpticalSizeAttribute at font
creation time, and by using CTFontGetAdvancesForGlyphs() instead of
CGFontGetGlyphAdvancesForStyle().

Test: fast/text/trak-optimizeLegibility.html

* platform/graphics/FontCache.h:
(WebCore::FontDescriptionKey::makeFlagKey): Make our caches sensitive to TextRenderingMode.
* platform/graphics/FontPlatformData.cpp:
(WebCore::FontPlatformData::FontPlatformData): Add a TextRenderingMode member variable.
(WebCore::FontPlatformData::operator=): Update to consult with the new member.
* platform/graphics/FontPlatformData.h:
(WebCore::FontPlatformData::textRenderingMode): Getter.
* platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::preparePlatformFont): Specify kCTFontOpticalSizeAttribute.
(WebCore::applyFontFeatureSettings): Deleted.
* platform/graphics/cocoa/FontCocoa.mm:
(WebCore::canUseFastGlyphAdvanceGetter): Use CTFontGetAdvancesForGlyphs() if we are
optimizeLegibility.
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore::FontPlatformData::FontPlatformData): Pass the TextRenderingMode around.
* platform/graphics/ios/FontCacheIOS.mm:
(WebCore::FontCache::getSystemFontFallbackForCharacters): Update to call renamed function.
(WebCore::FontCache::createFontPlatformData): Ditto.
* platform/graphics/mac/FontCacheMac.mm:
(WebCore::fontWithFamily): Ditto.
(WebCore::FontCache::systemFallbackForCharacters): Ditto.
(WebCore::FontCache::createFontPlatformData): Ditto.
* platform/graphics/mac/FontCustomPlatformData.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData): Ditto.
* platform/spi/cocoa/CoreTextSPI.h:
* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::updateCachedSystemFontDescription): Ditto.

LayoutTests:

This test will fail until we stop mocking the system font on El Capitan. Until then,
this patch will commit the test failure as an expected result.

* fast/text/trak-optimizeLegibility-expected.html: Added
* fast/text/trak-optimizeLegibility.html: Added

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188591 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMake our bindings' GetOwnPropertySlot() behave according to specification
cdumez@apple.com [Tue, 18 Aug 2015 19:15:44 +0000 (19:15 +0000)]
Make our bindings' GetOwnPropertySlot() behave according to specification
https://bugs.webkit.org/show_bug.cgi?id=148092

Reviewed by Geoffrey Garen.

Source/WebCore:

Make our bindings' GetOwnPropertySlot() behave according to
specification. In particular, our bindings use to do:
1. Indexed getter
2. Check static properties
3. Prototype check
4. Named getter
5. Check own properties

According to the specification [1][2], we should do:
- If the interface has [OverrideBuiltins]:
    1. Indexed getter
    2. Named getter
    3. Static / own properties
- Otherwise:
    1. Indexed getter
    2. Static / own properties
    3. Prototype check
    4. Named getter

This patch adds support for the [OverrideBuiltins] IDL extended
attribute [3] and aligns our bindings implementation with the Web IDL
specification weither that IDL extended attribute is present or
not.

[1] https://heycam.github.io/webidl/#getownproperty-guts
[2] https://heycam.github.io/webidl/#dfn-named-property-visibility
[3] https://heycam.github.io/webidl/#OverrideBuiltins

Performance:
- PerformanceTests/Bindings/childNodes-traversal.html: ~Same
- PerformanceTests/Bindings/children-traversal.html: +104% :)

No new tests, covered by:
fast/dom/htmlcollection-getownproperty.html
fast/dom/collection-length-should-not-be-overridden.html
fast/forms/input-named-action-overrides-action-attribute.html

* bindings/js/JSHTMLCollectionCustom.cpp:
(WebCore::JSHTMLCollection::nameGetter):
Add assertions to make sure we don't use HTMLCollection's namedGetter()
for HTMLFormControlsCollection / HTMLOptionsCollection subclasses.
We should use the subclasses' namedGetter() instead.

* bindings/js/JSHTMLOptionsCollectionCustom.cpp:
(WebCore::JSHTMLOptionsCollection::canGetItemsForName):
(WebCore::JSHTMLOptionsCollection::nameGetter):
Add code for handling named getter requests on
HTMLOptionsCollection.

* bindings/js/JSNodeListCustom.cpp:
(WebCore::JSNodeList::canGetItemsForName):
(WebCore::JSNodeList::nameGetter):
Refactor custom code for the NodeList named getter, now that the
IDL interface is using [CustomNamedGetter] instead of
[JSCustomGetOwnPropertySlotAndDescriptor].

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotBody):
(GenerateHeaderContentHeader): Deleted.
- Add support for the [OverrideBuiltins] IDL extended attribute and
update the generated getOwnPropertySlot() methods to match the
Web IDL specification.
- Also drop the JSC::HasImpureGetOwnPropertySlot flag for interfaces
that have a named getter but NOT the [OverrideBuiltins] IDL extended
attribute. Without [OverrideBuiltins], named properties can no longer
shadow own properties so we no longer need to mark GetOwnPropertySlot
as impure. This allows caching of properties.

* bindings/scripts/IDLAttributes.txt:
Add [OverrideBuiltins] IDL extended attribute [3].

* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
(WebCore::JSTestActiveDOMObject::getOwnPropertySlot):
* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
(WebCore::JSTestCustomNamedGetter::getOwnPropertySlot):
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::JSTestEventTarget::getOwnPropertySlot):
* bindings/scripts/test/JS/JSTestException.cpp:
(WebCore::JSTestException::getOwnPropertySlot):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterface::getOwnPropertySlot):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObj::getOwnPropertySlot):
Rebaseline the bindings tests as their getOwnPropertySlot() method
is now different.

* bindings/scripts/test/GObject/WebKitDOMTestOverrideBuiltins.cpp: Added.
* bindings/scripts/test/GObject/WebKitDOMTestOverrideBuiltins.h: Added.
* bindings/scripts/test/GObject/WebKitDOMTestOverrideBuiltinsPrivate.h: Added.
* bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp: Added.
* bindings/scripts/test/JS/JSTestOverrideBuiltins.h: Added.
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
* bindings/scripts/test/ObjC/DOMTestOverrideBuiltins.h: Added.
* bindings/scripts/test/ObjC/DOMTestOverrideBuiltins.mm: Added.
* bindings/scripts/test/ObjC/DOMTestOverrideBuiltinsInternal.h: Added.
* bindings/scripts/test/TestOverrideBuiltins.idl: Added.
Add bindings test coverage for the new [OverrideBuiltins] IDL extended
attribute [3].

* dom/DOMStringMap.idl:
Add [OverrideBuiltins] IDL extended attribute to match the specification:
https://html.spec.whatwg.org/multipage/infrastructure.html#domstringmap

* dom/NodeList.idl:
Use CustomNamedGetter IDL extended attribute instead of
JSCustomGetOwnPropertySlotAndDescriptor as NodeList merely implements
a custom named getter. This makes sure that the order in which the
named getter is called is correct as per the Web IDL specification.

* html/HTMLDocument.idl:
Add [OverrideBuiltins] IDL extended attribute to match the specification:
https://html.spec.whatwg.org/multipage/dom.html#the-document-object

* html/HTMLFormElement.idl:
Add [OverrideBuiltins] IDL extended attribute to match the specification:
https://html.spec.whatwg.org/multipage/forms.html#the-form-element

* html/HTMLOptionsCollection.idl:
Add missing 'getter' in front of the named getter, as the per the HTML
specification. Without this, HTMLOptionsCollection would not be
recognized as a named properties object, which means that we would not
check the HTMLOptionsCollection prototype before querying the named
getter on HTMLCollection. This used to work because the bindings
generator was hard-coding the prototype check for every HTML*Collection
IDL interface. In this patch, we generalized the check to every
interface that has a named getter.

LayoutTests:

* fast/dom/childnode-item-after-itemname.html:
Update the test so the item's id in the NodeList is "testItem"
instead of "item". NodeList has a method called item() which now
takes priority over the name when accessing Nodelist.item, as per
the Web IDL specification.

* fast/dom/htmlcollection-getownproperty-expected.txt:
Rebaseline test. This is a progression.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188590 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[CMake] REGRESSION(r188540): WebKitTestRunner is not longer built and all the tests...
achristensen@apple.com [Tue, 18 Aug 2015 19:09:12 +0000 (19:09 +0000)]
[CMake] REGRESSION(r188540): WebKitTestRunner is not longer built and all the tests (layout and perf) fail.
https://bugs.webkit.org/show_bug.cgi?id=148127

Reviewed by Martin Robinson.

* CMakeLists.txt:
TOOLS_DIR hasn't been set yet since its defining has been moved to WebKitFS.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@188589 268f45cc-cd09-0410-ab3c-d52691b4dbfc