WebKit-https.git
8 years agoInvalid cast in WebCore::toElement / WebCore::HTMLElementStack::ElementRecord::element
abarth@webkit.org [Tue, 21 Feb 2012 07:32:52 +0000 (07:32 +0000)]
Invalid cast in WebCore::toElement / WebCore::HTMLElementStack::ElementRecord::element
https://bugs.webkit.org/show_bug.cgi?id=78975

Reviewed by Eric Seidel.

Source/WebCore:

We're supposed to set the action attribute on the form element we just
created.  Previously, we assumed the newly created form element would
be on the top of the stack of open elements, but if we're in the table
body insertion mode, the form element gets treated as self closing and
is therefore popped off the stack of open elements.

Fortunately, we already cache a pointer to the most recently inserted
form element on the HTMLConstructionSite, so we can just grab the
element from there.

Test: html5lib/runner.html

* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody):
(WebCore):

LayoutTests:

* html5lib/resourcesl/webkit-02.dat:

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

8 years agoUnite TextTrack-related files with their friends in WebCore/html/track
abarth@webkit.org [Tue, 21 Feb 2012 07:07:21 +0000 (07:07 +0000)]
Unite TextTrack-related files with their friends in WebCore/html/track
https://bugs.webkit.org/show_bug.cgi?id=78941

Reviewed by Eric Seidel.

The code that supports <track> seems to be split between the
WebCore/html directory and the WebCore/html/track directory.  This
patch unites this code in the WebCore/html/track directory.

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* html/LoadableTextTrack.cpp: Removed.
* html/LoadableTextTrack.h: Removed.
* html/TextTrack.cpp: Removed.
* html/TextTrack.h: Removed.
* html/TextTrack.idl: Removed.
* html/TextTrackCue.cpp: Removed.
* html/TextTrackCue.h: Removed.
* html/TextTrackCue.idl: Removed.
* html/TextTrackCueList.cpp: Removed.
* html/TextTrackCueList.h: Removed.
* html/TextTrackCueList.idl: Removed.
* html/track/LoadableTextTrack.cpp: Copied from Source/WebCore/html/LoadableTextTrack.cpp.
* html/track/LoadableTextTrack.h: Copied from Source/WebCore/html/LoadableTextTrack.h.
* html/track/TextTrack.cpp: Copied from Source/WebCore/html/TextTrack.cpp.
* html/track/TextTrack.h: Copied from Source/WebCore/html/TextTrack.h.
* html/track/TextTrack.idl: Copied from Source/WebCore/html/TextTrack.idl.
* html/track/TextTrackCue.cpp: Copied from Source/WebCore/html/TextTrackCue.cpp.
* html/track/TextTrackCue.h: Copied from Source/WebCore/html/TextTrackCue.h.
* html/track/TextTrackCue.idl: Copied from Source/WebCore/html/TextTrackCue.idl.
* html/track/TextTrackCueList.cpp: Copied from Source/WebCore/html/TextTrackCueList.cpp.
* html/track/TextTrackCueList.h: Copied from Source/WebCore/html/TextTrackCueList.h.
* html/track/TextTrackCueList.idl: Copied from Source/WebCore/html/TextTrackCueList.idl.

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

8 years agoJSC should be a triple-tier VM
fpizlo@apple.com [Tue, 21 Feb 2012 06:49:37 +0000 (06:49 +0000)]
JSC should be a triple-tier VM
https://bugs.webkit.org/show_bug.cgi?id=75812
<rdar://problem/10079694>

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

Implemented an interpreter that uses the JIT's calling convention. This
interpreter is called LLInt, or the Low Level Interpreter. JSC will now
will start by executing code in LLInt and will only tier up to the old
JIT after the code is proven hot.

LLInt is written in a modified form of our macro assembly. This new macro
assembly is compiled by an offline assembler (see offlineasm), which
implements many modern conveniences such as a Turing-complete CPS-based
macro language and direct access to relevant C++ type information
(basically offsets of fields and sizes of structs/classes).

Code executing in LLInt appears to the rest of the JSC world "as if" it
were executing in the old JIT. Hence, things like exception handling and
cross-execution-engine calls just work and require pretty much no
additional overhead.

This interpreter is 2-2.5x faster than our old interpreter on SunSpider,
V8, and Kraken. With triple-tiering turned on, we're neutral on SunSpider,
V8, and Kraken, but appear to get a double-digit improvement on real-world
websites due to a huge reduction in the amount of JIT'ing.

* CMakeLists.txt:
* GNUmakefile.am:
* GNUmakefile.list.am:
* JavaScriptCore.pri:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreCommon.vsprops:
* JavaScriptCore.vcproj/JavaScriptCore/copy-files.cmd:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* assembler/LinkBuffer.h:
* assembler/MacroAssemblerCodeRef.h:
(MacroAssemblerCodePtr):
(JSC::MacroAssemblerCodePtr::createFromExecutableAddress):
* bytecode/BytecodeConventions.h: Added.
* bytecode/CallLinkStatus.cpp:
(JSC::CallLinkStatus::computeFromLLInt):
(JSC):
(JSC::CallLinkStatus::computeFor):
* bytecode/CallLinkStatus.h:
(JSC::CallLinkStatus::isSet):
(JSC::CallLinkStatus::operator!):
(CallLinkStatus):
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dump):
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::~CodeBlock):
(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::stronglyVisitStrongReferences):
(JSC):
(JSC::CodeBlock::unlinkCalls):
(JSC::CodeBlock::unlinkIncomingCalls):
(JSC::CodeBlock::bytecodeOffset):
(JSC::ProgramCodeBlock::jettison):
(JSC::EvalCodeBlock::jettison):
(JSC::FunctionCodeBlock::jettison):
(JSC::ProgramCodeBlock::jitCompileImpl):
(JSC::EvalCodeBlock::jitCompileImpl):
(JSC::FunctionCodeBlock::jitCompileImpl):
* bytecode/CodeBlock.h:
(JSC):
(CodeBlock):
(JSC::CodeBlock::baselineVersion):
(JSC::CodeBlock::linkIncomingCall):
(JSC::CodeBlock::bytecodeOffset):
(JSC::CodeBlock::jitCompile):
(JSC::CodeBlock::hasOptimizedReplacement):
(JSC::CodeBlock::addPropertyAccessInstruction):
(JSC::CodeBlock::addGlobalResolveInstruction):
(JSC::CodeBlock::addLLIntCallLinkInfo):
(JSC::CodeBlock::addGlobalResolveInfo):
(JSC::CodeBlock::numberOfMethodCallLinkInfos):
(JSC::CodeBlock::valueProfilePredictionForBytecodeOffset):
(JSC::CodeBlock::likelyToTakeSlowCase):
(JSC::CodeBlock::couldTakeSlowCase):
(JSC::CodeBlock::likelyToTakeSpecialFastCase):
(JSC::CodeBlock::likelyToTakeDeepestSlowCase):
(JSC::CodeBlock::likelyToTakeAnySlowCase):
(JSC::CodeBlock::addFrequentExitSite):
(JSC::CodeBlock::dontJITAnytimeSoon):
(JSC::CodeBlock::jitAfterWarmUp):
(JSC::CodeBlock::jitSoon):
(JSC::CodeBlock::llintExecuteCounter):
(ProgramCodeBlock):
(EvalCodeBlock):
(FunctionCodeBlock):
* bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeFromLLInt):
(JSC):
(JSC::GetByIdStatus::computeFor):
* bytecode/GetByIdStatus.h:
(JSC::GetByIdStatus::GetByIdStatus):
(JSC::GetByIdStatus::wasSeenInJIT):
(GetByIdStatus):
* bytecode/Instruction.h:
(JSC):
(JSC::Instruction::Instruction):
(Instruction):
* bytecode/LLIntCallLinkInfo.h: Added.
(JSC):
(JSC::LLIntCallLinkInfo::LLIntCallLinkInfo):
(LLIntCallLinkInfo):
(JSC::LLIntCallLinkInfo::~LLIntCallLinkInfo):
(JSC::LLIntCallLinkInfo::isLinked):
(JSC::LLIntCallLinkInfo::unlink):
* bytecode/MethodCallLinkStatus.cpp:
(JSC::MethodCallLinkStatus::computeFor):
* bytecode/Opcode.cpp:
(JSC):
* bytecode/Opcode.h:
(JSC):
(JSC::padOpcodeName):
* bytecode/PutByIdStatus.cpp:
(JSC::PutByIdStatus::computeFromLLInt):
(JSC):
(JSC::PutByIdStatus::computeFor):
* bytecode/PutByIdStatus.h:
(PutByIdStatus):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitResolve):
(JSC::BytecodeGenerator::emitResolveWithBase):
(JSC::BytecodeGenerator::emitGetById):
(JSC::BytecodeGenerator::emitPutById):
(JSC::BytecodeGenerator::emitDirectPutById):
(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitConstruct):
(JSC::BytecodeGenerator::emitCatch):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::getPredictionWithoutOSRExit):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.h:
(JSC::DFG::canCompileOpcode):
* dfg/DFGOSRExitCompiler.cpp:
* dfg/DFGOperations.cpp:
* heap/Heap.h:
(JSC):
(JSC::Heap::firstAllocatorWithoutDestructors):
(Heap):
* heap/MarkStack.cpp:
(JSC::visitChildren):
* heap/MarkedAllocator.h:
(JSC):
(MarkedAllocator):
* heap/MarkedSpace.h:
(JSC):
(MarkedSpace):
(JSC::MarkedSpace::firstAllocator):
* interpreter/CallFrame.cpp:
(JSC):
(JSC::CallFrame::bytecodeOffsetForNonDFGCode):
(JSC::CallFrame::setBytecodeOffsetForNonDFGCode):
(JSC::CallFrame::currentVPC):
(JSC::CallFrame::setCurrentVPC):
(JSC::CallFrame::trueCallerFrame):
* interpreter/CallFrame.h:
(JSC::ExecState::hasReturnPC):
(JSC::ExecState::clearReturnPC):
(ExecState):
(JSC::ExecState::bytecodeOffsetForNonDFGCode):
(JSC::ExecState::currentVPC):
(JSC::ExecState::setCurrentVPC):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::Interpreter):
(JSC::Interpreter::~Interpreter):
(JSC):
(JSC::Interpreter::initialize):
(JSC::Interpreter::isOpcode):
(JSC::Interpreter::unwindCallFrame):
(JSC::getCallerInfo):
(JSC::Interpreter::privateExecute):
(JSC::Interpreter::retrieveLastCaller):
* interpreter/Interpreter.h:
(JSC):
(Interpreter):
(JSC::Interpreter::getOpcode):
(JSC::Interpreter::getOpcodeID):
(JSC::Interpreter::classicEnabled):
* interpreter/RegisterFile.h:
(JSC):
(RegisterFile):
* jit/ExecutableAllocator.h:
(JSC):
* jit/HostCallReturnValue.cpp: Added.
(JSC):
(JSC::getHostCallReturnValueWithExecState):
* jit/HostCallReturnValue.h: Added.
(JSC):
(JSC::initializeHostCallReturnValue):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):
(JSC::JIT::privateCompile):
* jit/JITCode.h:
(JSC::JITCode::isOptimizingJIT):
(JITCode):
(JSC::JITCode::isBaselineCode):
(JSC::JITCode::JITCode):
* jit/JITDriver.h:
(JSC::jitCompileIfAppropriate):
(JSC::jitCompileFunctionIfAppropriate):
* jit/JITExceptions.cpp:
(JSC::jitThrow):
* jit/JITInlineMethods.h:
(JSC::JIT::updateTopCallFrame):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
(JSC):
* jit/JITStubs.h:
(JSC):
* jit/JSInterfaceJIT.h:
* llint: Added.
* llint/LLIntCommon.h: Added.
* llint/LLIntData.cpp: Added.
(LLInt):
(JSC::LLInt::Data::Data):
(JSC::LLInt::Data::performAssertions):
(JSC::LLInt::Data::~Data):
* llint/LLIntData.h: Added.
(JSC):
(LLInt):
(Data):
(JSC::LLInt::Data::exceptionInstructions):
(JSC::LLInt::Data::opcodeMap):
(JSC::LLInt::Data::performAssertions):
* llint/LLIntEntrypoints.cpp: Added.
(LLInt):
(JSC::LLInt::getFunctionEntrypoint):
(JSC::LLInt::getEvalEntrypoint):
(JSC::LLInt::getProgramEntrypoint):
* llint/LLIntEntrypoints.h: Added.
(JSC):
(LLInt):
(JSC::LLInt::getEntrypoint):
* llint/LLIntExceptions.cpp: Added.
(LLInt):
(JSC::LLInt::interpreterThrowInCaller):
(JSC::LLInt::returnToThrowForThrownException):
(JSC::LLInt::returnToThrow):
(JSC::LLInt::callToThrow):
* llint/LLIntExceptions.h: Added.
(JSC):
(LLInt):
* llint/LLIntOfflineAsmConfig.h: Added.
* llint/LLIntOffsetsExtractor.cpp: Added.
(JSC):
(LLIntOffsetsExtractor):
(JSC::LLIntOffsetsExtractor::dummy):
(main):
* llint/LLIntSlowPaths.cpp: Added.
(LLInt):
(JSC::LLInt::llint_trace_operand):
(JSC::LLInt::llint_trace_value):
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(JSC::LLInt::traceFunctionPrologue):
(JSC::LLInt::shouldJIT):
(JSC::LLInt::entryOSR):
(JSC::LLInt::resolveGlobal):
(JSC::LLInt::getByVal):
(JSC::LLInt::handleHostCall):
(JSC::LLInt::setUpCall):
(JSC::LLInt::genericCall):
* llint/LLIntSlowPaths.h: Added.
(JSC):
(LLInt):
* llint/LLIntThunks.cpp: Added.
(LLInt):
(JSC::LLInt::generateThunkWithJumpTo):
(JSC::LLInt::functionForCallEntryThunkGenerator):
(JSC::LLInt::functionForConstructEntryThunkGenerator):
(JSC::LLInt::functionForCallArityCheckThunkGenerator):
(JSC::LLInt::functionForConstructArityCheckThunkGenerator):
(JSC::LLInt::evalEntryThunkGenerator):
(JSC::LLInt::programEntryThunkGenerator):
* llint/LLIntThunks.h: Added.
(JSC):
(LLInt):
* llint/LowLevelInterpreter.asm: Added.
* llint/LowLevelInterpreter.cpp: Added.
* llint/LowLevelInterpreter.h: Added.
* offlineasm: Added.
* offlineasm/armv7.rb: Added.
* offlineasm/asm.rb: Added.
* offlineasm/ast.rb: Added.
* offlineasm/backends.rb: Added.
* offlineasm/generate_offset_extractor.rb: Added.
* offlineasm/instructions.rb: Added.
* offlineasm/offset_extractor_constants.rb: Added.
* offlineasm/offsets.rb: Added.
* offlineasm/opt.rb: Added.
* offlineasm/parser.rb: Added.
* offlineasm/registers.rb: Added.
* offlineasm/self_hash.rb: Added.
* offlineasm/settings.rb: Added.
* offlineasm/transform.rb: Added.
* offlineasm/x86.rb: Added.
* runtime/CodeSpecializationKind.h: Added.
(JSC):
* runtime/CommonSlowPaths.h:
(JSC::CommonSlowPaths::arityCheckFor):
(CommonSlowPaths):
* runtime/Executable.cpp:
(JSC::jettisonCodeBlock):
(JSC):
(JSC::EvalExecutable::jitCompile):
(JSC::samplingDescription):
(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::jitCompile):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::baselineCodeBlockFor):
(JSC::FunctionExecutable::jitCompileForCall):
(JSC::FunctionExecutable::jitCompileForConstruct):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):
* runtime/Executable.h:
(JSC):
(EvalExecutable):
(ProgramExecutable):
(FunctionExecutable):
(JSC::FunctionExecutable::jitCompileFor):
* runtime/ExecutionHarness.h: Added.
(JSC):
(JSC::prepareForExecution):
(JSC::prepareFunctionForExecution):
* runtime/JSArray.h:
(JSC):
(JSArray):
* runtime/JSCell.h:
(JSC):
(JSCell):
* runtime/JSFunction.h:
(JSC):
(JSFunction):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSC):
(JSGlobalData):
* runtime/JSGlobalObject.h:
(JSC):
(JSGlobalObject):
* runtime/JSObject.h:
(JSC):
(JSObject):
(JSFinalObject):
* runtime/JSPropertyNameIterator.h:
(JSC):
(JSPropertyNameIterator):
* runtime/JSString.h:
(JSC):
(JSString):
* runtime/JSTypeInfo.h:
(JSC):
(TypeInfo):
* runtime/JSValue.cpp:
(JSC::JSValue::description):
* runtime/JSValue.h:
(LLInt):
(JSValue):
* runtime/JSVariableObject.h:
(JSC):
(JSVariableObject):
* runtime/Options.cpp:
(Options):
(JSC::Options::initializeOptions):
* runtime/Options.h:
(Options):
* runtime/ScopeChain.h:
(JSC):
(ScopeChainNode):
* runtime/Structure.cpp:
(JSC::Structure::addPropertyTransition):
* runtime/Structure.h:
(JSC):
(Structure):
* runtime/StructureChain.h:
(JSC):
(StructureChain):
* wtf/InlineASM.h:
* wtf/Platform.h:
* wtf/SentinelLinkedList.h:
(SentinelLinkedList):
(WTF::SentinelLinkedList::isEmpty):
* wtf/text/StringImpl.h:
(JSC):
(StringImpl):

