WebKit-https.git
5 years agoSome MallocBench refinements
ggaren@apple.com [Thu, 11 Sep 2014 19:33:47 +0000 (19:33 +0000)]
Some MallocBench refinements
https://bugs.webkit.org/show_bug.cgi?id=136750

Reviewed by Sam Weinig.

* MallocBench/MallocBench/Interpreter.cpp:
(Interpreter::run): Allow for null entries in the object list so that
we can test in modes that exclude large or small allocations.

* MallocBench/MallocBench/churn.cpp:
(benchmark_churn):
* MallocBench/MallocBench/flickr.cpp:
(benchmark_flickr):
* MallocBench/MallocBench/fragment.cpp:
(benchmark_fragment_iterate):
* MallocBench/MallocBench/list.cpp:
(benchmark_list_allocate):
* MallocBench/MallocBench/reddit.cpp:
(benchmark_reddit): Updated test runtimes to weight them more equally,
for the sake of arithmetic mean.

* MallocBench/MallocBench/stress.cpp:
(Object::Object):
(allocate):
(deallocate):
(benchmark_stress): Verify the contents of memory as we go. Also,
force scavenging each time through the loop to test the scavenging path.

* MallocBench/MallocBench/theverge.cpp:
(benchmark_theverge):
* MallocBench/MallocBench/tree.cpp:
(benchmark_tree_churn): Re-weighted, as above.

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

5 years agoUse tighter typing for Document::ownerElement() return value
cdumez@apple.com [Thu, 11 Sep 2014 19:26:16 +0000 (19:26 +0000)]
Use tighter typing for Document::ownerElement() return value
https://bugs.webkit.org/show_bug.cgi?id=136746

Reviewed by Ryosuke Niwa.

Use tighter typing for Document::ownerElement() return value at call
sites to increase code readability a bit and allow the compiler to
generate slightly more efficient code in some cases. In particular,
the more efficient HTMLElement::hasTagName(HTMLQualifiedName) is
now called in several cases instead of the one on Node. This bypasses
unnecessary isHTMLElement() checks.

No new tests, no behavior change.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::alternativeTextForWebArea):
* dom/Document.cpp:
(WebCore::Document::updateLayout):
(WebCore::Document::topDocument):
* html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::insertedInto):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollRectToVisible):
* rendering/RenderView.cpp:
(WebCore::RenderView::paintBoxDecorations):

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

5 years agoCheck for varying packing restrictions per program instead of per shader.
roger_fong@apple.com [Thu, 11 Sep 2014 19:22:06 +0000 (19:22 +0000)]
Check for varying packing restrictions per program instead of per shader.
https://bugs.webkit.org/show_bug.cgi?id=136585.
<rdar://problem/16308409>.

Reviewed by Dean Jackson.

Covered by webgl/1.0.2/conformance/ogles/GL/build/build_009_to_016.html.

* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::linkProgram):
Check for varying packing restrictions when linking the program.

* platform/graphics/GraphicsContext3D.h:
* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::checkVaryingsPacking):
Checks varyings shared by both vertex and fragment shaders and makes sure
they satisfy packing restrictions.

Remove varying packing restrictions checks from ANGLE.
* src/compiler/translator/Compiler.cpp:
(TCompiler::compile):
(TCompiler::enforcePackingRestrictions):
* src/compiler/translator/ShHandle.h:

* platform/mac/TestExpectations:

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

5 years agoUnreviewed rebaseline of inspector generator test results after r173120.
joepeck@webkit.org [Thu, 11 Sep 2014 19:20:17 +0000 (19:20 +0000)]
Unreviewed rebaseline of inspector generator test results after r173120.

* inspector/scripts/tests/expected/commands-with-async-attribute.json-result:
* inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result:
* inspector/scripts/tests/expected/domains-with-varying-command-sizes.json-result:
* inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result:

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

5 years agoReviewed by Sam Weinig.
ggaren@apple.com [Thu, 11 Sep 2014 19:12:48 +0000 (19:12 +0000)]
Reviewed by Sam Weinig.

Renamed log => retire for clarity.

* bmalloc/Allocator.cpp:
(bmalloc::Allocator::scavenge):
(bmalloc::Allocator::retire):
(bmalloc::Allocator::allocateMedium):
(bmalloc::Allocator::allocateSlowCase):
(bmalloc::Allocator::log): Deleted.
* bmalloc/Allocator.h:

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

5 years agobmalloc: eager scavenge leaves behind a bogus allocator
ggaren@apple.com [Thu, 11 Sep 2014 19:05:38 +0000 (19:05 +0000)]
bmalloc: eager scavenge leaves behind a bogus allocator
https://bugs.webkit.org/show_bug.cgi?id=136743

Reviewed by Sam Weinig.

Be sure to clear the allocator after logging it in the eager scavenge
case, so that we don't later try to allocate out of the lines that we
have thrown away.

