WebKit-https.git
5 years agoUnreviewed gardening. Re-skip some obsolete EME tests.
jer.noble@apple.com [Wed, 10 Sep 2014 22:44:02 +0000 (22:44 +0000)]
Unreviewed gardening. Re-skip some obsolete EME tests.

* platform/mac/TestExpectations:

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

5 years agoWeb Inspector: Eliminate typeof "undefined" checks
commit-queue@webkit.org [Wed, 10 Sep 2014 22:41:20 +0000 (22:41 +0000)]
Web Inspector: Eliminate typeof "undefined" checks
https://bugs.webkit.org/show_bug.cgi?id=136691

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-09-10
Reviewed by Alexey Proskuryakov.

* UserInterface/Base/Main.js:
(WebInspector.linkifyURLAsNode):
(WebInspector.linkifyStringAsFragment):
* UserInterface/Protocol/InspectorBackend.js:
(InspectorBackend.Command.prototype._invokeWithArguments):
* UserInterface/Views/DataGrid.js:
(WebInspector.DataGrid.prototype.get resizeMethod):
* UserInterface/Views/NavigationBar.js:
(WebInspector.NavigationBar.prototype.get minimumWidth):

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

5 years agoRemove ImageSource::ShouldSkipMetadata
timothy_horton@apple.com [Wed, 10 Sep 2014 22:22:50 +0000 (22:22 +0000)]
Remove ImageSource::ShouldSkipMetadata
https://bugs.webkit.org/show_bug.cgi?id=136713

Reviewed by Pratik Solanki.

* platform/graphics/ImageSource.h:
* platform/graphics/cg/ImageSourceCG.cpp:
(WebCore::createImageSourceOptions):
(WebCore::imageSourceOptions):
(WebCore::ImageSource::frameSizeAtIndex):
(WebCore::ImageSource::createFrameAtIndex):
(WebCore::ImageSource::frameDurationAtIndex):
Remove ShouldSkipMetadata and users. Nobody ever uses DoNotSkipMetadata.

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

5 years agoWeb Inspector: Fix obscure ESLint warnings and skip directories
joepeck@webkit.org [Wed, 10 Sep 2014 22:13:59 +0000 (22:13 +0000)]
Web Inspector: Fix obscure ESLint warnings and skip directories
https://bugs.webkit.org/show_bug.cgi?id=136686

Reviewed by Timothy Hatcher.

* .eslintignore: Added.
Skip directories we do not want ESLint to process.

* .eslintrc:
Add rules we've seen and sort sections.

* UserInterface/Controllers/FormatterContentBuilder.js:
(FormatterContentBuilder.prototype._appendIndent):
* UserInterface/Models/Color.js:
* UserInterface/Models/DOMNodeStyles.js:
(WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
* UserInterface/Views/CSSStyleDeclarationTextEditor.js:
* UserInterface/Views/DOMTreeDataGridNode.js:
* UserInterface/Views/DOMTreeElement.js:
(WebInspector.DOMTreeElement.prototype.ondelete):
(WebInspector.DOMTreeElement.prototype._insertInLastAttributePosition):
(WebInspector.DOMTreeElement.prototype._distinctClosingTagElement):
* UserInterface/Views/EditingSupport.js:
(WebInspector.EditingConfig):
* UserInterface/Views/LayerTreeDataGridNode.js:
(WebInspector.LayerTreeDataGridNode.prototype._makeOutlet):
* UserInterface/Views/TreeOutline.js:
(TreeOutline.prototype.appendChild):
(TreeOutline.prototype.insertChild):
(TreeOutline.prototype.removeChildAtIndex):
(TreeOutline.prototype.removeChild):
(TreeElement.prototype.expandRecursively):
Fix linter issues.

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

5 years agoSkip some flaky tests that may be affecting subsequent tests.
ap@apple.com [Wed, 10 Sep 2014 21:55:01 +0000 (21:55 +0000)]
Skip some flaky tests that may be affecting subsequent tests.

* platform/mac/TestExpectations:

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

5 years agoRename JSVariableObject to JSEnvironmentRecord to align naming with ES spec
oliver@apple.com [Wed, 10 Sep 2014 21:52:02 +0000 (21:52 +0000)]
Rename JSVariableObject to JSEnvironmentRecord to align naming with ES spec
https://bugs.webkit.org/show_bug.cgi?id=136710

Reviewed by Anders Carlsson.

This is a trivial rename.

* CMakeLists.txt:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:
* dfg/DFGAbstractHeap.h:
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* ftl/FTLAbstractHeapRepository.cpp:
* ftl/FTLAbstractHeapRepository.h:
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileGetClosureRegisters):
* jit/JITOpcodes32_64.cpp:
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emitGetClosureVar):
(JSC::JIT::emitPutClosureVar):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emitGetClosureVar):
(JSC::JIT::emitPutClosureVar):
* llint/LLIntOffsetsExtractor.cpp:
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:
* runtime/JSActivation.cpp:
(JSC::JSActivation::getOwnNonIndexPropertyNames):
* runtime/JSActivation.h:
* runtime/JSEnvironmentRecord.cpp: Renamed from Source/JavaScriptCore/runtime/JSVariableObject.cpp.
* runtime/JSEnvironmentRecord.h: Renamed from Source/JavaScriptCore/runtime/JSVariableObject.h.
(JSC::JSEnvironmentRecord::registers):
(JSC::JSEnvironmentRecord::registerAt):
(JSC::JSEnvironmentRecord::addressOfRegisters):
(JSC::JSEnvironmentRecord::offsetOfRegisters):
(JSC::JSEnvironmentRecord::JSEnvironmentRecord):
* runtime/JSNameScope.h:
* runtime/JSSegmentedVariableObject.h:

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

5 years ago"AVF info: hasOfflineRenderer, board-id check : true" in media/track/track-forced...
jer.noble@apple.com [Wed, 10 Sep 2014 21:42:07 +0000 (21:42 +0000)]
"AVF info: hasOfflineRenderer, board-id check : true" in media/track/track-forced-subtitles-in-band.html
https://bugs.webkit.org/show_bug.cgi?id=124219

Unreviewed gardening. This skip was made unnecessary after selective filtering was added in r160247.

* platform/mac/TestExpectations:

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

5 years agoMore unreviewed gardening of media/ tests; Move tests into the correct sub-groups...
jer.noble@apple.com [Wed, 10 Sep 2014 21:38:56 +0000 (21:38 +0000)]
More unreviewed gardening of media/ tests; Move tests into the correct sub-groups and add comments
to test expectations without attached bugzilla bugs (due to WontFix, etc.).

* platform/mac/TestExpectations:

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

5 years agohttps://bugs.webkit.org/show_bug.cgi?id=136650
bdakin@apple.com [Wed, 10 Sep 2014 20:40:29 +0000 (20:40 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=136650
Rubber-banding in the DOM view of the WebInspector is really jumpy
-and corresponding-
rdar://problem/18166043

Reviewed by Darin Adler.

This patch implements the ScrollableArea virtual function isRubberBandInProgress()
for RenderLayer, and then uses that to determine whether to clamp the scroll
position in updateScrollInfoAfterLayout().
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::isRubberBandInProgress):
(WebCore::RenderLayer::updateScrollInfoAfterLayout):
* rendering/RenderLayer.h:

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

5 years ago[mips] Add missing parts and fix LLINT mips backend
julien.brianceau@gmail.com [Wed, 10 Sep 2014 20:14:11 +0000 (20:14 +0000)]
[mips] Add missing parts and fix LLINT mips backend
https://bugs.webkit.org/show_bug.cgi?id=136706

Reviewed by Michael Saboff.

* llint/LowLevelInterpreter.asm: Fix invalid CalleeSave register number.
Implement initPCRelative and setEntryAddress macros.
* llint/LowLevelInterpreter32_64.asm: Fix register distribution in
doVMEntry macro.

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

5 years agoMore unreviewed gardening; despite the comment, media/audio-repaint.html is failing...
jer.noble@apple.com [Wed, 10 Sep 2014 19:59:26 +0000 (19:59 +0000)]
More unreviewed gardening; despite the comment, media/audio-repaint.html is failing on all mac ports, not just on Lion.

* platform/mac/TestExpectations:

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

5 years agoRemove a workaround in frameIsCompleteAtIndex for a problem that was fixed in Lion
timothy_horton@apple.com [Wed, 10 Sep 2014 19:26:43 +0000 (19:26 +0000)]
Remove a workaround in frameIsCompleteAtIndex for a problem that was fixed in Lion
https://bugs.webkit.org/show_bug.cgi?id=136652

Reviewed by Dan Bernstein.

* platform/graphics/cg/ImageSourceCG.cpp:
(WebCore::ImageSource::frameIsCompleteAtIndex):
ImageIO returns the right thing now.

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

5 years agoWeb Inspector: Fix ESLint consistent-return warnings
commit-queue@webkit.org [Wed, 10 Sep 2014 19:15:28 +0000 (19:15 +0000)]
Web Inspector: Fix ESLint consistent-return warnings
https://bugs.webkit.org/show_bug.cgi?id=136682

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-09-10
Reviewed by Timothy Hatcher.

* .eslintrc:
* UserInterface/Controllers/BranchManager.js:
(WebInspector.BranchManager.prototype.createBranch):
* UserInterface/Controllers/FrameResourceManager.js:
(WebInspector.FrameResourceManager.prototype._addNewResourceToFrame):
* UserInterface/Models/DOMNodeStyles.js:
(WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload):
* UserInterface/Views/BoxModelDetailsSectionRow.js:
(WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput):
* UserInterface/Views/DOMTreeElement.js:
(WebInspector.DOMTreeElement.prototype.showChild):
(WebInspector.DOMTreeElement.prototype._startEditingTarget):
(WebInspector.DOMTreeElement.prototype._startEditing):
* UserInterface/Views/EditingSupport.js:
* UserInterface/Views/EventListenerSectionGroup.js:
(WebInspector.EventListenerSectionGroup.prototype._nodeTextOrLink):
* UserInterface/Views/FrameContentView.js:
(WebInspector.FrameContentView.prototype._showContentViewForIdentifier):
* UserInterface/Views/NavigationBar.js:
(WebInspector.NavigationBar.prototype.insertNavigationItem):
(WebInspector.NavigationBar.prototype.removeNavigationItem):
* UserInterface/Views/QuickConsole.js:
(WebInspector.QuickConsole.prototype._insertExecutionContextPathComponentForFrame):
* UserInterface/Views/Sidebar.js:
(WebInspector.Sidebar.prototype.addSidebarPanel):
(WebInspector.Sidebar.prototype.removeSidebarPanel):
* UserInterface/Views/TextEditor.js:
(WebInspector.TextEditor.prototype.addStyleClassToLine):
(WebInspector.TextEditor.prototype.removeStyleClassFromLine):
(WebInspector.TextEditor.prototype.toggleStyleClassForLine):

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

5 years agoLaying out a TextRun using an SVG font is O(n^2)
mmaxfield@apple.com [Wed, 10 Sep 2014 18:58:05 +0000 (18:58 +0000)]
Laying out a TextRun using an SVG font is O(n^2)
https://bugs.webkit.org/show_bug.cgi?id=136584

Reviewed by Darin Adler.

Addressing post-commit review from Darin.

No new tests.

* platform/graphics/Font.h:
(WebCore::Font::treatAsSpace): Un-inline.
(WebCore::Font::treatAsZeroWidthSpace): Ditto.
(WebCore::Font::treatAsZeroWidthSpaceInComplexScript): Ditto.
* svg/SVGFontData.cpp:
(WebCore::computeNormalizedSpaces): Avoid unnecessary copy.

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

5 years agoUnreviewed. Fix a snapshotting test. Test was incorrect as it assumed the wrong windo...
roger_fong@apple.com [Wed, 10 Sep 2014 18:15:29 +0000 (18:15 +0000)]
Unreviewed. Fix a snapshotting test. Test was incorrect as it assumed the wrong window size.

* platform/mac-wk2/TestExpectations: Remove some duplicate test expectations.
* platform/mac-wk2/plugins/snapshotting/snapshot-plugin-not-quite-blocked-by-image-expected.txt:
* plugins/snapshotting/snapshot-plugin-not-quite-blocked-by-image.html:

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

5 years ago[Curl] Optimization; avoid reallocating string many times.
commit-queue@webkit.org [Wed, 10 Sep 2014 18:10:45 +0000 (18:10 +0000)]
[Curl] Optimization; avoid reallocating string many times.
https://bugs.webkit.org/show_bug.cgi?id=136704

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-10
Reviewed by Alex Christensen.

Adding individual characters to a string is inefficient, the string will be reallocated each time.

* platform/network/curl/CookieJarCurl.cpp:
(WebCore::readCurlCookieToken):

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

5 years agoRollout r173446, the skipped tests still fail only on the bots.
roger_fong@apple.com [Wed, 10 Sep 2014 17:45:08 +0000 (17:45 +0000)]
Rollout r173446, the skipped tests still fail only on the bots.

* platform/mac-wk2/TestExpectations:

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

5 years agoUnreviewed gardening. Group all the media expectations together logically.
jer.noble@apple.com [Wed, 10 Sep 2014 17:18:10 +0000 (17:18 +0000)]
Unreviewed gardening. Group all the media expectations together logically.

* platform/mac/TestExpectations:

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

5 years agoTypeSet needs a mode where it no longer profiles structure shapes
saambarati1@gmail.com [Wed, 10 Sep 2014 16:43:01 +0000 (16:43 +0000)]
TypeSet needs a mode where it no longer profiles structure shapes
https://bugs.webkit.org/show_bug.cgi?id=136263

Reviewed by Filip Pizlo.

The TypeSet data structure used to gather as many StructureShape
objects as it encountered during type profiling. But, this meant
that there was no upper limit on how many objects it could allocate.
This patch places a fixed upper bound on the number of StructureShapes
allocated per TypeSet to prevent using too much memory for little gain
in type profiling usefulness.

StructureShape objects are now also aware of when they are created
from Structures which are dictionaries.

In total, this patch lays the final groundwork needed in refactoring
the inspector protocol for the type profiler.

* runtime/Structure.cpp:
(JSC::Structure::toStructureShape):
* runtime/TypeProfiler.cpp:
(JSC::TypeProfiler::typeInformationForExpressionAtOffset):
* runtime/TypeSet.cpp:
(JSC::TypeSet::TypeSet):
(JSC::TypeSet::addTypeInformation):
(JSC::StructureShape::StructureShape):
(JSC::StructureShape::toJSONString):
(JSC::StructureShape::enterDictionaryMode):
* runtime/TypeSet.h:
(JSC::TypeSet::isOverflown):
* tests/typeProfiler/dictionary-mode.js: Added.
(wrapper):
* tests/typeProfiler/driver/driver.js:
* tests/typeProfiler/overflow.js: Added.
(wrapper.Proto):
(wrapper):

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

5 years agoNetworkResourceLoader cleanups
antti@apple.com [Wed, 10 Sep 2014 16:35:00 +0000 (16:35 +0000)]
NetworkResourceLoader cleanups
https://bugs.webkit.org/show_bug.cgi?id=136701

Reviewed by Darin Adler.

After smashing NetworkResourceLoader together with the clients it can be made nicer.

* NetworkProcess/NetworkResourceLoadScheduler.cpp:
(WebKit::NetworkResourceLoadScheduler::scheduleLoader):
(WebKit::NetworkResourceLoadScheduler::removeLoader):
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::SynchronousLoadData::SynchronousLoadData):

    The original request is now part of the loader.