Source/WebCore:

Reviewed by Gavin Barraclough.

No new tests, because there is no change in behavior.

* CMakeLists.txt:

Source/WebKit:

Reviewed by Gavin Barraclough.

Changed EFL's build system to include a new directory in JavaScriptCore.

* CMakeLists.txt:

Tools:

Reviewed by Gavin Barraclough.

Changed EFL's build system to include a new directory in JavaScriptCore.

* DumpRenderTree/efl/CMakeLists.txt:

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

8 years agoGet rid of the LocalizationStrategy
benjamin@webkit.org [Tue, 21 Feb 2012 06:38:10 +0000 (06:38 +0000)]
Get rid of the LocalizationStrategy
https://bugs.webkit.org/show_bug.cgi?id=78324

Reviewed by Sam Weinig.

Source/WebCore:

Remove LocalizationStrategy and unify the localization behind
LocalizedStrings.h and LocalizedStrings.cpp.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.gypi:
* WebCore.order:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/DefaultLocalizationStrategy.cpp: Removed.
* platform/DefaultLocalizationStrategy.h: Removed.
* platform/LocalizationStrategy.h: Removed.
* platform/LocalizedStrings.cpp:
* platform/LocalizedStrings.h:
(WebCore):
* platform/PlatformStrategies.cpp:
* platform/PlatformStrategies.h:
(WebCore):
(WebCore::PlatformStrategies::PlatformStrategies):
(PlatformStrategies):
* platform/qt/LocalizedStringsQt.cpp: Copied from Source/WebKit/qt/WebCoreSupport/PlatformStrategiesQt.cpp.

Source/WebKit/qt:

Move the localization code from PlatformStrategiesQt.cpp
to LocalizedStringsQt.cpp.

Get rid of LocalizationStrategy from PlatformStrategiesQt

* WebCoreSupport/PlatformStrategiesQt.cpp:
* WebCoreSupport/PlatformStrategiesQt.h:
(PlatformStrategiesQt):

Source/WebKit/wince:

Remove a useless #include of LocalizationStrategy.h.

* WebCoreSupport/PlatformStrategiesWinCE.h:

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

8 years agoUnreviewed, rolling out http://trac.webkit.org/changeset/108291
fpizlo@apple.com [Tue, 21 Feb 2012 06:34:14 +0000 (06:34 +0000)]
Unreviewed, rolling out trac.webkit.org/changeset/108291
It completely broke the 32-bit JIT.

* heap/CopiedAllocator.h:
* heap/CopiedSpace.h:
(CopiedSpace):
* heap/Heap.h:
(JSC::Heap::allocatorForObjectWithDestructor):
* jit/JIT.cpp:
(JSC::JIT::privateCompileSlowCases):
* jit/JIT.h:
(JIT):
* jit/JITInlineMethods.h:
(JSC):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_new_array):
* runtime/JSArray.cpp:
(JSC::storageSize):
(JSC):
* runtime/JSArray.h:
(ArrayStorage):
(JSArray):

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

8 years ago[Qt] Unreviewed gardening after r108259.
ossy@webkit.org [Tue, 21 Feb 2012 06:30:07 +0000 (06:30 +0000)]
[Qt] Unreviewed gardening after r108259.

* platform/qt/fast/dom/prototype-inheritance-2-expected.txt: Updated.

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

8 years agoRemove [TreatReturnedNullStringAsNull] from HTMLMediaElement.mediaGroup
haraken@chromium.org [Tue, 21 Feb 2012 06:23:57 +0000 (06:23 +0000)]
Remove [TreatReturnedNullStringAsNull] from HTMLMediaElement.mediaGroup
https://bugs.webkit.org/show_bug.cgi?id=79064

Reviewed by Hajime Morita.

[TreatReturnedNullStringAsNull] is a typo of [TreatReturnedNullStringAs=Null].
But as far as I read the spec
(http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#attr-media-mediagroup),
there is no statement about what value should be returned when HTMLMediaElement.mediaGroup
is not yet initialized. In particular, there is no statement that says "null should
be returned when HTMLMediaElement.mediaGroup is not initialized". Thus, instead of
fixing the typo, just removing [TreatReturnedNullStringAsNull] would make sense.
Removing [TreatReturnedNullStringAsNull] does not change the current behavior.

Test: media/media-controller.html (No change in the test results.)

* html/HTMLMediaElement.idl:

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

8 years ago[[Put]] should throw if prototype chain contains a readonly property.
barraclough@apple.com [Tue, 21 Feb 2012 06:17:40 +0000 (06:17 +0000)]
[[Put]] should throw if prototype chain contains a readonly property.
https://bugs.webkit.org/show_bug.cgi?id=79069

Reviewed by Oliver Hunt.

Currently we only check the base of the put, not the prototype chain.
Fold this check in with the test for accessors.

Source/JavaScriptCore:

* runtime/JSObject.cpp:
(JSC::JSObject::put):
    - Updated to test all objects in the propotype chain for readonly properties.
(JSC::JSObject::putDirectAccessor):
(JSC::putDescriptor):
    - Record the presence of readonly properties on the structure.
* runtime/Structure.cpp:
(JSC::Structure::Structure):
    - hasGetterSetterPropertiesExcludingProto expanded to hasReadOnlyOrGetterSetterPropertiesExcludingProto.
* runtime/Structure.h:
(JSC::Structure::hasReadOnlyOrGetterSetterPropertiesExcludingProto):
(JSC::Structure::setHasGetterSetterProperties):
    - hasGetterSetterPropertiesExcludingProto expanded to hasReadOnlyOrGetterSetterPropertiesExcludingProto.
(JSC::Structure::setContainsReadOnlyProperties):
    - Added.

LayoutTests:

* fast/js/Object-defineProperty-expected.txt:
* fast/js/script-tests/Object-defineProperty.js:
(get shouldBeTrue):
    - Added test case.

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

8 years agoUse InsertinonPoint instead of HTMLContentElement.
hayato@chromium.org [Tue, 21 Feb 2012 06:15:04 +0000 (06:15 +0000)]
Use InsertinonPoint instead of HTMLContentElement.
https://bugs.webkit.org/show_bug.cgi?id=78778

Reviewed by Hajime Morita.

Replace HTMLContentElement with InsertionPoint in NodeRenderingContext and HTMLContentSelection.
This is one of followup patches for r108207.

No new tests, no change in behavior.

* dom/NodeRenderingContext.cpp:
(WebCore::nextRendererOf):
(WebCore::previousRendererOf):
(WebCore::firstRendererOf):
(WebCore::lastRendererOf):
* dom/NodeRenderingContext.h:
(WebCore):
(NodeRenderingContext):
(WebCore::NodeRenderingContext::insertionPoint):
* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::insertionPointFor):
* dom/ShadowRoot.h:
(WebCore):
* html/shadow/HTMLContentElement.cpp:
(WebCore::HTMLContentElement::HTMLContentElement):
(WebCore::HTMLContentElement::attach):
(WebCore::HTMLContentElement::detach):
* html/shadow/HTMLContentElement.h:
(HTMLContentElement):
* html/shadow/HTMLContentSelector.cpp:
(WebCore::HTMLContentSelector::select):
* html/shadow/HTMLContentSelector.h:
(WebCore):
(HTMLContentSelection):
(WebCore::HTMLContentSelection::insertionPoint):
(WebCore::HTMLContentSelection::HTMLContentSelection):
(WebCore::HTMLContentSelection::create):
* html/shadow/InsertionPoint.cpp:
(WebCore::InsertionPoint::InsertionPoint):
* html/shadow/InsertionPoint.h:
(WebCore::InsertionPoint::selections):
(WebCore::InsertionPoint::hasSelection):
(InsertionPoint):

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

8 years agoMathML internals - code clean-up for RenderMathMLSubSup
commit-queue@webkit.org [Tue, 21 Feb 2012 06:00:51 +0000 (06:00 +0000)]
MathML internals - code clean-up for RenderMathMLSubSup
https://bugs.webkit.org/show_bug.cgi?id=79063

Patch by David Barton <dbarton@mathscribe.com> on 2012-02-20
Reviewed by Eric Seidel.

In the next patch, I will shrink and revise the <msubsup> formatting code. To make this
easier to follow, I am first doing some simple code clean-up.

No new tests.

* rendering/mathml/RenderMathMLRow.cpp:
(WebCore::RenderMathMLRow::layout):
* rendering/mathml/RenderMathMLRow.h:
(WebCore::RenderMathMLRow::isRenderMathMLRow):
* rendering/mathml/RenderMathMLSubSup.cpp:
(WebCore::RenderMathMLSubSup::stretchToHeight):
(WebCore::RenderMathMLSubSup::layout):
    - There is no need to iterate over baseWrapper's children since it should have only
      one child, the base of the <msubsup>.

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

8 years agoReplace [V8Custom=DOMWindowNOP] with [V8Custom]
haraken@chromium.org [Tue, 21 Feb 2012 05:52:43 +0000 (05:52 +0000)]
Replace [V8Custom=DOMWindowNOP] with [V8Custom]
https://bugs.webkit.org/show_bug.cgi?id=79062

Reviewed by Adam Barth.

[V8Custom=DOMWindowNOP] is not implemented by CodeGeneratorV8.pm.
This patch replaces it with [V8Custom].

No new tests. No change in behavior.

* page/DOMWindow.idl:

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

8 years ago[JSGenerateIsReachable=ImplRoot] is not implemented, it should be [JSGenerateIsReachable]
haraken@chromium.org [Tue, 21 Feb 2012 05:28:36 +0000 (05:28 +0000)]
[JSGenerateIsReachable=ImplRoot] is not implemented, it should be [JSGenerateIsReachable]
https://bugs.webkit.org/show_bug.cgi?id=79061

Reviewed by Adam Barth.

CSSStyleDeclaration.idl uses [JSGenerateIsReachable=ImplRoot],
but "ImplRoot" is not implemented in CodeGeneratorJS.pm.
This patch replaces [JSGenerateIsReachable=ImplRoot] with [JSGenerateIsReachable].

No tests. No change in behavior.

* css/CSSStyleDeclaration.idl:

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

8 years ago There is no complete test cases of optional arguments for MediaStream API and PeerCo...
commit-queue@webkit.org [Tue, 21 Feb 2012 05:25:05 +0000 (05:25 +0000)]
 There is no complete test cases of optional arguments for MediaStream API and PeerConnection
 https://bugs.webkit.org/show_bug.cgi?id=78578

 Reviewed by Adam Barth.

 * fast/mediastream/peerconnection-AttributesMethod-expected.txt: Added.
 * fast/mediastream/peerconnection-AttributesMethod.html: Added.
 * fast/mediastream/peerconnection-addstream-expected.txt:
 * fast/mediastream/peerconnection-argument-types-expected.txt: Added.
 * fast/mediastream/peerconnection-argument-types.html: Added.
 * fast/mediastream/peerconnection-removestream-expected.txt: Added.
 * fast/mediastream/peerconnection-removestream.html: Added.
 * fast/mediastream/script-tests/AttributesMethod.js: Added.
 * fast/mediastream/script-tests/argument-types.js: Added.
 * fast/mediastream/script-tests/peerconnection-addstream.js:
 * fast/mediastream/script-tests/peerconnection-removestream.js: Added.

