summaryrefslogtreecommitdiffstats
path: root/WebCore/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/ChangeLog')
-rw-r--r--WebCore/ChangeLog14427
1 files changed, 14426 insertions, 1 deletions
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index c660e9d..83f63cc 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,14428 @@
+2010-10-20 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r70040.
+ http://trac.webkit.org/changeset/70040
+ https://bugs.webkit.org/show_bug.cgi?id=48042
+
+ "Reverting a performance regression detected by page_cycler"
+ (Requested by hayato on #webkit).
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
+ (WebCore::CSSStyleSelector::checkSelector):
+ * css/CSSStyleSelector.h:
+
+2010-10-19 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Gavin Barraclough.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47851
+
+ Avoid buffer overflows in CSSPrimitiveValue's use of
+ DecimalNumber, and pass the buffer size in InspectorBasicValue.
+
+ Test: fast/css/large-value-csstext.html
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::formatNumber):
+ * inspector/InspectorValues.cpp:
+ (WebCore::InspectorBasicValue::writeJSON):
+
+2010-10-20 Dumitru Daniliuc <dumi@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add SecurityOrigin::threadsafeCopy() to the list of exported symbols.
+ https://bugs.webkit.org/show_bug.cgi?id=40655
+
+ * WebCore.exp.in:
+
+2010-10-20 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r70165.
+ http://trac.webkit.org/changeset/70165
+ https://bugs.webkit.org/show_bug.cgi?id=48007
+
+ It broke tests on Qt bot (Requested by Ossy on #webkit).
+
+ * ForwardingHeaders/wtf/text/TextPosition.h: Removed.
+ * bindings/js/ScriptSourceCode.h:
+ (WebCore::ScriptSourceCode::ScriptSourceCode):
+ * bindings/v8/ScheduledAction.cpp:
+ (WebCore::ScheduledAction::ScheduledAction):
+ * bindings/v8/ScriptController.cpp:
+ (WebCore::ScriptController::eventHandlerLineNumber):
+ (WebCore::ScriptController::eventHandlerColumnNumber):
+ * bindings/v8/ScriptController.h:
+ * bindings/v8/ScriptEventListener.cpp:
+ (WebCore::createAttributeEventListener):
+ * bindings/v8/ScriptSourceCode.h:
+ (WebCore::ScriptSourceCode::ScriptSourceCode):
+ (WebCore::ScriptSourceCode::startLine):
+ * bindings/v8/V8LazyEventListener.cpp:
+ (WebCore::V8LazyEventListener::V8LazyEventListener):
+ (WebCore::V8LazyEventListener::prepareListenerObject):
+ * bindings/v8/V8LazyEventListener.h:
+ (WebCore::V8LazyEventListener::create):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::compileScript):
+ (WebCore::V8Proxy::evaluate):
+ (WebCore::V8Proxy::runScript):
+ * bindings/v8/V8Proxy.h:
+ * bindings/v8/WorkerContextExecutionProxy.cpp:
+ (WebCore::WorkerContextExecutionProxy::evaluate):
+ (WebCore::WorkerContextExecutionProxy::runScript):
+ * bindings/v8/WorkerContextExecutionProxy.h:
+ * bindings/v8/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::evaluate):
+ * dom/PendingScript.cpp:
+ (WebCore::PendingScript::releaseElementAndClear):
+ * dom/PendingScript.h:
+ (WebCore::PendingScript::PendingScript):
+ (WebCore::PendingScript::operator=):
+ (WebCore::PendingScript::startingLineNumber):
+ * dom/ScriptableDocumentParser.h:
+ * dom/XMLDocumentParser.h:
+ * dom/XMLDocumentParserLibxml2.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::startElementNs):
+ (WebCore::XMLDocumentParser::endElementNs):
+ (WebCore::XMLDocumentParser::lineNumber):
+ (WebCore::XMLDocumentParser::columnNumber):
+ * dom/XMLDocumentParserQt.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::parseStartElement):
+ (WebCore::XMLDocumentParser::parseEndElement):
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
+ (WebCore::HTMLDocumentParser::columnNumber):
+ * html/parser/HTMLDocumentParser.h:
+ * html/parser/HTMLScriptRunner.cpp:
+ (WebCore::HTMLScriptRunner::sourceFromPendingScript):
+ (WebCore::HTMLScriptRunner::execute):
+ (WebCore::HTMLScriptRunner::runScript):
+ * html/parser/HTMLScriptRunner.h:
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
+ (WebCore::HTMLTreeBuilder::takeScriptToProcess):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processScriptStartTag):
+ * html/parser/HTMLTreeBuilder.h:
+
+2010-10-20 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=48001
+
+ Make boxes place themselves properly in the block direction. Get basic painting working for spans and add a test that
+ verifies that span painting and replaced element painting (like images) works correctly.
+
+ Added fast/blockflow/basic-vertical-line.html
+
+ * rendering/InlineBox.cpp:
+ (WebCore::InlineBox::logicalHeight):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
+ (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
+ (WebCore::verticalPositionForBox):
+ (WebCore::InlineFlowBox::computeLogicalBoxHeights):
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
+ (WebCore::InlineFlowBox::flipLinesInBlockDirection):
+ (WebCore::InlineFlowBox::paintBoxDecorations):
+ (WebCore::InlineFlowBox::paintMask):
+ * rendering/InlineFlowBox.h:
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::isFlippedLinesWritingMode):
+
+2010-10-20 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=47514 CSS
+ transforms should affect scrolling
+
+ This patch causes topmostPosition, lowestPosition,
+ leftmostPosition, and rightmostPosition to take transforms into
+ account.
+
+ Compute the topmost/lowest/leftmost/rightmost position without
+ factoring in the block's transform until the end.
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::topmostPosition):
+ (WebCore::RenderBlock::lowestPosition):
+ (WebCore::RenderBlock::rightmostPosition):
+ (WebCore::RenderBlock::leftmostPosition):
+ * rendering/RenderBlock.h:
+
+ transformedFrameRect() returns the frameRect() transformed to the
+ layer's transform. applyLayerTransformToRect() does the same thing
+ for the input rect.
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::applyLayerTransformToRect):
+ (WebCore::RenderBox::transformedFrameRect):
+ (WebCore::RenderBox::topmostPosition):
+ (WebCore::RenderBox::lowestPosition):
+ (WebCore::RenderBox::rightmostPosition):
+ (WebCore::RenderBox::leftmostPosition):
+ * rendering/RenderBox.h:
+ * rendering/RenderMedia.cpp:
+ (WebCore::RenderMedia::topmostPosition):
+ (WebCore::RenderMedia::lowestPosition):
+ (WebCore::RenderMedia::rightmostPosition):
+ (WebCore::RenderMedia::leftmostPosition):
+ * rendering/RenderMedia.h:
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::topmostPosition):
+ (WebCore::RenderTableSection::lowestPosition):
+ (WebCore::RenderTableSection::rightmostPosition):
+ (WebCore::RenderTableSection::leftmostPosition):
+ * rendering/RenderTableSection.h:
+
+2010-10-20 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Not reviewed.
+
+ Rename SVGAnimatedProperty* -> DeprecatedSVGAnimatedProperty*
+ https://bugs.webkit.org/show_bug.cgi?id=47973
+
+ Copy headers from svg/properties, otherwhise builds from scratch on win are broken.
+
+ * WebCore.vcproj/copyForwardingHeaders.cmd:
+
+2010-10-20 Peter Rybin <peter.rybin@gmail.com>
+
+ Reviewed by Adam Barth.
+
+ HTML parser should provide script column position within HTML document to JavaScript engine
+ https://bugs.webkit.org/show_bug.cgi?id=45271
+
+ Replaces line number with TextPosition struct so that script engine
+ gets script starting line/column.
+
+ * ForwardingHeaders/wtf/text/TextPosition.h: Added.
+ * bindings/js/ScriptSourceCode.h:
+ (WebCore::ScriptSourceCode::ScriptSourceCode):
+ * bindings/v8/ScheduledAction.cpp:
+ (WebCore::ScheduledAction::ScheduledAction):
+ * bindings/v8/ScriptController.cpp:
+ (WebCore::ScriptController::eventHandlerPosition):
+ * bindings/v8/ScriptController.h:
+ * bindings/v8/ScriptEventListener.cpp:
+ (WebCore::createAttributeEventListener):
+ * bindings/v8/ScriptSourceCode.h:
+ (WebCore::ScriptSourceCode::ScriptSourceCode):
+ (WebCore::ScriptSourceCode::startLine):
+ (WebCore::ScriptSourceCode::startPosition):
+ * bindings/v8/V8LazyEventListener.cpp:
+ (WebCore::V8LazyEventListener::V8LazyEventListener):
+ (WebCore::V8LazyEventListener::prepareListenerObject):
+ * bindings/v8/V8LazyEventListener.h:
+ (WebCore::V8LazyEventListener::create):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::compileScript):
+ (WebCore::V8Proxy::evaluate):
+ (WebCore::V8Proxy::runScript):
+ * bindings/v8/V8Proxy.h:
+ * bindings/v8/WorkerContextExecutionProxy.cpp:
+ (WebCore::WorkerContextExecutionProxy::evaluate):
+ (WebCore::WorkerContextExecutionProxy::runScript):
+ * bindings/v8/WorkerContextExecutionProxy.h:
+ * bindings/v8/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::evaluate):
+ * dom/PendingScript.cpp:
+ (WebCore::PendingScript::releaseElementAndClear):
+ * dom/PendingScript.h:
+ (WebCore::PendingScript::PendingScript):
+ (WebCore::PendingScript::operator=):
+ (WebCore::PendingScript::startingPosition):
+ * dom/ScriptableDocumentParser.h:
+ * dom/XMLDocumentParser.h:
+ * dom/XMLDocumentParserLibxml2.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::startElementNs):
+ (WebCore::XMLDocumentParser::endElementNs):
+ (WebCore::XMLDocumentParser::lineNumber):
+ (WebCore::XMLDocumentParser::columnNumber):
+ (WebCore::XMLDocumentParser::textPosition):
+ (WebCore::XMLDocumentParser::textPositionOneBased):
+ * dom/XMLDocumentParserQt.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::textPosition):
+ (WebCore::XMLDocumentParser::parseStartElement):
+ (WebCore::XMLDocumentParser::parseEndElement):
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
+ (WebCore::HTMLDocumentParser::textPosition):
+ * html/parser/HTMLDocumentParser.h:
+ * html/parser/HTMLScriptRunner.cpp:
+ (WebCore::HTMLScriptRunner::sourceFromPendingScript):
+ (WebCore::HTMLScriptRunner::execute):
+ (WebCore::HTMLScriptRunner::runScript):
+ * html/parser/HTMLScriptRunner.h:
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::uninitializedPositionValue1):
+ (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
+ (WebCore::HTMLTreeBuilder::takeScriptToProcess):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processScriptStartTag):
+ * html/parser/HTMLTreeBuilder.h:
+
+2010-10-20 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47994
+
+ Make computeBlockDirectionPositionsForLine writing-mode-aware. None of the functions it calls are patched yet.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
+
+2010-10-20 John Abd-El-Malek <jam@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [chromium] Fix crash when mousing over scrollview
+ https://bugs.webkit.org/show_bug.cgi?id=47956
+
+ Test: plugins/mouse-move-over-plugin-in-frame.html
+
+ * platform/Widget.h:
+ (WebCore::Widget::isPluginContainer):
+
+2010-10-20 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r70149.
+ http://trac.webkit.org/changeset/70149
+ https://bugs.webkit.org/show_bug.cgi?id=47989
+
+ "Build breaks in mac and win" (Requested by satish on
+ #webkit).
+
+ * dom/Element.cpp:
+ (WebCore::Element::computeInheritedLanguage):
+ * page/SpeechInput.cpp:
+ (WebCore::SpeechInput::startRecognition):
+ * page/SpeechInput.h:
+ * page/SpeechInputClient.h:
+ * platform/mock/SpeechInputClientMock.cpp:
+ (WebCore::SpeechInputClientMock::startRecognition):
+ (WebCore::SpeechInputClientMock::setRecognitionResult):
+ (WebCore::SpeechInputClientMock::timerFired):
+ * platform/mock/SpeechInputClientMock.h:
+ * rendering/TextControlInnerElements.cpp:
+ (WebCore::TextControlInnerElement::attachInnerElement):
+ (WebCore::SearchFieldCancelButtonElement::detach):
+ (WebCore::SpinButtonElement::defaultEventHandler):
+ (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
+ (WebCore::InputFieldSpeechButtonElement::detach):
+
+2010-10-19 Leandro Gracia Gil <leandrogracia@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ Patch the current speech input implementation to use and validate the
+ nearest language tag. The language is now passed to the startRecognition
+ methods so that language-specific recognition could be used. Also added
+ a second parameter to setMockSpeechInputResult for the language used in
+ speech recognition.
+ https://bugs.webkit.org/show_bug.cgi?id=47089
+
+ This is the 2nd of a 4-sided patch in Chromium and WebKit. For more
+ details see http://codereview.chromium.org/3615005/show and
+ http://codereview.chromium.org/3595018/show.
+
+ Test: fast/speech/input-text-language-tag.html
+
+ * dom/Element.cpp:
+ (WebCore::Element::computeInheritedLanguage): includes a brief character
+ validation for the BCP 47 language tag.
+ * page/SpeechInput.cpp:
+ (WebCore::SpeechInput::startRecognition):
+ * page/SpeechInput.h:
+ * page/SpeechInputClient.h:
+ * platform/mock/SpeechInputClientMock.cpp:
+ (WebCore::SpeechInputClientMock::startRecognition):
+ (WebCore::SpeechInputClientMock::setRecognitionResult): results are now
+ stored by language using a hash map.
+ (WebCore::SpeechInputClientMock::timerFired):
+ * platform/mock/SpeechInputClientMock.h:
+ * rendering/TextControlInnerElements.cpp:
+ (WebCore::TextControlInnerElement::attachInnerElement):
+ (WebCore::SearchFieldCancelButtonElement::detach):
+ (WebCore::SpinButtonElement::defaultEventHandler):
+ (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
+ (WebCore::InputFieldSpeechButtonElement::detach):
+
+2010-10-20 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Merge ColorSpace and ImageColorSpace enums
+ https://bugs.webkit.org/show_bug.cgi?id=47922
+
+ Merging these two enums makes it easier to implement color-interpolation as well as
+ color-interpolation-filter for SVG.
+ Added ColorSpaceLinearRGB to the ColorSpace enum and changed ImageColorSpace to ColorSpace in all related
+ files. Renamed enum entries DeviceColorSpace and sRGBColorSpace to ColorSpaceDeviceRGB and ColorSpaceSRGB
+ to follow webkit style rules.
+ Removed gray scale support in ImageBuffer since it is not used anymore on WebKit.
+
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator ColorSpace):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::paintCaret):
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::paint):
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setAllAttributesToDefault):
+ (WebCore::CanvasRenderingContext2D::setShadow):
+ (WebCore::CanvasRenderingContext2D::applyShadow):
+ (WebCore::CanvasRenderingContext2D::drawImage):
+ (WebCore::CanvasRenderingContext2D::drawImageFromRect):
+ (WebCore::CanvasRenderingContext2D::drawTextInternal):
+ * html/canvas/CanvasStyle.cpp:
+ (WebCore::CanvasStyle::applyStrokeColor):
+ (WebCore::CanvasStyle::applyFillColor):
+ * inspector/InspectorController.cpp:
+ (WebCore::drawOutlinedQuad):
+ (WebCore::InspectorController::drawElementTitle):
+ * mathml/RenderMathMLBlock.cpp:
+ (WebCore::RenderMathMLBlock::paint):
+ * mathml/RenderMathMLFraction.cpp:
+ (WebCore::RenderMathMLFraction::paint):
+ * mathml/RenderMathMLRoot.cpp:
+ (WebCore::RenderMathMLRoot::paint):
+ * mathml/RenderMathMLSquareRoot.cpp:
+ (WebCore::RenderMathMLSquareRoot::paint):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::paintContents):
+ * page/PrintContext.cpp:
+ (WebCore::PrintContext::spoolAllPagesWithBoundaries):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollbarTheme.h:
+ (WebCore::ScrollbarTheme::paintScrollCorner):
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paintScrollCorner):
+ * platform/chromium/PopupMenuChromium.cpp:
+ (WebCore::PopupContainer::paintBorder):
+ (WebCore::PopupListBox::paint):
+ (WebCore::PopupListBox::paintRow):
+ * platform/chromium/ScrollbarThemeChromium.cpp:
+ (WebCore::ScrollbarThemeChromium::paintTickmarks):
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+ (WebCore::ScrollbarThemeChromiumMac::paint):
+ * platform/graphics/ColorSpace.h:
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::setStrokePattern):
+ (WebCore::GraphicsContext::setFillPattern):
+ (WebCore::GraphicsContext::setStrokeGradient):
+ (WebCore::GraphicsContext::setFillGradient):
+ * platform/graphics/GraphicsContextPrivate.h:
+ (WebCore::GraphicsContextState::GraphicsContextState):
+ * platform/graphics/ImageBuffer.cpp:
+ (WebCore::ImageBuffer::transformColorSpace):
+ * platform/graphics/ImageBuffer.h:
+ (WebCore::ImageBuffer::create):
+ * platform/graphics/cairo/ImageBufferCairo.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ * platform/graphics/cg/ColorCG.cpp:
+ (WebCore::cachedCGColorSpace):
+ (WebCore::cachedCGColor):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::linearRGBColorSpaceRef):
+ * platform/graphics/cg/GraphicsContextCG.h:
+ * platform/graphics/cg/ImageBufferCG.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::cgImage):
+ (WebCore::ImageBuffer::draw):
+ * platform/graphics/cg/ImageBufferData.h:
+ * platform/graphics/cg/ImageCG.cpp:
+ (WebCore::imageWithColorSpace):
+ * platform/graphics/chromium/GLES2Canvas.cpp:
+ (WebCore::GLES2Canvas::clearRect):
+ (WebCore::GLES2Canvas::fillRect):
+ * platform/graphics/chromium/TransparencyWin.cpp:
+ (WebCore::TransparencyWin::setupLayerForWhiteLayer):
+ * platform/graphics/filters/FEColorMatrix.cpp:
+ (WebCore::FEColorMatrix::apply):
+ * platform/graphics/filters/FEComposite.cpp:
+ (WebCore::FEComposite::apply):
+ * platform/graphics/filters/FEFlood.cpp:
+ (WebCore::FEFlood::apply):
+ * platform/graphics/filters/FEMerge.cpp:
+ (WebCore::FEMerge::apply):
+ * platform/graphics/filters/FEOffset.cpp:
+ (WebCore::FEOffset::apply):
+ * platform/graphics/filters/FETile.cpp:
+ (WebCore::FETile::apply):
+ * platform/graphics/filters/FilterEffect.cpp:
+ (WebCore::FilterEffect::effectContext):
+ * platform/graphics/filters/SourceAlpha.cpp:
+ (WebCore::SourceAlpha::apply):
+ * platform/graphics/filters/SourceGraphic.cpp:
+ (WebCore::SourceGraphic::apply):
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::MediaPlayerPrivateGStreamer::paint):
+ * platform/graphics/gtk/FontGtk.cpp:
+ (WebCore::Font::drawComplexText):
+ * platform/graphics/mac/GraphicsContextMac.mm:
+ (WebCore::GraphicsContext::drawFocusRing):
+ * platform/graphics/mac/GraphicsLayerCA.mm:
+ (WebCore::setLayerBorderColor):
+ (WebCore::setLayerBackgroundColor):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::draw):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
+ * platform/graphics/win/FontCGWin.cpp:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::drawFocusRing):
+ * platform/graphics/win/GraphicsLayerCACF.cpp:
+ (WebCore::setLayerBorderColor):
+ (WebCore::setLayerBackgroundColor):
+ * platform/graphics/win/ImageCGWin.cpp:
+ (WebCore::BitmapImage::getHBITMAPOfSize):
+ * platform/graphics/win/ImageCairoWin.cpp:
+ (WebCore::BitmapImage::getHBITMAPOfSize):
+ (WebCore::BitmapImage::drawFrameMatchingSourceSize):
+ * platform/graphics/win/WebLayer.cpp:
+ (WebCore::WebLayer::drawInContext):
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContext::clearRect):
+ (WebCore::GraphicsContext::fillRect):
+ * platform/graphics/wince/ImageWinCE.cpp:
+ (WebCore::BitmapImage::getHBITMAPOfSize):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
+ (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
+ (WebCore::paintMediaButton):
+ (WebCore::RenderThemeGtk::paintMediaSliderTrack):
+ (WebCore::RenderThemeGtk::paintMediaSliderThumb):
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::paint):
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupMenuWin::paint):
+ * platform/win/WebCoreTextRenderer.cpp:
+ (WebCore::doDrawTextAtPoint):
+ * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
+ (WebCore::drawTextWithSpacing):
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::paintMissingPluginIcon):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::beginTransparencyLayers):
+ (WebCore::RenderLayer::paintResizer):
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::paint):
+ * rendering/RenderMediaControlsChromium.cpp:
+ (WebCore::paintMediaButton):
+ (WebCore::paintMediaSlider):
+ (WebCore::paintMediaVolumeSlider):
+ (WebCore::paintMediaTimelineContainer):
+ * rendering/RenderSVGImage.cpp:
+ (WebCore::RenderSVGImage::paint):
+ * rendering/RenderSVGResourceClipper.cpp:
+ (WebCore::RenderSVGResourceClipper::applyClippingToContext):
+ * rendering/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::applyResource):
+ (WebCore::RenderSVGResourceFilter::postApplyResource):
+ * rendering/RenderSVGResourceGradient.cpp:
+ (WebCore::createMaskAndSwapContextForTextGradient):
+ * rendering/RenderSVGResourceMasker.cpp:
+ (WebCore::RenderSVGResourceMasker::applyResource):
+ (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
+ * rendering/RenderSVGResourcePattern.cpp:
+ (WebCore::RenderSVGResourcePattern::createTileImage):
+ * rendering/RenderSVGResourceSolidColor.cpp:
+ (WebCore::RenderSVGResourceSolidColor::applyResource):
+ * rendering/RenderScrollbarTheme.cpp:
+ (WebCore::RenderScrollbarTheme::paintScrollCorner):
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::paintProgressBar):
+ (WebCore::RenderThemeMac::paintMenuListButton):
+ * rendering/RenderThemeSafari.cpp:
+ (WebCore::RenderThemeSafari::paintMenuListButton):
+ * rendering/RenderThemeWinCE.cpp:
+ (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
+ (WebCore::RenderThemeWinCE::paintSliderTrack):
+ (WebCore::RenderThemeWinCE::paintSliderThumb):
+ * rendering/SVGImageBufferTools.cpp:
+ (WebCore::SVGImageBufferTools::createImageBuffer):
+ * rendering/SVGImageBufferTools.h:
+ * rendering/style/StyleRareInheritedData.cpp:
+ (WebCore::StyleRareInheritedData::StyleRareInheritedData):
+ * svg/SVGFEImageElement.cpp:
+ (WebCore::SVGFEImageElement::build):
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::nativeImageForCurrentFrame):
+ * svg/graphics/filters/SVGFEImage.cpp:
+ (WebCore::FEImage::apply):
+
+2010-10-20 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ Remove left over code after moving Cairo port to ShadowContext
+ https://bugs.webkit.org/show_bug.cgi?id=47929
+
+ ImageBufferFilter is not needed anymore, since Cairo is using ShadowContext now.
+ Made kernelPosition() in FEGaussianBlur a inline function instead of a static function.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/graphics/filters/FEGaussianBlur.cpp:
+ (WebCore::kernelPosition):
+ * platform/graphics/filters/FEGaussianBlur.h:
+ * platform/graphics/filters/ImageBufferFilter.cpp: Removed.
+ * platform/graphics/filters/ImageBufferFilter.h: Removed.
+
+2010-10-20 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Not reviewed.
+
+ Fix efl build, by adding the new svg/properties include directory.
+
+ * CMakeLists.txt:
+
+2010-10-19 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: expose request/response cookies in HAR
+ https://bugs.webkit.org/show_bug.cgi?id=47894
+
+ Test: inspector/cookie-parser.html
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/CookieParser.js: Added.
+ * inspector/front-end/HAREntry.js:
+ (WebInspector.HAREntry.prototype._buildRequest):
+ (WebInspector.HAREntry.prototype._buildResponse):
+ (WebInspector.HAREntry.prototype._buildCookies):
+ (WebInspector.HAREntry.prototype._buildCookie):
+ * inspector/front-end/Resource.js: Parse Cookie/Set-Cookie headers and expose cookies.
+ (WebInspector.Resource.prototype.set requestHeaders):
+ (WebInspector.Resource.prototype.get requestCookies):
+ (WebInspector.Resource.prototype.set responseHeaders):
+ (WebInspector.Resource.prototype.get responseCookies):
+ (WebInspector.Resource.prototype._parseRequestCookies):
+ (WebInspector.Resource.prototype._parseResponseCookies):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+
+2010-10-20 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Not reviewed.
+
+ Fix non-mac builds, by adding the new svg/properties include directory.
+
+ * GNUmakefile.am:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCoreCommon.vsprops:
+
+2010-10-20 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Adam Roben.
+
+ Rename SVGAnimatedProperty* -> DeprecatedSVGAnimatedProperty*
+ https://bugs.webkit.org/show_bug.cgi?id=47973
+
+ Prepare fixing bug 47905, redesigning SVGAnimatedProperty. As we're going to move type by type
+ to the new animated property concept, keep the old one around, marked deprecated, until the
+ transition is finished.
+
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/scripts/CodeGeneratorObjC.pm:
+ * bindings/scripts/CodeGeneratorV8.pm:
+ * svg/DeprecatedSVGAnimatedProperty.h: Copied from svg/SVGAnimatedProperty.h.
+ (WebCore::DeprecatedSVGAnimatedPropertyTearOff::DeprecatedSVGAnimatedPropertyTearOff):
+ (WebCore::DeprecatedSVGAnimatedPropertyTearOff::~DeprecatedSVGAnimatedPropertyTearOff):
+ (WebCore::DeprecatedSVGAnimatedProperty::~DeprecatedSVGAnimatedProperty):
+ (WebCore::DeprecatedSVGAnimatedProperty::DeprecatedSVGAnimatedProperty):
+ (WebCore::DeprecatedSVGAnimatedProperty::value):
+ (WebCore::DeprecatedSVGAnimatedProperty::baseValue):
+ * svg/DeprecatedSVGAnimatedPropertyTraits.h: Copied from svg/SVGAnimatedPropertyTraits.h.
+ * svg/DeprecatedSVGAnimatedTemplate.h: Copied from svg/SVGAnimatedTemplate.h.
+ (WebCore::DeprecatedSVGAnimatedTypeWrapperKey::DeprecatedSVGAnimatedTypeWrapperKey):
+ (WebCore::DeprecatedSVGAnimatedTypeWrapperKey::operator==):
+ (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHash::hash):
+ (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHash::equal):
+ (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHashTraits::constructDeletedValue):
+ (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHashTraits::isDeletedValue):
+ (WebCore::DeprecatedSVGAnimatedTemplate::~DeprecatedSVGAnimatedTemplate):
+ (WebCore::DeprecatedSVGAnimatedTemplate::forgetWrapper):
+ (WebCore::lookupOrCreateWrapper):
+ * svg/SVGAnimatedProperty.h: Removed.
+ * svg/SVGAnimatedPropertySynchronizer.h: Removed.
+ * svg/SVGAnimatedPropertyTraits.h: Removed.
+ * svg/SVGAnimatedTemplate.h: Removed.
+ * svg/SVGElement.h:
+ * svg/SVGExternalResourcesRequired.h:
+ * svg/SVGFitToViewBox.h:
+ * svg/SVGURIReference.h:
+ * svg/properties: Added.
+ * svg/properties/SVGAnimatedPropertySynchronizer.h: Copied from svg/SVGAnimatedPropertySynchronizer.h.
+
+2010-10-20 Shinichiro Hamaji <hamaji@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ absolutely positioned list in inline element crashes
+ https://bugs.webkit.org/show_bug.cgi?id=45095
+
+ Add a NULL check to avoid crash. The rendering result isn't ideal yet.
+
+ Test: fast/lists/positioned-count-crash.html
+
+ * rendering/RenderListItem.cpp:
+ (WebCore::previousListItem):
+
+2010-10-19 Adam Roben <aroben@apple.com>
+
+ Remove uses of CACFContextRef and CARender* from WebCore
+
+ These types are now wrapped in a WKCACFContext type exported by
+ WebKitSystemInterface.
+
+ Fixes <http://webkit.org/b/43244>.
+
+ Reviewed by Sam Weinig.
+
+ * platform/graphics/win/WKCACFContextFlusher.cpp:
+ (WebCore::WKCACFContextFlusher::addContext):
+ (WebCore::WKCACFContextFlusher::removeContext):
+ (WebCore::WKCACFContextFlusher::flushAllContexts):
+ * platform/graphics/win/WKCACFContextFlusher.h:
+ Changed to use WKCACFContext. We don't retain/release the context when
+ putting it into/taking it out of the set. WKCACFContext is not a
+ ref-counted type, so we can't retain/release it, but the
+ retain/release was also unnecessary as WKCACFLayerRenderer calls
+ removeContext before the context is destroyed.
+
+ * platform/graphics/win/WKCACFLayer.cpp:
+ (WebCore::WKCACFLayer::becomeRootLayerForContext):
+ * platform/graphics/win/WKCACFLayer.h:
+ Changed to use WKCACFContext.
+
+ * platform/graphics/win/WKCACFLayerRenderer.cpp:
+ (WebCore::WKCACFLayerRenderer::didFlushContext):
+ (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
+ (WebCore::WKCACFLayerRenderer::~WKCACFLayerRenderer):
+ (WebCore::WKCACFLayerRenderer::layerTreeDidChange):
+ (WebCore::WKCACFLayerRenderer::createRenderer):
+ (WebCore::WKCACFLayerRenderer::destroyRenderer):
+ (WebCore::WKCACFLayerRenderer::render): Also replaced uses of
+ CGSRegion with WebKitSystemInterface functions/types.
+ (WebCore::WKCACFLayerRenderer::resetDevice):
+ * platform/graphics/win/WKCACFLayerRenderer.h:
+ Replaced our CACFContextRef, CARenderContext, and CARenderOGLContext
+ with a single WKCACFContext, which wraps all three. We hold a bare
+ pointer to it and destroy it in our destructor.
+
+2010-10-19 Yongjun Zhang <yongjun_zhang@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Pixel cracks when using background image sprite on transformed element at certain scales.
+ https://bugs.webkit.org/show_bug.cgi?id=47868
+
+ The pixel bleeding happens when the current context has scale and interpolation is kCGInterpolationHigh
+ or kCGInterpolationDefault. If the source rect size is smaller than the intrinsic image size, some
+ pixels outside of the clip rect will also be used to interpolate the color value for clip edges, which
+ results in unwanted thin lines around the painted area. We need to use sub-image patch to get rid of
+ the artifacts in this case.
+
+ Test: fast/images/pixel-crack-image-background-webkit-transform-scale.html
+
+ * platform/graphics/cg/ImageCG.cpp:
+ (WebCore::BitmapImage::draw):
+
+2010-10-19 Evan Martin <evan@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ sqlite: remove unused member variable
+ https://bugs.webkit.org/show_bug.cgi?id=47957
+
+ There's no need to save the error code into a member variable
+ because nobody ever looks at it.
+
+ * platform/sql/SQLiteDatabase.cpp:
+ (WebCore::SQLiteDatabase::open):
+ * platform/sql/SQLiteDatabase.h:
+
+2010-10-19 Jia Pu <jpu@apple.com>
+
+ Reviewed by James Robinson.
+
+ Moving cursor back to autocorrected word in the same line shouldn't remove the underline
+ https://bugs.webkit.org/show_bug.cgi?id=47629
+ <rdar://problem/8546758>
+
+ Patch <http://trac.webkit.org/changeset/70071> breaks some Chromium Mac hehavior. This patch
+ fixes that.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::respondToChangedSelection): Add "!PLATFORM(MAC)" to make sure nothing changes
+ on non-Mac platforms.
+
+2010-10-19 Alexey Proskuryakov <ap@apple.com>
+
+ Build fix (EFL, maybe more).
+
+ * CMakeLists.txt: Added platform/Language.cpp here, too.
+
+2010-10-19 Jian Li <jianli@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Rename createBlobURL to createObjectURL and revokeBlobURL to
+ revokeObjectURL per the latest File API spec.
+ https://bugs.webkit.org/show_bug.cgi?id=47934
+
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype._contextMenu):
+ * inspector/front-end/utilities.js:
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::createObjectURL):
+ (WebCore::DOMWindow::revokeObjectURL):
+ * page/DOMWindow.h:
+ * page/DOMWindow.idl:
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::createObjectURL):
+ (WebCore::WorkerContext::revokeObjectURL):
+ * workers/WorkerContext.h:
+ * workers/WorkerContext.idl:
+
+2010-10-19 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47933
+ <rdar://problem/8494337> navigator.language doesn't work in WebKit2
+
+ * CMakeListsEfl.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/chromium/Language.cpp: Removed.
+ * platform/chromium/LanguageChromium.cpp: Copied from WebCore/platform/chromium/Language.cpp.
+ * platform/efl/Language.cpp: Removed.
+ * platform/efl/LanguageEfl.cpp: Copied from WebCore/platform/efl/Language.cpp.
+ * platform/gtk/Language.cpp: Removed.
+ * platform/gtk/LanguageGtk.cpp: Copied from WebCore/platform/gtk/Language.cpp.
+ * platform/qt/Language.cpp: Removed.
+ * platform/qt/LanguageQt.cpp: Copied from WebCore/platform/qt/Language.cpp.
+ * platform/win/Language.cpp: Removed.
+ * platform/win/LanguageWin.cpp: Copied from WebCore/platform/win/Language.cpp.
+ * platform/Language.cpp: Added.
+ Cross platform code is now in platform/Language.cpp. So, I renamed platform files to match
+ the common pattern.
+
+ * WebCore.exp.in: Exported new functions.
+
+ * platform/Language.h: Added an ability to force the language, and an ability to set up
+ listeners for changes (if the platform implements that). Web process will always use the
+ forced language, as sent to it from UI process.
+
+ * platform/mac/Language.mm: Moved code from WebKit.
+ (WebCore::platformDefaultLanguage): Added code to synchronize user defaults. For some reason,
+ they come unsynchronized in WebKit2 here, unlike WebKit1.
+
+ * page/mac/WebCoreViewFactory.h: Removed defaultLanguageCode. WebCore no longer goes to WebKit
+ to ask for that.
+
+ * platform/mac/WebCoreSystemInterface.h:
+ * platform/mac/WebCoreSystemInterface.mm:
+ Added wkCopyCFLocalizationPreferredName().
+
+2010-10-19 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Add "in select" insertion mode to parser.
+
+ This was added to the spec in:
+ http://html5.org/tools/web-apps-tracker?from=5520&to=5522
+
+ And as a result of:
+ http://www.w3.org/Bugs/Public/show_bug.cgi?id=10314
+
+ https://bugs.webkit.org/show_bug.cgi?id=47706
+
+ No new tests. Open to ideas.
+
+ * html/parser/HTMLElementStack.cpp: Added "in select" mode.
+ (WebCore::HTMLNames::isSelectScopeMarker): Ditto.
+ (WebCore::HTMLElementStack::inSelectScope): Ditto.
+ * html/parser/HTMLElementStack.h: Ditto.
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTag): Use "in select" instead of "in table."
+ (WebCore::HTMLTreeBuilder::processEndTag): Ditto.
+
+2010-10-19 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ Fix multiple index support in IndexedDB
+ https://bugs.webkit.org/show_bug.cgi?id=47919
+
+ Fix 2 bugs that caused the IndexData of all but the last index to be
+ properly updated:
+ * The objectStoreDataId is NOT unique if there are multiple indexes. So
+ remove the constraint.
+ * Do not delete all existing entries with that objectStoreDataId before
+ adding an entry for each index. Only do it once at the beginning.
+
+ Test: storage/indexeddb/queued-commands.html
+ + index-basics.html modified
+
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::createTables):
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::deleteIndexData):
+ (WebCore::putIndexData):
+ (WebCore::IDBObjectStoreBackendImpl::putInternal):
+
+2010-10-19 Martin Robinson <mrobinson@igalia.com>
+
+ Fix the GTK+ build after r70072. The logic looks incorrect, but
+ this fix tries to preserves it, even so.
+
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (baselinePositionForAccessibilityRenderObject):
+ (getAttributeSetForAccessibilityObject):
+
+2010-10-06 Jer Noble <jer.noble@apple.com>
+
+ Reviewed by Eric Carlson.
+
+ Windows: Implement 'preload=none'
+ https://bugs.webkit.org/show_bug.cgi?id=47317
+ <rdar://problem/7718442>
+
+ Implement the 'preload=none' identically to the mac implementation. Add three new
+ ivars: m_preload, m_delayLoad and m_movieURL; and override the MediaPlayerPrivate
+ functions: prepareToPlay() and setPreload().
+
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
+ Initialize new ivars m_delayLoad and m_preload.
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::resumeLoad): Added; new.
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load): Split contents between
+ load and loadInternal.
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::loadInternal): Added; new.
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::prepareToPlay): Added; overrides MediaPlayerPrivate.
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setPreload): Added; overrides MediaPlayerPrivate.
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
+
+2010-10-19 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Upstream support of KeyCodes for iOS
+ https://bugs.webkit.org/show_bug.cgi?id=47857
+
+ * platform/cocoa/KeyEventCocoa.mm:
+ (WebCore::windowsKeyCodeForCharCode): Added special handling of keyCodes for iOS.
+
+2010-10-19 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by David Kilzer.
+
+ iOS: ASSERT in Cache::adjustSize running layout tests
+ https://bugs.webkit.org/show_bug.cgi?id=47873
+
+ Inside Cache::pruneDeadResources we loop over the LRU lists and make resources purgeable
+ with Cache::makeResourcePurgeable(). This wasn't taking into account whether the resource
+ was already purgeable or not, and the makeResourcePurgeable call was always calling
+ adjustSize(). Now we make sure makeResourcePurgable only adjusts the size of the Cache's
+ dead sizes when it first marks the resource purgeable. Likewise, if a resource is marked
+ as purgeable and then evicted, we should not adjust the size again.
+
+ The balancing call is when we have a resource that has been marked as purgeable and we
+ successfully mark it as no longer purgeable in Cache::resourceForURL.
+
+ No test added because this requires testing purgeable memory.
+
+ * loader/Cache.cpp:
+ (WebCore::Cache::makeResourcePurgeable):
+ (WebCore::Cache::evict):
+
+2010-10-19 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Disable mipmapping for ImageLayer's to prevent memory use and
+ performance regression.
+ https://bugs.webkit.org/show_bug.cgi?id=47913
+
+ This patch is a straight revert of the patch committed with issue 46493
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::SharedValues::SharedValues):
+ (WebCore::ContentLayerChromium::updateTextureRect):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ (WebCore::ContentLayerChromium::SharedValues::initialized):
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContents):
+
+2010-10-18 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ gl-teximage.html fails on chromium webkit mac bot
+ https://bugs.webkit.org/show_bug.cgi?id=47034
+
+ * platform/graphics/GraphicsContext3D.cpp: Deal with endians in 16 bit image data.
+ (WebCore::convertColor16LittleTo8):
+ (WebCore::convertColor16BigTo8):
+ (WebCore::doPacking):
+ * platform/graphics/GraphicsContext3D.h: Ditto.
+ * platform/graphics/cg/GraphicsContext3DCG.cpp: Ditto.
+ (WebCore::GraphicsContext3D::getImageData):
+
+2010-10-19 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47841
+
+ Rework baselinePosition and lineHeight to be writing-mode-aware. There's a lot of refactoring here to clean up
+ the method parameters to be more readable and to simplify the subclassing of the various methods in order to
+ keep the horizontal/vertical querying to a minimum.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * mathml/RenderMathMLFraction.cpp:
+ (WebCore::RenderMathMLFraction::baselinePosition):
+ * mathml/RenderMathMLFraction.h:
+ * mathml/RenderMathMLOperator.cpp:
+ (WebCore::RenderMathMLOperator::baselinePosition):
+ * mathml/RenderMathMLOperator.h:
+ * mathml/RenderMathMLRow.cpp:
+ (WebCore::RenderMathMLRow::baselinePosition):
+ * mathml/RenderMathMLRow.h:
+ * mathml/RenderMathMLSubSup.cpp:
+ (WebCore::RenderMathMLSubSup::baselinePosition):
+ * mathml/RenderMathMLSubSup.h:
+ * mathml/RenderMathMLUnderOver.cpp:
+ (WebCore::RenderMathMLUnderOver::layout):
+ (WebCore::RenderMathMLUnderOver::baselinePosition):
+ * mathml/RenderMathMLUnderOver.h:
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::baselinePosition):
+ (WebCore::InlineBox::lineHeight):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
+ (WebCore::InlineFlowBox::computeLogicalBoxHeights):
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::baselinePosition):
+ (WebCore::InlineTextBox::lineHeight):
+ * rendering/InlineTextBox.h:
+ * rendering/RenderBR.cpp:
+ (WebCore::RenderBR::lineHeight):
+ * rendering/RenderBR.h:
+ (WebCore::toRenderBR):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::lineHeight):
+ (WebCore::RenderBlock::baselinePosition):
+ (WebCore::RenderBlock::firstLineBoxBaseline):
+ (WebCore::RenderBlock::lastLineBoxBaseline):
+ (WebCore::RenderBlock::localCaretRect):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::lineHeight):
+ (WebCore::RenderBox::baselinePosition):
+ * rendering/RenderBox.h:
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::verticalPosition):
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::paintObject):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutHorizontalBox):
+ (WebCore::RenderFlexibleBox::layoutVerticalBox):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::lineHeight):
+ (WebCore::RenderInline::baselinePosition):
+ * rendering/RenderInline.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::baselinePosition):
+ * rendering/RenderListBox.h:
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::lineHeight):
+ (WebCore::RenderListMarker::baselinePosition):
+ * rendering/RenderListMarker.h:
+ * rendering/RenderObject.cpp:
+ * rendering/RenderObject.h:
+ * rendering/RenderReplaced.cpp:
+ * rendering/RenderReplaced.h:
+ * rendering/RenderSVGRoot.cpp:
+ * rendering/RenderSVGRoot.h:
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::baselinePosition):
+ * rendering/RenderSlider.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::baselinePosition):
+ * rendering/RenderTableCell.h:
+ * rendering/RenderTableCol.h:
+ (WebCore::RenderTableCol::isTableCol):
+ * rendering/RenderTableRow.h:
+ * rendering/RenderTableSection.h:
+ * rendering/RenderText.cpp:
+ * rendering/RenderText.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::computeLogicalHeight):
+ * rendering/RenderTextControlMultiLine.cpp:
+ (WebCore::RenderTextControlMultiLine::baselinePosition):
+ * rendering/RenderTextControlMultiLine.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
+ * rendering/RootInlineBox.h:
+ (WebCore::RootInlineBox::baselinePosition):
+ (WebCore::RootInlineBox::lineHeight):
+ * rendering/svg/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::calculateBoundaries):
+
+2010-10-19 Jia Pu <jpu@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ Moving cursor back to autocorrected word in the same line shouldn't remove the underline
+ https://bugs.webkit.org/show_bug.cgi?id=47629
+ <rdar://problem/8546758>
+
+ Tests: platform/mac/editing/spelling/click-autocorrected-word.html
+ platform/mac/editing/spelling/delete-into-autocorrected-word.html
+ platform/mac/editing/spelling/delete-into-misspelled-word.html
+ platform/mac/editing/spelling/forward-delete-into-autocorrected-word.html
+ platform/mac/editing/spelling/move-cursor-around-misspelled-word.html
+ platform/mac/editing/spelling/move-cursor-to-autocorrected-word.html
+ platform/mac/editing/spelling/move-cursor-to-beginning-of-autocorrected-word.html
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::respondToChangedSelection): Don't remove misspelling or autocorrection
+ underlines when cursor is moved onto a word.
+
+2010-10-19 Eric Carlson <eric.carlson@apple.com>
+
+ Not reviewed. Build fix.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::selectNextSourceChild): Initialize variable to avoid Windows
+ "potentially uninitialized local variable" warning.
+
+2010-10-19 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46763
+ CRASH in WebCore::ThreadTimers::sharedTimerFiredInternal
+
+ Fix crashes caused by moving and deleting <source> element(s) of active media element.
+
+ Tests: media/video-source-moved.html
+ media/video-source-removed.html
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::HTMLMediaElement): Add logging. Initialize selectNextSourceChild.
+ (WebCore::HTMLMediaElement::~HTMLMediaElement): Ditto.
+ (WebCore::HTMLMediaElement::insertedIntoDocument): Ditto.
+ (WebCore::HTMLMediaElement::removedFromDocument): Ditto.
+ (WebCore::HTMLMediaElement::scheduleLoad): Ditto.
+ (WebCore::HTMLMediaElement::setNetworkState): Deal with m_currentSourceNode being null when
+ the media engine signals a failure by skipping the error message and continuing as usual.
+ (WebCore::HTMLMediaElement::setVolume): Fix logging typo.
+ (WebCore::HTMLMediaElement::havePotentialSourceChild): Save and restore m_nextChildNodeToConsider
+ around call to selectNextSourceChild because they are both significant.
+ (WebCore::HTMLMediaElement::selectNextSourceChild): Use m_nextChildNodeToConsider to pick
+ the first node to consider. Bail immediately if it signals that we have already processed
+ every <source> node. Stach the node following the current source element in m_nextChildNodeToConsider
+ so we can resume the search even if m_currentSourceNode is removed while it is being processed.
+ (WebCore::HTMLMediaElement::sourceWasAdded): New, move logic from HTMLSourceElement::insertedIntoTree
+ here and correct it to deal with a <source> node being inserted immediately after the
+ current <source> node and a new <source> node being inserted at the end of the list after
+ all candidates have failed.
+ (WebCore::HTMLMediaElement::sourceWillBeRemoved): New, deal with current source node and next
+ potential node being removed.
+ * html/HTMLMediaElement.h:
+ (WebCore::HTMLMediaElement::sourceChildEndOfListValue): New, define sentinal value used to indicate
+ that all nodes have been processed.
+
+ * html/HTMLSourceElement.cpp:
+ (WebCore::HTMLSourceElement::HTMLSourceElement): Add logging.
+ (WebCore::HTMLSourceElement::insertedIntoTree): Call mediaElement->sourceWasAdded instead
+ of having logic here.
+ (WebCore::HTMLSourceElement::willRemove): New, call mediaElement->sourceWillBeRemoved
+ (WebCore::HTMLSourceElement::scheduleErrorEvent): Add logging.
+ (WebCore::HTMLSourceElement::cancelPendingErrorEvent): Add logging.
+ * html/HTMLSourceElement.h:
+
+2010-10-19 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Antti Koivisto.
+
+ [Qt] WebKit2 MacOS build fix
+ https://bugs.webkit.org/show_bug.cgi?id=47897
+
+ Qt WebKit2 MacOS build fix.
+
+ * bridge/npapi.h:
+
+2010-10-19 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Soup cache code still has some warnings
+ https://bugs.webkit.org/show_bug.cgi?id=47733
+
+ Fixed some compilation warnings happening with gcc 4.4.5 on
+ 64-bits architecture.
+
+ * platform/network/soup/cache/webkit/soup-cache.c:
+ (webkit_soup_cache_entry_set_freshness):
+ (close_ready_cb):
+
+2010-10-19 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: crash while trying to step over a function using inspector
+ https://bugs.webkit.org/show_bug.cgi?id=47902
+
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.reset): reset scripts panel to resumed state on navigation.
+
+2010-10-19 Ryuan Choi <ryuan.choi@samsung.com>
+
+ Unreviewed attempt to remove warning in EFL build.
+
+ Fix #if to #ifdef.
+
+ No new features, so no tests added.
+
+ * platform/efl/WidgetEfl.cpp:
+ (WebCore::Widget::applyFallbackCursor):
+
+2010-10-19 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Tor Arne Vestbø.
+
+ [Qt] getImageData returns wrong data for non-0,0 source offset
+ https://bugs.webkit.org/show_bug.cgi?id=47898
+
+ Test: fast/canvas/canvas-getImageData-negative-source.html
+
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::getImageData): Add missing *4's to get correct pixel offset.
+
+2010-10-19 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Correct initial state of ImageBuffer QPen
+ https://bugs.webkit.org/show_bug.cgi?id=47804
+
+ Have the QPen on ImageBuffers start in Qt::SvgMiterJoin mode.
+
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::ImageBufferData::ImageBufferData):
+
+2010-10-19 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ GStreamer PlatformVideoWindow needs an API to prepare the widget before applying the overlay
+ https://bugs.webkit.org/show_bug.cgi?id=46790
+
+ Simple API addition to PlatformVideoWindow to allow
+ implementations to optionally prepare their own PlatformWidget
+ before applying the GStreamer XOverlay to it. This will likely be
+ needed on Mac OSX only.
+
+ * platform/graphics/gstreamer/GStreamerGWorld.cpp:
+ (WebCore::GStreamerGWorld::setWindowOverlay):
+ * platform/graphics/gstreamer/PlatformVideoWindow.h:
+ * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp:
+ (PlatformVideoWindow::prepareForOverlay):
+ * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp:
+ (PlatformVideoWindow::prepareForOverlay):
+
+2010-10-19 Ben Murdoch <benm@google.com>
+
+ Reviewed by Steve Block.
+
+ Missing support for document.createTouch and document.createTouchList
+ https://bugs.webkit.org/show_bug.cgi?id=47676
+
+ These APIs are used by many sites to detect support for touch events.
+
+ Implement the APIs according to the documentation at:
+ http://developer.apple.com/library/safari/#documentation/UserExperience/Reference/DocumentAdditionsReference/DocumentAdditions/DocumentAdditions.html
+
+ Tests: fast/events/touch/document-create-touch-list.html
+ fast/events/touch/document-create-touch.html
+
+ * bindings/js/JSBindingsAllInOne.cpp: Add new files to list.
+ * bindings/js/JSTouchCustom.cpp: Added.
+ (WebCore::toJSNewlyCreated):
+ * bindings/js/JSTouchListCustom.cpp: Added.
+ (WebCore::toJSNewlyCreated):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * dom/Document.cpp:
+ (WebCore::Document::createTouch):
+ (WebCore::Document::createTouchList):
+ * dom/Document.h:
+ * dom/Document.idl: Add createTouch and createTouchList functions.
+ * Android.jscbindings.mk: Update makefiles.
+ * CMakeLists.txt: Ditto.
+ * GNUmakefile.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+
+
+2010-10-19 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: migrate from legacy Object.properties to Object.keys, remove dead code.
+ https://bugs.webkit.org/show_bug.cgi?id=47890
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype._reportCompletions):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer.prototype._onGetResources):
+ * inspector/front-end/HAREntry.js:
+ (WebInspector.HARLog.prototype.build):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertyTreeElement.prototype.):
+ (WebInspector.StylePropertyTreeElement.prototype):
+ * inspector/front-end/utilities.js:
+
+2010-10-19 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: do not access ResourcePanel from resources directly.
+ https://bugs.webkit.org/show_bug.cgi?id=47892
+
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.prototype.set documentURL):
+ (WebInspector.Resource.prototype.set startTime):
+ (WebInspector.Resource.prototype.set responseReceivedTime):
+ (WebInspector.Resource.prototype.set endTime):
+ (WebInspector.Resource.prototype.set resourceSize):
+ (WebInspector.Resource.prototype.set expectedContentLength):
+ (WebInspector.Resource.prototype.set category):
+ (WebInspector.Resource.prototype.set cached):
+ (WebInspector.Resource.prototype.set mimeType):
+ (WebInspector.Resource.prototype.get requestHeaders):
+ (WebInspector.Resource.prototype.set requestHeaders):
+ (WebInspector.Resource.prototype.get responseHeaders):
+ (WebInspector.Resource.prototype.set responseHeaders):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.addResource):
+ (WebInspector.ResourcesPanel.prototype.refreshResource):
+ (WebInspector.ResourcesPanel.prototype._recreateViewForResourceIfNeeded):
+ (WebInspector.ResourcesPanel.prototype._resourceViewIsConsistentWithCategory):
+ (WebInspector.ResourceGraph):
+ (WebInspector.ResourceGraph.prototype.refresh):
+ * inspector/front-end/inspector.js:
+ (WebInspector.updateResource):
+
+2010-10-19 Yuta Kitamura <yutak@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Make sure WebSocket resource has the url field when it is created.
+
+ Web Inspector: Uncaught TypeError when connection to WebSocket server is refused
+ https://bugs.webkit.org/show_bug.cgi?id=47891
+
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::createWebSocket):
+
+2010-10-19 Hayato Ito <hayato@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Make CSS style selector non-recursive.
+ https://bugs.webkit.org/show_bug.cgi?id=43783
+
+ This change is one of the required changes to fix the following master bug:
+ https://bugs.webkit.org/show_bug.cgi?id=42806
+
+ To avoid recursion, we prepare a call stack and maintain a list of
+ function call state by ourselves and try matching iteratively.
+
+ Test: fast/css/long-css-selector-matches.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
+ (WebCore::CSSStyleSelector::checkSelector):
+ * css/CSSStyleSelector.h:
+
+2010-10-19 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r70034.
+ http://trac.webkit.org/changeset/70034
+ https://bugs.webkit.org/show_bug.cgi?id=47889
+
+ "Gustavo's bot is lame" (Requested by xan_ on #webkit).
+
+ * platform/network/soup/CookieJarSoup.cpp:
+ (WebCore::defaultCookieJar):
+ (WebCore::setCookies):
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::ResourceHandle::prepareForURL):
+ (WebCore::restartedCallback):
+ (WebCore::startHttp):
+ * platform/network/soup/ResourceRequestSoup.cpp:
+ (WebCore::ResourceRequest::toSoupMessage):
+ (WebCore::ResourceRequest::updateFromSoupMessage):
+
+2010-10-19 Xan Lopez <xlopez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Bump minimum requirement for libsoup to 2.30
+ https://bugs.webkit.org/show_bug.cgi?id=46176
+
+ Bump minimum required libsoup version to 2.30.
+
+ * platform/network/soup/CookieJarSoup.cpp:
+ (WebCore::defaultCookieJar):
+ (WebCore::setCookies):
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::ResourceHandle::prepareForURL):
+ (WebCore::restartedCallback):
+ (WebCore::startHttp):
+ * platform/network/soup/ResourceRequestSoup.cpp:
+ (WebCore::ResourceRequest::toSoupMessage):
+ (WebCore::ResourceRequest::updateFromSoupMessage):
+
+2010-10-19 Xan Lopez <xlopez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ Fix distcheck, take 2.
+
+ * GNUmakefile.am: also move the generated CSS hash files to the
+ build dir.
+
+2010-10-18 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Should not save state of a detached form control.
+ https://bugs.webkit.org/show_bug.cgi?id=47811
+
+ Test: fast/forms/state-save-of-detached-control.html
+
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElementWithState::shouldSaveAndRestoreFormControlState):
+ If the node is detached, don't save the state.
+
+2010-10-18 Xan Lopez <xlopez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ * GNUmakefile.am: add missing files.
+
+2010-10-18 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ REGRESSION: Feedly extension crashes Webkit
+ https://bugs.webkit.org/show_bug.cgi?id=45811
+
+ The basic problem was the deserializer was holding a pointer into
+ the constant pool, but if you were sufficiently unlucky then the
+ constant pool would be moved while still relying on the pointer,
+ which leads to badness.
+
+ I looked at just making all the sites this could happen extract the
+ right string/jsstring before any possible allocations, but it seemed
+ too fragile so i've gone for a forwarding object as the solution.
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneDeserializer::CachedStringRef::CachedStringRef):
+ (WebCore::CloneDeserializer::CachedStringRef::operator->):
+ (WebCore::CloneDeserializer::readStringData):
+ (WebCore::CloneDeserializer::readFile):
+ (WebCore::CloneDeserializer::readTerminal):
+ (WebCore::CloneDeserializer::deserialize):
+
+2010-10-18 Chris Rogers <crogers@google.com>
+
+ Reviewed by Chris Fleizach.
+
+ Add AudioResampler files
+ https://bugs.webkit.org/show_bug.cgi?id=47623
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/AudioResampler.cpp: Added.
+ (WebCore::AudioResampler::AudioResampler):
+ (WebCore::AudioResampler::configureChannels):
+ (WebCore::AudioResampler::process):
+ (WebCore::AudioResampler::setRate):
+ (WebCore::AudioResampler::reset):
+ * platform/audio/AudioResampler.h: Added.
+ (WebCore::AudioResampler::~AudioResampler):
+ (WebCore::AudioResampler::rate):
+
+2010-10-18 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Prevent the creation of very large textures for layers by switching
+ to "large layer" mode when a texture is larger than some fixed reasonable size
+ (set to 2000 pixels for now).
+ https://bugs.webkit.org/show_bug.cgi?id=47751
+
+ The code also changes the large layer logic to use the current scissor rect used
+ by the compositor instead of the visible rect to determine how to clip large layers.
+ This will provide additional texture savings. In addition, the various layer rects
+ have been converted to use integers instead of floats to preserve uniformity in the code.
+
+ Tests: Existing large layer layout tests including huge-layer and huge-layer-img
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
+ (WebCore::ContentLayerChromium::calculateClippedUpdateRect):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::getDrawRect):
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::drawLayersRecursive):
+ (WebCore::LayerRendererChromium::scissorToRect):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::currentScissorRect):
+
+2010-10-18 Jia Pu <jpu@apple.com>
+
+ Reviewed by Stephanie Lewis.
+
+ Correct the description of manual test: autocorrection-cancelled-by-typing-1.html
+ https://bugs.webkit.org/show_bug.cgi?id=47722
+ <rdar://problem/8556206>
+
+ * manual-tests/autocorrection/autocorrection-cancelled-by-typing-1.html: Update description
+ to match the test content.
+
+2010-10-18 Martin Robinson <mrobinson@igalia.com>
+
+ Build fix for newer versions of GTK+ 2.0. Instead of using GDK_DISPLAY()
+ use GDK_DRAWABLE_XDISPLAY(gdk_display_get_default()). GDK_DISPLAY() was
+ recently deprecated and the latter method has been available since GTK+
+ 2.2.
+
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+ (WebCore::PluginView::paint):
+ (WebCore::PluginView::initXEvent):
+ (WebCore::PluginView::platformGetValue):
+ (WebCore::getVisualAndColormap):
+ (WebCore::PluginView::platformStart):
+ (WebCore::PluginView::platformDestroy):
+
+2010-10-18 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ elementCannotHaveEndTag should be a member function of MarkupAccumulator
+ https://bugs.webkit.org/show_bug.cgi?id=47846
+
+ Moved elementCannotHaveEndTag into MarkupAccumulator.
+
+ No new tests are added since this is a cleanup.
+
+ * editing/MarkupAccumulator.cpp:
+ (WebCore::MarkupAccumulator::elementCannotHaveEndTag): Added.
+ * editing/MarkupAccumulator.h: Added MarkupAccumulator::elementCannotHaveEndTag.
+ * editing/markup.cpp: Removed elementCannotHaveEndTag.
+ * editing/markup.h: Removed elementCannotHaveEndTag.
+
+2010-10-18 Johnny Ding <jnd@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Set the right referent sourceURL for the script with force user gesture.
+ https://bugs.webkit.org/show_bug.cgi?id=37138
+
+ Because empty sourceURL indicates running script with force user gesture,
+ make WebKit use document.url() as referent sourceURL (Since it uses blank
+ URL instead empty if the input URL is empty) if WebKit isn't running the
+ script from a hyper-link.
+
+ Test: fast/events/popup-blocked-from-window-open.html
+
+ * bindings/ScriptControllerBase.cpp:
+ (WebCore::ScriptController::executeScript):
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::executeScriptInWorld):
+
+2010-10-18 Darin Adler <darin@apple.com>
+
+ * dom/Node.h: Fix ancient typo in just-modified comment.
+
+2010-10-18 Darin Adler <darin@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Remove some functions from class Node and make a few others non-virtual
+ https://bugs.webkit.org/show_bug.cgi?id=47735
+
+ Refactoring. No new tests.
+
+ * bindings/js/JSNodeCustom.cpp:
+ (WebCore::JSNode::markChildren): Added a FIXME about the use of the virtual
+ ownerDocument function.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::removeChildren): Removed the unused return value.
+
+ * dom/ContainerNode.h: Made insertBefore, replaceChild, removeChild, and
+ appendChild non-virtual for clarity and performance. Made removeChildren
+ non-virtual and removed its return value. Moved the inline Node functions
+ that call through to ContainerNode into this file since the old way involved
+ an extra level of inline function but otherwise had no advantages.
+
+ * dom/Element.h: Moved isMathMLElement here because there is no call site
+ that needs to call it on a Node*. We can always move it back if we need to,
+ but it's better to have less in the Node class.
+
+ * dom/Node.cpp:
+ (WebCore::Node::insertBefore): Added an isContainerNode check so this can
+ be non-virtual. There are very few callers who call this function on Node.
+ If we want to optimize them further we can make the isContainerNode check
+ inline in the future.
+ (WebCore::Node::replaceChild): Ditto.
+ (WebCore::Node::removeChild): Ditto.
+ (WebCore::Node::appendChild): Ditto.
+ (WebCore::Node::remove): Removed unneeded ref/unref because
+ ContainerNode::removeChild already does this.
+ (WebCore::Node::createRendererIfNeeded): Removed #if around call to
+ childShouldCreateRenderer since it's needed even without SVG and XHTMLMP.
+
+ * dom/Node.h: Moved definitions of inline functions that depend on
+ ContainerNode to the ContainerNode.h header. They already required inclusion
+ of that header, so there is no functional change. Made insertBefore,
+ replaceChild, removeChild, and appendChild non-virtual. There are very few
+ callers of these functions on this class. Moved isMathMLElement to Element.
+ Added a FIXME about the name of eventAncestors. Fixed comment formatting.
+ Eliminated unused isEditableBlock function. Moved the body of the
+ enclosingInlineElement function to the editing file that was the only
+ call site. Removed the previousEditable and nextEditable functions,
+ incorporating their bodies into the one place they were called.
+ Took the childShouldCreateRenderer function out of #if since it's
+ now used by the implementation of the <noscript> element.
+
+ * dom/Position.cpp:
+ (WebCore::nextRenderedEditable): Rewrote the function to use nextLeafNode
+ instead of nextEditable.
+ (WebCore::previousRenderedEditable): Rewrote the function to use
+ previousLeafNode instead of previousEditable.
+
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::enclosingInline): Moved function here from the Node class. Also
+ fixed an incorrect cast this function did, which assumed the function
+ result was always an element, which the function does not guarantee.
+ (WebCore::ReplaceSelectionCommand::doApply): Call the function above.
+
+ * history/HistoryItem.cpp: Added include of MathExtras.h.
+
+2010-10-18 Yongjun Zhang <yongjun_zhang@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Missing support for document.createEvent("OrientationEvent")
+ https://bugs.webkit.org/show_bug.cgi?id=32492
+
+ Add support for document.createEvent("OrientationEvent") to help unit testing of
+ onOrientationChange event.
+
+ Test: fast/dom/DeviceOrientation/create-event-onorientationchange.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::createEvent):
+
+2010-10-18 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ DOMStringList should return null if the index is out of range
+ https://bugs.webkit.org/show_bug.cgi?id=47829
+
+ When item() returns a null string, it needs to be passed to JS as
+ null. The indexed getter will then magically do the right thing.
+ So all that's left is having DOMStringList::item() return null when
+ the index is out of bounds.
+
+ * dom/DOMStringList.cpp:
+ (WebCore::DOMStringList::item):
+ * dom/DOMStringList.h:
+ * dom/DOMStringList.idl:
+
+2010-10-18 Girish Ramakrishnan <girish@forwardbias.in>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] Implement Accelerated Composition for NPAPI Plugins.
+
+ https://bugs.webkit.org/show_bug.cgi?id=35524
+
+ * plugins/PluginView.h:
+ (WebCore::PluginView::platformLayer):
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginGraphicsLayerQt::PluginGraphicsLayerQt):
+ (WebCore::PluginGraphicsLayerQt::~PluginGraphicsLayerQt):
+ (WebCore::PluginGraphicsLayerQt::paint):
+ (WebCore::PluginView::updatePluginWidget):
+ (WebCore::PluginView::paint):
+ (WebCore::PluginView::invalidateRect):
+ (WebCore::PluginView::invalidateRegion):
+ (WebCore::PluginView::platformStart):
+ (WebCore::PluginView::platformLayer):
+
+2010-10-18 Stuart Morgan <stuartmorgan@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch to using the new Carbon NPAPI event declarations, and remove
+ the old ones.
+
+ https://bugs.webkit.org/show_bug.cgi?id=40784
+
+ * bridge/npapi.h:
+ * plugins/mac/PluginViewMac.mm:
+ (WebCore::PluginView::setFocus):
+ (WebCore::PluginView::handleMouseEvent):
+
+2010-10-18 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: comment out resource manager instantiation on front-end side.
+ https://bugs.webkit.org/show_bug.cgi?id=47823
+
+ * inspector/front-end/inspector.js:
+
+2010-10-18 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ The description parameter of IDBFactory::open() should be mandatory.
+ https://bugs.webkit.org/show_bug.cgi?id=47835
+
+ Makes the description parameter mandatory, as per the IndexedDatabase specification.
+ Modified existing tests to cover this change.
+
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::extractMetaData):
+ (WebCore::setMetaData):
+ (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
+ * storage/IDBFactory.cpp:
+ (WebCore::IDBFactory::open):
+ * storage/IDBFactory.h:
+ * storage/IDBFactory.idl:
+
+2010-10-18 Xiaomei Ji <xji@chromium.org>
+
+ Reviewed by David Levin.
+
+ Code cleanup: Move most function members in TextRunWorker from inlined.
+ https://bugs.webkit.org/show_bug.cgi?id=47732
+
+ No functionality change, so no tests added.
+
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::TextRunWalker::setWordSpacingAdjustment):
+ (WebCore::TextRunWalker::setLetterSpacingAdjustment):
+ (WebCore::TextRunWalker::setXOffsetToZero):
+ (WebCore::TextRunWalker::rtl):
+ (WebCore::TextRunWalker::glyphs):
+ (WebCore::TextRunWalker::length):
+ (WebCore::TextRunWalker::xPositions):
+ (WebCore::TextRunWalker::advances):
+ (WebCore::TextRunWalker::width):
+ (WebCore::TextRunWalker::logClusters):
+ (WebCore::TextRunWalker::numCodePoints):
+ (WebCore::TextRunWalker::fontPlatformDataForScriptRun):
+ (WebCore::TextRunWalker::isCodepointSpace):
+ (WebCore::TextRunWalker::TextRunWalker):
+ (WebCore::TextRunWalker::~TextRunWalker):
+ (WebCore::TextRunWalker::isWordBreak):
+ (WebCore::TextRunWalker::setPadding):
+ (WebCore::TextRunWalker::reset):
+ (WebCore::TextRunWalker::setBackwardsIteration):
+ (WebCore::TextRunWalker::nextScriptRun):
+ (WebCore::TextRunWalker::widthOfFullRun):
+ (WebCore::TextRunWalker::getTextRun):
+ (WebCore::TextRunWalker::getNormalizedTextRun):
+ (WebCore::TextRunWalker::setupFontForScriptRun):
+ (WebCore::TextRunWalker::allocHarfbuzzFont):
+ (WebCore::TextRunWalker::deleteGlyphArrays):
+ (WebCore::TextRunWalker::createGlyphArrays):
+ (WebCore::TextRunWalker::resetGlyphArrays):
+ (WebCore::TextRunWalker::shapeGlyphs):
+ (WebCore::TextRunWalker::setGlyphXPositions):
+ (WebCore::TextRunWalker::mirrorCharacters):
+
+2010-10-18 No'am Rosenthal <noam.rosenthal@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] AC rendering bugs
+ There were a few missing connections in Qt AC between GraphicsLayer and plugins, like changing the plugin's geometry to the layer's
+ contentsRect, and making sure media layers handle ParentChange events and setContentsNeedsDisplay. Now media layers behave correctly.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47571
+
+ No new tests. This is in preparation for fixing AC+plugins, which already has tests that don't work yet with Qt.
+
+ * platform/graphics/qt/GraphicsLayerQt.cpp:
+ (WebCore::GraphicsLayerQtImpl::flushChanges):
+ (WebCore::GraphicsLayerQt::setContentsNeedsDisplay):
+ * platform/graphics/qt/GraphicsLayerQt.h:
+
+2010-10-18 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Web Inspector: [crash] when Inspector Open in CSSStyleSelector::loadPendingImages().
+ https://bugs.webkit.org/show_bug.cgi?id=46224
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * inspector/InspectorClient.cpp: Added.
+ (WebCore::InspectorClient::doDispatchMessageOnFrontendPage):
+ * inspector/InspectorClient.h:
+ (WebCore::InspectorClient::InspectorClient):
+
+2010-10-18 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ IDBKeyTree.h is no longer used.
+ https://bugs.webkit.org/show_bug.cgi?id=47824
+
+ No new tests, just removing unused files.
+
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * storage/IDBKeyTree.h: Removed.
+
+2010-10-18 Andreas Kling <kling@webkit.org>
+
+ Unreviewed buildfix for Qt + V8.
+ Add missing <wtf/text/CString.h> include.
+
+ * inspector/InspectorInstrumentation.cpp:
+
+2010-10-18 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: toJSON serialization for Numbers should be fixed.
+ DecimalNumber is used instead of printf.
+
+ https://bugs.webkit.org/show_bug.cgi?id=43832
+
+ * inspector/InspectorValues.cpp:
+ (WebCore::InspectorBasicValue::writeJSON):
+
+2010-10-18 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [REGRESSION] Inspector window visible during run-webkit-tests.
+ The initial state of an inspector setting should stay untouched
+ if the profile has no value for it.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47785
+
+ * inspector/InspectorState.cpp:
+ (WebCore::InspectorState::loadFromSettings):
+
+2010-10-18 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: tab headers on resource panel are 1px off on Mac.
+ https://bugs.webkit.org/show_bug.cgi?id=47798
+
+ * inspector/front-end/inspector.css:
+ (.tabbed-pane-header li):
+
+2010-10-18 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed. Build fix.
+
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::cachedResourceTypeString):
+
+2010-10-17 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Introduce InspectorResourceAgent.h/cpp and ResourceManager.js to
+ fill network panel with data.
+ https://bugs.webkit.org/show_bug.cgi?id=47779
+
+ InspectorResourceAgent instance / JS part are introduced in this patch. Agent's lifetime is equal
+ to the front-end's. This new resource agent does not have state, instead it covers two functions:
+ 1) forwards loader client messages to the front-end 2) is capable of building a tree of cached resources.
+ (1) feeds network panel with data, (2) shows the resource tree in the new ResourcesPanel concept.
+ This bug is for extracting this new InspectorResourceAgent class and its javascript counterpart.
+ Once resources panel is refactored for the new concept, InspectorResource, InspectorController's
+ resource-related routines, inspector.js's code dealing with resources, they all will be gone.
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/Inspector.idl:
+ * inspector/InspectorApplicationCacheAgent.cpp:
+ (WebCore::InspectorApplicationCacheAgent::didReceiveManifestResponse):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::releaseFrontendLifetimeAgents):
+ (WebCore::InspectorController::didCommitLoad):
+ (WebCore::InspectorController::frameDetachedFromParent):
+ (WebCore::InspectorController::didLoadResourceFromMemoryCache):
+ (WebCore::InspectorController::identifierForInitialRequest):
+ (WebCore::InspectorController::willSendRequest):
+ (WebCore::InspectorController::markResourceAsCached):
+ (WebCore::InspectorController::didReceiveResponse):
+ (WebCore::InspectorController::didReceiveContentLength):
+ (WebCore::InspectorController::didFinishLoading):
+ (WebCore::InspectorController::didFailLoading):
+ (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
+ (WebCore::InspectorController::scriptImported):
+ (WebCore::InspectorController::didCreateWebSocket):
+ (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
+ (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
+ (WebCore::InspectorController::didCloseWebSocket):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::updateResponse):
+ (WebCore::cachedResourceType):
+ (WebCore::InspectorResource::type):
+ (WebCore::InspectorResource::sourceString):
+ (WebCore::InspectorResource::sourceBytes):
+ (WebCore::InspectorResource::endTiming):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::resourceContent):
+ (WebCore::InspectorResourceAgent::resourceContentBase64):
+ (WebCore::InspectorResourceAgent::resourceData):
+ (WebCore::InspectorResourceAgent::cachedResource):
+ (WebCore::buildObjectForHeaders):
+ (WebCore::buildObjectForTiming):
+ (WebCore::buildObjectForResourceRequest):
+ (WebCore::buildObjectForResourceResponse):
+ (WebCore::buildObjectForMainResource):
+ (WebCore::cachedResourceTypeString):
+ (WebCore::buildObjectForCachedResource):
+ (WebCore::buildObjectForFrameResources):
+ (WebCore::InspectorResourceAgent::~InspectorResourceAgent):
+ (WebCore::InspectorResourceAgent::identifierForInitialRequest):
+ (WebCore::InspectorResourceAgent::willSendRequest):
+ (WebCore::InspectorResourceAgent::markResourceAsCached):
+ (WebCore::InspectorResourceAgent::didReceiveResponse):
+ (WebCore::InspectorResourceAgent::didReceiveContentLength):
+ (WebCore::InspectorResourceAgent::didFinishLoading):
+ (WebCore::InspectorResourceAgent::didFailLoading):
+ (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
+ (WebCore::InspectorResourceAgent::setOverrideContent):
+ (WebCore::InspectorResourceAgent::didCommitLoad):
+ (WebCore::InspectorResourceAgent::frameDetachedFromParent):
+ (WebCore::createReadableStringFromBinary):
+ (WebCore::InspectorResourceAgent::didCreateWebSocket):
+ (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
+ (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
+ (WebCore::InspectorResourceAgent::didCloseWebSocket):
+ (WebCore::InspectorResourceAgent::cachedResources):
+ (WebCore::InspectorResourceAgent::InspectorResourceAgent):
+ * inspector/InspectorResourceAgent.h:
+ (WebCore::InspectorResourceAgent::create):
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyleSheet::resourceStyleSheetText):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
+ (WebInspector.ExtensionServer.prototype._onGetResourceContent):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.prototype.get responseReceivedTime):
+ (WebInspector.Resource.prototype.set endTime):
+ * inspector/front-end/Settings.js:
+ * inspector/front-end/SourceView.js:
+ (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.css:
+ (.tabbed-pane-header li):
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/inspector.js:
+ (WebInspector.updateResource):
+ * loader/ResourceLoadNotifier.cpp:
+ (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::didReceiveResponse):
+
+2010-10-16 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: brush up URL parsing on the front-end.
+ https://bugs.webkit.org/show_bug.cgi?id=47772
+
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::updateScriptObject):
+ * inspector/front-end/AuditRules.js:
+ (WebInspector.AuditRules.getDomainToResourcesMap):
+ (WebInspector.AuditRules.CombineExternalResourcesRule.prototype.doRun):
+ (WebInspector.AuditRules.MinimizeDnsLookupsRule.prototype.doRun):
+ (WebInspector.AuditRules.ParallelizeDownloadRule.prototype.doRun):
+ (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
+ (WebInspector.AuditRules.CookieSizeRule.prototype.processCookies):
+ (WebInspector.AuditRules.StaticCookielessRule.prototype.processCookies):
+ * inspector/front-end/CookieItemsView.js:
+ (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.Cookies.cookieMatchesResourceURL):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource):
+ (WebInspector.Resource.prototype.set url):
+ (WebInspector.Resource.prototype.get displayName):
+ * inspector/front-end/ResourceCategory.js:
+ (WebInspector.ResourceCategory.prototype.addResource):
+ * inspector/front-end/ResourceView.js:
+ (WebInspector.ResourceView):
+ * inspector/front-end/inspector.js:
+ (WebInspector.documentClick.followLink):
+ (WebInspector.documentClick):
+ (WebInspector.updateResource):
+ (WebInspector.linkifyStringAsFragment):
+ (WebInspector.resourceURLForRelatedNode):
+ (WebInspector.completeURL):
+ * inspector/front-end/utilities.js:
+ (String.prototype.asParsedURL):
+
+2010-10-17 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Support custom open() verbs/methods in XMLHttpRequest
+ https://bugs.webkit.org/show_bug.cgi?id=40476
+
+ Fall back to QNetworkAccessManager::CustomOperation for any HTTP verb
+ that's not specifically supported by QNetworkAccessManager.
+
+ This prevents the infinite loop that otherwise occurs after sending
+ an UnknownOperation request.
+
+ This change is covered by existing (skipped) tests that will be
+ unskipped once the Qt bots are running Qt 4.7.
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::httpMethod):
+ (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+ * platform/network/qt/QNetworkReplyHandler.h:
+
+2010-10-17 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Remove explicit passing of user gesture in NavigationScheduler
+ https://bugs.webkit.org/show_bug.cgi?id=47786
+
+ As requested by Mr. Glazkov, remove more explicit passing of the user
+ gesture state. We now use a static to pass this information around.
+
+ * bindings/generic/BindingFrame.h:
+ (WebCore::::navigateIfAllowed):
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::setLocation):
+ * bindings/js/JSLocationCustom.cpp:
+ (WebCore::JSLocation::reload):
+ * bindings/v8/custom/V8LocationCustom.cpp:
+ (WebCore::V8Location::reloadCallback):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::setResourceTrackingEnabled):
+ (WebCore::InspectorController::reloadPage):
+ * loader/NavigationScheduler.cpp:
+ (WebCore::ScheduledNavigation::ScheduledNavigation):
+ (WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
+ (WebCore::ScheduledRedirect::ScheduledRedirect):
+ (WebCore::ScheduledLocationChange::ScheduledLocationChange):
+ (WebCore::ScheduledRefresh::ScheduledRefresh):
+ (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
+ (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
+ (WebCore::NavigationScheduler::scheduleRedirect):
+ (WebCore::NavigationScheduler::mustLockBackForwardList):
+ (WebCore::NavigationScheduler::scheduleLocationChange):
+ (WebCore::NavigationScheduler::scheduleFormSubmission):
+ (WebCore::NavigationScheduler::scheduleRefresh):
+ (WebCore::NavigationScheduler::scheduleHistoryNavigation):
+ * loader/NavigationScheduler.h:
+ * loader/SubframeLoader.cpp:
+ (WebCore::SubframeLoader::loadOrRedirectSubframe):
+
+2010-10-17 Julien Chaffraix <jchaffraix@codeaurora.org>
+
+ Reviewed by Andreas Kling.
+
+ 'transparent' should be a valid color
+ https://bugs.webkit.org/show_bug.cgi?id=45482
+
+ Test: svg/animations/svg-animate-color-transparent.svg
+
+ Based on previous work by Jan Erik Hanssen <jhanssen@codeaurora.org>
+
+ * platform/ColorData.gperf: Added 'transparent' to the list of colors.
+ Added the alpha to all the colors as it was needed to support the new color.
+
+ * platform/graphics/Color.cpp:
+ (WebCore::Color::Color):
+ (WebCore::Color::setNamedColor): Avoid setting the alpha as now it is not
+ always 0xFF.
+
+2010-10-17 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Duplicate use element children in shadow tree.
+ https://bugs.webkit.org/show_bug.cgi?id=47561
+
+ Test: svg/custom/use-nested-children.svg
+
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::expandUseElementsInShadowTree):
+
+2010-10-17 Hyung Song <beergun@company100.net>
+
+ Reviewed by David Levin.
+
+ Add !SINGLE_THREADED guard.
+ https://bugs.webkit.org/show_bug.cgi?id=47608
+
+ For SINGLE_THREADED ports LockingMutex.tryLock() returns false.
+ This will prevent interrupt() from falling into infinite loop.
+
+ * platform/sql/SQLiteDatabase.cpp:
+ (WebCore::SQLiteDatabase::interrupt):
+
+2010-10-17 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Very large and small numbers fail to round-trip through CSS
+ https://bugs.webkit.org/show_bug.cgi?id=20674
+
+ Use the new DecimalNumber functionality to convert CSS numberic values to strings
+ using decimal notation, rather than %g (which can output scientific notation).
+
+ Test: fast/css/round-trip-values.html
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::formatNumber):
+ (WebCore::CSSPrimitiveValue::cssText):
+
+2010-10-17 Cosmin Truta <ctruta@chromium.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Crash while processing ill-formed SVG with cycles
+ https://bugs.webkit.org/show_bug.cgi?id=47498
+
+ Test: svg/custom/invalid-paint-shape-mask.svg
+
+ * rendering/SVGResources.cpp:
+ (paintingResourceFromSVGPaint): Ensured that the painting resource is
+ either a pattern resource or a gradient resource.
+ (SVGResources::setClipper):
+ (SVGResources::setFilter):
+ (SVGResources::setMarkerStart):
+ (SVGResources::setMarkerMid):
+ (SVGResources::setMarkerEnd):
+ (SVGResources::setMasker):
+ (SVGResources::setFill):
+ (SVGResources::setStroke): Added ASSERT statements for previously-unchecked
+ preconditions.
+
+2010-10-17 Alex Milowski <alex@milowski.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Fixed extra whitespace above operators when they aren't stretched
+ yet the stretch height is large. Also, the baseline alignment
+ was changed so that rows and operators interact appropriately now
+ that operators don't have the extra white space.
+
+ * mathml/RenderMathMLOperator.cpp:
+ * mathml/RenderMathMLRow.cpp:
+
+2010-10-17 Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ [Qt] Fix focusing of control elements on mouse click.
+ Brings GTK fix to Qt platform.
+ https://bugs.webkit.org/show_bug.cgi?id=40641
+
+ Test: fast/events/click-focus-control.html
+
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::isMouseFocusable):
+
+2010-10-17 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ FrameLoader doesn't need an explicit userGesture parameter
+ https://bugs.webkit.org/show_bug.cgi?id=47777
+
+ We used to pass around the user gesture state explicitly. Now we use
+ static state. Explicitly passing the user gesture state to FrameLoader
+ in these methods is pretty out-dated.
+
+ * bindings/ScriptControllerBase.cpp:
+ (WebCore::ScriptController::executeIfJavaScriptURL):
+ * bindings/generic/BindingDOMWindow.h:
+ (WebCore::::createWindow):
+ (WebCore::::open):
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::createWindow):
+ (WebCore::JSDOMWindow::open):
+ * bindings/js/JSDocumentCustom.cpp:
+ (WebCore::JSDocument::setLocation):
+ * bindings/js/ScriptController.h:
+ * bindings/v8/ScriptController.h:
+ * html/HTMLAnchorElement.cpp:
+ (WebCore::handleLinkClick):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::openInInspectedWindow):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::changeLocation):
+ (WebCore::FrameLoader::urlSelected):
+ (WebCore::FrameLoader::submitForm):
+ * loader/FrameLoader.h:
+ * loader/NavigationScheduler.cpp:
+ (WebCore::ScheduledURLNavigation::fire):
+ (WebCore::ScheduledRefresh::fire):
+ (WebCore::ScheduledHistoryNavigation::fire):
+ (WebCore::NavigationScheduler::scheduleLocationChange):
+
+2010-10-17 Sergey A. Sukiyazov <sergey.sukiyazov@gmail.com>
+
+ Reviewed by Andreas Kling
+
+ [Qt] Hovering the mouse over links produce a trail of underlined links (X11 paint engine)
+ https://bugs.webkit.org/show_bug.cgi?id=42248
+
+ The problem will appear because coordinates of points may increase by 0.05f (if line width is odd) inside
+ method GraphicsContext::adjustLineToPixelBoundaries(...) and become outside of text bounding rect htere,
+ then the new point coordinates will be passed to Qt graphics engine.
+
+ The solution decreases Y cordinates of points inside drawLineForText(...) method only if Qt graphics engine
+ is X11. The Y coordinates will be increase by 0.5f inside method adjustLineToPixelBoundaries(...), which
+ called from drawLine(...), and then inside Qt painting engine will be rounded to next greater integer value.
+
+ NOTE: This changes will affect only Qt X11 verision and if only X11 Painting Engine will be used.
+
+ No new tests.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::drawLineForText):
+
+2010-10-17 Rob Buis <rwlbuis@gmail.com>
+
+ Reviewed by Dirk Schulze.
+
+ Text under nested link dropped
+ https://bugs.webkit.org/show_bug.cgi?id=46460
+
+ Allow links inside of tspan and textPath elements.
+
+ * svg/SVGTSpanElement.cpp:
+ (WebCore::SVGTSpanElement::childShouldCreateRenderer):
+ * svg/SVGTextPathElement.cpp:
+ (WebCore::SVGTextPathElement::childShouldCreateRenderer):
+
+2010-10-16 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Port TextCodec
+ https://bugs.webkit.org/show_bug.cgi?id=45797
+
+ Implement TextCodec with Brew MP's ICharsetConv.
+ Only UTF-8 is supported for now.
+
+ * platform/text/TextEncoding.cpp:
+ (WebCore::TextEncoding::encode):
+ * platform/text/TextEncodingRegistry.cpp:
+ (WebCore::buildBaseTextCodecMaps):
+ * platform/text/brew/TextCodecBrew.cpp: Added.
+ (WebCore::newTextCodecBrew):
+ (WebCore::TextCodecBrew::registerBaseEncodingNames):
+ (WebCore::TextCodecBrew::registerBaseCodecs):
+ (WebCore::TextCodecBrew::registerExtendedEncodingNames):
+ (WebCore::TextCodecBrew::registerExtendedCodecs):
+ (WebCore::TextCodecBrew::TextCodecBrew):
+ (WebCore::TextCodecBrew::~TextCodecBrew):
+ (WebCore::TextCodecBrew::decode):
+ (WebCore::TextCodecBrew::encode):
+ * platform/text/brew/TextCodecBrew.h: Added.
+
+2010-10-16 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed.
+
+ Build fix for !ENABLE(INSPECTOR) after r69844.
+
+ * inspector/InspectorState.h: Added ENABLE(INSPECTOR) guard.
+
+2010-10-16 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed, build fix.
+
+ WinCE build fix for r69798.
+
+ * platform/text/wince/TextCodecWinCE.cpp: Added missing include.
+
+2010-10-16 Johnny Ding <jnd@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Requires a user gesture when opening file choose dialog.
+ https://bugs.webkit.org/show_bug.cgi?id=47593
+
+ Test: fast/forms/input-file-not-open-without-gesture.html
+
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::click):
+
+2010-10-16 Alex Milowski <alex@milowski.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Changed the vertical alignment within mfenced to baseline to
+ match the rest of the containers (e.g. mrow) and adjusted the
+ operator spacing to 0.1em.
+
+ Test: mathml/presentation/fenced-mi.xhtml
+
+ * css/mathml.css:
+ * mathml/RenderMathMLFenced.cpp:
+
+2010-10-16 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Rename StringHasherFunctions.h to StringHasher.h
+ https://bugs.webkit.org/show_bug.cgi?id=47200
+
+ * ForwardingHeaders/wtf/StringHashFunctions.h: Removed.
+ * ForwardingHeaders/wtf/StringHasher.h: Copied from WebCore/ForwardingHeaders/wtf/StringHashFunctions.h.
+
+2010-10-15 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ unlink removes inline style of anchor elements
+ https://bugs.webkit.org/show_bug.cgi?id=47424
+
+ The bug was caused by our not extracting styles when the anchor element is removed by removeInlineStyle.
+ Because we removed the element without pushing its inline style down, we lost style information.
+
+ Fixed the bug by pushing down styles in removeInlineStyle as done in pushDownInlineStyleAroundNode.
+ Also fixed a bug in addInlineStyleIfNeeded where StyleChange incorrectly removed styles of the container
+ node as supposed to that of startNode from the style to apply when startNode is not an element.
+
+ Test: editing/execCommand/toggle-unlink.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): To prevent a similar bug in the future,
+ added an assert that extractedStyle is specified whenever we're removing a styled element.
+ (WebCore::ApplyStyleCommand::removeInlineStyle):
+ (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
+
+2010-10-15 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ serializeNodesWithNamespaces should be in MarkupAccumulator
+ https://bugs.webkit.org/show_bug.cgi?id=47749
+
+ Moved serializeNodesWithNamespaces to MarkupAccumulator, and renamed it to serializeNodes.
+ MarkupAccumulator::serializeNode now returns the resultant string instead of having a separate takeResults().
+ Added several helper functions to MarkupAccumulator.
+
+ No new tests are added since this is a cleanup.
+
+ * editing/MarkupAccumulator.cpp:
+ (WebCore::MarkupAccumulator::serializeNodes): Wrapper for serializeNodes and concatenateMarkup.
+ (WebCore::MarkupAccumulator::serializeNodesWithNamespaces): Moved from markup.cpp
+ (WebCore::MarkupAccumulator::appendStartTag): Calls appendString instead of appending into m_succeedingMarkup directly.
+ (WebCore::MarkupAccumulator::appendEndTag): Ditto.
+ (WebCore::MarkupAccumulator::totalLength): Added; extracted from takeResults.
+ (WebCore::MarkupAccumulator::concatenateMarkup): Ditto.
+ * editing/MarkupAccumulator.h:
+ (WebCore::MarkupAccumulator::length): Added; calls totalLength.
+ * editing/markup.cpp:
+ (WebCore::StyledMarkupAccumulator::appendString): Added; calls MarkupAccumulator's appendString.
+ (WebCore::StyledMarkupAccumulator::wrapWithStyleNode): Calls appendString.
+ (WebCore::StyledMarkupAccumulator::takeResults): Calls length, totalLength, and concatenateMarkup.
+ (WebCore::StyledMarkupAccumulator::serializeNodes): Became a member function.
+ (WebCore::createMarkup): Uses MarkupAccumulator.
+
+2010-10-15 Kinuko Yasuda <kinuko@google.com>
+
+ Reviewed by Jian Li.
+
+ Implement FileEntrySync.file() in FileSystem API
+ https://bugs.webkit.org/show_bug.cgi?id=47310
+
+ Tests: fast/filesystem/workers/file-from-file-entry-sync.html
+ fast/filesystem/workers/file-from-file-entry.html
+
+ * fileapi/DOMFileSystem.cpp:
+ (WebCore::DOMFileSystem::createFile): Added.
+ * fileapi/DOMFileSystem.h:
+ * fileapi/DOMFileSystemSync.cpp:
+ (WebCore::DOMFileSystemSync::createFile): Added.
+ * fileapi/DOMFileSystemSync.h:
+ * fileapi/DirectoryReaderBase.h: Added 'virtual path' comment.
+ * fileapi/EntryBase.h: Added 'virtual path' comment.
+ * fileapi/FileEntry.cpp:
+ (WebCore::FileEntry::file): Changed to use DOMFileSystem::createFile.
+ * fileapi/FileEntrySync.cpp:
+ (WebCore::FileEntrySync::file): Implemented.
+ * fileapi/FileEntrySync.h:
+ * fileapi/FileEntrySync.idl: Added file().
+
+2010-10-15 Nico Weber <thakis@chromium.org>
+
+ Reviewed by Eric Carlson.
+
+ Make sure to update the current graphics context when calling out to AppKit.
+ https://bugs.webkit.org/show_bug.cgi?id=47757
+
+ Like r57741, but for the spellchecking highlight
+
+ * platform/graphics/mac/GraphicsContextMac.mm:
+ (WebCore::GraphicsContext::drawLineForTextChecking):
+
+2010-10-15 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ REGRESSION(r69850) Loading apple.com/startpage in WebKit on Windows gets a bad request.
+ https://bugs.webkit.org/show_bug.cgi?id=47753
+ <rdar://problem/8558242>
+
+ r69850 switched over to a different way of concatenating WebCore strings, but ran into an issue
+ where some Windows calls were returning null terminated strings, and this breaks the new
+ method of concatenation.
+
+ GetLocaleInfo returns a null-terminated string, but WebCore strings are non-null terminated,
+ so once we create our WebCore string, we want to trim off the null terminating character before
+ we return the localeInfo.
+
+ Test: fast/dom/navigator-userAgent.html
+
+ * platform/win/Language.cpp:
+ (WebCore::localeInfo):
+
+2010-10-15 Alexey Proskuryakov <ap@apple.com>
+
+ Trying to fix crashes on Leopard buildbot.
+
+ * loader/loader.cpp:
+ (WebCore::Loader::Host::didFinishLoading):
+ (WebCore::Loader::Host::didFail):
+ Moved logging higher in the function - it seems that CachedResource can be already destroyed.
+
+ * platform/Logging.cpp: (WebCore::getChannelFromName):
+ * platform/mac/LoggingMac.mm: (WebCore::InitializeLoggingChannelsIfNecessary):
+ Initialize the new channel (oops).
+
+2010-10-15 Mike Lawther <mikelawther@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Prevent scrollbars from appearing in iframes with scrolling=no
+ when the embedded content has overflow:scroll set on the html
+ or body tags.
+
+ iframes keep getting scrollbars with scrolling="no"
+ https://bugs.webkit.org/show_bug.cgi?id=29240
+
+ Test: fast/frames/iframe-scrolling-attribute-overflowscroll.html
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::calculateScrollbarModesForLayout)
+ (WebCore::FrameView::updateCanHaveScrollbars):
+ (WebCore::FrameView::layout):
+ * page/FrameView.h:
+ (WebCore::FrameView::calculateScrollbarModesForLayout)
+
+2010-10-15 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ Clean up RenderFlexibleBox::applyLineClamp()
+ https://bugs.webkit.org/show_bug.cgi?id=47743
+
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::applyLineClamp):
+
+2010-10-15 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47736
+ <rdar://problem/8429396> WebCore cache gets corrupted if revalidation request starts at an inopportune time
+
+ Test: http/tests/cache/stopped-revalidation.html
+
+ * loader/loader.cpp: (WebCore::Loader::Host::servePendingRequests): Copied logic for
+ revalidation requests from didFail().
+
+2010-10-15 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Darin Adler in <https://bugs.webkit.org/show_bug.cgi?id=47736>.
+
+ Add a logging channel for WebCore cache and resource loading.
+
+ Test: http/tests/cache/stopped-revalidation.html
+
+ * platform/Logging.cpp:
+ * platform/Logging.h:
+ Added a logging channel for Cache and Loader.
+
+ * loader/Cache.cpp:
+ (WebCore::Cache::requestResource):
+ (WebCore::Cache::revalidateResource):
+ (WebCore::Cache::revalidationFailed):
+ (WebCore::Cache::evict):
+ * loader/CachedResource.cpp:
+ (WebCore::CachedResource::setResourceToRevalidate):
+ (WebCore::CachedResource::switchClientsToRevalidatedResource):
+ (WebCore::CachedResource::mustRevalidate):
+ Added logging.
+
+ * loader/loader.cpp:
+ (WebCore::Loader::load): Added logging.
+ (WebCore::Loader::scheduleServePendingRequests): Ditto.
+ (WebCore::Loader::requestTimerFired): Ditto.
+ (WebCore::Loader::servePendingRequests): Ditto.
+ (WebCore::Loader::Host::servePendingRequests): Changed logging to use the new channel.
+ (WebCore::Loader::Host::didFinishLoading): Changed logging to use the new channel.
+ (WebCore::Loader::Host::didFail): Added logging.
+
+2010-10-15 No'am Rosenthal <noam.rosenthal@nokia.com>
+
+ Reviewed by Simon Fraser.
+
+ Add public functions to serialize TransformOperations.
+ https://bugs.webkit.org/show_bug.cgi?id=47728
+
+ Added public accessors to the internal data of the TransformOperations.
+
+ No new tests. These functions are enablers for WebKit2.
+
+ * platform/graphics/transforms/Matrix3DTransformOperation.h:
+ (WebCore::Matrix3DTransformOperation::matrix):
+ * platform/graphics/transforms/MatrixTransformOperation.h:
+ (WebCore::MatrixTransformOperation::matrix):
+ * platform/graphics/transforms/PerspectiveTransformOperation.h:
+ (WebCore::PerspectiveTransformOperation::perspective):
+ * platform/graphics/transforms/RotateTransformOperation.h:
+ (WebCore::RotateTransformOperation::x):
+ (WebCore::RotateTransformOperation::y):
+ (WebCore::RotateTransformOperation::z):
+ * platform/graphics/transforms/SkewTransformOperation.h:
+ (WebCore::SkewTransformOperation::angleX):
+ (WebCore::SkewTransformOperation::angleY):
+ * platform/graphics/transforms/TranslateTransformOperation.h:
+ (WebCore::TranslateTransformOperation::x):
+ (WebCore::TranslateTransformOperation::y):
+ (WebCore::TranslateTransformOperation::z):
+
+2010-10-15 Jian Li <jianli@chromium.org>
+
+ Reviewed by Dmitry Titov.
+
+ FileReader.readAsDataURL should take Blob object
+ https://bugs.webkit.org/show_bug.cgi?id=47679
+
+ Test cases have been added into read-blob-test-cases.js.
+
+ * fileapi/FileReader.idl: Update per the latest File API spec.
+
+2010-10-15 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Move MarkupAccumulator from markup.cpp to its own file
+ https://bugs.webkit.org/show_bug.cgi?id=47734
+
+ This patch moves the MarkupAccumulator class into its own file.
+ There's a lot of clean up left to do, but this patch is a step in the
+ right direction.
+
+ No behavior change.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * editing/markup.cpp:
+ (WebCore::elementCannotHaveEndTag):
+ * editing/markup.h:
+ * editing/MarkupAccumulator.h: Added.
+ * editing/MarkupAccumulator.cpp: Added.
+
+2010-10-15 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Match the elements supported by execCommand('formatBlock') and queryCommandValue('formatBlock')
+ https://bugs.webkit.org/show_bug.cgi?id=47712
+
+ Extended queryCommandValue('formatBlock', false, null) to support article, aside, blockquote, dd, dl,
+ div, dl, dt, dl, footer, header, hgroup, nav, and section. Because this makes isElementForFormatBlockCommand
+ in Editor.cpp and FormatBlockCommand::isElementToApplyInFormatBlockCommand identical, they are merged and moved
+ to FormatBlockCommand.cpp
+
+ Tests are added to editing/execCommand/query-format-block.html
+
+ * editing/Editor.cpp: Removed isElementForFormatBlockCommand and Editor::elementForFormatBlockCommand.
+ * editing/Editor.h:
+ * editing/EditorCommand.cpp:
+ (WebCore::executeFormatBlock): Removed the check of tag name; the check is moved into FormatBlockCommand.
+ (WebCore::valueFormatBlock): Calls FormatBlockCommand::elementForFormatBlockCommand.
+ * editing/FormatBlockCommand.cpp:
+ (WebCore::isElementForFormatBlock):
+ (WebCore::FormatBlockCommand::FormatBlockCommand):
+ (WebCore::FormatBlockCommand::formatSelection): Added to check the tag name. Exit early if the specified tag name
+ is not what FormatBlock should apply. Set m_didApply true if m_didApply did apply the element.
+ (WebCore::FormatBlockCommand::formatRange): Moved from Editor.cpp. Takes Range* instead of accessing selection directly.
+ (WebCore::FormatBlockCommand::elementForFormatBlockCommand): Moved from Editor.cpp
+ (WebCore::enclosingBlockToSplitTreeTo): Calls isElementForFormatBlock.
+ * editing/FormatBlockCommand.h:
+ (WebCore::FormatBlockCommand::didApply): Added.
+
+2010-10-15 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ carto.net Dock example redraws *way* too often
+ https://bugs.webkit.org/show_bug.cgi?id=16090
+
+ Setting the attributes x, y, width or height shouldn't cause a repaint if the image boundaries don't change.
+ Added updateFromElement() to RenderSVGImage that checks if the old boundaries match the new boundaries after
+ setting one of the attributes of above. Mark renderer for layout (and therefore repaint) if the boundaries
+ differ, do nothing if not.
+ Also added caching of the repaint rect to avoid multiple calculations.
+
+ Test: svg/custom/repaint-on-constant-size-change.svg
+
+ * rendering/RenderSVGImage.cpp:
+ (WebCore::RenderSVGImage::RenderSVGImage):
+ (WebCore::RenderSVGImage::layout): Update repaint rect on layout.
+ (WebCore::RenderSVGImage::updateFromElement): Check SVGImageElement for boundaries update.
+ * rendering/RenderSVGImage.h:
+ (WebCore::RenderSVGImage::repaintRectInLocalCoordinates): Return the cached repaint rect.
+ * svg/SVGImageElement.cpp:
+ (WebCore::SVGImageElement::svgAttributeChanged): Call updateFromElement() on changes to x, y, width or height.
+
+2010-10-15 Martin Robinson <mrobinson@igalia.com>
+
+ Build fix for GTK+.
+
+ * platform/network/soup/cache/webkit/soup-cache.h: Do not use PLATFORM(...) macro
+ in a file that does not include config.h
+
+2010-10-15 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Add FindIndicatorWindow class
+ https://bugs.webkit.org/show_bug.cgi?id=47731
+
+ Export symbols needed by the FindIndicator in WebKit2.
+
+ * WebCore.exp.in:
+
+2010-10-15 Leandro Pereira <leandro@profusion.mobi>
+
+ [EFL] Unreviewed. Build fix.
+
+ Add new files needed by the Soup network backend, and #ifdef a
+ GTK+-port only include in soup-cache.h.
+
+ * CMakeListsEfl.txt:
+ * platform/network/soup/cache/webkit/soup-cache.h:
+
+2010-10-14 Darin Adler <darin@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Use more specific types for node pointers, especially when calling node insertion and removal functions
+ https://bugs.webkit.org/show_bug.cgi?id=47702
+
+ Refactoring. No new tests.
+
+ While developing this patch I temporarily removed the node insertion and
+ removal member functions from the Node class and fixed almost all call sites
+ so they call it directly on the ContainerNode class, which will be important
+ once we make the functions non-virtual.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::insertBefore):
+ (WebCore::ContainerNode::replaceChild):
+ (WebCore::ContainerNode::appendChild):
+ * dom/Document.cpp:
+ (WebCore::Document::caretRangeFromPoint):
+ * dom/DynamicNodeList.cpp:
+ (WebCore::DynamicNodeList::itemWithName):
+ * dom/Position.cpp:
+ (WebCore::Position::previous):
+ (WebCore::Position::next):
+ * dom/Text.cpp:
+ (WebCore::Text::replaceWholeText):
+ * dom/TreeWalker.cpp:
+ (WebCore::TreeWalker::firstChild):
+ (WebCore::TreeWalker::lastChild):
+ (WebCore::TreeWalker::previousNode):
+ * dom/XMLDocumentParserLibxml2.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ * editing/BreakBlockquoteCommand.cpp:
+ (WebCore::BreakBlockquoteCommand::doApply):
+ * editing/CompositeEditCommand.h:
+ * editing/DeleteButtonController.cpp:
+ (WebCore::isDeletableElement):
+ * editing/IndentOutdentCommand.cpp:
+ (WebCore::IndentOutdentCommand::outdentParagraph):
+ * editing/InsertNodeBeforeCommand.cpp:
+ (WebCore::InsertNodeBeforeCommand::doApply):
+ * editing/JoinTextNodesCommand.cpp:
+ (WebCore::JoinTextNodesCommand::doApply):
+ (WebCore::JoinTextNodesCommand::doUnapply):
+ * editing/MergeIdenticalElementsCommand.cpp:
+ (WebCore::MergeIdenticalElementsCommand::doUnapply):
+ * editing/RemoveNodeCommand.cpp:
+ (WebCore::RemoveNodeCommand::doApply):
+ (WebCore::RemoveNodeCommand::doUnapply):
+ * editing/RemoveNodeCommand.h:
+ * editing/SplitElementCommand.cpp:
+ (WebCore::SplitElementCommand::executeApply):
+ * editing/SplitTextNodeCommand.cpp:
+ (WebCore::SplitTextNodeCommand::doApply):
+ (WebCore::SplitTextNodeCommand::doReapply):
+ * editing/TextIterator.cpp:
+ (WebCore::parentCrossingShadowBoundaries):
+ * editing/htmlediting.cpp:
+ (WebCore::enclosingList):
+ * editing/markup.cpp:
+ (WebCore::serializeNodes):
+ (WebCore::ancestorToRetainStructureAndAppearance):
+ (WebCore::createMarkup):
+ * html/HTMLAreaElement.cpp:
+ (WebCore::HTMLAreaElement::updateFocusAppearance):
+ * html/HTMLEmbedElement.cpp:
+ (WebCore::HTMLEmbedElement::rendererIsNeeded):
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::rendererIsNeeded):
+ * html/HTMLFrameSetElement.cpp:
+ (WebCore::HTMLFrameSetElement::attach):
+ * html/HTMLImageElement.cpp:
+ (WebCore::HTMLImageElement::insertedIntoTree):
+ * html/HTMLLegendElement.cpp:
+ (WebCore::HTMLLegendElement::associatedControl):
+ * html/HTMLOptGroupElement.cpp:
+ (WebCore::HTMLOptGroupElement::recalcSelectOptions):
+ (WebCore::HTMLOptGroupElement::ownerSelectElement):
+ * html/HTMLOptionElement.cpp:
+ (WebCore::HTMLOptionElement::ownerSelectElement):
+ * html/HTMLTableCellElement.cpp:
+ (WebCore::HTMLTableCellElement::additionalAttributeStyleDecls):
+ * html/HTMLTableColElement.cpp:
+ (WebCore::HTMLTableColElement::additionalAttributeStyleDecls):
+ * html/HTMLTableElement.cpp:
+ (WebCore::HTMLTableElement::insertRow):
+ * html/HTMLTableRowElement.cpp:
+ (WebCore::HTMLTableRowElement::rowIndex):
+ * html/HTMLTableSectionElement.cpp:
+ (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecls):
+ * page/DOMSelection.cpp:
+ (WebCore::DOMSelection::getRangeAt):
+ (WebCore::DOMSelection::containsNode):
+ * rendering/RenderSVGGradientStop.cpp:
+ (WebCore::RenderSVGGradientStop::gradientElement):
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::ownerSVGElement):
+ (WebCore::SVGElement::viewportElement):
+ * svg/SVGFELightElement.cpp:
+ (WebCore::SVGFELightElement::svgAttributeChanged):
+ (WebCore::SVGFELightElement::childrenChanged):
+ * svg/SVGFEMergeNodeElement.cpp:
+ (WebCore::SVGFEMergeNodeElement::svgAttributeChanged):
+ * svg/SVGFontFaceFormatElement.cpp:
+ (WebCore::SVGFontFaceFormatElement::childrenChanged):
+ * svg/SVGFontFaceUriElement.cpp:
+ (WebCore::SVGFontFaceUriElement::childrenChanged):
+ * svg/SVGGlyphElement.cpp:
+ (WebCore::SVGGlyphElement::invalidateGlyphCache):
+ * svg/SVGHKernElement.cpp:
+ (WebCore::SVGHKernElement::insertedIntoDocument):
+ (WebCore::SVGHKernElement::removedFromDocument):
+ * svg/SVGLocatable.cpp:
+ (WebCore::SVGLocatable::nearestViewportElement):
+ (WebCore::SVGLocatable::farthestViewportElement):
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::updateContainerOffsets):
+ * svg/SVGVKernElement.cpp:
+ (WebCore::SVGVKernElement::insertedIntoDocument):
+ (WebCore::SVGVKernElement::removedFromDocument):
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::SVGSMILElement::targetElement):
+ * wml/WMLDoElement.cpp:
+ (WebCore::WMLDoElement::insertedIntoDocument):
+ (WebCore::WMLDoElement::removedFromDocument):
+ * wml/WMLNoopElement.cpp:
+ (WebCore::WMLNoopElement::insertedIntoDocument):
+ * wml/WMLOptionElement.cpp:
+ (WebCore::ownerSelectElement):
+ * wml/WMLPostfieldElement.cpp:
+ (WebCore::WMLPostfieldElement::insertedIntoDocument):
+ (WebCore::WMLPostfieldElement::removedFromDocument):
+ * wml/WMLSetvarElement.cpp:
+ (WebCore::WMLSetvarElement::insertedIntoDocument):
+ (WebCore::WMLSetvarElement::removedFromDocument):
+ * wml/WMLTaskElement.cpp:
+ (WebCore::WMLTaskElement::insertedIntoDocument):
+ (WebCore::WMLTaskElement::removedFromDocument):
+ * wml/WMLTimerElement.cpp:
+ (WebCore::WMLTimerElement::insertedIntoDocument):
+ (WebCore::WMLTimerElement::removedFromDocument):
+ * xml/XPathStep.cpp:
+ (WebCore::XPath::Step::nodesInAxis):
+ Use ContainerNode* for the result of the parentNode function now that
+ it returns a ContainerNode*. In the past it used to return just Node*.
+
+ * dom/ContainerNode.h: Added toContainerNode.
+
+ * dom/Element.h: Use ContainerNode*. Added toElement.
+
+ * dom/Element.cpp:
+ (WebCore::Element::deprecatedCreateContextualFragment): Explcitly
+ cast to HTMLElement* in the case that handles <html> and <body>
+ elements.
+ (WebCore::Element::baseURI): Use ContainerNode*.
+
+ * dom/Node.cpp:
+ (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Use ContainerNode*.
+ (WebCore::Node::isDescendantOf): Ditto.
+ (WebCore::Node::createRendererIfNeeded): Ditto.
+ (WebCore::Node::setTextContent): Use already-typecast pointer in a call to
+ appendChild.
+ (WebCore::Node::ancestorElement): Use ContainerNode*.
+
+ * dom/Range.cpp:
+ (WebCore::Range::compareNode): Use ContainerNode*.
+ (WebCore::Range::intersectsNode): Ditto.
+ (WebCore::Range::processContents): Cast to ContainerNode* in a couple cases
+ where we previously checked that the node in question has a child. Any node
+ that returns a non-zero value for firstChild is a ContainerNode.
+ (WebCore::Range::checkNodeBA): Ditto.
+ (WebCore::Range::selectNode): Ditto.
+ (WebCore::Range::surroundContents): Ditto.
+
+ * dom/XMLDocumentParser.cpp:
+ (WebCore::XMLDocumentParser::insertErrorMessageBlock): Rewrote code to use
+ more specific types, document instead of doc, and paragraph instead of par.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle):
+ Use ContainerNode*.
+ (WebCore::ApplyStyleCommand::replaceWithSpanOrRemoveIfWithoutAttributes):
+ Use replaceElementWithSpanPreservingChildrenAndAttributes; the old function
+ took a Node argument and had Node in its name.
+
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::removeNodeAndPruneAncestors): Use ContainerNode.
+ (WebCore::CompositeEditCommand::replaceElementWithSpanPreservingChildrenAndAttributes):
+ Renamed and changed to take HTMLElement. Also use ContainerNode.
+ (WebCore::CompositeEditCommand::prune): Ditto.
+ (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Ditto.
+ (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph): Ditto.
+
+ * editing/ReplaceNodeWithSpanCommand.cpp:
+ (WebCore::ReplaceNodeWithSpanCommand::ReplaceNodeWithSpanCommand): Take an
+ HTMLElement instead of a Node. Call it m_elementToReplace instead of m_node.
+ (WebCore::swapInNodePreservingAttributesAndChildren): Take HTMLElement.
+ (WebCore::ReplaceNodeWithSpanCommand::doApply): Updated for name changes.
+ (WebCore::ReplaceNodeWithSpanCommand::doUnapply): Ditto.
+ * editing/ReplaceNodeWithSpanCommand.h: Ditto.
+
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplacementFragment::ReplacementFragment): Use StyledElement for result
+ of insertFragmentForTestRendering since that's what it returns.
+ (WebCore::ReplacementFragment::removeNode): Use ContainerNode.
+ (WebCore::ReplacementFragment::insertNodeBefore): Ditto.
+ (WebCore::ReplacementFragment::insertFragmentForTestRendering): Return StyledElement.
+ Use HTMLElement for body.
+ (WebCore::ReplacementFragment::restoreTestRenderingNodesToFragment): Take
+ StyledElement.
+ (WebCore::ReplaceSelectionCommand::handleStyleSpans): Use ContainerNode.
+ (WebCore::ReplaceSelectionCommand::copyStyleToChildren): Use HTMLElement for
+ the cloned span, since the clone will be a sspan too.
+ (WebCore::ReplaceSelectionCommand::insertAsListItems): Use ContainerNode since
+ the list item has a child, and that proves it is a ContainerNode.
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
+ Use ContainerNode and also removed an unnneded local variable.
+
+ * html/HTMLElement.cpp:
+ (WebCore::HTMLElement::setOuterText): Use ContainerNode.
+ (WebCore::HTMLElement::insertAdjacent): Use ContainerNode and also use && to make
+ the logic a little simpler.
+ (WebCore::contextElementForInsertion): Use ContainerNode.
+ (WebCore::HTMLElement::findFormAncestor): Ditto.
+
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::removeNode): Use ContainerNode.
+ (WebCore::InspectorDOMAgent::changeTagName): Ditto.
+ (WebCore::InspectorDOMAgent::setOuterHTML): Ditto.
+ (WebCore::InspectorDOMAgent::innerParentNode): Use isDocumentNode instead of
+ nodeType. We should almost never use nodeType inside the engine.
+ (WebCore::InspectorDOMAgent::didInsertDOMNode): Use ContainerNode.
+ (WebCore::InspectorDOMAgent::didRemoveDOMNode): Ditto.
+
+ * wml/WMLOptGroupElement.cpp: Removed unneeded overrides of insertBefore,
+ replaceChild, removeChild, appendChild, and removeChildren functions.
+ Ths already overrides childrenChanged, that is called by all of the above,
+ and it does the same thing these functions did.
+ (WebCore::ownerSelectElement): Use ContainerNode.
+ * wml/WMLOptGroupElement.h: Ditto.
+
+2010-10-15 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Crash in WebCore::ApplyStyleCommand::applyBlockStyle
+ https://bugs.webkit.org/show_bug.cgi?id=47699
+
+ The crash was caused by applyBlockStyle's invalidly assuming that visibleStart and visibleEnd always exist.
+ Added an early exit to the function when either visibleStart or visibleEnd is null or orphaned.
+
+ Test: editing/style/block-style-progress-crash.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::applyBlockStyle):
+
+2010-10-13 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Add a FindIndicator class
+ https://bugs.webkit.org/show_bug.cgi?id=47635
+
+ Make Gradient.h and Generator.h private headers; they're used by WebKit2.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-10-15 Sergio Villar Senin <svillar@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [Soup] Should not ignore body for redirection responses
+ https://bugs.webkit.org/show_bug.cgi?id=29299
+
+ Body is now provided to WebKitGtk+ in some redirections (like 302)
+ because it could be used by servers to perform clunky redirections
+ for example using http-equiv=REFRESH
+
+ Test: http/tests/navigation/redirect302-metaredirect.html
+
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::gotHeadersCallback):
+ (WebCore::finishedCallback):
+
+2010-10-15 Sergio Villar Senin <svillar@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Fix introspection support
+ https://bugs.webkit.org/show_bug.cgi?id=47723
+
+ WebKitSoupCacheType was incorrectly registered twice. Renamed to
+ WebKitSoupCacheTypeType for the enumerated type.
+
+ * platform/network/soup/cache/webkit/soup-cache.c:
+ (webkit_soup_cache_type_get_type):
+
+2010-10-15 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: extract consoleMessages related stuff from populateScriptObjects into separate function.
+
+ This is a part of Inspector protocol sanitization activity.
+ We want to populate console messages only if it is required by frontend.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46802
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::setConsoleMessagesEnabled):
+ (WebCore::InspectorController::addConsoleMessage):
+ (WebCore::InspectorController::disconnectFrontend):
+ (WebCore::InspectorController::populateScriptObjects):
+ * inspector/InspectorController.h:
+ * inspector/InspectorState.cpp:
+ (WebCore::InspectorState::InspectorState):
+ * inspector/InspectorState.h:
+ * inspector/front-end/inspector.js:
+ (WebInspector.doLoadedDone):
+
+2010-10-15 Ryuan Choi <ryuan.choi@samsung.com>
+
+ Reviewed by Nikolas Zimmermann.
+
+ [EFL] REGRESSION(69798) UCHAR can't be converted to String.
+ https://bugs.webkit.org/show_bug.cgi?id=47698
+
+ Create String value using String(const char*, 1) instead of operator[].
+
+ No tests. No functionality changed.
+
+ * platform/efl/PlatformKeyboardEventEfl.cpp:
+ (WebCore::createWindowsKeyMap):
+
+2010-10-15 Sergio Villar Senin <svillar@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Do a stricter check for invalid base64 dataURLs
+ https://bugs.webkit.org/show_bug.cgi?id=47717
+
+ Restore the strict base64 decoding we added in
+ https://bugs.webkit.org/show_bug.cgi?id=44261 and then rolled back
+ in https://bugs.webkit.org/show_bug.cgi?id=47666 due to a failing
+ test. The actual issue was that we were not finishing the load of
+ the resource gracefully when an error happened.
+
+ Loading invalid base64-encoded data:// URLs are now handled
+ properly.
+
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::parseDataUrl):
+ * platform/network/soup/cache/soup-request-data.c:
+ (webkit_soup_request_data_send):
+
+2010-10-15 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ compile fail with gtk >= 2.22
+ https://bugs.webkit.org/show_bug.cgi?id=47483
+
+ * platform/graphics/gtk/FontGtk.cpp: Removed the shrink operation,
+ it was added long time ago and currently it is not adding any real
+ area to the clip vertically, actually the gtk3 shrink version did
+ not work.
+ (WebCore::Font::drawComplexText):
+ * platform/gtk/gtk2drawing.c: Undef the deprecation flags, this
+ file is full of gtk2 stuff, and it does not seem interesting to
+ upgrade because we are already creating a new version of the file
+ for gtk3.
+
+2010-10-14 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: inspector settings/properties/states management
+ should be extracted into separate class.
+
+ We have a lot of flags/values in InspectorController.
+ Some flags are persisting into profile.
+ Others are part of inspector state for frontend.
+ All these flags should keep their values after navigation.
+ It'd be better to extract these flags/values into separate
+ class which will care about theirs lifetime.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47275
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.exp.in:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::inspectorStartsAttached):
+ (WebCore::InspectorController::setInspectorStartsAttached):
+ (WebCore::InspectorController::setInspectorAttachedHeight):
+ (WebCore::InspectorController::inspectorAttachedHeight):
+ (WebCore::InspectorController::searchingForNodeInPage):
+ (WebCore::InspectorController::resourceTrackingEnabled):
+ (WebCore::InspectorController::saveApplicationSettings):
+ (WebCore::InspectorController::getInspectorState):
+ (WebCore::InspectorController::restoreInspectorStateFromCookie):
+ (WebCore::InspectorController::getSettings):
+ (WebCore::InspectorController::storeLastActivePanel):
+ (WebCore::InspectorController::mouseDidMoveOverElement):
+ (WebCore::InspectorController::handleMousePress):
+ (WebCore::InspectorController::setSearchingForNode):
+ (WebCore::InspectorController::setMonitoringXHREnabled):
+ (WebCore::InspectorController::showPanel):
+ (WebCore::InspectorController::disconnectFrontend):
+ (WebCore::InspectorController::populateScriptObjects):
+ (WebCore::InspectorController::restoreDebugger):
+ (WebCore::InspectorController::restoreProfiler):
+ (WebCore::InspectorController::getTrackedResource):
+ (WebCore::InspectorController::didLoadResourceFromMemoryCache):
+ (WebCore::InspectorController::identifierForInitialRequest):
+ (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
+ (WebCore::InspectorController::scriptImported):
+ (WebCore::InspectorController::setResourceTrackingEnabled):
+ (WebCore::InspectorController::ensureSettingsLoaded):
+ (WebCore::InspectorController::startTimelineProfiler):
+ (WebCore::InspectorController::stopTimelineProfiler):
+ (WebCore::InspectorController::enableProfiler):
+ (WebCore::InspectorController::disableProfiler):
+ (WebCore::InspectorController::enableDebuggerFromFrontend):
+ (WebCore::InspectorController::disableDebugger):
+ (WebCore::InspectorController::loadBreakpoints):
+ (WebCore::InspectorController::saveBreakpoints):
+ * inspector/InspectorController.h:
+ * inspector/InspectorFrontendClientLocal.cpp:
+ (WebCore::InspectorFrontendClientLocal::changeAttachedWindowHeight):
+ (WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight):
+ * inspector/InspectorState.cpp: Added.
+ (WebCore::InspectorState::InspectorState):
+ (WebCore::InspectorState::restoreFromInspectorCookie):
+ (WebCore::InspectorState::generateStateObjectForFrontend):
+ (WebCore::InspectorState::loadFromSettings):
+ (WebCore::InspectorState::updateCookie):
+ (WebCore::InspectorState::setValue):
+ (WebCore::InspectorState::getBoolean):
+ (WebCore::InspectorState::getString):
+ (WebCore::InspectorState::getLong):
+ (WebCore::InspectorState::registerBoolean):
+ (WebCore::InspectorState::registerString):
+ (WebCore::InspectorState::registerLong):
+ (WebCore::InspectorState::Property::create):
+ * inspector/InspectorState.h: Added.
+ (WebCore::InspectorState::setBoolean):
+ (WebCore::InspectorState::setString):
+ (WebCore::InspectorState::setLong):
+
+2010-10-14 Jia Pu <jpu@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ REGRESSION (r69548): Autocorrections are applied even after typing further characters in the word
+ https://bugs.webkit.org/show_bug.cgi?id=47689
+ <rdar://problem/8552250>
+
+ The test requires using setTimeout(). So we put it in manual-tests.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::markMisspellingsAfterTypingToPosition): Relpace release() with clear().
+ (WebCore::Editor::startCorrectionPanelTimer): Release previously set correction range before
+ start timer for next autocorrection check.
+ * manual-tests/autocorrection: Added.
+ * manual-tests/autocorrection/autocorrection-cancelled-by-typing-1.html: Added.
+
+2010-10-14 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang and Darin Adler.
+
+ execCommand FormatBlock creates lots of blockquotes
+ https://bugs.webkit.org/show_bug.cgi?id=19795
+
+ The bug was caused by WebKit's not reusing the block node added by previous iteration
+ and its inserting block node at wrong places.
+
+ Fixed the bug by rewriting FormatBlockCommand::formatRange. New code resembles that of
+ IndentOutdentCommand::indentIntoBlockquote. The difference between two is that formatRange
+ avoids the existing block elements when replacing blocks and it also adds a placeholder
+ when removing the existing block caused paragraphs to collapse.
+
+ Also fixed a bug in moveParagraphWithClones where erroneous br is added to the start of
+ the block element to which the paragraph is moved if the block element is the start of a paragraph
+ and not the end of a paragraph.
+
+ Tests: editing/execCommand/format-block-multiple-paragraphs.html
+ editing/execCommand/format-block-table.html
+
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::moveParagraphWithClones): No longer adds erroneous br.
+ * editing/EditorCommand.cpp:
+ (WebCore::executeFormatBlock):
+ * editing/FormatBlockCommand.cpp:
+ (WebCore::FormatBlockCommand::formatRange): Rewritten; see above.
+ (WebCore::FormatBlockCommand::isElementToApplyInFormatBlockCommand): Renamed from validBlockElement
+ and moved from htmlediting.cpp.
+ (WebCore::enclosingBlockToSplitTreeTo): Added.
+ * editing/FormatBlockCommand.h:
+ * editing/VisiblePosition.cpp:
+ (WebCore::enclosingBlockFlowElement): Changed the return type to Element*
+ * editing/VisiblePosition.h:
+
+2010-10-14 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Crash in HTMLTextFormControlElement::selection()
+ https://bugs.webkit.org/show_bug.cgi?id=47522
+
+ Patch by Ryosuke Niwa <rniwa@webkit.org>
+
+ The bug was caused by our triggering layout inside RenderTextControl::selection.
+ Fixed it by changing the return type of RenderTextControl::selection to PassRefPtr<Range> from VisibleSelection.
+
+ Test: fast/forms/render-text-crash.html
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::selectionForCommand): Calls HTMLTextFormControlElement::selection.
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::selection): Calls RenderTextControl::selection.
+ * html/HTMLFormControlElement.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::selection): Changed the return type.
+ * rendering/RenderTextControl.h:
+
+2010-10-14 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ SelectElement should check if its renderer exists after calling Element::focus()
+ https://bugs.webkit.org/show_bug.cgi?id=47696
+
+ Adds null checks for element->renderer() after calling element->focus(), since focus()
+ can dispatch an event and run arbitrary javascript that may cause the select element
+ to lose its renderer.
+
+ Test: fast/forms/select-listbox-focus-displaynone.html
+
+ * dom/SelectElement.cpp:
+ (WebCore::SelectElement::menuListDefaultEventHandler):
+ (WebCore::SelectElement::listBoxDefaultEventHandler):
+
+2010-10-14 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ This patch lays the groundwork for
+ https://bugs.webkit.org/show_bug.cgi?id=47514 CSS transforms should
+ affect scrolling
+ by adding topmostPosition().
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::topmostPosition):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::topmostPosition):
+ * rendering/RenderBox.h:
+ * rendering/RenderMedia.cpp:
+ (WebCore::RenderMedia::topmostPosition):
+ * rendering/RenderMedia.h:
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::topmostPosition):
+ * rendering/RenderTableSection.h:
+
+2010-10-14 Sergio Villar Senin <svillar@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] fix compilation warnings in imported libsoup code
+ https://bugs.webkit.org/show_bug.cgi?id=47674
+
+ Fixed some warnings caused by comparisons between signed and
+ unsigned integer expressions
+
+ * platform/network/soup/cache/soup-directory-input-stream.c:
+ (webkit_soup_directory_input_stream_read):
+ * platform/network/soup/cache/soup-request-data.c:
+ (webkit_soup_request_data_send):
+ * platform/network/soup/cache/soup-request-file.c:
+ (webkit_soup_request_file_ensure_file):
+ * platform/network/soup/cache/webkit/soup-cache.c:
+ (webkit_soup_cache_entry_is_fresh_enough):
+ (webkit_soup_cache_has_response):
+
+2010-10-14 Andreas Kling <kling@webkit.org>
+
+ Unreviewed buildfix, RetainPtr is a mac thing..
+
+ * platform/network/soup/ProxyServerSoup.cpp:
+
+2010-10-08 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Form controls do not respect GTK+ font size
+ https://bugs.webkit.org/show_bug.cgi?id=47134
+
+ Have form controls use the font specified in GtkSettings. This font is
+ the default control font in GTK+ applications and Firefox. We need to
+ pass the string through Pango to get a valid font name and size.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::getScreenDPI): A helper function which returns
+ the DPI of the default screen or 96 as a fallback.
+ (WebCore::RenderThemeGtk::systemFont): Calculate the system font
+ by looking at the GtkSettings value and pushing it through Pango
+ to get the font family and font size.
+
+2010-10-14 Andreas Kling <kling@webkit.org>
+
+ Soup buildfix for r69808: add ProxyServer stub.
+
+ * GNUmakefile.am:
+ * platform/network/soup/ProxyServerSoup.cpp: Added.
+ (WebCore::proxyServersForURL):
+
+2010-10-14 Andreas Kling <kling@webkit.org>
+
+ Fix GTK+ build after r69808.
+
+ * GNUmakefile.am:
+ * platform/network/curl/ProxyServerCurl.cpp:
+ (WebCore::proxyServersForURL):
+
+2010-10-14 Simon Fraser <simon.fraser@apple.com>
+
+ Another build fix. Export FrameLoader::networkingContext()
+
+ * WebCore.exp.in:
+
+2010-10-14 Simon Fraser <simon.fraser@apple.com>
+
+ Fix the build after r69808.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/network/cf/ProxyServerCFNet.cpp:
+ (WebCore::proxyServersForURL):
+
+2010-10-14 Gavin Barraclough <barraclough@apple.com>
+
+ Windows build fix following r69806.
+
+ * platform/win/ClipboardUtilitiesWin.cpp:
+ (WebCore::markupToCFHTML):
+
+2010-10-14 Dawit Alemayehu <adawit@kde.org>
+
+ Reviewed by Andreas Kling
+
+ Implemented NPN_GetValueForURL and NPN_SetValueForURL and NPN_GetAuthenticationInfo.
+ https://bugs.webkit.org/show_bug.cgi?id=34539
+
+ These missing NPN functions cause Java applets to crash in ports such
+ as QtWebkit that rely on webkit for Java applet support.
+
+ * plugins/PluginDebug.cpp:
+ (WebCore::prettyNameForNPNURLVariable):
+ * plugins/PluginDebug.h:
+ * plugins/PluginPackage.cpp:
+ (WebCore::PluginPackage::initializeBrowserFuncs):
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::getValueForURL):
+ (WebCore::PluginView::setValueForURL):
+ (WebCore::PluginView::getAuthenticationInfo):
+ * plugins/PluginView.h:
+ * plugins/npapi.cpp:
+ (NPN_GetValueForURL):
+ (NPN_SetValueForURL):
+ (NPN_GetAuthenticationInfo):
+ * platform/network/ProxyServer.h:
+ * platform/network/cf/ProxyServerCFNet.cpp:
+ (WebCore::proxyServersForURL):
+ * platform/network/qt/ProxyServerQt.cpp:
+ (WebCore::proxyServersForURL):
+
+2010-10-14 Gavin Barraclough <barraclough@apple.com>
+
+ Windows build fix following r69806.
+
+ * platform/win/ClipboardUtilitiesWin.cpp:
+ (WebCore::markupToCFHTML):
+
+2010-10-14 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Cache link status at linkProgram and use it in useProgram instead of querying GPU
+ https://bugs.webkit.org/show_bug.cgi?id=47685
+
+ * html/canvas/WebGLProgram.cpp: Always cache link status at linkStatus and use it upon query.
+ (WebCore::WebGLProgram::WebGLProgram):
+ * html/canvas/WebGLProgram.h: Ditto.
+ (WebCore::WebGLProgram::getLinkStatus):
+ (WebCore::WebGLProgram::setLinkStatus):
+ * html/canvas/WebGLRenderingContext.cpp: Ditto.
+ (WebCore::WebGLRenderingContext::getProgramParameter):
+ (WebCore::WebGLRenderingContext::linkProgram):
+ (WebCore::WebGLRenderingContext::useProgram):
+
+2010-10-14 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Style fix for r69735
+ https://bugs.webkit.org/show_bug.cgi?id=47684
+
+ No logic change. Existing tests apply.
+
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::alignBoxesInBlockDirection):
+
+2010-10-14 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: encapsulate ScriptState into ConsoleMessage instead of passing it as additional parameter
+ https://bugs.webkit.org/show_bug.cgi?id=47675
+
+ No new tests. This refactoring is covered by existing inspector tests.
+
+ * bindings/js/JSConsoleCustom.cpp:
+ * bindings/js/ScriptCallFrame.cpp:
+ * bindings/js/ScriptCallFrame.h:
+ (WebCore::ScriptCallFrame::functionName):
+ (WebCore::ScriptCallFrame::sourceURL):
+ (WebCore::ScriptCallFrame::lineNumber):
+ (WebCore::ScriptCallFrame::argumentCount):
+ * inspector/ConsoleMessage.cpp:
+ (WebCore::ConsoleMessage::isEqual):
+ * inspector/ConsoleMessage.h:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::addMessageToConsole):
+ (WebCore::InspectorController::addConsoleMessage):
+ (WebCore::InspectorController::startGroup):
+ (WebCore::InspectorController::endGroup):
+ * inspector/InspectorController.h:
+
+2010-10-14 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Gavin Barraclough.
+
+ Replace lots of String::format() usages by StringConcatenate
+ https://bugs.webkit.org/show_bug.cgi?id=47664
+
+ * ForwardingHeaders/wtf/text/StringConcatenate.h: Added.
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::reportUnsafeAccessTo):
+ * dom/ExceptionBase.cpp:
+ (WebCore::ExceptionBase::ExceptionBase):
+ * dom/XMLDocumentParser.cpp:
+ (WebCore::XMLDocumentParser::handleError):
+ * history/PageCache.cpp:
+ (WebCore::logCanCacheFrameDecision):
+ * html/FTPDirectoryDocument.cpp:
+ (WebCore::processFileDateString):
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::didReceiveResponse):
+ (WebCore::InspectorController::count):
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::createBreakpointId):
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::formatBreakpointId):
+ * inspector/InspectorProfilerAgent.cpp:
+ (WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
+ (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
+ (WebCore::InspectorProfilerAgent::getCurrentUserInitiatedProfileName):
+ (WebCore::InspectorProfilerAgent::takeHeapSnapshot):
+ * loader/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::printAccessDeniedMessage):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::checkIfDisplayInsecureContent):
+ (WebCore::FrameLoader::checkIfRunInsecureContent):
+ (WebCore::FrameLoader::shouldAllowNavigation):
+ * loader/archive/cf/LegacyWebArchive.cpp:
+ (WebCore::LegacyWebArchive::createFromSelection):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::postMessageTimerFired):
+ * page/PrintContext.cpp:
+ (WebCore::PrintContext::pageProperty):
+ (WebCore::PrintContext::pageSizeAndMarginsInPixels):
+ * page/XSSAuditor.cpp:
+ (WebCore::XSSAuditor::canLoadObject):
+ * platform/efl/PlatformKeyboardEventEfl.cpp:
+ (WebCore::createKeyMap):
+ (WebCore::createWindowsKeyMap):
+ * platform/graphics/GraphicsLayer.cpp:
+ (WebCore::GraphicsLayer::animationNameForTransition):
+ * platform/graphics/brew/ImageBrew.cpp:
+ (WebCore::Image::loadPlatformResource):
+ * platform/graphics/cg/ImageBufferCG.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/efl/ImageEfl.cpp:
+ (WebCore::loadResourceSharedBuffer):
+ * platform/graphics/gtk/ImageBufferGtk.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/haiku/ImageBufferHaiku.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/mac/GraphicsLayerCA.mm:
+ (WebCore::animationIdentifier):
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/win/WebLayer.cpp:
+ (WebCore::WebLayer::drawInContext):
+ * platform/network/CredentialStorage.cpp:
+ (WebCore::originStringFromURL):
+ * platform/sql/SQLiteDatabase.cpp:
+ (WebCore::SQLiteDatabase::setSynchronous):
+ * platform/text/wince/TextCodecWinCE.cpp:
+ (WebCore::LanguageManager::LanguageManager):
+ * platform/win/ClipboardUtilitiesWin.cpp:
+ (WebCore::markupToCFHTML):
+ * platform/win/Language.cpp:
+ (WebCore::defaultLanguage):
+ * plugins/PluginStream.cpp:
+ (WebCore::PluginStream::startStream):
+ * svg/SVGUseElement.cpp:
+ (WebCore::dumpInstanceTree):
+ * websockets/WebSocket.cpp:
+ (WebCore::WebSocket::connect):
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::appendToBuffer):
+ * websockets/WebSocketHandshake.cpp:
+ (WebCore::WebSocketHandshake::readServerHandshake):
+
+2010-10-14 Xan Lopez <xlopez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Small cleanup in PluginViewGtk
+ https://bugs.webkit.org/show_bug.cgi?id=47588
+
+ Remove some dead code and use PlatformRefPtr for cairo surfaces.
+
+ No new tests, only refactoring.
+
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::paint):
+
+2010-10-14 Dawit Alemayehu <adawit@kde.org>
+
+ Reviewed by Andreas Kling.
+
+ Fix compile error when bulding webkit's Qt port using the "--v8" option.
+ https://bugs.webkit.org/show_bug.cgi?id=47455
+
+ * platform/qt/PlatformBridge.h:
+
+2010-10-01 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Holger Freyther.
+
+ [GTK] REGRESSION: FreeType backend does not respect XSettings font settings after r68558
+ https://bugs.webkit.org/show_bug.cgi?id=47033
+
+ Fix logic that merges XSettings defaults and FontConfig settings. If
+ FontConfig or XSettings specifies a subpixel order, we force subpixel
+ anti-aliasing on. If anti-aliasing is turned on explicitly, only
+ override the setting if it was previously off, otherwise we ignore
+ the user's preference for subpixel or gray antialiasing.
+
+ Test: platform/gtk/fonts/xsettings_antialias_settings.html
+
+ * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
+ (WebCore::setCairoFontOptionsFromFontConfigPattern): Fix merging of XSettings
+ and FontConfig anti-aliasing settings.
+ (WebCore::getDefaultFontOptions): Added this helper.
+ (WebCore::FontPlatformData::FontPlatformData): Use the getDefaultFontOptions helper.
+
+2010-10-14 Jian Li <jianli@chromium.org>
+
+ Reviewed by David Levin.
+
+ Support typed arrays in workers
+ https://bugs.webkit.org/show_bug.cgi?id=47616
+
+ To support typed arrays in workers, we need to expose constructors in
+ WorkerContext and add NoStaticTables attribute.
+
+ I also add File API feature guard to the constructors defined in
+ DOMWindow.
+
+ * bindings/js/JSDOMWindowCustom.cpp: Add File API feature guard to the
+ constructors defined in DOMWindow.
+ * html/canvas/ArrayBuffer.idl: Add NoStaticTables attribute.
+ * html/canvas/ArrayBufferView.idl: Add NoStaticTables attribute.
+ * html/canvas/Float32Array.idl: Add NoStaticTables attribute.
+ * html/canvas/Int16Array.idl: Add NoStaticTables attribute.
+ * html/canvas/Int32Array.idl: Add NoStaticTables attribute.
+ * html/canvas/Int8Array.idl: Add NoStaticTables attribute.
+ * html/canvas/Uint16Array.idl: Add NoStaticTables attribute.
+ * html/canvas/Uint32Array.idl: Add NoStaticTables attribute.
+ * html/canvas/Uint8Array.idl: Add NoStaticTables attribute.
+ * page/DOMWindow.idl: Add File API feature guard to the constructors
+ defined in DOMWindow.
+ * workers/WorkerContext.idl: Expose type array constructors.
+
+2010-10-14 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] Avoid creating empty transparency layers in ImageBuffer::clip()
+
+ We were creating empty layers for sub-1 height/width clips due to
+ using IntRect(FloatRect) instead of enclosingIntRect().
+ This lead to a bunch of QPainter warnings on the console since you
+ can't draw on an empty QPixmap.
+
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::ImageBuffer::clip):
+
+2010-10-14 Holger Hans Peter Freyther <holger@moiji-mobile.com>
+
+ Reviewed by Martin Robinson.
+
+ [cairo] Typo in determining fixed width fonts
+ https://bugs.webkit.org/show_bug.cgi?id=47470
+
+ It must be a single ampersand otherwise the
+ && FT_FACE_FLAG_FIXED_WIDTH will always be true.
+
+ * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
+ (WebCore::FontPlatformData::FontPlatformData):
+
+2010-10-14 Sergio Villar Senin <svillar@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Failing test LayoutTests/editing/undo/orphaned-selection-crash-bug32823-2.html
+ https://bugs.webkit.org/show_bug.cgi?id=47666
+
+ Do a less strict decoding of base64 data url's as it was done
+ before. The actual problem is most likely
+ https://bugs.webkit.org/show_bug.cgi?id=47661 tough.
+
+ * platform/network/soup/cache/soup-request-data.c:
+ (webkit_soup_request_data_send):
+
+2010-10-14 Renata Hodovan <reni@inf.u-szeged.hu>
+
+ Reviewed by Andreas Kling.
+
+ SVGFEConvolveMatrixElement doesn't support dynamic invalidation, when attributes change.
+ https://bugs.webkit.org/show_bug.cgi?id=47660
+
+ The dynamic changes are captured by the svgAttributeChange function, and invalidate the filter primitive if necessary.
+ The patch also implements the simple setOrder and setKernelUnitLength methods.
+
+ Tests: svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr.html
+ svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr.html
+ svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr.html
+ svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr.html
+ svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr.html
+ svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr.html
+ svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr.html
+ svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr.html
+ svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr.html
+ svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr.html
+
+ * svg/SVGFEConvolveMatrixElement.cpp:
+ (WebCore::SVGFEConvolveMatrixElement::setOrder):
+ (WebCore::SVGFEConvolveMatrixElement::setKernelUnitLength):
+ (WebCore::SVGFEConvolveMatrixElement::svgAttributeChanged):
+ * svg/SVGFEConvolveMatrixElement.h:
+
+2010-10-14 No'am Rosenthal <noam.rosenthal@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Text breaking is slow: enable ICU as an opt-in
+ https://bugs.webkit.org/show_bug.cgi?id=40332
+
+ Added a config flag that enables ICU as an opt-in instead of the Qt specific code.
+
+ No new tests, this should be covered by existing tests.
+
+ * WebCore.pro:
+ * platform/text/qt/TextBreakIteratorQt.cpp:
+ (WebCore::currentTextBreakLocaleID):
+
+2010-10-14 No'am Rosenthal <noam.rosenthal@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Texmap] [Qt] Texture mapper initial implementation
+ https://bugs.webkit.org/show_bug.cgi?id=47070
+
+ This patch enables compilation of TextureMapper with Media. It has an initial non-working implementation of a video layer, to be integrated
+ once other parts of TextureMapper are fully working.
+
+ No new tests: this is new implementation that's not enabled yet.
+
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ (WebCore::TextureMapperVideoLayerQt::TextureMapperVideoLayerQt):
+ (WebCore::TextureMapperVideoLayerQt::setPlatformLayerClient):
+ (WebCore::TextureMapperVideoLayerQt::paint):
+ (WebCore::TextureMapperVideoLayerQt::size):
+ (WebCore::MediaPlayerPrivateQt::acceleratedRenderingStateChanged):
+ (WebCore::MediaPlayerPrivateQt::platformLayer):
+ * platform/graphics/qt/MediaPlayerPrivateQt.h:
+ (WebCore::MediaPlayerPrivateQt::supportsAcceleratedRendering):
+ (WebCore::MediaPlayerPrivateQt::acceleratedRenderingStateChanged):
+ (WebCore::MediaPlayerPrivateQt::platformLayer):
+
+2010-10-14 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ Fixed crashes in the GTK 64bits bot, we have to use NULL instead
+ of 0 when calling these glib APIs, 0 is compiled as a char and in
+ 64bits systems it is not correct.
+
+ * platform/network/soup/cache/soup-requester.c:
+ (webkit_soup_requester_new):
+ (webkit_soup_requester_request_uri):
+
+2010-10-14 Daniel Bates <dbates@rim.com>
+
+ Attempt to fix the Qt and GTK builds based on the build bot results from <http://webkit.sed.hu>.
+
+ * rendering/RenderInline.cpp: Include header "RenderTheme.h"
+
+2010-10-14 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Darin Adler.
+
+ Only draw focus ring in RenderInline and RenderImage if the theme
+ is not able to draw a focus ring
+ https://bugs.webkit.org/show_bug.cgi?id=47632
+
+ Fixes an issue where RenderInline::paintOutline() and RenderImage::paintFocusRings()
+ would draw a focus ring regardless of whether the port-specific theme is able to
+ draw a focus ring. Instead, these methods should only draw a focus ring if the
+ theme is unable to draw a focus ring.
+
+ Also, extracted common focus ring drawing code from RenderObject::paintOutline()
+ and RenderInline::paintOutline() into RenderObject::paintFocusRing().
+
+ Tests: fast/forms/textfield-focus-ring.html
+ fast/images/imagemap-focus-ring.html
+ fast/inline/inline-focus-ring.html
+
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::paintFocusRings): Modified to only draw a focus ring if the
+ the theme does not draw one.
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::paintOutline): Modified to call RenderObject::paintFocusRing().
+ * rendering/RenderObject.cpp:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::paintFocusRing): Added.
+ (WebCore::RenderObject::paintOutline): Modified to call RenderObject::paintFocusRing().
+ * rendering/RenderObject.h:
+
+2010-10-14 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Move load and dom content event timers into InspectorController.
+ https://bugs.webkit.org/show_bug.cgi?id=47668
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::populateScriptObjects):
+ (WebCore::InspectorController::mainResourceFiredDOMContentEvent):
+ (WebCore::InspectorController::mainResourceFiredLoadEvent):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::InspectorResource):
+ (WebCore::InspectorResource::updateScriptObject):
+ * inspector/InspectorResource.h:
+ * inspector/front-end/inspector.js:
+ (WebInspector.updateResource):
+ (WebInspector.domContentEventFired):
+ (WebInspector.loadEventFired):
+
+2010-10-14 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed. Re-landing r69757.
+
+2010-10-14 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: implement pausing on window events and timeouts
+ https://bugs.webkit.org/show_bug.cgi?id=47542
+
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didInstallTimerImpl):
+ (WebCore::InspectorInstrumentation::didRemoveTimerImpl):
+ (WebCore::InspectorInstrumentation::willDispatchEventImpl):
+ (WebCore::InspectorInstrumentation::didDispatchEventImpl):
+ (WebCore::InspectorInstrumentation::willDispatchEventOnWindowImpl):
+ (WebCore::InspectorInstrumentation::didDispatchEventOnWindowImpl):
+ (WebCore::InspectorInstrumentation::willFireTimerImpl):
+ (WebCore::InspectorInstrumentation::didFireTimerImpl):
+ (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
+ (WebCore::InspectorInstrumentation::cancelPauseOnNativeEvent):
+ * inspector/InspectorInstrumentation.h:
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.EventListenerBreakpoint.prototype.populateLabelElement):
+ (WebInspector.EventListenerBreakpoint.prototype.populateStatusMessageElement):
+ (WebInspector.EventListenerBreakpoint.prototype._condition):
+ (WebInspector.EventListenerBreakpoint.prototype._uiEventName):
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate):
+
+2010-10-14 Csaba Osztrogonác <ossy@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ Canvas: "currentColor" should inherit the canvas element's color
+ https://bugs.webkit.org/show_bug.cgi?id=40273
+
+ Warning fix after r69755. Missing default cases added.
+
+ * html/canvas/CanvasStyle.cpp:
+ (WebCore::parseColorOrCurrentColor):
+ (WebCore::CanvasStyle::createFromString):
+ (WebCore::CanvasStyle::createFromStringWithOverrideAlpha):
+
+2010-10-14 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed. Rolling out r69757.
+
+2010-10-08 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: extract content-related methods into InspectorResourceAgent.
+ https://bugs.webkit.org/show_bug.cgi?id=47415
+
+ This is needed for resource-tracking-less operation of resources panel.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * inspector/InspectorCSSAgent.cpp:
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::type):
+ (WebCore::InspectorResource::sourceString):
+ (WebCore::InspectorResource::sourceBytes):
+ * inspector/InspectorResource.h:
+ * inspector/InspectorResourceAgent.cpp: Added.
+ (WebCore::InspectorResourceAgent::resourceContent):
+ (WebCore::InspectorResourceAgent::resourceContentBase64):
+ (WebCore::InspectorResourceAgent::resourceData):
+ (WebCore::InspectorResourceAgent::cachedResourceType):
+ (WebCore::InspectorResourceAgent::cachedResource):
+ * inspector/InspectorResourceAgent.h: Added.
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyleSheet::resourceStyleSheetText):
+ * inspector/InspectorUtilities.cpp: Removed.
+ * inspector/InspectorUtilities.h: Removed.
+
+2010-10-14 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Canvas: "currentColor" should inherit the canvas element's color
+ https://bugs.webkit.org/show_bug.cgi?id=40273
+
+ Add support for "currentColor" in CanvasRenderingContext2D APIs.
+ If the canvas is in-document, "currentColor" is replaced by canvas.style.color,
+ otherwise we use fully opaque black.
+
+ For gradient addColorStop(), "currentColor" always means fully opaque black.
+
+ Spec link:
+ http://www.whatwg.org/specs/web-apps/current-work/#2dcontext
+
+ Test: fast/canvas/canvas-currentColor.html
+
+ * html/canvas/CanvasGradient.cpp:
+ (WebCore::CanvasGradient::addColorStop):
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setStrokeStyle):
+ (WebCore::CanvasRenderingContext2D::setFillStyle):
+ (WebCore::CanvasRenderingContext2D::setShadowColor):
+ (WebCore::CanvasRenderingContext2D::setShadow):
+ * html/canvas/CanvasStyle.cpp:
+ (WebCore::parseColor):
+ (WebCore::currentColor):
+ (WebCore::parseColorOrCurrentColor):
+ (WebCore::CanvasStyle::CanvasStyle):
+ (WebCore::CanvasStyle::createFromString):
+ (WebCore::CanvasStyle::createFromStringWithOverrideAlpha):
+ (WebCore::CanvasStyle::isEquivalentColor):
+ (WebCore::CanvasStyle::applyStrokeColor):
+ (WebCore::CanvasStyle::applyFillColor):
+ * html/canvas/CanvasStyle.h:
+ (WebCore::CanvasStyle::isCurrentColor):
+ (WebCore::CanvasStyle::hasOverrideAlpha):
+ (WebCore::CanvasStyle::overrideAlpha):
+
+2010-10-08 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [REGRESSION] Scripts panel: the bubble shows wrong values
+ https://bugs.webkit.org/show_bug.cgi?id=47358
+
+ Test: inspector/debugger-eval-on-call-frame.html
+
+ * inspector/front-end/InjectedScript.js:
+ (injectedScriptConstructor.): don't embrace expression evaluated in the local scope
+ of a call frame into with(window) to avoid shadowing local variables by global ones.
+
+2010-10-13 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Implement getParameter from the URL API
+ https://bugs.webkit.org/show_bug.cgi?id=46610
+
+ Another API from
+ https://docs.google.com/document/edit?id=1r_VTFKApVOaNIkocrg0z-t7lZgzisTuGTXkdzAk4gLU&hl=en#
+ getParameter lets a web site easily read the value of a URL parameter.
+ This API is for the simple case of a non-repeated parameter name.
+ getParameterAll will handle repeated parameter names in a future patch.
+
+ Tests: fast/dom/anchor-getParameter.html
+ http/tests/misc/location-getParameter.html
+
+ * html/HTMLAnchorElement.cpp:
+ (WebCore::HTMLAnchorElement::getParameter):
+ * html/HTMLAnchorElement.h:
+ * html/HTMLAnchorElement.idl:
+ * page/Location.cpp:
+ (WebCore::Location::getParameter):
+ * page/Location.h:
+ * page/Location.idl:
+ * platform/KURL.cpp:
+ (WebCore::KURL::copyParsedQueryTo):
+ * platform/KURLGoogle.cpp:
+ (WebCore::KURL::copyParsedQueryTo):
+ * platform/KURL.h:
+
+2010-10-14 Alejandro G. Castro <alex@igalia.com>
+
+ Unreviewed. GTK build fix.
+
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::sendRequestCallback):
+
+2010-10-14 Adrienne Walker <enne@google.com>
+
+ Reviewed by James Robinson.
+
+ Add a short-term solution for large layers. Layers that are too
+ large to be contained in a single texture just upload the portion of
+ the layer that is within the content rect. A longer-term solution
+ is still tiling with proper memory management. Layers that have full
+ 3D transforms (more than just translations) are still not drawn.
+ https://bugs.webkit.org/show_bug.cgi?id=47016
+
+ Test: compositing/tiling
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::ContentLayerChromium):
+ (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
+ (WebCore::ContentLayerChromium::calculateClippedUpdateRect):
+ (WebCore::ContentLayerChromium::updateContents):
+ (WebCore::ContentLayerChromium::updateTextureRect):
+ (WebCore::ContentLayerChromium::draw):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContents):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawLayers):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::rootLayerContentRect):
+
+2010-10-14 Chris Rogers <crogers@google.com>
+
+ Reviewed by Chris Fleizach.
+
+ Add DelayDSPKernel files
+ https://bugs.webkit.org/show_bug.cgi?id=47518
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/DelayDSPKernel.cpp: Added.
+ (WebCore::DelayDSPKernel::DelayDSPKernel):
+ (WebCore::DelayDSPKernel::process):
+ (WebCore::DelayDSPKernel::reset):
+ * webaudio/DelayDSPKernel.h: Added.
+ (WebCore::DelayDSPKernel::maxDelayTime):
+ (WebCore::DelayDSPKernel::setDelayFrames):
+ (WebCore::DelayDSPKernel::delayProcessor):
+
+2010-10-13 Sergio Villar Senin <svillar@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ WebKitGtk+ to use the new API from the imported SoupURILoader code
+
+ [GTK] Add HTTP caching support
+ https://bugs.webkit.org/show_bug.cgi?id=44261
+
+ ResourceHandleSoup now does everything via SoupURILoader. This means
+ that all URLs are handled via the same code path, where WebCore simply
+ asks libsoup for a WebKitSoupRequest and the request returns an input
+ stream. Many of ResourceHandleSoup's data members are now PlatformRefPtr
+ as well, to simplify reference counting
+
+ * platform/network/ResourceHandleInternal.h:
+ (WebCore::ResourceHandleInternal::ResourceHandleInternal):
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
+ (WebCore::ResourceHandle::~ResourceHandle):
+ (WebCore::restartedCallback):
+ (WebCore::gotChunkCallback):
+ (WebCore::parseDataUrl):
+ (WebCore::cleanupSoupRequestOperation):
+ (WebCore::sendRequestCallback):
+ (WebCore::startHttp):
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::cancel):
+ (WebCore::closeCallback):
+ (WebCore::readCallback):
+ (WebCore::startGio):
+ * platform/network/soup/ResourceRequest.h:
+ * platform/network/soup/ResourceRequestSoup.cpp:
+ (WebCore::ResourceRequest::updateSoupMessage):
+
+2010-10-12 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Prevent block logical height of a root inline box from overflowing by clamping it
+ at INT_MAX. Otherwise, we will not be able to properly dirty the set of lines during
+ removal a floating object.
+ https://bugs.webkit.org/show_bug.cgi?id=45611
+
+ Test: fast/overflow/overflow-block-logical-height-crash.html
+
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::alignBoxesInBlockDirection):
+
+2010-10-13 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Throw INDEX_SIZE_ERR exception if createRadialGradient is called with a negative radius
+ Canvas: radialGradient with negative radius should throw exception
+ https://bugs.webkit.org/show_bug.cgi?id=37176
+
+ This matches the canvas 2d specification, Opera, IE9 beta and our behavior for arc()
+ and arcTo(). Also fixes some PassRefPtr/RefPtr errors in this file.
+
+ Test: canvas/philip/tests/2d.gradient.radial.negative.html
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::createLinearGradient):
+ (WebCore::CanvasRenderingContext2D::createRadialGradient):
+ (WebCore::createEmptyImageData):
+ (WebCore::CanvasRenderingContext2D::measureText):
+
+2010-10-13 Fridrich Strba <fridrich.strba@bluewin.ch>
+
+ Reviewed by Darin Adler.
+
+ Add WebCore/plugins/win directory to CFLAGS
+ https://bugs.webkit.org/show_bug.cgi?id=45547
+
+ * GNUmakefile.am:
+
+2010-10-13 Martin Robinson <mrobinson@igalia.com>
+
+ Build fix for older versions of libsoup.
+
+ * platform/network/soup/cache/soup-request-file.c:
+ (webkit_soup_request_file_ensure_file): Access the path member of the SoupURI directly.
+
+2010-10-13 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Add TextBoundaries and TextBreakIterator
+ https://bugs.webkit.org/show_bug.cgi?id=46105
+
+ Copy the implementation of WinCE port.
+
+ * platform/text/brew/TextBoundariesBrew.cpp: Added.
+ (WebCore::findNextWordFromIndex):
+ (WebCore::findWordBoundary):
+ * platform/text/brew/TextBreakIteratorBrew.cpp: Added.
+ (WebCore::isCharStop):
+ (WebCore::isLineStop):
+ (WebCore::isSentenceStop):
+ (WebCore::TextBreakIterator::reset):
+ (WebCore::TextBreakIterator::following):
+ (WebCore::TextBreakIterator::preceding):
+ (WebCore::WordBreakIterator::first):
+ (WebCore::WordBreakIterator::next):
+ (WebCore::WordBreakIterator::previous):
+ (WebCore::CharBreakIterator::first):
+ (WebCore::CharBreakIterator::next):
+ (WebCore::CharBreakIterator::previous):
+ (WebCore::LineBreakIterator::first):
+ (WebCore::LineBreakIterator::next):
+ (WebCore::LineBreakIterator::previous):
+ (WebCore::SentenceBreakIterator::first):
+ (WebCore::SentenceBreakIterator::next):
+ (WebCore::SentenceBreakIterator::previous):
+ (WebCore::wordBreakIterator):
+ (WebCore::characterBreakIterator):
+ (WebCore::lineBreakIterator):
+ (WebCore::sentenceBreakIterator):
+ (WebCore::textBreakFirst):
+ (WebCore::textBreakNext):
+ (WebCore::textBreakPreceding):
+ (WebCore::textBreakFollowing):
+ (WebCore::textBreakCurrent):
+ (WebCore::isTextBreak):
+ (WebCore::cursorMovementIterator):
+
+2010-10-13 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ IndexedDB should fire some errors synchronously
+ https://bugs.webkit.org/show_bug.cgi?id=47530
+
+ Add dumb plumbing to pass around exception codes.
+ Utilize that plumbing in the backend to fire some
+ errors synchronously.
+ Verify that create/remove* functions are only called
+ in setVersionTransactions (and raise when not).
+ Remove plumbing for obsolete IDBDatabase.objectStore
+ Remove obsolete mode param.
+
+ * storage/IDBCursor.cpp:
+ (WebCore::IDBCursor::update):
+ (WebCore::IDBCursor::continueFunction):
+ (WebCore::IDBCursor::remove):
+ * storage/IDBCursor.h:
+ (WebCore::IDBCursor::continueFunction):
+ * storage/IDBCursor.idl:
+ * storage/IDBCursorBackendImpl.cpp:
+ (WebCore::IDBCursorBackendImpl::update):
+ (WebCore::IDBCursorBackendImpl::continueFunction):
+ (WebCore::IDBCursorBackendImpl::remove):
+ * storage/IDBCursorBackendImpl.h:
+ * storage/IDBCursorBackendInterface.h:
+ * storage/IDBDatabase.cpp:
+ (WebCore::IDBDatabase::IDBDatabase):
+ (WebCore::IDBDatabase::createObjectStore):
+ (WebCore::IDBDatabase::removeObjectStore):
+ (WebCore::IDBDatabase::setVersion):
+ (WebCore::IDBDatabase::transaction):
+ * storage/IDBDatabase.h:
+ (WebCore::IDBDatabase::createObjectStore):
+ (WebCore::IDBDatabase::transaction):
+ * storage/IDBDatabase.idl:
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::createObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::objectStore):
+ (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::setVersion):
+ (WebCore::IDBDatabaseBackendImpl::transaction):
+ * storage/IDBDatabaseBackendImpl.h:
+ * storage/IDBDatabaseBackendInterface.h:
+ * storage/IDBFactory.cpp:
+ (WebCore::IDBFactory::open):
+ * storage/IDBFactory.h:
+ (WebCore::IDBFactory::open):
+ * storage/IDBFactory.idl:
+ * storage/IDBIndex.cpp:
+ (WebCore::IDBIndex::openCursor):
+ (WebCore::IDBIndex::openKeyCursor):
+ (WebCore::IDBIndex::get):
+ (WebCore::IDBIndex::getKey):
+ * storage/IDBIndex.h:
+ (WebCore::IDBIndex::openCursor):
+ (WebCore::IDBIndex::openKeyCursor):
+ * storage/IDBIndex.idl:
+ * storage/IDBIndexBackendImpl.cpp:
+ (WebCore::IDBIndexBackendImpl::openCursor):
+ (WebCore::IDBIndexBackendImpl::openKeyCursor):
+ (WebCore::IDBIndexBackendImpl::get):
+ (WebCore::IDBIndexBackendImpl::getKey):
+ * storage/IDBIndexBackendImpl.h:
+ * storage/IDBIndexBackendInterface.h:
+ * storage/IDBObjectStore.cpp:
+ (WebCore::IDBObjectStore::get):
+ (WebCore::IDBObjectStore::add):
+ (WebCore::IDBObjectStore::put):
+ (WebCore::IDBObjectStore::remove):
+ (WebCore::IDBObjectStore::createIndex):
+ (WebCore::IDBObjectStore::index):
+ (WebCore::IDBObjectStore::removeIndex):
+ (WebCore::IDBObjectStore::openCursor):
+ * storage/IDBObjectStore.h:
+ (WebCore::IDBObjectStore::add):
+ (WebCore::IDBObjectStore::put):
+ (WebCore::IDBObjectStore::createIndex):
+ (WebCore::IDBObjectStore::openCursor):
+ * storage/IDBObjectStore.idl:
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::get):
+ (WebCore::IDBObjectStoreBackendImpl::put):
+ (WebCore::IDBObjectStoreBackendImpl::remove):
+ (WebCore::IDBObjectStoreBackendImpl::createIndex):
+ (WebCore::IDBObjectStoreBackendImpl::index):
+ (WebCore::IDBObjectStoreBackendImpl::removeIndex):
+ (WebCore::IDBObjectStoreBackendImpl::openCursor):
+ * storage/IDBObjectStoreBackendImpl.h:
+ (WebCore::IDBObjectStoreBackendImpl::name):
+ (WebCore::IDBObjectStoreBackendImpl::keyPath):
+ (WebCore::IDBObjectStoreBackendImpl::autoIncrement):
+ * storage/IDBObjectStoreBackendInterface.h:
+ * storage/IDBTransaction.cpp:
+ (WebCore::IDBTransaction::objectStore):
+ * storage/IDBTransaction.h:
+ * storage/IDBTransactionBackendImpl.cpp:
+ (WebCore::IDBTransactionBackendImpl::objectStore):
+
+2010-10-13 Sergio Villar Senin <svillar@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Add HTTP caching support
+ https://bugs.webkit.org/show_bug.cgi?id=44261
+
+ This patch adds HTTP caching support to libsoup networking backend.
+ This code will eventually be part of libsoup, but has been temporarily
+ imported into the WebCore tree for testing purposes. All libsoup code
+ is located in WebCore/platform/network/soup/cache. The webkit prefix
+ was added to all the symbols to prevent problems when this lands in
+ libsoup. Some external API was also added under webkit/ directory and
+ will be used by library clients to enable HTTP caching.
+
+ There are two parts to this imported code, the first one is the code
+ under WebCore/platform/network/soup/cache/ that contains all the
+ SoupURILoader code that supports the development of the cache. The
+ second part is the HTTP cache implementation located in
+ WebCore/platform/network/soup/cache/webkit/.
+
+ * GNUmakefile.am:
+ * platform/network/soup/cache/soup-directory-input-stream.c: Added.
+ (webkit_soup_directory_input_stream_parse_info):
+ (webkit_soup_directory_input_stream_read_next_file):
+ (webkit_soup_directory_input_stream_read):
+ (webkit_soup_directory_input_stream_close):
+ (webkit_soup_directory_input_stream_class_init):
+ (webkit_soup_directory_input_stream_init):
+ (webkit_soup_directory_input_stream_new):
+ * platform/network/soup/cache/soup-directory-input-stream.h: Added.
+ * platform/network/soup/cache/soup-http-input-stream.c: Added.
+ (webkit_soup_http_input_stream_finalize):
+ (webkit_soup_http_input_stream_class_init):
+ (webkit_soup_http_input_stream_seekable_iface_init):
+ (webkit_soup_http_input_stream_init):
+ (webkit_soup_http_input_stream_queue_message):
+ (webkit_soup_http_input_stream_new):
+ (webkit_soup_http_input_stream_got_headers):
+ (webkit_soup_http_input_stream_got_chunk):
+ (webkit_soup_http_input_stream_finished):
+ (webkit_soup_http_input_stream_cancelled):
+ (webkit_soup_http_input_stream_prepare_for_io):
+ (webkit_soup_http_input_stream_done_io):
+ (set_error_if_http_failed):
+ (read_from_leftover):
+ (webkit_soup_http_input_stream_send_internal):
+ (send_sync_finished):
+ (webkit_soup_http_input_stream_send):
+ (webkit_soup_http_input_stream_read):
+ (webkit_soup_http_input_stream_close):
+ (wrapper_callback):
+ (send_async_thread):
+ (webkit_soup_http_input_stream_send_async_in_thread):
+ (send_async_finished):
+ (webkit_soup_http_input_stream_send_async_internal):
+ (webkit_soup_http_input_stream_send_async):
+ (webkit_soup_http_input_stream_send_finish):
+ (read_async_done):
+ (webkit_soup_http_input_stream_read_async):
+ (webkit_soup_http_input_stream_read_finish):
+ (webkit_soup_http_input_stream_close_async):
+ (webkit_soup_http_input_stream_close_finish):
+ (webkit_soup_http_input_stream_tell):
+ (webkit_soup_http_input_stream_can_seek):
+ (webkit_soup_http_input_stream_seek):
+ (webkit_soup_http_input_stream_can_truncate):
+ (webkit_soup_http_input_stream_truncate):
+ (webkit_soup_http_input_stream_get_message):
+ * platform/network/soup/cache/soup-http-input-stream.h: Added.
+ * platform/network/soup/cache/soup-request-data.c: Added.
+ (webkit_soup_request_data_init):
+ (webkit_soup_request_data_finalize):
+ (webkit_soup_request_data_check_uri):
+ (uri_decoded_copy):
+ (webkit_soup_request_data_send):
+ (webkit_soup_request_data_get_content_length):
+ (webkit_soup_request_data_get_content_type):
+ (webkit_soup_request_data_class_init):
+ * platform/network/soup/cache/soup-request-data.h: Added.
+ * platform/network/soup/cache/soup-request-file.c: Added.
+ (webkit_soup_request_file_get_file):
+ (webkit_soup_request_file_init):
+ (webkit_soup_request_file_finalize):
+ (webkit_soup_request_file_check_uri):
+ (webkit_soup_request_file_ftp_main_loop_quit):
+ (webkit_soup_request_file_ensure_file_ftp):
+ (webkit_soup_request_file_ensure_file):
+ (webkit_soup_request_file_send):
+ (webkit_soup_request_file_send_async_thread):
+ (webkit_soup_request_file_send_async):
+ (webkit_soup_request_file_send_finish):
+ (webkit_soup_request_file_get_content_length):
+ (webkit_soup_request_file_get_content_type):
+ (webkit_soup_request_file_class_init):
+ * platform/network/soup/cache/soup-request-file.h: Added.
+ * platform/network/soup/cache/soup-request-http.c: Added.
+ (webkit_soup_request_http_get_message):
+ (webkit_soup_request_http_init):
+ (webkit_soup_request_http_check_uri):
+ (webkit_soup_request_http_finalize):
+ (webkit_soup_request_http_send):
+ (sent_async):
+ (conditional_get_ready_cb):
+ (send_async_cb):
+ (webkit_soup_request_http_send_async):
+ (webkit_soup_request_http_send_finish):
+ (webkit_soup_request_http_get_content_length):
+ (webkit_soup_request_http_get_content_type):
+ (webkit_soup_request_http_class_init):
+ * platform/network/soup/cache/soup-request-http.h: Added.
+ * platform/network/soup/cache/soup-request.c: Added.
+ (webkit_soup_request_init):
+ (webkit_soup_request_finalize):
+ (webkit_soup_request_set_property):
+ (webkit_soup_request_get_property):
+ (webkit_soup_request_initable_init):
+ (webkit_soup_request_default_check_uri):
+ (webkit_soup_request_default_send_async):
+ (webkit_soup_request_default_send_finish):
+ (webkit_soup_request_send):
+ (webkit_soup_request_send_async):
+ (webkit_soup_request_send_finish):
+ (webkit_soup_request_class_init):
+ (webkit_soup_request_initable_interface_init):
+ (webkit_soup_request_get_uri):
+ (webkit_soup_request_get_session):
+ (webkit_soup_request_get_content_length):
+ (webkit_soup_request_get_content_type):
+ * platform/network/soup/cache/soup-request.h: Added.
+ * platform/network/soup/cache/soup-requester.c: Added.
+ (webkit_soup_requester_init):
+ (finalize):
+ (webkit_soup_requester_class_init):
+ (init_request_types):
+ (webkit_soup_requester_new):
+ (webkit_soup_requester_request):
+ (webkit_soup_requester_request_uri):
+ (webkit_soup_scheme_is_valid):
+ (webkit_soup_requester_add_protocol):
+ (webkit_soup_requester_remove_protocol):
+ (webkit_soup_error_quark):
+ * platform/network/soup/cache/soup-requester.h: Added.
+ * platform/network/soup/cache/webkit/soup-cache-private.h: Added.
+ * platform/network/soup/cache/webkit/soup-cache.c: Added.
+ (get_cacheability):
+ (webkit_soup_cache_entry_free):
+ (copy_headers):
+ (update_headers):
+ (webkit_soup_cache_entry_get_current_age):
+ (webkit_soup_cache_entry_is_fresh_enough):
+ (webkit_soup_message_get_cache_key):
+ (webkit_soup_cache_entry_set_freshness):
+ (webkit_soup_cache_entry_new):
+ (webkit_soup_cache_writing_fixture_free):
+ (close_ready_cb):
+ (write_ready_cb):
+ (msg_got_chunk_cb):
+ (msg_got_body_cb):
+ (webkit_soup_cache_entry_delete):
+ (lru_compare_func):
+ (cache_accepts_entries_of_size):
+ (make_room_for_new_entry):
+ (webkit_soup_cache_entry_insert_by_key):
+ (msg_restarted_cb):
+ (append_to_ready_cb):
+ (msg_got_headers_cb):
+ (webkit_soup_cache_send_response):
+ (request_started):
+ (attach):
+ (webkit_soup_cache_session_feature_init):
+ (webkit_soup_cache_init):
+ (webkit_soup_cache_finalize):
+ (webkit_soup_cache_set_property):
+ (webkit_soup_cache_get_property):
+ (webkit_soup_cache_constructed):
+ (webkit_soup_cache_type_get_type):
+ (webkit_soup_cache_class_init):
+ (webkit_soup_cache_new):
+ (webkit_soup_cache_has_response):
+ (webkit_soup_cache_get_cacheability):
+ (force_flush_timeout):
+ (webkit_soup_cache_flush):
+ (remove_cache_item):
+ (webkit_soup_cache_clear):
+ (webkit_soup_cache_generate_conditional_request):
+ (pack_entry):
+ (webkit_soup_cache_dump):
+ (webkit_soup_cache_load):
+ (webkit_soup_cache_set_max_size):
+ (webkit_soup_cache_get_max_size):
+ * platform/network/soup/cache/webkit/soup-cache.h: Added.
+
+2010-10-13 Gavin Barraclough <barraclough@apple.com>
+
+ Chromium build fix.
+
+ * bindings/v8/ScriptProfiler.cpp:
+
+2010-10-13 Chris Evans <cevans@google.com>
+
+ Reviewed by Jian Li.
+
+ Blob / BlobBuilder can be put into bad state with wild integers and strings, due to integer overflows
+ https://bugs.webkit.org/show_bug.cgi?id=47382
+
+ Fix integer overflow errors in Blob.slice and BlobBuilder.append.
+
+ Test: fast/files/blob-slice-overflow.html
+
+ * fileapi/Blob.cpp:
+ (WebCore::Blob::slice): handle integer overflow properly.
+ * fileapi/BlobBuilder.cpp:
+ (WebCore::BlobBuilder::append): use correct type for vector length.
+
+2010-10-13 Gavin Barraclough <barraclough@apple.com>
+
+ Build fix - remove some redundant references to ScriptString.
+
+ * WebCore.gypi:
+ * WebCore.pro:
+ * bindings/v8/ScriptProfiler.cpp:
+
+2010-10-13 Gavin Barraclough <barraclough@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Bug 47621 - Remove bindings/v8/ScriptString
+ This is now redundant.
+
+ * bindings/v8/ScriptCallFrame.h:
+ (WebCore::ScriptCallFrame::functionName):
+ * bindings/v8/ScriptFunctionCall.cpp:
+ * bindings/v8/ScriptFunctionCall.h:
+ * bindings/v8/ScriptString.h: Removed.
+ * bindings/v8/ScriptStringImpl.cpp: Removed.
+ * bindings/v8/ScriptStringImpl.h: Removed.
+
+2010-10-13 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Draw the find overlay holes
+ https://bugs.webkit.org/show_bug.cgi?id=47631
+
+ Export symbols needed by WebKit2.
+
+ * WebCore.exp.in:
+
+2010-10-13 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Implement onreadystatechange event handler for Documents
+ https://bugs.webkit.org/show_bug.cgi?id=26140
+
+ Test: fast/dom/Document/readystate.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::setReadyState): Fire readystatechangeevent.
+ (WebCore::Document::open): Clear event listeners.
+ * dom/Document.h: Add readystatechange event.
+ * dom/Document.idl: Ditto.
+
+2010-10-13 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ AX: accessibilityIsIgnored not respected on ARIA tables
+ https://bugs.webkit.org/show_bug.cgi?id=47564
+
+ For platforms that ignore column headers and header container objects (everything
+ except Mac) on accessibility tables, that choice needs to be respected in
+ ARIA tables as well.
+
+ GTK is the only open platform doing this, so I'll have to collect the result of this
+ test. It was copied from table-hierarchy.html, but changed to use ARIA tables.
+
+ Test: platform/gtk/accessibility/aria-table-hierarchy.html
+
+ * accessibility/AccessibilityARIAGrid.cpp:
+ (WebCore::AccessibilityARIAGrid::addChildren):
+
+2010-10-13 Victoria Kirst <vrk@google.com>
+
+ Reviewed by James Robinson.
+
+ No longer ASSERT for LayerRenderer in VideoLayerChromium destructor
+ https://bugs.webkit.org/show_bug.cgi?id=47432
+
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::cleanupResources):
+
+2010-10-13 Leandro Pereira <leandro@profusion.mobi>
+
+ [EFL] Unreviewed. Build fix.
+
+ * CMakeLists.txt: Add ContextShadow.cpp.
+ * CMakeListsEfl.txt: Add ContextShadowCairo.cpp.
+
+2010-10-13 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Holger Freyther.
+
+ [GTK] r69681 caused some tests to crash
+ https://bugs.webkit.org/show_bug.cgi?id=47622
+
+ Properly initialize m_layerContext on the ContextShadow so that in situations
+ where beginShadowLayer bails out early with a null return value, it is set
+ to null. This may happen when the first call to beginShadowLayer on a particular
+ ContextShadow uses a region which is entirely outside the clip region or which
+ is empty.
+
+ * platform/graphics/cairo/ContextShadow.cpp:
+ (WebCore::ContextShadow::ContextShadow): Properly initialize m_layerContext.
+
+2010-10-13 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ Don't set the fill/stroke colorspace before filling/stroking
+ https://bugs.webkit.org/show_bug.cgi?id=47619
+
+ Setting the colorspace has the side-effect of setting the color to black, which is
+ not what we want. When fill/stroke is called, a fill/stroke color should already have been set.
+
+ Pixel tests show no regressions from this change.
+
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::strokeRect):
+
+2010-10-13 Brent Fulgham <bfulgham@webkit.org>
+
+ Unreviewed WinCairo build fix.
+ New ContextShadow class not built for Windows builds.
+
+ * WebCore.vcproj/WebCore.vcproj: Add missing files for
+ building ContextShadow on WinCairo.
+ * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
+ Add missing include for ContextShadow definition.
+
+2010-10-13 Gavin Barraclough <barraclough@apple.com>
+
+ Chromium build fix pt1.
+
+ * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
+ (WebCore::V8XMLHttpRequest::responseTextAccessorGetter):
+
+2010-10-13 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Send over find indicator information to the UI process
+ https://bugs.webkit.org/show_bug.cgi?id=47612
+
+ Export symbols needed by WebKit2.
+
+ * WebCore.exp.in:
+
+2010-10-13 Gavin Barraclough <barraclough@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=43987
+ Switch XMLHttpRequest, FileReader, and FileReaderSync to use a Stringbuilder
+ to construct their internal result string. Remove ScriptString (this is now
+ redundant).
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::jsOwnedStringOrNull):
+ * bindings/js/JSDOMBinding.h:
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::responseText):
+ * bindings/js/ScriptCallFrame.cpp:
+ (WebCore::ScriptCallFrame::ScriptCallFrame):
+ * bindings/js/ScriptCallFrame.h:
+ (WebCore::ScriptCallFrame::functionName):
+ * bindings/js/ScriptCallStack.h:
+ * bindings/js/ScriptFunctionCall.cpp:
+ * bindings/js/ScriptFunctionCall.h:
+ * bindings/js/ScriptString.h: Removed.
+ * dom/ScriptExecutionContext.h:
+ * fileapi/FileReader.cpp:
+ (WebCore::FileReader::FileReader):
+ (WebCore::FileReader::abort):
+ (WebCore::FileReader::didReceiveData):
+ (WebCore::FileReader::result):
+ (WebCore::FileReader::convertToText):
+ (WebCore::FileReader::convertToDataURL):
+ * fileapi/FileReader.h:
+ * fileapi/FileReaderSync.cpp:
+ (WebCore::FileReaderSyncLoader::FileReaderSyncLoader):
+ (WebCore::FileReaderSyncLoader::didReceiveData):
+ (WebCore::FileReaderSync::readAsBinaryString):
+ (WebCore::FileReaderSync::readAsText):
+ (WebCore::FileReaderSync::readAsDataURL):
+ (WebCore::FileReaderSync::read):
+ (WebCore::FileReaderSync::convertToText):
+ * fileapi/FileReaderSync.h:
+ (WebCore::FileReaderSync::readAsText):
+ (WebCore::FileReaderSync::FileReaderSync):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
+ (WebCore::InspectorController::scriptImported):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::setOverrideContent):
+ * inspector/InspectorResource.h:
+ * loader/FrameLoader.cpp:
+ * loader/FrameLoader.h:
+ * loader/FrameLoaderClient.h:
+ * loader/ResourceLoadNotifier.h:
+ * workers/WorkerScriptLoader.h:
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::XMLHttpRequest):
+ (WebCore::XMLHttpRequest::responseText):
+ (WebCore::XMLHttpRequest::responseXML):
+ (WebCore::XMLHttpRequest::abort):
+ (WebCore::XMLHttpRequest::clearResponse):
+ (WebCore::XMLHttpRequest::dropProtection):
+ (WebCore::XMLHttpRequest::didFinishLoading):
+ (WebCore::XMLHttpRequest::didReceiveData):
+ * xml/XMLHttpRequest.h:
+
+2010-10-13 Gavin Barraclough <barraclough@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Bug 43987 - Downloading using XHR is much slower than before
+
+ * svg/SVGPathStringBuilder.cpp:
+ (WebCore::SVGPathStringBuilder::result):
+ StringBuilder::size() -> StringBuilder::length().
+
+2010-10-13 Yong Li <yoli@rim.com>
+
+ Reviewed by Oliver Hunt.
+
+ Fix potential misaligned memory access in CloneDeserializer::readLittleEndian and readString
+ that can result crash on ARM (<v6).
+ https://bugs.webkit.org/show_bug.cgi?id=47594
+
+ No new test added, because the crash can be produced by existing tests like:
+ LayoutTests/fast/events/message-channel-gc-4.html
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneDeserializer::readLittleEndian):
+ (WebCore::CloneDeserializer::readString):
+
+2010-10-06 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Dirk Schulze.
+
+ [Cairo] Activate ContextShadow in all places where shadows are drawn
+ https://bugs.webkit.org/show_bug.cgi?id=46475
+
+ Turn on ContextShadow for the Cairo port and remove all old shadow code.
+ Shadow tiling optimizations will be added in a followup patch to ContextShadowCairo.
+
+ * platform/graphics/GraphicsContext.h: Add a ContextShadow forward declaration for Cairo.
+ * platform/graphics/cairo/FontCairo.cpp: Switch to using ContextShadow.
+ (WebCore::prepareContextForGlyphDrawing): Added this helper which sets up the translation
+ on the specified cairo_t to prepare for drawing glyphs.
+ (WebCore::drawGlyphsToContext): Added this helper which draws the glyphs to a cairo_t,
+ while properly handling glyphs with synthetic bold.
+ (WebCore::Font::drawGlyphs): Removed old shadow code and replaced it with ContextShadow usage.
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::drawPathShadow): Modified this to use ContextShadow and to take an enum
+ argument specifying whether to fill or stroke the solid figure for the shadow.
+ (WebCore::fillCurrentCairoPath): Updated drawPathShadow call.
+ (WebCore::strokeCurrentCairoPath): Ditto.
+ (WebCore::GraphicsContext::savePlatformState): Save the ContextShadow.
+ (WebCore::GraphicsContext::restorePlatformState): Restore the ContextShadow.
+ (WebCore::GraphicsContext::drawPath): Updated drawPathShadow call.
+ (WebCore::GraphicsContext::fillRect): Uses ContextShadow now.
+ (WebCore::GraphicsContext::setPlatformShadow): Uses ContextShadow now.
+ (WebCore::GraphicsContext::contextShadow): Added.
+ (WebCore::GraphicsContext::clearPlatformShadow): Clears the ContextShadow member.
+ (WebCore::GraphicsContext::fillRoundedRect): Updated drawPathShadow call.
+ * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
+ (WebCore::GraphicsContextPlatformPrivate::hasShadow): Added.
+ * platform/graphics/cairo/ImageCairo.cpp:
+ (WebCore::BitmapImage::draw): Updated to use ContextShadow.
+
+2010-10-13 John Knottenbelt <jknotten@chromium.org>
+
+ Reviewed by Steve Block.
+
+ First step towards client-based Geolocation in Chromium. Build
+ fixes for CLIENT_BASED_GEOLOCATION preprocessor feature define.
+ https://bugs.webkit.org/show_bug.cgi?id=47586
+
+ * WebCore.gyp/WebCore.gyp:
+ * platform/chromium/ChromiumBridge.h:
+ * platform/chromium/GeolocationServiceChromium.cpp:
+
+2010-10-13 Steve Block <steveblock@google.com>
+
+ Unreviewed fix
+
+ Need to check for the existence of DeviceOrientation and DeviceMotion controllers
+
+ These features can be disabled at run time, so an enable guard is not sufficient.
+ This bug was introduced in http://trac.webkit.org/changeset/69646
+
+ Tested with existing tests.
+
+ * history/PageCache.cpp:
+ (WebCore::logCanCachePageDecision):
+ (WebCore::PageCache::canCache):
+
+2010-10-13 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: stack information is inconsistent between console.trace and runtime errors.
+ https://bugs.webkit.org/show_bug.cgi?id=47252
+
+ * console.trace() is now formatted the same way as other stack traces
+
+ * If there is //@ sourceURL=url line at the end of eval'ed script source
+ the url will be shown in the stack traces for script. That is why ScriptCallFrame::sourceURL
+ type has changed from KURL to String.
+
+ Tests: inspector/console-trace-in-eval.html
+ inspector/console-uncaught-exception-in-eval.html
+
+ * bindings/js/ScriptCallFrame.cpp:
+ (WebCore::ScriptCallFrame::ScriptCallFrame):
+ * bindings/js/ScriptCallFrame.h:
+ (WebCore::ScriptCallFrame::sourceURL):
+ * bindings/v8/ScriptCallFrame.cpp:
+ (WebCore::ScriptCallFrame::ScriptCallFrame):
+ * bindings/v8/ScriptCallFrame.h:
+ (WebCore::ScriptCallFrame::sourceURL):
+ * bindings/v8/ScriptCallStack.cpp:
+ (WebCore::getFrameLocation):
+ (WebCore::ScriptCallStack::create):
+ * bindings/v8/ScriptCallStack.h:
+ * bindings/v8/ScriptController.cpp:
+ (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
+ * bindings/v8/custom/V8ConsoleCustom.cpp:
+ (WebCore::V8Console::traceCallback):
+ * inspector/ConsoleMessage.cpp:
+ (WebCore::ConsoleMessage::CallFrame::buildInspectorObject):
+ (WebCore::ConsoleMessage::ConsoleMessage):
+ * inspector/ConsoleMessage.h:
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleMessage.prototype._formatMessage):
+ * page/Console.cpp:
+ (WebCore::Console::addMessage):
+ (WebCore::Console::count):
+ (WebCore::Console::timeEnd):
+
+2010-10-13 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, a trivial change.
+
+ Run sort-Xcode-project-file.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-10-13 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ Wrong ASSERT when select element has size 0
+ https://bugs.webkit.org/show_bug.cgi?id=47567
+
+ Keep the ASSERT only if the size of the element list is more than 0
+ Test: fast/dom/HTMLSelectElement/click-size-zero-no-crash.html
+
+ * dom/SelectElement.cpp:
+ (WebCore::SelectElement::updateListBoxSelection):
+ (WebCore::SelectElement::listBoxDefaultEventHandler):
+
+2010-10-13 Steve Block <steveblock@google.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Pages using DeviceOrientation and DeviceMotion should not go into the page cache
+ https://bugs.webkit.org/show_bug.cgi?id=47408
+
+ Tests: fast/dom/DeviceMotion/no-page-cache.html
+ fast/dom/DeviceOrientation/no-page-cache.html
+
+ * dom/DeviceMotionController.h:
+ (WebCore::DeviceMotionController::isActive):
+ * dom/DeviceOrientationController.h:
+ (WebCore::DeviceOrientationController::isActive):
+ * history/PageCache.cpp:
+ (WebCore::logCanCachePageDecision):
+ (WebCore::PageCache::canCache):
+ * page/Page.cpp:
+
+2010-10-13 Jenn Braithwaite <jennb@chromium.org>
+
+ Reviewed by Dmitry Titov.
+
+ Make resource identifiers unique across pages
+ https://bugs.webkit.org/show_bug.cgi?id=47002
+
+ Test: http/tests/misc/iframe-reparenting-id-collision.html
+
+ * loader/ProgressTracker.cpp:
+ (WebCore::ProgressTracker::ProgressTracker):
+ (WebCore::ProgressTracker::createUniqueIdentifier):
+ * loader/ProgressTracker.h:
+
+2010-10-12 Roland Steiner <rolandsteiner@chromium.org>
+
+ Reviewed by David Hyatt.
+
+ Bug 41040 - :before/:after content should not become part of a ruby base
+ https://bugs.webkit.org/show_bug.cgi?id=41040
+
+ Also related to:
+ https://bugs.webkit.org/show_bug.cgi?id=40895.
+ https://bugs.webkit.org/show_bug.cgi?id=43722.
+
+ Explicitly handle :before and :after content in the default way.
+
+ Test: fast/ruby/ruby-beforeafter.html
+ fast/ruby/after-doesnt-crash.html
+
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::isBeforeContent):
+ * rendering/RenderRuby.cpp:
+ (WebCore::lastRubyRun):
+ (WebCore::RenderRubyAsInline::addChild):
+ (WebCore::RenderRubyAsInline::removeChild):
+ (WebCore::RenderRubyAsBlock::addChild):
+ (WebCore::RenderRubyAsBlock::removeChild):
+
+2010-10-12 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r69639.
+ http://trac.webkit.org/changeset/69639
+ https://bugs.webkit.org/show_bug.cgi?id=47575
+
+ "regressed nav-element.html" (Requested by rniwa on #webkit).
+
+ * editing/ApplyBlockElementCommand.cpp:
+ (WebCore::ApplyBlockElementCommand::formatSelection):
+ * editing/EditorCommand.cpp:
+ (WebCore::executeFormatBlock):
+ * editing/FormatBlockCommand.cpp:
+ (WebCore::FormatBlockCommand::formatRange):
+ * editing/FormatBlockCommand.h:
+ (WebCore::FormatBlockCommand::editingAction):
+ * editing/VisiblePosition.cpp:
+ (WebCore::enclosingBlockFlowElement):
+ * editing/VisiblePosition.h:
+ * editing/htmlediting.cpp:
+ (WebCore::validBlockTag):
+ * editing/htmlediting.h:
+
+2010-10-12 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ execCommand FormatBlock creates lots of blockquotes
+ https://bugs.webkit.org/show_bug.cgi?id=19795
+
+ The bug was caused by WebKit's not reusing the block node added by previous iteration
+ and its inserting block node at wrong places.
+
+ Fixed the bug by rewriting FormatBlockCommand::formatRange. New code resembles that of
+ IndentOutdentCommand::indentIntoBlockquote. The difference between two is that formatRange
+ avoids the existing block elements when replacing blocks and it also adds a placeholder
+ when removing the existing block caused paragraphs to collapse.
+
+ Tests: editing/execCommand/format-block-multiple-paragraphs.html
+ editing/execCommand/format-block-table.html
+
+ * editing/EditorCommand.cpp:
+ (WebCore::executeFormatBlock):
+ * editing/FormatBlockCommand.cpp:
+ (WebCore::FormatBlockCommand::formatRange): Rewritten; see above.
+ (WebCore::FormatBlockCommand::isElementToApplyInFormatBlockCommand): Renamed from validBlockElement
+ and moved from htmlediting.cpp.
+ (WebCore::FormatBlockCommand::enclosingBlockToSplitTreeTo): Added.
+ * editing/FormatBlockCommand.h:
+ * editing/VisiblePosition.cpp:
+ (WebCore::enclosingBlockFlowElement): Changed the return type to Element*
+ * editing/VisiblePosition.h:
+
+2010-10-11 Girish Ramakrishnan <girish@forwardbias.in>
+
+ Reviewed by Anders Carlsson.
+
+ Make PluginView inherit from PluginViewBase.
+
+ This change is a precursor to adding accelerated compositing support
+ for NPAPI plugins.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47418
+
+ * page/Page.cpp:
+ (WebCore::Page::privateBrowsingStateChanged):
+ * plugins/PluginView.h:
+ * plugins/PluginViewBase.h:
+ (WebCore::PluginViewBase::PluginViewBase):
+
+2010-10-12 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by Jian Li.
+
+ Pass platform path (rather than virtual path) when creating File from FileEntry
+ https://bugs.webkit.org/show_bug.cgi?id=47563
+
+ No new tests, the new test for FileWriter will be verifying this.
+
+ * fileapi/FileEntry.cpp:
+ (WebCore::FileEntry::file):
+
+2010-10-12 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein
+
+ <rdar://problem/8488444> REGRESSION (r67771)
+ https://bugs.webkit.org/show_bug.cgi?id=47434
+ Crash when printing in RenderBlock::markDescendantBlocksAndLinesForLayout
+
+ Added printing/simultaneous-position-float-change.html
+
+ Remove the markDescendantBlocksAndLinesForLayout method since it can walk m_floatingObjects lists with deleted
+ objects in them. Make the mechanism for relayout when the page height changes the same as the one when pageY
+ changes and just tie a concept of pageHeightChanged to the layout state. If that is set, blocks will just
+ automatically mark themselves as needing layout.
+
+ * rendering/LayoutState.cpp:
+ (WebCore::LayoutState::LayoutState):
+ * rendering/LayoutState.h:
+ (WebCore::LayoutState::LayoutState):
+ (WebCore::LayoutState::pageHeight):
+ (WebCore::LayoutState::pageHeightChanged):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::layoutPositionedObjects):
+ (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::positionNewFloats):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::markForPaginationRelayoutIfNeeded):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutHorizontalBox):
+ (WebCore::RenderFlexibleBox::layoutVerticalBox):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::RenderView):
+ (WebCore::RenderView::layout):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::setPageHeight):
+ (WebCore::RenderView::pushLayoutState):
+ (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
+ (WebCore::LayoutStateMaintainer::push):
+
+2010-10-12 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Paint the find overlay background
+ https://bugs.webkit.org/show_bug.cgi?id=47565
+
+ Export symbols required by WebKit2.
+
+ * WebCore.exp.in:
+
+2010-10-12 James Robinson <jamesr@chromium.org>
+
+ Unreviewed chromium compile fixes for http://trac.webkit.org/changeset/69619
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::create):
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+
+2010-10-12 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Manage DrawingBuffer lifetime in GraphicsContext3D
+ https://bugs.webkit.org/show_bug.cgi?id=47501
+
+ GraphicsContext3D and DrawingBuffer are now Refcounted. DrawingBuffer
+ has a RefPtr to GraphicsContext3D to ensure the proper lifetime.
+ DrawingBuffer is now created by GraphicsContext3D. Also DrawingBuffer
+ refers to GraphicsContext3D rather than SharedGraphicsContext3D.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
+ * html/canvas/CanvasRenderingContext2D.h:
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::create):
+ (WebCore::WebGLRenderingContext::WebGLRenderingContext):
+ * html/canvas/WebGLRenderingContext.h:
+ * platform/graphics/GraphicsContext3D.cpp:
+ (WebCore::GraphicsContext3D::createDrawingBuffer):
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/chromium/DrawingBufferChromium.cpp:
+ (WebCore::generateColorTexture):
+ (WebCore::DrawingBuffer::DrawingBuffer):
+ (WebCore::DrawingBuffer::~DrawingBuffer):
+ (WebCore::DrawingBuffer::publishToPlatformLayer):
+ (WebCore::DrawingBuffer::reset):
+ * platform/graphics/gpu/DrawingBuffer.cpp:
+ (WebCore::DrawingBuffer::create):
+ (WebCore::DrawingBuffer::clear):
+ (WebCore::DrawingBuffer::bind):
+ * platform/graphics/gpu/DrawingBuffer.h:
+ (WebCore::DrawingBuffer::graphicsContext3D):
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::create):
+ (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+ (WebCore::SharedGraphicsContext3D::graphicsContext3D):
+ * platform/graphics/gpu/mac/DrawingBufferMac.mm:
+ (WebCore::DrawingBuffer::DrawingBuffer):
+ (WebCore::DrawingBuffer::~DrawingBuffer):
+ (WebCore::DrawingBuffer::reset):
+ * platform/graphics/mac/GraphicsContext3DMac.mm:
+ (WebCore::GraphicsContext3D::create):
+
+2010-10-12 Jian Li <jianli@chromium.org>
+
+ Reviewed by David Levin.
+
+ Fix passing blob data with string data item between threads.
+ https://bugs.webkit.org/show_bug.cgi?id=46543
+
+ The fix is to use a thread-safe ref-counted Vector<char> to store the
+ string data. This also makes us be able to store any binary data in it.
+
+ I've also fix BlobBuilder and BlobRegistryImpl to avoid some additional
+ copies to make blob handling faster.
+
+ * fileapi/BlobBuilder.cpp:
+ (WebCore::BlobBuilder::append):
+ * fileapi/ThreadableBlobRegistry.cpp:
+ (WebCore::BlobRegistryContext::BlobRegistryContext):
+ * platform/network/BlobData.cpp:
+ (WebCore::BlobDataItem::RawData::RawData):
+ (WebCore::BlobDataItem::RawData::detachFromCurrentThread):
+ (WebCore::BlobDataItem::detachFromCurrentThread):
+ (WebCore::BlobData::create):
+ (WebCore::BlobData::detachFromCurrentThread):
+ (WebCore::BlobData::appendData):
+ * platform/network/BlobData.h:
+ (WebCore::BlobDataItem::RawData::create):
+ (WebCore::BlobDataItem::RawData::data):
+ (WebCore::BlobDataItem::RawData::length):
+ (WebCore::BlobDataItem::RawData::mutableData):
+ (WebCore::BlobDataItem::BlobDataItem):
+ * platform/network/BlobRegistryImpl.cpp:
+ (WebCore::BlobRegistryImpl::registerBlobURL):
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::readDataSync):
+ (WebCore::BlobResourceHandle::readDataAsync):
+ * platform/network/mac/FormDataStreamMac.mm:
+ (WebCore::setHTTPBody):
+ * platform/text/LineEnding.cpp:
+ (OutputBuffer::CStringBuffer::CStringBuffer):
+ (OutputBuffer::CStringBuffer::~CStringBuffer):
+ (OutputBuffer::CStringBuffer::allocate):
+ (OutputBuffer::CStringBuffer::copy):
+ (OutputBuffer::CStringBuffer::buffer):
+ (OutputBuffer::VectorCharAppendBuffer::VectorCharAppendBuffer):
+ (OutputBuffer::VectorCharAppendBuffer::~VectorCharAppendBuffer):
+ (OutputBuffer::VectorCharAppendBuffer::allocate):
+ (OutputBuffer::VectorCharAppendBuffer::copy):
+ (OutputBuffer::internalNormalizeLineEndingsToCRLF):
+ (WebCore::normalizeToCROrLF):
+ (WebCore::normalizeLineEndingsToCRLF):
+ (WebCore::normalizeLineEndingsToCR):
+ (WebCore::normalizeLineEndingsToLF):
+ (WebCore::normalizeLineEndingsToNative):
+ * platform/text/LineEnding.h:
+
+2010-10-12 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r69589.
+ http://trac.webkit.org/changeset/69589
+ https://bugs.webkit.org/show_bug.cgi?id=47547
+
+ Wrong patch landed from a bug with two patches (Requested by
+ mrobinson on #webkit).
+
+ * platform/network/ResourceHandleInternal.h:
+ (WebCore::ResourceHandleInternal::ResourceHandleInternal):
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
+ (WebCore::ResourceHandle::~ResourceHandle):
+ (WebCore::restartedCallback):
+ (WebCore::gotChunkCallback):
+ (WebCore::finishedCallback):
+ (WebCore::parseDataUrl):
+ (WebCore::startHttp):
+ * platform/network/soup/ResourceRequest.h:
+ * platform/network/soup/ResourceRequestSoup.cpp:
+
+2010-10-12 Simon Fraser <simon.fraser@apple.com>
+
+ Screen.availLeft should be signed
+ https://bugs.webkit.org/show_bug.cgi?id=34397
+
+ Add the manual test missed in r69599.
+
+ * manual-tests/screen-availLeft.html: Added.
+
+2010-10-12 Girish Ramakrishnan <girish@forwardbias.in>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] Windowless mode 64-bit Flash/X11 freezes when right-click is sent.
+
+ Adds a new quirk PluginQuirkIgnoreRightClickInWindowlessMode. This
+ quirk is enabled only for 64-bit Flash/X11 and should not affect other
+ plugins. The freeze itself is in Flash code and the backtrace is not
+ useful.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47545
+
+ * plugins/PluginPackage.cpp:
+ (WebCore::PluginPackage::determineQuirks):
+ * plugins/PluginQuirkSet.h:
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::handleMouseEvent):
+
+2010-10-08 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Screen.availLeft should be signed
+ https://bugs.webkit.org/show_bug.cgi?id=34397
+
+ For the screen to the left of the main screen, screen.availLeft
+ can be negative, so the Screen API needs to use signed numbers
+ for availLeft and availTop.
+
+ * manual-tests/screen-availLeft.html: Added.
+ * page/Screen.cpp:
+ (WebCore::Screen::availLeft):
+ (WebCore::Screen::availTop):
+ * page/Screen.h:
+ * page/Screen.idl:
+
+2010-10-12 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Add FindController class
+ https://bugs.webkit.org/show_bug.cgi?id=47555
+
+ Export Page::findString.
+
+ * WebCore.exp.in:
+
+2010-10-12 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47550
+ <rdar://problem/8353386> For WebKit plug-ins, beforeload can be called recursively
+ (esp. with AdBlock style extensions)
+
+ No test - we don't have a WebKit-style plugin in DRT, and don't care enough to add one.
+
+ The fix is to block plug-in scripting while in beforeload event - the plug-in is obviously
+ not available yet, so scripting could only attempt to load it recursively.
+
+ This didn't affect NPAPI plug-ins, because of a completely different code path taken in
+ updateWidget(), see <https://bugs.webkit.org/show_bug.cgi?id=44575#c8>.
+
+ * html/HTMLEmbedElement.cpp: (WebCore::HTMLEmbedElement::updateWidget):
+ * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::updateWidget):
+ * html/HTMLPlugInElement.cpp:
+ (WebCore::HTMLPlugInElement::HTMLPlugInElement):
+ (WebCore::HTMLPlugInElement::pluginWidget):
+ * html/HTMLPlugInElement.h:
+
+2010-10-12 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Gavin Barraclough.
+
+ Unify JSC::StringBuilder & WebCore::StringBuilder
+ https://bugs.webkit.org/show_bug.cgi?id=47538
+
+ JSC::StringBuilder operates on a Vector<UChar, 64> and allows to build a string based on a stream of characters in an efficient manner.
+ WebCore::StringBuilder operates on a Vector<String, 16> and allows to concat an arbitary number of Strings. It's not efficient in handling single
+ characters, as a String with length=1 has to be constructed for those. An analysis of the callers of WebCore::StringBuilder shows that
+ most callsites actually combine Strings and single characters, so using a Vector<UChar> would be more efficient. Those who only combine large
+ strings are only used for debugging purposes, so it's fine to switch them to a Vector<UChar> approach as well.
+
+ Replace WebCore::StringBuilder with JSC::StringBuilder, and move it to wtf/text/StringBuilder.h into the WTF namespace.
+ While I was at it remove platform/text/StringBuffer.h, as it was only including wtf/text/StringBuffer.h.
+
+ No change in functionality, thus no new tests.
+
+ * Android.mk: Remove platform/text/StringBuilder.* and platform/text/StringBuffer.h.
+ * CMakeLists.txt: Ditto.
+ * GNUmakefile.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.order: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * ForwardingHeaders/runtime/StringBuilder.h: Removed.
+ * ForwardingHeaders/runtime/UStringBuilder.h: Added.
+ * ForwardingHeaders/wtf/text/StringBuilder.h: Added.
+ * bindings/js/ScriptString.h: Don't include PlatformString.h but wtf/text/WTFString.h.
+ (WebCore::ScriptString::operator+=): Use JSC::UStringBuilder instead of JSC::StringBuilder.
+ * bridge/jni/JNIBridge.cpp: Use WTF::StringBuilder (+ use append(const UChar) for single characters).
+ * css/MediaQuery.cpp: Ditto.
+ * css/MediaQueryExp.cpp: Ditto.
+ * dom/Node.cpp: Ditto.
+ (WebCore::Node::appendTextContent): Manually track wheter the StringBuilder content is empty or null, the new StringBuilder doesn't differentiate between null & empty strings.
+ * dom/Node.h: Remove appendTextContent definition, it's not needed to be exported, removes the need for a StringBuilder.h include or forward declaration.
+ * html/DOMTokenList.cpp: Use WTF::StringBuilder.
+ * inspector/InspectorResource.cpp: Remove useless StringBuffer.h include.
+ * platform/android/FileSystemAndroid.cpp: Use WTF::StringBuilder.
+ * platform/brew/FileSystemBrew.cpp: Ditto.
+ * platform/chromium/ClipboardChromium.cpp: Ditto (+ use append(const UChar) for single characters).
+ * platform/graphics/gpu/PODInterval.h: Ditto (Only used as debugging helper here, in debug builds).
+ * platform/graphics/gpu/PODRedBlackTree.h: Ditto (Only used as debugging helper here, in debug builds).
+ * platform/graphics/mac/GraphicsLayerCA.mm: Remove useless StringBuilder.h include.
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Use WTF::StringBuilder, and use append(const UChar) for single characters.
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: Ditto.
+ * platform/network/ProxyServer.cpp:
+ (WebCore::appendProxyServerString): Use WTF::StringBuilder.
+ * platform/text/StringBuffer.h: Removed.
+ * platform/text/StringBuilder.cpp: Removed.
+ * platform/text/StringBuilder.h: Removed.
+ * plugins/DOMMimeType.cpp: Use WTF::StringBuilder.
+ * svg/SVGPathParserFactory.cpp: Ditto.
+ * svg/SVGPathStringBuilder.cpp: SVGPathStringBuilder used stringBuilder.toString(ConcatAddingSpacesBetweenIndividualStrings), adapt to the change, that this mode is gone now.
+ (WebCore::SVGPathStringBuilder::result): Just use toString(), append a space to the end of each command, when building the string. Remove the last trailing space before building the result.
+ (WebCore::SVGPathStringBuilder::moveTo):
+ (WebCore::SVGPathStringBuilder::lineTo):
+ (WebCore::SVGPathStringBuilder::lineToHorizontal):
+ (WebCore::SVGPathStringBuilder::lineToVertical):
+ (WebCore::SVGPathStringBuilder::curveToCubic):
+ (WebCore::SVGPathStringBuilder::curveToCubicSmooth):
+ (WebCore::SVGPathStringBuilder::curveToQuadratic):
+ (WebCore::SVGPathStringBuilder::curveToQuadraticSmooth):
+ (WebCore::SVGPathStringBuilder::arcTo):
+ (WebCore::SVGPathStringBuilder::closePath):
+ * svg/SVGPathStringBuilder.h:
+ (WebCore::SVGPathStringBuilder::cleanup): StringBuilder::clear() is gone, just cleanup by assigning StringBuilder().
+ * websockets/WebSocket.cpp: Use WTF::StringBuilder.
+ * websockets/WebSocketHandshake.cpp: Ditto (+ use append(const UChar) for single characters).
+
+2010-10-12 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Antonio Gomes.
+
+ [EFL] Add a missing file in CMakeListEfl.txt
+ https://bugs.webkit.org/show_bug.cgi?id=47480
+
+ IntRectEfl.cpp was missing in CMakeListEfl.txt. So, IntRectEfl.cpp is added.
+
+ * CMakeListsEfl.txt:
+
+2010-10-12 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Need WebKit2 API to get the cell above a table cell
+ <rdar://problem/8537111>
+ https://bugs.webkit.org/show_bug.cgi?id=47532
+
+ Re-factor functionality to get the cell above a table cell
+ into a function on HTMLTableCellElement and export it for use
+ as SPI.
+
+ * WebCore.exp.in:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/HTMLTableCellElement.cpp:
+ (WebCore::HTMLTableCellElement::cellAbove): Move implementation here...
+ * html/HTMLTableCellElement.h:
+ * page/Frame.cpp:
+ (WebCore::Frame::searchForLabelsAboveCell): ...from here.
+
+2010-10-12 Dave Moore <davemoore@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ Use new WebThemeEngine api on chromium / linux to draw scrollbars.
+ https://bugs.webkit.org/show_bug.cgi?id=47473
+
+ * platform/chromium/ChromiumBridge.h:
+ * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
+
+2010-10-12 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Antonio Gomes.
+
+ [Qt] Clipping problem viewing SVG with WebKit
+ https://bugs.webkit.org/show_bug.cgi?id=29596
+
+ SVG path clipping (via GraphicsContext::clipPath()) was done using the
+ Qt::ReplaceClip mode (default) instead of Qt::IntersectClip. This led
+ to misrenderings when nesting multiple clip paths.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::clipPath):
+
+2010-10-07 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: refactoring of native breakpoints.
+ https://bugs.webkit.org/show_bug.cgi?id=47360
+
+ Make DOM, EventListener and XHR breakpoints subclasses of NativeBreakpoint class.
+ Move stuff that depends on breakpoint type to corresponding subclass.
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::didCommitLoad):
+ (WebCore::InspectorController::setNativeBreakpoint):
+ (WebCore::InspectorController::removeNativeBreakpoint):
+ (WebCore::InspectorController::findEventListenerBreakpoint):
+ (WebCore::InspectorController::findXHRBreakpoint):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::setDOMBreakpoint):
+ (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
+ (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
+ (WebCore::InspectorDOMAgent::didRemoveDOMNode):
+ (WebCore::InspectorDOMAgent::removeBreakpointsForNode):
+ (WebCore::InspectorDOMAgent::createBreakpointId):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
+ (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
+ (WebCore::InspectorInstrumentation::willDispatchEventImpl):
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager):
+ (WebInspector.BreakpointManager.prototype.reset):
+ (WebInspector.BreakpointManager.prototype.createDOMBreakpoint):
+ (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
+ (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
+ (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
+ (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend.didSetNativeBreakpoint):
+ (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend):
+ (WebInspector.BreakpointManager.prototype.debuggerPaused):
+ (WebInspector.BreakpointManager.prototype.debuggerResumed):
+ (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints.restoreBreakpointsForNode):
+ (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints):
+ (WebInspector.NativeBreakpoint):
+ (WebInspector.NativeBreakpoint.prototype.remove):
+ (WebInspector.NativeBreakpoint.prototype.get _frontendId):
+ (WebInspector.NativeBreakpoint.prototype.get _type):
+ (WebInspector.NativeBreakpoint.prototype._compare):
+ (WebInspector.NativeBreakpoint.prototype._onRemove):
+ (WebInspector.DOMBreakpoint):
+ (WebInspector.DOMBreakpoint.prototype.click):
+ (WebInspector.DOMBreakpoint.prototype.compareTo):
+ (WebInspector.DOMBreakpoint.prototype.populateLabelElement):
+ (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement.formatters.s):
+ (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement.append):
+ (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement):
+ (WebInspector.DOMBreakpoint.prototype._condition):
+ (WebInspector.DOMBreakpoint.prototype._onRemove):
+ (WebInspector.EventListenerBreakpoint):
+ (WebInspector.EventListenerBreakpoint.prototype.compareTo):
+ (WebInspector.EventListenerBreakpoint.prototype.label):
+ (WebInspector.EventListenerBreakpoint.prototype.populateStatusMessageElement):
+ (WebInspector.EventListenerBreakpoint.prototype._condition):
+ (WebInspector.XHRBreakpoint):
+ (WebInspector.XHRBreakpoint.prototype.compareTo):
+ (WebInspector.XHRBreakpoint.prototype.populateLabelElement):
+ (WebInspector.XHRBreakpoint.prototype.populateStatusMessageElement):
+ (WebInspector.XHRBreakpoint.prototype._condition):
+ (WebInspector.domBreakpointTypeLabel):
+ (WebInspector.domBreakpointTypeContextMenuLabel):
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.BreakpointItem):
+ (WebInspector.BreakpointItem.prototype._breakpointClicked):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate):
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane):
+ (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
+ (WebInspector.CallStackSidebarPane.prototype._breakpointHit):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMNode):
+ (WebInspector.DOMAgent.prototype._setDocument):
+ (WebInspector.DOMAgent.prototype._removeBreakpoints):
+ (WebInspector.childNodeRemoved):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.debuggerPaused):
+ * inspector/front-end/inspector.js:
+ (WebInspector.createDOMBreakpointsSidebarPane.breakpointAdded):
+ (WebInspector.createDOMBreakpointsSidebarPane):
+ (WebInspector.reset):
+
+2010-10-11 Eric Uhrhane <ericu@chromium.org>
+
+ Reviewed by Dumitru Daniliuc.
+
+ FileWriter should hold a reference to a Blob during write
+ https://bugs.webkit.org/show_bug.cgi?id=47318
+
+ Without this reference, the Blob might get garbage-collected from JS
+ before the write has completed, which would be quite unintuitive to the
+ user. I just grab a RefPtr to the Blob at write(), then clear it when
+ we're done.
+
+ * fileapi/FileWriter.cpp:
+ (WebCore::FileWriter::stop):
+ (WebCore::FileWriter::write):
+ (WebCore::FileWriter::didWrite):
+ (WebCore::FileWriter::didFail):
+ * fileapi/FileWriter.h:
+
+2010-10-11 Michael Saboff <msaboff@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Changed DOMWindow to have a constructor. Updated the code generator
+ to add security checks to the constructors if CheckDomainSecurity is
+ set. Also changed the constructor generation code to use
+ globalObject->prototype() for DOMWindow object prototypes instead
+ of "self".
+ https://bugs.webkit.org/show_bug.cgi?id=47422
+
+ Test: fast/dom/Window/window-constructor.html
+
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * page/DOMWindow.idl:
+
+2010-10-11 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [chromium] Prepare Clipboard/DragData for transition to new drag-and-drop interface.
+ https://bugs.webkit.org/show_bug.cgi?id=44992
+
+ In order to allow a graceful transition, ChromiumDataObject has been
+ reimplemented as a wrapper around the three different types of data
+ objects that the Chrome port uses:
+ 1. ChromiumDataObjectLegacy -- this is the original ChromiumDataObject.
+ All the data that ClipboardChromium/DragDataChromium can potentially
+ use is copied over, regardless of whether or not it is needed.
+ 2. ReadableDataObject -- used for dragging in and pasting into WebKit.
+ For efficiency, it caches an optimistic list of types it believes it
+ can handle. When getData() is called, a browser IPC is called to
+ retrieve the appropriate data.
+ 3. WritableDataObject -- similar to ChromiumDataObjectLegacy in that it
+ buffers all data when dragging out of WebKit or copying/cutting.
+ Unfortunately, there is a difference between dragging out and
+ copying/cutting--on drag outs, the data is buffered and flushed out
+ when startDrag() is called. For copy/cut, any calls to setData()
+ result in a browser IPC right away, so calls to setData() in one
+ copy/cut event are not atomic.
+
+ Copy and paste has been changed to use the new data objects. Dragging
+ out uses the legacy data object, and dragging in now has two potential
+ entry points--one using the legacy data object, and one using
+ ReadableDataObject. Once Chromium transitions to using the new drag-in
+ interface, the old interface will be removed.
+
+ This change is covered by existing tests.
+
+ * WebCore.gypi:
+ * editing/chromium/EditorChromium.cpp:
+ (WebCore::Editor::newGeneralClipboard):
+ * page/chromium/EventHandlerChromium.cpp:
+ (WebCore::EventHandler::createDraggingClipboard):
+ * platform/chromium/ChromiumDataObject.cpp:
+ (WebCore::ChromiumDataObject::ChromiumDataObject):
+ (WebCore::ChromiumDataObject::create):
+ (WebCore::ChromiumDataObject::createReadable):
+ (WebCore::ChromiumDataObject::createWritable):
+ (WebCore::ChromiumDataObject::clearData):
+ (WebCore::ChromiumDataObject::clearAll):
+ (WebCore::ChromiumDataObject::clearAllExceptFiles):
+ (WebCore::ChromiumDataObject::hasData):
+ (WebCore::ChromiumDataObject::types):
+ (WebCore::ChromiumDataObject::getData):
+ (WebCore::ChromiumDataObject::setData):
+ (WebCore::ChromiumDataObject::urlTitle):
+ (WebCore::ChromiumDataObject::setUrlTitle):
+ (WebCore::ChromiumDataObject::htmlBaseUrl):
+ (WebCore::ChromiumDataObject::setHtmlBaseUrl):
+ (WebCore::ChromiumDataObject::containsFilenames):
+ (WebCore::ChromiumDataObject::filenames):
+ (WebCore::ChromiumDataObject::setFilenames):
+ (WebCore::ChromiumDataObject::fileExtension):
+ (WebCore::ChromiumDataObject::setFileExtension):
+ (WebCore::ChromiumDataObject::fileContentFilename):
+ (WebCore::ChromiumDataObject::setFileContentFilename):
+ (WebCore::ChromiumDataObject::fileContent):
+ (WebCore::ChromiumDataObject::setFileContent):
+ * platform/chromium/ChromiumDataObject.h:
+ * platform/chromium/ChromiumDataObjectLegacy.cpp: Copied from ChromiumDataObject.cpp
+ (WebCore::ChromiumDataObjectLegacy::clearData):
+ (WebCore::ChromiumDataObjectLegacy::clearAll):
+ (WebCore::ChromiumDataObjectLegacy::clearAllExceptFiles):
+ (WebCore::ChromiumDataObjectLegacy::hasData):
+ (WebCore::ChromiumDataObjectLegacy::types):
+ (WebCore::ChromiumDataObjectLegacy::getData):
+ (WebCore::ChromiumDataObjectLegacy::setData):
+ (WebCore::ChromiumDataObjectLegacy::ChromiumDataObjectLegacy):
+ * platform/chromium/ChromiumDataObjectLegacy.h: Copied from ChromiumDataObject.h
+ (WebCore::ChromiumDataObjectLegacy::create):
+ (WebCore::ChromiumDataObjectLegacy::copy):
+ (WebCore::ChromiumDataObjectLegacy::urlTitle):
+ (WebCore::ChromiumDataObjectLegacy::setUrlTitle):
+ (WebCore::ChromiumDataObjectLegacy::htmlBaseUrl):
+ (WebCore::ChromiumDataObjectLegacy::setHtmlBaseUrl):
+ (WebCore::ChromiumDataObjectLegacy::containsFilenames):
+ (WebCore::ChromiumDataObjectLegacy::filenames):
+ (WebCore::ChromiumDataObjectLegacy::setFilenames):
+ (WebCore::ChromiumDataObjectLegacy::fileExtension):
+ (WebCore::ChromiumDataObjectLegacy::setFileExtension):
+ (WebCore::ChromiumDataObjectLegacy::fileContentFilename):
+ (WebCore::ChromiumDataObjectLegacy::setFileContentFilename):
+ (WebCore::ChromiumDataObjectLegacy::fileContent):
+ (WebCore::ChromiumDataObjectLegacy::setFileContent):
+ * platform/chromium/ClipboardChromium.cpp:
+ (WebCore::ClipboardChromium::create):
+ * platform/chromium/ClipboardChromium.h:
+ * platform/chromium/ReadableDataObject.cpp:
+ (WebCore::ReadableDataObject::getData):
+ * platform/chromium/WritableDataObject.cpp:
+ (WebCore::WritableDataObject::setData):
+
+2010-10-11 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Remove WebIconFetcher from WebKit and IconFetcher from WebCore
+ https://bugs.webkit.org/show_bug.cgi?id=47523
+
+ Remove all traces of the WebCore IconFetcher class. It's SPI that nobody uses.
+
+ * GNUmakefile.am:
+ * WebCore.exp.in:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * loader/icon/IconFetcher.cpp: Removed.
+ * loader/icon/IconFetcher.h: Removed.
+
+2010-10-11 Jia Pu <jpu@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ Should commit pending autocorrection before next round of text checking.
+ https://bugs.webkit.org/show_bug.cgi?id=46986
+ <rdar://problem/8424535>
+
+ 1. Apply pending autocorrection before calling markAllMisspellingsAndBadGrammarInRanges().
+ 2. Remove unneccessary calls to dismissCorrectionPanel(), since the panel is dismissed when
+ selection changes, which occurs after every typing command.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::markMisspellingsAfterTypingToPosition): Apply pending autocorrection.
+ (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Store current correction replacement
+ in m_correctionReplacementString.
+ (WebCore::Editor::startCorrectionPanelTimer): Remove call to dismissCorrectionPanel().
+ * editing/Editor.h: Add m_correctionReplacementString to store proposed autocorrection string.
+
+2010-10-11 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Make fast/canvas/webgl/glsl-conformance pass again
+ https://bugs.webkit.org/show_bug.cgi?id=47525
+
+ Remove incorrect call to glGetShaderiv, so it is only
+ called in the case where we don't have our own simulated
+ log.
+
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::getShaderInfoLog):
+
+2010-10-11 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Add WebKit2 equivalents for setValueForUser and setAutoFilled
+ <rdar://problem/8475934>
+ https://bugs.webkit.org/show_bug.cgi?id=47524
+
+ * WebCore.exp.in: Add needed export.
+
+2010-10-11 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ The names of IndexedDB-specific attributes of DOMWindow should be prefixed with 'webkit'.
+ https://bugs.webkit.org/show_bug.cgi?id=47508
+
+ * bindings/generic/RuntimeEnabledFeatures.h:
+ (WebCore::RuntimeEnabledFeatures::setWebkitIndexedDBEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIndexedDBEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBCursorEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseErrorEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseExceptionEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBErrorEventEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBEventEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBFactoryEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBIndexEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBKeyRangeEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBObjectStoreEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBRequestEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBSuccessEventEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitIDBTransactionEnabled):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::webkitIndexedDB):
+ * page/DOMWindow.h:
+ * page/DOMWindow.idl:
+
+2010-10-11 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Add ability to convert from a JSObjectRef back to a WKBundleNodeHandleRef
+ https://bugs.webkit.org/show_bug.cgi?id=47509
+
+ * WebCore.exp.in: Export toNode.
+
+2010-10-11 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Tony Chang.
+
+ [GTK] editing/pasteboard/dataTransfer-setData-getData.html fails on GTK+
+ https://bugs.webkit.org/show_bug.cgi?id=47244
+
+ Store the URI list as a String in DataObjectGtk, so that non-URI elements
+ are preserved when getData(...) is called. This necessitates some other
+ changes, including adding a m_filenames member to DataObjectGtk to store
+ filenames extracted during setURIList(...). The logic in getData(...) has
+ also changed to set success = true no matter what to match the spec. A
+ followup patch will remove this parameter completely for all platforms.
+
+ * platform/gtk/ClipboardGtk.cpp:
+ (WebCore::ClipboardGtk::getData): Always succeed to match the HTML5
+ spec and Firefox. Simply return the uriList string from the DataObject
+ instead of reconstructing it from a vector of KURLs.
+ (WebCore::ClipboardGtk::setData): The DataObject now accepts a string
+ for the uriList parameter.
+ (WebCore::ClipboardGtk::types): Predicate the "Files" member on
+ DataObjectGtk::hasFilenames().
+ (WebCore::ClipboardGtk::files): Update to reflect the change from
+ DataObjectGtk::files() to DataObjectGtk::filenames().
+ * platform/gtk/DataObjectGtk.cpp:
+ (WebCore::DataObjectGtk::setURIList): Expanded this setter to find the
+ first valid URL to use as the m_url member and also extract a list of filenames
+ from the URI list.
+ (WebCore::DataObjectGtk::setURL): Updated to reflect changes to m_uriList.
+ (WebCore::DataObjectGtk::clear): Updated to reflect changes to m_uriList and
+ also leave a comment explaining why we do not clear filenames here.
+ * platform/gtk/DataObjectGtk.h:
+ (WebCore::DataObjectGtk::url): This implementation is now a simple getter.
+ (WebCore::DataObjectGtk::uriList): Ditto.
+ (WebCore::DataObjectGtk::filenames): Added.
+ (WebCore::DataObjectGtk::hasURL): Now a simple check.
+ (WebCore::DataObjectGtk::hasFilenames): Added.
+ (WebCore::DataObjectGtk::clearURIList): Simple setter.
+ (WebCore::DataObjectGtk::clearURL): Ditto.
+ * platform/gtk/DragDataGtk.cpp:
+ (WebCore::DragData::containsFiles): Updated to access DataObjectGtk::hasFilenames().
+ (WebCore::DragData::asFilenames): Updated to access DataObjectGtk::filenames().
+ * platform/gtk/PasteboardHelper.cpp:
+ (WebCore::PasteboardHelper::getClipboardContents): Use the uriList as a string now.
+ (WebCore::PasteboardHelper::fillSelectionData): Ditto.
+ (WebCore::PasteboardHelper::fillDataObjectFromDropData): Ditto.
+
+2010-10-11 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] DRT crash in fast/canvas tests w/accel 2D canvas due to NULL DrawingBuffer
+ https://bugs.webkit.org/show_bug.cgi?id=47241
+
+ Avoid initializing accelerated graphics objects on CanvasRenderingContext2D
+ if there is no drawingContext associated with the canvas.
+
+ Test: fast/canvas/access-zero-sized-canvas.html
+ fast/canvas/canvas-skia-excessive-size.html
+ fast/canvas/toDataURL-noData.html
+ with --accelerated-compositing and --accelerated-2d-canvas
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
+ (WebCore::CanvasRenderingContext2D::reset):
+
+2010-10-11 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [GTK] Cleanup font selection code for the Freetype backend
+ https://bugs.webkit.org/show_bug.cgi?id=47503
+
+ Do some miscellaneous cleanup work in the Freetype font font selection backend.
+
+ * platform/graphics/cairo/FontCacheFreeType.cpp:
+ (WebCore::getFamilyNameStringFromFontDescriptionAndFamily): Modified this method to return
+ a WebCore String.
+ (WebCore::FontCache::createFontPlatformData): Do a bit of cleanup in this method: properly
+ handle cursive and fantasy as fallback-like fonts. Instead of using raw CStrings do string
+ comparisons using WebCore Strings. Remove a large block comment that originated from a
+ Apache-licensed file.
+
+2010-10-11 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [GTK] Buttons activated with the keyboard should be painted as clicked
+ https://bugs.webkit.org/show_bug.cgi?id=18364
+
+ When a button is pressed, force it into the hovered state as far as the
+ Mozilla theme drawing code is concerned. This bug also seems to be an
+ issue for Firefox. When we switch away from the Mozilla theme drawing
+ code this work-around should no longer be necessary.
+
+ No new tests. I was not able to generate a pixel test for this issue. It
+ seems that our DRT does not have the necessary infrastructure to generate a
+ pixel dump while a button is in the pressed state.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::paintRenderObject):
+
+2010-10-11 Jian Li <jianli@chromium.org>
+
+ Unreviewed. Build fix.
+
+ * bindings/js/JSArrayBufferCustom.cpp:
+ * bindings/js/JSArrayBufferViewCustom.cpp:
+ * bindings/js/JSFloat32ArrayCustom.cpp:
+ * bindings/js/JSInt16ArrayCustom.cpp:
+ * bindings/js/JSInt32ArrayCustom.cpp:
+ * bindings/js/JSInt8ArrayCustom.cpp:
+ * bindings/js/JSUint16ArrayCustom.cpp:
+ * bindings/js/JSUint32ArrayCustom.cpp:
+ * bindings/js/JSUint8ArrayCustom.cpp:
+ * bindings/v8/custom/V8ArrayBufferCustom.cpp:
+ * bindings/v8/custom/V8ArrayBufferViewCustom.cpp:
+ * bindings/v8/custom/V8Float32ArrayCustom.cpp:
+ * bindings/v8/custom/V8Int16ArrayCustom.cpp:
+ * bindings/v8/custom/V8Int32ArrayCustom.cpp:
+ * bindings/v8/custom/V8Int8ArrayCustom.cpp:
+ * bindings/v8/custom/V8Uint16ArrayCustom.cpp:
+ * bindings/v8/custom/V8Uint32ArrayCustom.cpp:
+ * bindings/v8/custom/V8Uint8ArrayCustom.cpp:
+
+2010-10-11 Brent Fulgham <bfulgham@webkit.org>
+
+ Unreviewed WinCairo build fixes.
+
+ * platform/network/curl/ResourceResponse.h: Correct forward declaration
+ for CFURLResponseRef.
+ * rendering/RenderMediaControls.h: Add ENABLE(VIDEO) guard to new
+ header file to avoid build failure on non-VIDEO builds.
+
+2010-10-11 Jian Li <jianli@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Add File API feature guard to all typed array files
+ https://bugs.webkit.org/show_bug.cgi?id=47437
+
+ Since we're going to add ArrayBuffer support to FileReader and BlobBuilder,
+ we need to update all type array files to include File API feature guard
+ in addition to the existing 3D_CANVAS guard. When ArrayBuffer is used in
+ XMLHttpRequest, we will then remove all the guards. This is per the
+ discussion on webkit-dev mailing list:
+ https://lists.webkit.org/pipermail/webkit-dev/2010-October/014716.html
+
+ * html/canvas/ArrayBuffer.cpp:
+ * html/canvas/ArrayBuffer.idl:
+ * html/canvas/ArrayBufferView.cpp:
+ * html/canvas/ArrayBufferView.idl:
+ * html/canvas/Float32Array.cpp:
+ * html/canvas/Float32Array.idl:
+ * html/canvas/Int16Array.cpp:
+ * html/canvas/Int16Array.idl:
+ * html/canvas/Int32Array.cpp:
+ * html/canvas/Int32Array.idl:
+ * html/canvas/Int8Array.cpp:
+ * html/canvas/Int8Array.idl:
+ * html/canvas/Uint16Array.cpp:
+ * html/canvas/Uint16Array.idl:
+ * html/canvas/Uint32Array.cpp:
+ * html/canvas/Uint32Array.idl:
+ * html/canvas/Uint8Array.cpp:
+ * html/canvas/Uint8Array.idl:
+
+2010-10-11 Andreas Kling <kling@webkit.org>
+
+ Build fix (implicit float conversion in Path.cpp)
+
+ * platform/graphics/Path.cpp:
+
+2010-10-11 Girish Ramakrishnan <girish@forwardbias.in>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Refactor Plugin X Pixmap painting code to a separate function
+
+ The refactored function will be used for rendering by the Accelerated
+ Composition enabled graphics layer.
+
+ https://bugs.webkit.org/show_bug.cgi?id=35524
+
+ * plugins/PluginView.h:
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::paintUsingXPixmap):
+ (WebCore::PluginView::paint):
+
+2010-10-11 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Dirk Schulze.
+
+ SVG: Remove "create" methods and use port-specific "add" counterparts
+ https://bugs.webkit.org/show_bug.cgi?id=46052
+
+ Circles and ellipses will be significantly faster on platforms that
+ implement Path::addEllipse() in a sane fashion.
+
+ Also, a lot of Path copying has been factored out by changing functions
+ that would return Paths to take Path& arguments instead (toPathData, toClipPath)
+
+ * mathml/RenderMathMLRoot.cpp:
+ (WebCore::RenderMathMLRoot::paint):
+ * mathml/RenderMathMLSquareRoot.cpp:
+ (WebCore::RenderMathMLSquareRoot::paint):
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::addRoundedRectClip):
+ (WebCore::GraphicsContext::clipOutRoundedRect):
+ * platform/graphics/Path.cpp:
+ (WebCore::pathLengthApplierFunction):
+ (WebCore::Path::addRoundedRect):
+ * platform/graphics/Path.h:
+ * platform/graphics/cairo/ContextShadowCairo.cpp:
+ (WebCore::ContextShadow::drawRectShadowWithoutTiling):
+ (WebCore::ContextShadow::drawRectShadow):
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::drawFocusRing):
+ (WebCore::GraphicsContext::drawTiledShadow):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::fillRoundedRect):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::fillRoundedRect):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintBorder):
+ (WebCore::RenderBoxModelObject::paintBoxShadow):
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
+ * rendering/RenderSVGResourceClipper.cpp:
+ (WebCore::RenderSVGResourceClipper::pathOnlyClipping):
+ * rendering/svg/RenderSVGPath.cpp:
+ (WebCore::RenderSVGPath::layout):
+ * rendering/svg/RenderSVGTextPath.cpp:
+ (WebCore::RenderSVGTextPath::layoutPath):
+ * rendering/svg/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::paintDecorationWithStyle):
+ * svg/SVGAnimateMotionElement.cpp:
+ (WebCore::SVGAnimateMotionElement::animationPath):
+ * svg/SVGCircleElement.cpp:
+ (WebCore::SVGCircleElement::toPathData):
+ * svg/SVGCircleElement.h:
+ * svg/SVGEllipseElement.cpp:
+ (WebCore::SVGEllipseElement::toPathData):
+ * svg/SVGEllipseElement.h:
+ * svg/SVGLineElement.cpp:
+ (WebCore::SVGLineElement::toPathData):
+ * svg/SVGLineElement.h:
+ * svg/SVGPathElement.cpp:
+ (WebCore::SVGPathElement::getTotalLength):
+ (WebCore::SVGPathElement::getPointAtLength):
+ (WebCore::SVGPathElement::toPathData):
+ * svg/SVGPathElement.h:
+ * svg/SVGPolygonElement.cpp:
+ (WebCore::SVGPolygonElement::toPathData):
+ * svg/SVGPolygonElement.h:
+ * svg/SVGPolylineElement.cpp:
+ (WebCore::SVGPolylineElement::toPathData):
+ * svg/SVGPolylineElement.h:
+ * svg/SVGRectElement.cpp:
+ (WebCore::SVGRectElement::toPathData):
+ * svg/SVGRectElement.h:
+ * svg/SVGStyledTransformableElement.cpp:
+ (WebCore::SVGStyledTransformableElement::toClipPath):
+ * svg/SVGStyledTransformableElement.h:
+ (WebCore::SVGStyledTransformableElement::toPathData):
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::toClipPath):
+ * svg/SVGUseElement.h:
+
+2010-10-01 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Gavin Barraclough.
+
+ [ES5] Implement strict mode
+ https://bugs.webkit.org/show_bug.cgi?id=10701
+
+ Test: fast/js/basic-strict-mode.html
+
+ Override toStrictThisObject on the domwindow so that
+ it correctly provides the shell object when used as this
+ in a strict mode function.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::toStrictThisObject):
+ * bindings/js/JSDOMWindowBase.h:
+
+2010-10-11 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Eric Carlson.
+
+ CRASH at WebCore::HTMLSourceElement::scheduleErrorEvent
+ https://bugs.webkit.org/show_bug.cgi?id=46777
+
+ Another case that could lead to an improper set of states between
+ m_currentNode and m_loadingState. Also added an ASSERT and early
+ return to prevent crashes if this case can still happen in other ways.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::prepareForLoad):
+
+2010-10-11 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ spellcheck="false" not respected in designMode
+ https://bugs.webkit.org/show_bug.cgi?id=39978
+
+ The bug was caused by WebKit's setting focus to html element rather than body element in design mode.
+ Because we disable spell-check only if ancestor nodes of the focused element had spellcheck=false,
+ this caused us to ignore body element's spellcheck attribute.
+
+ Fixed the bug by overriding supportsFocus in HTMLBodyElement to make body element focusable
+ when the parent node of body elements (namely html element) is editable.
+
+ Test: editing/spelling/design-mode-spellcheck-off.html
+
+ * html/HTMLBodyElement.cpp:
+ (WebCore::HTMLBodyElement::supportsFocus): Added.
+ * html/HTMLBodyElement.h:
+
+2010-10-11 Oliver Hunt <oliver@apple.com>
+
+ Build fix -- I thought i had killed the prior commit in time to have this be part of the commit.
+
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::getShaderInfoLog):
+
+2010-10-11 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Andreas Kling.
+
+ Incorrect handling of 0 length logs in GraphicsContext3DOpenGL.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=47494
+
+ Working on another patch I found that there was some screwy behaviour
+ when dealing with logs from GL. GL_INFO_LOG_LENGTH is defined as being
+ zero if there is no log message, but we did not check for that case and
+ simply perfomed a zero sized alloc and passed the resultant buffer to
+ glGetShaderInfoLog, etc. glGetShaderInfoLog would then write a null
+ terminator to the buffer, thus causing an overflow. This is obviously
+ not a problem in practice as allocations are at least 4 bytes long in
+ all common allocators, but it is still a bug.
+
+ I also removed some unnecessary null checks following calls to fastMalloc.
+
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::getProgramInfoLog):
+ (WebCore::GraphicsContext3D::getShaderInfoLog):
+
+2010-10-11 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Andreas Kling.
+
+ Kill Path::debugString()
+ https://bugs.webkit.org/show_bug.cgi?id=47493
+
+ Remove the obsolete Path::debugString() method. DRT now dumps paths in a platform independant way.
+
+ * platform/graphics/Path.h:
+ * platform/graphics/cairo/PathCairo.cpp:
+ * platform/graphics/cg/PathCG.cpp:
+ * platform/graphics/haiku/PathHaiku.cpp:
+ * platform/graphics/openvg/PathOpenVG.cpp:
+ * platform/graphics/qt/PathQt.cpp:
+ * platform/graphics/skia/PathSkia.cpp:
+ * platform/graphics/wince/PathWinCE.cpp:
+ * platform/graphics/wince/PlatformPathWinCE.cpp:
+ * platform/graphics/wince/PlatformPathWinCE.h:
+ * platform/graphics/wx/PathWx.cpp:
+ * svg/SVGGlyphElement.h:
+ (WebCore::SVGGlyphIdentifier::operator==):
+
+2010-10-11 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Search field icons should be centered vertically in the field
+ https://bugs.webkit.org/show_bug.cgi?id=47441
+
+ Center search field icons vertically in the search field.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::centerRectVerticallyInParentInputElement): Added this helper.
+ (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration): Center the search
+ field icon by adjusting its drawing rect relative to the containing search field.
+ (WebCore::RenderThemeGtk::paintSearchFieldCancelButton): Ditto.
+
+2010-10-11 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: fix event listener breakpoints sidebar pane style
+ https://bugs.webkit.org/show_bug.cgi?id=47487
+
+ * inspector/front-end/inspector.css:
+ (.section .properties, .event-bar .event-properties):
+ (.section.expanded .properties, .event-bar.expanded .event-properties):
+ (.properties-tree):
+ (.properties-tree li):
+ (.properties-tree li.parent):
+ (.properties-tree li.parent::before):
+ (.properties-tree li.parent.expanded::before):
+ (.properties-tree li .info):
+ (.properties-tree ol, .stack-trace ol, ol.stack-trace):
+ (.properties-tree ol.expanded, .stack-trace ol, ol.stack-trace):
+ (ol.stack-trace):
+ (.event-listener-breakpoints .event-category):
+ (.event-listener-breakpoints.properties-tree .children li):
+ (.event-listener-breakpoints .checkbox-elem):
+ (.breakpoint-list .breakpoint-hit):
+
+2010-10-11 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Tor Arne Vestbø.
+
+ [Qt] Avoid QPainterPath::operator=(QPainterPath()) when possible
+
+ Same concept as <http://trac.webkit.org/changeset/69462>, do nothing
+ when clearing an already empty QPainterPath. Avoids one delete+new.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContextPlatformPrivate::clearCurrentPath):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::beginPath):
+
+2010-10-11 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
+
+ Unreviewed. Remove unnecessary GTK+ and Pango includes.
+
+ * platform/gtk/FileChooserGtk.cpp:
+ * platform/gtk/Language.cpp:
+
+2010-10-11 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by David Levin.
+
+ Support DirectoryEntry.removeRecursively for FileSystem API
+ https://bugs.webkit.org/show_bug.cgi?id=47400
+
+ Also disallows remove/removeRecursively on the root directory.
+
+ Test: fast/filesystem/op-remove.html
+
+ * fileapi/DOMFileSystemBase.cpp:
+ (WebCore::DOMFileSystemBase::removeRecursively): Added.
+ * fileapi/DOMFileSystemBase.h:
+ * fileapi/DirectoryEntry.cpp:
+ (WebCore::DirectoryEntry::removeRecursively): Added.
+ * fileapi/DirectoryEntry.h:
+ * fileapi/DirectoryEntry.idl:
+ * fileapi/DirectoryEntrySync.cpp:
+ (WebCore::DirectoryEntrySync::removeRecursively): Added.
+ * fileapi/DirectoryEntrySync.h:
+ * fileapi/DirectoryEntrySync.idl:
+ * platform/AsyncFileSystem.h:
+
+2010-10-11 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG feImage take preserveAspectRatio into account for absolute paint rect
+ https://bugs.webkit.org/show_bug.cgi?id=47464
+
+ Determine the smallest effect region for SVGFEImage by taking preserveAspectRatio into account.
+
+ * svg/graphics/filters/SVGFEImage.cpp:
+ (WebCore::FEImage::determineAbsolutePaintRect):
+ (WebCore::FEImage::apply):
+ * svg/graphics/filters/SVGFEImage.h:
+
+2010-10-10 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dan Bernstein.
+
+ <rdar://problem/8510200> Lines flow around a float that has been removed
+
+ Overhanging floats are not added to flexible boxes since they behave like
+ block formatting contexts. This causes the intruding floats added in siblings
+ to not get cleared. Enforce the float release by checking if the parent is a
+ flexible box and if yes, use that as the outermost block.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47104
+
+ Test: fast/flexbox/overhanging-floats-removed.html
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
+
+2010-10-10 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ AX: if aria-live is on a <span> or ignored element, live regions don't work
+ https://bugs.webkit.org/show_bug.cgi?id=47443
+
+ If an element has aria attributes, but has no other native role associated with it,
+ accessibility should fallback to exposing that element as an AXGroup.
+
+ Test: platform/mac/accessibility/live-region-on-span.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
+
+2010-10-10 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ [chromium] Clipboard no longer accepts 'text' as a synonym for 'text/plain'
+ https://bugs.webkit.org/show_bug.cgi?id=47419
+
+ This was a regression introduced in r68807. mimeTypeText had the incorrect
+ value.
+
+ Test: editing/pasteboard/dataTransfer-setData-getData.html
+
+ * platform/chromium/ClipboardMimeTypes.cpp:
+
+2010-10-09 Eric Uhrhane <ericu@chromium.org>
+
+ Reviewed by Andreas Kling.
+
+ FileWriter sends write event instead of progress event
+ https://bugs.webkit.org/show_bug.cgi?id=47454
+
+ No new tests; FileWriter tests will be added shortly, but currently
+ there's no implementation capable of running them.
+
+ * fileapi/FileWriter.cpp:
+ (WebCore::FileWriter::didWrite):
+
+2010-10-09 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Fast-path in Path::clear() for already empty paths
+ https://bugs.webkit.org/show_bug.cgi?id=47460
+
+ The only way to clear a QPainterPath is to assign QPainterPath() to it.
+ Avoid creating a temporary object etc if the path is already empty.
+
+ * platform/graphics/qt/PathQt.cpp:
+ (WebCore::Path::clear):
+
+2010-10-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Redo in ReplaceNodeWithSpanCommand is broken
+ https://bugs.webkit.org/show_bug.cgi?id=47428
+
+ The bug was caused by ReplaceNodeWithSpanCommand's inheriting from CompositeEditCommand,
+ and ReplaceNodeWithSpanCommand's not implementing doReapply. Because ReplaceNodeWithSpanCommand's doApply
+ directly modifies DOM and does not use simple edit commands while CompositeEditCommand's doReapply
+ only calls reapply of compositing simple edit commands, ReplaceNodeWithSpanCommand's doReapply was no-op.
+
+ Fixed the bug by changing the base class of ReplaceNodeWithSpanCommand to SimpleEditCommand.
+ This allows ReplaceNodeWithSpanCommand's doReapply to call its doApply, which already supports redo operation.
+
+ Test: editing/undo/replace-by-span-then-remove.html
+
+ * editing/ReplaceNodeWithSpanCommand.cpp:
+ (WebCore::ReplaceNodeWithSpanCommand::ReplaceNodeWithSpanCommand):
+ * editing/ReplaceNodeWithSpanCommand.h:
+
+2010-10-09 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Implement subregion rendering in WebView when using gtk3
+ https://bugs.webkit.org/show_bug.cgi?id=47411
+
+ * GNUmakefile.am:
+ * platform/graphics/FloatRect.h:
+ * platform/graphics/cairo/FloatRectCairo.cpp: Added.
+ (WebCore::FloatRect::FloatRect):
+ (WebCore::FloatRect::operator cairo_rectangle_t):
+
+2010-10-09 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Implement subregion rendering in WebView when using gtk3
+ https://bugs.webkit.org/show_bug.cgi?id=47411
+
+ * GNUmakefile.am:
+ * platform/graphics/FloatRect.h:
+ * platform/graphics/cairo/FloatRectCairo.cpp: Added.
+ (WebCore::FloatRect::FloatRect):
+ (WebCore::FloatRect::operator cairo_rectangle_t):
+
+2010-10-09 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Andreas Kling.
+
+ Add ENABLE(ACCELERATED_2D_CANVAS) guard for m_uploadTexture
+ https://bugs.webkit.org/show_bug.cgi?id=47114
+
+ PlatformContextSkia's m_uploadTexture is used only in code guarded with ENABLE(ACCELERATED_2D_CANVAS).
+
+ * platform/graphics/skia/PlatformContextSkia.h:
+
+2010-10-09 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Use WTF::StringHasher for hashing MappedAttributeKey
+ https://bugs.webkit.org/show_bug.cgi?id=46516
+
+ * dom/StyledElement.cpp:
+ (WebCore::MappedAttributeHash::hash):
+
+2010-10-09 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [Gtk] Non-rectangular buttons have a square background behind them
+ https://bugs.webkit.org/show_bug.cgi?id=23569
+
+ Remove some code which was clearing pieces of the GdkDrawable if it was
+ currently mapped to a window. In our case it is unnecessary, because the
+ platform-independent parts of the render have already cleared this section
+ if it is needed.
+
+ Mozilla must not trip this code path, which means they are probably rendering
+ most often to a non-mapped GdkPixmap.
+
+ No new tests as some themed rendering is covered by existing tests that
+ render buttons. This particular bug is very hard to test as it only appears
+ with certain GTK+ themes and we currently have no mechanism to test different
+ themes in DRT.
+
+ * platform/gtk/gtk2drawing.c:
+ (moz_gtk_button_paint): Remove unnecessary code.
+
+2010-10-09 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Slider padding translate into a larger track rect
+ https://bugs.webkit.org/show_bug.cgi?id=47435
+
+ Instead of painting the track rectangle for ranges onto the entire RenderBox
+ rectangle, simply paint it on the content rectangle. This prevents misrendering
+ sliders with padding.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::paintSliderTrack): Paint onto the absoluteContentRect
+ of the slider instead of the entire area (which includes padding).
+
+2010-10-09 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, trivial regression fix for r69445.
+
+ RangeInputType::supportsRequired() should return false.
+ https://bugs.webkit.org/show_bug.cgi?id=47405
+
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::supportsRequired):
+ * html/RangeInputType.h:
+
+2010-10-09 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Refactor HTMLInputElement: Move typeMismatch(), valueMissing(),
+ isRequiredFormControl(), and recalcWillValidate()
+ https://bugs.webkit.org/show_bug.cgi?id=47405
+
+ Also make checkedRadioButtons() an inline member function of
+ HTMLInputElement in order that RadioInputType can use it.
+
+ * html/BaseDateAndTimeInputType.cpp:
+ (WebCore::BaseDateAndTimeInputType::typeMismatchFor):
+ (WebCore::BaseDateAndTimeInputType::typeMismatch):
+ * html/BaseDateAndTimeInputType.h:
+ * html/ButtonInputType.cpp:
+ (WebCore::ButtonInputType::supportsValidation):
+ * html/ButtonInputType.h:
+ * html/CheckboxInputType.cpp:
+ (WebCore::CheckboxInputType::valueMissing):
+ * html/CheckboxInputType.h:
+ * html/ColorInputType.cpp:
+ (WebCore::isValidColorString):
+ (WebCore::ColorInputType::typeMismatchFor):
+ (WebCore::ColorInputType::typeMismatch):
+ (WebCore::ColorInputType::supportsRequired):
+ * html/ColorInputType.h:
+ * html/EmailInputType.cpp:
+ (WebCore::isValidEmailAddress):
+ (WebCore::EmailInputType::typeMismatchFor):
+ (WebCore::EmailInputType::typeMismatch):
+ * html/EmailInputType.h:
+ * html/FileInputType.cpp:
+ (WebCore::FileInputType::valueMissing):
+ * html/FileInputType.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::updateCheckedRadioButtons):
+ (WebCore::HTMLInputElement::isValidValue):
+ (WebCore::HTMLInputElement::typeMismatch):
+ (WebCore::HTMLInputElement::valueMissing):
+ (WebCore::HTMLInputElement::isKeyboardFocusable):
+ (WebCore::HTMLInputElement::updateType):
+ (WebCore::HTMLInputElement::parseMappedAttribute):
+ (WebCore::HTMLInputElement::setChecked):
+ (WebCore::HTMLInputElement::preDispatchEventHandler):
+ (WebCore::HTMLInputElement::isRequiredFormControl):
+ (WebCore::HTMLInputElement::recalcWillValidate):
+ * html/HTMLInputElement.h:
+ (WebCore::HTMLInputElement::checkedRadioButtons):
+ * html/HiddenInputType.cpp:
+ (WebCore::HiddenInputType::supportsValidation):
+ * html/HiddenInputType.h:
+ * html/ImageInputType.cpp:
+ (WebCore::ImageInputType::supportsValidation):
+ * html/ImageInputType.h:
+ * html/InputType.cpp:
+ (WebCore::InputType::supportsValidation):
+ (WebCore::InputType::typeMismatchFor):
+ (WebCore::InputType::typeMismatch):
+ (WebCore::InputType::supportsRequired):
+ (WebCore::InputType::valueMissing):
+ * html/InputType.h:
+ * html/IsIndexInputType.cpp:
+ (WebCore::IsIndexInputType::supportsRequired):
+ * html/IsIndexInputType.h:
+ * html/NumberInputType.cpp:
+ (WebCore::NumberInputType::typeMismatchFor):
+ (WebCore::NumberInputType::typeMismatch):
+ * html/NumberInputType.h:
+ * html/RadioInputType.cpp:
+ (WebCore::RadioInputType::valueMissing):
+ * html/RadioInputType.h:
+ * html/ResetInputType.cpp:
+ (WebCore::ResetInputType::supportsValidation):
+ * html/ResetInputType.h:
+ * html/SubmitInputType.cpp:
+ (WebCore::SubmitInputType::supportsValidation):
+ * html/SubmitInputType.h:
+ * html/TextFieldInputType.cpp:
+ (WebCore::TextFieldInputType::valueMissing):
+ * html/TextFieldInputType.h:
+ * html/URLInputType.cpp:
+ (WebCore::URLInputType::typeMismatchFor):
+ (WebCore::URLInputType::typeMismatch):
+ * html/URLInputType.h:
+ * html/ValidityState.cpp:
+ (WebCore::ValidityState::typeMismatch):
+
+2010-10-09 Pratik Solanki <psolanki@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47450
+ Crash in WebCore::SocketStreamHandle::chooseProxyFromArray because proxyArray passed is nil
+ <rdar://problem/8244376>
+
+ * platform/network/cf/SocketStreamHandleCFNet.cpp:
+ (WebCore::SocketStreamHandle::chooseProxyFromArray): If proxyArray is
+ NULL, return early to avoid crash.
+
+2010-10-08 Chris Rogers <crogers@google.com>
+
+ Reviewed by James Robinson.
+
+ Add HRTFPanner files
+ https://bugs.webkit.org/show_bug.cgi?id=46299
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/HRTFPanner.cpp: Added.
+ (WebCore::HRTFPanner::HRTFPanner):
+ (WebCore::HRTFPanner::~HRTFPanner):
+ (WebCore::HRTFPanner::fftSizeForSampleRate):
+ (WebCore::HRTFPanner::reset):
+ (WebCore::wrapDistance):
+ (WebCore::HRTFPanner::calculateDesiredAzimuthIndexAndBlend):
+ (WebCore::HRTFPanner::pan):
+ * platform/audio/HRTFPanner.h: Added.
+ (WebCore::HRTFPanner::fftSize):
+ (WebCore::HRTFPanner::sampleRate):
+
+2010-10-08 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Avoid inlining large and/or virtual functions in widely included header files
+ https://bugs.webkit.org/show_bug.cgi?id=47230
+
+ Functions with very large bodies should not be included in widely included header files.
+ This results in the function's code ending up included in hundreds of object files that
+ the linker has to discard, at a cost of linker memory use, link time, and disk space. This
+ is a particular problem in the Chromium windows build where MSVC often exhausts its 32-bit
+ virtual address space and completely fails to link.
+
+ This patch moves function definitions from the .h to the corresponding .cpp when the function
+ is large and not a candidate for inlining either because it is virtual or because its size is
+ above any reasonable compiler's threshhold for inlining. The most common case by far in this
+ patch is changing a class' implicitly defined destructor to an explicitly declared d'tor in
+ the header and an explicitly defined d'tor in the .cpp. This is important since many of our
+ container and utility classes (especially Vector, String, and HashSet) have quite large
+ destructors.
+
+ This patch removes 22.4MB of object file size in a debug 64 bit compile.
+
+ * css/CSSBorderImageValue.cpp:
+ (WebCore::CSSBorderImageValue::~CSSBorderImageValue):
+ * css/CSSBorderImageValue.h:
+ * css/CSSFontFaceSrcValue.cpp:
+ (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue):
+ * css/CSSFontFaceSrcValue.h:
+ * css/CSSFunctionValue.h:
+ * dom/BeforeTextInsertedEvent.cpp:
+ (WebCore::BeforeTextInsertedEvent::~BeforeTextInsertedEvent):
+ * dom/BeforeTextInsertedEvent.h:
+ * dom/BeforeUnloadEvent.cpp:
+ (WebCore::BeforeUnloadEvent::~BeforeUnloadEvent):
+ * dom/BeforeUnloadEvent.h:
+ * dom/ClassNodeList.h:
+ * dom/ClipboardEvent.cpp:
+ (WebCore::ClipboardEvent::~ClipboardEvent):
+ * dom/ClipboardEvent.h:
+ * dom/CustomEvent.cpp:
+ (WebCore::CustomEvent::~CustomEvent):
+ * dom/CustomEvent.h:
+ * dom/Element.cpp:
+ * dom/Element.h:
+ * dom/EventTarget.cpp:
+ (WebCore::EventTargetData::EventTargetData):
+ * dom/EventTarget.h:
+ * dom/InputElement.cpp:
+ (WebCore::InputElementData::~InputElementData):
+ * dom/InputElement.h:
+ * dom/MutationEvent.cpp:
+ (WebCore::MutationEvent::~MutationEvent):
+ * dom/MutationEvent.h:
+ * dom/Node.cpp:
+ (WebCore::Node::refEventTarget):
+ (WebCore::Node::derefEventTarget):
+ * dom/Node.h:
+ * dom/OptionElement.cpp:
+ (WebCore::OptionElementData::~OptionElementData):
+ * dom/OptionElement.h:
+ * dom/PopStateEvent.cpp:
+ (WebCore::PopStateEvent::~PopStateEvent):
+ * dom/PopStateEvent.h:
+ * dom/QualifiedName.cpp:
+ (WebCore::QualifiedName::~QualifiedName):
+ * dom/QualifiedName.h:
+ * dom/SelectElement.cpp:
+ (WebCore::SelectElementData::~SelectElementData):
+ * dom/SelectElement.h:
+ * dom/StaticHashSetNodeList.cpp:
+ (WebCore::StaticHashSetNodeList::StaticHashSetNodeList):
+ (WebCore::StaticHashSetNodeList::~StaticHashSetNodeList):
+ * dom/StaticHashSetNodeList.h:
+ * dom/StyleElement.cpp:
+ (WebCore::StyleElement::~StyleElement):
+ * dom/StyleElement.h:
+ * dom/TouchEvent.cpp:
+ (WebCore::TouchEvent::TouchEvent):
+ (WebCore::TouchEvent::~TouchEvent):
+ * dom/TouchEvent.h:
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::~CompositeEditCommand):
+ * editing/CompositeEditCommand.h:
+ * editing/TextIterator.cpp:
+ (WebCore::BitStack::~BitStack):
+ (WebCore::TextIterator::~TextIterator):
+ (WebCore::WordAwareIterator::~WordAwareIterator):
+ * editing/TextIterator.h:
+ * inspector/InspectorValues.cpp:
+ (WebCore::InspectorObject::~InspectorObject):
+ (WebCore::InspectorObject::InspectorObject):
+ (WebCore::InspectorArray::~InspectorArray):
+ (WebCore::InspectorArray::InspectorArray):
+ * inspector/InspectorValues.h:
+ * loader/CachedResource.cpp:
+ (WebCore::CachedResource::registerHandle):
+ (WebCore::CachedResource::unregisterHandle):
+ * loader/CachedResource.h:
+ * platform/network/HTTPHeaderMap.cpp:
+ (WebCore::HTTPHeaderMap::HTTPHeaderMap):
+ (WebCore::HTTPHeaderMap::~HTTPHeaderMap):
+ (WebCore::HTTPHeaderMap::get):
+ (WebCore::HTTPHeaderMap::add):
+ * platform/network/HTTPHeaderMap.h:
+ * rendering/RenderApplet.cpp:
+ (WebCore::RenderApplet::~RenderApplet):
+ * rendering/RenderApplet.h:
+ * rendering/RenderButton.cpp:
+ (WebCore::RenderButton::~RenderButton):
+ * rendering/RenderButton.h:
+ * rendering/RenderCounter.cpp:
+ (WebCore::RenderCounter::~RenderCounter):
+ * rendering/RenderCounter.h:
+ * rendering/RenderFieldset.h:
+ * rendering/RenderForeignObject.cpp:
+ (WebCore::RenderForeignObject::~RenderForeignObject):
+ * rendering/RenderForeignObject.h:
+ * rendering/RenderFrame.h:
+ * rendering/RenderFrameBase.h:
+ * rendering/RenderHTMLCanvas.h:
+ * rendering/RenderIFrame.h:
+ * rendering/RenderInline.h:
+ * rendering/RenderListItem.h:
+ * rendering/RenderMarquee.cpp:
+ (WebCore::RenderMarquee::~RenderMarquee):
+ * rendering/RenderMarquee.h:
+ * rendering/RenderPath.cpp:
+ (WebCore::RenderPath::~RenderPath):
+ * rendering/RenderPath.h:
+ * rendering/RenderSVGBlock.h:
+ * rendering/RenderSVGContainer.cpp:
+ (WebCore::RenderSVGContainer::~RenderSVGContainer):
+ * rendering/RenderSVGContainer.h:
+ * rendering/RenderSVGHiddenContainer.h:
+ * rendering/RenderSVGInline.h:
+ * rendering/RenderSVGInlineText.cpp:
+ (WebCore::RenderSVGInlineText::~RenderSVGInlineText):
+ * rendering/RenderSVGInlineText.h:
+ * rendering/RenderSVGModelObject.h:
+ * rendering/RenderSVGResourceFilterPrimitive.h:
+ * rendering/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::~RenderSVGRoot):
+ * rendering/RenderSVGRoot.h:
+ * rendering/RenderSVGTSpan.h:
+ * rendering/RenderSVGText.h:
+ * rendering/RenderSVGTextPath.h:
+ * rendering/RenderSVGTransformableContainer.h:
+ * rendering/RenderSVGViewportContainer.h:
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::~RenderTable):
+ * rendering/RenderTable.h:
+ * rendering/RenderTableCell.h:
+ * rendering/RenderTableCol.h:
+ * rendering/RenderTableRow.h:
+ * rendering/RenderTextFragment.cpp:
+ (WebCore::RenderTextFragment::~RenderTextFragment):
+ * rendering/RenderTextFragment.h:
+ * rendering/RenderWordBreak.h:
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::~SVGStyledElement):
+ * svg/SVGStyledElement.h:
+ * svg/SVGStyledTransformableElement.cpp:
+ (WebCore::SVGStyledTransformableElement::~SVGStyledTransformableElement):
+ * svg/SVGStyledTransformableElement.h:
+ * xml/XPathParser.cpp:
+ (WebCore::XPath::Parser::~Parser):
+ * xml/XPathParser.h:
+
+2010-10-08 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Daniel Bates.
+
+ [GTK] Fails /LayoutTests/fast/css/button-height.html
+ https://bugs.webkit.org/show_bug.cgi?id=33936
+
+ GTK buttons honor height property set via CSS. The code for the method
+ adjustButtonStyle originates from the original GTK+ theme drawing code
+ and is clearly just a copy-paste from the Safari theme drawing code. The
+ Safari theme drawing code does quite a bit of work to ensure that button
+ fonts are consistent with the system theme, which is not something the GTK+
+ port does.
+
+ This change brings the method more in line with the Chromium port, which
+ allows CSS to style buttons, only overriding the line-height property,
+ which is required for layout tests to pass.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::adjustButtonStyle): No longer override most CSS
+ properties for button styling.
+
+2010-10-08 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ popstate events are lost when network connection is in progress
+ https://bugs.webkit.org/show_bug.cgi?id=42940
+
+ Instead of checking FrameLoader::isComplete() (which isn't true if the
+ document's resource loader has requests outstanding), check that the
+ document's readyState is complete, as the spec says.
+
+ Test: http/tests/history/popstate-fires-with-pending-requests.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::statePopped):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::didBeginDocument): Added call to set readyState
+ to Loading earlier. Otherwise, readyState's initial value is Complete,
+ and we only set it to Loading in Document::implicitOpen (which is called
+ after FrameLoader::didBeginDocument by DocumentWriter::begin), so we
+ could end up in Document::statePopped and have the readyState be
+ Complete, even if we hadn't even begin loading the document.
+
+2010-10-08 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [chromium] Update ReadableDataObject/WritableDataObject interface for ChromiumDataObject change
+ https://bugs.webkit.org/show_bug.cgi?id=47394
+
+ Minor cleanup--these classes have suffered from bit rot since they aren't
+ actively used at the moment. The three main changes are to:
+ 1) Condense getURL, setURL, getHTML, setHTML, urlTitle, htmlBaseUrl,
+ setUrlTitle, and sethtmlBaseUrl into setters/getters for just the URL
+ title and HTML base URL.
+ 2) Use Clipboard::ClipboardType instead of a bool.
+ 3) Remove the use of virtuals, as they are no longer needed..
+
+ * platform/chromium/ReadableDataObject.cpp:
+ (WebCore::clipboardBuffer):
+ (WebCore::ReadableDataObject::create):
+ (WebCore::ReadableDataObject::ReadableDataObject):
+ (WebCore::ReadableDataObject::getData):
+ (WebCore::ReadableDataObject::urlTitle): renamed from getURL
+ (WebCore::ReadableDataObject::htmlBaseUrl): renamed from getHTML
+ (WebCore::ReadableDataObject::containsFilenames):
+ (WebCore::ReadableDataObject::filenames):
+ (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
+ * platform/chromium/ReadableDataObject.h:
+ * platform/chromium/WritableDataObject.cpp:
+ (WebCore::WritableDataObject::create):
+ (WebCore::WritableDataObject::WritableDataObject):
+ (WebCore::WritableDataObject::setData):
+ * platform/chromium/WritableDataObject.h:
+ (WebCore::WritableDataObject::setUrlTitle): renamed from setURL
+ (WebCore::WritableDataObject::setHtmlBaseUrl): renamed from setHTML
+ (WebCore::WritableDataObject::dataMap):
+ (WebCore::WritableDataObject::urlTitle):
+ (WebCore::WritableDataObject::htmlBaseURL):
+ (WebCore::WritableDataObject::fileExtension):
+ (WebCore::WritableDataObject::fileContentFilename):
+ (WebCore::WritableDataObject::fileContent):
+ (WebCore::WritableDataObject::setFileExtension):
+ (WebCore::WritableDataObject::setFileContentFilename):
+ (WebCore::WritableDataObject::setFileContent):
+
+2010-10-08 Abhishek Arya <inferno@chromium.org>
+
+ Unreviewed, rolling out r69360.
+ http://trac.webkit.org/changeset/69360
+ https://bugs.webkit.org/show_bug.cgi?id=46921
+
+ Test still crashing on chromium test_shell
+
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::renderFallbackContent):
+
+2010-10-08 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r68574.
+ http://trac.webkit.org/changeset/68574
+ https://bugs.webkit.org/show_bug.cgi?id=47433
+
+ [chromium] Breaks partial repaint of images while scrolling
+ (Requested by jamesr on #webkit).
+
+ * platform/graphics/skia/ImageSkia.cpp:
+ (WebCore::computeResamplingMode):
+ (WebCore::drawResampledBitmap):
+
+2010-10-08 Andy Estes <aestes@apple.com>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (r66223): Crash when using CSS content and -webkit-mask-box-image properties containing cached images.
+ https://bugs.webkit.org/show_bug.cgi?id=47430
+
+ Test: fast/replaced/css-content-and-webkit-mask-box-image-crash.html
+
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::imageChanged): imageChanged() can be called prior
+ to m_imageResource being set. The appropriate thing to do in this case
+ is to return early.
+ (WebCore::RenderImage::notifyFinished): Ditto.
+
+2010-10-08 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB does not have a quota mechanism.
+ https://bugs.webkit.org/show_bug.cgi?id=47389
+
+ Test: storage/indexeddb/database-quota.html
+
+ Add a simple mechanism for enforcing a maximum size
+ for each origin using IndexedDB. Note that this depends
+ on having one SQLite database file per origin, which is
+ addressed in a separate patch.
+
+ * page/GroupSettings.cpp:
+ (WebCore::GroupSettings::GroupSettings):
+ (WebCore::GroupSettings::setIndexedDBQuotaBytes):
+ * page/GroupSettings.h:
+ (WebCore::GroupSettings::indexedDBQuotaBytes):
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::createObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
+ (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
+ * storage/IDBFactory.cpp:
+ (WebCore::IDBFactory::open):
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::openSQLiteDatabase):
+ (WebCore::IDBFactoryBackendImpl::open):
+ * storage/IDBFactoryBackendImpl.h:
+ * storage/IDBFactoryBackendInterface.h:
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::putObjectStoreData):
+ (WebCore::putIndexData):
+ (WebCore::IDBObjectStoreBackendImpl::put):
+ (WebCore::IDBObjectStoreBackendImpl::putInternal):
+ (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
+ * storage/IDBObjectStoreBackendImpl.h:
+
+2010-10-08 Gavin Peters <gavinp@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Output X-Purpose header for prefetch requests
+ https://bugs.webkit.org/show_bug.cgi?id=46529
+
+ Test: http/tests/misc/prefetch-purpose.html
+
+ * loader/loader.cpp:
+ (WebCore::Loader::Host::servePendingRequests):
+
+2010-10-08 James Kozianski <koz@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Crash on reload when CSS property 'content' has malformed URL.
+ https://bugs.webkit.org/show_bug.cgi?id=47322
+
+ Make CSSStyleSelector handle the case where a cached image can't be
+ produced due to a malformed URL.
+
+ Test: fast/css-generated-content/malformed-url.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::loadPendingImages):
+
+2010-10-08 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG feImage needs absolute subregion for preserveAspectRatio
+ https://bugs.webkit.org/show_bug.cgi?id=47409
+
+ PreserverAspectRatio needs the subregion in absolute coordinates to determine
+ the destination position and size of the input image. The maxEffectRect() already
+ stores the absolute subregion, but clipped to the filter region.
+
+ Test: svg/W3C-SVG-1.1se/filters-image-03-f.svg
+
+ * platform/graphics/filters/FETile.cpp:
+ (WebCore::FETile::apply):
+ * platform/graphics/filters/FilterEffect.h: Added enum to differentate sourece inputs, feTile and feImage.
+ (WebCore::FilterEffect::filterEffectType):
+ * platform/graphics/filters/SourceAlpha.h: Make use of the new enum in FilterEffect
+ (WebCore::SourceAlpha::filterEffectType):
+ * platform/graphics/filters/SourceGraphic.h: Ditto.
+ (WebCore::SourceGraphic::filterEffectType):
+ * svg/graphics/filters/SVGFEImage.cpp: Take the absolute subregion to determine the destination rect for input image.
+ (WebCore::FEImage::apply):
+ * svg/graphics/filters/SVGFEImage.h: Ditto.
+ (WebCore::FEImage::setAbsoluteSubregion):
+ (WebCore::FEImage::filterEffectType):
+ * svg/graphics/filters/SVGFilter.cpp: Give over subregion in absolute coordinates to feImage. Just feImage makes use of it.
+ (WebCore::SVGFilter::determineFilterPrimitiveSubregion):
+
+2010-10-08 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ gradient stroke on lines does not work
+ https://bugs.webkit.org/show_bug.cgi?id=40985
+
+ Correct handling of invalid fill/stroke paint servers / colors according to SVG 1.1 2nd Edition.
+ Perfectly matches Opera, and now lets us pass three of the new tests.
+
+ Fix incorrect svg/custom/invalid-fill* tests:
+ -> If there's an invalid fill URI, but no fallback specified, it is as if fill="black" was specified. (invalid-fill.svg)
+ -> If there's an invalid fill color, but no fallback specified, it is as if fill="none" was specified. (invalid-fill-hex.svg)
+
+ Needed to refactor some of the gradient/pattern code to properly handle fallback paint servers.
+ As side effect, we're allowing gradients with gradientUnits="userSpaceOnUse" to apply on 1d objects (lines) again, per SVG 1.1 2nd edition.
+
+ Tests: svg/W3C-SVG-1.1-SE/pservers-pattern-03-f.svg
+ svg/W3C-SVG-1.1-SE/pservers-grad-17-b.svg
+ svg/W3C-SVG-1.1-SE/pservers-grad-20-b.svg
+
+ * rendering/RenderSVGResource.cpp: Rewrite fill/stroke paint resource requests, share all code between the similar functions.
+ (WebCore::requestPaintingResource):
+ (WebCore::RenderSVGResource::fillPaintingResource):
+ (WebCore::RenderSVGResource::strokePaintingResource):
+ * rendering/RenderSVGResource.h:
+ * rendering/RenderSVGResourceGradient.cpp: Split collecting gradient properties from building the gradient. We don't need to build it, if it's not applyable (eg. on 1d lines).
+ (WebCore::RenderSVGResourceGradient::RenderSVGResourceGradient):
+ (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache):
+ (WebCore::clipToTextMask):
+ (WebCore::RenderSVGResourceGradient::applyResource):
+ * rendering/RenderSVGResourceGradient.h: Stop storing boundingBoxMode & gradientTransform in each GradientData object, it's enough to just store it in the gradient resource, once.
+ * rendering/RenderSVGResourceLinearGradient.cpp:
+ (WebCore::RenderSVGResourceLinearGradient::collectGradientAttributes): Splitted from buildGradient.
+ (WebCore::RenderSVGResourceLinearGradient::buildGradient):
+ * rendering/RenderSVGResourceLinearGradient.h:
+ (WebCore::RenderSVGResourceLinearGradient::boundingBoxMode): Return bounding box mode information, from m_attributes instead of storing in gradientData.
+ (WebCore::RenderSVGResourceLinearGradient::calculateGradientTransform): Ditto.
+ * rendering/RenderSVGResourcePattern.cpp: Split collecting pattern properties from building the pattern. We don't need to build it, if it's not applyable (eg. on 1d lines).
+ (WebCore::RenderSVGResourcePattern::RenderSVGResourcePattern):
+ (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache):
+ (WebCore::RenderSVGResourcePattern::applyResource):
+ (WebCore::RenderSVGResourcePattern::buildTileImageTransform):
+ * rendering/RenderSVGResourcePattern.h:
+ * rendering/RenderSVGResourceRadialGradient.cpp:
+ (WebCore::RenderSVGResourceRadialGradient::collectGradientAttributes):
+ (WebCore::RenderSVGResourceRadialGradient::buildGradient):
+ * rendering/RenderSVGResourceRadialGradient.h:
+ (WebCore::RenderSVGResourceRadialGradient::boundingBoxMode):
+ (WebCore::RenderSVGResourceRadialGradient::calculateGradientTransform):
+ * rendering/SVGRenderTreeAsText.cpp: Adapt to change, that fill/strokePaintingResource now take a Color& fallbackColor parameter.
+ (WebCore::writeStyle):
+ (WebCore::writeSVGResourceContainer):
+ * rendering/svg/RenderSVGPath.cpp:
+ (WebCore::RenderSVGPath::fillContains): Ditto.
+ (WebCore::RenderSVGPath::strokeContains): Ditto.
+ (WebCore::RenderSVGPath::fillAndStrokePath): Properly handle fallback color, if an existing (!) paint server failed to apply.
+ * rendering/svg/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::acquirePaintingResource): Ditto.
+ * svg/SVGLinearGradientElement.cpp:
+ (WebCore::SVGLinearGradientElement::collectGradientAttributes): Pass LinearGradientAttributes by reference, instead of returning a copy.
+ * svg/SVGLinearGradientElement.h: Rename collectGradientProperties to collectGradientAttributes.
+ * svg/SVGPatternElement.cpp:
+ (WebCore::SVGPatternElement::collectPatternAttributes): Pass PatternAttributes by reference, instead of returning.
+ * svg/SVGPatternElement.h: Rename collectPatternProperties to collectPatternAttributes.
+ * svg/SVGRadialGradientElement.cpp:
+ (WebCore::SVGRadialGradientElement::collectGradientAttributes): Pass RadialGradientAttributes by reference, instead of returning a copy.
+ * svg/SVGRadialGradientElement.h: Rename collectGradientProperties to collectGradientAttributes.
+
+2010-10-08 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Slider widgets looks bad on Mac
+ https://bugs.webkit.org/show_bug.cgi?id=47421
+
+ This patch change the rendering of the slider to only have the
+ subcontrols that would be defined by default on a QSlider.
+
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::paintSliderTrack):
+
+2010-10-08 Renata Hodovan <reni@inf.u-szeged.hu>
+
+ Reviewed by Andreas Kling.
+
+ SVGFEColorMatrixElement doesn't support dynamic invalidation, when attributes change.
+ https://bugs.webkit.org/show_bug.cgi?id=47342
+
+ The dynamic changes are captured by the svgAttributeChange function, and invalidate the filter primitive if necessary.
+
+ Tests: svg/dynamic-updates/SVGFEColorMatrixElement-dom-in-attr.html
+ svg/dynamic-updates/SVGFEColorMatrixElement-dom-type-attr.html
+ svg/dynamic-updates/SVGFEColorMatrixElement-dom-values-attr.html
+ svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-in-prop.html
+ svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-type-prop.html
+ svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-values-prop.html
+
+ * svg/SVGFEColorMatrixElement.cpp:
+ (WebCore::SVGFEColorMatrixElement::svgAttributeChanged):
+ * svg/SVGFEColorMatrixElement.h:
+
+2010-10-08 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: save InspectorController in instrumentation cookie
+ https://bugs.webkit.org/show_bug.cgi?id=47406
+
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::evaluate):
+ (WebCore::V8Proxy::callFunction):
+ * dom/Document.cpp:
+ (WebCore::Document::recalcStyle):
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchGenericEvent):
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ * inspector/InspectorInstrumentation.cpp:
+ * inspector/InspectorInstrumentation.h:
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::didReceiveResponse):
+ (WebCore::ResourceLoader::didReceiveData):
+ * page/DOMTimer.cpp:
+ (WebCore::DOMTimer::fired):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::dispatchEvent):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::layout):
+ (WebCore::FrameView::paintContents):
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::paintContents):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::callReadyStateChangeListener):
+
+2010-10-08 Adam Roben <aroben@apple.com>
+
+ Windows Release build fix for 32-bit systems
+
+ WebCore had once again grown too large for the linker's virtual
+ address space on 32-bit systems. I combined WebCore/rendering,
+ WebCore/rendering/style, and WebCore/dom into new *AllInOne.cpp files,
+ and added a few more files to RenderSVGAllInOne.cpp.
+
+ Fixes <http://webkit.org/b/47417> <rdar://problem/8529362>
+
+ * WebCore.vcproj/WebCore.vcproj: Added new *AllInOne.cpp files and
+ excluded the individual files they contain from the build.
+
+ * rendering/RenderSVGAllInOne.cpp: Added a few more files to this.
+
+ * dom/DOMAllInOne.cpp: Added.
+ * rendering/RenderingAllInOne.cpp: Added.
+ * rendering/style/StyleAllInOne.cpp: Added.
+
+2010-10-08 Girish Ramakrishnan <girish@forwardbias.in>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Use constBegin and constEnd when using const iterators
+
+ * platform/graphics/qt/GraphicsLayerQt.cpp:
+ (WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl):
+ (WebCore::GraphicsLayerQtImpl::updateTransform):
+ (WebCore::GraphicsLayerQtImpl::flushChanges):
+
+2010-10-07 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: add resource viewer to the network panel.
+ https://bugs.webkit.org/show_bug.cgi?id=47346
+
+ * inspector/front-end/DataGrid.js:
+ (WebInspector.DataGrid):
+ (WebInspector.DataGrid.prototype.autoSizeColumns):
+ (WebInspector.DataGrid.prototype.updateWidths):
+ (WebInspector.DataGrid.prototype.columnWidthsMap):
+ (WebInspector.DataGrid.prototype.applyColumnWidthsMap):
+ (WebInspector.DataGrid.prototype.isColumnVisible):
+ (WebInspector.DataGrid.prototype.showColumn):
+ (WebInspector.DataGrid.prototype.hideColumn):
+ (WebInspector.DataGrid.prototype._positionResizers):
+ (WebInspector.DataGrid.prototype._resizerDragging):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel):
+ (WebInspector.NetworkPanel.prototype.updateSidebarWidth):
+ (WebInspector.NetworkPanel.prototype.updateMainViewWidth):
+ (WebInspector.NetworkPanel.prototype.handleShortcut):
+ (WebInspector.NetworkPanel.prototype._createTable):
+ (WebInspector.NetworkPanel.prototype._sortItems):
+ (WebInspector.NetworkPanel.prototype._sortByTimeline):
+ (WebInspector.NetworkPanel.prototype._createSummaryBar):
+ (WebInspector.NetworkPanel.prototype._updateDividersIfNeeded):
+ (WebInspector.NetworkPanel.prototype.hide):
+ (WebInspector.NetworkPanel.prototype.get searchableViews):
+ (WebInspector.NetworkPanel.prototype.refresh):
+ (WebInspector.NetworkPanel.prototype.reset):
+ (WebInspector.NetworkPanel.prototype.refreshResource):
+ (WebInspector.NetworkPanel.prototype.canShowSourceLine):
+ (WebInspector.NetworkPanel.prototype.showSourceLine):
+ (WebInspector.NetworkPanel.prototype._showResource):
+ (WebInspector.NetworkPanel.prototype._closeVisibleResource):
+ (WebInspector.NetworkPanel.prototype._resourceViewForResource):
+ (WebInspector.NetworkPanel.prototype._resourceViewTypeMatchesResource):
+ (WebInspector.NetworkPanel.prototype._toggleGridMode):
+ (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
+ (WebInspector.NetworkDataGridNode):
+ (WebInspector.NetworkDataGridNode.prototype.select):
+ (WebInspector.NetworkDataGridNode.prototype._createTimelineCell):
+ * inspector/front-end/networkPanel.css:
+ (#network-container):
+ (#network-views):
+ (.network.panel .data-grid.full-grid-mode .viewer-column):
+ (.network.panel .data-grid.brief-grid-mode .time-column):
+ (.network.panel.viewing-resource .network-timeline-grid):
+ (.network.panel .data-grid.viewing-resource-mode .timeline-column):
+ (.network.panel .network-sidebar):
+ (.network.panel:not(.viewing-resource) .sidebar-resizer-vertical):
+ (.network.panel.viewing-resource .data-grid-resizer):
+ (.network.panel .scope-bar):
+ (.network.panel .resource-view.headers-visible .resource-view-content):
+ (.network.panel:not(.viewing-resource) .data-grid tr.selected):
+
+2010-10-08 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGTextLayoutAttributesBuilder: "XValue" and "YValue" clash with X11 macros
+ https://bugs.webkit.org/show_bug.cgi?id=47180
+
+ Rename *Value to *ValueAttribute
+
+ * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
+ (WebCore::SVGTextLayoutAttributesBuilder::nextLayoutValue):
+ (WebCore::SVGTextLayoutAttributesBuilder::assignLayoutAttributesForCharacter):
+ * rendering/svg/SVGTextLayoutAttributesBuilder.h:
+
+2010-10-08 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Don't use -whole-archive to link-in libWebKit2.a except for libQtWebKit.so
+ https://bugs.webkit.org/show_bug.cgi?id=47347
+
+ * WebCore.pro:
+
+2010-10-08 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [EFL] Implement IntRectEfl.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=47403
+
+ Implement IntRect for Efl Port using Eina_Rectangle.
+
+ * platform/graphics/IntRect.h:
+ * platform/graphics/efl/IntRectEfl.cpp:
+ (WebCore::IntRect::IntRect):
+ (WebCore::IntRect::operator Eina_Rectangle):
+
+2010-10-08 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG: Make RenderPath DRT output platform-independent
+ https://bugs.webkit.org/show_bug.cgi?id=46051
+
+ Move away from using the port-specific Path::debugString() to dump
+ RenderPath objects. This shrinks the DRT output delta between platforms
+ and makes it more readable as we now dump only the relevant,
+ element-specific properties of each object.
+
+ * rendering/SVGRenderTreeAsText.cpp:
+ (WebCore::operator<<):
+ Generate DRT output for RenderPaths in a platform-independent manner,
+ dumping the relevant element properties.
+
+2010-10-08 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by David Levin.
+
+ Fix FileSystem path validation order to normalize '..' and '.' before restriction checks
+ https://bugs.webkit.org/show_bug.cgi?id=47309
+
+ Test: fast/filesystem/op-get-entry.html
+
+ * fileapi/DOMFileSystemBase.cpp:
+ (WebCore::DOMFileSystemBase::getFile): Fixed the path validation order.
+ (WebCore::DOMFileSystemBase::getDirectory): Fixed the path validation order.
+
+2010-10-08 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Port GTK+ theming code to GTK+ 3.x APIs
+ https://bugs.webkit.org/show_bug.cgi?id=47398
+
+ Create a new gtk3drawing file for the widget drawing primitives in
+ WebKit, using the GTK+ 3.x APIs. It's very similar to the GTK+ 2.x
+ code at the moment, but we'll evolve it incrementally from here.
+
+ * GNUmakefile.am:
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::partsForDrawable):
+ (WebCore::RenderThemeGtk::paintMozillaGtkWidget):
+ * platform/gtk/gtk2drawing.c:
+ (TSOffsetStyleGCArray):
+ (TSOffsetStyleGCs):
+ (moz_gtk_button_paint):
+ (moz_gtk_scrollbar_thumb_paint):
+ (moz_gtk_entry_paint):
+ (moz_gtk_combo_box_paint):
+ (moz_gtk_get_widget_border):
+ * platform/gtk/gtk3drawing.c: Added.
+ * platform/gtk/gtkdrawing.h:
+
+2010-10-07 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ [chromium] Fix indentation in ChromiumDataObject.h
+ https://bugs.webkit.org/show_bug.cgi?id=47396
+
+ Just a cleanup patch to make followup diffs smaller.
+
+ * platform/chromium/ChromiumDataObject.h:
+ (WebCore::ChromiumDataObject::create):
+ (WebCore::ChromiumDataObject::copy):
+ (WebCore::ChromiumDataObject::urlTitle):
+ (WebCore::ChromiumDataObject::setUrlTitle):
+ (WebCore::ChromiumDataObject::htmlBaseUrl):
+ (WebCore::ChromiumDataObject::setHtmlBaseUrl):
+ (WebCore::ChromiumDataObject::containsFilenames):
+ (WebCore::ChromiumDataObject::filenames):
+ (WebCore::ChromiumDataObject::setFilenames):
+ (WebCore::ChromiumDataObject::fileExtension):
+ (WebCore::ChromiumDataObject::setFileExtension):
+ (WebCore::ChromiumDataObject::fileContentFilename):
+ (WebCore::ChromiumDataObject::setFileContentFilename):
+ (WebCore::ChromiumDataObject::fileContent):
+ (WebCore::ChromiumDataObject::setFileContent):
+
+2010-10-07 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Refactor HTMLInputElement: Move valueAsDate and valueAsNumber implementations
+ https://bugs.webkit.org/show_bug.cgi?id=47327
+
+ Move the content of HTMLInputElement::valueAsDate(), setValueAsDate(),
+ valueAsNumber(), and setValueAsNumber() to InputType, and move
+ serialize() and serializeForDateTimeTypes() too
+
+ * html/BaseDateAndTimeInputType.cpp:
+ (WebCore::BaseDateAndTimeInputType::valueAsDate):
+ (WebCore::BaseDateAndTimeInputType::setValueAsDate):
+ (WebCore::BaseDateAndTimeInputType::valueAsNumber):
+ (WebCore::BaseDateAndTimeInputType::setValueAsNumber):
+ (WebCore::BaseDateAndTimeInputType::serialize):
+ * html/BaseDateAndTimeInputType.h:
+ * html/DateInputType.cpp:
+ (WebCore::DateInputType::setMillisecondToDateComponents):
+ * html/DateInputType.h:
+ * html/DateTimeInputType.cpp:
+ (WebCore::DateTimeInputType::setMillisecondToDateComponents):
+ * html/DateTimeInputType.h:
+ * html/DateTimeLocalInputType.cpp:
+ (WebCore::DateTimeLocalInputType::valueAsDate):
+ (WebCore::DateTimeLocalInputType::setValueAsDate):
+ (WebCore::DateTimeLocalInputType::setMillisecondToDateComponents):
+ * html/DateTimeLocalInputType.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::valueAsDate):
+ (WebCore::HTMLInputElement::setValueAsDate):
+ (WebCore::HTMLInputElement::valueAsNumber):
+ (WebCore::HTMLInputElement::setValueAsNumber):
+ (WebCore::HTMLInputElement::stepUpFromRenderer):
+ * html/HTMLInputElement.h:
+ * html/InputType.cpp:
+ (WebCore::InputType::valueAsDate):
+ (WebCore::InputType::setValueAsDate):
+ (WebCore::InputType::valueAsNumber):
+ (WebCore::InputType::setValueAsNumber):
+ (WebCore::InputType::serialize):
+ * html/InputType.h:
+ * html/MonthInputType.cpp:
+ (WebCore::MonthInputType::valueAsDate):
+ (WebCore::MonthInputType::setValueAsDate):
+ (WebCore::MonthInputType::setMillisecondToDateComponents):
+ * html/MonthInputType.h:
+ * html/NumberInputType.cpp:
+ (WebCore::NumberInputType::valueAsNumber):
+ (WebCore::NumberInputType::setValueAsNumber):
+ (WebCore::NumberInputType::serialize):
+ * html/NumberInputType.h:
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::valueAsNumber):
+ (WebCore::RangeInputType::setValueAsNumber):
+ (WebCore::RangeInputType::serialize):
+ * html/RangeInputType.h:
+ * html/TimeInputType.cpp:
+ (WebCore::TimeInputType::setMillisecondToDateComponents):
+ * html/TimeInputType.h:
+ * html/WeekInputType.cpp:
+ (WebCore::WeekInputType::setMillisecondToDateComponents):
+ * html/WeekInputType.h:
+
+2010-10-07 No'am Rosenthal <noam.rosenthal@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Texmap] [Qt] Texture mapper initial implementation
+ Texture Mapper is an implementation of accelerated compositing that doesn't require a
+ platform specific scenegraph library like CA or QGraphicsView. The idea is that with
+ time this would replace GraphicsLayerQt, and could serve as an implementation for other
+ platforms that don't have a scenegraph library. The first stage of this is to add all the code to trunk,
+ and enable it in Qt with an opt-in build flag so that it can be easily tested. Once it reaches
+ an adequate level of stability, we can enable it by default and eventually have it replace GraphicsLayerQt.
+
+ This change includes only the common new files and the Qt backend; Still to come: the GL backend and integration layer.
+
+ * platform/graphics/qt/TextureMapperQt.cpp: Added.
+ * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: Added.
+ * platform/graphics/texmap/GraphicsLayerTextureMapper.h: Added.
+ * platform/graphics/texmap/TextureMapper.h: Added.
+ * platform/graphics/texmap/TextureMapperPlatformLayer.h: Added.
+
+2010-10-07 Antonio Gomes <agomes@rim.com>
+
+ Reviewed by Simon Fraser.
+
+ [Mac] [DRT] implement setSpatialNavigationEnabled
+ https://bugs.webkit.org/show_bug.cgi?id=47291
+
+ Added Settings::setSpatialNavigationEnabled symbols to WebKit.exp.in
+ so it can be used from WebKit/mac.
+
+ * WebCore.exp.in:
+
+2010-10-07 Eric Uhrhane <ericu@chromium.org>
+
+ Reviewed by Jian Li
+
+ [V8] Add FileWriter to active DOM map
+ https://bugs.webkit.org/show_bug.cgi?id=47380
+
+ It's an ActiveDOMObject; it needs to be in the map.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+
+2010-10-07 Nico Weber <thakis@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Make sure to update the current graphics context when calling out to AppKit.
+ https://bugs.webkit.org/show_bug.cgi?id=47387
+
+ This ports r57741 to ThemeChromiumMac. It also reverts r66975, which is
+ now no longer necessary.
+
+ Should be covered by existing tests. The checkbox at
+ http://webkit.org/blog-files/3d-transforms/morphing-cubes.html should
+ now show up correctly.
+
+ * platform/chromium/ThemeChromiumMac.mm:
+ (WebCore::paintCheckbox):
+ (WebCore::paintRadio):
+ Create current context.
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::updateContents):
+ Remove LocalCurrentContext, it's now no longer necessary.
+
+2010-10-07 Cris Neckar <cdn@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Postpone clearing the imageLoader when rendering certain fallback content for objects until after the attach().
+ https://bugs.webkit.org/show_bug.cgi?id=46921
+
+ Test: fast/html/object-image-nested-fallback.html
+
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::renderFallbackContent):
+
+2010-10-07 Rafael Antognolli <antognolli@profusion.mobi>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [EFL] Fix shared timers on EFL port - make them thread safe.
+ https://bugs.webkit.org/show_bug.cgi?id=47383
+
+ Using ecore_timer_add to create a timer from a thread that is
+ not the main thread isn't safe. Now we add a pipe that is used
+ to request a timer to be added in the main thread.
+
+ In order to reduce some delay on timers that are added with a
+ very small interval, the timer callback is called immediately
+ if the interval is smaller than the mainloop frame time.
+
+ No new features, so no tests added.
+
+ * platform/efl/SharedTimerEfl.cpp:
+ (WebCore::setSharedTimerFiredFunction):
+ (WebCore::timerEvent):
+ (WebCore::processTimers):
+ (WebCore::pipeHandlerCb):
+ (WebCore::stopSharedTimer):
+ (WebCore::addNewTimer):
+ (WebCore::setSharedTimerFireTime):
+
+2010-10-07 James Kozianski <koz@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ getPropertyValue('border') is incorrect after border-top-width is set
+ https://bugs.webkit.org/show_bug.cgi?id=45949
+
+ Test: fast/dom/css-shorthand-common-value.html
+
+ CSSMutableStyleDeclaration::getCommonValue() was ignoring values from
+ properties that were implicitly set, which led to erroneous results
+ from getPropertyValue().
+
+ * css/CSSMutableStyleDeclaration.cpp:
+ (WebCore::CSSMutableStyleDeclaration::getCommonValue):
+
+2010-10-07 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ REGRESSION: Indenting pre duplicates content
+ https://bugs.webkit.org/show_bug.cgi?id=47233
+
+ The bug was caused by our not splitting text nodes properly.
+
+ In new approach, we split text nodes in each iteration. Added rangeForParagraphSplitingTextNodesIfNeeded
+ to split text nodes at the start and at the end of paragraph, which also adjusts start and end positions
+ for moveParagraphWithClones. Added endOfNextParagrahSplittingTextNodesIfNeeded to adjust endOfNextParagraph,
+ start, and end to work-around moveParagraphWithClones's removing a line feed.
+
+ Tests: editing/execCommand/indent-pre-list.html
+ editing/execCommand/indent-pre-paragraphs.html
+
+ * editing/ApplyBlockElementCommand.cpp:
+ (WebCore::ApplyBlockElementCommand::formatSelection): See above.
+ (WebCore::isNewLineAtPosition):
+ (WebCore::renderStyleOfEnclosingTextNode): Added.
+ (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded): Added.
+ (WebCore::ApplyBlockElementCommand::endOfNextParagrahSplittingTextNodesIfNeeded): Added.
+ * editing/ApplyBlockElementCommand.h:
+ * editing/FormatBlockCommand.cpp:
+ (WebCore::FormatBlockCommand::formatRange): Takes two Positions instead of one VisiblePosition.
+ * editing/FormatBlockCommand.h:
+ * editing/IndentOutdentCommand.cpp:
+ (WebCore::IndentOutdentCommand::tryIndentingAsListItem): Ditto.
+ (WebCore::IndentOutdentCommand::indentIntoBlockquote): Ditto.
+ (WebCore::IndentOutdentCommand::formatRange): Ditto.
+ * editing/IndentOutdentCommand.h:
+
+2010-10-07 Jian Li <jianli@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Support generating a FormData object based on the data in an existing <form>.
+ https://bugs.webkit.org/show_bug.cgi?id=45929
+
+ Test: http/tests/local/formdata/send-form-data-constructed-from-form.html
+
+ * bindings/js/JSDOMFormDataCustom.cpp:
+ (WebCore::toHTMLFormElement):
+ (WebCore::JSDOMFormDataConstructor::constructJSDOMFormData):
+ * bindings/v8/custom/V8DOMFormDataCustom.cpp:
+ (WebCore::V8DOMFormData::constructorCallback):
+ * html/DOMFormData.cpp:
+ (WebCore::DOMFormData::DOMFormData):
+ * html/DOMFormData.h:
+ (WebCore::DOMFormData::create):
+ * html/DOMFormData.idl:
+
+2010-10-07 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dave Hyatt.
+
+ Set the m_selectedChildren flag on the root inline box if one of the leaf
+ inline box from the bidi runs walk has a selection state. Remove the flag
+ setting logic from addToLine, since line boxes created in createLinesBoxes
+ should not be propagating selection state to root inline box.
+ https://bugs.webkit.org/show_bug.cgi?id=47201
+
+ Test: editing/selection/root-inlinebox-selected-children-crash.html
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::addToLine):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::constructLine):
+
+2010-10-07 Benjamin Otte <otte@gnome.org>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Code cleanup in PluginViewGtk.cpp for transparent plugins
+ https://bugs.webkit.org/show_bug.cgi?id=47361
+
+ Reduce some code in PluginViewGtk.cpp by doing things with Cairo instead
+ of directly with X11. This should work fine with GDK double-buffering, but
+ if we ever disable it, we'll need to verify that this is still functioning
+ properly.
+
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::paint): Do a bit of code cleanup.
+
+2010-10-07 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Add a WKPageFindClient, hook up WKPageCountStringMatches
+ https://bugs.webkit.org/show_bug.cgi?id=47373
+
+ Export find related symbols needed by WebKit2.
+
+ * WebCore.exp.in:
+
+2010-10-07 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47370
+
+ Make line box placement in the inline direction writing-mode-aware. Lines now set their y-position instead of x-position
+ when vertical.
+
+ Refactored shadow overflow to give text-shadow the same helpers in RenderStyle that box-shadow has so that the shadow-walking loop in
+ placeBoxesInInlineDirection can be replaced with the helper.
+
+ Overflow had to be patched to be writing-mode-aware so that the correct physical directions would be set for vertical line
+ boxes.
+
+ Vertical lines are still not testable until they can be placed in the block direction. Then the render tree dumps
+ become meaningful (even if the pixel results look horrible).
+
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::logicalRight):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
+ * rendering/InlineFlowBox.h:
+ (WebCore::InlineFlowBox::logicalLeftLayoutOverflow):
+ (WebCore::InlineFlowBox::logicalRightLayoutOverflow):
+ (WebCore::InlineFlowBox::logicalLeftVisualOverflow):
+ (WebCore::InlineFlowBox::logicalRightVisualOverflow):
+ (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::getShadowExtent):
+ (WebCore::RenderStyle::getShadowHorizontalExtent):
+ (WebCore::RenderStyle::getShadowVerticalExtent):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::getTextShadowExtent):
+ (WebCore::InheritedFlags::getTextShadowHorizontalExtent):
+ (WebCore::InheritedFlags::getTextShadowVerticalExtent):
+ (WebCore::InheritedFlags::getTextShadowInlineDirectionExtent):
+ (WebCore::InheritedFlags::getBoxShadowExtent):
+ (WebCore::InheritedFlags::getBoxShadowHorizontalExtent):
+ (WebCore::InheritedFlags::getBoxShadowVerticalExtent):
+ (WebCore::InheritedFlags::getBoxShadowInlineDirectionExtent):
+ (WebCore::InheritedFlags::getShadowInlineDirectionExtent):
+
+2010-10-07 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ <rdar://problem/8142645> REGRESSION (r47440): Printing Mail messages with large fonts does not fill page
+ https://bugs.webkit.org/show_bug.cgi?id=47374
+
+ In the legacy (paint-time pagination) printing model, when there are overlapping lines,
+ adjustPageHeightDeprecated() was not idempotent, since the truncation point imposed by line n,
+ namely the top of line n, was above the bottom of line n-1, so in the next round, line n-1
+ moved the truncation point up again.
+
+ * rendering/RenderLineBoxList.cpp:
+ (WebCore::RenderLineBoxList::paint): Consider the top of the next line when deciding if the
+ current line extends below the truncation point.
+
+2010-10-07 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ Use isIdentityOrTranslationOrFlipped() in scrollbar code
+ https://bugs.webkit.org/show_bug.cgi?id=47378
+
+ Replace old code that looked at values in the CGAffineTransform
+ with nicely named method that does the same test.
+
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::paint):
+
+2010-10-07 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ Edge fringe artifact with transformed, masked elements (including reflections)
+ https://bugs.webkit.org/show_bug.cgi?id=19179
+
+ When drawing the mask images, use a transparency layer if the CTM
+ has a rotation, scale or skew in it to avoid antialiasing issues at
+ the edges.
+
+ Test: fast/css/transformed-mask.html
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintMask): Don't bother painting the mask if
+ painting is disabled, which also avoids an assertion in getCTM().
+ (WebCore::RenderBox::paintMaskImages):
+
+2010-10-07 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Map non-alphabet key code to Unicode value
+ https://bugs.webkit.org/show_bug.cgi?id=46002
+
+ Non-alphabet key codes are not equal to the unicode values. Add conversion.
+
+ * platform/brew/PlatformKeyboardEventBrew.cpp:
+ (WebCore::singleCharacterString):
+
+2010-10-05 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Chris Fleizach.
+
+ [GTK] The FreeType backend does not respect the FC_EMBOLDEN property
+ https://bugs.webkit.org/show_bug.cgi?id=46216
+
+ Look for the FC_EMBOLDEN property of the FcPattern when constructing
+ FontPlatformData and use it to enable synthetic bold fonts when necessary.
+
+ Test: platform/gtk/fonts/fontconfig-synthetic-bold.html
+
+ * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
+ (WebCore::FontPlatformData::FontPlatformData): Properly handle the FC_EMBOLDEN property.
+
+2010-10-07 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ [Web Timing] Use platform definition of responseEnd
+ https://bugs.webkit.org/show_bug.cgi?id=46306
+
+ No new tests. Used existing webtiming test.
+
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::didFinishLoading):
+
+2010-10-05 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Chris Fleizach.
+
+ [Gtk] CSS font-style: italic behavior
+ https://bugs.webkit.org/show_bug.cgi?id=33299
+
+ Properly interpret the FC_MATRIX property from a FontConfig pattern.
+ FontConfig will use this property when returning fonts which have a
+ synthetic oblique variant configured in the fonts.conf configuration
+ file.
+
+ Test: platform/gtk/fonts/fontconfig-synthetic-oblique.html
+
+ * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
+ (WebCore::FontPlatformData::FontPlatformData): Added a constructor that
+ takes an existing FontPlatformData and a font size.
+ (WebCore::FontPlatformData::initializeWithFontFace): Added this helper
+ intialization method that properly handles the FC_MATRIX property from
+ the FcPattern.
+ * platform/graphics/cairo/FontPlatformDataFreeType.h: Added a declaration
+ to the new constructor and the initializeWithFontFace.
+ * platform/graphics/cairo/SimpleFontDataCairo.cpp:
+ (WebCore::SimpleFontData::smallCapsFontData): Use the new FontPlatformData
+ constructor.
+
+2010-10-07 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47357
+
+ Make findNextLineBreak and some of the helper functions it also calls writing-mode-aware.
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::computeLogicalBoxHeights):
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::positionNewFloatOnLine):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::getBorderPaddingMargin):
+ (WebCore::inlineLogicalWidth):
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
+ (WebCore::inlineFlowRequiresLineBox):
+ (WebCore::RenderBlock::skipLeadingWhitespace):
+ (WebCore::RenderBlock::fitBelowFloats):
+ (WebCore::RenderBlock::findNextLineBreak):
+ * rendering/RenderBoxModelObject.h:
+ (WebCore::RenderBoxModelObject::hasInlineDirectionBordersPaddingOrMargin):
+ (WebCore::RenderBoxModelObject::hasInlineDirectionBordersOrPadding):
+
+2010-10-07 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Fixing viewport meta tag user-scalable handling
+ https://bugs.webkit.org/show_bug.cgi?id=47330
+
+ user-scalable attribute was not considered in viewport meta tag handling.
+
+ * dom/ViewportArguments.cpp:
+ (WebCore::findConfigurationForViewportData):
+ * dom/ViewportArguments.h:
+
+2010-10-05 Diego Gonzalez <diegohcg@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Hook up accelerometer data via Qt DeviceMotion
+ https://bugs.webkit.org/show_bug.cgi?id=47105
+
+ Get accelerometer necessary data via Qt mobility library using a
+ provider class. Enable, also the RotationRate using the current device
+ orientation provider.
+
+ * WebCore.pro:
+
+2010-10-07 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Some viewport meta tag api refactoring
+ https://bugs.webkit.org/show_bug.cgi?id=47334
+
+ WebCore::findConfigurationForViewportData renamed to computeViewportAttributes.
+ WebCore::ViewportAttributes::layoutViewport renamed to layoutSize.
+
+ * dom/ViewportArguments.cpp:
+ (WebCore::computeViewportAttributes):
+ * dom/ViewportArguments.h:
+
+2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Don't use GtkObject
+ https://bugs.webkit.org/show_bug.cgi?id=47090
+
+ GtkObject has been removed in gtk3.
+
+ * plugins/gtk/gtk2xtbin.c:
+ (gtk_xtbin_class_init):
+ (gtk_xtbin_dispose):
+
+2010-10-07 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: highlight XHR breakpoint when hit.
+ https://bugs.webkit.org/show_bug.cgi?id=47253
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::didCommitLoad):
+ (WebCore::InspectorController::setNativeBreakpoint):
+ (WebCore::InspectorController::removeNativeBreakpoint):
+ (WebCore::InspectorController::findEventListenerBreakpoint):
+ (WebCore::InspectorController::findXHRBreakpoint):
+ * inspector/InspectorController.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::instrumentWillDispatchEventImpl):
+ (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
+ (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
+ (WebInspector.BreakpointManager.prototype._xhrBreakpointRemoved):
+ (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
+ (WebInspector.BreakpointManager.prototype._setNativeBreakpointEnabled):
+ (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend.didSetNativeBreakpoint):
+ (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend):
+ (WebInspector.BreakpointManager.prototype._removeNativeBreakpointFromBackend):
+ (WebInspector.BreakpointManager.prototype.debuggerPaused):
+ (WebInspector.BreakpointManager.prototype.debuggerResumed):
+ (WebInspector.NativeBreakpoint):
+ (WebInspector.NativeBreakpoint.prototype.get enabled):
+ (WebInspector.NativeBreakpoint.prototype.set enabled):
+ (WebInspector.NativeBreakpoint.prototype.remove):
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.BreakpointItem):
+ (WebInspector.BreakpointItem.prototype._breakpointClicked):
+ (WebInspector.BreakpointItem.prototype._hitStateChanged):
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane.prototype.updateStatus):
+ * inspector/front-end/inspector.css:
+ (.breakpoint-list .breakpoint-hit):
+ * inspector/front-end/inspector.js:
+ (WebInspector.pausedScript):
+ (WebInspector.resumedScript):
+
+2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Fix the build for GTK+ 3
+ https://bugs.webkit.org/show_bug.cgi?id=47249
+
+ Use GdkVisual instead of GdkColormap. GdkColormap has been removed
+ in gtk3.
+
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::platformStart):
+ * plugins/gtk/gtk2xtbin.c:
+ (gtk_xtbin_new):
+
+2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Fix the build for GTK+ 3
+ https://bugs.webkit.org/show_bug.cgi?id=47249
+
+ Do not use GdkDrawable deprecated API. Some methods of GdkDrawable
+ are deprecated in gtk2 and have been removed in gtk3. Equivalent
+ API has been added to GdkWindow.
+
+ * platform/gtk/GtkVersioning.c:
+ (getDefaultGDKPointerDevice):
+ * platform/gtk/GtkVersioning.h:
+ * platform/gtk/PlatformScreenGtk.cpp:
+ (WebCore::getVisual):
+ (WebCore::screenAvailableRect):
+
+2010-10-06 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Disconnect signals before destroying MediaPlayerPrivateQt
+
+ https://bugs.webkit.org/show_bug.cgi?id=47073
+
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+
+2010-10-07 Alexander Pavlov <apavlov@chromium.org>
+
+ Unreviewed, release build fix.
+
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
+ * inspector/InspectorStyleSheet.h:
+ (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
+ (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor):
+
+2010-10-07 Pavel Podivilov <podivilov@chromium.org>
+
+ Unreviewed, build fix.
+
+ Build fix for r69283.
+
+ * dom/Document.cpp:
+ (WebCore::Document::inspectorController):
+ * dom/Document.h:
+
+2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Fix the build for GTK+ 3
+ https://bugs.webkit.org/show_bug.cgi?id=47249
+
+ Don't use gtk_size_request_get_size(). It has been removed,
+ gtk_widget_get_preferred_size() should be used instead
+
+ * platform/gtk/PopupMenuGtk.cpp:
+ (WebCore::PopupMenuGtk::show):
+
+2010-10-06 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Implement handling of CSS operations in InspectorCSSAgent.
+ Property toggling not implemented yet. The code is not going live.
+ https://bugs.webkit.org/show_bug.cgi?id=45825
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * inspector/InspectorCSSAgent.cpp: Added.
+ (WebCore::InspectorCSSAgent::buildObjectForStyle):
+ (WebCore::InspectorCSSAgent::parentStyleSheet):
+ (WebCore::InspectorCSSAgent::asCSSStyleRule):
+ (WebCore::InspectorCSSAgent::InspectorCSSAgent):
+ (WebCore::InspectorCSSAgent::~InspectorCSSAgent):
+ (WebCore::InspectorCSSAgent::reset):
+ (WebCore::InspectorCSSAgent::getMatchedRulesForNode2):
+ (WebCore::InspectorCSSAgent::getMatchedPseudoRulesForNode2):
+ (WebCore::InspectorCSSAgent::getAttributeStylesForNode2):
+ (WebCore::InspectorCSSAgent::getInlineStyleForNode2):
+ (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
+ (WebCore::InspectorCSSAgent::getInheritedStylesForNode2):
+ (WebCore::InspectorCSSAgent::getAllStyles2):
+ (WebCore::InspectorCSSAgent::getStyleSheet2):
+ (WebCore::InspectorCSSAgent::setStyleSheetText2):
+ (WebCore::InspectorCSSAgent::setStyleText2):
+ (WebCore::InspectorCSSAgent::toggleProperty2):
+ (WebCore::InspectorCSSAgent::setRuleSelector2):
+ (WebCore::InspectorCSSAgent::addRule2):
+ (WebCore::InspectorCSSAgent::getSupportedCSSProperties):
+ (WebCore::InspectorCSSAgent::inlineStyleElement):
+ (WebCore::InspectorCSSAgent::populateObjectWithStyleProperties):
+ (WebCore::InspectorCSSAgent::shorthandValue):
+ (WebCore::InspectorCSSAgent::shorthandPriority):
+ (WebCore::InspectorCSSAgent::longhandProperties):
+ (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
+ (WebCore::InspectorCSSAgent::elementForId):
+ (WebCore::InspectorCSSAgent::bindStyleSheet):
+ (WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
+ (WebCore::InspectorCSSAgent::styleSheetForId):
+ (WebCore::InspectorCSSAgent::detectOrigin):
+ (WebCore::InspectorCSSAgent::buildArrayForRuleList):
+ (WebCore::InspectorCSSAgent::buildObjectForAttributeStyles):
+ (WebCore::InspectorCSSAgent::didRemoveDocument):
+ (WebCore::InspectorCSSAgent::didRemoveDOMNode):
+ * inspector/InspectorCSSAgent.h: Added.
+ (WebCore::InspectorCSSAgent::create):
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::InspectorDOMAgent):
+ (WebCore::InspectorDOMAgent::setDOMListener):
+ (WebCore::InspectorDOMAgent::unbind):
+ (WebCore::InspectorDOMAgent::didRemoveDOMNode):
+ (WebCore::InspectorDOMAgent::getSupportedCSSProperties):
+ * inspector/InspectorDOMAgent.h:
+ (WebCore::InspectorDOMAgent::DOMListener::~DOMListener):
+ (WebCore::InspectorDOMAgent::documents):
+ * inspector/InspectorStyleSheet.cpp: Added.
+ (ParsedStyleSheet::cssStyleSheet):
+ (ParsedStyleSheet::text):
+ (ParsedStyleSheet::hasText):
+ (ParsedStyleSheet::sourceData):
+ (ParsedStyleSheet::hasSourceData):
+ (ParsedStyleSheet::ParsedStyleSheet):
+ (ParsedStyleSheet::setText):
+ (ParsedStyleSheet::setSourceData):
+ (ParsedStyleSheet::ruleSourceDataAt):
+ (WebCore::InspectorStyleSheet::InspectorStyleSheet):
+ (WebCore::InspectorStyleSheet::~InspectorStyleSheet):
+ (WebCore::InspectorStyleSheet::setText):
+ (WebCore::InspectorStyleSheet::setRuleSelector):
+ (WebCore::InspectorStyleSheet::addRule):
+ (WebCore::InspectorStyleSheet::ruleForId):
+ (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
+ (WebCore::InspectorStyleSheet::buildObjectForRule):
+ (WebCore::InspectorStyleSheet::buildObjectForStyle):
+ (WebCore::InspectorStyleSheet::styleForId):
+ (WebCore::InspectorStyleSheet::setStyleText):
+ (WebCore::InspectorStyleSheet::ownerDocument):
+ (WebCore::InspectorStyleSheet::ruleSourceDataFor):
+ (WebCore::InspectorStyleSheet::ruleIndexByStyle):
+ (WebCore::InspectorStyleSheet::ensureParsedDataReady):
+ (WebCore::InspectorStyleSheet::text):
+ (WebCore::InspectorStyleSheet::ensureText):
+ (WebCore::InspectorStyleSheet::ensureSourceData):
+ (WebCore::InspectorStyleSheet::innerSetStyleSheetText):
+ (WebCore::InspectorStyleSheet::innerSetStyleText):
+ (WebCore::InspectorStyleSheet::styleSheetTextWithChangedStyle):
+ (WebCore::InspectorStyleSheet::findPageRuleWithStyle):
+ (WebCore::InspectorStyleSheet::fullRuleId):
+ (WebCore::InspectorStyleSheet::revalidateStyle):
+ (WebCore::InspectorStyleSheet::styleSheetText):
+ (WebCore::InspectorStyleSheet::resourceStyleSheetText):
+ (WebCore::InspectorStyleSheet::inlineStyleSheetText):
+ (WebCore::InspectorStyleSheet::buildArrayForRuleList):
+ (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
+ (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
+ (WebCore::InspectorStyleSheetForInlineStyle::ownerDocument):
+ (WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady):
+ (WebCore::InspectorStyleSheetForInlineStyle::inlineStyle):
+ (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
+ * inspector/InspectorStyleSheet.h: Added.
+ (WebCore::InspectorStyleSheet::create):
+ (WebCore::InspectorStyleSheet::id):
+ (WebCore::InspectorStyleSheet::pageStyleSheet):
+ (WebCore::InspectorStyleSheet::canBind):
+ (WebCore::InspectorStyleSheet::fullRuleOrStyleId):
+ (WebCore::InspectorStyleSheet::ruleOrStyleId):
+ (WebCore::InspectorStyleSheet::fullStyleId):
+ (WebCore::InspectorStyleSheetForInlineStyle::create):
+ (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
+ (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor):
+ (WebCore::InspectorStyleSheetForInlineStyle::ruleIndexByStyle):
+ * inspector/InspectorUtilities.cpp: Added.
+ (WebCore::InspectorUtilities::resourceContentForURL):
+ * inspector/InspectorUtilities.h: Added.
+
+2010-10-05 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: extract Inspector Instrumentation API as a class
+ https://bugs.webkit.org/show_bug.cgi?id=47173
+
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::send):
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::evaluateInWorld):
+ * bindings/v8/V8DOMWindowShell.cpp:
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::evaluate):
+ (WebCore::V8Proxy::callFunction):
+ * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
+ (WebCore::V8XMLHttpRequest::sendCallback):
+ * dom/Document.cpp:
+ (WebCore::Document::recalcStyle):
+ * dom/Document.h:
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchGenericEvent):
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ * html/parser/HTMLDocumentParser.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::hasFrontend):
+ (WebCore::InspectorInstrumentation::retrieveTimelineAgent):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::hasFrontends):
+ (WebCore::InspectorInstrumentation::inspectorControllerForContext):
+ (WebCore::InspectorInstrumentation::inspectorControllerForDocument):
+ (WebCore::InspectorInstrumentation::inspectorControllerForFrame):
+ (WebCore::InspectorInstrumentation::inspectorControllerForPage):
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
+ (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
+ * inspector/InspectorTimelineAgent.h:
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::didReceiveResponse):
+ (WebCore::ResourceLoader::didReceiveData):
+ * loader/loader.cpp:
+ (WebCore::Loader::load):
+ * page/DOMTimer.cpp:
+ (WebCore::DOMTimer::install):
+ (WebCore::DOMTimer::removeById):
+ (WebCore::DOMTimer::fired):
+ * page/DOMTimer.h:
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::dispatchEvent):
+ * page/DOMWindow.h:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::layout):
+ (WebCore::FrameView::paintContents):
+ * page/FrameView.h:
+ * page/Page.cpp:
+ * page/Page.h:
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::paintContents):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::callReadyStateChangeListener):
+
+2010-10-07 Zraly Mike <mike.zraly@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ Windowless flash plugin is not rendered in Symbian
+ https://bugs.webkit.org/show_bug.cgi?id=47172
+
+ * plugins/symbian/PluginViewSymbian.cpp:
+ (WebCore::PluginView::platformStart):
+ Add call to updatePluginWidget() following changes to
+ platform widget. This is needed to set PluginView's
+ m_windowRect and m_clipRect members properly after
+ the proxy widget and its container get created.
+
+2010-10-07 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Rename (and move) RenderPath to svg/RenderSVGPath
+ https://bugs.webkit.org/show_bug.cgi?id=47053
+
+ Also renamed RenderObject::isRenderPath() to isSVGPath()
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.order:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::isSVGPath):
+ * rendering/RenderPath.cpp: Removed.
+ * rendering/RenderPath.h: Removed.
+ * rendering/RenderSVGHiddenContainer.cpp:
+ * rendering/RenderSVGResourceClipper.cpp:
+ (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
+ (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect):
+ (WebCore::RenderSVGResourceClipper::hitTestClipContent):
+ * rendering/RenderSVGResourceContainer.cpp:
+ (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
+ * rendering/RenderSVGResourceSolidColor.cpp:
+ (WebCore::RenderSVGResourceSolidColor::postApplyResource):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::write):
+ * rendering/SVGRenderSupport.cpp:
+ (WebCore::SVGRenderSupport::layoutChildren):
+ * rendering/SVGRenderTreeAsText.cpp:
+ (WebCore::writeStyle):
+ (WebCore::operator<<):
+ (WebCore::write):
+ * rendering/SVGRenderTreeAsText.h:
+ * rendering/style/SVGRenderStyle.cpp:
+ (WebCore::SVGRenderStyle::diff):
+ * rendering/svg/RenderSVGPath.cpp: Copied from WebCore/rendering/RenderPath.cpp.
+ (WebCore::RenderSVGPath::RenderSVGPath):
+ (WebCore::RenderSVGPath::fillContains):
+ (WebCore::RenderSVGPath::strokeContains):
+ (WebCore::RenderSVGPath::layout):
+ (WebCore::RenderSVGPath::fillAndStrokePath):
+ (WebCore::RenderSVGPath::paint):
+ (WebCore::RenderSVGPath::addFocusRingRects):
+ (WebCore::RenderSVGPath::nodeAtFloatPoint):
+ (WebCore::RenderSVGPath::calculateMarkerBoundsIfNeeded):
+ (WebCore::RenderSVGPath::updateCachedBoundaries):
+ * rendering/svg/RenderSVGPath.h: Copied from WebCore/rendering/RenderPath.h.
+ (WebCore::RenderSVGPath::isSVGPath):
+ (WebCore::RenderSVGPath::renderName):
+ (WebCore::toRenderSVGPath):
+ * svg/SVGCircleElement.cpp:
+ (WebCore::SVGCircleElement::svgAttributeChanged):
+ * svg/SVGEllipseElement.cpp:
+ (WebCore::SVGEllipseElement::svgAttributeChanged):
+ * svg/SVGGradientElement.cpp:
+ * svg/SVGLineElement.cpp:
+ (WebCore::SVGLineElement::svgAttributeChanged):
+ * svg/SVGPathElement.cpp:
+ (WebCore::SVGPathElement::svgAttributeChanged):
+ * svg/SVGPolyElement.cpp:
+ (WebCore::SVGPolyElement::svgAttributeChanged):
+ * svg/SVGRectElement.cpp:
+ (WebCore::SVGRectElement::svgAttributeChanged):
+ * svg/SVGStyledLocatableElement.cpp:
+ * svg/SVGStyledTransformableElement.cpp:
+ (WebCore::SVGStyledTransformableElement::createRenderer):
+
+2010-10-06 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: clear line highlight when switching current view
+ https://bugs.webkit.org/show_bug.cgi?id=47262
+
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.clearLineHighlight):
+ * inspector/front-end/SourceView.js:
+ (WebInspector.SourceView.prototype.hide):
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextViewer.prototype.highlightLine):
+ (WebInspector.TextViewer.prototype.clearLineHighlight):
+
+2010-10-06 Chris Evans <cevans@google.com>
+
+ Reviewed by David Levin.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47313
+
+ Fix integer errors with enormous input strings to newline normalization APIs.
+
+ * platform/text/LineEnding.cpp:
+ (WebCore::normalizeLineEndingsToCRLF): return the empty string upon huge input strings. (Behaves similarly to base64Encode now).
+ (WebCore::normalizeToCROrLF): use the correct type for a string length.
+
+2010-10-06 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, build fix.
+
+ Windows build fix for r69272.
+
+ * html/BaseDateAndTimeInputType.cpp:
+ (WebCore::BaseDateAndTimeInputType::stepBase):
+ Use defaultStepBase() instead of defaultStepBase.
+ * html/InputType.h:
+ (WebCore::InputType::defaultStepBase):
+ Make defaultStepBase static function.
+ * html/NumberInputType.cpp:
+ (WebCore::NumberInputType::stepBase):
+ Use defaultStepBase() instead of defaultStepBase.
+
+2010-10-06 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Refactor HTMLInputElement: Move range/step related functions
+ https://bugs.webkit.org/show_bug.cgi?id=47251
+
+ Move the content of the following functions:
+ - rangeUnderflow()
+ - rangeOverflow()
+ - minimum()
+ - maximum()
+ - stepMismatch()
+ - stepBase()
+
+ getStepParameters() was split into InputType::defaultStep() and
+ stepScaleFactor().
+
+ * html/BaseDateAndTimeInputType.cpp:
+ (WebCore::BaseDateAndTimeInputType::rangeUnderflow):
+ (WebCore::BaseDateAndTimeInputType::rangeOverflow):
+ (WebCore::BaseDateAndTimeInputType::stepMismatch):
+ (WebCore::BaseDateAndTimeInputType::stepBase):
+ * html/BaseDateAndTimeInputType.h:
+ * html/DateInputType.cpp:
+ (WebCore::DateInputType::minimum):
+ (WebCore::DateInputType::maximum):
+ (WebCore::DateInputType::defaultStep):
+ (WebCore::DateInputType::stepScaleFactor):
+ (WebCore::DateInputType::parsedStepValueShouldBeInteger):
+ * html/DateInputType.h:
+ * html/DateTimeInputType.cpp:
+ (WebCore::DateTimeInputType::minimum):
+ (WebCore::DateTimeInputType::maximum):
+ (WebCore::DateTimeInputType::defaultStep):
+ (WebCore::DateTimeInputType::stepScaleFactor):
+ (WebCore::DateTimeInputType::scaledStepValeuShouldBeInteger):
+ * html/DateTimeInputType.h:
+ * html/DateTimeLocalInputType.cpp:
+ (WebCore::DateTimeLocalInputType::minimum):
+ (WebCore::DateTimeLocalInputType::maximum):
+ (WebCore::DateTimeLocalInputType::defaultStep):
+ (WebCore::DateTimeLocalInputType::stepScaleFactor):
+ (WebCore::DateTimeLocalInputType::scaledStepValeuShouldBeInteger):
+ * html/DateTimeLocalInputType.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::rangeUnderflow):
+ (WebCore::HTMLInputElement::rangeOverflow):
+ (WebCore::HTMLInputElement::minimum):
+ (WebCore::HTMLInputElement::maximum):
+ (WebCore::HTMLInputElement::stepMismatch):
+ (WebCore::HTMLInputElement::getAllowedValueStep):
+ (WebCore::HTMLInputElement::applyStep):
+ (WebCore::HTMLInputElement::handleKeyEventForRange):
+ (WebCore::HTMLInputElement::stepUpFromRenderer):
+ * html/HTMLInputElement.h:
+ * html/InputType.cpp:
+ (WebCore::InputType::patternMismatch):
+ (WebCore::InputType::rangeUnderflow):
+ (WebCore::InputType::rangeOverflow):
+ (WebCore::InputType::minimum):
+ (WebCore::InputType::maximum):
+ (WebCore::InputType::stepMismatch):
+ (WebCore::InputType::stepBase):
+ (WebCore::InputType::defaultStep):
+ (WebCore::InputType::stepScaleFactor):
+ (WebCore::InputType::parsedStepValueShouldBeInteger):
+ (WebCore::InputType::scaledStepValeuShouldBeInteger):
+ * html/InputType.h:
+ * html/MonthInputType.cpp:
+ (WebCore::MonthInputType::minimum):
+ (WebCore::MonthInputType::maximum):
+ (WebCore::MonthInputType::defaultStep):
+ (WebCore::MonthInputType::stepScaleFactor):
+ (WebCore::MonthInputType::parsedStepValueShouldBeInteger):
+ * html/MonthInputType.h:
+ * html/NumberInputType.cpp:
+ (WebCore::NumberInputType::rangeUnderflow):
+ (WebCore::NumberInputType::rangeOverflow):
+ (WebCore::NumberInputType::minimum):
+ (WebCore::NumberInputType::maximum):
+ (WebCore::NumberInputType::stepMismatch):
+ (WebCore::NumberInputType::stepBase):
+ (WebCore::NumberInputType::defaultStep):
+ (WebCore::NumberInputType::stepScaleFactor):
+ * html/NumberInputType.h:
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::rangeUnderflow):
+ (WebCore::RangeInputType::rangeOverflow):
+ (WebCore::RangeInputType::minimum):
+ (WebCore::RangeInputType::maximum):
+ (WebCore::RangeInputType::stepMismatch):
+ (WebCore::RangeInputType::stepBase):
+ (WebCore::RangeInputType::defaultStep):
+ (WebCore::RangeInputType::stepScaleFactor):
+ * html/RangeInputType.h:
+ * html/TimeInputType.cpp:
+ (WebCore::TimeInputType::minimum):
+ (WebCore::TimeInputType::maximum):
+ (WebCore::TimeInputType::defaultStep):
+ (WebCore::TimeInputType::stepScaleFactor):
+ (WebCore::TimeInputType::scaledStepValeuShouldBeInteger):
+ * html/TimeInputType.h:
+ * html/WeekInputType.cpp:
+ (WebCore::WeekInputType::minimum):
+ (WebCore::WeekInputType::maximum):
+ (WebCore::WeekInputType::stepBase):
+ (WebCore::WeekInputType::defaultStep):
+ (WebCore::WeekInputType::stepScaleFactor):
+ (WebCore::WeekInputType::parsedStepValueShouldBeInteger):
+ * html/WeekInputType.h:
+
+2010-10-06 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein, Darin Adler.
+
+ :first-letter should apply to "punctuation" after the first letter
+ https://bugs.webkit.org/show_bug.cgi?id=45986
+
+ Follow the CSS 2.1 spec by allow certain kinds of punctuation before and after
+ the :first-letter character.
+
+ The spec does not describe whitespace behavior, and browsers are inconsistent.
+ This patch allows whitespace (including non-breaking spaces) before and after the
+ leading punctuation, and before the trailing punctuation.
+
+ Test: fast/css/first-letter-punctuation.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::isPunctuationForFirstLetter):
+ (WebCore::shouldSkipForFirstLetter):
+ (WebCore::RenderBlock::updateFirstLetter):
+
+2010-10-06 Sanjeev Radhakrishnan <sanjeevr@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Released the pluginNode in PluginDocument::detach() and prevents a memory leak.
+ https://bugs.webkit.org/show_bug.cgi?id=47129
+
+ * html/PluginDocument.cpp:
+ (WebCore::PluginDocument::detach):
+ * html/PluginDocument.h:
+
+2010-10-06 Vincent Scheib <scheib@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Thumbnail generation asserts on zero alpha values.
+ https://bugs.webkit.org/show_bug.cgi?id=47292
+
+ Test: Tested manually by running debug mode, and analyzing in PIX.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawLayers):
+
+2010-10-06 Kinuko Yasuda <kinuko@chromium.org>
+
+ Unreviewed, trying to fix chromium Windows build.
+
+ Explicitly give the parameter value that has a default parameter value.
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::requestFileSystem):
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::requestFileSystem):
+
+2010-10-06 Darin Adler <darin@apple.com>
+
+ Try to fix Windows build.
+
+ * platform/graphics/cg/ColorCG.cpp:
+ (WebCore::cachedCGColor): Put in braces to make the Windows compiler
+ happy with this file.
+
+ * platform/graphics/cg/ImageCG.cpp: Added include of RetainPtr.h.
+
+2010-10-06 Darin Adler <darin@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Cache CGColor as we do NSColor
+ https://bugs.webkit.org/show_bug.cgi?id=47226
+
+ This fixes performance problems on certain web pages that use
+ multiple colors. Once in the past we were using NSColor. Now that
+ we are using CGColor, we need the same sort of caching that we have
+ for NSColor.
+
+ One example: <http://results.active.com/uploads/html/100759.html>.
+
+ * WebCore.xcodeproj/project.pbxproj: Add GraphicsContextCG.h.
+
+ * platform/graphics/Color.h: Replace createCGColor with cachedCGColor.
+
+ * platform/graphics/cg/ColorCG.cpp:
+ (WebCore::cachedCGColorSpace): Added.
+ (WebCore::leakCGColor): Added.
+ (WebCore::cachedCGColor): Added.
+
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::setCGFillColor): Use cachedCGColor.
+ (WebCore::setCGStrokeColor): Ditto.
+ (WebCore::GraphicsContext::fillRect): Ditto.
+ (WebCore::GraphicsContext::setPlatformShadow): Ditto.
+
+ * platform/graphics/cg/GraphicsContextCG.h: Added.
+ * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
+ Moved the color space functions here.
+
+ * platform/graphics/cg/ImageCG.cpp: Tweaked headers and formatting.
+
+ * platform/graphics/mac/ColorMac.mm: Removed the createCGColor
+ function.
+
+ * platform/graphics/mac/GraphicsContextMac.mm:
+ (WebCore::drawFocusRingToContext): Removed innappropriate use of
+ RetainPtr for the arguments to this function.
+ (WebCore::GraphicsContext::drawFocusRing): Use cachedCGColor.
+
+ * platform/graphics/mac/GraphicsLayerCA.mm:
+ (WebCore::setLayerBorderColor): Use cachedCGColor.
+ (WebCore::setLayerBackgroundColor): Ditto.
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::GraphicsContext::drawFocusRing): Ditto.
+ * platform/graphics/win/GraphicsLayerCACF.cpp:
+ (WebCore::setLayerBorderColor): Ditto.
+ (WebCore::setLayerBackgroundColor): Ditto.
+
+ * platform/graphics/win/WKCACFLayerRenderer.cpp:
+ (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): Use
+ CGColorCreateGenericRGB for color used only for debugging.
+ * platform/graphics/win/WebTiledLayer.cpp:
+ (WebCore::WebTiledLayer::addTile): Ditto.
+
+2010-10-06 Peter Kasting <pkasting@google.com>
+
+ Reviewed by James Robinson
+
+ ScrollViews without scrollbars should not eat scroll events
+ https://bugs.webkit.org/show_bug.cgi?id=47036
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::wheelEvent):
+
+2010-10-06 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Darin Adler.
+
+ ASSERTION FAILURE: Attempt to cast RenderObject to RenderFrameSet
+ when <frameset> has CSS content property
+ https://bugs.webkit.org/show_bug.cgi?id=47314
+
+ Fixes an issue where sending a mouse event to an HTML Frameset Element that
+ whose content was replaced via the CSS content property causes an assertion
+ failure.
+
+ By default, HTMLFrameSetElement forwards mouse events to RenderFrameSet so as
+ to support resizing a frame within the set. When a <frameset> specifies an
+ image in its CSS content property we create a generic render object (RenderObject)
+ for the frame set instead of a RenderFrameSet object. The event handler code
+ in HTMLFrameSetElement calls WebCore::toRenderFrameSet() to cast its renderer
+ to type RenderFrameSet, which fails. To correct this, HTMLFrameSetElement
+ must check that its renderer is of type RenderFrameSet before casting to this type.
+
+ Test: fast/frames/crash-frameset-CSS-content-property.html
+
+ * html/HTMLFrameSetElement.cpp:
+ (WebCore::HTMLFrameSetElement::defaultEventHandler): Check that our renderer is
+ of type RenderFrameSet before casting it as such.
+
+2010-10-06 Albert J. Wong <ajwong@chromium.org>
+
+ Reviewed by Andreas Kling.
+
+ r69181 breaks compilation of WebCore/platform/graphics/filters/FETile.cpp if ENABLE(SVG) is false.
+ https://bugs.webkit.org/show_bug.cgi?id=47315
+
+ Compile fix. No tests.
+
+ * platform/graphics/filters/FETile.cpp:
+ (WebCore::FETile::apply):
+
+2010-10-06 Kinuko Yasuda <kinuko@chromium.org>
+
+ Unreviewed, fixing screwed up ChangeLogs.
+
+2010-10-06 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add FileSystemSync implementation for Worker
+ https://bugs.webkit.org/show_bug.cgi?id=47044
+
+ Tests: fast/filesystem/async-operations.html
+ fast/filesystem/workers/async-operations.html
+ fast/filesystem/workers/sync-operations.html
+
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/generic/RuntimeEnabledFeatures.h: Removed
+ requestFileSystemEnabled() as I changed the idl/generator to
+ use fileSystemEnabled for all the FileSystem related features.
+ * fileapi/DOMFileSystem.cpp:
+ * fileapi/DOMFileSystem.h:
+ * fileapi/DOMFileSystemBase.cpp:
+ (WebCore::DOMFileSystemBase::getMetadata): Moved from DOMFileSystem.
+ (WebCore::checkValidityForForCopyOrMove): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::move): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::copy): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::remove): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::getParent): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::getFile): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::getDirectory): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::readDirectory): Moved from DOMFileSystem.
+ * fileapi/DOMFileSystemBase.h:
+ * fileapi/DOMFileSystemSync.h:
+ * fileapi/DirectoryEntry.cpp:
+ (WebCore::DirectoryEntry::DirectoryEntry): Updated to call
+ DOMFileSystemBase's method instead of DOMFileSystem's one.
+ (WebCore::DirectoryEntry::getFile): Ditto.
+ (WebCore::DirectoryEntry::getDirectory): Ditto.
+ * fileapi/DirectoryEntry.h:
+ * fileapi/DirectoryEntrySync.cpp:
+ (WebCore::DirectoryEntrySync::getFile): Implemented.
+ (WebCore::DirectoryEntrySync::getDirectory): Implemented.
+ * fileapi/DirectoryReader.h:
+ * fileapi/DirectoryReaderSync.cpp:
+ (WebCore::DirectoryReaderSync::readEntries): Implemented.
+ * fileapi/Entry.cpp:
+ (WebCore::Entry::Entry): Updated to call DOMFileSystemBase's method.
+ (WebCore::Entry::getMetadata): Ditto.
+ (WebCore::Entry::moveTo): Ditto.
+ (WebCore::Entry::copyTo): Ditto.
+ (WebCore::Entry::remove): Ditto.
+ (WebCore::Entry::getParent): Ditto.
+ * fileapi/Entry.h:
+ * fileapi/Entry.idl:
+ * fileapi/EntryArraySync.cpp:
+ (WebCore::EntryArraySync::create): Added.
+ * fileapi/EntryArraySync.h:
+ * fileapi/EntryBase.h:
+ (WebCore::EntryBase::filesystem): Added.
+ * fileapi/EntrySync.cpp:
+ (WebCore::EntrySync::create): Implemented.
+ (WebCore::EntrySync::getMetadata): Implemented.
+ (WebCore::EntrySync::moveTo): Implemented.
+ (WebCore::EntrySync::copyTo): Implemented.
+ (WebCore::EntrySync::remove): Implemented.
+ * fileapi/EntrySync.h:
+ * fileapi/FileEntry.cpp:
+ * fileapi/FileEntry.h:
+ * fileapi/FileSystemCallbacks.cpp:
+ (WebCore::EntryCallbacks::create): Updated to take DOMFileSystemBase
+ instead of DOMFileSystem.
+ (WebCore::EntryCallbacks::EntryCallbacks): Ditto.
+ (WebCore::EntriesCallbacks::create): Ditto.
+ (WebCore::EntriesCallbacks::EntriesCallbacks): Ditto.
+ * fileapi/FileSystemCallbacks.h:
+ * fileapi/LocalFileSystem.cpp:
+ (WebCore::LocalFileSystem::requestFileSystem): Added synchronous
+ parameter.
+ * fileapi/LocalFileSystem.h:
+ * fileapi/Metadata.h:
+ * fileapi/SyncCallbackHelper.h: Added. This defines a helper template
+ for synchronous implementation.
+ * page/DOMWindow.idl:
+ * platform/AsyncFileSystem.h:
+ (WebCore::AsyncFileSystem::waitCompletion): Added.
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::requestFileSystemSync): Added.
+ * workers/WorkerContext.h:
+ * workers/WorkerContext.idl:
+
+2010-10-06 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ IDBDatabase and IDBObjectStore metadata is not recovered correctly when the setVersion transactions aborts.
+ https://bugs.webkit.org/show_bug.cgi?id=47245
+
+ Recover metadata properly by adding abort tasks that
+ are run when a transaction aborts.
+
+ * storage/IDBDatabase.cpp:
+ (WebCore::IDBDatabase::createObjectStore):
+ (WebCore::IDBDatabase::removeObjectStore):
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::createObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::setVersion):
+ (WebCore::IDBDatabaseBackendImpl::removeObjectStoreFromMap):
+ (WebCore::IDBDatabaseBackendImpl::addObjectStoreToMap):
+ (WebCore::IDBDatabaseBackendImpl::resetVersion):
+ * storage/IDBDatabaseBackendImpl.h:
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::createIndex):
+ (WebCore::IDBObjectStoreBackendImpl::removeIndex):
+ (WebCore::IDBObjectStoreBackendImpl::removeIndexFromMap):
+ (WebCore::IDBObjectStoreBackendImpl::addIndexToMap):
+ * storage/IDBObjectStoreBackendImpl.h:
+ * storage/IDBTransactionBackendImpl.cpp:
+ (WebCore::IDBTransactionBackendImpl::scheduleTask):
+ (WebCore::IDBTransactionBackendImpl::abort):
+ * storage/IDBTransactionBackendImpl.h:
+ * storage/IDBTransactionBackendInterface.h:
+ * storage/IDBTransactionCoordinator.h:
+
+2010-10-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47306
+
+ Convert determineStart/EndPosition and matchedEndLine to be writing-mode-aware.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::determineStartPosition):
+ (WebCore::RenderBlock::determineEndPosition):
+ (WebCore::RenderBlock::matchedEndLine):
+
+22010-10-06 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ REGRESSION (r53857): AREA tag with tabindex="-1" displays focus ring after multiple mouse clicks.
+ https://bugs.webkit.org/show_bug.cgi?id=45832
+
+ Test: fast/events/mouse-focus-imagemap.html
+
+ * html/HTMLAreaElement.cpp:
+ (WebCore::HTMLAreaElement::isKeyboardFocusable):
+ (WebCore::HTMLAreaElement::isMouseFocusable):
+ (WebCore::HTMLAreaElement::isFocusable):
+ (WebCore::HTMLAreaElement::updateFocusAppearance):
+ * html/HTMLAreaElement.h:
+
+010-10-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47303
+
+ Convert layoutInlineChildren to be block-flow-aware. None of the functions it calls are patched yet.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::forceLayoutInlineChildren):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::beforeSideVisibleOverflowForLine):
+ (WebCore::RenderBlock::afterSideVisibleOverflowForLine):
+ (WebCore::RenderBlock::beforeSideLayoutOverflowForLine):
+ (WebCore::RenderBlock::afterSideLayoutOverflowForLine):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::logicalLeftLayoutOverflow):
+ (WebCore::RenderBox::logicalRightLayoutOverflow):
+ (WebCore::RenderBox::logicalLeftVisualOverflow):
+ (WebCore::RenderBox::logicalRightVisualOverflow):
+
+2010-10-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47298
+
+ Rename blockHeight to blockLogicalHeight.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::markLinesDirtyInBlockRange):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::determineStartPosition):
+ (WebCore::RenderBlock::determineEndPosition):
+ (WebCore::RenderBlock::matchedEndLine):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::RootInlineBox):
+ (WebCore::RootInlineBox::adjustPosition):
+ * rendering/RootInlineBox.h:
+ (WebCore::RootInlineBox::blockLogicalHeight):
+ (WebCore::RootInlineBox::setBlockLogicalHeight):
+ * rendering/svg/SVGRootInlineBox.cpp:
+ (WebCore::SVGRootInlineBox::layoutRootBox):
+
+2010-10-05 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] DRT assertion w/accel 2D canvas in PlatformContextSkia
+ https://bugs.webkit.org/show_bug.cgi?id=47242
+
+ Call PlatformContextSkia::prepareForSoftwareDraw before doing putImageData
+ since that call mutates the software backing store.
+
+ Test: fast/canvas/canvas-putImageData.html
+
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::putUnmultipliedImageData):
+
+2010-10-06 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Brady Eidson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47294
+ <rdar://problem/8425647>Application cache isn't consulted on redirect
+
+ Test: http/tests/appcache/main-resource-redirect.html
+
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::continueAfterNavigationPolicy): If we have substitute data now
+ (presumably after a redirect is served by appcache), switch to it.
+ (WebCore::MainResourceLoader::willSendRequest): Check appcache for the new URL.
+
+ * loader/MainResourceLoader.h: Made handleDataLoadSoon() take a const ResourceRequest
+ reference - it doesn't ever modify it, and we can call it from continueAfterNavigationPolicy() now.
+
+2010-10-06 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Dirk Schulze.
+
+ ContextShadow should not use the blur radius as kernel size of the
+ box blurs
+ https://bugs.webkit.org/show_bug.cgi?id=46918
+
+ Calculate the size of the kernel in the blur algorithm using the radius instead
+ of using the blur distance directly. Change the name of the variables to match the
+ terminology in the spec.
+
+ * platform/graphics/ContextShadow.cpp:
+ (WebCore::ContextShadow::ContextShadow):
+ (WebCore::ContextShadow::clear):
+ (WebCore::ContextShadow::blurLayerImage):
+ (WebCore::ContextShadow::calculateLayerBoundingRect):
+ * platform/graphics/ContextShadow.h:
+
+2010-10-06 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Correct CamelCase of socketSentdata() in SocketStreamHandlePrivate
+ to fix "QMetaObject::invokeMethod: No such method" warnings in layout tests.
+ https://bugs.webkit.org/show_bug.cgi?id=47284
+
+ No new tests needed.
+
+ * platform/network/qt/SocketStreamHandlePrivate.h:
+ * platform/network/qt/SocketStreamHandleQt.cpp:
+ (WebCore::SocketStreamHandlePrivate::socketSentData):
+
+2010-10-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47285
+
+ Update to the latest writing-mode draft. The block-flow property is gone and has been replaced with writing-mode.
+ Change all the code to use writingMode() instead of blockFlow() and rename all functions that referred to block flow
+ as appropriate.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator WritingMode):
+ (WebCore::CSSPrimitiveValue::operator SVGWritingMode):
+ * css/CSSProperty.cpp:
+ (WebCore::resolveToPhysicalProperty):
+ (WebCore::CSSProperty::resolveDirectionAwareProperty):
+ * css/CSSProperty.h:
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::styleForDocument):
+ (WebCore::CSSStyleSelector::adjustRenderStyle):
+ (WebCore::CSSStyleSelector::applyDeclarations):
+ (WebCore::CSSStyleSelector::applyProperty):
+ * css/CSSValueKeywords.in:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::MarginInfo::MarginInfo):
+ (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
+ (WebCore::RenderBlock::setLogicalLeftForChild):
+ (WebCore::RenderBlock::setLogicalTopForChild):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::addOverhangingFloats):
+ (WebCore::RenderBlock::addIntrudingFloats):
+ (WebCore::RenderBlock::collapsedMarginBeforeForChild):
+ (WebCore::RenderBlock::collapsedMarginAfterForChild):
+ (WebCore::RenderBlock::marginBeforeForChild):
+ (WebCore::RenderBlock::marginAfterForChild):
+ (WebCore::RenderBlock::marginStartForChild):
+ (WebCore::RenderBlock::marginEndForChild):
+ (WebCore::RenderBlock::setMarginStartForChild):
+ (WebCore::RenderBlock::setMarginEndForChild):
+ (WebCore::RenderBlock::setMarginBeforeForChild):
+ (WebCore::RenderBlock::setMarginAfterForChild):
+ (WebCore::RenderBlock::marginValuesForChild):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalWidthForChild):
+ (WebCore::RenderBlock::logicalHeightForChild):
+ (WebCore::RenderBlock::logicalTopForChild):
+ (WebCore::RenderBlock::logicalRightOffsetForContent):
+ (WebCore::RenderBlock::logicalLeftOffsetForContent):
+ (WebCore::RenderBlock::logicalTopForFloat):
+ (WebCore::RenderBlock::logicalBottomForFloat):
+ (WebCore::RenderBlock::logicalLeftForFloat):
+ (WebCore::RenderBlock::logicalRightForFloat):
+ (WebCore::RenderBlock::logicalWidthForFloat):
+ (WebCore::RenderBlock::setLogicalTopForFloat):
+ (WebCore::RenderBlock::setLogicalLeftForFloat):
+ (WebCore::RenderBlock::setLogicalHeightForFloat):
+ (WebCore::RenderBlock::setLogicalWidthForFloat):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::marginBefore):
+ (WebCore::RenderBox::marginAfter):
+ (WebCore::RenderBox::marginStart):
+ (WebCore::RenderBox::marginEnd):
+ (WebCore::RenderBox::setMarginStart):
+ (WebCore::RenderBox::setMarginEnd):
+ (WebCore::RenderBox::setMarginBefore):
+ (WebCore::RenderBox::setMarginAfter):
+ (WebCore::RenderBox::styleDidChange):
+ (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::availableLogicalHeightUsing):
+ (WebCore::RenderBox::avoidsFloats):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::logicalLeft):
+ (WebCore::RenderBox::logicalTop):
+ (WebCore::RenderBox::logicalWidth):
+ (WebCore::RenderBox::logicalHeight):
+ (WebCore::RenderBox::setLogicalLeft):
+ (WebCore::RenderBox::setLogicalTop):
+ (WebCore::RenderBox::setLogicalWidth):
+ (WebCore::RenderBox::setLogicalHeight):
+ (WebCore::RenderBox::setLogicalLocation):
+ (WebCore::RenderBox::contentLogicalWidth):
+ (WebCore::RenderBox::contentLogicalHeight):
+ (WebCore::RenderBox::stretchesToViewport):
+ (WebCore::RenderBox::intrinsicLogicalWidth):
+ (WebCore::RenderBox::intrinsicLogicalHeight):
+ (WebCore::RenderBox::availableWidth):
+ (WebCore::RenderBox::availableHeight):
+ (WebCore::RenderBox::scrollbarLogicalHeight):
+ (WebCore::RenderBox::isWritingModeRoot):
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::paintBoxDecorations):
+ (WebCore::RenderFieldset::paintMask):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::computeReplacedLogicalWidth):
+ (WebCore::RenderImage::computeReplacedLogicalHeight):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::marginLeft):
+ (WebCore::RenderInline::marginRight):
+ (WebCore::RenderInline::marginTop):
+ (WebCore::RenderInline::marginBottom):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::paddingTop):
+ (WebCore::RenderTableCell::paddingBottom):
+ (WebCore::RenderTableCell::paddingLeft):
+ (WebCore::RenderTableCell::paddingRight):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::viewLogicalWidth):
+ (WebCore::RenderView::viewLogicalHeight):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::RootInlineBox):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff):
+ (WebCore::RenderStyle::logicalWidth):
+ (WebCore::RenderStyle::logicalHeight):
+ (WebCore::RenderStyle::logicalMinWidth):
+ (WebCore::RenderStyle::logicalMaxWidth):
+ (WebCore::RenderStyle::logicalMinHeight):
+ (WebCore::RenderStyle::logicalMaxHeight):
+ (WebCore::RenderStyle::borderBeforeWidth):
+ (WebCore::RenderStyle::borderAfterWidth):
+ (WebCore::RenderStyle::borderStartWidth):
+ (WebCore::RenderStyle::borderEndWidth):
+ (WebCore::RenderStyle::marginBefore):
+ (WebCore::RenderStyle::marginAfter):
+ (WebCore::RenderStyle::marginBeforeUsing):
+ (WebCore::RenderStyle::marginAfterUsing):
+ (WebCore::RenderStyle::marginStart):
+ (WebCore::RenderStyle::marginEnd):
+ (WebCore::RenderStyle::marginStartUsing):
+ (WebCore::RenderStyle::marginEndUsing):
+ (WebCore::RenderStyle::paddingBefore):
+ (WebCore::RenderStyle::paddingAfter):
+ (WebCore::RenderStyle::paddingStart):
+ (WebCore::RenderStyle::paddingEnd):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::setBitDefaults):
+ (WebCore::InheritedFlags::writingMode):
+ (WebCore::InheritedFlags::isHorizontalWritingMode):
+ (WebCore::InheritedFlags::setWritingMode):
+ (WebCore::InheritedFlags::initialWritingMode):
+ * rendering/style/RenderStyleConstants.h:
+ * rendering/style/SVGRenderStyle.h:
+ (WebCore::SVGRenderStyle::initialWritingMode):
+ (WebCore::SVGRenderStyle::setWritingMode):
+ (WebCore::SVGRenderStyle::writingMode):
+ * rendering/style/SVGRenderStyleDefs.h:
+
+2010-10-06 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r69201.
+ http://trac.webkit.org/changeset/69201
+ https://bugs.webkit.org/show_bug.cgi?id=47279
+
+ This change broke the WebKitGTK+ build for GTK+ 2.0.
+ (Requested by mrobinson on #webkit).
+
+ * platform/gtk/GtkVersioning.c:
+ (getDefaultGDKPointerDevice):
+ * platform/gtk/GtkVersioning.h:
+ * platform/gtk/PlatformScreenGtk.cpp:
+ (WebCore::getVisual):
+ (WebCore::screenAvailableRect):
+
+2010-10-06 Stephen White <senorblanco@chromium.org>
+
+ Reviewed by James Robinson.
+ https://bugs.webkit.org/show_bug.cgi?id=47282
+
+ Robustify the creation of SharedGraphicsContext3D against shader
+ compilation failures.
+
+ Covered by any canvas 2D layout test, when opened in chrome with
+ --enable-accelerated-2d-canvas --in-process-webgl.
+
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::create):
+ (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+
+2010-10-06 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
+ https://bugs.webkit.org/show_bug.cgi?id=47268
+
+ Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
+
+ * dom/ViewportArguments.cpp:
+ (WebCore::findConfigurationForViewportData):
+ * dom/ViewportArguments.h:
+
+2010-10-06 Renata Hodovan <reni@inf.u-szeged.hu>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGFEMergeNodeElement doesn't support dynamic invalidation, when attributes change.
+ https://bugs.webkit.org/show_bug.cgi?id=47181
+
+ Since feMergeNode doesn't have own renderer, we have to call the invalidation via its parent.
+
+ Tests: svg/dynamic-updates/SVGFEMergeNodeElement-dom-in-attr.html
+ svg/dynamic-updates/SVGFEMergeNodeElement-svgdom-in-prop.html
+
+ * svg/SVGFEMergeNodeElement.cpp:
+ (WebCore::SVGFEMergeNodeElement::svgAttributeChanged):
+ * svg/SVGFEMergeNodeElement.h:
+
+2010-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Remove unused code from gtk2drawing.c
+ https://bugs.webkit.org/show_bug.cgi?id=47086
+
+ gtk2drawing.c was copied from mozilla and contains a lot of code that is not
+ used by WebKit. Most of that unused code is uncompatible with gtk3, so
+ removing it will make easier porting to gtk3.
+
+ * platform/gtk/gtk2drawing.c:
+ (moz_gtk_get_widget_border):
+ (moz_gtk_widget_paint):
+ (moz_gtk_destroy_theme_parts_widgets):
+ * platform/gtk/gtkdrawing.h:
+
+2010-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Use pixbufs instead of pixmaps when creating platform cursors
+ https://bugs.webkit.org/show_bug.cgi?id=47087
+
+ gdk_cursor_new_from_pixmap() has been removed in gtk3. We can use a
+ pixbuf instead of a pixman and use gdk_cursor_new_from_pixbuf() instead
+ for both gtk2 and gtk3.
+
+ * platform/gtk/CursorGtk.cpp:
+ (WebCore::createNamedCursor):
+ * platform/gtk/GtkVersioning.c:
+ (gdk_cairo_format_for_content):
+ (gdk_cairo_surface_coerce_to_image):
+ (convert_alpha):
+ (convert_no_alpha):
+ (gdk_pixbuf_get_from_surface):
+ * platform/gtk/GtkVersioning.h:
+
+2010-10-06 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: add event listener breakpoints sidebar pane
+ https://bugs.webkit.org/show_bug.cgi?id=46738
+
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
+ (WebInspector.BreakpointManager.prototype.createXHRBreakpoint.breakpoint.compareTo):
+ (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
+ (WebInspector.NativeBreakpoint):
+ (WebInspector.NativeBreakpoint.prototype._setOnBackend.didSet):
+ (WebInspector.NativeBreakpoint.prototype._setOnBackend):
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.XHRBreakpointsSidebarPane.prototype._showEditBreakpointDialog):
+ (WebInspector.BreakpointItem):
+ (WebInspector.EventListenerBreakpointsSidebarPane):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCheckbox):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._categoryCheckboxClicked):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._eventNameCheckboxClicked):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointEnableChanged):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._updateCategoryCheckbox):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype.reset):
+ * inspector/front-end/EventListenersSidebarPane.js:
+ ():
+ * inspector/front-end/PropertiesSection.js:
+ (WebInspector.PropertiesSection):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ * inspector/front-end/inspector.css:
+ (.section .properties, .event-bar .event-properties):
+ (.section.expanded .properties, .event-bar.expanded .event-properties):
+ (ol.properties-tree):
+ (ol.properties-tree li):
+ (ol.properties-tree li.parent):
+ (ol.properties-tree li.parent::before):
+ (ol.properties-tree li.parent.expanded::before):
+ (ol.properties-tree li .info):
+ (ol.properties-tree ol, .stack-trace ol, ol.stack-trace):
+ (ol.properties-tree ol.expanded, .stack-trace ol, ol.stack-trace):
+ (ol.stack-trace):
+ (.event-listener-breakpoints .event-category):
+ (ol.event-listener-breakpoints.properties-tree .children li):
+ (.event-listener-breakpoints .checkbox-elem):
+ * inspector/front-end/inspector.js:
+ (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):
+ (WebInspector.createXHRBreakpointsSidebarPane):
+
+2010-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Port to gtk+3 (2.91.0)
+ https://bugs.webkit.org/show_bug.cgi?id=47249
+
+ Do not use GdkDrawable deprecated API
+
+ Some methods of GdkDrawable are deprecated in gtk2 and have been
+ remmoved in gtk3. Equivalent API has been added to GdkWindow.
+
+ * platform/gtk/GtkVersioning.c:
+ (getDefaultGDKPointerDevice):
+ * platform/gtk/GtkVersioning.h:
+ * platform/gtk/PlatformScreenGtk.cpp:
+ (WebCore::getVisual):
+ (WebCore::screenAvailableRect):
+
+2010-10-06 Ryuan Choi <ryuan.choi@samsung.com>
+
+ Reviewed by Antonio Gomes.
+
+ [EFL] Support Progress Tag
+ https://bugs.webkit.org/show_bug.cgi?id=45951
+
+ Implement to render progress tag.
+
+ No new tests. Existing tests in fast/dom/HTMLProgressElement.
+
+ * platform/efl/RenderThemeEfl.cpp:
+ (WebCore::RenderThemeEfl::paintThemePart):
+ (WebCore::RenderThemeEfl::edjeGroupFromFormType):
+ (WebCore::RenderThemeEfl::adjustProgressBarStyle):
+ (WebCore::RenderThemeEfl::paintProgressBar):
+ * platform/efl/RenderThemeEfl.h:
+
+2010-10-06 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Add KURL::protocolIsData()
+ https://bugs.webkit.org/show_bug.cgi?id=47219
+
+ * page/Page.cpp:
+ (WebCore::Page::userStyleSheetLocationChanged):
+ * page/SecurityOrigin.cpp:
+ (WebCore::SecurityOrigin::taintsCanvas):
+ * page/XSSAuditor.cpp:
+ (WebCore::XSSAuditor::findInRequest):
+ * platform/KURL.h:
+ (WebCore::KURL::protocolIsData):
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::dispatchSynchronousJob):
+ (WebCore::ResourceHandleManager::startJob):
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::fileLoadTimer):
+
+2010-10-06 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ CSSParser: Enable rule selector source range extraction.
+ API modification followed by clients.
+ https://bugs.webkit.org/show_bug.cgi?id=46367
+
+ Some code removal suggested by Darin Adler.
+
+ * css/CSSGrammar.y:
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::CSSParser):
+ (WebCore::CSSParser::parseSheet):
+ (WebCore::CSSParser::parseDeclaration):
+ (WebCore::CSSParser::createStyleRule):
+ (WebCore::CSSParser::markSelectorListStart):
+ (WebCore::CSSParser::markSelectorListEnd):
+ (WebCore::CSSParser::markRuleBodyStart):
+ (WebCore::CSSParser::markRuleBodyEnd):
+ (WebCore::CSSParser::markPropertyStart):
+ (WebCore::CSSParser::markPropertyEnd):
+ * css/CSSParser.h:
+ (WebCore::CSSParser::resetSelectorListMarks):
+ (WebCore::CSSParser::resetRuleBodyMarks):
+ (WebCore::CSSParser::resetPropertyMarks):
+ * css/CSSPropertySourceData.cpp:
+ * css/CSSPropertySourceData.h:
+ (WebCore::CSSRuleSourceData::create):
+ * inspector/InspectorCSSStore.cpp:
+ (WebCore::InspectorCSSStore::getRuleSourceData):
+ (WebCore::InspectorCSSStore::extractRanges):
+ (WebCore::InspectorCSSStore::getStyleAttributeRanges):
+ * inspector/InspectorCSSStore.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::getStyleSourceData):
+
+2010-10-06 Dirk Schulze <krit@webkit.org>
+
+ Added reviewer to commit r69187.
+
+2010-10-06 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG feMorphology - big radii cause huge ImageBuffer sizes
+ https://bugs.webkit.org/show_bug.cgi?id=47263
+
+ The current code in FEMorphology::determineAbsolutePaintRect calculates the smallest paint rect by inflate the paint rect
+ of a previous effect with the radius. This was meant as an optimization, but I forgot to clip the calculated image size
+ by the maximal effect size. This caused huge image sizes for big radii.
+
+ This is covered by svg/filters/feMorphology-invalid-radius.svg and fixes the crashes on Windows and Snow Leopard bots.
+
+ * platform/graphics/filters/FEMorphology.cpp:
+ (WebCore::FEMorphology::determineAbsolutePaintRect):
+
+2010-10-06 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Dirk Schulze.
+
+ Fixed crash in gtk bots (filter-empty-g.svg) after r69181.
+
+ * rendering/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::postApplyResource):
+
+2010-10-06 Antonio Gomes <agomes@rim.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Rename HitTestResult::rectFromPoint to rectForPoint
+ https://bugs.webkit.org/show_bug.cgi?id=47261
+
+ As per Kenneth Christiansen request inhttps://bugs.webkit.org/show_bug.cgi?id=46336#c20.
+
+ * WebCore.exp.in:
+ * dom/Document.cpp:
+ (WebCore::Document::nodesFromRect):
+ * rendering/EllipsisBox.cpp:
+ (WebCore::EllipsisBox::nodeAtPoint):
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::addNodeToRectBasedTestResult):
+ (WebCore::HitTestResult::rectForPoint):
+ * rendering/HitTestResult.h:
+ (WebCore::HitTestResult::rectForPoint):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::nodeAtPoint):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::nodeAtPoint):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::nodeAtPoint):
+ (WebCore::RenderBlock::hitTestColumns):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::nodeAtPoint):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::hitTestLayer):
+ (WebCore::RenderLayer::hitTestChildLayerColumns):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::nodeAtPoint):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::nodeAtPoint):
+
+2010-10-06 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Martin Robinson.
+
+ SVGs with filters look grainy when scaled
+ https://bugs.webkit.org/show_bug.cgi?id=5526
+
+ Fixed issues on Cairos shadow implementation after the changes to FilterEffects.
+ Cairo calculates the inflation of the effect rect itself. Respect this for FEGaussianBlur.
+ This is just a temporary solution, since Cairo and Qt will use ContextShadow soon.
+
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::drawBorderlessRectShadow):
+ (WebCore::GraphicsContext::applyPlatformShadow):
+ (WebCore::GraphicsContext::createShadowMask):
+ (WebCore::GraphicsContext::drawTiledShadow):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ * platform/graphics/filters/ImageBufferFilter.cpp:
+ (WebCore::ImageBufferFilter::ImageBufferFilter):
+ (WebCore::ImageBufferFilter::create):
+ * platform/graphics/filters/ImageBufferFilter.h:
+ (WebCore::ImageBufferFilter::filterRegion):
+ (WebCore::ImageBufferFilter::sourceImageRect):
+
+2010-10-06 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ Only execute first SVG text layout phase if needed
+ https://bugs.webkit.org/show_bug.cgi?id=47254
+
+ The first SVG text layout phase which computes the per-character metrics and extracts
+ the x/y/dx/dy/rotate values from the SVG DOM is currently executed upon every RenderSVGText::layout() call.
+
+ Optimize this, by only calling it:
+ - if x/y/dx/dy/rotate value lists change
+ - the style of a RenderSVGInlineText changes (eg. font-size changes influence metrics)
+ - the text content of any of the children in the <text> subtree change
+
+ No change in layout tests, a pure performance change - covered by existing tests.
+
+ * rendering/RenderSVGResourceGradient.cpp:
+ (WebCore::createMaskAndSwapContextForTextGradient): Adapt to renames, use RenderSVGText::locateRenderSVGTextAncestor().
+ (WebCore::clipToTextMask): Ditto.
+ * rendering/SVGRenderSupport.cpp:
+ * rendering/SVGRenderSupport.h: Move findTreeRootObject to RenderSVGText::locateRenderSVGTextAncestor().
+ * rendering/svg/RenderSVGInline.cpp:
+ (WebCore::RenderSVGInline::objectBoundingBox): adapt to renames, use RenderSVGText::locateRenderSVGTextAncestor().
+ (WebCore::RenderSVGInline::strokeBoundingBox): Ditto.
+ (WebCore::RenderSVGInline::repaintRectInLocalCoordinates): Ditto.
+ (WebCore::RenderSVGInline::absoluteQuads): Ditto.
+ * rendering/svg/RenderSVGInlineText.cpp:
+ (WebCore::RenderSVGInlineText::styleDidChange): Call setNeedsPositioningValuesUpdate() on the RenderSVGText root object, if diff == StyleDifferenceLayout.
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::RenderSVGText): Initialize m_needsPositioningValuesUpdate.
+ (WebCore::RenderSVGText::locateRenderSVGTextAncestor): New helper function, moved from SVGRenderSupport, to a more sensible place.
+ (WebCore::RenderSVGText::layout): Only execute the first SVG text layout phase, if m_needsPositioningValuesUpdate=true.
+ * rendering/svg/RenderSVGText.h:
+ (WebCore::RenderSVGText::setNeedsPositioningValuesUpdate):
+ (WebCore::toRenderSVGText): Add new helper casting methods, like most other renderers have.
+ * svg/SVGTextPositioningElement.cpp:
+ (WebCore::updatePositioningValuesInRenderer):
+ (WebCore::SVGTextPositioningElement::svgAttributeChanged): If x/y/dx/dy/rotate changes, call setNeedsPositioningValuesUpdate on the RenderSVGText root object.
+ (WebCore::SVGTextPositioningElement::childrenChanged): If any children changes (addition, removal), do the same.
+ * svg/SVGTextPositioningElement.h:
+
+2010-10-05 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [Extensions API] Expose access to resource bodies
+ Added support for encoding resource in WebInspector.getResourceContent()
+ https://bugs.webkit.org/show_bug.cgi?id=45953
+
+ * inspector/Inspector.idl: Added encoding parameter to getResourceContent()
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::getResourceContent):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp: Added sourceBytes() to return encoded representation of resource's binary body.
+ (WebCore::InspectorResource::sourceBytes):
+ * inspector/InspectorResource.h:
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.Resources.prototype.getContent):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._onGetResourceContent):
+ (WebInspector.ExtensionServer.prototype._onGetResourceContent.onContentAvailable):
+ (WebInspector.getEncodedResourceContent):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.getResourceContent):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.getResourceContent):
+
+2010-10-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47235
+
+ Make "lr" block-flow fieldsets work.
+
+ (1) Patched html.css rules for legends and fieldsets to use logical margins and padding.
+ (2) Converted just enough of computePreferredLogicalWidths to make basic examples work.
+ (3) Removed the extra border drawing code from fieldsets so that the "clip out the legend" approach
+ is now just always used. It's silly to keep the old border drawing code in (which has already gotten out
+ of sync with the base class) just to avoid a save/restore and some clipping.
+ (4) Modified the layout/painting routines to place the legend properly and to be able to draw it in
+ both the top and the left borders.
+
+ Added fast/blockflow/fieldsets.html
+
+ * css/html.css:
+ (legend):
+ (fieldset):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
+ (WebCore::RenderBlock::setLogicalLeftForChild):
+ (WebCore::RenderBlock::setLogicalTopForChild):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::computePreferredLogicalWidths):
+ * rendering/RenderBlock.h:
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::layoutLegend):
+ (WebCore::RenderFieldset::paintBoxDecorations):
+ (WebCore::RenderFieldset::paintMask):
+ * rendering/RenderFieldset.h:
+
+2010-10-06 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Move parseDataUrl() from CURL into own file
+ https://bugs.webkit.org/show_bug.cgi?id=41462
+
+ Move the data URL parsing algorithm into a new file to use it in ResourceHandleWin too.
+
+ * CMakeLists.txt:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/network/DataURL.cpp: Added.
+ (WebCore::handleDataURL):
+ * platform/network/DataURL.h: Added.
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::dispatchSynchronousJob):
+ (WebCore::ResourceHandleManager::startJob):
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::fileLoadTimer):
+
+2010-10-06 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGs with filters look grainy when scaled
+ https://bugs.webkit.org/show_bug.cgi?id=5526
+
+ SVG filter effects need smarter size calculation
+ https://bugs.webkit.org/show_bug.cgi?id=31370
+
+ SVG elements use Filters before own transformations
+ https://bugs.webkit.org/show_bug.cgi?id=32486
+
+ Calculate all filter results in device space instead of the filtered objects user space. This change is similar to
+ the patches for SVG Pattern and SVG Masker before. It avoids pixelation and guarantees smooth filter results for
+ every scale level and is independent of any transformation to the target element or any ancester of the target.
+ The second part of this patch reduces the size of every effect to the smallest affected region instead of the complete
+ filter primitive subregion (http://www.w3.org/TR/SVG/filters.html#FilterPrimitiveSubRegion). We just use the subregion
+ as clipping region, like mentioned in the SVG specification, to make the affected region even smaller now.
+
+ This is a huge speed up. The ECMA cloud (http://ejohn.org/files/ecma-cloud.svg) is more than 100 times faster on Gtk and
+ renders in less than a second.
+ Some examples on svg-wow.org can be viewed the first time now, since the subregions were much bigger than the affected
+ region.
+ There's still more potential to speed up filters, by further reducing the ImageBuffer sizes.
+ Renamed repaintRectInLocalCoordinates to absolutePaintRect, since all coordinates are in device space instead of the
+ user space now.
+ The absolute paint rect is calculated by determineAbsolutePaintRect() and gets called by FilterEffect::effectContext() on
+ applying the effect.
+ Partly rewrote filter resolution (http://www.w3.org/TR/SVG/filters.html#FilterElementFilterResAttribute) to work with the
+ new concept. This also corrects the old behavior to match the SVG specification.
+
+ Tests: svg/filters/filterRes1.svg
+ svg/filters/filterRes2.svg
+ svg/filters/filterRes3.svg
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp: Call setAbsolutePaintRect instead of setRepaintRectInLocalCoordinates.
+ (WebCore::GraphicsContext::createShadowMask):
+ * platform/graphics/filters/FEBlend.cpp: Renamed repaintRectInLocalCoordinates to absolutePaintRect.
+ (WebCore::FEBlend::apply):
+ * platform/graphics/filters/FEColorMatrix.cpp: Ditto.
+ (WebCore::FEColorMatrix::apply):
+ * platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
+ (WebCore::FEComponentTransfer::apply):
+ * platform/graphics/filters/FEComposite.cpp: Ditto.
+ (WebCore::FEComposite::determineAbsolutePaintRect):
+ (WebCore::FEComposite::apply):
+ * platform/graphics/filters/FEComposite.h:
+ * platform/graphics/filters/FEConvolveMatrix.cpp: Ditto.
+ (WebCore::FEConvolveMatrix::apply):
+ * platform/graphics/filters/FEConvolveMatrix.h:
+ (WebCore::FEConvolveMatrix::determineAbsolutePaintRect):
+ * platform/graphics/filters/FEDisplacementMap.cpp: Ditto.
+ (WebCore::FEDisplacementMap::apply):
+ * platform/graphics/filters/FEDisplacementMap.h:
+ (WebCore::FEDisplacementMap::determineAbsolutePaintRect):
+ * platform/graphics/filters/FEFlood.cpp: Ditto.
+ (WebCore::FEFlood::apply):
+ * platform/graphics/filters/FEFlood.h:
+ (WebCore::FEFlood::determineAbsolutePaintRect):
+ * platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
+ (WebCore::calculateKernelSize):
+ (WebCore::FEGaussianBlur::determineAbsolutePaintRect):
+ (WebCore::FEGaussianBlur::apply):
+ * platform/graphics/filters/FEGaussianBlur.h:
+ * platform/graphics/filters/FELighting.cpp: Ditto.
+ (WebCore::FELighting::apply):
+ * platform/graphics/filters/FEMerge.cpp: Ditto.
+ (WebCore::FEMerge::apply):
+ * platform/graphics/filters/FEMorphology.cpp: Ditto.
+ (WebCore::FEMorphology::determineAbsolutePaintRect):
+ (WebCore::FEMorphology::apply):
+ * platform/graphics/filters/FEMorphology.h:
+ * platform/graphics/filters/FEOffset.cpp: Ditto.
+ (WebCore::FEOffset::determineAbsolutePaintRect):
+ (WebCore::FEOffset::apply):
+ * platform/graphics/filters/FEOffset.h:
+ * platform/graphics/filters/FETile.cpp: Ditto.
+ (WebCore::FETile::determineFilterPrimitiveSubregion):
+ (WebCore::FETile::apply):
+ * platform/graphics/filters/FETile.h:
+ (WebCore::FETile::determineAbsolutePaintRect):
+ * platform/graphics/filters/FETurbulence.cpp: Ditto.
+ (WebCore::FETurbulence::apply):
+ * platform/graphics/filters/FETurbulence.h:
+ (WebCore::FETurbulence::determineAbsolutePaintRect):
+ * platform/graphics/filters/Filter.h:
+ (WebCore::Filter::applyHorizontalScale): Map horizontal effect values to absolute coordinates.
+ (WebCore::Filter::applyVerticalScale): Map vertical effect values to absolute coordinates.
+ (WebCore::Filter::mapAbsolutePointToLocalPoint):
+ (WebCore::Filter::filterRegionInUserSpace):
+ * platform/graphics/filters/FilterEffect.cpp: Ditto.
+ (WebCore::FilterEffect::determineFilterPrimitiveSubregion):
+ (WebCore::FilterEffect::determineAbsolutePaintRect):
+ (WebCore::FilterEffect::requestedRegionOfInputImageData):
+ (WebCore::FilterEffect::drawingRegionOfInputImage):
+ (WebCore::FilterEffect::effectContext):
+ * platform/graphics/filters/FilterEffect.h:
+ (WebCore::FilterEffect::absolutePaintRect):
+ (WebCore::FilterEffect::setAbsolutePaintRect):
+ (WebCore::FilterEffect::maxEffectRect): The subregion in absolute coordinates for SVG.
+ (WebCore::FilterEffect::setMaxEffectRect):
+ * platform/graphics/filters/SourceAlpha.cpp: Ditto.
+ (WebCore::SourceAlpha::determineAbsolutePaintRect):
+ (WebCore::SourceAlpha::apply):
+ * platform/graphics/filters/SourceAlpha.h:
+ * platform/graphics/filters/SourceGraphic.cpp: Ditto.
+ (WebCore::SourceGraphic::determineAbsolutePaintRect):
+ (WebCore::SourceGraphic::apply):
+ * platform/graphics/filters/SourceGraphic.h:
+ * rendering/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::applyResource):
+ (WebCore::RenderSVGResourceFilter::postApplyResource):
+ * rendering/RenderSVGResourceFilter.h:
+ (WebCore::FilterData::FilterData):
+ * svg/graphics/filters/SVGFEImage.cpp: Ditto.
+ (WebCore::FEImage::apply):
+ * svg/graphics/filters/SVGFEImage.h:
+ (WebCore::FEImage::determineAbsolutePaintRect):
+ * svg/graphics/filters/SVGFilter.cpp:
+ (WebCore::SVGFilter::SVGFilter):
+ (WebCore::SVGFilter::determineFilterPrimitiveSubregion):
+ (WebCore::SVGFilter::applyHorizontalScale):
+ (WebCore::SVGFilter::applyVerticalScale):
+ (WebCore::SVGFilter::create):
+ * svg/graphics/filters/SVGFilter.h:
+ (WebCore::SVGFilter::effectBoundingBoxMode):
+ (WebCore::SVGFilter::filterRegionInUserSpace):
+ (WebCore::SVGFilter::filterRegion):
+ (WebCore::SVGFilter::mapAbsolutePointToLocalPoint): Map absolute point to local point in userspace.
+ (WebCore::SVGFilter::sourceImageRect):
+ (WebCore::SVGFilter::maxImageSize):
+
+2010-10-06 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: add "Set Breakpoint" item to XHR resource context menu.
+ https://bugs.webkit.org/show_bug.cgi?id=47085
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype._contextMenu):
+
+2010-10-05 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add idl and mock classes for FileSystemSync for FileSystem API
+ https://bugs.webkit.org/show_bug.cgi?id=46405
+
+ Added bunch of *Sync classes, plus refactored some classes:
+ Added DOMFileSystemBase as a common base class for DOMFileSystem and
+ DOMFileSystemSync.
+ Added EntryBase as a common base class for Entry and EntrySync.
+ Added DirectoryReaderBase as a common base class for DirectoryReader and
+ DirectoryReaderSync.
+
+ Test: fast/filesystem/workers/
+
+ * CMakeLists.txt: Added new files.
+ * DerivedSources.cpp: Added new files.
+ * DerivedSources.make: Added new files.
+ * GNUmakefile.am: Added new files.
+ * WebCore.gypi: Added new files.
+ * WebCore.pri: Added new files.
+ * WebCore.pro: Added new files.
+ * WebCore.vcproj/WebCore.vcproj: Added new files. Also removed the duplicated fileapi\FileEntry.cpp entry.
+ * WebCore.xcodeproj/project.pbxproj: Added new files.
+ * bindings/js/JSDirectoryEntrySyncCustom.cpp: Added.
+ * bindings/js/JSEntrySyncCustom.cpp: Added.
+ * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp: Added.
+ * bindings/v8/custom/V8EntrySyncCustom.cpp: Added.
+ * fileapi/DOMFileSystemBase.cpp: Added.
+ * fileapi/DOMFileSystemBase.h: Added.
+ * fileapi/DOMFileSystemSync.cpp: Added.
+ * fileapi/DOMFileSystemSync.h: Added.
+ * fileapi/DOMFileSystemSync.idl: Added.
+ * fileapi/DirectoryEntrySync.cpp: Added.
+ * fileapi/DirectoryEntrySync.h: Added.
+ * fileapi/DirectoryEntrySync.idl: Added.
+ * fileapi/DirectoryReaderBase.h: Added.
+ * fileapi/DirectoryReaderSync.cpp: Added.
+ * fileapi/DirectoryReaderSync.h: Added.
+ * fileapi/DirectoryReaderSync.idl: Added.
+ * fileapi/EntryArraySync.cpp: Added.
+ * fileapi/EntryArraySync.h: Added.
+ * fileapi/EntryArraySync.idl: Added.
+ * fileapi/EntryBase.h: Added.
+ * fileapi/EntrySync.cpp: Added.
+ * fileapi/EntrySync.h: Added.
+ * fileapi/EntrySync.idl: Added.
+ * fileapi/FileEntrySync.cpp: Added.
+ * fileapi/FileEntrySync.h: Added.
+ * fileapi/FileEntrySync.idl: Added.
+
+2010-10-05 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ REGRESSION (r67166): "Placeholder" text remains in input box after 2nd focus()
+ https://bugs.webkit.org/show_bug.cgi?id=45940
+
+ Test: fast/forms/input-placeholder-focus-twice.html
+
+ * html/HTMLFormControlElement.h: Make supportsPlaceholder() public.
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::updateFromElement):
+ We always need to update the renderer value with the DOM value if
+ the element supports the placeholder feature.
+ Note: the placeholder feature and "unacceptable renderer value"
+ are exclusive.
+
+2010-10-05 Kyusun Kim <maniagoon@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Translate key code in PlatformKeyboardEvent with IKeysMapping
+ https://bugs.webkit.org/show_bug.cgi?id=47234
+
+ Brew MP devices have a variey of key configurations and use modifiers to
+ input capital letters, symbols and special characters. Use IKeysMapping to translate key code.
+
+ * platform/brew/PlatformKeyboardEventBrew.cpp:
+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
+
+2010-10-05 W. James MacLean <wjmaclean@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Add mipmap support for ImageLayerChromium
+ https://bugs.webkit.org/show_bug.cgi?id=46493
+
+ Mipmap behaviour can be tested with existing tests.
+ Tests in LayoutTests/compositing/images/ will detect if
+ mipmaps fail.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::SharedValues::SharedValues):
+ (WebCore::isPowerOfTwo):
+ (WebCore::ContentLayerChromium::updateTextureRect):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ (WebCore::ContentLayerChromium::SharedValues::npotSupported):
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContents):
+
+2010-10-05 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Issue in treebuilder parsing related to table tags
+ https://bugs.webkit.org/show_bug.cgi?id=47190
+
+ Update ASSERT to match the spec and our behavior.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndTagForInCell):
+
+2010-10-05 Victoria Kirst <vrk@google.com>
+
+ Reviewed by James Robinson.
+
+ VideoLayerChromium releases old resources if the LayerRenderer changes.
+ https://bugs.webkit.org/show_bug.cgi?id=47030
+
+ Refactored LayerChromium to have a virtual cleanupResources() method
+ that will release textures/other context-dependent resources when a
+ LayerRenderer changes. ContentLayerChromium and VideoLayerChromium now
+ override this method to perform cleanup.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setLayerRenderer):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::cleanupResources):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::~VideoLayerChromium):
+ (WebCore::VideoLayerChromium::cleanupResources):
+ * platform/graphics/chromium/VideoLayerChromium.h:
+
+2010-10-05 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by Jian Li.
+
+ FileEntry::file needs to be implemented
+ https://bugs.webkit.org/show_bug.cgi?id=47192
+
+ Test: fast/filesystem/file-from-file-entry.html
+
+ * fileapi/FileEntry.cpp:
+ (WebCore::FileEntry::file): Implemented.
+
+2010-09-29 Alpha Lam <hclam@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Render textures in video frame directly.
+ https://bugs.webkit.org/show_bug.cgi?id=46765
+
+ Render textures in VideoLayerChromium directly if the video frame type
+ is GL texture. In the future VideoLayerChromium will not allocate
+ textures and perform textures upload as those operations will be done
+ in Chromium to minimize memory copy. This patch will help moving toward
+ this direction and facilitate hardware video decoding.
+
+ * platform/graphics/chromium/VideoFrameChromium.h:
+ * platform/graphics/chromium/VideoFrameProvider.h:
+ (WebCore::VideoFrameProvider::~VideoFrameProvider):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::VideoLayerChromium):
+ (WebCore::VideoLayerChromium::~VideoLayerChromium):
+ (WebCore::VideoLayerChromium::updateContents):
+ (WebCore::VideoLayerChromium::draw):
+ (WebCore::VideoLayerChromium::releaseCurrentFrame):
+ (WebCore::VideoLayerChromium::resetFrameParameters):
+ (WebCore::VideoLayerChromium::saveCurrentFrame):
+ * platform/graphics/chromium/VideoLayerChromium.h:
+ (WebCore::VideoLayerChromium::SharedValues::initialized):
+
+2010-10-05 Fady Samuel <fsamuel@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (r65539): One pixel white gaps when scrolling Trac changeset pages
+ https://bugs.webkit.org/show_bug.cgi?id=45131
+
+ When border-collapse: separate property is set on the table, paintObject
+ may skip repainting cells, if the dirty region only touches one row/col of pixels.
+
+ Test: fast/table/simple_paint_separate_borders.html
+
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::paintObject):
+ Don't subtract one from the right and bottom of the dirty paint rect.
+
+2010-10-05 Sanjeev Radhakrishnan <sanjeevr@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ PluginDocument now holds on to the created plugin node so that the pluginNode() and pluginWidget() methods can return the correct node.
+ https://bugs.webkit.org/show_bug.cgi?id=47129
+
+ * html/PluginDocument.cpp:
+ (WebCore::PluginDocumentParser::createDocumentStructure):
+ (WebCore::PluginDocument::pluginWidget):
+ (WebCore::PluginDocument::pluginNode):
+ * html/PluginDocument.h:
+ (WebCore::PluginDocument::setPluginNode):
+
+2010-10-05 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Tor Arne Vestbø.
+
+ [Qt] Re-enable single-NPP_SetWindow quirk for 64-bit
+ https://bugs.webkit.org/show_bug.cgi?id=45363
+
+ This is still causing trouble for people, so let's put the
+ quirk back until we can figure this out properly.
+
+ * plugins/PluginPackage.cpp:
+ (WebCore::PluginPackage::determineQuirks):
+
+2010-10-05 Jian Li <jianli@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ [V8] Add FileReader to active DOM map
+ https://bugs.webkit.org/show_bug.cgi?id=47205
+
+ We need to have a custom FileReader V8 constructor in order to add object
+ into active DOM map to prevent it from GC-ed when it is still in-use.
+
+ * Android.v8bindings.mk:
+ * WebCore.gypi:
+ * bindings/scripts/CodeGeneratorV8.pm:
+ * bindings/v8/custom/V8FileReaderCustom.cpp: Added.
+ (WebCore::V8FileReader::constructorCallback):
+ * fileapi/FileReader.idl:
+
+2010-10-05 Vincent Scheib <scheib@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] 51304 GPU compositor resorts to "slow" text rendering for base page layer
+ https://bugs.webkit.org/show_bug.cgi?id=47193
+
+ Test: Accelerated compositor test infrastructure still coming online. Tested manually.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
+ (WebCore::LayerRendererChromium::prepareToDrawLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+
+2010-10-05 Nico Weber <thakis@chromium.org>
+
+ Reviewed by Andreas Kling.
+
+ Fix clang build
+ https://bugs.webkit.org/show_bug.cgi?id=47198
+
+ * page/Chrome.h:
+ Declare ViewportArguments as struct, not as class.
+
+2010-10-05 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47204
+
+ Make isSelfCollapsingBlock use logical height instead of height in all its checks.
+
+ Added fast/blockflow/self-collapsing-block.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::isSelfCollapsingBlock):
+
+2010-10-05 Eric Uhrhane <ericu@chromium.org>
+
+ Reviewed by David Levin.
+
+ Relax restrictions on FileWriter::didWrite calls
+ https://bugs.webkit.org/show_bug.cgi?id=47139
+
+ No new tests; they're still waiting on the first implementation.
+
+ * fileapi/FileWriter.cpp:
+ (WebCore::FileWriter::FileWriter):
+ (WebCore::FileWriter::write):
+ (WebCore::FileWriter::didWrite):
+ * fileapi/FileWriter.h:
+
+2010-10-05 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [chromium] getData('text/uri-list') should return the same thing that was passed to setData('text/uri-list')
+ https://bugs.webkit.org/show_bug.cgi?id=46943
+
+ We no longer parse the input of setData('text/uri-list') and only store
+ the valid URLs that were parsed out.
+
+ Test: editing/pasteboard/dataTransfer-setData-getData.html
+
+ * platform/chromium/ChromiumDataObject.cpp:
+ (WebCore::ChromiumDataObject::clearData):
+ (WebCore::ChromiumDataObject::clearAllExceptFiles):
+ (WebCore::ChromiumDataObject::types):
+ (WebCore::ChromiumDataObject::getData):
+ (WebCore::ChromiumDataObject::setData):
+ * platform/chromium/ChromiumDataObject.h:
+
+2010-10-05 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Support FontPlatformData::isFixedPitch for custom fonts
+ https://bugs.webkit.org/show_bug.cgi?id=47124
+
+ Instead of determining whether or not a font is a fixed-width font
+ lazily, do it up front. For fonts not backed by Fontconfig patterns,
+ fetch information about whether or not the font is fixed-width from
+ the FreeType face.
+
+ No new tests as this should not change functionality.
+
+ * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
+ (WebCore::FontPlatformData::FontPlatformData): Initialize the m_fixedWidth member
+ from the Fontconfig pattern or the FreeType face.
+ (WebCore::FontPlatformData::operator=): Copy over the m_fixedWidth member.
+ (WebCore::FontPlatformData::isFixedPitch): Just return the value of the m_fixedWidth member.
+ * platform/graphics/cairo/FontPlatformDataFreeType.h: Added an m_fixedWidth member.
+
+2010-10-05 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47199
+
+ Make float positioning work in block layout with block children.
+ It doesn't work yet from inside line layout, since line layout is unpatched.
+
+ Added fast/blockflow/floats-in-block-layout.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::adjustFloatingBlock):
+ (WebCore::RenderBlock::setLogicalLeftForChild):
+ (WebCore::RenderBlock::setLogicalTopForChild):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::positionNewFloats):
+ (WebCore::RenderBlock::logicalLeftOffsetForLine):
+ (WebCore::RenderBlock::logicalRightOffsetForLine):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::FloatingObject::type):
+ (WebCore::RenderBlock::FloatingObject::renderer):
+ (WebCore::RenderBlock::logicalRightForFloat):
+ (WebCore::RenderBlock::setLogicalTopForFloat):
+ (WebCore::RenderBlock::setLogicalLeftForFloat):
+ (WebCore::RenderBlock::setLogicalHeightForFloat):
+ (WebCore::RenderBlock::setLogicalWidthForFloat):
+
+2010-10-05 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Web process crash when pressing modifiers in input field
+ https://bugs.webkit.org/show_bug.cgi?id=44935
+
+ Revert part of the http://trac.webkit.org/changeset/69105 due to a
+ test regression. Unix: Add ASSERTs to plugin related code. These
+ will fail if Qt WebKit2 is used with plugins, unless code is not
+ fixed before.
+
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::setXKeyEventSpecificFields): Use qKeyEvent, Use ASSERT as a reminder.
+
+2010-10-05 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioBasicProcessorNode files
+ https://bugs.webkit.org/show_bug.cgi?id=46495
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioBasicProcessorNode.cpp: Added.
+ (WebCore::AudioBasicProcessorNode::AudioBasicProcessorNode):
+ (WebCore::AudioBasicProcessorNode::initialize):
+ (WebCore::AudioBasicProcessorNode::uninitialize):
+ (WebCore::AudioBasicProcessorNode::process):
+ (WebCore::AudioBasicProcessorNode::pullInputs):
+ (WebCore::AudioBasicProcessorNode::reset):
+ (WebCore::AudioBasicProcessorNode::checkNumberOfChannelsForInput):
+ (WebCore::AudioBasicProcessorNode::numberOfChannels):
+ * webaudio/AudioBasicProcessorNode.h: Added.
+ (WebCore::AudioBasicProcessorNode::processor):
+
+2010-10-05 Chris Marrin <cmarrin@apple.com>
+
+ Unreviewed.
+
+ The platform/graphics/gpu folder was mistakenly inside the filters folder.
+ I moved it to the right place in the Group Tree.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-10-05 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Fix ownership of GraphicsContext3D in SharedGraphicsContext3D to prevent early deallocation and crash
+ https://bugs.webkit.org/show_bug.cgi?id=47197
+
+ This is work in progress and the crash only happens with ACCELERATED_2D_CANVAS turned on (which is off
+ by default). Many existing test cases will crash before and after this patch.
+
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::create):
+
+2010-10-05 Tony Chang <tony@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ [chromium] properly paint really small scrollbar arrows on linux
+ https://bugs.webkit.org/show_bug.cgi?id=47109
+
+ * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
+ (WebCore::ScrollbarThemeChromiumLinux::buttonSize): Clamp button size based on available size. This matches what
+ we do on Win.
+
+2010-10-05 Nate Chapin <japhet@chromium.org>
+
+ Reviewed by David Levin.
+
+ Remove unused CachedResource::Status values (New and NotCached).
+ https://bugs.webkit.org/show_bug.cgi?id=47132
+
+ Refactor only, no new tests.
+
+ * loader/CachedResource.h:
+ * loader/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::checkCacheObjectStatus):
+
+2010-10-04 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ Rename get* and open*Cursor per the spec on IDBIndex
+ https://bugs.webkit.org/show_bug.cgi?id=46906
+
+ The spec changed so that:
+ IDBIndex.get -> getKey
+ IDBIndex.getObject -> get
+ IDBIndex.openCursor -> openKeyCursor
+ IDBIndex.openObjectCursor -> openCursor
+
+ Existing tests cover since this is just renaming stuff.
+
+ * storage/IDBIndex.cpp:
+ (WebCore::IDBIndex::openCursor):
+ (WebCore::IDBIndex::openKeyCursor):
+ (WebCore::IDBIndex::get):
+ (WebCore::IDBIndex::getKey):
+ * storage/IDBIndex.h:
+ * storage/IDBIndex.idl:
+ * storage/IDBIndexBackendImpl.cpp:
+ (WebCore::IDBIndexBackendImpl::openCursor):
+ (WebCore::IDBIndexBackendImpl::openKeyCursor):
+ (WebCore::IDBIndexBackendImpl::get):
+ (WebCore::IDBIndexBackendImpl::getKey):
+ * storage/IDBIndexBackendImpl.h:
+ * storage/IDBIndexBackendInterface.h:
+
+2010-10-05 Keith Kyzivat <keith.kyzivat@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] Fix breakage in RVCT 2.2 compile
+ https://bugs.webkit.org/show_bug.cgi?id=47187
+
+ Fix bug in RVCT 2.2 compile for Symbian^3 in html/canvas/Int32Array.h and
+ html/canvas/Uin8Array.h
+ For RVCT2.2, the using clause is unneeded, and can be omitted.
+
+ A Test case cannot be made for this since this is a build-related issue.
+
+ * html/canvas/Int32Array.h:
+ * html/canvas/Uint8Array.h:
+
+2010-10-04 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ IDBDatabase::createObjectStore/removeObjectStore and IDBObjectStore::createIndex/removeIndex should be synchronous.
+ https://bugs.webkit.org/show_bug.cgi?id=46883
+
+ Makes the schema manipulation methods synchronous. Modifies the transaction
+ logic to support tasks that may have pending events as well as tasks that
+ don't have such events.
+
+ * storage/IDBDatabase.cpp:
+ (WebCore::IDBDatabase::createObjectStore):
+ (WebCore::IDBDatabase::removeObjectStore):
+ * storage/IDBDatabase.h:
+ * storage/IDBDatabase.idl:
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::createObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
+ (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::removeObjectStoreInternal):
+ * storage/IDBDatabaseBackendImpl.h:
+ * storage/IDBDatabaseBackendInterface.h:
+ * storage/IDBIndexBackendImpl.cpp:
+ (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
+ * storage/IDBIndexBackendImpl.h:
+ (WebCore::IDBIndexBackendImpl::create):
+ (WebCore::IDBIndexBackendImpl::id):
+ (WebCore::IDBIndexBackendImpl::setId):
+ * storage/IDBObjectStore.cpp:
+ (WebCore::IDBObjectStore::createIndex):
+ (WebCore::IDBObjectStore::removeIndex):
+ * storage/IDBObjectStore.h:
+ * storage/IDBObjectStore.idl:
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl):
+ (WebCore::IDBObjectStoreBackendImpl::createIndex):
+ (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
+ (WebCore::IDBObjectStoreBackendImpl::removeIndex):
+ (WebCore::IDBObjectStoreBackendImpl::removeIndexInternal):
+ * storage/IDBObjectStoreBackendImpl.h:
+ (WebCore::IDBObjectStoreBackendImpl::create):
+ (WebCore::IDBObjectStoreBackendImpl::id):
+ (WebCore::IDBObjectStoreBackendImpl::setId):
+ (WebCore::IDBObjectStoreBackendImpl::autoIncrement):
+ * storage/IDBObjectStoreBackendInterface.h:
+ * storage/IDBTransactionBackendImpl.cpp:
+ (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
+ (WebCore::IDBTransactionBackendImpl::objectStore):
+ (WebCore::IDBTransactionBackendImpl::scheduleTask):
+ (WebCore::IDBTransactionBackendImpl::abort):
+ (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents):
+ (WebCore::IDBTransactionBackendImpl::run):
+ (WebCore::IDBTransactionBackendImpl::taskTimerFired):
+ (WebCore::IDBTransactionBackendImpl::taskEventTimerFired):
+ * storage/IDBTransactionBackendImpl.h:
+
+2010-10-05 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ WAI-ARIA 'marquee' role live region uses aria-live="polite", should use aria-live="off"
+ https://bugs.webkit.org/show_bug.cgi?id=47185
+
+ Test: platform/mac/accessibility/aria-liveregion-marquee-default.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::ariaLiveRegionStatus):
+
+2010-10-05 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Interior scrollbars do not draw their background properly
+ https://bugs.webkit.org/show_bug.cgi?id=47096
+
+ Correct the method that the GTK+ theme drawing code uses to
+ draw scrolled window backgrounds. Now it uses gtk_paint_shadow,
+ the same as the actual code from GTK+.
+
+ No new tests as this is very hard to write tests for. The bug only
+ manifests on some GTK+ themes and we have no test harness mechanism
+ for testing rendering with non-default GTK+ themes.
+
+ * platform/gtk/ScrollbarThemeGtk.cpp:
+ (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): No longer
+ initialize the widget state, as it's unused by the callee.
+ (WebCore::ScrollbarThemeGtk::paint): Remove an inaccurate comment.
+ * platform/gtk/gtk2drawing.c:
+ (moz_gtk_scrolled_window_paint): Paint scrolled window backgrounds
+ with gtk_paint_shadow instead of gtk_paint_box.
+
+2010-10-05 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Use PlatformRefPtr instead of OwnPtr in FileSystem
+ https://bugs.webkit.org/show_bug.cgi?id=47025
+
+ PlatformRefPtr is a better choice here because all Brew MP instances are
+ reference counted.
+
+ * platform/brew/FileSystemBrew.cpp:
+ (WebCore::getFileSize):
+ (WebCore::fileExists):
+ (WebCore::deleteFile):
+ (WebCore::deleteEmptyDirectory):
+ (WebCore::canonicalPath):
+ (WebCore::makeAllDirectories):
+ (WebCore::openTemporaryFile):
+
+2010-10-05 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [GTK] Complex text rendering does not render custom fonts
+ https://bugs.webkit.org/show_bug.cgi?id=41091
+
+ For fonts that do not have a FontConfig pattern (including custom
+ fonts), fall back to the simple text rendering path. This is a work-
+ -around for not supporting Pango rendering with non-FontConfig fonts.
+
+ Test: platform/gtk/fonts/font-face-with-complex-text.html
+
+ * platform/graphics/gtk/FontGtk.cpp:
+ (WebCore::Font::drawComplexText): Fall back to the simple path for custom fonts.
+ (WebCore::Font::floatWidthForComplexText): Ditto.
+ (WebCore::Font::offsetForPositionForComplexText): Ditto.
+ (WebCore::Font::selectionRectForComplexText): Ditto.
+
+2010-10-05 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Use PlatformRefPtr in getDisplayInfo
+ https://bugs.webkit.org/show_bug.cgi?id=47023
+
+ Use PlatformRefPtr to release IBitmap* automatically.
+
+ * platform/brew/ScreenBrew.cpp:
+ (WebCore::getDisplayInfo):
+
+2010-10-05 Kristian Monsen <kristianm@google.com>
+
+ Reviewed by Steve Block.
+
+ Including JavaScriptCore/config.h from WebCore/config.h
+ instead of from WebCorePrefix.h.
+ https://bugs.webkit.org/show_bug.cgi?id=47179
+
+ No new tests, just changing where files are included.
+
+ * WebCorePrefix.h:
+ * config.h:
+
+2010-10-05 Jakob Petsovits <jpetsovits@rim.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Make build work with QT_NO_CURSOR
+ https://bugs.webkit.org/show_bug.cgi?id=46097
+
+ Add a missing include.
+
+ * platform/qt/QWebPageClient.h:
+
+2010-10-05 Jakob Petsovits <jpetsovits@rim.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Make build work with QT_NO_CURSOR
+ https://bugs.webkit.org/show_bug.cgi?id=46097
+
+ createCustomCursor() is a static function and not used
+ in that file if QT_NO_CURSOR is defined, so rather than
+ making it return 0, it should not exist altogether.
+
+ * platform/qt/CursorQt.cpp:
+ (WebCore::createCustomCursor):
+
+2010-10-05 Adam Roben <aroben@apple.com>
+
+ Windows linker warning fix
+
+ * WebCore.vcproj/WebCore.vcproj: Exclude JSDOMTokenList.cpp from the
+ build, since it is already being compiled via DerivedSources.cpp. Also
+ let VS reorder some files.
+
+2010-10-05 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Web process crash when pressing modifiers in input field
+ https://bugs.webkit.org/show_bug.cgi?id=44935
+
+ Fix null pointer dereference by not using
+ PlatformKeyboardEvent::m_qtEvent. This member is not set when
+ event comes from WebKit2. Unix: Add ASSERTs to plugin related
+ code. These will fail if WebKit2 is used with plugins, unless code
+ is not fixed before. Symbian: Add ASSERT to code which uses
+ qtEvent(). It will fail when WebKit2 is enabled for Symbian, if
+ code is not fixed before.
+
+ * platform/PlatformKeyboardEvent.h:
+ * platform/qt/PlatformKeyboardEventQt.cpp:
+ (WebCore::isVirtualKeyCodeRepresentingCharacter): Added.
+ (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent): Avoid using m_qtEvent.
+ (WebCore::PlatformKeyboardEvent::nativeModifiers): Added. Use ASSERT as a reminder.
+ (WebCore::PlatformKeyboardEvent::nativeScanCode): Added. Use ASSERT as a reminder.
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::setXKeyEventSpecificFields):
+ * plugins/symbian/PluginViewSymbian.cpp:
+ (WebCore::PluginView::handleKeyboardEvent): Add ASSERT as a reminder.
+
+2010-10-05 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Csaba Osztrogonác.
+
+ Add ENABLE(ACCELERATED_2D_CANVAS) guard to LoopBlinnLocalTriangulator.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=47115
+
+ LoopBlinnLocalTriangulator.cpp depends on LoopBlinnMathUtils.cpp which is guarded by
+ ENABLE(ACCELERATED_2D_CANVAS).
+
+ * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp:
+
+2010-10-05 Satish Sampath <satish@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Added event onwebkitspeechchange to invoke on new speech input results.
+ https://bugs.webkit.org/show_bug.cgi?id=47127
+
+ * dom/EventNames.h: Added webkitspeechchange event name.
+ * html/HTMLAttributeNames.in: Added onwebkitspeechchange attribute name.
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::parseMappedAttribute): Handle new attribute set.
+ (WebCore::HTMLInputElement::dispatchWebkitSpeechChangeEvent): Invoke the event handler.
+ * html/HTMLInputElement.h:
+ * html/HTMLInputElement.idl: Added attribute to IDL.
+ * rendering/TextControlInnerElements.cpp:
+ (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): Invoke new event handler instead of onChange
+
+2010-10-05 Satish Sampath <satish@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ Rename @webkitspeech to @x-webkit-speech to follow HTML5 convention
+ https://bugs.webkit.org/show_bug.cgi?id=46873
+
+ The @webkitspeech attribute is renamed to @x-webkit-speech per the HTML5 spec for extension
+ attributes. The DOM attribute in IDL was renamed to 'webkitSpeech' as well. But the generated
+ code for the attribute did not match the generated code for the IDL, so I modified
+ dom/make_names.pl to generate the appropriate name for such extension attributes.
+
+ * bindings/generic/RuntimeEnabledFeatures.h: Rename flag accessor to match IDL attribute name.
+ (WebCore::RuntimeEnabledFeatures::webkitSpeechEnabled):
+ * dom/make_names.pl: Additions to generate names for x-webkit-xxxx attributes that match the
+ generated code from IDL and remember the original names including the x- prefix when writing
+ out the cpp files.
+ * html/HTMLAttributeNames.in: Rename @webkitspeech to @x-webkit-speech
+ * html/HTMLInputElement.idl: Rename @webkitspeech to @webkitSpeech
+
+2010-10-04 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [Chromium][Extension API] provide tab id of inspected tab in extension API
+ https://bugs.webkit.org/show_bug.cgi?id=47080
+
+ * inspector/front-end/ExtensionServer.js: Added support for platform-specific extensions API.
+ (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript):
+
+2010-10-05 Sanjeev Radhakrishnan <sanjeevr@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Fixed implementation of pluginWidgetFromDocument to search for the "embed" element rather than just use the first child.
+ https://bugs.webkit.org/show_bug.cgi?id=47129
+
+ * html/PluginDocument.cpp:
+ (WebCore::PluginDocumentParser::pluginWidgetFromDocument):
+
+2010-10-05 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add BiquadDSPKernel files
+ https://bugs.webkit.org/show_bug.cgi?id=46528
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/BiquadDSPKernel.cpp: Added.
+ (WebCore::BiquadDSPKernel::process):
+ * webaudio/BiquadDSPKernel.h: Added.
+ (WebCore::BiquadDSPKernel::BiquadDSPKernel):
+ (WebCore::BiquadDSPKernel::reset):
+ (WebCore::BiquadDSPKernel::biquadProcessor):
+
+2010-10-05 Chris Rogers <crogers@google.com>
+
+ Reviewed by James Robinson.
+
+ Fix AudioContext to use new HRTFDatabaseLoader API
+ https://bugs.webkit.org/show_bug.cgi?id=46858
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioContext.cpp:
+ (WebCore::AudioContext::AudioContext):
+ (WebCore::AudioContext::isRunnable):
+ * webaudio/AudioContext.h:
+ * webaudio/AudioContext.idl:
+
+2010-10-05 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioPannerNode files
+ https://bugs.webkit.org/show_bug.cgi?id=46505
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioPannerNode.cpp: Added.
+ (WebCore::fixNANs):
+ (WebCore::AudioPannerNode::AudioPannerNode):
+ (WebCore::AudioPannerNode::~AudioPannerNode):
+ (WebCore::AudioPannerNode::pullInputs):
+ (WebCore::AudioPannerNode::process):
+ (WebCore::AudioPannerNode::reset):
+ (WebCore::AudioPannerNode::initialize):
+ (WebCore::AudioPannerNode::uninitialize):
+ (WebCore::AudioPannerNode::listener):
+ (WebCore::AudioPannerNode::setPanningModel):
+ (WebCore::AudioPannerNode::getAzimuthElevation):
+ (WebCore::AudioPannerNode::dopplerRate):
+ (WebCore::AudioPannerNode::distanceConeGain):
+ (WebCore::AudioPannerNode::notifyAudioSourcesConnectedToNode):
+ * webaudio/AudioPannerNode.h: Added.
+ (WebCore::AudioPannerNode::create):
+ (WebCore::AudioPannerNode::panningModel):
+ (WebCore::AudioPannerNode::position):
+ (WebCore::AudioPannerNode::setPosition):
+ (WebCore::AudioPannerNode::orientation):
+ (WebCore::AudioPannerNode::setOrientation):
+ (WebCore::AudioPannerNode::velocity):
+ (WebCore::AudioPannerNode::setVelocity):
+ (WebCore::AudioPannerNode::distanceModel):
+ (WebCore::AudioPannerNode::setDistanceModel):
+ (WebCore::AudioPannerNode::refDistance):
+ (WebCore::AudioPannerNode::setRefDistance):
+ (WebCore::AudioPannerNode::maxDistance):
+ (WebCore::AudioPannerNode::setMaxDistance):
+ (WebCore::AudioPannerNode::rolloffFactor):
+ (WebCore::AudioPannerNode::setRolloffFactor):
+ (WebCore::AudioPannerNode::coneInnerAngle):
+ (WebCore::AudioPannerNode::setConeInnerAngle):
+ (WebCore::AudioPannerNode::coneOuterAngle):
+ (WebCore::AudioPannerNode::setConeOuterAngle):
+ (WebCore::AudioPannerNode::coneOuterGain):
+ (WebCore::AudioPannerNode::setConeOuterGain):
+ (WebCore::AudioPannerNode::distanceGain):
+ (WebCore::AudioPannerNode::coneGain):
+ * webaudio/AudioPannerNode.idl: Added.
+
+2010-10-04 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [Cairo] Port drawTiledShadow to the new ContextShadow
+ https://bugs.webkit.org/show_bug.cgi?id=45902
+
+ Ported the drawTiledShadow function to the ContextShadow, it
+ renders shadows for rects faster than the simple blurring using
+ tiling of a smaller rect. We will remove the old function in a
+ next patch when starting to use ContextShadows for cairo
+ rendering.
+
+ * platform/graphics/ContextShadow.h:
+ * platform/graphics/cairo/ContextShadowCairo.cpp:
+ (WebCore::ContextShadow::drawRectShadowWithoutTiling):
+ (WebCore::ContextShadow::drawRectShadow):
+
+2010-10-05 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add BiquadProcessor files
+ https://bugs.webkit.org/show_bug.cgi?id=46527
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/BiquadProcessor.cpp: Added.
+ (WebCore::BiquadProcessor::BiquadProcessor):
+ (WebCore::BiquadProcessor::~BiquadProcessor):
+ (WebCore::BiquadProcessor::createKernel):
+ (WebCore::BiquadProcessor::process):
+ * webaudio/BiquadProcessor.h: Added.
+ (WebCore::BiquadProcessor::filterCoefficientsDirty):
+ (WebCore::BiquadProcessor::parameter1):
+ (WebCore::BiquadProcessor::parameter2):
+ (WebCore::BiquadProcessor::parameter3):
+ (WebCore::BiquadProcessor::type):
+
+2010-10-05 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add EqualPowerPanner files
+ https://bugs.webkit.org/show_bug.cgi?id=45077
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/EqualPowerPanner.cpp: Added.
+ (WebCore::EqualPowerPanner::EqualPowerPanner):
+ (WebCore::EqualPowerPanner::pan):
+ * platform/audio/EqualPowerPanner.h: Added.
+ (WebCore::EqualPowerPanner::reset):
+
+2010-10-05 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add HighPass2FilterNode files
+ https://bugs.webkit.org/show_bug.cgi?id=46533
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/HighPass2FilterNode.cpp: Added.
+ (WebCore::HighPass2FilterNode::HighPass2FilterNode):
+ * webaudio/HighPass2FilterNode.h: Added.
+ (WebCore::HighPass2FilterNode::create):
+ (WebCore::HighPass2FilterNode::cutoff):
+ (WebCore::HighPass2FilterNode::resonance):
+ (WebCore::HighPass2FilterNode::biquadProcessor):
+ * webaudio/HighPass2FilterNode.idl: Added.
+
+2010-10-05 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add LowPass2FilterNode files
+ https://bugs.webkit.org/show_bug.cgi?id=46532
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/LowPass2FilterNode.cpp: Added.
+ (WebCore::LowPass2FilterNode::LowPass2FilterNode):
+ * webaudio/LowPass2FilterNode.h: Added.
+ (WebCore::LowPass2FilterNode::create):
+ (WebCore::LowPass2FilterNode::cutoff):
+ (WebCore::LowPass2FilterNode::resonance):
+ (WebCore::LowPass2FilterNode::biquadProcessor):
+ * webaudio/LowPass2FilterNode.idl: Added.
+
+2010-10-04 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Kent Tamura.
+
+ Fixed compilation problem added in commit 69082. The interface of
+ the function has two parameters with the same name.
+
+ * rendering/RenderBlock.h:
+
+2010-10-04 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioUtilities files
+ https://bugs.webkit.org/show_bug.cgi?id=47011
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/AudioUtilities.cpp: Added.
+ (WebCore::AudioUtilities::decibelsToLinear):
+ (WebCore::AudioUtilities::linearToDecibels):
+ (WebCore::AudioUtilities::discreteTimeConstantForSampleRate):
+ * platform/audio/AudioUtilities.h: Added.
+
+2010-10-04 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47112
+
+ Convert addOverhangingFloats and addIntrudingFloats to be block-flow-aware.
+
+ Also clean up how floats are placed to use a bit instead of the magic -1 value on top().
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::removeFloatingObject):
+ (WebCore::RenderBlock::removeFloatingObjectsBelow):
+ (WebCore::RenderBlock::positionNewFloats):
+ (WebCore::RenderBlock::markLinesDirtyInBlockRange):
+ (WebCore::RenderBlock::clearFloats):
+ (WebCore::RenderBlock::addOverhangingFloats):
+ (WebCore::RenderBlock::addIntrudingFloats):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::FloatingObject::FloatingObject):
+ (WebCore::RenderBlock::FloatingObject::isPlaced):
+ (WebCore::RenderBlock::FloatingObject::setIsPlaced):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::determineStartPosition):
+
+2010-10-04 Nico Weber <thakis@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ Fix broken C++ in PODInterval and PODIntervalTree
+ https://bugs.webkit.org/show_bug.cgi?id=47063
+
+ See http://clang.llvm.org/compatibility.html#dep_lookup . Since
+ valueToString needs to work with non-class types, it needs to be
+ declared before it's used. And since it needs to handle many types, it
+ needs to be a template function, for which clients will need to
+ provide specializations for the types they care about. Partial template
+ specialization is only supported for structs, so wrap the function in
+ a struct, too.
+
+ * platform/graphics/gpu/PODInterval.h:
+ (WebCore::PODInterval::toString):
+ * platform/graphics/gpu/PODIntervalTree.h:
+ (WebCore::PODIntervalTree::checkInvariantsFromNode):
+ * platform/graphics/gpu/PODRedBlackTree.h:
+ (WebCore::PODRedBlackTree::dumpFromNode):
+
+2010-10-04 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ Spatial Navigation: Add support for <input type="radio">
+ https://bugs.webkit.org/show_bug.cgi?id=46993
+
+ When using Spatial Navigation, every radio button should be focusable and
+ users should be able to navigate from one button to the next without moving the selection.
+
+ Tests: fast/events/spatial-navigation/snav-radio-group.html
+ fast/events/spatial-navigation/snav-radio.html
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::isKeyboardFocusable):
+ Every radio button should be keyboard focusable, if using Spatial Navigation.
+ (WebCore::HTMLInputElement::defaultEventHandler):
+ Disable the algorithm for selecting the next radio button within a group, if using Spatial Navigation.
+
+2010-10-04 Renata Hodovan <reni@inf.u-szeged.hu>
+
+ Reviewed by Andreas Kling.
+
+ SVGFEGaussianBlurElement doesn't support dynamic invalidation, when attributes change.
+ https://bugs.webkit.org/show_bug.cgi?id=47074
+ The patch also implements the simple setStdDeviation method.
+
+ Tests: svg/dynamic-updates/SVGFEGaussianBlurElement-dom-in-attr.html
+ svg/dynamic-updates/SVGFEGaussianBlurElement-dom-stdDeviation-attr.html
+ svg/dynamic-updates/SVGFEGaussianBlurElement-dom-stdDeviation-call.html
+ svg/dynamic-updates/SVGFEGaussianBlurElement-svgdom-in-prop.html
+
+ * svg/SVGFEGaussianBlurElement.cpp:
+ (WebCore::SVGFEGaussianBlurElement::setStdDeviation):
+ (WebCore::SVGFEGaussianBlurElement::svgAttributeChanged):
+ * svg/SVGFEGaussianBlurElement.h:
+
+2010-10-04 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Darin Adler.
+
+ Add Base64DecodePolicy option at base64Decode()
+ https://bugs.webkit.org/show_bug.cgi?id=41510
+
+ Add an option for ignoring characters in base64 data.
+ This is necessary for decoding data urls.
+
+ Also add an overload to decode WebCore::String directly.
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::atob):
+ * page/Page.cpp:
+ (WebCore::Page::userStyleSheetLocationChanged):
+ * platform/text/Base64.cpp:
+ (WebCore::base64Encode):
+ (WebCore::base64Decode):
+ (WebCore::base64DecodeInternal):
+ * platform/text/Base64.h:
+ (WebCore::):
+
+2010-10-04 Ryuan Choi <bunhere@gmail.com>
+
+ Unreviewed build fix.
+
+ [WML] Build fix for r68854
+ https://bugs.webkit.org/show_bug.cgi?id=47043
+
+ Include HTMLParserIdioms.h.
+
+ No features added, so no new tests.
+
+ * wml/WMLAElement.cpp:
+ * wml/WMLImageLoader.cpp:
+
+2010-10-04 Ryuan Choi <ryuan.choi@samsung.com>
+
+ Unreviewed build fix.
+
+ [CMAKE] Build fix for r68901
+ https://bugs.webkit.org/show_bug.cgi?id=47042
+
+ Move plugins/PluginPackage.cpp
+
+ No features added, so no new tests.
+
+ * CMakeLists.txt:
+
+2010-10-04 Eric Uhrhane <ericu@chromium.org>
+
+ Reviewed by David Levin.
+
+ Hook FileEntry::createWriter to DOMFileSystem::createWriter
+ https://bugs.webkit.org/show_bug.cgi?id=46908
+
+ No new tests--still waiting for the first complete implementation.
+
+ * fileapi/FileEntry.cpp:
+ (WebCore::FileEntry::createWriter):
+
+2010-10-04 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ Spatial Navigation: select element does not release focus with Spatial Navigation
+ https://bugs.webkit.org/show_bug.cgi?id=46896
+
+ When using Spatial Navigation, once a select element is focused, you cannot use arrow keys
+ to navigate out of the select element. That is because select element currently uses the
+ arrow keys to change the selected element.
+ Change the behavior of select element so it does not change selection, if Spatial Navigation
+ is on.
+
+ This patch is addressing the case where Spatial Navigation is used
+ in a mobile device, and the flag ENABLE_NO_LISTBOX_RENDERING is on.
+ In the future we can add support for the case where the flag is off, and
+ the user needs to traverse the select element inline.
+
+ Tests: fast/events/spatial-navigation/snav-multiple-select.html
+ fast/events/spatial-navigation/snav-single-select.html
+
+ * dom/SelectElement.cpp:
+ (WebCore::SelectElement::menuListDefaultEventHandler):
+
+2010-10-04 Sriram Neelakandan <sriram.neelakandan@gmail.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] QNetworkReplyHandler forces buffered output for FormData with files
+ https://bugs.webkit.org/show_bug.cgi?id=46259
+
+ No new tests. Existing form submit tests should cover this change.
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::FormDataIODevice::FormDataIODevice):
+ (WebCore::FormDataIODevice::computeSize):
+ Add computeSize() for computing form device size
+ (WebCore::QNetworkReplyHandler::start):
+ Call computeSize(), fill Content-Length and prevent UploadData buffering
+ * platform/network/qt/QNetworkReplyHandler.h:
+ (WebCore::FormDataIODevice::getFormDataSize):
+
+2010-10-04 Chang Shu <chang.shu@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ Fixed the typo that searches the wrong direction in the no-focus-node case.
+ As a result, after page is loaded, pressing key "arrowdown" will bring the
+ focus to the 1st element instead of the last element.
+ https://bugs.webkit.org/show_bug.cgi?id=46901
+
+ Test: fast/events/spatial-navigation/snav-1st-stop.html
+
+ * page/FocusController.cpp:
+ (WebCore::FocusController::advanceFocusDirectionally):
+
+2010-10-04 Simon Fraser <simon.fraser@apple.com>
+
+ No review.
+
+ Touch cf/SocketStreamHandle.h and add an #ifdef to qt/SocketStreamHandle.h
+ to fail at compile time if Mac includes that header.
+
+ * platform/network/cf/SocketStreamHandle.h:
+ * platform/network/qt/SocketStreamHandle.h:
+
+2010-10-04 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47136
+ WebSocket tests are crashing
+
+ The Mac xcode project was finding qt/SocketStreamHandle.h because of
+ an inadvertent change in r68951. Thus the header and implementation didn't match,
+ and memory corruption ensued.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-10-04 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by James Robinson.
+
+ Move SharedGraphicsContext3D from ChromeClient to Page
+ https://bugs.webkit.org/show_bug.cgi?id=47113
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
+ * page/ChromeClient.h:
+ * page/Page.cpp:
+ (WebCore::Page::sharedGraphicsContext3D):
+ * page/Page.h:
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::create):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+
+2010-10-04 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ Implement IndexedDB's oncomplete and ontimeout.
+ https://bugs.webkit.org/show_bug.cgi?id=47106
+
+ Add ontimeout and oncomplete to IDBTransaction and plumb
+ them. Test this behavior in the existing IDBTransaction-basics
+ test.
+
+ * WebCore.gypi:
+ * storage/IDBTransaction.cpp:
+ (WebCore::IDBTransaction::IDBTransaction):
+ (WebCore::IDBTransaction::mode):
+ (WebCore::IDBTransaction::objectStore):
+ (WebCore::IDBTransaction::abort):
+ (WebCore::IDBTransaction::onAbort):
+ (WebCore::IDBTransaction::onComplete):
+ (WebCore::IDBTransaction::onTimeout):
+ (WebCore::IDBTransaction::stop):
+ (WebCore::IDBTransaction::onAbortTimerFired):
+ (WebCore::IDBTransaction::onCompleteTimerFired):
+ (WebCore::IDBTransaction::onTimeoutTimerFired):
+ * storage/IDBTransaction.h:
+ * storage/IDBTransactionBackendImpl.cpp:
+ (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
+ (WebCore::IDBTransactionBackendImpl::commit):
+ * storage/IDBTransactionCallbacks.h:
+
+2010-10-04 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Crash at WebCore::nextCandidate + 27
+ https://bugs.webkit.org/show_bug.cgi?id=47118
+ <rdar://problem/7282934>
+
+ When we canonicalize a Position to create a VisiblePosition, the position
+ is passed by reference. In canonicalPosition we call updateLayoutIgnorePendingStylesheets
+ that can produce a lot of side effects, including changing the selection.
+ This becomes a serious problem whne the position passed as reference is one of
+ the selection endpoints.
+
+ Test: editing/selection/focus-crash.html
+
+ * editing/VisiblePosition.cpp:
+ (WebCore::VisiblePosition::canonicalPosition):
+
+2010-10-04 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Adam Barth.
+
+ https://bugs.webkit.org/show_bug.cgi?id=37812
+ Assertion failure when appcache/fail-on-update.html is run twice in a row
+
+ Test: http/tests/appcache/fail-on-update-2.html
+
+ For some reason, I can't reproduce this assertion failure with ToT, but the fixes I made
+ previously are still good, and covered by the new test.
+
+ * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::selectCache):
+ Handle the case when the cache is already obsolete by the time cache selection occurs.
+
+ * loader/appcache/ApplicationCacheHost.cpp: (WebCore::ApplicationCacheHost::failedLoadingMainResource):
+ It's not true that loading from appcache always succeeds - it can be aborted.
+
+ * loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::store):
+ Calling ensureOriginRecord(group->origin()) can change lastInsertRowID!
+
+2010-10-04 Erik Arvidsson <arv@chromium.org>
+
+ Reviewed by James Robinson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47122
+ Crash in classList when class attribute is empty.
+
+ Tests: fast/dom/HTMLElement/class-list.html
+
+ * html/DOMTokenList.cpp:
+ (WebCore::DOMTokenList::length):
+ (WebCore::DOMTokenList::containsInternal):
+ (WebCore::DOMTokenList::classNames):
+
+2010-10-04 Darin Adler <darin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Use isHTMLSpace in more places, and optimize it
+ https://bugs.webkit.org/show_bug.cgi?id=47103
+
+ * css/CSSParser.cpp:
+ (WebCore::parseColorInt): Use isHTMLSpace instead of a separate isCSSWhitespace function.
+ (WebCore::parseAlphaValue): Ditto.
+ (WebCore::CSSParser::text): Ditto.
+
+ * dom/SpaceSplitString.h: Removed isClassWhitespace.
+
+ * dom/SpaceSplitString.cpp:
+ (WebCore::SpaceSplitStringData::createVector): Use isHTMLSpace instead of isClassWhitespace.
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::classAttributeChanged): Ditto.
+ * html/DOMTokenList.cpp:
+ (WebCore::validateToken): Ditto.
+ (WebCore::DOMTokenList::removeInternal): Ditto.
+
+ * html/parser/HTMLParserIdioms.h: Added histogram data an changed so that non-spaces take
+ only a single branch and plain old spaces take only two branches.
+
+2010-10-04 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by James Robinson.
+
+ HTMLMediaElement delayed load should fire asynchronously
+ https://bugs.webkit.org/show_bug.cgi?id=45765
+
+ Test: media/remove-from-document-before-load.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::decrementLoadEventDelayCount):
+ (WebCore::Document::loadEventDelayTimerFired):
+ * dom/Document.h:
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::HTMLMediaElement):
+ (WebCore::HTMLMediaElement::asyncEventTimerFired):
+ (WebCore::HTMLMediaElement::setShouldDelayLoadEvent):
+ * html/HTMLMediaElement.h:
+
+2010-10-04 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ ResourceHandle's public/protected/private sections are fragmented
+ https://bugs.webkit.org/show_bug.cgi?id=47038
+
+ Minor cleanup.
+
+ * platform/network/ResourceHandle.h:
+
+2010-10-04 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Adam Barth.
+
+ https://bugs.webkit.org/show_bug.cgi?id=43506
+ <rdar://problem/8289284> foreign-iframe-main.html occasionally crashes (during the next test,
+ idempotent-update.html)
+
+ Application cache doesn't use ResourceLoader machinery (for better or worse), so we need to
+ abort update process explicitly.
+
+ Note that in principle, update could piggyback on any other existing frame - or even run
+ frameless - but currently, it's tied to the first frame that requested update.
+
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::stopLoading):
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::stopLoadingInFrame):
+ * loader/appcache/ApplicationCacheGroup.h:
+ * loader/appcache/ApplicationCacheHost.cpp:
+ (WebCore::ApplicationCacheHost::~ApplicationCacheHost):
+ (WebCore::ApplicationCacheHost::stopLoadingInFrame):
+ * loader/appcache/ApplicationCacheHost.h:
+
+2010-10-04 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Rename RedirectScheduler to NavigationScheduler
+ https://bugs.webkit.org/show_bug.cgi?id=47037
+
+ This class schedules more than just redirects. In fact, it schedules
+ most kinds of navigations.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/generic/BindingDOMWindow.h:
+ (WebCore::::createWindow):
+ (WebCore::::open):
+ * bindings/generic/BindingFrame.h:
+ (WebCore::::navigateIfAllowed):
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::setLocation):
+ (WebCore::createWindow):
+ (WebCore::JSDOMWindow::open):
+ * bindings/js/JSDocumentCustom.cpp:
+ (WebCore::JSDocument::setLocation):
+ * bindings/js/JSLocationCustom.cpp:
+ (WebCore::JSLocation::reload):
+ * bindings/v8/custom/V8LocationCustom.cpp:
+ (WebCore::V8Location::reloadCallback):
+ * dom/Document.cpp:
+ (WebCore::Document::implicitClose):
+ (WebCore::Document::processHttpEquiv):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::setResourceTrackingEnabled):
+ (WebCore::InspectorController::reloadPage):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::setDefersLoading):
+ (WebCore::FrameLoader::submitForm):
+ (WebCore::FrameLoader::stopLoading):
+ (WebCore::FrameLoader::didOpenURL):
+ (WebCore::FrameLoader::didExplicitOpen):
+ (WebCore::FrameLoader::cancelAndClear):
+ (WebCore::FrameLoader::clear):
+ (WebCore::FrameLoader::receivedFirstData):
+ (WebCore::FrameLoader::checkCompleted):
+ (WebCore::FrameLoader::provisionalLoadStarted):
+ (WebCore::FrameLoader::completed):
+ (WebCore::FrameLoader::prepareForCachedPageRestore):
+ * loader/FrameLoader.h:
+ * loader/NavigationScheduler.cpp: Added.
+ (WebCore::ScheduledNavigation::ScheduledNavigation):
+ (WebCore::ScheduledNavigation::~ScheduledNavigation):
+ (WebCore::ScheduledNavigation::shouldStartTimer):
+ (WebCore::ScheduledNavigation::didStartTimer):
+ (WebCore::ScheduledNavigation::didStopTimer):
+ (WebCore::ScheduledNavigation::delay):
+ (WebCore::ScheduledNavigation::lockHistory):
+ (WebCore::ScheduledNavigation::lockBackForwardList):
+ (WebCore::ScheduledNavigation::wasDuringLoad):
+ (WebCore::ScheduledNavigation::isLocationChange):
+ (WebCore::ScheduledNavigation::wasUserGesture):
+ (WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
+ (WebCore::ScheduledURLNavigation::fire):
+ (WebCore::ScheduledURLNavigation::didStartTimer):
+ (WebCore::ScheduledURLNavigation::didStopTimer):
+ (WebCore::ScheduledURLNavigation::url):
+ (WebCore::ScheduledURLNavigation::referrer):
+ (WebCore::ScheduledRedirect::ScheduledRedirect):
+ (WebCore::ScheduledRedirect::shouldStartTimer):
+ (WebCore::ScheduledLocationChange::ScheduledLocationChange):
+ (WebCore::ScheduledRefresh::ScheduledRefresh):
+ (WebCore::ScheduledRefresh::fire):
+ (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
+ (WebCore::ScheduledHistoryNavigation::fire):
+ (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
+ (WebCore::ScheduledFormSubmission::fire):
+ (WebCore::ScheduledFormSubmission::didStartTimer):
+ (WebCore::ScheduledFormSubmission::didStopTimer):
+ (WebCore::NavigationScheduler::NavigationScheduler):
+ (WebCore::NavigationScheduler::~NavigationScheduler):
+ (WebCore::NavigationScheduler::redirectScheduledDuringLoad):
+ (WebCore::NavigationScheduler::locationChangePending):
+ (WebCore::NavigationScheduler::clear):
+ (WebCore::NavigationScheduler::scheduleRedirect):
+ (WebCore::NavigationScheduler::mustLockBackForwardList):
+ (WebCore::NavigationScheduler::scheduleLocationChange):
+ (WebCore::NavigationScheduler::scheduleFormSubmission):
+ (WebCore::NavigationScheduler::scheduleRefresh):
+ (WebCore::NavigationScheduler::scheduleHistoryNavigation):
+ (WebCore::NavigationScheduler::timerFired):
+ (WebCore::NavigationScheduler::schedule):
+ (WebCore::NavigationScheduler::startTimer):
+ (WebCore::NavigationScheduler::cancel):
+ * loader/NavigationScheduler.h: Added.
+ * loader/RedirectScheduler.cpp: Removed.
+ * loader/RedirectScheduler.h: Removed.
+ * loader/SubframeLoader.cpp:
+ (WebCore::SubframeLoader::loadOrRedirectSubframe):
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::selectCache):
+ * page/Frame.cpp:
+ (WebCore::Frame::Frame):
+ * page/Frame.h:
+ (WebCore::Frame::navigationScheduler):
+ * page/History.cpp:
+ (WebCore::History::back):
+ (WebCore::History::forward):
+ (WebCore::History::go):
+ * page/XSSAuditor.cpp:
+ (WebCore::XSSAuditor::findInRequest):
+
+2010-10-04 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ Remove ENABLE_SANDBOX
+ https://bugs.webkit.org/show_bug.cgi?id=47032
+
+ I'm not sure there's a reason for this to be behind a compile flag
+ anymore.
+
+ * Configurations/FeatureDefines.xcconfig:
+ * GNUmakefile.am:
+ * features.pri:
+ * html/HTMLIFrameElement.cpp:
+ (WebCore::parseSandboxAttribute):
+ (WebCore::HTMLIFrameElement::parseMappedAttribute):
+
+2010-10-04 Huahui Wu <mediadependent@gmail.com>
+
+ Reviewed by Darin Adler.
+
+ Fix a compiler error for ANDROID introduced by bug 45221.
+ https://bugs.webkit.org/show_bug.cgi?id=47095
+
+ It's a small fix for a compiler error, so there is no new test.
+
+ * platform/android/PlatformTouchEventAndroid.cpp:
+ (WebCore::PlatformTouchEvent::PlatformTouchEvent):
+
+2010-10-04 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ AX: doAXRangeForLine does not work
+ https://bugs.webkit.org/show_bug.cgi?id=47101
+
+ Asking for NSAccessibilityRangeForLine was returning a null range for any line number > 0.
+ The code was using a SelectionController to extend to the next line. Rather than change the implementation
+ of that core functionality, it is cleaner to use endOfLine to find the end of the line.
+
+ Test: platform/mac/accessibility/range-for-line-textarea.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::doAXRangeForLine):
+
+2010-10-04 Brent Fulgham <bfulgham@webkit.org>
+
+ Unreviewed, build fix for r68951.
+
+ Add stub implementation for ProxyServer logic.
+
+ * WebCore.vcproj/WebCore.vcproj: Add new WinCairo file.
+ * WebCore/platform/network/curl/ProxyServerCurl.cpp: Added
+
+2010-10-04 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Adam Barth.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47035
+ Application cache selection algorithm should only be invoked after navigation
+
+ Tests: http/tests/appcache/document-write-html-element-2.html
+ http/tests/appcache/document-write-html-element.html
+ http/tests/appcache/insert-html-element-with-manifest-2.html
+ http/tests/appcache/insert-html-element-with-manifest.html
+
+ * dom/DocumentParser.cpp: (WebCore::DocumentParser::DocumentParser):
+ * dom/DocumentParser.h:
+ (WebCore::DocumentParser::setDocumentWasLoadedAsPartOfNavigation):
+ (WebCore::DocumentParser::documentWasLoadedAsPartOfNavigation):
+ Track whether the document being parsed is being loaded as part of navigation.
+
+ * html/HTMLHtmlElement.cpp: (WebCore::HTMLHtmlElement::insertedByParser): Only run the
+ cache selection algorithm if the document is being loaded as part of navigation. We don't
+ want to switch associated appcache is someone document.writes <html manifest=...>.
+
+ * html/HTMLHtmlElement.h: We need to differentiate between parsing and DOM manipulation, so
+ this code can't be in HTMLHtmlElement::insertedIntoDocument().
+
+ * dom/XMLDocumentParserLibxml2.cpp: (WebCore::XMLDocumentParser::startElementNs):
+ * dom/XMLDocumentParserQt.cpp: (WebCore::XMLDocumentParser::parseStartElement):
+ * html/ImageDocument.cpp: (WebCore::ImageDocument::createDocumentStructure):
+ * html/MediaDocument.cpp: (WebCore::MediaDocumentParser::createDocumentStructure):
+ * html/PluginDocument.cpp: (WebCore::PluginDocumentParser::createDocumentStructure):
+ * html/parser/HTMLConstructionSite.cpp: (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
+ Check for manifest attribute in cases specified by HTML5.
+
+ * html/parser/HTMLConstructionSite.h: Removed unused insertHTMLHtmlElement().
+
+ * loader/DocumentWriter.cpp: (WebCore::DocumentWriter::setDocumentWasLoadedAsPartOfNavigation):
+ * loader/DocumentWriter.h:
+ Forward this call to DocumentParser, since DocumentWriter is supposed to encapsulate it.
+
+ * loader/FrameLoader.cpp: (WebCore::FrameLoader::receivedFirstData): Receiving data from
+ loader means being loaded as part of navigation. This notion is used in HTML5 without a rigorous
+ definition that I could find - this seems to be a meaningful formalization.
+
+2010-10-04 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47100
+
+ Convert clearFloats() to be block-flow-aware. Helpers that it calls have not been patched though.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::clearFloats):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalTopForFloat):
+ (WebCore::RenderBlock::logicalLeftForFloat):
+ (WebCore::RenderBlock::logicalWidthForFloat):
+
+2010-10-04 Diego Gonzalez <diegohcg@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Hook up DeviceOrientation data for Qt support
+ https://bugs.webkit.org/show_bug.cgi?id=47052
+
+ Get DeviceOrientation necessary data via Qt mobility library
+ using a provider class.
+
+ * WebCore.pro:
+
+2010-10-01 Victoria Kirst <vrk@google.com>
+
+ Reviewed by James Robinson.
+
+ Fixing crash when audio media player is destructed
+ https://bugs.webkit.org/show_bug.cgi?id=47020
+
+ Adds assert for LayerRenderer in destructor.
+
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::~VideoLayerChromium):
+
+2010-10-04 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: do not show breakpoint in front-end if it was not set in v8
+ https://bugs.webkit.org/show_bug.cgi?id=46749
+
+ * bindings/v8/DebuggerScript.js:
+ ():
+
+2010-10-04 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [cairo] Context shadow modifies the data of the surface without
+ flushing and marking as dirty
+ https://bugs.webkit.org/show_bug.cgi?id=47079
+
+ Added the cairo_surface_flush and cairo_surface_mark_dirty before
+ and after modifying the image pixels directly.
+
+ * platform/graphics/cairo/ContextShadowCairo.cpp:
+ (WebCore::ContextShadow::endShadowLayer):
+
+2010-10-04 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ Crashed caused by missing OwnPtrCairo include, for more
+ information check the issue in the bug 46268.
+
+ * platform/graphics/cairo/CairoUtilities.cpp:
+
+2010-10-04 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [cairo] Move some cairo functions to the CairoUtilities
+ https://bugs.webkit.org/show_bug.cgi?id=47076
+
+ Moved some cairo functions to the CairoUtilities so we can use
+ them outside GraphicsContextCairo.
+
+ * platform/graphics/cairo/CairoUtilities.cpp:
+ (WebCore::appendPathToCairoContext):
+ (WebCore::setPathOnCairoContext):
+ (WebCore::appendWebCorePathToCairoContext):
+ (WebCore::toCairoOperator):
+ (WebCore::drawPatternToCairoContext):
+ * platform/graphics/cairo/CairoUtilities.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ * platform/graphics/cairo/ImageCairo.cpp:
+ (WebCore::Image::drawPattern):
+
+2010-10-04 podivilov@chromium.org <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: implement pausing on event listeners (back-end part)
+ https://bugs.webkit.org/show_bug.cgi?id=46624
+
+ * bindings/js/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::setPauseOnNextStatement):
+ * bindings/js/ScriptDebugServer.h:
+ * bindings/v8/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::setPauseOnNextStatement):
+ * bindings/v8/ScriptDebugServer.h:
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchGenericEvent):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::didCommitLoad):
+ (WebCore::InspectorController::setNativeBreakpoint):
+ (WebCore::InspectorController::removeNativeBreakpoint):
+ (WebCore::InspectorController::shouldBreakOnEvent):
+ (WebCore::InspectorController::shouldBreakOnXMLHttpRequest):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent):
+ (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
+ (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
+ (WebCore::InspectorDebuggerAgent::pause):
+ (WebCore::InspectorDebuggerAgent::didContinue):
+ (WebCore::InspectorDebuggerAgent::breakProgram):
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::eventHasListeners):
+ (WebCore::InspectorInstrumentation::instrumentWillDispatchEventImpl):
+ (WebCore::InspectorInstrumentation::instrumentDidDispatchEventImpl):
+ (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::instrumentWillDispatchEvent):
+ (WebCore::InspectorInstrumentation::instrumentDidDispatchEvent):
+ (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest):
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
+ * inspector/InspectorTimelineAgent.h:
+ (WebCore::InspectorTimelineAgent::id):
+ * inspector/front-end/CallStackSidebarPane.js:
+
+2010-10-04 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: add total bar to the network panel.
+ https://bugs.webkit.org/show_bug.cgi?id=47081
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.createDividerElement):
+ * inspector/front-end/DataGrid.js:
+ (WebInspector.DataGrid.prototype.removeChild):
+ (WebInspector.DataGrid.prototype.sortNodes):
+ (WebInspector.DataGrid.prototype._clickInHeaderCell):
+ (WebInspector.DataGrid.prototype.markColumnAsSortedBy):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel):
+ (WebInspector.NetworkPanel.prototype.resize):
+ (WebInspector.NetworkPanel.prototype._positionSummaryBar):
+ (WebInspector.NetworkPanel.prototype._createTimelineGrid):
+ (WebInspector.NetworkPanel.prototype._createSortingFunctions):
+ (WebInspector.NetworkPanel.prototype._sortItems):
+ (WebInspector.NetworkPanel.prototype._sortByTimeline):
+ (WebInspector.NetworkPanel.prototype._createFilterStatusBarItems):
+ (WebInspector.NetworkPanel.prototype._createSummaryBar):
+ (WebInspector.NetworkPanel.prototype._updateSummaryBar):
+ (WebInspector.NetworkPanel.prototype._updateFilter):
+ (WebInspector.NetworkPanel.prototype.show):
+ (WebInspector.NetworkPanel.prototype.refresh):
+ (WebInspector.NetworkPanel.prototype.reset):
+ (WebInspector.NetworkDataGridNode.SizeComparator):
+ (WebInspector.NetworkDataGridNode.ResourcePropertyComparator):
+ (WebInspector.NetworkTotalGridNode):
+ (WebInspector.NetworkTotalGridNode.prototype.createCells):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.createFilterPanel):
+ * inspector/front-end/inspector.css:
+ (.scope-bar-divider):
+ * inspector/front-end/networkPanel.css:
+ (.network-timeline-grid):
+ (.network-summary-bar):
+ (.network-summary-bar-bottom):
+ (.data-grid td .network-summary-bar):
+
+2010-09-28 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Viewport data change notifications
+ https://bugs.webkit.org/show_bug.cgi?id=46755
+
+ Regarding viewport meta tags, what matters for browser developers is to know when the viewport data has
+ changed and its current value. Viewport data belongs to the document, but it is useful to keep the current
+ viewport data in Page as a reference, to be able to send notifications only when the current viewport
+ has changed.
+
+ * dom/Document.cpp:
+ (WebCore::Document::processViewport):
+ (WebCore::Document::setInPageCache):
+ * dom/ViewportArguments.h:
+ (WebCore::ViewportArguments::operator==):
+ * html/HTMLBodyElement.cpp:
+ (WebCore::HTMLBodyElement::HTMLBodyElement):
+ * page/Chrome.cpp:
+ (WebCore::Chrome::viewportDataChanged):
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ (WebCore::ChromeClient::viewportDataChanged):
+ * page/Page.cpp:
+ (WebCore::Page::updateViewportArguments):
+ * page/Page.h:
+ (WebCore::Page::viewportArguments):
+
+2010-10-03 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, build fix for r68996.
+
+ * html/BaseDateAndTimeInputType.cpp: Includes <wtf/MathExtras.h> for isfinite().
+ * html/MonthInputType.cpp: ditto.
+ * html/NumberInputType.cpp: ditto.
+ * html/RangeInputType.cpp: ditto.
+
+2010-10-03 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Refactor HTMLInputElement: Move parseToDouble() and
+ parseToDateComponents() to InputType.
+ https://bugs.webkit.org/show_bug.cgi?id=46965
+
+ Introduce BaseDateAndTimeInputType, which is a super class of
+ date, datetime, datetime-local, month, time, and week types.
+
+ No new tests. Just a refactoring.
+
+ * Android.mk: Add BaseDateAndTimeInputType.
+ * CMakeLists.txt: ditto.
+ * GNUmakefile.am: ditto.
+ * WebCore.gypi: ditto.
+ * WebCore.pro: ditto.
+ * WebCore.vcproj/WebCore.vcproj: ditto.
+ * WebCore.xcodeproj/project.pbxproj: ditto.
+ * html/BaseDateAndTimeInputType.cpp: Added.
+ (WebCore::BaseDateAndTimeInputType::parseToDouble):
+ (WebCore::BaseDateAndTimeInputType::parseToDateComponents):
+ * html/BaseDateAndTimeInputType.h: Added.
+ (WebCore::BaseDateAndTimeInputType::BaseDateAndTimeInputType):
+ * html/DateInputType.cpp:
+ (WebCore::DateInputType::parseToDateComponentsInternal):
+ * html/DateInputType.h:
+ (WebCore::DateInputType::DateInputType):
+ * html/DateTimeInputType.cpp:
+ (WebCore::DateTimeInputType::parseToDateComponentsInternal):
+ * html/DateTimeInputType.h:
+ (WebCore::DateTimeInputType::DateTimeInputType):
+ * html/DateTimeLocalInputType.cpp:
+ (WebCore::DateTimeLocalInputType::parseToDateComponentsInternal):
+ * html/DateTimeLocalInputType.h:
+ (WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
+ * html/HTMLInputElement.cpp: Replace parseToD* calls with m_inputType->parseToD*.
+ (WebCore::HTMLInputElement::typeMismatch):
+ (WebCore::HTMLInputElement::rangeUnderflow):
+ (WebCore::HTMLInputElement::rangeOverflow):
+ (WebCore::HTMLInputElement::minimum):
+ (WebCore::HTMLInputElement::maximum):
+ (WebCore::HTMLInputElement::stepBase):
+ (WebCore::HTMLInputElement::stepMismatch):
+ (WebCore::HTMLInputElement::applyStep):
+ (WebCore::HTMLInputElement::valueAsDate):
+ (WebCore::HTMLInputElement::valueAsNumber):
+ (WebCore::HTMLInputElement::handleKeyEventForRange):
+ (WebCore::HTMLInputElement::stepUpFromRenderer):
+ * html/HTMLInputElement.h:
+ * html/InputType.cpp:
+ (WebCore::InputType::parseToDouble):
+ (WebCore::InputType::parseToDateComponents):
+ * html/InputType.h:
+ * html/MonthInputType.cpp:
+ (WebCore::MonthInputType::parseToDouble):
+ (WebCore::MonthInputType::parseToDateComponentsInternal):
+ * html/MonthInputType.h:
+ (WebCore::MonthInputType::MonthInputType):
+ * html/NumberInputType.cpp:
+ (WebCore::NumberInputType::parseToDouble):
+ * html/NumberInputType.h:
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::parseToDouble):
+ * html/RangeInputType.h:
+ * html/TimeInputType.cpp:
+ (WebCore::TimeInputType::parseToDateComponentsInternal):
+ * html/TimeInputType.h:
+ (WebCore::TimeInputType::TimeInputType):
+ * html/WeekInputType.cpp:
+ (WebCore::WeekInputType::parseToDateComponentsInternal):
+ * html/WeekInputType.h:
+ (WebCore::WeekInputType::WeekInputType):
+
+2010-10-03 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Holger Freyther.
+
+ ASSERT(m_state = Open); is bad news bears
+ https://bugs.webkit.org/show_bug.cgi?id=47057
+
+ Added by ap (review by darin) in http://trac.webkit.org/changeset/50951
+ Too bad the compiler doesn't catch these errors. I don't believe this
+ is possible to test.
+
+ * platform/network/cf/SocketStreamHandleCFNet.cpp:
+ (WebCore::SocketStreamHandle::writeStreamCallback):
+
+2010-10-03 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Holger Freyther.
+
+ All the WebSocket tests crash
+ https://bugs.webkit.org/show_bug.cgi?id=47056
+
+ More code that tries to hold onto temporaries with references.
+
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::didOpen):
+
+2010-10-03 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Holger Freyther.
+
+ All the WebSocket tests crash
+ https://bugs.webkit.org/show_bug.cgi?id=47055
+
+ This code attempts to hold onto temporary objects using references.
+ That doesn't work in C++. Instead, we need to actually store the
+ objects somewhere.
+
+ * bindings/js/JSWebSocketCustom.cpp:
+ (WebCore::JSWebSocketConstructor::constructJSWebSocket):
+
+2010-10-02 Diego Gonzalez <diegohcg@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Provide Qt support for DeviceMotion/Orientation clients
+ https://bugs.webkit.org/show_bug.cgi?id=47051
+
+ Add Qt DeviceMotion/Orientation dummy clients in build system.
+
+ * WebCore.pro:
+
+2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ Rewrite SVG text layout code
+ https://bugs.webkit.org/show_bug.cgi?id=45532
+
+ Modernize SVG text layout engine, split the layout process into three phases, so that each results can be cached (which will be done in a follow-up patch).
+
+ Phase #1) - SVGTextLayoutAttributesBuilder
+ ------------------------------------------
+
+ Parse x/y/dx/dy/rotate values of the <text> subtree (<text x="30 40">A<tspan>B<tspan x="50">C</tspan></tspan></text>)
+ This is done by SVGTextLayoutAttributesBuilder. It builds a SVGTextLayoutAttributes object for each RenderSVGInlineText renderer, and stores it there.
+ Phase #1 is started from RenderSVGText::layout(), before RenderBlockLineLayout is laying out the inline children, and thus before the InlineBox tree is created.
+
+ Now we know which character has an associated absolute x or y position, denoting the start of a new text chunk. Whenever we encounter a new text chunk
+ RenderBlockLineLayout should create a new SVGInlineTextBox. This is very important, as BiDi reordering shouldn't happen across text chunks, as well as ligature detection.
+
+ The text chunk concept is now merged right into the InlineBox tree, so we don't need to hack around the lack of that, as done for the previous years.
+
+ Phase #2) - SVGTextLayoutEngine
+ ------------------------------------------
+
+ RenderSVGText::layout() calls RenderBlock::layoutInlineChildren() right after phase #1 ends. The InlineBox tree is created. During that process findNextLineBreak()
+ decides how to split up the text into InlineTextBoxes. It has already been patched, to ask RenderSVGInlineText::characterStartsNewTextChunk(int position), whether the
+ current character should go in a new SVGInlineTextBox or not. This requires that phase #1 already stored these information in the RenderSVGInlineText objects.
+
+ For each <text> object a SVGRootInlineBox is created (in constructLine()) and all child boxes are added. After that SVGRootInlineBox::computePerCharacterLayoutInformation()
+ is called (unlike HTML text, which splits the vertical & horizontal layout in two phases, it's just one single phase for SVG). This function invokes SVGTextLayoutEngine
+ and starts phase #2 of the layout process.
+
+ SVGTextLayoutEngine lays out the content of each SVGInlineTextBox either on a line or a path. It contains all the logic handling, alignment-baseline, dominant-baseline,
+ letter-spacing, word-spacing, kerning, glyph-orientation-(horizontal|vertical), rotation, etc. etc.
+
+ As result it generates a set of SVGTextFragment objects which are stored in each SVGInlineTextBox. Each SVGTextFragment is a portion of text that can be rendered/measured
+ at once. Some examples to illustrate what's going on:
+
+ <text x="20">ABCD</text>:
+ - SVGInlineTextBox
+ - SVGTextFragment, start 0 length 4, "ABCD" (x=20)
+
+ <text x="20 100">ABCD</text>:
+ - SVGInlineTextBox
+ - SVGTextFragment, start 0 length 1, "A" (x=20)
+ - SVGInlineTextBox
+ - SVGTextFragment, start 0 length 1, "B" (x=100)
+ - SVGTextFragment, start 1 length 2, "CD" (x=100 + advance_of_last)
+
+ <text><textPath xlink:href="#somePath">ABCD</textPath></text>:
+ - SVGInlineTextBox
+ - SVGTextFragment, start 0 length 1, "A" (rotated!)
+ - SVGTextFragment, start 1 length 1, "B" (rotated!)
+ - SVGTextFragment, start 2 length 1, "C" (rotated!)
+ - SVGTextFragment, start 3 length 1, "D" (rotated!)
+
+ <text x="0 50 100">A<tspan>B</tspan>C</text>
+ - SVGInlineTextBox
+ - SVGTextFragment, start 0 length 1, "A" (x=0)
+ - SVGInlineFlowBox
+ - SVGInlineTextBox
+ - SVGTextFragment, start 0 length 1, "B" (x=50)
+ - SVGInlineTextBox
+ - SVGTextFragment, start 0 length 1, "C" (x=100)
+
+ When painting text SVGInlineTextBox just walks its fragments and paints them. Text selection works the same.
+ All text measurements (width/height etc.) have already been done in phase #2 and aren't required anymore while painting/selecting.
+ This is one of the main benefits of the new text layout engine, painting & selection is cheap now, compared to the layout process.
+
+ We're now doing phase #1 everytime RenderSVGText::layout() is called. This is not necessary, we only have to recompute these information
+ if the x/y/dx/dy or rotate list of an element in the <text> subtree changes or the text content itself -> this will be done in a follow-up patch.
+ It's likely that we'll also find ways to skip phase #2 in certain situations.
+
+ Phase #3) - SVGTextChunkBuilder
+ ------------------------------------------
+
+ After phase #2 finished, we can post-process the text fragments. Certain operations have to be applied on a "per chunk" basis.
+ text-anchor should be applied to individual text chunks, as well as textLength corrections (lengthAdjust="spacing" / lengthAdjust="spacingAndGlyphs").
+
+ SVGTextChunkBuilder just walks the SVGInlineTextBox, and collects all boxes belonging to a certain chunk. For each of the chunks all fragments
+ are post-processed. For instance for text-anchor="middle", all x positions of all fragments are shifted by -fragmentWidth/2 (for horizonal text).
+
+ After phase #1 - #3 finished, SVGRootInlineBox::computePerCharacterLayoutInformation() utilizies the stored SVGTextFragments to lay out all child
+ boxes in the InlineBox tree (setWidth/Height, etc.), the size and position of the SVGRootInlineBox and it's parent RenderSVGText object.
+
+ This should give interessted readers a good summary of how the new text layout engine works.
+ See LayoutTests/ChangeLog for more details on test progression.
+
+ Tests: svg/custom/text-rotation.svg
+ svg/custom/text-x-dy-lists.svg
+
+ * Android.mk: Add SVGTextLayoutEngine.* / SVGTextChunkBuilder.* to build. Remove SVGCharacterData.* / SVGTextChunkLayoutInfo.* / SVGTextLayoutUtilities.* from build.
+ * CMakeLists.txt: Ditto.
+ * GNUmakefile.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::isSVGInlineFlowBox): Add helper function to identify SVGInlineFlowBoxes. The variants for SVGInlineTextBox etc. already exist.
+ * rendering/InlineTextBox.h: Devirtualize selectionStartEnd, SVG is no longer overriding it.
+ * rendering/RenderSVGAllInOne.cpp: removes
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::setTextInternal): Remove SVG specific hacks, moved to RenderSVGInlineText.
+ * rendering/SVGCharacterData.cpp: Removed.
+ * rendering/SVGCharacterData.h: Removed.
+ * rendering/SVGCharacterLayoutInfo.cpp: Removed.
+ * rendering/SVGCharacterLayoutInfo.h: Removed.
+ * rendering/SVGRenderTreeAsText.cpp: Hack DRT output to be somewhat compatible with the current output, the plan is to change it completly after this patch.
+ (WebCore::writeRenderSVGTextBox):
+ (WebCore::writeSVGInlineTextBox):
+ * rendering/SVGTextChunkLayoutInfo.cpp: Removed.
+ * rendering/SVGTextChunkLayoutInfo.h: Removed.
+ * rendering/SVGTextLayoutUtilities.cpp: Removed.
+ * rendering/SVGTextLayoutUtilities.h: Removed.
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff): Only return immediately if SVGRenderStyle::diff produced StyleDifferenceLayout, it it's sth. else be sure to ask RenderStyle itself what to do.
+ * rendering/style/SVGRenderStyle.h:
+ (WebCore::SVGRenderStyle::isVerticalWritingMode): New helper method, moved from SVGTextLayoutUtilities.
+ * rendering/svg/RenderSVGInlineText.cpp:
+ (WebCore::applySVGWhitespaceRules): Moved from RenderText into a SVG specific place.
+ (WebCore::RenderSVGInlineText::RenderSVGInlineText): Use applySVGWhitespaceRules on the incoming text.
+ (WebCore::RenderSVGInlineText::styleDidChange): Only apply SVG white space rules, when using xml:space="preserve", otherwhise the constructor already handled it.
+ (WebCore::RenderSVGInlineText::characterStartsNewTextChunk): Create text chunks for absolute y values as well, SVG 1.1 2nd Edition demands that.
+ (WebCore::RenderSVGInlineText::positionForPoint): New function operating on all SVGInlineTextBoxes and their SVGTextFragments.
+ * rendering/svg/RenderSVGInlineText.h:
+ (WebCore::RenderSVGInlineText::layoutAttributes): Stores the layout attributes generated by SVGTextLayoutAttributesBuilder.
+ (WebCore::toRenderSVGInlineText): New helper methods for casting.
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::layout): Add comment, that SVGTextLayoutAttributesBuilder is just phase one of the layout process.
+ (WebCore::RenderSVGText::positionForPoint): Simplified implementation for SVGs needs.
+ * rendering/svg/RenderSVGText.h:
+ * rendering/svg/SVGInlineFlowBox.cpp:
+ (WebCore::SVGInlineFlowBox::paintSelectionBackground): Seperated selection background drawing from actual text rendering, to make sure selection is always in background for SVG.
+ (WebCore::SVGInlineFlowBox::paint): Call computetextMatchMarkerRectForRenderer, before painting.
+ (WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer): New method.
+ * rendering/svg/SVGInlineFlowBox.h:
+ (WebCore::SVGInlineFlowBox::isSVGInlineFlowBox):
+ * rendering/svg/SVGInlineTextBox.cpp: Completly rewritten, operates on SVGTextFragments, produced by the SVGTextLayoutEngine. Whole new concept, compared to the old hack.
+ * rendering/svg/SVGInlineTextBox.h:
+ (WebCore::SVGInlineTextBox::clearTextFragments): Only used by SVGTextLayoutEngine, to clean up previously computed fragments.
+ (WebCore::SVGInlineTextBox::textFragments): Offers access to the fragments in the box.
+ (WebCore::SVGInlineTextBox::startsNewTextChunk): Does this box start a new text chunk?
+ (WebCore::SVGInlineTextBox::setStartsNewTextChunk): SVGTextLayoutEngine marks this box, if it starts a new text chunk.
+ * rendering/svg/SVGRootInlineBox.cpp: Remove old code regarding text chunk parts.
+ (WebCore::SVGRootInlineBox::paint): Selection is now painted before text, to assure it's really in the background.
+ (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation): Use new SVGTextLayoutEngine.
+ (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes): Feed SVGTextLayoutEngine with SVGInlineTextBoxes, detect the begin/end of path layouts.
+ (WebCore::SVGRootInlineBox::layoutChildBoxes): Use new isSVGInlineTextBox() helper method.
+ (WebCore::SVGRootInlineBox::closestLeafChildForPosition): Simplified version for SVG.
+ * rendering/svg/SVGRootInlineBox.h: Remove access to text chunks, they're now longer stored in the SVGRootInlineBox.
+ * rendering/svg/SVGTextChunk.cpp: s/SVGTextChunkNew/SVGTextChunk/
+ * rendering/svg/SVGTextChunk.h:
+ * rendering/svg/SVGTextChunkBuilder.cpp: Added.
+ * rendering/svg/SVGTextChunkBuilder.h: Added.
+ * rendering/svg/SVGTextLayoutAttributes.cpp: Constify dump() method.
+ * rendering/svg/SVGTextLayoutAttributes.h:
+ (WebCore::SVGTextLayoutAttributes::textMetricsValues):
+ * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: Rewritten, consume less memory, while building the layout attributes.
+ * rendering/svg/SVGTextLayoutAttributesBuilder.h:
+ * rendering/svg/SVGTextLayoutEngine.cpp: Added.
+ * rendering/svg/SVGTextLayoutEngine.h: Added.
+ * rendering/svg/SVGTextQuery.cpp: Rewritten to deal with the new SVGTextFragment/SVGTextLayoutAttributes logic.
+ * rendering/svg/SVGTextQuery.h:
+
+2010-10-02 Alpha Lam <hclam@chromium.org>
+
+ Build fix. Not reviewed.
+
+ An adhoc fix for a crash found by reliability bot. This will make the
+ reliability bot happy. A proper fix is pending commit.
+
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::~VideoLayerChromium):
+
+2010-10-01 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ FormatBlockCommand and IndentOutdentCommand should use the same code to iterate paragraphs
+ https://bugs.webkit.org/show_bug.cgi?id=46840
+
+ Added ApplyBlockElementCommand, which is an abstract class inherited by FormatBlockCommand
+ and IndentOutdentCommand. It is intended to be inherited by InsertListCommand as well.
+
+ ApplyBlockElementCommand's doApply verifies the current selection and exits early
+ if it's invalid or orphaned or if the current selection is outside editable region.
+ It then calls formatSelection to apply the block element after which doApply restores the selection.
+ formatSelection iterates through paragraphs and calls formatParagraph, a pure virtual function
+ implemented by FormatBlockCommand and IndentOutdentCommand, on each paragraph.
+
+ No new tests are added since this is a refactoring.
+
+ * Android.mk: Added ApplyBlockElementCommand.cpp.
+ * CMakeLists.txt: Ditto.
+ * GNUmakefile.am: Added ApplyBlockElementCommand.cpp and ApplyBlockElementCommand.h.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * editing/ApplyBlockElementCommand.cpp: Added.
+ (WebCore::countParagraphs): Moved from IndentOutdentCommand.cpp
+ (WebCore::ApplyBlockElementCommand::ApplyBlockElementCommand): Added.
+ (WebCore::ApplyBlockElementCommand::doApply): Moved from IndentOutdentCommand::doApply.
+ (WebCore::ApplyBlockElementCommand::formatSelection): Moved from IndentOutdentCommand::indentRegion.
+ (WebCore::ApplyBlockElementCommand::createBlockElement): Added.
+ (WebCore::ApplyBlockElementCommand::splitTextNodes): Moved from IndentOutdentCommand::splitTextNodes.
+ * editing/ApplyBlockElementCommand.h: Added.
+ * editing/EditingAllInOne.cpp:
+ * editing/EditorCommand.cpp:
+ (WebCore::executeFormatBlock):
+ * editing/FormatBlockCommand.cpp: Removed doApply.
+ (WebCore::FormatBlockCommand::FormatBlockCommand): Calls ApplyBlockElementCommand's constructor.
+ (WebCore::FormatBlockCommand::formatParagraph): Renamed from doApplyForSingleParagraph.
+ * editing/FormatBlockCommand.h: FormatBlockCommand inherits from ApplyBlockElementCommand.
+ (WebCore::FormatBlockCommand::create): Uses QualifiedName for the tag name instead of AtomicString.
+ * editing/IndentOutdentCommand.cpp: Removed doApply, indentIntoBlockquote, and splitTextNodes.
+ (WebCore::IndentOutdentCommand::IndentOutdentCommand): Calls ApplyBlockElementCommand's constructor.
+ (WebCore::IndentOutdentCommand::indentIntoBlockquote): The code to nullify targetBlockquote
+ when the next paragraph is in a different table cell is moved to ApplyBlockElementCommand::formatSelection.
+ (WebCore::IndentOutdentCommand::formatSelection): Added. Calls outdentRegion when outdenting.
+ (WebCore::IndentOutdentCommand::formatParagraph): Added. Calls tryIndentingAsListItem and indentIntoBlockquote.
+ * editing/IndentOutdentCommand.h: IndentOutdentCommand inherits from ApplyBlockElementCommand.
+
+2010-10-01 Mark Rowe <mrowe@apple.com>
+
+ Build fix.
+
+ Clear the executable bit from a number of source files.
+
+ * page/Frame.cpp:
+ * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
+ * platform/graphics/win/WKCACFLayerRenderer.cpp:
+ * platform/graphics/win/WKCACFLayerRenderer.h:
+ * platform/network/ResourceRawHeaders.h:
+ * rendering/RenderLayerCompositor.cpp:
+ * rendering/RenderLayerCompositor.h:
+
+2010-10-01 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Adam Barth.
+
+ [GTK] r68923 broke some plugin tests
+ https://bugs.webkit.org/show_bug.cgi?id=47040
+
+ No longer pass focus and blur events to plugins when the "old" DOM Level
+ 2 DOMFocusIn/DOMFocusOut events occur. r68923 made a change which means
+ that the DOM Level 3 version is always fired for this event.
+
+ No new tests, as this should cause the failing tests to pass.
+
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::handleEvent): No longer pass focus and blur events to
+ plugins when DOMFocusIn / DOMFocusOut events occur.
+
+2010-10-01 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Plug-ins should have access to the private browsing state.
+ https://bugs.webkit.org/show_bug.cgi?id=47031
+ <rdar://problem/8505405>
+
+ * page/Page.cpp:
+ (WebCore::Page::privateBrowsingStateChanged):
+ When iterating over all widgets, also look for PluginViewBase classes and invoke their
+ privateBrowsingStateChange member function.
+
+ * plugins/PluginViewBase.h:
+ (WebCore::PluginViewBase::privateBrowsingStateChanged):
+ Add function.
+
+2010-10-01 Brian Weinstein <bweinstein@apple.com>
+
+ Build Fix for Windows.
+
+ * WebCore.vcproj/WebCore.vcproj: Don't have an empty post-build step, use
+ WebCoreCommon.vsprops to handle post-build step.
+ * WebCore.vcproj/WebCoreCommon.vsprops: Set the post-build step to delete
+ $(WebKitOutputDir)/buildfailed.
+
+2010-10-01 Ragner Magalhaes <ragner.magalhaes@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Segmentation fault during zoom out
+ https://bugs.webkit.org/show_bug.cgi?id=46984
+
+ * platform/qt/QtMobileWebStyle.cpp:
+ (QtMobileWebStyle::drawChecker): Adjust checkerSize to be greater than or equals to middle.
+
+2010-10-01 Anders Carlsson <andersca@apple.com>
+
+ Another Qt build fix attempt.
+
+ * WebCore.pro:
+
+2010-10-01 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47021
+
+ Patch the floatBottom function and its friends. Rename them and consolidate them to be block-flow-aware.
+
+ Nothing testable yet, since most of the float code is still unpatched.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::layoutBlockChildren):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::positionNewFloats):
+ (WebCore::RenderBlock::newLine):
+ (WebCore::RenderBlock::nextFloatLogicalBottomBelow):
+ (WebCore::RenderBlock::lowestFloatLogicalBottom):
+ (WebCore::RenderBlock::clearFloats):
+ (WebCore::RenderBlock::addOverhangingFloats):
+ (WebCore::RenderBlock::getClearDelta):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalBottomForFloat):
+ (WebCore::RenderBlock::hasOverhangingFloats):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::fitBelowFloats):
+
+2010-10-01 Anders Carlsson <andersca@apple.com>
+
+ Fix typo.
+
+ * platform/network/qt/ProxyServerQt.cpp:
+ (WebCore::proxyServersForURL):
+
+2010-10-01 Anders Carlsson <andersca@apple.com>
+
+ Add Qt ProxyServer stub.
+
+ * WebCore.pro:
+ * platform/network/qt/ProxyServerQt.cpp: Added.
+ (WebCore::proxyServersForURL):
+
+2010-10-01 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Add proxy server query function proxyServersForURL and change the Mac plug-in code to use it
+ https://bugs.webkit.org/show_bug.cgi?id=47022
+ <rdar://problem/8504712>
+
+ * WebCore.exp.in:
+ Export proxyServersForURL and toString.
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ Add new files.
+
+ * platform/network/ProxyServer.cpp: Added.
+ (WebCore::appendProxyServerString):
+ (WebCore::toString):
+ New function that converts a vector of ProxyServers into a PAC style string.
+
+ * platform/network/ProxyServer.h: Added.
+ (WebCore::ProxyServer::ProxyServer):
+ (WebCore::ProxyServer::type):
+ (WebCore::ProxyServer::hostName):
+ (WebCore::ProxyServer::port):
+ Add ProxyServer class.
+
+ * platform/network/cf/ProxyServerCFNet.cpp: Added.
+ (WebCore::proxyServersForURL):
+ (WebCore::addProxyServersForURL):
+ Query CFNetwork for the proxy servers given a URL.
+
+2010-09-30 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ texImage2D fails on 16-bit-per-channel images
+ https://bugs.webkit.org/show_bug.cgi?id=46947
+
+ * platform/graphics/GraphicsContext3D.cpp: Handling 16-bit-per-channel source formats.
+ (WebCore::convertColor16To8):
+ (WebCore::doPacking):
+ * platform/graphics/GraphicsContext3D.h: Ditto.
+ * platform/graphics/cg/GraphicsContext3DCG.cpp: Ditto.
+ (WebCore::GraphicsContext3D::getImageData):
+
+2010-10-01 Eric Uhrhane <ericu@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ Add v8 binding helpers to make FileWriter be an EventTarget.
+ https://bugs.webkit.org/show_bug.cgi?id=46910
+
+ No new tests; still waiting for the first complete implementation.
+
+ * bindings/v8/V8DOMWrapper.cpp:
+ (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
+
+2010-10-01 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47015
+
+ Change FloatingObject to store its dimensions as a rect.
+ This will make it easier for logical access for block-flow later on if
+ top/bottom is no different from left/width. This change also simplifies
+ calling code a bit in places.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::addOverflowFromFloats):
+ (WebCore::RenderBlock::repaintOverhangingFloats):
+ (WebCore::RenderBlock::paintFloats):
+ (WebCore::RenderBlock::fillSelectionGaps):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::removeFloatingObject):
+ (WebCore::RenderBlock::removeFloatingObjectsBelow):
+ (WebCore::RenderBlock::positionNewFloats):
+ (WebCore::RenderBlock::positionNewFloatOnLine):
+ (WebCore::RenderBlock::logicalLeftOffsetForLine):
+ (WebCore::RenderBlock::logicalRightOffsetForLine):
+ (WebCore::RenderBlock::nextFloatBottomBelow):
+ (WebCore::RenderBlock::floatBottom):
+ (WebCore::RenderBlock::lowestPosition):
+ (WebCore::RenderBlock::rightmostPosition):
+ (WebCore::RenderBlock::leftmostPosition):
+ (WebCore::RenderBlock::leftBottom):
+ (WebCore::RenderBlock::rightBottom):
+ (WebCore::RenderBlock::clearFloats):
+ (WebCore::RenderBlock::addOverhangingFloats):
+ (WebCore::RenderBlock::addIntrudingFloats):
+ (WebCore::RenderBlock::hitTestFloats):
+ (WebCore::RenderBlock::adjustForBorderFit):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::FloatingObject::FloatingObject):
+ (WebCore::RenderBlock::FloatingObject::left):
+ (WebCore::RenderBlock::FloatingObject::right):
+ (WebCore::RenderBlock::FloatingObject::top):
+ (WebCore::RenderBlock::FloatingObject::bottom):
+ (WebCore::RenderBlock::FloatingObject::width):
+ (WebCore::RenderBlock::FloatingObject::height):
+ (WebCore::RenderBlock::FloatingObject::setLeft):
+ (WebCore::RenderBlock::FloatingObject::setTop):
+ (WebCore::RenderBlock::FloatingObject::setWidth):
+ (WebCore::RenderBlock::FloatingObject::setHeight):
+ (WebCore::RenderBlock::FloatingObject::frameRect):
+ (WebCore::RenderBlock::FloatingObject::setFrameRect):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::matchedEndLine):
+
+2010-10-01 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Darin Adler.
+
+ DOMFocusIn/DOMFocusOut return focusin/focusout Event.type
+ https://bugs.webkit.org/show_bug.cgi?id=42580
+ <rdar://problem/8107311>
+
+ This change removes the aliased type machinery from the Event class.
+ We now fire the event with the new name and the oldname.
+
+ Tests: Modified fast/events/focusinout.html to check the event
+ type.
+
+ * dom/Document.cpp:
+ (WebCore::Document::setFocusedNode):
+ * dom/Event.cpp: Removed aliasedType and hasAliasedType.
+ * dom/Event.h: Removed aliasedType and hasAliasedType.
+ * dom/EventTarget.cpp:
+ (WebCore::EventTarget::fireEventListeners): Removed aliasedType related code.
+
+2010-10-01 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46642, make replaced elements work with block-flow. This patch changes
+ all of the computeReplacedLogicalWidth and comuteReplacedLogicalHeight functions (and their helpers) to use logical width
+ and logical height instead.
+
+ Added fast/blockflow/block-level-images.html
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::computeReplacedLogicalWidth):
+ (WebCore::RenderBox::computeReplacedLogicalWidthUsing):
+ (WebCore::RenderBox::computeReplacedLogicalHeight):
+ (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
+ (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
+ (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::intrinsicLogicalWidth):
+ (WebCore::RenderBox::intrinsicLogicalHeight):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::isLogicalWidthSpecified):
+ (WebCore::RenderImage::isLogicalHeightSpecified):
+ (WebCore::RenderImage::computeReplacedLogicalWidth):
+ (WebCore::RenderImage::computeReplacedLogicalHeight):
+ (WebCore::RenderImage::calcAspectRatioLogicalWidth):
+ (WebCore::RenderImage::calcAspectRatioLogicalHeight):
+ * rendering/RenderImage.h:
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::layout):
+ (WebCore::RenderReplaced::computeReplacedLogicalWidth):
+ (WebCore::RenderReplaced::computeReplacedLogicalHeight):
+ (WebCore::RenderReplaced::calcAspectRatioLogicalWidth):
+ (WebCore::RenderReplaced::calcAspectRatioLogicalHeight):
+ (WebCore::RenderReplaced::computePreferredLogicalWidths):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
+ (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
+ (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
+ * rendering/RenderSVGRoot.h:
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::computeReplacedLogicalWidth):
+ (WebCore::RenderVideo::computeReplacedLogicalHeight):
+ * rendering/RenderVideo.h:
+
+2010-10-01 Nate Chapin <japhet@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Remove unused Request::buffer() and Request::m_buffer.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47003
+
+ * loader/Request.h:
+
+2010-10-01 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ <rdar://problem/7563219> Null dereference when dragging an element with generated content
+ https://bugs.webkit.org/show_bug.cgi?id=47005
+
+ Test: fast/css-generated-content/drag-state.html
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::updateDragState): Null-check node().
+
+2010-10-01 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ [Qt] Fix http/tests/loading/redirect-methods.html
+
+ Document our redirection behaviour too.
+
+ https://bugs.webkit.org/show_bug.cgi?id=41571
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+ * platform/network/qt/QNetworkReplyHandler.h:
+
+2010-10-01 Adam Roben <aroben@apple.com>
+
+ Copy forwarding headers and Inspector JS files as part of
+ WebCoreGenerated.vcproj
+
+ WebCoreGenerated.vcproj runs on every build, while WebCore.vcproj only
+ runs when a .h or .cpp file changes. By moving the copying to
+ WebCoreGenerated, it will happen even when someone only changes a JS
+ file (as happened in r68887).
+
+ Fixes <http://webkit.org/b/46988> <rdar://problem/8502489> REGRESSION
+ (r68887): Web Inspector: inspector/extensions*.html are failing on
+ Windows
+
+ Reviewed by Anders Carlsson.
+
+ * WebCore.vcproj/WebCore.vcproj: Moved invocation of
+ copyForwardingHeaders and copyInspectorFiles from here...
+ * WebCore.vcproj/WebCoreGenerated.vcproj: ...to here.
+
+2010-09-30 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Implement queryCommandState('justifyFull')
+ https://bugs.webkit.org/show_bug.cgi?id=46954
+
+ Implemented queryCommandState('justifyFull').
+ New tests are added to editing/style/inline-style-container.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::getTextAlignment): Added support for CSSValueJustify.
+ * editing/EditorCommand.cpp:
+ (WebCore::stateJustifyFull): Added.
+ (WebCore::createCommandMap): Added stateJustifyFull.
+
+2010-10-01 Jia Pu <jpu@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Autocorrection shouldn't prompt the same correction after user has edited previous correction.
+ https://bugs.webkit.org/show_bug.cgi?id=46839
+ <rdar://problem/8476963>
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::respondToChangedSelection): Remove "CorrectionIndicator" marker instead of
+ "Replacement" marker. Since the former controls whether we draw autocorrection underline,
+ and the latter is used to prevent autocorrection from being applied again on already auto-
+ corrected word. So the "Replacement" shouldn't be removed.
+
+2010-10-01 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ [CMake] Add handling for ENABLE(NETSCAPE_PLUGIN_API)
+ https://bugs.webkit.org/show_bug.cgi?id=46309
+
+ * CMakeLists.txt:
+ * CMakeListsEfl.txt:
+
+2010-10-01 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46996, patch the functions dealing with the bottom of the block to
+ be block-flow-aware.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::setCollapsedBottomMargin):
+ (WebCore::RenderBlock::handleAfterSideOfBlock):
+
+2010-10-01 Pratik Solanki <psolanki@apple.com>
+
+ Reviewed by Geoffrey Garen.
+ Specify ALWAYS_INLINE at function declaration not function definition
+ https://bugs.webkit.org/show_bug.cgi?id=46960
+
+ For functions defined with ALWAYS_INLINE, add the attribute to the declaration as well.
+
+ * css/CSSStyleSelector.h:
+ * rendering/InlineIterator.h:
+ * rendering/style/RenderStyle.h:
+
+2010-10-01 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46995, make direction propagate up to the viewport from the root element.
+
+ Added fast/css/rtl-to-viewport.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::styleForDocument):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::styleDidChange):
+
+2010-10-01 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=44406
+ <rdar://problem/8310921> Application Cache crash when a fallback document has a manifest URL
+
+ Test: http/tests/appcache/foreign-fallback.html
+
+ * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::selectCache):
+ Changed ApplicationCacheResource lookup to find fallback resources correctly.
+
+2010-10-01 Kwang Yul Seo <skyul@company100.net>
+
+ Unreviewed, Brew MP build fix.
+
+ * platform/brew/ClipboardBrew.cpp:
+ (WebCore::ClipboardBrew::ClipboardBrew):
+
+2010-10-01 Rafael Antognolli <antognolli@profusion.mobi>
+
+ Unreviewed build fix.
+
+ [CMAKE] Build fix for r68878
+ https://bugs.webkit.org/show_bug.cgi?id=46985
+
+ Fix name of files added to CMakeLists.txt:
+ SVGTextLayoutBaseline.cpp -> SVGTextLayoutEngineBaseline.cpp
+ SVGTextLayoutSpacing.cpp -> SVGTextLayoutEngineSpacing.cpp
+
+ No features added, so no new tests.
+
+ * CMakeLists.txt:
+
+2010-10-01 Ragner Magalhaes <ragner.magalhaes@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] New buttons style for Qt Mobile theme
+ https://bugs.webkit.org/show_bug.cgi?id=46920
+
+ Rename Maemo5Webstyle to QtMobileWebStyle since it implements the style for all Qt mobile platform.
+ Adjust new Qt mobile style for buttons, radios, checks and combos.
+
+ * WebCore.pro:
+ * css/themeQtMobile.css: Adjust gradient color for buttons and combos.
+ (select):
+ (select:active):
+ * platform/qt/QtMobileWebStyle.cpp: Renamed from platform/qt/Maemo5Webstyle.cpp to match name scheme.
+ (QtMobileWebStyle::QtMobileWebStyle):
+ (drawRectangularControlBackground):
+ (QtMobileWebStyle::drawChecker):
+ (QtMobileWebStyle::findChecker):
+ (QtMobileWebStyle::drawRadio): Adjust gradient color for RadioButton.
+ (QtMobileWebStyle::findRadio):
+ (QtMobileWebStyle::drawControl): Adjust gradient color for CheckBox.
+ (QtMobileWebStyle::drawMultipleComboButton):
+ (QtMobileWebStyle::drawSimpleComboButton): Adjust ComboBox arrow.
+ (QtMobileWebStyle::getButtonImageSize):
+ (QtMobileWebStyle::findComboButton):
+ (QtMobileWebStyle::drawComplexControl):
+ * platform/qt/QtMobileWebStyle.h: Renamed from platform/qt/Maemo5Webstyle.h to match name scheme.
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::RenderThemeQt):
+
+2010-10-01 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Extensions API] expose page load events timings
+ Added webInspector.resources.getPageTimings()
+
+ https://bugs.webkit.org/show_bug.cgi?id=45954
+
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.Resources.prototype):
+ (WebInspector.injectedExtensionAPI.Resources.prototype.getPageTimings):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._onGetPageTimings):
+ * inspector/front-end/HAREntry.js: Return page event timings as -1 if start or event time unknown.
+ (WebInspector.HARLog.prototype._buildPages):
+ (WebInspector.HARLog.prototype.buildMainResourceTimings):
+ (WebInspector.HARLog.prototype._convertResource):
+ (WebInspector.HARLog.prototype._pageEventTime):
+
+2010-10-01 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ [WIN] Add GDIExtras
+ https://bugs.webkit.org/show_bug.cgi?id=46974
+
+ Some, but not all WinCE environments have support for AlphaBlend().
+ Add this files to check for AlphaBlend (and SoftLink) on WinCE.
+ On WinNT alphaBlendIfSupported() inlines AlphaBlend and returns true.
+
+ * platform/graphics/win/GDIExtras.cpp: Added.
+ (WebCore::AlphaBlendPointer):
+ * platform/graphics/win/GDIExtras.h: Added.
+ (WebCore::hasAlphaBlendSupport):
+ (WebCore::alphaBlendIfSupported):
+
+2010-10-01 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ [WINCE] Use alphaBlendIfSupported in GraphicsContext
+ https://bugs.webkit.org/show_bug.cgi?id=46979
+
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContextPlatformPrivate::paintBackTransparentLayerBitmap):
+
+2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ Add two new helper files for the new SVGTextLayoutEngine
+ https://bugs.webkit.org/show_bug.cgi?id=46972
+
+ Refactor code from SVGTextLayoutUtilities into two seperated classes.
+ SVGTextLayoutUtilities will be removed, as soon as the main clss SVGTextLayoutEngine lands and gets used.
+
+ Doesn't affect any functionality yet, as the new classes are not used so far.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/svg/SVGTextFragment.h:
+ * rendering/svg/SVGTextLayoutEngineBaseline.cpp: Added.
+ (WebCore::SVGTextLayoutEngineBaseline::SVGTextLayoutEngineBaseline):
+ (WebCore::SVGTextLayoutEngineBaseline::calculateBaselineShift):
+ (WebCore::SVGTextLayoutEngineBaseline::dominantBaselineToAlignmentBaseline):
+ (WebCore::SVGTextLayoutEngineBaseline::calculateAlignmentBaselineShift):
+ (WebCore::SVGTextLayoutEngineBaseline::calculateGlyphOrientationAngle):
+ (WebCore::glyphOrientationIsMultiplyOf180Degrees):
+ (WebCore::SVGTextLayoutEngineBaseline::calculateGlyphAdvanceAndOrientation):
+ * rendering/svg/SVGTextLayoutEngineBaseline.h: Added.
+ * rendering/svg/SVGTextLayoutEngineSpacing.cpp: Added.
+ (WebCore::SVGTextLayoutEngineSpacing::SVGTextLayoutEngineSpacing):
+ (WebCore::SVGTextLayoutEngineSpacing::calculateSVGKerning):
+ (WebCore::SVGTextLayoutEngineSpacing::calculateCSSKerningAndSpacing):
+ * rendering/svg/SVGTextLayoutEngineSpacing.h: Added.
+
+2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Andreas Kling.
+
+ Rename SVGTextLayoutBuilder to SVGTextLayoutAttributesBuilder
+ https://bugs.webkit.org/show_bug.cgi?id=46971
+
+ Doesn't affect any functionality, just moves files around.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::layout): Adopt to renaming.
+ * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: Copied from rendering/svg/SVGTextLayoutBuilder.cpp.
+ * rendering/svg/SVGTextLayoutAttributesBuilder.h: Copied from rendering/svg/SVGTextLayoutBuilder.h.
+ * rendering/svg/SVGTextLayoutBuilder.cpp: Removed.
+ * rendering/svg/SVGTextLayoutBuilder.h: Removed.
+
+2010-10-01 MORITA Hajime <morrita@google.com>
+
+ Unreviewed build fix.
+
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::PlatformContextSkia):
+
+2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Andreas Kling.
+
+ Move SVG text related renderers into rendering/svg/
+ https://bugs.webkit.org/show_bug.cgi?id=46969
+
+ Doesn't affect any functionality, just moves files around.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/RenderSVGAllInOne.cpp:
+ * rendering/RenderSVGInline.cpp: Removed.
+ * rendering/RenderSVGInline.h: Removed.
+ * rendering/RenderSVGInlineText.cpp: Removed.
+ * rendering/RenderSVGInlineText.h: Removed.
+ * rendering/RenderSVGTSpan.cpp: Removed.
+ * rendering/RenderSVGTSpan.h: Removed.
+ * rendering/RenderSVGText.cpp: Removed.
+ * rendering/RenderSVGText.h: Removed.
+ * rendering/RenderSVGTextPath.cpp: Removed.
+ * rendering/RenderSVGTextPath.h: Removed.
+ * rendering/SVGInlineFlowBox.cpp: Removed.
+ * rendering/SVGInlineFlowBox.h: Removed.
+ * rendering/SVGInlineTextBox.cpp: Removed.
+ * rendering/SVGInlineTextBox.h: Removed.
+ * rendering/SVGRootInlineBox.cpp: Removed.
+ * rendering/SVGRootInlineBox.h: Removed.
+ * rendering/SVGTextQuery.cpp: Removed.
+ * rendering/SVGTextQuery.h: Removed.
+ * rendering/svg/RenderSVGInline.cpp: Copied from rendering/RenderSVGInline.cpp.
+ * rendering/svg/RenderSVGInline.h: Copied from rendering/RenderSVGInline.h.
+ * rendering/svg/RenderSVGInlineText.cpp: Copied from rendering/RenderSVGInlineText.cpp.
+ * rendering/svg/RenderSVGInlineText.h: Copied from rendering/RenderSVGInlineText.h.
+ * rendering/svg/RenderSVGTSpan.cpp: Copied from rendering/RenderSVGTSpan.cpp.
+ * rendering/svg/RenderSVGTSpan.h: Copied from rendering/RenderSVGTSpan.h.
+ * rendering/svg/RenderSVGText.cpp: Copied from rendering/RenderSVGText.cpp.
+ * rendering/svg/RenderSVGText.h: Copied from rendering/RenderSVGText.h.
+ * rendering/svg/RenderSVGTextPath.cpp: Copied from rendering/RenderSVGTextPath.cpp.
+ * rendering/svg/RenderSVGTextPath.h: Copied from rendering/RenderSVGTextPath.h.
+ * rendering/svg/SVGInlineFlowBox.cpp: Copied from rendering/SVGInlineFlowBox.cpp.
+ * rendering/svg/SVGInlineFlowBox.h: Copied from rendering/SVGInlineFlowBox.h.
+ * rendering/svg/SVGInlineTextBox.cpp: Copied from rendering/SVGInlineTextBox.cpp.
+ * rendering/svg/SVGInlineTextBox.h: Copied from rendering/SVGInlineTextBox.h.
+ * rendering/svg/SVGRootInlineBox.cpp: Copied from rendering/SVGRootInlineBox.cpp.
+ * rendering/svg/SVGRootInlineBox.h: Copied from rendering/SVGRootInlineBox.h.
+ * rendering/svg/SVGTextQuery.cpp: Copied from rendering/SVGTextQuery.cpp.
+ * rendering/svg/SVGTextQuery.h: Copied from rendering/SVGTextQuery.h.
+
+2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ Add SVGTextMetrics/SVGTextFragment/SVGTextChunk primitives used by the new layout engine
+ https://bugs.webkit.org/show_bug.cgi?id=46964
+
+ The new SVG text layout engine will use these new classes.
+ 1) SVGTextMetrics is used to measure either single glyphs (which may span multiple characters, when ligatures are defined) or a range of characters.
+
+ -> In "single glyph" mode, it returns the width/height of the glyph, the length of the glyph (> 1, when ligatures are used) and a "Glyph" object
+ describing the glyph (name of glyph, when used together with SVG Fonts and the unicode string the glyph describes).
+ -> In "range of characters" mode, it returns the width/height of the range, and its length.
+
+ All measurements are done using the regular Font::floatWidth() methods, this class just encapsulates its usage for the SVG text layout engine.
+
+ 2) SVGTextFragment describes a fragment of text, living in a SVGInlineTextBox, which can be measured/rendered in one shot.
+ It contains all necessary information to render the fragment (x/y/width/height, offset into characters() buffer for the first char of the fragment,
+ length, and an arbitary transformation, holding information about rotations/scale/glyph-orientation etc.)
+
+ In future the SVGTextLayoutEngine will generate SVGTextFragment objects for each SVGInlineTextBox. When painting no more measurements have to
+ be performed as SVGTextFragment contains all necessary information to render text / select text etc.
+
+ 3) SVGTextChunk describes a SVG text chunk, which may span multiple text boxes (and in turn text fragments).
+
+ Quotes from SVG spec:
+ Each absolute position adjustment defines a new "text chunk". Absolute position adjustments impact text layout in the following ways:
+ * Ligatures only occur when a set of characters which might map to a ligature are all in the same text chunk.
+ * Each text chunk represents a separate block of text for alignment due to "text-anchor" property values.
+ * Reordering of characters due to bidirectionality only occurs within a text chunk. Reordering does not happen across text chunks.
+
+ An absolute position adjustment occurs in the following circumstances:
+ * At the start of a <text> element
+ * At the start of each <textPath> element
+ * For each character within a <text>, <tspan>, <tref> and <altGlyph> element which has an "x" or "y" attribute value assigned to it explicitly
+
+ After the line-layout finishes, each "text chunk" is altered according to the textLength and text-anchor processing rules
+ (eg. for text-anchor="middle" moving the whole text chunk by -fragmentWidth/2, for horizontal text).
+
+ SVGTextChunk is just a simple helper class, that encapsulates measuring/altering a text chunk.
+
+ Doesn't affect any tests, as these classes aren't used so far.
+
+ * Android.mk: Add SVGTextMetrics.*, SVGTextFragment.h, SVGTextChunk.* to build.
+ * CMakeLists.txt: Ditto.
+ * GNUmakefile.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * rendering/svg/SVGTextChunk.cpp: Added.
+ * rendering/svg/SVGTextChunk.h: Added.
+ * rendering/svg/SVGTextFragment.h: Added.
+ * rendering/svg/SVGTextMetrics.cpp: Added.
+ * rendering/svg/SVGTextMetrics.h: Added.
+
+2010-10-01 Vincent Scheib <scheib@chromium.org>
+
+ Reviewed by James Robinson.
+
+ REGRESSION: Lots of fast canvas updates fail to completely render
+ https://bugs.webkit.org/show_bug.cgi?id=46319
+
+ Test: fast/repaint/canvas-putImageData.html
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::putImageData):
+
+2010-10-01 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ Add helper methods to cast between renderers & SVGTextContent/PositioningElement
+ https://bugs.webkit.org/show_bug.cgi?id=46963
+
+ Doesn't affect any tests.
+
+ * svg/SVGTextContentElement.cpp:
+ (WebCore::SVGTextContentElement::elementFromRenderer):
+ * svg/SVGTextContentElement.h:
+ * svg/SVGTextPositioningElement.cpp:
+ (WebCore::SVGTextPositioningElement::elementFromRenderer):
+ * svg/SVGTextPositioningElement.h:
+
+2010-09-30 MORITA Hajime <morrita@google.com>
+
+ Reviewed by James Robinson.
+
+ [Chromium] build fails unless ACCELERATED_2D_CANVAS defined
+ https://bugs.webkit.org/show_bug.cgi?id=46955
+
+ Added ifdef guard around SharedGraphicsContext3D.
+
+ No new tests. just a build fix.
+
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::~PlatformContextSkia):
+ (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
+ (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
+ (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
+ * platform/graphics/skia/PlatformContextSkia.h:
+ (WebCore::PlatformContextSkia::gpuCanvas):
+
+2010-09-30 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Chris Fleizach.
+
+ [Windows] Implement <input type=number> UI
+ https://bugs.webkit.org/show_bug.cgi?id=38381
+
+ Implement theme drawing for inner-spin-button.
+ No new tests. Existing tests for type=number will cover this change.
+
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::RenderThemeWin::RenderThemeWin):
+ Handle m_spinButtonTheme.
+ (WebCore::RenderThemeWin::spinButtonTheme): ditto.
+ (WebCore::RenderThemeWin::close): ditto.
+ (WebCore::RenderThemeWin::determineClassicState):
+ Add ControlSubPart parameter, and add support for InnerSpinButtonPart.
+ (WebCore::RenderThemeWin::determineSpinButtonState): Added.
+ (WebCore::RenderThemeWin::getClassicThemeData):
+ Add ControlSubPart parameter, and handle InnerSpinButtonPart.
+ (WebCore::RenderThemeWin::getThemeData): ditto.
+ (WebCore::RenderThemeWin::adjustInnerSpinButtonStyle):
+ Set SM_CXVSCROLL value to the width.
+ (WebCore::RenderThemeWin::paintInnerSpinButton):
+ Call drawControl() for the upper part and the lower part.
+ * rendering/RenderThemeWin.h:
+
+2010-09-30 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, Windows build fix for r68854
+
+ * WebCore.vcproj/copyForwardingHeaders.cmd:
+ Copy WebCore/html/parser/*.h.
+
+2010-09-30 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dan Bernstein.
+
+ While updating :before and :after content, make sure that the generated
+ container is allowed to add the child type.
+ https://bugs.webkit.org/show_bug.cgi?id=46106
+
+ Test: fast/css-generated-content/text-before-table-col-crash.html
+
+ * rendering/RenderObjectChildList.cpp:
+ (WebCore::RenderObjectChildList::updateBeforeAfterContent):
+
+2010-09-30 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Daniel Bates.
+
+ [GTK] Crash on testatk.c unittest because of a call to ASSERT_NOT_REACHED
+ https://bugs.webkit.org/show_bug.cgi?id=46886
+
+ Removed call to ASSERT_NOT_REACHED() from listMarkerSuffix().
+
+ So far, this assertion made sense because it was not possible that
+ a call to listMarkerSuffix() happened when the style of the list
+ item was one of the following: Asterisks, Circle, Discm Footnotes,
+ NoneListStyle or Square (it's easy to figure this out by checking
+ the functions where listMarkerSuffix() was called).
+
+ However, since revision 68415 (about bug 45381), there's a new
+ place where listMarkerSuffix() is being called (the suffix()
+ public method), regardless of the style of the item being or not
+ one of those pointed out, so the aforementioned assertion in
+ listMarkerSuffix() would no longer be correct, as now it's ok to
+ reach those cases in the switch statement.
+
+ * rendering/RenderListMarker.cpp:
+ (WebCore::listMarkerSuffix): Removed call to ASSERT_NOT_REACHED().
+
+2010-09-30 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46948 Crash with all-
+ whitespace separators for mfenced
+
+ Check the size of characters instead of separators in case all the
+ separators were whitespace.
+
+ * mathml/RenderMathMLFenced.cpp:
+ (WebCore::RenderMathMLFenced::updateFromElement):
+
+2010-09-30 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Remove remaining calls to deprecatedParseURL
+ https://bugs.webkit.org/show_bug.cgi?id=26599
+
+ Test: fast/replaced/object-param-spaces.html
+
+ * css/CSSHelper.cpp: Removed.
+ * css/CSSHelper.h: Removed deprecatedParseURL.
+
+ * html/parser/HTMLParserIdioms.cpp:
+ (WebCore::stripLeadingAndTrailingHTMLSpaces):
+ Fixed bug where the function would turn the null string into the empty string.
+ Fixed bug where the function would not strip all trailing spaces.
+
+ * html/parser/CSSPreloadScanner.cpp:
+ (WebCore::CSSPreloadScanner::CSSPreloadScanner): Initialize m_state
+ instead of calling the reset function.
+ (WebCore::CSSPreloadScanner::scan): Tweaked coding style.
+ (WebCore::CSSPreloadScanner::tokenize): Use isHTMLSpace instead of
+ an identical local function named isWhitespace.
+ (WebCore::parseCSSStringOrURL): Added. This function does what
+ deprecatedParseURL did before, and this is the only place in WebKit
+ that needs it. The code implements the rules for a string or URL
+ token. The real CSS parser does this with flex and the code to hook
+ flex up to yacc, so the function is not needed there.
+ (WebCore::CSSPreloadScanner::emitRule): Streamlined the code a bit
+ and mae it call parseCSSStringOrURL.
+
+ * bindings/generic/BindingSecurity.h:
+ (WebCore::::allowSettingFrameSrcToJavascriptUrl):
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::allowSettingSrcToJavascriptURL):
+ * bindings/js/JSHTMLFrameElementCustom.cpp:
+ (WebCore::allowSettingJavascriptURL):
+ * bindings/objc/DOM.mm:
+ (-[DOMElement _getURLAttribute:]):
+ * bindings/objc/DOMHTML.mm:
+ (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
+ * dom/Document.cpp:
+ (WebCore::Document::processBaseElement):
+ * dom/Element.cpp:
+ (WebCore::isAttributeToRemove):
+ (WebCore::Element::getURLAttribute):
+ (WebCore::Element::getNonEmptyURLAttribute):
+ * html/HTMLAnchorElement.cpp:
+ (WebCore::HTMLAnchorElement::defaultEventHandler):
+ (WebCore::HTMLAnchorElement::parseMappedAttribute):
+ (WebCore::HTMLAnchorElement::href):
+ * html/HTMLBodyElement.cpp:
+ (WebCore::HTMLBodyElement::parseMappedAttribute):
+ * html/HTMLEmbedElement.cpp:
+ (WebCore::HTMLEmbedElement::parseMappedAttribute):
+ * html/HTMLFrameElementBase.cpp:
+ (WebCore::HTMLFrameElementBase::parseMappedAttribute):
+ * html/HTMLImageElement.cpp:
+ (WebCore::HTMLImageElement::parseMappedAttribute):
+ * html/HTMLImageLoader.cpp:
+ (WebCore::HTMLImageLoader::sourceURI):
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::parseMappedAttribute):
+ * html/HTMLMediaElement.cpp:
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::parseMappedAttribute):
+ (WebCore::HTMLObjectElement::parametersForPlugin):
+ * html/HTMLTableElement.cpp:
+ (WebCore::HTMLTableElement::parseMappedAttribute):
+ * html/HTMLTablePartElement.cpp:
+ (WebCore::HTMLTablePartElement::parseMappedAttribute):
+ * html/parser/HTMLPreloadScanner.cpp:
+ (WebCore::HTMLNames::PreloadTask::setUrlToLoad):
+ * loader/FormSubmission.cpp:
+ (WebCore::FormSubmission::Attributes::parseAction):
+ * platform/chromium/ClipboardChromium.cpp:
+ (WebCore::ClipboardChromium::declareAndWriteDragImage):
+ * platform/chromium/PasteboardChromium.cpp:
+ (WebCore::Pasteboard::writeImage):
+ * platform/qt/ClipboardQt.cpp:
+ (WebCore::ClipboardQt::declareAndWriteDragImage):
+ * platform/win/ClipboardWin.cpp:
+ (WebCore::ClipboardWin::declareAndWriteDragImage):
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::absoluteImageURL):
+ (WebCore::HitTestResult::absoluteMediaURL):
+ (WebCore::HitTestResult::absoluteLinkURL):
+ * svg/SVGAElement.cpp:
+ (WebCore::SVGAElement::defaultEventHandler):
+ * svg/SVGImageLoader.cpp:
+ (WebCore::SVGImageLoader::sourceURI):
+ * wml/WMLAElement.cpp:
+ (WebCore::WMLAElement::defaultEventHandler):
+ * wml/WMLImageLoader.cpp:
+ (WebCore::WMLImageLoader::sourceURI):
+ Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
+
+ * WebCore.exp.in: Updated.
+
+ * Android.mk: Removed CSSHelper.cpp.
+ * CMakeLists.txt: Ditto.
+ * GNUmakefile.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+
+ * bindings/js/JSAttrCustom.cpp:
+ * bindings/js/JSElementCustom.cpp:
+ * bindings/v8/custom/V8ElementCustom.cpp:
+ * bindings/v8/custom/V8LocationCustom.cpp:
+ * css/CSSParser.cpp:
+ * html/HTMLMediaElement.cpp:
+ * html/HTMLVideoElement.cpp:
+ * loader/ImageLoader.cpp:
+ * rendering/style/RenderStyle.h:
+ Removed unneeded include of CSSHelper.h.
+
+2010-09-30 Alexey Marinichev <amarinichev@chromium.org>
+
+ Reviewed by Chris Marrin.
+
+ Add GetGraphicsResetStatusARB entry point from ARB_robustness
+ extension to GraphicsContext3D
+ https://bugs.webkit.org/show_bug.cgi?id=46850
+
+ Added stubs for GraphicsContext3D::getGraphicsResetStatusARB for
+ Mac and QT.
+
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::getGraphicsResetStatusARB):
+ * platform/graphics/qt/GraphicsContext3DQt.cpp:
+ (WebCore::GraphicsContext3D::getGraphicsResetStatusARB):
+
+2010-09-30 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46938
+
+ Rewrite margin collapsing to be block-flow-aware. Eliminate a bunch of the margin functions on RenderBox in favor of a single
+ master function for grabbing all the margin values for a child: marginValuesForChild on RenderBlock. Introduce a new
+ MarginValues struct to make returning the collection of 4 margin values easy.
+
+ fast/blockflow/inline-direction-positioning.html progresses to have the correct results.
+ Added fast/blockflow/margin-collapse.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::MarginInfo::MarginInfo):
+ (WebCore::RenderBlock::adjustPositionedBlock):
+ (WebCore::RenderBlock::collapseMargins):
+ (WebCore::RenderBlock::clearFloatsIfNeeded):
+ (WebCore::RenderBlock::setCollapsedBottomMargin):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::setMaxMarginBeforeValues):
+ (WebCore::RenderBlock::setMaxMarginAfterValues):
+ (WebCore::RenderBlock::marginValuesForChild):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::MarginValues::MarginValues):
+ (WebCore::RenderBlock::MarginValues::positiveMarginBefore):
+ (WebCore::RenderBlock::MarginValues::negativeMarginBefore):
+ (WebCore::RenderBlock::MarginValues::positiveMarginAfter):
+ (WebCore::RenderBlock::MarginValues::negativeMarginAfter):
+ (WebCore::RenderBlock::MarginValues::setPositiveMarginBefore):
+ (WebCore::RenderBlock::MarginValues::setNegativeMarginBefore):
+ (WebCore::RenderBlock::MarginValues::setPositiveMarginAfter):
+ (WebCore::RenderBlock::MarginValues::setNegativeMarginAfter):
+ (WebCore::RenderBlock::maxPositiveMarginBefore):
+ (WebCore::RenderBlock::maxNegativeMarginBefore):
+ (WebCore::RenderBlock::maxPositiveMarginAfter):
+ (WebCore::RenderBlock::maxNegativeMarginAfter):
+ (WebCore::RenderBlock::initMaxMarginValues):
+ (WebCore::RenderBlock::collapsedMarginBefore):
+ (WebCore::RenderBlock::collapsedMarginAfter):
+ (WebCore::RenderBlock::MarginInfo::clearMargin):
+ (WebCore::RenderBlock::MarginInfo::setPositiveMargin):
+ (WebCore::RenderBlock::MarginInfo::setNegativeMargin):
+ (WebCore::RenderBlock::MarginInfo::setPositiveMarginIfLarger):
+ (WebCore::RenderBlock::MarginInfo::setNegativeMarginIfLarger):
+ (WebCore::RenderBlock::MarginInfo::setMargin):
+ (WebCore::RenderBlock::MarginInfo::positiveMargin):
+ (WebCore::RenderBlock::MarginInfo::negativeMargin):
+ (WebCore::RenderBlock::MarginInfo::margin):
+ (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
+ (WebCore::RenderBlock::RenderBlockRareData::positiveMarginBeforeDefault):
+ (WebCore::RenderBlock::RenderBlockRareData::negativeMarginBeforeDefault):
+ (WebCore::RenderBlock::RenderBlockRareData::positiveMarginAfterDefault):
+ (WebCore::RenderBlock::RenderBlockRareData::negativeMarginAfterDefault):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::collapsedMarginBefore):
+ (WebCore::RenderBox::collapsedMarginAfter):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutBlock):
+
+2010-09-30 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ [WINCE] Fix InternetGetCookie in CookieJarWin.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=46929
+
+ If the InternetGetCookie fails the output size won't be set.
+ Set the default size to 0, so we always get the correct size
+ and check the return value of InternetGetCookie.
+
+ * platform/network/win/CookieJarWin.cpp:
+ (WebCore::cookies):
+
+2010-09-30 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ [WINCE] Use OwnPtr for HBRUSH and HPEN in GraphicsContext
+ https://bugs.webkit.org/show_bug.cgi?id=46881
+
+ Also add some missing SelectObject calls.
+
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::createPen):
+ (WebCore::createBrush):
+ (WebCore::GraphicsContext::drawRect):
+ (WebCore::GraphicsContext::drawLine):
+ (WebCore::GraphicsContext::drawEllipse):
+ (WebCore::GraphicsContext::strokeArc):
+ (WebCore::GraphicsContext::drawConvexPolygon):
+ (WebCore::GraphicsContext::strokeRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+
+2010-09-30 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Dan Bernstein and Darin Adler.
+
+ WebCore uses the main thread to process sleep notifications
+ https://bugs.webkit.org/show_bug.cgi?id=46935
+ <rdar://problem/8495374>
+
+ Rewrite the old WebCorePowerNotifier to use IOKit directly.
+
+ On Snow Leopard, set up power notifications to arrive on a dispatch queue,
+ so that we can handle them quickly even if the main thread is hung.
+
+ (Tiger and Leopard will still get the old behavior).
+
+ * WebCore.xcodeproj/project.pbxproj:
+ Link with IOKit.
+
+ * platform/mac/SharedTimerMac.mm:
+ (WebCore::PowerObserver::PowerObserver):
+ Initialize the IOKit machinery.
+
+ (WebCore::PowerObserver::~PowerObserver):
+ Tear down the IOKit notifications.
+
+ (WebCore::PowerObserver::didReceiveSystemPowerNotification):
+ Acknowledge the event immediately and then call the shared timer functions. On Snow Leopard, we
+ make sure to call the shared timer functions on the main thread.
+
+2010-09-30 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ [Web Timing] Make requestEnd equal to start of response
+ https://bugs.webkit.org/show_bug.cgi?id=46302
+
+ * page/Timing.cpp:
+ (WebCore::Timing::requestEnd):
+
+2010-09-30 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ fast/canvas/webgl/draw-elements-out-of-bounds.html is crashing on Snow Leopard
+ https://bugs.webkit.org/show_bug.cgi?id=46870
+
+ * platform/graphics/ANGLEWebKitBridge.cpp:
+ (WebCore::ANGLEWebKitBridge::~ANGLEWebKitBridge): Remove ShFinalize().
+
+2010-09-30 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ WebKit nests font element when applying different font styles
+ https://bugs.webkit.org/show_bug.cgi?id=45568
+
+ The bug was caused by fixRangeAndApplyInlineStyle's not including fully selected ancestors,
+ and addInlineStyleIfNeeded's always surrounding the contents by new elements as supposed to
+ adding font attributes or style attribute.
+
+ Fixed the bug by extending the node range in fixRangeAndApplyInlineStyle and finding
+ the appropriate container node to add attributes in addInlineStyleIfNeeded.
+ addInlineStyleIfNeeded now tires to add font and style attributes to the inner most font and
+ span elements respectively.
+
+ Also added an early exit check to removeStyleFromRunBeforeApplyingStyle so that WebKit does not
+ modify the contents when the entire contents already have the desired style.
+
+ Test: editing/style/inline-style-container.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle):
+ (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle):
+ (WebCore::ApplyStyleCommand::removeInlineStyleFromElement):
+ (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
+
+2010-09-30 Jarred Nicholls <jarred@sencha.com>
+
+ Reviewed by Darin Adler.
+
+ Removed unnecessary calls to ceil() on an int
+ Removing the call fixes MSVC build errors
+ https://bugs.webkit.org/show_bug.cgi?id=46931
+
+ * platform/graphics/ContextShadow.cpp:
+ (WebCore::ContextShadow::calculateLayerBoundingRect):
+
+2010-09-30 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46932
+
+ Get fast/blockflow/root-lr-basic.html results to be correct by patching a few more
+ height() calls to be logicalHeight().
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::collapseMargins):
+ (WebCore::RenderBlock::handleAfterSideOfBlock):
+
+2010-09-30 Cris Neckar <cdn@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Added check to test for removed counter node when calling findPlaceForCounter() in updateCounters().
+ Added refcounting to counternodes in countermaps.
+ https://bugs.webkit.org/show_bug.cgi?id=46387
+
+ Test: fast/css/counters/counter-traverse-table-cell.html
+
+ * rendering/CounterNode.cpp:
+ (WebCore::CounterNode::create):
+ * rendering/CounterNode.h:
+ * rendering/RenderCounter.cpp:
+ (WebCore::makeCounterNode):
+ (WebCore::destroyCounterNodeWithoutMapRemoval):
+ (WebCore::RenderCounter::destroyCounterNodes):
+ (WebCore::RenderCounter::destroyCounterNode):
+ (WebCore::updateCounters):
+
+2010-09-30 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46928
+
+ Add isLeftToRightDirection() to RenderStyle and change callers that did direction() == LTR and direction() == RTL to use this instead.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::isLeftPage):
+ (WebCore::CSSStyleSelector::applyProperty):
+ * editing/Editor.cpp:
+ (WebCore::Editor::hasBidiSelection):
+ * editing/VisiblePosition.cpp:
+ (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
+ (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawTextInternal):
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::isLeftToRightDirection):
+ (WebCore::InlineBox::caretLeftmostOffset):
+ (WebCore::InlineBox::caretRightmostOffset):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
+ (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
+ (WebCore::InlineFlowBox::paintTextDecorations):
+ * rendering/InlineIterator.h:
+ (WebCore::InlineIterator::direction):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::selectionRect):
+ (WebCore::InlineTextBox::placeEllipsisBox):
+ (WebCore::InlineTextBox::paint):
+ (WebCore::InlineTextBox::paintSelection):
+ (WebCore::InlineTextBox::paintCompositionBackground):
+ (WebCore::InlineTextBox::paintDecoration):
+ (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
+ (WebCore::InlineTextBox::paintTextMatchMarker):
+ (WebCore::InlineTextBox::computeRectForReplacementMarker):
+ (WebCore::InlineTextBox::textPos):
+ (WebCore::InlineTextBox::offsetForPosition):
+ (WebCore::InlineTextBox::positionForOffset):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::adjustPositionedBlock):
+ (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
+ (WebCore::RenderBlock::paintColumnRules):
+ (WebCore::RenderBlock::paintColumnContents):
+ (WebCore::RenderBlock::getHorizontalSelectionGapInfo):
+ (WebCore::RenderBlock::logicalLeftOffsetForLine):
+ (WebCore::RenderBlock::logicalRightOffsetForLine):
+ (WebCore::RenderBlock::rightmostPosition):
+ (WebCore::RenderBlock::leftmostPosition):
+ (WebCore::RenderBlock::columnRectAt):
+ (WebCore::RenderBlock::layoutColumns):
+ (WebCore::getBorderPaddingMargin):
+ (WebCore::RenderBlock::localCaretRect):
+ (WebCore::RenderBlock::marginStartForChild):
+ (WebCore::RenderBlock::marginEndForChild):
+ (WebCore::RenderBlock::setMarginStartForChild):
+ (WebCore::RenderBlock::setMarginEndForChild):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::getBorderPaddingMargin):
+ (WebCore::RenderBlock::constructLine):
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
+ (WebCore::RenderBlock::determineStartPosition):
+ (WebCore::RenderBlock::skipTrailingWhitespace):
+ (WebCore::RenderBlock::skipLeadingWhitespace):
+ (WebCore::RenderBlock::findNextLineBreak):
+ (WebCore::RenderBlock::checkLinesForTextOverflow):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::marginStart):
+ (WebCore::RenderBox::marginEnd):
+ (WebCore::RenderBox::setMarginStart):
+ (WebCore::RenderBox::setMarginEnd):
+ (WebCore::RenderBox::scrollWidth):
+ (WebCore::RenderBox::computeInlineDirectionMargins):
+ (WebCore::RenderBox::containingBlockWidthForPositioned):
+ (WebCore::RenderBox::computePositionedLogicalWidthUsing):
+ (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
+ (WebCore::RenderBox::localCaretRect):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::relativePositionOffsetX):
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::layoutLegend):
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::paintObject):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::FlexBoxIterator::FlexBoxIterator):
+ (WebCore::RenderFlexibleBox::layoutHorizontalBox):
+ (WebCore::RenderFlexibleBox::layoutVerticalBox):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::computeScrollDimensions):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::paintItemForeground):
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::positionListMarker):
+ (WebCore::RenderListItem::markerTextWithSuffix):
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::paint):
+ (WebCore::RenderListMarker::updateMargins):
+ (WebCore::RenderListMarker::suffix):
+ * rendering/RenderMarquee.cpp:
+ (WebCore::RenderMarquee::computePosition):
+ * rendering/RenderMeter.cpp:
+ (WebCore::RenderMeter::valuePartRect):
+ * rendering/RenderProgress.cpp:
+ (WebCore::RenderProgress::valuePartRect):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::calcBorderLeft):
+ (WebCore::RenderTable::calcBorderRight):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
+ (WebCore::RenderTableCell::borderHalfLeft):
+ (WebCore::RenderTableCell::borderHalfRight):
+ (WebCore::RenderTableCell::collectBorderStyles):
+ (WebCore::RenderTableCell::paintCollapsedBorder):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::layoutRows):
+ (WebCore::RenderTableSection::recalcOuterBorder):
+ (WebCore::RenderTableSection::paintObject):
+ (WebCore::RenderTableSection::nodeAtPoint):
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::localCaretRect):
+ (WebCore::RenderText::positionLineBox):
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::forwardEvent):
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::levelIndicatorFor):
+ (WebCore::RenderThemeMac::paintProgressBar):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::writeTextRun):
+ * rendering/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::measureCharacter):
+ (WebCore::SVGInlineTextBox::buildLayoutInformation):
+ * rendering/SVGRenderTreeAsText.cpp:
+ (WebCore::writeSVGInlineTextBox):
+ * rendering/SVGTextLayoutUtilities.cpp:
+ (WebCore::svgTextRunForInlineTextBox):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::borderStartWidth):
+ (WebCore::RenderStyle::borderEndWidth):
+ (WebCore::RenderStyle::marginStart):
+ (WebCore::RenderStyle::marginEnd):
+ (WebCore::RenderStyle::marginStartUsing):
+ (WebCore::RenderStyle::marginEndUsing):
+ (WebCore::RenderStyle::paddingStart):
+ (WebCore::RenderStyle::paddingEnd):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::isLeftToRightDirection):
+ * wml/WMLTableElement.cpp:
+ (WebCore::WMLTableElement::alignCells):
+
+2010-09-30 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46923
+
+ Make determineLogicalLeftPositionForChild block-flow-aware. Rewrite the function so that there aren't
+ completely separate LTR/RTL cases.
+
+ Added fast/blockflow/inline-direction-positioning.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
+ (WebCore::RenderBlock::setLogicalLeftForChild):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalWidthForChild):
+ (WebCore::RenderBlock::logicalRightOffsetForContent):
+ (WebCore::RenderBlock::logicalLeftOffsetForContent):
+
+2010-09-29 Adam Roben <aroben@apple.com>
+
+ Fix color media queries on Windows
+
+ Fixes <http://webkit.org/b/42973> <rdar://problem/8234072> (color:8)
+ media query does not evaluate to true for 32bpp displays on Windows
+
+ Test: fast/media/color-does-not-include-alpha.html
+
+ Reviewed by Darin Adler.
+
+ * platform/win/PlatformScreenWin.cpp:
+ (WebCore::screenDepthPerComponent): Use screenDepth instead of trying
+ to interpret DEVMODE directly, since screenDepth knows how to correct
+ for video drivers that return 32 instead of 24.
+
+2010-09-29 Adam Roben <aroben@apple.com>
+
+ Make sure screen.colorDepth/screen.pixelDepth don't include the bits
+ used for alpha
+
+ Fixes <http://webkit.org/b/42972> <rdar://problem/8234071>
+ screen.colorDepth and screen.pixelDepth return 32 on Windows, but
+ should return 24 (according to CSSOM View and Firefox)
+
+ Reviewed by Darin Adler.
+
+ * platform/win/PlatformScreenWin.cpp:
+ (WebCore::screenDepth): If Windows says there are 32 bits per pixel,
+ return 24 instead, as 32 includes the alpha component but this
+ function is supposed to ignore the alpha component.
+
+2010-09-30 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [chromium] Refactor ChromiumDataObject to use getters/setters.
+ https://bugs.webkit.org/show_bug.cgi?id=46559
+
+ This is an intermediate step to converting ChromiumDataObject to use
+ callbacks to the browser to retrieve data.
+
+ This is covered by existing tests.
+
+ * editing/chromium/EditorChromium.cpp:
+ (WebCore::Editor::newGeneralClipboard):
+ * page/chromium/EventHandlerChromium.cpp:
+ (WebCore::EventHandler::createDraggingClipboard):
+ * platform/chromium/ChromiumDataObject.cpp:
+ (WebCore::ChromiumDataObject::clearData):
+ (WebCore::ChromiumDataObject::clearAll):
+ (WebCore::ChromiumDataObject::clearAllExceptFiles):
+ (WebCore::ChromiumDataObject::hasData):
+ (WebCore::ChromiumDataObject::types):
+ (WebCore::ChromiumDataObject::getData):
+ (WebCore::ChromiumDataObject::setData):
+ (WebCore::ChromiumDataObject::ChromiumDataObject):
+ * platform/chromium/ChromiumDataObject.h:
+ (WebCore::ChromiumDataObject::create):
+ (WebCore::ChromiumDataObject::urlTitle):
+ (WebCore::ChromiumDataObject::setUrlTitle):
+ (WebCore::ChromiumDataObject::htmlBaseUrl):
+ (WebCore::ChromiumDataObject::setHtmlBaseUrl):
+ (WebCore::ChromiumDataObject::containsFilenames):
+ (WebCore::ChromiumDataObject::filenames):
+ (WebCore::ChromiumDataObject::setFilenames):
+ (WebCore::ChromiumDataObject::fileExtension):
+ (WebCore::ChromiumDataObject::setFileExtension):
+ (WebCore::ChromiumDataObject::fileContentFilename):
+ (WebCore::ChromiumDataObject::setFileContentFilename):
+ (WebCore::ChromiumDataObject::fileContent):
+ (WebCore::ChromiumDataObject::setFileContent):
+ * platform/chromium/ClipboardChromium.cpp:
+ (WebCore::normalizeType):
+ (WebCore::ClipboardChromium::clearData):
+ (WebCore::ClipboardChromium::clearAllData):
+ (WebCore::ClipboardChromium::getData):
+ (WebCore::ClipboardChromium::setData):
+ (WebCore::ClipboardChromium::types):
+ (WebCore::ClipboardChromium::files):
+ (WebCore::writeImageToDataObject):
+ (WebCore::ClipboardChromium::declareAndWriteDragImage):
+ (WebCore::ClipboardChromium::writeURL):
+ (WebCore::ClipboardChromium::writeRange):
+ (WebCore::ClipboardChromium::writePlainText):
+ * platform/chromium/ClipboardChromiumWin.cpp:
+ (WebCore::ClipboardChromium::validateFileName):
+ * platform/chromium/ClipboardMimeTypes.cpp:
+ * platform/chromium/ClipboardMimeTypes.h:
+ * platform/chromium/DragDataChromium.cpp:
+ (WebCore::containsHTML):
+ (WebCore::DragData::containsURL):
+ (WebCore::DragData::asURL):
+ (WebCore::DragData::containsFiles):
+ (WebCore::DragData::asFilenames):
+ (WebCore::DragData::containsPlainText):
+ (WebCore::DragData::asPlainText):
+ (WebCore::DragData::canSmartReplace):
+ (WebCore::DragData::asFragment):
+ * platform/chromium/ReadableDataObject.cpp:
+ (WebCore::ReadableDataObject::getURL):
+ (WebCore::ReadableDataObject::getHTML):
+ * platform/chromium/WritableDataObject.cpp:
+ (WebCore::WritableDataObject::clearData):
+ (WebCore::WritableDataObject::setData):
+ (WebCore::WritableDataObject::setURL):
+ (WebCore::WritableDataObject::setHTML):
+
+2010-09-30 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Make 2D accelerated canvas rendering build on Mac
+ https://bugs.webkit.org/show_bug.cgi?id=46007
+
+ Add accelerated 2D rendering files to Mac build, fix build errors,
+ add ifdefs to compile only when the ACCELERATED_2D_CANVAS flag is
+ enabled, and add a skeleton of the mac specific file so it builds.
+
+ DrawingBufferMac.mm, the Mac specific file does nothing right now
+ other than initialize and create a layer. The rest will be added
+ when I do the actual implementation.
+
+ The most significant change was to SharedGraphicsContext3D, which
+ had a static local OwnPtr in one of the methods. This was causing
+ the exit time destructor warning. Getting rid of the OwnPtr fixed
+ the problem. Since the pointer that was being wrapped was to a
+ static object that would never get destroyed, the OwnPtr was not
+ necessary.
+
+ I also added the ACCELERATED_2D_CANVAS flag to build-webkit
+ and FeatureDefines.xcconfig for WebCore, WebKit and JavaScriptCore.
+ But right now the flag is off by default.
+
+ * Configurations/FeatureDefines.xcconfig:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/gpu/DrawingBuffer.cpp:
+ * platform/graphics/gpu/DrawingBuffer.h:
+ (WebCore::DrawingBuffer::WillPublishCallback::~WillPublishCallback):
+ * platform/graphics/gpu/LoopBlinnClassifier.cpp:
+ * platform/graphics/gpu/LoopBlinnMathUtils.cpp:
+ * platform/graphics/gpu/LoopBlinnTextureCoords.cpp:
+ * platform/graphics/gpu/Shader.cpp:
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::allContexts):
+ * platform/graphics/gpu/SolidFillShader.cpp:
+ * platform/graphics/gpu/TexShader.cpp:
+ * platform/graphics/gpu/Texture.cpp:
+ * platform/graphics/gpu/Texture.h:
+ * platform/graphics/gpu/TilingData.cpp:
+ * platform/graphics/gpu/mac: Added.
+ * platform/graphics/gpu/mac/DrawingBufferMac.mm: Added.
+ (WebCore::DrawingBuffer::DrawingBuffer):
+ (WebCore::DrawingBuffer::~DrawingBuffer):
+ (WebCore::DrawingBuffer::reset):
+ (WebCore::DrawingBuffer::platformLayer):
+
+2010-09-30 Renata Hodovan <reni@inf.u-szeged.hu>
+
+ Reviewed by Dirk Schulze.
+
+ SVGFECompositeElement doesn't support dynamic invalidation, when attributes change.
+ https://bugs.webkit.org/show_bug.cgi?id=46902
+
+ Tests: svg/dynamic-updates/SVGFECompositeElement-dom-in-attr.html
+ svg/dynamic-updates/SVGFECompositeElement-dom-in2-attr.html
+ svg/dynamic-updates/SVGFECompositeElement-dom-k1-attr.html
+ svg/dynamic-updates/SVGFECompositeElement-dom-k2-attr.html
+ svg/dynamic-updates/SVGFECompositeElement-dom-k3-attr.html
+ svg/dynamic-updates/SVGFECompositeElement-dom-k4-attr.html
+ svg/dynamic-updates/SVGFECompositeElement-dom-operator-attr.html
+ svg/dynamic-updates/SVGFECompositeElement-svgdom-in-prop.html
+ svg/dynamic-updates/SVGFECompositeElement-svgdom-in2-prop.html
+ svg/dynamic-updates/SVGFECompositeElement-svgdom-k1-prop.html
+ svg/dynamic-updates/SVGFECompositeElement-svgdom-k2-prop.html
+ svg/dynamic-updates/SVGFECompositeElement-svgdom-k3-prop.html
+ svg/dynamic-updates/SVGFECompositeElement-svgdom-k4-prop.html
+ svg/dynamic-updates/SVGFECompositeElement-svgdom-operator-prop.html
+
+ * svg/SVGFECompositeElement.cpp:
+ (WebCore::SVGFECompositeElement::svgAttributeChanged):
+ * svg/SVGFECompositeElement.h:
+
+2010-09-29 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Steve Block.
+
+ Finished IDBTransaction for IndexedDB
+ https://bugs.webkit.org/show_bug.cgi?id=46823
+
+ Switch the rest of IndexedDB to use transactions.
+ Implement most of setVersion.
+ Add IDBTransactions to IDBAny, IDBCursor, IDBRequest, etc.
+ Switch to using the standard cross thread task stuff.
+ Make everything threadsafe so it works with cross thread copy
+ (will be useful in the future).
+ Fix some subtle bugs in transactions.
+
+ Various bits of clean up (when I couldn't resist).
+
+ * bindings/js/JSIDBAnyCustom.cpp:
+ (WebCore::toJS):
+ * bindings/v8/IDBBindingUtilities.cpp:
+ (WebCore::LocalContext::LocalContext):
+ (WebCore::LocalContext::~LocalContext):
+ (WebCore::createIDBKeyFromSerializedValueAndKeyPath):
+ * bindings/v8/SerializedScriptValue.cpp:
+ (WebCore::SerializedScriptValue::release):
+ (WebCore::SerializedScriptValue::SerializedScriptValue):
+ * bindings/v8/SerializedScriptValue.h:
+ * bindings/v8/custom/V8IDBAnyCustom.cpp:
+ (WebCore::toV8):
+ * platform/CrossThreadCopier.cpp:
+ * storage/IDBAny.cpp:
+ (WebCore::IDBAny::idbFactory):
+ (WebCore::IDBAny::idbTransaction):
+ (WebCore::IDBAny::set):
+ * storage/IDBAny.h:
+ * storage/IDBCallbacks.h:
+ * storage/IDBCursor.cpp:
+ (WebCore::IDBCursor::IDBCursor):
+ (WebCore::IDBCursor::update):
+ (WebCore::IDBCursor::continueFunction):
+ (WebCore::IDBCursor::remove):
+ * storage/IDBCursor.h:
+ (WebCore::IDBCursor::create):
+ * storage/IDBCursorBackendImpl.cpp:
+ (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
+ (WebCore::IDBCursorBackendImpl::update):
+ (WebCore::IDBCursorBackendImpl::updateInternal):
+ (WebCore::IDBCursorBackendImpl::continueFunction):
+ (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
+ (WebCore::IDBCursorBackendImpl::remove):
+ (WebCore::IDBCursorBackendImpl::removeInternal):
+ * storage/IDBCursorBackendImpl.h:
+ (WebCore::IDBCursorBackendImpl::create):
+ * storage/IDBDatabase.cpp:
+ (WebCore::IDBDatabase::setSetVersionTransaction):
+ (WebCore::IDBDatabase::createObjectStore):
+ (WebCore::IDBDatabase::removeObjectStore):
+ (WebCore::IDBDatabase::setVersion):
+ (WebCore::IDBDatabase::close):
+ * storage/IDBDatabase.h:
+ * storage/IDBDatabase.idl:
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::createObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
+ (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::removeObjectStoreInternal):
+ (WebCore::IDBDatabaseBackendImpl::setVersion):
+ (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
+ (WebCore::IDBDatabaseBackendImpl::close):
+ * storage/IDBDatabaseBackendImpl.h:
+ * storage/IDBDatabaseBackendInterface.h:
+ * storage/IDBFactory.cpp:
+ (WebCore::IDBFactory::open):
+ * storage/IDBIndex.cpp:
+ (WebCore::IDBIndex::IDBIndex):
+ (WebCore::IDBIndex::openObjectCursor):
+ (WebCore::IDBIndex::openCursor):
+ (WebCore::IDBIndex::getObject):
+ (WebCore::IDBIndex::get):
+ * storage/IDBIndex.h:
+ (WebCore::IDBIndex::create):
+ * storage/IDBIndexBackendImpl.cpp:
+ (WebCore::IDBIndexBackendImpl::openCursorInternal):
+ (WebCore::IDBIndexBackendImpl::openObjectCursor):
+ (WebCore::IDBIndexBackendImpl::openCursor):
+ (WebCore::IDBIndexBackendImpl::getInternal):
+ (WebCore::IDBIndexBackendImpl::getObject):
+ (WebCore::IDBIndexBackendImpl::get):
+ * storage/IDBIndexBackendImpl.h:
+ * storage/IDBIndexBackendInterface.h:
+ * storage/IDBKey.cpp:
+ (WebCore::IDBKey::IDBKey):
+ * storage/IDBKey.h:
+ * storage/IDBKeyRange.h:
+ * storage/IDBObjectStore.cpp:
+ (WebCore::IDBObjectStore::IDBObjectStore):
+ (WebCore::IDBObjectStore::add):
+ (WebCore::IDBObjectStore::put):
+ (WebCore::IDBObjectStore::remove):
+ (WebCore::IDBObjectStore::createIndex):
+ (WebCore::IDBObjectStore::index):
+ (WebCore::IDBObjectStore::removeIndex):
+ (WebCore::IDBObjectStore::openCursor):
+ * storage/IDBObjectStore.idl:
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::get):
+ (WebCore::IDBObjectStoreBackendImpl::getInternal):
+ (WebCore::IDBObjectStoreBackendImpl::put):
+ (WebCore::IDBObjectStoreBackendImpl::putInternal):
+ (WebCore::IDBObjectStoreBackendImpl::remove):
+ (WebCore::IDBObjectStoreBackendImpl::removeInternal):
+ (WebCore::IDBObjectStoreBackendImpl::createIndex):
+ (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
+ (WebCore::IDBObjectStoreBackendImpl::removeIndex):
+ (WebCore::IDBObjectStoreBackendImpl::removeIndexInternal):
+ (WebCore::IDBObjectStoreBackendImpl::openCursor):
+ (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
+ * storage/IDBObjectStoreBackendImpl.h:
+ * storage/IDBObjectStoreBackendInterface.h:
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::IDBRequest):
+ (WebCore::IDBRequest::resetReadyState):
+ (WebCore::IDBRequest::onSuccess):
+ (WebCore::IDBRequest::timerFired):
+ * storage/IDBRequest.h:
+ (WebCore::IDBRequest::create):
+ * storage/IDBTransactionBackendImpl.cpp:
+ (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
+ (WebCore::IDBTransactionBackendImpl::scheduleTask):
+ (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents):
+ (WebCore::IDBTransactionBackendImpl::run):
+ (WebCore::IDBTransactionBackendImpl::start):
+ (WebCore::IDBTransactionBackendImpl::commit):
+ (WebCore::IDBTransactionBackendImpl::timerFired):
+ * storage/IDBTransactionBackendImpl.h:
+
+2010-09-30 Csaba Osztrogonác <ossy@webkit.org>
+
+ Reviewed by Martin Robinson.
+
+ [Gtk] build still broken since r68521
+ https://bugs.webkit.org/show_bug.cgi?id=46795
+
+ makevalues.pl and makeprop.pl generate 3 files in one run.
+ Double or triple target is incorrect, because on a multicore
+ machine make processes targets in parallel.
+
+ Setting a->b->c dependencies for 3 generated files guarantees
+ that make doesn't execute the recipe of the rule more than one.
+
+ * GNUmakefile.am: Dependencies and missing headers added.
+
+2010-09-30 Andrey Kosyakov <caseq@chromium.org>
+
+ Unreviewed build fix (marked ResourceRawHeaders.h as private)
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-09-29 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: display headers actually used by network stack in Resources tab
+ https://bugs.webkit.org/show_bug.cgi?id=46092
+
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::willSendRequest): enable raw headers reporting if front-end is visible.
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::updateResponse):
+ * platform/network/ResourceRawHeaders.h: Added.
+ * platform/network/ResourceRequestBase.h: Added flag to enable raw headers reporting.
+ (WebCore::ResourceRequestBase::reportRawHeaders):
+ (WebCore::ResourceRequestBase::setReportRawHeaders):
+ (WebCore::ResourceRequestBase::ResourceRequestBase):
+ * platform/network/ResourceResponseBase.cpp: Added support for raw headers.
+ (WebCore::ResourceResponseBase::resourceRawHeaders):
+ (WebCore::ResourceResponseBase::setResourceRawHeaders):
+ * platform/network/ResourceResponseBase.h:
+
+2010-09-29 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: display headers actually used by network stack in Resources tab
+ https://bugs.webkit.org/show_bug.cgi?id=46092
+
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::willSendRequest): enable raw headers reporting if front-end is visible.
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::updateResponse):
+ * platform/network/ResourceRawHeaders.h: Added.
+ * platform/network/ResourceRequestBase.h: Added flag to enable raw headers reporting.
+ (WebCore::ResourceRequestBase::reportRawHeaders):
+ (WebCore::ResourceRequestBase::setReportRawHeaders):
+ (WebCore::ResourceRequestBase::ResourceRequestBase):
+ * platform/network/ResourceResponseBase.cpp: Added support for raw headers.
+ (WebCore::ResourceResponseBase::resourceRawHeaders):
+ (WebCore::ResourceResponseBase::setResourceRawHeaders):
+ * platform/network/ResourceResponseBase.h:
+
+2010-09-30 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Tor Arne Vestbø.
+
+ [Qt] V8 port: Unbreak build
+
+ Add missing <wtf/text/CString.h> include.
+
+ * loader/PingLoader.cpp:
+
+2010-09-29 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: assign the resource loading finish time which was obtained from the network stack
+ as the end time for the corresponding event in Timeline.
+ See related change for Resources panel https://bugs.webkit.org/show_bug.cgi?id=45664
+
+ https://bugs.webkit.org/show_bug.cgi?id=46789
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::didFinishLoading):
+ (WebCore::InspectorController::didFailLoading):
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
+ * inspector/InspectorTimelineAgent.h:
+
+2010-09-29 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Timothy Hatcher.
+
+ Web Inspector: implement sorting by timeline in network panel + filtering.
+ https://bugs.webkit.org/show_bug.cgi?id=45657
+
+ A number of drive-by fixes, sorting by timeline added,
+ 0-based timeline for duration added, filters added,
+ more love for detailed view + nice headers.
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/DataGrid.js:
+ (WebInspector.DataGrid):
+ (WebInspector.DataGrid.prototype.markColumnAsSortedBy):
+ (WebInspector.DataGrid.prototype.headerTableHeader):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel):
+ (WebInspector.NetworkPanel.prototype.get statusBarItems):
+ (WebInspector.NetworkPanel.prototype._createTable):
+ (WebInspector.NetworkPanel.prototype._makeHeaderInnerHTML):
+ (WebInspector.NetworkPanel.prototype._createSortingFunctions):
+ (WebInspector.NetworkPanel.prototype._sortByTimeline):
+ (WebInspector.NetworkPanel.prototype._sortItems):
+ (WebInspector.NetworkPanel.prototype._createFilterPanel):
+ (WebInspector.NetworkPanel.prototype._showCategory):
+ (WebInspector.NetworkPanel.prototype._hideCategory):
+ (WebInspector.NetworkPanel.prototype._updateFilter):
+ (WebInspector.NetworkPanel.prototype._filter):
+ (WebInspector.NetworkPanel.prototype._updateDividersIfNeeded):
+ (WebInspector.NetworkPanel.prototype.reset):
+ (WebInspector.NetworkPanel.prototype._setLargerResources):
+ (WebInspector.NetworkDataGridNode.prototype.createCells):
+ (WebInspector.NetworkDataGridNode.prototype._createDivInTD):
+ (WebInspector.NetworkDataGridNode.prototype._refreshURLCell):
+ (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell):
+ (WebInspector.NetworkDataGridNode.prototype._appendSubtitle):
+ (WebInspector.NetworkDataGridNode.SizeComparator):
+ (WebInspector.NetworkDataGridNode.ResourcePropertyComparator):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel):
+ (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
+ * inspector/front-end/StoragePanel.js:
+ (WebInspector.StoragePanel):
+ * inspector/front-end/TimelineGrid.js:
+ (WebInspector.TimelineGrid.prototype.updateDividers):
+ * inspector/front-end/TimelineOverviewPane.js:
+ (WebInspector.TimelineOverviewPane):
+ (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
+ * inspector/front-end/inspector.css:
+ (.data-grid th.sort-ascending > div::after):
+ (.data-grid th.sort-descending > div::after):
+ (.status-bar-items):
+ * inspector/front-end/networkPanel.css:
+ (.network.panel .data-grid td):
+ (.network.panel .data-grid th):
+ (.network.panel .data-grid.small th):
+ (.network.panel .data-grid .data-container):
+ (.network.panel .data-grid.small .data-container):
+ (.network.panel .data-grid select):
+ (.network.panel .data-grid td.time-column):
+ (.network-cell-subtitle):
+ (.network-header-subtitle):
+ (.network-event-divider):
+ (.network.panel .network-timeline-grid.small .network-event-divider):
+ (.network.panel .resources-dividers-label-bar):
+ (.network.panel .network-timeline-grid.small .resources-dividers-label-bar):
+ (.network.panel .resources-divider-label):
+ (.network.panel .resources-dividers-label-bar .resources-divider):
+ (.network.panel .network-timeline-grid.small .resources-dividers-label-bar .resources-divider):
+ (.network.panel .resources-divider.first .resources-divider-label):
+ (.network.panel .resources-dividers-label-bar .resources-divider.first):
+ (#network-filter):
+ (.data-grid table.data tr.revealed.network-category-websockets, .data-grid table.data tr.revealed.network-category-other):
+ (.data-grid.filter-all table.data tr.revealed.network-category-other, .data-grid.filter-other table.data tr.revealed.network-category-other):
+
+2010-09-30 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] Ensure we always report a valid size for the video
+
+ Some QtMultimedia-backends require a paint before even giving us
+ a size, so we start out by using the default video size, and then
+ update it once QtMultimedia starts feeding us valid sizes.
+
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
+ (WebCore::MediaPlayerPrivateQt::nativeSizeChanged):
+ (WebCore::MediaPlayerPrivateQt::setSize):
+ (WebCore::MediaPlayerPrivateQt::naturalSize):
+ * platform/graphics/qt/MediaPlayerPrivateQt.h:
+
+2010-09-30 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Andreas Kling.
+
+ RenderSVGTextPath lacks isSVGTextPath() method
+ https://bugs.webkit.org/show_bug.cgi?id=46888
+
+ Make RenderSVGTextPath objects easily detectable, using a isSVGTextPath() method, like all other SVG renderers have.
+
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::isSVGTextPath): Return false.
+ * rendering/RenderSVGTextPath.h: Changed indentation of whole file.
+ (WebCore::RenderSVGTextPath::isSVGTextPath): Return true.
+ (WebCore::RenderSVGTextPath::renderName):
+ (WebCore::toRenderSVGTextPath): Add helper casting methods.
+
+2010-09-30 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ AffineTransform should expose methods calculating the x/y scale factors
+ https://bugs.webkit.org/show_bug.cgi?id=46887
+
+ Expose methods calculating the x/y scale factors for an AffineTransform.
+
+ * platform/graphics/transforms/AffineTransform.cpp:
+ (WebCore::affineTransformDecompose): Move xScale / yScale calculations in their own functions.
+ (WebCore::AffineTransform::xScale):
+ (WebCore::AffineTransform::yScale):
+ * platform/graphics/transforms/AffineTransform.h:
+
+2010-09-30 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] Ensure that the media player backend does not leave any resources around
+
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ (WebCore::MediaPlayerPrivateQt::~MediaPlayerPrivateQt):
+
+2010-09-30 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ Minor cleanup of MediaPlayerPrivateQt
+
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
+ (WebCore::MediaPlayerPrivateQt::currentTime):
+ (WebCore::MediaPlayerPrivateQt::positionChanged):
+ (WebCore::MediaPlayerPrivateQt::paint):
+
+2010-09-30 Jochen Eisinger <jochen@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ Mark unused parameters as such.
+ https://bugs.webkit.org/show_bug.cgi?id=46880
+
+ * inspector/InspectorDOMAgent.cpp:
+ * page/Geolocation.cpp:
+ (WebCore::Geolocation::clearWatch):
+
+2010-09-29 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: extract Inspector Instrumentation API as a class.
+ https://bugs.webkit.org/show_bug.cgi?id=46614
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::send):
+ * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
+ (WebCore::V8XMLHttpRequest::sendCallback):
+ * dom/CharacterData.cpp:
+ (WebCore::CharacterData::dispatchModifiedEvent):
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::insertBefore):
+ (WebCore::ContainerNode::parserInsertBefore):
+ (WebCore::ContainerNode::replaceChild):
+ (WebCore::ContainerNode::appendChild):
+ (WebCore::ContainerNode::parserAddChild):
+ (WebCore::notifyChildInserted):
+ (WebCore::dispatchChildRemovalEvents):
+ * dom/Element.cpp:
+ (WebCore::Element::setAttribute):
+ (WebCore::Element::removeAttribute):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::~InspectorController):
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::disconnectFrontend):
+ (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
+ * inspector/InspectorController.h:
+ * inspector/InspectorInstrumentation.cpp: Added.
+ (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
+ (WebCore::InspectorInstrumentation::didModifyDOMAttrImpl):
+ (WebCore::InspectorInstrumentation::characterDataModifiedImpl):
+ (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
+ * inspector/InspectorInstrumentation.h: Added.
+ (WebCore::InspectorInstrumentation::frontendCreated):
+ (WebCore::InspectorInstrumentation::frontendDeleted):
+ (WebCore::InspectorInstrumentation::hasFrontends):
+ (WebCore::InspectorInstrumentation::willInsertDOMNode):
+ (WebCore::InspectorInstrumentation::didInsertDOMNode):
+ (WebCore::InspectorInstrumentation::willRemoveDOMNode):
+ (WebCore::InspectorInstrumentation::willModifyDOMAttr):
+ (WebCore::InspectorInstrumentation::didModifyDOMAttr):
+ (WebCore::InspectorInstrumentation::characterDataModified):
+ (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest):
+ (WebCore::InspectorInstrumentation::inspectorControllerForScriptExecutionContext):
+ (WebCore::InspectorInstrumentation::inspectorControllerForDocument):
+ (WebCore::InspectorInstrumentation::inspectorControllerForPage):
+ * workers/SharedWorker.cpp:
+
+2010-09-30 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Darin Adler.
+
+ Build fix: Add ENABLE(INSPECTOR) guard
+ https://bugs.webkit.org/show_bug.cgi?id=46852
+
+ Page does not have inspectorController() when ENABLE(INSPECTOR) is 0.
+
+ * inspector/InspectorController.h:
+ (WebCore::InspectorController::inspectorControllerForDocument):
+
+2010-09-30 Michael Nordman <michaeln@google.com>
+
+ Reviewed by David Levin.
+
+ Make it possible to copy platform specific data members of ResourceRequest and ResourceResponse
+ across threads and to compare platform specific data members of ResourceRequest.
+ - Added two instance methods to the platform specific subclasses: doPlatformAdopt and doPlatformCopyData.
+ - Also added a "shadowable" static method for platformCompare to ResourceRequestBase, a similar method
+ is already present on ResourceResponseBase.
+ - Converted the cross thread structs defined in ResourceRequest/ResponseBase.h to base
+ classes and extended those base classes in the platform specific headers to provide a place
+ to hold additional fields.
+ - Used this mechanism to have the chromium port's data members make the hop.
+ https://bugs.webkit.org/show_bug.cgi?id=46430
+
+ No new tests. Just plumbing.
+
+ * WebCore.exp.in: removed the symbol for the now inlined == operator
+ * WebCore.gypi: added chromium/ResourceResponse.cpp
+ * platform/network/ResourceRequestBase.cpp:
+ (WebCore::ResourceRequestBase::adopt):
+ (WebCore::ResourceRequestBase::copyData):
+ (WebCore::ResourceRequestBase::compare):
+ * platform/network/ResourceRequestBase.h:
+ (WebCore::ResourceRequestBase::platformCompare):
+ (WebCore::operator==):
+ (WebCore::operator!=):
+ * platform/network/ResourceResponseBase.cpp:
+ (WebCore::ResourceResponseBase::asResourceResponse):
+ (WebCore::ResourceResponseBase::adopt):
+ (WebCore::ResourceResponseBase::copyData):
+ * platform/network/ResourceResponseBase.h:
+ * platform/network/android/ResourceRequest.h:
+ (WebCore::ResourceRequest::doPlatformCopyData):
+ (WebCore::ResourceRequest::doPlatformAdopt):
+ * platform/network/android/ResourceResponse.h:
+ (WebCore::ResourceResponse::doPlatformCopyData):
+ (WebCore::ResourceResponse::doPlatformAdopt):
+ * platform/network/cf/ResourceRequest.h:
+ (WebCore::ResourceRequest::doPlatformCopyData):
+ (WebCore::ResourceRequest::doPlatformAdopt):
+ * platform/network/cf/ResourceResponse.h:
+ (WebCore::ResourceResponse::doPlatformCopyData):
+ (WebCore::ResourceResponse::doPlatformAdopt):
+ * platform/network/chromium/ResourceRequest.cpp:
+ (WebCore::ResourceRequest::doPlatformCopyData):
+ (WebCore::ResourceRequest::doPlatformAdopt):
+ * platform/network/chromium/ResourceRequest.h:
+ * platform/network/chromium/ResourceResponse.cpp: Added.
+ (WebCore::ResourceResponse::doPlatformCopyData):
+ (WebCore::ResourceResponse::doPlatformAdopt):
+ * platform/network/chromium/ResourceResponse.h:
+ * platform/network/curl/ResourceRequest.h:
+ (WebCore::ResourceRequest::doPlatformCopyData):
+ (WebCore::ResourceRequest::doPlatformAdopt):
+ * platform/network/curl/ResourceResponse.h:
+ (WebCore::ResourceResponse::doPlatformCopyData):
+ (WebCore::ResourceResponse::doPlatformAdopt):
+ * platform/network/mac/ResourceRequest.h:
+ (WebCore::ResourceRequest::doPlatformCopyData):
+ (WebCore::ResourceRequest::doPlatformAdopt):
+ * platform/network/mac/ResourceResponse.h:
+ (WebCore::ResourceResponse::doPlatformCopyData):
+ (WebCore::ResourceResponse::doPlatformAdopt):
+ * platform/network/qt/ResourceRequest.h:
+ (WebCore::ResourceRequest::doPlatformCopyData):
+ (WebCore::ResourceRequest::doPlatformAdopt):
+ * platform/network/qt/ResourceResponse.h:
+ (WebCore::ResourceResponse::doPlatformCopyData):
+ (WebCore::ResourceResponse::doPlatformAdopt):
+ * platform/network/soup/ResourceRequest.h:
+ (WebCore::ResourceRequest::doPlatformCopyData):
+ (WebCore::ResourceRequest::doPlatformAdopt):
+ * platform/network/soup/ResourceResponse.h:
+ (WebCore::ResourceResponse::doUpdateResourceResponse):
+ (WebCore::ResourceResponse::doPlatformCopyData):
+ (WebCore::ResourceResponse::doPlatformAdopt):
+
+2010-09-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Put default initialize() and uninitialize() methods in AudioNode
+ https://bugs.webkit.org/show_bug.cgi?id=46767
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioNode.cpp:
+ (WebCore::AudioNode::initialize):
+ (WebCore::AudioNode::uninitialize):
+ * webaudio/AudioNode.h:
+
+2010-09-29 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Refactor HTMLInputElement: Make DeprecatedInputType private.
+ https://bugs.webkit.org/show_bug.cgi?id=46791
+
+ No new tests because this doesn't change any behavior.
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::createTypeMap):
+ * html/HTMLInputElement.h:
+ Move DeprecatedInputType, deprecatedInputType() and
+ parseToDateComponents() to the private section, make
+ createTypeMap() a member function of HTMLInputElement.
+ (WebCore::HTMLInputElement::deprecatedInputType):
+
+2010-09-29 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ REGRESSION: page reload on back button after history.pushState with appearing/disappearing iframes
+ https://bugs.webkit.org/show_bug.cgi?id=46324
+
+ Revert same document check to the way it was before r66238 for history
+ entries created by pushState or fragment changes. Logic fror determining
+ if same document navigation should be used is moved to HistoryItem.
+
+ Tests: fast/history/same-document-iframes-changing-fragment.html
+ fast/history/same-document-iframes-changing-pushstate.html
+
+ * history/HistoryItem.cpp:
+ (WebCore::HistoryItem::shouldDoSameDocumentNavigationTo):
+ (WebCore::HistoryItem::hasSameDocumentTree):
+ (WebCore::HistoryItem::hasSameFrames):
+ * history/HistoryItem.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadItem):
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadItem):
+
+2010-09-29 MORITA Hajime <morrita@google.com>
+
+ Unreviewed build fix.
+
+ WebCore::ESpeak causes missing symbol with no ENABLE_SVG
+ https://bugs.webkit.org/show_bug.cgi?id=46865
+
+ Moves ESpeak related function definitions outside ENABLE_SVG block.
+
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator ESpeak):
+ (WebCore::CSSPrimitiveValue::operator EVectorEffect):
+
+2010-09-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioChannelSplitter files
+ https://bugs.webkit.org/show_bug.cgi?id=46290
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioChannelSplitter.cpp: Added.
+ (WebCore::AudioChannelSplitter::AudioChannelSplitter):
+ (WebCore::AudioChannelSplitter::process):
+ (WebCore::AudioChannelSplitter::reset):
+ * webaudio/AudioChannelSplitter.h: Added.
+ (WebCore::AudioChannelSplitter::create):
+ * webaudio/AudioChannelSplitter.idl: Added.
+
+2010-09-29 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by David Levin.
+
+ Fix DirectoryReader's behavior to trigger only one EntriesCallback per readEntries
+ https://bugs.webkit.org/show_bug.cgi?id=46563
+
+ Test: fast/filesystem/read-directory.html
+
+ * fileapi/DOMFileSystem.cpp:
+ (WebCore::DOMFileSystem::readDirectory): Changed to take DirectoryReader
+ as a parameter.
+ * fileapi/DOMFileSystem.h:
+ (WebCore::DOMFileSystem::scheduleCallback): Added.
+ * fileapi/DirectoryReader.cpp:
+ (WebCore::DirectoryReader::DirectoryReader): Added initializer for
+ m_hasMore flag.
+ (WebCore::DirectoryReader::readEntries): Changed to schedule
+ EntriesCallback with an empty array if m_hasMore flag is set false.
+ * fileapi/DirectoryReader.h:
+ (WebCore::DirectoryReader::filesystem): Added.
+ (WebCore::DirectoryReader::setHasMore): Added.
+ * fileapi/FileSystemCallbacks.cpp:
+ (WebCore::EntriesCallbacks::create):
+ (WebCore::EntriesCallbacks::EntriesCallbacks): Changed to take
+ DirectoryReader as a parameter.
+ (WebCore::EntriesCallbacks::didReadDirectoryEntry):
+ (WebCore::EntriesCallbacks::didReadDirectoryEntries): Changed 1) not to
+ trigger the second callback when hasMore is false, and 2) to update
+ the DirectoryReader's m_hasMore flag.
+ * fileapi/FileSystemCallbacks.h:
+
+2010-09-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioGainNode files
+ https://bugs.webkit.org/show_bug.cgi?id=46286
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioGainNode.cpp: Added.
+ (WebCore::AudioGainNode::AudioGainNode):
+ (WebCore::AudioGainNode::process):
+ (WebCore::AudioGainNode::reset):
+ (WebCore::AudioGainNode::checkNumberOfChannelsForInput):
+ * webaudio/AudioGainNode.h: Added.
+ (WebCore::AudioGainNode::create):
+ (WebCore::AudioGainNode::gain):
+ * webaudio/AudioGainNode.idl: Added.
+
+2010-09-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioChannelMerger files
+ https://bugs.webkit.org/show_bug.cgi?id=46291
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioChannelMerger.cpp: Added.
+ (WebCore::AudioChannelMerger::AudioChannelMerger):
+ (WebCore::AudioChannelMerger::process):
+ (WebCore::AudioChannelMerger::reset):
+ * webaudio/AudioChannelMerger.h: Added.
+ (WebCore::AudioChannelMerger::create):
+ * webaudio/AudioChannelMerger.idl: Added.
+
+2010-09-29 Chris Fleizach <cfleizach@apple.com>
+
+ No review. Missed file for patch.
+
+ AX: implement CSS3 Speech "speak"
+ https://bugs.webkit.org/show_bug.cgi?id=46827
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+
+2010-09-29 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Crash at lineBreakExistsAtPosition + 125
+ <rdar://problem/7028809>
+ https://bugs.webkit.org/show_bug.cgi?id=46770
+
+ lineBreakExistsAtPosition is called from InsertTextCommand::input,
+ where we compute the downstream position of the endingSelection().
+ Downstream can return the original position, that comes from a VisibleSelection
+ but there is no guarantee that its renderer is still there. Everywhere we dereference
+ a renderer we check if it's null.
+
+ There is no regression test.
+
+ * editing/htmlediting.cpp:
+ (WebCore::lineBreakExistsAtPosition): Added check that the renderer is not null
+ before dereferencing it.
+
+2010-09-29 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Add additional checks to StringBuilder.
+ <rdar://problem/7761248>
+
+ * platform/text/StringBuilder.cpp:
+ (WebCore::checkAppend):
+ (WebCore::StringBuilder::append):
+ (WebCore::StringBuilder::toString):
+ (WebCore::StringBuilder::clear):
+ (WebCore::StringBuilder::length):
+ * platform/text/StringBuilder.h:
+ (WebCore::StringBuilder::StringBuilder):
+ (WebCore::StringBuilder::setNonNull):
+ (WebCore::StringBuilder::isNull):
+
+2010-09-29 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Darin Adler.
+
+ plugins/npruntime/invoke-failure.html fails in WebKit2 due to slightly different exception being thrown
+ https://bugs.webkit.org/show_bug.cgi?id=46715
+ <rdar://problem/8485909>
+
+ Remove exclamation points from exceptions.
+
+ * bindings/v8/V8NPObject.cpp:
+ (WebCore::npObjectInvokeImpl):
+ * bridge/c/c_instance.cpp:
+ (JSC::Bindings::CInstance::invokeMethod):
+ (JSC::Bindings::CInstance::invokeDefaultMethod):
+ (JSC::Bindings::CInstance::invokeConstruct):
+
+2010-09-29 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Add additional check to Text::wholeText.
+ <rdar://problem/8304795>
+
+ * dom/Text.cpp:
+ (WebCore::Text::wholeText):
+
+2010-09-29 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by Brady Eidson.
+
+ REGRESSION (r66129): Loading full-frame .swf file crashes with flash blocker extension enabled
+ <https://bugs.webkit.org/show_bug.cgi?id=46773>
+ <rdar://problem/8390975>
+
+ After r66129, start scripts were run on plugin documents, and cancelling the load of a plugin
+ document could cause Safari to crash.
+
+ If a plugin load on an initial document is cancelled, we cancel the main resource load (where the
+ main resource is the plugin), and if the load is restarted and allowed, we don't go through the manual
+ loading path like we do on the initial load of a plugin in a plugin document.
+
+ Tests: plugins/plugin-document-load-prevented-userscript.html
+ plugins/plugin-document-willSendRequest-null.html
+
+ * html/HTMLEmbedElement.cpp:
+ (WebCore::HTMLEmbedElement::updateWidget): If the plugin load was cancelled, and this is in a
+ plugin document, call a function on PluginDocument that cancels the main resource load, and
+ sets a plugin document flag.
+ * html/PluginDocument.cpp:
+ (WebCore::PluginDocumentParser::appendBytes): Null check the widget's renderer, because it could be
+ null if the load was cancelled.
+ (WebCore::PluginDocument::PluginDocument): Initialize the new variable.
+ (WebCore::PluginDocument::cancelManualPluginLoad): Cancel the main resource load of the plugin document
+ (which is a plugin in the case of a plugin document).
+ * html/PluginDocument.h:
+ (WebCore::PluginDocument::shouldLoadPluginManually): Returns whether or not we should load the plugin
+ manually.
+ (WebCore::PluginDocument::setShouldLoadPluginManually): Set whether or not we should load the plugin
+ manually.
+ (WebCore::toPluginDocument):
+ * loader/SubframeLoader.cpp:
+ (WebCore::SubframeLoader::loadPlugin): Check if we should load the plugin manually according to the plugin
+ document.
+
+2010-09-29 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46844, make estimateLogicalTopPosition
+ block-flow-aware.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::estimateLogicalTopPosition):
+ (WebCore::RenderBlock::collapsedMarginBeforeForChild):
+ (WebCore::RenderBlock::collapsedMarginAfterForChild):
+ * rendering/RenderBlock.h:
+
+2010-09-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Minor cleanup to AudioContext
+ https://bugs.webkit.org/show_bug.cgi?id=46843
+
+ No new tests since audio API is not yet implemented
+
+ * webaudio/AudioContext.cpp:
+ (WebCore::AudioContext::lock):
+ (WebCore::AudioContext::handleDeferredFinishDerefs):
+
+2010-09-29 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Eric Seidel.
+
+ Assertion failed when accessing -webkit-margin-top-collapse via computed style.
+ https://bugs.webkit.org/show_bug.cgi?id=46798
+
+ There was a switch statement which missed enum entries in getPropertyCSSValue().
+ This change added these entries to prevent the leak.
+ It also added extra case statements to encourage the compiler's help.
+
+ Test: fast/css/getComputedStyle/margin-top-bottom-collapse-alias.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+
+2010-09-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Limit number of AudioNode deletions per render quantum in AudioContext
+ https://bugs.webkit.org/show_bug.cgi?id=46834
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioContext.cpp:
+ (WebCore::AudioContext::handlePostRenderTasks):
+ (WebCore::AudioContext::deleteMarkedNodes):
+
+2010-09-29 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46838
+
+ Get rid of the marginXXXUsing/setMarginXXXUsing methods on RenderBox. I'm inverting the way these are called
+ and putting the methods on RenderBlock instead. The methods can be named better this way and the getters
+ can operate on RenderBoxModelObjects instead of just RenderBoxes.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::marginBeforeForChild):
+ (WebCore::RenderBlock::marginAfterForChild):
+ (WebCore::RenderBlock::marginStartForChild):
+ (WebCore::RenderBlock::marginEndForChild):
+ (WebCore::RenderBlock::setMarginStartForChild):
+ (WebCore::RenderBlock::setMarginEndForChild):
+ (WebCore::RenderBlock::setMarginBeforeForChild):
+ (WebCore::RenderBlock::setMarginAfterForChild):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalHeightForChild):
+ (WebCore::RenderBlock::logicalTopForChild):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::marginBefore):
+ (WebCore::RenderBox::marginAfter):
+ (WebCore::RenderBox::marginStart):
+ (WebCore::RenderBox::marginEnd):
+ (WebCore::RenderBox::setMarginStart):
+ (WebCore::RenderBox::setMarginEnd):
+ (WebCore::RenderBox::setMarginBefore):
+ (WebCore::RenderBox::setMarginAfter):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeInlineDirectionMargins):
+ (WebCore::RenderBox::computeBlockDirectionMargins):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::setMarginTop):
+ (WebCore::RenderBox::setMarginBottom):
+ (WebCore::RenderBox::setMarginLeft):
+ (WebCore::RenderBox::setMarginRight):
+
+2010-09-29 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Removed input type site-specific quirk for mail.google.com
+ https://bugs.webkit.org/show_bug.cgi?id=46836
+
+ * bindings/js/JSHTMLInputElementCustom.cpp:
+ (WebCore::needsGmailQuirk): Removed.
+ (WebCore::JSHTMLInputElement::type): Removed this custom getter.
+ * html/HTMLInputElement.idl: Removed the JSCCustomGetter custom attribute
+ from the type attribute.
+
+2010-09-29 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Simon Fraser.
+
+ CRASH at WebCore::HTMLSourceElement::scheduleErrorEvent
+ https://bugs.webkit.org/show_bug.cgi?id=46777
+
+ It should not be possible to get to be in the LoadingFromSourceElement
+ state with a null current source node. This was a possible scenario
+ where the current source node was cleared but the load state was not
+ cleared as well. Tried and could not create a test case for this.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::userCancelledLoad): clear the load state because we also clear the current source node.
+
+2010-09-29 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46835, patch a few more height/logicalHeights. Rename stretchesToViewHeight.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::layout):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computeLogicalHeight):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::stretchesToViewport):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::relativePositionOffsetY):
+
+2010-09-29 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ AX: implement CSS3 Speech "speak"
+ https://bugs.webkit.org/show_bug.cgi?id=46827
+
+ Support the "speak" style as defined in
+ http://www.w3.org/TR/css3-speech/#speak
+
+ This puts all the pieces in place for a platform to support this ability, but there's no platform implementation yet.
+
+ Test: platform/mac/accessibility/css-speech-speak.html
+
+ * accessibility/AccessibilityObject.h:
+ (WebCore::AccessibilityObject::speakProperty):
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::speakProperty):
+ * accessibility/AccessibilityRenderObject.h:
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator ESpeak):
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * css/CSSValueKeywords.in:
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::speak):
+ (WebCore::InheritedFlags::setSpeak):
+ (WebCore::InheritedFlags::initialSpeak):
+ * rendering/style/RenderStyleConstants.h:
+ * rendering/style/StyleRareInheritedData.cpp:
+ (WebCore::StyleRareInheritedData::StyleRareInheritedData):
+ (WebCore::StyleRareInheritedData::operator==):
+ * rendering/style/StyleRareInheritedData.h:
+
+2010-09-29 João Paulo Rechi Vita <jprvita@profusion.mobi>
+
+ Reviewed by Antonio Gomes.
+
+ [Curl] Fix unused and unitialized warnings.
+ https://bugs.webkit.org/show_bug.cgi?id=46831
+
+ No new tests since no new funcionality has been added.
+
+ * platform/network/curl/ResourceHandleCurl.cpp:
+ (WebCore::allowsAnyHTTPSCertificateHosts):
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::ResourceHandleManager):
+ (WebCore::handleLocalReceiveResponse):
+ (WebCore::ResourceHandleManager::downloadTimerCallback):
+ (WebCore::ResourceHandleManager::initializeHandle):
+
+2010-09-29 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46824
+
+ Convert layoutBlockChild (but not the functions it calls) to be block-flow-aware.
+
+ fast/blockflow/root-lr.html progresses as a result of this change.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::estimateLogicalTopPosition):
+ (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
+ (WebCore::RenderBlock::setLogicalTopForChild):
+ (WebCore::RenderBlock::layoutBlockChild):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalHeightForChild):
+ (WebCore::RenderBlock::logicalTopForChild):
+ * rendering/RenderBox.h:
+
+2010-09-29 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Antonio Gomes.
+
+ queryCommandValue "formatBlock" always returns false
+ https://bugs.webkit.org/show_bug.cgi?id=21305
+
+ Implemented queryCommandValue('formatBlock'). We match the Firefox's behavior exactly
+ because Firefox and Internet Explorer support the same set of elements
+ (address, h1, h2, h3, h4, h5, h6, and p) and Firefox's behavior is more compatible with Opera.
+ See the bug for the detailed discussion.
+
+ WebKit's implementation returns the local name of the lowest common ancestor
+ of the selection with the tag name address, h1, h2, h3, h4, h5, h6, or p.
+ It returns "" when there is no such an ancestor or there is no selection.
+
+ Test: editing/execCommand/query-format-block.html
+
+ * editing/Editor.cpp:
+ (WebCore::isElementForFormatBlockCommand):
+ (WebCore::Editor::elementForFormatBlockCommand):
+ * editing/Editor.h:
+ * editing/EditorCommand.cpp:
+ (WebCore::valueFormatBlock):
+ (WebCore::createCommandMap):
+
+2010-09-29 Matt Perry <mpcomplete@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Remove obsolete registerExtension variants from chromium port.
+ https://bugs.webkit.org/show_bug.cgi?id=46683
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::createNewContext):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::registeredExtensionWithV8):
+ (WebCore::V8Proxy::registerExtension):
+ * bindings/v8/V8Proxy.h:
+
+2010-09-29 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Chris Fleizach.
+
+ [GTK] editing/selection/selection-modify-crash.html crashes when run in Xvfb
+ https://bugs.webkit.org/show_bug.cgi?id=46822
+
+ When parentObjectUnignored returns null in objectAndOffsetUnignored consider that
+ a failure case. Handle this failure appropriately at all call sites.
+
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (webkit_accessible_text_get_caret_offset): Handle the failure of objectAndOffsetUnignored.
+ (objectAndOffsetUnignored): Always check the return value of parentObjectUnignored and
+ return 0 to indicate failure when that happens.
+ * editing/gtk/SelectionControllerGtk.cpp:
+ (WebCore::SelectionController::notifyAccessibilityForSelectionChange): Handle the failure
+ case of objectAndOffsetUnignored.
+
+2010-09-29 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r68657.
+ http://trac.webkit.org/changeset/68657
+ https://bugs.webkit.org/show_bug.cgi?id=46820
+
+ reason "Breaks win debug build" (Requested by podivilov on
+ #webkit).
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::send):
+ * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
+ (WebCore::V8XMLHttpRequest::sendCallback):
+ * dom/CharacterData.cpp:
+ (WebCore::CharacterData::dispatchModifiedEvent):
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::insertBefore):
+ (WebCore::ContainerNode::parserInsertBefore):
+ (WebCore::ContainerNode::replaceChild):
+ (WebCore::ContainerNode::appendChild):
+ (WebCore::ContainerNode::parserAddChild):
+ (WebCore::notifyChildInserted):
+ (WebCore::dispatchChildRemovalEvents):
+ * dom/Element.cpp:
+ (WebCore::Element::setAttribute):
+ (WebCore::Element::removeAttribute):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::~InspectorController):
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::disconnectFrontend):
+ (WebCore::InspectorController::willInsertDOMNodeImpl):
+ (WebCore::InspectorController::didInsertDOMNodeImpl):
+ (WebCore::InspectorController::willRemoveDOMNodeImpl):
+ (WebCore::InspectorController::didRemoveDOMNodeImpl):
+ (WebCore::InspectorController::willModifyDOMAttrImpl):
+ (WebCore::InspectorController::didModifyDOMAttrImpl):
+ (WebCore::InspectorController::characterDataModifiedImpl):
+ (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl):
+ * inspector/InspectorController.h:
+ (WebCore::InspectorController::willInsertDOMNode):
+ (WebCore::InspectorController::didInsertDOMNode):
+ (WebCore::InspectorController::willRemoveDOMNode):
+ (WebCore::InspectorController::willModifyDOMAttr):
+ (WebCore::InspectorController::didModifyDOMAttr):
+ (WebCore::InspectorController::characterDataModified):
+ (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
+ (WebCore::InspectorController::inspectorControllerForScriptExecutionContext):
+ (WebCore::InspectorController::inspectorControllerForNode):
+ (WebCore::InspectorController::inspectorControllerForDocument):
+ * inspector/InspectorInstrumentation.cpp: Removed.
+ * inspector/InspectorInstrumentation.h: Removed.
+ * workers/SharedWorker.cpp:
+
+2010-09-29 Xiaomei Ji <xji@chromium.org>
+
+ Reviewed by David Levin.
+
+ Performance improvement for FontLinux.
+ https://bugs.webkit.org/show_bug.cgi?id=46374
+
+ Reduce new/delete operations by storing the maximum capacity of the glyph
+ array and use that value in subsequent HB_ShapeItem calls. (Note that a
+ call to HB_ShapeItem may reduce the value of m_item.num_glyphs below the
+ capacity.)
+
+ Also be consistent with zero'ing the glyph arrays before calling
+ HB_ShapeItem.
+
+ There is no functionality changes so no new tests are added.
+
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::TextRunWalker::createGlyphArrays):
+ (WebCore::TextRunWalker::resetGlyphArrays):
+ (WebCore::TextRunWalker::shapeGlyphs):
+
+2010-09-29 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: extract Inspector Instrumentation API as a class.
+ https://bugs.webkit.org/show_bug.cgi?id=46614
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::send):
+ * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
+ (WebCore::V8XMLHttpRequest::sendCallback):
+ * dom/CharacterData.cpp:
+ (WebCore::CharacterData::dispatchModifiedEvent):
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::insertBefore):
+ (WebCore::ContainerNode::parserInsertBefore):
+ (WebCore::ContainerNode::replaceChild):
+ (WebCore::ContainerNode::appendChild):
+ (WebCore::ContainerNode::parserAddChild):
+ (WebCore::notifyChildInserted):
+ (WebCore::dispatchChildRemovalEvents):
+ * dom/Element.cpp:
+ (WebCore::Element::setAttribute):
+ (WebCore::Element::removeAttribute):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::~InspectorController):
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::disconnectFrontend):
+ (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
+ * inspector/InspectorController.h:
+ * inspector/InspectorInstrumentation.cpp: Added.
+ (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
+ (WebCore::InspectorInstrumentation::didModifyDOMAttrImpl):
+ (WebCore::InspectorInstrumentation::characterDataModifiedImpl):
+ (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
+ * inspector/InspectorInstrumentation.h: Added.
+ (WebCore::InspectorInstrumentation::frontendCreated):
+ (WebCore::InspectorInstrumentation::frontendDeleted):
+ (WebCore::InspectorInstrumentation::hasFrontends):
+ (WebCore::InspectorInstrumentation::willInsertDOMNode):
+ (WebCore::InspectorInstrumentation::didInsertDOMNode):
+ (WebCore::InspectorInstrumentation::willRemoveDOMNode):
+ (WebCore::InspectorInstrumentation::willModifyDOMAttr):
+ (WebCore::InspectorInstrumentation::didModifyDOMAttr):
+ (WebCore::InspectorInstrumentation::characterDataModified):
+ (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest):
+ (WebCore::InspectorInstrumentation::inspectorControllerForScriptExecutionContext):
+ (WebCore::InspectorInstrumentation::inspectorControllerForDocument):
+ (WebCore::InspectorInstrumentation::inspectorControllerForPage):
+
+2010-09-29 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46786, convert layoutBlockChild (but not any functions it calls)
+ to be block-flow-aware.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::handleAfterSideOfBlock):
+ (WebCore::RenderBlock::layoutBlockChildren):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::scrollbarLogicalHeight):
+
+2010-09-29 João Paulo Rechi Vita <jprvita@profusion.mobi>
+
+ Reviewed by Antonio Gomes.
+
+ [EFL] General small fixes.
+ https://bugs.webkit.org/show_bug.cgi?id=46813
+
+ This commit spots a comparison between signed and unsigned integer
+ expressions, a missing return and a never-called function.
+
+ No new tests since no new funcionality has been added.
+
+ * platform/efl/SharedBufferEfl.cpp:
+ (WebCore::SharedBuffer::createWithContentsOfFile):
+
2010-09-29 Philippe Normand <pnormand@igalia.com>
Reviewed by Gustavo Noronha Silva.
@@ -58398,7 +72823,7 @@
Continuation outlines are normally painted by the containing block. However, when the
block and the inline are not enclosed by the same self-painting layer, the inline has to
paint its own outlines. This was handled correctly only for the case where the inline had
- its own self-painting layer, but now when an ancestor inline had the self-painting layer.
+ its own self-painting layer, but not when an ancestor inline had the self-painting layer.
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::paint): Instead of testing for having a self-painting layer, test