(WebKit::sendReplyToSynchronousRequest):
(WebKit::NetworkResourceLoader::NetworkResourceLoader):

    Instead of copying everything out from NetworkResourceLoadParameters just include the whole thing as a const field.
    SanboxExtension construction moves to NetworkResourceLoadParameters::decode()
    Stuff that is related to starting the load moves to start().

(WebKit::NetworkResourceLoader::~NetworkResourceLoader):
(WebKit::NetworkResourceLoader::start):
(WebKit::NetworkResourceLoader::setDefersLoading):

    Eliminate m_deferredRequest since we now always remember the original request.

(WebKit::NetworkResourceLoader::cleanup):
(WebKit::NetworkResourceLoader::didConvertHandleToDownload):
(WebKit::NetworkResourceLoader::abort):
(WebKit::NetworkResourceLoader::didReceiveResponseAsync):
(WebKit::NetworkResourceLoader::didFail):
(WebKit::NetworkResourceLoader::willSendRequestAsync):
(WebKit::NetworkResourceLoader::continueWillSendRequest):

    Eliminate unnecessary m_suggestedRequestForWillSendRequest.

(WebKit::NetworkResourceLoader::wasBlocked):
(WebKit::NetworkResourceLoader::cannotShowURL):
(WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
(WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
(WebKit::NetworkResourceLoader::receivedCancellation):
(WebKit::NetworkResourceLoader::startBufferingTimerIfNeeded):
(WebKit::NetworkResourceLoader::consumeSandboxExtensions):
(WebKit::NetworkResourceLoader::invalidateSandboxExtensions):
(WebKit::NetworkResourceLoader::sendAbortingOnFailure):
* NetworkProcess/NetworkResourceLoader.h:
(WebKit::NetworkResourceLoader::originalRequest):
(WebKit::NetworkResourceLoader::currentRequest):
(WebKit::NetworkResourceLoader::sessionID):
(WebKit::NetworkResourceLoader::defersLoading):
(WebKit::NetworkResourceLoader::isLoadingMainResource):
(WebKit::NetworkResourceLoader::request): Deleted.
(WebKit::NetworkResourceLoader::sendAbortingOnFailure): Deleted.

    Made private and moved to cpp.

* NetworkProcess/mac/NetworkDiskCacheMonitor.mm:
(WebKit::NetworkDiskCacheMonitor::NetworkDiskCacheMonitor):

    Use original request instead of the current one. This might fix a bug where we didn't use file backing over redirects.

* Shared/Network/NetworkResourceLoadParameters.cpp:
(WebKit::NetworkResourceLoadParameters::decode):

    Decode to SanboxExtensions to the actual type rather than a handle.

* Shared/Network/NetworkResourceLoadParameters.h:

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

5 years agoUnreviewed, rolling out r173446.
commit-queue@webkit.org [Wed, 10 Sep 2014 16:22:26 +0000 (16:22 +0000)]
Unreviewed, rolling out r173446.
https://bugs.webkit.org/show_bug.cgi?id=136707

These two tests fail consistently on Mavericks and ML WK2
bots. (Requested by jernoble|laptop on #webkit).

Reverted changeset:

"Unskip two snapshotting tests that work for me consistently
locally."
http://trac.webkit.org/changeset/173446

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

5 years agoWeb Inspector: Fix ESLint no-undef warnings
commit-queue@webkit.org [Wed, 10 Sep 2014 16:00:24 +0000 (16:00 +0000)]
Web Inspector: Fix ESLint no-undef warnings
https://bugs.webkit.org/show_bug.cgi?id=136660

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-09-10
Reviewed by Timothy Hatcher.

* UserInterface/Models/DOMSearchMatchObject.js:
(WebInspector.DOMSearchMatchObject.prototype._generateClassName):
(WebInspector.DOMSearchMatchObject.titleForDOMNode):
* UserInterface/Models/Gradient.js:
(WebInspector.Gradient.fromString):
* UserInterface/Views/CodeMirrorAdditions.js:
* UserInterface/Views/ReplayDashboardView.js:
(WebInspector.ReplayDashboardView):

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

5 years ago[Curl] Compile error, CertificateInfo.h is not found.
commit-queue@webkit.org [Wed, 10 Sep 2014 15:58:03 +0000 (15:58 +0000)]
[Curl] Compile error, CertificateInfo.h is not found.
https://bugs.webkit.org/show_bug.cgi?id=136703

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-10
Reviewed by Alex Christensen.

Curl also needs to implement the CertificateInfo class.

* platform/network/curl/CertificateInfo.h: Added.
(WebCore::CertificateInfo::CertificateInfo):

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

5 years agoClean up some ENABLE(PICTURE_SIZES) stuff, don't change function signatures inside...
simon.fraser@apple.com [Wed, 10 Sep 2014 15:54:40 +0000 (15:54 +0000)]
Clean up some ENABLE(PICTURE_SIZES) stuff, don't change function signatures inside #ifdefs
https://bugs.webkit.org/show_bug.cgi?id=136654

Reviewed by Darin Adler.

Adding parameters inside an #ifdef makes for unreadable code, so remove some
#if ENABLE(PICTURE_SIZES) related to the preload scanner and always pass the arguments.
Reduced the argument count on some functions by just passing a Document&.

Also fix a couple of uses of #if ENABLE_PICTURE_SIZES.

* html/HTMLImageElement.h:
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::pumpTokenizer):
(WebCore::HTMLDocumentParser::insert):
(WebCore::HTMLDocumentParser::append):
(WebCore::HTMLDocumentParser::appendCurrentInputStreamToPreloadScannerAndScan):
* html/parser/HTMLPreloadScanner.cpp:
(WebCore::TokenPreloadScanner::scan):
(WebCore::HTMLPreloadScanner::scan):
* html/parser/HTMLPreloadScanner.h:
* html/parser/HTMLSrcsetParser.cpp:
(WebCore::pickBestImageCandidate):
(WebCore::bestFitSourceForImageAttributes):
* html/parser/HTMLSrcsetParser.h:

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

5 years agoWeb Inspector: Remove unused Console search highlight methods
commit-queue@webkit.org [Wed, 10 Sep 2014 15:51:19 +0000 (15:51 +0000)]
Web Inspector: Remove unused Console search highlight methods
https://bugs.webkit.org/show_bug.cgi?id=136661

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-09-10
Reviewed by Timothy Hatcher.

ESLint's no-undef warning complained about some undefined references
in these functions that would have thrown exceptions. Turns out this
code is unused, and we do highlighting in the console separately.

* UserInterface/Views/ConsoleCommand.js:
(WebInspector.ConsoleCommand.prototype.clearHighlight): Deleted.
(WebInspector.ConsoleCommand.prototype.highlightSearchResults): Deleted.
(WebInspector.ConsoleCommand.prototype.matchesRegex): Deleted.
* UserInterface/Views/ConsoleMessageImpl.js:
(WebInspector.ConsoleMessageImpl.prototype.clearHighlight): Deleted.
(WebInspector.ConsoleMessageImpl.prototype.highlightSearchResults): Deleted.
(WebInspector.ConsoleMessageImpl.prototype.matchesRegex): Deleted.

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

5 years agoWeb Inspector: Fix ESLint* no-avoidable-bind warnings
commit-queue@webkit.org [Wed, 10 Sep 2014 15:49:02 +0000 (15:49 +0000)]
Web Inspector: Fix ESLint* no-avoidable-bind warnings
https://bugs.webkit.org/show_bug.cgi?id=136690

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-09-10
Reviewed by Timothy Hatcher.

* UserInterface/Protocol/RemoteObject.js:
(WebInspector.LocalJSONObject.prototype._children):
* UserInterface/Views/CSSStyleDetailsSidebarPanel.js:
(WebInspector.CSSStyleDetailsSidebarPanel):
* UserInterface/Views/LayerTreeSidebarPanel.js:
(WebInspector.LayerTreeSidebarPanel.prototype._updateDataGrid):
* UserInterface/Views/LogContentView.js:
(WebInspector.LogContentView.prototype._filterMessages):
* UserInterface/Views/TextResourceContentView.js:
(WebInspector.TextResourceContentView.prototype.get supplementalRepresentedObjects):

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

5 years ago[MIPS] branch32WithPatch missing
galpeter@inf.u-szeged.hu [Wed, 10 Sep 2014 14:59:32 +0000 (14:59 +0000)]
[MIPS] branch32WithPatch missing
https://bugs.webkit.org/show_bug.cgi?id=136696

Reviewed by Michael Saboff.

Added the missing branch32WithPatch. The implementation
is currently the same as the branchPtrithPatch because
the macro assembler supports only 32 bit MIPS.

* assembler/MacroAssemblerMIPS.h:
(JSC::MacroAssemblerMIPS::branch32WithPatch):

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

5 years agoFix !ENABLE(DFG_JIT) build
dbatyai.u-szeged@partner.samsung.com [Wed, 10 Sep 2014 14:57:45 +0000 (14:57 +0000)]
Fix !ENABLE(DFG_JIT) build
https://bugs.webkit.org/show_bug.cgi?id=136702

Reviewed by Michael Saboff.

* bytecode/CallEdgeProfile.h:

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

5 years agoAX: aria-labelledby is not honoring sub-node text
cfleizach@apple.com [Wed, 10 Sep 2014 14:47:00 +0000 (14:47 +0000)]
AX: aria-labelledby is not honoring sub-node text
https://bugs.webkit.org/show_bug.cgi?id=136689

Reviewed by Mario Sanchez Prada.

Source/WebCore:

Test: accessibility/aria-labelledby-with-descendants.html

When aria-labelledby retrieves the textUnderElements it needs to consider
all sub-children, including focusable content.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::accessibleNameForNode):

LayoutTests:

* accessibility/aria-labelledby-with-descendants-expected.txt: Added.
* accessibility/aria-labelledby-with-descendants.html: Added.

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

5 years agoUse toDocument instead of static_cast<Document*>
gyuyoung.kim@samsung.com [Wed, 10 Sep 2014 13:23:42 +0000 (13:23 +0000)]
Use toDocument instead of static_cast<Document*>
https://bugs.webkit.org/show_bug.cgi?id=136694

Reviewed by Andy Estes.

Clean up static_cast<Document*>.

* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::document):
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::document):
* bindings/gobject/WebKitDOMPrivate.cpp:
(WebKit::wrap):
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::dispatchErrorEvent): Add a line to remove .get().
* workers/DefaultSharedWorkerRepository.cpp:
(WebCore::SharedWorkerProxy::addToWorkerDocuments):
* workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::startWorkerGlobalScope):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::document):
(WebCore::XMLHttpRequest::open):

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

5 years agoMerge CheckingContexts from SelectorCompiler and SelectorChecker
utatane.tea@gmail.com [Wed, 10 Sep 2014 10:12:53 +0000 (10:12 +0000)]
Merge CheckingContexts from SelectorCompiler and SelectorChecker
https://bugs.webkit.org/show_bug.cgi?id=135255

Reviewed by Benjamin Poulain.

In this patch, we merge SelectorChecker::SelectorCheckingContext and SelectorCompiler::CheckingContext.
We expose only SelectorChecker::CheckingContext. That is the same to the old SelectorCompiler::CheckingContext.

In SelectorChecker.cpp, we define SelectorChecker::CheckingContextWithStatus and use it internally.
And we move VisitedMatchType from SelectorChecker.h to SelectorChecker.cpp.

VisitedMatchType is also explicitly used by SelectorCheckerFastPath. However, SelectorCheckerFastPath is now
used only from SelectorQuery (Style resolution algorithm no longer uses it: r171059).
In this patch, we remove SelectorCheckerFastPath since the major cases are covered by CSS JIT.
In `RightMostWithIdMatch`, `Element#matches` and multiple selectors `querySelector('a, b')` cases,
CSS JIT is not used. So dropping fast path affects them. But 1) these cases are rare or 2) the target node
is typically only one since nodes are filtered before matching. So it doesn't have performance regression.

And now since CheckingContextWithStatus is the derived class of CheckingContext, we can use
the same test functions; template parameter is not necessary. It reduces code size.

* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSAllInOne.cpp:
* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::ruleMatches):
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::CheckingContextWithStatus::CheckingContextWithStatus):
(WebCore::SelectorChecker::match):
(WebCore::checkingContextForParent):
(WebCore::SelectorChecker::matchRecursively):
(WebCore::canMatchHoverOrActiveInQuirksMode):
(WebCore::SelectorChecker::checkOne):
(WebCore::SelectorChecker::checkScrollbarPseudoClass):
* css/SelectorChecker.h:
(WebCore::SelectorChecker::CheckingContext::CheckingContext):
(WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext): Deleted.
* css/SelectorCheckerFastPath.cpp: Removed.
* css/SelectorCheckerFastPath.h: Removed.
* css/SelectorCheckerTestFunctions.h:
(WebCore::scrollbarMatchesEnabledPseudoClass):
(WebCore::scrollbarMatchesDisabledPseudoClass):
(WebCore::scrollbarMatchesHoverPseudoClass):
(WebCore::scrollbarMatchesActivePseudoClass):
(WebCore::scrollbarMatchesHorizontalPseudoClass):
(WebCore::scrollbarMatchesVerticalPseudoClass):
(WebCore::scrollbarMatchesDecrementPseudoClass):
(WebCore::scrollbarMatchesIncrementPseudoClass):
(WebCore::scrollbarMatchesStartPseudoClass):
(WebCore::scrollbarMatchesEndPseudoClass):
(WebCore::scrollbarMatchesDoubleButtonPseudoClass):
(WebCore::scrollbarMatchesSingleButtonPseudoClass):
(WebCore::scrollbarMatchesNoButtonPseudoClass):
(WebCore::scrollbarMatchesCornerPresentPseudoClass):
* css/StyleResolver.h:
(WebCore::checkRegionSelector):
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorFragment::appendUnoptimizedPseudoClassWithContext):
(WebCore::SelectorCompiler::addScrollbarPseudoClassType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::addFlagsToElementStyleFromContext):
(WebCore::SelectorCompiler::SelectorCodeGenerator::branchOnResolvingModeWithCheckingContext):
(WebCore::SelectorCompiler::elementIsActiveForStyleResolution):
(WebCore::SelectorCompiler::setElementStyleFromContextIsAffectedByEmptyAndUpdateRenderStyleIfNecessary):
(WebCore::SelectorCompiler::elementIsHoveredForStyleResolution):
(WebCore::SelectorCompiler::makeContextStyleUniqueIfNecessaryAndTestIsPlaceholderShown):
(WebCore::SelectorCompiler::makeElementStyleUniqueIfNecessaryAndTestIsPlaceholderShown):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateRequestedPseudoElementEqualsToSelectorPseudoElement):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsScopeRoot):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateMarkPseudoStyleForPseudoElement):
* cssjit/SelectorCompiler.h:
(WebCore::SelectorCompiler::CheckingContext::CheckingContext): Deleted.
* dom/SelectorQuery.cpp:
(WebCore::SelectorDataList::SelectorDataList):
(WebCore::SelectorDataList::selectorMatches):
(WebCore::SelectorDataList::executeCompiledSelectorCheckerWithCheckingContext):
(WebCore::isCompiledSelector):
(WebCore::SelectorDataList::compileSelector):
(WebCore::SelectorDataList::execute):
* dom/SelectorQuery.h:
(WebCore::SelectorDataList::SelectorData::SelectorData):

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