We didn't need to do this previously because scavenge would only happen
at thread exit time, after which no further allocation from the per-thread
cache would take place.

* bmalloc/Allocator.cpp:
(bmalloc::Allocator::scavenge):
* bmalloc/MediumAllocator.h:
(bmalloc::MediumAllocator::clear):
* bmalloc/SmallAllocator.h:
(bmalloc::SmallAllocator::clear):

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

5 years agoSupport rubber-banding in sub-frames
bdakin@apple.com [Thu, 11 Sep 2014 18:48:21 +0000 (18:48 +0000)]
Support rubber-banding in sub-frames
https://bugs.webkit.org/show_bug.cgi?id=136726
-and corresponding-
rdar://problem/10011924

Reviewed by Tim Horton.

Source/WebCore:

Set the appropriate scroll elasticity for all frames! As long as its enabled, sub-
frames want an elasticity of ScrollElasticityAutomatic, which will allow for
latching.
* page/FrameView.cpp:
(WebCore::FrameView::FrameView):

Account for rubber-banding in sub-frames.
(WebCore::FrameView::isScrollableOrRubberbandable):
(WebCore::FrameView::hasScrollableOrRubberbandableAncestor):

This patch also re-names rubberBandingForOverflowScrollEnabled to
rubberBandingForSubScrollableRegionsEnabled
* page/Settings.in:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::overhangAmount):
(WebCore::RenderLayer::setHasHorizontalScrollbar):
(WebCore::RenderLayer::setHasVerticalScrollbar):

Source/WebKit/mac:

rubberBandingForOverflowScrollEnabled is re-named to
rubberBandingForSubScrollableRegionsEnabled
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):

LayoutTests:

* platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-expected.txt:
* platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-with-handler-expected.txt:

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

5 years agoWeb Inspector: DOM Tree search highlights are not appearing
joepeck@webkit.org [Thu, 11 Sep 2014 18:35:36 +0000 (18:35 +0000)]
Web Inspector: DOM Tree search highlights are not appearing
https://bugs.webkit.org/show_bug.cgi?id=136662

Reviewed by Timothy Hatcher.

When performing a search within the DOMTreeContentView all
search results should immediately highlight. When moving
between search results, emphasize the current with a bouncy.
Remember to remove the highlights when the search is changed
or cleared.

* UserInterface/Views/DOMTreeContentView.js:
(WebInspector.DOMTreeContentView.prototype.performSearch.searchResultsReady):
(WebInspector.DOMTreeContentView.prototype.searchCleared):
Shor or hide highlights when searches change.

(WebInspector.DOMTreeContentView.prototype.revealResult):
(WebInspector.DOMTreeContentView.prototype._revealSearchResult):
Emphasize the highlight when moving to a new current result.

(WebInspector.DOMTreeContentView.prototype._showSearchHighlights):
(WebInspector.DOMTreeContentView.prototype._hideSearchHighlights):
On each affected DOMTreeElement show or hide search highlights.

* UserInterface/Views/DOMTreeElement.js:
(WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight.animationEnded):
(WebInspector.DOMTreeElement.prototype.emphasizeSearchHighlight):
Give a brief bouncy-highlight when told to emphasize the search highlight.

(WebInspector.DOMTreeElement.prototype.updateTitle):
Remove unused and unnecessary style class on each row.

(WebInspector.DOMTreeElement.prototype._highlightSearchResults):
Update the stale code to use new function names and accessors.

* UserInterface/Views/DOMTreeOutline.css:
(.dom-tree-outline .search-highlight):
Styles for the search highlight match search highlights in the sidebar.

* UserInterface/Views/Main.css:
(.bouncy-highlight):
* UserInterface/Views/TextEditor.css:
Move bouncy-highlight to Main.css.

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

5 years agoInitial implementation of SVG to OTF font converter
mmaxfield@apple.com [Thu, 11 Sep 2014 18:29:43 +0000 (18:29 +0000)]
Initial implementation of SVG to OTF font converter
https://bugs.webkit.org/show_bug.cgi?id=136688

Patch by Myles C. Maxfield <mmaxfield@apple.com> <litherum@gmail.com> on 2014-09-11
Reviewed by Darin Adler.

This patch creates a new file and new function which turns an SVG font into an OpenType font.
This function is not very full featured, and as such is never called. However, it works with
fonts that only support simple horizontal basic multilingual plane codepoints. It has only
been tested on OS X, and does not have any automated tests. This patch is only jumping off
point, laying the basic groundwork for a more robust font converter.

The goal of this patch is to eventually allow us to delete the codepath with which we draw
text using SVG fonts. Using a native codepath instead will allow for better performance,
security, and code clarity. In my initial benchmarks, using this converter instead of the
SVG codepath is at least a 100x speed improvement (after running for 4 hours I stepped
away from my machine).