Patch by Yanbin Zhang <yanbin.zhang@intel.com> on 2012-02-20

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

8 years ago[EnabledAtRuntime] in HTMLShadowElement.idl should be [V8EnabledAtRuntime]
haraken@chromium.org [Tue, 21 Feb 2012 05:21:16 +0000 (05:21 +0000)]
[EnabledAtRuntime] in HTMLShadowElement.idl should be [V8EnabledAtRuntime]
https://bugs.webkit.org/show_bug.cgi?id=79058

Reviewed by Adam Barth.

[EnabledAtRuntime] does not exist any longer. It should be [V8EnabledAtRuntime].

No tests.

* html/shadow/HTMLShadowElement.idl:

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

8 years agoReplace [Callback=FunctionOnly] with [Callback]
haraken@chromium.org [Tue, 21 Feb 2012 04:52:58 +0000 (04:52 +0000)]
Replace [Callback=FunctionOnly] with [Callback]
https://bugs.webkit.org/show_bug.cgi?id=79060

Reviewed by Adam Barth.

[Callback=FunctionOnly] is not implemented by any code generator.
This patch replaces it with [Callback].

No tests. No change in behavior.

* Modules/intents/IntentResultCallback.idl:
* Modules/intents/NavigatorIntents.idl:
* dom/RequestAnimationFrameCallback.idl:
* mediastream/NavigatorMediaStream.idl:
* mediastream/NavigatorUserMediaErrorCallback.idl:
* mediastream/NavigatorUserMediaSuccessCallback.idl:
* mediastream/PeerConnection.idl:
* mediastream/SignalingCallback.idl:
* page/PositionCallback.idl:
* page/PositionErrorCallback.idl:

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

8 years ago[BlackBerry] Need to override active/inactive text search highlight color for RenderT...
commit-queue@webkit.org [Tue, 21 Feb 2012 04:17:26 +0000 (04:17 +0000)]
[BlackBerry] Need to override active/inactive text search highlight color for RenderThemeBlackBerry
https://bugs.webkit.org/show_bug.cgi?id=78920

Override two functions for text search highlight colors so that we can
provide platform specified colors.

Patch by Andy Chen <andchen@rim.com> on 2012-02-17
Reviewed by Antonio Gomes.

No function change so no new tests.

* platform/blackberry/RenderThemeBlackBerry.cpp:
(WebCore::RenderThemeBlackBerry::platformActiveTextSearchHighlightColor):
(WebCore::RenderThemeBlackBerry::platformInactiveTextSearchHighlightColor):
* platform/blackberry/RenderThemeBlackBerry.h:

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

8 years ago[Chromium] Unreviewed, update test expectations.
yutak@chromium.org [Tue, 21 Feb 2012 04:12:25 +0000 (04:12 +0000)]
[Chromium] Unreviewed, update test expectations.

* platform/chromium/fast/dom/Window/window-custom-prototype-expected.txt:
* platform/chromium/fast/js/string-capitalization-expected.txt:
* platform/chromium/test_expectations.txt:

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

8 years agoDefault canvas backing store to be 1:1 with specified dimensions.
jknotten@chromium.org [Tue, 21 Feb 2012 03:48:59 +0000 (03:48 +0000)]
Default canvas backing store to be 1:1 with specified dimensions.
https://bugs.webkit.org/show_bug.cgi?id=78971

Reviewed by Adam Barth.

Although the canvas specification states that the backing image may
be larger than the user-specified dimensions, there are a number of
philip canvas tests that fail when the backing image data is not
1:1 with the specified canvas dimensions. These failures are
tracked in https://bugs.webkit.org/show_bug.cgi?id=73645

This change defaults the canvas backing store to be 1:1 with the
user-specified dimensions, while also providing an
ENABLE(HIGH_DPI_CANVAS) build option to reinstate the original
behaviour, so that the above bug may be more easily fixed.

* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::HTMLCanvasElement):

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

8 years agoUpdate pywebsocket to 0.7.2
bashi@chromium.org [Tue, 21 Feb 2012 03:24:45 +0000 (03:24 +0000)]
Update pywebsocket to 0.7.2
https://bugs.webkit.org/show_bug.cgi?id=79066

This version includes vendor-prefixed deflate-frame extension support.

Reviewed by Kent Tamura.

* Scripts/webkitpy/thirdparty/__init__.py:
(AutoinstallImportHook._install_pywebsocket):

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

8 years agoImplement fast path for op_new_array in the baseline JIT
mhahnenberg@apple.com [Tue, 21 Feb 2012 03:20:37 +0000 (03:20 +0000)]
Implement fast path for op_new_array in the baseline JIT
https://bugs.webkit.org/show_bug.cgi?id=78612

Reviewed by Filip Pizlo.

* heap/CopiedAllocator.h:
(CopiedAllocator): Friended the JIT to allow access to m_currentOffset.
* heap/CopiedSpace.h:
(CopiedSpace): Friended the JIT to allow access to
(JSC::CopiedSpace::allocator):
* heap/Heap.h:
(JSC::Heap::storageAllocator): Added a getter for the CopiedAllocator class so the JIT
can use it for simple allocation i.e. when we can just bump the offset without having to
do anything else.
* jit/JIT.cpp:
(JSC::JIT::privateCompileSlowCases): Added new slow case for op_new_array for when
we have to bail out because the fast allocation path fails for whatever reason.
* jit/JIT.h:
(JIT):
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicStorage): Added utility function that allows objects to
allocate generic backing stores. This function is used by emitAllocateJSArray.
(JSC):
(JSC::JIT::emitAllocateJSArray): Added utility function that allows the client to
more easily allocate JSArrays. This function is used by emit_op_new_array and I expect
it will also be used for emit_op_new_array_buffer.
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_new_array): Changed to do inline allocation of JSArrays. Still does
a stub call for oversize arrays.
(JSC):
(JSC::JIT::emitSlow_op_new_array): Just bails out to a stub call if we fail in any way on
the fast path.
* runtime/JSArray.cpp:
(JSC):
* runtime/JSArray.h: Added lots of offset functions for all the fields that we need to
initialize in the JIT.
(ArrayStorage):
(JSC::ArrayStorage::lengthOffset):
(JSC::ArrayStorage::numValuesInVectorOffset):
(JSC::ArrayStorage::allocBaseOffset):
(JSC::ArrayStorage::vectorOffset):
(JSArray):
(JSC::JSArray::sparseValueMapOffset):
(JSC::JSArray::subclassDataOffset):
(JSC::JSArray::indexBiasOffset):
(JSC):
(JSC::JSArray::storageSize): Moved this function from being a static function in the cpp file
to being a static function in the JSArray class. This move allows the JIT to call it to
see what size it should allocate.

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

8 years agoUpstream RenderThemeBlackberry.h/.cpp into WebCore/platform/blackberry
commit-queue@webkit.org [Tue, 21 Feb 2012 03:19:17 +0000 (03:19 +0000)]
Upstream RenderThemeBlackberry.h/.cpp into WebCore/platform/blackberry
https://bugs.webkit.org/show_bug.cgi?id=78785

Main Contributors:
Daniel Bates <dbates@rim.com>
Bryan Gislason <bgislason@rim.com>
Akash Vaswani <akvaswani@rim.com>
Dave Battista <dbattista@rim.com>
Robin Cao  <robin.cao@torchmobile.com.cn>
Genevieve Mak <gmak@rim.com>
Mike Fenton  <mifenton@rim.com>

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2012-02-20
Reviewed by Antonio Gomes.

Initial upstream, no new tests.

* platform/blackberry/RenderThemeBlackBerry.cpp: Added.
* platform/blackberry/RenderThemeBlackBerry.h: Added.

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

8 years ago[GTK] [EFL] Collapse duplicate WebGL support code
commit-queue@webkit.org [Tue, 21 Feb 2012 03:10:17 +0000 (03:10 +0000)]
[GTK] [EFL] Collapse duplicate WebGL support code
https://bugs.webkit.org/show_bug.cgi?id=78970

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

No new tests. This just cleans up duplicated code.

Centralize duplicated WebGL code for EFL and GTK+ in the Cairo
directory. This is in preparation for the changes necessary to
connect WebGL to the TextureMapper AC.

* GNUmakefile.list.am: Update source list.
* PlatformEfl.cmake: Update source list.
* platform/graphics/cairo/DrawingBufferCairo.cpp: Renamed from Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp.
* platform/graphics/cairo/GraphicsContext3DCairo.cpp: Integrated the code From GraphicsContext3DGtk.cpp.
* platform/graphics/efl/DrawingBufferEfl.cpp: Removed.
* platform/graphics/efl/GraphicsContext3DEfl.cpp: Removed.
* platform/graphics/gtk/GraphicsContext3DGtk.cpp: Removed.

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

8 years ago[GTK] Turn on requestAnimationFrame for release builds
commit-queue@webkit.org [Tue, 21 Feb 2012 03:05:43 +0000 (03:05 +0000)]
[GTK] Turn on requestAnimationFrame for release builds
https://bugs.webkit.org/show_bug.cgi?id=79038

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

* configure.ac: Turn on requestAnimationFrame by default.

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

8 years agoDefineOwnProperty fails with numeric properties & Object.prototype
barraclough@apple.com [Tue, 21 Feb 2012 02:35:19 +0000 (02:35 +0000)]
DefineOwnProperty fails with numeric properties & Object.prototype
https://bugs.webkit.org/show_bug.cgi?id=79059

Reviewed by Oliver Hunt.

ObjectPrototype caches whether it contains any numeric properties (m_hasNoPropertiesWithUInt32Names),
calls to defineOwnProperty need to update this cache.

Source/JavaScriptCore:

* runtime/ObjectPrototype.cpp:
(JSC::ObjectPrototype::put):
(JSC::ObjectPrototype::defineOwnProperty):
(JSC):
(JSC::ObjectPrototype::getOwnPropertySlotByIndex):
* runtime/ObjectPrototype.h:
(ObjectPrototype):

LayoutTests:

* fast/js/Object-defineProperty-expected.txt:
* fast/js/script-tests/Object-defineProperty.js:
(shouldBe.shouldBe.shouldBe.shouldBe.shouldBe.shouldBe.shouldBe.shouldThrow.Object.defineProperty):

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

8 years ago[UNIX] Plugin information fields are not interpreted as UTF-8
commit-queue@webkit.org [Tue, 21 Feb 2012 02:19:35 +0000 (02:19 +0000)]
[UNIX] Plugin information fields are not interpreted as UTF-8
https://bugs.webkit.org/show_bug.cgi?id=78635

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Interpret plugin metadata as UTF8 aways. This matches the behavior
of Chromium and the Totem plugin.

This is tested by a change to TestNetscapePlugin and expectations updates.