5 years ago[GTK] allow overwriting destination of download
commit-queue@webkit.org [Wed, 10 Sep 2014 08:37:17 +0000 (08:37 +0000)]
[GTK] allow overwriting destination of download
https://bugs.webkit.org/show_bug.cgi?id=136372

Patch by Michael Catanzaro <mcatanzaro@igalia.com> on 2014-09-10
Reviewed by Carlos Garcia Campos.

Source/WebKit2:

* UIProcess/API/gtk/WebKitDownload.cpp:
(webkitDownloadGetProperty): Added
(webkit_download_class_init): Install webkitDownloadGetProperty
(webkitDownloadDecideDestinationWithSuggestedFilename): Add
allowOverwrite parameter and set it appropriately
(webkit_download_get_allow_overwrite): Added
(webkit_download_set_allow_overwrite): Added
* UIProcess/API/gtk/WebKitDownload.h: New API
* UIProcess/API/gtk/WebKitDownloadClient.cpp:
(decideDestinationWithSuggestedFilename): Pass allowOverwrite to
webkitDownloadDecideDestinationWithSuggestedFilename
* UIProcess/API/gtk/WebKitDownloadPrivate.h: Add allowOverwrite
parameter to webkitDownloadDecideDestinationWithSuggestedFilename
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: New API

Tools:

* TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
(downloadLocalFileSuccessfully): Split from testDownloadLocalFile
(testDownloadLocalFile): Split off downloadLocalFileSuccessfully
(createFileAtDestination): Added
(testDownloadOverwriteDestinationAllowed): Added
(testDownloadOverwriteDestinationDisallowed): Added
(testDownloadLocalFileError): Use new DownloadErrorTest::ExpectedError
(testDownloadRemoteFileError): Use new DownloadErrorTest::ExpectedError
(beforeAll): New tests

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

5 years ago[GTK] Clean up the WebKit build from unused parameter warning in Webkit2/UIProcess...
commit-queue@webkit.org [Wed, 10 Sep 2014 07:21:19 +0000 (07:21 +0000)]
[GTK] Clean up the WebKit build from unused parameter warning in Webkit2/UIProcess module
https://bugs.webkit.org/show_bug.cgi?id=136670

Patch by Rohit Kumar <kumar.rohit@samsung.com> on 2014-09-10
Reviewed by Martin Robinson.

* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):

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

5 years ago[MSE] http/tests/media/media-source/mediasource-config-change-mp4-v-bitrate.html...
jer.noble@apple.com [Wed, 10 Sep 2014 03:59:15 +0000 (03:59 +0000)]
[MSE] http/tests/media/media-source/mediasource-config-change-mp4-v-bitrate.html failing after r173318
https://bugs.webkit.org/show_bug.cgi?id=136676

Reviewed by Eric Carlson.

Source/WebCore:

Revert the inadvertant conditional change introduced in r173318.

* Modules/mediasource/MediaSource.cpp:
(WebCore::MediaSource::setDurationInternal):

LayoutTests:

* platform/mac/TestExpectations:

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

5 years agoUnreviewed build fix for Windows.
roger_fong@apple.com [Wed, 10 Sep 2014 00:05:36 +0000 (00:05 +0000)]
Unreviewed build fix for Windows.

* platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

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

5 years agoiOS Simulator: run-webkit-tests chokes on unterminated UTF-8 when writing a test...
dfarler@apple.com [Tue, 9 Sep 2014 23:31:41 +0000 (23:31 +0000)]
iOS Simulator: run-webkit-tests chokes on unterminated UTF-8 when writing a test result
https://bugs.webkit.org/show_bug.cgi?id=135551

Reviewed by Daniel Bates.

Prevent printing invalid Unicode strings going to stderr.
Also, make filesystem.py more tolerant about receiving
Unicode (encoded as UTF-8) when writing to files, in the
rare case that an NSError description will make it to
stderr, such as -[LTRelayController createUniqueApp].

* LayoutTestRelay/LayoutTestRelay/LTRelayController.m:
(-[LTRelayController launchSimulator]): Removed.
(-[LTRelayController createUniqueApp]):
Don't explicitly try to uninstall the app. It is automatically handled
when installing an app with the same bundle identifier.
(-[LTRelayController start]):
(-[LTRelayController bootDevice]): Removed.
The device already boots as a part of starting the simulator. Attempting
to boot a second time may cause spurious stderr output.
* Scripts/webkitpy/port/driver.py:
(IOSSimulatorDriver._setup_environ_for_driver):
Explicitly set DEVELOPER_DIR once so xcode-select isn't called.
Open the iOS Simulator once instead of the LayoutTestRelay trying
to do it.
* Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort._get_crash_log):
Make sure stderr is at least an empty string.
(IOSSimulatorPort):
(IOSSimulatorPort.developer_dir):
New property for setting up DEVELOPER_DIR in the driver environment.

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

5 years agoREGRESSION (WebKit2): -webkit-touch-callout: none has no effect.
enrica@apple.com [Tue, 9 Sep 2014 23:16:55 +0000 (23:16 +0000)]
REGRESSION (WebKit2): -webkit-touch-callout: none has no effect.
https://bugs.webkit.org/show_bug.cgi?id=136685
rdar://problem/17629840

Reviewed by Benjamin Poulain.

We need to check if the touch callout is enabled for the element before starting
the long press gesture.
The information about the touch callout is returned together with the rest of data
returned by the InteractionInformationAtPosition.

* Shared/InteractionInformationAtPosition.cpp:
(WebKit::InteractionInformationAtPosition::encode):
(WebKit::InteractionInformationAtPosition::decode):
* Shared/InteractionInformationAtPosition.h:
(WebKit::InteractionInformationAtPosition::InteractionInformationAtPosition):
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _actionForLongPress]):
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::getPositionInformation):

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

5 years agoClean up the MiniBrowser Xcode project
mitz@apple.com [Tue, 9 Sep 2014 23:04:12 +0000 (23:04 +0000)]
Clean up the MiniBrowser Xcode project
https://bugs.webkit.org/show_bug.cgi?id=136684

Reviewed by Tim Horton.

* MiniBrowser/Configurations/Base.xcconfig: Enabled warnings recommended by Xcode 6.
* MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: Removed explicit linking against
WebKit2.framework. Upgraded project file version.

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

5 years agoUnskip two snapshotting tests that work for me consistently locally.
roger_fong@apple.com [Tue, 9 Sep 2014 22:52:01 +0000 (22:52 +0000)]
Unskip two snapshotting tests that work for me consistently locally.
* platform/mac-wk2/TestExpectations:

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

5 years agoFrameLoader::prepareForHistoryNavigation is unused
mitz@apple.com [Tue, 9 Sep 2014 22:47:02 +0000 (22:47 +0000)]
FrameLoader::prepareForHistoryNavigation is unused
https://bugs.webkit.org/show_bug.cgi?id=136683

Reviewed by Tim Horton.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::prepareForHistoryNavigation): Deleted.
* loader/FrameLoader.h: Removed the declaration.

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

5 years ago[CSS Grid Layout] Ignore ::first-letter pseudo-element
rego@igalia.com [Tue, 9 Sep 2014 21:58:11 +0000 (21:58 +0000)]
[CSS Grid Layout] Ignore ::first-letter pseudo-element
https://bugs.webkit.org/show_bug.cgi?id=136625

Reviewed by Darin Adler.

Source/WebCore:

According to the spec the ::first-letter pseudo-element do not apply to
grid containers (neither to flexboxes).

Fixed issue in RenderBlock::getFirstLetter() that applies to both grids
and flexboxes. Basically if the grid's or flexbox's container was
defining the ::first-line pseudo-element and the grid or flexbox itself
too, the value from the grid or flexbox was being applied to the items.
Added the proper check to avoid this.

Added two new tests for grid and modified one flexbox test to cover the
issue explained above.

Tests: css3/flexbox/flexbox-ignore-container-firstLetter.html
       fast/css-grid-layout/grid-container-ignore-first-letter.html
       fast/css-grid-layout/grid-item-first-letter-valid.html

* rendering/RenderBlock.cpp:
(WebCore::isRenderBlockFlowOrRenderButton): New method refactoring
similar calls through the source code.
(WebCore::RenderBlock::firstLineBlock): Use
isRenderBlockFlowOrRenderButton().
(WebCore::findFirstLetterBlock): Modify it to use
isRenderBlockFlowOrRenderButton() in order to include grids and not only
check flexboxes.
(WebCore::RenderBlock::getFirstLetter): Use
isRenderBlockFlowOrRenderButton().
(WebCore::RenderBlock::updateFirstLetter): Early return if
firstLetterContainer is null (in the case of flexboxes or grids).

LayoutTests:

* css3/flexbox/flexbox-ignore-container-firstLetter.html: Modify test,
in order to actually check that the ::first-letter in a regular
container is ignored in the flexbox.
* fast/css-grid-layout/grid-container-ignore-first-letter-expected.txt: Added.
* fast/css-grid-layout/grid-container-ignore-first-letter.html: Added.
* fast/css-grid-layout/grid-item-first-letter-valid-expected.txt: Added.
* fast/css-grid-layout/grid-item-first-letter-valid.html: Added.

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

5 years agoDisable the "unreachable-code" warning
benjamin@webkit.org [Tue, 9 Sep 2014 21:49:21 +0000 (21:49 +0000)]
Disable the "unreachable-code" warning
https://bugs.webkit.org/show_bug.cgi?id=136677

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-09-09
Reviewed by Darin Adler.

Source/JavaScriptCore:

* Configurations/Base.xcconfig:

Source/ThirdParty:

* gtest/xcode/Config/General.xcconfig:

Source/WebInspectorUI:

* Configurations/Base.xcconfig:

Source/WebKit/mac:

* Configurations/Base.xcconfig:

Source/WebKit2:

* Configurations/Base.xcconfig:

Source/WTF:

The warning causes various build errors depending on which Clang you are using.

For example, with recent clangs, it breaks all the ARCHS dependent code like this:
    if (sizeof(uintptr_t) == 4)
        // Something for 32 bits.
    else
        // Somethign for 64 bits.

* Configurations/Base.xcconfig:

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

5 years ago[Cocoa] -[WKBackForwardList backList] contains an unnecessary nil check
mitz@apple.com [Tue, 9 Sep 2014 21:43:57 +0000 (21:43 +0000)]
[Cocoa] -[WKBackForwardList backList] contains an unnecessary nil check
https://bugs.webkit.org/show_bug.cgi?id=136680

Reviewed by Anders Carlsson.

* UIProcess/API/Cocoa/WKBackForwardList.mm:
(-[WKBackForwardList backList]): Removed nil check.
(-[WKBackForwardList forwardList]): Ditto.

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

5 years agoAdd support for :read-write/:read-only matching editable content
benjamin@webkit.org [Tue, 9 Sep 2014 21:03:29 +0000 (21:03 +0000)]
Add support for :read-write/:read-only matching editable content
https://bugs.webkit.org/show_bug.cgi?id=136668

Reviewed by Antti Koivisto.

Source/WebCore:

This is the second part of the update of :read-write/:read-only to the latest spec
(http://www.whatwg.org/specs/web-apps/current-work/multipage/scripting.html#selectors).

The selectors :read-write/:read-only should match elements that are editable. The exact definition is:
"elements that are editing hosts or editable and are neither input elements nor textarea elements".

Matching that definition is really easy. It was done by updating HTMLElement's matchesReadWritePseudoClass()
to consider both contentEditable and designMode.

The tricky part is making that efficient in all cases. Matching contentEditable is horribly inefficient
compared to the other primitives. We don't want to execute that for every element.

Since matchesReadWritePseudoClass() was used by the theming code, that code was adjusted to
-Avoid calling that on regular HTMLElement, limiting the query to <input> and <textarea> where it is fast.
-Avoid the call entirely when possible.

Tests: fast/css/read-only-read-write-contenteditable-basics.html
       fast/css/read-only-read-write-designmode-basics.html
       fast/css/read-only-read-write-webkit-user-modify.html
       fast/selectors/read-only-read-write-contenteditable-basics.html
       fast/selectors/read-only-read-write-contenteditable-svg-foreignObject.html
       fast/selectors/read-only-read-write-designmode-basics.html
       fast/selectors/read-only-read-write-style-update.html

* html/HTMLElement.cpp:
(WebCore::contentEditableType):
This code is a generalization of the code that was in HTMLElement::contentEditable().
It is used by both matchesReadWritePseudoClass() and contentEditable() to determine
a valid state from the value of contentEditable.

(WebCore::HTMLElement::matchesReadWritePseudoClass):
Per the definition of editable content, we first check if the current element is an editing host,
if not we look for an editing host. If there are none, test for designMode.

(WebCore::HTMLElement::contentEditable):

(WebCore::RenderTheme::isReadOnlyControl):
The old definition would only match <input> and <textarea>. The code was updated to keep the same
behavior after matchesReadWritePseudoClass() is udpated. This avoids the performance problem of calling
matchesReadWritePseudoClass() on regular HTMLElement.

* platform/ControlStates.h:
ReadOnlyState was only used by ThemeMac for convertControlStatesToThemeDrawState().
In turn, convertControlStatesToThemeDrawState() was only used for painting
"-webkit-inner-spin-button". Buttons are not read-write to begin with.
The whole code looks like legacy from styling of input elements and was removed.

Removing ReadOnlyState removes the expensive part of extractControlStatesForRenderer().

* html/HTMLElement.h:
* html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::readOnlyAttributeChanged):
* platform/mac/ThemeMac.mm:
(WebCore::convertControlStatesToThemeDrawState):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::extractControlStatesForRenderer):

LayoutTests:

* fast/css/read-only-read-write-contenteditable-basics-expected.html: Added.
* fast/css/read-only-read-write-contenteditable-basics.html: Added.
* fast/css/read-only-read-write-designmode-basics-expected.html: Added.
* fast/css/read-only-read-write-designmode-basics.html: Added.
* fast/css/read-only-read-write-webkit-user-modify-expected.txt: Added.
* fast/css/read-only-read-write-webkit-user-modify.html: Added.
* fast/selectors/read-only-read-write-contenteditable-basics-expected.txt: Added.
* fast/selectors/read-only-read-write-contenteditable-basics.html: Added.
* fast/selectors/read-only-read-write-contenteditable-svg-foreignObject-expected.txt: Added.
* fast/selectors/read-only-read-write-contenteditable-svg-foreignObject.html: Added.
* fast/selectors/read-only-read-write-designmode-basics-expected.txt: Added.
* fast/selectors/read-only-read-write-designmode-basics.html: Added.
* fast/selectors/read-only-read-write-style-update-expected.txt: Added.
* fast/selectors/read-only-read-write-style-update.html: Added.

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

5 years ago[Mac] Unreviewed gardening. Mark two media-source tests as failing.
jer.noble@apple.com [Tue, 9 Sep 2014 20:56:55 +0000 (20:56 +0000)]
[Mac] Unreviewed gardening. Mark two media-source tests as failing.

* platform/mac/TestExpectations:

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

5 years ago[MSE] media/media-source tests broken after r173318
jer.noble@apple.com [Tue, 9 Sep 2014 20:30:23 +0000 (20:30 +0000)]
[MSE] media/media-source tests broken after r173318
https://bugs.webkit.org/show_bug.cgi?id=136675