No new tests because the function is not ready to be called (yet!)
Initial implementation of SVG to OTF font converter
https://bugs.webkit.org/show_bug.cgi?id=136688

* WebCore.xcodeproj/project.pbxproj: Add new file.
* svg/SVGPathBuilder.h: Single function. Takes a SVGFontElement and returns a byte
* svg/SVGToOTFFontConversion.cpp: Added.
(WebCore::write32): Write a big-endian Int32.
(WebCore::write16): Write a big-endian Int16.
(WebCore::overwrite32): Overwrite an existing Int32 in a vector (instead of appending)
(WebCore::SVGToOTFFontConverter::GlyphData::GlyphData): Internal class to hold state during
function calls.
(WebCore::roundDownToPowerOfTwo):
(WebCore::SVGToOTFFontConverter::appendCMAPTable): See function name.
(WebCore::SVGToOTFFontConverter::appendHEADTable): Ditto.
(WebCore::clampTo): Used to clamp data types to fit into other data types.
(WebCore::SVGToOTFFontConverter::appendHHEATable): See function name.
(WebCore::SVGToOTFFontConverter::appendHMTXTable): Ditto.
(WebCore::SVGToOTFFontConverter::appendMAXPTable): Ditto.
(WebCore::SVGToOTFFontConverter::appendNAMETable): Ditto.
(WebCore::SVGToOTFFontConverter::appendOS2Table): Ditto.
(WebCore::SVGToOTFFontConverter::appendPOSTTable): Ditto.
(WebCore::isValidStringForCFF): The CFF font format only allows strings with particular
characters in them.
(WebCore::appendCFFValidString): Append a string assuming it's valid to append.
(WebCore::SVGToOTFFontConverter::appendCFFTable): See function name.
(WebCore::SVGToOTFFontConverter::appendVORGTable): Ditto.
(WebCore::writeCFFEncodedNumber): CFF has this wacky encoding scheme for encoding and
decoding numbers.
(WebCore::CFFBuilder::CFFBuilder): Subclass of SVGPathBuilder, which is used for building
CFF CharStrings (which are glyph path representations).
(WebCore::CFFBuilder::updateForConstituentPoint): Invoked for every point in a path, does
things like updates glyph bounding box information.
(WebCore::CFFBuilder::boundingBox): Getter.
(WebCore::transcodeGlyphPaths): SVG path data string -> CFF CharString
(WebCore::SVGToOTFFontConverter::SVGToOTFFontConverter): Generate internal state ahead of
time before generating any tables.
(WebCore::isFourByteAligned):
(WebCore::calculateChecksum): OTF files have checksums.
(WebCore::SVGToOTFFontConverter::appendTable): Invoked for each entry in the table of
contents of the OTF font.
(WebCore::SVGToOTFFontConverter::convertSVGToOTFFont): Write out the tables.
(WebCore::convertSVGToOTFFont): Entry point.
* svg/SVGToOTFFontConversion.h: Added.

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

5 years ago[EME] REGRESSION(??): test media/encrypted-media/encrypted-media-v2-syntax.html is...
jer.noble@apple.com [Thu, 11 Sep 2014 18:24:17 +0000 (18:24 +0000)]
[EME] REGRESSION(??): test media/encrypted-media/encrypted-media-v2-syntax.html is failing
https://bugs.webkit.org/show_bug.cgi?id=136723

Source/WebCore:

Reviewed by Eric Carlson.

Update a comment to point to the implemented Working Draft 18 Feburary 2014 version of the spec.

* Modules/encryptedmedia/MediaKeys.cpp:
(WebCore::MediaKeys::createSession):

LayoutTests:

Update the test to match the implemented Working Draft 18 Feburary 2014 version of the spec.

Reviewed by Eric Carlson.

* media/encrypted-media/encrypted-media-v2-syntax-expected.txt:
* media/encrypted-media/encrypted-media-v2-syntax.html:

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

5 years agoUnreviewed gardening. Rebaseline tests and remove duplicate entry from TestExpectations.
jer.noble@apple.com [Thu, 11 Sep 2014 18:21:04 +0000 (18:21 +0000)]
Unreviewed gardening. Rebaseline tests and remove duplicate entry from TestExpectations.

* platform/mac/TestExpectations:
* platform/mac/media/video-controls-rendering-expected.txt:
* platform/mac/media/video-display-toggle-expected.txt:
* platform/mac/media/video-volume-slider-expected.txt:

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

5 years agoMore unreviewed gardening. Rebaseline media/encrypted-media/encrypted-media-can-play...
jer.noble@apple.com [Thu, 11 Sep 2014 18:21:02 +0000 (18:21 +0000)]
More unreviewed gardening. Rebaseline media/encrypted-media/encrypted-media-can-play-type.html

* platform/mac/media/encrypted-media/encrypted-media-can-play-type-expected.txt:

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

