2010-12-06 Yael Aharon Reviewed by Andreas Kling. [Qt] Support focus ring outline color for links. https://bugs.webkit.org/show_bug.cgi?id=50428 Take width and offset into account when drawing focus ring. Tests: fast/css/focus-ring-outline-color.html fast/css/focus-ring-outline-offset.html fast/css/focus-ring-outline-width.html * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::drawFocusRing): 2010-12-06 Yael Aharon Reviewed by Andreas Kling. [Qt] Fix focus ring outline color support https://bugs.webkit.org/show_bug.cgi?id=50325 * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::drawFocusRing): Take the outline width into account when drawing the focus ring of image map. Change the outline-style from dotted to solid. The default outline-width is 5 pixels, and dotted lines just don't make sense anymore. Give the focus ring alpha of 50%, following what other ports do. Save and restore the pen when drawing a focus ring. 2010-12-06 Andras Becsi Reviewed by Csaba Osztrogonác. [Qt][V8] Build fix after r73283. No new tests needed. * WebCore.pri: Add missing webaudio directory to IDL generator includes. 2010-12-06 Philippe Normand Reviewed by Martin Robinson. [soup] implement ResourceHandle::platformSetDefersLoading https://bugs.webkit.org/show_bug.cgi?id=44158 * platform/network/soup/ResourceHandleSoup.cpp: (WebCore::ResourceHandle::platformSetDefersLoading): Implemented using the soup_session_{,un}pause_message APIs. 2010-12-06 Sergio Villar Senin Reviewed by Martin Robinson. [GTK] Leak in webkit_soup_cache_load if file contents load fails https://bugs.webkit.org/show_bug.cgi?id=50558 g_file_get_contents() could return an error after allocating a buffer for file contents. We must free that memory before returning. * platform/network/soup/cache/webkit/soup-cache.c: (webkit_soup_cache_load): Added a missing g_free(). 2010-12-06 Sheriff Bot Unreviewed, rolling out r73351. http://trac.webkit.org/changeset/73351 https://bugs.webkit.org/show_bug.cgi?id=50560 "The change broke plugin tests in Chromium" (Requested by yurys on #webkit). * bindings/js/ScriptCallStackFactory.cpp: (WebCore::ScriptCallStack::stackTrace): * bindings/js/ScriptCallStackFactory.h: * bindings/v8/ScriptCallStackFactory.cpp: (WebCore::toScriptCallFrame): (WebCore::toScriptCallFramesVector): (WebCore::createScriptCallStack): (WebCore::ScriptCallStack::stackTrace): * bindings/v8/ScriptCallStackFactory.h: * bindings/v8/V8ConsoleMessage.cpp: (WebCore::V8ConsoleMessage::handler): * inspector/ScriptCallFrame.cpp: (WebCore::ScriptCallFrame::ScriptCallFrame): (WebCore::ScriptCallFrame::isEqual): (WebCore::ScriptCallFrame::buildInspectorObject): * inspector/ScriptCallFrame.h: (WebCore::ScriptCallFrame::sourceURL): * inspector/ScriptCallStack.h: * inspector/TimelineRecordFactory.cpp: (WebCore::TimelineRecordFactory::createGenericRecord): * inspector/front-end/ConsoleView.js: (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement): 2010-12-06 Robert Hogan Reviewed by Kenneth Rohde Christiansen. [Qt] Report zero width for zero size fonts Report zero width when font size is zero. Fixes fast/text/font-size-zero.html https://bugs.webkit.org/show_bug.cgi?id=50539 * platform/graphics/qt/FontQt.cpp: (WebCore::Font::floatWidthForSimpleText): (WebCore::Font::floatWidthForComplexText): 2010-12-03 Yury Semikhatsky Reviewed by Pavel Feldman. [v8] Web Inspector: remove duplicate code for capturing stack trace https://bugs.webkit.org/show_bug.cgi?id=50461 No new tests. Covered with existing inspector tests. * bindings/js/ScriptCallStackFactory.cpp: (WebCore::createScriptCallStack): * bindings/js/ScriptCallStackFactory.h: * bindings/v8/ScriptCallStackFactory.cpp: (WebCore::toScriptCallFrame): (WebCore::toScriptCallFramesVector): (WebCore::createScriptCallStack): * bindings/v8/ScriptCallStackFactory.h: * bindings/v8/V8ConsoleMessage.cpp: (WebCore::V8ConsoleMessage::handler): * inspector/ScriptCallFrame.cpp: (WebCore::ScriptCallFrame::ScriptCallFrame): (WebCore::ScriptCallFrame::isEqual): (WebCore::ScriptCallFrame::buildInspectorObject): * inspector/ScriptCallFrame.h: (WebCore::ScriptCallFrame::sourceURL): * inspector/ScriptCallStack.h: * inspector/TimelineRecordFactory.cpp: (WebCore::TimelineRecordFactory::createGenericRecord): * inspector/front-end/ConsoleView.js: (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement): 2010-12-06 Sergio Villar Senin Reviewed by Martin Robinson. [GTK] webkit_soup_cache_clear() does not delete all entries in the cache https://bugs.webkit.org/show_bug.cgi?id=50462 Do not use g_hash_table_foreach to remove entries from the cache entries hashtable. Iterate over a list of entries to remove them from the hash table. * platform/network/soup/ResourceHandleSoup.cpp: * platform/network/soup/cache/webkit/soup-cache.c: (remove_cache_item): (webkit_soup_cache_finalize): (clear_cache_item): (webkit_soup_cache_clear): 2010-12-05 Kent Tamura Unreviewed. Run sort-Xcode-project-file. * WebCore.xcodeproj/project.pbxproj: 2010-11-30 Luiz Agostini Reviewed by Darin Adler. HTML5
and initial implementation https://bugs.webkit.org/show_bug.cgi?id=50309 HTML5
and elements initial implementation. The main objective is to add the files for html element and renderers, and to get rid of build system issues in future patches. See: http://www.w3.org/TR/html5/interactive-elements.html#the-details-element http://www.w3.org/TR/html5/interactive-elements.html#the-summary-element build systems * CMakeLists.txt: * DerivedSources.cpp: * DerivedSources.make: * GNUmakefile.am: * WebCore.gypi: * WebCore.pri: * WebCore.pro: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * bindings/gobject/GNUmakefile.am: Some css properties to the new html elements. * css/html.css: (details): (summary): New html element associated with the corresponding tag. * html/HTMLAttributeNames.in: * html/HTMLTagNames.in: 1 html element and 3 renderers were added. * html/HTMLDetailsElement.cpp: Added. * html/HTMLDetailsElement.h: Added. * html/HTMLDetailsElement.idl: Added. * html/HTMLElementsAllInOne.cpp: * rendering/RenderDetails.cpp: Added. * rendering/RenderDetails.h: Added. * rendering/RenderDetailsMarker.cpp: Added. * rendering/RenderDetailsMarker.h: Added. * rendering/RenderSummary.cpp: Added. * rendering/RenderSummary.h: Added. * rendering/RenderingAllInOne.cpp: New renderer type checkers. * rendering/RenderObject.h: (WebCore::RenderObject::isDetails): (WebCore::RenderObject::isDetailsMarker): (WebCore::RenderObject::isSummary): 2010-12-05 Rob Buis Reviewed by Nikolas Zimmermann. createSVGTransformFromMatrix(undefined) => NULL ptr https://bugs.webkit.org/show_bug.cgi?id=49564 Throw TYPE_MISMATCH_ERR when using undefined or null as value for matrix parameter. * svg/SVGTransformList.idl: * svg/properties/SVGTransformListPropertyTearOff.h: (WebCore::SVGTransformListPropertyTearOff::createSVGTransformFromMatrix): 2010-12-05 Alejandro G. Castro Reviewed by Xan Lopez. [GTK] Fix compilation warnings reported by clang https://bugs.webkit.org/show_bug.cgi?id=50252 * platform/graphics/Path.h: CairoPath is now a class, not a struct. * platform/network/soup/ResourceHandleSoup.cpp: (WebCore::sendRequestCallback): Cast the status_code to int. 2010-12-05 Alejandro G. Castro Reviewed by Martin Robinson. [GTK] Remove setColor functions it was replicated in CairoUtilities: setSourceRGBAFromColor. * platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::setPlatformFill): (WebCore::setPlatformStroke): (WebCore::fillRectSourceOver): (WebCore::GraphicsContext::drawRect): (WebCore::GraphicsContext::drawLine): (WebCore::GraphicsContext::drawEllipse): (WebCore::GraphicsContext::strokeArc): (WebCore::GraphicsContext::drawConvexPolygon): (WebCore::GraphicsContext::drawFocusRing): (WebCore::GraphicsContext::fillRoundedRect): 2010-12-05 Adam Roben Windows production build fix Put spaces after trailing backslashes when setting %WebKitVSPropsRedirectionDir%. According to MSDN : A backslash ( \ ) followed by a newline character is interpreted as a space in the command; use a backslash at the end of a line to continue a command onto the next line. NMAKE interprets the backslash literally if any other character, including a space or tab, follows the backslash. * WebCore.vcproj/WebCore.make: 2010-12-05 Robert Hogan Reviewed by Andreas Kling. [Qt] Zero-sized font does not yet work Fix fast/text/font-size-zero.html Copy other ports by setting minimumFontSize to 0 for DRT runs, copy a fix to SimpleFontData from chromium/safari, and set font size in FontPlatformData to zero if size zero is requested and QFont::pixelSize otherwise. (Note that QFont doesn't accept a pixel size of zero). Also fix QFont::setPixelSize in FontPlatformData to use description.computedPixelSize rather than computedSize and pixelSize() rather than pointSizeF - since the latter gets set to -1 if pixelSize is set at all. https://bugs.webkit.org/show_bug.cgi?id=49759 * platform/graphics/qt/FontPlatformData.h: (WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate): (WebCore::FontPlatformData::pixelSize): * platform/graphics/qt/FontPlatformDataQt.cpp: (WebCore::FontPlatformData::FontPlatformData): * platform/graphics/qt/FontQt.cpp: (WebCore::drawTextCommon): * platform/graphics/qt/SimpleFontDataQt.cpp: (WebCore::SimpleFontData::platformInit): (WebCore::SimpleFontData::platformGlyphInit): (WebCore::SimpleFontData::platformCharWidthInit): 2010-12-04 Daniel Bates Reviewed by Darin Adler. Add support for lower-armenian and upper-armenian https://bugs.webkit.org/show_bug.cgi?id=49641 Implement support for list-style-types lower-armenian and upper-armenian for lowercase Armenian and uppercase Armenian numerals, respectively. Tests: fast/lists/w3-css3-lower-armenian.html fast/lists/w3-css3-upper-armenian.html * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added enum values LowerArmenian and UpperArmenian. * css/CSSValueKeywords.in: Added "upper-armenian" and "lower-armenian". * inspector/front-end/SourceCSSTokenizer.re2js: Ditto. * rendering/RenderListMarker.cpp: (WebCore::effectiveListMarkerType): Added enum values LowerArmenian and UpperArmenian. (WebCore::listMarkerSuffix): Ditto. (WebCore::listMarkerText): Ditto. (WebCore::RenderListMarker::paint): Ditto. (WebCore::RenderListMarker::computePreferredLogicalWidths): Ditto. (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto. * rendering/style/RenderStyleConstants.h: Ditto. 2010-12-04 Dan Bernstein Reviewed by Sam Weinig. WebCore part of Add text search API for counting/marking/highlighting matches in a range https://bugs.webkit.org/show_bug.cgi?id=50530 * WebCore.exp.in: Export Range version of countMatchesForText(). * editing/Editor.cpp: (WebCore::isFrameInRange): Added this helper method. (WebCore::Editor::countMatchesForText): Added a Range parameter and restricted the result to matches that occur in the range. * editing/Editor.h: 2010-12-04 Gavin Peters Reviewed by Adam Barth. Implement onload events for https://bugs.webkit.org/show_bug.cgi?id=50187 Tests: fast/dom/HTMLLinkElement/link-and-subresource-test.html fast/dom/HTMLLinkElement/prefetch-onload.html * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::HTMLLinkElement): (WebCore::HTMLLinkElement::~HTMLLinkElement): (WebCore::HTMLLinkElement::parseMappedAttribute): (WebCore::HTMLLinkElement::process): (WebCore::HTMLLinkElement::onloadTimerFired): (WebCore::HTMLLinkElement::notifyFinished): * html/HTMLLinkElement.h: * loader/cache/CachedResource.cpp: (WebCore::CachedResource::data): 2010-12-04 Xan Lopez Reviewed by Martin Robinson. [GTK] Drop GdkDrawable usage, it's deprecated in GTK+3.x and we can use GdkWindow https://bugs.webkit.org/show_bug.cgi?id=50451 GdkDrawable has been removed in GTK+3.x. To cope with this we can actually stop using it altogether, since GdkWindow is just a typedef for it and that seems to be good enough for us. * platform/graphics/GraphicsContext.h: s/GdkDrawable/GdkWindow/. * platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::gdkWindow): ditto. * platform/gtk/GtkVersioning.h: declare GDK_WINDOW_XWINDOW for GTK 3.x builds. * platform/gtk/PlatformScreenGtk.cpp: (WebCore::screenAvailableRect): s/GdkDrawable/GdkWindow/. * platform/gtk/WidgetGtk.cpp: (WebCore::gdkWindow): ditto. (WebCore::Widget::setCursor): ditto. * platform/gtk/WidgetRenderingContextGtk2.cpp: ditto. 2010-12-03 Dimitri Glazkov Reviewed by Darin Adler. REGRESSION(r71934): input event fires twice when editing text inside a text input. https://bugs.webkit.org/show_bug.cgi?id=50477 Now that events escape the shadow DOM boundary, the input event is fired twice for each input, once triggered by editing, once triggered by value change. Test: fast/forms/text-input-event.html * dom/InputElement.cpp: (WebCore::InputElement::setValueFromRenderer): Added a check to ensure editable fields don't fire an extra input event. 2010-12-03 Sheriff Bot Unreviewed, rolling out r73302. http://trac.webkit.org/changeset/73302 https://bugs.webkit.org/show_bug.cgi?id=50499 Causes crashes in debug LayoutTests (Requested by xan_ on #webkit). * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::renderParentObject): (WebCore::AccessibilityRenderObject::addChildren): * accessibility/AccessibilityRenderObject.h: * accessibility/chromium/AccessibilityObjectChromium.cpp: (WebCore::AccessibilityObject::accessibilityIgnoreAttachment): 2010-12-01 Ilya Tikhonovsky Reviewed by Pavel Feldman. Web Inspector: Inspector protocol cleanup task. The patch has just small renames and adjustments for the protocol things. 'handler' keyword in idl file was replaced with 'domain'. 'domain' property was assigned for the each backend to frontend messages. At the next step WebInspector wrapper functions will be removed and 'agents' will be called directly. https://bugs.webkit.org/show_bug.cgi?id=50337 * inspector/CodeGeneratorInspector.pm: * inspector/Inspector.idl: * inspector/front-end/inspector.js: (WebInspector_syncDispatch): 2010-12-03 Alexander Pavlov Reviewed by Yury Semikhatsky. Web Inspector: Duplicate "!important" for !important properties displayed in the Styles pane https://bugs.webkit.org/show_bug.cgi?id=50460 * inspector/front-end/StylesSidebarPane.js: * inspector/front-end/inspector.css: 2010-12-03 Xan Lopez Unreviewed build fix. The JS code generator includes headers unconditionally, so we need to generate them unconditionally and disable the feature. The WebAudio files hadn't been added to our sources list. * GNUmakefile.am: 2010-12-03 Patrick Gansterer Unreviewed build fix. Try to fix EFL build after r73273. * CMakeLists.txt: 2010-12-03 Chris Guillory Reviewed by Chris Fleizach. Include the FrameView widget of a RenderWidget in the accessibility tree. https://bugs.webkit.org/show_bug.cgi?id=49106 Include render widget children in the accessibility tree for not mac webkit ports. * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::renderParentObject): (WebCore::AccessibilityRenderObject::addChildren): (WebCore::AccessibilityRenderObject::addRenderWidgetChildren): * accessibility/AccessibilityRenderObject.h: * accessibility/chromium/AccessibilityObjectChromium.cpp: (WebCore::AccessibilityObject::accessibilityIgnoreAttachment): 2010-11-30 Abhishek Arya Reviewed by Dave Hyatt. Don't clone an anonymous block, instead create a new one in splitBlocks. Also, when beforeChild is not in one of our children, then do the processing first to get its anonymous container before calling splitBlocks. https://bugs.webkit.org/show_bug.cgi?id=49928 Tests: fast/multicol/span/anonymous-before-child-parent-crash.html fast/multicol/span/anonymous-split-block-crash.html * rendering/RenderBlock.cpp: (WebCore::RenderBlock::splitBlocks): (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): 2010-12-03 Mark Rowe Reviewed by Eric Seidel. Animated GIF animates much more slowly in Safari than Firefox / Adopt Firefox's behavior for frame duration clamping. Images that specify a frame duration of <= 10ms are treated as having a frame duration of 100ms, while all other images use the frame duration that they specify. ImageIO currently implements its own clamping of frame durations () which will result in this change having no observable effect on platforms where it is used until an updated version of ImageIO becomes available. * platform/graphics/ImageSource.cpp: (WebCore::ImageSource::frameDurationAtIndex): Update the formatting of the comment and style of the code to match that in ImageSourceCG. * platform/graphics/cg/ImageSourceCG.cpp: (WebCore::ImageSource::frameDurationAtIndex): 2010-12-03 Chris Rogers Unreviewed build fix. Fix M_E compile error on Chromium Win https://bugs.webkit.org/show_bug.cgi?id=50479 * platform/audio/AudioUtilities.cpp: (WebCore::AudioUtilities::discreteTimeConstantForSampleRate): 2010-12-03 Chris Rogers Unreviewed build fix. Try to fix GTK build due to recent web audio makefile changes (disable ENABLE_WEB_AUDIO explicitly) https://bugs.webkit.org/show_bug.cgi?id=50478 * GNUmakefile.am: 2010-12-03 Simon Fraser Reviewed by Dirk Schulze. Clean up some text-related code on GraphicsContext https://bugs.webkit.org/show_bug.cgi?id=50464 Save 8 bytes in GraphicsContextState by rearranging the data members to reduce padding. * platform/graphics/GraphicsContextPrivate.h: (WebCore::GraphicsContextState::GraphicsContextState): 2010-12-03 Simon Fraser Another Chromium build fix. * platform/graphics/skia/GraphicsContextSkia.cpp: (WebCore::GraphicsContext::setPlatformTextDrawingMode): 2010-12-03 Simon Fraser Fix Chromium build. * platform/graphics/skia/PlatformContextSkia.h: 2010-12-03 Patrick Gansterer Reviewed by Andreas Kling. [CMake] Remove WebCore_IDL_PURE_FILES https://bugs.webkit.org/show_bug.cgi?id=50445 * CMakeLists.txt: 2010-12-03 Jia Pu Reviewed by Darin Adler. Need to move all code that applies correction into correction panel callback. https://bugs.webkit.org/show_bug.cgi?id=50426 No new test, since there's no behavioral change. This patch is to prepare WebKit to work with upcoming AppKit changes. The main changes are: 1. Moved all calls to applyCorrectionPanelInfo() into handleCorrectionPanelResult(). 2. Added more user dictionary learning code. 3. Removed m_ prefix in all member variables of CorrectionPanelInfo. * editing/CorrectionPanelInfo.h: Remove m_ prefix on member variables. Added ReasonForDismissingCorrectionPanel enum type. * editing/Editor.cpp: Moved all calls to applyCorrectionPanelInfo() into handleCorrectionPanelResult(). Adopted new member variable naming in class CorrectionPanelInfo. (WebCore::Editor::respondToChangedSelection): (WebCore::Editor::~Editor): (WebCore::Editor::markMisspellingsAfterTypingToWord): (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): (WebCore::Editor::correctionPanelTimerFired): (WebCore::Editor::handleCorrectionPanelResult): (WebCore::Editor::startCorrectionPanelTimer): (WebCore::Editor::stopCorrectionPanelTimer): (WebCore::Editor::handleCancelOperation): (WebCore::Editor::dismissCorrectionPanel): (WebCore::Editor::applyCorrectionPanelInfo): * editing/Editor.h: Changed signature of dismissCorrectionPanel to use ReasonForDismissingCorrectionPanel. * loader/EmptyClients.h: Ditto. (WebCore::EmptyEditorClient::dismissCorrectionPanel): * page/EditorClient.h: Ditto. 2010-12-03 Pavel Feldman Reviewed by Yury Semikhatsky. Web Inspector: reveal in elements panel does not switch the panel itself. https://bugs.webkit.org/show_bug.cgi?id=50408 * inspector/front-end/ElementsTreeOutline.js: (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement): (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired): * inspector/front-end/ObjectPropertiesSection.js: (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired): 2010-12-03 Simon Fraser Reviewed by Nikolas Zimmermann. Clean up some text-related code on GraphicsContext https://bugs.webkit.org/show_bug.cgi?id=50464 Use defined types for textDrawingMode and it's associated flags. * html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::drawTextInternal): * platform/graphics/GraphicsContext.cpp: (WebCore::GraphicsContext::textDrawingMode): (WebCore::GraphicsContext::setTextDrawingMode): (WebCore::GraphicsContext::setPlatformTextDrawingMode): * platform/graphics/GraphicsContext.h: * platform/graphics/GraphicsContextPrivate.h: (WebCore::GraphicsContextState::GraphicsContextState): * platform/graphics/cairo/FontCairo.cpp: (WebCore::drawGlyphsShadow): (WebCore::Font::drawGlyphs): * platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::setPlatformTextDrawingMode): * platform/graphics/chromium/FontLinux.cpp: (WebCore::Font::drawGlyphs): (WebCore::Font::drawComplexText): * platform/graphics/gtk/FontGtk.cpp: (WebCore::drawGlyphsShadow): (WebCore::Font::drawComplexText): * platform/graphics/mac/FontMac.mm: (WebCore::Font::drawGlyphs): * platform/graphics/openvg/PainterOpenVG.cpp: (WebCore::PlatformPainterState::PlatformPainterState): (WebCore::PainterOpenVG::textDrawingMode): (WebCore::PainterOpenVG::setTextDrawingMode): (WebCore::PainterOpenVG::drawText): * platform/graphics/qt/FontQt.cpp: (WebCore::drawTextCommon): * platform/graphics/skia/PlatformContextSkia.cpp: (WebCore::PlatformContextSkia::State::State): (WebCore::PlatformContextSkia::getTextDrawingMode): (WebCore::PlatformContextSkia::setTextDrawingMode): * platform/graphics/skia/SkiaFontWin.cpp: (WebCore::windowsCanHandleTextDrawing): (WebCore::paintSkiaText): * platform/graphics/texmap/TextureMapper.h: (WebCore::TextureMapper::setTextDrawingMode): (WebCore::TextureMapper::textDrawingMode): (WebCore::TextureMapper::TextureMapper): * platform/graphics/win/FontCGWin.cpp: (WebCore::drawGDIGlyphs): (WebCore::Font::drawGlyphs): * platform/graphics/wince/GraphicsContextWinCE.cpp: (WebCore::GraphicsContext::drawText): * rendering/InlineTextBox.cpp: (WebCore::updateGraphicsContext): * rendering/RenderSVGResourceGradient.cpp: (WebCore::RenderSVGResourceGradient::applyResource): * rendering/RenderSVGResourcePattern.cpp: (WebCore::RenderSVGResourcePattern::applyResource): * rendering/RenderSVGResourceSolidColor.cpp: (WebCore::RenderSVGResourceSolidColor::applyResource): * svg/SVGFont.cpp: (WebCore::Font::drawTextUsingSVGFont): 2010-12-03 Chris Rogers Reviewed by Kenneth Russell. First steps to adding web audio files to build systems https://bugs.webkit.org/show_bug.cgi?id=49952 No new tests since audio API is not yet implemented. * CMakeLists.txt: * DerivedSources.make: * ForwardingHeaders/wtf/Complex.h: Added. * GNUmakefile.am: * WebCore.gyp/WebCore.gyp: * WebCore.gypi: * WebCore.pri: * WebCore.pro: * bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::audioContext): * features.pri: * page/DOMWindow.idl: * platform/audio/HRTFElevation.cpp: 2010-12-03 Patrick Gansterer Reviewed by David Levin. Use String::adopt in TextCodecWinCE::decode https://bugs.webkit.org/show_bug.cgi?id=50319 * platform/text/wince/TextCodecWinCE.cpp: (WebCore::TextCodecWinCE::decode): 2010-12-03 Brady Eidson Reviewed by Anders Carlsson. Groundwork for and https://bugs.webkit.org/show_bug.cgi?id=50191 WebKit2 Authentication Support * WebCore.exp.in: Expose the AuthenticationClient for WK2 platforms (Windows already does this): * platform/network/mac/AuthenticationChallenge.h: * platform/network/mac/AuthenticationMac.mm: (-[WebCoreAuthenticationClientAsChallengeSender client]): (WebCore::AuthenticationChallenge::authenticationClient): * platform/network/qt/AuthenticationChallenge.h: (WebCore::AuthenticationChallenge::authenticationClient): 2010-12-03 Ryosuke Niwa Reviewed by Darin Adler. REGRESSION: Crash when deleting text after textarea's value is modified on input event https://bugs.webkit.org/show_bug.cgi?id=49962 The crash was caused by TypingCommand::deleteKeyPressed's reusing a typing command for textarea's shadow DOM after its input event handler rewrote the value set by the typing command. Because the reused typing command's ending selection was pointing at a shadow node that has been detached from the document when the event handler set the new value, rootEditableElement of the ending selection was null and caused the crash. Fixed the bug by updating the ending selection of the last typing command when it differsfrom that of the current selection held by the SelectionController in TypingCommand::deleteKeyPressed. Also fixed similar bugs in forwardDeleteKeyPressed and insertText, and insertTextRunWithoutNewlines. Tests: editing/input/set-value-on-input-and-delete.html editing/input/set-value-on-input-and-forward-delete.html editing/input/set-value-on-input-and-type-input.html editing/input/set-value-on-input-and-type-textarea.html * editing/InsertTextCommand.h: Added TypingCommand as a friend because it needs to update selection. * editing/TypingCommand.cpp: (WebCore::TypingCommand::deleteKeyPressed): Updates the last typing command's selection as needed. (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto. (WebCore::TypingCommand::insertText): Ditto. (WebCore::TypingCommand::updateSelectionIfDifferentFromCurrentSelection): Added. (WebCore::TypingCommand::insertTextRunWithoutNewlines): Updates InsertTextCommand's selection as needed. * editing/TypingCommand.h: 2010-12-03 Daniel Cheng Reviewed by Tony Chang. Dragging and dropping into an empty document crashes WebKit. https://bugs.webkit.org/show_bug.cgi?id=48793 Remove the assert and update callers to check for a null return value. Test: manual-tests/drop-in-empty-doc.html * manual-tests/drop-in-empty-doc.html: Added. * manual-tests/resources/drop-in-empty-doc.xhtml: Added. * page/DragController.cpp: (WebCore::elementUnderMouse): (WebCore::DragController::tryDocumentDrag): (WebCore::DragController::concludeEditDrag): 2010-12-03 Patrick Gansterer Reviewed by Andreas Kling. Move Inspector generator logic into main CMakeLists.txt file https://bugs.webkit.org/show_bug.cgi?id=50445 * CMakeLists.txt: 2010-12-03 Patrick Gansterer Reviewed by Andreas Kling. Move StringWx.cpp into wtf directory https://bugs.webkit.org/show_bug.cgi?id=50060 * WebCore.gypi: * platform/text/wx/StringWx.cpp: Removed. 2010-12-03 Dimitri Glazkov Reviewed by Darin Adler. REGRESSION(r72783): DOMActivate fires multiple times from input type=file https://bugs.webkit.org/show_bug.cgi?id=50396 Test: fast/events/shadow-boundary-crossing-2.html * dom/EventContext.cpp: Reverted changes made in r72783. * dom/EventContext.h: Ditto. * dom/Node.cpp: (WebCore::Node::containsIncludingShadowDOM): Added. (WebCore::Node::dispatchGenericEvent): Reverted changes made in r72783. * dom/Node.h: Added decl. * html/HTMLLabelElement.cpp: (WebCore::HTMLLabelElement::defaultEventHandler): Reverted changes made in r72783. 2010-12-03 Patrick Gansterer Reviewed by Andreas Kling. Move StringBrew.cpp into wtf directory https://bugs.webkit.org/show_bug.cgi?id=50058 * platform/text/brew/StringBrew.cpp: Removed. 2010-12-03 Patrick Gansterer Reviewed by Andreas Kling. Move StringHaiku.cpp into wtf directory https://bugs.webkit.org/show_bug.cgi?id=50057 * platform/text/haiku/StringHaiku.cpp: Removed. 2010-12-03 Jessie Berlin Reviewed by Sam Weinig. Need a WebKit2 Equivalent of WebSecurityOrigin https://bugs.webkit.org/show_bug.cgi?id=50170 * WebCore.exp.in: Export the symbol for SecurityOrigin::createFromDatabaseIdentifier. 2010-12-03 Andras Becsi Unreviewed build fix after r73254. [Qt][V8] Add missing headers to $headerIncludes rather than $implIncludes because headers are needed by the generated .h files. No new tests needed. * bindings/scripts/CodeGeneratorV8.pm: 2010-12-03 Nikolas Zimmermann Reviewed by Dirk Schulze. 1336 files in WebCore rebuild when you touch SVGNames https://bugs.webkit.org/show_bug.cgi?id=42025 Remove global SVGNames.h dependency, as SVGAnimatedPropertyMacros.h included it. This requires to add the SVGNames.h include to lots of cpp files. No functional changes, thus no new tests. * css/CSSCursorImageValue.cpp: * css/CSSFontFaceSource.cpp: * dom/Node.cpp: * loader/cache/CachedFont.cpp: * rendering/RenderSVGResourceClipper.cpp: * rendering/RenderSVGResourceFilter.cpp: * rendering/RenderSVGTransformableContainer.cpp: * rendering/RenderSVGViewportContainer.cpp: * rendering/SVGRenderTreeAsText.cpp: * rendering/SVGResources.cpp: * rendering/svg/RenderSVGTextPath.cpp: * rendering/svg/SVGRootInlineBox.cpp: * svg/SVGAnimateElement.cpp: * svg/SVGAnimateMotionElement.cpp: * svg/SVGAnimateTransformElement.cpp: * svg/SVGDefsElement.cpp: * svg/SVGFEBlendElement.cpp: * svg/SVGFEDisplacementMapElement.cpp: * svg/SVGFEMergeElement.cpp: * svg/SVGFEMergeNodeElement.cpp: * svg/SVGFEOffsetElement.cpp: * svg/SVGFETileElement.cpp: * svg/SVGFETurbulenceElement.cpp: * svg/SVGFont.cpp: * svg/SVGGElement.cpp: * svg/SVGImageElement.cpp: * svg/SVGLength.cpp: * svg/SVGMPathElement.cpp: * svg/SVGPathElement.cpp: * svg/SVGPathSegList.cpp: * svg/SVGStyledTransformableElement.cpp: * svg/SVGSymbolElement.cpp: * svg/SVGTextContentElement.cpp: * svg/SVGTextElement.cpp: * svg/SVGTextPathElement.cpp: * svg/SVGUseElement.cpp: * svg/SVGViewSpec.cpp: * svg/animation/SMILTimeContainer.cpp: * svg/properties/SVGAnimatedPropertyMacros.h: * svg/properties/SVGPathSegListPropertyTearOff.cpp: 2010-12-02 Philippe Normand Reviewed by Martin Robinson. [GStreamer] hasVideo/Audio return false until the pipeline reaches PAUSED https://bugs.webkit.org/show_bug.cgi?id=50382 Go to PAUSED even if preload is deactivated. In that case don't process the GStreamer state changes until commitLoad() has been called. This patch also fixes hasVideo and hasAudio methods, making them reactive to the playbin2 audio/video tags-changed signals. Test: media/controls-without-preload.html * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::mediaPlayerPrivateMessageCallback): (WebCore::mediaPlayerPrivateVideoTagsChangedCallback): (WebCore::mediaPlayerPrivateAudioTagsChangedCallback): (WebCore::mediaPlayerPrivateAudioTagsChangeTimeoutCallback): (WebCore::mediaPlayerPrivateVideoTagsChangeTimeoutCallback): (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer): (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer): (WebCore::MediaPlayerPrivateGStreamer::load): (WebCore::MediaPlayerPrivateGStreamer::commitLoad): (WebCore::MediaPlayerPrivateGStreamer::videoTagsChanged): (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideoTags): (WebCore::MediaPlayerPrivateGStreamer::audioTagsChanged): (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudioTags): (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: (WebCore::MediaPlayerPrivateGStreamer::hasVideo): (WebCore::MediaPlayerPrivateGStreamer::hasAudio): (WebCore::MediaPlayerPrivateGStreamer::loadDelayed): 2010-12-03 Nikolas Zimmermann Reviewed by Dirk Schulze. Finish splitting DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for the remaining SVGAnimated* types https://bugs.webkit.org/show_bug.cgi?id=50440 Continuing the work on bug 42025: Introduce (DECLARE|DEFINE)_ANIMATED_(ANGLE|BOOLEAN|INTEGER|PRESERVEASPECTRATIO|RECT). The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers. No functional changes, thus no new tests. * svg/SVGAElement.cpp: * svg/SVGAElement.h: * svg/SVGAnimatedAngle.h: * svg/SVGAnimatedBoolean.h: * svg/SVGAnimatedInteger.h: * svg/SVGAnimatedPreserveAspectRatio.h: * svg/SVGAnimatedRect.h: * svg/SVGAnimationElement.cpp: * svg/SVGAnimationElement.h: (WebCore::SVGAnimationElement::calculateDistance): (WebCore::SVGAnimationElement::animationPath): * svg/SVGCircleElement.cpp: * svg/SVGCircleElement.h: * svg/SVGClipPathElement.cpp: * svg/SVGClipPathElement.h: * svg/SVGCursorElement.cpp: * svg/SVGCursorElement.h: * svg/SVGDefsElement.cpp: * svg/SVGDefsElement.h: * svg/SVGEllipseElement.cpp: * svg/SVGEllipseElement.h: * svg/SVGFEConvolveMatrixElement.cpp: * svg/SVGFEConvolveMatrixElement.h: * svg/SVGFEImageElement.cpp: * svg/SVGFEImageElement.h: * svg/SVGFETurbulenceElement.cpp: * svg/SVGFETurbulenceElement.h: * svg/SVGFilterElement.cpp: * svg/SVGFilterElement.h: * svg/SVGFilterPrimitiveStandardAttributes.h: * svg/SVGFontElement.cpp: (WebCore::SVGFontElement::firstMissingGlyphElement): (WebCore::SVGFontElement::ensureGlyphCache): * svg/SVGFontElement.h: * svg/SVGForeignObjectElement.cpp: * svg/SVGForeignObjectElement.h: * svg/SVGGElement.cpp: * svg/SVGGElement.h: (WebCore::SVGGElement::isShadowTreeContainerElement): (WebCore::SVGGElement::isValid): * svg/SVGGradientElement.cpp: * svg/SVGGradientElement.h: * svg/SVGImageElement.cpp: * svg/SVGImageElement.h: * svg/SVGLineElement.cpp: * svg/SVGLineElement.h: * svg/SVGLinearGradientElement.h: * svg/SVGMPathElement.cpp: * svg/SVGMPathElement.h: * svg/SVGMarkerElement.cpp: * svg/SVGMarkerElement.h: * svg/SVGMaskElement.cpp: * svg/SVGMaskElement.h: * svg/SVGPathElement.cpp: * svg/SVGPathElement.h: * svg/SVGPatternElement.cpp: * svg/SVGPatternElement.h: * svg/SVGPolyElement.cpp: * svg/SVGPolyElement.h: * svg/SVGRadialGradientElement.h: * svg/SVGRectElement.cpp: * svg/SVGRectElement.h: * svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::contentScriptType): (WebCore::SVGSVGElement::contentStyleType): (WebCore::SVGSVGElement::parseMappedAttribute): * svg/SVGSVGElement.h: * svg/SVGScriptElement.cpp: * svg/SVGScriptElement.h: * svg/SVGSwitchElement.cpp: * svg/SVGSwitchElement.h: (WebCore::SVGSwitchElement::isValid): * svg/SVGSymbolElement.cpp: * svg/SVGSymbolElement.h: (WebCore::SVGSymbolElement::rendererIsNeeded): * svg/SVGTextContentElement.cpp: * svg/SVGTextContentElement.h: * svg/SVGUseElement.cpp: * svg/SVGUseElement.h: * svg/SVGViewElement.cpp: * svg/SVGViewElement.h: (WebCore::SVGViewElement::viewTarget): (WebCore::SVGViewElement::rendererIsNeeded): * svg/SVGViewSpec.cpp: * svg/SVGViewSpec.h: (WebCore::SVGViewSpec::transform): (WebCore::SVGViewSpec::viewTargetString): (WebCore::SVGViewSpec::contextElement): * svg/properties/SVGAnimatedPropertyMacros.h: 2010-12-03 Noel Gordon Reviewed by Darin Fisher. [chromium] PNG encoder leaks memory on png_write_row errors. https://bugs.webkit.org/show_bug.cgi?id=50439 Move the creation of needed C++ objects before the setjmp() point so those objects have their destructors called if libpng errors invoke the setjmp() return path. Other minor cleanup: use the skia bitmap locker class, and remove the PNGDestroyer class - instead directly call png_destroy_write_struct() at each of the encodeImpl() return points. No change in behaviour, so no new tests. * platform/image-encoders/skia/PNGImageEncoder.cpp: (WebCore::encodeImpl): (WebCore::PNGImageEncoder::encode): 2010-12-02 Philippe Normand Reviewed by Eric Carlson. Theme not updated when MediaPlayer m_private engine changes https://bugs.webkit.org/show_bug.cgi?id=50228 Trigger a new rendering of the media element when the private media-player backend is updated. * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::mediaPlayerEngineUpdated): * html/HTMLMediaElement.h: * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::MediaPlayer): (WebCore::MediaPlayer::load): * platform/graphics/MediaPlayer.h: (WebCore::MediaPlayerClient::mediaPlayerEngineUpdated): 2010-12-03 Yonathan Randolph Reviewed by Alexey Proskuryakov. XPath lexer misinterprets expression starting with "div". https://bugs.webkit.org/show_bug.cgi?id=50366 * xml/XPathParser.cpp: * xml/XPathParser.h: (WebCore::XPath::Parser::isOperatorContext): removed (renamed) (WebCore::XPath::Parser::isBinaryOperatorContext): added 2010-12-02 Rob Buis Reviewed by Alexey Proskuryakov. CSS 2.1 failure: at-import-* https://bugs.webkit.org/show_bug.cgi?id=47153 Fix at-import-010.htm by only setting m_allowImportRules to false when creating valid style or page rules. Test: css2.1/t040105-import-10-b.html * css/CSSParser.cpp: (WebCore::CSSParser::createStyleRule): 2010-12-02 Aaron Boodman Reviewed by David Hyatt. Reduce the number of cases where we end up with a stale value for minimumPreferredLogicalWidth(). This isn't a complete fix, but fixes a large number of cases. RenderObject::minimumPreferredLogicalWidth() sometimes reports wrong value. https://bugs.webkit.org/show_bug.cgi?id=50119 * rendering/RenderBox.cpp: (WebCore::RenderBox::styleDidChange): 2010-12-02 Gregg Tavares Reviewed by David Levin. Need to initialize destination variables before calling GL https://bugs.webkit.org/show_bug.cgi?id=50048 No new tests because no change in functionality. * html/canvas/WebGLFramebuffer.cpp: (WebCore::WebGLFramebuffer::initializeRenderbuffers): * html/canvas/WebGLProgram.cpp: (WebCore::WebGLProgram::cacheActiveAttribLocations): * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::getAttachedShaders): (WebCore::WebGLRenderingContext::getBufferParameter): (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): (WebCore::WebGLRenderingContext::getBooleanParameter): (WebCore::WebGLRenderingContext::getFloatParameter): (WebCore::WebGLRenderingContext::getLongParameter): (WebCore::WebGLRenderingContext::getUnsignedLongParameter): * platform/graphics/chromium/LayerChromium.cpp: (WebCore::loadShader): (WebCore::LayerChromium::createShaderProgram): * platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::LayerRendererChromium::initializeSharedObjects): * platform/graphics/gpu/DrawingBuffer.cpp: (WebCore::DrawingBuffer::reset): * platform/graphics/gpu/Shader.cpp: (WebCore::Shader::loadProgram): 2010-12-02 Laszlo Gombos Reviewed by Andreas Kling. [Qt] Enable Web Timing for Qt https://bugs.webkit.org/show_bug.cgi?id=42433 * features.pri: Enable Web Timing for trunk (but not yet for production) 2010-12-02 Andy Estes Rubber-stamped by Mark Rowe. Update bindings test results with new GObject results. * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: (WebKit::kit): * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h: * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp: (WebKit::kit): * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h: * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp: (WebKit::kit): * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h: * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: (WebKit::kit): (webkit_dom_test_obj_obj_method): (webkit_dom_test_obj_obj_method_with_args): (webkit_dom_test_obj_method_that_requires_all_args): (webkit_dom_test_obj_method_that_requires_all_args_and_throws): (webkit_dom_test_obj_with_script_state_obj): (webkit_dom_test_obj_with_script_state_obj_exception): (webkit_dom_test_obj_get_read_only_test_obj_attr): (webkit_dom_test_obj_get_test_obj_attr): (webkit_dom_test_obj_get_xml_obj_attr): * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h: 2010-12-02 Simon Fraser Revert r73217 and r73227 because of continued bustage. * WebCore.xcodeproj/project.pbxproj: * platform/graphics/GraphicsLayer.h: (WebCore::GraphicsLayer::nativeLayer): * platform/graphics/ca/PlatformCAAnimation.h: Removed. * platform/graphics/ca/PlatformCALayer.h: Removed. * platform/graphics/ca/mac/PlatformCAAnimationMac.mm: Removed. * platform/graphics/ca/mac/PlatformCALayerMac.mm: Removed. * platform/graphics/chromium/GraphicsLayerChromium.cpp: (WebCore::GraphicsLayerChromium::nativeLayer): * platform/graphics/chromium/GraphicsLayerChromium.h: * platform/graphics/mac/GraphicsLayerMac.h: Renamed from WebCore/platform/graphics/ca/GraphicsLayerCA.h. (WebCore::GraphicsLayerMac::hasContentsLayer): (WebCore::GraphicsLayerMac::primaryLayer): (WebCore::GraphicsLayerMac::isReplicatedRootClone): (WebCore::GraphicsLayerMac::primaryLayerClones): (WebCore::GraphicsLayerMac::animationIsRunning): (WebCore::GraphicsLayerMac::contentsLayer): (WebCore::GraphicsLayerMac::ReplicaState::ReplicaState): (WebCore::GraphicsLayerMac::ReplicaState::push): (WebCore::GraphicsLayerMac::ReplicaState::setBranchType): (WebCore::GraphicsLayerMac::ReplicaState::pop): (WebCore::GraphicsLayerMac::ReplicaState::depth): (WebCore::GraphicsLayerMac::ReplicaState::replicaDepth): (WebCore::GraphicsLayerMac::hasCloneLayers): (WebCore::GraphicsLayerMac::LayerPropertyAnimation::LayerPropertyAnimation): (WebCore::GraphicsLayerMac::AnimationProcessingAction::AnimationProcessingAction): * platform/graphics/mac/GraphicsLayerMac.mm: Renamed from WebCore/platform/graphics/ca/GraphicsLayerCA.cpp. (WebCore::currentTimeToMediaTime): (WebCore::mediaTimeToCurrentTime): (-[WebAnimationDelegate animationDidStart:]): (-[WebAnimationDelegate WebCore::]): (-[WebAnimationDelegate setLayer:WebCore::]): (WebCore::copyTransform): (WebCore::getTransformFunctionValue): (WebCore::getValueFunctionNameForTransformOperation): (WebCore::propertyIdToString): (WebCore::animationIdentifier): (WebCore::getCAMediaTimingFunction): (WebCore::setLayerBorderColor): (WebCore::clearBorderColor): (WebCore::setLayerBackgroundColor): (WebCore::clearLayerBackgroundColor): (WebCore::safeSetSublayers): (WebCore::caValueFunctionSupported): (WebCore::forceSoftwareAnimation): (WebCore::nullActionsDictionary): (WebCore::animationHasStepsTimingFunction): (WebCore::GraphicsLayer::create): (WebCore::GraphicsLayerMac::GraphicsLayerMac): (WebCore::GraphicsLayerMac::~GraphicsLayerMac): (WebCore::GraphicsLayerMac::setName): (WebCore::GraphicsLayerMac::nativeLayer): (WebCore::GraphicsLayerMac::setChildren): (WebCore::GraphicsLayerMac::addChild): (WebCore::GraphicsLayerMac::addChildAtIndex): (WebCore::GraphicsLayerMac::addChildBelow): (WebCore::GraphicsLayerMac::addChildAbove): (WebCore::GraphicsLayerMac::replaceChild): (WebCore::GraphicsLayerMac::removeFromParent): (WebCore::GraphicsLayerMac::setMaskLayer): (WebCore::GraphicsLayerMac::setReplicatedLayer): (WebCore::GraphicsLayerMac::setReplicatedByLayer): (WebCore::GraphicsLayerMac::setPosition): (WebCore::GraphicsLayerMac::setAnchorPoint): (WebCore::GraphicsLayerMac::setSize): (WebCore::GraphicsLayerMac::setTransform): (WebCore::GraphicsLayerMac::setChildrenTransform): (WebCore::GraphicsLayerMac::moveOrCopyLayerAnimation): (WebCore::GraphicsLayerMac::moveOrCopyAnimationsForProperty): (WebCore::GraphicsLayerMac::setPreserves3D): (WebCore::GraphicsLayerMac::setMasksToBounds): (WebCore::GraphicsLayerMac::setDrawsContent): (WebCore::GraphicsLayerMac::setBackgroundColor): (WebCore::GraphicsLayerMac::clearBackgroundColor): (WebCore::GraphicsLayerMac::setContentsOpaque): (WebCore::GraphicsLayerMac::setBackfaceVisibility): (WebCore::GraphicsLayerMac::setOpacity): (WebCore::GraphicsLayerMac::setNeedsDisplay): (WebCore::GraphicsLayerMac::setNeedsDisplayInRect): (WebCore::GraphicsLayerMac::setContentsNeedsDisplay): (WebCore::GraphicsLayerMac::setContentsRect): (WebCore::GraphicsLayerMac::addAnimation): (WebCore::GraphicsLayerMac::pauseAnimation): (WebCore::GraphicsLayerMac::removeAnimation): (WebCore::GraphicsLayerMac::animationDidStart): (WebCore::GraphicsLayerMac::setContentsToImage): (WebCore::GraphicsLayerMac::setContentsToMedia): (WebCore::GraphicsLayerMac::didDisplay): (WebCore::GraphicsLayerMac::syncCompositingState): (WebCore::GraphicsLayerMac::syncCompositingStateForThisLayerOnly): (WebCore::GraphicsLayerMac::recursiveCommitChanges): (WebCore::GraphicsLayerMac::commitLayerChangesBeforeSublayers): (WebCore::GraphicsLayerMac::commitLayerChangesAfterSublayers): (WebCore::GraphicsLayerMac::updateLayerNames): (WebCore::GraphicsLayerMac::updateSublayerList): (WebCore::GraphicsLayerMac::updateLayerPosition): (WebCore::GraphicsLayerMac::updateLayerSize): (WebCore::GraphicsLayerMac::updateAnchorPoint): (WebCore::GraphicsLayerMac::updateTransform): (WebCore::GraphicsLayerMac::updateChildrenTransform): (WebCore::GraphicsLayerMac::updateMasksToBounds): (WebCore::GraphicsLayerMac::updateContentsOpaque): (WebCore::GraphicsLayerMac::updateBackfaceVisibility): (WebCore::GraphicsLayerMac::updateStructuralLayer): (WebCore::GraphicsLayerMac::ensureStructuralLayer): (WebCore::GraphicsLayerMac::structuralLayerPurpose): (WebCore::GraphicsLayerMac::updateLayerDrawsContent): (WebCore::GraphicsLayerMac::updateLayerBackgroundColor): (WebCore::GraphicsLayerMac::updateContentsImage): (WebCore::GraphicsLayerMac::updateContentsMediaLayer): (WebCore::GraphicsLayerMac::updateContentsCanvasLayer): (WebCore::GraphicsLayerMac::updateContentsRect): (WebCore::GraphicsLayerMac::updateMaskLayer): (WebCore::GraphicsLayerMac::updateReplicatedLayers): (WebCore::GraphicsLayerMac::ReplicaState::cloneID): (WebCore::GraphicsLayerMac::replicatedLayerRoot): (WebCore::GraphicsLayerMac::updateLayerAnimations): (WebCore::GraphicsLayerMac::setCAAnimationOnLayer): (WebCore::bug7311367Workaround): (WebCore::GraphicsLayerMac::removeCAAnimationFromLayer): (WebCore::copyAnimationProperties): (WebCore::GraphicsLayerMac::pauseCAAnimationOnLayer): (WebCore::GraphicsLayerMac::setContentsToCanvas): (WebCore::GraphicsLayerMac::repaintLayerDirtyRects): (WebCore::GraphicsLayerMac::updateContentsNeedsDisplay): (WebCore::GraphicsLayerMac::createAnimationFromKeyframes): (WebCore::GraphicsLayerMac::createTransformAnimationsFromKeyframes): (WebCore::GraphicsLayerMac::createBasicAnimation): (WebCore::GraphicsLayerMac::createKeyframeAnimation): (WebCore::GraphicsLayerMac::setupAnimation): (WebCore::GraphicsLayerMac::timingFunctionForAnimationValue): (WebCore::GraphicsLayerMac::setAnimationEndpoints): (WebCore::GraphicsLayerMac::setAnimationKeyframes): (WebCore::GraphicsLayerMac::setTransformAnimationEndpoints): (WebCore::GraphicsLayerMac::setTransformAnimationKeyframes): (WebCore::GraphicsLayerMac::suspendAnimations): (WebCore::GraphicsLayerMac::resumeAnimations): (WebCore::GraphicsLayerMac::hostLayerForSublayers): (WebCore::GraphicsLayerMac::layerForSuperlayer): (WebCore::GraphicsLayerMac::animatedLayer): (WebCore::GraphicsLayerMac::animatedLayerClones): (WebCore::GraphicsLayerMac::platformLayer): (WebCore::GraphicsLayerMac::setDebugBackgroundColor): (WebCore::GraphicsLayerMac::setDebugBorder): (WebCore::GraphicsLayerMac::constrainedSize): (WebCore::GraphicsLayerMac::requiresTiledLayer): (WebCore::GraphicsLayerMac::swapFromOrToTiledLayer): (WebCore::GraphicsLayerMac::defaultContentsOrientation): (WebCore::GraphicsLayerMac::updateContentsTransform): (WebCore::GraphicsLayerMac::setupContentsLayer): (WebCore::GraphicsLayerMac::findOrMakeClone): (WebCore::GraphicsLayerMac::ensureCloneLayers): (WebCore::GraphicsLayerMac::removeCloneLayers): (WebCore::GraphicsLayerMac::positionForCloneRootLayer): (WebCore::GraphicsLayerMac::propagateLayerChangeToReplicas): (WebCore::GraphicsLayerMac::fetchCloneLayers): (WebCore::GraphicsLayerMac::cloneLayer): (WebCore::GraphicsLayerMac::setOpacityInternal): (WebCore::GraphicsLayerMac::updateOpacityOnLayer): (WebCore::GraphicsLayerMac::noteSublayersChanged): (WebCore::GraphicsLayerMac::noteLayerPropertyChanged): * platform/graphics/mac/WebLayer.h: * platform/graphics/mac/WebLayer.mm: (-[WebLayer initWithLayer:]): (-[WebLayer setNeedsDisplay]): (-[WebLayer setNeedsDisplayInRect:]): (-[WebLayer display]): (-[WebLayer drawInContext:]): (-[WebLayer setLayerOwner:]): (-[WebLayer layerOwner]): * platform/graphics/mac/WebTiledLayer.h: * platform/graphics/mac/WebTiledLayer.mm: (-[WebTiledLayer initWithLayer:]): (-[WebTiledLayer setNeedsDisplay]): (-[WebTiledLayer setNeedsDisplayInRect:]): (-[WebTiledLayer display]): (-[WebTiledLayer drawInContext:]): (-[WebTiledLayer setLayerOwner:]): (-[WebTiledLayer layerOwner]): * platform/graphics/qt/GraphicsLayerQt.cpp: (WebCore::GraphicsLayerQtImpl::flushChanges): (WebCore::GraphicsLayerQt::nativeLayer): * platform/graphics/qt/GraphicsLayerQt.h: * platform/graphics/win/GraphicsLayerCACF.cpp: (WebCore::GraphicsLayerCACF::nativeLayer): * platform/graphics/win/GraphicsLayerCACF.h: 2010-12-02 Noel Gordon Reviewed by David Levin. [chromium] Remove dead code from PNG encoder https://bugs.webkit.org/show_bug.cgi?id=50377 Also webkit style the PNG encoder files. No change in behaviour, so no new tests. * platform/image-encoders/skia/PNGImageEncoder.cpp: (WebCore::encodeImpl): (WebCore::PNGImageEncoder::encode): * platform/image-encoders/skia/PNGImageEncoder.h: 2010-12-02 Yuta Kitamura Reviewed by Alexey Proskuryakov. An attempt to fix Chromium's clang build. Implement (non-EventListener) marquee IDL attributes from HTML5. https://bugs.webkit.org/show_bug.cgi?id=49786 * rendering/style/RenderStyle.h: (WebCore::InheritedFlags::initialMarqueeSpeed): 2010-12-02 Mikhail Naganov Reviewed by Pavel Feldman. Web Inspector: Fix heap snapshots loading. Loading is now conducted by the Profiles panel which prevents accidental simultaneous attempts to load the same profile several times in parallel. https://bugs.webkit.org/show_bug.cgi?id=50427 * inspector/front-end/HeapSnapshotView.js: (WebInspector.HeapSnapshotView.prototype._loadProfile): (WebInspector.HeapSnapshotView.prototype.processLoadedSnapshot): * inspector/front-end/ProfilesPanel.js: (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot): (WebInspector.ProfilesPanel.prototype.addHeapSnapshotChunk): (WebInspector.ProfilesPanel.prototype.finishHeapSnapshot): 2010-12-02 Chris Marrin Reviewed by Simon Fraser. Fix Leopard build broken by http://trac.webkit.org/changeset/73217 * platform/graphics/ca/GraphicsLayerCA.cpp: (WebCore::getTransformFunctionValue): (WebCore::GraphicsLayerCA::updateContentsTransform): * platform/graphics/ca/PlatformCALayer.h: * platform/graphics/ca/mac/PlatformCAAnimationMac.mm: (PlatformCAAnimation::valueFunction): (PlatformCAAnimation::setValueFunction): * platform/graphics/ca/mac/PlatformCALayerMac.mm: (PlatformCALayer::PlatformCALayer): (PlatformCALayer::anchorPoint): (PlatformCALayer::setAnchorPoint): (PlatformCALayer::contentsTransform): (PlatformCALayer::setContentsTransform): (PlatformCALayer::isGeometryFlipped): (PlatformCALayer::setGeometryFlipped): (PlatformCALayer::setMinificationFilter): (PlatformCALayer::setMagnificationFilter): 2010-12-02 Dan Bernstein Reviewed by Dave Hyatt. CSS support for the text-emphasis properties Part of Support the CSS3 text-emphasis property https://bugs.webkit.org/show_bug.cgi?id=48539 Test: fast/css/parsing-text-emphasis.html * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added text-emphasis-color, text-emphasis-position and text-emphasis-style. Left the text-emphasis shorthand unsupported. * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): Parse the properties. (WebCore::CSSParser::parseTextEmphasisStyle): Added. * css/CSSParser.h: * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added TextEmphasisPosition, TextEmphasisFill and TextEmphasisMark mappings. (WebCore::CSSPrimitiveValue::operator TextEmphasisPosition): Added. (WebCore::CSSPrimitiveValue::operator TextEmphasisFill): Added. (WebCore::CSSPrimitiveValue::operator TextEmphasisMark): Added. * css/CSSPropertyLonghand.cpp: (WebCore::initShorthandMap): Added the text-emphasis shorthand. * css/CSSPropertyNames.in: Added -webkit-text-emphasis, -webkit-text-emphasis-color, -webkit-text-emphasis-position, and -webkit-text-emphasis-style. * css/CSSStyleSelector.cpp: (WebCore::isValidVisitedLinkProperty): Added text-emphasis-color. (WebCore::CSSStyleSelector::applyProperty): Handle the properties. * css/CSSValueKeywords.in: Added 'over' and 'under' for text-emphasis-position. Added 'dot', 'double-circle', 'triangle', 'sesame', 'filled' and 'open' for text-emphasis-style. * rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::colorIncludingFallback): Handle text-emphasis-color. (WebCore::RenderStyle::textEmphasisMark): Added. Maps the fake 'auto' value to 'dot' or 'sesame' based on writing direction. * rendering/style/RenderStyle.h: Added accessors. (WebCore::InheritedFlags::textEmphasisFill): (WebCore::InheritedFlags::textEmphasisCustomMark): (WebCore::InheritedFlags::textEmphasisPosition): (WebCore::InheritedFlags::setTextEmphasisColor): (WebCore::InheritedFlags::setTextEmphasisFill): (WebCore::InheritedFlags::setTextEmphasisMark): (WebCore::InheritedFlags::setTextEmphasisCustomMark): (WebCore::InheritedFlags::setTextEmphasisPosition): (WebCore::InheritedFlags::initialTextEmphasisColor): (WebCore::InheritedFlags::initialTextEmphasisFill): (WebCore::InheritedFlags::initialTextEmphasisMark): (WebCore::InheritedFlags::initialTextEmphasisCustomMark): (WebCore::InheritedFlags::initialTextEmphasisPosition): (WebCore::InheritedFlags::textEmphasisColor): * rendering/style/RenderStyleConstants.h: * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator==): * rendering/style/StyleRareInheritedData.h: 2010-12-02 Chris Marrin Reviewed by Simon Fraser. Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations https://bugs.webkit.org/show_bug.cgi?id=49388 Replaced GraphicsLayerMac with GraphicsLayerCA. GraphicsLayerCA is essentially identical to GraphicsLayerMac, but replaces all the CoreAnimation specific calls with calls to PlatformCALayer and PlatformCAAnimation. This makes GraphicsLayerCA platform neutral as long as implementations of those two classes are available. Added implementations in PlatformCALayerMac and PlatformCAAnimationMac. Also got rid of GraphicsLayer::nativeLayer() and replaced it with GraphicsLayer::platformLayer() to avoid confusion since both names were used to refer to the same thing. This patch is only for Mac. Windows implementation has not changed. * WebCore.xcodeproj/project.pbxproj: * platform/graphics/GraphicsLayer.h: * platform/graphics/ca: Added. * platform/graphics/ca/GraphicsLayerCA.cpp: Added. * platform/graphics/ca/GraphicsLayerCA.h: Added. * platform/graphics/ca/PlatformCAAnimation.h: Added. * platform/graphics/ca/PlatformCALayer.h: Added. * platform/graphics/ca/mac: Added. * platform/graphics/ca/mac/PlatformCAAnimationMac.mm: Added. * platform/graphics/ca/mac/PlatformCALayerMac.mm: Added. * platform/graphics/chromium/GraphicsLayerChromium.cpp: * platform/graphics/chromium/GraphicsLayerChromium.h: * platform/graphics/mac/GraphicsLayerMac.h: Removed. * platform/graphics/mac/GraphicsLayerMac.mm: Removed. * platform/graphics/mac/WebLayer.h: * platform/graphics/mac/WebLayer.mm: * platform/graphics/mac/WebTiledLayer.h: * platform/graphics/mac/WebTiledLayer.mm: * platform/graphics/qt/GraphicsLayerQt.cpp: * platform/graphics/qt/GraphicsLayerQt.h: * platform/graphics/win/GraphicsLayerCACF.cpp: * platform/graphics/win/GraphicsLayerCACF.h: 2010-12-02 Joseph Pecoraro Reviewed by Darin Adler. Update ResourceLoaderSet Enumeration https://bugs.webkit.org/show_bug.cgi?id=50405 Use size_t when working with Vectors and when comparing between size_t types. * loader/DocumentLoader.cpp: (WebCore::cancelAll): (WebCore::setAllDefersLoading): 2010-12-02 Jian Li Reviewed by Kenneth Russell. Integer calculation issues in DataView constructor https://bugs.webkit.org/show_bug.cgi?id=50354 Test: fast/canvas/webgl/data-view-crash.html * html/canvas/DataView.cpp: (WebCore::DataView::create): 2010-12-02 Patrick Gansterer Reviewed by Darin Adler. Add AtomicString::fromUTF8 https://bugs.webkit.org/show_bug.cgi?id=45594 Use AtomicString::fromUTF8 directly in the libxml2 parser. * dom/XMLDocumentParserLibxml2.cpp: (WebCore::toAtomicString): 2010-12-02 Andy Estes Fix the Qt Linux Release minimal build. * html/HTMLMarqueeElement.cpp: Include ExceptionCode.h 2010-12-02 Joseph Pecoraro Reviewed by Darin Adler. Update ResourceLoaderSet Enumeration https://bugs.webkit.org/show_bug.cgi?id=50405 * loader/DocumentLoader.cpp: (WebCore::cancelAll): instead of copying the HashSet, use copyToVector. (WebCore::setAllDefersLoading): instead of copying the HashSet, use copyToVector. 2010-12-02 Andy Estes Reviewed by Darin Adler. Implement (non-EventListener) marquee IDL attributes from HTML5. https://bugs.webkit.org/show_bug.cgi?id=49786 Test: fast/html/marquee-element.html * html/HTMLMarqueeElement.cpp: (WebCore::HTMLMarqueeElement::scrollAmount): If the content attribute can be converted to a signed integer and is >= 0, return it. Otherwise, return the default scrollAmount value. (WebCore::HTMLMarqueeElement::setScrollAmount): Update the content attribute if it is >= 0. Otherwise, raise INDEX_SIZE_ERR. (WebCore::HTMLMarqueeElement::scrollDelay): Same as scrollAmount. (WebCore::HTMLMarqueeElement::setScrollDelay): Same as setScrollAmount. (WebCore::HTMLMarqueeElement::loop): If the content attribute can be converted to a signed integer and is greater than 0 or equal to -1, return it. Otherwise, return the default loop value. (WebCore::HTMLMarqueeElement::setLoop): Update the content attribute if it is greater than 0 or equal to -1. Otherwise, raise INDEX_SIZE_ERR. * html/HTMLMarqueeElement.h: * html/HTMLMarqueeElement.idl: Update the IDL to match what is in HTML5. * rendering/style/RenderStyle.h: (WebCore::InheritedFlags::initialMarqueeSpeed): 2010-12-02 Patrick Gansterer Reviewed by Andreas Kling. [OpenVG] Remove "current path" of GraphicsContext https://bugs.webkit.org/show_bug.cgi?id=50294 * platform/graphics/GraphicsContext.h: * platform/graphics/openvg/GraphicsContextOpenVG.cpp: (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::clipPath): * platform/graphics/openvg/PainterOpenVG.cpp: (WebCore::PainterOpenVG::PainterOpenVG): (WebCore::PainterOpenVG::~PainterOpenVG): (WebCore::PainterOpenVG::drawPath): * platform/graphics/openvg/PainterOpenVG.h: 2010-12-02 Patrick Gansterer Reviewed by Andreas Kling. [WINCE] Remove "current path" of GraphicsContext https://bugs.webkit.org/show_bug.cgi?id=50284 * platform/graphics/GraphicsContext.h: * platform/graphics/wince/GraphicsContextWinCE.cpp: (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): 2010-12-02 Johnny Ding Reviewed by Adam Barth. Set the right gesture status for URL redirections. https://bugs.webkit.org/show_bug.cgi?id=47817 Tests: fast/frames/location-redirect-user-gesture.html fast/frames/meta-refresh-user-gesture.html * loader/NavigationScheduler.cpp: (WebCore::ScheduledNavigation::clearUserGesture): (WebCore::ScheduledRedirect::ScheduledRedirect): 2010-12-02 Chris Rogers Reviewed by Kenneth Russell. AudioContext needs createBuffer() method from ArrayBuffer https://bugs.webkit.org/show_bug.cgi?id=50343 No new tests since audio API is not yet implemented. * webaudio/AudioContext.cpp: (WebCore::AudioContext::createBuffer): * webaudio/AudioContext.h: * webaudio/AudioContext.idl: 2010-12-02 Noel Gordon Reviewed by David Levin. [chromium] Add canvas.toDataURL("image/jpeg", quality) support https://bugs.webkit.org/show_bug.cgi?id=49365 Adds a libjpeg-based image encoder for Skia bitmaps. Default encoding quality is 92 to match Mozilla, also Safari, though the actual value used by Safari is undocumented, and it appears to pre-blur images prior to compression. The preMultipliedBGRAtoRGB() routine restores the un-premultiplied RGB colors where there is non-zero alpha. Again, this matches Firefox and Safari, but no browser conforms to the HTML5 canvas standard here, I believe, considering the result of canvas/philip/tests/toDataURL.jpeg.alpha.html; that test ignores the alpha channel when extracting an "image/jpeg".toDataURL(). The correct answer needs more investigation, bug http://webkit.org/b/40147. Canvas toDataURL is covered by existing tests canvas/philip/tests/toDataURL.*, and fast/canvas/*toDataURL* tests. * WebCore.gypi: * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: (WebCore::V8HTMLCanvasElement::toDataURLCallback): don't set encoding quality here, just pass the toDataURL parameters through to the canvas layer. * platform/chromium/MIMETypeRegistryChromium.cpp: (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding): implement the supported mimeTypes for encoding in-place. * platform/graphics/skia/ImageBufferSkia.cpp: (WebCore::ImageBuffer::toDataURL): add jpeg encoding and quality support. * platform/image-encoders/skia/JPEGImageEncoder.cpp: Added. (WebCore::prepareOutput): (WebCore::writeOutput): (WebCore::finishOutput): (WebCore::handleError): (WebCore::preMultipliedBGRAtoRGB): FIXME: bug 40147. (WebCore::JPEGImageEncoder::encode): * platform/image-encoders/skia/JPEGImageEncoder.h: Added. 2010-12-02 Sheriff Bot Unreviewed, rolling out r73152. http://trac.webkit.org/changeset/73152 https://bugs.webkit.org/show_bug.cgi?id=50401 the patch has broken chromium win layout tests (Requested by loislo on #webkit). * inspector/CodeGeneratorInspector.pm: * inspector/Inspector.idl: * inspector/front-end/Callback.js: * inspector/front-end/DOMAgent.js: (WebInspector.DOMNode): * inspector/front-end/inspector.js: (WebInspector.loaded.WebInspector.socket.onmessage): (WebInspector.dispatch): (WebInspector_syncDispatch): (WebInspector.reportProtocolError): 2010-12-02 W. James MacLean Reviewed by James Robinson. Scaled Resized images are blurred when sent to Skia https://bugs.webkit.org/show_bug.cgi?id=42370 This patch modifies ImageSkia.cpp to fix the calculation of resampled bitmap sizes so as to include the transform matrix of the canvas. Includes new tests to catch a scrolling regression and a clipping regression. Tests: svg/custom/image-rescale-clip.html svg/custom/image-rescale-scroll.html svg/custom/image-rescale.svg * platform/graphics/skia/ImageSkia.cpp: (WebCore::computeResamplingMode): (WebCore::drawResampledBitmap): 2010-12-02 Erik Arvidsson Reviewed by Darin Adler. Missing DOM property for incremental input attribute https://bugs.webkit.org/show_bug.cgi?id=50335 Test: fast/forms/incremental-dom-property.html * html/HTMLInputElement.idl: Added attribute 2010-12-02 John Knottenbelt Reviewed by Steve Block. Move requestGeolocationPermissionForFrame to GeolocationClient https://bugs.webkit.org/show_bug.cgi?id=50061 This change facilitates client-based geolocation implementation by bringing together permission control into the geolocation client interface. * page/Chrome.h: * page/ChromeClient.h: * page/Geolocation.cpp: (WebCore::Geolocation::disconnectFrame): (WebCore::Geolocation::requestPermission): * page/GeolocationClient.h: * page/GeolocationController.cpp: (WebCore::GeolocationController::requestPermission): (WebCore::GeolocationController::cancelPermissionRequest): * page/GeolocationController.h: * platform/mock/GeolocationClientMock.cpp: (WebCore::GeolocationClientMock::GeolocationClientMock): (WebCore::GeolocationClientMock::setPermission): (WebCore::GeolocationClientMock::requestPermission): (WebCore::GeolocationClientMock::cancelPermissionRequest): (WebCore::GeolocationClientMock::asyncUpdatePermission): (WebCore::GeolocationClientMock::permissionTimerFired): (WebCore::GeolocationClientMock::reset): (WebCore::GeolocationClientMock::stopUpdating): (WebCore::GeolocationClientMock::asyncUpdateController): (WebCore::GeolocationClientMock::controllerTimerFired): * platform/mock/GeolocationClientMock.h: 2010-12-01 Ilya Tikhonovsky Reviewed by Pavel Feldman. Web Inspector: Inspector protocol cleanup task. The patch has just small renames and adjustments for the protocol things. 'handler' keyword in idl file was replaced with 'domain'. 'domain' property was assigned for the each backend to frontend messages. At the next step WebInspector wrapper functions will be removed and 'agents' will be called directly. https://bugs.webkit.org/show_bug.cgi?id=50337 * inspector/CodeGeneratorInspector.pm: * inspector/Inspector.idl: * inspector/front-end/inspector.js: (WebInspector_syncDispatch): 2010-12-01 Andrey Kosyakov Reviewed by Pavel Feldman. Web Inspector: [Resources panel] [HAR] Need a way to save timing data. Re-implementing HAR export functionality that used to be in Resources tab in Network tab. https://bugs.webkit.org/show_bug.cgi?id=45663 * inspector/front-end/NetworkPanel.js: (WebInspector.NetworkPanel.prototype._createTable): (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode): (WebInspector.NetworkPanel.prototype._contextMenu): (WebInspector.NetworkPanel.prototype._exportAll): (WebInspector.NetworkPanel.prototype._exportResource): (WebInspector.NetworkDataGridNode.prototype.refreshResource): * inspector/front-end/networkPanel.css: (.data-grid table.data tr.revealed.network-item): (.data-grid.filter-other table.data tr.revealed.network-category-other): 2010-12-02 Dai Mikurube Reviewed by Kent Tamura. Reject named colors, accept only #rrggbb in https://bugs.webkit.org/show_bug.cgi?id=50308 * html/ColorInputType.cpp: Modified to accept only simple colors like #xxxxxx. (WebCore::isValidColorString): 2010-12-02 Vincent Scheib Reviewed by Darin Fisher. [chromium] histograms api updated in WebKitClient and added to ChromiumBridge https://bugs.webkit.org/show_bug.cgi?id=50285 Test by loading "about:histograms" after navigating to accelerated pages. * platform/chromium/ChromiumBridge.h: api update. 2010-12-02 Andras Becsi Unreviewed build fix. [Qt][V8] Fix linking of generated sources. No new tests needed. * WebCore.pro: add missing V8ImageDataCustom.cpp. 2010-12-02 Nikolas Zimmermann Reviewed by Adam Roben. Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGAnimatedString/SVGAnimatedEnumeration https://bugs.webkit.org/show_bug.cgi?id=50383 Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_(STRING|ENUMERATION) / DEFINE_ANIMATED_(STRING|ENUMERATION). The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers. No functional changes, thus no new tests. * svg/SVGAElement.cpp: * svg/SVGAElement.h: (WebCore::SVGAElement::isValid): (WebCore::SVGAElement::target): * svg/SVGAltGlyphElement.cpp: * svg/SVGAltGlyphElement.h: * svg/SVGAnimatedEnumeration.h: * svg/SVGAnimatedString.h: * svg/SVGClipPathElement.cpp: * svg/SVGClipPathElement.h: * svg/SVGComponentTransferFunctionElement.cpp: * svg/SVGComponentTransferFunctionElement.h: * svg/SVGCursorElement.cpp: * svg/SVGCursorElement.h: * svg/SVGFEBlendElement.cpp: * svg/SVGFEBlendElement.h: * svg/SVGFEColorMatrixElement.cpp: * svg/SVGFEColorMatrixElement.h: * svg/SVGFEComponentTransferElement.cpp: * svg/SVGFEComponentTransferElement.h: * svg/SVGFECompositeElement.cpp: * svg/SVGFECompositeElement.h: * svg/SVGFEConvolveMatrixElement.cpp: * svg/SVGFEConvolveMatrixElement.h: * svg/SVGFEDiffuseLightingElement.cpp: * svg/SVGFEDiffuseLightingElement.h: * svg/SVGFEDisplacementMapElement.cpp: * svg/SVGFEDisplacementMapElement.h: * svg/SVGFEGaussianBlurElement.cpp: * svg/SVGFEGaussianBlurElement.h: * svg/SVGFEImageElement.cpp: * svg/SVGFEImageElement.h: * svg/SVGFELightElement.cpp: * svg/SVGFEMergeNodeElement.cpp: * svg/SVGFEMergeNodeElement.h: * svg/SVGFEMorphologyElement.cpp: * svg/SVGFEMorphologyElement.h: * svg/SVGFEOffsetElement.cpp: * svg/SVGFEOffsetElement.h: * svg/SVGFESpecularLightingElement.cpp: * svg/SVGFESpecularLightingElement.h: * svg/SVGFETileElement.cpp: * svg/SVGFETileElement.h: * svg/SVGFETurbulenceElement.cpp: * svg/SVGFETurbulenceElement.h: * svg/SVGFilterElement.cpp: * svg/SVGFilterElement.h: * svg/SVGFilterPrimitiveStandardAttributes.cpp: * svg/SVGFilterPrimitiveStandardAttributes.h: * svg/SVGForeignObjectElement.cpp: * svg/SVGForeignObjectElement.h: * svg/SVGGradientElement.cpp: * svg/SVGGradientElement.h: * svg/SVGImageElement.cpp: * svg/SVGImageElement.h: * svg/SVGMPathElement.cpp: * svg/SVGMPathElement.h: * svg/SVGMarkerElement.cpp: * svg/SVGMarkerElement.h: * svg/SVGMaskElement.cpp: * svg/SVGMaskElement.h: * svg/SVGPatternElement.cpp: * svg/SVGPatternElement.h: * svg/SVGScriptElement.cpp: * svg/SVGScriptElement.h: * svg/SVGStyledElement.cpp: * svg/SVGStyledElement.h: (WebCore::SVGStyledElement::hasRelativeLengths): (WebCore::SVGStyledElement::supportsMarkers): (WebCore::SVGStyledElement::style): (WebCore::SVGStyledElement::updateRelativeLengthsInformation): (WebCore::SVGStyledElement::selfHasRelativeLengths): (WebCore::SVGStyledElement::isStyled): * svg/SVGTRefElement.cpp: * svg/SVGTRefElement.h: * svg/SVGTextContentElement.cpp: * svg/SVGTextContentElement.h: * svg/SVGTextPathElement.cpp: * svg/SVGTextPathElement.h: * svg/SVGUseElement.cpp: * svg/SVGUseElement.h: 2010-12-02 Patrick Gansterer Reviewed by Andreas Kling. [WX] Remove "current path" of GraphicsContext https://bugs.webkit.org/show_bug.cgi?id=50286 * platform/graphics/GraphicsContext.h: * platform/graphics/wx/GraphicsContextWx.cpp: (WebCore::GraphicsContext::GraphicsContext): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): 2010-10-26 Martin Robinson Reviewed by Xan Lopez. [GTK] Text input controls do not react properly to CSS styling https://bugs.webkit.org/show_bug.cgi?id=40855 Improve text input control rendering. Instead of using the GTK+ border attributes of the control modify the padding, they modify the border. Make this same choice for search inputs and text area inputs. * platform/gtk/RenderThemeGtk.cpp: (WebCore::setTextInputBorders): Added this helper which sets text input control borders based on GTK+ theme settings. (WebCore::RenderThemeGtk::adjustTextFieldStyle): Use the setTextInputBorders helper. (WebCore::RenderThemeGtk::adjustTextAreaStyle): Ditto. (WebCore::RenderThemeGtk::adjustSearchFieldStyle): Ditto. * platform/gtk/RenderThemeGtk.h: 2010-12-02 Andreas Kling Reviewed by Kenneth Rohde Christiansen. [Qt] GraphicsContext::strokeRect() taints the context's lineWidth https://bugs.webkit.org/show_bug.cgi?id=50269 Test: fast/canvas/canvas-lineWidth-intact-after-strokeRect.html * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::strokeRect): Restore the context's original stroke thickness after painting. 2010-12-02 Renata Hodovan Reviewed by Andreas Kling. [Qt] GraphicsContext::clip(path) should clip using winding fill https://bugs.webkit.org/show_bug.cgi?id=49912 GraphicsContext::clip(path) now uses winding fill and this function is called by GraphicsContext::canvasClip(path). No new test is needed. * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::clip): (WebCore::GraphicsContext::canvasClip): 2010-12-01 Alexander Pavlov Reviewed by Yury Semikhatsky. Web Inspector: Remove obsolete CSS backend API from InspectorDOMAgent https://bugs.webkit.org/show_bug.cgi?id=50318 * CMakeLists.txt: * GNUmakefile.am: * WebCore.gypi: * WebCore.order: * WebCore.pro: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * inspector/Inspector.idl: * inspector/InspectorCSSAgent.h: * inspector/InspectorCSSStore.cpp: Removed. * inspector/InspectorCSSStore.h: Removed. * inspector/InspectorController.cpp: (WebCore::InspectorController::InspectorController): (WebCore::InspectorController::connectFrontend): (WebCore::InspectorController::didCommitLoad): * inspector/InspectorController.h: * inspector/InspectorDOMAgent.cpp: (WebCore::InspectorDOMAgent::InspectorDOMAgent): (WebCore::InspectorDOMAgent::unbind): * inspector/InspectorDOMAgent.h: (WebCore::InspectorDOMAgent::create): 2010-12-02 Csaba Osztrogonác Unreviewed trivial buildfix after r73117. * page/FrameView.cpp: (WebCore::FrameView::calculateScrollbarModesForLayout): 2010-12-02 Yuqiang Xian Reviewed by Pavel Feldman. [V8] Speed up data property access for ImageData. https://bugs.webkit.org/show_bug.cgi?id=49999 We create a normal V8 object which has a PixelArray as the backing storage, and set the "data" property of the ImageData object to it. This way "data" becomes a pure JS property and we don't need to call through the C++ bindings for ImageData "data" access. This eliminates big overhead in switching between JavaScript and native contexts and performing object bindings. No new tests. Relying on existing Canvas tests. * WebCore.gypi: * bindings/scripts/CodeGeneratorV8.pm: * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: (WebCore::toV8): * bindings/v8/custom/V8ImageDataCustom.cpp: Added. (WebCore::toV8): * html/ImageData.idl: * html/canvas/CanvasPixelArray.idl: 2010-12-02 Kent Tamura Unreviewed. Run sort-Xcode-project-file. * WebCore.xcodeproj/project.pbxproj: 2010-12-02 Mike Lawther Reviewed by David Hyatt. Clean up of iframe scrollbar mode code https://bugs.webkit.org/show_bug.cgi?id=47797 Pull setChildNeedsLayout/setNeedsLayout calls out of scrollbar mode calculation method and put back into main layout function. Early exit from the scrollbar calc when scrollbars are turned off. * page/FrameView.cpp: (WebCore::FrameView::calculateScrollbarModesForLayout): (WebCore::FrameView::layout): 2010-12-02 Hironori Bono Reviewed by Darin Fisher. [Chromium] Fix possible crashes in FontFallbackFont::determinePitch(). https://bugs.webkit.org/show_bug.cgi?id=25770 When all of "Arial", "Courier New", and "Times New Roman" fonts are corrupted, FontCache::getLastResortFallbackFont() returns 0 and it causes this crash. To avoid this crash, this change falls back to system fonts (Windows ensures they are sane) as Win Safari does. Unfortunately, I don't have any ideas how I can write a layout test for this issue because this crash happens on a PC some of its system fonts are corrupted. * platform/graphics/chromium/FontCacheChromiumWin.cpp: (WebCore::fontDataFromDescriptionAndLogFont): (WebCore::FontCache::getLastResortFallbackFont): 2010-12-02 Dimitri Glazkov Reviewed by Kent Tamura. Provide means to store shadow DOM nodes on Element https://bugs.webkit.org/show_bug.cgi?id=48697 Adds shadow DOM awareness to the standard Node attach/detach, document and tree insertion and removal cycle. No new tests, because the code is not yet used. * dom/Element.cpp: (WebCore::Element::insertedIntoDocument): Added logic to cascade down to shadow DOM, if present. (WebCore::Element::removedFromDocument): Ditto. (WebCore::Element::insertedIntoTree): Ditto. (WebCore::Element::removedFromTree): Ditto. (WebCore::Element::attach): Ditto. (WebCore::Element::detach): Ditto. (WebCore::Element::recalcStyle): (WebCore::Element::shadowRoot): Added. (WebCore::Element::setShadowRoot): Added. (WebCore::Element::clearShadowRoot): Added. * dom/Element.h: Added decls. * dom/ElementRareData.h: Added a member to hold a RefPtr to the shadow DOM root for the element. 2010-12-02 Adam Barth Reviewed by Eric Seidel. Gray-scale JPEG images with a color profile are stretched horizonally https://bugs.webkit.org/show_bug.cgi?id=49950 Turns out gray-scale JPEGs with color profiles have the same issue as PNGs. As with PNGs, we suppress now suppress the color profile for gray-scale JPEGs. Most importantly, this patch adds a test. Test: fast/images/gray-scale-jpeg-with-color-profile.html * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: (WebCore::JPEGImageReader::decode): 2010-12-01 Geoffrey Garen Build fix: Added a forwarding header. * ForwardingHeaders/wtf/OSAllocator.h: Added. 2010-12-01 Jia Pu Reviewed by Darin Adler. Support multiple correction candidates panel for misspelled word on Mac OS X. https://bugs.webkit.org/show_bug.cgi?id=50137 Test: platform/mac/editing/spelling/delete-autocorrected-word-1.html Manual test: WebCore/manual-tests/autocorrection/dismiss-multiple-guesses.html WebCore/manual-tests/autocorrection/select-from-multiple-guesses.html This patch is for supporting multiple correction suggestion panel on Mac OS X. The behavior and implementation is similar to that of reversion candiate panel. * WebCore.exp.in: Added and removed symbols. * editing/CorrectionPanelInfo.h: Added new correction panel type, PanelTypeSpellingSuggestions. * editing/Editor.cpp: (WebCore::markerTypesForAutocorrection): Convenient function for getting marker types to be added to autocorrected word. (WebCore::boundingBoxForRange): Convenient function for calculating the bounding box of a range. (WebCore::markerTypesForReplacement): Convenient function for getting marker types to be added to word that has been replaced by various correction panel. (WebCore::Editor::respondToChangedSelection): Added code to trigger timer for multiple suggestion panel. (WebCore::Editor::guessesForMisspelledSelection): Adopted new signature of EditorClient::getGuessesForWord(). (WebCore::Editor::markMisspellingsAfterTypingToWord): Adopted new signature of applyCorrectionPanelInfo(). (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto. (WebCore::Editor::correctionPanelTimerFired): Added code to handle new multiple suggestion panel. (WebCore::Editor::handleCorrectionPanelResult): Replaced handleRejectedCorrection(), since with new AppKit correction panel API, not only rejection, but also confirmation can be handled in callback. (WebCore::Editor::stopCorrectionPanelTimer): Moved the code that clears correction panel info from dismissCorrectionPanel() to this function to fix a bug that would occur when deleting autocorrected word. (WebCore::Editor::dismissCorrectionPanel): Ditto. (WebCore::Editor::applyCorrectionPanelInfo): Added code to handle new multiple suggestion panel. * editing/Editor.h: Replaced handleRejectedCorrection() with handleCorrectionPanelResult(). Changed the signature of applyCorrectionPanelInfo() to hanlde new correction panel type. * editing/TextCheckingHelper.cpp: (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): Adopted new EditorClient::getGuessesForWord(). * editing/TextCheckingHelper.h: Made paragraphRange() public. * loader/EmptyClients.h: (WebCore::EmptyEditorClient::showCorrectionPanel): Adopted new signature defined in base class. (WebCore::EmptyEditorClient::getGuessesForWord): Ditto. * manual-tests/autocorrection/dismiss-multiple-guesses.html: Added. * manual-tests/autocorrection/select-from-multiple-guesses.html: Added. * page/EditorClient.h: Changed showCorrectionPanel() to allow passing multiple correction candidates. Changed getGuessesForWord() to allow passing in contextual text for better correction suggestions (for those spellcheckers that utilizes such contextual information). 2010-12-01 David Hyatt Reviewed by James Robinson. https://bugs.webkit.org/show_bug.cgi?id=50360 Make sure to include the origin adjustment code that I added on Mac to keep truncation-rtl.html passing. * platform/ScrollView.cpp: (WebCore::ScrollView::updateScrollbars): 2010-12-01 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46645 Generalize overflow section scrollOriginX code to be a point and to work in both horizontal and vertical modes. Not testable yet, since the rightmost/leftmost/topmost/lowestPosition functions are returning horrendously wrong values in the vertical text case for overflow:auto objects. * rendering/RenderLayer.cpp: (WebCore::RenderLayer::RenderLayer): (WebCore::RenderLayer::scrollToOffset): (WebCore::RenderLayer::computeScrollDimensions): (WebCore::RenderLayer::updateOverflowStatus): * rendering/RenderLayer.h: (WebCore::RenderLayer::scrolledContentOffset): (WebCore::RenderLayer::scrollXOffset): (WebCore::RenderLayer::scrollYOffset): (WebCore::RenderLayer::scrollToXOffset): (WebCore::RenderLayer::scrollToYOffset): 2010-12-01 Steve Falkenburg Reviewed by Adam Roben. WinCairo build should not use link-time code generation (LTCG) https://bugs.webkit.org/show_bug.cgi?id=50353 * WebCore.vcproj/QTMovieWin.vcproj: * WebCore.vcproj/WebCore.vcproj: 2010-12-01 David Hyatt Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=46645 Part 1 of making scrolling work with vertical text. This patch generalizes the scrollOriginX concept recently added for horizontal RTL documents and applies it to writing modes as well. Now the scrollOrigin is a point, since you can start off locked to the bottom or locked to the right. This patch also fixes numerous bugs with the scrollOrigin code using native Mac NSScrollViews and makes them behave the same as the cross-platform code (allowing for cross-platform results to be landed). * page/FrameView.cpp: (WebCore::FrameView::adjustViewSize): * page/mac/WebCoreFrameView.h: * platform/ScrollView.cpp: (WebCore::ScrollView::ScrollView): (WebCore::ScrollView::maximumScrollPosition): (WebCore::ScrollView::minimumScrollPosition): (WebCore::ScrollView::valueChanged): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::wheelEvent): * platform/ScrollView.h: (WebCore::ScrollView::scrollOrigin): * platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::platformSetScrollPosition): (WebCore::ScrollView::platformSetScrollOrigin): * rendering/RenderBox.cpp: (WebCore::RenderBox::paintRootBoxDecorations): * rendering/RenderView.cpp: (WebCore::RenderView::layout): (WebCore::RenderView::docTop): (WebCore::RenderView::docHeight): (WebCore::RenderView::docLeft): (WebCore::RenderView::docWidth): * rendering/RenderView.h: 2010-11-30 Steve Block Reviewed by Jeremy Orlow. Upstream recent changes to WebCore/platform/network/android https://bugs.webkit.org/show_bug.cgi?id=50224 Android implementation changes only, no new tests. * platform/network/NetworkingContext.h: * platform/network/android/CookieJarAndroid.cpp: (WebCore::setCookies): (WebCore::cookies): (WebCore::cookieRequestHeaderFieldValue): (WebCore::cookiesEnabled): * platform/network/android/ProxyServerAndroid.cpp: Added. (WebCore::proxyServersForURL): * platform/network/android/ResourceHandleAndroid.cpp: (WebCore::ResourceHandle::start): (WebCore::ResourceHandle::loadResourceSynchronously): * platform/network/android/ResourceRequestAndroid.cpp: (WebCore::initializeMaximumHTTPConnectionCountPerHost): 2010-12-01 Steve Falkenburg Reviewed by Adam Roben. vcproj changes can't be applied cleanly by the Windows EWS bot https://bugs.webkit.org/show_bug.cgi?id=50328 * WebCore.vcproj/QTMovieWin.vcproj: Modified property svn:eol-style. * WebCore.vcproj/QTMovieWinCommon.vsprops: Added property svn:eol-style. * WebCore.vcproj/WebCore.sln: Modified property svn:eol-style. * WebCore.vcproj/WebCore.submit.sln: Modified property svn:eol-style. * WebCore.vcproj/WebCore.vcproj: Modified property svn:eol-style. * WebCore.vcproj/WebCoreCFNetwork.vsprops: Added property svn:eol-style. * WebCore.vcproj/WebCoreCG.vsprops: Added property svn:eol-style. * WebCore.vcproj/WebCoreCURL.vsprops: Added property svn:eol-style. * WebCore.vcproj/WebCoreCairo.vsprops: Added property svn:eol-style. * WebCore.vcproj/WebCoreCommon.vsprops: Added property svn:eol-style. * WebCore.vcproj/WebCoreGenerated.vcproj: Modified property svn:eol-style. * WebCore.vcproj/WebCoreGeneratedCairo.vsprops: Added property svn:eol-style. * WebCore.vcproj/WebCoreGeneratedCommon.vsprops: Added property svn:eol-style. * WebCore.vcproj/WebCoreMediaQT.vsprops: Added property svn:eol-style. * WebCore.vcproj/WebCorePthreads.vsprops: Added property svn:eol-style. * WebCore.vcproj/WebCoreQuartzCore.vsprops: Added property svn:eol-style. 2010-11-30 Vangelis Kokkevis Reviewed by Darin Fisher. Adds accelerated compositing trigger flags to Settings to allow ports to set them via command line flags, etc. https://bugs.webkit.org/show_bug.cgi?id=50301 * page/Settings.cpp: (WebCore::Settings::Settings): (WebCore::Settings::setAcceleratedCompositingFor3DTransformsEnabled): (WebCore::Settings::setAcceleratedCompositingForVideoEnabled): (WebCore::Settings::setAcceleratedCompositingForPluginsEnabled): (WebCore::Settings::setAcceleratedCompositingForCanvasEnabled): (WebCore::Settings::setAcceleratedCompositingForAnimationEnabled): * page/Settings.h: (WebCore::Settings::acceleratedCompositingFor3DTransformsEnabled): (WebCore::Settings::acceleratedCompositingForVideoEnabled): (WebCore::Settings::acceleratedCompositingForPluginsEnabled): (WebCore::Settings::acceleratedCompositingForCanvasEnabled): (WebCore::Settings::acceleratedCompositingForAnimationEnabled): 2010-12-01 Darin Adler Fixed warning seen on buildbot. * platform/graphics/chromium/ContentLayerChromium.cpp: (WebCore::ContentLayerChromium::SharedValues::SharedValues): Added #if. 2010-12-01 Ryosuke Niwa Reviewed by Darin Adler, Tony Chang, and unofficially by Enrica Casucci. chrome.dll!WebCore::RangeBoundaryPoint::toPosition ReadAV@NULL (cf0d0f28bc56f2591cc74f71b46036ea) https://bugs.webkit.org/show_bug.cgi?id=47808 The crash was caused by moveParagraphWithClones' not copying the entire paragraph when called by doApplyForSingleParagraph, which was induced by a bug in cloneParagraphUnderNewElement which ended the cloning process early when the start node and the end node didn't share the same parent node. Fixed the bug in cloneParagraphUnderNewElement by calling traverseNextSibling(outerNode) instead of nextSibling(). Also added an early exit to InsertListCommand::doApply when lastSelectionRange is null. Tests: editing/execCommand/switch-multiple-list-items-crash.html editing/execCommand/switch-multiple-list-items.html * editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): * editing/InsertListCommand.cpp: (WebCore::InsertListCommand::doApply): 2010-12-01 Kevin Ollivier [wx] Build fixes after recent trunk changes. * platform/graphics/wx/ImageBufferWx.cpp: (WebCore::ImageBuffer::ImageBuffer): * platform/wx/LocalizedStringsWx.cpp: (WebCore::platformDefaultLanguage): 2010-12-01 Sheriff Bot Unreviewed, rolling out r73047. http://trac.webkit.org/changeset/73047 https://bugs.webkit.org/show_bug.cgi?id=50339 missing bug number (Requested by rniwa on #webkit). * editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): * editing/InsertListCommand.cpp: (WebCore::InsertListCommand::doApply): 2010-12-01 Ryosuke Niwa Reviewed by Darin Adler, Tony Chang, and unofficially by Enrica Casucci. The crash was caused by moveParagraphWithClones' not copying the entire paragraph when called by doApplyForSingleParagraph, which was induced by a bug in cloneParagraphUnderNewElement which ended the cloning process early when the start node and the end node didn't share the same parent node. Fixed the bug in cloneParagraphUnderNewElement by calling traverseNextSibling(outerNode) instead of nextSibling(). Also added an early exit to InsertListCommand::doApply when lastSelectionRange is null. Tests: editing/execCommand/switch-multiple-list-items-crash.html editing/execCommand/switch-multiple-list-items.html * editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): * editing/InsertListCommand.cpp: (WebCore::InsertListCommand::doApply): 2010-12-01 Grace Kloba Reviewed by Kenneth Russell. [chromium] ContentLayerChromium shader should honor the platform Sk_x_SHIFT value instead of assuming BGRA color https://bugs.webkit.org/show_bug.cgi?id=50189 * platform/graphics/chromium/ContentLayerChromium.cpp: (WebCore::ContentLayerChromium::SharedValues::SharedValues):Use SK_B32_SHIFT to decide whether to use RGBA or BGRA shader for Skia port. 2010-12-01 Nico Weber Reviewed by Dimitri Glazkov. Fix clang warnings caused by -Wlogical-op-parentheses https://bugs.webkit.org/show_bug.cgi?id=50324 * platform/graphics/mac/ComplexTextController.cpp: (WebCore::ComplexTextController::adjustGlyphsAndAdvances): 2010-12-01 Martin Robinson Build fix for GTK+. * platform/gtk/PopupMenuGtk.cpp: (WebCore::PopupMenuGtk::typeAheadFind): Uncomment mistakenly commented line. 2010-12-01 Apelete Seketeli and Martin Robinson Reviewed by Xan Lopez. [Gtk] Open menulists should support typeahead find https://bugs.webkit.org/show_bug.cgi?id=27443 Added typeahead find support for open GTK+ menulists. Test: platform/gtk/fast/forms/menulist-typeahead-find.html * platform/gtk/PopupMenuGtk.cpp: (WebCore::PopupMenuGtk::PopupMenuGtk): Initialize new members. (WebCore::PopupMenuGtk::show): Track currently selected menu item via a signal handler. (WebCore::PopupMenuGtk::typeAheadFind): Added. (WebCore::PopupMenuGtk::menuUnmapped): Reset typeahead find state when menu is unmapped. (WebCore::PopupMenuGtk::resetTypeAheadFindState): Added. (WebCore::PopupMenuGtk::selectItemCallback): Added. (WebCore::PopupMenuGtk::keyPressEventCallback): Added. * platform/gtk/PopupMenuGtk.h: Added new members to track typeahead find state. 2010-12-01 Nikolas Zimmermann Reviewed by Xan Lopez. Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGAnimatedNumber https://bugs.webkit.org/show_bug.cgi?id=50323 Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_NUMBER / DEFINE_ANIMATED_NUMBER. The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers. No functional changes, thus no new tests. * svg/SVGAnimatedNumber.h: * svg/SVGComponentTransferFunctionElement.cpp: * svg/SVGComponentTransferFunctionElement.h: * svg/SVGFECompositeElement.cpp: * svg/SVGFECompositeElement.h: * svg/SVGFEConvolveMatrixElement.cpp: * svg/SVGFEConvolveMatrixElement.h: * svg/SVGFEDiffuseLightingElement.cpp: * svg/SVGFEDiffuseLightingElement.h: * svg/SVGFEDisplacementMapElement.cpp: * svg/SVGFEDisplacementMapElement.h: * svg/SVGFEGaussianBlurElement.cpp: * svg/SVGFEGaussianBlurElement.h: * svg/SVGFELightElement.cpp: * svg/SVGFELightElement.h: * svg/SVGFEMorphologyElement.cpp: * svg/SVGFEMorphologyElement.h: * svg/SVGFEOffsetElement.cpp: * svg/SVGFEOffsetElement.h: * svg/SVGFESpecularLightingElement.cpp: * svg/SVGFESpecularLightingElement.h: * svg/SVGFETurbulenceElement.cpp: * svg/SVGFETurbulenceElement.h: * svg/SVGPathElement.cpp: * svg/SVGPathElement.h: * svg/SVGStopElement.cpp: * svg/SVGStopElement.h: (WebCore::SVGStopElement::isGradientStop): 2010-12-01 Martin Robinson Reviewed by Xan Lopez. Sliders are not transformed after r50188 https://bugs.webkit.org/show_bug.cgi?id=50317 Need to call updateLayerTransform during slider layout, as sliders may be transformed. No new tests. This patch should make fast/forms/slider-transformed.html pass on the GTK+ bots. * rendering/RenderSlider.cpp: (WebCore::RenderSlider::layout): Call updateLayerTransform here. 2010-11-30 Pavel Feldman Reviewed by Yury Semikhatsky. Web Inspector: do not make helpScreen.css lazily loaded. https://bugs.webkit.org/show_bug.cgi?id=50304 * inspector/front-end/HelpScreen.js: (WebInspector.HelpScreen): (WebInspector.HelpScreen.prototype._onBlur): * inspector/front-end/inspector.html: 2010-12-01 Nikolas Zimmermann Reviewed by Xan Lopez. Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGLengthList/SVGNumberList/SVGTransformList https://bugs.webkit.org/show_bug.cgi?id=50322 Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_(LENGTH|NUMBER|TRANSFORM)_LIST / DEFINE_ANIMATED_(LENGTH|NUMBER|TRANSFORM). The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers. No functional changes, thus no new tests. * svg/SVGAnimatedLengthList.h: * svg/SVGAnimatedNumberList.h: * svg/SVGAnimatedTransformList.h: * svg/SVGComponentTransferFunctionElement.cpp: * svg/SVGComponentTransferFunctionElement.h: * svg/SVGFEColorMatrixElement.cpp: * svg/SVGFEColorMatrixElement.h: * svg/SVGFEConvolveMatrixElement.cpp: * svg/SVGFEConvolveMatrixElement.h: * svg/SVGGradientElement.cpp: * svg/SVGGradientElement.h: (WebCore::SVGGradientElement::needsPendingResourceHandling): * svg/SVGPatternElement.cpp: * svg/SVGPatternElement.h: * svg/SVGPolygonElement.cpp: * svg/SVGPolylineElement.cpp: * svg/SVGStyledTransformableElement.cpp: * svg/SVGStyledTransformableElement.h: * svg/SVGTextElement.cpp: (WebCore::SVGTextElement::SVGTextElement): * svg/SVGTextElement.h: (WebCore::SVGTextElement::localCoordinateSpaceTransform): * svg/SVGTextPositioningElement.cpp: * svg/SVGTextPositioningElement.h: * svg/properties/SVGAnimatedPropertyMacros.h: 2010-12-01 Alexander Pavlov Reviewed by Yury Semikhatsky. Web Inspector: name-only property appears in style declaration but not in the Styles pane https://bugs.webkit.org/show_bug.cgi?id=49663 Check that at least one property has been parsed from the user input. * inspector/InspectorStyleSheet.cpp: (WebCore::InspectorStyle::setPropertyText): 2010-12-01 Andrey Kosyakov Reviewed by Pavel Feldman. Web Inspector: disable cookies tab in network resource view by default, enable for chromium https://bugs.webkit.org/show_bug.cgi?id=50249 * inspector/front-end/NetworkItemView.js: (WebInspector.NetworkItemView): (WebInspector.NetworkItemView.prototype.resize): * inspector/front-end/Settings.js: 2010-12-01 Nikolas Zimmermann Reviewed by Xan Lopez. Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGLength https://bugs.webkit.org/show_bug.cgi?id=50316 Introduce DECLARE_ANIMATED_LENGTH / DEFINE_ANIMATED_LENGTH, splitting up the original DECLARE_ANIMATED_PROPERTY_NEW macro in a part that goes in the .cpp file and another that remains in the header. This avoids having to include SVGNames.h in all SVG*Element files. No functional changes, thus no new tests. * svg/SVGAnimatedLength.h: * svg/SVGCircleElement.cpp: * svg/SVGCircleElement.h: (WebCore::SVGCircleElement::isValid): * svg/SVGCursorElement.cpp: * svg/SVGCursorElement.h: (WebCore::SVGCursorElement::isValid): * svg/SVGEllipseElement.cpp: * svg/SVGEllipseElement.h: (WebCore::SVGEllipseElement::isValid): * svg/SVGFilterElement.cpp: * svg/SVGFilterElement.h: * svg/SVGFilterPrimitiveStandardAttributes.cpp: * svg/SVGFilterPrimitiveStandardAttributes.h: * svg/SVGForeignObjectElement.cpp: (WebCore::SVGForeignObjectElement::SVGForeignObjectElement): * svg/SVGForeignObjectElement.h: (WebCore::SVGForeignObjectElement::isValid): * svg/SVGImageElement.cpp: * svg/SVGImageElement.h: (WebCore::SVGImageElement::isValid): * svg/SVGLineElement.cpp: * svg/SVGLineElement.h: (WebCore::SVGLineElement::isValid): (WebCore::SVGLineElement::supportsMarkers): * svg/SVGLinearGradientElement.cpp: * svg/SVGLinearGradientElement.h: * svg/SVGMarkerElement.cpp: (WebCore::SVGMarkerElement::SVGMarkerElement): * svg/SVGMarkerElement.h: * svg/SVGMaskElement.cpp: * svg/SVGMaskElement.h: (WebCore::SVGMaskElement::isValid): (WebCore::SVGMaskElement::needsPendingResourceHandling): * svg/SVGPatternElement.cpp: * svg/SVGPatternElement.h: (WebCore::SVGPatternElement::isValid): (WebCore::SVGPatternElement::needsPendingResourceHandling): * svg/SVGRadialGradientElement.cpp: * svg/SVGRadialGradientElement.h: * svg/SVGRectElement.cpp: * svg/SVGRectElement.h: (WebCore::SVGRectElement::isValid): * svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::SVGSVGElement): * svg/SVGSVGElement.h: (WebCore::SVGSVGElement::isValid): (WebCore::SVGSVGElement::setContainerSize): (WebCore::SVGSVGElement::containerSize): (WebCore::SVGSVGElement::hasSetContainerSize): (WebCore::SVGSVGElement::currentTranslate): (WebCore::SVGSVGElement::timeContainer): (WebCore::SVGSVGElement::isSVG): (WebCore::SVGSVGElement::rendererIsNeeded): * svg/SVGTextContentElement.cpp: * svg/SVGTextContentElement.h: (WebCore::SVGTextContentElement::isValid): (WebCore::SVGTextContentElement::isTextContent): * svg/SVGTextPathElement.cpp: * svg/SVGTextPathElement.h: * svg/SVGTextPositioningElement.h: * svg/SVGUseElement.cpp: * svg/SVGUseElement.h: (WebCore::SVGUseElement::isValid): (WebCore::SVGUseElement::setUpdatesBlocked): (WebCore::SVGUseElement::isPendingResource): * svg/properties/SVGAnimatedPropertyMacros.h: 2010-12-01 Anton D'Auria Reviewed by Kevin Decker. Deny access to local and session storage in private browsing mode. https://bugs.webkit.org/show_bug.cgi?id=49329 * storage/Storage.cpp: (WebCore::Storage::length): (WebCore::Storage::key): (WebCore::Storage::getItem): (WebCore::Storage::contains): 2010-12-01 Philippe Normand Reviewed by Martin Robinson. Volume control not correctly initialized https://bugs.webkit.org/show_bug.cgi?id=36299 Replaced the mute/volume Timers with g_timeouts which are (for now, at least) more reliable than Timers for one-shot-fire-now actions. Test: media/video-volume.html * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::~MediaPlayer): Reset the raw pointers to 0 when destructing the player. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::mediaPlayerPrivateVolumeChangeTimeoutCallback): (WebCore::mediaPlayerPrivateMuteChangeTimeoutCallback): (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer): (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVolumeChange): (WebCore::MediaPlayerPrivateGStreamer::volumeChanged): (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfMute): (WebCore::MediaPlayerPrivateGStreamer::muteChanged): (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): Set playbin2 volume/mute base on MediaPlayer related values. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: 2010-12-01 Patrick Gansterer Reviewed by Andreas Kling. Cleanup main CMakeLists.txt after r72664, r72672 and r72667 https://bugs.webkit.org/show_bug.cgi?id=50232 * CMakeLists.txt: Removed obsolete dependencies. 2010-12-01 Nikolas Zimmermann Reviewed by Dirk Schulze. Cleanup SVGPropertyTraits https://bugs.webkit.org/show_bug.cgi?id=50229 Move all template specializations for non-POD types (eg. SVGLength, SVGLengthList, etc.) from SVGPropertyTraits into the right SVG* classes, to avoid having to include a dozen SVG*.h files in SVGPropertyTraits.h, which is included by all DOM/JS/V8 binding files and SVGElement.h. No new functionality, thus no new tests. * GNUmakefile.am: * WebCore.gypi: * WebCore.pro: * WebCore.xcodeproj/project.pbxproj: * bindings/scripts/CodeGenerator.pm: * bindings/scripts/CodeGeneratorObjC.pm: * bindings/scripts/CodeGeneratorV8.pm: * svg/SVGAngle.h: * svg/SVGLength.h: * svg/SVGLengthList.h: * svg/SVGMarkerElement.h: * svg/SVGNumberList.h: * svg/SVGPatternElement.h: * svg/SVGPointList.h: * svg/SVGPreserveAspectRatio.h: * svg/SVGRect.h: Added. * svg/SVGSVGElement.h: * svg/SVGStringList.h: * svg/SVGSymbolElement.h: * svg/SVGTransformList.h: * svg/SVGViewElement.h: * svg/SVGViewSpec.h: * svg/properties/SVGListProperty.h: * svg/properties/SVGPropertyTraits.h: * svg/properties/SVGTransformListPropertyTearOff.h: 2010-11-30 Kent Tamura Reviewed by Darin Adler. Refactor HTMLInputElement: Move a part of HTMLInputElement:: defaultEventHandler() to InputTypes https://bugs.webkit.org/show_bug.cgi?id=50097 Move all of keyboard-related event handling to InputType. No new tests because this should not change any behavior. * html/BaseButtonInputType.cpp: (WebCore::BaseButtonInputType::handleKeydownEvent): (WebCore::BaseButtonInputType::handleKeypressEvent): (WebCore::BaseButtonInputType::handleKeyupEvent): * html/BaseButtonInputType.h: * html/BaseCheckableInputType.cpp: (WebCore::BaseCheckableInputType::handleKeydownEvent): (WebCore::BaseCheckableInputType::handleKeypressEvent): * html/BaseCheckableInputType.h: * html/CheckboxInputType.cpp: (WebCore::CheckboxInputType::handleKeyupEvent): * html/CheckboxInputType.h: * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): We remove !implicitSubmission check for callBaseClassEarly because implicitSubmission can not be true for keydown event and keypress event at this point. * html/InputType.cpp: (WebCore::InputType::shouldSubmitImplicitly): Returns true for a keypress event with "\r". Note that we don't overload this function for BUTTON, FILE, IMAGE, RESET, and SUBMIT because a keypress event with "\r" for these types returns from HTMLInputElement::defaultEventHandler() before implicit submission checking. (WebCore::InputType::handleKeypressEvent): (WebCore::InputType::handleKeyupEvent): * html/InputType.h: * html/RadioInputType.cpp: (WebCore::RadioInputType::handleKeydownEvent): (WebCore::RadioInputType::handleKeyupEvent): * html/RadioInputType.h: * html/TextFieldInputType.cpp: (WebCore::TextFieldInputType::shouldSubmitImplicitly): * html/TextFieldInputType.h: 2010-11-30 Patrick Gansterer Reviewed by Andreas Kling. Move CSS generator logic into main CMakeLists.txt file https://bugs.webkit.org/show_bug.cgi?id=50230 * CMakeLists.txt: 2010-11-30 Ojan Vafai Revert r72876. It caused a ~30% perf regression in chromium's bloat-http test https://bugs.webkit.org/show_bug.cgi?id=50288 2010-11-29 Adam Barth Reviewed by Darin Adler. Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs https://bugs.webkit.org/show_bug.cgi?id=50182 A display-isolated URL can only be displayed (e.g., put in an iframe, hyperlinked to) by documents from that scheme. In a sense, this is a generalization of some of the protections we give file URLs, but instead of lumping them all together into one "local" bucket, this patch creates a separate bucket for each scheme. For a while, I tried using a separate bucket for each origin. That would have played nicely with what Blob URLs are trying to do, but some "chrome" URL pages rely on being able to display other chrome URL pages, even in different origins. For example, the New Tab Page shows thumbnails from the "thumbnail" host. This patch also removes a bunch of unused code. I've also propagated the "deprecated" status of deprecatedCanDisplay to deprecatedShouldTreatURLAsLocal because that method has no other callers and is really asking for uppercase/lowercase bugs. I dream of someday removing these functions. page/SecurityOrigin.cpp: (WebCore::SecurityOrigin::canDisplay): (WebCore::SecurityOrigin::deprecatedCanDisplay): platform/SchemeRegistry.cpp: (WebCore::displayIsolatedURLSchemes): (WebCore::SchemeRegistry::registerURLSchemeAsLocal): (WebCore::SchemeRegistry::deprecatedShouldTreatURLAsLocal): (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal): (WebCore::SchemeRegistry::registerURLSchemeAsDisplayIsolated): (WebCore::SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated): platform/SchemeRegistry.h: 2010-11-29 Adam Barth Reviewed by Darin Adler. Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs https://bugs.webkit.org/show_bug.cgi?id=50182 This patch adds a Chromium API for registering schemes as display-isolated. In a subsequent patch, I'll change the "chrome" scheme in Chrome to be display isolated instead of local. That will prevent file URLs from linking to chrome URLs. public/WebSecurityPolicy.h: src/WebSecurityPolicy.cpp: (WebKit::WebSecurityPolicy::registerURLSchemeAsDisplayIsolated): * page/SecurityOrigin.cpp: (WebCore::SecurityOrigin::canDisplay): (WebCore::SecurityOrigin::deprecatedCanDisplay): * platform/SchemeRegistry.cpp: (WebCore::SchemeRegistry::registerURLSchemeAsLocal): (WebCore::SchemeRegistry::removeURLSchemeRegisteredAsLocal): (WebCore::SchemeRegistry::localURLSchemes): (WebCore::SchemeRegistry::shouldTreatURLAsLocal): (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal): * platform/SchemeRegistry.h: 2010-11-30 Chris Fleizach Reviewed by Beth Dakin. WebKit duplicates AXValue and AXDescription on abbr https://bugs.webkit.org/show_bug.cgi?id=50260 stringValue() and accessibilityDescription() were returning the same value for static text with an aria-label. Static text elements should not have an accessibility description, they should only have a stringValue. Test: platform/mac/accessibility/static-text-with-aria-label.html * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::ariaAccessibilityDescription): (WebCore::AccessibilityRenderObject::accessibilityDescription): (WebCore::AccessibilityRenderObject::text): * accessibility/AccessibilityRenderObject.h: 2010-11-30 Ryosuke Niwa Reviewed by Darin Adler. [HTML5] Rename member variables of HTMLScriptElement https://bugs.webkit.org/show_bug.cgi?id=49705 Renamed m_wasCreatedByParser to m_wasInsertedByParser, m_requested to m_isExternalScript, m_isEvaluated to m_wasAlreadyStarted, and m_firedLoad to m_haveFiredLoad. Also made ScriptElement's haveFiredLoadEvent and removed HTMLScriptElement's haveFiredLoadEvent. This effectively adds the same function to SVGScriptElement, which isn't currently used anywhere. No new tests are added since this is a refactoring. * dom/ScriptElement.cpp: (WebCore::ScriptElement::ScriptElement): (WebCore::ScriptElement::insertedIntoDocument): (WebCore::ScriptElement::childrenChanged): (WebCore::ScriptElement::finishParsingChildren): (WebCore::ScriptElement::requestScript): (WebCore::ScriptElement::evaluateScript): (WebCore::ScriptElement::executeScript): (WebCore::ScriptElement::ignoresLoadRequest): * dom/ScriptElement.h: (WebCore::ScriptElement::haveFiredLoadEvent): (WebCore::ScriptElement::setHaveFiredLoadEvent): (WebCore::ScriptElement::wasInsertedByParser): (WebCore::ScriptElement::wasAlreadyStarted): * html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::HTMLScriptElement): (WebCore::HTMLScriptElement::create): (WebCore::HTMLScriptElement::cloneElementWithoutAttributesAndChildren): * html/HTMLScriptElement.h: * svg/SVGScriptElement.cpp: (WebCore::SVGScriptElement::SVGScriptElement): (WebCore::SVGScriptElement::create): (WebCore::SVGScriptElement::svgAttributeChanged): (WebCore::SVGScriptElement::insertedIntoDocument): (WebCore::SVGScriptElement::dispatchLoadEvent): (WebCore::SVGScriptElement::cloneElementWithoutAttributesAndChildren): * svg/SVGScriptElement.h: 2010-11-30 Darin Adler Rolled back most of the FileReaderLoader changes to fix 32-bit builds. * fileapi/FileReaderLoader.cpp: Changed types back to unsigned from unsigned long long * fileapi/FileReaderLoader.h: Ditto. 2010-11-30 Dan Bernstein Reviewed by Darin Adler. Text search should treat all matches as word-start matches when the target begins with a separator character https://bugs.webkit.org/show_bug.cgi?id=50302 * editing/TextIterator.cpp: (WebCore::SearchBuffer::SearchBuffer): Disable the AtWordStarts option if it was specified and the target string begins with one of the "separator" characters. 2010-11-30 Pavel Feldman Reviewed by Dave Hyatt. Web Inspector: [CRASH] on "Revert to this revision" of style with import. https://bugs.webkit.org/show_bug.cgi?id=50256 Rolled back one line from http://trac.webkit.org/changeset/36904 as agreed with David. * css/CSSImportRule.cpp: (WebCore::CSSImportRule::insertedIntoParent): 2010-11-30 Martin Robinson Reviewed by Xan Lopez. [GTK] fillRect shadow has incorrect behavior when using ctx.scale(x,y) https://bugs.webkit.org/show_bug.cgi?id=50283 Adjust the mask rectangle for Cairo shadows, so that the origin is not affected by the scale of the transformation matrix. * platform/graphics/ContextShadow.h: Make this Qt-only member global. * platform/graphics/cairo/ContextShadowCairo.cpp: (WebCore::ContextShadow::beginShadowLayer): Save the original layer area. (WebCore::ContextShadow::endShadowLayer): If the target context has a scale transform, make sure not to scale the blur distance when blitting the shadow. 2010-11-30 Darin Adler Reviewed by Alexey Proskuryakov. Make ProgressEvent 64-bit instead of 32-bit https://bugs.webkit.org/show_bug.cgi?id=50289 * dom/ProgressEvent.cpp: (WebCore::ProgressEvent::ProgressEvent): Changed arguments to unsigned long long. (WebCore::ProgressEvent::initProgressEvent): Ditto. * dom/ProgressEvent.h: Fixed formatting. Changed types to unsigned long long. Made isProgressEvent override private. * dom/ProgressEvent.idl: Tweaked formatting and changed types to unsigned long long. * fileapi/FileReader.cpp: Removed unneeded includes. Used static on const so we'd get an error if the same constant was in a header. (WebCore::FileReader::didReceiveData): Removed unneeded WTF prefix. (WebCore::FileReader::fireEvent): Got rid of local variables that would narrow bytes loaded and total bytes to 32-bit. * fileapi/FileReaderLoader.cpp: (WebCore::FileReaderLoader::didReceiveResponse): Restructured code a bit and added comments. Also added handling for when ArrayBuffer::create returns 0. (WebCore::FileReaderLoader::didReceiveData): Fixed handling of case where more data arrives than is expected so it won't overrun the buffer. Also broke an assertion into two and improved a comment. * fileapi/FileReaderLoader.h: Changed bytesLoaded and totalBytes to unsigned long long. * fileapi/FileWriter.cpp: (WebCore::FileWriter::fireEvent): Removed narrowing casts in call to ProgressEvent::create. * html/canvas/ArrayBuffer.cpp: (WebCore::ArrayBuffer::tryAllocate): Added a comment because the code here seems wrong. * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didSendData): Removed narrowing casts in call to XMLHttpRequestProgressEvent::create. (WebCore::XMLHttpRequest::didReceiveData): Removed narrowing casts in call to dispatchProgressEvent. * xml/XMLHttpRequestProgressEvent.h: Fixed formatting. Changed types to unsigned long long. Made isXMLHttpRequestProgressEvent override private. * xml/XMLHttpRequestProgressEvent.idl: Tweaked formatting and changed types to unsigned long long. * xml/XMLHttpRequestProgressEventThrottle.cpp: (WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent): Changed types to unsigned long long. * xml/XMLHttpRequestProgressEventThrottle.h: Changed types to unsigned long long. 2010-11-30 Yael Aharon Reviewed by Darin Adler. Progress and meter elements should take a form in their constructor like any other form control. https://bugs.webkit.org/show_bug.cgi?id=50195 Tests: fast/dom/HTMLMeterElement/meter-element-form.html fast/dom/HTMLProgressElement/progress-element-form.html * html/HTMLMeterElement.cpp: (WebCore::HTMLMeterElement::HTMLMeterElement): (WebCore::HTMLMeterElement::create): * html/HTMLMeterElement.h: * html/HTMLProgressElement.h: * html/HTMLTagNames.in: 2010-11-30 Tony Chang Reviewed by Adam Barth. [chromium] fix get-int-identifier-special-values.html using TestNetscapePlugIn https://bugs.webkit.org/show_bug.cgi?id=49036 No new tests: Covered by plugins/npruntime/get-int-identifier-special-values.html In http://codereview.chromium.org/11574, the forked chromium test plugin changed how it testGetIntIdentifier to work around a change caused by a silverlight specific plugin fix: http://codereview.chromium.org/11569/diff/1/2 It's not clear to me that this change is needed anymore since silverlight has had multiple releases, testing without this patch works on a test windows build, and safari win seems to run silverlight without this either. Since there's no test for this behavior, I'm rolling it out so we can match the upstream test. * bindings/v8/V8NPUtils.cpp: (WebCore::convertV8ObjectToNPVariant): 2010-11-30 Chris Guillory Reviewed by Chris Fleizach. Computing style on a stale node while sending pending accessibility notification. https://bugs.webkit.org/show_bug.cgi?id=50162 Retain node pointer members of AccessibilityImageMapLink. Test: accessibility/image-map-title-causes-crash.html * accessibility/AccessibilityImageMapLink.cpp: (WebCore::AccessibilityImageMapLink::parentObject): (WebCore::AccessibilityImageMapLink::anchorElement): (WebCore::AccessibilityImageMapLink::url): (WebCore::AccessibilityImageMapLink::elementRect): * accessibility/AccessibilityImageMapLink.h: (WebCore::AccessibilityImageMapLink::areaElement): (WebCore::AccessibilityImageMapLink::mapElement): (WebCore::AccessibilityImageMapLink::node): * dom/Document.cpp: (WebCore::Document::clearAXObjectCache): 2010-11-30 James Robinson Reviewed by Tony Chang. Build fix - add parens in foo || bar && baz to make gcc happy https://bugs.webkit.org/show_bug.cgi?id=50276 gcc 4.4 warns that statements of the form "foo || bar && baz". It wants parens around the "bar && baz" part to make it clear which way the logical operators bind. * editing/TextIterator.cpp: (WebCore::SearchBuffer::search): 2010-11-30 Daniel Bates Reviewed by David Hyatt. Focused should use CSS properties of instead of associated https://bugs.webkit.org/show_bug.cgi?id=49888 Fixes an issue where the CSS properties of an were not used when the was focused. Currently, when focusing an (say by pressing option + tab in Mac Safari) we use the CSS style information for the associated with the . Instead, we should use the CSS style information for the focused . In particular, this will make the us honor the outline- color property of a focused when drawing its focus ring. Tests: fast/images/imagemap-focus-ring-outline-color-explicitly-inherited-from-map.html fast/images/imagemap-focus-ring-outline-color-not-inherited-from-map.html fast/images/imagemap-focus-ring-outline-color.html * rendering/RenderImage.cpp: (WebCore::RenderImage::paintFocusRing): Use the style information of the focused when drawing the focus ring for it. 2010-11-30 Tony Chang Reviewed by James Robinson. [chromium] enable WebCore compiler warnings on Linux take 3 https://bugs.webkit.org/show_bug.cgi?id=50258 * WebCore.gyp/WebCore.gyp: 2010-11-30 Mario Sanchez Prada Reviewed by Chris Fleizach. [GTK] Implement ROLE_COMBO_BOX https://bugs.webkit.org/show_bug.cgi?id=25678 Implement the remaining bits for combo boxes. This patch finishes the implementation, from the point of view of the Atk library, of those objects exposed to ATK as combo boxes, and their related elements (menus and menu items). It therefore implements the proper interfaces for each type of object related to combo boxes (AtkSelection for the combo box, AtkText for every menu item and AtkAction for the combo box, the menu and the menu items), takes care of emitting the proper signals when focus or a given a selection changes and adds a new unit test to check all this new stuff. Make possible to ask an AccessibleMenuListOption for a sensible string representation, so far only available through the private and MSAA related method nameForMSAA. Just moved the implementation of that method to an overriden version of stringValue(), which is platform independent, and called that from nameForMSAA(). * accessibility/AccessibilityMenuListOption.h: * accessibility/AccessibilityMenuListOption.cpp: (WebCore::AccessibilityMenuListOption::nameForMSAA): Just call to stringValue(), which holds from now on that used to be here. (WebCore::AccessibilityMenuListOption::stringValue): New, override of AccessibilityObject::stringValue() to return a proper string. Emit the missing signals when a selection is made. * accessibility/gtk/AXObjectCacheAtk.cpp: (WebCore::AXObjectCache::postPlatformNotification): Emit the usual 'focus' signals when a selection is made over the combo box. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: (setAtkStateSetFromCoreObject): Ensure the EXPANDABLE and EXPANDED Atk states are added to the state set when needed. (listObjectForSelection): New, returns the proper list object (the one holding the list of available options as its children) for an specific AtkObject implementing AtkSelection. This is needed because sometimes the selectable options are not directly children of the AtkSelection object (i.e. a combo box has a 'menu' object as its only child of it, holding the list of options as children). (optionFromList): Use listObjectForSelection() to get the actual object holding the list of children as the available options. (optionFromSelection): Add support for combo boxes. (webkit_accessible_selection_add_selection): Ditto. (webkit_accessible_selection_clear_selection): Ditto. (webkit_accessible_selection_get_selection_count): Ditto. (webkit_accessible_selection_is_child_selected): Ditto. (webkit_accessible_selection_remove_selection): Ditto. (webkit_accessible_text_get_text): Makes sure stringValue() is considered to get the result substring when it was already considered when checking the maximum text length for the object. (getInterfaceMaskFromObject): Make sure the AtkSelection interface is implemented for the combo boxes, that the AtkText is implemented for the menu items and that the AtkAction interface is now implemented for every object (WebCore will decide what to do). Avoid a segfault crash when using this from unit tests. * platform/gtk/PopupMenuGtk.cpp: (WebCore::PopupMenuGtk::show): Make sure we got a valid GdkWindow before calling gdk_window_get_origin() over it. 2010-11-30 Andreas Kling Reviewed by Tor Arne Vestbø. [Qt] GraphicsContext: Avoid unnecessarily copying the painter's QTransform Stash the transform in a const reference (QPainter::transform() returns one) instead of making a copy in the shadow drawing parts of fillPath, strokePath and fillRect. * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::fillRect): 2010-11-30 Vangelis Kokkevis Reviewed by Simon Fraser. Provide more fine grained control to ports over when to turn on accelerated compositing. https://bugs.webkit.org/show_bug.cgi?id=49998 The RenderLayerCompositor now checks with the chrome client whether 3d transforms, video, plugins, canvas and animation require switching over to the composited path. Layers that overlap composited content will still turn into composited layers regardless of the setting. * css/MediaQueryEvaluator.cpp: (WebCore::transform_3dMediaFeatureEval): * page/ChromeClient.h: (WebCore::ChromeClient::allowedCompositingTriggers): * rendering/RenderLayer.cpp: (WebCore::RenderLayer::canRender3DTransforms): (WebCore::RenderLayer::updateTransform): (WebCore::RenderLayer::currentTransform): * rendering/RenderLayer.h: * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateLayerTransform): * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::RenderLayerCompositor): (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags): (WebCore::RenderLayerCompositor::canRender3DTransforms): (WebCore::RenderLayerCompositor::requiresCompositingLayer): (WebCore::RenderLayerCompositor::requiresCompositingForTransform): (WebCore::RenderLayerCompositor::requiresCompositingForVideo): (WebCore::RenderLayerCompositor::requiresCompositingForCanvas): (WebCore::RenderLayerCompositor::requiresCompositingForPlugin): (WebCore::RenderLayerCompositor::requiresCompositingForAnimation): * rendering/RenderLayerCompositor.h: 2010-11-30 Xan Lopez Reviewed by Martin Robinson. [GTK] Plug leak in SoupCache https://bugs.webkit.org/show_bug.cgi?id=50142 Free the cache file contents when we don't need them anymore. * platform/network/soup/cache/webkit/soup-cache.c: (webkit_soup_cache_load): 2010-11-30 Andras Becsi Reviewed by Csaba Osztrogonác. [Qt][V8] Make QtWebKit with V8 build on Linux. https://bugs.webkit.org/show_bug.cgi?id=50244 No new tests needed. * WebCore.pri: add missing idl file * WebCore.pro: enable Linux build * bindings/scripts/CodeGeneratorV8.pm: add missing headers * bindings/v8/ScriptControllerQt.cpp: fix instantiation (WebCore::ScriptController::qtScriptEngine): * bindings/v8/V8GCController.cpp: fix guard (WebCore::V8GCController::checkMemoryUsage): * inspector/CodeGeneratorInspector.pm: add missing header * loader/ResourceLoadScheduler.cpp: ditto * loader/cache/MemoryCache.cpp: ditto * loader/loader.cpp: ditto 2010-11-30 David Hyatt Reviewed by Simon Fraser. https://bugs.webkit.org/show_bug.cgi?id=50183 Code got commented out by accident during render tree refactoring last year. Put the code back in, since it hurts performance to have that line commented out. In order to put this code back in, I had to fix some bugs with preferred width computations and overflow: scroll. Make the pref widths computation create the scrollbar if it doesn't exist yet. Make sure the scrollbar size is included prior to checking for defined width/min-width/max-width values. Otherwise the scrollbar inflates the width beyond the fixed size that was specified. For table cells, there is an additional wrinkle. Make sure not to include the scrollbar size as part of the minimum intrinsic width so that we don't incorrectly grow. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutPositionedObjects): (WebCore::RenderBlock::computePreferredLogicalWidths): * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::computePreferredLogicalWidths): 2010-11-30 Vitaly Repeshko Unreviewed. Attempt to fix windows debug chromium build. * html/TimeInputType.cpp: Added include providing isfinite. 2010-11-30 Darin Adler Reviewed by Jon Honeycutt. DOM binding code generator scripts import unused File::stat Perl module https://bugs.webkit.org/show_bug.cgi?id=50250 * bindings/scripts/CodeGeneratorCPP.pm: Removed "using File::stat". * bindings/scripts/CodeGeneratorJS.pm: Ditto. * bindings/scripts/CodeGeneratorObjC.pm: Ditto. * bindings/scripts/CodeGeneratorV8.pm: Ditto. 2010-11-30 Pavel Feldman Reviewed by Yury Semikhatsky. Web Inspector: implement "Revert to this revision" in resources panel. https://bugs.webkit.org/show_bug.cgi?id=50107 * inspector/Inspector.idl: * inspector/InspectorCSSAgent.cpp: (WebCore::InspectorCSSAgent::setStyleSheetText2): * inspector/InspectorCSSAgent.h: * inspector/InspectorStyleSheet.cpp: (WebCore::InspectorStyleSheet::reparseStyleSheet): * inspector/front-end/CSSStyleModel.js: (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback): (WebInspector.CSSStyleModel.prototype._styleSheetChanged): (WebInspector.CSSStyleModel.prototype._onRevert): * inspector/front-end/Resource.js: (WebInspector.Resource.prototype.get contentTimestamp): (WebInspector.Resource.prototype.setInitialContent): (WebInspector.Resource.prototype.isLocallyModified): (WebInspector.Resource.prototype.setContent.else.finished): (WebInspector.Resource.prototype.setContent): (WebInspector.Resource.prototype.revertToThis.callback): (WebInspector.Resource.prototype.revertToThis): (WebInspector.Resource.prototype.get baseRevision): (WebInspector.Resource.prototype._innerRequestContent): * inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype._showResourceView): (WebInspector.FrameResourceTreeElement.prototype._contentChanged): (WebInspector.ResourceRevisionTreeElement): (WebInspector.ResourceRevisionTreeElement.prototype.onattach): (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart): (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent): * inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback): (WebInspector.ScriptsPanel.prototype.editScriptSource): * inspector/front-end/SourceView.js: (WebInspector.SourceView.prototype._editLine): (WebInspector.SourceView.prototype._editLineComplete): (WebInspector.SourceView.prototype._revertEditLine): 2010-11-30 Adam Roben Clean up WebCore.vcproj's bindings filter I added files that we compile (via an all-in-one file) but weren't in the .vcproj, removed files that no longer exist, and added the scripts we use. Fixes WebCore.vcproj's bindings filter is out-of-date Reviewed by Darin Adler. * WebCore.vcproj/WebCore.vcproj: 2010-11-30 Adam Roben Move JSIDB* files to the DerivedSources filter This correctly reflects their location on disk. (They were formerly listed under bindings/js.) * WebCore.vcproj/WebCore.vcproj: 2010-11-30 Xiaomei Ji Reviewed by David Hyatt. Remove clampNegativeToZero in adjustScrollPositionWithinRange. https://bugs.webkit.org/show_bug.cgi?id=50203 * platform/ScrollView.cpp: (WebCore::ScrollView::adjustScrollPositionWithinRange): 2010-11-30 Adam Roben Remove duplicate files from WebCore.vcproj Rubber-stamped by Steve Falkenburg. * WebCore.vcproj/WebCore.vcproj: 2010-11-30 Adam Roben Let VS do its thang with WebCore.vcproj I just removed and readded AnimationBase.cpp. Rubber-stamped by Steve Falkenburg. * WebCore.vcproj/WebCore.vcproj: 2010-11-30 Mario Sanchez Prada Reviewed by Chris Fleizach. ASSERT failing for combo boxes when selection changes https://bugs.webkit.org/show_bug.cgi?id=50062 Don't call listBoxOnChange for elements using menu lists. Test: fast/forms/select-option-accesskey-crash.html * dom/SelectElement.cpp: (WebCore::SelectElement::accessKeySetSelectedIndex): Extra check to decide whether to call menuListOnChange() or listBoxOnChange() instead of always calling listBoxOnChange(). 2010-11-30 Andreas Kling Reviewed by Dirk Schulze. GraphicsContext: Remove "current path" and have strokePath, fillPath and clipPath take a Path argument. https://bugs.webkit.org/show_bug.cgi?id=48516 No new tests, this is refactoring only. fillPath() -> fillPath(const Path&) strokePath() -> strokePath(const Path&) clipPath(WindRule) -> clipPath(const Path&, WindRule) drawPath() was only used by CG, so made it PLATFORM(CG) specific. The Qt, CG and Cairo implementations are best-effort. For the rest, I've put beginPath/addPath and FIXMEs in the three affected methods. * WebCore.exp.in: * html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::fill): (WebCore::CanvasRenderingContext2D::stroke): * inspector/InspectorController.cpp: (WebCore::drawOutlinedQuad): * mathml/RenderMathMLRoot.cpp: (WebCore::RenderMathMLRoot::paint): * mathml/RenderMathMLSquareRoot.cpp: (WebCore::RenderMathMLSquareRoot::paint): * platform/graphics/GraphicsContext.h: * platform/graphics/GraphicsContextPrivate.h: * platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::clipPath): * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: * platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawEllipse): (WebCore::addConvexPolygonToPath): (WebCore::GraphicsContext::drawConvexPolygon): (WebCore::GraphicsContext::clipConvexPolygon): (WebCore::GraphicsContext::drawPath): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::fillRoundedRect): (WebCore::GraphicsContext::clipPath): * platform/graphics/haiku/GraphicsContextHaiku.cpp: (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::fillPath): * platform/graphics/openvg/GraphicsContextOpenVG.cpp: (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::clipPath): * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::restorePlatformState): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::clipPath): (WebCore::GraphicsContext::strokeRect): (WebCore::GraphicsContext::translate): (WebCore::GraphicsContext::rotate): (WebCore::GraphicsContext::scale): (WebCore::GraphicsContext::concatCTM): * platform/graphics/skia/GraphicsContextSkia.cpp: (WebCore::GraphicsContext::clipPath): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): * platform/graphics/wince/GraphicsContextWinCE.cpp: (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::clipPath): * platform/graphics/wx/GraphicsContextWx.cpp: (WebCore::GraphicsContext::clipPath): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::paintBorder): (WebCore::RenderBoxModelObject::paintBoxShadow): * rendering/RenderEmbeddedObject.cpp: (WebCore::RenderEmbeddedObject::paintReplaced): * rendering/RenderObject.cpp: (WebCore::RenderObject::drawBoxSideFromPath): * rendering/RenderSVGResource.h: (WebCore::RenderSVGResource::postApplyResource): * rendering/RenderSVGResourceClipper.cpp: (WebCore::RenderSVGResourceClipper::pathOnlyClipping): * rendering/RenderSVGResourceFilter.cpp: (WebCore::RenderSVGResourceFilter::postApplyResource): * rendering/RenderSVGResourceFilter.h: * rendering/RenderSVGResourceGradient.cpp: (WebCore::RenderSVGResourceGradient::applyResource): * rendering/RenderSVGResourceGradient.h: * rendering/RenderSVGResourcePattern.cpp: (WebCore::RenderSVGResourcePattern::postApplyResource): * rendering/RenderSVGResourcePattern.h: * rendering/RenderSVGResourceSolidColor.cpp: (WebCore::RenderSVGResourceSolidColor::postApplyResource): * rendering/RenderSVGResourceSolidColor.h: * rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderSupport::finishRenderSVGContent): * rendering/svg/RenderSVGPath.cpp: (WebCore::RenderSVGPath::fillAndStrokePath): * rendering/svg/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::releasePaintingResource): (WebCore::SVGInlineTextBox::restoreGraphicsContextAfterTextPainting): (WebCore::SVGInlineTextBox::paintDecorationWithStyle): * rendering/svg/SVGInlineTextBox.h: * svg/SVGFont.cpp: (WebCore::Font::drawTextUsingSVGFont): 2010-11-30 Alexey Proskuryakov Reviewed by Darin Adler and Geoff Garen. https://bugs.webkit.org/show_bug.cgi?id=44152 CSSOM should match DOM in discarding wrapper-less parents. We have existing behaviors where parent objects in detached subtrees are not preserved: - if a root of a node tree doesn't have a wrapper, it's immediately destroyed, making its children parentNode attribute null; - relationship between a