Reviewed by Eric Carlson.

Fixes the following tests:
    http/tests/media/media-source/mediasource-play.html
    http/tests/media/media-source/mediasource-remove.html
    media/media-source/media-source-monitor-source-buffers.html
    media/media-source/media-source-overlapping-append-buffered.html

In r173318, a for loop was converted to a C++11 loop, but in so doing, left
pre-initialized, empty values in the beginning of returned Vector, which caused
the calling algorithm to miscalculate the amount of data buffered by the media
source.

* Modules/mediasource/MediaSource.cpp:
(WebCore::MediaSource::activeRanges):

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

5 years agosvn-{apply, unapply} fails to apply/unapply SVN 1.7 patch that adds new file with...
dbates@webkit.org [Tue, 9 Sep 2014 20:12:56 +0000 (20:12 +0000)]
svn-{apply, unapply} fails to apply/unapply SVN 1.7 patch that adds new file with property change
https://bugs.webkit.org/show_bug.cgi?id=136379

Patch by Daniel Bates <dbates@webkit.org> on 2014-09-09
Reviewed by David Kilzer.

Fixes an issue where svn-{apply, unapply} fail to apply or unapply, respectively,
a patch generated using Subversion 1.7.4 (r1295709) that both adds a new file F
and sets a property on F (say, the executable bit).

* Scripts/svn-apply:
(patch): Only add file if the diff has text chunks.
* Scripts/svn-unapply:
(patch): Only delete added file if the diff has text chunks.

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

5 years agoFix syntax on some expected failures.
roger_fong@apple.com [Tue, 9 Sep 2014 19:51:15 +0000 (19:51 +0000)]
Fix syntax on some expected failures.

* platform/mac/TestExpectations:

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

5 years agoWeb Inspector: Fix ESLint no-trailing-spaces warnings
joepeck@webkit.org [Tue, 9 Sep 2014 19:46:41 +0000 (19:46 +0000)]
Web Inspector: Fix ESLint no-trailing-spaces warnings
https://bugs.webkit.org/show_bug.cgi?id=136657

Reviewed by NOBODY (OOPS!).

* .eslintrc:
* UserInterface/Base/DOMUtilities.js:
* UserInterface/Base/URLUtilities.js:
(relativePath):
* UserInterface/Base/Utilities.js:
* UserInterface/Controllers/CodeMirrorColorEditingController.js:
(WebInspector.CodeMirrorColorEditingController.prototype._colorPickerColorChanged):
* UserInterface/Controllers/CodeMirrorDragToAdjustNumberController.js:
(WebInspector.CodeMirrorDragToAdjustNumberController.prototype.set enabled):
(WebInspector.CodeMirrorDragToAdjustNumberController.prototype.dragToAdjustControllerCanAdjustObjectAtPoint):
* UserInterface/Controllers/CodeMirrorEditingController.js:
(WebInspector.CodeMirrorEditingController.prototype.handleKeydownEvent):
* UserInterface/Controllers/CodeMirrorGradientEditingController.js:
(WebInspector.CodeMirrorGradientEditingController.prototype.gradientSliderStopWasSelected):
* UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
(WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):
* UserInterface/Controllers/DragToAdjustController.js:
(WebInspector.DragToAdjustController.prototype.set active):
(WebInspector.DragToAdjustController.prototype._setDragging):
(WebInspector.DragToAdjustController.prototype._setTracksMouseClickAndDrag):
* UserInterface/External/Esprima/esprima.js:
* UserInterface/Models/ApplicationCacheFrame.js:
(WebInspector.ApplicationCacheFrame):
* UserInterface/Models/ApplicationCacheManifest.js:
(WebInspector.ApplicationCacheManifest):
(WebInspector.ApplicationCacheManifest.prototype.get manifestURL):
* UserInterface/Models/CookieStorageObject.js:
* UserInterface/Models/DOMSearchMatchObject.js:
(WebInspector.DOMSearchMatchObject.prototype.get title):
(WebInspector.DOMSearchMatchObject.titleForDOMNode):
* UserInterface/Models/DatabaseObject.js:
(WebInspector.DatabaseObject.prototype.getTableNames):
* UserInterface/Models/DatabaseTableObject.js:
(WebInspector.DatabaseTableObject):
* UserInterface/Models/Gradient.js:
(WebInspector.Gradient.fromString):
(WebInspector.RadialGradient.prototype.toString):
* UserInterface/Models/IssueMessage.js:
(WebInspector.IssueMessage.prototype._formatTextIfNecessary):
* UserInterface/Models/Resource.js:
(WebInspector.Resource.prototype.getImageSize.imageDidLoad):
(WebInspector.Resource.prototype.getImageSize):
* UserInterface/Models/Script.js:
(WebInspector.Script.prototype._makeSyntaxTree):
* UserInterface/Models/SourceCodeLocation.js:
(WebInspector.SourceCodeLocation.prototype.hasDifferentDisplayLocation):
* UserInterface/Models/TextMarker.js:
* UserInterface/Protocol/PageObserver.js:
* UserInterface/Views/ApplicationCacheDetailsSidebarPanel.js:
(WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.set applicationCacheFrame):
(WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.refresh):
(WebInspector.ApplicationCacheDetailsSidebarPanel.prototype._networkStateUpdated):
* UserInterface/Views/ApplicationCacheFrameTreeElement.js:
(WebInspector.ApplicationCacheFrameTreeElement):
* UserInterface/Views/ApplicationCacheManifestTreeElement.js:
(WebInspector.ApplicationCacheManifestTreeElement.prototype.get name):
(WebInspector.ApplicationCacheManifestTreeElement.prototype.get secondaryName):
* UserInterface/Views/ButtonNavigationItem.js:
(WebInspector.ButtonNavigationItem):
* UserInterface/Views/ColorPicker.js:
* UserInterface/Views/ColorWheel.js:
(WebInspector.ColorWheel.prototype._draw):
* UserInterface/Views/CompletionSuggestionsView.js:
(WebInspector.CompletionSuggestionsView.prototype.show):
* UserInterface/Views/ConsoleCommand.js:
* UserInterface/Views/ConsolePrompt.js:
* UserInterface/Views/ContentFlowTreeElement.js:
* UserInterface/Views/CookieStorageTreeElement.js:
(WebInspector.CookieStorageTreeElement):
* UserInterface/Views/EventListenerSectionGroup.js:
(WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink):
* UserInterface/Views/GeneralTreeElementPathComponent.js:
* UserInterface/Views/GoToLineDialog.js:
(WebInspector.GoToLineDialog.prototype._handleKeydownEvent):
* UserInterface/Views/LayerTreeDataGridNode.js:
(WebInspector.LayerTreeDataGridNode.prototype._makeNameCell):
* UserInterface/Views/LayerTreeSidebarPanel.js:
* UserInterface/Views/LogContentView.js:
(WebInspector.LogContentView.prototype._highlightRanges):
* UserInterface/Views/NavigationBar.js:
(WebInspector.NavigationBar):
* UserInterface/Views/NavigationItem.js:
(WebInspector.NavigationItem):
* UserInterface/Views/ResourceDetailsSidebarPanel.js:
(WebInspector.ResourceDetailsSidebarPanel.prototype._refreshImageSizeSection):
* UserInterface/Views/ScopeBar.js:
* UserInterface/Views/ScopeBarItem.js:
(WebInspector.ScopeBarItem):
* UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
(WebInspector.ScopeChainDetailsSidebarPanel):
* UserInterface/Views/ScriptTimelineDataGridNode.js:
(WebInspector.ScriptTimelineDataGridNode.prototype.updateRangeTimes):
* UserInterface/Views/ScriptTreeElement.js:
(WebInspector.ScriptTreeElement):
* UserInterface/Views/SearchBar.js:
* UserInterface/Views/SearchResultTreeElement.js:
(WebInspector.SearchResultTreeElement.truncateAndHighlightTitle):
* UserInterface/Views/Slider.js:

Conflicts:
Source/WebInspectorUI/UserInterface/Controllers/CodeMirrorColorEditingController.js

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

5 years ago[GTK] Unreviewed GTK gardening.
clopez@igalia.com [Tue, 9 Sep 2014 19:25:21 +0000 (19:25 +0000)]
[GTK] Unreviewed GTK gardening.

Tools:

* Scripts/run-gtk-tests:
(TestRunner): Skip TestSSL:webkit2/WebKitWebView/ssl (fails since r173423).

LayoutTests:

* platform/gtk/TestExpectations: Report and mark new failures after r173328 and r173418.
Update some expectations for new cases.

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

5 years agoSkip some WebGL tests failing on Mavericks and MountainLion bots.
roger_fong@apple.com [Tue, 9 Sep 2014 19:07:43 +0000 (19:07 +0000)]
Skip some WebGL tests failing on Mavericks and MountainLion bots.

* platform/mac/TestExpectations:

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

5 years agoWeb Inspector: Fix ESLint eqeqeq warnings
commit-queue@webkit.org [Tue, 9 Sep 2014 17:34:30 +0000 (17:34 +0000)]
Web Inspector: Fix ESLint eqeqeq warnings
https://bugs.webkit.org/show_bug.cgi?id=136658

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-09-09
Reviewed by Andy Estes.

* UserInterface/Controllers/DOMTreeManager.js:
(WebInspector.DOMTreeManager.prototype.mycallback):
(WebInspector.DOMTreeManager.prototype.searchResult):
* UserInterface/Models/Breakpoint.js:
(WebInspector.Breakpoint.prototype.clearActions):
* UserInterface/Models/DOMTree.js:
(WebInspector.DOMTree.prototype._requestRootDOMNode.rootObjectAvailable):
(WebInspector.DOMTree.prototype._requestRootDOMNode.rootDOMNodeAvailable):
(WebInspector.DOMTree.prototype._requestRootDOMNode.dispatchCallbacks):
(WebInspector.DOMTree.prototype._requestRootDOMNode):
* UserInterface/Models/ProbeSet.js:
(WebInspector.ProbeSet.prototype.removeProbe):
* UserInterface/Models/ProbeSetDataTable.js:
(WebInspector.ProbeSetDataTable.prototype.addSampleForProbe):
* UserInterface/Views/CodeMirrorAdditions.js:
* UserInterface/Views/CookieStorageContentView.js:
(WebInspector.CookieStorageContentView.prototype._filterCookies):
(WebInspector.cookieMatchesResourceURL):
* UserInterface/Views/DOMStorageContentView.js:
(WebInspector.DOMStorageContentView.prototype._editingCallback):
* UserInterface/Views/DOMTreeElement.js:
(WebInspector.DOMTreeElement):
(WebInspector.DOMTreeElement.prototype._updateChildren):
(WebInspector.DOMTreeElement.prototype._startEditingTarget):
(WebInspector.DOMTreeElement.prototype._textNodeEditingCommitted):
* UserInterface/Views/DataGrid.js:
(WebInspector.DataGrid.prototype._resizerDragging):
* UserInterface/Views/DatabaseContentView.js:
(WebInspector.DatabaseContentView.prototype._queryError):
* UserInterface/Views/DetailsSectionSimpleRow.js:
(.valueElementClicked):
(WebInspector.DetailsSectionSimpleRow):
* UserInterface/Views/Slider.js:
(WebInspector.Slider.prototype.get _maxX):
* UserInterface/Views/TreeOutline.js:
(TreeElement.prototype.expand):

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

5 years agoWeb Inspector: Fix ESLint no-extra-semi
jonowells@apple.com [Tue, 9 Sep 2014 17:31:18 +0000 (17:31 +0000)]
Web Inspector: Fix ESLint no-extra-semi
https://bugs.webkit.org/show_bug.cgi?id=136666

Reviewed by Andy Estes.

Add explicit no-extra-semi rule to .eslintrc. Remove all unnecessary
semicolons as identified by ESLint.

* .eslintrc:
* Tools/PrettyPrinting/Formatter.js:
(Formatter):
* UserInterface/Controllers/Formatter.js:
(Formatter):
* UserInterface/Models/Resource.js:
(WebInspector.Resource.prototype.getImageSize.imageDidLoad):
(WebInspector.Resource.prototype.getImageSize):
* UserInterface/Views/LayerTreeSidebarPanel.js:
(WebInspector.LayerTreeSidebarPanel.prototype._sortDataGrid.comparator):
(WebInspector.LayerTreeSidebarPanel.prototype._sortDataGrid):
* UserInterface/Views/ObjectPropertiesSection.js:
(WebInspector.ObjectPropertyTreeElement.prototype.callback):
(WebInspector.ObjectPropertyTreeElement.prototype.applyExpression):

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

5 years agoWeb Inspector: Fix ESLint semi (missing semicolon)
jonowells@apple.com [Tue, 9 Sep 2014 17:29:02 +0000 (17:29 +0000)]
Web Inspector: Fix ESLint semi (missing semicolon)
https://bugs.webkit.org/show_bug.cgi?id=136665

Reviewed by Andy Estes.

Add missing semicolons as identified by ESLint. Add explicit semi rule to .eslintrc.