5 years agoRename activation to be more in line with spec language
oliver@apple.com [Thu, 11 Sep 2014 18:18:14 +0000 (18:18 +0000)]
Rename activation to be more in line with spec language
https://bugs.webkit.org/show_bug.cgi?id=136721

Reviewed by Michael Saboff.

Somewhat bigger than the last one, but still just a rename.

* CMakeLists.txt:
* JavaScriptCore.order:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/BytecodeList.json:
* bytecode/BytecodeUseDef.h:
(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):
* bytecode/CallVariant.h:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::isCaptured):
(JSC::CodeBlock::nameForRegister):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::setActivationRegister):
(JSC::CodeBlock::activationRegister):
(JSC::CodeBlock::uncheckedActivationRegister):
(JSC::CodeBlock::needsActivation):
* bytecode/Instruction.h:
* bytecode/UnlinkedCodeBlock.h:
(JSC::UnlinkedCodeBlock::setActivationRegister):
(JSC::UnlinkedCodeBlock::activationRegister):
(JSC::UnlinkedCodeBlock::hasActivationRegister):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitReturn):
* bytecompiler/BytecodeGenerator.h:
* debugger/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::scope):
* debugger/DebuggerScope.cpp:
(JSC::DebuggerScope::isFunctionOrEvalScope):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.cpp:
(JSC::DFG::capabilityLevel):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::tryGetActivation):
(JSC::DFG::Graph::tryGetRegisters):
* dfg/DFGGraph.h:
* dfg/DFGNodeType.h:
* dfg/DFGOperations.cpp:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* interpreter/CallFrame.cpp:
(JSC::CallFrame::lexicalEnvironment):
(JSC::CallFrame::setActivation):
(JSC::CallFrame::activation): Deleted.
* interpreter/CallFrame.h:
* interpreter/Interpreter.cpp:
(JSC::unwindCallFrame):
* interpreter/Register.h:
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
* jit/JIT.h:
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_tear_off_lexical_environment):
(JSC::JIT::emit_op_tear_off_arguments):
(JSC::JIT::emit_op_create_lexical_environment):
(JSC::JIT::emit_op_tear_off_activation): Deleted.
(JSC::JIT::emit_op_create_activation): Deleted.
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_tear_off_lexical_environment):
(JSC::JIT::emit_op_tear_off_arguments):
(JSC::JIT::emit_op_create_lexical_environment):
(JSC::JIT::emit_op_tear_off_activation): Deleted.
(JSC::JIT::emit_op_create_activation): Deleted.
* jit/JITOperations.cpp:
* jit/JITOperations.h:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* llint/LLIntSlowPaths.h:
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:
* runtime/Arguments.cpp:
(JSC::Arguments::visitChildren):
(JSC::Arguments::tearOff):
(JSC::Arguments::didTearOffActivation):
* runtime/Arguments.h:
(JSC::Arguments::offsetOfActivation):
(JSC::Arguments::argument):
(JSC::Arguments::finishCreation):
* runtime/CommonSlowPaths.cpp:
* runtime/JSFunction.h:
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::reset):
(JSC::JSGlobalObject::visitChildren):
* runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::activationStructure):
* runtime/JSLexicalEnvironment.cpp: Renamed from Source/JavaScriptCore/runtime/JSActivation.cpp.
(JSC::JSLexicalEnvironment::visitChildren):
(JSC::JSLexicalEnvironment::symbolTableGet):
(JSC::JSLexicalEnvironment::symbolTablePut):
(JSC::JSLexicalEnvironment::getOwnNonIndexPropertyNames):
(JSC::JSLexicalEnvironment::symbolTablePutWithAttributes):
(JSC::JSLexicalEnvironment::getOwnPropertySlot):
(JSC::JSLexicalEnvironment::put):
(JSC::JSLexicalEnvironment::deleteProperty):
(JSC::JSLexicalEnvironment::toThis):
(JSC::JSLexicalEnvironment::argumentsGetter):
* runtime/JSLexicalEnvironment.h: Renamed from Source/JavaScriptCore/runtime/JSActivation.h.
(JSC::JSLexicalEnvironment::create):
(JSC::JSLexicalEnvironment::createStructure):
(JSC::JSLexicalEnvironment::JSLexicalEnvironment):
(JSC::asActivation):
(JSC::Register::lexicalEnvironment):
(JSC::JSLexicalEnvironment::registersOffset):
(JSC::JSLexicalEnvironment::tearOff):
(JSC::JSLexicalEnvironment::isTornOff):
(JSC::JSLexicalEnvironment::storageOffset):
(JSC::JSLexicalEnvironment::storage):
(JSC::JSLexicalEnvironment::allocationSize):
(JSC::JSLexicalEnvironment::isValidIndex):
(JSC::JSLexicalEnvironment::isValid):
(JSC::JSLexicalEnvironment::registerAt):
* runtime/JSObject.h:
* runtime/JSScope.cpp:
(JSC::abstractAccess):
* runtime/JSScope.h:
(JSC::ResolveOp::ResolveOp):
* runtime/JSSymbolTableObject.cpp:
* runtime/StrictEvalActivation.h:
(JSC::StrictEvalActivation::create):
* runtime/VM.cpp:

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

