2010-09-29 Philippe Normand Reviewed by Gustavo Noronha Silva. build still broken since r68521 https://bugs.webkit.org/show_bug.cgi?id=46795 Call make-values.pl once only. It seems calling it multiple times in the same build produces a wrong CSSValueKeywordsHash.h which has a duplicate declaration of its valueList variable. The double call is triggered by the double targets in the Makefile rules and makevalues.pl generates one of them, which screws up the build. A more proper fix should be done with the advices on http://www.cmcrossroads.com/cm-basics/12905-rules-with-multiple-outputs-in-gnu-make * GNUmakefile.am: 2010-09-29 João Paulo Rechi Vita Unreviewed build fix. Fix CMake build for ENABLE_PROGRESS_TAG. https://bugs.webkit.org/show_bug.cgi?id=46808 No new tests since it's a build fix. * CMakeLists.txt: 2010-09-29 Yury Semikhatsky Reviewed by Pavel Feldman. [v8] Use generic mechanism to report exceptions in V8CustomVoidCallback https://bugs.webkit.org/show_bug.cgi?id=46803 No new tests. It's covered by existing tests under LayoutTests/storage * bindings/v8/custom/V8CustomVoidCallback.cpp: (WebCore::invokeCallback): 2010-09-29 Satish Sampath Reviewed by Jeremy Orlow. Rename the input element's @speech attribute to @webkitspeech since it is still experimental. https://bugs.webkit.org/show_bug.cgi?id=46799 * bindings/generic/RuntimeEnabledFeatures.h: (WebCore::RuntimeEnabledFeatures::webkitspeechEnabled): Rename the runtime feature flag getter. * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): * css/CSSValueKeywords.in: Rename the css style name. * css/html.css: Rename the css style name. (input::-webkit-input-speech-button): * html/HTMLAttributeNames.in: Rename the @speech attribute. * html/HTMLInputElement.cpp: Update code using the attribute. (WebCore::HTMLInputElement::parseMappedAttribute): (WebCore::HTMLInputElement::isSpeechEnabled): * html/HTMLInputElement.idl: Rename the @speech attribute. 2010-09-29 MORITA Hajime [Chromium] failed to build without ACCELERATED_COMPOSITING https://bugs.webkit.org/show_bug.cgi?id=46793 Moved constant definitions from inside ACCELERATED_COMPOSITING to outside of the condition. * WebCore.gypi: * platform/graphics/chromium/VideoFrameChromium.cpp: Added just for defining constants. * platform/graphics/chromium/VideoLayerChromium.cpp: 2010-09-28 Pavel Feldman Reviewed by Timothy Hatcher. Web Inspector: [Resources panel] Need more visible "at a glance". https://bugs.webkit.org/show_bug.cgi?id=45657 * WebCore.gypi: * WebCore.vcproj/WebCore.vcproj: * inspector/front-end/DataGrid.js: (WebInspector.DataGrid): (WebInspector.DataGrid.prototype.updateWidths): (WebInspector.DataGrid.prototype.sortNodes): (WebInspector.DataGrid.prototype._resizerDragging): (WebInspector.DataGrid.prototype._endResizerDragging): (WebInspector.DataGridNode.prototype.selectable.true.get element): (WebInspector.DataGridNode.prototype.createCells): (WebInspector.DataGridNode.prototype.refresh): * inspector/front-end/Images/networkIcon.png: Copied from WebCore/inspector/front-end/Images/resourcesIcon.png. * inspector/front-end/NetworkPanel.js: Added. * inspector/front-end/Settings.js: * inspector/front-end/WebKit.qrc: * inspector/front-end/inspector.css: (.toolbar-item.network .toolbar-icon): (.data-grid .data-container): * inspector/front-end/inspector.html: * inspector/front-end/inspector.js: (WebInspector._createPanels): (WebInspector.updateResource): * inspector/front-end/networkPanel.css: Added. 2010-09-28 Ilya Tikhonovsky Reviewed by Yury Semikhatsky. Web Inspector: move pauseOnExceptionState under control of InspectorState It is Inspector Protocol cleanup activity. The actual state of this flag can be obtained as a return value of setPauseOnExceptionState command or as a value in InspectorState object. https://bugs.webkit.org/show_bug.cgi?id=46724 * inspector/Inspector.idl: * inspector/InspectorController.cpp: (WebCore::InspectorController::getInspectorState): (WebCore::InspectorController::populateScriptObjects): * inspector/InspectorDebuggerAgent.cpp: (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState): (WebCore::InspectorDebuggerAgent::pauseOnExceptionsState): * inspector/InspectorDebuggerAgent.h: * inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype._togglePauseOnExceptions): * inspector/front-end/inspector.js: (WebInspector.doLoadedDone.populateInspectorState): (WebInspector.doLoadedDone): (WebInspector.reportProtocolError): 2010-09-28 Philippe Normand Reviewed by Martin Robinson. check USE(GSTREAMER) instead of ENABLE(VIDEO) in gstreamer/ files https://bugs.webkit.org/show_bug.cgi?id=46717 Guard the gstreamer/ files with USE(GSTREAMER), which is more explicit than ENABLE(VIDEO). * GNUmakefile.am: Define WTF_USE_GSTREAMER only if GStreamer support is enabled. * platform/graphics/gstreamer/DataSourceGStreamer.cpp: * platform/graphics/gstreamer/DataSourceGStreamer.h: * platform/graphics/gstreamer/GOwnPtrGStreamer.cpp: * platform/graphics/gstreamer/GOwnPtrGStreamer.h: * platform/graphics/gstreamer/GStreamerGWorld.cpp: * platform/graphics/gstreamer/GStreamerGWorld.h: * platform/graphics/gstreamer/ImageGStreamer.h: * platform/graphics/gstreamer/ImageGStreamerCG.mm: * platform/graphics/gstreamer/ImageGStreamerCairo.cpp: * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: * platform/graphics/gstreamer/PlatformVideoWindow.h: * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp: * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: * platform/graphics/gstreamer/VideoSinkGStreamer.cpp: * platform/graphics/gstreamer/VideoSinkGStreamer.h: * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: * platform/graphics/gstreamer/WebKitWebSourceGStreamer.h: 2010-09-28 Kent Tamura Unreviewed, windows build fix for r68629. * WebCore.vcproj/WebCore.vcproj: Add TimeInputType.{cpp,h} 2010-09-28 Johnny Ding Reviewed by Adam Barth. https://bugs.webkit.org/show_bug.cgi?id=41292 Pass the right popupAllowed flag to current execution frame, so WebKit can get right gesture status for popups initiated from plugins. This also makes v8 binding's ScriptController::processingUserGesture match what jsc version. Test: plugins/plugin-initiate-popup-window.html * bindings/v8/NPV8Object.cpp: (_NPN_EvaluateHelper): * bindings/v8/ScriptController.cpp: (WebCore::ScriptController::ScriptController): (WebCore::ScriptController::processingUserGesture): * bindings/v8/ScriptController.h: (WebCore::ScriptController::setAllowPopupsFromPlugin): (WebCore::ScriptController::allowPopupsFromPlugin): 2010-09-28 Kent Tamura Reviewed by Darin Adler. Refactor HTMLInputElement: Introducing InputType class and classes for each input element types. https://bugs.webkit.org/show_bug.cgi?id=45872 No new tests because this doesn't change any behavior. * Android.mk: Add new files. * CMakeLists.txt: ditto. * GNUmakefile.am: ditto. * WebCore.gypi: ditto. * WebCore.pro: ditto. * WebCore.vcproj/WebCore.vcproj: ditto. * WebCore.xcodeproj/project.pbxproj: ditto. * html/BaseTextInputType.cpp: Added. (WebCore::BaseTextInputType::isTextType): (WebCore::BaseTextInputType::patternMismatch): * html/BaseTextInputType.h: Added. (WebCore::BaseTextInputType::BaseTextInputType): * html/ButtonInputType.cpp: Added. (WebCore::ButtonInputType::create): (WebCore::ButtonInputType::formControlType): * html/ButtonInputType.h: Added. (WebCore::ButtonInputType::ButtonInputType): * html/CheckboxInputType.cpp: Added. (WebCore::CheckboxInputType::create): (WebCore::CheckboxInputType::formControlType): * html/CheckboxInputType.h: Added. (WebCore::CheckboxInputType::CheckboxInputType): * html/ColorInputType.cpp: Added. (WebCore::ColorInputType::create): (WebCore::ColorInputType::formControlType): * html/ColorInputType.h: Added. (WebCore::ColorInputType::ColorInputType): * html/DateInputType.cpp: Added. (WebCore::DateInputType::create): (WebCore::DateInputType::formControlType): * html/DateInputType.h: Added. (WebCore::DateInputType::DateInputType): * html/DateTimeInputType.cpp: Added. (WebCore::DateTimeInputType::create): (WebCore::DateTimeInputType::formControlType): * html/DateTimeInputType.h: Added. (WebCore::DateTimeInputType::DateTimeInputType): * html/DateTimeLocalInputType.cpp: Added. (WebCore::DateTimeLocalInputType::create): (WebCore::DateTimeLocalInputType::formControlType): * html/DateTimeLocalInputType.h: Added. (WebCore::DateTimeLocalInputType::DateTimeLocalInputType): * html/EmailInputType.cpp: Added. (WebCore::EmailInputType::create): (WebCore::EmailInputType::formControlType): * html/EmailInputType.h: Added. (WebCore::EmailInputType::EmailInputType): * html/FileInputType.cpp: Added. (WebCore::FileInputType::create): (WebCore::FileInputType::formControlType): * html/FileInputType.h: Added. (WebCore::FileInputType::FileInputType): * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::HTMLInputElement): Initialize m_inputType. (WebCore::HTMLInputElement::patternMismatch): Delegate to InputType. (WebCore::HTMLInputElement::updateType): Update m_inputType with new type. (WebCore::HTMLInputElement::formControlType): Delegate to InputType. (WebCore::HTMLInputElement::isTextField): ditto. (WebCore::HTMLInputElement::isTextType): ditto. * html/HTMLInputElement.h: * html/HiddenInputType.cpp: Added. (WebCore::HiddenInputType::create): (WebCore::HiddenInputType::formControlType): * html/HiddenInputType.h: Added. (WebCore::HiddenInputType::HiddenInputType): * html/ImageInputType.cpp: Added. (WebCore::ImageInputType::create): (WebCore::ImageInputType::formControlType): * html/ImageInputType.h: Added. (WebCore::ImageInputType::ImageInputType): * html/InputType.cpp: Added. (WebCore::createInputTypeFactoryMap): (WebCore::InputType::create): (WebCore::InputType::createText): (WebCore::InputType::~InputType): (WebCore::InputType::isTextField): (WebCore::InputType::isTextType): (WebCore::InputType::patternMismatch): (WebCore::InputTypeNames::button): (WebCore::InputTypeNames::checkbox): (WebCore::InputTypeNames::color): (WebCore::InputTypeNames::date): (WebCore::InputTypeNames::datetime): (WebCore::InputTypeNames::datetimelocal): (WebCore::InputTypeNames::email): (WebCore::InputTypeNames::file): (WebCore::InputTypeNames::hidden): (WebCore::InputTypeNames::image): (WebCore::InputTypeNames::isindex): (WebCore::InputTypeNames::month): (WebCore::InputTypeNames::number): (WebCore::InputTypeNames::password): (WebCore::InputTypeNames::radio): (WebCore::InputTypeNames::range): (WebCore::InputTypeNames::reset): (WebCore::InputTypeNames::search): (WebCore::InputTypeNames::submit): (WebCore::InputTypeNames::telephone): (WebCore::InputTypeNames::text): (WebCore::InputTypeNames::time): (WebCore::InputTypeNames::url): (WebCore::InputTypeNames::week): * html/InputType.h: Added. (WebCore::InputType::InputType): (WebCore::InputType::element): * html/IsIndexInputType.cpp: Added. (WebCore::IsIndexInputType::create): (WebCore::IsIndexInputType::formControlType): * html/IsIndexInputType.h: Added. (WebCore::IsIndexInputType::IsIndexInputType): * html/MonthInputType.cpp: Added. (WebCore::MonthInputType::create): (WebCore::MonthInputType::formControlType): * html/MonthInputType.h: Added. (WebCore::MonthInputType::MonthInputType): * html/NumberInputType.cpp: Added. (WebCore::NumberInputType::create): (WebCore::NumberInputType::formControlType): * html/NumberInputType.h: Added. (WebCore::NumberInputType::NumberInputType): * html/PasswordInputType.cpp: Added. (WebCore::PasswordInputType::create): (WebCore::PasswordInputType::formControlType): * html/PasswordInputType.h: Added. (WebCore::PasswordInputType::PasswordInputType): * html/RadioInputType.cpp: Added. (WebCore::RadioInputType::create): (WebCore::RadioInputType::formControlType): * html/RadioInputType.h: Added. (WebCore::RadioInputType::RadioInputType): * html/RangeInputType.cpp: Added. (WebCore::RangeInputType::create): (WebCore::RangeInputType::formControlType): * html/RangeInputType.h: Added. (WebCore::RangeInputType::RangeInputType): * html/ResetInputType.cpp: Added. (WebCore::ResetInputType::create): (WebCore::ResetInputType::formControlType): * html/ResetInputType.h: Added. (WebCore::ResetInputType::ResetInputType): * html/SearchInputType.cpp: Added. (WebCore::SearchInputType::create): (WebCore::SearchInputType::formControlType): * html/SearchInputType.h: Added. (WebCore::SearchInputType::SearchInputType): * html/SubmitInputType.cpp: Added. (WebCore::SubmitInputType::create): (WebCore::SubmitInputType::formControlType): * html/SubmitInputType.h: Added. (WebCore::SubmitInputType::SubmitInputType): * html/TelephoneInputType.cpp: Added. (WebCore::TelephoneInputType::create): (WebCore::TelephoneInputType::formControlType): * html/TelephoneInputType.h: Added. (WebCore::TelephoneInputType::TelephoneInputType): * html/TextFieldInputType.cpp: Added. (WebCore::TextFieldInputType::isTextField): * html/TextFieldInputType.h: Added. (WebCore::TextFieldInputType::TextFieldInputType): * html/TextInputType.cpp: Added. (WebCore::TextInputType::create): (WebCore::TextInputType::formControlType): * html/TextInputType.h: Added. (WebCore::TextInputType::TextInputType): * html/TimeInputType.cpp: Added. (WebCore::TimeInputType::create): (WebCore::TimeInputType::formControlType): * html/TimeInputType.h: Added. (WebCore::TimeInputType::TimeInputType): * html/URLInputType.cpp: Added. (WebCore::URLInputType::create): (WebCore::URLInputType::formControlType): * html/URLInputType.h: Added. (WebCore::URLInputType::URLInputType): * html/WeekInputType.cpp: Added. (WebCore::WeekInputType::create): (WebCore::WeekInputType::formControlType): * html/WeekInputType.h: Added. (WebCore::WeekInputType::WeekInputType): 2010-09-28 David Hyatt Reviewed by Maciej Stachowiak. https://bugs.webkit.org/show_bug.cgi?id=46782, rename the top and bottom margin quirk getters/setters. Also do a bit of cleanup for block flow roots. Make sure they don't try to propagate overhanging floats out to ancestors. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock): (WebCore::RenderBlock::collapseMargins): (WebCore::RenderBlock::setCollapsedBottomMargin): (WebCore::RenderBlock::addOverhangingFloats): * rendering/RenderObject.cpp: (WebCore::RenderObject::RenderObject): * rendering/RenderObject.h: (WebCore::RenderObject::isMarginBeforeQuirk): (WebCore::RenderObject::isMarginAfterQuirk): (WebCore::RenderObject::setMarginBeforeQuirk): (WebCore::RenderObject::setMarginAfterQuirk): 2010-09-28 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46780 Rename the pos/neg/collapsed margin methods. Rename all the members of the RenderBlockRareData struct. No logical changes. Just renames. * editing/TextIterator.cpp: (WebCore::shouldEmitExtraNewlineForNode): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::MarginInfo::MarginInfo): (WebCore::RenderBlock::layoutBlock): (WebCore::RenderBlock::collapseMargins): (WebCore::RenderBlock::clearFloatsIfNeeded): (WebCore::RenderBlock::estimateVerticalPosition): (WebCore::RenderBlock::setCollapsedBottomMargin): (WebCore::RenderBlock::layoutBlockChild): (WebCore::RenderBlock::paintChildren): (WebCore::RenderBlock::lowestPosition): (WebCore::RenderBlock::setMaxMarginBeforeValues): (WebCore::RenderBlock::setMaxMarginAfterValues): (WebCore::RenderBlock::absoluteRects): (WebCore::RenderBlock::absoluteQuads): (WebCore::RenderBlock::rectWithOutlineForRepaint): (WebCore::RenderBlock::addFocusRingRects): * rendering/RenderBlock.h: (WebCore::RenderBlock::maxPosMarginBefore): (WebCore::RenderBlock::maxNegMarginBefore): (WebCore::RenderBlock::maxPosMarginAfter): (WebCore::RenderBlock::maxNegMarginAfter): (WebCore::RenderBlock::initMaxMarginValues): (WebCore::RenderBlock::maxMarginBefore): (WebCore::RenderBlock::maxMarginAfter): (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData): (WebCore::RenderBlock::RenderBlockRareData::beforePosDefault): (WebCore::RenderBlock::RenderBlockRareData::beforeNegDefault): (WebCore::RenderBlock::RenderBlockRareData::afterPosDefault): (WebCore::RenderBlock::RenderBlockRareData::afterNegDefault): * rendering/RenderBox.cpp: (WebCore::RenderBox::computeLogicalHeight): * rendering/RenderBox.h: (WebCore::RenderBox::collapsedMarginBefore): (WebCore::RenderBox::collapsedMarginAfter): (WebCore::RenderBox::maxMarginBefore): (WebCore::RenderBox::maxMarginAfter): * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutBlock): 2010-09-28 Kevin Ollivier [wx] wxMSW build fix. Don't use multiple inheritance in PopupMenuWx to avoid debug build compiler error about ambiguity over which new override (wx's or FastAllocBase's) to use. * platform/wx/PopupMenuWx.cpp: (WebCore::PopupMenuEventHandler::PopupMenuEventHandler): (WebCore::PopupMenuEventHandler::OnMenuItemSelected): (WebCore::PopupMenuWx::PopupMenuWx): (WebCore::PopupMenuWx::show): * platform/wx/PopupMenuWx.h: 2010-09-28 Xiaomei Ji Reviewed by NOBODY (revert unsquashed git commits) Revert change sets 68583 to 68590, which are un-squashed git-commits: Performance improvement for FontLinux regarding issue 46374. https://bugs.webkit.org/show_bug.cgi?id=46374 2010-09-28 Marc-Antoine Ruel Reviewed by Tony Chang. Split webcore_html off webcore_remaining. webcore_remaining is still too large for certain 32 bits toolsets. https://bugs.webkit.org/show_bug.cgi?id=46445 * WebCore.gyp/WebCore.gyp: 2010-09-28 Jia Pu Reviewed by Dan Bernstein. Delete and forward delete shouldn't start autocorrection panel timer. https://bugs.webkit.org/show_bug.cgi?id=46679 * editing/TypingCommand.cpp: (WebCore::TypingCommand::markMisspellingsAfterTyping): Only start correction panel timer when the editing command is InsertText. (WebCore::TypingCommand::typingAddedToOpenCommand): Add an argument to pass in command type. * editing/TypingCommand.h: Add an argument to typingAddedToOpenCommand(). 2010-09-28 Mihai Parparita Reviewed by Dimitri Glazkov. No back/forward list entry added when submitting a form via an onclick handler inside a frame https://bugs.webkit.org/show_bug.cgi?id=44140 Lock the back/forward list for JavaScript form submissions inside frames only if they're not in response to user gestures. Tests: fast/history/form-submit-in-frame-via-onclick.html fast/history/form-submit-in-frame.html * loader/RedirectScheduler.cpp: (WebCore::RedirectScheduler::scheduleFormSubmission): 2010-09-28 David Hyatt Reviewed by Sam Weinig. Fix typo in previous checkin. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::MarginInfo::MarginInfo): 2010-09-28 Nat Duca Reviewed by James Robinson. [chromium] invalidateRootLayerRect needs to schedule compositor https://bugs.webkit.org/show_bug.cgi?id=46219 Update comments on LayerChromium commit/display functions to clarify their limitations. Remove unused dirtying logic from LayerRendererChromium. * platform/graphics/chromium/LayerChromium.cpp: (WebCore::LayerChromium::setNeedsCommit): (WebCore::LayerChromium::setNeedsDisplay): * platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::LayerRendererChromium::LayerRendererChromium): (WebCore::LayerRendererChromium::present): * platform/graphics/chromium/LayerRendererChromium.h: 2010-09-28 Jenn Braithwaite Reviewed by Dmitry Titov. Added oldPage param to FrameLoaderClient::didTransferChildFrameToNewDocument. https://bugs.webkit.org/show_bug.cgi?id=46663 No new tests. API addition only. Will be used in separate patch. * loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::didTransferChildFrameToNewDocument): * loader/FrameLoaderClient.h: * page/Frame.cpp: (WebCore::Frame::transferChildFrameToNewDocument): Pass former page to didTransferChildFrameToNewDocument. 2010-09-28 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. Test: svg/custom/image-rescale.svg * platform/graphics/skia/ImageSkia.cpp: (WebCore::computeResamplingMode): (WebCore::drawResampledBitmap): 2010-09-28 James Robinson [chromium] Decrease warning level on chromium linux temporarily. This is causing failures on some bots * WebCore.gyp/WebCore.gyp: 2010-09-27 James Robinson Reviewed by Tony Chang. [chromium] Increase warning level for chromium linux build https://bugs.webkit.org/show_bug.cgi?id=46687 This sets the chromium_code gyp variable to 1 for the chromium linux WebCore build and fixes the warnings that exposes. This matches the chromium mac build's compiler settings more closely and should cut down on the number of patches that break mac but compile cleaning on linux. * WebCore.gyp/WebCore.gyp: * platform/chromium/ScrollbarThemeChromiumLinux.cpp: (WebCore::ScrollbarThemeChromiumLinux::paintButton): * platform/graphics/chromium/FontLinux.cpp: (WebCore::TextRunWalker::nextScriptRun): (WebCore::TextRunWalker::getTextRun): (WebCore::TextRunWalker::getNormalizedTextRun): (WebCore::TextRunWalker::setGlyphXPositions): (WebCore::glyphIndexForXPositionInScriptRun): (WebCore::Font::offsetForPositionForComplexText): (WebCore::Font::selectionRectForComplexText): * platform/graphics/chromium/HarfbuzzSkia.cpp: (WebCore::getOutlinePoint): * platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::LayerRendererChromium::updateRootLayerTextureRect): * platform/graphics/gpu/Texture.cpp: (WebCore::copySubRect): * platform/graphics/skia/PlatformContextSkia.cpp: (WebCore::PlatformContextSkia::readbackHardwareToSoftware): * platform/image-decoders/gif/GIFImageDecoder.cpp: (WebCore::GIFImageDecoder::setSize): * platform/image-decoders/gif/GIFImageDecoder.h: 2010-09-28 Stephen White Reviewed by Csaba Osztrogonác. Fix for r68521 to build on VS2008/Release. * html/DocTypeStrings.gperf: Don't emit "#include " here, since we're inside a namespace. * make-hash-tools.pl: Emit #include manually where required. * platform/ColorData.gperf: Don't emit "#include " here, since we're inside a namespace. 2010-09-28 David Hyatt Reviewed by Sam Weinig. Right now we have two properties named margin-top-collapse and margin-after-collapse. They are proprietary and only used by Safari RSS. I am adding margin-before-collapse and margin-after-collapse and just aliasing the old properties to the new ones. This way we have some names that are directionally independent. Note that these properties aren't like other directional properties. They are about what to do with the before side and after side of your block's margins when collapsing with adjacent blocks. The meaning of before/after depend on the block-flow directionality of the containing block. Computed style tests all changed and the remove-shorthand.html test covers manipulation of the shorthand. * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): * css/CSSPropertyLonghand.cpp: (WebCore::initShorthandMap): * css/CSSPropertyNames.in: * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::MarginInfo::MarginInfo): (WebCore::RenderBlock::isSelfCollapsingBlock): (WebCore::RenderBlock::collapseMargins): (WebCore::RenderBlock::layoutBlockChild): * rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::diff): * rendering/style/RenderStyle.h: (WebCore::InheritedFlags::marginBeforeCollapse): (WebCore::InheritedFlags::marginAfterCollapse): (WebCore::InheritedFlags::setMarginBeforeCollapse): (WebCore::InheritedFlags::setMarginAfterCollapse): (WebCore::InheritedFlags::initialMarginBeforeCollapse): (WebCore::InheritedFlags::initialMarginAfterCollapse): * rendering/style/StyleRareNonInheritedData.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==): * rendering/style/StyleRareNonInheritedData.h: 2010-09-28 Martin Robinson Reviewed by Gustavo Noronha Silva. [Cairo] FreeType fonts should obey FontConfig hinting/anti-aliasing settings https://bugs.webkit.org/show_bug.cgi?id=46740 When creating a font from a FontConfig pattern, use the FontConfig pattern's hinting and anti-aliasing settings. This follows the Chromium Linux approach of having FontConfig settings take precedence over GTK+ settings, as GTK+ settings cannot be configured per-font and per-font-size. Test: platform/gtk/fonts/fontconfig-aliasing-settings.html * platform/graphics/cairo/FontPlatformDataFreeType.cpp: (WebCore::convertFontConfigSubpixelOrder): Added this helper which converts the FontConfig subpixel order into the cairo equivalent. (WebCore::convertFontConfigHintStyle): Added this helper which converts the FontConfig hint style into the cairo equivalent. (WebCore::setCairoFontOptionsFromFontConfigPattern): Added this helper which reads the font rendering settings from a pattern and translates them into the appropriate cairo_font_options_t settings. (WebCore::FontPlatformData::FontPlatformData): When creating a font from a FontConfig pattern use setCairoFontOptionsFromFontConfigPattern to get the appropriate rendering options for the font. 2010-09-28 Sam Weinig Reviewed by Darin Adler and Dave Hyatt. Vertical scroll bar on apple.com is too short with WebKit2 https://bugs.webkit.org/show_bug.cgi?id=46739 Adds a function to recalculate the scrollbars to take advantage of a changed window re-sizer rect. * WebCore.exp.in: * platform/ScrollView.cpp: (WebCore::ScrollView::windowResizerRectChanged): * platform/ScrollView.h: 2010-09-28 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46750 Rename the MarginInfo members and functions to be block-flow independent. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::MarginInfo::MarginInfo): (WebCore::RenderBlock::adjustPositionedBlock): (WebCore::RenderBlock::adjustFloatingBlock): (WebCore::RenderBlock::collapseMargins): (WebCore::RenderBlock::clearFloatsIfNeeded): (WebCore::RenderBlock::estimateVerticalPosition): (WebCore::RenderBlock::setCollapsedBottomMargin): (WebCore::RenderBlock::handleBottomOfBlock): (WebCore::RenderBlock::layoutBlockChild): (WebCore::RenderBlock::applyAfterBreak): * rendering/RenderBlock.h: (WebCore::RenderBlock::MarginInfo::setAtBeforeSideOfBlock): (WebCore::RenderBlock::MarginInfo::setAtAfterSideOfBlock): (WebCore::RenderBlock::MarginInfo::setMarginBeforeQuirk): (WebCore::RenderBlock::MarginInfo::setMarginAfterQuirk): (WebCore::RenderBlock::MarginInfo::setDeterminedMarginBeforeQuirk): (WebCore::RenderBlock::MarginInfo::atBeforeSideOfBlock): (WebCore::RenderBlock::MarginInfo::canCollapseWithMarginBefore): (WebCore::RenderBlock::MarginInfo::canCollapseWithMarginAfter): (WebCore::RenderBlock::MarginInfo::canCollapseMarginBeforeWithChildren): (WebCore::RenderBlock::MarginInfo::canCollapseMarginAfterWithChildren): (WebCore::RenderBlock::MarginInfo::determinedMarginBeforeQuirk): (WebCore::RenderBlock::MarginInfo::marginBeforeQuirk): (WebCore::RenderBlock::MarginInfo::marginAfterQuirk): 2010-09-28 Dan Bernstein Reviewed by Darin Adler. Improved the handling of soft hyphens in Copy and Find operations, addressing the following bugs: Soft hyphenation and the clipboard https://bugs.webkit.org/show_bug.cgi?id=11154 window.getSelection().toString() breaks soft hyphen ­ https://bugs.webkit.org/show_bug.cgi?id=26774 soft hyphen breaks search function https://bugs.webkit.org/show_bug.cgi?id=16675 Test: fast/text/find-soft-hyphen.html Changed line layout code to not skip over soft hyphens but rather include them in the text boxes. Changed font code to render the soft hyphen character as a zero width space, so that the former change will not affect rendering of soft hyphens in the middle of the line. Also changed line layout code to mark text boxes where hyphenation occurred due to a soft hyphen as hyphenated, so that the hyphen string specified in CSS will be appended to them. Not omitting the soft hyphens from the text boxes makes the text iterator emit them, which solves the Copy and plain-text conversion issues. Previously, the iterator would emit a space to account for non-rendered characters between adjacent boxes, which was wrong in this case. To make Find work, soft hyphens are folded into 0, which is ignorable in the collation used for Find. * editing/TextIterator.cpp: (WebCore::foldQuoteMarkOrSoftHyphen): Renamed foldQuoteMark() to this and added folding of soft hyphen to 0. (WebCore::foldQuoteMarksAndSoftHyphens): Renamed foldQuoteMarks() to thid and added folding of soft hyphen to 0. (WebCore::SearchBuffer::SearchBuffer): Updated for renames. (WebCore::SearchBuffer::append): Ditto. * platform/graphics/Font.h: (WebCore::Font::treatAsSpace): Replaced number literal with name. (WebCore::Font::treatAsZeroWidthSpace): Added softHyphen. * platform/graphics/GlyphPageTreeNode.cpp: (WebCore::GlyphPageTreeNode::initializePage): Get the zero width space glyph for soft hyphen. * platform/graphics/mac/ComplexTextController.cpp: (WebCore::ComplexTextController::collectComplexTextRuns): Removed special handling that made a trailing soft hyphen render as hyphen-minus. All soft hyphens are now rendered as zero width spaces, and where a line break actually occurs at a soft hyphen, rendering code appends the CSS-specified hyphenate character to the text run that is passed to us here. * rendering/RenderBlockLineLayout.cpp: (WebCore::chopMidpointsAt): Removed this function, which was only used for skipping over soft hyphens. (WebCore::checkMidpoints): Removed code related to skipping over soft hyphens. (WebCore::RenderBlock::findNextLineBreak): Removed code to skip over soft hyphens. Ignore a line break opportunity at a soft hyphen if the style specifies 'hyphens: none'. Set 'hyphenated' to true if a line break occurs at a soft hyphen. * rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::hyphenString): Changed the assertion to allow querying for the hyphen string for 'hyphens: manual'. 2010-09-28 Martin Robinson More GTK+ build fixes after r68521. * GNUmakefile.am: Added proper dependency tracking for some new autogenerated files. 2010-09-28 Andreas Kling Reviewed by Kenneth Rohde Christiansen. [Qt] Text drawing taints GraphicsContext's QPainter::pen() https://bugs.webkit.org/show_bug.cgi?id=46744 Test: fast/canvas/canvas-style-intact-after-text.html * platform/graphics/qt/FontQt.cpp: (WebCore::drawTextCommon): Make sure the QPainter's pen is restored after filling and/or stroking text. 2010-09-28 Jia Pu Reviewed by Dan Bernstein. Autocorrection panel is shown at incorrect location when WebView is scrolled. https://bugs.webkit.org/show_bug.cgi?id=46531 * dom/Range.h: Make getBorderAndTextQuads() public so that it can be used by Editor. * editing/Editor.cpp: (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Replaced call to textQuads() with getBorderAndTextQuads(). 2010-09-28 Andrei Popescu Reviewed by Jeremy Orlow. IDBRequest should not have a method called abort. https://bugs.webkit.org/show_bug.cgi?id=46720 IDBRequest::abort() was dropped from the spec following discussion in http://www.w3.org/Bugs/Public/show_bug.cgi?id=10165 * storage/IDBRequest.cpp: (WebCore::IDBRequest::IDBRequest): (WebCore::IDBRequest::~IDBRequest): (WebCore::IDBRequest::resetReadyState): (WebCore::IDBRequest::timerFired): (WebCore::IDBRequest::scheduleEvent): * storage/IDBRequest.h: * storage/IDBRequest.idl: 2010-09-28 Chris Fleizach Reviewed by Beth Dakin. CrashTracer: 1,382 crashes in Safari at com.apple.WebCore: WebCore::VisiblePosition::canonicalPosition + 78 https://bugs.webkit.org/show_bug.cgi?id=45927 AXTextMarkers store pointers to Nodes without any retain or reference. If a Node is deallocated and then a client tries to use a text marker that references that node, it leads to this crash. The AXObjectCache instance now keeps a HashSet of Node's being used. When a node becomes deallocated, it removes itself from the HashSet. When creating a VisiblePosition from an AXTextMarker, the cache can then check if the node is valid before proceeding. Test: platform/mac/accessibility/crash-invalid-text-marker-node.html * accessibility/AXObjectCache.cpp: (WebCore::AXObjectCache::visiblePositionForTextMarkerData): (WebCore::AXObjectCache::textMarkerDataForVisiblePosition): Modify to check whether a node is valid before proceeeding. * accessibility/AXObjectCache.h: (WebCore::AXObjectCache::setNodeInUse): (WebCore::AXObjectCache::removeNodeForUse): (WebCore::AXObjectCache::isNodeInUse): Methods for managing whether a node is in use by text markers. * accessibility/mac/AccessibilityObjectWrapper.mm: (textMarkerForVisiblePosition): (-[AccessibilityObjectWrapper textMarkerForVisiblePosition:]): (visiblePositionForTextMarker): (-[AccessibilityObjectWrapper visiblePositionForTextMarker:]): (visiblePositionForStartOfTextMarkerRange): (visiblePositionForEndOfTextMarkerRange): (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]): (textMarkerRangeFromVisiblePositions): (-[AccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]): (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]): (-[AccessibilityObjectWrapper textMarkerRangeForSelection]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): Change these calls so that the axObjectCache() can be passed in to create the visible position. * dom/Document.cpp: (WebCore::Document::axObjectCacheExists): * dom/Document.h: * dom/Node.cpp: (WebCore::Node::~Node): If accessibility is enabled, inform the axObjectCache() that this node is disappearing. 2010-09-28 Chris Rogers Reviewed by Kenneth Russell. Add AudioDestinationNode files https://bugs.webkit.org/show_bug.cgi?id=45009 No new tests since audio API is not yet implemented. * webaudio/AudioDestinationNode.cpp: Added. (WebCore::AudioDestinationNode::AudioDestinationNode): (WebCore::AudioDestinationNode::~AudioDestinationNode): (WebCore::AudioDestinationNode::initialize): (WebCore::AudioDestinationNode::uninitialize): (WebCore::AudioDestinationNode::provideInput): * webaudio/AudioDestinationNode.h: Added. (WebCore::AudioDestinationNode::create): (WebCore::AudioDestinationNode::process): (WebCore::AudioDestinationNode::reset): (WebCore::AudioDestinationNode::currentTime): (WebCore::AudioDestinationNode::sampleRate): (WebCore::AudioDestinationNode::numberOfChannels): * webaudio/AudioDestinationNode.idl: Added. 2010-09-28 Chris Rogers Reviewed by Kenneth Russell. audio engine: audio output classes https://bugs.webkit.org/show_bug.cgi?id=34716 No new tests since audio API is not yet implemented. * platform/audio/AudioDestination.h: Added. (WebCore::AudioDestination::~AudioDestination): * platform/audio/mac/AudioDestinationMac.cpp: Added. (WebCore::AudioDestination::create): (WebCore::AudioDestination::hardwareSampleRate): (WebCore::AudioDestinationMac::AudioDestinationMac): (WebCore::AudioDestinationMac::~AudioDestinationMac): (WebCore::AudioDestinationMac::configure): (WebCore::AudioDestinationMac::start): (WebCore::AudioDestinationMac::stop): (WebCore::AudioDestinationMac::render): (WebCore::AudioDestinationMac::inputProc): * platform/audio/mac/AudioDestinationMac.h: Added. (WebCore::AudioDestinationMac::isPlaying): (WebCore::AudioDestinationMac::sampleRate): 2010-09-28 Chris Rogers Reviewed by Kenneth Russell. Add AudioGain files https://bugs.webkit.org/show_bug.cgi?id=46285 No new tests since audio API is not yet implemented. * webaudio/AudioGain.h: Added. (WebCore::AudioGain::create): (WebCore::AudioGain::AudioGain): * webaudio/AudioGain.idl: Added. 2010-09-28 Chris Rogers Reviewed by Kenneth Russell. Fix possible illegal float values in AudioParam https://bugs.webkit.org/show_bug.cgi?id=46681 No new tests since audio API is not yet implemented. * webaudio/AudioParam.h: (WebCore::AudioParam::setValue): 2010-09-28 Tor Arne Vestbø Reviewed by Simon Hausmann. [Qt] Rename member variable in MediaPlayerPrivateQt * platform/graphics/qt/MediaPlayerPrivateQt.cpp: * platform/graphics/qt/MediaPlayerPrivateQt.h: 2010-09-28 Andras Becsi [Gtk] Build fix. Remove leftover trailing backslash. * GNUmakefile.am: 2010-09-28 Andras Becsi Unreviewed. [Gtk] Build fix after r68521 No new tests needed. * GNUmakefile.am: 2010-09-28 Tor Arne Vestbø Reviewed by Andreas Kling. [Qt] Rename MediaPlayerPrivate to MediaPlayerPrivateQt/Phonon https://bugs.webkit.org/show_bug.cgi?id=36663 * platform/graphics/MediaPlayer.cpp: * platform/graphics/qt/MediaPlayerPrivateQt.cpp: * platform/graphics/qt/MediaPlayerPrivateQt.h: * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: * platform/graphics/qt/MediaPlayerPrivatePhonon.h: 2010-09-28 Andras Becsi Reviewed by Csaba Osztrogonác. Undefined reference errors when linking due to gperf and inlining. webkit.org/b/29244 EFL CMake changes by Leandro Pereira Refactor gperf code generation and usage to fix the debug build with gcc>4.4. Hitherto gperf generated C code, these files were included in multiple C++ files across WebCore to access the functionality provided. This resulted in debug build failure with newer gcc versions because of a behaviour change of gcc, which disables C style inlining in debug mode. The make-hash-tools.pl script lets gperf generate C++ code for all gperf files now, which are compiled in their own compilation unit. The functionality provided by the generated code is wrapped behind HashTools.h, so there is no need for multiple inclusions of generated C files to access these functions. No new tests needed. * CMakeLists.txt: * WebCore.gyp/WebCore.gyp: * WebCore.pri: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * css/CSSParser.cpp: * css/makeprop.pl: * css/makevalues.pl: * html/DocTypeStrings.gperf: * html/HTMLDocument.cpp: * make-hash-tools.pl: * platform/ColorData.gperf: * platform/graphics/Color.cpp: 2010-09-28 Andreas Kling Reviewed by Kenneth Rohde Christiansen. Canvas: Crash when setting a font with size in 'ex' units https://bugs.webkit.org/show_bug.cgi?id=46538 update() the style's font after setting the style's font description. Needed because CSSPrimitiveValue::computeLengthDouble() later assumes that the style's font is properly initialized (for xHeight().) Fixes crash on IE test center's canvas-text-font-002 test. * html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::setFont): 2010-09-28 Benjamin Poulain Reviewed by Kenneth Rohde Christiansen. [Qt] Remove support for Qt 4.5 https://bugs.webkit.org/show_bug.cgi?id=46718 Remove the code for versions of Qt prior to 4.6. * WebCore.pro: * features.pri: * platform/network/qt/QNetworkReplyHandler.cpp: (WebCore::QNetworkReplyHandler::QNetworkReplyHandler): (WebCore::QNetworkReplyHandler::start): * platform/network/qt/ResourceRequestQt.cpp: (WebCore::ResourceRequest::toNetworkRequest): * platform/qt/QWebPageClient.h: 2010-09-28 Kent Tamura Unreviewed, run sort-Xcode-project-file * WebCore.xcodeproj/project.pbxproj: 2010-09-28 Huahui Wu Reviewed by Steve Block. Add multi-touch for Android. https://bugs.webkit.org/show_bug.cgi?id=45221 The Android touch event used to take one point as the touch point, it's now changed to a vector of points to support multi-touch. Tests: fast/events/touch/basic-multi-touch-events-limited.html fast/events/touch/touch-target-limited.html * platform/PlatformTouchEvent.h: * platform/PlatformTouchPoint.h: * platform/android/PlatformTouchEventAndroid.cpp: (WebCore::PlatformTouchEvent::PlatformTouchEvent): * platform/android/PlatformTouchPointAndroid.cpp: (WebCore::PlatformTouchPoint::PlatformTouchPoint): 2010-09-27 Kent Tamura Reviewed by Alexey Proskuryakov. Fix assertion failure in a case that the dirty flag of a textarea element is changed https://bugs.webkit.org/show_bug.cgi?id=45681 We need to call setNeedsValidityCheck() after updating m_isDirty. Test: fast/forms/textarea-checkValidity-crash.html * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::setValue): (WebCore::HTMLTextAreaElement::setNonDirtyValue): (WebCore::HTMLTextAreaElement::setValueCommon): * html/HTMLTextAreaElement.h: 2010-09-27 Abhishek Arya Reviewed by Dan Bernstein. When the block RunIn is destroyed, its line box tree is not deleted. As a result, it gets later used during dirtying of inline text boxes step where this deleted parent is accessed. The fix is to delete the line box tree before destroying the runin block. https://bugs.webkit.org/show_bug.cgi?id=46376 Test: fast/text/dirty-inline-textbox-crash.html * rendering/RenderText.cpp: (WebCore::RenderText::dirtyLineBoxes): 2010-09-27 Eric Uhrhane Reviewed by David Levin. Fix event sequencing in FileWriter https://bugs.webkit.org/show_bug.cgi?id=46544 Only set readyState to DONE when we're about to send the last progress event associated with an operation. Make sure all progress events come from backend calls, and aren't ever fired synchronously in response to user JS method calls. No new tests, as none of this is fully implemented yet. * fileapi/FileWriter.cpp: (WebCore::FileWriter::write): (WebCore::FileWriter::truncate): (WebCore::FileWriter::abort): (WebCore::FileWriter::didWrite): (WebCore::FileWriter::didTruncate): (WebCore::FileWriter::didFail): 2010-09-27 Chris Rogers Reviewed by James Robinson. Add HRTFDatabase files https://bugs.webkit.org/show_bug.cgi?id=46233 No new tests since audio API is not yet implemented. * platform/audio/HRTFDatabase.cpp: Added. (WebCore::HRTFDatabase::create): (WebCore::HRTFDatabase::HRTFDatabase): (WebCore::HRTFDatabase::getKernelsFromAzimuthElevation): (WebCore::HRTFDatabase::indexFromElevationAngle): * platform/audio/HRTFDatabase.h: Added. (WebCore::HRTFDatabase::numberOfAzimuths): (WebCore::HRTFDatabase::sampleRate): 2010-09-27 Alpha Lam Build fix. Not reviewed. Move constant definitions to VideoLayerChromium.cpp. A proper fix should come later. * platform/graphics/chromium/VideoLayerChromium.cpp: 2010-09-23 Antonio Gomes Reviewed by Kenneth Rohde Christiansen. Make Document::nodesFromRect more flexible https://bugs.webkit.org/show_bug.cgi?id=46336 The patch changes the API for the Document::nodesFromRect() method as follows: from - RefPtf nodesFromRect(int x, int y, unsigned horizontalPadding, unsigned verticalPadding, bool ignoreClipping) to - RefPtf nodesFromRect(int x, int y, unsigned topPadding, unsigned rightPadding, unsigned bottomPadding, unsigned leftPadding, bool ignoreClipping) Previously the method was receiving as parameter horizontal and vertical padding values. In practice, the horizontal padding was being used to expand a given center point in both right and left directions, while vertical padding was expanding it to the top and bottom directions. Although this design makes it possible to improve the touch experience on mobile devices (Document::nodesFromRect exposes the rect based hit testing system), empirical experiments showed that, specially in capacitive touch screens, users tend to tap below elements. So for even more accurate results (which means here the possibility of pleasant tapping experience), it makes sense to use a region that is offset more above the touch point, favoring elements above the touch point. The patch basically implements that, increasing the API flexible and power by making it possible to specify different padding values for each direction in a given orientation. Changes were made accordingly to the HitTestResult, RenderLayer, RenderImage and RenderLineBoxList classes. WebCore: * WebCore.exp.in: * dom/Document.h: API adjustment. * dom/Document.idl: Ditto. * dom/Document.cpp: API adjustment and method body implementation accordingly. (WebCore::Document::nodesFromRect): * page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint): For simplicity, I did not change the signature but the way the padding value passed in as parameter is being used to construct a HitTestResult. * rendering/HitTestResult.cpp: Changed the rect-based bits from using IntSize (padding) to separated paddings for each direction. (WebCore::HitTestResult::HitTestResult): Ditto. (WebCore::HitTestResult::operator=): Ditto. (WebCore::HitTestResult::rectFromPoint): Ditto. * rendering/HitTestResult.h: (WebCore::HitTestResult::topPadding): getter for the top padding. (WebCore::HitTestResult::rightPadding): getter for the right padding. (WebCore::HitTestResult::bottomPadding): getter for the bottom padding. (WebCore::HitTestResult::leftPadding): getter for the left padding. (WebCore::HitTestResult::rectFromPoint): Added a static method that given a center point and padding values for each direction, returns the rect that is going to be used in WebCore's hit testing processing. * rendering/RenderImage.cpp: Changed the rect-based bits from using IntSize (padding) to separated paddings for each direction. (WebCore::RenderImage::nodeAtPoint): Ditto. * rendering/RenderLayer.cpp: Ditto. (WebCore::RenderLayer::hitTestLayer): Ditto. (WebCore::RenderLayer::hitTestList): Ditto. * rendering/RenderLineBoxList.cpp: Ditto. (WebCore::RenderLineBoxList::hitTest): Ditto. 2010-09-27 Chris Rogers Reviewed by James Robinson. Add HRTFDatabaseLoader files https://bugs.webkit.org/show_bug.cgi?id=46234 No new tests since audio API is not yet implemented. * platform/audio/HRTFDatabaseLoader.cpp: Added. (WebCore::HRTFDatabaseLoader::createAndLoadAsynchronouslyIfNecessary): (WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader): (WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader): (WebCore::databaseLoaderEntry): (WebCore::HRTFDatabaseLoader::load): (WebCore::HRTFDatabaseLoader::loadAsynchronously): (WebCore::HRTFDatabaseLoader::isLoaded): (WebCore::HRTFDatabaseLoader::defaultHRTFDatabase): * platform/audio/HRTFDatabaseLoader.h: Added. (WebCore::HRTFDatabaseLoader::database): (WebCore::HRTFDatabaseLoader::databaseSampleRate): 2010-09-27 Ryosuke Niwa Reviewed by Darin Adler. queryCommandState with justifyCenter, justifyLeft, and justifyRight always return false https://bugs.webkit.org/show_bug.cgi?id=45910 Implemented queryCommandState for justifyCenter, justifyLeft, and justifyRight commands. Added getTextAlignment to convert -webkit-center, -webkit-left, and -webkit-right to center, left, and right respectively because they can be treated equally for editing purposes. Test: editing/execCommand/query-text-alignment.html * editing/ApplyStyleCommand.cpp: (WebCore::getTextAlignment): Added. (WebCore::getPropertiesNotIn): Uses getTextAlignment. * editing/EditorCommand.cpp: (WebCore::stateJustifyCenter): Added. (WebCore::stateJustifyLeft): Added. (WebCore::stateJustifyRight): Added. (WebCore::createCommandMap): Refers to stateJustifyCenter, stateJustifyLeft, and stateJustifyRight. 2010-09-27 Alpha Lam Unreviewed. Build fix. Reorder member declarations and fix other warnings. * platform/graphics/chromium/VideoLayerChromium.cpp: (WebCore::VideoLayerChromium::VideoLayerChromium): (WebCore::VideoLayerChromium::~VideoLayerChromium): (WebCore::VideoLayerChromium::updateContents): (WebCore::VideoLayerChromium::determineTextureFormat): (WebCore::VideoLayerChromium::allocateTexturesIfNeeded): * platform/graphics/chromium/VideoLayerChromium.h: 2010-09-27 Kenneth Russell Unreviewed, Qt build fix. Stub out CanvasRenderingContext::checkOrigin(const HTMLVideoElement*) on platforms that don't support video after r68460. * html/canvas/CanvasRenderingContext.cpp: (WebCore::CanvasRenderingContext::checkOrigin): 2010-09-27 Chris Fleizach Reviewed by Beth Dakin. CrashTracer: 1,803 crashes in Safari at com.apple.WebCore: -[AccessibilityObjectWrapper accessibilityIsIgnored] + 56 https://bugs.webkit.org/show_bug.cgi?id=46662 Before calling updateBackingStore(), the wrapper object needs to be retained, lest it be invalidated during the updateBackingStore call. This consolidates all calls to updateBackingStore(). Test: platform/mac/accessibility/removing-textarea-after-edit-crash.html * accessibility/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::postPlatformNotification): Use an ASSERT here to catch the crash because DRT won't cause AppKit to post notifications. * accessibility/mac/AccessibilityObjectWrapper.mm: (-[AccessibilityObjectWrapper prepareAccessibilityMethod]): (-[AccessibilityObjectWrapper accessibilityActionNames]): (-[AccessibilityObjectWrapper accessibilityAttributeNames]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]): (-[AccessibilityObjectWrapper accessibilityHitTest:]): (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]): (-[AccessibilityObjectWrapper accessibilityIsIgnored]): (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]): (-[AccessibilityObjectWrapper accessibilityPerformPressAction]): (-[AccessibilityObjectWrapper accessibilityPerformIncrementAction]): (-[AccessibilityObjectWrapper accessibilityPerformDecrementAction]): (-[AccessibilityObjectWrapper accessibilityPerformAction:]): (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]): (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]): (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]): 2010-09-27 Adrienne Walker Reviewed by Adam Barth. WebGL's readPixels doesn't respect origin-clean flag Push CanvasRenderingContext2D checkOrigin logic into base class so it can be shared between different kinds of canvas contexts. https://bugs.webkit.org/show_bug.cgi?id=45718 Test: LayoutTests/http/tests/canvas/webgl/origin-clean-conformance.html * html/canvas/CanvasRenderingContext.cpp: (WebCore::CanvasRenderingContext::checkOrigin): * html/canvas/CanvasRenderingContext.h: (WebCore::CanvasRenderingContext::~CanvasRenderingContext): (WebCore::CanvasRenderingContext::canvas): (WebCore::CanvasRenderingContext::is2d): (WebCore::CanvasRenderingContext::is3d): (WebCore::CanvasRenderingContext::isAccelerated): (WebCore::CanvasRenderingContext::paintRenderingResultsToCanvas): (WebCore::CanvasRenderingContext::paintsIntoCanvasBuffer): (WebCore::CanvasRenderingContext::platformLayer): * html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::setStrokeStyle): (WebCore::CanvasRenderingContext2D::setFillStyle): (WebCore::CanvasRenderingContext2D::drawImage): (WebCore::CanvasRenderingContext2D::drawImageFromRect): * html/canvas/CanvasRenderingContext2D.h: * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::readPixels): (WebCore::WebGLRenderingContext::texImage2D): (WebCore::WebGLRenderingContext::videoFrameToImage): (WebCore::WebGLRenderingContext::texSubImage2D): * html/canvas/WebGLRenderingContext.h: * html/canvas/WebGLRenderingContext.idl: 2010-09-27 Darin Adler Reviewed by Dan Bernstein. REGRESSION (r68054): Buttons no longer render at correct sizes https://bugs.webkit.org/show_bug.cgi?id=46513 Test: fast/forms/input-button-sizes.html The setUpButtonCell function was running only once, but needed to run every time through the button function. * platform/mac/ThemeMac.mm: (WebCore::leakButtonCell): Added. Separate one-time initialization code. (WebCore::setUpButtonCell): Removed the first-time initialization part of this function. (WebCore::button): Merged the three functions back into one. 2010-09-27 Victoria Kirst Reviewed by James Robinson. Modifies VideoLayerChromium to do YUV to RGB color conversion in the GPU. Also adds support for RGBA video frame formats, though this code path is currently never run because the video frames are in YV12 format. https://bugs.webkit.org/show_bug.cgi?id=45069 * platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::LayerRendererChromium::initializeSharedObjects): (WebCore::LayerRendererChromium::cleanupSharedObjects): * platform/graphics/chromium/LayerRendererChromium.h: (WebCore::LayerRendererChromium::videoLayerSharedValues): * platform/graphics/chromium/VideoLayerChromium.cpp: (WebCore::VideoLayerChromium::SharedValues::SharedValues): (WebCore::VideoLayerChromium::SharedValues::~SharedValues): (WebCore::VideoLayerChromium::VideoLayerChromium): (WebCore::VideoLayerChromium::~VideoLayerChromium): (WebCore::VideoLayerChromium::updateContents): (WebCore::VideoLayerChromium::updateYUVContents): (WebCore::VideoLayerChromium::allocateYUVTextures): (WebCore::VideoLayerChromium::updateYUVTextures): (WebCore::VideoLayerChromium::updateRGBAContents): (WebCore::VideoLayerChromium::allocateTexture): (WebCore::VideoLayerChromium::updateTexture): (WebCore::VideoLayerChromium::updateContentsCompleted): (WebCore::VideoLayerChromium::draw): (WebCore::VideoLayerChromium::drawYUV): (WebCore::VideoLayerChromium::drawRGBA): * platform/graphics/chromium/VideoLayerChromium.h: (WebCore::VideoLayerChromium::drawsContent): (WebCore::VideoLayerChromium::SharedValues::yuvShaderProgram): (WebCore::VideoLayerChromium::SharedValues::rgbaShaderProgram): (WebCore::VideoLayerChromium::SharedValues::yuvShaderMatrixLocation): (WebCore::VideoLayerChromium::SharedValues::rgbaShaderMatrixLocation): (WebCore::VideoLayerChromium::SharedValues::yuvWidthScaleFactorLocation): (WebCore::VideoLayerChromium::SharedValues::rgbaWidthScaleFactorLocation): (WebCore::VideoLayerChromium::SharedValues::yTextureLocation): (WebCore::VideoLayerChromium::SharedValues::uTextureLocation): (WebCore::VideoLayerChromium::SharedValues::vTextureLocation): (WebCore::VideoLayerChromium::SharedValues::yuvAlphaLocation): (WebCore::VideoLayerChromium::SharedValues::rgbaTextureLocation): (WebCore::VideoLayerChromium::SharedValues::ccMatrixLocation): (WebCore::VideoLayerChromium::SharedValues::initialized): 2010-09-27 Peter Kasting Reviewed by James Robinson. ImageDecoderSkia.cpp needs to check for allocator failure when copying bitmaps. https://bugs.webkit.org/show_bug.cgi?id=46437 * manual-tests/large-size-image-crash.html: Added. * manual-tests/resources/large-size-image-crash.gif: Added. * platform/image-decoders/ImageDecoder.cpp: (WebCore::RGBA32Buffer::copyBitmapData): * platform/image-decoders/ImageDecoder.h: * platform/image-decoders/gif/GIFImageDecoder.cpp: (WebCore::GIFImageDecoder::initFrameBuffer): * platform/image-decoders/qt/RGBA32BufferQt.cpp: (WebCore::RGBA32Buffer::copyBitmapData): * platform/image-decoders/skia/ImageDecoderSkia.cpp: (WebCore::RGBA32Buffer::copyBitmapData): 2010-09-27 James Robinson Reviewed by Simon Fraser. Revert r63307, it broke repainting dynamically changed SVG content https://bugs.webkit.org/show_bug.cgi?id=46499 This patch reverts r63307 and adds a regression test for what broke. Test: fast/repaint/repaint-svg-after-style-change.html * rendering/RenderForeignObject.cpp: (WebCore::RenderForeignObject::layout): * rendering/RenderPath.cpp: (WebCore::RenderPath::layout): * rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::layout): * rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::layout): * rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::layout): * rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::layout): 2010-09-27 Vangelis Kokkevis Reviewed by James Robinson. [chromium] Making LayerChromium's destructor virtual so that the appropriate derived class destructors get called when the layer tree is taken down. ContentLayerChromium and its derived types (ImageLayerChromium for now) will free up the texture allocated for their contents upon destruction. To avoid having the LayerRendererChromium destructor getting called before the layers are destroyed and thus leaving their textures orphaned, the layers now hold a ref counted pointer to the renderer that uses them. https://bugs.webkit.org/show_bug.cgi?id=46139 * platform/graphics/chromium/ContentLayerChromium.cpp: (WebCore::ContentLayerChromium::~ContentLayerChromium): (WebCore::ContentLayerChromium::setLayerRenderer): (WebCore::ContentLayerChromium::cleanupResources): * platform/graphics/chromium/ContentLayerChromium.h: * platform/graphics/chromium/LayerChromium.cpp: (WebCore::LayerChromium::setLayerRenderer): * platform/graphics/chromium/LayerChromium.h: (WebCore::LayerChromium::layerRenderer): * platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::LayerRendererChromium::create): (WebCore::LayerRendererChromium::deleteLayerTexture): (WebCore::LayerRendererChromium::cleanupSharedObjects): * platform/graphics/chromium/LayerRendererChromium.h: 2010-09-27 Erik Arvidsson Reviewed by Darin Adler. Implement HTML 5's HTMLElement.classList property https://bugs.webkit.org/show_bug.cgi?id=20709 This adds a DOMTokenList class that is used for the classList property. DOMTokenList uses a SpaceSplitString for fast contains check. In standards mode the existing classNames is used but in quirks mode we use an internal SpaceSplitString because classList is always case sensitive. Tests: fast/dom/HTMLElement/class-list-gc.html fast/dom/HTMLElement/class-list-quirks.html fast/dom/HTMLElement/class-list.html perf/class-list-remove.html * Android.derived.jscbindings.mk: * Android.derived.v8bindings.mk: * Android.jscbindings.mk: * 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: * bindings/js/JSElementCustom.cpp: (WebCore::JSElement::markChildren): Make sure that we keep the wrapper while the element is alive. * bindings/scripts/CodeGeneratorJS.pm: DOMTokenList has a string indexed getter. * bindings/scripts/CodeGeneratorV8.pm: * bindings/v8/custom/V8DOMTokenListCustom.cpp: Added. (WebCore::toV8): * dom/Element.cpp: (WebCore::Element::classList): (WebCore::Element::optionalClassList): * dom/Element.h: * dom/ElementRareData.h: This now has an OwnPtr to a ClassList if the Element::classList is ever called. * dom/SpaceSplitString.h: (WebCore::SpaceSplitString::isNull): * dom/StyledElement.cpp: (WebCore::StyledElement::classAttributeChanged): Update the classList if it exists. * dom/StyledElement.h: * html/DOMTokenList.cpp: Added. (WebCore::validateToken): (WebCore::DOMTokenList::DOMTokenList): (WebCore::DOMTokenList::ref): (WebCore::DOMTokenList::deref): (WebCore::DOMTokenList::length): (WebCore::DOMTokenList::item): (WebCore::DOMTokenList::contains): (WebCore::DOMTokenList::containsInternal): The internal methods do no validation of the token. (WebCore::DOMTokenList::add): (WebCore::DOMTokenList::addInternal): (WebCore::DOMTokenList::remove): (WebCore::DOMTokenList::removeInternal): (WebCore::DOMTokenList::toggle): (WebCore::DOMTokenList::toString): (WebCore::DOMTokenList::reset): (WebCore::DOMTokenList::classNames): * html/DOMTokenList.h: Added. (WebCore::DOMTokenList::create): (WebCore::DOMTokenList::element): * html/DOMTokenList.idl: Added. * html/HTMLElement.idl: * page/DOMWindow.cpp: * page/DOMWindow.idl: 2010-09-27 Kenneth Russell Reviewed by James Robinson. Add local triangulation of cubic curve control points https://bugs.webkit.org/show_bug.cgi?id=45252 (Re-landing; I neglected to actually add the new files in http://trac.webkit.org/changeset/68045 .) Adding a localized triangulation algorithm which takes as input the four control points of a cubic curve segment and provides both triangles as well as the ability to walk the interior edges. The latter will be used later to fill the interior of shapes bounded by these cubic curves, quadratic curves and line segments. * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: Added. (WebCore::LoopBlinnLocalTriangulator::Triangle::contains): (WebCore::LoopBlinnLocalTriangulator::Triangle::nextVertex): (WebCore::LoopBlinnLocalTriangulator::Triangle::indexForVertex): (WebCore::LoopBlinnLocalTriangulator::Triangle::makeCounterClockwise): (WebCore::LoopBlinnLocalTriangulator::LoopBlinnLocalTriangulator): (WebCore::LoopBlinnLocalTriangulator::reset): (WebCore::LoopBlinnLocalTriangulator::triangulate): (WebCore::LoopBlinnLocalTriangulator::triangulateHelper): (WebCore::LoopBlinnLocalTriangulator::addTriangle): (WebCore::LoopBlinnLocalTriangulator::addInteriorVertex): (WebCore::LoopBlinnLocalTriangulator::isSharedEdge): * platform/graphics/gpu/LoopBlinnLocalTriangulator.h: Added. (WebCore::LoopBlinnLocalTriangulator::Vertex::Vertex): (WebCore::LoopBlinnLocalTriangulator::Vertex::xyCoordinates): (WebCore::LoopBlinnLocalTriangulator::Vertex::klmCoordinates): (WebCore::LoopBlinnLocalTriangulator::Vertex::set): (WebCore::LoopBlinnLocalTriangulator::Vertex::end): (WebCore::LoopBlinnLocalTriangulator::Vertex::setEnd): (WebCore::LoopBlinnLocalTriangulator::Vertex::marked): (WebCore::LoopBlinnLocalTriangulator::Vertex::setMarked): (WebCore::LoopBlinnLocalTriangulator::Vertex::interior): (WebCore::LoopBlinnLocalTriangulator::Vertex::setInterior): (WebCore::LoopBlinnLocalTriangulator::Vertex::resetFlags): (WebCore::LoopBlinnLocalTriangulator::Triangle::Triangle): (WebCore::LoopBlinnLocalTriangulator::Triangle::getVertex): (WebCore::LoopBlinnLocalTriangulator::Triangle::setVertices): (WebCore::LoopBlinnLocalTriangulator::getVertex): (WebCore::LoopBlinnLocalTriangulator::numberOfTriangles): (WebCore::LoopBlinnLocalTriangulator::getTriangle): (WebCore::LoopBlinnLocalTriangulator::numberOfInteriorVertices): (WebCore::LoopBlinnLocalTriangulator::getInteriorVertex): 2010-09-27 Chris Rogers Reviewed by Kenneth Russell. Add AudioNode files https://bugs.webkit.org/show_bug.cgi?id=45571 No new tests since audio API is not yet implemented. * webaudio/AudioNode.cpp: Added. (WebCore::AudioNode::AudioNode): (WebCore::AudioNode::~AudioNode): (WebCore::AudioNode::setType): (WebCore::AudioNode::lazyInitialize): (WebCore::AudioNode::addInput): (WebCore::AudioNode::addOutput): (WebCore::AudioNode::input): (WebCore::AudioNode::output): (WebCore::AudioNode::connect): (WebCore::AudioNode::disconnect): (WebCore::AudioNode::processIfNecessary): (WebCore::AudioNode::pullInputs): (WebCore::AudioNode::ref): (WebCore::AudioNode::deref): (WebCore::AudioNode::finishDeref): (WebCore::AudioNode::printNodeCounts): * webaudio/AudioNode.h: Added. (WebCore::AudioNode::context): (WebCore::AudioNode::type): (WebCore::AudioNode::isInitialized): (WebCore::AudioNode::numberOfInputs): (WebCore::AudioNode::numberOfOutputs): (WebCore::AudioNode::sampleRate): (WebCore::AudioNode::checkNumberOfChannelsForInput): * webaudio/AudioNode.idl: Added. 2010-09-27 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46665 Patch RenderView's layout and computeLogicalWidth/Height methods to be block-flow-aware. Added fast/root-lr-basic.html * rendering/RenderView.cpp: (WebCore::RenderView::computeLogicalHeight): (WebCore::RenderView::computeLogicalWidth): (WebCore::RenderView::layout): * rendering/RenderView.h: (WebCore::RenderView::viewLogicalWidth): (WebCore::RenderView::viewLogicalHeight): 2010-09-24 Zhenyao Mo Reviewed by Kenneth Russell. Hook up ANGLE with chromium --in-process-webgl port https://bugs.webkit.org/show_bug.cgi?id=44309 * platform/graphics/GraphicsContext3D.h: Move Angle stuff inside MAC only section. 2010-09-27 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46659 Patch the width/height/x/y calls in layoutBlock() to be their logical equivalents instead. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock): 2010-09-27 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46649, fix failing layout tests. The implementation of setting the before/after margins was wrong and poking the wrong margin values. Once I made them set the correct values, it revealed that one of the new block flow tests wasn't actually working. In order to fix it, I had to make the block direction margin computation actually use the containing block's block-flow in order to return the right answer. This involved cleaning up computeBlockDirectionMargins to be more like computeInlineDirectionMargins. fast/css/logical-property-resolution.html also caught the bug. Its results are now correct. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::adjustPositionedBlock): (WebCore::RenderBlock::determineHorizontalPosition): (WebCore::RenderBlock::layoutBlockChild): (WebCore::RenderBlock::insertFloatingObject): * rendering/RenderBox.cpp: (WebCore::RenderBox::setMarginBeforeUsing): (WebCore::RenderBox::setMarginAfterUsing): (WebCore::RenderBox::computeLogicalWidth): (WebCore::RenderBox::computeInlineDirectionMargins): (WebCore::RenderBox::computeLogicalHeight): (WebCore::RenderBox::computeBlockDirectionMargins): * rendering/RenderBox.h: * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutHorizontalBox): (WebCore::RenderFlexibleBox::layoutVerticalBox): * rendering/RenderObject.h: * rendering/RenderTable.cpp: (WebCore::RenderTable::computeLogicalWidth): * rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::layout): * rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::marginBeforeUsing): (WebCore::RenderStyle::marginAfterUsing): * rendering/style/RenderStyle.h: 2010-09-14 Zhenyao Mo Reviewed by Kenneth Russell. Textures and renderbuffers should be detached first before deletion if they are attached to framebuffers https://bugs.webkit.org/show_bug.cgi?id=43942 Test: fast/canvas/webgl/object-deletion-behaviour.html * html/canvas/WebGLBuffer.cpp: (WebCore::WebGLBuffer::deleteObjectImpl): Delete the object only once. * html/canvas/WebGLFramebuffer.cpp: Use RefPtr for attachment WebGLObjects. (WebCore::WebGLFramebuffer::WebGLFramebuffer): (WebCore::WebGLFramebuffer::removeAttachment): Remove an attachment data ref. (WebCore::WebGLFramebuffer::onAttachedObjectChange): (WebCore::WebGLFramebuffer::getColorBufferFormat): (WebCore::WebGLFramebuffer::deleteObjectImpl): (WebCore::WebGLFramebuffer::initializeRenderbuffers): * html/canvas/WebGLFramebuffer.h: Declare removeAttachment(). * html/canvas/WebGLObject.cpp: (WebCore::WebGLObject::setObject): Make it protected and can only be called when initializing. * html/canvas/WebGLObject.h: (WebCore::WebGLObject::onDetached): Fix a bug. (WebCore::WebGLObject::isDeleted): Expose the delete flag. * html/canvas/WebGLProgram.cpp: (WebCore::WebGLProgram::deleteObjectImpl): Detach shaders when deleting a program. * html/canvas/WebGLRenderbuffer.cpp: (WebCore::WebGLRenderbuffer::deleteObjectImpl): Delete the object only once. * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::deleteFramebuffer): Bind to internal fbo when deleting the currently-bound fbo. (WebCore::WebGLRenderingContext::deleteRenderbuffer): Remove renderbuffer from currently-bound fbo upon deletion. (WebCore::WebGLRenderingContext::deleteTexture): Remove texture from currently-bound fbo upon deletion. (WebCore::WebGLRenderingContext::useProgram): Fix a condition. * html/canvas/WebGLShader.cpp: (WebCore::WebGLShader::deleteObjectImpl): Delete the object only once. * html/canvas/WebGLTexture.cpp: (WebCore::WebGLTexture::deleteObjectImpl): Ditto. 2010-09-27 Ryosuke Niwa Reviewed by Antonio Gomes. stateStyle (@EditorCommand.cpp) should ask EditingBehavior for platform specific behavior https://bugs.webkit.org/show_bug.cgi?id=41989 queryCommandState returns true even when in the mixed state https://bugs.webkit.org/show_bug.cgi?id=46382 Fixed stateStyle so that it calls selectionStartHasStyle when shouldToggleStyleBasedOnStartOfSelection is true (Mac platforms) and calls selectionHasStyle otherwise (non-Mac platforms). Also fixed queryCommandState so that it only returns true when the state is TrueTriState as supposed to returning true whenever the state is not FalseTriState. New behavior matches that of other browsers such as Firefox and Internet Explorer. * dom/Document.cpp: (WebCore::Document::queryCommandState): * editing/EditorCommand.cpp: (WebCore::executeToggleStyle): (WebCore::stateStyle): 2010-09-27 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46647, add getters/setters for the logical position of a box. Also made all of the logicalWidth/Height getters/setters inline for performance. * rendering/RenderBox.cpp: * rendering/RenderBox.h: (WebCore::RenderBox::logicalLeft): (WebCore::RenderBox::logicalTop): (WebCore::RenderBox::logicalWidth): (WebCore::RenderBox::logicalHeight): (WebCore::RenderBox::setLogicalLeft): (WebCore::RenderBox::setLogicalTop): (WebCore::RenderBox::setLogicalWidth): (WebCore::RenderBox::setLogicalHeight): (WebCore::RenderBox::setLogicalLocation): 2010-09-27 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46639, make computeLogicalHeight block-flow-aware. This patch does the following: (1) Makes computeLogicalHeight block-flow-aware (patching all helper functions as needed to make this work). (2) Makes block flow roots (blocks whose parent has a different block-flow directionality) establish new block formatting contexts. (This causes them to not collapse their margins with their children and to avoid floats). (3) Patch all occurrences of setHeight in block and line layout to setLogicalHeight so that height doesn't get incorrectly overwritten for lr/rl block-flow. This is necessary to write tests that examine the width/height of the blocks. Added multiple new tests in fast/blockflow. fast/css/logical-property-resolution gives the correct results now. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::MarginInfo::MarginInfo): (WebCore::RenderBlock::layoutBlock): (WebCore::RenderBlock::expandsToEncloseOverhangingFloats): (WebCore::RenderBlock::adjustFloatingBlock): (WebCore::RenderBlock::collapseMargins): (WebCore::RenderBlock::clearFloatsIfNeeded): (WebCore::RenderBlock::determineHorizontalPosition): (WebCore::RenderBlock::handleBottomOfBlock): (WebCore::RenderBlock::layoutBlockChildren): (WebCore::RenderBlock::layoutBlockChild): (WebCore::RenderBlock::positionNewFloatOnLine): (WebCore::RenderBlock::newLine): (WebCore::RenderBlock::logicalLeftOffsetForLine): (WebCore::RenderBlock::logicalRightOffsetForContent): (WebCore::RenderBlock::logicalRightOffsetForLine): (WebCore::RenderBlock::getClearDelta): (WebCore::RenderBlock::layoutColumns): * rendering/RenderBlock.h: * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlock::computeBlockDirectionPositionsForLine): (WebCore::RenderBlock::layoutInlineChildren): (WebCore::RenderBlock::determineStartPosition): (WebCore::RenderBlock::fitBelowFloats): * rendering/RenderBox.cpp: (WebCore::RenderBox::marginBefore): (WebCore::RenderBox::marginBeforeUsing): (WebCore::RenderBox::marginAfter): (WebCore::RenderBox::marginAfterUsing): (WebCore::RenderBox::setMarginBefore): (WebCore::RenderBox::setMarginAfter): (WebCore::RenderBox::setMarginBeforeUsing): (WebCore::RenderBox::setMarginAfterUsing): (WebCore::RenderBox::computeLogicalHeight): (WebCore::RenderBox::computeLogicalHeightUsing): (WebCore::RenderBox::computePercentageLogicalHeight): (WebCore::RenderBox::computeReplacedHeightUsing): (WebCore::RenderBox::availableLogicalHeight): (WebCore::RenderBox::availableLogicalHeightUsing): (WebCore::RenderBox::computeBlockDirectionMargins): (WebCore::RenderBox::avoidsFloats): * rendering/RenderBox.h: (WebCore::RenderBox::contentLogicalWidth): (WebCore::RenderBox::contentLogicalHeight): (WebCore::RenderBox::stretchesToViewHeight): (WebCore::RenderBox::availableLogicalWidth): (WebCore::RenderBox::availableWidth): (WebCore::RenderBox::availableHeight): (WebCore::RenderBox::isBlockFlowRoot): * rendering/RenderTable.cpp: (WebCore::RenderTable::computeLogicalWidth): 2010-09-27 Mario Sanchez Prada Reviewed by Chris Fleizach. [Gtk] Adjust atk_text_get_text_at_offset to account for bullets/numbers in list items https://bugs.webkit.org/show_bug.cgi?id=45381 Ensure list markers are consistently used in the Atk wrapper. This patch does two things (both needed to fix the bug): It improves the way list items markers are exposed through the Atk Wrapper (by exposing the exact text in the marker, including the marker suffix, if any) and makes sure the marker is consistently considered and treated in those methods of the AtkText interface that would need it (like atk_text_get_character_count or atk_text_get_run_attributes, for instance). * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: (textForObject): Append/prepend list marker when needed. (webkit_accessible_text_get_text): Use the new function markerTextWithSuffix() to expose a more accurate value. (accessibilityObjectLength): Consider list items marker to return the length of an object, if needed. Also, added some extra checks. (webkit_accessible_text_get_character_count): Just delegate on accessibilityObjectLength, to make it cleaner and more consistent. * rendering/RenderListItem.cpp: (WebCore::RenderListItem::markerTextWithSuffix): New public function to return a single string with the marker associated to the item and its suffix, considering text direction (LTR or RTL). * rendering/RenderListItem.h: * rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::suffix): New public function to return a String with the suffix associated to the marker. * rendering/RenderListMarker.h: 2010-09-27 Sheriff Bot Unreviewed, rolling out r68389. http://trac.webkit.org/changeset/68389 https://bugs.webkit.org/show_bug.cgi?id=46637 test_shell is crashing on chromium Win (Requested by loislo on #webkit). * inspector/InspectorTimelineAgent.cpp: (WebCore::InspectorTimelineAgent::InspectorTimelineAgent): (WebCore::InspectorTimelineAgent::pushGCEventRecords): (WebCore::InspectorTimelineAgent::didGC): (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent): (WebCore::InspectorTimelineAgent::willCallFunction): (WebCore::InspectorTimelineAgent::didCallFunction): (WebCore::InspectorTimelineAgent::willDispatchEvent): (WebCore::InspectorTimelineAgent::didDispatchEvent): (WebCore::InspectorTimelineAgent::willLayout): (WebCore::InspectorTimelineAgent::didLayout): (WebCore::InspectorTimelineAgent::willRecalculateStyle): (WebCore::InspectorTimelineAgent::didRecalculateStyle): (WebCore::InspectorTimelineAgent::willPaint): (WebCore::InspectorTimelineAgent::didPaint): (WebCore::InspectorTimelineAgent::willWriteHTML): (WebCore::InspectorTimelineAgent::didWriteHTML): (WebCore::InspectorTimelineAgent::didInstallTimer): (WebCore::InspectorTimelineAgent::didRemoveTimer): (WebCore::InspectorTimelineAgent::willFireTimer): (WebCore::InspectorTimelineAgent::didFireTimer): (WebCore::InspectorTimelineAgent::willChangeXHRReadyState): (WebCore::InspectorTimelineAgent::didChangeXHRReadyState): (WebCore::InspectorTimelineAgent::willLoadXHR): (WebCore::InspectorTimelineAgent::didLoadXHR): (WebCore::InspectorTimelineAgent::willEvaluateScript): (WebCore::InspectorTimelineAgent::didEvaluateScript): (WebCore::InspectorTimelineAgent::didScheduleResourceRequest): (WebCore::InspectorTimelineAgent::willSendResourceRequest): (WebCore::InspectorTimelineAgent::willReceiveResourceData): (WebCore::InspectorTimelineAgent::didReceiveResourceData): (WebCore::InspectorTimelineAgent::willReceiveResourceResponse): (WebCore::InspectorTimelineAgent::didReceiveResourceResponse): (WebCore::InspectorTimelineAgent::didFinishLoadingResource): (WebCore::InspectorTimelineAgent::didMarkTimeline): (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent): (WebCore::InspectorTimelineAgent::didMarkLoadEvent): (WebCore::InspectorTimelineAgent::reset): (WebCore::InspectorTimelineAgent::resetFrontendProxyObject): (WebCore::InspectorTimelineAgent::addRecordToTimeline): (WebCore::InspectorTimelineAgent::setHeapSizeStatistic): (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord): (WebCore::InspectorTimelineAgent::pushCurrentRecord): * inspector/InspectorTimelineAgent.h: (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry): (WebCore::InspectorTimelineAgent::GCEvent::GCEvent): 2010-09-27 Kinuko Yasuda Reviewed by Adam Barth. [Cleanup] Add create method to FileSystemCallbacks to get rid of naked new's https://bugs.webkit.org/show_bug.cgi?id=46561 Also cleanup the callbacks layering to pass AsyncFileSystemCallbacks object to LocalFileSystem::requestFileSystem (rather than FileSystemCallback and ErrorCallback) so that all the callbacks class we pass from WebCore to WebKit/chromium/src will be AsyncFileSystemCallbacks. No new tests; this patch is only for cleanup and there should be no functionality changes. * fileapi/DOMFileSystem.cpp: (WebCore::DOMFileSystem::getMetadata): (WebCore::DOMFileSystem::move): (WebCore::DOMFileSystem::copy): (WebCore::DOMFileSystem::remove): (WebCore::DOMFileSystem::getParent): (WebCore::DOMFileSystem::getFile): (WebCore::DOMFileSystem::getDirectory): (WebCore::DOMFileSystem::createWriter): (WebCore::DOMFileSystem::readDirectory): * fileapi/FileSystemCallbacks.cpp: (WebCore::EntryCallbacks::create): Added. (WebCore::EntriesCallbacks::create): Added. (WebCore::FileSystemCallbacks::create): Added. (WebCore::MetadataCallbacks::create): Added. (WebCore::FileWriterCallbacks::create): Added. (WebCore::VoidCallbacks::create): Added. * fileapi/FileSystemCallbacks.h: * fileapi/LocalFileSystem.cpp: (WebCore::openFileSystem): (WebCore::LocalFileSystem::requestFileSystem): Changed to take AsyncFileSystemCallbacks as (a) callback argument(s). * fileapi/LocalFileSystem.h: * page/DOMWindow.cpp: (WebCore::DOMWindow::requestFileSystem): Made a corresponding change to LocalFileSystem::requestFileSystem. * workers/WorkerContext.cpp: (WebCore::WorkerContext::requestFileSystem): Made a corresponding change to LocalFileSystem::requestFileSystem. 2010-09-27 Abhishek Arya Reviewed by Dave Hyatt. Fix memory safety issue during positioning list marker as a result of assuming that list item's parent can always be casted to a RenderBox. The display of the parent can be manipluated using css as Inline which causes a bad cast. https://bugs.webkit.org/show_bug.cgi?id=46384 Test: fast/lists/parent-box-not-box-crash.html * rendering/RenderListItem.cpp: (WebCore::RenderListItem::positionListMarker): * rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::layout): 2010-09-19 Martin Robinson Reviewed by Gustavo Noronha Silva. [GTK] Wrong font instantiated from an unknown font family https://bugs.webkit.org/show_bug.cgi?id=36548 When FontConfig returns a match for a particular family name, ensure that the family name matches the configured alias for the original pattern. This should prevent selecting FontConfig fallbacks in situations where the next font on the CSS fallback list should be used. This requires moving all FontConfig matching logic into FontCacheFreeType and out of FontPlatformDataFreeType. It should be there anyway. Test: platform/gtk/fonts/font-family-fallback.html * platform/graphics/cairo/FontCacheFreeType.cpp: (WebCore::FontCache::platformInit): Simply call FcInit here instead of deferring to FontPlatformData. (WebCore::FontCache::getLastResortFallbackFont): The last resort font should be a fallback font or else the new FontConfig logic may result in null font data if it cannot find an appropriate match. (WebCore::getFamilyNameStringFromFontDescriptionAndFamily): Added. Helper function which converts WebCore fallback names into ones that FontConfig understands. (WebCore::isFallbackFontAllowed): Added. Helper function that allows FontConfig fallbacks to be used when generic family names are specified. (WebCore::FontCache::createFontPlatformData): Move all FontConfig matching logic here and prevent against the situation where FontConfig returns a different family name than we asked for. * platform/graphics/cairo/FontCustomPlatformData.cpp: Updated FontPlatformData constructor. * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Update the constructor to take the FcPattern returned and the original FontDescription. We no longer need the other arguments, because the selection is now done by FontCacheFreeType. (WebCore::FontPlatformData::FontPlatformData): Remove the FontConfig selection logic from this code. * platform/graphics/cairo/FontPlatformDataFreeType.h: Updated method definitions. * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp: Fixed includes. * platform/graphics/cairo/PlatformRefPtrCairo.cpp: Added a PlatformRefPtr specialization for cairo_font_face_t. (WTF::refPlatformPtr): Added. (WTF::derefPlatformPtr): Added. * platform/graphics/cairo/PlatformRefPtrCairo.h: Updated method definitons. * platform/graphics/cairo/SimpleFontDataCairo.cpp: (WebCore::SimpleFontData::smallCapsFontData): Fixed FontPlatformData constructor. 2010-09-27 Philippe Normand Reviewed by Martin Robinson. [GTK] Doesn't build with gtk+ 2.14 https://bugs.webkit.org/show_bug.cgi?id=46565 Fixed the build for GTK+ 2.14 by adding backward compatible a backward-compatible function for gtk_menu_item_get_label and a utility function to create a blank mouse cursor. Those functions are used in the fullscreen video controller and in the DRT EventSender. * platform/gtk/GtkVersioning.c: (gdk_window_get_root_coords): (blankCursor): (gtk_menu_item_get_label): * platform/gtk/GtkVersioning.h: 2010-09-23 Stephen White Reviewed by James Robinson. [CHROMIUM] Fix for canvas clearRect() with clipping active, when --enable-accelerated-2d-canvas is on. https://bugs.webkit.org/show_bug.cgi?id=46412 Covered by layout test http://philip.html5.org/tests/canvas/suite/tests/2d.clearRect.clip.html. * platform/graphics/skia/GraphicsContextSkia.cpp: (WebCore::GraphicsContext::clearRect): Check if a clip is active during clipRect(), and force to software if so. Force a readback in this case, since clearRect() is not compatible with mixed-mode rendering. * platform/graphics/skia/PlatformContextSkia.cpp: (WebCore::PlatformContextSkia::canvasClipApplied): * platform/graphics/skia/PlatformContextSkia.h: Implement accessor to check if a clip is active. 2010-09-14 Zhenyao Mo Reviewed by Kenneth Russell. drawElements with count=0 and offset = 0 should not generate GL error or crash https://bugs.webkit.org/show_bug.cgi?id=45769 * html/canvas/WebGLRenderingContext.cpp: Deal with count=0 case. (WebCore::WebGLRenderingContext::validateIndexArrayConservative): (WebCore::WebGLRenderingContext::validateIndexArrayPrecise): (WebCore::WebGLRenderingContext::drawElements): 2010-09-16 Zhenyao Mo Reviewed by Kenneth Russell. Fold getString into getParameter and implement new queries https://bugs.webkit.org/show_bug.cgi?id=40321 Test: fast/canvas/webgl/gl-getstring.html * html/canvas/WebGLRenderingContext.cpp: Merge getString enums into getParameter. (WebCore::WebGLRenderingContext::getParameter): * html/canvas/WebGLRenderingContext.h: Remove getString. * html/canvas/WebGLRenderingContext.idl: Remove getString. 2010-09-24 Zhenyao Mo Reviewed by Kenneth Russell. gl-teximage fails on chrome mac bot https://bugs.webkit.org/show_bug.cgi?id=45332 Add support for alpha first pixel formats. * platform/graphics/GraphicsContext3D.cpp: (WebCore::doPacking): * platform/graphics/GraphicsContext3D.h: * platform/graphics/cg/GraphicsContext3DCG.cpp: (WebCore::GraphicsContext3D::getImageData): 2010-09-17 Yury Semikhatsky Reviewed by Pavel Feldman. Web Inspector: implement go-to-line feature https://bugs.webkit.org/show_bug.cgi?id=45166 * English.lproj/localizedStrings.js: * inspector/front-end/GoToLineDialog.js: Added. (WebInspector.GoToLineDialog): (WebInspector.GoToLineDialog.show): (WebInspector.GoToLineDialog.prototype._hide): (WebInspector.GoToLineDialog.prototype._onKeyDown): (WebInspector.GoToLineDialog.prototype._onBlur): * inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype._registerShortcuts): (WebInspector.ScriptsPanel.prototype.jumpToPreviousSearchResult): (WebInspector.ScriptsPanel.prototype.showGoToLineDialog): * inspector/front-end/goToLineDialog.css: Added. (.go-to-line-dialog): * inspector/front-end/inspector.html: 2010-09-24 Pavel Podivilov Reviewed by Pavel Feldman. Web Inspector: add XHR breakpoints sidebar pane to front-end https://bugs.webkit.org/show_bug.cgi?id=46483 * English.lproj/localizedStrings.js: * WebCore.gypi: * inspector/InspectorController.cpp: (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl): * inspector/InspectorTimelineAgent.h: * inspector/front-end/BreakpointManager.js: (WebInspector.BreakpointManager): (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend): (WebInspector.BreakpointManager.prototype.createXHRBreakpoint): (WebInspector.BreakpointManager.prototype._xhrBreakpointRemoved): (WebInspector.Breakpoint.prototype.compareTo): (WebInspector.XHRBreakpoint): (WebInspector.XHRBreakpoint.prototype.get enabled): (WebInspector.XHRBreakpoint.prototype.set enabled): (WebInspector.XHRBreakpoint.prototype.get url): (WebInspector.XHRBreakpoint.prototype.formatLabel): (WebInspector.XHRBreakpoint.prototype.compareTo): (WebInspector.XHRBreakpoint.prototype.remove): (WebInspector.XHRBreakpoint.prototype._setOnBackend.didSet): (WebInspector.XHRBreakpoint.prototype._setOnBackend): (WebInspector.XHRBreakpoint.prototype._removeFromBackend): * inspector/front-end/BreakpointsSidebarPane.js: (WebInspector.XHRBreakpointsSidebarPane): (WebInspector.XHRBreakpointsSidebarPane.prototype._showEditBreakpointDialog): (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog): (WebInspector.BreakpointItem.prototype.compareTo): (WebInspector.BreakpointItem.prototype._checkboxClicked): (WebInspector.BreakpointItem.prototype._enableChanged): (WebInspector.BreakpointItem.prototype._breakpointClicked): (WebInspector.XHRBreakpointItem): * inspector/front-end/CallStackSidebarPane.js: (WebInspector.CallStackSidebarPane.prototype.updateStatus.formatters.s): (WebInspector.CallStackSidebarPane.prototype.updateStatus.append): (WebInspector.CallStackSidebarPane.prototype.updateStatus): * inspector/front-end/DOMAgent.js: (WebInspector.DOMBreakpoint.prototype.compareTo): * inspector/front-end/Images/paneAddButtons.png: Added. * inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel): (WebInspector.ScriptsPanel.prototype.reset): * inspector/front-end/WebKit.qrc: * inspector/front-end/inspector.css: (.pane > .title > button.add): (.pane > .title > button.add:hover): (.pane > .title > button.add:active): (.pane > .body .breakpoint-condition): * inspector/front-end/inspector.js: (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded): (WebInspector.createXHRBreakpointsSidebarPane): 2010-09-27 Pavel Feldman Reviewed by Timothy Hatcher. Web Inspector: Merge AbstractTimelinePanel into ResourcesPanel. https://bugs.webkit.org/show_bug.cgi?id=46612 I am refactoring resources panel and would like to merge abstract one back in since it is not use anywhere else. * WebCore.gypi: * WebCore.vcproj/WebCore.vcproj: * inspector/front-end/AbstractTimelinePanel.js: Removed. * inspector/front-end/ResourceCategory.js: (WebInspector.ResourceCategory): (WebInspector.ResourceCategory.prototype.toString): * inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel): (WebInspector.ResourcesPanel.prototype.get items): (WebInspector.ResourcesPanel.prototype.createInterface): (WebInspector.ResourcesPanel.prototype.createFilterPanel.createFilterElement): (WebInspector.ResourcesPanel.prototype.createFilterPanel): (WebInspector.ResourcesPanel.prototype.showCategory): (WebInspector.ResourcesPanel.prototype.hideCategory): (WebInspector.ResourcesPanel.prototype.filter): (WebInspector.ResourcesPanel.prototype._updateFilter): (WebInspector.ResourcesPanel.prototype._updateDividersLabelBarPosition): (WebInspector.ResourcesPanel.prototype.get needsRefresh): (WebInspector.ResourcesPanel.prototype.set needsRefresh): (WebInspector.ResourcesPanel.prototype.refreshIfNeeded): (WebInspector.ResourcesPanel.prototype.resize): (WebInspector.ResourcesPanel.prototype.invalidateAllItems): (WebInspector.ResourcesPanel.prototype.get calculator): (WebInspector.ResourcesPanel.prototype.set calculator): (WebInspector.ResourcesPanel.prototype.addItem): (WebInspector.ResourcesPanel.prototype.removeItem): (WebInspector.ResourcesPanel.prototype.refreshItem): (WebInspector.ResourcesPanel.prototype.revealAndSelectItem): (WebInspector.ResourcesPanel.prototype.sortItems): (WebInspector.ResourcesPanel.prototype.adjustScrollPosition): (WebInspector.ResourcesPanel.prototype.addEventDivider): (WebInspector.ResourcesPanel.prototype.hideEventDividers): (WebInspector.ResourcesPanel.prototype.showEventDividers): (WebInspector.ResourcesPanel.prototype.show): (WebInspector.ResourcesPanel.prototype.refresh): (WebInspector.ResourcesPanel.prototype.reset): (WebInspector.ResourcesPanel.prototype.updateGraphDividersIfNeeded): (WebInspector.ResourcesPanel.prototype.updateMainViewWidth): (WebInspector.ResourceBaseCalculator): (WebInspector.ResourceBaseCalculator.prototype.computeSummaryValues): (WebInspector.ResourceBaseCalculator.prototype.computeBarGraphPercentages): (WebInspector.ResourceBaseCalculator.prototype.computeBarGraphLabels): (WebInspector.ResourceBaseCalculator.prototype.get boundarySpan): (WebInspector.ResourceBaseCalculator.prototype.updateBoundaries): (WebInspector.ResourceBaseCalculator.prototype.reset): (WebInspector.ResourceBaseCalculator.prototype._value): (WebInspector.ResourceBaseCalculator.prototype.formatValue): (WebInspector.ResourceTimeCalculator): (WebInspector.ResourceTransferSizeCalculator): * inspector/front-end/WebKit.qrc: * inspector/front-end/inspector.html: 2010-09-27 Ragner Magalhaes Reviewed by Kenneth Rohde Christiansen. [Qt] New input style for Qt Mobile theme https://bugs.webkit.org/show_bug.cgi?id=46461 Rename themeQtMaemo5.css to themeQtMobile.css since it is the theme for all Qt mobile platform. Adjust new input style. * WebCore.pri: * css/themeQtMobile.css: Renamed from css/themeQtMaemo5.css (select): (select:disabled): (select:active): (select:active:disabled): (textarea): (textarea:disabled): (textarea:active): * platform/qt/RenderThemeQt.cpp: (WebCore::RenderThemeQt::extraDefaultStyleSheet): Renamed themeQtMaemo5UserAgentStyleSheet to themeQtMobileUserAgentStyleSheet to match renamed file. 2010-09-27 Girish Ramakrishnan Reviewed by Antonio Gomes. [Qt] Enable local rendering of NPAPI plugins on Maemo6. https://bugs.webkit.org/show_bug.cgi?id=46618 * WebCore.pro: * bridge/npapi.h: * plugins/PluginView.cpp: (WebCore::PluginView::setValue): (WebCore::PluginView::PluginView): * plugins/PluginView.h: * plugins/qt/PluginViewQt.cpp: (WebCore::PluginView::updatePluginWidget): (WebCore::PluginView::paint): (WebCore::PluginView::platformGetValueStatic): 2010-09-27 Ilya Tikhonovsky Reviewed by Pavel Feldman. Web Inspector: divide InspectorTimelineAgent into two parts. We have an idea to split InspectorTimelineAgent into two parts. The first part is an instrumentation API which can be used for DOM breakpoints too. The other is the real Timeline agent which do a transformation of raw data into timeline data. https://bugs.webkit.org/show_bug.cgi?id=46611 * inspector/InspectorTimelineAgent.cpp: (WebCore::InspectorTimelineAgent2::TimelineRecordEntry::TimelineRecordEntry): (WebCore::InspectorTimelineAgent2::GCEvent::GCEvent): (WebCore::InspectorTimelineAgent2::InspectorTimelineAgent2): (WebCore::InspectorTimelineAgent2::~InspectorTimelineAgent2): (WebCore::InspectorTimelineAgent2::didGC): (WebCore::InspectorTimelineAgent2::addRecordToTimeline): (WebCore::InspectorTimelineAgent2::setHeapSizeStatistic): (WebCore::InspectorTimelineAgent2::startNewRecord): (WebCore::InspectorTimelineAgent2::completeCurrentRecord): (WebCore::InspectorTimelineAgent2::asyncRecord): (WebCore::InspectorTimelineAgent2::atomicRecord): (WebCore::InspectorTimelineAgent2::getTopRecordData): (WebCore::InspectorTimelineAgent2::reset): (WebCore::InspectorTimelineAgent2::resetFrontendProxyObject): (WebCore::InspectorTimelineAgent2::pushGCEventRecords): (WebCore::InspectorTimelineAgent::InspectorTimelineAgent): (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent): (WebCore::InspectorTimelineAgent::reset): (WebCore::InspectorTimelineAgent::willCallFunction): (WebCore::InspectorTimelineAgent::didCallFunction): (WebCore::InspectorTimelineAgent::willDispatchEvent): (WebCore::InspectorTimelineAgent::didDispatchEvent): (WebCore::InspectorTimelineAgent::willLayout): (WebCore::InspectorTimelineAgent::didLayout): (WebCore::InspectorTimelineAgent::willRecalculateStyle): (WebCore::InspectorTimelineAgent::didRecalculateStyle): (WebCore::InspectorTimelineAgent::willPaint): (WebCore::InspectorTimelineAgent::didPaint): (WebCore::InspectorTimelineAgent::willWriteHTML): (WebCore::InspectorTimelineAgent::didWriteHTML): (WebCore::InspectorTimelineAgent::didInstallTimer): (WebCore::InspectorTimelineAgent::didRemoveTimer): (WebCore::InspectorTimelineAgent::willFireTimer): (WebCore::InspectorTimelineAgent::didFireTimer): (WebCore::InspectorTimelineAgent::willChangeXHRReadyState): (WebCore::InspectorTimelineAgent::didChangeXHRReadyState): (WebCore::InspectorTimelineAgent::willLoadXHR): (WebCore::InspectorTimelineAgent::didLoadXHR): (WebCore::InspectorTimelineAgent::willEvaluateScript): (WebCore::InspectorTimelineAgent::didEvaluateScript): (WebCore::InspectorTimelineAgent::didScheduleResourceRequest): (WebCore::InspectorTimelineAgent::willSendResourceRequest): (WebCore::InspectorTimelineAgent::willReceiveResourceData): (WebCore::InspectorTimelineAgent::didReceiveResourceData): (WebCore::InspectorTimelineAgent::willReceiveResourceResponse): (WebCore::InspectorTimelineAgent::didReceiveResourceResponse): (WebCore::InspectorTimelineAgent::didFinishLoadingResource): (WebCore::InspectorTimelineAgent::didMarkTimeline): (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent): (WebCore::InspectorTimelineAgent::didMarkLoadEvent): (WebCore::InspectorTimelineAgent::resetFrontendProxyObject): * inspector/InspectorTimelineAgent.h: 2010-09-27 Alexander Pavlov Reviewed by Sam Weinig. Implement CSSStyleRule::setSelectorText() This involves removing the "selectorText" "setter raises(DOMException)" clause from the IDL files, since the setter no longer raises the exception, as per http://dev.w3.org/csswg/cssom/#dom-cssstylerule-selectortext https://bugs.webkit.org/show_bug.cgi?id=46487 Test: fast/css/css-set-selector-text.html * css/CSSPageRule.idl: * css/CSSStyleRule.cpp: (WebCore::CSSStyleRule::setSelectorText): * css/CSSStyleRule.h: * css/CSSStyleRule.idl: 2010-09-27 Zoltan Herczeg Reviewed by Dirk Schulze. Filter builder should be able to follow the filter object dependencies https://bugs.webkit.org/show_bug.cgi?id=45812 To propagate the changes of a primitive object, a data structure is needed which stores the dependent primitive objects. (Those who use the resulting image.) This data structure is implemented as a hash map, which contains primitive object and set of primitive objects pairs. The hash map is able to follow the dynamic topology changes. * rendering/RenderSVGResourceFilter.cpp: (WebCore::RenderSVGResourceFilter::buildPrimitives): * rendering/RenderSVGResourceFilterPrimitive.h: (WebCore::RenderSVGResourceFilterPrimitive::renderName): (WebCore::RenderSVGResourceFilterPrimitive::isSVGResourceFilterPrimitive): * svg/graphics/filters/SVGFilterBuilder.cpp: (WebCore::SVGFilterBuilder::SVGFilterBuilder): (WebCore::SVGFilterBuilder::appendEffectToEffectReferences): (WebCore::SVGFilterBuilder::clearEffects): * svg/graphics/filters/SVGFilterBuilder.h: (WebCore::SVGFilterBuilder::getEffectReferences): (WebCore::SVGFilterBuilder::addBuiltinEffects): 2010-09-27 Andreas Kling Rubber-stamped by Kenneth Rohde Christiansen. [Qt] 32-bit Flash crashes on repeated SetWindow calls https://bugs.webkit.org/show_bug.cgi?id=46616 Re-enable PluginQuirkDontCallSetWindowMoreThanOnce for Qt on x86 Unix. We incorrectly thought this was fixed in Flash 10, but it turns out it was just never broken on 64-bit. * plugins/PluginPackage.cpp: (WebCore::PluginPackage::determineQuirks): 2010-09-27 İsmail Dönmez Reviewed by Andreas Kling. Add PluginView::setJavaScriptPaused(bool) stub for WinCE. * platform/qt/TemporaryLinkStubsQt.cpp: (PluginView::setJavaScriptPaused): 2010-09-27 Gyuyoung Kim Reviewed by Dirk Schulze. Bug 46607 - [WML] Fix a build break when WML is enabled Fix a build break when WML is enabled. * wml/WMLElement.cpp: Include HTMLParserIdioms.h (WebCore::WMLElement::parseMappedAttribute): Add additional parameter to invoke parseHTMLInteger() function. 2010-09-26 Patrick Gansterer Reviewed by Adam Barth. Remove dead code and fix header includes in ResourceHandleWin https://bugs.webkit.org/show_bug.cgi?id=46479 Also add missing member varibale from r68167. * platform/network/ResourceHandle.h: * platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal): * platform/network/win/ResourceHandleWin.cpp: (WebCore::ResourceHandleInternal::~ResourceHandleInternal): (WebCore::ResourceHandle::~ResourceHandle): (WebCore::ResourceHandle::onRequestComplete): * platform/network/win/ResourceHandleWin.h: Removed. 2010-09-26 Patrick Gansterer Reviewed by Adam Barth. Add WTF::StringHasher::createBlobHash https://bugs.webkit.org/show_bug.cgi?id=46514 Add this function for hashing FormElementKey and QualifiedNameComponents. * dom/Document.cpp: (WebCore::FormElementKeyHash::hash): * dom/QualifiedName.h: (WebCore::hashComponents): (WebCore::QualifiedNameHash::hash): 2010-09-26 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46519 Convert the implementation of computeLogicalWidth to work with block-flow. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::determineHorizontalPosition): Patched to call the new computeMarginsInContainingBlockInlineDirection. Eventually determineHorizontalPosition will be placing children along the inline direction of the containing block, and those children may have mismatched block flows. The new computeMarginsInContainingBlockInlineDirection function is designed to handle that. * rendering/RenderBox.cpp: (WebCore::RenderBox::marginStart): (WebCore::RenderBox::marginStartUsing): (WebCore::RenderBox::marginEnd): (WebCore::RenderBox::marginEndUsing): (WebCore::RenderBox::setMarginStart): (WebCore::RenderBox::setMarginEnd): (WebCore::RenderBox::setMarginStartUsing): (WebCore::RenderBox::setMarginEndUsing): Helpers that allow for marginStart/End access and that also allow for marginStart/End to be computed based off another element's block-flow and direction (typically the containing block). (WebCore::RenderBox::computeBorderBoxLogicalWidth): (WebCore::RenderBox::computeBorderBoxLogicalHeight): (WebCore::RenderBox::computeContentBoxLogicalWidth): (WebCore::RenderBox::computeContentBoxLogicalHeight): Patched to use logical border/padding widths and heights. (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight): A function for returning the available logical height of a perpendicular containing block. If a child has vertical text for example and its block-flow is "lr", its available logical width is determined by the logical height of the containing block when that containing block is perpendicular, e.g. "tb". (WebCore::RenderBox::computeLogicalWidth): (WebCore::RenderBox::computeLogicalWidthUsing): Patched to be block-flow-aware and to use logical width values everywhere. (WebCore::RenderBox::sizesToIntrinsicLogicalWidth): Patched to use logical widths. (WebCore::RenderBox::computeMarginsInContainingBlockInlineDirection): A new function that is directionally abstract and that can handle the computation of margins in the containing block's inline direction. This function is written such that a perpendicular child block flow can still be pushed to the center, left or right in the containing block's inline direction. (WebCore::RenderBox::computePositionedLogicalWidth): This function is still largely unpatched. A future patch will address positioend elements. * rendering/RenderBox.h: (WebCore::RenderBox::stretchesToMinIntrinsicLogicalWidth): * rendering/RenderFieldset.h: (WebCore::RenderFieldset::stretchesToMinIntrinsicLogicalWidth): Renames. * rendering/RenderTable.cpp: (WebCore::RenderTable::computeLogicalWidth): Renames, but not converted yet. Tables will happen in a future patch. * rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::marginStartUsing): (WebCore::RenderStyle::marginEndUsing): * rendering/style/RenderStyle.h: Added helpers for accessing marginStart and End using another style's direction and block flow (typically will be the containing block's). fast/block/basic/016.html changed, since centering now always awards the extra pixel for odd widths to the end margin instead of the right margin. This is a progression. fast/css/logical-property-values.html is now reporting garbage results, which is expected now that some of the core layout functions have been patched. Horizontal block flows are untestable still, since the normal layout process incorrectly blows away any computed height values. 2010-09-26 Antonio Gomes Reviewed by Kenneth Rohde Christiansen. DRT/Mac nodesFromRect support [Mac][DRT] Implement LayoutTestController::nodesFromRect https://bugs.webkit.org/show_bug.cgi?id=46580 Symbol files updated. * WebCore.exp.in: Added symbols to Document::nodesFromRect and bits of JSDocument now needed in WebKit/mac. * WebCore.xcodeproj/project.pbxproj: Set both JSDocument.h and JSNodeList as private headers now that they are referred in WebKit/mac. 2010-09-26 Adam Barth Reviewed by Dimitri Glazkov. Implement location.origin and HTMLAnchorElement.origin https://bugs.webkit.org/show_bug.cgi?id=46558 These attributes are part of my proposed URL API: https://docs.google.com/document/edit?id=1r_VTFKApVOaNIkocrg0z-t7lZgzisTuGTXkdzAk4gLU&hl=en Hixie thought we should implement as much of this API as makes sense on Location and HTMLAnchorElement as well. I'm starting with the origin attribute, because that seems like the biggest bang for the buck. Tests: fast/dom/anchor-origin.html http/tests/misc/location-origin.html * WebCore.xcodeproj/project.pbxproj: * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::origin): * html/HTMLAnchorElement.h: * html/HTMLAnchorElement.idl: * page/Location.cpp: (WebCore::Location::origin): * page/Location.h: * page/Location.idl: 2010-09-26 Sheriff Bot Unreviewed, rolling out r68343. http://trac.webkit.org/changeset/68343 https://bugs.webkit.org/show_bug.cgi?id=46581 broke GTK+ (Requested by kling on #webkit). * html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::setFont): 2010-09-25 Antonio Gomes Reviewed by Kenneth Christiansen and Andreas Kling. document.nodesFromRect() needs to be removed from Document.idl https://bugs.webkit.org/show_bug.cgi?id=46492 As discussed with Sam Weinig on IRC, it was decided to removed nodesFromRect() from the Document.idl, and that way, not exposing it to Web content. Reason: there is no plan to make it standard at the moment, and at the very least, the method should had been originally added with the "webkit" prefix, which was not the case. * dom/Document.idl: 2010-09-26 Renata Hodovan Reviewed by Dirk Schulze. SVGFEBlendElement doesn't support dynamic invalidation, when attributes change. https://bugs.webkit.org/show_bug.cgi?id=46464 Tests: svg/dynamic-updates/SVGFEBlendElement-dom-in-attr.html svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr.html svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr.html svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop.html svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop.html svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop.html * svg/SVGFEBlendElement.cpp: (WebCore::SVGFEBlendElement::svgAttributeChanged): * svg/SVGFEBlendElement.h: 2010-09-26 Andreas Kling Reviewed by Dan Bernstein. Canvas: Crash when setting a font with size in 'ex' units https://bugs.webkit.org/show_bug.cgi?id=46538 update() the style's font after setting the style's font description. Needed because CSSPrimitiveValue::computeLengthDouble() later assumes that the style's font is properly initialized (for xHeight().) Fixes crash on IE test center's canvas-text-font-002 test. * html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::setFont): 2010-09-26 Kwang Yul Seo Reviewed by Eric Seidel. [BREWMP] Don't pass PassOwnPtr in makeAllDirectories https://bugs.webkit.org/show_bug.cgi?id=42058 Change makeAllDirectories to take a raw FileMgr pointer because it is not safe to pass PassOwnPtr recursively. * platform/brew/FileSystemBrew.cpp: (WebCore::makeAllDirectories): 2010-09-26 Robert Hogan Reviewed by Andreas Kling. [Qt] fix http/tests/uri/escaped-entity.html Replace invalid encodings with the appropriate escaped entity. See also http://bugreports.qt.nokia.com/browse/QTBUG-13412 https://bugs.webkit.org/show_bug.cgi?id=45245 * platform/text/qt/TextCodecQt.cpp: (WebCore::TextCodecQt::encode): 2010-09-25 Abhishek Arya Reviewed by Nikolas Zimmermann. Fix the macro to bail out after setting the SVG style to 'initial'. Check that color is SVGColor before calling colorFromSVGColorCSSValue which makes sure we don't set invalid color. Also, doing the static cast in the caller and keeping the function colorFromSVGColorCSSValue clean to accept only take SVGColor objects. https://bugs.webkit.org/show_bug.cgi?id=46471 Test: svg/css/invalid-color-crash.svg * css/SVGCSSStyleSelector.cpp: (WebCore::colorFromSVGColorCSSValue): (WebCore::CSSStyleSelector::applySVGProperty): 2010-09-25 Ryosuke Niwa Reviewed by Tony Chang. FormatBlockCommand's modifyRange and doApply should be merged https://bugs.webkit.org/show_bug.cgi?id=46504 Isolated the code in doApply to insert and remove lists for single paragraph into doApplyForSingleParagraph. Merged the code in modifyRange into doApply and cleaned up. No new tests are added since this is a cleanup. * editing/FormatBlockCommand.cpp: (WebCore::FormatBlockCommand::doApply): Merged with modifyRange; calls doApplyForSingleParagraph. (WebCore::FormatBlockCommand::doApplyForSingleParagraph): Added. * editing/FormatBlockCommand.h: 2010-09-25 Dan Bernstein Reviewed by John Sullivan. Null deref in InlineBox::height() https://bugs.webkit.org/show_bug.cgi?id=45344 Test: fast/css/first-line-parent-style-different.html * rendering/RenderObject.cpp: (WebCore::RenderObject::firstLineStyleSlowCase): Set the pseudo style bit on the RenderStyle which is going to supply the first-line style rather than on this object’s RenderStyle. The styles may differ. 2010-09-25 Dan Bernstein Reviewed by John Sullivan. Make canHyphenate() return false for unsupported locales No change in functionality, hence no new test. * platform/text/cf/HyphenationCF.cpp: (WebCore::::createValueForKey): Return 0 if hyphenation is not available for the locale. (WebCore::cfLocaleCache): Moved the definition of the cache from lastHyphenLocation() to this new getter to allow canHyphenate() to share it. (WebCore::canHyphenate): Now returns true only if hyphenation is available. (WebCore::lastHyphenLocation): Added an assertion. 2010-09-25 Andreas Kling Reviewed by Kenneth Rohde Christiansen. [Qt] GraphicsContext::setLineDash() should scale dashOffset to penWidth https://bugs.webkit.org/show_bug.cgi?id=46548 Fixes incorrect rendering of This is covered by existing layout tests which need to be rebaselined. * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::setLineDash): 2010-09-24 Sam Weinig Rubber-stamped by Dan Bernstein. Fix accidental increase in the size of InlineBox by using a bit field to indicate that a bool should only take up 1 bit. * rendering/InlineBox.h: 2010-09-24 Simon Fraser Reviewed by Sam Weinig. Accelerated transitions do not suspend/resume properly. https://bugs.webkit.org/show_bug.cgi?id=43792 (1) Fix regression from r68233, where if an animation affected two properties, only one would animate. The testcase tests this. (2) Fix a flash at the end of an animation or transition that has been paused and resumed. The flash occurred because we used CAAnimation's timeOffset when resuming to push the start of the animation into the past. However, timeOffset does not play nicely with fill modes, causing a single frame of animation with the element in its unanimated state. Fixed this by offsetting the beginTime into the past, rather than setting timeOffset. Normally we submit animations with beginTime == 0, and rely on CA assigning a beginTime when the animation is committed. This beginTime is then passed to AnimationController to sync hardware and software animations. However, since the code now assigns beginTimes in the past (on resume), we now have to denote whether we've done this, and send an appropriate timestamp back to AnimationController. (3) Finally, the patch removes PropertyAnimationPair and just uses LayerPropertyAnimation instead. This is just cleanup. Test: animations/opacity-transform-animation.html * platform/graphics/mac/GraphicsLayerCA.h: Remove PropertyAnimationPair, and change AnimationsMap to store a vector of LayerPropertyAnimation. New method, animationDidStart(), is called from the -animationDidStart: callback. * platform/graphics/mac/GraphicsLayerCA.mm: (-[WebAnimationDelegate animationDidStart:]): Just call m_graphicsLayer->animationDidStart() now. (WebCore::animationIdentifier): We need to pass in the property, to fix (1) (WebCore::GraphicsLayerCA::moveOrCopyAnimationsForProperty): Copy the WebKitAnimationBeginTimeSet value, if present. (WebCore::GraphicsLayerCA::animationDidStart): Call notifyAnimationStarted() on the client, after testing if we set a non-zero beginTime on this particular animation. (WebCore::GraphicsLayerCA::updateLayerAnimations): Change to use LayerPropertyAnimation. (WebCore::GraphicsLayerCA::setCAAnimationOnLayer): Set value for WebKitAnimationBeginTimeSetKey if we have a non-zero timeOffset. Make animationID an NSString, to avoid several conversions. (WebCore::GraphicsLayerCA::removeCAAnimationFromLayer): Make animationID an NSString, to avoid several conversions. (WebCore::copyAnimationProperties): Copy WebKitAnimationBeginTimeSetKey if present. (WebCore::GraphicsLayerCA::pauseCAAnimationOnLayer): Make animationID an NSString, to avoid several conversions. 2010-09-24 Andreas Kling Reviewed by Kenneth Rohde Christiansen. SVG: Avoid calling pow() in genericParseNumber() unless necessary https://bugs.webkit.org/show_bug.cgi?id=46537 0.4% speedup on * svg/SVGParserUtilities.cpp: (WebCore::genericParseNumber): Only call pow() when we have an exponent. 2010-09-24 Martin Robinson Reviewed by Gustavo Noronha Silva. [GTK] opening local files on win32 https://bugs.webkit.org/show_bug.cgi?id=31066 This is tested by changes to the testmimehandling API test. * platform/network/soup/ResourceHandleSoup.cpp: Properly convert the GContentType of a file into a mime type. This is important for non-Unix platforms. 2010-09-24 Pawel Hajdan Reviewed by Dumitru Daniliuc. Move the implementation of chromium_vfs to webkit for POSIX. This allows us to link Chrome with system-provided SQLite on Linux. See also http://code.google.com/p/chromium/issues/detail?id=22208. https://bugs.webkit.org/show_bug.cgi?id=45416 No new tests. * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp: (sqliteErrorFromPosixError): (releaseLockInfo): (releaseOpenInfo): (findLockInfo): (chromiumCheckReservedLock): (rangeLock): (chromiumLock): (closePendingFds): (chromiumUnlock): (chromiumCloseNoLock): (chromiumClose): (chromiumCheckReservedLockNoop): (chromiumLockNoop): (chromiumUnlockNoop): (seekAndRead): (chromiumRead): (seekAndWrite): (chromiumWrite): (syncWrapper): (chromiumSync): (chromiumTruncate): (chromiumFileSize): (chromiumFileControl): (chromiumSectorSize): (chromiumDeviceCharacteristics): (fillInChromiumFile): (findReusableFd): (chromiumOpen): (chromiumDelete): (chromiumAccess): (chromiumFullPathname): (chromiumDlOpen): (chromiumDlError): (chromiumDlSym): (chromiumDlClose): (chromiumRandomness): (chromiumSleep): (chromiumCurrentTime): (chromiumGetLastError): (WebCore::SQLiteFileSystem::registerSQLiteVFS): 2010-09-24 Andreas Kling Reviewed by Dirk Schulze. SVG: Make SVGLength's stringToLengthType() stricter and faster https://bugs.webkit.org/show_bug.cgi?id=46066 Only accept unit names immediately following the numeric value. This behavior matches Gecko. Also, using String::endsWith("foo") caused a temporary WTF::String to be created. Avoid this by comparing characters directly. 10.5% speedup on Test: svg/custom/invalid-length-units.html * svg/SVGLength.cpp: (WebCore::stringToLengthType): (WebCore::SVGLength::setValueAsString): 2010-09-24 Luiz Agostini Reviewed by Kenneth Rohde Christiansen. Keep viewport information in Document https://bugs.webkit.org/show_bug.cgi?id=46385 The viewport meta data (layout viewport, scale) needs to be set again when bringing back a page from the page cache. As the viewport metadata is only retrieved while parsing the document, we need to store it in the Document class. Test: fast/viewport/viewport-128.html * WebCore.xcodeproj/project.pbxproj: * dom/Document.cpp: (WebCore::Document::processViewport): (WebCore::Document::setInPageCache): * dom/Document.h: (WebCore::Document::viewportArguments): 2010-09-24 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46496, rename containingBlockWidthForContent to containingBlockLogicalWidthForContent. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::localCaretRect): * rendering/RenderBox.cpp: (WebCore::RenderBox::containingBlockLogicalWidthForContent): (WebCore::RenderBox::computeLogicalWidth): (WebCore::RenderBox::computeReplacedWidthUsing): * rendering/RenderBox.h: * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::relativePositionOffsetX): (WebCore::RenderBoxModelObject::containingBlockLogicalWidthForContent): * rendering/RenderBoxModelObject.h: 2010-09-24 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46489, rename the lineWidth and left/RightOffset methods to reflect that they will be logical. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::determineHorizontalPosition): (WebCore::RenderBlock::leftSelectionOffset): (WebCore::RenderBlock::rightSelectionOffset): (WebCore::RenderBlock::positionNewFloats): (WebCore::RenderBlock::logicalLeftOffsetForContent): (WebCore::RenderBlock::logicalLeftOffsetForLine): (WebCore::RenderBlock::logicalRightOffsetForContent): (WebCore::RenderBlock::logicalRightOffsetForLine): (WebCore::RenderBlock::availableLogicalWidthForLine): (WebCore::RenderBlock::getClearDelta): * rendering/RenderBlock.h: (WebCore::RenderBlock::logicalRightOffsetForLine): (WebCore::RenderBlock::logicalLeftOffsetForLine): * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): (WebCore::RenderBlock::layoutInlineChildren): (WebCore::RenderBlock::skipTrailingWhitespace): (WebCore::RenderBlock::skipLeadingWhitespace): (WebCore::RenderBlock::fitBelowFloats): (WebCore::RenderBlock::findNextLineBreak): (WebCore::RenderBlock::checkLinesForTextOverflow): * rendering/RenderBox.cpp: (WebCore::RenderBox::containingBlockWidthForContent): * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::applyLineClamp): * rendering/RenderListItem.cpp: (WebCore::RenderListItem::positionListMarker): * rendering/RenderTable.cpp: (WebCore::RenderTable::computeLogicalWidth): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::selectionTop): 2010-09-24 Abhishek Arya Reviewed by Simon Fraser. Comply with spec by generalizing container on which transforms can be applied. https://bugs.webkit.org/show_bug.cgi?id=46485 Already covered by existing tests. * rendering/RenderObject.cpp: (WebCore::RenderObject::getTransformFromContainer): 2010-09-24 David Hyatt Reviewed by Simon Fraser. https://bugs.webkit.org/show_bug.cgi?id=46482, rename the various prefWidth functions to use preferredLogicalWidth. * rendering/AutoTableLayout.cpp: (WebCore::AutoTableLayout::recalcColumn): (WebCore::AutoTableLayout::computePreferredLogicalWidths): (WebCore::AutoTableLayout::calcEffectiveWidth): * rendering/AutoTableLayout.h: * rendering/FixedTableLayout.cpp: (WebCore::FixedTableLayout::calcWidthArray): (WebCore::FixedTableLayout::computePreferredLogicalWidths): * rendering/FixedTableLayout.h: * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlockChildren): (WebCore::RenderBlock::layoutPositionedObjects): (WebCore::RenderBlock::getClearDelta): (WebCore::RenderBlock::computePreferredLogicalWidths): (WebCore::RenderBlock::computeInlinePreferredLogicalWidths): (WebCore::RenderBlock::computeBlockPreferredLogicalWidths): * rendering/RenderBlock.h: * rendering/RenderBlockLineLayout.cpp: (WebCore::dirtyLineBoxesForRenderer): (WebCore::RenderBlock::layoutInlineChildren): * rendering/RenderBox.cpp: (WebCore::RenderBox::RenderBox): (WebCore::RenderBox::minPreferredLogicalWidth): (WebCore::RenderBox::maxPreferredLogicalWidth): (WebCore::RenderBox::computeLogicalWidth): (WebCore::RenderBox::computeLogicalWidthUsing): (WebCore::RenderBox::computePositionedLogicalWidth): (WebCore::RenderBox::computePositionedLogicalWidthUsing): * rendering/RenderBox.h: (WebCore::RenderBox::computePreferredLogicalWidths): * rendering/RenderCounter.cpp: (WebCore::RenderCounter::computePreferredLogicalWidths): * rendering/RenderCounter.h: * rendering/RenderDataGrid.cpp: (WebCore::RenderDataGrid::computePreferredLogicalWidths): * rendering/RenderDataGrid.h: * rendering/RenderFieldset.cpp: (WebCore::RenderFieldset::computePreferredLogicalWidths): * rendering/RenderFieldset.h: * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::computePreferredLogicalWidths): * rendering/RenderFileUploadControl.h: * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::calcHorizontalPrefWidths): (WebCore::RenderFlexibleBox::calcVerticalPrefWidths): (WebCore::RenderFlexibleBox::computePreferredLogicalWidths): (WebCore::RenderFlexibleBox::allowedChildFlex): * rendering/RenderFlexibleBox.h: * rendering/RenderFrameBase.cpp: (WebCore::RenderFrameBase::layoutWithFlattening): * rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::canvasSizeChanged): * rendering/RenderImage.cpp: (WebCore::RenderImage::imageChanged): * rendering/RenderListBox.cpp: (WebCore::RenderListBox::computePreferredLogicalWidths): * rendering/RenderListBox.h: * rendering/RenderListItem.cpp: (WebCore::RenderListItem::updateMarkerLocation): (WebCore::RenderListItem::computePreferredLogicalWidths): * rendering/RenderListItem.h: * rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::layout): (WebCore::RenderListMarker::computePreferredLogicalWidths): (WebCore::RenderListMarker::updateMargins): * rendering/RenderListMarker.h: * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::computePreferredLogicalWidths): * rendering/RenderMenuList.h: * rendering/RenderObject.cpp: (WebCore::RenderObject::RenderObject): (WebCore::RenderObject::setPreferredLogicalWidthsDirty): (WebCore::RenderObject::invalidateContainerPreferredLogicalWidths): * rendering/RenderObject.h: (WebCore::RenderObject::preferredLogicalWidthsDirty): (WebCore::RenderObject::setNeedsLayoutAndPrefWidthsRecalc): (WebCore::RenderObject::minPreferredLogicalWidth): (WebCore::RenderObject::maxPreferredLogicalWidth): * rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::computePreferredLogicalWidths): * rendering/RenderReplaced.h: * rendering/RenderReplica.cpp: (WebCore::RenderReplica::computePreferredLogicalWidths): * rendering/RenderReplica.h: * rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::computePreferredLogicalWidths): * rendering/RenderSVGRoot.h: * rendering/RenderScrollbarPart.cpp: (WebCore::RenderScrollbarPart::computePreferredLogicalWidths): * rendering/RenderScrollbarPart.h: * rendering/RenderSlider.cpp: (WebCore::RenderSlider::computePreferredLogicalWidths): * rendering/RenderSlider.h: * rendering/RenderTable.cpp: (WebCore::RenderTable::computeLogicalWidth): (WebCore::RenderTable::computePreferredLogicalWidths): * rendering/RenderTable.h: * rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::computePreferredLogicalWidths): * rendering/RenderTableCell.h: * rendering/RenderTableCol.cpp: (WebCore::RenderTableCol::computePreferredLogicalWidths): * rendering/RenderTableCol.h: * rendering/RenderText.cpp: (WebCore::RenderText::trimmedPrefWidths): (WebCore::RenderText::minPreferredLogicalWidth): (WebCore::RenderText::maxPreferredLogicalWidth): (WebCore::RenderText::computePreferredLogicalWidths): (WebCore::RenderText::width): * rendering/RenderText.h: * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::computePreferredLogicalWidths): * rendering/RenderTextControl.h: * rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::preferredContentWidth): (WebCore::RenderTextControlSingleLine::preferredDecorationWidthRight): * rendering/RenderVideo.cpp: (WebCore::RenderVideo::updateIntrinsicSize): * rendering/RenderView.cpp: (WebCore::RenderView::RenderView): (WebCore::RenderView::computePreferredLogicalWidths): (WebCore::RenderView::layout): * rendering/RenderView.h: * rendering/TableLayout.h: 2010-09-24 Jian Li Reviewed by Alexey Proskuryakov. DOMWindow::revokeBlobURL erroneously uses ParsedURLString. https://bugs.webkit.org/show_bug.cgi?id=46434 Test: fast/files/revoke-blob-url.html * page/DOMWindow.cpp: (WebCore::DOMWindow::revokeBlobURL): 2010-09-24 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46474 Patch computeWidthUsing to be block-flow-aware. Rename the WidthType enum to LogicalWidthType. Make computeLogicalWidthUsing query the style for logical width properties instead of width properties. fast/css/logical-property-resolution.html now fails and gives bad results. This is expected. It will become correct again as more layout code gets patched. * rendering/RenderBox.cpp: (WebCore::RenderBox::computeLogicalWidth): (WebCore::RenderBox::computeLogicalWidthUsing): (WebCore::RenderBox::sizesToIntrinsicWidth): * rendering/RenderBox.h: 2010-09-24 Andrey Kosyakov Reviewed by Pavel Feldman. Web Inspector: Clicking "Select All" in audits panel has no effect when the checkbox is unchecked Only add category event listeners to real categories, not to "Select All" https://bugs.webkit.org/show_bug.cgi?id=46467 * inspector/front-end/AuditLauncherView.js: (WebInspector.AuditLauncherView.prototype._createCategoryElement): 2010-09-24 Hans Wennborg Reviewed by Steve Block. Remove unnecessary casts in DeviceOrientation V8 bindings https://bugs.webkit.org/show_bug.cgi?id=46466 Remove unnecessary casts of v8::Value::NumberValue() to double from the custom v8 bindings code for DeviceOrientation/Motion. No new tests: just cleanup, no new functionality. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): * bindings/v8/custom/V8DeviceOrientationEventCustom.cpp: (WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback): 2010-09-24 Ilya Tikhonovsky Reviewed by Pavel Feldman. Web Inspector: move searchingForNode flag in InspectorController under control of InspectorCookies. Four functions from Inspector IDL go away. Searching for node feature of Inspector keeps alive even after navigation. https://bugs.webkit.org/show_bug.cgi?id=46462 * inspector/Inspector.idl: * inspector/InspectorController.cpp: (WebCore::InspectorController::updateInspectorStateCookie): (WebCore::InspectorController::restoreInspectorStateFromCookie): (WebCore::InspectorController::setSearchingForNode): (WebCore::InspectorController::populateScriptObjects): * inspector/InspectorController.h: * inspector/front-end/ElementsPanel.js: (WebInspector.ElementsPanel.prototype.hide): (WebInspector.ElementsPanel.prototype.updateFocusedNode): (WebInspector.ElementsPanel.prototype._setSearchingForNode): (WebInspector.ElementsPanel.prototype.setSearchingForNode): (WebInspector.ElementsPanel.prototype.toggleSearchingForNode): * inspector/front-end/inspector.js: (WebInspector._updateFocusedNode): 2010-09-24 Andrei Popescu Reviewed by Jeremy Orlow. IDBTransactionCoordinator incorrectly assumes that aborted transactions must have been started or running. https://bugs.webkit.org/show_bug.cgi?id=46459 No new tests, storage/indexeddb/transaction-basics.html covers this. Also fixes http://code.google.com/p/chromium/issues/detail?id=56732 * storage/IDBTransactionCoordinator.cpp: (WebCore::IDBTransactionCoordinator::didFinishTransaction): 2010-09-24 Hans Wennborg Reviewed by Steve Block. Update DeviceMotionEvent to spec https://bugs.webkit.org/show_bug.cgi?id=46344 The spec has changed: the DeviceMotionEvent attributes accelerationX, accelerationY, etc. have been baked into an 'acceleration' attribute which returns an object with x, y, and z values. Likewise for the rotation rate. The 'accelerationIncludingGravity' attribute is new. * WebCore.exp.in: The DeviceMotionData::create member function has changed. Also export create functions for DeviceMotionData::Acceleration and RotationRate. * bindings/js/JSDeviceMotionEventCustom.cpp: (WebCore::JSDeviceMotionEvent::acceleration): (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity): (WebCore::JSDeviceMotionEvent::rotationRate): (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent): Manually create and return objects with the right attributes for acceleration, accelerationIncludingGravity, and rotationRate. When creating the DeviceMotionData object in initDeviceMotionEvent, accept any input objects that have the right attributes. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter): (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter): (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter): (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): V8 counterpart to the JSC code above. * dom/DeviceMotionData.cpp: (WebCore::DeviceMotionData::Acceleration::create): (WebCore::DeviceMotionData::Acceleration::Acceleration): (WebCore::DeviceMotionData::RotationRate::create): (WebCore::DeviceMotionData::RotationRate::RotationRate): (WebCore::DeviceMotionData::create): (WebCore::DeviceMotionData::DeviceMotionData): * dom/DeviceMotionData.h: (WebCore::DeviceMotionData::Acceleration::canProvideX): (WebCore::DeviceMotionData::Acceleration::canProvideY): (WebCore::DeviceMotionData::Acceleration::canProvideZ): (WebCore::DeviceMotionData::Acceleration::x): (WebCore::DeviceMotionData::Acceleration::y): (WebCore::DeviceMotionData::Acceleration::z): (WebCore::DeviceMotionData::RotationRate::canProvideAlpha): (WebCore::DeviceMotionData::RotationRate::canProvideBeta): (WebCore::DeviceMotionData::RotationRate::canProvideGamma): (WebCore::DeviceMotionData::RotationRate::alpha): (WebCore::DeviceMotionData::RotationRate::beta): (WebCore::DeviceMotionData::RotationRate::gamma): (WebCore::DeviceMotionData::acceleration): (WebCore::DeviceMotionData::accelerationIncludingGravity): (WebCore::DeviceMotionData::rotationRate): Add member classes Acceleration and RotationRate to DeviceMotionData. * dom/DeviceMotionEvent.idl: Update according to the spec. Acceleration and RotationRate need not be backed by native classes. 2010-09-24 Romain Pokrzywka Reviewed by Simon Hausmann. [Qt] Fix the Wince build. * WebCore.pro: Apply msvc flags to wince, too. 2010-09-24 Anders Bakken Reviewed by Simon Hausmann. [Qt] Enable building Qt/Webkit with debug symbols With this patch one can configure with -webkit-debug to build Webkit with debug symbols without having to manually edit WebCore.pro. * WebCore.pro: 2010-09-24 Yael Aharon Reviewed by Kenneth Rohde Christiansen. [Qt] Web Sockets are insecure with QtWebKit https://bugs.webkit.org/show_bug.cgi?id=44769 Throw an error when the server certificate is not valid. DRT currently does not support secure websocket connection, so no new tests. This was tested with the server at http://code.google.com/p/pywebsocket instead. * platform/network/qt/SocketStreamHandleQt.cpp: (WebCore::SocketStreamHandlePrivate::socketSslErrors): 2010-09-24 Jia Pu Reviewed by Shinichiro Hamaji. Need to remove autocorrection underlines in current line when newline is entered. https://bugs.webkit.org/show_bug.cgi?id=45709 This change affects only Mac OSX build. * dom/DocumentMarker.h: Added "CorrectionIndicator" to indicate the words on which we need to draw autocorrection underline. We cannot use existing "Replacement" for this purpose, since it is not meant to be removed once it is added. But we need to remove all autocorrection underlines when a line break or paragraph separator is inserted, which is the behavior in NSTextView. Hence we need a separate marker value for drawing autocorrection underline. * editing/Editor.cpp: (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Add "CorrectionIndicator" when autocorrection takes place. (WebCore::Editor::changeSelectionAfterCommand): Remove "CorrectionIndicator" markers if the command results in inserting paragraph separator. * rendering/InlineTextBox.cpp: (WebCore::textCheckingLineStyleForMarkerType): Use "CorrectionIndicator" marker instead of "Replacement" to draw autocorrection underline. (WebCore::InlineTextBox::paintDocumentMarkers): Ditto. 2010-09-24 Eric Uhrhane Reviewed by David Levin. Remove unnecessary parameter from AsyncFileWriterClient::didTruncate https://bugs.webkit.org/show_bug.cgi?id=46390 * fileapi/AsyncFileWriterClient.h: Added state to FileWriter to replace the parameter. * fileapi/FileWriter.h: * fileapi/FileWriter.cpp: (WebCore::FileWriter::truncate): (WebCore::FileWriter::didTruncate): 2010-09-24 Sheriff Bot Unreviewed, rolling out r68236. http://trac.webkit.org/changeset/68236 https://bugs.webkit.org/show_bug.cgi?id=46449 compile fix didn't work (Requested by dino___ on #webkit). * WebCore.exp.in: * bindings/js/JSDeviceMotionEventCustom.cpp: (WebCore::JSDeviceMotionEvent::xAcceleration): (WebCore::JSDeviceMotionEvent::yAcceleration): (WebCore::JSDeviceMotionEvent::zAcceleration): (WebCore::JSDeviceMotionEvent::xRotationRate): (WebCore::JSDeviceMotionEvent::yRotationRate): (WebCore::JSDeviceMotionEvent::zRotationRate): (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent): * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: (WebCore::V8DeviceMotionEvent::xAccelerationAccessorGetter): (WebCore::V8DeviceMotionEvent::yAccelerationAccessorGetter): (WebCore::V8DeviceMotionEvent::zAccelerationAccessorGetter): (WebCore::V8DeviceMotionEvent::xRotationRateAccessorGetter): (WebCore::V8DeviceMotionEvent::yRotationRateAccessorGetter): (WebCore::V8DeviceMotionEvent::zRotationRateAccessorGetter): (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): * dom/DeviceMotionData.cpp: (WebCore::DeviceMotionData::create): (WebCore::DeviceMotionData::DeviceMotionData): * dom/DeviceMotionData.h: (WebCore::DeviceMotionData::xAcceleration): (WebCore::DeviceMotionData::yAcceleration): (WebCore::DeviceMotionData::zAcceleration): (WebCore::DeviceMotionData::xRotationRate): (WebCore::DeviceMotionData::yRotationRate): (WebCore::DeviceMotionData::zRotationRate): (WebCore::DeviceMotionData::canProvideXAcceleration): (WebCore::DeviceMotionData::canProvideYAcceleration): (WebCore::DeviceMotionData::canProvideZAcceleration): (WebCore::DeviceMotionData::canProvideXRotationRate): (WebCore::DeviceMotionData::canProvideYRotationRate): (WebCore::DeviceMotionData::canProvideZRotationRate): * dom/DeviceMotionEvent.idl: 2010-09-24 Chris Guillory Reviewed by Chris Fleizach. Send webkit accessibility notifications to Chromium. https://bugs.webkit.org/show_bug.cgi?id=45156 * WebCore.gypi: * accessibility/chromium/AXObjectCacheChromium.cpp: (WebCore::AXObjectCache::postPlatformNotification): (WebCore::AXObjectCache::handleFocusedUIElementChanged): (WebCore::AXObjectCache::handleScrolledToAnchor): * dom/Document.cpp: (WebCore::Document::implicitClose): (WebCore::Document::setFocusedNode): * editing/SelectionController.h: * page/ChromeClient.h: (WebCore::ChromeClient::postAccessibilityNotification): * page/FrameView.cpp: (WebCore::FrameView::layout): 2010-09-24 David Hyatt Reviewed by Maciej Stachowiak. https://bugs.webkit.org/show_bug.cgi?id=46454, rename a bunch of the width and height calculation methods. calcReplacedWidth -> computeReplacedWidth calcHorizontalMargins -> computeInlineDirectionMargins calcVerticalMargins -> computeBlockDirectionMargins calcWidthUsing -> computeLogicalWidthUsing calcHeightUsing -> computeLogicalHeightUsing calcReplacedHeight/HeightUsing -> computeReplacedHeight/HeightUsing calcAbsoluteHorizontalValues -> computePositionedLogicalWidthUsing calcAbsoluteVerticalValues -> computePositionedLogicalHeightUsing calcAbsoluteHorizontal -> computePositionedLogicalWIdth calcAbsoluteVertical -> computePositionedLogicalHeight calcAbsoluteHorizontalReplaced -> computePositionedLogicalWidthReplaced calcAbsoluteVerticalReplaced -> computePositionedLogicalHeightReplaced calcBorderBoxWidth/Height -> computeBorderBoxLogicalWidth/LogicalHeight calcContentBoxWidth/Height -> computeContentBoxLogicalWidth/LogicalHeight shouldCalculateSizeAsReplaced -> shouldComputeSizeAsReplaced calcPercentageHeight -> computePercentageLogicalHeight * rendering/AutoTableLayout.cpp: (WebCore::AutoTableLayout::recalcColumn): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::adjustPositionedBlock): (WebCore::RenderBlock::determineHorizontalPosition): (WebCore::RenderBlock::layoutBlockChild): (WebCore::RenderBlock::insertFloatingObject): (WebCore::RenderBlock::calcPrefWidths): * rendering/RenderBox.cpp: (WebCore::RenderBox::computeBorderBoxLogicalWidth): (WebCore::RenderBox::computeBorderBoxLogicalHeight): (WebCore::RenderBox::computeContentBoxLogicalWidth): (WebCore::RenderBox::computeContentBoxLogicalHeight): (WebCore::RenderBox::computeLogicalWidth): (WebCore::RenderBox::computeLogicalWidthUsing): (WebCore::RenderBox::computeInlineDirectionMargins): (WebCore::RenderBox::computeLogicalHeight): (WebCore::RenderBox::computeLogicalHeightUsing): (WebCore::RenderBox::computePercentageLogicalHeight): (WebCore::RenderBox::computeReplacedWidth): (WebCore::RenderBox::computeReplacedWidthUsing): (WebCore::RenderBox::computeReplacedHeight): (WebCore::RenderBox::computeReplacedHeightUsing): (WebCore::RenderBox::availableHeightUsing): (WebCore::RenderBox::computeBlockDirectionMargins): (WebCore::RenderBox::computePositionedLogicalWidth): (WebCore::RenderBox::computePositionedLogicalWidthUsing): (WebCore::RenderBox::computePositionedLogicalHeight): (WebCore::RenderBox::computePositionedLogicalHeightUsing): (WebCore::RenderBox::computePositionedLogicalWidthReplaced): (WebCore::RenderBox::computePositionedLogicalHeightReplaced): * rendering/RenderBox.h: (WebCore::RenderBox::shouldComputeSizeAsReplaced): * rendering/RenderDataGrid.cpp: (WebCore::RenderDataGrid::calcPrefWidths): * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::calcPrefWidths): * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::calcPrefWidths): (WebCore::RenderFlexibleBox::layoutHorizontalBox): (WebCore::RenderFlexibleBox::layoutVerticalBox): * rendering/RenderImage.cpp: (WebCore::RenderImage::computeReplacedWidth): (WebCore::RenderImage::computeReplacedHeight): (WebCore::RenderImage::calcAspectRatioWidth): (WebCore::RenderImage::calcAspectRatioHeight): * rendering/RenderImage.h: * rendering/RenderListBox.cpp: (WebCore::RenderListBox::calcPrefWidths): * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::calcPrefWidths): * rendering/RenderObject.cpp: (WebCore::RenderObject::container): * rendering/RenderObject.h: (WebCore::RenderObject::computeBlockDirectionMargins): * rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::computeReplacedWidth): (WebCore::RenderReplaced::computeReplacedHeight): (WebCore::RenderReplaced::calcAspectRatioWidth): (WebCore::RenderReplaced::calcAspectRatioHeight): (WebCore::RenderReplaced::calcPrefWidths): * rendering/RenderReplaced.h: * rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::calcPrefWidths): (WebCore::RenderSVGRoot::computeReplacedWidth): (WebCore::RenderSVGRoot::computeReplacedHeight): * rendering/RenderSVGRoot.h: * rendering/RenderSlider.cpp: (WebCore::RenderSlider::calcPrefWidths): * rendering/RenderTable.cpp: (WebCore::RenderTable::computeLogicalWidth): (WebCore::RenderTable::layout): * rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::layout): * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::calcPrefWidths): * rendering/RenderVideo.cpp: (WebCore::RenderVideo::computeReplacedWidth): (WebCore::RenderVideo::computeReplacedHeight): * rendering/RenderVideo.h: 2010-09-23 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46451 Rename calcWidth to computeLogicalWidth. Rename calcHeight to computeLogicalHeight. * rendering/RenderApplet.cpp: (WebCore::RenderApplet::layout): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock): (WebCore::RenderBlock::insertFloatingObject): (WebCore::RenderBlock::getClearDelta): * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): * rendering/RenderBox.cpp: (WebCore::RenderBox::computeLogicalWidth): (WebCore::RenderBox::computeLogicalHeight): (WebCore::RenderBox::calcPercentageHeight): (WebCore::RenderBox::calcReplacedHeightUsing): (WebCore::RenderBox::availableHeightUsing): (WebCore::RenderBox::calcAbsoluteHorizontal): * rendering/RenderBox.h: (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly): * rendering/RenderEmbeddedObject.cpp: (WebCore::RenderEmbeddedObject::layout): * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutBlock): (WebCore::RenderFlexibleBox::layoutHorizontalBox): (WebCore::RenderFlexibleBox::layoutVerticalBox): * rendering/RenderForeignObject.cpp: (WebCore::RenderForeignObject::computeLogicalWidth): (WebCore::RenderForeignObject::computeLogicalHeight): * rendering/RenderForeignObject.h: * rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::canvasSizeChanged): * rendering/RenderIFrame.cpp: (WebCore::RenderIFrame::computeLogicalHeight): (WebCore::RenderIFrame::computeLogicalWidth): (WebCore::RenderIFrame::layout): * rendering/RenderIFrame.h: * rendering/RenderImage.cpp: (WebCore::RenderImage::imageChanged): * rendering/RenderIndicator.cpp: (WebCore::RenderIndicator::layout): * rendering/RenderListBox.cpp: (WebCore::RenderListBox::computeLogicalHeight): * rendering/RenderListBox.h: * rendering/RenderMeter.cpp: (WebCore::RenderMeter::computeLogicalWidth): (WebCore::RenderMeter::computeLogicalHeight): * rendering/RenderMeter.h: * rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::layout): * rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::layout): * rendering/RenderSlider.cpp: (WebCore::RenderSlider::layout): * rendering/RenderTable.cpp: (WebCore::RenderTable::computeLogicalWidth): (WebCore::RenderTable::layout): * rendering/RenderTable.h: * rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::computeLogicalWidth): * rendering/RenderTableCell.h: * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::computeLogicalHeight): * rendering/RenderTextControl.h: * rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::layout): (WebCore::RenderTextControlSingleLine::textBlockWidth): (WebCore::RenderTextControlSingleLine::decorationWidthRight): (WebCore::RenderTextControlSingleLine::preferredDecorationWidthRight): (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight): * rendering/RenderView.cpp: (WebCore::RenderView::computeLogicalHeight): (WebCore::RenderView::computeLogicalWidth): * rendering/RenderView.h: * svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::svgAttributeChanged): 2010-09-23 Hans Wennborg Reviewed by Simon Fraser. Update DeviceMotionEvent to spec https://bugs.webkit.org/show_bug.cgi?id=46344 The spec has changed: the DeviceMotionEvent attributes accelerationX, accelerationY, etc. have been baked into an 'acceleration' attribute which returns an object with x, y, and z values. Likewise for the rotation rate. The 'accelerationIncludingGravity' attribute is new. * WebCore.exp.in: The DeviceMotionData::create member function has changed. Also export create functions for DeviceMotionData::Acceleration and RotationRate. * bindings/js/JSDeviceMotionEventCustom.cpp: (WebCore::JSDeviceMotionEvent::acceleration): (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity): (WebCore::JSDeviceMotionEvent::rotationRate): (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent): Manually create and return objects with the right attributes for acceleration, accelerationIncludingGravity, and rotationRate. When creating the DeviceMotionData object in initDeviceMotionEvent, accept any input objects that have the right attributes. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter): (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter): (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter): (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): V8 counterpart to the JSC code above. * dom/DeviceMotionData.cpp: (WebCore::DeviceMotionData::Acceleration::create): (WebCore::DeviceMotionData::Acceleration::Acceleration): (WebCore::DeviceMotionData::RotationRate::create): (WebCore::DeviceMotionData::RotationRate::RotationRate): (WebCore::DeviceMotionData::create): (WebCore::DeviceMotionData::DeviceMotionData): * dom/DeviceMotionData.h: (WebCore::DeviceMotionData::Acceleration::canProvideX): (WebCore::DeviceMotionData::Acceleration::canProvideY): (WebCore::DeviceMotionData::Acceleration::canProvideZ): (WebCore::DeviceMotionData::Acceleration::x): (WebCore::DeviceMotionData::Acceleration::y): (WebCore::DeviceMotionData::Acceleration::z): (WebCore::DeviceMotionData::RotationRate::canProvideAlpha): (WebCore::DeviceMotionData::RotationRate::canProvideBeta): (WebCore::DeviceMotionData::RotationRate::canProvideGamma): (WebCore::DeviceMotionData::RotationRate::alpha): (WebCore::DeviceMotionData::RotationRate::beta): (WebCore::DeviceMotionData::RotationRate::gamma): (WebCore::DeviceMotionData::acceleration): (WebCore::DeviceMotionData::accelerationIncludingGravity): (WebCore::DeviceMotionData::rotationRate): Add member classes Acceleration and RotationRate to DeviceMotionData. * dom/DeviceMotionEvent.idl: Update according to the spec. Acceleration and RotationRate need not be backed by native classes. 2010-09-23 Simon Fraser Reviewed by Dan Bernstein. Accelerated transitions do not suspend/resume properly. https://bugs.webkit.org/show_bug.cgi?id=43792 Fix suspending of accelerated transitions. GraphicsLayer changes unify the handling of transitions and animations in GraphicsLayer. Both are now identified by name, so the code now refers to "animationName" rather than "keyframesName". Transitions use a dummy name which is not a valid keyframe identifier. Tests: animations/suspend-transform-animation.html transitions/suspend-transform-transition.html * page/animation/ImplicitAnimation.h: * page/animation/ImplicitAnimation.cpp: (WebCore::ImplicitAnimation::pauseAnimation): Call down to the RenderLayerBacking to tell it that an accelerated transition was paused. * platform/graphics/GraphicsLayer.h: * platform/graphics/GraphicsLayer.cpp: (WebCore::GraphicsLayer::animationNameForTransition): Create a name for the transition of the given property. (WebCore::GraphicsLayer::addAnimation): Generalize "keyframe" to "animation" in the parameter names. (WebCore::GraphicsLayer::pauseAnimation): ditto (WebCore::GraphicsLayer::removeAnimation): ditto * platform/graphics/mac/GraphicsLayerCA.h: Parameter renaming, and some method renames for clarity. (WebCore::GraphicsLayerCA::animationIsRunning): (WebCore::GraphicsLayerCA::LayerPropertyAnimation::LayerPropertyAnimation): struct rename for clarity. * platform/graphics/mac/GraphicsLayerCA.mm: (WebCore::animationIdentifier): the animationName already has the property baked in. (WebCore::GraphicsLayerCA::moveOrCopyLayerAnimation): just deals with one animation now. (WebCore::GraphicsLayerCA::moveOrCopyAnimationsForProperty): we have to trawl through m_runningAnimations to get the identifiers for the animations that need to be copied. (WebCore::GraphicsLayerCA::addAnimation): rename parameters. (WebCore::GraphicsLayerCA::pauseAnimation): re-ordered methods here. member var renames. (WebCore::GraphicsLayerCA::removeAnimation): ditto. (WebCore::GraphicsLayerCA::updateLayerAnimations): no need to iterate over m_transitionPropertiesToRemove, and no more divergence between transitions and animations. (WebCore::GraphicsLayerCA::setCAAnimationOnLayer): renames for clarity. (WebCore::GraphicsLayerCA::removeCAAnimationFromLayer): ditto (WebCore::GraphicsLayerCA::pauseCAAnimationOnLayer): ditto (WebCore::GraphicsLayerCA::createAnimationFromKeyframes): renames (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): renames (WebCore::GraphicsLayerCA::suspendAnimations): whitespace. * rendering/RenderLayerBacking.h: Group the transition and animation methods together. * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::animationPaused): Re-ordered methods for clarity. (WebCore::RenderLayerBacking::animationFinished): ditto (WebCore::RenderLayerBacking::startTransition): Use animationNameForTransition() to generate the animation identifier. (WebCore::RenderLayerBacking::transitionPaused): Call pauseAnimation, using animationNameForTransition() to generate the animation identifier. (WebCore::RenderLayerBacking::transitionFinished): Call removeAnimation, using animationNameForTransition() to generate the animation identifier. (WebCore::RenderLayerBacking::notifyAnimationStarted): Moved. (WebCore::RenderLayerBacking::notifySyncRequired): Moved. 2010-09-23 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46442 Disallow the setting of block-flow to anything other than "tb" for all table-related display types and flexible box display types. By disallowing block-flow on the subclasses of RenderBlock like tables and flexible boxes, we ensure that alterations to the RenderBlock base class won't result in misrenderings in tables and flexible boxes that try to specify other block flow values. * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle): 2010-09-23 Kinuko Yasuda Reviewed by David Levin. Add Worker support for FileSystem API https://bugs.webkit.org/show_bug.cgi?id=45808 Exposed requestFileSystem and Flags constructor on worker contexts. Also changed how to get the base path for Web file systems (in non-chromium ports) so that it works for workers too. This patch assumes each port calls LocalFileSystem::initializeLocalFileSystem() in its initialization phase. No new tests; tests will be added when we have complete implementation. * bindings/generic/RuntimeEnabledFeatures.cpp: (WebCore::RuntimeEnabledFeatures::fileSystemEnabled): Changed to reflect AsyncFileSystem::isAvailable * bindings/generic/RuntimeEnabledFeatures.h: Moved the implementation of fileSystemEnabled to .cpp. * fileapi/LocalFileSystem.cpp: (WebCore::LocalFileSystem::initializeLocalFileSystem): Added. (WebCore::LocalFileSystem::localFileSystem): Added. (WebCore::LocalFileSystem::fileSystemBasePath): Added. * fileapi/LocalFileSystem.h: (WebCore::LocalFileSystem::~LocalFileSystem): Removed. (As now it's going to be used as a singleton.) * page/DOMWindow.cpp: (WebCore::DOMWindow::requestFileSystem): Changed to use a singleton instance of LocalFileSystem. * page/SecurityOrigin.h: (WebCore::SecurityOrigin::canAccessFileSystem): Added. * page/Settings.cpp: Removed fileSystemRootPath method. * page/Settings.h: Removed fileSystemRootPath method. * platform/AsyncFileSystem.cpp: (WebCore::AsyncFileSystem::isAvailable): Added. * workers/WorkerContext.cpp: (WebCore::WorkerContext::requestFileSystem): Added to expose requestFileSystem method in worker contexts. (WebCore::WorkerContext::Observer): Added. (WebCore::WorkerContext::registerObserver): Added. (WebCore::WorkerContext::unregisterObserver): Added. (WebCore::WorkerContext::notifyObserversOfStop): Added. * workers/WorkerContext.h: * workers/WorkerContext.idl: * workers/WorkerThread.cpp: (WebCore::WorkerThreadShutdownStartTask::performTask): Modified to call workerContext->notifyObserversOfStop to notify worker observers of the worker thread termination. 2010-09-23 Matthew Delaney Reviewed by Oliver Hunt. Lower the default canvas interpolation quality for platforms that use CG https://bugs.webkit.org/show_bug.cgi?id=45722 Lowered the default image interpolation quality for platforms that use CG down to low since this is as good as if not better than other graphics platforms defaults (being bilinear interpolation). * html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::createImageBuffer): * html/HTMLCanvasElement.h: Moved in macros for default canvas interp quality. * platform/graphics/GraphicsContext.h: Moved out macros for default canvas interp quality. It makes more sense for them to be housed where they're used. 2010-09-23 David Hyatt Reviewed by Adele Peterson. https://bugs.webkit.org/show_bug.cgi?id=46414, rename line box methods that refer specifically to "horizontal" and "vertical." Replace those terms with "inline direction" and "block direction." * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesInInlineDirection): (WebCore::InlineFlowBox::placeBoxesInBlockDirection): (WebCore::InlineFlowBox::computeBlockDirectionOverflow): * rendering/InlineFlowBox.h: (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions): (WebCore::InlineFlowBox::setBlockDirectionOverflowPositions): * rendering/RenderBlock.h: * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): (WebCore::RenderBlock::computeBlockDirectionPositionsForLine): (WebCore::RenderBlock::layoutInlineChildren): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::alignBoxesInBlockDirection): * rendering/RootInlineBox.h: 2010-09-23 Andrew Wilson Unreviewed, rolling out r68197. http://trac.webkit.org/changeset/68197 https://bugs.webkit.org/show_bug.cgi?id=46344 Breaks * WebCore.exp.in: * bindings/js/JSDeviceMotionEventCustom.cpp: (WebCore::JSDeviceMotionEvent::xAcceleration): (WebCore::JSDeviceMotionEvent::yAcceleration): (WebCore::JSDeviceMotionEvent::zAcceleration): (WebCore::JSDeviceMotionEvent::xRotationRate): (WebCore::JSDeviceMotionEvent::yRotationRate): (WebCore::JSDeviceMotionEvent::zRotationRate): (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent): * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: (WebCore::V8DeviceMotionEvent::xAccelerationAccessorGetter): (WebCore::V8DeviceMotionEvent::yAccelerationAccessorGetter): (WebCore::V8DeviceMotionEvent::zAccelerationAccessorGetter): (WebCore::V8DeviceMotionEvent::xRotationRateAccessorGetter): (WebCore::V8DeviceMotionEvent::yRotationRateAccessorGetter): (WebCore::V8DeviceMotionEvent::zRotationRateAccessorGetter): (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): * dom/DeviceMotionData.cpp: (WebCore::DeviceMotionData::create): (WebCore::DeviceMotionData::DeviceMotionData): * dom/DeviceMotionData.h: (WebCore::DeviceMotionData::xAcceleration): (WebCore::DeviceMotionData::yAcceleration): (WebCore::DeviceMotionData::zAcceleration): (WebCore::DeviceMotionData::xRotationRate): (WebCore::DeviceMotionData::yRotationRate): (WebCore::DeviceMotionData::zRotationRate): (WebCore::DeviceMotionData::canProvideXAcceleration): (WebCore::DeviceMotionData::canProvideYAcceleration): (WebCore::DeviceMotionData::canProvideZAcceleration): (WebCore::DeviceMotionData::canProvideXRotationRate): (WebCore::DeviceMotionData::canProvideYRotationRate): (WebCore::DeviceMotionData::canProvideZRotationRate): * dom/DeviceMotionEvent.idl: 2010-09-23 David Hyatt Reviewed by Adele Peterson. https://bugs.webkit.org/show_bug.cgi?id=46403, convert the margin/border/padding accessors to be logical. * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::getFlowSpacingLogicalWidth): (WebCore::InlineFlowBox::placeBoxesHorizontally): (WebCore::InlineFlowBox::paintBoxShadow): (WebCore::InlineFlowBox::paintBoxDecorations): (WebCore::InlineFlowBox::paintTextDecorations): * rendering/InlineFlowBox.h: (WebCore::InlineFlowBox::InlineFlowBox): (WebCore::InlineFlowBox::marginBorderPaddingLogicalLeft): (WebCore::InlineFlowBox::marginBorderPaddingLogicalRight): (WebCore::InlineFlowBox::marginLogicalLeft): (WebCore::InlineFlowBox::marginLogicalRight): (WebCore::InlineFlowBox::borderLogicalLeft): (WebCore::InlineFlowBox::borderLogicalRight): (WebCore::InlineFlowBox::paddingLogicalLeft): (WebCore::InlineFlowBox::paddingLogicalRight): (WebCore::InlineFlowBox::includeLogicalLeftEdge): (WebCore::InlineFlowBox::includeLogicalRightEdge): (WebCore::InlineFlowBox::setEdges): * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlock::computeHorizontalPositionsForLine): * rendering/RenderBox.cpp: (WebCore::RenderBox::containingBlockWidthForPositioned): (WebCore::RenderBox::calcAbsoluteHorizontalValues): (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::paintFillLayerExtended): 2010-09-23 Jeff Schiller Reviewed by David Hyatt. Ensure that SVG documents included by reference (object, iframe, embed) have transparent backgrounds (not white). https://bugs.webkit.org/show_bug.cgi?id=10687 Test: svg/in-html/by-reference.html * dom/Document.cpp: (WebCore::Document::hasSVGRootNode): * dom/Document.h: (WebCore::Document::hasSVGRootNode): * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::paintFillLayerExtended): 2010-09-23 Hans Wennborg Reviewed by Simon Fraser. Update DeviceMotionEvent to spec https://bugs.webkit.org/show_bug.cgi?id=46344 The spec has changed: the DeviceMotionEvent attributes accelerationX, accelerationY, etc. have been baked into an 'acceleration' attribute which returns an object with x, y, and z values. Likewise for the rotation rate. The 'accelerationIncludingGravity' attribute is new. * WebCore.exp.in: The DeviceMotionData::create member function has changed. Also export create functions for DeviceMotionData::Acceleration and RotationRate. * bindings/js/JSDeviceMotionEventCustom.cpp: (WebCore::JSDeviceMotionEvent::acceleration): (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity): (WebCore::JSDeviceMotionEvent::rotationRate): (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent): Manually create and return objects with the right attributes for acceleration, accelerationIncludingGravity, and rotationRate. When creating the DeviceMotionData object in initDeviceMotionEvent, accept any input objects that have the right attributes. * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter): (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter): (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter): (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): V8 counterpart to the JSC code above. * dom/DeviceMotionData.cpp: (WebCore::DeviceMotionData::Acceleration::create): (WebCore::DeviceMotionData::Acceleration::Acceleration): (WebCore::DeviceMotionData::RotationRate::create): (WebCore::DeviceMotionData::RotationRate::RotationRate): (WebCore::DeviceMotionData::create): (WebCore::DeviceMotionData::DeviceMotionData): * dom/DeviceMotionData.h: (WebCore::DeviceMotionData::Acceleration::canProvideX): (WebCore::DeviceMotionData::Acceleration::canProvideY): (WebCore::DeviceMotionData::Acceleration::canProvideZ): (WebCore::DeviceMotionData::Acceleration::x): (WebCore::DeviceMotionData::Acceleration::y): (WebCore::DeviceMotionData::Acceleration::z): (WebCore::DeviceMotionData::RotationRate::canProvideAlpha): (WebCore::DeviceMotionData::RotationRate::canProvideBeta): (WebCore::DeviceMotionData::RotationRate::canProvideGamma): (WebCore::DeviceMotionData::RotationRate::alpha): (WebCore::DeviceMotionData::RotationRate::beta): (WebCore::DeviceMotionData::RotationRate::gamma): (WebCore::DeviceMotionData::acceleration): (WebCore::DeviceMotionData::accelerationIncludingGravity): (WebCore::DeviceMotionData::rotationRate): Add member classes Acceleration and RotationRate to DeviceMotionData. * dom/DeviceMotionEvent.idl: Update according to the spec. Acceleration and RotationRate need not be backed by native classes. 2010-09-23 Patrick Gansterer Reviewed by Adam Roben. Set synchronous handle in ResourceHandleWin https://bugs.webkit.org/show_bug.cgi?id=46395 When loading synchronous network resources, we need to use a synchronous internet handle. * platform/network/ResourceHandle.h: * platform/network/win/ResourceHandleWin.cpp: (WebCore::ResourceHandle::loadResourceSynchronously): (WebCore::ResourceHandle::setSynchronousInternetHandle): 2010-09-23 Alexey Proskuryakov Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=46326 Crash when trying to create a NodeIterator rooted at a document-less DocumentType node Test: fast/dom/node-iterator-with-doctype-root.html * dom/Document.cpp: (WebCore::Document::detachNodeIterator): Added a comment explaining that attach/detach may not always be paired. * dom/NodeIterator.cpp: (WebCore::NodeIterator::NodeIterator): Don't try to register with the document if there is none. (WebCore::NodeIterator::~NodeIterator): Ditto. (WebCore::NodeIterator::detach): Ditto. (WebCore::NodeIterator::updateForNodeRemoval): There should be a document if we're getting a notification. 2010-09-23 Patrick Gansterer Reviewed by Adam Roben. Add synchronous loading for local files to ResourceHandleWin https://bugs.webkit.org/show_bug.cgi?id=46392 * platform/network/win/ResourceHandleWin.cpp: (WebCore::ResourceHandle::start): 2010-09-23 Patrick Gansterer Reviewed by Adam Roben. Remove (has|set)ReceivedResponse() from public ResourceHandleWin API https://bugs.webkit.org/show_bug.cgi?id=46391 There is no need for this functions to be public, so remove them. * platform/network/ResourceHandle.h: * platform/network/win/ResourceHandleWin.cpp: (WebCore::ResourceHandle::onRequestComplete): 2010-09-23 David Hyatt Reviewed by Adele Peterson. https://bugs.webkit.org/show_bug.cgi?id=46400 Add logicalLeft/Top getter/setters to line boxes. * rendering/InlineBox.h: (WebCore::InlineBox::logicalLeft): (WebCore::InlineBox::setLogicalLeft): (WebCore::InlineBox::logicalTop): (WebCore::InlineBox::setLogicalTop): 2010-09-23 Matthew Delaney Reviewed by Simon Fraser. Reduce minimum DOMTimer interval https://bugs.webkit.org/show_bug.cgi?id=45362 Since the setInterval call is meant to reflect a global change for all pages' DOMTimers, it's misleading to have it be a method on a given page's settings' object. Thus, this patch changes the call to be static. This simple change to using a static call instead of the page's setting's method doesn't warrant a test. * page/Settings.h: Changed the setInterval call to be static. 2010-09-23 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46386, give line boxes a vertical bit so that it's easy to know the overall direction of the line without having to ask the containing block. Also couldn't resist some cleanup. Tightened up the type of the renderobject passed to RootInlineBox's constructor to be a RenderBlock. Moved all the virtual logical height stuff outside of the SVG ifdef since TrailingFloatsRootInlineBox uses it and should work without SVG enabled. * rendering/EllipsisBox.h: (WebCore::EllipsisBox::EllipsisBox): * rendering/InlineBox.h: (WebCore::InlineBox::InlineBox): (WebCore::InlineBox::isVertical): (WebCore::InlineBox::setIsVertical): * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::addToLine): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::RootInlineBox): (WebCore::RootInlineBox::placeEllipsis): * rendering/RootInlineBox.h: * rendering/SVGRootInlineBox.h: (WebCore::SVGRootInlineBox::SVGRootInlineBox): * rendering/TrailingFloatsRootInlineBox.h: (WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox): 2010-09-23 Patrick Gansterer Reviewed by Adam Roben. Check for a valid ResourceHandleClient in ResourceHandleWin https://bugs.webkit.org/show_bug.cgi?id=46389 * platform/network/win/ResourceHandleWin.cpp: (WebCore::ResourceHandle::onRequestComplete): Add checks to ensure client() is not 0. 2010-09-23 Patrick Gansterer Reviewed by Adam Roben. Fix ResourceHandleWin::cancel() for network resources https://bugs.webkit.org/show_bug.cgi?id=46383 * platform/network/win/ResourceHandleWin.cpp: (WebCore::ResourceHandle::onRequestComplete): Check it requestHandle is not 0. (WebCore::ResourceHandle::cancel): Set requestHandle to 0. 2010-09-23 Patrick Gansterer Reviewed by Adam Roben. Add handling for form data and additional HTTP headers in ResourceHandleWin https://bugs.webkit.org/show_bug.cgi?id=46369 * platform/network/win/ResourceHandleWin.cpp: (WebCore::ResourceHandle::start): 2010-09-23 Eric Carlson Reviewed by Simon Fraser 'seeking' event should always fire https://bugs.webkit.org/show_bug.cgi?id=45694 Update seek algorithm to match current spec. * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::setReadyState): Don't need to fire 'seeking' event here. (WebCore::HTMLMediaElement::seek): Always fire 'seeking'. Update comments. (WebCore::HTMLMediaElement::finishSeek): Update comments. (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Ditto. 2010-09-23 Eric Uhrhane Reviewed by David Levin. Rename FileWriterClient to AsyncFileWriterClient. https://bugs.webkit.org/show_bug.cgi?id=46325 * GNUmakefile.am: * WebCore.gypi: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * fileapi/AsyncFileWriter.h: * fileapi/AsyncFileWriterClient.h: Copied from WebCore/fileapi/FileWriterClient.h. * fileapi/FileWriter.h: * fileapi/FileWriterClient.h: Removed. * platform/AsyncFileSystem.h: 2010-09-23 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46378, rename width/height on line boxes to logicalWidth/logicalHeight. * editing/visible_units.cpp: (WebCore::previousLinePosition): (WebCore::nextLinePosition): * rendering/EllipsisBox.cpp: (WebCore::EllipsisBox::paint): (WebCore::EllipsisBox::paintSelection): (WebCore::EllipsisBox::nodeAtPoint): * rendering/InlineBox.cpp: (WebCore::InlineBox::logicalHeight): (WebCore::InlineBox::canAccommodateEllipsis): * rendering/InlineBox.h: (WebCore::InlineBox::InlineBox): (WebCore::InlineBox::hasVirtualLogicalHeight): (WebCore::InlineBox::setHasVirtualLogicalHeight): (WebCore::InlineBox::virtualLogicalHeight): (WebCore::InlineBox::setLogicalWidth): (WebCore::InlineBox::logicalWidth): * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesHorizontally): (WebCore::InlineFlowBox::placeBoxesVertically): (WebCore::InlineFlowBox::computeVerticalOverflow): (WebCore::InlineFlowBox::nodeAtPoint): (WebCore::InlineFlowBox::paintFillLayer): (WebCore::InlineFlowBox::paintBoxDecorations): (WebCore::InlineFlowBox::paintMask): (WebCore::InlineFlowBox::paintTextDecorations): (WebCore::InlineFlowBox::placeEllipsisBox): * rendering/InlineFlowBox.h: (WebCore::InlineFlowBox::visibleOverflowRect): (WebCore::InlineFlowBox::bottomLayoutOverflow): (WebCore::InlineFlowBox::rightLayoutOverflow): (WebCore::InlineFlowBox::layoutOverflowRect): (WebCore::InlineFlowBox::bottomVisualOverflow): (WebCore::InlineFlowBox::rightVisualOverflow): (WebCore::InlineFlowBox::visualOverflowRect): (WebCore::InlineFlowBox::setHorizontalOverflowPositions): (WebCore::InlineFlowBox::setVerticalOverflowPositions): * rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::selectionRect): (WebCore::InlineTextBox::placeEllipsisBox): (WebCore::InlineTextBox::nodeAtPoint): (WebCore::InlineTextBox::paint): (WebCore::InlineTextBox::paintSelection): (WebCore::InlineTextBox::paintCustomHighlight): (WebCore::InlineTextBox::paintDecoration): (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): (WebCore::InlineTextBox::paintTextMatchMarker): (WebCore::InlineTextBox::paintCompositionUnderline): * rendering/InlineTextBox.h: (WebCore::InlineTextBox::calculateBoundaries): (WebCore::InlineTextBox::setSpaceAdd): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintEllipsisBoxes): (WebCore::RenderBlock::rightmostPosition): (WebCore::RenderBlock::adjustForBorderFit): (WebCore::RenderBlock::addFocusRingRects): * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlock::computeHorizontalPositionsForLine): (WebCore::RenderBlock::checkLinesForTextOverflow): * rendering/RenderBox.cpp: (WebCore::RenderBox::paintCustomHighlight): (WebCore::RenderBox::containingBlockWidthForPositioned): * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::applyLineClamp): * rendering/RenderInline.cpp: (WebCore::RenderInline::absoluteRects): (WebCore::RenderInline::absoluteQuads): (WebCore::RenderInline::linesBoundingBox): (WebCore::RenderInline::addFocusRingRects): (WebCore::RenderInline::paintOutline): * rendering/RenderSVGInline.cpp: (WebCore::RenderSVGInline::createInlineFlowBox): (WebCore::RenderSVGInline::absoluteQuads): * rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::createTextBox): * rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::createRootInlineBox): * rendering/RenderText.cpp: (WebCore::RenderText::absoluteRects): (WebCore::RenderText::absoluteRectsForRange): (WebCore::RenderText::absoluteQuadsForRange): (WebCore::RenderText::positionForPoint): (WebCore::RenderText::localCaretRect): (WebCore::RenderText::linesBoundingBox): * rendering/RenderTreeAsText.cpp: (WebCore::writeTextRun): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::canAccommodateEllipsis): (WebCore::RootInlineBox::placeEllipsis): (WebCore::RootInlineBox::addHighlightOverflow): (WebCore::RootInlineBox::paintCustomHighlight): (WebCore::RootInlineBox::fillLineSelectionGap): (WebCore::RootInlineBox::closestLeafChildForXPos): * rendering/SVGInlineFlowBox.h: (WebCore::SVGInlineFlowBox::SVGInlineFlowBox): (WebCore::SVGInlineFlowBox::virtualLogicalHeight): (WebCore::SVGInlineFlowBox::setLogicalHeight): * rendering/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::SVGInlineTextBox): * rendering/SVGInlineTextBox.h: (WebCore::SVGInlineTextBox::virtualLogicalHeight): (WebCore::SVGInlineTextBox::setLogicalHeight): (WebCore::SVGInlineTextBox::selectionHeight): * rendering/SVGRenderTreeAsText.cpp: (WebCore::writeRenderSVGTextBox): * rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBox::layoutChildBoxes): (WebCore::SVGRootInlineBox::layoutRootBox): * rendering/SVGRootInlineBox.h: (WebCore::SVGRootInlineBox::SVGRootInlineBox): (WebCore::SVGRootInlineBox::virtualLogicalHeight): (WebCore::SVGRootInlineBox::setLogicalHeight): * rendering/TrailingFloatsRootInlineBox.h: (WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox): (WebCore::TrailingFloatsRootInlineBox::virtualLogicalHeight): 2010-09-23 Matthew Delaney Reviewed by Oliver Hunt. context.drawImage with (source rect's height) = -(input image's native height) draws nothing https://bugs.webkit.org/show_bug.cgi?id=46243 This patch changes canvasrenderingcontext2d's drawImage with an image element to normalize the source and dest rects to acheive the desired canvas spec behavior of allowing negative widths and heights that don't cause flipping and fix the adverse behavior of specifying a source rect height of negative the source image's height Tests: canvas/philip/tests/2d.drawImage.negativeSourceHeight.html canvas/philip/tests/2d.drawImage.negativeSourceHeight2.html canvas/philip/tests/2d.drawImage.negativeSourceHeightAndWidth.html * html/canvas/CanvasRenderingContext2D.cpp: Normalize rects in drawImage before calling lower level draw calls. 2010-09-23 Renata Hodovan Reviewed by Dirk Schulze. SVGFEMorphologyElement doesn't support dynamic invalidation, when attributes change. https://bugs.webkit.org/show_bug.cgi?id=46363 The patch also implements the simple setRadius method. Tests: svg/dynamic-updates/SVGFEMorphologyElement-dom-in-attr.html svg/dynamic-updates/SVGFEMorphologyElement-dom-operator-attr.html svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr.html svg/dynamic-updates/SVGFEMorphologyElement-svgdom-in-prop.html svg/dynamic-updates/SVGFEMorphologyElement-svgdom-operator-prop.html svg/dynamic-updates/SVGFEMorphologyElement-svgdom-radius-call.html * svg/SVGFEMorphologyElement.cpp: (WebCore::SVGFEMorphologyElement::setRadius): (WebCore::SVGFEMorphologyElement::svgAttributeChanged): * svg/SVGFEMorphologyElement.h: 2010-09-23 Patrick Gansterer Reviewed by Adam Roben. Add synchronous loading for network resources to ResourceHandleWin https://bugs.webkit.org/show_bug.cgi?id=46364 Use return value of onRequestComplete() to indicate that an additional call to it is required for receiving remaining network data. * platform/network/ResourceHandle.h: * platform/network/win/ResourceHandleWin.cpp: (WebCore::ResourceHandle::onRequestComplete): (WebCore::ResourceHandle::start): 2010-09-23 Nate Chapin Reviewed by Darin Fisher. Implement (disabled by default). https://bugs.webkit.org/show_bug.cgi?id=30458 Tests: http/tests/navigation/ping-cross-origin-from-https.html http/tests/navigation/ping-cross-origin.html http/tests/navigation/ping-same-origin.html * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler): (WebCore::HTMLAnchorElement::sendPings): * html/HTMLAnchorElement.h: * html/HTMLAttributeNames.in: * loader/PingLoader.cpp: (WebCore::PingLoader::sendPing): Set ping-specific headers. (WebCore::PingLoader::PingLoader): * loader/PingLoader.h: (WebCore::PingLoader::timeout): Ensure pings eventually timeout, since the normal cancel mechanism can't stop them. * page/Settings.cpp: * page/Settings.h: Add hyperlinkAuditingEnabled. 2010-09-23 Steve VanDeBogart Reviewed by David Levin. https://bugs.webkit.org/show_bug.cgi?id=46312 Use Skia's SkSafeRef/SkSafeUnref functions instead of safeRef/safeUnref. * platform/graphics/chromium/FontLinux.cpp: (WebCore::Font::drawGlyphs): * platform/graphics/chromium/FontPlatformDataLinux.cpp: (WebCore::FontPlatformData::FontPlatformData): (WebCore::FontPlatformData::~FontPlatformData): * platform/graphics/skia/GradientSkia.cpp: (WebCore::Gradient::platformDestroy): * platform/graphics/skia/PatternSkia.cpp: (WebCore::Pattern::platformDestroy): * platform/graphics/skia/PlatformContextSkia.cpp: (WebCore::PlatformContextSkia::State::State): (WebCore::PlatformContextSkia::State::~State): (WebCore::PlatformContextSkia::drawRect): (WebCore::PlatformContextSkia::setStrokeShader): (WebCore::PlatformContextSkia::setFillShader): (WebCore::PlatformContextSkia::setDashPathEffect): * platform/graphics/skia/SkiaFontWin.cpp: (WebCore::paintSkiaText): 2010-09-23 Lucas De Marchi Reviewed by Csaba Osztrogonác. Fix warnings regarding print format in 64 bits https://bugs.webkit.org/show_bug.cgi?id=46357 Use inttypes.h in order to have portable print formats across 32 and 64 bits. * platform/sql/SQLiteFileSystem.cpp: (WebCore::SQLiteFileSystem::getFileNameForNewDatabase): 2010-09-23 Chris Rogers Reviewed by Kenneth Russell. Add AudioContext files https://bugs.webkit.org/show_bug.cgi?id=44890 No new tests since audio API is not yet implemented. * webaudio/AudioContext.cpp: Added. (WebCore::AudioContext::createAudioRequest): (WebCore::AudioContext::create): (WebCore::AudioContext::AudioContext): (WebCore::AudioContext::~AudioContext): (WebCore::AudioContext::lazyInitialize): (WebCore::AudioContext::uninitialize): (WebCore::AudioContext::isInitialized): (WebCore::AudioContext::isRunnable): (WebCore::AudioContext::stop): (WebCore::AudioContext::document): (WebCore::AudioContext::hasDocument): (WebCore::AudioContext::refBuffer): (WebCore::AudioContext::createBuffer): (WebCore::AudioContext::createBufferSource): (WebCore::AudioContext::createJavaScriptNode): (WebCore::AudioContext::createLowPass2Filter): (WebCore::AudioContext::createHighPass2Filter): (WebCore::AudioContext::createPanner): (WebCore::AudioContext::createConvolver): (WebCore::AudioContext::createAnalyser): (WebCore::AudioContext::createGainNode): (WebCore::AudioContext::createDelayNode): (WebCore::AudioContext::createChannelSplitter): (WebCore::AudioContext::createChannelMerger): (WebCore::AudioContext::notifyNodeFinishedProcessing): (WebCore::AudioContext::derefFinishedSourceNodes): (WebCore::AudioContext::refNode): (WebCore::AudioContext::derefNode): (WebCore::AudioContext::derefUnfinishedSourceNodes): (WebCore::AudioContext::lock): (WebCore::AudioContext::tryLock): (WebCore::AudioContext::unlock): (WebCore::AudioContext::isAudioThread): (WebCore::AudioContext::isGraphOwner): (WebCore::AudioContext::addDeferredFinishDeref): (WebCore::AudioContext::handlePostRenderTasks): (WebCore::AudioContext::handleDeferredFinishDerefs): (WebCore::AudioContext::markForDeletion): (WebCore::AudioContext::deleteMarkedNodes): * webaudio/AudioContext.h: Added. (WebCore::AudioContext::destination): (WebCore::AudioContext::currentTime): (WebCore::AudioContext::sampleRate): (WebCore::AudioContext::listener): (WebCore::AudioContext::temporaryMonoBus): (WebCore::AudioContext::temporaryStereoBus): (WebCore::AudioContext::incrementConnectionCount): (WebCore::AudioContext::connectionCount): (WebCore::AudioContext::setAudioThread): (WebCore::AudioContext::audioThread): (WebCore::AudioContext::isAudioThreadFinished): (WebCore::AudioContext::AutoLocker::AutoLocker): (WebCore::AudioContext::AutoLocker::~AutoLocker): (WebCore::AudioContext::RefInfo::RefInfo): * webaudio/AudioContext.idl: Added. 2010-09-23 Jeremy Orlow Reviewed by Steve Block. IndexedDB shouldn't crash on invalid index names https://bugs.webkit.org/show_bug.cgi?id=46362 For now, return null. In a later patch, we'll do proper exception raising. * storage/IDBObjectStore.cpp: (WebCore::IDBObjectStore::index): 2010-09-23 Abhishek Arya Reviewed by Dave Hyatt. Fix the memory safety issue by checking containerObject is a RenderBox before doing the transforms. https://bugs.webkit.org/show_bug.cgi?id=46365 Test: compositing/overflow/get-transform-from-non-box-container.html * rendering/RenderObject.cpp: (WebCore::RenderObject::getTransformFromContainer): 2010-09-23 David Hyatt Reviewed by Simon Fraser. https://bugs.webkit.org/show_bug.cgi?id=46314. The RenderView's block-flow should match the root element's block-flow. When we create (or re-create) the style for the document, take the block-flow from the document element's style and use it if it's available. Also patch styleDidChange so that if the block-flow changes dynamically after we have already made the document style, we'll propagate the change back up to the RenderView and have it do a relayout. No tests possible yet, since you can't see the document's style anywhere, and block-flow isn't doing anything to affect layout yet. * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::styleForDocument): * rendering/RenderBox.cpp: (WebCore::RenderBox::styleDidChange): 2010-09-23 Pavel Podivilov Reviewed by Yury Semikhatsky. Web Inspector: source frame popups shouldn't disappear when hovered https://bugs.webkit.org/show_bug.cgi?id=46358 * inspector/front-end/SourceFrame.js: (WebInspector.SourceFrame.prototype._mouseMove): 2010-09-23 Mario Sanchez Prada Reviewed by Chris Fleizach. [Regression][Gtk] Left and Right Arrows no longer function when caret browsing is enabled https://bugs.webkit.org/show_bug.cgi?id=45375 Consider caret browsing for Move commands. Test: platform/gtk/editing/selection/caret-mode-left-right-arrows.html * editing/EditorCommand.cpp: (WebCore::createCommandMap): Use "caret browsing aware functions" as isEnabled() function for those commands moving the caret forward and backward across characters, words, lines or paragraphs, not just left and right, as it was the case so far. 2010-09-23 Brad Moore Reviewed by Dan Bernstein. Address a remaining discrepancy in piecewise text measurement https://bugs.webkit.org/show_bug.cgi?id=45796 Don't include always-integral space widths in the floating point accumulator designed to minimize precision loss. This brings whole-string measurement in line with piecewise text measurement when dealing with fonts with fractional advances. * platform/graphics/WidthIterator.cpp: (WebCore::WidthIterator::advance): Change the associativity of width addition to minimize precision loss. 2010-09-23 Patrick Gansterer Reviewed by Adam Roben. Cleanup network communication code in ResourceHandleWin https://bugs.webkit.org/show_bug.cgi?id=46200 Add logic for request handling directly into ResourceHandle::start and fix style. Use Unicode instead of ASCII Windows API functions. * platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal): * platform/network/win/ResourceHandleWin.cpp: (WebCore::ResourceHandle::onRequestComplete): (WebCore::ResourceHandle::start): 2010-09-23 Luiz Agostini Reviewed by Andreas Kling. Invalid assertion in ScriptCallback https://bugs.webkit.org/show_bug.cgi?id=46348 Removing invalid ASSERT from method ScriptCallback::call(). * bindings/js/ScriptFunctionCall.cpp: (WebCore::ScriptCallback::call): 2010-09-23 Martin Robinson Reviewed by Ariya Hidayat. [Cairo] Generalize ContextShadow from the Qt port and use it for shadow code https://bugs.webkit.org/show_bug.cgi?id=45599 Make ContextShadow platform-independent and add a Cairo implementation. This is currently disabled for Cairo, but will be enabled in a followup patch with new baselines. No new tests as this does not change functionality. * GNUmakefile.am: Update source lists. * WebCore.pro: Update source lists. * platform/graphics/ContextShadow.cpp: Added. A generalized version of Qt's ContextShadow. (WebCore::ContextShadow::ContextShadow): (WebCore::ContextShadow::clear): (WebCore::ContextShadow::blurLayerImage): (WebCore::ContextShadow::calculateMinimalLayerRect): * platform/graphics/ContextShadow.h: Added. (WebCore::ContextShadow::offset): * platform/graphics/cairo/CairoUtilities.cpp: Added. (WebCore::setSourceRGBAFromColor): A utility to set the source RGBA on a Cairo surface from a WebCore color. * platform/graphics/cairo/CairoUtilities.h: Added. * platform/graphics/cairo/ContextShadowCairo.cpp: Added. (WebCore::purgeScratchBuffer): Static function to purge the shadow buffer. (WebCore::PurgeScratchBufferTimer::fired): Timer callback. (WebCore::scheduleScratchBufferPurge): Schedule's a WebCore timer to purge the shadow buffer. (WebCore::getScratchBuffer): Create or reuse the scratch buffer. (WebCore::ContextShadow::beginShadowLayer): Added. (WebCore::ContextShadow::endShadowLayer): Added. * platform/graphics/gtk/CairoUtilities.cpp: Removed. * platform/graphics/gtk/CairoUtilities.h: Removed. * platform/graphics/gtk/GdkCairoUtilities.cpp: Renamed from CairoUtilities.cpp. (getCairoSurfacePixel): (getGdkPixbufPixel): (cairoImageSurfaceToGdkPixbuf): * platform/graphics/gtk/GdkCairoUtilities.h: Added. * platform/graphics/gtk/ImageBufferGtk.cpp: * platform/graphics/gtk/ImageGtk.cpp: * platform/graphics/qt/ContextShadow.cpp: Removed. * platform/graphics/qt/ContextShadow.h: Removed. * platform/graphics/qt/ContextShadowQt.cpp: Added. Adapted from code originally in ContextShadow.cpp. (WebCore::ShadowBuffer::ShadowBuffer): (WebCore::ShadowBuffer::scratchImage): (WebCore::ShadowBuffer::schedulePurge): (WebCore::ShadowBuffer::timerEvent): (WebCore::ContextShadow::beginShadowLayer): (WebCore::ContextShadow::endShadowLayer): * platform/graphics/qt/FontQt.cpp: (WebCore::drawTextCommon): Updated to reflect new ContextShadow members. * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContextPlatformPrivate::hasShadow): Updated to reflect new ContextShadow members. (WebCore::GraphicsContext::strokeArc): Ditto. (WebCore::GraphicsContext::drawConvexPolygon): Ditto. (WebCore::GraphicsContext::fillPath): Ditto. (WebCore::GraphicsContext::strokePath): Ditto. (WebCore::GraphicsContext::fillRect): Ditto. (WebCore::GraphicsContext::fillRoundedRect): Ditto. (WebCore::GraphicsContext::setPlatformShadow): Ditto. 2010-09-23 Patrick Gansterer Reviewed by Adam Roben. Add internetStatusCallback to ResourceHandleWin. https://bugs.webkit.org/show_bug.cgi?id=46187 Add callback for asynchronous network transfer. * platform/network/ResourceHandle.h: * platform/network/ResourceHandleInternal.h: * platform/network/win/ResourceHandleWin.cpp: (WebCore::callOnRedirect): (WebCore::callOnRequestComplete): (WebCore::ResourceHandle::internetStatusCallback): (WebCore::ResourceHandle::onRedirect): 2010-09-23 Andrei Popescu Reviewed by Jeremy Orlow. IDBTransactionCoordinator contains a broken assertion. https://bugs.webkit.org/show_bug.cgi?id=46356 Remove the broken assertion. * storage/IDBTransactionCoordinator.cpp: (WebCore::IDBTransactionCoordinator::processStartedTransactions): 2010-09-23 Pavel Podivilov Reviewed by Pavel Feldman. Web Inspector: highlight DOM nodes when navigating the DOM with keyboard https://bugs.webkit.org/show_bug.cgi?id=46346 * inspector/front-end/ElementsTreeOutline.js: (WebInspector.ElementsTreeElement.prototype.onselect): * inspector/front-end/treeoutline.js: (TreeOutline.prototype._treeKeyDown): (TreeElement.prototype.selectOnMouseDown): (TreeElement.prototype.select): 2010-09-23 Andrei Popescu Reviewed by Jeremy Orlow. [Chromium] Build broken due to missing include in IDBTransactionBackendImpl.h https://bugs.webkit.org/show_bug.cgi?id=46352 No new tests needed, build fix. * storage/IDBTransaction.cpp: (WebCore::IDBTransaction::objectStore): * storage/IDBTransactionBackendImpl.h: 2010-09-23 Andrei Popescu Reviewed by Jeremy Orlow. IDBObjectStore::get should run in a transaction. https://bugs.webkit.org/show_bug.cgi?id=44700 Implements logic for running IDBObjectStore::get() in a transaction. Refactors the pending transaction monitor and the transaction coordinator to use pointers instead of transaction IDs. * bindings/v8/V8Proxy.cpp: (WebCore::V8Proxy::didLeaveScriptContext): * storage/IDBCursorBackendImpl.cpp: * storage/IDBDatabase.cpp: (WebCore::IDBDatabase::objectStore): * storage/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::objectStore): * storage/IDBDatabaseBackendImpl.h: (WebCore::IDBDatabaseBackendImpl::transactionCoordinator): * storage/IDBFactoryBackendImpl.cpp: * storage/IDBFactoryBackendImpl.h: * storage/IDBFactoryBackendInterface.h: * storage/IDBObjectStore.cpp: (WebCore::IDBObjectStore::IDBObjectStore): (WebCore::IDBObjectStore::get): * storage/IDBObjectStore.h: (WebCore::IDBObjectStore::create): * storage/IDBObjectStoreBackendImpl.cpp: (WebCore::IDBTask::IDBTask): (WebCore::IDBTask::performTask): (WebCore::createTask): (WebCore::IDBObjectStoreBackendImpl::get): (WebCore::IDBObjectStoreBackendImpl::getInternal): * storage/IDBObjectStoreBackendImpl.h: * storage/IDBObjectStoreBackendInterface.h: * storage/IDBPendingTransactionMonitor.cpp: (WebCore::IDBPendingTransactionMonitor::addPendingTransaction): (WebCore::IDBPendingTransactionMonitor::removePendingTransaction): (WebCore::IDBPendingTransactionMonitor::abortPendingTransactions): * storage/IDBPendingTransactionMonitor.h: * storage/IDBRequest.cpp: (WebCore::IDBRequest::IDBRequest): (WebCore::IDBRequest::~IDBRequest): (WebCore::IDBRequest::onSuccess): (WebCore::IDBRequest::timerFired): * storage/IDBRequest.h: (WebCore::IDBRequest::create): * storage/IDBTransaction.cpp: (WebCore::IDBTransaction::IDBTransaction): (WebCore::IDBTransaction::objectStore): * storage/IDBTransactionBackendImpl.cpp: (WebCore::IDBTransactionBackendImpl::create): (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): (WebCore::IDBTransactionBackendImpl::objectStore): (WebCore::IDBTransactionBackendImpl::scheduleTask): (WebCore::IDBTransactionBackendImpl::abort): (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents): (WebCore::IDBTransactionBackendImpl::run): (WebCore::IDBTransactionBackendImpl::start): (WebCore::IDBTransactionBackendImpl::commit): (WebCore::IDBTransactionBackendImpl::timerFired): * storage/IDBTransactionBackendImpl.h: (WebCore::IDBTransactionBackendImpl::~IDBTransactionBackendImpl): (WebCore::IDBTransactionBackendImpl::isFinished): * storage/IDBTransactionBackendInterface.h: * storage/IDBTransactionCoordinator.cpp: (WebCore::IDBTransactionCoordinator::createTransaction): (WebCore::IDBTransactionCoordinator::didStartTransaction): (WebCore::IDBTransactionCoordinator::didFinishTransaction): (WebCore::IDBTransactionCoordinator::processStartedTransactions): * storage/IDBTransactionCoordinator.h: 2010-09-23 Patrick Gansterer Reviewed by Adam Roben. [WINCE] Remove usage of MemoryManager https://bugs.webkit.org/show_bug.cgi?id=46206 MemoryManager does not provide any extra value, so remove it. * page/wince/FrameWinCE.cpp: (WebCore::imageFromSelection): * platform/graphics/wince/PlatformPathWinCE.cpp: (WebCore::drawPolygons): 2010-09-23 Darin Adler Reviewed by Chris Fleizach. media/video-controls-with-mutation-event-handler.html crashing https://bugs.webkit.org/show_bug.cgi?id=46169 * rendering/MediaControlElements.cpp: (WebCore::MediaControlInputElement::MediaControlInputElement): Don't take a type argument. We can't set the type until after the element is created beacuse of reference counting rules. (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): Don't pass the type. (WebCore::MediaControlMuteButtonElement::create): Set the type. (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement): More of the same. (WebCore::MediaControlPlayButtonElement::create): Ditto. (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement): Ditto. (WebCore::MediaControlSeekButtonElement::create): Ditto. (WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement): Ditto. (WebCore::MediaControlRewindButtonElement::create): Ditto. (WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement): Ditto. (WebCore::MediaControlReturnToRealtimeButtonElement::create): Ditto. (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement): Ditto. (WebCore::MediaControlToggleClosedCaptionsButtonElement::create): Ditto. (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Ditto. (WebCore::MediaControlTimelineElement::create): Ditto. (WebCore::MediaControlVolumeSliderElement::MediaControlVolumeSliderElement): Ditto. (WebCore::MediaControlVolumeSliderElement::create): Ditto. (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement): Ditto. (WebCore::MediaControlFullscreenButtonElement::create): Ditto. * rendering/MediaControlElements.h: Removed the type argument from the MediaControlInputElement constructor. 2010-09-22 Luke Macpherson Reviewed by Alexey Proskuryakov. Don't allow empty strings as tokens in xmlhttprequest, as per rfc2616 section 2.2. XMLHttpRequest: setRequestHeader() does not throw SYNTAX_ERR exception if the header field name is empty https://bugs.webkit.org/show_bug.cgi?id=46151 Test: http/tests/xmlhttprequest/xmlhttprequest-setrequestheader-no-name.html * xml/XMLHttpRequest.cpp: (WebCore::isValidToken): 2010-09-22 Kwang Yul Seo Reviewed by Adam Barth. [BREWMP] Enable touch events https://bugs.webkit.org/show_bug.cgi?id=46321 Enable TOUCH_EVENTS by porting PlatformTouchEvent and PlatformTouchPoint. Brew MP does not support multi touch, so enable only single touch for now. * platform/PlatformTouchEvent.h: * platform/PlatformTouchPoint.h: * platform/brew/PlatformTouchEventBrew.cpp: Added. (WebCore::PlatformTouchEvent::PlatformTouchEvent): * platform/brew/PlatformTouchPointBrew.cpp: Added. (WebCore::PlatformTouchPoint::PlatformTouchPoint): 2010-09-22 Andy Estes Reviewed by Darin Adler. REGRESSION (r61285): Microsoft Entourage 2008 does not invoke My Day window https://bugs.webkit.org/show_bug.cgi?id=46334 * WebCore.exp.in: Export __ZN7WebCore27applicationIsMicrosoftMyDayEv. * platform/mac/RuntimeApplicationChecks.h: * platform/mac/RuntimeApplicationChecks.mm: (WebCore::applicationIsMicrosoftMyDay): Determine if the embeddding application is Microsoft My Day by checking the bundle identifier. 2010-09-22 Andy Estes Rubber-stamped by Darin Adler. Fix a typo and correct an inaccurate phrase in a comment. * html/parser/HTMLTreeBuilder.cpp: (WebCore::HTMLTreeBuilder::processEndTag): 2010-09-22 Andy Estes Reviewed by Adam Barth. REGRESSION (r61285): ". * html/parser/HTMLDocumentParser.cpp: (WebCore::HTMLDocumentParser::HTMLDocumentParser): Instantiate HTMLTreeBuilder with the value of usePreHTML5ParserQuirks(). * html/parser/HTMLTreeBuilder.cpp: (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): (WebCore::HTMLTreeBuilder::processEndTag): If the tokenizer is not currently in DataState, this means that the current end token is fake and was created by the tree builder to handle a self-closing script tag. Assert that pre-HTML5 quirks are enabled and set the tokenizer's state to DataState in this case. (WebCore::HTMLTreeBuilder::processStartTagForInHead): If pre-HTML5 parser quirks are enabled and the script tag is self-closing, create and procses a fake script end tag. * html/parser/HTMLTreeBuilder.h: (WebCore::HTMLTreeBuilder::create): 2010-09-22 Mihai Parparita Reviewed by Darin Fisher. [Chromium] User style layout tests don't pass on Chromium https://bugs.webkit.org/show_bug.cgi?id=46069 Instead of making resetUserStyleCacheInAllFrames be a no-op for Chromium, have it be controlled by a UserStyleInjectionTime enum. Also move the UserStyleSheet::Level enum to be inside UserStyleSheetTypes for consistency. * WebCore.exp.in: * dom/Document.cpp: (WebCore::Document::pageGroupUserSheets): * page/PageGroup.cpp: (WebCore::PageGroup::addUserStyleSheetToWorld): * page/PageGroup.h: * page/UserStyleSheet.h: (WebCore::UserStyleSheet::UserStyleSheet): (WebCore::UserStyleSheet::level): * page/UserStyleSheetTypes.h: 2010-09-22 Ruben Reviewed by Tony Chang. [chromium] added ifdefs for FreeBSD support https://bugs.webkit.org/show_bug.cgi?id=46316 * bindings/js/JSInspectorFrontendHostCustom.cpp: (WebCore::JSInspectorFrontendHost::platform): * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp: (WebCore::V8InspectorFrontendHost::platformCallback): * dom/SelectElement.cpp: * loader/CachedFont.cpp: * page/EventHandler.cpp: * page/chromium/EventHandlerChromium.cpp: * platform/Scrollbar.cpp: * platform/chromium/ChromiumBridge.h: * platform/graphics/chromium/FontPlatformData.h: * platform/graphics/skia/FontCustomPlatformData.cpp: (WebCore::FontCustomPlatformData::~FontCustomPlatformData): (WebCore::FontCustomPlatformData::fontPlatformData): (WebCore::createFontCustomPlatformData): * platform/graphics/skia/FontCustomPlatformData.h: 2010-09-22 Rafael Antognolli Unreviewed build fix. [EFL] Fix build due to latest EFL (Edje) changes. https://bugs.webkit.org/show_bug.cgi?id=46317 Make the change int -> Edje_Load_Error (enum). No new functionality, so no new tests. * platform/efl/RenderThemeEfl.cpp: (WebCore::RenderThemeEfl::themePartCacheEntryReset): (WebCore::RenderThemeEfl::createEdje): (WebCore::RenderThemeEfl::applyPartDescriptions): * platform/efl/ScrollbarEfl.cpp: (ScrollbarEfl::setParent): 2010-09-22 Chris Fleizach Reviewed by Darin Adler. AX: aria-hidden change doesn't update the ax tree https://bugs.webkit.org/show_bug.cgi?id=45836 Test: accessibility/aria-hidden-update.html * dom/Element.cpp: (WebCore::Element::updateAfterAttributeChanged): 2010-09-22 Kinuko Yasuda Reviewed by Dumitru Daniliuc. [FileSystem] Fix Flags handling in DirectoryEntry custom binding code https://bugs.webkit.org/show_bug.cgi?id=46028 Do not use adoptRef to get RefPtr from a raw pointer that is already adopted in toNative/toJS. Test: fast/filesystem/flags-passing.html * bindings/js/JSDirectoryEntryCustom.cpp: (WebCore::JSDirectoryEntry::getFile): (WebCore::JSDirectoryEntry::getDirectory): * bindings/v8/custom/V8DirectoryEntryCustom.cpp: (WebCore::V8DirectoryEntry::getDirectoryCallback): (WebCore::V8DirectoryEntry::getFileCallback): 2010-09-22 Jia Pu Reviewed by Dan Bernstein. Need to stop autocorrection panel timer when selection changes. https://bugs.webkit.org/show_bug.cgi?id=46201 * editing/Editor.cpp: (WebCore::Editor::appliedEditing): Stop correction timer after editing. (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): When text checking is done for showing autocorrection panel, we suppress all corrections that are not at the end of text checking range. So that we don't replace other words while showing correction panel for the last word. (WebCore::Editor::stopCorrectionPanelTimer): Stop correction timer. * editing/Editor.h: Added stopCorrectionPanelTimer() method. 2010-09-22 Eric Uhrhane Reviewed by Dumitru Daniliuc. Add Chromium implementation for FileWriter https://bugs.webkit.org/show_bug.cgi?id=44361 No new tests; the implementation's not yet far enough along for that. This makes a chain of contruction-and-linking-up for various sorts of FileWriter interfaces to call through to Chromium, and for various sorts of FileWriterClients to call back, with object ownership always pointing towards the Chromium API. That is, the DOM object owns an AsyncFileWriter, which owns its implementation object, and the reverse (client) direction is raw pointers. File metadata is looked up before the FileWriter is returned, so that we know the file exists and can cache its length. The WebCore part of this is simple and generic enough to handle Chromium, so it should be easy for me to put in a WebCore-only implementation next. * fileapi/AsyncFileWriter.h: * fileapi/DOMFileSystem.cpp: (WebCore::DOMFileSystem::createWriter): * fileapi/DOMFileSystem.h: * fileapi/FileSystemCallbacks.cpp: (WebCore::FileSystemCallbacksBase::didCreateFileWriter): (WebCore::FileWriterCallbacks::FileWriterCallbacks): (WebCore::FileWriterCallbacks::didCreateFileWriter): * fileapi/FileSystemCallbacks.h: * platform/AsyncFileSystem.h: * platform/AsyncFileSystemCallbacks.h: 2010-09-22 Alexey Proskuryakov Reviewed by Adam Barth. https://bugs.webkit.org/show_bug.cgi?id=46222 Document.getElementById() malfunctions if ID was changed via Attr node modification. Test: fast/dom/Attr/change-id-via-attr-node-value.html * dom/Attr.h: * dom/Attr.cpp: (WebCore::Attr::setValue): Separated a version callable from WebCore from one avaiable to JS. Attr::setValue() can be called from Element::setAttribute(), and we don't want to update m_elementsById (or to call attributeChanged()) twice in that case. (WebCore::Attr::childrenChanged): If Attr's node children change, id changes. * dom/Document.cpp: (WebCore::Document::removeElementById): Added an assertion that we are not trying to remove something that isn't there. If we are, we probably failed to update m_elementsById earlier. * dom/Element.cpp: (WebCore::Element::setAttribute): If the attribute has an Attr node, its children should be updated to match attribute value. 2010-09-22 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46311, lock form controls and replaced elements to vertical block flow. Patch form controls that don't use RenderReplaced by hand in html.css. Patch all RenderReplaced elements with an override of setStyle that forces the new style to have a vertical block flow. We have to do something like this to cover the CSS3 content: url(img) method of image replacement. * css/html.css: (input, textarea, keygen, select, button, isindex, meter, progress): * rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::setStyle): * rendering/RenderReplaced.h: 2010-09-22 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46304 display:inline should become display:inline-block when an object's block flow does not match its parent's block flow. Added fast/blockflow/display-mutation.html * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::styleForElement): (WebCore::CSSStyleSelector::pseudoStyleForElement): (WebCore::CSSStyleSelector::adjustRenderStyle): * css/CSSStyleSelector.h: 2010-09-22 Mario Sanchez Prada Reviewed by Martin Robinson. [Gtk] object:text-changed events should be emitted for entries and password text https://bugs.webkit.org/show_bug.cgi?id=25898 Implement proper 'text-changed' signal emission for the GTK port Call deleteTextFromNode() when needed while removing text nodes. Do it even when removeNode() is going to be called afterwards, in order to allow accessibility to get properly notified about the text being removed alongside with that node. * editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::handleGeneralDelete): New function in AXObjectCache to call when text changes in a node. Added one new function to allow notifying something changed in a text node through the associated RenderObject, making such a function dependant on the platform-specific implementation, provided through a protected function (provided a proper implementation for the GTK port and a dummy one for the others). * accessibility/AXObjectCache.cpp: (WebCore::AXObjectCache::nodeTextChangeNotification): New * accessibility/AXObjectCache.h: (WebCore::AXObjectCache::AXTextChange): New enumeration (WebCore::AXObjectCache::nodeTextChangeNotification): New (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New * accessibility/AccessibilityRenderObject.h: (WebCore::toAccessibilityRenderObject): * accessibility/chromium/AXObjectCacheChromium.cpp: (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New * accessibility/gtk/AXObjectCacheAtk.cpp: (WebCore::emitTextChanged): (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New * accessibility/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New * accessibility/win/AXObjectCacheWin.cpp: (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New Notify accessibility when something changes in a text node. Call to AXObjectCache::nodeTextChangeNotification() to notify when text was inserted/deleted when applying/unapplying a text edition command, along with the offset in the original text where the change took place and the number of characters that got affected. * editing/AppendNodeCommand.cpp: (WebCore::sendAXTextChangedIgnoringLineBreaks): (WebCore::AppendNodeCommand::doApply): (WebCore::AppendNodeCommand::doUnapply): * editing/DeleteFromTextNodeCommand.cpp: (WebCore::DeleteFromTextNodeCommand::doApply): (WebCore::DeleteFromTextNodeCommand::doUnapply): * editing/InsertIntoTextNodeCommand.cpp: (WebCore::InsertIntoTextNodeCommand::doApply): (WebCore::InsertIntoTextNodeCommand::doUnapply): * editing/InsertNodeBeforeCommand.cpp: (WebCore::InsertNodeBeforeCommand::doApply): (WebCore::InsertNodeBeforeCommand::doUnapply): (WebCore::DeleteSelectionCommand::handleGeneralDelete): 2010-09-22 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46298, add logicalWidth/Height getters/setters to RenderBox. * rendering/RenderBox.cpp: (WebCore::RenderBox::logicalWidth): (WebCore::RenderBox::logicalHeight): (WebCore::RenderBox::setLogicalWidth): (WebCore::RenderBox::setLogicalHeight): * rendering/RenderBox.h: 2010-09-22 Luiz Agostini Reviewed by Oliver Hunt. Script engine agnostic ScriptCallback class https://bugs.webkit.org/show_bug.cgi?id=43216 Refactoring class ScriptFunctionCall to create a class (ScriptCallback) that receives a script function as a ScriptValue and calls that function with provided parameters. * bindings/js/ScriptFunctionCall.cpp: (WebCore::ScriptCallArgumentHandler::appendArgument): (WebCore::ScriptFunctionCall::ScriptFunctionCall): (WebCore::ScriptCallback::ScriptCallback): (WebCore::ScriptCallback::call): * bindings/js/ScriptFunctionCall.h: (WebCore::ScriptCallArgumentHandler::ScriptCallArgumentHandler): * bindings/v8/ScriptFunctionCall.cpp: (WebCore::ScriptCallArgumentHandler::appendArgument): (WebCore::ScriptFunctionCall::ScriptFunctionCall): (WebCore::ScriptCallback::ScriptCallback): (WebCore::ScriptCallback::call): * bindings/v8/ScriptFunctionCall.h: (WebCore::ScriptCallArgumentHandler::ScriptCallArgumentHandler): 2010-09-22 Brent Fulgham Unreviewed. Build fix for invalid assertion after r68059. * editing/ApplyStyleCommand.cpp: (WebCore::getPropertiesNotIn): Correct assertion target after name change. 2010-09-22 David Hyatt Reviewed by Simon Fraser. https://bugs.webkit.org/show_bug.cgi?id=45957, fix regression in column rules stacking test. Rewrite how the pagination bit gets set in RenderLayers, since it was totally broken and not accounting for whether or not the columns block was even in the layer's containing block hierarchy. * rendering/RenderLayer.cpp: (WebCore::checkContainingBlockChainForPagination): (WebCore::RenderLayer::updatePagination): 2010-09-22 Brent Fulgham Unreviewed. [WinCairo] Build fix for platform/cairo stuff after r67981. * WebCore.vcproj/WebCore.vcproj: Add new files needed by all cairo ports. 2010-09-22 Erik Arvidsson Reviewed by Nate Chapin. [Chromium] Fix memory model for dataset https://bugs.webkit.org/show_bug.cgi?id=46280 This is covered by existing tests. * bindings/v8/custom/V8DOMStringMapCustom.cpp: (WebCore::toV8): 2010-09-22 Abhishek Arya Reviewed by Dave Hyatt. Fix wrong casts for table cell since its parent is not a RenderBlock. Remove the redundant destroy call for empty anonymous columns or column span block. https://bugs.webkit.org/show_bug.cgi?id=46245 Tests: fast/table/table-anonymous-block-destroy-crash.html fast/table/table-columns-blocks-calc-crash.html * rendering/RenderBlock.cpp: (WebCore::RenderBlock::addChildToAnonymousColumnBlocks): (WebCore::RenderBlock::columnsBlockForSpanningElement): (WebCore::RenderBlock::removeChild): 2010-09-22 Matt Perry Reviewed by Darin Fisher. Trying to reland a version of r67749: Have V8DOMWindowShell ask the embedder whether to run a V8 extension in a particular script context. https://bugs.webkit.org/show_bug.cgi?id=45721 * bindings/v8/V8DOMWindowShell.cpp: (WebCore::V8DOMWindowShell::createNewContext): * bindings/v8/V8Proxy.cpp: (WebCore::V8Proxy::registerExtension): * bindings/v8/V8Proxy.h: * loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::allowScriptExtension): * loader/FrameLoaderClient.h: 2010-09-22 Ryosuke Niwa Reviewed by Darin Adler. queryCommandState returns false for Underline command when no selection is made https://bugs.webkit.org/show_bug.cgi?id=17594 The bug was caused by selectionComputedStyle's adding -webkit-text-decorations-in-effect property to a dummy span used to obtain the computed style when there is a typing style. Since this property is for internal use only, the CSS parser always stripped the property. As a result, we were always ignoring the text decorations set by the typing style. Fixed the bug by making selectionComputedStyle directly merge the computed style of the current caret position and the typing style. This also eliminates the need for a dummy span element. Due to the merge, the return value of selectionComputedStyle had to be changed to CSSMutableStyleDeclaration from CSSComputedStyleDeclaration. Test: editing/execCommand/query-text-decoration-with-typing-style.html * editing/ApplyStyleCommand.cpp: (WebCore::StyleChange::init): Calls getPropertiesNotIn. (WebCore::getPropertiesNotIn): Renamed from getPropertiesNotInComputedStyle since it takes CSSStyleDeclaration* instead of CSSComputedStyleDeclaration* for the second argument. (WebCore::ApplyStyleCommand::removeNonEditingProperties): Extracted from editingStyleAtPosition. (WebCore::ApplyStyleCommand::editingStyleAtPosition): Calls removeNonEditingProperties. * editing/ApplyStyleCommand.h: * editing/Editor.cpp: (WebCore::triStateOfStyle): Calls getPropertiesNotIn. Renamed from triStateOfStyleInComputedStyle since it no longer takes CSSComputedStyleDeclaration. (WebCore::Editor::selectionStartHasStyle): Calls selectionComputedStyle and triStateOfStyle. (WebCore::Editor::selectionHasStyle): Ditto. (WebCore::Editor::selectionStartCSSPropertyValue): Calls selectionComputedStyle. (WebCore::Editor::selectionComputedStyle): See above. * editing/Editor.h: * editing/EditorCommand.cpp: (WebCore::executeToggleStyleInList): Calls selectionComputedStyle. 2010-09-22 Jamey Hicks Reviewed by Kenneth Rohde Christiansen. [Qt] Web Inspector: Remote Web Inspector support for QtWebKit https://bugs.webkit.org/show_bug.cgi?id=43988 Runs a web debug server on port specified by QtTestBrowser argument -remote-inspector-port. Property _q_webInspectorServerPort of the QWebPage instance will be set according to the argument. All pages with that property set will be remotely inspectable. URL for remote inspection of first QWebPage is http://localhost:9222/webkit/inspector/inspector.html?page=1 where 1 is the number of the QWebPage instance. The base URL yields an index page with links to the individual inspectors: http://localhost:9222/ * WebCore.pro 2010-09-21 Darin Adler Reviewed by Anders Carlsson. Fix some Objective-C GC problems and use RetainPtr instead of HardRetain/Release https://bugs.webkit.org/show_bug.cgi?id=46220 * WebCore.exp.in: Updated. * bindings/objc/ObjCEventListener.h: Use a RetainPtr for m_listener, since that will do a CFRetain, which is right for GC rather than an -[NSObject retain], which is not. * bindings/objc/ObjCEventListener.mm: (WebCore::ObjCEventListener::ObjCEventListener): Removed explicit retain. (WebCore::ObjCEventListener::~ObjCEventListener): Removed explicit release and added get(). (WebCore::ObjCEventListener::handleEvent): Added get(); * bridge/objc/objc_instance.mm: (ObjcInstance::setGlobalException): Use copy/release instead of HardRetain/HardRelease. (ObjcInstance::moveGlobalExceptionToExecState): Ditto. * platform/Cursor.h: Use RetainPtr for PlatformCursor on Mac. * platform/Cursor.cpp: (WebCore::Cursor::platformCursor): Moved this to CursorMac for the Mac. * platform/Widget.cpp: Removed retain/releasePlatformWidget and made them both inlines in the header file. * platform/Widget.h: Fixed includes and added an include of RetainPtr. Made platformWidget and setPlatformWidget non-inline on the Mac platform. Made releasePlatformWidget and retainPlatformWidget empty inline functions for non-GTK platforms. * platform/graphics/mac/ImageMac.mm: Removed unneeded FoundationExtras.h include. * platform/mac/ClipboardMac.mm: (WebCore::cocoaTypeFromHTMLClipboardType): use RetainPtr for the return type. (WebCore::ClipboardMac::clearData): Use RetainPtr. (WebCore::ClipboardMac::getData): Ditto. (WebCore::ClipboardMac::setData): Ditto. * platform/mac/CursorMac.mm: (WebCore::createCustomCursor): Use RetainPtr for the return type. (WebCore::Cursor::ensurePlatformCursor): Removed all the calls to HardRetain since m_platformCursor is now a RetainPtr. (WebCore::Cursor::Cursor): Ditto. (WebCore::Cursor::operator=): Ditto. Also HardRelease. (WebCore::Cursor::~Cursor): Ditto. (WebCore::Cursor::platformCursor): Use get here. * platform/mac/FoundationExtras.h: Removed all the functions except for HardAutorelease. Later we can remove that one too. * platform/mac/ThemeMac.mm: (WebCore::setUpButtonCell): Changed this function to have a return value. Otherwise we end up taking a pointer (actually a reference) to a global variable, which does not do the right thing for GC. (WebCore::nonDefaultButton): Added. (WebCore::defaultButton): Added. (WebCore::button): Changed to call two separate functions with two separate global variables to avoid the problem with pointers to globals. * platform/mac/WidgetMac.mm: (WebCore::Widget::~Widget): Removed unneeded call to releasePlatformWidget. (WebCore::Widget::platformWidget): Non-inline so we can comipile the header plain non-Objective-C C++. (WebCore::Widget::setPlatformWidget): Ditto. * platform/network/mac/WebCoreURLResponse.mm: (mimeTypeFromUTITree): Use RetainPtr for the return type. (-[NSURLResponse adjustMIMETypeIfNecessary]): Use RetainPtr. 2010-09-22 Martin Robinson Reviewed by Xan Lopez. [GTK] r68027 caused many crashes on the bots https://bugs.webkit.org/show_bug.cgi?id=46268 Add the appropriate OwnPtrCairo.h include which has the OwnPtr specialization for Cairo paths. Without it, we will have memory corruption. * platform/graphics/cairo/PathCairo.cpp: Add OwnPtrCairo.h include. 2010-09-22 Pavel Podivilov Reviewed by Pavel Feldman. Web Inspector: implement pausing on XHR https://bugs.webkit.org/show_bug.cgi?id=46086 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: (WebCore::V8XMLHttpRequest::sendCallback): * inspector/Inspector.idl: * inspector/InspectorController.cpp: (WebCore::InspectorController::InspectorController): (WebCore::InspectorController::setNativeBreakpoint): (WebCore::InspectorController::removeNativeBreakpoint): (WebCore::InspectorController::willInsertDOMNodeImpl): (WebCore::InspectorController::willRemoveDOMNodeImpl): (WebCore::InspectorController::willModifyDOMAttrImpl): (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl): * inspector/InspectorController.h: (WebCore::InspectorController::instrumentWillSendXMLHttpRequest): (WebCore::InspectorController::inspectorControllerForScriptExecutionContext): (WebCore::InspectorController::inspectorControllerForNode): (WebCore::InspectorController::inspectorControllerForDocument): * inspector/InspectorDebuggerAgent.cpp: (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent): (WebCore::InspectorDebuggerAgent::didPause): (WebCore::InspectorDebuggerAgent::breakProgram): * inspector/InspectorDebuggerAgent.h: * inspector/InspectorTimelineAgent.h: * inspector/front-end/CallStackSidebarPane.js: (WebInspector.CallStackSidebarPane.prototype.updateStatus): * inspector/front-end/ElementsPanel.js: (WebInspector.ElementsPanel): (WebInspector.ElementsPanel.prototype.reset): * inspector/front-end/ElementsTreeOutline.js: (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): * inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel): (WebInspector.ScriptsPanel.prototype.debuggerPaused): (WebInspector.ScriptsPanel.prototype.reset): * inspector/front-end/Settings.js: * xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::url): 2010-09-22 Kenneth Russell Reviewed by James Robinson. Add local triangulation of cubic curve control points https://bugs.webkit.org/show_bug.cgi?id=45252 Adding a localized triangulation algorithm which takes as input the four control points of a cubic curve segment and provides both triangles as well as the ability to walk the interior edges. The latter will be used later to fill the interior of shapes bounded by these cubic curves, quadratic curves and line segments. * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: Added. (WebCore::LoopBlinnLocalTriangulator::Triangle::contains): (WebCore::LoopBlinnLocalTriangulator::Triangle::nextVertex): (WebCore::LoopBlinnLocalTriangulator::Triangle::indexForVertex): (WebCore::LoopBlinnLocalTriangulator::Triangle::makeCounterClockwise): (WebCore::LoopBlinnLocalTriangulator::LoopBlinnLocalTriangulator): (WebCore::LoopBlinnLocalTriangulator::reset): (WebCore::LoopBlinnLocalTriangulator::triangulate): (WebCore::LoopBlinnLocalTriangulator::triangulateHelper): (WebCore::LoopBlinnLocalTriangulator::addTriangle): (WebCore::LoopBlinnLocalTriangulator::addInteriorVertex): (WebCore::LoopBlinnLocalTriangulator::isSharedEdge): * platform/graphics/gpu/LoopBlinnLocalTriangulator.h: Added. (WebCore::LoopBlinnLocalTriangulator::Vertex::Vertex): (WebCore::LoopBlinnLocalTriangulator::Vertex::xyCoordinates): (WebCore::LoopBlinnLocalTriangulator::Vertex::klmCoordinates): (WebCore::LoopBlinnLocalTriangulator::Vertex::set): (WebCore::LoopBlinnLocalTriangulator::Vertex::end): (WebCore::LoopBlinnLocalTriangulator::Vertex::setEnd): (WebCore::LoopBlinnLocalTriangulator::Vertex::marked): (WebCore::LoopBlinnLocalTriangulator::Vertex::setMarked): (WebCore::LoopBlinnLocalTriangulator::Vertex::interior): (WebCore::LoopBlinnLocalTriangulator::Vertex::setInterior): (WebCore::LoopBlinnLocalTriangulator::Vertex::resetFlags): (WebCore::LoopBlinnLocalTriangulator::Triangle::Triangle): (WebCore::LoopBlinnLocalTriangulator::Triangle::getVertex): (WebCore::LoopBlinnLocalTriangulator::Triangle::setVertices): (WebCore::LoopBlinnLocalTriangulator::getVertex): (WebCore::LoopBlinnLocalTriangulator::numberOfTriangles): (WebCore::LoopBlinnLocalTriangulator::getTriangle): (WebCore::LoopBlinnLocalTriangulator::numberOfInteriorVertices): (WebCore::LoopBlinnLocalTriangulator::getInteriorVertex): 2010-09-22 Lucas De Marchi Unreviewed, EFL build fix. * CMakeListsEfl.txt: * platform/efl/ClipboardEfl.cpp: (WebCore::ClipboardEfl::ClipboardEfl): 2010-09-22 İsmail Dönmez Reviewed by Andreas Kling. [Qt] Build fix for WinCE Add two missing stubs: - privateBrowsingStateChanged(bool) - bindingInstance() * platform/qt/TemporaryLinkStubsQt.cpp: (PluginView::privateBrowsingStateChanged): (PluginView::bindingInstance): 2010-09-22 Martin Robinson Reviewed by Xan Lopez. [GTK] FontCustomPlatformData.cpp leaks FT_Faces https://bugs.webkit.org/show_bug.cgi?id=16941 Attach lifetime of the FontCustomPlatformData FT_Face to the resulting cairo_font_face_t. This will free the memory associated with the FT_Face once the cairo_font_face_t is destroyed. No new tests as functionality should not change. * platform/graphics/cairo/FontCustomPlatformData.cpp: (WebCore::releaseCustomFontData): Moved this helper method to the top of the file and gave it a more descriptive name. (WebCore::FontCustomPlatformData::FontCustomPlatformData): Changed the constructor to take the FT_Face and the buffer, so to better encapsulate the creation of the cairo face. (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added a comment about the fate of the FT_Face to the destructor. (WebCore::createFontCustomPlatformData): Cleaned up the code here and moved some of the logic into the constructor. * platform/graphics/cairo/FontCustomPlatformData.h: Updated method definitions. 2010-09-22 Balazs Kelemen Reviewed by Kenneth Rohde Christiansen. PluginStrategy should satisfy the needs of Qt https://bugs.webkit.org/show_bug.cgi?id=45857 No new functionality so no new tests. * plugins/PluginData.cpp: (WebCore::PluginData::initPlugins): * plugins/PluginStrategy.h: Added a |const Page*| argument to getPluginInfo. 2010-09-22 Pavel Feldman Reviewed by Yury Semikhatsky. Web Inspector: Elements panel does not reflect changes to the text node values. https://bugs.webkit.org/show_bug.cgi?id=46166 * dom/CharacterData.cpp: (WebCore::CharacterData::dispatchModifiedEvent): * inspector/Inspector.idl: * inspector/InspectorController.cpp: (WebCore::InspectorController::characterDataModifiedImpl): * inspector/InspectorController.h: (WebCore::InspectorController::characterDataModified): * inspector/InspectorDOMAgent.cpp: (WebCore::InspectorDOMAgent::characterDataModified): * inspector/InspectorDOMAgent.h: (WebCore::EventListenerInfo::EventListenerInfo): (WebCore::InspectorDOMAgent::create): (WebCore::InspectorDOMAgent::cast): (WebCore::InspectorDOMAgent::cssStore): * inspector/front-end/DOMAgent.js: (WebInspector.DOMAgent.prototype._characterDataModified): (WebInspector.characterDataModified): * inspector/front-end/ElementsPanel.js: (WebInspector.ElementsPanel.prototype._characterDataModified): * inspector/front-end/ElementsTreeOutline.js: (WebInspector.ElementsTreeElement.prototype._textNodeEditingCommitted): 2010-09-21 Ragner Magalhaes Reviewed by Kenneth Rohde Christiansen. [Qt] On Maemo platform, web style is missing for some inputs https://bugs.webkit.org/show_bug.cgi?id=46182 * css/themeQtMaemo5.css: 2010-09-22 Patrick Gansterer Unreviewed. [WINCE] Build fix for ResourceHandleWin after r67291. * platform/network/win/ResourceHandleWin.cpp: (WebCore::ResourceHandle::loadResourceSynchronously): Replace Frame* parameter with NetworkingContext*. 2010-09-22 Chris Guillory Reviewed by Chris Fleizach. Crash due to bad cast in AXObjectCacheChromium.cpp. https://bugs.webkit.org/show_bug.cgi?id=46237 * accessibility/chromium/AXObjectCacheChromium.cpp: (WebCore::AXObjectCache::postPlatformNotification): * page/ChromeClient.h: (WebCore::ChromeClient::postAccessibilityNotification): (WebCore::ChromeClient::didChangeAccessibilityObjectState): (WebCore::ChromeClient::didChangeAccessibilityObjectChildren): * page/chromium/ChromeClientChromium.h: 2010-09-22 Chris Rogers Reviewed by James Robinson. Add HRTFElevation files https://bugs.webkit.org/show_bug.cgi?id=45864 No new tests since audio API is not yet implemented. * platform/audio/HRTFElevation.cpp: Added. (WebCore::HRTFElevation::calculateSymmetricKernelsForAzimuthElevation): (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation): (WebCore::HRTFElevation::createForSubject): (WebCore::HRTFElevation::createByInterpolatingSlices): (WebCore::HRTFElevation::getKernelsFromAzimuth): * platform/audio/HRTFElevation.h: Added. (WebCore::HRTFElevation::kernelListL): (WebCore::HRTFElevation::kernelListR): (WebCore::HRTFElevation::elevationAngle): (WebCore::HRTFElevation::numberOfAzimuths): (WebCore::HRTFElevation::sampleRate): (WebCore::HRTFElevation::HRTFElevation): 2010-09-22 Alejandro G. Castro Reviewed by Martin Robinson. [gtk] Use the smart pointers to handle cairo_path_t https://bugs.webkit.org/show_bug.cgi?id=46212 Modified the code to use smart pointers with cairo_path_t variables. * platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::appendPathToCairoContext): (WebCore::GraphicsContext::clip): (WebCore::GraphicsContext::drawTiledShadow): * platform/graphics/cairo/PathCairo.cpp: (WebCore::Path::Path): (WebCore::Path::operator=): (WebCore::Path::apply): (WebCore::Path::debugString): 2010-09-22 Kwang Yul Seo Reviewed by Kent Tamura. [BREWMP] Implement Image::loadPlatformResource https://bugs.webkit.org/show_bug.cgi?id=45873 Load images from the resource directory. * platform/graphics/brew/ImageBrew.cpp: Added. (WebCore::Image::loadPlatformResource): 2010-09-22 Chris Rogers Reviewed by James Robinson. Add HRTFKernel files https://bugs.webkit.org/show_bug.cgi?id=45863 No new tests since audio API is not yet implemented. * platform/audio/HRTFKernel.cpp: Added. (WebCore::extractAverageGroupDelay): (WebCore::HRTFKernel::HRTFKernel): (WebCore::HRTFKernel::createImpulseResponse): (WebCore::HRTFKernel::createInterpolatedKernel): * platform/audio/HRTFKernel.h: Added. (WebCore::HRTFKernel::create): (WebCore::HRTFKernel::fftFrame): (WebCore::HRTFKernel::fftSize): (WebCore::HRTFKernel::frameDelay): (WebCore::HRTFKernel::sampleRate): (WebCore::HRTFKernel::nyquist): (WebCore::HRTFKernel::HRTFKernel): 2010-09-22 Kent Tamura Reviewed by Chris Fleizach. Support keyboard operations for . https://bugs.webkit.org/show_bug.cgi?id=45803 Increasing the value with Up/Right arrow keys by its step value, and decreasing with Down/Left arrow keys. If an input element has step=any attribute, increasing/decreasing by 1/100 of max-min. Note: This change is not useful on Mac because users can't set focus on range controls. Test: fast/forms/range-keyoperation.html * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): Calls handleKeyEventForRange() for RANGE and key events. (WebCore::HTMLInputElement::handleKeyEventForRange): * html/HTMLInputElement.h: Add handleKeyEventForRange() declaration. 2010-09-22 Mario Sanchez Prada Reviewed by Chris Fleizach. [Gtk] Incorrect exposure of list items whose children are elements https://bugs.webkit.org/show_bug.cgi?id=45383 Set ATK_ROLE_LIST_ITEM looking for the role of the parent object Test: platform/gtk/accessibility/list-items-always-exposed.html * accessibility/gtk/AccessibilityObjectAtk.cpp: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Always include objects with ListItemRole in accessibility for GTK. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: (getInterfaceMaskFromObject): Add some specific code to handle the special case of list markers by implementing AtkText when needed. 2010-09-22 Dirk Schulze Reviewed by Nikolas Zimmermann. Make FilterEffects independent of SVG https://bugs.webkit.org/show_bug.cgi?id=46177 Moving all FilterEffects from svg/graphics/filters to platform/graphics/filters, now that they are independent of SVG. Removed the SVG prefix of the files and updated the headers. * Android.mk: * CMakeLists.txt: * GNUmakefile.am: * WebCore.gypi: * WebCore.pro: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * platform/graphics/filters/DistantLightSource.h: Copied from WebCore/svg/graphics/filters/SVGDistantLightSource.h. * platform/graphics/filters/FEConvolveMatrix.cpp: Copied from WebCore/svg/graphics/filters/SVGFEConvolveMatrix.cpp. * platform/graphics/filters/FEConvolveMatrix.h: Copied from WebCore/svg/graphics/filters/SVGFEConvolveMatrix.h. * platform/graphics/filters/FEDiffuseLighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFEDiffuseLighting.cpp. * platform/graphics/filters/FEDiffuseLighting.h: Copied from WebCore/svg/graphics/filters/SVGFEDiffuseLighting.h. * platform/graphics/filters/FEDisplacementMap.cpp: Copied from WebCore/svg/graphics/filters/SVGFEDisplacementMap.cpp. * platform/graphics/filters/FEDisplacementMap.h: Copied from WebCore/svg/graphics/filters/SVGFEDisplacementMap.h. * platform/graphics/filters/FEFlood.cpp: Copied from WebCore/svg/graphics/filters/SVGFEFlood.cpp. * platform/graphics/filters/FEFlood.h: Copied from WebCore/svg/graphics/filters/SVGFEFlood.h. * platform/graphics/filters/FELighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFELighting.cpp. * platform/graphics/filters/FELighting.h: Copied from WebCore/svg/graphics/filters/SVGFELighting.h. * platform/graphics/filters/FEMerge.cpp: Copied from WebCore/svg/graphics/filters/SVGFEMerge.cpp. * platform/graphics/filters/FEMerge.h: Copied from WebCore/svg/graphics/filters/SVGFEMerge.h. * platform/graphics/filters/FEMorphology.cpp: Copied from WebCore/svg/graphics/filters/SVGFEMorphology.cpp. * platform/graphics/filters/FEMorphology.h: Copied from WebCore/svg/graphics/filters/SVGFEMorphology.h. * platform/graphics/filters/FEOffset.cpp: Copied from WebCore/svg/graphics/filters/SVGFEOffset.cpp. * platform/graphics/filters/FEOffset.h: Copied from WebCore/svg/graphics/filters/SVGFEOffset.h. * platform/graphics/filters/FESpecularLighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFESpecularLighting.cpp. * platform/graphics/filters/FESpecularLighting.h: Copied from WebCore/svg/graphics/filters/SVGFESpecularLighting.h. * platform/graphics/filters/FETile.cpp: Copied from WebCore/svg/graphics/filters/SVGFETile.cpp. * platform/graphics/filters/FETile.h: Copied from WebCore/svg/graphics/filters/SVGFETile.h. * platform/graphics/filters/FETurbulence.cpp: Copied from WebCore/svg/graphics/filters/SVGFETurbulence.cpp. * platform/graphics/filters/FETurbulence.h: Copied from WebCore/svg/graphics/filters/SVGFETurbulence.h. * platform/graphics/filters/LightSource.cpp: Copied from WebCore/svg/graphics/filters/SVGLightSource.cpp. * platform/graphics/filters/LightSource.h: Copied from WebCore/svg/graphics/filters/SVGLightSource.h. * platform/graphics/filters/PointLightSource.h: Copied from WebCore/svg/graphics/filters/SVGPointLightSource.h. * platform/graphics/filters/SpotLightSource.h: Copied from WebCore/svg/graphics/filters/SVGSpotLightSource.h. * svg/SVGFEConvolveMatrixElement.h: * svg/SVGFEDiffuseLightingElement.cpp: * svg/SVGFEDisplacementMapElement.h: * svg/SVGFEDistantLightElement.cpp: * svg/SVGFEFloodElement.h: * svg/SVGFELightElement.h: * svg/SVGFEMergeElement.h: * svg/SVGFEMorphologyElement.h: * svg/SVGFEOffsetElement.h: * svg/SVGFEPointLightElement.cpp: * svg/SVGFESpecularLightingElement.h: * svg/SVGFESpotLightElement.cpp: * svg/SVGFETileElement.h: * svg/SVGFETurbulenceElement.h: * svg/graphics/filters/SVGDistantLightSource.h: Removed. * svg/graphics/filters/SVGFEConvolveMatrix.cpp: Removed. * svg/graphics/filters/SVGFEConvolveMatrix.h: Removed. * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Removed. * svg/graphics/filters/SVGFEDiffuseLighting.h: Removed. * svg/graphics/filters/SVGFEDisplacementMap.cpp: Removed. * svg/graphics/filters/SVGFEDisplacementMap.h: Removed. * svg/graphics/filters/SVGFEFlood.cpp: Removed. * svg/graphics/filters/SVGFEFlood.h: Removed. * svg/graphics/filters/SVGFELighting.cpp: Removed. * svg/graphics/filters/SVGFELighting.h: Removed. * svg/graphics/filters/SVGFEMerge.cpp: Removed. * svg/graphics/filters/SVGFEMerge.h: Removed. * svg/graphics/filters/SVGFEMorphology.cpp: Removed. * svg/graphics/filters/SVGFEMorphology.h: Removed. * svg/graphics/filters/SVGFEOffset.cpp: Removed. * svg/graphics/filters/SVGFEOffset.h: Removed. * svg/graphics/filters/SVGFESpecularLighting.cpp: Removed. * svg/graphics/filters/SVGFESpecularLighting.h: Removed. * svg/graphics/filters/SVGFETile.cpp: Removed. * svg/graphics/filters/SVGFETile.h: Removed. * svg/graphics/filters/SVGFETurbulence.cpp: Removed. * svg/graphics/filters/SVGFETurbulence.h: Removed. * svg/graphics/filters/SVGLightSource.cpp: Removed. * svg/graphics/filters/SVGLightSource.h: Removed. * svg/graphics/filters/SVGPointLightSource.h: Removed. * svg/graphics/filters/SVGSpotLightSource.h: Removed. 2010-09-22 Patrick Gansterer Reviewed by Adam Roben. [WIN] Add internetHandle to WebCoreSynchronousLoader. https://bugs.webkit.org/show_bug.cgi?id=46185 For loading content via network the WebCoreSynchronousLoader needs its own (synchronous) internetHandle. This also adds asynchronousInternetHandle() to create a static asynchronous internetHandle. * platform/network/win/ResourceHandleWin.cpp: (WebCore::createInternetHandle): (WebCore::asynchronousInternetHandle): (WebCore::WebCoreSynchronousLoader::internetHandle): (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): Create synchronous internetHandle. (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader): Delete synchronous internetHandle. 2010-09-22 Kwang Yul Seo Reviewed by Chris Fleizach. [chromium] Remove unused sys/types.h in VDMXParser.cpp https://bugs.webkit.org/show_bug.cgi?id=46136 sys/types.h is not needed here. * platform/graphics/chromium/VDMXParser.cpp: 2010-09-22 Kwang Yul Seo Reviewed by Kent Tamura. [BREWMP] Change the home directory path to the WebKit module directory https://bugs.webkit.org/show_bug.cgi?id=45895 AEEFS_HOME_DIR denotes the currently running application's directory. Change it to fs:/~ to use the WebKit module directory as home. * platform/brew/FileSystemBrew.cpp: (WebCore::homeDirectoryPath): 2010-09-22 Kwang Yul Seo Reviewed by Kent Tamura. [BREWMP] Add dummy Pasteboard https://bugs.webkit.org/show_bug.cgi?id=46107 Pasteboard is not supported yet. Add dummy implementation to avoid link errors. * platform/brew/PasteboardBrew.cpp: Added. (WebCore::Pasteboard::generalPasteboard): (WebCore::Pasteboard::Pasteboard): (WebCore::Pasteboard::clear): (WebCore::Pasteboard::writeSelection): (WebCore::Pasteboard::writePlainText): (WebCore::Pasteboard::writeURL): (WebCore::Pasteboard::writeImage): (WebCore::Pasteboard::canSmartReplace): (WebCore::Pasteboard::plainText): (WebCore::Pasteboard::documentFragment): 2010-09-21 Ryosuke Niwa Reviewed by Kent Tamura. Each EntityMaskIn* needs explanation https://bugs.webkit.org/show_bug.cgi?id=44833 Added a description as to why we escape nbsp when serializing HTML documents but not when serializing XML documents. * editing/markup.cpp: 2010-09-21 Ryosuke Niwa Reviewed by Kent Tamura. cleanup: removeInlineStyleFromElement and extractInlineStyleToPushDown should be merged https://bugs.webkit.org/show_bug.cgi?id=46205 Cleanup required to fix the bug 27818. Added the style extraction mechanism to removeInlineStyleFromElement and removeCSSStyle and replaced the call to extractInlineStyleToPushDown by a call to removeInlineStyleFromElement. * editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added extractedStyle argument. (WebCore::ApplyStyleCommand::removeCSSStyle): Added extractedStyle argument. (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls removeInlineStyleFromElement instead of extractInlineStyleToPushDown which has been deleted. * editing/ApplyStyleCommand.h: 2010-09-21 Andrew Wilson Unreviewed, rolling out r67982. http://trac.webkit.org/changeset/67982 https://bugs.webkit.org/show_bug.cgi?id=45156 Causes crashes on chromium testshell * WebCore.gypi: * accessibility/chromium/AXObjectCacheChromium.cpp: (WebCore::AXObjectCache::postPlatformNotification): (WebCore::AXObjectCache::handleFocusedUIElementChanged): (WebCore::AXObjectCache::handleScrolledToAnchor): * dom/Document.cpp: (WebCore::Document::implicitClose): (WebCore::Document::setFocusedNode): * editing/SelectionController.h: * editing/chromium/SelectionControllerChromium.cpp: Removed. * page/FrameView.cpp: (WebCore::FrameView::layout): * page/chromium/ChromeClientChromium.h: 2010-09-21 Cosmin Truta Reviewed by James Robinson. RenderImage::intrinsicSizeChanged crashes when m_imageResource is missing https://bugs.webkit.org/show_bug.cgi?id=46120 Avoid applying operator -> to m_imageResource when its underlying pointer is NULL. * rendering/RenderImage.h: (WebCore::RenderImage::intrinsicSizeChanged): Checked m_imageResource. * html/HTMLImageElement.cpp: (HTMLImageElement::createRenderer): Fixed indentation. 2010-09-21 Kenneth Russell Reviewed by James Robinson. [chromium] Remove GLES2Context and WebGLES2Context https://bugs.webkit.org/show_bug.cgi?id=46131 Removed now-obsolete GLES2Context and WebGLES2Context classes, and dependency on command buffer client code from WebCore. Built and tested 3D CSS and WebGL content on Mac OS X to test. * WebCore.gypi: * platform/chromium/GLES2Context.h: Removed. * platform/graphics/skia/ImageSkia.cpp: 2010-09-21 Geoffrey Garen Try to fix the Windows build. * loader/Cache.cpp: (WebCore::Cache::makeResourcePurgeable): (WebCore::Cache::evict): Cast to int before using unary '-', to avoid an MSVC warning. 2010-09-21 Pratik Solanki Reviewed by Geoffrey Garen and Darin Adler. Use purgeable memory to keep more dead resources in cache https://bugs.webkit.org/show_bug.cgi?id=44806 This changes the behavior of dead resources in the WebCore cache to be the following if shouldMakeResourcePurgeableOnEviction() returns true. 1. Dead resources in the cache are kept in non-purgeable memory. 2. When we prune dead resources, instead of freeing them, we mark their memory as purgeable and keep the resources until the kernel reclaims the purgeable memory. By leaving the in-cache dead resources in dirty resident memory, we decrease the likelihood of the kernel claiming that memory and forcing us to refetch the resource (for example when a user presses back). And by having an unbounded number of resource objects using purgeable memory, we can use as much memory as is available on the machine. The trade-off is that the CachedResource object (and its member variables) are allocated in non-purgeable TC-malloc'd memory so we would see slightly more memory use due to this. * loader/Cache.cpp: (WebCore::Cache::resourceForURL): Adjust sizes appropriately if we made resource memory non-purgeable. (WebCore::Cache::pruneDeadResources): When removing dead resources, try first to mark their memory as purgeable. If not, evict the resource. (WebCore::Cache::makeResourcePurgeable): Added. Try to mark resource memory as purgeable. If successful, adjust the sizes so that we don't factor this resources size in the Cache size calculation. (WebCore::Cache::evict): Don't decrement size if we already did it in makeResourcePurgeable. (WebCore::Cache::dumpLRULists): Extra debug logging. * loader/Cache.h: (WebCore::Cache::shouldMakeResourcePurgeableOnEviction): Added. Indicates if the new behaviour is enabled. * loader/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::allClientsRemoved): Do not mark memory as purgeable. The Cache class takes care of this. * loader/CachedImage.cpp: (WebCore::CachedImage::destroyDecodedData): Ditto. * loader/CachedScript.cpp: (WebCore::CachedScript::destroyDecodedData): Ditto. 2010-09-21 Dan Bernstein Reviewed by Darin Adler. Extending the selection to sentence boundary after a line break may select extra character https://bugs.webkit.org/show_bug.cgi?id=46232 Test: editing/selection/extend-by-sentence-002.html * editing/visible_units.cpp: (WebCore::nextBoundary): The text iterator’s range end can be the position after the line break, in which case the next visible is actually after the first character of the next sentence. Instead, advance the text iterator past the newline character and return the beginning of its range, which is guaranteed to still be before the next sentence. 2010-09-21 Robert Hogan Rubber-stamped by Ariya Hidayat. [Qt] Build fix against qt trunk * platform/graphics/qt/ContextShadow.cpp: (WebCore::ContextShadow::beginShadowLayer): 2010-09-21 Tony Chang Unreviewed, QT build fix. * platform/qt/ClipboardQt.cpp: (WebCore::ClipboardQt::ClipboardQt): 2010-09-21 Andy Estes Reviewed by Darin Adler. REGRESSION (r61285): AIM 2.1.296: Code rendered as text in Welcome screen https://bugs.webkit.org/show_bug.cgi?id=46134 * WebCore.exp.in: Export __ZN7WebCore32applicationIsAOLInstantMessengerEv. * platform/mac/RuntimeApplicationChecks.h: * platform/mac/RuntimeApplicationChecks.mm: (WebCore::applicationIsAOLInstantMessenger): Determine if the embedding application is AOL Instant Messenger by checking the bundle identifier. 2010-09-21 Chris Guillory Reviewed by Chris Fleizach. Send webkit accessibility notifications to Chromium. https://bugs.webkit.org/show_bug.cgi?id=45156 * WebCore.gypi: * accessibility/chromium/AXObjectCacheChromium.cpp: (WebCore::AXObjectCache::postPlatformNotification): (WebCore::AXObjectCache::handleFocusedUIElementChanged): (WebCore::AXObjectCache::handleScrolledToAnchor): * dom/Document.cpp: (WebCore::Document::implicitClose): (WebCore::Document::setFocusedNode): * editing/SelectionController.h: * editing/chromium/SelectionControllerChromium.cpp: Added. (WebCore::SelectionController::notifyAccessibilityForSelectionChange): * page/FrameView.cpp: (WebCore::FrameView::layout): * page/chromium/ChromeClientChromium.h: 2010-09-21 Alejandro G. Castro Reviewed by Martin Robinson. [gtk] Move copyContextProperties outside the GraphicsContextCairo https://bugs.webkit.org/show_bug.cgi?id=46179. Moved the copyContextProperties function to the CairoUtilities so we can use it outside GraphicsContextCairo. We moved also the old gtk CairoUtilities file to GdkCairoUtilities and added the new file in the cairo directory. * GNUmakefile.am: * platform/graphics/cairo/CairoUtilities.cpp: Added. (WebCore::copyContextProperties): * platform/graphics/cairo/CairoUtilities.h: Added. * platform/graphics/cairo/GraphicsContextCairo.cpp: * platform/graphics/gtk/CairoUtilities.cpp: Removed. * platform/graphics/gtk/CairoUtilities.h: Removed. * platform/graphics/gtk/GdkCairoUtilities.cpp: Added. (getCairoSurfacePixel): (getGdkPixbufPixel): (cairoImageSurfaceToGdkPixbuf): * platform/graphics/gtk/GdkCairoUtilities.h: Added. * platform/graphics/gtk/ImageBufferGtk.cpp: * platform/graphics/gtk/ImageGtk.cpp: 2010-09-21 Vangelis Kokkevis Reviewed by James Robinson. [chromium] Cleaned up LayerRendererChromium::prepareToDrawLayers logic to avoid unnecessary copy operations if the existing root layer contents aren't useful for scrolling. Also removed call to updateLayersRecursive() as the composited layer update is actually happening in the drawLayers() method. https://bugs.webkit.org/show_bug.cgi?id=46199 * platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::LayerRendererChromium::prepareToDrawLayers): 2010-09-21 Daniel Cheng Reviewed by Tony Chang. Change Clipboard to use an enum instead of isForDragging = true/false https://bugs.webkit.org/show_bug.cgi?id=46004 No new tests, since it's just a refactoring change. * bindings/js/JSClipboardCustom.cpp: (WebCore::JSClipboard::setDragImage): * bindings/v8/custom/V8ClipboardCustom.cpp: (WebCore::V8Clipboard::setDragImageCallback): * dom/Clipboard.cpp: (WebCore::Clipboard::Clipboard): (WebCore::Clipboard::setDropEffect): (WebCore::Clipboard::setEffectAllowed): * dom/Clipboard.h: (WebCore::Clipboard::isForCopyAndPaste): (WebCore::Clipboard::isForDragAndDrop): * editing/android/EditorAndroid.cpp: (WebCore::Editor::newGeneralClipboard): * editing/brew/EditorBrew.cpp: (WebCore::Editor::newGeneralClipboard): * editing/chromium/EditorChromium.cpp: (WebCore::Editor::newGeneralClipboard): * editing/haiku/EditorHaiku.cpp: (WebCore::Editor::newGeneralClipboard): * editing/mac/EditorMac.mm: (WebCore::Editor::newGeneralClipboard): * editing/wx/EditorWx.cpp: (WebCore::Editor::newGeneralClipboard): * page/chromium/EventHandlerChromium.cpp: (WebCore::EventHandler::createDraggingClipboard): * page/efl/EventHandlerEfl.cpp: (WebCore::EventHandler::createDraggingClipboard): * page/gtk/EventHandlerGtk.cpp: (WebCore::EventHandler::createDraggingClipboard): * page/haiku/EventHandlerHaiku.cpp: (WebCore::EventHandler::createDraggingClipboard): * page/mac/EventHandlerMac.mm: (WebCore::EventHandler::createDraggingClipboard): * page/qt/EventHandlerQt.cpp: (WebCore::EventHandler::createDraggingClipboard): * page/win/EventHandlerWin.cpp: (WebCore::EventHandler::createDraggingClipboard): * page/wx/EventHandlerWx.cpp: (WebCore::EventHandler::createDraggingClipboard): * platform/android/ClipboardAndroid.cpp: (WebCore::ClipboardAndroid::ClipboardAndroid): (WebCore::ClipboardAndroid::clearData): (WebCore::ClipboardAndroid::clearAllData): (WebCore::ClipboardAndroid::setData): * platform/android/ClipboardAndroid.h: * platform/brew/ClipboardBrew.cpp: (WebCore::ClipboardBrew::ClipboardBrew): (WebCore::ClipboardBrew::clearData): (WebCore::ClipboardBrew::clearAllData): (WebCore::ClipboardBrew::setData): * platform/brew/ClipboardBrew.h: * platform/chromium/ClipboardChromium.cpp: (WebCore::Clipboard::create): (WebCore::ClipboardChromium::ClipboardChromium): (WebCore::ClipboardChromium::create): (WebCore::ClipboardChromium::getData): * platform/chromium/ClipboardChromium.h: * platform/efl/ClipboardEfl.cpp: (WebCore::Editor::newGeneralClipboard): (WebCore::ClipboardEfl::ClipboardEfl): * platform/efl/ClipboardEfl.h: (WebCore::ClipboardEfl::create): * platform/gtk/ClipboardGtk.cpp: (WebCore::Editor::newGeneralClipboard): (WebCore::Clipboard::create): (WebCore::ClipboardGtk::ClipboardGtk): (WebCore::dataObjectTypeFromHTMLClipboardType): (WebCore::ClipboardGtk::clearData): (WebCore::ClipboardGtk::getData): (WebCore::ClipboardGtk::setData): * platform/gtk/ClipboardGtk.h: (WebCore::ClipboardGtk::create): * platform/haiku/ClipboardHaiku.cpp: (WebCore::Clipboard::create): (WebCore::ClipboardHaiku::ClipboardHaiku): * platform/haiku/ClipboardHaiku.h: (WebCore::ClipboardHaiku::create): * platform/mac/ClipboardMac.h: (WebCore::ClipboardMac::create): * platform/mac/ClipboardMac.mm: (WebCore::Clipboard::create): (WebCore::ClipboardMac::ClipboardMac): * platform/qt/ClipboardQt.cpp: (WebCore::ClipboardQt::ClipboardQt): (WebCore::ClipboardQt::~ClipboardQt): (WebCore::ClipboardQt::clearData): (WebCore::ClipboardQt::clearAllData): (WebCore::ClipboardQt::setData): (WebCore::ClipboardQt::declareAndWriteDragImage): (WebCore::ClipboardQt::writeURL): (WebCore::ClipboardQt::writeRange): (WebCore::ClipboardQt::writePlainText): * platform/qt/ClipboardQt.h: (WebCore::ClipboardQt::create): * platform/win/ClipboardWin.cpp: (WebCore::Clipboard::create): (WebCore::ClipboardWin::ClipboardWin): (WebCore::ClipboardWin::clearData): (WebCore::ClipboardWin::clearAllData): (WebCore::ClipboardWin::setData): (WebCore::ClipboardWin::setExternalDataObject): * platform/win/ClipboardWin.h: (WebCore::ClipboardWin::create): * platform/win/EditorWin.cpp: (WebCore::Editor::newGeneralClipboard): * platform/wx/ClipboardWx.cpp: (WebCore::ClipboardWx::ClipboardWx): * platform/wx/ClipboardWx.h: (WebCore::ClipboardWx::create): 2010-09-21 Abhishek Arya Reviewed by Dave Hyatt. Take isValueList() checks out of the asserts for memory safety. https://bugs.webkit.org/show_bug.cgi?id=46194 Test: editing/execCommand/apply-style-text-decoration-crash.html * editing/ApplyStyleCommand.cpp: (WebCore::StyleChange::extractTextStyles): (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): 2010-09-21 Vangelis Kokkevis Reviewed by Kenneth Russell. [chromium] Fixing double translation of composited layers when scrolling. The scrolling transform is now applied by a separate layer maintained in the RenderLayerCompositor. https://bugs.webkit.org/show_bug.cgi?id=46193 * platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::LayerRendererChromium::drawLayers): 2010-09-21 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46196, add marginStart/Before/End/After accessors to RenderBoxModelObject. * rendering/RenderBox.cpp: (WebCore::RenderBox::marginBefore): (WebCore::RenderBox::marginAfter): (WebCore::RenderBox::marginStart): (WebCore::RenderBox::marginEnd): * rendering/RenderBox.h: * rendering/RenderBoxModelObject.h: * rendering/RenderInline.cpp: (WebCore::computeMargin): (WebCore::RenderInline::marginLeft): (WebCore::RenderInline::marginRight): (WebCore::RenderInline::marginTop): (WebCore::RenderInline::marginBottom): (WebCore::RenderInline::marginStart): (WebCore::RenderInline::marginEnd): * rendering/RenderInline.h: (WebCore::RenderInline::marginBefore): (WebCore::RenderInline::marginAfter): 2010-09-21 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46190, add borderStart/Before/End/After accessors to RenderBoxModelObject. * rendering/RenderBoxModelObject.h: (WebCore::RenderBoxModelObject::borderBefore): (WebCore::RenderBoxModelObject::borderAfter): (WebCore::RenderBoxModelObject::borderStart): (WebCore::RenderBoxModelObject::borderEnd): (WebCore::RenderBoxModelObject::borderAndPaddingLogicalHeight): (WebCore::RenderBoxModelObject::borderAndPaddingLogicalWidth): * rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::borderStart): (WebCore::RenderTableCell::borderEnd): (WebCore::RenderTableCell::borderBefore): (WebCore::RenderTableCell::borderAfter): * rendering/RenderTableCell.h: 2010-09-21 Martin Robinson Reviewed by Xan Lopez. [GTK] 'make dist' should be fixed in preparation for the next release https://bugs.webkit.org/show_bug.cgi?id=46129 * GNUmakefile.am: Update the sources list to include missing headers. 2010-09-21 David Hyatt Reviewed by John Sullivan. https://bugs.webkit.org/show_bug.cgi?id=46188, make the cross-platform setPrinting method match the Mac version of the method. Specifically don't pass the page size down to subframes of the one you're printing. * page/Frame.cpp: (WebCore::Frame::setPrinting): 2010-09-21 Patrick Gansterer Reviewed by Adam Roben. Use WTF::Vector for storing formData in ResourceHandleWin. https://bugs.webkit.org/show_bug.cgi?id=46180 * platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal): * platform/network/win/ResourceHandleWin.cpp: (WebCore::ResourceHandle::onHandleCreated): (WebCore::ResourceHandle::onRequestComplete): 2010-09-21 Jocelyn Turcotte Reviewed by Andreas Kling. [Qt] Check if the reply has been deleted before finishing a network request https://bugs.webkit.org/show_bug.cgi?id=46174 A crash can happen with the following sequence: 1. QNetworkReplyHandler::abort() emits reply->deleteLater() 2. QNAM emits QNetworkReply::finished() -> calls QNetworkReplyHandler::finish() 3. event loop would call reply->deleteLater() However a crash occurs since m_reply == 0 on step 2. * platform/network/qt/QNetworkReplyHandler.cpp: (WebCore::QNetworkReplyHandler::finish): 2010-09-21 Jochen Eisinger Reviewed by Jeremy Orlow. Use @ to concatenate the database name and the database identifier when building the filename to use for indexed databases. That character is valid for filenames but cannot occur in a database identifier derived from a security origin. https://bugs.webkit.org/show_bug.cgi?id=46178 * storage/IDBFactoryBackendImpl.cpp: (WebCore::IDBFactoryBackendImpl::databaseFileName): 2010-09-21 Steve Block Reviewed by Jeremy Orlow. DeviceOrientationClient and DeviceMotionClient should have controllerDestroyed() methods https://bugs.webkit.org/show_bug.cgi?id=45891 Tested by existing DeviceOrientation tests. * dom/DeviceMotionClient.h: * dom/DeviceMotionController.cpp: (WebCore::DeviceMotionController::~DeviceMotionController): * dom/DeviceMotionController.h: * dom/DeviceOrientationClient.h: * dom/DeviceOrientationController.cpp: (WebCore::DeviceOrientationController::~DeviceOrientationController): * dom/DeviceOrientationController.h: * loader/EmptyClients.h: (WebCore::EmptyDeviceMotionClient::deviceOrientationControllerDestroyed): (WebCore::EmptyDeviceOrientationClient::deviceOrientationControllerDestroyed): * platform/mock/DeviceOrientationClientMock.h: (WebCore::DeviceOrientationClientMock::deviceOrientationControllerDestroyed): 2010-09-21 Jochen Eisinger Reviewed by Jeremy Orlow. Factor out the file name used for a given indexed database to a static method. https://bugs.webkit.org/show_bug.cgi?id=46090 * storage/IDBFactoryBackendImpl.cpp: (WebCore::openSQLiteDatabase): (WebCore::IDBFactoryBackendImpl::databaseFileName): * storage/IDBFactoryBackendImpl.h: 2010-09-21 Dirk Schulze SVG Filter cleanup https://bugs.webkit.org/show_bug.cgi?id=45612 Unreviewed change of epsilon back to a more tolerant value in RenderTreeAsText and made it a static const. This should turn the bots green again. * rendering/RenderTreeAsText.cpp: (WebCore::hasFractions): 2010-09-21 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46125, convert table cell intrinsic padding from top/bottom-based to before/after-based. A vertical text table can have intrinsic padding built into the left/right direction (and this allows the base class logical padding methods on RenderBoxModelObject to be safe to use). * rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::RenderTableCell): (WebCore::RenderTableCell::paddingTop): (WebCore::RenderTableCell::paddingBottom): (WebCore::RenderTableCell::paddingLeft): (WebCore::RenderTableCell::paddingRight): (WebCore::RenderTableCell::paddingBefore): (WebCore::RenderTableCell::paddingAfter): * rendering/RenderTableCell.h: (WebCore::RenderTableCell::setIntrinsicPaddingBefore): (WebCore::RenderTableCell::setIntrinsicPaddingAfter): (WebCore::RenderTableCell::setIntrinsicPadding): (WebCore::RenderTableCell::intrinsicPaddingBefore): (WebCore::RenderTableCell::intrinsicPaddingAfter): * rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::calcRowHeight): (WebCore::RenderTableSection::layoutRows): * rendering/RenderTreeAsText.cpp: (WebCore::RenderTreeAsText::writeRenderObject): (WebCore::writeTextRun): 2010-09-21 Dirk Schulze Reviewed by Nikolas Zimmermann. SVG Filter cleanup https://bugs.webkit.org/show_bug.cgi?id=45612 Second cleanup patch. Modified files to follow webkit style. Removed dependencies to SVG of most of the filter effects and prepared them to move from WebCore/svg/graphics/filters to WebCore/platform/graphics/filters/. Renamed calculateDrawingIntRect and calculateDrawingRect to requestedRegionOfInputImageData and drawingRegionOfInputImage to clarify the functionality and make both functions distinguishable. * platform/graphics/filters/FEBlend.cpp: (WebCore::FEBlend::apply): * platform/graphics/filters/FEBlend.h: * platform/graphics/filters/FEColorMatrix.cpp: (WebCore::FEColorMatrix::apply): * platform/graphics/filters/FEColorMatrix.h: * platform/graphics/filters/FEComponentTransfer.cpp: (WebCore::FEComponentTransfer::apply): * platform/graphics/filters/FEComponentTransfer.h: (WebCore::ComponentTransferFunction::ComponentTransferFunction): * platform/graphics/filters/FEComposite.cpp: (WebCore::FEComposite::apply): * platform/graphics/filters/FEComposite.h: * platform/graphics/filters/FEGaussianBlur.cpp: (WebCore::FEGaussianBlur::apply): * platform/graphics/filters/FEGaussianBlur.h: * platform/graphics/filters/Filter.h: * platform/graphics/filters/FilterEffect.cpp: (WebCore::FilterEffect::requestedRegionOfInputImageData): (WebCore::FilterEffect::drawingRegionOfInputImage): (WebCore::FilterEffect::effectContext): * platform/graphics/filters/FilterEffect.h: * platform/graphics/filters/ImageBufferFilter.cpp: * platform/graphics/filters/ImageBufferFilter.h: * platform/graphics/filters/SourceAlpha.cpp: (WebCore::SourceAlpha::apply): * platform/graphics/filters/SourceAlpha.h: (WebCore::SourceAlpha::isSourceInput): (WebCore::SourceAlpha::SourceAlpha): * platform/graphics/filters/SourceGraphic.cpp: (WebCore::SourceGraphic::apply): * platform/graphics/filters/SourceGraphic.h: (WebCore::SourceGraphic::isSourceInput): (WebCore::SourceGraphic::SourceGraphic): * rendering/RenderTreeAsText.cpp: (WebCore::hasFractions): (WebCore::operator<<): * rendering/RenderTreeAsText.h: (WebCore::operator<<): * rendering/SVGRenderTreeAsText.cpp: * rendering/SVGRenderTreeAsText.h: * svg/graphics/filters/SVGFEConvolveMatrix.cpp: (WebCore::FEConvolveMatrix::apply): * svg/graphics/filters/SVGFEConvolveMatrix.h: * svg/graphics/filters/SVGFEDiffuseLighting.cpp: * svg/graphics/filters/SVGFEDiffuseLighting.h: * svg/graphics/filters/SVGFEDisplacementMap.cpp: (WebCore::FEDisplacementMap::apply): * svg/graphics/filters/SVGFEDisplacementMap.h: * svg/graphics/filters/SVGFEFlood.cpp: (WebCore::FEFlood::apply): (WebCore::FEFlood::externalRepresentation): * svg/graphics/filters/SVGFEFlood.h: * svg/graphics/filters/SVGFEImage.cpp: (WebCore::FEImage::apply): * svg/graphics/filters/SVGFEImage.h: * svg/graphics/filters/SVGFELighting.cpp: (WebCore::FELighting::apply): * svg/graphics/filters/SVGFELighting.h: * svg/graphics/filters/SVGFEMerge.cpp: (WebCore::FEMerge::apply): * svg/graphics/filters/SVGFEMerge.h: * svg/graphics/filters/SVGFEMorphology.cpp: (WebCore::FEMorphology::apply): * svg/graphics/filters/SVGFEMorphology.h: * svg/graphics/filters/SVGFEOffset.cpp: (WebCore::FEOffset::apply): * svg/graphics/filters/SVGFEOffset.h: * svg/graphics/filters/SVGFESpecularLighting.cpp: * svg/graphics/filters/SVGFESpecularLighting.h: * svg/graphics/filters/SVGFETile.cpp: (WebCore::FETile::apply): * svg/graphics/filters/SVGFETile.h: * svg/graphics/filters/SVGFETurbulence.cpp: (WebCore::FETurbulence::apply): * svg/graphics/filters/SVGFETurbulence.h: 2010-09-20 Philippe Normand Reviewed by Eric Carlson. [GTK] enhanced context menu for media elements https://bugs.webkit.org/show_bug.cgi?id=45021 New items in the media Element context menu: - play/pause - mute/unmute - controls display control - switch to fullscreen (for video only) - loop playback control - copy media url to clipboard - open in new window Test: media/context-menu-actions.html * page/ContextMenuController.cpp: (WebCore::ContextMenuController::contextMenuItemSelected): * platform/ContextMenu.cpp: (WebCore::ContextMenu::populate): (WebCore::ContextMenu::checkOrEnableIfNeeded): * platform/ContextMenuItem.h: * platform/LocalizationStrategy.h: * platform/LocalizedStrings.cpp: (WebCore::contextMenuItemTagOpenVideoInNewWindow): (WebCore::contextMenuItemTagOpenAudioInNewWindow): (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): (WebCore::contextMenuItemTagToggleMediaControls): (WebCore::contextMenuItemTagToggleMediaLoop): (WebCore::contextMenuItemTagEnterVideoFullscreen): (WebCore::contextMenuItemTagMediaPlay): (WebCore::contextMenuItemTagMediaPause): (WebCore::contextMenuItemTagMediaMute): * platform/LocalizedStrings.h: * platform/android/LocalizedStringsAndroid.cpp: (WebCore::contextMenuItemTagOpenVideoInNewWindow): (WebCore::contextMenuItemTagOpenAudioInNewWindow): (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): (WebCore::contextMenuItemTagToggleMediaControls): (WebCore::contextMenuItemTagToggleMediaLoop): (WebCore::contextMenuItemTagEnterVideoFullscreen): (WebCore::contextMenuItemTagMediaPlay): (WebCore::contextMenuItemTagMediaPause): (WebCore::contextMenuItemTagMediaMute): * platform/brew/LocalizedStringsBrew.cpp: (WebCore::contextMenuItemTagOpenVideoInNewWindow): (WebCore::contextMenuItemTagOpenAudioInNewWindow): (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): (WebCore::contextMenuItemTagToggleMediaControls): (WebCore::contextMenuItemTagToggleMediaLoop): (WebCore::contextMenuItemTagEnterVideoFullscreen): (WebCore::contextMenuItemTagMediaPlay): (WebCore::contextMenuItemTagMediaPause): (WebCore::contextMenuItemTagMediaMute): * platform/efl/LocalizedStringsEfl.cpp: (WebCore::contextMenuItemTagOpenVideoInNewWindow): (WebCore::contextMenuItemTagOpenAudioInNewWindow): (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): (WebCore::contextMenuItemTagToggleMediaControls): (WebCore::contextMenuItemTagToggleMediaLoop): (WebCore::contextMenuItemTagEnterVideoFullscreen): (WebCore::contextMenuItemTagMediaPlay): (WebCore::contextMenuItemTagMediaPause): (WebCore::contextMenuItemTagMediaMute): * platform/gtk/ContextMenuItemGtk.cpp: (WebCore::gtkStockIDFromContextMenuAction): * platform/gtk/LocalizedStringsGtk.cpp: (WebCore::contextMenuItemTagOpenVideoInNewWindow): (WebCore::contextMenuItemTagOpenAudioInNewWindow): (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): (WebCore::contextMenuItemTagToggleMediaControls): (WebCore::contextMenuItemTagToggleMediaLoop): (WebCore::contextMenuItemTagEnterVideoFullscreen): (WebCore::contextMenuItemTagMediaPlay): (WebCore::contextMenuItemTagMediaPause): (WebCore::contextMenuItemTagMediaMute): * platform/haiku/LocalizedStringsHaiku.cpp: (WebCore::contextMenuItemTagOpenVideoInNewWindow): (WebCore::contextMenuItemTagOpenAudioInNewWindow): (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): (WebCore::contextMenuItemTagToggleMediaControls): (WebCore::contextMenuItemTagToggleMediaLoop): (WebCore::contextMenuItemTagEnterVideoFullscreen): (WebCore::contextMenuItemTagMediaPlay): (WebCore::contextMenuItemTagMediaPause): (WebCore::contextMenuItemTagMediaMute): * platform/wx/LocalizedStringsWx.cpp: (WebCore::contextMenuItemTagOpenVideoInNewWindow): (WebCore::contextMenuItemTagOpenAudioInNewWindow): (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): (WebCore::contextMenuItemTagToggleMediaControls): (WebCore::contextMenuItemTagToggleMediaLoop): (WebCore::contextMenuItemTagEnterVideoFullscreen): (WebCore::contextMenuItemTagMediaPlay): (WebCore::contextMenuItemTagMediaPause): (WebCore::contextMenuItemTagMediaMute): * rendering/HitTestResult.cpp: (WebCore::HitTestResult::absoluteMediaURL): (WebCore::HitTestResult::mediaSupportsFullscreen): (WebCore::HitTestResult::mediaElement): (WebCore::HitTestResult::toggleMediaControlsDisplay): (WebCore::HitTestResult::toggleMediaLoopPlayback): (WebCore::HitTestResult::enterFullscreenForVideo): (WebCore::HitTestResult::mediaControlsEnabled): (WebCore::HitTestResult::mediaLoopEnabled): (WebCore::HitTestResult::mediaPlaying): (WebCore::HitTestResult::toggleMediaPlayState): (WebCore::HitTestResult::mediaHasAudio): (WebCore::HitTestResult::mediaMuted): (WebCore::HitTestResult::toggleMediaMuteState): * rendering/HitTestResult.h: 2010-09-20 Kwang Yul Seo Reviewed by Daniel Bates. [BREWMP] Handle tab key https://bugs.webkit.org/show_bug.cgi?id=46104 In Brew MP, AVK_FUNCTION is the key code for tab. Process AVK_FUNCTION as tab in PlatformKeyboardEvent. * platform/brew/PlatformKeyboardEventBrew.cpp: (WebCore::keyIdentifierForBrewKeyCode): (WebCore::windowsKeyCodeForKeyEvent): 2010-09-20 Sheriff Bot Unreviewed, rolling out r67918. http://trac.webkit.org/changeset/67918 https://bugs.webkit.org/show_bug.cgi?id=46162 Broke chromium win compile (Requested by jamesr on #webkit). * WebCore.gyp/WebCore.gyp: * WebCore.gypi: * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Renamed from WebCore/platform/graphics/skia/GlyphPageTreeNodeSkia.cpp. (WebCore::GlyphPage::fill): 2010-09-20 Daniel Bates Reviewed by Dan Bernstein. Cleanup: Extract common border radii expansion code in RenderBoxModelObject::paintBoxShadow() into function https://bugs.webkit.org/show_bug.cgi?id=45934 Extracted code for expanding and clamping the border radii into common function to remove duplicate code. No functionality was changed. So, no new tests. * rendering/RenderBoxModelObject.cpp: (WebCore::uniformlyExpandBorderRadii): Added. (WebCore::RenderBoxModelObject::paintBoxShadow): Moved common code to uniformlyExpandBorderRadii(). 2010-09-20 Kwang Yul Seo Reviewed by James Robinson. Make sure skia is not Chromium specific https://bugs.webkit.org/show_bug.cgi?id=39672 GGlyphPageTreeNodeLinux does not depend on Linux or Chromium. Move GGlyphPageTreeNodeLinux to platform/graphics/skia and rename it to GlyphPageTreeNodeSkia.cpp so that other ports can use it. * WebCore.gyp/WebCore.gyp: * WebCore.gypi: * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Removed. * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added. 2010-09-20 Kinuko Yasuda Reviewed by David Levin. Add NoStaticTables attributes to IDLs of FileSystem API for Worker support https://bugs.webkit.org/show_bug.cgi?id=46021 Added NoStaticTables attributes to IDLs except for ones for Callbacks. (As NoStaticTables only affects non-callback interfaces.) * fileapi/DOMFileSystem.idl: * fileapi/DirectoryEntry.idl: * fileapi/DirectoryReader.idl: * fileapi/Entry.idl: * fileapi/EntryArray.idl: * fileapi/FileEntry.idl: * fileapi/Flags.idl: * fileapi/Metadata.idl: 2010-09-20 Nico Weber Reviewed by Adam Barth. Fix "operands of ? are integers of different signs" clang warnings https://bugs.webkit.org/show_bug.cgi?id=46157 * platform/graphics/mac/ComplexTextController.cpp: (WebCore::ComplexTextController::advance): * rendering/RenderBox.cpp: (WebCore::RenderBox::calcHeight): 2010-09-20 Vangelis Kokkevis Unreviewed, rolling out r67906. http://trac.webkit.org/changeset/67906 https://bugs.webkit.org/show_bug.cgi?id=46139 Change causes chromium to crash when switching pages * platform/graphics/chromium/ContentLayerChromium.h: * platform/graphics/chromium/LayerChromium.h: 2010-09-19 Antonio Gomes Reviewed by Ojan Vafai. SelectionController::modify should ask EditingBehavior for platform specific behavior https://bugs.webkit.org/show_bug.cgi?id=41975 As a follow up of the refactoring work in bug 39854, patch makes SelectionController::modify() stop accessing EditingBehaviorType values directly, and replaces its use by the EditingBehavior class. Since the "Settings*" parameter of the private SelectionController::modify() method becomes unneeded with this change (it was used to query the editingBehaviorType), patch merges two modify() methods. No behavior change, so no new tests. * editing/EditingBehavior.h: (WebCore::EditingBehavior::shouldAlwaysGrowSelectionWhenExtendingToBoundary): * editing/SelectionController.cpp: (WebCore::SelectionController::modify): * editing/SelectionController.h: 2010-09-20 Vangelis Kokkevis Reviewed by James Robinson. [chromium] Making destructors of LayerChromium and ContentLayerChromium virtual so that the derived class' destructor code gets called. https://bugs.webkit.org/show_bug.cgi?id=46139 * platform/graphics/chromium/ContentLayerChromium.h: * platform/graphics/chromium/LayerChromium.h: 2010-09-20 Darin Adler Reviewed by James Robinson. Deprecate the inputType function on HTMLInputElement https://bugs.webkit.org/show_bug.cgi?id=46023 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::HTMLInputElement): Use m_deprecatedTypeNumber. (WebCore::HTMLInputElement::isValidValue): Use deprecatedInputType. (WebCore::HTMLInputElement::typeMismatch): Ditto. (WebCore::HTMLInputElement::valueMissing): Ditto. (WebCore::HTMLInputElement::rangeUnderflow): Ditto. (WebCore::HTMLInputElement::rangeOverflow): Ditto. (WebCore::HTMLInputElement::minimum): Ditto. (WebCore::HTMLInputElement::maximum): Ditto. (WebCore::HTMLInputElement::stepBase): Ditto. (WebCore::HTMLInputElement::stepMismatch): Ditto. (WebCore::HTMLInputElement::getStepParameters): Ditto. (WebCore::HTMLInputElement::getAllowedValueStep): Ditto. (WebCore::HTMLInputElement::isKeyboardFocusable): Ditto. (WebCore::HTMLInputElement::shouldUseInputMethod): Ditto. (WebCore::HTMLInputElement::handleBlurEvent): Ditto. (WebCore::HTMLInputElement::setType): Added a comment. (WebCore::HTMLInputElement::updateType): Replaced the setInputType function with this. The type is always the type attribute value, so there is no value in passing the type string in, and this is an internal implementation detail, not a public function. (WebCore::createFormControlTypes): Use deprecatedNumberOfTypes. (WebCore::HTMLInputElement::formControlType): Use deprecatedInputType. (WebCore::HTMLInputElement::saveFormControlState): Ditto. (WebCore::HTMLInputElement::restoreFormControlState): Ditto. (WebCore::HTMLInputElement::accessKeyAction): Ditto. (WebCore::HTMLInputElement::mapToEntry): Ditto. (WebCore::HTMLInputElement::parseMappedAttribute): Ditto. (WebCore::HTMLInputElement::rendererIsNeeded): Ditto. (WebCore::HTMLInputElement::createRenderer): Ditto. (WebCore::HTMLInputElement::attach): Ditto. (WebCore::HTMLInputElement::isSuccessfulSubmitButton): Ditto. (WebCore::HTMLInputElement::appendFormData): Ditto. (WebCore::HTMLInputElement::isTextField): Ditto. (WebCore::HTMLInputElement::isTextType): Ditto. (WebCore::HTMLInputElement::setChecked): Ditto. (WebCore::HTMLInputElement::value): Ditto. (WebCore::HTMLInputElement::valueWithDefault): Ditto. (WebCore::HTMLInputElement::setSuggestedValue): Ditto. (WebCore::HTMLInputElement::setValue): Ditto. (WebCore::HTMLInputElement::parseToDouble): Ditto. (WebCore::HTMLInputElement::valueAsDate): Ditto. (WebCore::HTMLInputElement::setValueAsDate): Ditto. (WebCore::HTMLInputElement::valueAsNumber): Ditto. (WebCore::HTMLInputElement::setValueAsNumber): Ditto. (WebCore::HTMLInputElement::serializeForDateTimeTypes): Ditto. (WebCore::HTMLInputElement::serialize): Ditto. (WebCore::HTMLInputElement::setValueFromRenderer): Ditto. (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): Ditto. (WebCore::HTMLInputElement::preDispatchEventHandler): Ditto. (WebCore::HTMLInputElement::postDispatchEventHandler): Ditto. (WebCore::HTMLInputElement::defaultEventHandler): Ditto. (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent): Ditto. (WebCore::HTMLInputElement::files): Ditto. (WebCore::HTMLInputElement::isAcceptableValue): Ditto. (WebCore::HTMLInputElement::sanitizeValue): Ditto. (WebCore::HTMLInputElement::hasUnacceptableValue): Ditto. (WebCore::HTMLInputElement::needsActivationCallback): Ditto. (WebCore::HTMLInputElement::isRequiredFormControl): Ditto. (WebCore::HTMLInputElement::recalcWillValidate): Ditto. (WebCore::HTMLInputElement::parseToDateComponents): Ditto. (WebCore::HTMLInputElement::dataList): Ditto. (WebCore::HTMLInputElement::isSpeechEnabled): Ditto. * html/HTMLInputElement.h: Renamed InputType to DeprecatedInputType since it should not be used outside this class. Renamed numberOfTypes to dprecatedNumberOfTypes for the same reason. Changed all code to use deprecatedInputType function instead of m_type. Renamed inputType function to deprecatedInputType. Replaced public setInputType function with private updateType function. Renamed m_type data member to m_deprecatedTypeNumber. * rendering/MediaControlElements.cpp: (WebCore::MediaControlInputElement::MediaControlInputElement): * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::updateFromElement): Use setType instead of setInputType. 2010-09-20 Mihai Parparita Unreviewed; an attempt to fix Windows build. * WebCore.vcproj/WebCore.vcproj: 2010-09-20 Simon Fraser Reviewed by Dan Bernstein. When PDF image is directly composited, it does not display https://bugs.webkit.org/show_bug.cgi?id=46144 In the "direct image compositing" code path, we set the image directly as the contents of the GraphicsLayer. However, this only works with bitmap images, so we have to check that the image is a bitmap image. Test: compositing/images/direct-pdf-image.html * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::isDirectlyCompositedImage): 2010-09-20 Simon Fraser Reviewed by Darin Adler. Crash when div with content set to image gets composited (Vimeo). https://bugs.webkit.org/show_bug.cgi?id=46140 When CSS specifies that the content of an element is an image, we make a RenderImage, and setStyle() before setting the image resource. In this case the compositing code can attempt to access the cached image, which would crash with a null deref. Fix by null-checking m_imageResource. Test: compositing/images/content-image.html * rendering/RenderImage.h: (WebCore::RenderImage::cachedImage): 2010-09-20 Mihai Parparita Reviewed by Dimitri Glazkov. Hashchange event is no longer a simple event, needs to be its own interface https://bugs.webkit.org/show_bug.cgi?id=36335 Add HashChangeEvent.idl and supporting files/changes. Test: fast/loader/hashchange-event-properties.html The original version of this patch was written by Steven Lai . * CMakeLists.txt: * DerivedSources.cpp: * DerivedSources.make: * GNUmakefile.am: * WebCore.gypi: * WebCore.pri: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * bindings/js/JSEventCustom.cpp: (WebCore::toJS): * bindings/v8/custom/V8EventCustom.cpp: (WebCore::toV8): * dom/Document.cpp: (WebCore::Document::enqueueHashchangeEvent): * dom/Event.cpp: (WebCore::Event::isHashChangeEvent): * dom/Event.h: * dom/HashChangeEvent.h: Added. (WebCore::HashChangeEvent::isHashChangeEvent): (WebCore::HashChangeEvent::create): (WebCore::HashChangeEvent::initHashChangeEvent): (WebCore::HashChangeEvent::oldURL): (WebCore::HashChangeEvent::newURL): (WebCore::HashChangeEvent::HashChangeEvent): * dom/HashChangeEvent.idl: Added. * page/DOMWindow.idl: 2010-09-20 Andy Estes Reviewed by Adam Barth. REGRESSION (HTML5 Parser): Pages broken due to parsing changes https://bugs.webkit.org/show_bug.cgi?id=40961 Add an optional quirk to the HTML5 tokenizer that reverts it to WebKit's legacy behavior when the start of a new token is encountered before the current token is finished parsing. The legacy behavior is to emit the current token as if it were properly closed and being parsing the new token. Test: fast/parser/pre-html5-parser-quirks.html * html/parser/HTMLDocumentParser.cpp: (WebCore::HTMLDocumentParser::HTMLDocumentParser): Instantiate m_tokenizer with the value of Settings::usePreHTML5ParserQuirks(). (WebCore::usePreHTMLParserQuirks): Add a helper function to return the value of Settings::usePreHTML5ParserQuirks() if Settings is non-NULL. * html/parser/HTMLPreloadScanner.cpp: (WebCore::HTMLPreloadScanner::HTMLPreloadScanner): Instantiate m_tokenizer with the value of Settings::usePreHTML5ParserQuirks(). * html/parser/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::HTMLTokenizer): (WebCore::HTMLTokenizer::nextToken): If the quirk is enabled and an unexpected '<' is encountered in certain states, emit the current token and reprocess the '<' as the start of a new token. * html/parser/HTMLTokenizer.h: (WebCore::HTMLTokenizer::create): * html/parser/HTMLViewSourceParser.cpp: (WebCore::HTMLViewSourceParser::HTMLViewSourceParser): Instantiate m_tokenizer with the value of Settings::usePreHTML5ParserQuirks(). * page/Settings.cpp: (WebCore::Settings::Settings): * page/Settings.h: (WebCore::Settings::setUsePreHTML5ParserQuirks): (WebCore::Settings::usePreHTML5ParserQuirks): 2010-09-20 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46132, add an isVerticalBlockFlow() method to RenderStyle and patch callers so that they don't have to check both top-to-bottom and bottom-to-top block flow. * rendering/RenderBox.cpp: (WebCore::RenderBox::availableLogicalWidth): * rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::logicalWidth): (WebCore::RenderStyle::logicalHeight): (WebCore::RenderStyle::logicalMinWidth): (WebCore::RenderStyle::logicalMaxWidth): (WebCore::RenderStyle::logicalMinHeight): (WebCore::RenderStyle::logicalMaxHeight): (WebCore::RenderStyle::borderStartWidth): (WebCore::RenderStyle::borderEndWidth): (WebCore::RenderStyle::marginStart): (WebCore::RenderStyle::marginEnd): (WebCore::RenderStyle::paddingStart): (WebCore::RenderStyle::paddingEnd): * rendering/style/RenderStyle.h: (WebCore::InheritedFlags::isVerticalBlockFlow): 2010-09-20 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46124, add support for logical padding accessors to RenderBoxModelObject. Added fast/blockflow/percentage-padding.html even though it fails, so that when more of layout is patched we can see it start passing. * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::paddingTop): (WebCore::RenderBoxModelObject::paddingBottom): (WebCore::RenderBoxModelObject::paddingLeft): (WebCore::RenderBoxModelObject::paddingRight): (WebCore::RenderBoxModelObject::paddingBefore): (WebCore::RenderBoxModelObject::paddingAfter): (WebCore::RenderBoxModelObject::paddingStart): (WebCore::RenderBoxModelObject::paddingEnd): * rendering/RenderBoxModelObject.h: 2010-09-20 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46126, add availableLogicalWidth() to RenderBox. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::availableWidth): (WebCore::RenderBlock::availableLogicalWidth): * rendering/RenderBlock.h: * rendering/RenderBox.cpp: (WebCore::RenderBox::availableLogicalWidth): * rendering/RenderBox.h: (WebCore::RenderBox::availableWidth): 2010-09-20 Kenneth Russell Reviewed by James Robinson. [chromium] Change compositor to use GraphicsContext3D rather than GLES2Context https://bugs.webkit.org/show_bug.cgi?id=45912 Switched Chromium's compositor to use GraphicsContext3D to issue its OpenGL rendering calls rather than the Chromium-specific GLES2Context and command buffer OpenGL implementation. The in-process software rendering path for GraphicsContext3D does not yet work with the compositor, at least not on Mac OS X. This will be worked on in subsequent bugs. Tested manually with 3D CSS, WebGL and video content on Mac OS X and Linux. No new tests. * platform/graphics/chromium/Canvas2DLayerChromium.cpp: (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium): (WebCore::Canvas2DLayerChromium::updateContents): * platform/graphics/chromium/CanvasLayerChromium.cpp: (WebCore::CanvasLayerChromium::SharedValues::SharedValues): (WebCore::CanvasLayerChromium::SharedValues::~SharedValues): (WebCore::CanvasLayerChromium::draw): * platform/graphics/chromium/CanvasLayerChromium.h: * platform/graphics/chromium/ContentLayerChromium.cpp: (WebCore::ContentLayerChromium::SharedValues::SharedValues): (WebCore::ContentLayerChromium::SharedValues::~SharedValues): (WebCore::ContentLayerChromium::~ContentLayerChromium): (WebCore::ContentLayerChromium::updateTextureRect): (WebCore::ContentLayerChromium::draw): * platform/graphics/chromium/ContentLayerChromium.h: * platform/graphics/chromium/DrawingBufferChromium.cpp: (WebCore::DrawingBuffer::publishToPlatformLayer): * platform/graphics/chromium/LayerChromium.cpp: (WebCore::loadShader): (WebCore::LayerChromium::SharedValues::SharedValues): (WebCore::LayerChromium::SharedValues::~SharedValues): (WebCore::LayerChromium::createShaderProgram): (WebCore::LayerChromium::layerRendererContext): (WebCore::LayerChromium::drawTexturedQuad): (WebCore::LayerChromium::drawDebugBorder): (WebCore::LayerChromium::drawAsMask): (WebCore::LayerChromium::prepareForDraw): * platform/graphics/chromium/LayerChromium.h: (WebCore::LayerChromium::SharedValues::context): * platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::LayerRendererChromium::create): (WebCore::LayerRendererChromium::LayerRendererChromium): (WebCore::LayerRendererChromium::context): (WebCore::LayerRendererChromium::debugGLCall): (WebCore::LayerRendererChromium::useShader): (WebCore::LayerRendererChromium::prepareToDrawLayers): (WebCore::LayerRendererChromium::updateRootLayerTextureRect): (WebCore::LayerRendererChromium::drawLayers): (WebCore::LayerRendererChromium::finish): (WebCore::LayerRendererChromium::present): (WebCore::LayerRendererChromium::getFramebufferPixels): (WebCore::LayerRendererChromium::createLayerTexture): (WebCore::LayerRendererChromium::drawLayerIntoStencilBuffer): (WebCore::LayerRendererChromium::drawLayersRecursive): (WebCore::LayerRendererChromium::drawLayer): (WebCore::LayerRendererChromium::scissorToRect): (WebCore::LayerRendererChromium::makeContextCurrent): (WebCore::LayerRendererChromium::resizeOnscreenContent): (WebCore::LayerRendererChromium::initializeSharedObjects): (WebCore::LayerRendererChromium::cleanupSharedObjects): * platform/graphics/chromium/LayerRendererChromium.h: * platform/graphics/chromium/VideoLayerChromium.cpp: (WebCore::VideoLayerChromium::createTextureRect): (WebCore::VideoLayerChromium::updateTextureRect): * platform/graphics/chromium/WebGLLayerChromium.cpp: (WebCore::WebGLLayerChromium::updateContents): * platform/graphics/gpu/SharedGraphicsContext3D.cpp: (WebCore::SharedGraphicsContext3D::flush): (WebCore::SharedGraphicsContext3D::supportsCopyTextureToParentTextureCHROMIUM): (WebCore::SharedGraphicsContext3D::copyTextureToParentTextureCHROMIUM): * platform/graphics/gpu/SharedGraphicsContext3D.h: 2010-09-20 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46119, add logical accessors to RenderStyle. Not used by any RenderObjects yet, so no tests until then. * rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::logicalWidth): (WebCore::RenderStyle::logicalHeight): (WebCore::RenderStyle::logicalMinWidth): (WebCore::RenderStyle::logicalMaxWidth): (WebCore::RenderStyle::logicalMinHeight): (WebCore::RenderStyle::logicalMaxHeight): (WebCore::RenderStyle::borderBeforeWidth): (WebCore::RenderStyle::borderAfterWidth): (WebCore::RenderStyle::borderStartWidth): (WebCore::RenderStyle::borderEndWidth): (WebCore::RenderStyle::marginBefore): (WebCore::RenderStyle::marginAfter): (WebCore::RenderStyle::marginStart): (WebCore::RenderStyle::marginEnd): (WebCore::RenderStyle::paddingBefore): (WebCore::RenderStyle::paddingAfter): (WebCore::RenderStyle::paddingStart): (WebCore::RenderStyle::paddingEnd): * rendering/style/RenderStyle.h: 2010-09-20 David Hyatt Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=46116, implement block-flow-aware logical properties. This patch adds all the logical properties from the CSS3 Writing Mode draft for margins, padding, border, width and height. Added fast/css/logical-property-resolution.html * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): * css/CSSProperty.cpp: (WebCore::resolveToPhysicalProperty): (WebCore::CSSProperty::resolveDirectionAwareProperty): * css/CSSProperty.h: * css/CSSPropertyNames.in: * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyDeclarations): (WebCore::CSSStyleSelector::applyProperty): 2010-09-20 David Hyatt Reviewed by Beth Dakin. https://bugs.webkit.org/show_bug.cgi?id=46114, two tables repaint tests failing on bots. Patch layoutRows to apply the layout delta when setting a new cell location prior to laying out the cell. The layout delta is then removed after layout has happened when the repaint check is done. This change makes cell layout match block child layout, and now the cells have the correct new location up front when laying out (a necessity for pagination). * rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::layoutRows): 2010-09-20 Jacob Dinu Reviewed by Adam Barth. When loading a cached page, dispatchDidCommitLoad is called after FrameLoader::open so that all initialzations are done before calling client dispatchDidCommitLoad to avoid client from accessing incorrect data. https://bugs.webkit.org/show_bug.cgi?id=41155 * loader/FrameLoader.cpp: (WebCore::FrameLoader::commitProvisionalLoad): (WebCore::FrameLoader::transitionToCommitted): 2010-09-20 Simon Fraser Reviewed by Adam Roben. REGRESSION: alternating animation direction doesn't work on Windows https://bugs.webkit.org/show_bug.cgi?id=46017 Animation-direction on Windows was broken because bitfields on Windows are signed. Fixed by making m_direction an unsigned in the bitfield, and casting in the accessor. Test: animations/animation-direction.html * platform/animation/Animation.h: (WebCore::Animation::direction): 2010-09-20 Enrica Casucci Reviewed by Sam Weinig. Pasteboard doesn't work in WebKit2. https://bugs.webkit.org/show_bug.cgi?id=42317 * loader/EmptyClients.h: (WebCore::EmptyEditorClient::documentFragmentFromAttributedString): Changed parameter to be a Vector of RefPtr. * page/EditorClient.h: * platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::documentFragmentWithRtf): Stylistic changes. 2010-09-20 Yong Li Reviewed by Alexey Proskuryakov. https://bugs.webkit.org/show_bug.cgi?id=39966 Make compareBorders() a consistent compare function which can beused by qsort(). New test case added: LayoutTests/tables/sort-collapsed-border-styles.html * rendering/RenderTableCell.cpp: (WebCore::compareBorders): (WebCore::chooseBorder): (WebCore::RenderTableCell::collapsedLeftBorder): (WebCore::RenderTableCell::collapsedRightBorder): (WebCore::RenderTableCell::collapsedTopBorder): (WebCore::RenderTableCell::collapsedBottomBorder): (WebCore::compareBorderStylesForQSort): 2010-09-20 Patrick Gansterer Reviewed by Adam Roben. [WINCE] Buildfix for PluginViewWin.cpp https://bugs.webkit.org/show_bug.cgi?id=46033 * plugins/win/PluginViewWin.cpp: (WebCore::PluginView::paintIntoTransformedContext): (WebCore::PluginView::snapshot): 2010-09-18 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46030, aintitcool.com doesn't paginate correctly when printed. This happens because the site always has a document width that will exceed the page width. We incorrectly apply a double scale instead of clipping after the first scale still doesn't fit. The fix for the issue is to cap the right layout overflow to the page width and to just clip out any additional excess. This is the code in FrameView.cpp. This patch also cleans up table cell invalidation to reduce the # of relayouts. This change is not a correctness fix. It's just performance. I'm not sure how to write a test for this, since the double scale is an artifact of how WebKit mac calls back in when really printing. * page/FrameView.cpp: (WebCore::FrameView::forceLayoutForPagination): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlockChild): (WebCore::RenderBlock::layoutPositionedObjects): (WebCore::RenderBlock::positionNewFloats): * rendering/RenderBlock.h: (WebCore::RenderBlock::markForPaginationRelayout): * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutHorizontalBox): (WebCore::RenderFlexibleBox::layoutVerticalBox): * rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::layoutRows): 2010-09-20 Ilya Tikhonovsky Reviewed by Pavel Feldman. Web Inspector: merge Inspector client runtime events into the serialized inspector state object. Drive-by rename getBackendSettings -> getInspectorState to better reflect the nature of the data. https://bugs.webkit.org/show_bug.cgi?id=45974 * inspector/Inspector.idl: * inspector/InspectorClient.h: (WebCore::InspectorClient::updateInspectorStateCookie): * inspector/InspectorController.cpp: (WebCore::InspectorController::saveApplicationSettings): (WebCore::InspectorController::getInspectorState): (WebCore::InspectorController::updateInspectorStateCookie): (WebCore::InspectorController::restoreInspectorStateFromCookie): (WebCore::InspectorController::getSettings): (WebCore::InspectorController::setMonitoringXHREnabled): (WebCore::InspectorController::restoreDebugger): (WebCore::InspectorController::restoreProfiler): (WebCore::InspectorController::setResourceTrackingEnabled): (WebCore::InspectorController::ensureSettingsLoaded): (WebCore::InspectorController::startTimelineProfiler): (WebCore::InspectorController::stopTimelineProfiler): (WebCore::InspectorController::enableProfiler): (WebCore::InspectorController::disableProfiler): (WebCore::InspectorController::enableDebuggerFromFrontend): (WebCore::InspectorController::disableDebugger): * inspector/InspectorController.h: * inspector/front-end/ConsoleView.js: (WebInspector.ConsoleView.prototype._handleContextMenuEvent): * inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype._toggleResourceTracking): * inspector/front-end/Settings.js: (WebInspector.Settings.initialize): * inspector/front-end/inspector.js: (WebInspector.doLoadedDone.populateInspectorState): (WebInspector.doLoadedDone): 2010-09-20 Dirk Schulze Reviewed by Nikolas Zimmermann. SVG Filter cleanup https://bugs.webkit.org/show_bug.cgi?id=45612 All effect inputs are stored in a Vector in FilterEffect instead of passing them via constructors to every effect type. This simplifies the primitive subregion logic and centralizes it in determineFilterPrimitiveSubregion. Just SourceGraphic, SourceAlpha and FETile still calculate filter primitive subregions on their own. Working on it in a followup patch. The subregions code is SVG specific and moving this calculation to FilterEffect is an intermediate step before moving it to RenderSVGResourceFilterPrimitive in a following patch. The new FilterEffectVector will also make it possible to add code to determine the smallest used region of an effect and will help save memory and resources in the future. subRegion got renamed to filterPrimitiveSubregion to match the name scheme. scaledSubRegion got renamed to repaintRectInLocalCoordinates since this is its proper meaning. Removed unnecessary member variables and functions from FilterEffect. No new tests added since the functionality didn't change. * platform/graphics/cairo/GraphicsContextCairo.cpp: scaledSubRegion was renamed to repaintRectInLocalCoordinates. (WebCore::GraphicsContext::createShadowMask): * platform/graphics/filters/FEBlend.cpp: Removed Filter effect inputs from constructor. (WebCore::FEBlend::FEBlend): (WebCore::FEBlend::create): (WebCore::FEBlend::apply): Call inputFilterEffects to get input filter primitives. (WebCore::FEBlend::externalRepresentation): Call inputFilterEffects to get input filter primitives. * platform/graphics/filters/FEBlend.h: * platform/graphics/filters/FEColorMatrix.cpp: Ditto. (WebCore::FEColorMatrix::FEColorMatrix): (WebCore::FEColorMatrix::create): (WebCore::FEColorMatrix::apply): (WebCore::FEColorMatrix::externalRepresentation): * platform/graphics/filters/FEColorMatrix.h: * platform/graphics/filters/FEComponentTransfer.cpp: Ditto. (WebCore::FEComponentTransfer::FEComponentTransfer): (WebCore::FEComponentTransfer::create): (WebCore::FEComponentTransfer::apply): (WebCore::FEComponentTransfer::externalRepresentation): * platform/graphics/filters/FEComponentTransfer.h: * platform/graphics/filters/FEComposite.cpp: Ditto. (WebCore::FEComposite::FEComposite): (WebCore::FEComposite::create): (WebCore::FEComposite::apply): (WebCore::FEComposite::externalRepresentation): * platform/graphics/filters/FEComposite.h: * platform/graphics/filters/FEGaussianBlur.cpp: Ditto. (WebCore::FEGaussianBlur::FEGaussianBlur): (WebCore::FEGaussianBlur::create): (WebCore::FEGaussianBlur::apply): (WebCore::FEGaussianBlur::externalRepresentation): * platform/graphics/filters/FEGaussianBlur.h: * platform/graphics/filters/Filter.h: (WebCore::Filter::determineFilterPrimitiveSubregion): Renamed from calculateEffectSubRegion to match name scheme. * platform/graphics/filters/FilterEffect.cpp: (WebCore::FilterEffect::FilterEffect): (WebCore::FilterEffect::determineFilterPrimitiveSubregion): The main place for subregion calculation. (WebCore::FilterEffect::calculateDrawingIntRect): Takes repaintRectInLocalCoordinates now. (WebCore::FilterEffect::calculateDrawingRect): ditto. (WebCore::FilterEffect::getEffectContext): Check if ImageBuffer was created. * platform/graphics/filters/FilterEffect.h: Changed names to match name scheme. Removed unnecessary member variables and functions. Seperate SVG specific member variables and functions. Will get removed in followup patches. (WebCore::FilterEffect::resultImage): (WebCore::FilterEffect::setEffectBuffer): (WebCore::FilterEffect::inputEffect): (WebCore::FilterEffect::inputEffects): (WebCore::FilterEffect::numberOfinputEffects): (WebCore::FilterEffect::isAlphaImage): (WebCore::FilterEffect::setIsAlphaImage): (WebCore::FilterEffect::repaintRectInLocalCoordinates): (WebCore::FilterEffect::setRepaintRectInLocalCoordinates): (WebCore::FilterEffect::isSourceInput): (WebCore::FilterEffect::hasX): (WebCore::FilterEffect::setHasX): (WebCore::FilterEffect::hasY): (WebCore::FilterEffect::setHasY): (WebCore::FilterEffect::hasWidth): (WebCore::FilterEffect::setHasWidth): (WebCore::FilterEffect::hasHeight): (WebCore::FilterEffect::setHasHeight): (WebCore::FilterEffect::filterPrimitiveSubregion): (WebCore::FilterEffect::setFilterPrimitiveSubregion): (WebCore::FilterEffect::effectBoundaries): (WebCore::FilterEffect::setEffectBoundaries): * platform/graphics/filters/SourceAlpha.cpp: (WebCore::SourceAlpha::determineFilterPrimitiveSubregion): Renamed to match name scheme. * platform/graphics/filters/SourceAlpha.h: (WebCore::SourceAlpha::isSourceInput): * platform/graphics/filters/SourceGraphic.cpp: (WebCore::SourceGraphic::determineFilterPrimitiveSubregion): Ditto. * platform/graphics/filters/SourceGraphic.h: (WebCore::SourceGraphic::isSourceInput): * rendering/RenderSVGResourceFilter.cpp: Adapt to renames in FilterEffect. (WebCore::RenderSVGResourceFilter::applyResource): (WebCore::RenderSVGResourceFilter::postApplyResource): * svg/SVGFEBlendElement.cpp: Constructor of FEBlend doesn't take input effects. Adding them afterwards. (WebCore::SVGFEBlendElement::build): * svg/SVGFEColorMatrixElement.cpp: Ditto. (WebCore::SVGFEColorMatrixElement::build): * svg/SVGFEComponentTransferElement.cpp: Ditto. (WebCore::SVGFEComponentTransferElement::build): * svg/SVGFECompositeElement.cpp: Ditto. (WebCore::SVGFECompositeElement::build): * svg/SVGFEConvolveMatrixElement.cpp: Ditto. (WebCore::SVGFEConvolveMatrixElement::build): * svg/SVGFEDiffuseLightingElement.cpp: Ditto. (WebCore::SVGFEDiffuseLightingElement::build): * svg/SVGFEDisplacementMapElement.cpp: Ditto. (WebCore::SVGFEDisplacementMapElement::build): * svg/SVGFEGaussianBlurElement.cpp: Ditto. (WebCore::SVGFEGaussianBlurElement::build): * svg/SVGFEMergeElement.cpp: Ditto. (WebCore::SVGFEMergeElement::build): * svg/SVGFEMorphologyElement.cpp: Ditto. (WebCore::SVGFEMorphologyElement::build): * svg/SVGFEOffsetElement.cpp: Ditto. (WebCore::SVGFEOffsetElement::build): * svg/SVGFESpecularLightingElement.cpp: Ditto. (WebCore::SVGFESpecularLightingElement::build): * svg/SVGFETileElement.cpp: Ditto. (WebCore::SVGFETileElement::build): * svg/graphics/filters/SVGFEConvolveMatrix.cpp: Ditto. (WebCore::FEConvolveMatrix::FEConvolveMatrix): (WebCore::FEConvolveMatrix::create): (WebCore::FEConvolveMatrix::apply): (WebCore::FEConvolveMatrix::externalRepresentation): * svg/graphics/filters/SVGFEConvolveMatrix.h: * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Ditto. (WebCore::FEDiffuseLighting::FEDiffuseLighting): (WebCore::FEDiffuseLighting::create): (WebCore::FEDiffuseLighting::externalRepresentation): * svg/graphics/filters/SVGFEDiffuseLighting.h: * svg/graphics/filters/SVGFEDisplacementMap.cpp: Ditto. (WebCore::FEDisplacementMap::FEDisplacementMap): (WebCore::FEDisplacementMap::create): (WebCore::FEDisplacementMap::apply): (WebCore::FEDisplacementMap::externalRepresentation): * svg/graphics/filters/SVGFEDisplacementMap.h: * svg/graphics/filters/SVGFEFlood.cpp: Ditto. (WebCore::FEFlood::apply): * svg/graphics/filters/SVGFEImage.cpp: Ditto. (WebCore::FEImage::apply): * svg/graphics/filters/SVGFELighting.cpp: Ditto. (WebCore::FELighting::FELighting): (WebCore::FELighting::apply): * svg/graphics/filters/SVGFELighting.h: * svg/graphics/filters/SVGFEMerge.cpp: Ditto. (WebCore::FEMerge::FEMerge): (WebCore::FEMerge::create): (WebCore::FEMerge::apply): (WebCore::FEMerge::externalRepresentation): * svg/graphics/filters/SVGFEMerge.h: * svg/graphics/filters/SVGFEMorphology.cpp: Ditto. (WebCore::FEMorphology::FEMorphology): (WebCore::FEMorphology::create): (WebCore::FEMorphology::apply): (WebCore::FEMorphology::externalRepresentation): * svg/graphics/filters/SVGFEMorphology.h: * svg/graphics/filters/SVGFEOffset.cpp: Ditto. (WebCore::FEOffset::FEOffset): (WebCore::FEOffset::create): (WebCore::FEOffset::apply): (WebCore::FEOffset::externalRepresentation): * svg/graphics/filters/SVGFEOffset.h: * svg/graphics/filters/SVGFESpecularLighting.cpp: Ditto. (WebCore::FESpecularLighting::FESpecularLighting): (WebCore::FESpecularLighting::create): (WebCore::FESpecularLighting::externalRepresentation): * svg/graphics/filters/SVGFESpecularLighting.h: * svg/graphics/filters/SVGFETile.cpp: Ditto. (WebCore::FETile::FETile): (WebCore::FETile::create): (WebCore::FETile::determineFilterPrimitiveSubregion): Renamed to match name scheme. (WebCore::FETile::apply): (WebCore::FETile::externalRepresentation): * svg/graphics/filters/SVGFETile.h: * svg/graphics/filters/SVGFilter.cpp: Renamed itemBox to targetBoundingBox to match name scheme. (WebCore::SVGFilter::SVGFilter): (WebCore::SVGFilter::determineFilterPrimitiveSubregion): Renamed to match name scheme. (WebCore::SVGFilter::create): * svg/graphics/filters/SVGFilter.h: (WebCore::SVGFilter::sourceImageRect): 2010-09-20 Pavel Podivilov Reviewed by Pavel Feldman. Web Inspector: highlight DOM node when hover on link element or DOM breakpoint https://bugs.webkit.org/show_bug.cgi?id=45897 * inspector/front-end/BreakpointsSidebarPane.js: (WebInspector.BreakpointItem): (WebInspector.JSBreakpointItem): (WebInspector.DOMBreakpointItem): (WebInspector.DOMBreakpointItem.prototype.compareTo): (WebInspector.DOMBreakpointItem.prototype._breakpointClicked): * inspector/front-end/ElementsPanel.js: (WebInspector.ElementsPanel.prototype.hide): (WebInspector.ElementsPanel.prototype.reset): (WebInspector.ElementsPanel.prototype.setDocument.selectNode): (WebInspector.ElementsPanel.prototype._mouseMovedInCrumbs): (WebInspector.ElementsPanel.prototype._mouseMovedOutOfCrumbs): (WebInspector.ElementsPanel.prototype.linkifyNodeReference): * inspector/front-end/ElementsTreeOutline.js: (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode): (WebInspector.ElementsTreeOutline.prototype._onmousemove): (WebInspector.ElementsTreeOutline.prototype._onmouseout): * inspector/front-end/inspector.js: (WebInspector.highlightDOMNode): (WebInspector.highlightDOMNodeForTwoSeconds): (WebInspector.wireElementWithDOMNode): (WebInspector._updateFocusedNode): (WebInspector.reset): (WebInspector.updateFocusedNode): 2010-09-19 Sheriff Bot Unreviewed, rolling out r67749. http://trac.webkit.org/changeset/67749 https://bugs.webkit.org/show_bug.cgi?id=46068 breaking ToT chromium canary build (Requested by shans on #webkit). * bindings/v8/V8DOMWindowShell.cpp: (WebCore::V8DOMWindowShell::createNewContext): * bindings/v8/V8Proxy.cpp: (WebCore::V8Proxy::registeredExtensionWithV8): (WebCore::V8Proxy::registerExtension): * bindings/v8/V8Proxy.h: * loader/EmptyClients.h: * loader/FrameLoaderClient.h: 2010-09-19 Gavin Barraclough Reviewed by Oliver Hunt. Bug 46065 - Unify implementation of ToInt32 and ToUInt32, don't use fmod. These methods implement the same conversion (see discussion in the notes of sections of 9.5 and 9.6 of the spec), only differing in how the result is interpretted. Removing JSValue::toInt32 (since this has weird, non-spec function). A couple of places in the binding are using this method, so adding finiteInt32Value to the bindings to maintain current behaviour. Test: fast/js/toInt32UInt32.html * bindings/js/JSDOMBinding.h: (WebCore::finiteInt32Value): * bindings/js/JSHTMLOptionsCollectionCustom.cpp: (WebCore::JSHTMLOptionsCollection::add): * bindings/js/JSSQLResultSetRowListCustom.cpp: (WebCore::JSSQLResultSetRowList::item): * bindings/js/JSSVGPODListCustom.h: (WebCore::JSSVGPODListCustom::getItem): (WebCore::JSSVGPODListCustom::insertItemBefore): (WebCore::JSSVGPODListCustom::replaceItem): (WebCore::JSSVGPODListCustom::removeItem): * bindings/js/JSSVGPathSegListCustom.cpp: (WebCore::JSSVGPathSegList::getItem): (WebCore::JSSVGPathSegList::insertItemBefore): (WebCore::JSSVGPathSegList::replaceItem): (WebCore::JSSVGPathSegList::removeItem): 2010-09-19 Andreas Kling Reviewed by Kenneth Rohde Christiansen. [Qt] clipBoundingRect() should return rect relevant to current layer https://bugs.webkit.org/show_bug.cgi?id=46059 r65791 inadvertently changed clipBoundingRect() to always use the GC painter without checking the TransparencyLayer stack first. * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContextPlatformPrivate::p): (WebCore::GraphicsContextPlatformPrivate::clipBoundingRect): 2010-09-19 Sam Weinig Reviewed by Anders Carlsson. Replace WKBundleRangeRef with WKBundleRangeHandleRef. https://bugs.webkit.org/show_bug.cgi?id=46054 * WebCore.exp.in: * WebCore.xcodeproj/project.pbxproj: 2010-09-19 Patrick Gansterer Unreviewed. [WINCE] Buildfix for Gradient after r67801. * platform/graphics/Gradient.h: * platform/graphics/wince/GradientWinCE.cpp: (WebCore::Gradient::getStops): 2010-09-19 Kent Tamura Reviewed by Dimitri Glazkov. [Chromium] Add is() functions to WebInputElement https://bugs.webkit.org/show_bug.cgi?id=46035 * html/HTMLInputElement.h: (WebCore::HTMLInputElement::isText): Added. It is used by WebKit/chromium. 2010-09-18 Andreas Kling Reviewed by Antonio Gomes. [Qt] Path: Remove unused member variable https://bugs.webkit.org/show_bug.cgi?id=46048 Path::m_lastMoveToIndex is not used for anything, so remove it. * platform/graphics/Path.h: * platform/graphics/qt/PathQt.cpp: (WebCore::Path::Path): (WebCore::Path::operator=): (WebCore::Path::moveTo): 2010-09-18 Patrick Gansterer Reviewed by Darin Adler. Use AtomicString insted of String in XMLDocumentParser https://bugs.webkit.org/show_bug.cgi?id=45990 Create AtomicString as early as possible. This can avoid unnecessary memcpy of String content. * dom/XMLDocumentParser.h: * dom/XMLDocumentParserLibxml2.cpp: (WebCore::toAtomicString): (WebCore::handleElementNamespaces): (WebCore::handleElementAttributes): (WebCore::XMLDocumentParser::startElementNs): 2010-09-18 Erik Arvidsson Reviewed by Nate Chapin. [Chromium] fast/dom/dataset-gc.html is failing https://bugs.webkit.org/show_bug.cgi?id=45426 * bindings/scripts/CodeGeneratorV8.pm: * bindings/v8/custom/V8DOMStringMapCustom.cpp: (WebCore::toV8): * dom/DOMStringMap.h: * dom/DatasetDOMStringMap.h: (WebCore::DatasetDOMStringMap::element): 2010-09-18 Andreas Kling Reviewed by Oliver Hunt. Gradient: Fast-path for the ideal case in sortStopsIfNecessary() https://bugs.webkit.org/show_bug.cgi?id=46045 Avoid calling std::stable_sort for 2-stop gradients that are already in order. * platform/graphics/Gradient.cpp: (WebCore::Gradient::sortStopsIfNecessary): 2010-09-18 Kwang Yul Seo Reviewed by Andreas Kling. [BREWMP] Fix a typo in key code name https://bugs.webkit.org/show_bug.cgi?id=46003 AVK_CLR is the right Brew MP key code name for VK_BACK. * platform/brew/PlatformKeyboardEventBrew.cpp: (WebCore::windowsKeyCodeForKeyEvent): 2010-09-18 Andreas Kling Reviewed by Oliver Hunt. Gradient: Pre-reserve space for 2 color stops https://bugs.webkit.org/show_bug.cgi?id=46044 Most gradients have only 2 color stops, pre-reserve space for these in m_stops to avoid growing the vector dynamically in the common case. * platform/graphics/Gradient.h: 2010-09-18 Dimitri Glazkov Unreviewed, rolling out r67792. http://trac.webkit.org/changeset/67792 https://bugs.webkit.org/show_bug.cgi?id=45976 Broke over a hundred SVG tests. * platform/graphics/GraphicsContext.cpp: (WebCore::GraphicsContext::drawImage): (WebCore::GraphicsContext::drawImageBuffer): * platform/graphics/GraphicsContext.h: 2010-09-18 Mihai Parparita Reviewed by Simon Fraser. webkitAnimationEnd event doesn't fire when skipping over final iteration https://bugs.webkit.org/show_bug.cgi?id=46010 It's possible for AnimationBase::fireAnimationEventsIfNeeded to decide that the animation is ended while we're in the looping state, if the animation timer never fires during an iteration. That then fails the assert in AnimationBase::updateStateMachine (we don't expect AnimationStateInputEndTimerFired while in the looping state). Jump the state to AnimationStateEnding, which is more accurate. Test: animations/animation-end-event-short-iterations.html * page/animation/AnimationBase.cpp: (WebCore::AnimationBase::fireAnimationEventsIfNeeded): 2010-09-18 Kwang Yul Seo Reviewed by Andreas Kling. [BREWMP] Wrong key code type in keyIdentifierForBrewKeyCode https://bugs.webkit.org/show_bug.cgi?id=46005 The type of key code in Brew MP is uint16. Take uint16 instead of int16 in keyIdentifierForBrewKeyCode. * platform/brew/PlatformKeyboardEventBrew.cpp: (WebCore::keyIdentifierForBrewKeyCode): 2010-09-18 Matthew Delaney Reviewed by Oliver Hunt. Canvas drawImage with source or destination widths/heights of -1 renders incorrectly. https://bugs.webkit.org/show_bug.cgi?id=45976 Specifying a -1 width or height for either the source or destination rectangle in drawImage get improperly drawn with -1 replaced as the corresponding image width or height. This was because the value -1 was being passed around to signal non-specified widths and heights and thus was interpreted lower down in the drawImage implementation which disallowed any calls that actually wanted to use -1 as the widths or heights. Fixed this by moving the default logic up and not using -1 in-band signaling to denote default behavior. Tests: canvas/philip/tests/2d.drawImage.negativeOneDest.html canvas/philip/tests/2d.drawImage.negativeOneSource.html * platform/graphics/GraphicsContext.cpp: Removed -1 in-band signals and replaced cascased calls to have the desired replaces for unspecified widths and heights earlier on. * platform/graphics/GraphicsContext.h: Removed faulty default value. 2010-09-18 Ademar de Souza Reis Jr Reviewed by Kenneth Rohde Christiansen. Enable Platform Strategies on Qt [Qt] Turn on PLATFORM_STRATEGIES https://bugs.webkit.org/show_bug.cgi?id=45831 * WebCore.pro: Adding/removing implementation files * platform/qt/Language.cpp: Added, WebCore::defaultLanguage() was moved from platform/qt/Localizations.cpp (WebCore::defaultLanguage): Moved from Localizations.cpp * platform/qt/Localizations.cpp: Removed (code is now inside WebCoreSupport/WebPlatformStrategies.cpp) * plugins/qt/PluginDataQt.cpp: Removed (idem) 2010-09-18 Patrick Gansterer Reviewed by Darin Adler. Rename Wince files to WinCE https://bugs.webkit.org/show_bug.cgi?id=37287 * loader/icon/wince/IconDatabaseWinCE.cpp: Copied from WebCore/loader/icon/wince/IconDatabaseWince.cpp. * loader/icon/wince/IconDatabaseWince.cpp: Removed. * page/wince/FrameWinCE.cpp: Copied from WebCore/page/wince/FrameWince.cpp. * page/wince/FrameWince.cpp: Removed. * platform/graphics/MediaPlayer.cpp: * platform/graphics/wince/ColorWinCE.cpp: Copied from WebCore/platform/graphics/wince/ColorWince.cpp. * platform/graphics/wince/ColorWince.cpp: Removed. * platform/graphics/wince/FontCacheWinCE.cpp: Copied from WebCore/platform/graphics/wince/FontCacheWince.cpp. * platform/graphics/wince/FontCacheWince.cpp: Removed. * platform/graphics/wince/FontWinCE.cpp: Copied from WebCore/platform/graphics/wince/FontWince.cpp. * platform/graphics/wince/FontWince.cpp: Removed. * platform/graphics/wince/GlyphPageTreeNodeWinCE.cpp: Copied from WebCore/platform/graphics/wince/GlyphPageTreeNodeWince.cpp. * platform/graphics/wince/GlyphPageTreeNodeWince.cpp: Removed. * platform/graphics/wince/GradientWinCE.cpp: Copied from WebCore/platform/graphics/wince/GradientWince.cpp. * platform/graphics/wince/GradientWince.cpp: Removed. * platform/graphics/wince/GraphicsContextWinCE.cpp: Copied from WebCore/platform/graphics/wince/GraphicsContextWince.cpp. * platform/graphics/wince/GraphicsContextWince.cpp: Removed. * platform/graphics/wince/ImageBufferWinCE.cpp: Copied from WebCore/platform/graphics/wince/ImageBufferWince.cpp. * platform/graphics/wince/ImageBufferWince.cpp: Removed. * platform/graphics/wince/MediaPlayerPrivateWinCE.h: Copied from WebCore/platform/graphics/wince/MediaPlayerPrivateWince.h. * platform/graphics/wince/MediaPlayerPrivateWince.h: Removed. * platform/graphics/wince/PathWinCE.cpp: Copied from WebCore/platform/graphics/wince/PathWince.cpp. * platform/graphics/wince/PathWince.cpp: Removed. * platform/graphics/wince/PlatformPathWinCE.cpp: Copied from WebCore/platform/graphics/wince/PlatformPathWince.cpp. * platform/graphics/wince/PlatformPathWinCE.h: Copied from WebCore/platform/graphics/wince/PlatformPathWince.h. * platform/graphics/wince/PlatformPathWince.cpp: Removed. * platform/graphics/wince/PlatformPathWince.h: Removed. * platform/graphics/wince/SimpleFontDataWinCE.cpp: Copied from WebCore/platform/graphics/wince/SimpleFontDataWince.cpp. * platform/graphics/wince/SimpleFontDataWince.cpp: Removed. * platform/graphics/wince/WinCEGraphicsExtras.h: Copied from WebCore/platform/graphics/wince/WinceGraphicsExtras.h. * platform/graphics/wince/WinceGraphicsExtras.h: Removed. * platform/text/wince/TextBoundariesWinCE.cpp: Copied from WebCore/platform/text/wince/TextBoundariesWince.cpp. * platform/text/wince/TextBoundariesWince.cpp: Removed. * platform/text/wince/TextBreakIteratorWinCE.cpp: Copied from WebCore/platform/text/wince/TextBreakIteratorWince.cpp. * platform/text/wince/TextBreakIteratorWince.cpp: Removed. * platform/wince/CursorWinCE.cpp: Copied from WebCore/platform/wince/CursorWince.cpp. * platform/wince/CursorWince.cpp: Removed. * platform/wince/DragDataWinCE.cpp: Copied from WebCore/platform/wince/DragDataWince.cpp. * platform/wince/DragDataWince.cpp: Removed. * platform/wince/DragImageWinCE.cpp: Copied from WebCore/platform/wince/DragImageWince.cpp. * platform/wince/DragImageWince.cpp: Removed. * platform/wince/EditorWinCE.cpp: Copied from WebCore/platform/wince/EditorWince.cpp. (WebCore::Editor::newGeneralClipboard): * platform/wince/EditorWince.cpp: Removed. * platform/wince/FileChooserWinCE.cpp: Copied from WebCore/platform/wince/FileChooserWince.cpp. * platform/wince/FileChooserWince.cpp: Removed. * platform/wince/FileSystemWinCE.cpp: Copied from WebCore/platform/wince/FileSystemWince.cpp. * platform/wince/FileSystemWince.cpp: Removed. * platform/wince/KURLWinCE.cpp: Copied from WebCore/platform/wince/KURLWince.cpp. * platform/wince/KURLWince.cpp: Removed. * platform/wince/KeygenWinCE.cpp: Copied from WebCore/platform/wince/KeygenWince.cpp. * platform/wince/KeygenWince.cpp: Removed. * platform/wince/MIMETypeRegistryWinCE.cpp: Copied from WebCore/platform/wince/MIMETypeRegistryWince.cpp. * platform/wince/MIMETypeRegistryWince.cpp: Removed. * platform/wince/PasteboardWinCE.cpp: Copied from WebCore/platform/wince/PasteboardWince.cpp. * platform/wince/PasteboardWince.cpp: Removed. * platform/wince/SearchPopupMenuWinCE.cpp: Copied from WebCore/platform/wince/SearchPopupMenuWince.cpp. * platform/wince/SearchPopupMenuWince.cpp: Removed. * platform/wince/SharedTimerWinCE.cpp: Copied from WebCore/platform/wince/SharedTimerWince.cpp. * platform/wince/SharedTimerWince.cpp: Removed. * rendering/RenderThemeWinCE.cpp: Copied from WebCore/rendering/RenderThemeWince.cpp. (WebCore::RenderThemeWinCE::create): (WebCore::RenderTheme::themeForPage): (WebCore::RenderThemeWinCE::RenderThemeWinCE): (WebCore::RenderThemeWinCE::~RenderThemeWinCE): (WebCore::RenderThemeWinCE::platformActiveSelectionBackgroundColor): (WebCore::RenderThemeWinCE::platformInactiveSelectionBackgroundColor): (WebCore::RenderThemeWinCE::platformActiveSelectionForegroundColor): (WebCore::RenderThemeWinCE::platformInactiveSelectionForegroundColor): (WebCore::RenderThemeWinCE::supportsFocus): (WebCore::RenderThemeWinCE::supportsFocusRing): (WebCore::RenderThemeWinCE::determineClassicState): (WebCore::RenderThemeWinCE::getThemeData): (WebCore::RenderThemeWinCE::paintButton): (WebCore::RenderThemeWinCE::setCheckboxSize): (WebCore::RenderThemeWinCE::paintTextField): (WebCore::RenderThemeWinCE::adjustMenuListStyle): (WebCore::RenderThemeWinCE::paintMenuList): (WebCore::RenderThemeWinCE::paintMenuListButton): (WebCore::RenderThemeWinCE::systemFont): (WebCore::RenderThemeWinCE::themeChanged): (WebCore::RenderThemeWinCE::extraDefaultStyleSheet): (WebCore::RenderThemeWinCE::extraQuirksStyleSheet): (WebCore::RenderThemeWinCE::supportsHover): (WebCore::RenderThemeWinCE::systemColor): (WebCore::RenderThemeWinCE::adjustSliderThumbSize): (WebCore::RenderThemeWinCE::adjustButtonInnerStyle): (WebCore::RenderThemeWinCE::adjustSearchFieldStyle): (WebCore::RenderThemeWinCE::paintSearchField): (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton): (WebCore::RenderThemeWinCE::adjustSearchFieldCancelButtonStyle): (WebCore::RenderThemeWinCE::adjustSearchFieldDecorationStyle): (WebCore::RenderThemeWinCE::adjustSearchFieldResultsDecorationStyle): (WebCore::RenderThemeWinCE::paintSearchFieldResultsDecoration): (WebCore::RenderThemeWinCE::adjustSearchFieldResultsButtonStyle): (WebCore::RenderThemeWinCE::paintSearchFieldResultsButton): (WebCore::RenderThemeWinCE::adjustMenuListButtonStyle): (WebCore::RenderThemeWinCE::paintSliderTrack): (WebCore::RenderThemeWinCE::paintSliderThumb): (WebCore::RenderThemeWinCE::paintMediaFullscreenButton): (WebCore::RenderThemeWinCE::paintMediaMuteButton): (WebCore::RenderThemeWinCE::paintMediaPlayButton): (WebCore::RenderThemeWinCE::paintMediaSeekBackButton): (WebCore::RenderThemeWinCE::paintMediaSeekForwardButton): (WebCore::RenderThemeWinCE::paintMediaSliderTrack): (WebCore::RenderThemeWinCE::paintMediaSliderThumb): * rendering/RenderThemeWinCE.h: Copied from WebCore/rendering/RenderThemeWince.h. * rendering/RenderThemeWince.cpp: Removed. * rendering/RenderThemeWince.h: Removed. * storage/wince/DatabaseThreadWinCE.cpp: Copied from WebCore/storage/wince/DatabaseThreadWince.cpp. * storage/wince/DatabaseThreadWinCE.h: Copied from WebCore/storage/wince/DatabaseThreadWince.h. * storage/wince/DatabaseThreadWince.cpp: Removed. * storage/wince/DatabaseThreadWince.h: Removed. * storage/wince/LocalStorageThreadWinCE.cpp: Copied from WebCore/storage/wince/LocalStorageThreadWince.cpp. * storage/wince/LocalStorageThreadWinCE.h: Copied from WebCore/storage/wince/LocalStorageThreadWince.h. * storage/wince/LocalStorageThreadWince.cpp: Removed. * storage/wince/LocalStorageThreadWince.h: Removed. 2010-09-18 Patrick Gansterer Reviewed by Eric Seidel. Move Plugin*None.cpp from CMakeLists.txt into CMakeListsEfl.txt https://bugs.webkit.org/show_bug.cgi?id=45900 PluginDataNone.cpp and PluginViewNone.cpp are not used by all port. Move them into plaform sepcific build system. * CMakeLists.txt: * CMakeListsEfl.txt: 2010-09-18 Andreas Kling Reviewed by Simon Hausmann. [Qt] Don't copy clip path to TransparencyLayer https://bugs.webkit.org/show_bug.cgi?id=45965 We don't need to copy the GC's clip path to the TransparencyLayer since it will clip anyway when ending the layer. * platform/graphics/qt/TransparencyLayer.h: (WebCore::TransparencyLayer::TransparencyLayer): 2010-09-18 Patrick Gansterer Unreviewed. [WINCE] Buildfix for FrameWince.cpp after r51353, r67762 and r67771. * page/wince/FrameWince.cpp: (WebCore::computePageRectsForFrame): (WebCore::imageFromSelection): 2010-09-18 Kent Tamura Unreviewed, a trivial change. Run sort-Xcode-project-file. * WebCore.xcodeproj/project.pbxproj: 2010-09-18 Dan Bernstein Reviewed by Eric Seidel. REGRESSION (r67762): Over 160 layout tests failing due to incorrect zoom factors in subframes https://bugs.webkit.org/show_bug.cgi?id=46031 * page/Frame.cpp: (WebCore::parentPageZoomFactor): Return the zoom factor of the parent frame. (WebCore::parentTextZoomFactor): Ditto. 2010-09-17 Sam Weinig Reviewed by Jon Honeycutt. Need a way to load data (as plain text) in a WKPage * WebCore.exp.in: 2010-09-17 David Hyatt Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=46027, image on gamespot.com paginates without bringing its enclosing border along. Make sure that unsplittable objects like replaced elements propagate their pagination strut outward to the parent block when appropriate. An image on a line did this, but a block-level image did not. Added fast/multicol/image-inside-nested-blocks-with-border.html * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlockChild): 2010-09-17 Dimitri Glazkov Unreviewed, build fix. Move calls from frameView->pageZoomFactor() to frame->pageZoomFactor(). * page/EventHandler.cpp: (WebCore::EventHandler::handleTouchEvent): Removed a helper function, added direct calls to frame->pageZoomFactor(). 2010-09-17 David Hyatt Reviewed by Simon Fraser. https://bugs.webkit.org/show_bug.cgi?id=45993, convert printing to the new pagination model. Make printing store the page height in the RenderView and push that into the layout state to use the new pagination model. The old pagination model is retained because it is still used for embedded WebViews. * page/FrameView.cpp: (WebCore::FrameView::reset): (WebCore::FrameView::layout): (WebCore::FrameView::forceLayout): (WebCore::FrameView::forceLayoutForPagination): (WebCore::FrameView::adjustPageHeight): * page/FrameView.h: * page/PrintContext.cpp: (WebCore::PrintContext::computePageRectsWithPageSizeInternal): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintChildren): * rendering/RenderBox.cpp: (WebCore::RenderBox::calcHeight): * rendering/RenderImage.cpp: (WebCore::RenderImage::paintReplaced): * rendering/RenderLineBoxList.cpp: (WebCore::RenderLineBoxList::paint): * rendering/RenderVideo.cpp: (WebCore::RenderVideo::paintReplaced): * rendering/RenderView.cpp: (WebCore::RenderView::RenderView): (WebCore::RenderView::layout): (WebCore::RenderView::paint): (WebCore::RenderView::setBestTruncatedAt): * rendering/RenderView.h: (WebCore::RenderView::popLayoutState): (WebCore::RenderView::pageHeight): (WebCore::RenderView::setPageHeight): (WebCore::RenderView::bestTruncatedAt): (WebCore::RenderView::truncatedAt): (WebCore::RenderView::setTruncatedAt): (WebCore::RenderView::printRect): (WebCore::RenderView::setPrintRect): (WebCore::RenderView::pushLayoutState): (WebCore::LayoutStateMaintainer::LayoutStateMaintainer): (WebCore::LayoutStateMaintainer::push): (WebCore::LayoutStateMaintainer::pop): 2010-09-17 Dan Bernstein Reviewed by Simon Fraser. Canvas sizing ignores intrinsic size https://bugs.webkit.org/show_bug.cgi?id=46024 Updated fast/replaced/table-percent-height.html * rendering/RenderEmbeddedObject.cpp: (WebCore::RenderEmbeddedObject::RenderEmbeddedObject): If this is used as a proxy for