diff options
Diffstat (limited to 'WebCore/ChangeLog')
-rw-r--r-- | WebCore/ChangeLog | 6935 |
1 files changed, 6935 insertions, 0 deletions
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog index 1f755a4..c660e9d 100644 --- a/WebCore/ChangeLog +++ b/WebCore/ChangeLog @@ -1,3 +1,6938 @@ +2010-09-29 Philippe Normand <pnormand@igalia.com> + + 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 <jprvita@profusion.mobi> + + 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 <yurys@chromium.org> + + 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 <satish@chromium.org> + + 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 <morrita@google.com> + + [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 <pfeldman@chromium.org> + + 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 <loislo@chromium.org> + + 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 <pnormand@igalia.com> + + 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 <tkent@chromium.org> + + Unreviewed, windows build fix for r68629. + + * WebCore.vcproj/WebCore.vcproj: Add TimeInputType.{cpp,h} + +2010-09-28 Johnny Ding <jnd@chromium.org> + + 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 <tkent@chromium.org> + + 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 <hyatt@apple.com> + + 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 <hyatt@apple.com> + + 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 <kevino@theolliviers.com> + + [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 <xji@chromium.org> + + 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 <maruel@chromium.org> + + 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 <jpu@apple.com> + + Reviewed by Dan Bernstein. + + Delete and forward delete shouldn't start autocorrection panel timer. + https://bugs.webkit.org/show_bug.cgi?id=46679 + <rdar://problem/8463917> + + * 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 <mihaip@chromium.org> + + 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 <hyatt@apple.com> + + Reviewed by Sam Weinig. + + Fix typo in previous checkin. + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::MarginInfo::MarginInfo): + +2010-09-28 Nat Duca <nduca@chromium.org> + + 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 <jennb@chromium.org> + + 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 <wjmaclean@chromium.org> + + 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 <jamesr@chromium.org> + + [chromium] Decrease warning level on chromium linux temporarily. This is causing failures on some bots + + * WebCore.gyp/WebCore.gyp: + +2010-09-27 James Robinson <jamesr@chromium.org> + + 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 <senorblanco@chromium.org> + + Reviewed by Csaba Osztrogonác. + + Fix for r68521 to build on VS2008/Release. + + * html/DocTypeStrings.gperf: + Don't emit "#include <string.h>" here, since we're inside a namespace. + * make-hash-tools.pl: + Emit #include <string.h> manually where required. + * platform/ColorData.gperf: + Don't emit "#include <string.h>" here, since we're inside a namespace. + +2010-09-28 David Hyatt <hyatt@apple.com> + + 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 <mrobinson@igalia.com> + + 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 <sam@webkit.org> + + Reviewed by Darin Adler and Dave Hyatt. + + Vertical scroll bar on apple.com is too short with WebKit2 + <rdar://problem/8379230> + 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 <hyatt@apple.com> + + 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 <mitz@apple.com> + + Reviewed by Darin Adler. + + Improved the handling of soft hyphens in Copy and Find operations, addressing the following + bugs: + + <rdar://problem/7938878> 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 + + <rdar://problem/5640505> 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 <mrobinson@igalia.com> + + More GTK+ build fixes after r68521. + + * GNUmakefile.am: Added proper dependency tracking for some + new autogenerated files. + +2010-09-28 Andreas Kling <andreas.kling@nokia.com> + + 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 <jpu@apple.com> + + Reviewed by Dan Bernstein. + + Autocorrection panel is shown at incorrect location when WebView is scrolled. + https://bugs.webkit.org/show_bug.cgi?id=46531 + <rdar://problem/8455376> + + * 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 <andreip@google.com> + + 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 <cfleizach@apple.com> + + 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 <crogers@google.com> + + 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 <crogers@google.com> + + 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 <crogers@google.com> + + 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 <crogers@google.com> + + 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ø <tor.arne.vestbo@nokia.com> + + 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 <abecsi@webkit.org> + + [Gtk] Build fix. Remove leftover trailing backslash. + + * GNUmakefile.am: + +2010-09-28 Andras Becsi <abecsi@webkit.org> + + Unreviewed. + + [Gtk] Build fix after r68521 + + No new tests needed. + + * GNUmakefile.am: + +2010-09-28 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> + + 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 <abecsi@webkit.org> + + 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 <leandro@profusion.mobi> + + 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 <andreas.kling@nokia.com> + + 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 <benjamin.poulain@nokia.com> + + 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 <tkent@chromium.org> + + Unreviewed, run sort-Xcode-project-file + + * WebCore.xcodeproj/project.pbxproj: + +2010-09-28 Huahui Wu <mediadependent@gmail.com> + + 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 <tkent@chromium.org> + + 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 <inferno@chromium.org> + + 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 <ericu@chromium.org> + + 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 <crogers@google.com> + + 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 <hclam@chromium.org> + + 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 <agomes@rim.com> + + 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<NodeList> nodesFromRect(int x, int y, unsigned horizontalPadding, unsigned verticalPadding, bool ignoreClipping) + to + - RefPtf<NodeList> 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 <crogers@google.com> + + 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 <rniwa@webkit.org> + + 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 <hclam@chromium.org> + + 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 <kbr@google.com> + + 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 <cfleizach@apple.com> + + 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 <enne@google.com> + + 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 <darin@apple.com> + + 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 <vrk@google.com> + + 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 <pkasting@google.com> + + 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 <jamesr@chromium.org> + + 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 <vangelis@chromium.org> + + 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 <arv@chromium.org> + + 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 <kbr@google.com> + + 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 <crogers@google.com> + + 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 <hyatt@apple.com> + + 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 <zmo@google.com> + + 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 <hyatt@apple.com> + + 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 <hyatt@apple.com> + + 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 <zmo@google.com> + + 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 <rniwa@webkit.org> + + 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 <hyatt@apple.com> + + 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 <hyatt@apple.com> + + 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 <msanchez@igalia.com> + + 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 <webkit.review.bot@gmail.com> + + 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 <kinuko@google.com> + + 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 <inferno@chromium.org> + + 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 <mrobinson@igalia.com> + + 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 <pnormand@igalia.com> + + 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 <senorblanco@chromium.org> + + 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 <zmo@google.com> + + 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 <zmo@google.com> + + 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 <zmo@google.com> + + 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 <yurys@chromium.org> + + 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 <podivilov@chromium.org> + + 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 <pfeldman@chromium.org> + + 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 <ragner.magalhaes@openbossa.org> + + 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 <girish@forwardbias.in> + + 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 <loislo@chromium.org> + + 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 <apavlov@chromium.org> + + 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 <zherczeg@webkit.org> + + 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 <key,value> 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 <andreas.kling@nokia.com> + + 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 <ismail@namtrac.org> + + Reviewed by Andreas Kling. + + Add PluginView::setJavaScriptPaused(bool) stub for WinCE. + + * platform/qt/TemporaryLinkStubsQt.cpp: + (PluginView::setJavaScriptPaused): + +2010-09-27 Gyuyoung Kim <gyuyoung.kim@samsung.com> + + 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 <paroga@webkit.org> + + 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 <paroga@webkit.org> + + 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 <hyatt@apple.com> + + 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 <agomes@rim.comg> + + 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 <abarth@webkit.org> + + 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 <webkit.review.bot@gmail.com> + + 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 <agomes@rim.com> + + 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 <reni@inf.u-szeged.hu> + + 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 <andreas.kling@nokia.com> + + 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 <skyul@company100.net> + + 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 <robert@webkit.org> + + 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 <inferno@chromium.org> + + 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 <rniwa@webkit.org> + + 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 <mitz@apple.com> + + Reviewed by John Sullivan. + + <rdar://problem/8478160> 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 <mitz@apple.com> + + Reviewed by John Sullivan. + + <rdar://problem/8478182> 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 <andreas.kling@nokia.com> + + 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 <http://www.carto.net/svg/samples/animated_bustrack.shtml> + + 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 <sam@webkit.org> + + 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 <simon.fraser@apple.com> + + 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 <andreas.kling@nokia.com> + + 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 <http://themaninblue.com/experiment/AnimationBenchmark/svg/> + + * svg/SVGParserUtilities.cpp: + (WebCore::genericParseNumber): Only call pow() when we have an exponent. + +2010-09-24 Martin Robinson <mrobinson@igalia.com> + + 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 <phajdan.jr@chromium.org> + + 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 <andreas.kling@nokia.com> + + 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 <http://data.xeoh.net/svg.benchmark/> + + Test: svg/custom/invalid-length-units.html + + * svg/SVGLength.cpp: + (WebCore::stringToLengthType): + (WebCore::SVGLength::setValueAsString): + +2010-09-24 Luiz Agostini <luiz.agostini@openbossa.org> + 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 <hyatt@apple.com> + + 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 <hyatt@apple.com> + + 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 <inferno@chromium.org> + + 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 <hyatt@apple.com> + + 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 <jianli@chromium.org> + + 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 <hyatt@apple.com> + + 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 <caseq@chromium.org> + + 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 <hans@chromium.org> + + 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 <loislo@chromium.org> + + 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 <andreip@google.com> + + 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 <hans@chromium.org> + + 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 <romain@kdab.com> + + Reviewed by Simon Hausmann. + + [Qt] Fix the Wince build. + + * WebCore.pro: Apply msvc flags to wince, too. + +2010-09-24 Anders Bakken <agbakken@gmail.com> + + 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 <yael.aharon@nokia.com> + + 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 <jpu@apple.com> + + 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 + <rdar://problem/8335576> + + 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 <ericu@chromium.org> + + 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 <webkit.review.bot@gmail.com> + + 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 <chris.guillory@google.com> + + 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 <hyatt@apple.com> + + 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 <hyatt@apple.com> + + 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 <hans@chromium.org> + + 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 <simon.fraser@apple.com> + + 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 <hyatt@apple.com> + + 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 <kinuko@chromium.org> + + 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 <mdelaney@apple.com> + + 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 <hyatt@apple.com> + + 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 <atwilson@chromium.org> + + 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 <hyatt@apple.com> + + 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 <jeffschiller@google.com> + + 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 <hans@chromium.org> + + 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 <paroga@webkit.org> + + 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 <ap@apple.com> + + 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 <paroga@webkit.org> + + 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 <paroga@webkit.org> + + 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 <hyatt@apple.com> + + 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 <mdelaney@apple.com> + + 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 <hyatt@apple.com> + + 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 <paroga@webkit.org> + + 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 <paroga@webkit.org> + + 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 <paroga@webkit.org> + + 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 <eric.carlson@apple.com> + + 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 <ericu@chromium.org> + + 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 <hyatt@apple.com> + + 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 <mdelaney@apple.com> + + 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 <reni@inf.u-szeged.hu> + + 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 <paroga@webkit.org> + + 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 <japhet@chromium.org> + + Reviewed by Darin Fisher. + + Implement <a ping> (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 <vandebo@chromium.org> + + 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 <lucas.demarchi@profusion.mobi> + + 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 <crogers@google.com> + + 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 <jorlow@chromium.org> + + 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 <inferno@chromium.org> + + 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 <hyatt@apple.com> + + 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 <podivilov@chromium.org> + + 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 <msanchez@igalia.com> + + 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 <bradm@apple.com> + + 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 <paroga@webkit.org> + + 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 <luiz.agostini@openbossa.org> + + 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 <mrobinson@igalia.com> + + 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 <paroga@webkit.org> + + 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 <andreip@google.com> + + 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 <podivilov@chromium.org> + + 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 <andreip@google.com> + + 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 <andreip@google.com> + + 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 <paroga@webkit.org> + + 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 <darin@apple.com> + + 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 <macpherson@chromium.org> + + 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 <skyul@company100.net> + + 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 <aestes@apple.com> + + 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 <aestes@apple.com> + + 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 <aestes@apple.com> + + Reviewed by Adam Barth. + + REGRESSION (r61285): <script /> parses differently in HTML5 + https://bugs.webkit.org/show_bug.cgi?id=42909 + + If pre-HTML5 parser quirks are enabled, the HTMLTreeBuilder should + handle self-closing script tags like the old parser did. Specifically, + "<script />" should be treated as "<script></script>". + + * 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 <mihaip@chromium.org> + + 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 <chromium@hybridsource.org> + + 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 <antognolli@profusion.mobi> + + 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 <cfleizach@apple.com> + + 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 <kinuko@chromium.org> + + 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 <jpu@apple.com> + + Reviewed by Dan Bernstein. + + Need to stop autocorrection panel timer when selection changes. + https://bugs.webkit.org/show_bug.cgi?id=46201 + <rdar://problem/8441042> + + * 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 <ericu@chromium.org> + + 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 <ap@apple.com> + + Reviewed by Adam Barth. + + https://bugs.webkit.org/show_bug.cgi?id=46222 + <rdar://problem/8461701> 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 <hyatt@apple.com> + + 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 <hyatt@apple.com> + + 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 <msanchez@igalia.com> + + 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 <hyatt@apple.com> + + 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 <luiz.agostini@openbossa.org> + + 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 <bfulgham@webkit.org> + + Unreviewed. + + Build fix for invalid assertion after r68059. + + * editing/ApplyStyleCommand.cpp: + (WebCore::getPropertiesNotIn): Correct assertion target after + name change. + +2010-09-22 David Hyatt <hyatt@apple.com> + + 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 <bfulgham@webkit.org> + + 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 <arv@chromium.org> + + 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 <inferno@chromium.org> + + 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 <mpcomplete@chromium.org> + + 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 <rniwa@webkit.org> + + 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 <jamey.hicks@nokia.com> + + 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 <darin@apple.com> + + 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 <mrobinson@igalia.com> + + 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 <podivilov@chromium.org> + + 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 <kbr@google.com> + + 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 <lucas.demarchi@profusion.mobi> + + Unreviewed, EFL build fix. + + * CMakeListsEfl.txt: + * platform/efl/ClipboardEfl.cpp: + (WebCore::ClipboardEfl::ClipboardEfl): + +2010-09-22 İsmail Dönmez <ismail@namtrac.org> + + 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 <mrobinson@igalia.com> + + 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 <kb@inf.u-szeged.hu> + + 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 <pfeldman@chromium.org> + + 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 <ragner.magalhaes@openbossa.org> + + 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 <paroga@webkit.org> + + 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 <chris.guillory@google.com> + + 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 <crogers@google.com> + + 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 <alex@igalia.com> + + 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 <skyul@company100.net> + + 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 <crogers@google.com> + + 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 <tkent@chromium.org> + + Reviewed by Chris Fleizach. + + Support keyboard operations for <input type=range>. + 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 <msanchez@igalia.com> + + 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 <krit@webkit.org> + + 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 <paroga@webkit.org> + + 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 <skyul@company100.net> + + 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 <skyul@company100.net> + + 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:/~<clsid> to use the WebKit module directory as home. + + * platform/brew/FileSystemBrew.cpp: + (WebCore::homeDirectoryPath): + +2010-09-22 Kwang Yul Seo <skyul@company100.net> + + 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 <rniwa@webkit.org> + + 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 <rniwa@webkit.org> + + 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 <atwilson@chromium.org> + + 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 <ctruta@chromium.org> + + 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 <kbr@google.com> + + 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 <ggaren@apple.com> + + 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 <psolanki@apple.com> + + 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 + <rdar://problem/8350901> + + 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 <mitz@apple.com> + + Reviewed by Darin Adler. + + <rdar://problem/7729077> 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 <robert@webkit.org> + + Rubber-stamped by Ariya Hidayat. + + [Qt] Build fix against qt trunk + + * platform/graphics/qt/ContextShadow.cpp: + (WebCore::ContextShadow::beginShadowLayer): + +2010-09-21 Tony Chang <tony@chromium.org> + + Unreviewed, QT build fix. + + * platform/qt/ClipboardQt.cpp: + (WebCore::ClipboardQt::ClipboardQt): + +2010-09-21 Andy Estes <aestes@apple.com> + + 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 <chris.guillory@google.com> + + 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 <alex@igalia.com> + + 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 <vangelis@chromium.org> + + 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 <dcheng@chromium.org> + + 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 <inferno@chromium.org> + + 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 <vangelis@chromium.org> + + 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 <hyatt@apple.com> + + 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 <hyatt@apple.com> + + 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 <mrobinson@igalia.com> + + 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 <hyatt@apple.com> + + 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 <paroga@webkit.org> + + 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 <jocelyn.turcotte@nokia.com> + + 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 <jochen@chromium.org> + + 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 <steveblock@google.com> + + 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 <jochen@chromium.org> + + 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 <krit@webkit.org> + + 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 <hyatt@apple.com> + + 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 <krit@webkit.org> + + 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 <pnormand@igalia.com> + + 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 <skyul@company100.net> + + 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 <webkit.review.bot@gmail.com> + + 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 <dbates@rim.com> + + 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 <skyul@company100.net> + + 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 <kinuko@chromium.org> + + 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 <thakis@chromium.org> + + 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 <vangelis@chromium.org> + + 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 <agomes@rim.com> + + 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 <vangelis@chromium.org> Reviewed by James Robinson. |