* .eslintrc:
* Tools/PrettyPrinting/FormatterContentBuilder.js:
* Tools/PrettyPrinting/FormatterDebug.js:
(Formatter.prototype.debug):
* UserInterface/Base/DOMUtilities.js:
* UserInterface/Base/EventListener.js:
(WebInspector.EventListener):
(WebInspector.EventListener.prototype.this._callback):
(WebInspector.EventListener.prototype.connect):
* UserInterface/Base/Object.js:
(WebInspector.Object):
(WebInspector.Object.addConstructorFunctions):
(WebInspector.Event):
* UserInterface/Base/URLUtilities.js:
(WebInspector.displayNameForURL):
(WebInspector.displayNameForHost):
* UserInterface/Base/Utilities.js:
(.):
* UserInterface/Controllers/BranchManager.js:
(WebInspector.BranchManager):
* UserInterface/Controllers/CSSStyleManager.js:
(WebInspector.CSSStyleManager):
* UserInterface/Controllers/CodeMirrorColorEditingController.js:
(WebInspector.CodeMirrorColorEditingController):
* UserInterface/Controllers/CodeMirrorEditingController.js:
(WebInspector.CodeMirrorEditingController):
* UserInterface/Controllers/CodeMirrorGradientEditingController.js:
(WebInspector.CodeMirrorGradientEditingController):
(WebInspector.CodeMirrorGradientEditingController.prototype.popoverDidPresent):
* UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
* UserInterface/Controllers/FormatterContentBuilder.js:
* UserInterface/Controllers/FormatterSourceMap.js:
(WebInspector.FormatterSourceMap.fromBuilder):
* UserInterface/Controllers/IssueManager.js:
(WebInspector.IssueManager):
* UserInterface/Controllers/LogManager.js:
(WebInspector.LogManager):
* UserInterface/Models/BreakpointAction.js:
* UserInterface/Models/CSSCompletions.js:
(WebInspector.CSSCompletions):
(WebInspector.CSSCompletions.requestCSSNameCompletions):
* UserInterface/Models/CSSKeywordCompletions.js:
(WebInspector.CSSKeywordCompletions.forProperty):
(WebInspector.CSSKeywordCompletions.isColorAwareProperty):
* UserInterface/Models/CSSStyleSheet.js:
(WebInspector.CSSStyleSheet.resetUniqueDisplayNameNumbers):
* UserInterface/Models/Color.js:
(WebInspector.Color):
(WebInspector.Color.fromString):
* UserInterface/Models/DOMNode.js:
(WebInspector.DOMNode):
* UserInterface/Models/DOMSearchMatchObject.js:
(WebInspector.DOMSearchMatchObject.titleForDOMNode):
* UserInterface/Models/ExecutionContext.js:
(WebInspector.ExecutionContext.supported):
* UserInterface/Models/Gradient.js:
(WebInspector.LinearGradient):
(WebInspector.LinearGradient.linearGradientWithComponents):
(WebInspector.RadialGradient):
(WebInspector.RadialGradient.radialGradientWithComponents):
* UserInterface/Models/IssueMessage.js:
(WebInspector.IssueMessage):
* UserInterface/Models/ReplaySessionSegment.js:
(WebInspector.IncompleteSessionSegment):
* UserInterface/Models/Resource.js:
(WebInspector.Resource.prototype.associateWithScript):
* UserInterface/Models/Script.js:
(WebInspector.Script.resetUniqueDisplayNameNumbers):
* UserInterface/Models/Setting.js:
(WebInspector.Setting):
* UserInterface/Models/SourceCodePosition.js:
(WebInspector.SourceCodePosition):
* UserInterface/Models/SourceMap.js:
(WebInspector.SourceMap):
(WebInspector.SourceMap.StringCharIterator):
* UserInterface/Models/TextMarker.js:
(WebInspector.TextMarker):
* UserInterface/Models/TextRange.js:
(WebInspector.TextRange):
* UserInterface/Protocol/InspectorFrontendHostStub.js:
(.WebInspector.InspectorFrontendHostStub):
* UserInterface/Protocol/MessageDispatcher.js:
(WebInspector.dispatchNextQueuedMessageFromBackend):
(WebInspector.dispatchMessageFromBackend):
* UserInterface/Protocol/RemoteObject.js:
(WebInspector.RemoteObject):
(WebInspector.RemoteObject.fromPrimitiveValue):
(WebInspector.RemoteObject.fromLocalObject):
(WebInspector.RemoteObject.resolveNode):
(WebInspector.RemoteObject.fromPayload):
(WebInspector.RemoteObject.type):
(WebInspector.RemoteObjectProperty):
(WebInspector.RemoteObjectProperty.fromPrimitiveValue):
(WebInspector.LocalJSONObject):
* UserInterface/Protocol/ReplayObserver.js:
(WebInspector.ReplayPosition.fromProtocol):
* UserInterface/Views/BreakpointActionView.js:
(WebInspector.BreakpointActionView.displayStringForType):
* UserInterface/Views/CSSStyleDeclarationTextEditor.js:
(WebInspector.CSSStyleDeclarationTextEditor.prototype.if):
* UserInterface/Views/ClusterContentView.js:
(WebInspector.ClusterContentView.prototype.goBack):
(WebInspector.ClusterContentView.prototype.goForward):
* UserInterface/Views/CodeMirrorAdditions.js:
* UserInterface/Views/ColorWheel.js:
(WebInspector.ColorWheel):
* UserInterface/Views/ConsoleMessage.js:
(WebInspector.ConsoleMessage):
(WebInspector.ConsoleMessage.create):
* UserInterface/Views/ConsoleMessageImpl.js:
(WebInspector.ConsoleMessageImpl):
* UserInterface/Views/ContextMenu.js:
(WebInspector.ContextMenuItem):
(WebInspector.ContextSubMenuItem):
(WebInspector.ContextMenu):
(WebInspector.ContextMenu.Provider):
(WebInspector.ContextMenu.registerProvider):
(WebInspector.contextMenuItemSelected):
(WebInspector.contextMenuCleared):
* UserInterface/Views/DOMTreeElement.js:
(WebInspector.DOMTreeElement):
* UserInterface/Views/DOMTreeOutline.js:
(WebInspector.DOMTreeOutline):
* UserInterface/Views/DOMTreeUpdater.js:
(WebInspector.DOMTreeUpdater):
* UserInterface/Views/DatabaseContentView.js:
(WebInspector.DatabaseContentView):
* UserInterface/Views/EditingSupport.js:
(WebInspector.isBeingEdited):
(WebInspector.markBeingEdited):
(WebInspector.isEditingAnyField):
(WebInspector.isEventTargetAnEditableField):
(WebInspector.EditingConfig):
(WebInspector.startEditing):
* UserInterface/Views/EventListenerSection.js:
(WebInspector.EventListenerSection):
* UserInterface/Views/EventListenerSectionGroup.js:
(WebInspector.EventListenerSectionGroup):
* UserInterface/Views/FindBanner.js:
* UserInterface/Views/GeneralTreeElement.js:
(WebInspector.GeneralTreeElement):
* UserInterface/Views/GoToLineDialog.js:
(WebInspector.GoToLineDialog):
* UserInterface/Views/IndeterminateProgressSpinner.js:
(WebInspector.IndeterminateProgressSpinner):
* UserInterface/Views/LayoutTimelineDataGrid.js:
(WebInspector.LayoutTimelineDataGrid):
* UserInterface/Views/LogContentView.js:
(WebInspector.LogContentView):
* UserInterface/Views/NavigationItem.js:
* UserInterface/Views/ObjectPropertiesSection.js:
(WebInspector.ObjectPropertiesSection):
(WebInspector.ObjectPropertiesSection.CompareProperties):
(WebInspector.ObjectPropertyTreeElement):
* UserInterface/Views/ProbeSetDetailsSection.js:
* UserInterface/Views/PropertiesSection.js:
(WebInspector.PropertiesSection):
* UserInterface/Views/ResourceTreeElement.js:
(WebInspector.ResourceTreeElement.compareResourceTreeElements):
(WebInspector.ResourceTreeElement.compareFolderAndResourceTreeElements):
* UserInterface/Views/ScriptTimelineDataGrid.js:
(WebInspector.ScriptTimelineDataGrid):
* UserInterface/Views/SearchResultTreeElement.js:
(WebInspector.SearchResultTreeElement.truncateAndHighlightTitle):
* UserInterface/Views/TimelineRuler.js:
(WebInspector.TimelineRuler):
(WebInspector.TimelineRuler.prototype.get allowsClippedLabels):
(WebInspector.TimelineRuler.prototype._handleMouseUp):
* UserInterface/Views/Toolbar.js:
* UserInterface/Views/TreeOutline.js:
(TreeOutline.prototype.appendChild):
(TreeOutline.prototype.insertChild):
(TreeOutline.prototype.removeChildAtIndex):
(TreeOutline.prototype.removeChild):
(TreeOutline.prototype.removeChildren):
(TreeOutline.prototype.removeChildrenRecursive):
(TreeOutline.prototype._rememberTreeElement):
(TreeOutline.prototype._forgetTreeElement):
(TreeOutline.prototype._forgetChildrenRecursive):
(TreeOutline.prototype.getCachedTreeElement):
(TreeOutline.prototype.findTreeElement):
(TreeOutline.prototype._treeElementDidChange):
(TreeOutline.prototype.treeElementFromPoint):
(TreeOutline.prototype._treeKeyDown):
(TreeOutline.prototype.expand):
(TreeOutline.prototype.collapse):
(TreeOutline.prototype.revealed):
(TreeOutline.prototype.reveal):
(TreeOutline.prototype.select):
(TreeOutline.prototype.revealAndSelect):
(TreeElement.prototype._attach):
(TreeElement.prototype._detach):
(TreeElement.treeElementMouseDown):
(TreeElement.treeElementToggled):
(TreeElement.treeElementDoubleClicked):
(TreeElement.prototype.collapse):
(TreeElement.prototype.collapseRecursively):
(TreeElement.prototype.expand):
(TreeElement.prototype.expandRecursively):
(TreeElement.prototype.hasAncestor):
(TreeElement.prototype.reveal):
(TreeElement.prototype.revealed):
(TreeElement.prototype.selectOnMouseDown):
(TreeElement.prototype.select):
(TreeElement.prototype.revealAndSelect):
(TreeElement.prototype.deselect):
(TreeElement.prototype.onpopulate):
(TreeElement.prototype.traverseNextTreeElement):
(TreeElement.prototype.traversePreviousTreeElement):
(TreeElement.prototype.isEventWithinDisclosureTriangle):
* UserInterface/Views/TreeOutlineDataGridSynchronizer.js:
(WebInspector.TreeOutlineDataGridSynchronizer):

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

5 years agoUpdate my email in contributors.json
commit-queue@webkit.org [Tue, 9 Sep 2014 17:26:37 +0000 (17:26 +0000)]
Update my email in contributors.json
https://bugs.webkit.org/show_bug.cgi?id=136671

Patch by Christophe Dumez <cdumez@apple.com> on 2014-09-09
Reviewed by Andreas Kling.

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

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

5 years agoMake DrawingArea a real MessageReceiver
timothy_horton@apple.com [Tue, 9 Sep 2014 15:58:09 +0000 (15:58 +0000)]
Make DrawingArea a real MessageReceiver
https://bugs.webkit.org/show_bug.cgi?id=136438

Reviewed by Darin Adler.

* WebProcess/WebPage/DrawingArea.cpp:
(WebKit::DrawingArea::DrawingArea):
(WebKit::DrawingArea::~DrawingArea):
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/DrawingArea.messages.in:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::~WebPage):
(WebKit::WebPage::didReceiveMessage):
Make DrawingArea a real MessageReceiver instead of a LegacyReceiver that
jumps through WebPage to receive its messages.

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

5 years agoAX: HTML5 landmark (and related) elements should not be ignored.
commit-queue@webkit.org [Tue, 9 Sep 2014 15:09:57 +0000 (15:09 +0000)]
AX: HTML5 landmark (and related) elements should not be ignored.
https://bugs.webkit.org/show_bug.cgi?id=135116

Patch by Takeshi Kurosawa <taken.spc@gmail.com> on 2014-09-09
Reviewed by Chris Fleizach.

Make sure following element should not be ignored in computeAccessibilityIsIgnored
- header, aside, address, main, nav, article, section
- dt, dd

Source/WebCore:

Tests: platform/mac/accessibility/descriptionlist-not-ignored.html
       platform/mac/accessibility/landmark-not-ignored.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):

LayoutTests:

* platform/mac/accessibility/descriptionlist-not-ignored-expected.txt: Added.
* platform/mac/accessibility/descriptionlist-not-ignored.html: Added.
* platform/mac/accessibility/landmark-not-ignored-expected.txt: Added.
* platform/mac/accessibility/landmark-not-ignored.html: Added.

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

5 years ago[CSS Grid Layout] RenderGrid methods should take RenderBox references
svillar@igalia.com [Tue, 9 Sep 2014 11:39:41 +0000 (11:39 +0000)]
[CSS Grid Layout] RenderGrid methods should take RenderBox references
https://bugs.webkit.org/show_bug.cgi?id=136630

Reviewed by Darin Adler.

RenderGrid has several methods that take pointers to RenderBox
instances but the body of those methods assumes that the objects
will never be NULL. We should replace them by references.

* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::computeUsedBreadthOfGridTracks):
(WebCore::RenderGrid::logicalContentHeightForChild):
(WebCore::RenderGrid::minContentForChild):
(WebCore::RenderGrid::maxContentForChild):
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems):
(WebCore::RenderGrid::insertItemIntoGrid):
(WebCore::RenderGrid::placeItemsOnGrid):
(WebCore::RenderGrid::createEmptyGridAreaAtSpecifiedPositionsOutsideGrid):
(WebCore::RenderGrid::placeSpecifiedMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):
(WebCore::RenderGrid::layoutGridItems):
(WebCore::RenderGrid::cachedGridCoordinate):
(WebCore::RenderGrid::gridAreaBreadthForChild):
(WebCore::RenderGrid::findChildLogicalPosition):
* rendering/RenderGrid.h:

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

5 years agoRemove unnecessary assert that is getting hit in some scenarios.
antti@apple.com [Tue, 9 Sep 2014 10:34:05 +0000 (10:34 +0000)]
Remove unnecessary assert that is getting hit in some scenarios.

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

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

5 years agoTry to fix windows build.
antti@apple.com [Tue, 9 Sep 2014 09:22:41 +0000 (09:22 +0000)]
Try to fix windows build.

* platform/network/cf/ResourceResponseCFNet.cpp:
(WebCore::ResourceResponse::platformCertificateInfo):

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

5 years ago[CSSRegions]Incorrect layout for multicol element transformed into region
mihnea@adobe.com [Tue, 9 Sep 2014 08:56:38 +0000 (08:56 +0000)]
[CSSRegions]Incorrect layout for multicol element transformed into region
https://bugs.webkit.org/show_bug.cgi?id=136459

Reviewed by David Hyatt.

Source/WebCore:

Until we will support the multicolumn region functionality, a multicolumn element
that also has flow-from style is not transformed into a region (https://bugs.webkit.org/show_bug.cgi?id=135153).

However, when a multicolumn element with flow-from style dynamically loses
its multicolumn style while keeping the flow-from style, we have to transform
the element into a region by detaching and attaching the associated DOM node,
in the same way we are proceeding when an element receives a different flow-from style.

Test: fast/regions/multicol/nested-multicol-into-region-dynamic.html

* style/StyleResolveTree.cpp:
(WebCore::Style::determineChange):

LayoutTests:

* fast/regions/multicol/nested-multicol-into-region-dynamic-expected.txt: Added.
* fast/regions/multicol/nested-multicol-into-region-dynamic.html: Added.

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

5 years agoPass certificate info as part of ResourceResponse
antti@apple.com [Tue, 9 Sep 2014 08:19:16 +0000 (08:19 +0000)]
Pass certificate info as part of ResourceResponse
https://bugs.webkit.org/show_bug.cgi?id=136611

Reviewed by Darin Adler.

Source/WebCore:

The current way of passing certificate info separately from ResourceResponse and then jamming it back
is complex and confusing. This patch makes it a true part of the ResourceResponse.

With this patch we also only create and pass the certificate info object for the main resource. It is
a big and complex object and we never look into it for any other resource type.

* WebCore.exp.in:
* platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::ResourceResponseBase):

    Mark initialized for synthetic responses, unitialized for those backed by a platform request.

(WebCore::ResourceResponseBase::initializeCertificateInfo):

    Calling this pulls the certificate info out from the platform type.
    It shoud only be used for resources that need it.

(WebCore::ResourceResponseBase::certificateInfo):
* platform/network/ResourceResponseBase.h:
(WebCore::ResourceResponseBase::platformCertificateInfo):
(WebCore::ResourceResponseBase::platformSuggestedFileName):
(WebCore::ResourceResponseBase::encode):
(WebCore::ResourceResponseBase::decode):

    Encode and decode certificate info if it is present.

* platform/network/cf/ResourceResponse.h:
* platform/network/mac/CertificateInfo.h:
* platform/network/mac/CertificateInfoMac.mm:
(WebCore::CertificateInfo::CertificateInfo):
* platform/network/mac/ResourceResponseMac.mm:
(WebCore::ResourceResponse::platformCertificateInfo):
(WebCore::ResourceResponse::setCertificateChain): Deleted.
(WebCore::ResourceResponse::certificateChain): Deleted.
* platform/network/soup/ResourceResponse.h:
* platform/network/soup/ResourceResponseSoup.cpp:
(WebCore::ResourceResponse::platformCertificateInfo):

Source/WebKit2:

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::didReceiveResponseAsync):

    Initialize the certificate info only if requested.

* WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::didReceiveResponse):
(WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo): Deleted.

    Rename didReceiveResponseWithCertificateInfo -> didReceiveResponse as it is now part of the response.

* WebProcess/Network/WebResourceLoader.h:
* WebProcess/Network/WebResourceLoader.messages.in:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

    Request certificate info for the main resource only.

(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::certificateInfo):

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

5 years ago[CSSRegions] Use C++11 range-based loops in FlowThreadController
mihnea@adobe.com [Tue, 9 Sep 2014 07:57:10 +0000 (07:57 +0000)]
[CSSRegions] Use C++11 range-based loops in FlowThreadController
https://bugs.webkit.org/show_bug.cgi?id=136634

Reviewed by Andrei Bucur.

No new tests as no new functionality was introduced.

* rendering/FlowThreadController.cpp:
(WebCore::FlowThreadController::ensureRenderFlowThreadWithName):
(WebCore::FlowThreadController::styleDidChange):
(WebCore::FlowThreadController::layoutRenderNamedFlowThreads):
(WebCore::FlowThreadController::updateFlowThreadsChainIfNecessary):
(WebCore::FlowThreadController::updateFlowThreadsNeedingLayout):
(WebCore::FlowThreadController::updateFlowThreadsNeedingTwoStepLayout):
(WebCore::FlowThreadController::resetFlowThreadsWithAutoHeightRegions):
(WebCore::FlowThreadController::updateFlowThreadsIntoMeasureContentPhase):
(WebCore::FlowThreadController::updateFlowThreadsLayerToRegionMappingsIfNeeded):
(WebCore::FlowThreadController::updateNamedFlowsLayerListsIfNeeded):
(WebCore::FlowThreadController::collectFixedPositionedLayers):
(WebCore::FlowThreadController::isAutoLogicalHeightRegionsCountConsistent):

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

5 years agoMinor refactor in CSSComputedStyleDeclaration
simon.fraser@apple.com [Tue, 9 Sep 2014 06:36:37 +0000 (06:36 +0000)]
Minor refactor in CSSComputedStyleDeclaration
https://bugs.webkit.org/show_bug.cgi?id=136664

Reviewed by Darin Adler.

The "if (length.isPercentNotCalculated()) createValue() else zoomAdjustedPixelValue()"
pattern occurred a number of times here, so factor into percentageOrZoomAdjustedValue().

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::positionOffsetValue): l -> length
(WebCore::percentageOrZoomAdjustedValue):
(WebCore::getBorderRadiusCornerValues):
(WebCore::getBorderRadiusCornerValue):
(WebCore::scrollSnapDestination):
(WebCore::scrollSnapPoints):
(WebCore::scrollSnapCoordinates):

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

5 years ago[WebKit2] Fix build error in WebKit2/WebProcess module
ossy@webkit.org [Tue, 9 Sep 2014 06:34:42 +0000 (06:34 +0000)]
[WebKit2] Fix build error in WebKit2/WebProcess module
https://bugs.webkit.org/show_bug.cgi?id=136667

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-09-08
Reviewed by Darin Adler.

Fix the build error by handling default case.

* WebProcess/Network/WebResourceLoadScheduler.cpp:
(WebKit::maximumBufferingTime):

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

5 years agoApplication Cache Storage: failed to execute statement "DELETE FROM CacheGroups"...
ap@apple.com [Tue, 9 Sep 2014 06:07:08 +0000 (06:07 +0000)]
Application Cache Storage: failed to execute statement "DELETE FROM CacheGroups" error "no such table: CacheGroups"
https://bugs.webkit.org/show_bug.cgi?id=136647

Reviewed by Darin Adler.

* loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::verifySchemaVersion):
Don't try to delete the tables if we can't expect to have them yet.

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

5 years agoREGRESSION (r172153): Text drawn with wrong color when second text shadow has zero...
mmaxfield@apple.com [Tue, 9 Sep 2014 02:56:24 +0000 (02:56 +0000)]
REGRESSION (r172153): Text drawn with wrong color when second text shadow has zero offset and blur (breaks buttons at aws.amazon.com)
https://bugs.webkit.org/show_bug.cgi?id=136612

Reviewed by Darin Adler.

Source/WebCore:

r172153 was fundamentally broken, and would restore graphics contexts that had never been saved. This patch
reimplements r172153 by using "continue" to skip loop iterations instead of changing the internal logic of
the loop.

In addition, I have refactored InlineTextBox::applyShadowToGraphicsContext() to take an extra boolean
reference as an out parameter in order to make it obvious it if saved a graphics context that needs
to be restored. This should make it less likely to make these kinds of mistakes in the future.

Test: fast/text/empty-shadow-with-color.html

* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::applyShadowToGraphicsContext): Add bool reference out param.
* rendering/InlineTextBox.h: Ditto.
* rendering/TextPainter.cpp:
(WebCore::isEmptyShadow): Change logic to not skip loop iterations on a null shadow.
(WebCore::paintTextWithShadows): Use continue to skip loop iterations for empty shadows. In addition,
use the out param in InlineTextBox::applyShadowToGraphicsContext().
* rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paintTextWithShadows): Update for new sigurature of
InlineTextBox::applyShadowToGraphicsContext().

LayoutTests:

Make sure that text is drawn with correct color when second text shadow has zero offset and blur

* fast/text/empty-shadow-with-color-expected.html: Added.
* fast/text/empty-shadow-with-color.html: Added.

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

5 years agoPerformanceTests/SVG/SVG-Text.html has unparsable output
mmaxfield@apple.com [Tue, 9 Sep 2014 02:31:21 +0000 (02:31 +0000)]
PerformanceTests/SVG/SVG-Text.html has unparsable output
https://bugs.webkit.org/show_bug.cgi?id=136648

Reviewed by Gavin Barraclough.

I need to clean up the arbitrary text on the page before telling
the test runner infrastructure that the test is complete.

* SVG/SVG-Text.html:

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

5 years agoUnreviewed. More webgl conformance test gardening.
roger_fong@apple.com [Tue, 9 Sep 2014 02:03:43 +0000 (02:03 +0000)]
Unreviewed. More webgl conformance test gardening.
* platform/mac/TestExpectations:

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

5 years agoFix 32-bit Mac build for new warnings
mjs@apple.com [Tue, 9 Sep 2014 01:46:18 +0000 (01:46 +0000)]
Fix 32-bit Mac build for new warnings
https://bugs.webkit.org/show_bug.cgi?id=136624

Reviewed by Darin Adler.

(Jessie already fixed this but my version with typedefs seems a tiny bit cleaner.)

* Carbon/HIViewAdapter.m:
(+[HIViewAdapter bindHIViewToNSView:nsView:]): Need to use explicit casting now.

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

5 years ago[EFL] Enable fixed layout by default
gyuyoung.kim@samsung.com [Tue, 9 Sep 2014 01:39:17 +0000 (01:39 +0000)]
[EFL] Enable fixed layout by default
https://bugs.webkit.org/show_bug.cgi?id=136607

Reviewed by Csaba Osztrogonác.

Fixed layout is being used by Tizen platform by default. However, the feature
has still many defects now. So, we need to enable it by default, then should fix
those bugs.

* MiniBrowser/efl/main.c:

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

5 years agoDFG should have a reusable SSA builder
fpizlo@apple.com [Tue, 9 Sep 2014 00:34:40 +0000 (00:34 +0000)]
DFG should have a reusable SSA builder
https://bugs.webkit.org/show_bug.cgi?id=136331

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

We want to implement sophisticated SSA transformations like object allocation sinking
(https://bugs.webkit.org/show_bug.cgi?id=136330), but to do that, we need to be able to do
updates to SSA that require inserting new Phi's. This requires calculating where Phis go.
Previously, our Phi calculation was based on Aycock and Horspool's algorithm, and our
implementation of this algorithm only worked when doing CPS->SSA conversion. The code
could not be reused for cases where some phase happens to know that it introduced a few
defs in some blocks and it wants to figure out where the Phis should go. Moreover, even
the general algorithm of Aycock and Horspool is not well suited to such targetted SSA
updates, since it requires first inserting maximal Phis. That scales well when the Phis
were already there (like in our CPS form) but otherwise it's quite unnatural and may be
difficult to make efficient.

The usual way of handling both SSA conversion and SSA update is to use Cytron et al's
algorithm based on dominance frontiers. For a while now, I've been working on creating a
Cytron-based SSA calculator that can be used both as a replacement for our current SSA
converter and as a reusable tool for any phase that needs to do SSA update. I previously
optimized our dominator calculation and representation to use dominator trees computed
using Lengauer and Tarjan's algorithm - mainly to make it more scalable to enumerate over
the set of blocks that dominate you or vice-versa, and then I implemented a dominance
frontier calculator. This patch implements the final step towards making SSA update
available to all SSA phases: it implements an SSACalculator that can tell you where Phis
go when given an arbitrary set of Defs. To keep things simple, and to ensure that we have
good test coverage for this SSACalculator, this patch replaces the old Aycock-Horspool
SSA converter with one based on the SSACalculator.

This has no observable impact. It does reduce the amount of code in SSAConversionPhase.
But even better, it makes SSAConversionPhase have significantly less tricky logic. It
mostly just relies on SSACalculator to do the tricky stuff, and SSAConversionPhase mostly
just reasons about the weirdnesses unique to the ThreadedCPS form that it sees as input.
In fact, using the Cytron et al approach means that there isn't really any "smoke and
mirrors" trickyness related to SSA. SSACalculator's only "tricks" are using the pruned
iterated dominance frontier to place Phi's and using the dom tree to find reaching defs.
The complexity is mostly confined to Dominators, which computes various dominator-related
properties over the control flow graph. That class can be difficult to understand, but at
least it follows well-known graph theory wisdom.

* CMakeLists.txt:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* dfg/DFGAnalysis.h:
* dfg/DFGCSEPhase.cpp:
* dfg/DFGDCEPhase.cpp:
(JSC::DFG::DCEPhase::run):
* dfg/DFGDominators.h:
(JSC::DFG::Dominators::immediateDominatorOf):
(JSC::DFG::Dominators::forAllBlocksInIteratedDominanceFrontierOf):
(JSC::DFG::Dominators::forAllBlocksInPrunedIteratedDominanceFrontierOf):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::blocksInPreOrder):
(JSC::DFG::Graph::blocksInPostOrder):
(JSC::DFG::Graph::getBlocksInPreOrder): Deleted.
(JSC::DFG::Graph::getBlocksInPostOrder): Deleted.
* dfg/DFGGraph.h:
* dfg/DFGLICMPhase.cpp:
(JSC::DFG::LICMPhase::run):
* dfg/DFGNodeFlags.h:
* dfg/DFGPhase.cpp:
(JSC::DFG::Phase::beginPhase):
(JSC::DFG::Phase::endPhase):
* dfg/DFGPhase.h:
* dfg/DFGSSACalculator.cpp: Added.
(JSC::DFG::SSACalculator::Variable::dump):
(JSC::DFG::SSACalculator::Variable::dumpVerbose):
(JSC::DFG::SSACalculator::Def::dump):
(JSC::DFG::SSACalculator::SSACalculator):
(JSC::DFG::SSACalculator::~SSACalculator):
(JSC::DFG::SSACalculator::newVariable):
(JSC::DFG::SSACalculator::newDef):
(JSC::DFG::SSACalculator::nonLocalReachingDef):
(JSC::DFG::SSACalculator::reachingDefAtTail):
(JSC::DFG::SSACalculator::dump):
* dfg/DFGSSACalculator.h: Added.
(JSC::DFG::SSACalculator::Variable::index):
(JSC::DFG::SSACalculator::Variable::Variable):
(JSC::DFG::SSACalculator::Def::variable):
(JSC::DFG::SSACalculator::Def::block):
(JSC::DFG::SSACalculator::Def::value):
(JSC::DFG::SSACalculator::Def::Def):
(JSC::DFG::SSACalculator::variable):
(JSC::DFG::SSACalculator::computePhis):
(JSC::DFG::SSACalculator::phisForBlock):
(JSC::DFG::SSACalculator::reachingDefAtHead):
* dfg/DFGSSAConversionPhase.cpp:
(JSC::DFG::SSAConversionPhase::SSAConversionPhase):
(JSC::DFG::SSAConversionPhase::run):
(JSC::DFG::SSAConversionPhase::forwardPhiChildren): Deleted.
(JSC::DFG::SSAConversionPhase::forwardPhi): Deleted.
(JSC::DFG::SSAConversionPhase::forwardPhiEdge): Deleted.
(JSC::DFG::SSAConversionPhase::deduplicateChildren): Deleted.
* dfg/DFGSSAConversionPhase.h:
* dfg/DFGValidate.cpp:
(JSC::DFG::Validate::Validate):
(JSC::DFG::Validate::dumpGraphIfAppropriate):
(JSC::DFG::validate):
* dfg/DFGValidate.h:
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::lower):
* runtime/Options.h:

Source/WTF:

Update the alloc() method to use variadic templates. This makes it more natural to use.

* wtf/SegmentedVector.h:
(WTF::SegmentedVector::alloc):

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

5 years agoUnreviewed, rolling out r173402.
commit-queue@webkit.org [Tue, 9 Sep 2014 00:21:24 +0000 (00:21 +0000)]
Unreviewed, rolling out r173402.
https://bugs.webkit.org/show_bug.cgi?id=136649

