1. 12 Aug, 2009 18 commits
    • pkasting@chromium.org's avatar
      https://bugs.webkit.org/show_bug.cgi?id=27933 · b8dd3c63
      pkasting@chromium.org authored
      Build fix after r47099.
      
      Reviewed by Dave Levin.
      
      * platform/graphics/skia/ImageBufferSkia.cpp:
      (WebCore::getImageData):
      (WebCore::putImageData):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47126 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b8dd3c63
    • treat@webkit.org's avatar
      WINCE PORT: Implement Path for WINCE. Most code can be · cf044eba
      treat@webkit.org authored
      reused for other ports that don't have native path support
      https://bugs.webkit.org/show_bug.cgi?id=28188
      
      Patch by Yong Li <yong.li@torchmobile.com> on 2009-08-08
      Reviewed by Adam Treat.
      
      Written also by George Staikos (including quadCurve() and bezier())
      
      * platform/graphics/wince/PathWince.cpp: Added.
      * platform/graphics/wince/PlatformPathWince.cpp: Added.
      * platform/graphics/wince/PlatformPathWince.h: Added.
      * platform/graphics/wince/WinceGraphicsExtras.h: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47118 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cf044eba
    • eric@webkit.org's avatar
      2009-08-12 Joseph Pecoraro <joepeck02@gmail.com> · 49ae4a16
      eric@webkit.org authored
              "Double-click to add" new style button does not always show up [quick fix]
              https://bugs.webkit.org/show_bug.cgi?id=28187
      
              * inspector/front-end/StylesSidebarPane.js:
              (WebInspector.StylePropertyTreeElement.prototype.updateTitle):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47116 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      49ae4a16
    • eric@webkit.org's avatar
      2009-08-12 Crystal Zhang <crystal.zhang@torchmobile.com> · dbf8a2a6
      eric@webkit.org authored
              Reviewed by George Staikos.
      
              WINCE PORT: MediaPlayerProxy and MediaPlayerPrivate
              https://bugs.webkit.org/show_bug.cgi?id=28178
      
              * platform/graphics/wince/MediaPlayerPrivateWince.h: Added.
              * platform/graphics/wince/MediaPlayerProxy.cpp: Added.
              * platform/graphics/wince/MediaPlayerProxy.h: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47115 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dbf8a2a6
    • eric@webkit.org's avatar
      2009-08-12 Laszlo Gombos <laszlo.1.gombos@nokia.com> · 0a2a5bb8
      eric@webkit.org authored
              Reviewed by Eric Seidel.
      
              HTML 5 database and LocalStorage is not persistent on the Symbian port of QtWebKit
              https://bugs.webkit.org/show_bug.cgi?id=28175
      
              Call QDir::toNativeSeparators() before the path is passed to the OS.
      
              Based on work by David Leong.
      
              * platform/qt/FileSystemQt.cpp:
              (WebCore::pathByAppendingComponent):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47114 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0a2a5bb8
    • eric.carlson@apple.com's avatar
      2009-08-12 Eric Carlson <eric.carlson@apple.com> · 6a6009e7
      eric.carlson@apple.com authored
              Tiger build fix.
      
              * accessibility/mac/AccessibilityObjectWrapper.mm: 
                  Define NSAccessibilityTimelineSubrole for Tiger.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47113 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6a6009e7
    • krit@webkit.org's avatar
      2009-08-12 Dirk Schulze <krit@webkit.org> · a046f09a
      krit@webkit.org authored
              Reviewed by Ariya Hidayat.
      
              Minor build-fix for SVG Filter. Use getUnmultipliedImageData instead
              of getImageData. This changed since r47099.
      
              * platform/graphics/filters/FEColorMatrix.cpp:
              (WebCore::FEColorMatrix::apply):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47112 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a046f09a
    • eric.carlson@apple.com's avatar
      2009-08-12 Eric Carlson <eric.carlson@apple.com> · cd791f33
      eric.carlson@apple.com authored
              Reviewed by Oliver Hunt.
      
              <video> and <audio> controller should be accessible
              https://bugs.webkit.org/show_bug.cgi?id=28081
      
              Test: accessibility/media-element.html
      
              * GNUmakefile.am:
              * WebCore.gypi:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
                  Add AccessibilityMediaControls.cpp/.h
      
              * accessibility/AXObjectCache.cpp:
              * accessibility/AXObjectCache.h:
              (WebCore::AXObjectCache::getOrCreate):
                  Create AccessibilityMediaControl. Update Copyright
      
              * accessibility/AccessibilityMediaControls.cpp:
              * accessibility/AccessibilityMediaControls.h:
                  Added.
      
              * accessibility/AccessibilityObject.cpp:
              * accessibility/AccessibilityObject.h:
                  Add isMediaTimeline. Update Copyright.
      
              * accessibility/AccessibilitySlider.h:
                  Make constructor protected instead of private so AccessibilityMediaTimeline can
                  call it.
      
              * accessibility/mac/AccessibilityObjectWrapper.mm:
              (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
                  Add NSAccessibilityValueDescriptionAttribute to range attributes. 
              (-[AccessibilityObjectWrapper subrole]):
                  Return NSAccessibilityTimelineSubrole for AccessibilityMediaTimeline.
      
              * dom/Node.h:
                  add isMediaControlElement.
      
              * page/mac/WebCoreViewFactory.h:
              * platform/LocalizedStrings.h:
              * platform/mac/LocalizedStringsMac.mm:
              (WebCore::localizedMediaControlElementString): 
              (WebCore::localizedMediaControlElementHelpText):
              (WebCore::localizedMediaTimeDescription): 
                  New, return localized media controller strings.
      
              * rendering/MediaControlElements.cpp:
              (WebCore::MediaControlElement::MediaControlElement):
                  Initialize m_displayType.
              (WebCore::MediaControlElement::MediaControlElement):
              (WebCore::MediaControlStatusDisplayElement::MediaControlStatusDisplayElement):
                  Fix style.
              (WebCore::MediaControlInputElement::MediaControlInputElement):
                  Set m_displayType based on pseudo style ID.
              (WebCore::MediaControlInputElement::MediaControlInputElement):
                  rename local "o" to "object".
              (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement):
              (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement):
              (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement):
              (WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement):
              (WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement):
              (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
              (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):
              (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
              (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
              (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
                  Update for MediaControlInputElement constructor change.
              (WebCore::MediaControlTimeDisplayElement::formatTime):
                  New, moved here from RenderMedia so AccessibilityMediaTimeDisplay can use it.
              (WebCore::MediaControlTimeDisplayElement::setCurrentValue):
                  New, set text to current time.
              * rendering/MediaControlElements.h:
      
              * rendering/RenderMedia.cpp:
              (WebCore::RenderMedia::updateControls):
                  Create controls in tab order.
              (WebCore::RenderMedia::formatTime):
                  Moved to MediaControlTimeDisplayElement::formatTime.
              (WebCore::RenderMedia::updateTimeDisplay):
                  Call MediaControlTimeDisplayElement::setCurrentValue.
              * rendering/RenderMedia.h:
      
      2009-08-12  Eric Carlson  <eric.carlson@apple.com>
      
              Reviewed by Oliver Hunt.
      
              <video> and <audio> controller should be accessible
              https://bugs.webkit.org/show_bug.cgi?id=28081
      
              Add localized strings for media controller accessiblility.
      
              * English.lproj/Localizable.strings:
      
      2009-08-12  Eric Carlson  <eric.carlson@apple.com>
      
              Reviewed by Oliver Hunt.
      
              <video> and <audio> controller should be accessible
              https://bugs.webkit.org/show_bug.cgi?id=28081
      
              * WebCoreSupport/WebViewFactory.mm:
              (-[WebViewFactory localizedMediaControlElementString:]):
              (-[WebViewFactory localizedMediaControlElementHelpText:]):
              (-[WebViewFactory localizedMediaTimeDescription:]):
                  New.
      
      2009-08-12  Eric Carlson  <eric.carlson@apple.com>
      
              Reviewed by Oliver Hunt.
      
              <video> and <audio> controller should be accessible
              https://bugs.webkit.org/show_bug.cgi?id=28081
      
              * WebCoreLocalizedStrings.cpp:
              (WebCore::localizedMediaControlElementString):
              (WebCore::localizedMediaControlElementHelpText):
              (WebCore::localizedMediaTimeDescription):
                  New.
      
      2009-08-12  Eric Carlson  <eric.carlson@apple.com>
      
              Reviewed by Oliver Hunt.
      
              <video> and <audio> controller should be accessible
              https://bugs.webkit.org/show_bug.cgi?id=28081
      
              * accessibility/media-element.html: Added.
              * platform/mac-leopard/accessibility/media-element-expected.txt:
              * platform/mac-leopard/media/controls-strict-expected.txt: 
              * platform/mac/accessibility/media-element-expected.txt:
                  Added.
      
              * platform/mac-leopard/media/controls-after-reload-expected.txt:
              * platform/mac-leopard/media/controls-styling-expected.txt:
              * platform/mac-leopard/media/video-empty-source-expected.txt:
              * platform/mac-leopard/media/video-zoom-controls-expected.txt:
              * media/video-controls-visible-audio-only.html:
              * platform/mac-leopard/media/audio-controls-rendering-expected.txt:
              * platform/mac/media/audio-controls-rendering-expected.txt:
              * platform/mac/media/controls-after-reload-expected.txt:
              * platform/mac/media/controls-styling-expected.txt:
              * platform/mac/media/video-controls-rendering-expected.txt:
              * platform/mac/media/video-display-toggle-expected.txt:
              * platform/mac/media/video-empty-source-expected.txt:
              * platform/mac/media/video-zoom-controls-expected.txt:
                  Update for controller element tab order change.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47110 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cd791f33
    • dglazkov@chromium.org's avatar
      2009-08-12 Viet-Trung Luu <viettrungluu@gmail.com> · 57ffe78b
      dglazkov@chromium.org authored
              Reviewed by Dimitri Glazkov.
      
              Explicitly set control tints for Chromium/Mac, since the controls'
              NSCell(s) lack an NSView and hence their tint isn't updated
              automatically when the application is activated/deactivated.
              https://bugs.webkit.org/show_bug.cgi?id=28108
              http://crbug.com/18199
      
              * rendering/RenderThemeChromiumMac.mm:
              (WebCore::updateNSCellControlTint):
              (WebCore::RenderThemeChromiumMac::paintCheckbox):
              (WebCore::RenderThemeChromiumMac::paintRadio):
              (WebCore::RenderThemeChromiumMac::paintButton):
              (WebCore::RenderThemeChromiumMac::paintMenuList):
              (WebCore::RenderThemeChromiumMac::paintSliderThumb):
              (WebCore::RenderThemeChromiumMac::paintSearchField):
              (WebCore::RenderThemeChromiumMac::paintSearchFieldCancelButton):
              (WebCore::RenderThemeChromiumMac::paintSearchFieldResultsDecoration):
              (WebCore::RenderThemeChromiumMac::paintSearchFieldResultsButton):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47108 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      57ffe78b
    • dglazkov@chromium.org's avatar
      2009-08-12 Christian Plesner Hansen <christian.plesner.hansen@gmail.com> · 724bff15
      dglazkov@chromium.org authored
              Reviewed by Dimitri Glazkov.
      
              [V8] Fix atomic string externalization crash.
              Atomic string externalization assumes that all non-empty strings
              can be externalized which is untrue on 64-bit.  This change fixed
              that.
      
              https://bugs.webkit.org/show_bug.cgi?id=28215
      
              This bug causes loads of test crashes, no need to add new tests
              specifically for this.
      
              * bindings/v8/V8Binding.cpp:
              (WebCore::v8StringToAtomicWebCoreString):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47106 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      724bff15
    • ariya@webkit.org's avatar
      WebCore/ChangeLog: · c7d5cf16
      ariya@webkit.org authored
      2009-08-12  Ariya Hidayat  <ariya.hidayat@nokia.com>
      
              Reviewed by Holger Freyther.
      
              [Qt] Fix box-shadow painting in r47103. The edge should not be blurry.
              Also optimize by not having to save and restore painter state.
      
              * platform/graphics/qt/GraphicsContextQt.cpp:
              (WebCore::GraphicsContext::drawRect):
              (WebCore::GraphicsContext::fillRect):
      
      LayoutTests/ChangeLog:
      
      2009-08-12  Ariya Hidayat  <ariya.hidayat@nokia.com>
      
              Reviewed by Holger Hans Peter Freyther.
      
              [Qt] Update the pixel tests for shadow edge fix.
      
              * platform/qt/fast/box-shadow/basic-shadows-expected.checksum:
              * platform/qt/fast/box-shadow/basic-shadows-expected.png:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47105 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c7d5cf16
    • ariya@webkit.org's avatar
      2009-08-12 Ariya Hidayat <ariya.hidayat@nokia.com> · 8d43ffa1
      ariya@webkit.org authored
              Reviewed by Adam Treat.
      
              [Qt] Fix coding style in GraphicsContextQt.cpp
      
              * platform/graphics/qt/GraphicsContextQt.cpp:
              (WebCore::toQtCompositionMode):
              (WebCore::toQtLineCap):
              (WebCore::toQtLineJoin):
              (WebCore::GraphicsContextPlatformPrivate::p):
              (WebCore::GraphicsContext::drawLine):
              (WebCore::GraphicsContext::strokeArc):
              (WebCore::GraphicsContext::drawConvexPolygon):
              (WebCore::GraphicsContext::pen):
              (WebCore::GraphicsContext::fillPath):
              (WebCore::GraphicsContext::strokePath):
              (WebCore::GraphicsContext::fillRect):
              (WebCore::GraphicsContext::clipPath):
              (WebCore::GraphicsContext::drawFocusRing):
              (WebCore::GraphicsContext::beginTransparencyLayer):
              (WebCore::GraphicsContext::endTransparencyLayer):
              (WebCore::GraphicsContext::clearRect):
              (WebCore::GraphicsContext::setLineCap):
              (WebCore::GraphicsContext::setLineJoin):
              (WebCore::GraphicsContext::setMiterLimit):
              (WebCore::GraphicsContext::setAlpha):
              (WebCore::GraphicsContext::clipOut):
              (WebCore::GraphicsContext::clipOutEllipseInRect):
              (WebCore::GraphicsContext::addInnerRoundedRectClip):
              (WebCore::GraphicsContext::setPlatformStrokeColor):
              (WebCore::GraphicsContext::setPlatformStrokeStyle):
              (WebCore::GraphicsContext::setPlatformStrokeThickness):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47104 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8d43ffa1
    • ariya@webkit.org's avatar
      WebCore/ChangeLog: · 9b69ed48
      ariya@webkit.org authored
      2009-08-12  Szabo Carol  <carol.szabo@nokia.com>
      
              Reviewed by Simon Hausmann and Ariya Hidayat.
      
              https://bugs.webkit.org/show_bug.cgi?id=23291
      
              [Qt] Partial support for -webkit-box-shadow. Blur is not support and
              the shadow still does not go well with border radius.
      
              * platform/graphics/qt/GraphicsContextQt.cpp:
              (WebCore::GraphicsContext::drawRect):
              (WebCore::GraphicsContext::fillRect):
      
      LayoutTests/ChangeLog:
      
      2009-08-12  Ariya Hidayat  <ariya.hidayat@nokia.com>
      
              Reviewed by Simon Hausmann.
      
              [Qt] Pixel tests for (partial) -webkit-box-shadow support.
      
              * platform/qt/Skipped: Include basic-shadows.
              * platform/qt/fast/box-shadow/basic-shadows-expected.checksum: Added.
              * platform/qt/fast/box-shadow/basic-shadows-expected.png: Added.
              * platform/qt/fast/box-shadow/basic-shadows-expected.txt: Adjusted.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47103 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9b69ed48
    • xan@webkit.org's avatar
      2009-08-12 Xan Lopez <xlopez@igalia.com> · 4d584889
      xan@webkit.org authored
              Reviewed by Jan Alonzo.
      
              Use AM_V_GEN in a few more places, for less noisy builds.
      
              * GNUmakefile.am:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47100 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4d584889
    • krit@webkit.org's avatar
      2009-08-12 Dirk Schulze <krit@webkit.org> · acfb1ce8
      krit@webkit.org authored
              Reviewed by Oliver Hunt.
      
              SVG Filter premultiplied color support for getImageDate/putImageData
              [https://bugs.webkit.org/show_bug.cgi?id=27933]
      
              Some SVG Filters need premultiplied ImageData for the calculation. Therefore getImageData
              and putImageData of ImageBuffer need support for premultiplied colors.
      
              * html/CanvasRenderingContext2D.cpp:
              (WebCore::CanvasRenderingContext2D::getImageData):
              (WebCore::CanvasRenderingContext2D::putImageData):
              * platform/graphics/ImageBuffer.h:
              (WebCore::):
              * platform/graphics/cairo/ImageBufferCairo.cpp:
              (WebCore::getImageData):
              (WebCore::ImageBuffer::getUnmultipliedImageData):
              (WebCore::ImageBuffer::getPremultipliedImageData):
              (WebCore::putImageData):
              (WebCore::ImageBuffer::putUnmultipliedImageData):
              (WebCore::ImageBuffer::putPremultipliedImageData):
              * platform/graphics/cg/ImageBufferCG.cpp:
              (WebCore::getImageData):
              (WebCore::ImageBuffer::getUnmultipliedImageData):
              (WebCore::ImageBuffer::getPremultipliedImageData):
              (WebCore::putImageData):
              (WebCore::ImageBuffer::putUnmultipliedImageData):
              (WebCore::ImageBuffer::putPremultipliedImageData):
              * platform/graphics/qt/ImageBufferQt.cpp:
              (WebCore::getImageData):
              (WebCore::ImageBuffer::getUnmultipliedImageData):
              (WebCore::ImageBuffer::getPremultipliedImageData):
              (WebCore::putImageData):
              (WebCore::ImageBuffer::putUnmultipliedImageData):
              (WebCore::ImageBuffer::putPremultipliedImageData):
              * platform/graphics/skia/ImageBufferSkia.cpp:
              (WebCore::getImageData):
              (WebCore::ImageBuffer::getUnmultipliedImageData):
              (WebCore::ImageBuffer::getPremultipliedImageData):
              (WebCore::putImageData):
              (WebCore::ImageBuffer::putUnmultipliedImageData):
              (WebCore::ImageBuffer::putPremultipliedImageData):
              * platform/graphics/wx/ImageBufferWx.cpp:
              (WebCore::ImageBuffer::getUnmultipliedImageData):
              (WebCore::ImageBuffer::getPremultipliedImageData):
              (WebCore::ImageBuffer::putUnmultipliedImageData):
              (WebCore::ImageBuffer::putPremultipliedImageData):
              * svg/graphics/SVGResourceMasker.cpp:
              (WebCore::SVGResourceMasker::applyMask):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47099 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      acfb1ce8
    • pfeldman@chromium.org's avatar
      2009-08-12 Mikhail Naganov <mnaganov@chromium.org> · 6edaa93e
      pfeldman@chromium.org authored
              Reviewed by Timothy Hatcher.
      
              Changed Number.bytesToString to support low-resolution output.
      
              https://bugs.webkit.org/show_bug.cgi?id=28146
      
              * inspector/front-end/utilities.js:
              (Number.bytesToString):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47095 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6edaa93e
    • hausmann@webkit.org's avatar
      Add support for hooking BeginPaint/EndPaint on 64Bit Windows · 3f1ee5c2
      hausmann@webkit.org authored
      Patch by Prasanth Ullattil <prasanth.ullattil@nokia.com> on 2009-08-12
      Reviewed by Simon Hausmann.
      
      Webkit uses the runtime patching trick explained by "Feng Yuan" for
      hooking these paint functions. It currently supports only 32bit assembly
      code. This patch adds support for 64Bit version. Since inline-assemblies
      are not supported for 64Bit, we have use a seperate .asm file.
      
      * WebCore.pro:
      * plugins/win/PaintHooks.asm: Added.
      * plugins/win/PluginViewWin.cpp:
      (WebCore::PluginView::hookedBeginPaint):
      (WebCore::PluginView::hookedEndPaint):
      (WebCore::hook):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47094 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3f1ee5c2
    • oliver@apple.com's avatar
      Make it harder to misuse try* allocation routines · 81284ba6
      oliver@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=27469
      
      Reviewed by Gavin Barraclough
      
      Jump through a few hoops to make it much harder to accidentally
      miss null-checking of values returned by the try-* allocation
      routines.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47092 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      81284ba6
  2. 11 Aug, 2009 18 commits
    • barraclough@apple.com's avatar
      JavaScriptCore: Restrict use of FuncDeclNode & FuncExprNode to the parser. · 3dc1233c
      barraclough@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=28209
      
      Reviewed by Oliver Hunt.
      
      These objects were also being referenced from the CodeBlock.  By changing this
      to just retain pointers to FunctionBodyNodes these classes can be restricted to
      use during parsing.
      
      No performance impact (or sub-percent progression).
      
      * JavaScriptCore.exp:
          Update symbols.
      
      * bytecode/CodeBlock.cpp:
      (JSC::CodeBlock::mark):
      (JSC::CodeBlock::reparseForExceptionInfoIfNecessary):
      (JSC::CodeBlock::shrinkToFit):
      * bytecode/CodeBlock.h:
      (JSC::CodeBlock::addFunction):
      (JSC::CodeBlock::function):
          Unify m_functions & m_functionExpressions into a single Vector<RefPtr<FuncExprNode> >.
      
      * bytecompiler/BytecodeGenerator.cpp:
      (JSC::BytecodeGenerator::BytecodeGenerator):
      (JSC::BytecodeGenerator::addConstant):
      (JSC::BytecodeGenerator::emitNewFunction):
      (JSC::BytecodeGenerator::emitNewFunctionExpression):
      * bytecompiler/BytecodeGenerator.h:
          FunctionStacks now contain FunctionBodyNodes not FuncDeclNodes.
      
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::execute):
      (JSC::Interpreter::privateExecute):
          Update to reflect chnages in CodeBlock.
      
      * jit/JITOpcodes.cpp:
      (JSC::JIT::emit_op_new_func_exp):
      * jit/JITStubs.cpp:
      (JSC::DEFINE_STUB_FUNCTION):
      * jit/JITStubs.h:
      (JSC::):
          Update to reflect chnages in CodeBlock.
      
      * parser/Grammar.y:
          FunctionStacks now contain FunctionBodyNodes not FuncDeclNodes.
      
      * parser/NodeConstructors.h:
      (JSC::FuncExprNode::FuncExprNode):
      (JSC::FuncDeclNode::FuncDeclNode):
      * parser/Nodes.cpp:
      (JSC::ScopeNodeData::mark):
      (JSC::FunctionBodyNode::finishParsing):
      * parser/Nodes.h:
      (JSC::FunctionBodyNode::ident):
          Move m_ident & make methods from FuncDeclNode & FuncExprNode to FunctionBodyNode.
      
      * runtime/JSFunction.h:
      (JSC::FunctionBodyNode::make):
          Make this method inline (was FuncDeclNode::makeFunction).
      
      WebCore: Restrict use of FuncDeclNode & FuncExprNode to the parser.
      https://bugs.webkit.org/show_bug.cgi?id=28209
      
      Reviewed by Oliver Hunt.
      
      * inspector/JavaScriptDebugServer.cpp:
      (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
          Function signature change.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47089 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3dc1233c
    • staikos@webkit.org's avatar
      Not reviewed: repair email address · 094e3078
      staikos@webkit.org authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47082 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      094e3078
    • pkasting@chromium.org's avatar
      https://bugs.webkit.org/show_bug.cgi?id=27965 · 01be0f9a
      pkasting@chromium.org authored
      Merge skia/ImageSourceSkia.cpp into ImageSource.cpp.
      
      Reviewed by Adam Treat.
      
      * WebCore.gypi: Remove deleted file, plus a file that was deleted a while back.
      * platform/graphics/ImageSource.cpp:
      (WebCore::ImageSource::setData): Use slightly shorter syntax.
      (WebCore::ImageSource::filenameExtension): Use shorter syntax.
      (WebCore::ImageSource::createFrameAtIndex): Remove redundant call, clarify comments, reject all empty images.
      (WebCore::ImageSource::frameHasAlphaAtIndex): Clarify comments, use shorter syntax.
      * platform/graphics/skia/ImageSourceSkia.cpp: Removed.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47081 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      01be0f9a
    • atwilson@chromium.org's avatar
      WebCore: SharedWorkers do not exit when the last parent document exits · e57cf263
      atwilson@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=28170
      
      Reviewed by David Levin.
      
      Prevents Documents from being suspended/placed in the page cache if they are associated with shared workers.
      
      Added vector cache instead of nested hash tables for SharedWorker repository.
      
      Added SharedWorkerRepository::documentDetached API.
      
      * dom/Document.cpp:
      (WebCore::Document::detach):
      Notifies SharedWorkerRepository when the document is closing.
      * loader/FrameLoader.cpp:
      Updated FrameLoader to not cache the Document if it is associated with a SharedWorker (since we can't suspend workers yet, we need to shut them down).
      (WebCore::FrameLoader::canCachePageContainingThisFrame):
      (WebCore::FrameLoader::logCanCacheFrameDecision):
      * workers/DefaultSharedWorkerRepository.cpp:
      (WebCore::SharedWorkerProxy::create):
      (WebCore::SharedWorkerProxy::isClosing):
      Renamed from closing().
      (WebCore::SharedWorkerProxy::matches):
      Added manual equality function to replace old hash lookup.
      (WebCore::SharedWorkerProxy::isDocumentInWorkerDocuments):
      Checks to see if a document is in the worker's list of documents. Used to determine if page is suspendable.
      (WebCore::SharedWorkerProxy::SharedWorkerProxy):
      (WebCore::SharedWorkerProxy::addToWorkerDocuments):
      Added tracking of the worker's list of documents for lifecycle purposes.
      (WebCore::SharedWorkerProxy::documentDetached):
      Shuts down the proxy when the last associated document is detached.
      (WebCore::SharedWorkerProxy::close):
      Marks the proxy as closed so it is no longer shared with new instances.
      (WebCore::SharedWorkerProxy::workerContextDestroyed):
      Removes the proxy from the repository/frees the proxy when the associated SharedWorkerContext is destroyed.
      (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
      closing()->isClosing()
      (WebCore::SharedWorkerRepository::documentDetached):
      (WebCore::SharedWorkerRepository::hasSharedWorkers):
      Used by FrameLoader to determine if a page has shared workers and so cannot be suspended/cached.
      (WebCore::DefaultSharedWorkerRepository::hasSharedWorkers):
      (WebCore::DefaultSharedWorkerRepository::removeProxy):
      Invoked by workerContextDestroyed() to remove a SharedWorkerProxy from the repository.
      (WebCore::DefaultSharedWorkerRepository::documentDetached):
      (WebCore::DefaultSharedWorkerRepository::connectToWorker):
      (WebCore::DefaultSharedWorkerRepository::getProxy):
      * workers/DefaultSharedWorkerRepository.h:
      * workers/SharedWorkerRepository.h:
      
      LayoutTests: SharedWorkers do not exit when the last parent document exits.
      https://bugs.webkit.org/show_bug.cgi?id=28170
      
      Reviewed by David Levin.
      
      Added more tests to check that previous incarnations of the SharedWorker "name" are shut down.
      
      * fast/workers/shared-worker-replace-global-constructor.html-disabled:
      Fixed incorrect path to common script.
      * fast/workers/shared-worker-shared-expected.txt:
      * fast/workers/shared-worker-shared.html-disabled:
      Added more tests for sharing, including initial test to make sure previous incarnations of shared worker were closed.
      * fast/workers/worker-replace-global-constructor.html:
      Removed extraneous closing HTML tag.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47078 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e57cf263
    • cfleizach@apple.com's avatar
      WebCore: Bug 28200 - ListMarker should be included as part of the text value to parse · d82fd890
      cfleizach@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=28200
      
      Reviewed by Darin Adler.
      
      When returning text through the marker range attributes, the list marker text should
      also be included. It isn't included by default because a TextIterator is used which
      only looks at Nodes for text. A list marker does not have a corresponding node,
      so its text is not returned through accessibility. That is, until now.
      
      Test: platform/mac/accessibility/string-range-contains-listmarker.html
      
      * accessibility/AccessibilityObject.cpp:
      (WebCore::AccessibilityObject::listMarkerTextForRange):
      (WebCore::AccessibilityObject::stringForVisiblePositionRange):
      * accessibility/AccessibilityObject.h:
      * accessibility/mac/AccessibilityObjectWrapper.mm:
      (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
      (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
      (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
      * rendering/RenderListItem.h:
      
      Make markerText() public so that accessibility code can access it.
      
      WebKitTools: Bug 28200 - ListMarker should be included as part of the text value to parse
      https://bugs.webkit.org/show_bug.cgi?id=28200
      
      Reviewed by Darin Adler.
      
      Add the ability to retrieve a string given a plain NSRange.
      
      * DumpRenderTree/AccessibilityUIElement.cpp:
      (stringForRangeCallback):
      (AccessibilityUIElement::getJSClass):
      * DumpRenderTree/AccessibilityUIElement.h:
      * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
      (AccessibilityUIElement::valueDescription):
      (AccessibilityUIElement::stringForRange):
      * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
      (AccessibilityUIElement::stringForRange):
      
      LayoutTests: Bug 28200 - ListMarker should be included as part of the text value to parse
      https://bugs.webkit.org/show_bug.cgi?id=28200
      
      Reviewed by Darin Adler.
      
      Tests for checking that the list marker text is included when asking for text 
      through accessibility.
      
      * platform/mac/accessibility/bounds-for-range-expected.txt.
      * platform/mac/accessibility/string-range-contains-listmarker-expected.txt: Added.
      * platform/mac/accessibility/string-range-contains-listmarker.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47076 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d82fd890
    • pkasting@chromium.org's avatar
      https://bugs.webkit.org/show_bug.cgi?id=27965 · 00d740d0
      pkasting@chromium.org authored
      Move cairo/ImageSourceCairo.cpp to ImageSource.cpp in preparation for
      merging most of the other ImageSource*.cpp files with it.
      
      Reviewed by Adam Treat.
      
      * GNUmakefile.am:
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * platform/graphics/ImageSource.cpp: Copied from WebCore/platform/graphics/cairo/ImageSourceCairo.cpp.
      * platform/graphics/cairo/ImageSourceCairo.cpp: Removed.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47073 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      00d740d0
    • bfulgham@webkit.org's avatar
      Cairo-based Windows port does not handle the https protocol. · 6a908e95
      bfulgham@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=28171.
      
      Reviewed by Adam Roben.
      
      No new tests needed.  Existing https tests show this failure
      for WinCairo builds.
      
      * WebCore.vcproj/WebCoreCURL.vsprops: Add a few preprocessor
        definitions for SSL support in cURL.
      * platform/network/curl/ResourceHandleManager.h: Add new
        certificate path member variable.
      * platform/network/curl/ResourceHandleManager.cpp:
      (WebCore::certificateBundlePath): New method to retrieve the
        proper certificate resource bundle path.
      (WebCore::ResourceHandleManager::initializeHandle): Check for
        the resource bundle and use if available to activate SSL
        support.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47071 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6a908e95
    • eric@webkit.org's avatar
      2009-08-11 Maxime Simon <simon.maxime@gmail.com> · b46520bb
      eric@webkit.org authored
              Reviewed by Eric Seidel.
      
              [Haiku] Use Clipboard::create() instead of the constructor of Clipboard.
              https://bugs.webkit.org/show_bug.cgi?id=28127
      
              * editing/haiku/EditorHaiku.cpp:
              (WebCore::Editor::newGeneralClipboard):
              * page/haiku/EventHandlerHaiku.cpp:
              (WebCore::EventHandler::passWheelEventToWidget):
              (WebCore::EventHandler::createDraggingClipboard):
              * platform/haiku/ClipboardHaiku.cpp: Style cleanup. There were many whitespace end of lines.
              (WebCore::ClipboardHaiku::ClipboardHaiku):
              (WebCore::ClipboardHaiku::clearAllData):
              (WebCore::ClipboardHaiku::getData):
              (WebCore::ClipboardHaiku::setData):
              (WebCore::ClipboardHaiku::types):
              (WebCore::ClipboardHaiku::dragLocation):
              (WebCore::ClipboardHaiku::dragImage):
              (WebCore::ClipboardHaiku::setDragImage):
              (WebCore::ClipboardHaiku::dragImageElement):
              (WebCore::ClipboardHaiku::createDragImage):
              (WebCore::ClipboardHaiku::declareAndWriteDragImage):
              (WebCore::ClipboardHaiku::writeURL):
              (WebCore::ClipboardHaiku::writeRange):
              (WebCore::ClipboardHaiku::hasData):
              * platform/haiku/DragDataHaiku.cpp:
              (WebCore::DragData::createClipboard):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47068 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b46520bb
    • atwilson@chromium.org's avatar
      Speculative fix for GTK build break. · f90dc607
      atwilson@chromium.org authored
      Reviewed by NOBODY (Build break).
      
      * WebKit.pro:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47067 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f90dc607
    • atwilson@chromium.org's avatar
      WebCore: Speculative Windows build fix · a6301282
      atwilson@chromium.org authored
      Reviewed by NOBODY (build break).
      
      * WebCore.vcproj/WebCore.vcproj:
      Added missing build steps for non-debug targets.
      
      WebKit/win: Speculative Windows build fix - undo previous unnecessary change.
      
      Reviewed by NOBODY (build break).
      
      * WebCoreSupport/WebDesktopNotificationsDelegate.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47064 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a6301282
    • atwilson@chromium.org's avatar
      Speculative build fix for Qt build. · a40205cc
      atwilson@chromium.org authored
      Reviewed by NOBODY (build break)
      
      * WebCore.pro: Added /notifications to include path
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47059 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a40205cc
    • atwilson@chromium.org's avatar
      JavaScriptCore: Desktop Notifications API · bb49055e
      atwilson@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=25463
      
      Patch by John Gregg <johnnyg@google.com> on 2009-08-11
      Reviewed by Maciej Stachowiak.
      
      Adds ENABLE_NOTIFICATION flag.
      
      * Configurations/FeatureDefines.xcconfig:
      * wtf/Platform.h:
      
      WebCore: Desktop Notifications API
      https://bugs.webkit.org/show_bug.cgi?id=25463
      
      Patch by John Gregg <johnnyg@google.com> on 2009-08-11
      Reviewed by Maciej Stachowiak.
      
      Adds an implementation of desktop notifications, behind the compile-time
      flag ENABLE(NOTIFICATIONS).  This code simply relays calls on the JavaScript
      API through a NotificationProvider interface, which must provide the services
      to actually notify the user and manage the desktop.  This provider is injected
      into WebKit through the ChromeClient for normal page contexts and through the
      WorkerThread for worker contexts.
      
      A permissions API is defined on a per-origin basis, which allows a web page
      to check if its origin is allowed to show desktop notifications, and to request
      permission for its origin.
      
      * Configurations/FeatureDefines.xcconfig:
      * DerivedSources.cpp:
      * DerivedSources.make:
      * GNUmakefile.am:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.vcproj/WebCoreCommon.vsprops:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/js/JSDOMWindowCustom.cpp:
      * bindings/js/JSDesktopNotificationsCustom.cpp: Added.
      (WebCore::JSNotificationCenter::requestPermission):
      (WebCore::JSNotification::addEventListener):
      (WebCore::JSNotification::removeEventListener):
      * bindings/js/JSEventTarget.cpp:
      (WebCore::toJS):
      (WebCore::toEventTarget):
      * dom/EventTarget.cpp:
      (WebCore::EventTarget::toNotification):
      * dom/EventTarget.h:
      * loader/EmptyClients.h:
      (WebCore::EmptyChromeClient::notificationPresenter):
      * notifications: Added.
      * notifications/Notification.cpp: Added.
      (WebCore::Notification::Notification):
      (WebCore::Notification::~Notification):
      (WebCore::Notification::show):
      (WebCore::Notification::cancel):
      (WebCore::Notification::ondisplay):
      (WebCore::Notification::setOndisplay):
      (WebCore::Notification::onerror):
      (WebCore::Notification::setOnerror):
      (WebCore::Notification::onclose):
      (WebCore::Notification::setOnclose):
      (WebCore::Notification::getAttributeEventListener):
      (WebCore::Notification::setAttributeEventListener):
      (WebCore::Notification::clearAttributeEventListener):
      (WebCore::Notification::dispatchDisplayEvent):
      (WebCore::Notification::dispatchErrorEvent):
      (WebCore::Notification::dispatchCloseEvent):
      (WebCore::Notification::addEventListener):
      (WebCore::Notification::removeEventListener):
      (WebCore::Notification::handleEvent):
      (WebCore::Notification::dispatchEvent):
      * notifications/Notification.h: Added.
      (WebCore::Notification::create):
      (WebCore::Notification::isHTML):
      (WebCore::Notification::url):
      (WebCore::Notification::contents):
      (WebCore::Notification::scriptExecutionContext):
      (WebCore::Notification::toNotification):
      (WebCore::Notification::refEventTarget):
      (WebCore::Notification::derefEventTarget):
      * notifications/Notification.idl: Added.
      * notifications/NotificationCenter.cpp: Added.
      (WebCore::NotificationCenter::NotificationCenter):
      (WebCore::NotificationCenter::checkPermission):
      (WebCore::NotificationCenter::requestPermission):
      * notifications/NotificationCenter.h: Added.
      (WebCore::NotificationCenter::create):
      (WebCore::NotificationCenter::createHTMLNotification):
      (WebCore::NotificationCenter::createNotification):
      (WebCore::NotificationCenter::context):
      (WebCore::NotificationCenter::presenter):
      * notifications/NotificationCenter.idl: Added.
      * notifications/NotificationContents.h: Added.
      (WebCore::NotificationContents::NotificationContents):
      (WebCore::NotificationContents::icon):
      (WebCore::NotificationContents::title):
      (WebCore::NotificationContents::body):
      * notifications/NotificationPresenter.h: Added.
      (WebCore::NotificationPresenter::):
      (WebCore::NotificationPresenter::~NotificationPresenter):
      * page/Chrome.cpp:
      (WebCore::Chrome::notificationPresenter):
      * page/Chrome.h:
      * page/ChromeClient.h:
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::clear):
      (WebCore::DOMWindow::webkitNotifications):
      * page/DOMWindow.h:
      * page/DOMWindow.idl:
      * page/Page.h:
      * workers/WorkerContext.cpp:
      (WebCore::WorkerContext::~WorkerContext):
      (WebCore::WorkerContext::webkitNotifications):
      * workers/WorkerContext.h:
      * workers/WorkerContext.idl:
      * workers/WorkerThread.h:
      (WebCore::WorkerThread::getNotificationPresenter):
      (WebCore::WorkerThread::setNotificationPresenter):
      
      WebKit/mac: Desktop Notifications API
      https://bugs.webkit.org/show_bug.cgi?id=25643
      
      Patch by John Gregg <johnnyg@google.com> on 2009-08-11
      Reviewed by Maciej Stachowiak.
      
      Adds ENABLE_NOTIFICATION flag.
      
      * Configurations/FeatureDefines.xcconfig:
      
      WebKit/win: Desktop Notifications API
      https://bugs.webkit.org/show_bug.cgi?id=25643
      
      Patch by John Gregg <johnnyg@google.com> on 2009-08-11
      Reviewed by Maciej Stachowiak.
      
      Adds test hooks for notification features to WebCoreSupport for
      use in DumpRenderTree.
      
      * Interfaces/IWebDesktopNotificationsDelegate.idl: Added.
      * Interfaces/IWebUIDelegate.idl:
      * Interfaces/WebKit.idl:
      * WebCoreSupport/WebChromeClient.cpp:
      (WebChromeClient::WebChromeClient):
      * WebCoreSupport/WebChromeClient.h:
      (WebChromeClient::notificationPresenter):
      * WebCoreSupport/WebDesktopNotificationsDelegate.cpp: Added.
      (NotificationCOMWrapper::create):
      (NotificationCOMWrapper::NotificationCOMWrapper):
      (NotificationCOMWrapper::QueryInterface):
      (NotificationCOMWrapper::AddRef):
      (NotificationCOMWrapper::Release):
      (NotificationCOMWrapper::isHTML):
      (NotificationCOMWrapper::contentsURL):
      (NotificationCOMWrapper::iconURL):
      (NotificationCOMWrapper::title):
      (NotificationCOMWrapper::text):
      (NotificationCOMWrapper::notifyDisplay):
      (NotificationCOMWrapper::notifyError):
      (NotificationCOMWrapper::notifyClose):
      (WebDesktopNotificationsDelegate::WebDesktopNotificationsDelegate):
      (WebDesktopNotificationsDelegate::show):
      (WebDesktopNotificationsDelegate::cancel):
      (WebDesktopNotificationsDelegate::notificationObjectDestroyed):
      (WebDesktopNotificationsDelegate::requestPermission):
      (WebDesktopNotificationsDelegate::checkPermission):
      (WebDesktopNotificationsDelegate::notificationDelegate):
      * WebCoreSupport/WebDesktopNotificationsDelegate.h: Added.
      * WebCoreSupport/WebInspectorDelegate.h:
      (WebInspectorDelegate::desktopNotificationsDelegate):
      * WebKit.vcproj/Interfaces.vcproj:
      * WebKit.vcproj/WebKit.vcproj:
      
      WebKitTools: Add support for desktop notifications API to DumpRenderTree,
      and support for ENABLE_NOTIFICATIONS flag to build-webkit.
      
      Patch by John Gregg <johnnyg@google.com> on 2009-08-11
      Reviewed by Maciej Stachowiak.
      
      * DumpRenderTree/LayoutTestController.cpp:
      (grantDesktopNotificationPermissionCallback):
      (LayoutTestController::staticFunctions):
      (LayoutTestController::grantDesktopNotificationPermission):
      (LayoutTestController::checkDesktopNotificationPermission):
      * DumpRenderTree/LayoutTestController.h:
      * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp: Added.
      (DRTDesktopNotificationPresenter::DRTDesktopNotificationPresenter):
      (DRTDesktopNotificationPresenter::QueryInterface):
      (DRTDesktopNotificationPresenter::AddRef):
      (DRTDesktopNotificationPresenter::Release):
      (DRTDesktopNotificationPresenter::showDesktopNotification):
      (DRTDesktopNotificationPresenter::cancelDesktopNotification):
      (DRTDesktopNotificationPresenter::notificationDestroyed):
      (DRTDesktopNotificationPresenter::checkNotificationPermission):
      (DRTDesktopNotificationPresenter::requestNotificationPermission):
      * DumpRenderTree/win/DRTDesktopNotificationPresenter.h: Added.
      * DumpRenderTree/win/DumpRenderTree.vcproj:
      * DumpRenderTree/win/UIDelegate.cpp:
      (UIDelegate::UIDelegate):
      (UIDelegate::desktopNotificationsDelegate):
      * DumpRenderTree/win/UIDelegate.h:
      * Scripts/build-webkit:
      
      LayoutTests: Desktop Notifications API
      https://bugs.webkit.org/show_bug.cgi?id=25463
      
      Patch by John Gregg <johnnyg@google.com> on 2009-08-11
      Reviewed by Maciej Stachowiak.
      
      Adding layout tests for desktop notifications.  Currently these
      are all disabled because the flag for this feature is set to 0.
      
      * fast/notifications: Added.
      * fast/notifications/notifications-check-permission-expected.txt: Added.
      * fast/notifications/notifications-check-permission.html-disabled: Added.
       - Validates that checking permission for notifications works correctly.
      * fast/notifications/notifications-display-close-events-expected.txt: Added.
      * fast/notifications/notifications-display-close-events.html-disabled: Added.
       - Validates that the display and close events are fired correctly.
      * fast/notifications/notifications-double-show-expected.txt: Added.
      * fast/notifications/notifications-double-show.html-disabled: Added.
       - Validates that the same notification object cannot be shown twice.
      * fast/notifications/notifications-request-permission-expected.txt: Added.
      * fast/notifications/notifications-request-permission.html-disabled: Added.
       - Validates that requesting permission works correctly.
      * fast/notifications/notifications-with-permission-expected.txt: Added.
      * fast/notifications/notifications-with-permission.html-disabled: Added.
       - Validates that, with permission, showing a notification works correctly.
      * fast/notifications/notifications-without-permission-expected.txt: Added.
      * fast/notifications/notifications-without-permission.html-disabled: Added.
       - Validates that, without permission, showing a notification fails.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47056 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bb49055e
    • eric@webkit.org's avatar
      2009-08-11 Joseph Pecoraro <joepeck02@gmail.com> · 1e3b5794
      eric@webkit.org authored
              Reviewed by Timothy Hatcher.
      
              Inspector: Console Drawer is Toggling instead of Staying Open
              https://bugs.webkit.org/show_bug.cgi?id=28115
      
              * inspector/front-end/Drawer.js:
              (WebInspector.Drawer.prototype.showView): ensures the drawer will be open and showing the provided view
              * inspector/front-end/inspector.js:
              (WebInspector.showConsole): usees the new showView to guarantee the Drawer will be open
              (WebInspector.showChanges): uses the new showView guarantee the Drawer will be open
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47049 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1e3b5794
    • zimmermann@webkit.org's avatar
      2009-08-11 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> · b0121231
      zimmermann@webkit.org authored
              Reviewed by George Staikos.
      
              [WML] WMLPageState is not allowed to store the active card, it needs to be done per document
              https://bugs.webkit.org/show_bug.cgi?id=28180
      
              Don't store the active WMLCardElement in WMLPageState, but in WMLDocument.
              Otherwhise this may lead to crashes related to intrinsic event exeuction.
      
              Unfortunately select elements aren't testable by the layout tests, so adding
              a new manual test reproducing the crash.
      
              * manual-tests/wml/select-onpick-event-crash.wml: Added.
              * wml/WMLCardElement.cpp:
              (WebCore::WMLCardElement::determineActiveCard):
              * wml/WMLDoElement.cpp:
              (WebCore::WMLDoElement::defaultEventHandler):
              * wml/WMLDocument.cpp:
              (WebCore::WMLDocument::finishedParsing):
              * wml/WMLDocument.h:
              (WebCore::WMLDocument::activeCard):
              * wml/WMLGoElement.cpp:
              (WebCore::WMLGoElement::executeTask):
              * wml/WMLPageState.cpp:
              (WebCore::WMLPageState::WMLPageState):
              * wml/WMLPageState.h:
              * wml/WMLPrevElement.cpp:
              (WebCore::WMLPrevElement::executeTask):
              * wml/WMLRefreshElement.cpp:
              (WebCore::WMLRefreshElement::executeTask):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47048 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b0121231
    • pkasting@chromium.org's avatar
      WebCore: https://bugs.webkit.org/show_bug.cgi?id=28073 · 933b2ce1
      pkasting@chromium.org authored
      Treat icons with no bit count and no color count as 256-color for
      purposes of quality ranking.  Also fix a couple cases of a style
      violation.
      
      Reviewed by Eric Seidel.
      
      Test: fast/images/icon-0colors.html
      
      * platform/image-decoders/ico/ICOImageDecoder.cpp:
      (WebCore::ICOImageDecoder::processDirectory):
      (WebCore::ICOImageDecoder::readDirectoryEntry):
      
      LayoutTests: https://bugs.webkit.org/show_bug.cgi?id=28073
      Treat icons with no bit count and no color count as 256-color for
      purposes of quality ranking.
      
      Reviewed by Eric Seidel.
      
      * fast/images/icon-0colors.html: Added.
      * fast/images/resources/0colors.ico: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47042 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      933b2ce1
    • atwilson@chromium.org's avatar
      Need to refactor WorkerObjectProxy. · 364f6353
      atwilson@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=28136
      
      Reviewed by David Levin.
      
      Added WorkerReportingProxy for reporting worker state (exceptions, console messages, thread exited) to the parent.
      
      Existing tests are sufficient, as this is only a refactoring.
      
      * GNUmakefile.am:
      Added WorkerReportingProxy.h to build.
      * WebCore.gypi:
      Added WorkerReportingProxy.h to build.
      * WebCore.vcproj/WebCore.vcproj:
      Added WorkerReportingProxy.h to build.
      * WebCore.xcodeproj/project.pbxproj:
      Added WorkerReportingProxy.h to build.
      * workers/DedicatedWorkerContext.cpp:
      * workers/DedicatedWorkerContext.h:
      Removed addMessage/forwardException() APIs - now handled by WorkerReportingProxy.
      * workers/DedicatedWorkerThread.cpp:
      (WebCore::DedicatedWorkerThread::DedicatedWorkerThread):
      Changed constructor to pass WorkerReportingProxy to base class.
      * workers/DefaultSharedWorkerRepository.cpp:
      Updated SharedWorkerProxy to implement WorkerReportingProxy interface.
      (WebCore::SharedWorkerProxy::postExceptionToWorkerObject):
      (WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject):
      (WebCore::SharedWorkerProxy::workerContextClosed):
      (WebCore::SharedWorkerProxy::workerContextDestroyed):
      (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
      Now passes in WorkerReportingProxy when creating SharedWorkerThread.
      * workers/SharedWorkerContext.cpp:
      * workers/SharedWorkerContext.h:
      Removed addMessage/forwardException() APIs - now handled by WorkerReportingProxy.
      * workers/SharedWorkerThread.cpp:
      (WebCore::SharedWorkerThread::create):
      (WebCore::SharedWorkerThread::SharedWorkerThread):
      Passes WorkerReportingProxy to base class constructor.
      * workers/SharedWorkerThread.h:
      Constructor now takes a WorkerReportingProxy.
      * workers/WorkerContext.cpp:
      (WebCore::WorkerContext::~WorkerContext):
      Moved code that calls workerContextDestroyed() into base class so shared workers share this functionality.
      (WebCore::WorkerContext::close):
      Now notifies WorkerReportingProxy when the thread is closing.
      (WebCore::WorkerContext::reportException):
      Reports exceptions via WorkerReportingProxy.
      (WebCore::WorkerContext::addMessage):
      Reports console messages via WorkerReportingProxy.
      * workers/WorkerContext.h:
      * workers/WorkerObjectProxy.h:
      (WebCore::WorkerObjectProxy::workerContextClosed):
      Default empty implementation for dedicated workers.
      * workers/WorkerReportingProxy.h: Added.
      Base interface that contains APIs moved from WorkerObjectProxy.
      (WebCore::WorkerReportingProxy::~WorkerReportingProxy):
      * workers/WorkerThread.cpp:
      (WebCore::WorkerThread::WorkerThread):
      Updated constructor to accept a WorkerReportingProxy.
      * workers/WorkerThread.h:
      (WebCore::WorkerThread::workerReportingProxy):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47036 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      364f6353
    • hausmann@webkit.org's avatar
      Fix the Qt build after r47022. · d097da83
      hausmann@webkit.org authored
      Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2009-08-11
      Reviewed by NOBODY (build fix).
      
      Use the new markChildren() pattern for marking aggregate/child objects.
      
      * bridge/qt/qt_instance.cpp:
      (JSC::Bindings::QtRuntimeObjectImp::markChildren):
      (JSC::Bindings::QtInstance::markAggregate):
      * bridge/qt/qt_instance.h:
      * bridge/qt/qt_runtime.cpp:
      (JSC::Bindings::QtRuntimeMetaMethod::markChildren):
      * bridge/qt/qt_runtime.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47030 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d097da83
    • hausmann@webkit.org's avatar
      Fix the build on the Qt build bot by making the generated JS bindings · 2025fbe2
      hausmann@webkit.org authored
      files depend on the code generator itself.
      
      Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2009-08-11
      Reviewed by Holger Freyther.
      
      * WebCore.pro:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47028 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2025fbe2
  3. 10 Aug, 2009 4 commits
    • oliver@apple.com's avatar
      Stack overflow crash in JavaScript garbage collector mark pass · 5fca29f7
      oliver@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=12216
      
      Reviewed by Gavin Barraclough and Sam Weinig
      
      Make the GC mark phase iterative by using an explicit mark stack.
      To do this marking any single object is performed in multiple stages
        * The object is appended to the MarkStack, this sets the marked
          bit for the object using the new markDirect() function, and then
          returns
        * When the MarkStack is drain()ed the object is popped off the stack
          and markChildren(MarkStack&) is called on the object to collect
          all of its children.  drain() then repeats until the stack is empty.
      
      Additionally I renamed a number of methods from 'mark' to 'markAggregate'
      in order to make it more clear that marking of those object was not
      going to result in an actual recursive mark.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47022 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5fca29f7
    • jorlow@chromium.org's avatar
      2009-08-10 Jeremy Orlow <jorlow@chromium.org> · 6061b045
      jorlow@chromium.org authored
              Reviewed by Eric Seidel.
      
              Renamed all V8 NPN_ functions to _NPN_ to match JSC and make them "private".
              https://bugs.webkit.org/show_bug.cgi?id=28089
      
              Rename all the NPN_foo functions to _NPN_foo so that they can't directly be
              called by mistake.  This roughly matches the way JSC does it, which is an
              additional advantage.
      
              * bindings/v8/NPV8Object.cpp:
              (npCreateV8ScriptObject):
              (_NPN_Invoke):
              (_NPN_InvokeDefault):
              (_NPN_Evaluate):
              (_NPN_EvaluateHelper):
              (_NPN_GetProperty):
              (_NPN_SetProperty):
              (_NPN_RemoveProperty):
              (_NPN_HasProperty):
              (_NPN_HasMethod):
              (_NPN_SetException):
              (_NPN_Enumerate):
              (_NPN_Construct):
              * bindings/v8/ScriptController.cpp:
              (WebCore::ScriptController::clearScriptObjects):
              (WebCore::ScriptController::createScriptInstanceForWidget):
              (WebCore::ScriptController::cleanupScriptObjectsForPlugin):
              * bindings/v8/V8NPObject.cpp:
              (npObjectInvokeImpl):
              (npObjectGetProperty):
              (npObjectIndexedPropertyGetter):
              (npObjectGetIndexedProperty):
              (npObjectSetProperty):
              (npObjectIndexedPropertySetter):
              (npObjectSetIndexedProperty):
              (weakNPObjectCallback):
              (createV8ObjectForNPObject):
              (forgetV8ObjectForNPObject):
              * bindings/v8/V8NPUtils.cpp:
              (getStringIdentifier):
              * bindings/v8/npruntime.cpp:
              * bindings/v8/npruntime_impl.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47021 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6061b045
    • jorlow@chromium.org's avatar
      2009-08-10 Jeremy Orlow <jorlow@chromium.org> · 0888f443
      jorlow@chromium.org authored
              Reviewed by Brady Eidson.
      
              Change ___Storage.key() to match current spec behavior.
              https://bugs.webkit.org/show_bug.cgi?id=28112
      
              The current WebStorage spec says that ___Storage.key() should return null when
              the index is out of bounds, rather than an exception.  A bunch of logic can be
              simplified after this change.
      
              * bindings/js/JSStorageCustom.cpp:
              (WebCore::JSStorage::getPropertyNames):
              * bindings/v8/custom/V8StorageCustom.cpp:
              (WebCore::V8Custom::v8StorageNamedPropertyEnumerator):
              * storage/Storage.cpp:
              (WebCore::Storage::key):
              * storage/Storage.h:
              * storage/Storage.idl:
              * storage/StorageArea.h:
              * storage/StorageAreaImpl.cpp:
              (WebCore::StorageAreaImpl::key):
              * storage/StorageAreaImpl.h:
              * storage/StorageMap.cpp:
              (WebCore::StorageMap::key):
              * storage/StorageMap.h:
      
      2009-08-10  Jeremy Orlow  <jorlow@chromium.org>
      
              Reviewed by Brady Eidson.
      
              ___Storage.key() changed to match new spec behavior; update layout tests.
              https://bugs.webkit.org/show_bug.cgi?id=28112
      
              The current WebStorage spec says that ___Storage.key() should return null when
              the index is out of bounds, rather than an exception.  Change the one layout
              test that verified this behavior.
      
              * storage/domstorage/localstorage/simple-usage-expected.txt:
              * storage/domstorage/localstorage/simple-usage.html:
              * storage/domstorage/sessionstorage/simple-usage-expected.txt:
              * storage/domstorage/sessionstorage/simple-usage.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47020 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0888f443
    • jorlow@chromium.org's avatar
      Fix silly change log bustage. · 729d29e9
      jorlow@chromium.org authored
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47019 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      729d29e9