5 years ago[WK2] Authentication dialog is displayed for cross-origin XHR
commit-queue@webkit.org [Thu, 11 Sep 2014 17:20:18 +0000 (17:20 +0000)]
[WK2] Authentication dialog is displayed for cross-origin XHR
https://bugs.webkit.org/show_bug.cgi?id=131349

Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-09-11
Reviewed by Alexey Proskuryakov.

Source/WebCore:

* WebCore.exp.in: Export of isAllowedToAskUserForCredentials.
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::isAllowedToAskUserForCredentials): Replacing clientCredentialPolicy method. Returns true if credentials can be requested to the user.
(WebCore::ResourceLoader::didReceiveAuthenticationChallenge): Updated to use isAllowedToAskUserForCredentials.
* loader/ResourceLoader.h: Removing clientCredentialPolicy method and adding isAllowedToAskUserForCredentials method.

Source/WebKit2:

Precomputing client credential policy in the Web Process before sending the resource load task to the Network Process.

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge): Added an ASSERT to ensure that credential policy is never set to DoNotAskClientForCrossOriginCredentials.
* WebProcess/Network/WebResourceLoadScheduler.cpp:
(WebKit::WebResourceLoadScheduler::scheduleLoad): Precomputing client credential policy to handle the case of cross-origin requests.
* WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::willSendRequest): Added a TODO to check whether redirections need a specific handling.

LayoutTests:

* platform/mac-wk2/TestExpectations: Unskipped tests.

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

5 years agoAX: Children inside a <legend> are not accessible
cfleizach@apple.com [Thu, 11 Sep 2014 16:13:23 +0000 (16:13 +0000)]
AX: Children inside a <legend> are not accessible
https://bugs.webkit.org/show_bug.cgi?id=136735

Reviewed by Mario Sanchez Prada.

Source/WebCore:

The AX children of a <legend> are being hidden currently, which makes it impossible for
VoiceOver to activate control elements inside of a <legend>.
The solution is that legend elements SHOULD be allowed to have children.

Test: accessibility/legend-children-are-visible.html

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

LayoutTests:

* accessibility/legend-children-are-visible-expected.txt: Added.
* accessibility/legend-children-are-visible.html: Added.

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

5 years agoBlink merge: Speculative fix for windows run-webkit-tests hangs
bfulgham@apple.com [Thu, 11 Sep 2014 16:12:02 +0000 (16:12 +0000)]
Blink merge: Speculative fix for windows run-webkit-tests hangs
https://bugs.webkit.org/show_bug.cgi?id=136727

Reviewed by Csaba Osztrogon√°c.

Merged from Blink (patch by Dirk Pranke):
<https://chromium.googlesource.com/chromium/blink/+/0cdd98d44a20c3951562ccf8b08b1fefba8dac67%5E%21/#F0>

* Scripts/webkitpy/common/system/executive.py:
(Executive.kill_process):

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

5 years agoFix FIXME's in JSTrackCustom now that AudioTrack and VideoTrack exist.
b.long@cablelabs.com [Thu, 11 Sep 2014 15:03:42 +0000 (15:03 +0000)]
Fix FIXME's in JSTrackCustom now that AudioTrack and VideoTrack exist.
https://bugs.webkit.org/show_bug.cgi?id=136552

Reviewed by Eric Carlson.

* bindings/js/JSTrackCustom.cpp:
(WebCore::toTrack): Add casts for AudioTrack and VideoTrack.

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

5 years ago[GTK] Layout Test http/tests/media/hls/video-controls-live-stream.html is flaky
philn@webkit.org [Thu, 11 Sep 2014 12:20:51 +0000 (12:20 +0000)]
[GTK] Layout Test http/tests/media/hls/video-controls-live-stream.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=134575

Unreviewed, marked the test as slow.

* platform/gtk/TestExpectations:

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

5 years agoAdded myself as a committer.
evab.u-szeged@partner.samsung.com [Thu, 11 Sep 2014 11:24:13 +0000 (11:24 +0000)]
Added myself as a committer.

Unreviewed.

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

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

5 years ago[GTK] Merge WebKitAuthenticationWidget into WebKitAuthenticationDialog
carlosgc@webkit.org [Thu, 11 Sep 2014 08:59:45 +0000 (08:59 +0000)]
[GTK] Merge WebKitAuthenticationWidget into WebKitAuthenticationDialog
https://bugs.webkit.org/show_bug.cgi?id=136700

Reviewed by Sergio Villar Senin.

Source/WebCore:

Remove WebKitAuthenticationWidget. The only reason why we had this
widget separated in WebCore was to share it between WebKit1 and
WebKit2, but now it's only used by WebKitAuthenticationDialog in WebKit2.

* PlatformGTK.cmake: Remove files from compilation.
* platform/gtk/WebKitAuthenticationWidget.cpp: Removed.
* platform/gtk/WebKitAuthenticationWidget.h: Removed.

Source/WebCore/platform/gtk/po:

* POTFILES.in: Remove WebKitAuthenticationWidget.cpp and add WebKitAuthenticationDialog.cpp.

Source/WebKit2:

Copy WebKitAuthenticationWidget implementation inside
WebKitAuthenticationDialog using a normal GtkBox instead.

* UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
(okButtonClicked):
(cancelButtonClicked):
(packTwoColumnLayoutInBox):
(createLabel):
(createEntry):
(webkitAuthenticationDialogInitialize): Remove the
CredentialStorageMode parameter since it's now a member.
(webkitAuthenticationDialogNew): Initialize the
CredentialStorageMode member too.
* UIProcess/API/gtk/WebKitAuthenticationDialog.h:

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

5 years ago[JavaScriptCore] Fix FTL on platform EFL.
llango.u-szeged@partner.samsung.com [Thu, 11 Sep 2014 08:52:22 +0000 (08:52 +0000)]
[JavaScriptCore] Fix FTL on platform EFL.
https://bugs.webkit.org/show_bug.cgi?id=133571

Reviewed by Filip Pizlo.

.:

Revert r169181.

* Source/cmake/FindLIBCXXABI.cmake: Removed.
* Source/cmake/OptionsEfl.cmake:

Source/JavaScriptCore:

There are no compact_unwind sections on Linux systems so FTL crashes.
We have to parse eh_frame in FTLUnwindInfo instead of compact_unwind
and get the information for stack unwinding from there.

* CMakeLists.txt: Revert r169181.
* ftl/FTLCompile.cpp:
Change section name literals to use SECTION_NAME macro, because of architecture differencies.
(JSC::FTL::mmAllocateCodeSection):
(JSC::FTL::mmAllocateDataSection):
(JSC::FTL::compile):
* ftl/FTLJITCode.h:
We need the SECTION_NAME macro in FTLCompile and FTLLink, so we define it here.
* ftl/FTLLink.cpp:
(JSC::FTL::link):
* ftl/FTLState.h:
* ftl/FTLState.cpp:
(JSC::FTL::State::State):
* ftl/FTLUnwindInfo.h:
* ftl/FTLUnwindInfo.cpp:
Lift the eh_frame parsing method from LLVM/libcxxabi project and modify it for our purposes.
Parse eh_frame on Linux instead of compact_unwind.
(JSC::FTL::UnwindInfo::parse):

Tools:

* efl/install-dependencies: Revert r169181.
* efl/jhbuild.modules: Clone and build a custom branch.
This branch contains some fix for FTL of platform EFL.
The branch is a fork of llvm r206311.

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

5 years ago[EFL][WK2] Minibrowser : Shift+Scroll navigate to back or forward url's
commit-queue@webkit.org [Thu, 11 Sep 2014 06:41:06 +0000 (06:41 +0000)]
[EFL][WK2] Minibrowser : Shift+Scroll navigate to back or forward url's
https://bugs.webkit.org/show_bug.cgi?id=136698

Patch by Tanay C <tanay.c@samsung.com> on 2014-09-10
Reviewed by Gyuyoung Kim.

* MiniBrowser/efl/main.c: Add functionality to support shift + mouse scroll navigation
(on_mouse_wheel): Added.
(window_free):
(window_create):

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

5 years agoUse ASSERT instead of ASSERT_WITH_SECURITY_IMPLICATION
gyuyoung.kim@samsung.com [Thu, 11 Sep 2014 04:42:38 +0000 (04:42 +0000)]
Use ASSERT instead of ASSERT_WITH_SECURITY_IMPLICATION
https://bugs.webkit.org/show_bug.cgi?id=136732

Reviewed by Andy Estes.

Since r173458 changed to use static_cast<> with toFoo, ASSERT_WITH_SECURITY_IMPLICATION doesn't
need to be used anymore. ASSERT is enough for it.

* workers/DefaultSharedWorkerRepository.cpp:
(WebCore::SharedWorkerProxy::addToWorkerDocuments):
* workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::startWorkerGlobalScope):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::document):

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

5 years ago[SVG] Cleanup iterator code in SMILTimeContainer using range-based loop
cavalcantii@gmail.com [Thu, 11 Sep 2014 04:01:53 +0000 (04:01 +0000)]
[SVG] Cleanup iterator code in SMILTimeContainer using range-based loop
https://bugs.webkit.org/show_bug.cgi?id=136720

Reviewed by Filip Pizlo.

No new tests, no change on behavior.

