1. 05 Jul, 2012 40 commits
    • fpizlo@apple.com's avatar
      Inline property storage should not be wasted when it is exhausted · d68b1f84
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=90347
      
      Reviewed by Gavin Barraclough.
              
      Previously, if we switched an object from using inline storage to out-of-line
      storage, we would abandon the inline storage. This would have two main implications:
      (i) all accesses to the object, even for properties that were previously in inline
      storage, must now take an extra indirection; and (ii) we waste a non-trivial amount
      of space since we must allocate additional out-of-line storage to hold properties
      that would have fit in the inline storage. There's also the copying cost when
      switching to out-of-line storage - we must copy all inline properties into ouf-of-line
      storage.
              
      This patch changes the way that object property storage works so that we can use both
      inline and out-of-line storage concurrently. This is accomplished by introducing a
      new notion of property offset. This PropertyOffset is a 32-bit signed integer and it
      behaves as follows:
              
      offset == -1: invalid offset, indicating a property that does not exist.
              
      0 <= offset <= inlineStorageCapacity: offset into inline storage.
              
      inlineStorageCapacity < offset: offset into out-of-line storage.
              
      Because non-final objects don't have inline storage, the only valid PropertyOffsets
      for those objects' properties are -1 or > inlineStorageCapacity.
              
      This now means that the decision to use inline or out-of-line storage for an access is
      made based on the offset, rather than the structure. It also means that any access
      where the offset is a variable must have an extra branch, unless the type of the
      object is also known (if it's known to be a non-final object then we can just assert
      that the offset is >= inlineStorageCapacity).
              
      This looks like a big Kraken speed-up and a slight V8 speed-up.
      
      * GNUmakefile.list.am:
      * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
      * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * assembler/ARMv7Assembler.h:
      (ARMv7Assembler):
      (JSC::ARMv7Assembler::ldrWide8BitImmediate):
      (JSC::ARMv7Assembler::replaceWithLoad):
      (JSC::ARMv7Assembler::replaceWithAddressComputation):
      * assembler/AbstractMacroAssembler.h:
      (AbstractMacroAssembler):
      (ConvertibleLoadLabel):
      (JSC::AbstractMacroAssembler::ConvertibleLoadLabel::ConvertibleLoadLabel):
      (JSC::AbstractMacroAssembler::ConvertibleLoadLabel::isSet):
      (JSC::AbstractMacroAssembler::labelIgnoringWatchpoints):
      (JSC::AbstractMacroAssembler::replaceWithLoad):
      (JSC::AbstractMacroAssembler::replaceWithAddressComputation):
      * assembler/CodeLocation.h:
      (JSC):
      (CodeLocationCommon):
      (CodeLocationConvertibleLoad):
      (JSC::CodeLocationConvertibleLoad::CodeLocationConvertibleLoad):
      (JSC::CodeLocationCommon::convertibleLoadAtOffset):
      * assembler/LinkBuffer.cpp:
      (JSC::LinkBuffer::finalizeCodeWithDisassembly):
      * assembler/LinkBuffer.h:
      (LinkBuffer):
      (JSC::LinkBuffer::locationOf):
      * assembler/MacroAssemblerARMv7.h:
      (MacroAssemblerARMv7):
      (JSC::MacroAssemblerARMv7::convertibleLoadPtr):
      * assembler/MacroAssemblerX86.h:
      (JSC::MacroAssemblerX86::convertibleLoadPtr):
      (MacroAssemblerX86):
      * assembler/MacroAssemblerX86_64.h:
      (JSC::MacroAssemblerX86_64::convertibleLoadPtr):
      (MacroAssemblerX86_64):
      * assembler/RepatchBuffer.h:
      (RepatchBuffer):
      (JSC::RepatchBuffer::replaceWithLoad):
      (JSC::RepatchBuffer::replaceWithAddressComputation):
      (JSC::RepatchBuffer::setLoadInstructionIsActive):
      * assembler/X86Assembler.h:
      (JSC::X86Assembler::replaceWithLoad):
      (X86Assembler):
      (JSC::X86Assembler::replaceWithAddressComputation):
      * bytecode/CodeBlock.cpp:
      (JSC::CodeBlock::printGetByIdOp):
      (JSC::CodeBlock::dump):
      (JSC::CodeBlock::finalizeUnconditionally):
      * bytecode/GetByIdStatus.cpp:
      (JSC::GetByIdStatus::computeFromLLInt):
      (JSC::GetByIdStatus::computeForChain):
      (JSC::GetByIdStatus::computeFor):
      * bytecode/GetByIdStatus.h:
      (JSC::GetByIdStatus::GetByIdStatus):
      (JSC::GetByIdStatus::offset):
      (GetByIdStatus):
      * bytecode/Opcode.h:
      (JSC):
      (JSC::padOpcodeName):
      * bytecode/PutByIdStatus.cpp:
      (JSC::PutByIdStatus::computeFromLLInt):
      (JSC::PutByIdStatus::computeFor):
      * bytecode/PutByIdStatus.h:
      (JSC::PutByIdStatus::PutByIdStatus):
      (JSC::PutByIdStatus::offset):
      (PutByIdStatus):
      * bytecode/ResolveGlobalStatus.cpp:
      (JSC):
      (JSC::computeForStructure):
      * bytecode/ResolveGlobalStatus.h:
      (JSC::ResolveGlobalStatus::ResolveGlobalStatus):
      (JSC::ResolveGlobalStatus::offset):
      (ResolveGlobalStatus):
      * bytecode/StructureSet.h:
      (StructureSet):
      * bytecode/StructureStubInfo.h:
      * dfg/DFGByteCodeParser.cpp:
      (ByteCodeParser):
      (JSC::DFG::ByteCodeParser::handleGetByOffset):
      (JSC::DFG::ByteCodeParser::handleGetById):
      (JSC::DFG::ByteCodeParser::parseBlock):
      * dfg/DFGCapabilities.h:
      (JSC::DFG::canCompileOpcode):
      * dfg/DFGJITCompiler.cpp:
      (JSC::DFG::JITCompiler::link):
      * dfg/DFGJITCompiler.h:
      (JSC::DFG::PropertyAccessRecord::PropertyAccessRecord):
      (PropertyAccessRecord):
      * dfg/DFGRepatch.cpp:
      (JSC::DFG::dfgRepatchByIdSelfAccess):
      (JSC::DFG::generateProtoChainAccessStub):
      (JSC::DFG::tryCacheGetByID):
      (JSC::DFG::tryBuildGetByIDList):
      (JSC::DFG::tryBuildGetByIDProtoList):
      (JSC::DFG::emitPutReplaceStub):
      (JSC::DFG::emitPutTransitionStub):
      (JSC::DFG::tryCachePutByID):
      (JSC::DFG::tryBuildPutByIdList):
      * dfg/DFGSpeculativeJIT.h:
      (JSC::DFG::SpeculativeJIT::emitAllocateBasicJSObject):
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::cachedGetById):
      (JSC::DFG::SpeculativeJIT::cachedPutById):
      (JSC::DFG::SpeculativeJIT::compile):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::cachedGetById):
      (JSC::DFG::SpeculativeJIT::cachedPutById):
      (JSC::DFG::SpeculativeJIT::compile):
      * heap/MarkStack.cpp:
      (JSC::visitChildren):
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::tryCacheGetByID):
      (JSC::Interpreter::privateExecute):
      * jit/JIT.cpp:
      (JSC::JIT::privateCompileMainPass):
      (JSC::JIT::privateCompileSlowCases):
      (JSC::PropertyStubCompilationInfo::copyToStubInfo):
      * jit/JIT.h:
      (JSC::PropertyStubCompilationInfo::PropertyStubCompilationInfo):
      (JSC::JIT::compileGetByIdProto):
      (JSC::JIT::compileGetByIdSelfList):
      (JSC::JIT::compileGetByIdProtoList):
      (JSC::JIT::compileGetByIdChainList):
      (JSC::JIT::compileGetByIdChain):
      (JSC::JIT::compilePutByIdTransition):
      (JIT):
      * jit/JITInlineMethods.h:
      (JSC::JIT::emitAllocateBasicJSObject):
      * jit/JITOpcodes.cpp:
      (JSC::JIT::emit_op_resolve_global):
      * jit/JITOpcodes32_64.cpp:
      (JSC::JIT::emit_op_resolve_global):
      * jit/JITPropertyAccess.cpp:
      (JSC::JIT::compileGetDirectOffset):
      (JSC::JIT::emit_op_method_check):
      (JSC::JIT::compileGetByIdHotPath):
      (JSC::JIT::emit_op_put_by_id):
      (JSC::JIT::compilePutDirectOffset):
      (JSC::JIT::privateCompilePutByIdTransition):
      (JSC::JIT::patchGetByIdSelf):
      (JSC::JIT::patchPutByIdReplace):
      (JSC::JIT::privateCompileGetByIdProto):
      (JSC::JIT::privateCompileGetByIdSelfList):
      (JSC::JIT::privateCompileGetByIdProtoList):
      (JSC::JIT::privateCompileGetByIdChainList):
      (JSC::JIT::privateCompileGetByIdChain):
      * jit/JITPropertyAccess32_64.cpp:
      (JSC::JIT::emit_op_method_check):
      (JSC::JIT::compileGetByIdHotPath):
      (JSC::JIT::emit_op_put_by_id):
      (JSC::JIT::compilePutDirectOffset):
      (JSC::JIT::compileGetDirectOffset):
      (JSC::JIT::privateCompilePutByIdTransition):
      (JSC::JIT::patchGetByIdSelf):
      (JSC::JIT::patchPutByIdReplace):
      (JSC::JIT::privateCompileGetByIdProto):
      (JSC::JIT::privateCompileGetByIdSelfList):
      (JSC::JIT::privateCompileGetByIdProtoList):
      (JSC::JIT::privateCompileGetByIdChainList):
      (JSC::JIT::privateCompileGetByIdChain):
      (JSC::JIT::emit_op_get_by_pname):
      * jit/JITStubs.cpp:
      (JSC::JITThunks::tryCacheGetByID):
      (JSC::DEFINE_STUB_FUNCTION):
      * llint/LLIntSlowPaths.cpp:
      (JSC::LLInt::LLINT_SLOW_PATH_DECL):
      * llint/LowLevelInterpreter.asm:
      * llint/LowLevelInterpreter32_64.asm:
      * llint/LowLevelInterpreter64.asm:
      * offlineasm/x86.rb:
      * runtime/JSGlobalObject.h:
      (JSGlobalObject):
      (JSC::JSGlobalObject::functionNameOffset):
      * runtime/JSObject.cpp:
      (JSC::JSObject::visitChildren):
      (JSC):
      (JSC::JSFinalObject::visitChildren):
      (JSC::JSObject::put):
      (JSC::JSObject::deleteProperty):
      (JSC::JSObject::getPropertySpecificValue):
      (JSC::JSObject::removeDirect):
      (JSC::JSObject::growOutOfLineStorage):
      (JSC::JSObject::getOwnPropertyDescriptor):
      * runtime/JSObject.h:
      (JSObject):
      (JSC::JSObject::getDirect):
      (JSC::JSObject::getDirectLocation):
      (JSC::JSObject::hasInlineStorage):
      (JSC::JSObject::inlineStorageUnsafe):
      (JSC::JSObject::inlineStorage):
      (JSC::JSObject::outOfLineStorage):
      (JSC::JSObject::locationForOffset):
      (JSC::JSObject::offsetForLocation):
      (JSC::JSObject::getDirectOffset):
      (JSC::JSObject::putDirectOffset):
      (JSC::JSObject::putUndefinedAtDirectOffset):
      (JSC::JSObject::addressOfOutOfLineStorage):
      (JSC::JSObject::finishCreation):
      (JSC::JSNonFinalObject::JSNonFinalObject):
      (JSC::JSNonFinalObject::finishCreation):
      (JSFinalObject):
      (JSC::JSFinalObject::finishCreation):
      (JSC::JSFinalObject::JSFinalObject):
      (JSC::JSObject::offsetOfOutOfLineStorage):
      (JSC::JSObject::setOutOfLineStorage):
      (JSC::JSObject::JSObject):
      (JSC):
      (JSC::JSCell::fastGetOwnProperty):
      (JSC::JSObject::putDirectInternal):
      (JSC::JSObject::setStructureAndReallocateStorageIfNecessary):
      (JSC::JSObject::putDirectWithoutTransition):
      (JSC::offsetRelativeToPatchedStorage):
      (JSC::indexRelativeToBase):
      (JSC::offsetRelativeToBase):
      * runtime/JSPropertyNameIterator.cpp:
      (JSC::JSPropertyNameIterator::create):
      * runtime/JSPropertyNameIterator.h:
      (JSPropertyNameIterator):
      (JSC::JSPropertyNameIterator::getOffset):
      (JSC::JSPropertyNameIterator::finishCreation):
      * runtime/JSValue.cpp:
      (JSC::JSValue::putToPrimitive):
      * runtime/Operations.h:
      (JSC::normalizePrototypeChain):
      * runtime/Options.cpp:
      (JSC):
      (JSC::Options::initialize):
      * runtime/PropertyMapHashTable.h:
      (PropertyMapEntry):
      (JSC::PropertyMapEntry::PropertyMapEntry):
      (PropertyTable):
      (JSC::PropertyTable::PropertyTable):
      (JSC::PropertyTable::getDeletedOffset):
      (JSC::PropertyTable::addDeletedOffset):
      (JSC::PropertyTable::nextOffset):
      (JSC):
      (JSC::PropertyTable::sizeInMemory):
      * runtime/PropertyOffset.h: Added.
      (JSC):
      (JSC::checkOffset):
      (JSC::validateOffset):
      (JSC::isValidOffset):
      (JSC::isInlineOffset):
      (JSC::isOutOfLineOffset):
      (JSC::offsetInInlineStorage):
      (JSC::offsetInOutOfLineStorage):
      (JSC::offsetInRespectiveStorage):
      (JSC::numberOfOutOfLineSlotsForLastOffset):
      (JSC::numberOfSlotsForLastOffset):
      (JSC::nextPropertyOffsetFor):
      (JSC::firstPropertyOffsetFor):
      * runtime/PropertySlot.h:
      (JSC::PropertySlot::cachedOffset):
      (JSC::PropertySlot::setValue):
      (JSC::PropertySlot::setCacheableGetterSlot):
      (JSC::PropertySlot::clearOffset):
      * runtime/PutPropertySlot.h:
      (JSC::PutPropertySlot::setExistingProperty):
      (JSC::PutPropertySlot::setNewProperty):
      (JSC::PutPropertySlot::cachedOffset):
      (PutPropertySlot):
      * runtime/Structure.cpp:
      (JSC::Structure::Structure):
      (JSC::Structure::materializePropertyMap):
      (JSC::nextOutOfLineStorageCapacity):
      (JSC::Structure::growOutOfLineCapacity):
      (JSC::Structure::suggestedNewOutOfLineStorageCapacity):
      (JSC::Structure::addPropertyTransitionToExistingStructure):
      (JSC::Structure::addPropertyTransition):
      (JSC::Structure::removePropertyTransition):
      (JSC::Structure::flattenDictionaryStructure):
      (JSC::Structure::addPropertyWithoutTransition):
      (JSC::Structure::removePropertyWithoutTransition):
      (JSC::Structure::copyPropertyTableForPinning):
      (JSC::Structure::get):
      (JSC::Structure::putSpecificValue):
      (JSC::Structure::remove):
      * runtime/Structure.h:
      (Structure):
      (JSC::Structure::putWillGrowOutOfLineStorage):
      (JSC::Structure::previousID):
      (JSC::Structure::outOfLineCapacity):
      (JSC::Structure::outOfLineSizeForKnownFinalObject):
      (JSC::Structure::outOfLineSizeForKnownNonFinalObject):
      (JSC::Structure::outOfLineSize):
      (JSC::Structure::hasInlineStorage):
      (JSC::Structure::inlineCapacity):
      (JSC::Structure::inlineSizeForKnownFinalObject):
      (JSC::Structure::inlineSize):
      (JSC::Structure::totalStorageSize):
      (JSC::Structure::totalStorageCapacity):
      (JSC::Structure::firstValidOffset):
      (JSC::Structure::lastValidOffset):
      (JSC::Structure::isValidOffset):
      (JSC::Structure::isEmpty):
      (JSC::Structure::transitionCount):
      (JSC::Structure::get):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121925 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d68b1f84
    • oliver@apple.com's avatar
      JSObjectCallAsFunction should thisConvert the provided thisObject · 5635b54d
      oliver@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=90628
      
      Reviewed by Gavin Barraclough.
      
      Perform this conversion on the provided this object.
      
      * API/JSObjectRef.cpp:
      (JSObjectCallAsFunction):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121924 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5635b54d
    • commit-queue@webkit.org's avatar
      Code refactoring: move mimeTypeFromUTITree to a separate file. · b73ec07e
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90619
      
      We should move UTI handling related code to a separate file.
      
      Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2012-07-05
      Reviewed by David Kilzer.
      
      * WebCore.xcodeproj/project.pbxproj: Add UTIUtilities.h/UTIUtilities.mm to xcode project, and drive-by fix
          that happened when editing the Xcode project file.
      * platform/network/mac/UTIUtilities.h: Added.
      (WebCore):
      * platform/network/mac/UTIUtilities.mm: Added.  move mimeTypeFromUTITree to UTIUtilities.mm.
      (WebCore):
      (WebCore::mimeTypeFromUTITree):
      * platform/network/mac/WebCoreURLResponse.mm: include UTIUtilities.h to use mimeTypeFromUTITree.
      (WebCore):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121923 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b73ec07e
    • vollick@chromium.org's avatar
      [chromium] Create a WebKit::Web* wrapper for the cc animation classes · c2d222ed
      vollick@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90303
      
      Reviewed by James Robinson.
      
      Source/Platform:
      
      * Platform.gypi:
      * chromium/public/WebAnimation.h: Added.
      (WebCore):
      (WebKit):
      (WebAnimation):
      (WebKit::WebAnimation::WebAnimation):
      (WebKit::WebAnimation::~WebAnimation):
      * chromium/public/WebAnimationCurve.h: Added.
      (WebCore):
      (WebKit):
      (WebAnimationCurve):
      (WebKit::WebAnimationCurve::~WebAnimationCurve):
      (WebKit::WebAnimationCurve::WebAnimationCurve):
      * chromium/public/WebFloatAnimationCurve.h: Added.
      (WebCore):
      (WebKit):
      (WebFloatAnimationCurve):
      (WebKit::WebFloatAnimationCurve::WebFloatAnimationCurve):
      (WebKit::WebFloatAnimationCurve::~WebFloatAnimationCurve):
      * chromium/public/WebFloatKeyframe.h: Added.
      (WebKit):
      (WebKit::WebFloatKeyframe::WebFloatKeyframe):
      (WebFloatKeyframe):
      * chromium/public/WebTransformAnimationCurve.h: Added.
      (WebCore):
      (WebKit):
      (WebTransformAnimationCurve):
      (WebKit::WebTransformAnimationCurve::WebTransformAnimationCurve):
      (WebKit::WebTransformAnimationCurve::~WebTransformAnimationCurve):
      * chromium/public/WebTransformKeyframe.h: Added.
      (WebKit):
      (WebKit::WebTransformKeyframe::WebTransformKeyframe):
      (WebTransformKeyframe):
      
      Source/WebKit/chromium:
      
      * WebKit.gyp:
      * WebKit.gypi:
      * src/WebAnimation.cpp: Added.
      (WebKit):
      (WebKit::WebAnimation::iterations):
      (WebKit::WebAnimation::setIterations):
      (WebKit::WebAnimation::startTime):
      (WebKit::WebAnimation::setStartTime):
      (WebKit::WebAnimation::timeOffset):
      (WebKit::WebAnimation::setTimeOffset):
      (WebKit::WebAnimation::alternatesDirection):
      (WebKit::WebAnimation::setAlternatesDirection):
      (WebKit::WebAnimation::toCCActiveAnimation):
      (WebKit::WebAnimation::initialize):
      (WebKit::WebAnimation::destroy):
      * src/WebAnimationCurveCommon.cpp: Added.
      (WebKit):
      (WebKit::createTimingFunction):
      * src/WebAnimationCurveCommon.h: Added.
      (WebCore):
      (WebKit):
      * src/WebFloatAnimationCurve.cpp: Added.
      (WebKit):
      (WebKit::WebFloatAnimationCurve::add):
      (WebKit::WebFloatAnimationCurve::toCCAnimationCurve):
      (WebKit::WebFloatAnimationCurve::initialize):
      (WebKit::WebFloatAnimationCurve::destroy):
      * src/WebTransformAnimationCurve.cpp: Added.
      (WebKit):
      (WebKit::WebTransformAnimationCurve::add):
      (WebKit::WebTransformAnimationCurve::toCCAnimationCurve):
      (WebKit::WebTransformAnimationCurve::initialize):
      (WebKit::WebTransformAnimationCurve::destroy):
      * tests/WebAnimationTest.cpp: Added.
      * tests/WebFloatAnimationCurveTest.cpp: Added.
      * tests/WebTransformAnimationCurveTest.cpp: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121922 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c2d222ed
    • leandrogracia@chromium.org's avatar
      Character iterators should not advance if they are at end · 148e9c9b
      leandrogracia@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90560
      
      Reviewed by Ryosuke Niwa.
      
      Source/WebCore:
      
      CharacterIterator and BackwardsCharacterIterator try to advance their
      internal TextIterator without checking if they already are at end.
      This can cause crashes in TextIterator::advance.
      
      Test: platform/chromium/editing/surrounding-text/surrounding-text.html
      
      * editing/SurroundingText.cpp:
      (WebCore::SurroundingText::SurroundingText):
      * editing/TextIterator.cpp:
      (WebCore::CharacterIterator::advance):
      (WebCore::BackwardsCharacterIterator::advance):
      
      LayoutTests:
      
      Add a new test case where character iterators are already at end when
      trying to advance. This was caught by Chromium's address sanitizer
      here: http://code.google.com/p/chromium/issues/detail?id=135705
      
      * platform/chromium/editing/surrounding-text/surrounding-text-expected.txt:
      * platform/chromium/editing/surrounding-text/surrounding-text.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121921 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      148e9c9b
    • commit-queue@webkit.org's avatar
      Text Autosizing: Add basic framework · ec26061d
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=88655
      
      Follow-up patch tweaking method signatures.
      
      Patch by John Mellor <johnme@chromium.org> on 2012-07-05
      Reviewed by Simon Fraser.
      
      No functional change, so no new tests.
      
      * page/FrameView.cpp:
      (WebCore::FrameView::layout):
      * rendering/TextAutosizer.cpp:
      (WebCore::TextAutosizer::processSubtree):
      (WebCore::TextAutosizer::processBlock):
      (WebCore::TextAutosizer::processText):
      (WebCore):
      * rendering/TextAutosizer.h:
      (TextAutosizer):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121920 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ec26061d
    • commit-queue@webkit.org's avatar
      [WK2] Add C API for Battery Status API · 8f394315
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90545
      
      Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-05
      Reviewed by Anders Carlsson.
      
      Add C API for WKBatteryManager and WKBatteryStatus
      so that clients can support the Battery Status API
      in WebKit2.
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * Target.pri:
      * UIProcess/API/C/WKBatteryManager.cpp:
      (WKBatteryManagerProviderDidChangeBatteryStatus):
      (WKBatteryManagerProviderUpdateBatteryStatus):
      * UIProcess/API/C/WKBatteryStatus.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKBatteryManager.cpp.
      (WKBatteryStatusGetTypeID):
      (WKBatteryStatusCreate):
      * UIProcess/API/C/WKBatteryStatus.h: Copied from Source/WebKit2/UIProcess/API/C/WKBatteryManager.cpp.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121919 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8f394315
    • pfeldman@chromium.org's avatar
      Web Inspector: move cursor to the current search match. · b1052ce3
      pfeldman@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90621
      
      Reviewed by Vsevolod Vlasov.
      
      After closing the search dialog, the cursor should be at the latest search match location.
      
      * inspector/front-end/TextEditor.js:
      (WebInspector.TextEditor.prototype.markAndRevealRange):
      (WebInspector.TextEditor.prototype._handleFocused):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121918 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b1052ce3
    • commit-queue@webkit.org's avatar
      Subpixel layout broken with spans with CSS position other than static · bac21428
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90097
      
      Patch by Behdad Esfahbod <behdad@behdad.org> on 2012-07-05
      Reviewed by Eric Seidel.
      
      In InlineBox, don't truncate size to integers when returning.
      
      In RenderBlock, don't round-up width to next integer.  Round-up to
      next LayoutUnit instead.
      
      Test: Added fast/sub-pixel/size-of-span-with-different-positions.html
      Adjust expected outputs affected by the rounding changes.
      
      * platform/FractionalLayoutUnit.h:
      (WebCore::FractionalLayoutUnit::fromFloatCeil):
      (FractionalLayoutUnit):
      * rendering/InlineBox.h:
      (WebCore::InlineBox::size):
      * rendering/RenderBlock.cpp:
      (WebCore::updatePreferredWidth):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121917 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bac21428
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r121899. · 2bd31e34
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/121899
      https://bugs.webkit.org/show_bug.cgi?id=90623
      
      Unauthorized WK2 API breakage (Requested by andersca on
      #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-07-05
      
      * Shared/API/c/WKSharedAPICast.h:
      (WebKit::toCopiedURLAPI):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121916 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2bd31e34
    • dtharp@codeaurora.org's avatar
      Adding myself as committer to committers.py · 912cca4a
      dtharp@codeaurora.org authored
      Unreviewed.
      
      * Scripts/webkitpy/common/config/committers.py:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121915 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      912cca4a
    • rwlbuis@webkit.org's avatar
      [CMake] Fix some CMake warnings · 45009b60
      rwlbuis@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90558
      
      Fix WebKit options so they match with FeatureList.pm.
      
      Reviewed by Dan Bates.
      
      * Source/cmake/WebKitFeatures.cmake:
      * Source/cmakeconfig.h.cmake:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121914 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      45009b60
    • ap@apple.com's avatar
      [Mac][WK2] Enable HTTPS tests · aa6f35ab
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=90600
      
      Reviewed by Brady Eidson.
      
      Tools:
      
      * DumpRenderTree/mac/DumpRenderTree.mm: (dumpRenderTree): Removed a misleading comment.
      It explained why we were doing this here instead of a frame load delegate, but that's
      just history, not an explanation of why we need this code.
      
      * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm: (WTR::InjectedBundle::platformInitialize):
      Ignore certificate errors for localhost and 127.0.0.1. Since this is only needed
      for tests, it seems appropriate to have platform specific solutions in every WTR,
      and not add a WebKit2 API.
      
      LayoutTests:
      
      Unskip in common wk2 skipped file, re-skip everywhere besides Mac.
      
      * platform/gtk-wk2/Skipped:
      * platform/qt-5.0-wk2/Skipped:
      * platform/win-wk2/Skipped:
      * platform/wk2/Skipped:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121913 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aa6f35ab
    • japhet@chromium.org's avatar
      Source/WebCore: REGRESSION (r115654): Sometimes does not replace content for... · b3a7465a
      japhet@chromium.org authored
      Source/WebCore: REGRESSION (r115654): Sometimes does not replace content for multipart/x-mixed-replace
      https://bugs.webkit.org/show_bug.cgi?id=88436
      
      Reviewed by Brady Eidson.
      
      Test: http/tests/multipart/multipart-replace-non-html-content.php
      
      * loader/DocumentLoader.cpp:
      (WebCore::DocumentLoader::commitData): We should only send receivedFirstData() once per main resource load,
          rather than multiple times in a multipart load.
      (WebCore::DocumentLoader::setupForReplaceByMIMEType): m_gotFirstByte isn't set to true until data is
          actually committed, and multipart data is often not committed until the part is finished. Check
          whether the SharedBuffer is non-null instead.
      * testing/js/WebCoreTestSupport.cpp:
      (WebCoreTestSupport::resetInternalsObject): The JSInternals object my have already been cleared if the window shell
          was cleared as part of creation of a new Document. Check it before using it.
      
      LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=88436.
      
      Reviewed by Brady Eidson.
      
      * http/tests/multipart/multipart-replace-non-html-content-expected.txt: Added.
      * http/tests/multipart/multipart-replace-non-html-content.php: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121912 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b3a7465a
    • pfeldman@chromium.org's avatar
      Web Inspector: move search field to the bottom of the page. · 5d9d1238
      pfeldman@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90610
      
      Reviewed by Vsevolod Vlasov.
      
      This is the first step in the Search/replace implementation. This change moves search
      field from the inspector toolbar to the inspector view footer that is visible upon Cmd/Ctrl+F.
      
      * English.lproj/localizedStrings.js:
      * inspector/front-end/InspectorView.js:
      (WebInspector.InspectorView):
      (WebInspector.InspectorView.prototype._pushToHistory):
      (WebInspector.InspectorView.prototype.panelsElement):
      (WebInspector.InspectorView.prototype.setFooterElement):
      * inspector/front-end/Panel.js:
      (WebInspector.Panel.prototype.show):
      * inspector/front-end/ProfilesPanel.js:
      (WebInspector.ProfilesPanel.prototype._reset):
      * inspector/front-end/SearchController.js:
      (WebInspector.SearchController):
      (WebInspector.SearchController.prototype.updateSearchLabel):
      (WebInspector.SearchController.prototype.cancelSearch):
      (WebInspector.SearchController.prototype._updateSearchNavigationButtonState):
      (WebInspector.SearchController.prototype.focusSearchField):
      (WebInspector.SearchController.prototype._onKeyDown):
      (WebInspector.SearchController.prototype._onNextButtonSearch):
      (WebInspector.SearchController.prototype._onPrevButtonSearch):
      (WebInspector.SearchController.prototype._performSearch):
      * inspector/front-end/inspector.css:
      (#search):
      (.toolbar-search-container):
      (.toolbar-search-navigation):
      (.toolbar-search-navigation:hover):
      (.toolbar-search-navigation.toolbar-search-navigation-prev):
      (.toolbar-search-navigation.toolbar-search-navigation-next):
      (.toolbar-search-navigation-hidden):
      (.status-bar):
      (.search-drawer-header input[type="search"].search-config-search):
      (.inspector-footer):
      (.inspector-footer > div):
      * inspector/front-end/inspector.html:
      * inspector/front-end/inspector.js:
      (WebInspector.get _setCompactMode):
      (WebInspector.postDocumentKeyDown):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121911 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5d9d1238
    • vestbo@webkit.org's avatar
      [Qt] Move Webkit1 before WebKit2 in the build order · 19d488f5
      vestbo@webkit.org authored
      Reviewed by Csaba Osztrogonác.
      
      * WebKit.pro:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121910 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      19d488f5
    • scheib@chromium.org's avatar
      [Chromium] Clear m_currentInputEvent after handled by pointerLockMouseEvent(). · 4a6c624e
      scheib@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90391
      
      Source/WebKit/chromium:
      
      WebViewImpl::handleInputEvent was keeping a pointer to an input event that would
      later be accessed. When in pointer lock, that pointer was not being cleared.
      Code modified to use TemporaryChange to automatically clear the pointer at all
      method exit points.
      
      Reviewed by Abhishek Arya.
      
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::handleInputEvent):
      
      LayoutTests:
      
      Test that reproduces bug 90391:
      Enable pointer lock, receive mouse move, call window.open, don't crash.
      
      Reviewed by Abhishek Arya.
      
      * pointer-lock/bug90391-move-then-window-open-crash-expected.txt: Added.
      * pointer-lock/bug90391-move-then-window-open-crash.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121909 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4a6c624e
    • caseq@chromium.org's avatar
      Web Inspector: added low-level instrumentation support for TimelineAgent · 833b1958
      caseq@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90264
      
      Patch by Sergey Rogulenko <rogulenko@google.com> on 2012-07-05
      Reviewed by Pavel Feldman.
      
      * inspector/InspectorInstrumentation.cpp:
      (WebCore::InspectorInstrumentation::timelineAgentForOrphanEvents):
      (WebCore::InspectorInstrumentation::setTimelineAgentForOrphanEvents):
      (WebCore::InspectorInstrumentation::threadSpecificTimelineAgentForOrphanEvents):
      * inspector/InspectorInstrumentation.h:
      (InspectorInstrumentation):
      * inspector/InspectorTimelineAgent.cpp:
      (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
      (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
      (WebCore::InspectorTimelineAgent::pushCurrentRecord):
      * inspector/InspectorTimelineAgent.h:
      (InspectorTimelineAgent):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121908 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      833b1958
    • commit-queue@webkit.org's avatar
      Text Autosizing: Add test framework and simple test. · edaa96fb
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90561
      
      Source/WebCore:
      
      Exposes methods allowing Layout Tests to enable Text Autosizing and
      get the same results as if they were running on a mobile device.
      
      Patch by John Mellor <johnme@chromium.org> on 2012-07-05
      Reviewed by Adam Barth.
      
      Test: fast/text-autosizing/simple-paragraph.html
      
      * page/Settings.cpp:
      (WebCore::Settings::Settings):
      (WebCore):
      (WebCore::Settings::setTextAutosizingWindowSizeOverride):
      * page/Settings.h:
      (Settings):
      (WebCore::Settings::textAutosizingWindowSizeOverride):
      * rendering/TextAutosizer.cpp:
      (WebCore::TextAutosizer::boostSubtree):
      * testing/InternalSettings.cpp:
      (WebCore::InternalSettings::InternalSettings):
      (WebCore::InternalSettings::restoreTo):
      (WebCore::InternalSettings::setTextAutosizingEnabled):
      (WebCore):
      (WebCore::InternalSettings::setTextAutosizingWindowSizeOverride):
      * testing/InternalSettings.h:
      (InternalSettings):
      * testing/InternalSettings.idl:
      
      Source/WebKit/chromium:
      
      ENABLE(TEXT_AUTOSIZING) is now on in Chromium (but disabled at runtime).
      This allows it to be used in Layout Tests (and in future by Web
      Inspector's mobile device emulation).
      
      Patch by John Mellor <johnme@chromium.org> on 2012-07-05
      Reviewed by Adam Barth.
      
      * features.gypi:
      
      LayoutTests:
      
      Added a RefTest checking that Text Autosizing is active.
      Skipped the text-autosizing test directory on platforms that
      currently disable ENABLE(TEXT_AUTOSIZING).
      
      Patch by John Mellor <johnme@chromium.org> on 2012-07-05
      Reviewed by Adam Barth.
      
      * fast/text-autosizing/simple-paragraph-expected.html: Added.
      * fast/text-autosizing/simple-paragraph.html: Added.
      * platform/efl/TestExpectations:
      * platform/gtk/TestExpectations:
      * platform/mac/TestExpectations:
      * platform/qt/TestExpectations:
      * platform/win/Skipped:
      * platform/wincairo/Skipped:
      * platform/wk2/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121907 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      edaa96fb
    • caseq@chromium.org's avatar
      Web Inspector: timeline events in the vicinity of event dividers some times are tricky to expand · 3a3f4f64
      caseq@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90572
      
      Reviewed by Pavel Feldman.
      
      - do not use resources-event-divider-padding;
      - make dividers larger and use border-color to visualize them;
      - move resources-<color>-divider to timelinePanel.css, as they're not used outside of timeline;
      
      * inspector/front-end/TimelinePresentationModel.js:
      (WebInspector.TimelinePresentationModel.createEventDivider):
      * inspector/front-end/inspectorCommon.css:
      * inspector/front-end/timelinePanel.css:
      (.timeline .resources-event-divider):
      (.resources-red-divider):
      (.resources-blue-divider):
      (.resources-orange-divider):
      (.resources-divider.last):
      (.timeline .resources-event-divider.timeline-frame-divider):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121906 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3a3f4f64
    • caseq@chromium.org's avatar
      Web Inspector: incorrect height of main timeline pane after switching to memory mode · e739b811
      caseq@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90387
      
      Reviewed by Pavel Feldman.
      
      * inspector/front-end/TimelinePanel.js:
      (WebInspector.TimelinePanel.prototype._splitterDragging):
      (WebInspector.TimelinePanel.prototype.set _setSplitterPosition):
      (WebInspector.TimelinePanel.prototype._overviewModeChanged):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121905 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e739b811
    • commit-queue@webkit.org's avatar
      [chromium] Add a method didChangeFormState to WebViewClient. · bc00f375
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90563
      
      Patch by Oli Lan <olilan@chromium.org> on 2012-07-05
      Reviewed by Adam Barth.
      
      This patch adds a new method didChangeFormState to WebViewClient,
      and calls it from ChromeClientImpl::formStateDidChange with the changed node.
      
      This new method can be used for example by the Android port to update the browser's
      IME when the state of the currently focused text node has changed. To facilitate this
      usage, a focused() method has been added to WebNode.
      
      A new test has been added to WebViewTest. This test checks that didChangeFormState
      is called when an input's value is changed, and also checks that WebNode::focused() returns
      the correct value for the provided node, in both the focused and non-focused cases.
      
      * public/WebNode.h:
      * public/WebViewClient.h:
      (WebKit::WebViewClient::didChangeFormState):
      * src/ChromeClientImpl.cpp:
      (WebKit::ChromeClientImpl::formStateDidChange):
      * src/WebNode.cpp:
      (WebKit::WebNode::focused):
      (WebKit):
      * tests/WebViewTest.cpp:
      (FormChangeWebViewClient):
      (WebKit::FormChangeWebViewClient::didChangeFormState):
      (WebKit::FormChangeWebViewClient::reset):
      (WebKit::FormChangeWebViewClient::called):
      (WebKit::FormChangeWebViewClient::focused):
      (WebKit):
      (WebKit::TEST_F):
      * tests/data/input_field_set_value_while_focused.html: Added.
      * tests/data/input_field_set_value_while_not_focused.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121904 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bc00f375
    • ryuan.choi@samsung.com's avatar
      [CMAKE] Unreviewd typo fix after r121857 · dfb773bc
      ryuan.choi@samsung.com authored
      * Source/cmake/WebKitMacros.cmake:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121903 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dfb773bc
    • commit-queue@webkit.org's avatar
      Web Inspector: Add support for keyboard increment / decrement on numbers in... · 4a3b0269
      commit-queue@webkit.org authored
      Web Inspector: Add support for keyboard increment / decrement on numbers in attributes in Elements Panel
      https://bugs.webkit.org/show_bug.cgi?id=89586
      
      Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-07-05
      Reviewed by Pavel Feldman
      
      Refactoring the key events while editing style property values. Migrated the code to UIUtils.js and referred
      from StylesSidebarPane.js, ElementsTreeOutline.js and MetricsSidebarPane.js.
      
      No new tests as code refactoring and UI feature added to ElementsTreeOutline.js
      
      * inspector/front-end/ElementsTreeOutline.js:
      (WebInspector.ElementsTreeElement.prototype._startEditingAttribute.handleKeyDownEvents):
      (WebInspector.ElementsTreeElement.prototype._startEditingAttribute):
      * inspector/front-end/MetricsSidebarPane.js:
      (WebInspector.MetricsSidebarPane.prototype._handleKeyDown.finishHandler):
      (WebInspector.MetricsSidebarPane.prototype._handleKeyDown.customNumberHandler):
      (WebInspector.MetricsSidebarPane.prototype._handleKeyDown):
      * inspector/front-end/StylesSidebarPane.js:
      (WebInspector.StylesSidebarPane.prototype._handleNameOrValueUpDown.finishHandler):
      (WebInspector.StylesSidebarPane.prototype._handleNameOrValueUpDown):
      * inspector/front-end/UIUtils.js:
      (WebInspector._modifiedHexValue):
      (WebInspector._modifiedFloatNumber):
      (WebInspector.handleElementValueModifications):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121902 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4a3b0269
    • vestbo@webkit.org's avatar
      [Qt] Remove rpath-hacks in qt_webkit.pri · 069ee433
      vestbo@webkit.org authored
      Having it in qt_webkit.pri meant that all client apps would inherit the rpath,
      even if they were not using QtWebKit.
      
      This is a regression for people who build client apps against a non-installed
      QtWebKit, as the client app will be missing a rpath to the standalone WebKit
      build dir. This can be solved by LD_LIBRARY_PATH or custom QMAKE_RPATHDIR
      logic, until the real issue is fixed in Qt.
      
      Reviewed by Csaba Osztrogonác.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121901 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      069ee433
    • rgabor@webkit.org's avatar
      NEON intrinsics should be used with gaussian blur filter · 99d1d2d9
      rgabor@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90166
      
      Reviewed by Zoltan Herczeg.
      
      Rewrite inline assembly to NEON intrinsics for better portabilty 
      and readibility. Remove unnecessary FEGaussianBlurNEON.cpp and add
      NEONHelpers.h to the project which will contains the shared
      NEON code of the filters.
      
      Existing tests cover this issue.
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * Target.pri:
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * platform/graphics/filters/FEGaussianBlur.cpp:
      (WebCore::FEGaussianBlur::platformApplyGeneric):
      (WebCore::FEGaussianBlur::platformApplyWorker):
      * platform/graphics/filters/FEGaussianBlur.h:
      (FEGaussianBlur):
      * platform/graphics/filters/arm/FEGaussianBlurNEON.cpp: Removed.
      * platform/graphics/filters/arm/FEGaussianBlurNEON.h:
      (WebCore::boxBlurNEON):
      * platform/graphics/filters/arm/NEONHelpers.h: Added.
      (WebCore):
      (WebCore::loadRGBA8AsFloat):
      (WebCore::storeFloatAsRGBA8):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121900 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      99d1d2d9
    • kbalazs@webkit.org's avatar
      [Qt] WTR crashes if a URL is passed as a parameter · 2b54c4bd
      kbalazs@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=88093
      
      Reviewed by Zoltan Herczeg.
      
      * Shared/API/c/WKSharedAPICast.h:
      (WebKit::toCopiedURLAPI):
      Don't special case null string. It's handled
      fine by WebURL and passing 0 is not suitable
      to the API.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121899 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2b54c4bd
    • commit-queue@webkit.org's avatar
      [EFL] Change class name from NotificationClientEfl to NotificationPresenterClientEfl. · 09918e06
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90542
      
      Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-07-05
      Reviewed by Kenneth Rohde Christiansen.
      
      Source/WebKit:
      
      NotificationClientEfl.cpp is changed to NotificationPresenterClientEfl.cpp
      to be in line with other ports(qt, chromium, gtk).
      
      * PlatformEfl.cmake:
      
      Source/WebKit/efl:
      
      Change class name from NotificationClientEfl to NotificationPresenterClientEfl
      to be in line with other ports.(qt, chromium, blackberry)
      
      * WebCoreSupport/ChromeClientEfl.cpp:
      * WebCoreSupport/NotificationPresenterClientEfl.cpp: Renamed from Source/WebKit/efl/WebCoreSupport/NotificationClientEfl.cpp.
      (WebCore):
      (WebCore::NotificationPresenterClientEfl::NotificationPresenterClientEfl):
      (WebCore::NotificationPresenterClientEfl::~NotificationPresenterClientEfl):
      (WebCore::NotificationPresenterClientEfl::show):
      (WebCore::NotificationPresenterClientEfl::cancel):
      (WebCore::NotificationPresenterClientEfl::notificationObjectDestroyed):
      (WebCore::NotificationPresenterClientEfl::notificationControllerDestroyed):
      (WebCore::NotificationPresenterClientEfl::requestPermission):
      (WebCore::NotificationPresenterClientEfl::checkPermission):
      (WebCore::NotificationPresenterClientEfl::cancelRequestsForPermission):
      * WebCoreSupport/NotificationPresenterClientEfl.h: Renamed from Source/WebKit/efl/WebCoreSupport/NotificationClientEfl.h.
      (WebCore):
      (NotificationPresenterClientEfl):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121898 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      09918e06
    • commit-queue@webkit.org's avatar
      [EFL] Enable the CUSTOM_SCHEME_HANDLER feature as default. · 19f54967
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=88608
      
      Patch by Dongwoo Im <dw.im@samsung.com> on 2012-07-05
      Reviewed by Hajime Morita.
      
      .:
      
      * Source/cmake/OptionsEfl.cmake: Enable the CUSTOM_SCHEME_HANDLER feature as default.
      
      Source/WebKit2:
      
      * WebProcess/WebCoreSupport/WebChromeClient.h:
      (WebKit::WebChromeClient::isProtocolHandlerRegistered): Add a stub function.
      (WebKit::WebChromeClient::unregisterProtocolHandler): Add a stub function.
      (WebChromeClient):
      
      Tools:
      
      * Scripts/webkitperl/FeatureList.pm: Enable the CUSTOM_SCHEME_HANDLER feature as default.
      
      LayoutTests:
      
      * platform/efl/fast/dom/unregister-protocol-handler-expected.txt: Expected result of the EFL port.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121897 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      19f54967
    • commit-queue@webkit.org's avatar
      Web Inspector: Having a "Scroll into view" for nodes through web inspector. · f1f664da
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=89554
      
      Added options for scrolling-into-view the  element node through web
      inspector.
      
      Patch by Sam D <dsam2912@gmail.com> on 2012-07-05
      Reviewed by Pavel Feldman.
      
      No new tests. UI change.
      
      * English.lproj/localizedStrings.js:
      * inspector/front-end/ElementsTreeOutline.js:
      (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
      (.):
      * inspector/front-end/RemoteObject.js:
      (WebInspector.RemoteObject.prototype.callFunction):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121896 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f1f664da
    • zandobersek@gmail.com's avatar
      Add Gamepad logging channel · 7c4e63c7
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=90570
      
      Reviewed by Carlos Garcia Campos.
      
      Add a new logging channel for logging significant
      events that are related to Gamepad API implementation.
      
      No new tests - no new testable functionality.
      
      * platform/Logging.cpp:
      (WebCore):
      (WebCore::getChannelFromName):
      * platform/Logging.h:
      (WebCore):
      * platform/gtk/GamepadsGtk.cpp: Log when a device is
      registered or unregistered.
      (WebCore::GamepadsGtk::registerDevice):
      (WebCore::GamepadsGtk::unregisterDevice):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121895 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7c4e63c7
    • kkristof@inf.u-szeged.hu's avatar
      [Qt] Unreviewed gardening after r121891. · d8177316
      kkristof@inf.u-szeged.hu authored
      * platform/qt/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121894 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d8177316
    • ryuan.choi@samsung.com's avatar
      [Wk2][EFL] EFL needs a WebKitTestRunner · 8d2c489c
      ryuan.choi@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=87659
      
      Reviewed by Kenneth Rohde Christiansen.
      
      .:
      
      * Source/CMakeLists.txt:
      Set compiler flags for WebCoreTestSupport to be linked into TestRunnerInjectedBundle
      shared library.
      * Source/cmake/WebKitMacros.cmake: Remove unnecessary dependency.
      
      Source/WebKit2:
      
      * PlatformEfl.cmake: Added WKImageCairo.cpp in source list.
      
      Tools:
      
      Add an implementation of WebKitTestRunner for Efl port.
      
      * CMakeLists.txt: Includes WebKitTestRunner build script.
      * Scripts/build-webkittestrunner: Added knowledge of WebKitTestRunner/Efl.
      * Scripts/webkitpy/layout_tests/port/efl.py: Ditto.
      (EflPort.setup_environ_for_server):
      * WebKitTestRunner/CMakeLists.txt: Added.
      * WebKitTestRunner/InjectedBundle/LayoutTestController.h:
      * WebKitTestRunner/InjectedBundle/efl/ActivateFontsEfl.cpp: Added.
      * WebKitTestRunner/InjectedBundle/efl/InjectedBundleEfl.cpp: Added.
      * WebKitTestRunner/InjectedBundle/efl/LayoutTestControllerEfl.cpp: Added.
      * WebKitTestRunner/PlatformEfl.cmake: Added.
      * WebKitTestRunner/PlatformWebView.h:
      * WebKitTestRunner/TestController.cpp:
      * WebKitTestRunner/config.h: Added knowledge of WebKitTestRunner/Efl.
      * WebKitTestRunner/efl/PlatformWebViewEfl.cpp: Added.
      * WebKitTestRunner/efl/TestControllerEfl.cpp: Added.
      * WebKitTestRunner/efl/main.cpp: Added.
      (main):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121893 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8d2c489c
    • commit-queue@webkit.org's avatar
      [EFL][WK2] Add ewk_view_reload_bypass_cache API. · 8aaea6f7
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=89413
      
      Patch by Hyerim Bae <hyerim.bae@samsung.com> on 2012-07-05
      Reviewed by Kenneth Rohde Christiansen.
      
      Add API, which is for reloading documents without cache.
      
      * UIProcess/API/efl/ewk_view.cpp:
      (ewk_view_reload_bypass_cache):
      * UIProcess/API/efl/ewk_view.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121892 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8aaea6f7
    • commit-queue@webkit.org's avatar
      Web Inspector: [JSC] support JS execution in the context of an isolated world · dbb26cf9
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85709
      
      Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2012-07-05
      Reviewed by Gavin Barraclough.
      
      No new test case for this bug.
      
      * bindings/js/ScriptController.cpp:
      (WebCore::ScriptController::collectIsolatedContexts):
      (WebCore):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121891 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dbb26cf9
    • commit-queue@webkit.org's avatar
      [WK2][EFL] Ewk_View needs API to load HTML data · 8b6d8b5d
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90540
      
      Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-05
      Reviewed by Kenneth Rohde Christiansen.
      
      Source/WebKit2:
      
      Add method to Ewk_View to load provided HTML data.
      This is used for e.g. when an URL cannot be reached
      and we need to display an error page.
      
      * UIProcess/API/efl/ewk_view.cpp:
      (ewk_view_html_load):
      * UIProcess/API/efl/ewk_view.h:
      
      Tools:
      
      Update EFL MiniBrowser to catch the "load,error" signal
      on the view and display an error page.
      
      * MiniBrowser/efl/main.c:
      (on_error):
      (browserCreate):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121890 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8b6d8b5d
    • commit-queue@webkit.org's avatar
      [WK2][EFL] Ewk_View needs to report new resource requests · 96a167d6
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90577
      
      Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-05
      Reviewed by Kenneth Rohde Christiansen.
      
      Add new "resource,request,new" signal to Ewk_View to
      notify clients of the resource requests being initiated.
      New Ewk_Url_Request and Ewk_Web_Resource types are
      introduced in order to provide the clients with the
      needed information regarding the resource requests.
      
      * PlatformEfl.cmake:
      * UIProcess/API/efl/EWebKit2.h:
      * UIProcess/API/efl/ewk_url_request.cpp: Added.
      (_Ewk_Url_Request):
      (ewk_url_request_ref):
      (ewk_url_request_unref):
      (ewk_url_request_url_get):
      (ewk_request_first_party_get):
      (ewk_url_request_http_method_get):
      (ewk_url_request_new):
      * UIProcess/API/efl/ewk_url_request.h: Added.
      * UIProcess/API/efl/ewk_url_request_private.h: Added.
      * UIProcess/API/efl/ewk_view.cpp:
      (ewk_view_base_add):
      (ewk_view_resource_load_initiated):
      * UIProcess/API/efl/ewk_view.h:
      * UIProcess/API/efl/ewk_view_private.h:
      * UIProcess/API/efl/ewk_view_resource_load_client.cpp: Added.
      (didInitiateLoadForResource):
      (ewk_view_resource_load_client_attach):
      * UIProcess/API/efl/ewk_view_resource_load_client_private.h: Added.
      * UIProcess/API/efl/ewk_web_resource.cpp: Added.
      (_Ewk_Web_Resource):
      (ewk_web_resource_ref):
      (ewk_web_resource_unref):
      (ewk_web_resource_uri_get):
      (ewk_web_resource_new):
      (ewk_web_resource_main_get):
      * UIProcess/API/efl/ewk_web_resource.h: Added.
      * UIProcess/API/efl/ewk_web_resource_private.h: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121889 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      96a167d6
    • zandobersek@gmail.com's avatar
      Unreviewed GTK gardening, marking a test as a flaky crasher after r121869. · fc85dd0b
      zandobersek@gmail.com authored
      * platform/gtk/TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121888 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fc85dd0b
    • zherczeg@webkit.org's avatar
      [Qt] Unreviewed buildfix after r121886. Typo fix. · da8c37de
      zherczeg@webkit.org authored
      * assembler/MacroAssemblerARM.cpp:
      (JSC::MacroAssemblerARM::load32WithUnalignedHalfWords):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121887 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      da8c37de
    • sergio@webkit.org's avatar
      Hidden dirs are not copied when creating the built product archive · d1b43874
      sergio@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90559
      
      Reviewed by Carlos Garcia Campos.
      
      Hidden dirs are not copied inside the built product archive
      because the recursive copy command was ignoring them. We need those
      hidden directories for the GTK WebKit2 testing bot to work fine.
      
      * BuildSlaveSupport/built-product-archive:
      (archiveBuiltProduct): replaced "*" by "." to include hidden
      dirs/files.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121886 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d1b43874