Breaking buildw with error "unable to restore file position to
0x00000c60 for section __DWARF.__debug_info (errno = 9)"
(Requested by mlam_ on #webkit).

Reverted changeset:

"Move CallFrame and Register inlines functions out of
JSScope.h."
https://bugs.webkit.org/show_bug.cgi?id=136579
http://trac.webkit.org/changeset/173402

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

5 years agoUnreviewed. Skip some WebGL conformance tests that may be passing on the bots now.
roger_fong@apple.com [Tue, 9 Sep 2014 00:18:08 +0000 (00:18 +0000)]
Unreviewed. Skip some WebGL conformance tests that may be passing on the bots now.

* platform/mac/TestExpectations:

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

5 years agoWeb Inspector: Inspector frequently restores wrong view when opened (often Timelines...
commit-queue@webkit.org [Tue, 9 Sep 2014 00:02:02 +0000 (00:02 +0000)]
Web Inspector: Inspector frequently restores wrong view when opened (often Timelines instead of Resource)
https://bugs.webkit.org/show_bug.cgi?id=135965

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

There were numerous subtle race conditions in state restoration.
This patch intends to fix a number of them to get what feels
like sane behavior for selected sidebar state restoration.

1. Starting a Timeline recording no longer automatically switches to the TimelineContentView.
This was making every reload switch to Timelines. If you had
a resource selected (e.g. the DOM Tree) we should go back
to showing the DOM tree.

2. Background sidebars should not reveal and select tree elements.
This was making resources get selected in Timelines when reloading the page
because the background Resources sidebar was restoring selection of the resource.
That is an unexpected selection and breaks the experience of Timelines.

3. ContentView changes during page navigation / reload should not be saved, and improve Resource restoration.
If a TimelineContentView was in the ContentBrowser back/forward history,
a reload with a resource selected in the Resources sidebar would end up
showing the Timelines sidebar. This was because when ContentViews are
closed during the navigation, the ContentBrowser would fall back to the
remaining TimelineContentView and switch to its only allowed sidebar
(Timelines). ResourceSidebarPanel, knowing a resource was selected,
would select the MainFrame intending to stay in the Resource sidebar,
but the resource is okay with showing in any sidebar, so we stay on Timelines.

4. Resource sidebar state restoration should propertly restore selection.
On reload, state restoration would know the resource to re-select in the
Resources sidebar. As ResourceTreeElements are added to the sidebar
they are checked against the state restoration cookie. If they match,
they would select the element and delete the cookie. Unfortunately,
if this was the first TreeElement child being added to a FrameTreeElement,
the FrameTreeElement onpopulate would remove all children and re-add
them in a unique way. Unfortunately this means the TreeElement we
selected based on the cookie, immediately got thrown away and recreated,
and we no longer reveal and select it. This is a special case for
FrameTreeElements which use the onpopulate SPI. So, instead of starting
processing the new element queue, if this is the first time just trigger
the onpopulate and elements are made just once.

5. Show Error Console triggering early, could have unexpected sidebar behavior.
Opening Web Inspector directly to the console can run before
WebInspector.contentLoaded (DOMContentLoaded). So in that case
WebInspector.showFullHeightConsole was not handling if the contentBrowser
had no content view yet, and the sidebar might be-reopened later on
in contentLoaded based on the setting value.

6. Improve automatic resource selection for sidebars with multiple tree outlines.
Selecting a call frame tree element was unexpectedly changing the
selection to a Resource where the breakpoint was set. This was
because we were only looking at one of potentially many content
tree outlines in the sidebar to see if there was a user action.

* UserInterface/Base/Main.js:
(WebInspector.contentLoaded):
(WebInspector.showFullHeightConsole):
(WebInspector.toggleConsoleView):
(WebInspector._mainResourceDidChange):
(WebInspector._provisionalLoadStarted):
(WebInspector._revealAndSelectRepresentedObjectInNavigationSidebar):
(WebInspector._updateCookieForInspectorViewState):
(WebInspector._contentBrowserCurrentContentViewDidChange):
* UserInterface/Views/NavigationSidebarPanel.js:
(WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
* UserInterface/Views/ResourceSidebarPanel.js:
(WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork):
(WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange):
* UserInterface/Views/TimelineSidebarPanel.js:
(WebInspector.TimelineSidebarPanel.prototype._recordingLoaded):

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

5 years agoWeb Inspector: Add layout test for lowercase CSSProperty names
commit-queue@webkit.org [Tue, 9 Sep 2014 00:00:35 +0000 (00:00 +0000)]
Web Inspector: Add layout test for lowercase CSSProperty names
https://bugs.webkit.org/show_bug.cgi?id=135961

Patch by Matt Baker <mattbaker@apple.com> on 2014-09-08
Reviewed by Joseph Pecoraro.

Source/WebInspectorUI:

Modified test components to support testing CSSStyleManager and related classes:
- Added required models to Test.html
- Added CSSCompletions initialization to Test.js
- CSSCompletions doesn't assume presence of CodeMirror.

* UserInterface/Base/Test.js:
(WebInspector.loaded):
* UserInterface/Models/CSSCompletions.js:
* UserInterface/Test.html:

LayoutTests:

Added test to check that property names in matched CSS rules are returned in lowercase
when specified with upper or mixed case in the original CSS source.

* inspector/css/matched-style-properties-expected.txt: Added.
* inspector/css/matched-style-properties.html: Added.

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

5 years agoWeb Inspector: Fixes to layout test infrastructure
commit-queue@webkit.org [Mon, 8 Sep 2014 23:59:05 +0000 (23:59 +0000)]
Web Inspector: Fixes to layout test infrastructure
https://bugs.webkit.org/show_bug.cgi?id=136360

Patch by Matt Baker <mattbaker@apple.com> on 2014-09-08
Reviewed by Joseph Pecoraro.

Source/WebInspectorUI:

Added missing includes to Test.html, which was breaking tests that
depended on SourceCodeLocation and LazySourceCodeLocation. Also fixed
bug which prevented test results from being resent after reloading the
page under test.

* UserInterface/Base/Test.js:
(InspectorTest.reloadPage):
* UserInterface/Test.html:

LayoutTests:

Updated expected results to reflect breakpoint resolution changes in r171784.

* inspector/debugger/probe-manager-add-remove-actions-expected.txt:

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

5 years agoMove CallFrame and Register inlines functions out of JSScope.h.
mark.lam@apple.com [Mon, 8 Sep 2014 22:58:25 +0000 (22:58 +0000)]
Move CallFrame and Register inlines functions out of JSScope.h.
<https://webkit.org/b/136579>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

This include fixing up some files to #include JSCInlines.h to pick up
these inline functions.  I also added JSCellInlines.h to JSCInlines.h
since it is included from many of the affected .cpp files.

* API/ObjCCallbackFunction.mm:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bindings/ScriptValue.cpp:
* inspector/InjectedScriptHost.cpp:
* inspector/InjectedScriptManager.cpp:
* inspector/JSGlobalObjectInspectorController.cpp:
* inspector/JSJavaScriptCallFrame.cpp:
* inspector/ScriptDebugServer.cpp:
* interpreter/CallFrameInlines.h:
(JSC::CallFrame::vm):
(JSC::CallFrame::lexicalGlobalObject):
(JSC::CallFrame::globalThisValue):
* interpreter/RegisterInlines.h: Added.
(JSC::Register::operator=):
(JSC::Register::scope):
* runtime/ArgumentsIteratorConstructor.cpp:
* runtime/JSArrayIterator.cpp:
* runtime/JSCInlines.h:
* runtime/JSCJSValue.cpp:
* runtime/JSMapIterator.cpp:
* runtime/JSPromiseConstructor.cpp:
* runtime/JSPromiseDeferred.cpp:
* runtime/JSPromiseFunctions.cpp:
* runtime/JSPromisePrototype.cpp:
* runtime/JSPromiseReaction.cpp:
* runtime/JSScope.h:
(JSC::Register::operator=): Deleted.
(JSC::Register::scope): Deleted.
(JSC::ExecState::vm): Deleted.
(JSC::ExecState::lexicalGlobalObject): Deleted.
(JSC::ExecState::globalThisValue): Deleted.
* runtime/JSSetIterator.cpp:
* runtime/MapConstructor.cpp:
* runtime/MapData.cpp:
* runtime/MapIteratorPrototype.cpp:
* runtime/MapPrototype.cpp:
* runtime/SetConstructor.cpp:
* runtime/SetIteratorPrototype.cpp:
* runtime/SetPrototype.cpp:
* runtime/WeakMapConstructor.cpp:
* runtime/WeakMapPrototype.cpp:

Source/WebCore:

No new tests.

Added #include of the appropriate *Inlines.h files.  Unlike in
JavaScriptCore, I #include'd the specific needed *Inlines.h instead of
JSCInlines.h.  This is done to minimize the need for WebCore to be
rebuilt when JSC changes are introduced.

* ForwardingHeaders/interpreter/RegisterInlines.h: Added.
* bindings/js/JSAudioBufferSourceNodeCustom.cpp:
* bindings/js/JSAudioTrackCustom.cpp:
* bindings/js/JSBiquadFilterNodeCustom.cpp:
* bindings/js/JSCSSStyleDeclarationCustom.cpp:
* bindings/js/JSCanvasRenderingContext2DCustom.cpp:
* bindings/js/JSCommandLineAPIHostCustom.cpp:
* bindings/js/JSCustomSQLStatementErrorCallback.cpp:
* bindings/js/JSDOMBinding.h:
* bindings/js/JSDOMStringListCustom.cpp:
* bindings/js/JSDOMWindowBase.cpp:
* bindings/js/JSDOMWindowShell.cpp:
* bindings/js/JSDocumentCustom.cpp:
* bindings/js/JSHTMLDocumentCustom.cpp:
* bindings/js/JSOscillatorNodeCustom.cpp:
* bindings/js/JSPannerNodeCustom.cpp:
* bindings/js/JSPopStateEventCustom.cpp:
* dom/TreeWalker.cpp:
* html/HTMLPlugInImageElement.cpp:
* inspector/CommandLineAPIModule.cpp:
* inspector/InspectorController.cpp:

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

5 years agoSeparate the Apple media controls module from other ports
dino@apple.com [Mon, 8 Sep 2014 22:33:21 +0000 (22:33 +0000)]
Separate the Apple media controls module from other ports
https://bugs.webkit.org/show_bug.cgi?id=136644
rdar://problem/18270969

Reviewed by Eric Carlson.

Make a mediaControlsBase.{js|css} that acts as the base
class for the EFL and GTK ports (they were using mediaControlsApple).
Over time, the Apple-specific controls may use more of the
Base class.

* Modules/mediacontrols/mediaControlsBase.css: Added.
* Modules/mediacontrols/mediaControlsBase.js: Added.
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::mediaControlsStyleSheet): Load Base rather than Apple.
(WebCore::RenderThemeEfl::mediaControlsScript): Ditto.
* rendering/RenderThemeGtk.cpp:
(WebCore::RenderThemeGtk::mediaControlsScript): Ditto.

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

5 years agoInvestigate test failures on ML caused by MediaTime refactoring
ap@apple.com [Mon, 8 Sep 2014 21:40:08 +0000 (21:40 +0000)]
Investigate test failures on ML caused by MediaTime refactoring
https://bugs.webkit.org/show_bug.cgi?id=136532

Added another test that appears to have been affected by this refactoring.

* platform/mac/TestExpectations:

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

5 years agoFix the iOS build.
simon.fraser@apple.com [Mon, 8 Sep 2014 21:38:28 +0000 (21:38 +0000)]
Fix the iOS build.

* Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
* Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:

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

5 years agoAlways update the referrer header in CachedResource
jochen@chromium.org [Mon, 8 Sep 2014 21:22:13 +0000 (21:22 +0000)]
Always update the referrer header in CachedResource
https://bugs.webkit.org/show_bug.cgi?id=136642

Reviewed by Alexey Proskuryakov.

If a request already includes a referrer header, and the document has
a non-default referrer policy, it is possible that we have to modify
the referrer header.

* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::addAdditionalRequestHeaders):

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

5 years agoRemove FILTERS flag
commit-queue@webkit.org [Mon, 8 Sep 2014 20:51:39 +0000 (20:51 +0000)]
Remove FILTERS flag
https://bugs.webkit.org/show_bug.cgi?id=136571

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-09-08
Reviewed by Darin Adler.

.:

* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsGTK.cmake:
* Source/cmake/OptionsMac.cmake:
* Source/cmake/WebKitFeatures.cmake:
* Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

No new tests required, no new functionality.

* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* DerivedSources.make:
* dom/DOMImplementation.cpp:
(WebCore::isSupportedSVG10Feature):
(WebCore::isSupportedSVG11Feature):
* platform/graphics/cpu/arm/filters/FEBlendNEON.h:
* platform/graphics/cpu/arm/filters/FECompositeArithmeticNEON.h:
* platform/graphics/cpu/arm/filters/FEGaussianBlurNEON.h:
* platform/graphics/cpu/arm/filters/NEONHelpers.h:
* platform/graphics/filters/DistantLightSource.cpp:
* platform/graphics/filters/DistantLightSource.h:
* platform/graphics/filters/FEBlend.cpp:
* platform/graphics/filters/FEBlend.h:
* platform/graphics/filters/FEColorMatrix.cpp:
* platform/graphics/filters/FEColorMatrix.h:
* platform/graphics/filters/FEComponentTransfer.cpp:
* platform/graphics/filters/FEComponentTransfer.h:
* platform/graphics/filters/FEComposite.cpp:
* platform/graphics/filters/FEComposite.h:
* platform/graphics/filters/FEConvolveMatrix.cpp:
* platform/graphics/filters/FEConvolveMatrix.h:
* platform/graphics/filters/FEDiffuseLighting.cpp:
* platform/graphics/filters/FEDiffuseLighting.h:
* platform/graphics/filters/FEDisplacementMap.cpp:
* platform/graphics/filters/FEDisplacementMap.h:
* platform/graphics/filters/FEDropShadow.cpp:
* platform/graphics/filters/FEDropShadow.h:
* platform/graphics/filters/FEFlood.cpp:
* platform/graphics/filters/FEFlood.h:
* platform/graphics/filters/FEGaussianBlur.cpp:
* platform/graphics/filters/FEGaussianBlur.h:
* platform/graphics/filters/FELighting.cpp:
* platform/graphics/filters/FELighting.h:
* platform/graphics/filters/FEMerge.cpp:
* platform/graphics/filters/FEMerge.h:
* platform/graphics/filters/FEMorphology.cpp:
* platform/graphics/filters/FEMorphology.h:
* platform/graphics/filters/FEOffset.cpp:
* platform/graphics/filters/FEOffset.h:
* platform/graphics/filters/FESpecularLighting.cpp:
* platform/graphics/filters/FESpecularLighting.h:
* platform/graphics/filters/FETile.cpp:
* platform/graphics/filters/FETile.h:
* platform/graphics/filters/FETurbulence.cpp:
* platform/graphics/filters/FETurbulence.h:
* platform/graphics/filters/Filter.h:
* platform/graphics/filters/FilterEffect.cpp:
* platform/graphics/filters/FilterEffect.h:
* platform/graphics/filters/LightSource.h:
* platform/graphics/filters/PointLightSource.cpp:
* platform/graphics/filters/PointLightSource.h:
* platform/graphics/filters/SourceAlpha.cpp:
* platform/graphics/filters/SourceAlpha.h:
* platform/graphics/filters/SourceGraphic.cpp:
* platform/graphics/filters/SourceGraphic.h:
* platform/graphics/filters/SpotLightSource.cpp:
* platform/graphics/filters/SpotLightSource.h:
* rendering/svg/RenderSVGResource.cpp:
(WebCore::removeFromCacheAndInvalidateDependencies):
* rendering/svg/RenderSVGResourceFilter.cpp:
* rendering/svg/RenderSVGResourceFilter.h:
* rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
* rendering/svg/RenderSVGResourceFilterPrimitive.h:
* rendering/svg/RenderSVGRoot.cpp:
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::intersectRepaintRectWithResources):
* rendering/svg/SVGRenderTreeAsText.cpp:
(WebCore::writeSVGResourceContainer):
(WebCore::writeResources):
* rendering/svg/SVGRenderingContext.cpp:
(WebCore::SVGRenderingContext::~SVGRenderingContext):
(WebCore::SVGRenderingContext::prepareToRenderSVGContent):
* rendering/svg/SVGRenderingContext.h:
(WebCore::SVGRenderingContext::SVGRenderingContext):
* rendering/svg/SVGResources.cpp:
(WebCore::targetReferenceFromResource):
(WebCore::SVGResources::buildCachedResources):
(WebCore::SVGResources::removeClientFromCache):
(WebCore::SVGResources::resourceDestroyed):
(WebCore::SVGResources::buildSetOfResources):
(WebCore::SVGResources::resetFilter):
(WebCore::SVGResources::dump):
* rendering/svg/SVGResources.h:
(WebCore::SVGResources::filter):
(WebCore::SVGResources::ClipperFilterMaskerData::ClipperFilterMaskerData):
* rendering/svg/SVGResourcesCycleSolver.cpp:
(WebCore::SVGResourcesCycleSolver::breakCycle):
* svg/SVGAnimatedEnumeration.cpp:
(WebCore::enumerationValueForTargetAttribute):
* svg/SVGComponentTransferFunctionElement.cpp:
* svg/SVGComponentTransferFunctionElement.h:
* svg/SVGComponentTransferFunctionElement.idl:
* svg/SVGFEBlendElement.cpp:
* svg/SVGFEBlendElement.h:
* svg/SVGFEBlendElement.idl:
* svg/SVGFEColorMatrixElement.cpp:
* svg/SVGFEColorMatrixElement.h:
* svg/SVGFEColorMatrixElement.idl:
* svg/SVGFEComponentTransferElement.cpp:
* svg/SVGFEComponentTransferElement.h:
* svg/SVGFEComponentTransferElement.idl:
* svg/SVGFECompositeElement.cpp:
* svg/SVGFECompositeElement.h:
* svg/SVGFECompositeElement.idl:
* svg/SVGFEConvolveMatrixElement.cpp:
* svg/SVGFEConvolveMatrixElement.h:
* svg/SVGFEConvolveMatrixElement.idl:
* svg/SVGFEDiffuseLightingElement.cpp:
* svg/SVGFEDiffuseLightingElement.h:
* svg/SVGFEDiffuseLightingElement.idl:
* svg/SVGFEDisplacementMapElement.cpp:
* svg/SVGFEDisplacementMapElement.h:
* svg/SVGFEDisplacementMapElement.idl:
* svg/SVGFEDistantLightElement.cpp:
* svg/SVGFEDistantLightElement.h:
* svg/SVGFEDistantLightElement.idl:
* svg/SVGFEDropShadowElement.cpp:
* svg/SVGFEDropShadowElement.h:
* svg/SVGFEDropShadowElement.idl:
* svg/SVGFEFloodElement.cpp:
* svg/SVGFEFloodElement.h:
* svg/SVGFEFloodElement.idl:
* svg/SVGFEFuncAElement.cpp:
* svg/SVGFEFuncAElement.h:
* svg/SVGFEFuncAElement.idl:
* svg/SVGFEFuncBElement.cpp:
* svg/SVGFEFuncBElement.h:
* svg/SVGFEFuncBElement.idl:
* svg/SVGFEFuncGElement.cpp:
* svg/SVGFEFuncGElement.h:
* svg/SVGFEFuncGElement.idl:
* svg/SVGFEFuncRElement.cpp:
* svg/SVGFEFuncRElement.h:
* svg/SVGFEFuncRElement.idl:
* svg/SVGFEGaussianBlurElement.cpp:
* svg/SVGFEGaussianBlurElement.h:
* svg/SVGFEGaussianBlurElement.idl:
* svg/SVGFEImageElement.cpp:
* svg/SVGFEImageElement.h:
* svg/SVGFEImageElement.idl:
* svg/SVGFELightElement.cpp:
* svg/SVGFELightElement.h:
* svg/SVGFEMergeElement.cpp:
* svg/SVGFEMergeElement.h:
* svg/SVGFEMergeElement.idl:
* svg/SVGFEMergeNodeElement.cpp:
* svg/SVGFEMergeNodeElement.h:
* svg/SVGFEMergeNodeElement.idl:
* svg/SVGFEMorphologyElement.cpp:
* svg/SVGFEMorphologyElement.h:
* svg/SVGFEMorphologyElement.idl:
* svg/SVGFEOffsetElement.cpp:
* svg/SVGFEOffsetElement.h:
* svg/SVGFEOffsetElement.idl:
* svg/SVGFEPointLightElement.cpp:
* svg/SVGFEPointLightElement.h:
* svg/SVGFEPointLightElement.idl:
* svg/SVGFESpecularLightingElement.cpp:
* svg/SVGFESpecularLightingElement.h:
* svg/SVGFESpecularLightingElement.idl:
* svg/SVGFESpotLightElement.cpp:
* svg/SVGFESpotLightElement.h:
* svg/SVGFESpotLightElement.idl:
* svg/SVGFETileElement.cpp:
* svg/SVGFETileElement.h:
* svg/SVGFETileElement.idl:
* svg/SVGFETurbulenceElement.cpp:
* svg/SVGFETurbulenceElement.h:
* svg/SVGFETurbulenceElement.idl:
* svg/SVGFilterElement.cpp:
* svg/SVGFilterElement.h:
* svg/SVGFilterElement.idl:
* svg/SVGFilterPrimitiveStandardAttributes.cpp:
* svg/SVGFilterPrimitiveStandardAttributes.h:
* svg/graphics/filters/SVGFEImage.cpp:
* svg/graphics/filters/SVGFEImage.h:
* svg/graphics/filters/SVGFilter.cpp:
* svg/graphics/filters/SVGFilter.h:
* svg/graphics/filters/SVGFilterBuilder.cpp:
* svg/graphics/filters/SVGFilterBuilder.h:
* svg/svgtags.in:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