* svg/animation/SMILTimeContainer.cpp:
(WebCore::SMILTimeContainer::setElapsed):
(WebCore::SMILTimeContainer::updateAnimations):

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

5 years agoWeb Inspector: Modify the type profiler runtime protocol to transfer some computation...
saambarati1@gmail.com [Thu, 11 Sep 2014 02:37:57 +0000 (02:37 +0000)]
Web Inspector: Modify the type profiler runtime protocol to transfer some computation into the WebInspector
https://bugs.webkit.org/show_bug.cgi?id=136500

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

This patch changes the type profiler protocol to the Web Inspector
by moving the work of calculating computed properties that effect the UI
into the Web Inspector. This makes the Web Inspector have control over the
strings it displays as UI elements representing type information to the user
instead of JavaScriptCore deciding on a convention for these strings.
JavaScriptCore now sends enough information to the Web Inspector so that
it can compute the properties JavaScriptCore used to compute.

* inspector/agents/InspectorRuntimeAgent.cpp:
(Inspector::InspectorRuntimeAgent::getRuntimeTypesForVariablesAtOffsets):
* inspector/protocol/Runtime.json:
* runtime/TypeProfiler.cpp:
(JSC::TypeProfiler::getTypesForVariableAtOffsetForInspector): Deleted.
* runtime/TypeProfiler.h:
* runtime/TypeSet.cpp:
(JSC::TypeSet::inspectorTypeSet):
(JSC::StructureShape::leastCommonAncestor):
(JSC::StructureShape::inspectorRepresentation):
* runtime/TypeSet.h:

Source/WebInspectorUI:

This patch maintains the same UI in the Web Inspector for displaying
type information, but now accounts for the new protocol for type profiling.

The Inspector now has a TypeSet class that wraps the TypeDescription
protocol object and creates a simple interface for asking protocol objects
about their type.

* UserInterface/Controllers/TypeTokenAnnotator.js:
(WebInspector.TypeTokenAnnotator.prototype._insertTypeTokensForEachNode):
* UserInterface/Main.html:
* UserInterface/Models/TypeSet.js: Added.
(WebInspector.TypeSet):
(WebInspector.TypeSet.fromPayload):
(WebInspector.TypeSet.prototype.isContainedIn):
* UserInterface/Views/SourceCodeTextEditor.js:
(WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation.handler):
(WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation):
* UserInterface/Views/TypePropertiesSection.js:
(WebInspector.TypePropertiesSection.prototype.onpopulate):
(WebInspector.TypePropertyTreeElement.prototype.onpopulate):
* UserInterface/Views/TypeTokenView.js:
(WebInspector.TypeTokenView.prototype.update):
(WebInspector.TypeTokenView.prototype._shouldShowPopover):
(WebInspector.TypeTokenView.prototype._displayTypeName):

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

5 years agoFix the build.
timothy_horton@apple.com [Thu, 11 Sep 2014 01:47:23 +0000 (01:47 +0000)]
Fix the build.

* platform/network/ResourceHandle.h:
* platform/network/mac/ResourceHandleMac.mm:

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

5 years ago[EFL][WK2] Minibrowser : Add tooltip for toolbar buttons in Minibrowser
commit-queue@webkit.org [Thu, 11 Sep 2014 01:25:46 +0000 (01:25 +0000)]
[EFL][WK2] Minibrowser : Add tooltip for toolbar buttons in Minibrowser
https://bugs.webkit.org/show_bug.cgi?id=136284

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

* MiniBrowser/efl/main.c:
(window_create):

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

5 years agoDelete class SavedDrawingStateForMask
mmaxfield@apple.com [Thu, 11 Sep 2014 00:50:09 +0000 (00:50 +0000)]
Delete class SavedDrawingStateForMask
https://bugs.webkit.org/show_bug.cgi?id=136498

Patch by Myles C. Maxfield <mmaxfield@apple.com> <litherum@gmail.com> on 2014-09-09
Reviewed by Darin Adler.

This class is left over from when text-decoration-skip: ink used
GraphicsContext masking.

No new tests because there is no behavior change.

* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::applyShadowToGraphicsContext):
* rendering/InlineTextBox.h:
* rendering/TextPainter.cpp:
(WebCore::TextPainter::TextPainter):
(WebCore::paintTextWithShadows):
(WebCore::TextPainter::paintText):
* rendering/TextPainter.h:
(WebCore::SavedDrawingStateForMask::SavedDrawingStateForMask): Deleted.
* rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paintTextWithShadows):

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

5 years agoCall setCollectsTimingData only once, and before making any {CF,NS}URLConnections
timothy_horton@apple.com [Thu, 11 Sep 2014 00:47:26 +0000 (00:47 +0000)]
Call setCollectsTimingData only once, and before making any {CF,NS}URLConnections
https://bugs.webkit.org/show_bug.cgi?id=136731
<rdar://problem/18252844>