* plugins/efl/PluginPackageEfl.cpp:
(WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.
* plugins/gtk/PluginPackageGtk.cpp:
(WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.
* plugins/qt/PluginPackageQt.cpp:
(WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.

Source/WebKit2:

Interpret plugin metadata as UTF8 aways. This matches the behavior
of Chromium and the Totem plugin.

* Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
(WebKit::NetscapePluginModule::getPluginInfoForLoadedPlugin): Use String::fromUTF8.

Tools:

Interpret plugin metadata as UTF8 aways. This matches the behavior
of Chromium and the Totem plugin.

* DumpRenderTree/TestNetscapePlugIn/main.cpp:
(NPP_GetValue): Include a UTF-8 character in the description string for testing purposes.

LayoutTests:

Update expectations to match the fact that TestNetscapePlugin is now
returning a Unicode character in the description field.

* platform/chromium-linux/plugins/plugin-javascript-access-expected.txt:
* platform/gtk/plugins/plugin-javascript-access-expected.txt:
* platform/qt/plugins/plugin-javascript-access-expected.txt:

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

8 years ago[GTK] [Qt] Move the unix forwarding headers for TestNetscapePlugin to the TestNetscap...
commit-queue@webkit.org [Tue, 21 Feb 2012 02:16:13 +0000 (02:16 +0000)]
[GTK] [Qt] Move the unix forwarding headers for TestNetscapePlugin to the TestNetscapePlugin directory
https://bugs.webkit.org/show_bug.cgi?id=78935

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

Move the TestNetscapePlugin headers to a more appropriate directory and update
the build files to match.

* DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npapi.h: Renamed from Tools/DumpRenderTree/unix/TestNetscapePlugin/ForwardingHeaders/WebKit/npapi.h.
* DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npfunctions.h: Renamed from Tools/DumpRenderTree/unix/TestNetscapePlugin/ForwardingHeaders/WebKit/npfunctions.h.
* DumpRenderTree/TestNetscapePlugIn/unix/ForwardingHeaders/WebKit/npruntime.h: Renamed from Tools/DumpRenderTree/unix/TestNetscapePlugin/ForwardingHeaders/WebKit/npruntime.h.
* DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro: Update build.
* GNUmakefile.am: Ditto.

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

8 years agoDoes not build on GNU Hurd
commit-queue@webkit.org [Tue, 21 Feb 2012 02:12:24 +0000 (02:12 +0000)]
Does not build on GNU Hurd
https://bugs.webkit.org/show_bug.cgi?id=79045

Patch by Pino Toscano <pino@debian.org> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

* wtf/Platform.h: define WTF_OS_HURD.
* wtf/ThreadIdentifierDataPthreads.cpp: adds a band-aid fix
for the lack of PTHREAD_KEYS_MAX definition, with a value which
should not cause issues.

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

8 years ago[GTK] Web content oftens steals focus from other widgets
commit-queue@webkit.org [Tue, 21 Feb 2012 02:04:29 +0000 (02:04 +0000)]
[GTK] Web content oftens steals focus from other widgets
https://bugs.webkit.org/show_bug.cgi?id=77791

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

* platform/gtk/WidgetGtk.cpp:
(WebCore::Widget::setFocus): No longer do anything special to try
to grab "real" widget focus. This matches the behavior on Qt.
* plugins/gtk/PluginViewGtk.cpp:
(WebCore::PluginView::setFocus): Moved the focus handling to here.
This ensures that behavior for plugins does not change.

Source/WebKit/gtk:

* tests/testwebview.c: Added a WebKit1 test to verify this behavior.

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

8 years ago[GTK] Geolocation support should be on by default
commit-queue@webkit.org [Tue, 21 Feb 2012 02:02:23 +0000 (02:02 +0000)]
[GTK] Geolocation support should be on by default
https://bugs.webkit.org/show_bug.cgi?id=79037

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-02-20
Reviewed by Gustavo Noronha Silva.

* configure.ac: Turn on geolocation support in release builds.

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

8 years agoRegression (108135) isOpaque() returns uninitialized variable.
yael.aharon@nokia.com [Tue, 21 Feb 2012 01:33:41 +0000 (01:33 +0000)]
Regression (108135) isOpaque() returns uninitialized variable.
https://bugs.webkit.org/show_bug.cgi?id=79049

Reviewed by Noam Rosenthal.

isOpaque() should use the new m_flags instead of the old m_isOpaque.
No new tests. No new functionality.

* platform/graphics/texmap/TextureMapper.h:
(WebCore::BitmapTexture::reset):
(WebCore::BitmapTexture::isOpaque):
(BitmapTexture):

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

8 years agoUnreviewed. Rebaselined run-bindings-tests results.
haraken@chromium.org [Tue, 21 Feb 2012 01:27:27 +0000 (01:27 +0000)]
Unreviewed. Rebaselined run-bindings-tests results.

* bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
* bindings/scripts/test/CPP/WebDOMTestInterface.h:
* bindings/scripts/test/CPP/WebDOMTestObj.cpp:
* bindings/scripts/test/CPP/WebDOMTestObj.h:

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

8 years ago[Qt][WK2] Clipping is broken
noam.rosenthal@nokia.com [Tue, 21 Feb 2012 01:20:20 +0000 (01:20 +0000)]
[Qt][WK2] Clipping is broken
https://bugs.webkit.org/show_bug.cgi?id=78677

It's not necessary to add a full-viewport rect to the scissor clip stack.
It creates a situation where if there's a clip in the page, we return to
the viewport clip instead of applying the WebView's clip we got from the
scenegraph.

Also, it's unnecessary to clip before we paint the layer's content, we should
only clip afterwards, before painting the children.

Reviewed by Kenneth Rohde Christiansen.

No new functionality.

* platform/graphics/opengl/TextureMapperGL.cpp:
(WebCore::BitmapTextureGL::size):
(WebCore::scissorClip):
(WebCore):
(WebCore::TextureMapperGL::beginScissorClip):
(WebCore::TextureMapperGL::endScissorClip):
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::paintSelfAndChildren):

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

8 years ago[Texmap] Layers and tiles appear to have missing pixels in their right/bottom borders
noam.rosenthal@nokia.com [Tue, 21 Feb 2012 01:15:15 +0000 (01:15 +0000)]
[Texmap] Layers and tiles appear to have missing pixels in their right/bottom borders
https://bugs.webkit.org/show_bug.cgi?id=78961

The relativeSize member should point to one pixel before the edge, since it's used
by glVertexAttribPointer, which takes edge points and not sizes.

Reviewed by Kenneth Rohde Christiansen.

No new funcionality.

* platform/graphics/opengl/TextureMapperGL.cpp:
(WebCore::BitmapTextureGL::didReset):

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

8 years ago.: Add a new API for the Vibration API(W3C).
commit-queue@webkit.org [Tue, 21 Feb 2012 01:05:11 +0000 (01:05 +0000)]
.: Add a new API for the Vibration API(W3C).
https://bugs.webkit.org/show_bug.cgi?id=72010

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-02-20
Reviewed by Hajime Morita.

Add Implementation for the Vibration API to the WebKit-EFL port.
http://dev.w3.org/2009/dap/vibration/

* Source/cmake/OptionsEfl.cmake: Add ENABLE_VIBRATION feature.
* Source/cmakeconfig.h.cmake:

Source/WebCore: Add a new API for the Vibration API(W3C).
https://bugs.webkit.org/show_bug.cgi?id=72010

http://dev.w3.org/2009/dap/vibration/
This patch implements navigator.webkitvibrate() API.
This API operates differently depending upon a given parameter:
1. It cancels vibration when given 0 or [].
2. It gives a vibration duration in milliseconds when given as a single integer value.
3. It gives a vibration pattern when given as an integer array. For instance, [1000 300 1000] generates a vibration of 1000ms followed by 300ms of idle time, and then creates another vibration of 1000ms.

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-02-20
Reviewed by Hajime Morita.

Test: fast/dom/navigator-vibration.html

* CMakeLists.txt:
* Modules/vibration/NavigatorVibration.cpp: Added.
(WebCore):
(WebCore::NavigatorVibration::NavigatorVibration):
(WebCore::NavigatorVibration::~NavigatorVibration):
(WebCore::NavigatorVibration::webkitVibrate):
Add webkitVibrate method to get an array or single integer parameter for vibrating.
They check vibration is activated in the platform, and then call vibrate() in the Vibration class.
* Modules/vibration/NavigatorVibration.h: Added.
(WebCore):
(NavigatorVibration):
* Modules/vibration/NavigatorVibration.idl: Added.
* Modules/vibration/Vibration.cpp: Added.
This class implements the entire vibration logic.
(WebCore):
(WebCore::Vibration::Vibration):
(WebCore::Vibration::~Vibration):
(WebCore::Vibration::create):
(WebCore::Vibration::vibrate):
(WebCore::Vibration::cancelVibration):
(WebCore::Vibration::suspendVibration):
(WebCore::Vibration::resumeVibration):
(WebCore::Vibration::timerStartFired):
(WebCore::Vibration::timerStopFired):
(WebCore::Vibration::supplementName):
(WebCore::Vibration::isActive):
(WebCore::provideVibrationTo):
* Modules/vibration/Vibration.h: Added.
(WebCore):
(Vibration):
(WebCore::Vibration::from):
* Modules/vibration/VibrationClient.h: Added.
vibrate() and cancelVibrate() need to be implemented in the VibrationClient.
(WebCore):
(VibrationClient):
(WebCore::VibrationClient::~VibrationClient):

Source/WebKit/efl: Add a new API for the Vibration API(W3C).
https://bugs.webkit.org/show_bug.cgi?id=72010

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-02-20
Reviewed by Hajime Morita.

Implementation for the Vibration API feature to the EFL-port layer.
http://dev.w3.org/2009/dap/vibration/
There are two methods for vibration API.
- vibrate : Vibrate device for receiving as a parameter.
- cancelVibrate : Cancel current vibration.

* CMakeListsEfl.txt:
* WebCoreSupport/VibrationClientEfl.cpp: Added.
(WebCore):
(WebCore::VibrationClientEfl::VibrationClientEfl):
(WebCore::VibrationClientEfl::vibrate):
(WebCore::VibrationClientEfl::cancelVibration):
(WebCore::VibrationClientEfl::vibrationDestroyed):
* WebCoreSupport/VibrationClientEfl.h: Added.
(WebCore):
(VibrationClientEfl):
(WebCore::VibrationClientEfl::~VibrationClientEfl):
* ewk/ewk_view.cpp:
(_Ewk_View_Private_Data):
(_ewk_view_priv_new):

Tools: Add a new API for the Vibration API(W3C).
https://bugs.webkit.org/show_bug.cgi?id=72010

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-02-20
Reviewed by Hajime Morita.

* Scripts/build-webkit: Enable ENABLE_VIBRATION feature.

LayoutTests: Add a new test case for the Vibration API.
https://bugs.webkit.org/show_bug.cgi?id=72010

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-02-20
Reviewed by Hajime Morita.

* fast/dom/navigator-vibration-expected.txt: Added.
* fast/dom/navigator-vibration.html: Added.
* platform/chromium/test_expectations.txt:
* platform/gtk/Skipped:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:

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

8 years agoUnreviewed, rolling out r108263.
yutak@chromium.org [Tue, 21 Feb 2012 00:57:20 +0000 (00:57 +0000)]
Unreviewed, rolling out r108263.
http://trac.webkit.org/changeset/108263
https://bugs.webkit.org/show_bug.cgi?id=77856

Broke Chromium Windows build.

* platform/audio/DynamicsCompressor.cpp:
(WebCore::DynamicsCompressor::DynamicsCompressor):
(WebCore::DynamicsCompressor::setEmphasisStageParameters):
(WebCore::DynamicsCompressor::process):
(WebCore::DynamicsCompressor::reset):
* platform/audio/DynamicsCompressor.h:
(WebCore::DynamicsCompressor::isStereo):
(DynamicsCompressor):
* platform/audio/DynamicsCompressorKernel.cpp:
(WebCore::DynamicsCompressorKernel::DynamicsCompressorKernel):
(WebCore::DynamicsCompressorKernel::setPreDelayTime):
(WebCore::DynamicsCompressorKernel::process):
(WebCore::DynamicsCompressorKernel::reset):
* platform/audio/DynamicsCompressorKernel.h:
(DynamicsCompressorKernel):
* webaudio/DynamicsCompressorNode.cpp:
(WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
(WebCore::DynamicsCompressorNode::initialize):

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

8 years agoMove more logic from handler classes to model classes and add unit tests
rniwa@webkit.org [Tue, 21 Feb 2012 00:25:47 +0000 (00:25 +0000)]
Move more logic from handler classes to model classes and add unit tests
https://bugs.webkit.org/show_bug.cgi?id=78989

Reviewed by Hajime Morita.

Extracted various functions from CreateHandler, ReportHanlder, and RunsHanlder to model classes
in order to unit-test them, added DataStoreTestsBase to reduce the code duplication in tests,
and added a whole bunch of unit tests in models_unittest.py.

* Websites/webkit-perf.appspot.com/create_handler.py:
(CreateHandler._create_branch):
(CreateHandler._create_platform):
* Websites/webkit-perf.appspot.com/models.py:
(_create_if_possible):
(_create_if_possible.execute):
(Branch):
(Branch.create_if_possible):
(Platform):
(Platform.create_if_possible):
(Build):
(Build.get_or_insert_from_log):
(Test):
(Test.update_or_insert):
(Test.update_or_insert.execute):
(TestResult):
(TestResult.get_or_insert_from_parsed_json):
(TestResult.get_or_insert_from_parsed_json._float_or_none):
(TestResult.generate_runs):
* Websites/webkit-perf.appspot.com/models_unittest.py:
(DataStoreTestsBase):
(DataStoreTestsBase.assertThereIsNoInstanceOf):
(DataStoreTestsBase.assertOnlyInstance):
(DataStoreTestsBase.assertEqualUnorderedList):
(HelperTests):
(HelperTests.test_create_in_transaction_with_numeric_id_holder):
(HelperTests.test_failing_in_create_in_transaction_with_numeric_id_holder):
(HelperTests.test_raising_in_create_in_transaction_with_numeric_id_holder):
(HelperTests.test_delete_model_with_numeric_id_holder):
(BranchTests):
(BranchTests.test_create_if_possible):
(PlatformTests):
(PlatformTests.test_create_if_possible):
(BuilderTests):
(_create_some_builder):
(BuildTests):
(BuildTests.test_get_or_insert_from_log):
(TestModelTests):
(TestModelTests.test_update_or_insert):
(TestModelTests.test_update_or_insert_to_update):
(TestResultTests):
(TestResultTests._create_build):
(TestResultTests.test_get_or_insert_value):
(TestResultTests.test_get_or_insert_stat_value):
(TestResultTests._create_results):
(TestResultTests.test_generate_runs):
(ReportLogTests):
(ReportLogTests.test_branch):
(ReportLogTests.test_platform):
(PersistentCacheTests):
(PersistentCacheTests.setUp):
(PersistentCacheTests.test_set):
* Websites/webkit-perf.appspot.com/report_process_handler.py:
(ReportProcessHandler.post):
* Websites/webkit-perf.appspot.com/runs_handler.py:
(RunsHandler.get):
(RunsHandler.post):

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

8 years agoUnreviewed windows build fix.
barraclough@apple.com [Tue, 21 Feb 2012 00:18:38 +0000 (00:18 +0000)]
Unreviewed windows build fix.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:

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

8 years agoUndoing accidental changes
mhahnenberg@apple.com [Mon, 20 Feb 2012 23:49:43 +0000 (23:49 +0000)]
Undoing accidental changes

* heap/Heap.cpp:
(JSC::Heap::collectAllGarbage):

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

8 years agoFactor out allocation in CopySpace into a separate CopyAllocator
mhahnenberg@apple.com [Mon, 20 Feb 2012 23:42:11 +0000 (23:42 +0000)]
Factor out allocation in CopySpace into a separate CopyAllocator
https://bugs.webkit.org/show_bug.cgi?id=78610

Reviewed by Oliver Hunt.

Added a new CopyAllocator class, which allows us to do allocations without
having to load the current offset and store the current offset in the current
block. This change will allow us to easily do inline assembly in the JIT for
array allocations.

* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* heap/CopiedAllocator.h: Added.
(JSC):
(CopiedAllocator):
(JSC::CopiedAllocator::currentBlock):
(JSC::CopiedAllocator::CopiedAllocator):
(JSC::CopiedAllocator::allocate):
(JSC::CopiedAllocator::fitsInCurrentBlock):
(JSC::CopiedAllocator::wasLastAllocation):
(JSC::CopiedAllocator::startedCopying):
(JSC::CopiedAllocator::resetCurrentBlock):
(JSC::CopiedAllocator::currentUtilization):
(JSC::CopiedAllocator::resetLastAllocation):
* heap/CopiedBlock.h:
(CopiedBlock):
* heap/CopiedSpace.cpp: Moved some stuff from CopiedSpaceInlineMethods to here because we
weren't really getting any benefits from having such big functions in a header file.
(JSC::CopiedSpace::CopiedSpace):
(JSC):
(JSC::CopiedSpace::init):
(JSC::CopiedSpace::tryAllocateSlowCase):
(JSC::CopiedSpace::tryAllocateOversize):
(JSC::CopiedSpace::tryReallocate):
(JSC::CopiedSpace::tryReallocateOversize):
(JSC::CopiedSpace::doneFillingBlock):
(JSC::CopiedSpace::doneCopying):
(JSC::CopiedSpace::getFreshBlock):
* heap/CopiedSpace.h:
(CopiedSpace):
* heap/CopiedSpaceInlineMethods.h:
(JSC):
(JSC::CopiedSpace::startedCopying):
(JSC::CopiedSpace::addNewBlock):
(JSC::CopiedSpace::allocateNewBlock):
(JSC::CopiedSpace::fitsInBlock):
(JSC::CopiedSpace::tryAllocate):
(JSC::CopiedSpace::allocateFromBlock):
* heap/Heap.cpp:
(JSC::Heap::collectAllGarbage):
* heap/HeapBlock.h:
(HeapBlock):

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

8 years agoFix Visual Studio 2010 build.
paroga@webkit.org [Mon, 20 Feb 2012 23:37:01 +0000 (23:37 +0000)]
Fix Visual Studio 2010 build.

* bytecompiler/NodesCodegen.cpp:
(JSC::PropertyListNode::emitBytecode):

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

8 years ago[GTK] Needs to claim being a more up-to-date Chrome
kov@webkit.org [Mon, 20 Feb 2012 23:22:28 +0000 (23:22 +0000)]
[GTK] Needs to claim being a more up-to-date Chrome
https://bugs.webkit.org/show_bug.cgi?id=79044

Reviewed by Martin Robinson.

* webkit/webkitwebsettings.cpp:
(chromeUserAgent): update the version of Chrome we claim to be
to avoid warnings from sites such as Wordpress saying that our
browser is outdated.

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

8 years agoHave the DynamicsCompressorNode support multi-channel data
commit-queue@webkit.org [Mon, 20 Feb 2012 22:10:23 +0000 (22:10 +0000)]
Have the DynamicsCompressorNode support multi-channel data
https://bugs.webkit.org/show_bug.cgi?id=77856

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-02-20
Reviewed by Chris Rogers.

* platform/audio/DynamicsCompressor.cpp:
(WebCore::DynamicsCompressor::DynamicsCompressor):
(WebCore::DynamicsCompressor::setEmphasisStageParameters):
(WebCore::DynamicsCompressor::process):
(WebCore::DynamicsCompressor::reset):
(WebCore::DynamicsCompressor::setNumberOfChannels):
(WebCore):
* platform/audio/DynamicsCompressor.h:
(DynamicsCompressor):
* platform/audio/DynamicsCompressorKernel.cpp:
(WebCore::DynamicsCompressorKernel::DynamicsCompressorKernel):
(WebCore::DynamicsCompressorKernel::setNumberOfChannels):
(WebCore):
(WebCore::DynamicsCompressorKernel::setPreDelayTime):
(WebCore::DynamicsCompressorKernel::process):
(WebCore::DynamicsCompressorKernel::reset):
* platform/audio/DynamicsCompressorKernel.h:
(DynamicsCompressorKernel):
* webaudio/DynamicsCompressorNode.cpp:
(WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
(WebCore::DynamicsCompressorNode::initialize):

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

8 years agoRenderMathMLRow::baselinePosition() only if linePositionMode == PositionOnContainingLine
commit-queue@webkit.org [Mon, 20 Feb 2012 22:02:21 +0000 (22:02 +0000)]
RenderMathMLRow::baselinePosition() only if linePositionMode == PositionOnContainingLine
https://bugs.webkit.org/show_bug.cgi?id=79039

Patch by David Barton <dbarton@mathscribe.com> on 2012-02-20
Reviewed by Eric Seidel.

Source/WebCore:

RenderMathMLRow::baselinePosition() is actually unnecessary, but I am deleting it in two
steps. First we add a guard to restrict it to the intended PositionOnContainingLine
case, leaving PositionOfInteriorLineBoxes to a superclass, RenderBlock. This removes
some randomness, and tightens up the results of four existing test files.

Test: mathml/presentation/row.xhtml, fenced.xhtml, mo.xhtml, and mo-stretch.html

* rendering/mathml/RenderMathMLRow.cpp:
(WebCore::RenderMathMLRow::baselinePosition):

LayoutTests:

* platform/mac/mathml/presentation/fenced-expected.png:
* platform/mac/mathml/presentation/fenced-expected.txt:
* platform/mac/mathml/presentation/mo-expected.png:
* platform/mac/mathml/presentation/mo-expected.txt:
* platform/mac/mathml/presentation/mo-stretch-expected.png: Added property svn:mime-type.
* platform/mac/mathml/presentation/mo-stretch-expected.txt:
* platform/mac/mathml/presentation/row-expected.png:
* platform/mac/mathml/presentation/row-expected.txt:

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

8 years agoHTML input file control "No File Selected" needs more room in some languages
jonlee@apple.com [Mon, 20 Feb 2012 21:55:38 +0000 (21:55 +0000)]
HTML input file control "No File Selected" needs more room in some languages
https://bugs.webkit.org/show_bug.cgi?id=32366
<rdar://problem/4481028>

Reviewed by David Hyatt.

The patch exposes a function to return the "no file(s) selected" label text.

* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::fileListDefaultLabel): Added to expose the text for the label in
file upload controls when nothing has been selected.
(WebCore::RenderTheme::fileListNameForWidth): Refactor to use fileListDefaultLabel().
* rendering/RenderTheme.h: Change fileListNameForWidth() to be a const function.

* rendering/RenderThemeMac.h: Update fileListNameForWidth() to be a const function for
platform implementations.
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::fileListNameForWidth): Refactor to use fileListDefaultLabel().

Update fileListNameForWidth() to be a const function for platform implementations.
* platform/gtk/RenderThemeGtk.h:
* platform/gtk/RenderThemeGtk.cpp:
* platform/qt/RenderThemeQt.h:
* platform/qt/RenderThemeQt.cpp:

* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::computePreferredLogicalWidths): Change the calculation
of the max preferred logical width. Calculate the length of the "no file(s) selected" text,
and include the button and after-button margin. Take the max of that and the original
default width, which was a string of 34 (defaultWidthNumChars) "0"'s, in the case that the
label text is too short.

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

8 years agoRubber stamped by Sam Weinig.
barraclough@apple.com [Mon, 20 Feb 2012 21:52:00 +0000 (21:52 +0000)]
Rubber stamped by Sam Weinig.

* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::allowsAccessFrom):
    - Errk, remove dead code from end of function.

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