* wtf/FeatureDefines.h:

Tools:

* Scripts/webkitperl/FeatureList.pm:

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.props:
* win/tools/vsprops/FeatureDefinesCairo.props:

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

5 years agoBuffer images on web process side
antti@apple.com [Mon, 8 Sep 2014 20:01:43 +0000 (20:01 +0000)]
Buffer images on web process side
https://bugs.webkit.org/show_bug.cgi?id=136631

Reviewed by Darin Adler.

We can substantially reduce IPC and decoding time for large images by allowing some buffering.

This patch makes us buffer image data up to 0.5s before sending it over to the web process.

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::NetworkResourceLoader):
(WebKit::NetworkResourceLoader::cleanup):
(WebKit::NetworkResourceLoader::didReceiveBuffer):

    Start the timer.

(WebKit::NetworkResourceLoader::didFinishLoading):
(WebKit::NetworkResourceLoader::startBufferingTimerIfNeeded):
(WebKit::NetworkResourceLoader::bufferingTimerFired):
(WebKit::NetworkResourceLoader::sendBuffer):

    Send the data when the timer fires or the load finishes, whichever happens first.

* NetworkProcess/NetworkResourceLoader.h:
* Platform/IPC/ArgumentCoders.h:

    Support encoding std::chrono::duration

* Shared/Network/NetworkResourceLoadParameters.cpp:
(WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
(WebKit::NetworkResourceLoadParameters::encode):
(WebKit::NetworkResourceLoadParameters::decode):
* Shared/Network/NetworkResourceLoadParameters.h:

    Pass maximimum buffering duration.

* WebProcess/Network/WebResourceLoadScheduler.cpp:
(WebKit::maximumBufferingTime):

    Deterimine duration from the resource type.
    Enabled full buffering for font resources. They are not decoded incrementally.

(WebKit::WebResourceLoadScheduler::scheduleLoad):

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

5 years agoHAVE(VOUCHERS) is not available outside of WebKit2
mitz@apple.com [Mon, 8 Sep 2014 18:59:15 +0000 (18:59 +0000)]
HAVE(VOUCHERS) is not available outside of WebKit2
https://bugs.webkit.org/show_bug.cgi?id=136637

Reviewed by Tim Horton.

Source/WebKit2:

* config.h: Moved the definition of HAVE_VOUCHERS from here to wtf’s Platform.h.

Source/WTF:

* wtf/Platform.h: Moved the definition of HAVE_VOUCHERS from WebKit2’s config.h here.

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

5 years agoUse enum class for the RunPostLayoutTasks enum
simon.fraser@apple.com [Mon, 8 Sep 2014 18:57:07 +0000 (18:57 +0000)]
Use enum class for the RunPostLayoutTasks enum
https://bugs.webkit.org/show_bug.cgi?id=136640

Reviewed by Dean Jackson.

Use enum class for RunPostLayoutTasks fixing callers. Add an explanatory comment,
and add some spacing.

* dom/Document.cpp:
(WebCore::Document::updateLayoutIgnorePendingStylesheets):
* dom/Document.h:
* html/HTMLAppletElement.cpp:
(WebCore::HTMLAppletElement::renderWidgetForJSBindings):
* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::renderWidgetForJSBindings):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::renderWidgetForJSBindings):
* testing/Internals.cpp:
(WebCore::Internals::updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks):

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

5 years ago[WinCairo] Compile error.
commit-queue@webkit.org [Mon, 8 Sep 2014 18:54:11 +0000 (18:54 +0000)]
[WinCairo] Compile error.
https://bugs.webkit.org/show_bug.cgi?id=136633

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-08
Reviewed by Darin Adler.

Enum name has already been defined.

* platform/audio/AudioHardwareListener.h:

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

5 years agoRemove some unused code in ImageSourceCG
timothy_horton@apple.com [Mon, 8 Sep 2014 18:32:12 +0000 (18:32 +0000)]
Remove some unused code in ImageSourceCG
https://bugs.webkit.org/show_bug.cgi?id=136638

Reviewed by Dan Bernstein.

* platform/graphics/cg/ImageSourceCG.cpp:
(WebCore::ImageSource::setData):
Remove this code. Firstly, it's in a USE(CG) && !PLATFORM(COCOA) && !PLATFORM(WIN)
block, and that's simply not a thing. Secondly, the referenced bug was fixed in Lion.

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

5 years agoMerge StructureShapes that share the same prototype chain
saambarati1@gmail.com [Mon, 8 Sep 2014 18:14:24 +0000 (18:14 +0000)]
Merge StructureShapes that share the same prototype chain
https://bugs.webkit.org/show_bug.cgi?id=136549

Reviewed by Filip Pizlo.

Instead of keeping track of many discrete StructureShapes that share
the same prototype chain, TypeSet should merge StructureShapes that
have the same prototype chain and provide a new member variable for
optional structure fields. This provides a cleaner and more concise
interface for dealing with StructureShapes within TypeSet. Instead
of having many discrete shapes that are almost identical, almost
identical shapes will be merged together with an interface for
understanding what fields the shapes being merged together differ in.

* runtime/TypeSet.cpp:
(JSC::TypeSet::addTypeInformation):
(JSC::StructureShape::addProperty):
(JSC::StructureShape::toJSONString):
(JSC::StructureShape::inspectorRepresentation):
(JSC::StructureShape::hasSamePrototypeChain):
(JSC::StructureShape::merge):
* runtime/TypeSet.h:
* tests/typeProfiler/optional-fields.js: Added.
(wrapper.func):
(wrapper):

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

5 years agoTry to fix the build after r173383, part 4.
timothy_horton@apple.com [Mon, 8 Sep 2014 18:04:05 +0000 (18:04 +0000)]
Try to fix the build after r173383, part 4.

* Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
Machine finally caught up so I could actually test the fixes!

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

5 years agoTry to fix the build after r173383, part 3.
timothy_horton@apple.com [Mon, 8 Sep 2014 17:53:47 +0000 (17:53 +0000)]
Try to fix the build after r173383, part 3.

* Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:

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

5 years agoTry to fix the build after r173383, part 2.
timothy_horton@apple.com [Mon, 8 Sep 2014 17:45:42 +0000 (17:45 +0000)]
Try to fix the build after r173383, part 2.

* wtf/OSObjectPtr.h:

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

5 years agoTry to fix the build after r173383.
timothy_horton@apple.com [Mon, 8 Sep 2014 17:37:42 +0000 (17:37 +0000)]
Try to fix the build after r173383.

* wtf/OSObjectPtr.h:

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

5 years agoMake OSObjectPtr a bit more like RefPtr
weinig@apple.com [Mon, 8 Sep 2014 17:26:37 +0000 (17:26 +0000)]
Make OSObjectPtr a bit more like RefPtr
https://bugs.webkit.org/show_bug.cgi?id=136613

Reviewed by Darin Adler.

Address some of Darin's feedback by:
- Making the adopting constructor private and friending adoptOSObject().
- Implementing the assignment operator using swap.
- Adding a move assignment operator.

* wtf/OSObjectPtr.h:
(WTF::OSObjectPtr::operator=):
(WTF::OSObjectPtr::swap):
(WTF::OSObjectPtr::OSObjectPtr):

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

5 years agoIntroduce CSS_RULE_TYPE_CASTS, and use it
gyuyoung.kim@samsung.com [Mon, 8 Sep 2014 17:10:01 +0000 (17:10 +0000)]
Introduce CSS_RULE_TYPE_CASTS, and use it
https://bugs.webkit.org/show_bug.cgi?id=136628

Reviewed by Darin Adler.

As a step to use toFoo, this patch introduces toCSSFooRule(). This will help to detect
wrong type cast. Additionally some missing type casts are clean up as well.

No new tests, no behavior changes.

* bindings/gobject/WebKitDOMPrivate.cpp:
(WebKit::wrap):
* css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::addFontFaceRule):
* css/CSSImportRule.h:
* css/CSSMediaRule.h:
* css/CSSParser.cpp:
(WebCore::CSSParser::parseGridTemplateRowsAndAreas):
* css/CSSRule.h:
* css/CSSStyleRule.h:
* css/CSSSupportsRule.h:
* css/InspectorCSSOMWrappers.cpp:
(WebCore::InspectorCSSOMWrappers::collect):
* css/WebKitCSSRegionRule.h:
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::asCSSStyleRule):
(WebCore::InspectorCSSAgent::collectStyleSheets):
* inspector/InspectorStyleSheet.cpp:
(WebCore::asCSSRuleList):
(WebCore::fillMediaListChain):
* page/PageSerializer.cpp:
(WebCore::PageSerializer::serializeCSSStyleSheet):

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

5 years agoDashboard metrics should ignore commits that didn't trigger builds
ap@apple.com [Mon, 8 Sep 2014 17:05:10 +0000 (17:05 +0000)]
Dashboard metrics should ignore commits that didn't trigger builds
https://bugs.webkit.org/show_bug.cgi?id=136618

Reviewed by Darin Adler.

Commits that didn't trigger builds are ones like ChangeLog updates, patches for
other platforms etc. It does not make sense to count wait time for these, as it
can be arbitrarily long.

The new algorithm is much slower asymptotically, but it's OK, computers are fast.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
(BuildbotIteration.prototype._parseData): Record changes that triggered the iteration.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsAnalyzer.js:
We used to walk the timeline to see which revisions are fully tested, but that's not
correct. A revision that's only tested by a subset of queues finishes independently
of another that's tested by another subset. Now, we just search for the answer for
each revision individually.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsView.js:
(MetricsView.prototype._update.appendQueueResults): Added worst revision number, which
the analyzer now reports. Removed best time, which is more confusing than meaningful.

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

5 years ago32-bit build fix after r173364.
jberlin@webkit.org [Mon, 8 Sep 2014 16:11:51 +0000 (16:11 +0000)]
32-bit build fix after r173364.

* Carbon/HIViewAdapter.m:
(+[HIViewAdapter bindHIViewToNSView:nsView:]):

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

5 years agoBuild fix.
mitz@apple.com [Mon, 8 Sep 2014 15:28:09 +0000 (15:28 +0000)]
Build fix.

Added back SPI that is still in use.

* Misc/WebNSURLExtras.h:
* Misc/WebNSURLExtras.mm:
(-[NSURL _webkit_URLByRemovingFragment]):

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

5 years agoSource/WebKit/mac:
mitz@apple.com [Mon, 8 Sep 2014 15:21:47 +0000 (15:21 +0000)]
Source/WebKit/mac:
iOS Simulator build fix.

* Misc/WebKitSystemBits.m:
(WebMemorySize):

Source/WebKit2:
Build fix.

* Platform/IPC/Connection.h:

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

5 years agoMore 32-bit Release build fixes after r173364.
jberlin@webkit.org [Mon, 8 Sep 2014 15:21:34 +0000 (15:21 +0000)]
More 32-bit Release build fixes after r173364.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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