Reviewed by Simon Fraser.

* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::start):
Move setCollectsTimingData to before createCFURLConnection, so the first connection
has timing data associated with it.

* platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::createNSURLConnection):
Move setCollectsTimingData to before we create our NSURLConnection, so the first connection
has timing data associated with it.
Use setCollectsTimingData instead of the NSURLConnection SPI directly.

(WebCore::ResourceHandle::setCollectsTimingData):
Only call _setCollectsTimingData once.

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

5 years agoUnreviewed gardening. Rebaseline failing media/video- tests broken by r156546.
jer.noble@apple.com [Thu, 11 Sep 2014 00:38:53 +0000 (00:38 +0000)]
Unreviewed gardening. Rebaseline failing media/video- tests broken by r156546.

* platform/mac/TestExpectations:
* platform/mac/media/video-controls-captions-trackmenu-localized-expected.txt:
* platform/mac/media/video-controls-captions-trackmenu-only-captions-descriptions-and-subtitles-expected.txt: Added.
* platform/mac/media/video-controls-captions-trackmenu-sorted-expected.txt:
* platform/mac/media/video-controls-no-scripting-expected.txt: Added.
* platform/mac/media/video-controls-rendering-expected.png:
* platform/mac/media/video-controls-rendering-expected.txt:
* platform/mac/media/video-display-toggle-expected.png:
* platform/mac/media/video-display-toggle-expected.txt:
* platform/mac/media/video-empty-source-expected.png:
* platform/mac/media/video-empty-source-expected.txt:
* platform/mac/media/video-volume-slider-expected.png:
* platform/mac/media/video-volume-slider-expected.txt:
* platform/mac/media/volume-bar-empty-when-muted-expected.txt: Added.

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

5 years agoRemove iOS-only -webkit-composition-fill-color CSS property.
enrica@apple.com [Thu, 11 Sep 2014 00:25:39 +0000 (00:25 +0000)]
Remove iOS-only -webkit-composition-fill-color CSS property.
https://bugs.webkit.org/show_bug.cgi?id=136728
rdar://problem/10439154

Reviewed by Tim Horton.

This property is no longer used on iOS.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/CSSPropertyNames.in:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):
* editing/EditingStyle.cpp:
* platform/graphics/Color.h:
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paintCompositionBackground):
* rendering/style/RenderStyle.h:
* rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):
* rendering/style/StyleRareInheritedData.h:

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

5 years agoimport-w3c-tests doesn't handle relative paths to support files in ref files correctly
commit-queue@webkit.org [Thu, 11 Sep 2014 00:01:47 +0000 (00:01 +0000)]
import-w3c-tests doesn't handle relative paths to support files in ref files correctly
https://bugs.webkit.org/show_bug.cgi?id=135929

Patch by Rebecca Hauck <rhauck@adobe.com> on 2014-09-10
Reviewed by Bem Jones-Bey.

The recent refactor of the W3C test repo falsified a bunch of assmumptions that
were made when this script was originally written with respect to relative paths
in ref files. This patch updates import-w3c-tests to update paths in ref files if
they move relative to the test file.

* Scripts/webkitpy/w3c/test_converter.py:
(convert_for_webkit):
(_W3CTestConverter.__init__):
(_W3CTestConverter.convert_reference_relpaths):
(_W3CTestConverter.convert_style_data):
(_W3CTestConverter.convert_attributes_if_needed):
* Scripts/webkitpy/w3c/test_importer.py:
(TestImporter.find_importable_tests):
(TestImporter.import_tests):
* Scripts/webkitpy/w3c/test_parser.py:
(TestParser.load_file):
(TestParser.analyze_test):
(TestParser.support_files):

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

5 years agoApply ARM64-specific lowering to load/store instructions in offlineasm
commit-queue@webkit.org [Wed, 10 Sep 2014 23:57:34 +0000 (23:57 +0000)]
Apply ARM64-specific lowering to load/store instructions in offlineasm
https://bugs.webkit.org/show_bug.cgi?id=136569

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-09-10
Reviewed by Michael Saboff.

The standard risc lowering of load/store instructions with base +
immediate offset addresses is to move the offset to a temporary, add the
base to the temporary, and then change the load/store to use the
temporary + 0 immediate offset address. However, on ARM64, base +
register offset addressing mode is available, so it is unnecessary to
perform explicit register additions but it is enough to change load/store
to use base + temporary as the address.

* offlineasm/arm64.rb: Added arm64LowerMalformedLoadStoreAddresses

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

5 years agoMore unreviewed gardening.
jer.noble@apple.com [Wed, 10 Sep 2014 23:48:10 +0000 (23:48 +0000)]
More unreviewed gardening.

- Mark tests as WontFix which depend on platform support which will never be added.
- Fix http/tests/media/video-auth.html by marking it as failing on MountainLion.

* platform/mac/TestExpectations:

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

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