8 years agoMove special __proto__ property to Object.prototype
barraclough@apple.com [Mon, 20 Feb 2012 21:14:48 +0000 (21:14 +0000)]
Move special __proto__ property to Object.prototype
https://bugs.webkit.org/show_bug.cgi?id=78409

Reviewed by Oliver Hunt.

Re-implement this as a regular accessor property.  This has three key benefits:
1) It makes it possible for objects to be given properties named __proto__.
2) Object.prototype.__proto__ can be deleted, preventing object prototypes from being changed.
3) This largely removes the magic used the implement __proto__, it can just be made a regular accessor property.

Source/JavaScriptCore:

* parser/Parser.cpp:
(JSC::::parseFunctionInfo):
    - No need to prohibit functions named __proto__.
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::reset):
    - Add __proto__ accessor to Object.prototype.
* runtime/JSGlobalObjectFunctions.cpp:
(JSC::globalFuncProtoGetter):
(JSC::globalFuncProtoSetter):
    - Definition of the __proto__ accessor functions.
* runtime/JSGlobalObjectFunctions.h:
    - Declaration of the __proto__ accessor functions.
* runtime/JSObject.cpp:
(JSC::JSObject::put):
    - Remove the special handling for __proto__, there is still a check to allow for a fast guard for accessors excluding __proto__.
(JSC::JSObject::putDirectAccessor):
    - Track on the structure whether an object contains accessors other than one for __proto__.
(JSC::JSObject::defineOwnProperty):
    - No need to prohibit definition of own properties named __proto__.
* runtime/JSObject.h:
(JSC::JSObject::inlineGetOwnPropertySlot):
    - Remove the special handling for __proto__.
(JSC::JSValue::get):
    - Remove the special handling for __proto__.
* runtime/JSString.cpp:
(JSC::JSString::getOwnPropertySlot):
    - Remove the special handling for __proto__.
* runtime/JSValue.h:
(JSValue):
    - Made synthesizePrototype public (this may be needed by the __proto__ getter).
* runtime/ObjectConstructor.cpp:
(JSC::objectConstructorGetPrototypeOf):
    - Perform the security check & call prototype() directly.
* runtime/Structure.cpp:
(JSC::Structure::Structure):
    - Added 'ExcludingProto' variant of the 'hasGetterSetterProperties' state.
* runtime/Structure.h:
(JSC::Structure::hasGetterSetterPropertiesExcludingProto):
(JSC::Structure::setHasGetterSetterProperties):
(Structure):
    - Added 'ExcludingProto' variant of the 'hasGetterSetterProperties' state.

Source/WebCore:

* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::allowsAccessFrom):
(WebCore):
    - expose allowsAccessFrom check to JSC.
* bindings/js/JSDOMWindowBase.h:
(JSDOMWindowBase):
    - expose allowsAccessFrom check to JSC.

LayoutTests:

* fast/js/Object-getOwnPropertyNames-expected.txt:
* fast/js/cyclic-prototypes-expected.txt:
* fast/js/parser-syntax-check-expected.txt:
* fast/js/preventExtensions-expected.txt:
* fast/js/prototypes-expected.txt:
    - Update results
* fast/js/script-tests/Object-getOwnPropertyNames.js:
    - __proto__ is now a property of Object Prototype.
* fast/js/script-tests/cyclic-prototypes.js:
    - setting an object's prototype to null removes __proto__ setter, future usage won't set prototype.
* fast/js/script-tests/parser-syntax-check.js:
    - Allow functions named __proto__
* fast/js/script-tests/preventExtensions.js:
    - Setting __proto__ should not throw.
* fast/js/script-tests/prototypes.js:
    - Objects may contained own properties named __proto__, add new test cases.

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

8 years ago[CMake] Fix PLATFORM() define for Windows.
paroga@webkit.org [Mon, 20 Feb 2012 21:11:31 +0000 (21:11 +0000)]
[CMake] Fix PLATFORM() define for Windows.

Define WTF_PLATFORM_WIN instead of WTF_PLATFORM_WINDOWS.

* Source/cmake/OptionsWindows.cmake:

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

8 years agoMake JSCSSStyleDeclaration work directly with CSS Property ID
benjamin@webkit.org [Mon, 20 Feb 2012 20:43:40 +0000 (20:43 +0000)]
Make JSCSSStyleDeclaration work directly with CSS Property ID
https://bugs.webkit.org/show_bug.cgi?id=79014

Reviewed by Geoffrey Garen.

Source/WebCore:

Previously, accessing the CSS property was done by converting from
the JavaScript name to the CSS name, then converting that name to a lowercase
character array, and finally getting the CSS property ID.

This patch cut the indirection and make the code go directly from the
JavaScript name conversion to the CSS property ID.

This improves the performance mainly due to the following:
-avoid dynamic memory allocation
-cut the conversion early when possible
-do not parse the string twice
The previous fast-path optimization was removed because it is no longer
necessary with this change.

The improvement are the following:
-previous fast-path: no change
-previous slow-path: ~3 times faster

Test: fast/dom/CSSStyleDeclaration/access-longest-css-property.html
This just test the edge case of CSSPropertyName.

* bindings/js/JSCSSStyleDeclarationCustom.cpp:
(WebCore::writeWebKitPrefix):
(WebCore::writeEpubPrefix):
(WebCore::cssPropertyIDForJSCSSPropertyName):
(WebCore::isCSSPropertyName):
(WebCore::JSCSSStyleDeclaration::nameGetter):
(WebCore::JSCSSStyleDeclaration::putDelegate):
* css/CSSParser.cpp:
(WebCore::cssPropertyID):
(WebCore):
(WebCore::cssPropertyNameIOSAliasing):
* css/CSSParser.h:
(WebCore):

LayoutTests:

* fast/dom/CSSStyleDeclaration/access-longest-css-property-expected.txt: Added.
* fast/dom/CSSStyleDeclaration/access-longest-css-property.html: Added.

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

8 years agoUpdated Localizable.strings after r107440.
mitz@apple.com [Mon, 20 Feb 2012 19:03:16 +0000 (19:03 +0000)]
Updated Localizable.strings after r107440.

Rubber-stamped by Joseph Pecoraro.

* English.lproj/Localizable.strings:

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

8 years agoUnreviewed gardening after r108226.
ossy@webkit.org [Mon, 20 Feb 2012 19:00:36 +0000 (19:00 +0000)]
Unreviewed gardening after r108226.
Skip tests because ENABLE(SHADOW_DOM) is disabled on these platforms.

* platform/efl/Skipped:
* platform/gtk/Skipped:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:
* platform/wk2/Skipped:

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

8 years agoUpdate toLower and toUpper tests for Unicode 6.1 changes
msaboff@apple.com [Mon, 20 Feb 2012 18:49:22 +0000 (18:49 +0000)]
Update toLower and toUpper tests for Unicode 6.1 changes
https://bugs.webkit.org/show_bug.cgi?id=78923

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

* tests/mozilla/ecma/String/15.5.4.11-2.js: Updated the test
to handle a third set of results for updated Unicode 6.1
changes.
(getTestCases):
(TestCaseMultiExpected):
(writeTestCaseResultMultiExpected):
(getTestCaseResultMultiExpected):
(test):
(GetUnicodeValues):
(DecimalToHexString):

LayoutTests:

* fast/js/script-tests/string-capitalization.js: Updated the test
to handle a new set of characters that have different results depending
on what version of Unicode the platform supports.  The tests work
for Unicode 5.0 through 6.1.
(createExpected):
* fast/js/string-capitalization-expected.txt:

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

8 years ago[GTK] Adding SOUP_TYPE_PROXY_RESOLVER_DEFAULT feature to soup session makes WebProces...
carlosgc@webkit.org [Mon, 20 Feb 2012 18:46:01 +0000 (18:46 +0000)]
[GTK] Adding SOUP_TYPE_PROXY_RESOLVER_DEFAULT feature to soup session makes WebProcess to hang
https://bugs.webkit.org/show_bug.cgi?id=79036

Reviewed by Martin Robinson.

This looks like a bug in gobject. Initializing the WebProcess
before creating the soup session seems to fix the problem. It's
actually a workaround, but initializing the WebProcess as sson as
possible it's a good idea in any case.

* WebProcess/gtk/WebProcessMainGtk.cpp:
(WebKit::WebProcessMainGtk):

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

8 years agoMathML internals - remove nonOperatorHeight(), hasBase()
commit-queue@webkit.org [Mon, 20 Feb 2012 18:35:12 +0000 (18:35 +0000)]
MathML internals - remove nonOperatorHeight(), hasBase()
https://bugs.webkit.org/show_bug.cgi?id=78977

Source/WebCore:

Patch by David Barton <dbarton@mathscribe.com> on 2012-02-20
Reviewed by Eric Seidel.

Stretchy operators, including embellished ones, should stretch to the largest height of
the non-stretchy items in the same explicit or implicit <mrow>.
RenderMathMLRow::layout() used to use hasBase(), isRenderMathMLOperator(), and
nonOperatorHeight() to approximate this height. We now use unembellishedOperator() to
improve this approximation, while also simplifying the code. More plainly, the code used
to skip all operators when estimating this height, instead of just the stretchy ones. We
continue to do that for now, but we more accurately skip all embellished operators
(using our currently implemented approximate definition of this), and use the simple and
true height of the remaining items. In case all items in the row are stretchy,
style()->fontSize() is better than using whatever heights these items currently happen
to be stretched to.

Test: mathml/presentation/mo-stretch.html, and many existing tests

* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore):
* rendering/mathml/RenderMathMLBlock.h:
(WebCore::RenderMathMLBlock::unembellishedOperator):
* rendering/mathml/RenderMathMLRow.cpp:
(WebCore):
(WebCore::RenderMathMLRow::layout):
* rendering/mathml/RenderMathMLRow.h:
(WebCore::RenderMathMLRow::isRenderMathMLRow):
* rendering/mathml/RenderMathMLSubSup.cpp:
(WebCore):
* rendering/mathml/RenderMathMLSubSup.h:
(RenderMathMLSubSup):
* rendering/mathml/RenderMathMLUnderOver.cpp:
(WebCore):
* rendering/mathml/RenderMathMLUnderOver.h:
(RenderMathMLUnderOver):

LayoutTests:

Patch by David Barton <dbarton@mathscribe.com> on 2012-02-20
Reviewed by Eric Seidel.

More tests with multiple embellished stretchy and non-stretchy operators will be added
later, when code is added to more precisely handle such cases.

* mathml/presentation/mo-stretch.html: Added.
* platform/mac/mathml/presentation/mo-stretch-expected.png: Added.
* platform/mac/mathml/presentation/mo-stretch-expected.txt: Added.

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

8 years agoStop the committer timer when the page is destroyed
andersca@apple.com [Mon, 20 Feb 2012 17:24:19 +0000 (17:24 +0000)]
Stop the committer timer when the page is destroyed
https://bugs.webkit.org/show_bug.cgi?id=78907

Reviewed by Adam Roben.

We don't want the committer timer to fire after the scrolling tree has been invalidated,
so stop the committer timer to prevent it from firing and trying to access the scrolling tree.

* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::pageDestroyed):

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

8 years ago[WIN] Allow compiling FileSystem without CoreFoundation.
paroga@webkit.org [Mon, 20 Feb 2012 17:11:44 +0000 (17:11 +0000)]
[WIN] Allow compiling FileSystem without CoreFoundation.
https://bugs.webkit.org/show_bug.cgi?id=79032

Reviewed by Adam Roben.

Add #if USE(CF) around code using the CoreFoundation functions.

* platform/FileSystem.h:
* platform/win/FileSystemWin.cpp:

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

8 years ago[Qt] run-qtwebkit-tests doesn't consider timeouts as failures
ossy@webkit.org [Mon, 20 Feb 2012 16:57:51 +0000 (16:57 +0000)]
[Qt] run-qtwebkit-tests doesn't consider timeouts as failures
https://bugs.webkit.org/show_bug.cgi?id=71816

RunQtAPITests will notify if a timeout occurs during testing.
Added unittest to the master.cfg

Patch by János Badics <dicska@gmail.com> on 2012-02-20
Reviewed by Csaba Osztrogonác.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunQtAPITests.evaluateCommand):
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(RunQtAPITestsTest):
(RunQtAPITestsTest.assertResults):
(RunQtAPITestsTest.test_timeout):
(test_success):
(test_failure):
(test_timeout_and_failure):

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

8 years ago[BlackBerry] Upstream the first few files in platform/graphics/blackberry
commit-queue@webkit.org [Mon, 20 Feb 2012 16:50:26 +0000 (16:50 +0000)]
[BlackBerry] Upstream the first few files in platform/graphics/blackberry
https://bugs.webkit.org/show_bug.cgi?id=79023

Patch by Robin Cao <robin.cao@torchmobile.com.cn> on 2012-02-20
Reviewed by Antonio Gomes.

Initial upstreaming, no new tests.

* platform/graphics/blackberry/FloatPointBlackBerry.cpp: Added.
(WebCore):
(WebCore::FloatPoint::FloatPoint):
(WebCore::FloatPoint::operator BlackBerry::Platform::FloatPoint):
* platform/graphics/blackberry/FloatRectBlackBerry.cpp: Added.
(WebCore):
(WebCore::FloatRect::FloatRect):
(WebCore::FloatRect::operator BlackBerry::Platform::FloatRect):
* platform/graphics/blackberry/FloatSizeBlackBerry.cpp: Added.
(WebCore):
(WebCore::FloatSize::FloatSize):
(WebCore::FloatSize::operator BlackBerry::Platform::FloatSize):
* platform/graphics/blackberry/IntPointBlackBerry.cpp: Added.
(WebCore):
(WebCore::IntPoint::IntPoint):
(WebCore::IntPoint::operator BlackBerry::Platform::IntPoint):
* platform/graphics/blackberry/IntRectBlackBerry.cpp: Added.
(WebCore):
(WebCore::IntRect::IntRect):
(WebCore::IntRect::operator BlackBerry::Platform::IntRect):
* platform/graphics/blackberry/IntSizeBlackBerry.cpp: Added.
(WebCore):
(WebCore::IntSize::IntSize):
(WebCore::IntSize::operator BlackBerry::Platform::IntSize):

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

8 years ago2012-02-19 Antonio Gomes <agomes@rim.com>
tonikitoo@webkit.org [Mon, 20 Feb 2012 16:43:29 +0000 (16:43 +0000)]
2012-02-19  Antonio Gomes  <agomes@rim.com>

        All default video/audio control elements should be rect-hit testable (Part II)
        PR #139518 / MKS_3005538

        Reviewed by George Staikos.

        Add HTMLInputElement::isMediaControlElement as a criteria
        to consider a element as clickable.

        Note that is should be only used while in the "ClickableByDefault"
        phase of FatFingers.

        * WebKitSupport/FatFingers.cpp:
        (BlackBerry::WebKit::FatFingers::isElementClickable):

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

8 years ago[WIN] Share openTemporaryFile with WinCE
paroga@webkit.org [Mon, 20 Feb 2012 16:40:24 +0000 (16:40 +0000)]
[WIN] Share openTemporaryFile with WinCE
https://bugs.webkit.org/show_bug.cgi?id=58750

Reviewed by Adam Roben.

Use pathByAppendingComponent instead of PathCombine to share the
code with WinCE. Also use the wide version of Windows functions.

* platform/win/FileSystemWin.cpp:
(WebCore::openTemporaryFile):

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

8 years agoUnreviewed. Rolled DEPS.
peter@chromium.org [Mon, 20 Feb 2012 15:23:14 +0000 (15:23 +0000)]
Unreviewed.  Rolled DEPS.

* DEPS:

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

8 years agoSource/WebCore: Added code to support dispatching of missed cues in case of normal...
commit-queue@webkit.org [Mon, 20 Feb 2012 15:02:09 +0000 (15:02 +0000)]
Source/WebCore: Added code to support dispatching of missed cues in case of normal playback
and event sorting in case of simultaneous event triggering.

<track>-related events cuechange, enter, and exit should be sorted and filtered before dispatching
https://bugs.webkit.org/show_bug.cgi?id=72171

Patch by Victor Carbune <victor@rosedu.org> on 2012-02-20
Reviewed by Eric Carlson.

Tests: media/track/track-cues-missed.html
       media/track/track-cues-sorted-before-dispatch.html

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement): Added initialization code
for newly added state variables.
(WebCore::trackIndexCompare): Static boolean compare function between
the index of two tracks.
(WebCore):
(WebCore::eventTimeCueCompare): Static boolean compare function between
events associated with text track cues.
(WebCore::HTMLMediaElement::updateActiveTextTrackCues): Added code to
sort the events associated with text track cues before dispatching.
Each step from the specification is commented within the code.
(WebCore::HTMLMediaElement::finishSeek): Added a boolean variable that
is needed within the text track update function, to know whether a seek
event has occured before or not.
(WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Moved the update
call for text tracks at the beginning of the function instead of the end.
'ended' events for video should be dispatched after track specific events.
* html/HTMLMediaElement.h: Added variables to keep
state information required by the text track update algorithm (last time
the algorithm was run, and whether a seeking event has occured)
(HTMLMediaElement):

* html/LoadableTextTrack.cpp: Refactored fireCueChangeEvent method
(WebCore::LoadableTextTrack::fireCueChangeEvent): The method dispatches a
synchronous cue change event for the track element.
* html/LoadableTextTrack.h:
(LoadableTextTrack):
* html/TextTrack.cpp: Modified the fireCueChange method, cached track index.
(WebCore::TextTrack::TextTrack):
(WebCore::TextTrack::trackIndex): Cached the track index.
(WebCore):
(WebCore::TextTrack::invalidateTrackIndex): Invalidates the track. Used
when a new track is added in a TextTrackList instance.
* html/TextTrack.h:
(TextTrack):
(WebCore::TextTrack::fireCueChangeEvent): The fireCueChangeEvent has been changed,
as events need to be fired asyncronously.
* html/TextTrackCue.cpp: Added internal variables to keep the current index
position in the track cue order. This is invalidated when an element is
inserted before.
(WebCore::TextTrackCue::TextTrackCue):
(WebCore::TextTrackCue::cueIndex): Getter for the cueIndex.
(WebCore):
(WebCore::TextTrackCue::invalidateCueIndex): Invalidates the currently stored
cue index.
(WebCore::TextTrackCue::dispatchEvent): Event dispatching is done asynchronously
now. This should be the only method used for event dispatching.
(WebCore::TextTrackCue::setIsActive): The setIsActive method no longer dispatches
events, but rather just changes the m_isActive variable.
* html/TextTrackCue.h:
(TextTrackCue):

* html/TextTrackCueList.cpp:
(WebCore::TextTrackCueList::getCueIndex): Retrieves the cue index, in the track cue
order, of a given cue.
(WebCore):
(WebCore::TextTrackCueList::add): Modified the add method such that all the next cue
indexes are invalidated.
(WebCore::TextTrackCueList::invalidateCueIndexes): Invalidates all cue indexes starting
with a specific position.
* html/TextTrackCueList.h:
(TextTrackCueList):
* html/track/TextTrackList.cpp:
(TextTrackList::getTrackIndex): Retrieves the track index position.
(TextTrackList::append): Added method for invalidating the text track index in case of
changing the list contents.
* html/track/TextTrackList.h:
(TextTrackList):

LayoutTests: <track>-related events cuechange, enter, and exit should be sorted and filtered before dispatching
https://bugs.webkit.org/show_bug.cgi?id=72171

Patch by Victor Carbune <victor@rosedu.org> on 2012-02-20
Reviewed by Eric Carlson.

* media/track/captions-webvtt/missed-cues.vtt: Added.
* media/track/captions-webvtt/sorted-dispatch.vtt: Added.
* media/track/track-cues-cuechange-expected.txt: This test had to be changed because
the synchronous dispatch of the events against the HTMLTrackElement doesn't mean that
the text track actually has any active cues at the dispatch moment.
* media/track/track-cues-cuechange.html: Changed tests structure to guide the entering and
exit events according to the asynchronous dispatch done by TextTrack.
* media/track/track-cues-missed-expected.txt: Added.
* media/track/track-cues-missed.html: Added.
* media/track/track-cues-sorted-before-dispatch-expected.txt: Added.
* media/track/track-cues-sorted-before-dispatch.html: Added.

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

8 years ago[WebSocket] Move WebSocketChannel::FrameData into a separate header file
bashi@chromium.org [Mon, 20 Feb 2012 14:54:49 +0000 (14:54 +0000)]
[WebSocket] Move WebSocketChannel::FrameData into a separate header file
https://bugs.webkit.org/show_bug.cgi?id=78682

Extract WebSocketChannel::FrameData as WebSocketFrame. This brings
flexibility to add classes which want to do something for
incoming/outgoing frames (e.g. compression/decompression).

Reviewed by Kent Tamura.

No new tests. No behavior change.

* GNUmakefile.list.am: AddedWebSocketFrame.h
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* websockets/WebSocketChannel.cpp: Modified to use WebSocketFrame instead of FrameData
(WebCore):
(WebCore::WebSocketChannel::send):
(WebCore::WebSocketChannel::startClosingHandshake):
(WebCore::WebSocketChannel::parseFrame):
(WebCore::WebSocketChannel::processFrame):
(WebCore::WebSocketChannel::enqueueTextFrame):
(WebCore::WebSocketChannel::enqueueRawFrame):
(WebCore::WebSocketChannel::enqueueBlobFrame):
(WebCore::appendMaskedFramePayload): Added.
(WebCore::makeFrameData): Added.
(WebCore::WebSocketChannel::sendFrame):
* websockets/WebSocketChannel.h: Removed FrameData.
(WebSocketChannel):
(QueuedFrame):
* websockets/WebSocketFrame.h: Added.
(WebCore):
(WebSocketFrame):
(WebCore::WebSocketFrame::isNonControlOpCode):
(WebCore::WebSocketFrame::isControlOpCode):
(WebCore::WebSocketFrame::isReservedOpCode):
(WebCore::WebSocketFrame::WebSocketFrame):

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

8 years ago32-bit build fix
aroben@apple.com [Mon, 20 Feb 2012 14:53:08 +0000 (14:53 +0000)]
32-bit build fix

* platform/FractionalLayoutUnit.h:
(WebCore::FractionalLayoutUnit::setRawValue): Explicitly cast long long to int, since they
are different widths in 32-bit.

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

8 years agoClang build fix
aroben@apple.com [Mon, 20 Feb 2012 14:51:17 +0000 (14:51 +0000)]
Clang build fix

* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::willModifyDOMAttr): Removed unused parameter.

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

8 years agoUnreviewed manual rollout of r107970 which breaks table column widths
vsevik@chromium.org [Mon, 20 Feb 2012 14:03:14 +0000 (14:03 +0000)]
Unreviewed manual rollout of r107970 which breaks table column widths
updates from javascript (e.g. inspector's network panel).

Source/WebCore:

* rendering/FixedTableLayout.cpp:
(WebCore::FixedTableLayout::calcWidthArray):
* rendering/RenderTableCol.h:
(RenderTableCol):

LayoutTests:

* css2.1/20110323/fixed-table-layout-013-expected.html: Removed.
* css2.1/20110323/fixed-table-layout-013.htm: Removed.
* css2.1/20110323/fixed-table-layout-015-expected.html: Removed.
* css2.1/20110323/fixed-table-layout-015.htm: Removed.

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

8 years agoWeb Inspector: [Styles] Inconsistent alignment of non-parsed properties (having an...
apavlov@chromium.org [Mon, 20 Feb 2012 13:42:14 +0000 (13:42 +0000)]
Web Inspector: [Styles] Inconsistent alignment of non-parsed properties (having an exclamation mark)
https://bugs.webkit.org/show_bug.cgi?id=79028

Reviewed by Yury Semikhatsky.

* inspector/front-end/elementsPanel.css:
(.styles-section .properties li.not-parsed-ok img.exclamation-mark):

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

8 years agoWeb Inspector: DOMAttrModified should not be fired if the attribute value remains...
apavlov@chromium.org [Mon, 20 Feb 2012 13:11:40 +0000 (13:11 +0000)]
Web Inspector: DOMAttrModified should not be fired if the attribute value remains the same
https://bugs.webkit.org/show_bug.cgi?id=79025

Reviewed by Pavel Feldman.

Source/WebCore:

* dom/Element.cpp:
(WebCore::Element::willModifyAttribute):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::InspectorDOMAgent):
(WebCore::InspectorDOMAgent::willModifyDOMAttr):
(WebCore):
(WebCore::InspectorDOMAgent::didModifyDOMAttr):
* inspector/InspectorDOMAgent.h:
(InspectorDOMAgent):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willModifyDOMAttr):

LayoutTests:

* inspector/elements/set-attribute-expected.txt:
* inspector/elements/set-attribute.html:

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

8 years agoFix ChangeLog from last commit.
wingo@igalia.com [Mon, 20 Feb 2012 13:00:22 +0000 (13:00 +0000)]
Fix ChangeLog from last commit.

* ChangeLog: Quick fix to date and email address.

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

8 years ago2012-02-120 Andy Wingo <wingo@pobox.com>
wingo@igalia.com [Mon, 20 Feb 2012 12:49:41 +0000 (12:49 +0000)]
2012-02-120  Andy Wingo  <wingo@pobox.com>

Remove unused features from CodeFeatures
https://bugs.webkit.org/show_bug.cgi?id=78804

Reviewed by Gavin Barraclough.

* parser/Nodes.h:
* parser/ASTBuilder.h:
(JSC::ClosureFeature):
(JSC::ASTBuilder::createFunctionBody):
(JSC::ASTBuilder::usesClosures):
Remove "ClosureFeature".  Since we track captured variables more
precisely, this bit doesn't do us any good.

(JSC::AssignFeature):
(JSC::ASTBuilder::makeAssignNode):
(JSC::ASTBuilder::makePrefixNode):
(JSC::ASTBuilder::makePostfixNode):
(JSC::ASTBuilder::usesAssignment):
Similarly, remove AssignFeature.  It is unused.

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

8 years ago[Qt][WK2] Implement proxy authentication handling.
commit-queue@webkit.org [Mon, 20 Feb 2012 12:25:14 +0000 (12:25 +0000)]
[Qt][WK2] Implement proxy authentication handling.
https://bugs.webkit.org/show_bug.cgi?id=78792

Patch by Michael Brüning <michael.bruning@nokia.com> on 2012-02-20
Reviewed by Simon Hausmann.

This patch implements the proxy authentication handling
for the Qt port in a similar matter to the http authentication
implementation.

Since there is a need to pass the proxy port, which is of type uint16_t,
from the WebProcess to the UIProcess, an encoder and a decoder for
this type was added because it did not exist.

The message that was added to the WebPageProxy is called synchronously
as this is needed by the implementation of the network access manager
and has also been implemented this way already for the http
authentication.

* Platform/CoreIPC/ArgumentDecoder.cpp:
(CoreIPC::ArgumentDecoder::decodeUInt16):
(CoreIPC):
* Platform/CoreIPC/ArgumentDecoder.h:
(ArgumentDecoder):
(CoreIPC::ArgumentDecoder::decode):
(CoreIPC):
* Platform/CoreIPC/ArgumentEncoder.cpp:
(CoreIPC::ArgumentEncoder::encodeUInt16):
(CoreIPC):
* Platform/CoreIPC/ArgumentEncoder.h:
(ArgumentEncoder):
(CoreIPC::ArgumentEncoder::encode):
(CoreIPC):
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::handleProxyAuthenticationRequiredRequest):
(QQuickWebViewExperimental::proxyAuthenticationDialog):
(QQuickWebViewExperimental::setProxyAuthenticationDialog):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):
* UIProcess/PageClient.h:
(PageClient):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::proxyAuthenticationRequiredRequest):
(WebKit):
* UIProcess/WebPageProxy.h:
(WebPageProxy):
* UIProcess/WebPageProxy.messages.in:
* UIProcess/qt/QtDialogRunner.cpp:
(ProxyAuthenticationDialogContextObject):
(ProxyAuthenticationDialogContextObject::ProxyAuthenticationDialogContextObject):
(ProxyAuthenticationDialogContextObject::hostname):
(ProxyAuthenticationDialogContextObject::port):
(ProxyAuthenticationDialogContextObject::prefilledUsername):
(ProxyAuthenticationDialogContextObject::accept):
(ProxyAuthenticationDialogContextObject::reject):
(QtDialogRunner::initForProxyAuthentication):
* UIProcess/qt/QtDialogRunner.h:
(QtDialogRunner):
* UIProcess/qt/QtPageClient.cpp:
(QtPageClient::handleProxyAuthenticationRequiredRequest):
* UIProcess/qt/QtPageClient.h:
(QtPageClient):
* WebProcess/WebPage/DecoderAdapter.cpp:
(WebKit::DecoderAdapter::decodeUInt16):
(WebKit):
* WebProcess/WebPage/DecoderAdapter.h:
(DecoderAdapter):
* WebProcess/WebPage/EncoderAdapter.cpp:
(WebKit::EncoderAdapter::encodeUInt16):
(WebKit):
* WebProcess/WebPage/EncoderAdapter.h:
(EncoderAdapter):
* WebProcess/qt/QtNetworkAccessManager.cpp:
(WebKit::QtNetworkAccessManager::onProxyAuthenticationRequired):
(WebKit):
* WebProcess/qt/QtNetworkAccessManager.h:
(QtNetworkAccessManager):

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

8 years agoAdd wingo as a committer.
wingo@igalia.com [Mon, 20 Feb 2012 12:16:23 +0000 (12:16 +0000)]
Add wingo as a committer.

Unreviewed.

* Scripts/webkitpy/common/config/committers.py: Add myself to the
committers list.

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

8 years agoCorrect a typo error in ScrollingCoordinator.h
commit-queue@webkit.org [Mon, 20 Feb 2012 11:44:41 +0000 (11:44 +0000)]
Correct a typo error in ScrollingCoordinator.h
https://bugs.webkit.org/show_bug.cgi?id=79012

Patch by Kwonjin Jeong <gram@company100.net> on 2012-02-20
Reviewed by Andreas Kling.

* page/scrolling/ScrollingCoordinator.h:
(ScrollingCoordinator):

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

8 years agoWeb Inspector: [Styles] box-shadow and -webkit-box-shadow properties are not consider...
apavlov@chromium.org [Mon, 20 Feb 2012 10:50:55 +0000 (10:50 +0000)]
Web Inspector: [Styles] box-shadow and -webkit-box-shadow properties are not considered color-aware
https://bugs.webkit.org/show_bug.cgi?id=78988

Reviewed by Yury Semikhatsky.

* inspector/front-end/CSSKeywordCompletions.js:

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

8 years ago[Forms] Spin buttons of number input type should fire both input and change event
commit-queue@webkit.org [Mon, 20 Feb 2012 10:47:55 +0000 (10:47 +0000)]
[Forms] Spin buttons of number input type should fire both input and change event
https://bugs.webkit.org/show_bug.cgi?id=75067

Patch by Yosifumi Inoue <yosin@chromium.org> on 2012-02-20
Reviewed by Kent Tamura.

Source/WebCore:

This patch makes spin button in number input field clicks to fire input and change events as described in WHATWG HTML5 specification.
To implement this behavior, this patch introduces new value DispatchInputAndChangeEvent in TextFieldEventBehavior.

Test: fast/forms/number/spin-button-events.html

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::stepUpFromRenderer): Pass DispatchInputAndChangeEvent instead of DispatchChangeEvent to applyStep, setValue, and setValueAsNumber.
* html/HTMLTextFormControlElement.h: Add new enum value DispatchInputAndChangeEvent to TextFieldEventBehavior.
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::setValue): Handle DispatchInputAndChangeEvent and use RefPtr for element to keep reference.

LayoutTests:

* fast/forms/number/spin-button-events-expected.txt: Added.
* fast/forms/number/spin-button-events.html: Added.

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

8 years ago[CMake] Update and sort list of source files.
paroga@webkit.org [Mon, 20 Feb 2012 10:15:33 +0000 (10:15 +0000)]
[CMake] Update and sort list of source files.

* CMakeLists.txt:

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

8 years agoAttached/Detached state must be testable
shinyak@chromium.org [Mon, 20 Feb 2012 09:33:15 +0000 (09:33 +0000)]
Attached/Detached state must be testable
https://bugs.webkit.org/show_bug.cgi?id=79010

Reviewed by Hajime Morita.

Source/WebCore:

Added a method to check an element attached or not.

Test: fast/dom/shadow/shadow-root-attached.html

* testing/Internals.cpp:
(WebCore::Internals::attached):
(WebCore):
* testing/Internals.h:
(Internals):
* testing/Internals.idl:

LayoutTests:

* fast/dom/shadow/shadow-root-attached-expected.txt: Added.
* fast/dom/shadow/shadow-root-attached.html: Added.

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

8 years ago[chromium] check that we're not running multiple modal dialogs at the same time
jochen@chromium.org [Mon, 20 Feb 2012 09:30:24 +0000 (09:30 +0000)]
[chromium] check that we're not running multiple modal dialogs at the same time
https://bugs.webkit.org/show_bug.cgi?id=78486

Reviewed by Kent Tamura.

* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::TestShell):
* DumpRenderTree/chromium/TestShell.h:
(TestShell::setIsDisplayingModalDialog):
(TestShell::isDisplayingModalDialog):
(TestShell):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::runModal):

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

8 years agoFix WebKit2GTK+ for 'make distcheck'.
mrobinson@webkit.org [Mon, 20 Feb 2012 09:12:46 +0000 (09:12 +0000)]
Fix WebKit2GTK+ for 'make distcheck'.

Instead of conditionally including WebKit2 GNUmakefiles, always
include them and conditionally activate the final targets.

.:

* GNUmakefile.am:

Source/WebKit2:

* GNUmakefile.am:
* UIProcess/API/gtk/tests/GNUmakefile.am:

Tools:

* MiniBrowser/gtk/GNUmakefile.am:
* WebKitTestRunner/GNUmakefile.am:

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

8 years ago[WebSocket] Add deflater/inflater classes
bashi@chromium.org [Mon, 20 Feb 2012 08:59:42 +0000 (08:59 +0000)]
[WebSocket] Add deflater/inflater classes
https://bugs.webkit.org/show_bug.cgi?id=78449

Source/WebCore:

Add WebSocketDeflater/WebSocketInflater classes which wrap zlib
functions. These classes are not used yet, but will be used for
supporting WebSocket deflate-frame extension.

This patch is second try. The previous patch broke Chromium Win
build. I added dependency of zlib to WebCore.gyp. I think it's
OK because Chromium already depends on zlib.

Reviewed by Kent Tamura.

No new tests except for chromium port. Behavior is unchanged.

* GNUmakefile.list.am: Added WebSocketDeflater.(cpp|h).
* WebCore.gyp/WebCore.gyp: Added zlib dependency.
* WebCore.gypi: Added WebSocketDeflater.(cpp|h).
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* websockets/WebSocketDeflater.cpp: Added.
(WebCore):
(WebCore::WebSocketDeflater::create):
(WebCore::WebSocketDeflater::WebSocketDeflater):
(WebCore::WebSocketDeflater::initialize):
(WebCore::WebSocketDeflater::~WebSocketDeflater):
(WebCore::setStreamParameter):
(WebCore::WebSocketDeflater::addBytes):
(WebCore::WebSocketDeflater::finish):
(WebCore::WebSocketDeflater::reset):
(WebCore::WebSocketInflater::create):
(WebCore::WebSocketInflater::WebSocketInflater):
(WebCore::WebSocketInflater::initialize):
(WebCore::WebSocketInflater::~WebSocketInflater):
(WebCore::WebSocketInflater::addBytes):
(WebCore::WebSocketInflater::finish):
(WebCore::WebSocketInflater::reset):
* websockets/WebSocketDeflater.h: Added.
(WebCore):
(WebSocketDeflater):
(WebCore::WebSocketDeflater::data):
(WebCore::WebSocketDeflater::size):
(WebSocketInflater):
(WebCore::WebSocketInflater::data):
(WebCore::WebSocketInflater::size):

Source/WebKit/chromium:

Add tests which ensure WebSocketDeflater/WebSocketInflater can
compress/decompress data correctly.

Reviewed by Kent Tamura.

* WebKit.gypi: Added zlib dependency.
* WebKitUnitTests.gyp: Ditto.
* tests/WebSocketDeflaterTest.cpp: Added.
(WebCore):
(WebCore::TEST):

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

8 years agoWeb Inspector: consume undo/redo shortcuts.
pfeldman@chromium.org [Mon, 20 Feb 2012 08:40:15 +0000 (08:40 +0000)]
Web Inspector: consume undo/redo shortcuts.
https://bugs.webkit.org/show_bug.cgi?id=79016

Reviewed by Vsevolod Vlasov.

* inspector/front-end/ElementsPanel.js:
(WebInspector.ElementsPanel.prototype.handleShortcut):

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

8 years agoEnable video option for EFL port in build-webkit.
gyuyoung.kim@samsung.com [Mon, 20 Feb 2012 08:39:58 +0000 (08:39 +0000)]
Enable video option for EFL port in build-webkit.
https://bugs.webkit.org/show_bug.cgi?id=79006

Reviewed by Daniel Bates.

* Scripts/build-webkit:

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

8 years ago[GTK][WK2] WebKit2 does not build if gtk-unix-printing-3.0 is not available
mrobinson@webkit.org [Mon, 20 Feb 2012 08:38:05 +0000 (08:38 +0000)]
[GTK][WK2] WebKit2 does not build if gtk-unix-printing-3.0 is not available
https://bugs.webkit.org/show_bug.cgi?id=79011

Fix the build when gtk-unix-printing-3.0 is not present.

* UIProcess/API/gtk/WebKitPrintOperation.cpp:
(webkitPrintOperationRunDialog):
(webkitPrintOperationRunDialogForFrame):
* WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
(WebKit::WebPrintOperationGtk::create):

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

8 years agoMediaPlayer: MediaPlayerPrivate registration cleanup
philn@webkit.org [Mon, 20 Feb 2012 08:37:23 +0000 (08:37 +0000)]
MediaPlayer: MediaPlayerPrivate registration cleanup
https://bugs.webkit.org/show_bug.cgi?id=78897

Reviewed by Martin Robinson.

* platform/graphics/MediaPlayer.cpp:
(WebCore::installedMediaEngines): Simplified GStreamer Private
player registration by using the PlatformMediaEngineClassName
macro like other players do.

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

8 years agoUnreviewed, GTK baselines for a new fast/css-generated-content
philn@webkit.org [Mon, 20 Feb 2012 08:34:54 +0000 (08:34 +0000)]
Unreviewed, GTK baselines for a new fast/css-generated-content
test.

* platform/gtk/fast/css-generated-content/before-content-continuation-chain-expected.txt: Added.

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

8 years agoUnreviewed, GTK fast/repaint rebaseline.
philn@webkit.org [Mon, 20 Feb 2012 08:28:49 +0000 (08:28 +0000)]
Unreviewed, GTK fast/repaint rebaseline.

* platform/gtk/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt:
* platform/gtk/fast/repaint/line-flow-with-floats-in-regions-expected.txt:
* platform/gtk/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt:
* platform/gtk/fast/repaint/region-painting-via-layout-expected.txt:

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

8 years ago[Chromium] Web Inspector: terminated workers are not removed from dedicated worker...
yurys@chromium.org [Mon, 20 Feb 2012 07:51:27 +0000 (07:51 +0000)]
[Chromium] Web Inspector: terminated workers are not removed from dedicated worker list
https://bugs.webkit.org/show_bug.cgi?id=78899

Source/WebCore:

Notify inspector about starting context from WorkerContextProxy not from Worker.

Reviewed by Pavel Feldman.

* workers/Worker.cpp:
(WebCore::Worker::notifyFinished):
* workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::startWorkerContext):

Source/WebKit/chromium:

Pass original WorkerContextProxy object to the inspector instrumentation instead
of Chromium-specific one for consistency with WorkerMessagingProxy implementation
in WebCore.

Reviewed by Pavel Feldman.

* src/WebWorkerClientImpl.cpp:
(WebKit::WebWorkerClientImpl::startWorkerContext):

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

8 years ago[CMAKE] Check gstreamer minimum required version.
gyuyoung.kim@samsung.com [Mon, 20 Feb 2012 07:41:56 +0000 (07:41 +0000)]
[CMAKE] Check gstreamer minimum required version.
https://bugs.webkit.org/show_bug.cgi?id=79005

Reviewed by Daniel Bates.

To enable video, Gstreamer version requires to be above 0.10.30.
This patch checks whether Gstreamer version is greater than 0.10.30.

* Source/cmake/FindGStreamer-App.cmake:
* Source/cmake/FindGStreamer-Base.cmake:
* Source/cmake/FindGStreamer-Interfaces.cmake:
* Source/cmake/FindGStreamer-Pbutils.cmake:
* Source/cmake/FindGStreamer-Plugins-Base.cmake:
* Source/cmake/FindGStreamer-Video.cmake:
* Source/cmake/FindGStreamer.cmake:

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

8 years ago[Chromium] Unreviewed, update a few test expectations.
yutak@chromium.org [Mon, 20 Feb 2012 07:03:33 +0000 (07:03 +0000)]
[Chromium] Unreviewed, update a few test expectations.

* platform/chromium/test_expectations.txt:

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

8 years agoUse shadowRootList for ColorInputType
keishi@webkit.org [Mon, 20 Feb 2012 06:17:31 +0000 (06:17 +0000)]
Use shadowRootList for ColorInputType
https://bugs.webkit.org/show_bug.cgi?id=79007

Reviewed by Kent Tamura.

* html/ColorInputType.cpp:
(WebCore::ColorInputType::createShadowSubtree): Changed shadowRoot to shadowRootList.
(WebCore::ColorInputType::shadowColorSwatch): Changed shadowRoot to shadowRootList.

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

8 years ago[chromium] Unreviewed. Update remaining expectations for SVGImageElement-svgdom-requi...
noel.gordon@gmail.com [Mon, 20 Feb 2012 06:06:07 +0000 (06:06 +0000)]
[chromium] Unreviewed. Update remaining expectations for SVGImageElement-svgdom-requiredFeatures.html.

* platform/chromium-linux/svg/dynamic-updates/SVGUseElement-svgdom-requiredFeatures-expected.png:
* platform/chromium-mac-leopard/svg/dynamic-updates/SVGUseElement-svgdom-requiredFeatures-expected.png:
* platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGUseElement-svgdom-requiredFeatures-expected.png: Added.
* platform/chromium-mac/svg/dynamic-updates/SVGUseElement-svgdom-requiredFeatures-expected.png: Removed.
* platform/chromium-win/svg/dynamic-updates/SVGUseElement-svgdom-requiredFeatures-expected.png:
* platform/chromium/test_expectations.txt:

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

8 years agoIntroduce InsertionPoint, which will be a common base class of HTMLShadowElement...
shinyak@chromium.org [Mon, 20 Feb 2012 06:00:35 +0000 (06:00 +0000)]
Introduce InsertionPoint, which will be a common base class of HTMLShadowElement and HTMLContentElement.
https://bugs.webkit.org/show_bug.cgi?id=78771

Reviewed by Hajime Morita.

This patch introduces InsertionPoint, which will be a common base class of HTMLShadowElement and HTMLContentElement.

This is a step for rendering <shadow> correctly, because <shadow> has almost the same function of <content>.
After this patch, we will change NodeRenderingContext and related classes to accept InsertionPoint instead of
HTMLContentElement only.

No new tests, no change in behavior.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* html/shadow/HTMLContentElement.cpp:
(WebCore::HTMLContentElement::HTMLContentElement):
(WebCore::HTMLContentElement::attach):
(WebCore::HTMLContentElement::detach):
(WebCore::HTMLContentElement::parseAttribute):
* html/shadow/HTMLContentElement.h:
* html/shadow/InsertionPoint.cpp: Added.
(WebCore):
(WebCore::InsertionPoint::InsertionPoint):
(WebCore::InsertionPoint::~InsertionPoint):
* html/shadow/InsertionPoint.h: Added.
(WebCore):
(InsertionPoint):

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

8 years ago[GTK] Can't find webinspector and error page redirection on Windows
commit-queue@webkit.org [Mon, 20 Feb 2012 05:24:14 +0000 (05:24 +0000)]
[GTK] Can't find webinspector and error page redirection on Windows
https://bugs.webkit.org/show_bug.cgi?id=51616

Source/WebCore:

Create and use an abstraction for finding shared resources on Windows.

Patch by Paweł Forysiuk <tuxator@o2.pl> on 2012-02-19
Reviewed by Martin Robinson.

* platform/FileSystem.h:
(WebCore):
* platform/audio/gtk/AudioBusGtk.cpp:
(WebCore::AudioBus::loadPlatformResource):
* platform/graphics/gtk/ImageGtk.cpp:
(WebCore::getPathToImageResource):
* platform/gtk/FileSystemGtk.cpp:
(WebCore::sharedResourcesPath):
(WebCore):

Source/WebKit/gtk:

Use an abstraction for finding shared resources on Windows.

Patch by Paweł Forysiuk <tuxator@o2.pl> on 2012-02-19
Reviewed by Martin Robinson.

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::dispatchDidFailLoad):
* WebCoreSupport/InspectorClientGtk.cpp:
(WebKit::InspectorClient::inspectorFilesPath):

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

8 years ago[Chromium] Unreviewed gardening. Update Leopard expectation for
yutak@chromium.org [Mon, 20 Feb 2012 04:22:22 +0000 (04:22 +0000)]
[Chromium] Unreviewed gardening. Update Leopard expectation for
SVGImageElement-svgdom-requiredFeatures.html.

* platform/chromium-mac-leopard/svg/dynamic-updates/SVGImageElement-svgdom-requiredFeatures-expected.png:

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

8 years ago[chromium] Unreviewed - mark failing test as failing.
jamesr@google.com [Mon, 20 Feb 2012 01:11:19 +0000 (01:11 +0000)]
[chromium] Unreviewed - mark failing test as failing.

* platform/chromium/test_expectations.txt:

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

8 years ago[chromium] Unreviewed gardening. Add leopard baselines for fast/css/relative-position...
jamesr@google.com [Mon, 20 Feb 2012 00:04:54 +0000 (00:04 +0000)]
[chromium] Unreviewed gardening. Add leopard baselines for fast/css/relative-positioned-block-* tests, fix up test_expectations.txt

* platform/chromium-mac-leopard/fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-removed-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/relative-positioned-block-nested-with-inline-parent-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/relative-positioned-block-nested-with-inline-parent-multiple-descendant-blocks-dynamic-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/relative-positioned-block-with-inline-ancestor-and-parent-dynamic-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/relative-positioned-block-with-inline-ancestor-dynamic-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/relative-positioned-block-with-inline-ancestor-dynamic-removed-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/relative-positioned-block-with-inline-ancestor-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/relative-positioned-block-with-inline-parent-dynamic-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/relative-positioned-block-with-inline-parent-dynamic-removed-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/relative-positioned-block-with-inline-parent-keeps-style-expected.png: Added.
* platform/chromium/test_expectations.txt:

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

8 years agoMove stub implementations of ScrollingCoordinator functions into ScrollingCoordinator...
jamesr@google.com [Sun, 19 Feb 2012 23:51:39 +0000 (23:51 +0000)]
Move stub implementations of ScrollingCoordinator functions into ScrollingCoordinatorNone.cpp
https://bugs.webkit.org/show_bug.cgi?id=78951

Reviewed by Adam Barth.

This move stubs for ScrollingCoordinator functions into ScrollingCoordinatorNone.cpp instead of #ifdefing inside
ScrollingCoordinator.cpp.  The mac port uses ScrollingCoordinator when #if ENABLE(THREADED_SCROLLING) is not set
and implementations in ScrollingCoordinator.cpp / ScrollingCoordinatorMac.mm otherwise.  The chromium port
always uses implementations in ScrollingCoordinatorChromium.cpp.  All other ports use
ScrollingCoordinatorNone.cpp.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbx:
* page/scrolling/ScrollingCoordinator.cpp:
* page/scrolling/ScrollingCoordinatorNone.cpp:
(WebCore):
(WebCore::ScrollingCoordinator::create):
(WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
(WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
(WebCore::ScrollingCoordinator::setScrollLayer):
(WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinator::setScrollParameters):
(WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinator::create):
(WebCore):

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

8 years agoRename [CheckDomainSecurity] to [CheckSecurity]
haraken@chromium.org [Sun, 19 Feb 2012 23:47:10 +0000 (23:47 +0000)]
Rename [CheckDomainSecurity] to [CheckSecurity]
https://bugs.webkit.org/show_bug.cgi?id=78874

Reviewed by Adam Barth.

"Domain security" isn't a term that's used elsewhere.
This patch renames IDL attributes as follows:

- [CheckDomainSecurity] => [CheckSecurity]
- [DoNotCheckDomainSecurity] => [DoNotCheckSecurity]
- [DoNotCheckDomainSecurityOnGetter] => [DoNotCheckSecurityOnGetter]
- [DoNotCheckDomainSecurityOnSetter] => [DoNotCheckSecurityOnSetter]

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertyDescriptorBody):
(GenerateImplementation):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
(IsVisibleAcrossOrigins):
(GenerateFunctionCallback):
(GenerateSingleBatchedAttribute):
(GenerateImplementation):
(GenerateToV8Converters):
* bindings/scripts/test/TestDomainSecurity.idl:
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):
* page/DOMWindow.idl:
* page/History.idl:
* page/Location.idl:

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

8 years agoUnreviewed, rolling out r108195.
jamesr@google.com [Sun, 19 Feb 2012 23:32:55 +0000 (23:32 +0000)]
Unreviewed, rolling out r108195.
http://trac.webkit.org/changeset/108195
https://bugs.webkit.org/show_bug.cgi?id=77700

Lots of failing ASSERT()s on v8 bots, requested by kling on
#webkit

Source/WebCore:

* bindings/js/JSCSSValueCustom.cpp:
(WebCore::toJS):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):

LayoutTests:

* fast/css/css-value-wrapper-sameness-expected.txt: Removed.
* fast/css/css-value-wrapper-sameness.html: Removed.
* fast/dom/StyleSheet/gc-inline-style-cssvalues-expected.txt: Added.
* fast/dom/StyleSheet/gc-inline-style-cssvalues.html: Added.
* fast/dom/domListEnumeration-expected.txt:
* fast/dom/gc-9-expected.txt:
* fast/dom/gc-9.html:
* fast/dom/script-tests/domListEnumeration.js:

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

8 years agoRename [CheckAccessToNode] to [CheckSecurityForNode]
haraken@chromium.org [Sun, 19 Feb 2012 23:30:47 +0000 (23:30 +0000)]
Rename [CheckAccessToNode] to [CheckSecurityForNode]
https://bugs.webkit.org/show_bug.cgi?id=78991

Reviewed by Adam Barth.

For naming consistency with [CheckSecurity], this patch renames
[CheckAccessToNode] to [CheckSecurityForNode].

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrGetter):
(GenerateFunctionCallback):
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore):
* html/HTMLEmbedElement.idl:
* html/HTMLFrameElement.idl:
* html/HTMLIFrameElement.idl:
* html/HTMLObjectElement.idl:
* page/DOMWindow.idl:

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

8 years agoSort WebCore XCode project files with sort-Xcode-project-files script. Unreviewed.
jamesr@google.com [Sun, 19 Feb 2012 23:24:35 +0000 (23:24 +0000)]
Sort WebCore XCode project files with sort-Xcode-project-files script. Unreviewed.

* WebCore.xcodeproj/project.pbxproj:

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