| 2012-10-03 Adam Klein <adamk@chromium.org> | |
| Remove bogus FIXME from Document.idl | |
| https://bugs.webkit.org/show_bug.cgi?id=98302 | |
| Reviewed by Adam Barth. | |
| The FIXME claimed that document.body throwing an exception was not | |
| specced, but in fact it is: | |
| http://www.whatwg.org/specs/web-apps/current-work/multipage/dom.html#dom-document-body | |
| * dom/Document.idl: | |
| 2012-10-03 Joshua Bell <jsbell@chromium.org> | |
| IndexedDB: Memory leak when deleting object stores with indexes | |
| https://bugs.webkit.org/show_bug.cgi?id=98292 | |
| Reviewed by Tony Chang. | |
| Reference cycles between IDBObjectStore and IDBIndex instances are explicitly | |
| broken when the transaction completes (and the spec allows traversal to fail). | |
| Deleted stores need to have the reference cycle broken too. | |
| Caught by running valgrind over: storage/indexeddb/keypath-basics.html | |
| * Modules/indexeddb/IDBTransaction.cpp: | |
| (WebCore::IDBTransaction::objectStoreDeleted): Add store to set. | |
| (WebCore::IDBTransaction::dispatchEvent): Notify stores in set. | |
| * Modules/indexeddb/IDBTransaction.h: Add set of deleted stores. | |
| 2012-10-03 Adam Barth <abarth@webkit.org> | |
| CSSNamespace.h is empty and should be deleted | |
| https://bugs.webkit.org/show_bug.cgi?id=98304 | |
| Reviewed by Eric Seidel. | |
| There's no reason to have this file in the repository. | |
| * GNUmakefile.list.am: | |
| * WebCore.gypi: | |
| * WebCore.vcproj/WebCore.vcproj: | |
| * WebCore.xcodeproj/project.pbxproj: | |
| * css/CSSNamespace.h: Removed. | |
| 2012-10-03 Arnaud Renevier <a.renevier@sisa.samsung.com> | |
| Build failure with css filters enabled and accelerated compositing disabled | |
| https://bugs.webkit.org/show_bug.cgi?id=95908 | |
| Reviewed by Tony Chang. | |
| Do not try to setBackingNeedsRepaint when building without accelerated | |
| compositing. | |
| Also, allow painting with filter (paintsWithFilters returns true if | |
| renderer has filter) when accelerated compositing is not enabled. | |
| No functional change, so no new tests. | |
| * rendering/RenderLayer.cpp: | |
| (WebCore::RenderLayer::styleChanged): | |
| 2012-10-03 Emil A Eklund <eae@chromium.org> | |
| Round image sizes when zooming | |
| https://bugs.webkit.org/show_bug.cgi?id=98205 | |
| Reviewed by Eric Seidel. | |
| We currently floor image sizes when zooming which can result in | |
| images being rendered at one pixel less than the actual size. | |
| This is especially likely to happen for very large images. | |
| Test: fast/sub-pixel/zoomed-image-tiles.html | |
| * loader/cache/CachedImage.cpp: | |
| (WebCore::CachedImage::imageSizeForRenderer): | |
| 2012-10-03 Hugo Parente Lima <hugo.lima@openbossa.org> | |
| [WK2] PageViewportController.cpp is supposed to be a generic WebKit2 file but only works with Qt port. | |
| https://bugs.webkit.org/show_bug.cgi?id=98186 | |
| Reviewed by Noam Rosenthal. | |
| Remove the implicit conversion from WebCore::FloatSize to QSize. | |
| * platform/graphics/FloatSize.h: | |
| (FloatSize): | |
| 2012-10-03 Levi Weintraub <leviw@chromium.org> | |
| [Sub-pixel layout] incorrect rendering when painting sub-layers as their own root | |
| https://bugs.webkit.org/show_bug.cgi?id=97484 | |
| Reviewed by Eric Seidel. | |
| When in compositing mode, layer painting can be triggered through the backing store. When this | |
| happens, a non-top-level RenderLayer is called to paint as its own root. Normally, we attempt to preserve | |
| the proper sub-pixel accumulation through layers to their children, but since we're not | |
| starting with the top-level layer, we haven't properly accumulated one, and convertToLayerCoords, | |
| another source of correctly getting the sub-pixel offset for a layer, also avoids crawling | |
| past the listed root layer. | |
| When painting a root layer, we're aligned to the surface we're painting to, so we round our | |
| offset to avoid moving objects around. | |
| * rendering/RenderLayer.cpp: | |
| (WebCore::RenderLayer::paintLayerContents): | |
| 2012-10-03 Jeff Timanus <twiz@chromium.org> | |
| [chromium] Expose settings value to conditionally enable pinch-zoom scaling in the Chromium compositor. The | |
| flag defaults to disabled, so this change should be a no-op for scaling/scrolling behaviour. | |
| https://bugs.webkit.org/show_bug.cgi?id=93292 | |
| Reviewed by James Robinson. | |
| Tests: Existing page-scale layout tests. | |
| * page/Frame.cpp: | |
| (WebCore::Frame::frameScaleFactor): | |
| * page/Settings.cpp: | |
| (WebCore::Settings::Settings): | |
| * page/Settings.h: | |
| (WebCore::Settings::setApplyPageScaleFactorInCompositor): | |
| (WebCore::Settings::applyPageScaleFactorInCompositor): | |
| (Settings): | |
| 2012-10-03 Stephen Chenney <schenney@chromium.org> | |
| Font data is purged while fonts are still using it | |
| https://bugs.webkit.org/show_bug.cgi?id=93640 | |
| Reviewed by Eric Seidel. | |
| Move the handling of custom font pruning from Document to FontFallbackList. | |
| The previous inplementation allowed fonts to be removed before all their | |
| clients were done. This change moves handling of custom font purging to the | |
| FontFallbackList class, which is the shared object that is only removed | |
| when all clients of a font are done with it. This fixes a crash in Angry | |
| Birds due to a seamless iframe and some failing tests in fast/frames/seamless. | |
| The specific element that causes problems is: | |
| <iframe id="ingame_frame0" name="ingame_frame0" frameborder="0" seamless="true" | |
| src="http://chrome.angrybirds.com/ingame_graphic.html" | |
| onload="this.style.opacity = 1; parent.adLoaded();" scrolling="no" | |
| style="opacity: 1; -webkit-transition: opacity 1s ease-in-out 0s; | |
| position: absolute; border: 0px; width: 312px; height: 320px; z-index: | |
| 300; overflow: hidden; visibility: visible;"></iframe> | |
| The source document uses the same font as the embedding document. | |
| Tests: fast/frames/seamless/seamless-custom-font-pruning-crash.html | |
| fast/frames/seamless/seamless-nested-crash.html | |
| * css/CSSFontFaceSource.cpp: | |
| (WebCore::CSSFontFaceSource::getFontData): Remove code to register the font with the document. | |
| * css/CSSSegmentedFontFace.cpp: | |
| (WebCore::CSSSegmentedFontFace::getFontData): Remove code to register the font with the document. | |
| * dom/Document.cpp: | |
| (WebCore::Document::~Document): Remove code that records and purges custom fonts. | |
| (WebCore): | |
| (WebCore::Document::reportMemoryUsage): Remove reference to non-existent objects. | |
| * dom/Document.h: | |
| (WebCore): | |
| (Document): Remove method declarations for custom font handling. | |
| * platform/graphics/FontFallbackList.h: | |
| (FontFallbackList): Moved some code around and made non-copyable. | |
| (WebCore::FontFallbackList::setGlyphPageZero): Moved. | |
| (WebCore::FontFallbackList::setGlyphPages): Moved. | |
| * platform/graphics/GlyphPageTreeNode.cpp: | |
| (WebCore::GlyphPageTreeNode::pruneFontData): Removed unnecessary null check. | |
| * platform/graphics/SegmentedFontData.cpp: | |
| (WebCore::SegmentedFontData::~SegmentedFontData): Added code to prune the Glyph pages when this is deleted. | |
| * platform/graphics/SimpleFontData.cpp: | |
| (WebCore::SimpleFontData::~SimpleFontData): Added code to prune the Glyph pages when this is deleted. | |
| 2012-10-03 Adam Barth <abarth@webkit.org> | |
| Crash when calling document.open during unload | |
| https://bugs.webkit.org/show_bug.cgi?id=98287 | |
| Reviewed by Nate Chapin. | |
| Calling document.open results in us nulling out m_documentLoader. This | |
| code doesn't properly handle that case and crashes. | |
| Test: fast/parser/document-open-in-unload.html | |
| * loader/FrameLoader.cpp: | |
| (WebCore::FrameLoader::commitProvisionalLoad): | |
| 2012-10-03 Benjamin Poulain <bpoulain@apple.com> | |
| Element::computeInheritedLanguage: evaluate the while() condition after fetching the string | |
| https://bugs.webkit.org/show_bug.cgi?id=98220 | |
| Reviewed by Andreas Kling. | |
| * dom/Element.cpp: | |
| (WebCore::Element::computeInheritedLanguage): | |
| The condition is never false on the first execution. Move the condition to the | |
| end of the loop for fun and profit. | |
| 2012-10-03 Hans Wennborg <hans@chromium.org> | |
| Speech JavaScript API: Add SpeechRecognition.interimResults attribute | |
| https://bugs.webkit.org/show_bug.cgi?id=98279 | |
| Reviewed by Adam Barth. | |
| Add the interimResults attribute and pass it to the embedder. It was | |
| added to the spec draft in | |
| http://dvcs.w3.org/hg/speech-api/rev/d25fea0d029c | |
| Tested in fast/speech/scripted/basics.html | |
| * Modules/speech/SpeechRecognition.cpp: | |
| (WebCore::SpeechRecognition::start): | |
| (WebCore::SpeechRecognition::SpeechRecognition): | |
| * Modules/speech/SpeechRecognition.h: | |
| (WebCore::SpeechRecognition::interimResults): | |
| (WebCore::SpeechRecognition::setInterimResults): | |
| * Modules/speech/SpeechRecognition.idl: | |
| * Modules/speech/SpeechRecognitionClient.h: | |
| (SpeechRecognitionClient): | |
| * Modules/speech/SpeechRecognitionController.h: | |
| (WebCore::SpeechRecognitionController::start): | |
| 2012-10-03 Hans Wennborg <hans@chromium.org> | |
| Speech JavaScript API: Remove resultdeleted event | |
| https://bugs.webkit.org/show_bug.cgi?id=98272 | |
| Reviewed by Adam Barth. | |
| Remove the resultdeleted event. This was never used, and was removed | |
| from the spec draft in | |
| http://dvcs.w3.org/hg/speech-api/rev/f9d53ab8b449 | |
| The fast/speech/scripted/basics.html test is updated to reflect this. | |
| * Modules/speech/SpeechRecognition.cpp: | |
| * Modules/speech/SpeechRecognition.h: | |
| (SpeechRecognition): | |
| * Modules/speech/SpeechRecognition.idl: | |
| * Modules/speech/SpeechRecognitionEvent.cpp: | |
| * Modules/speech/SpeechRecognitionEvent.h: | |
| (SpeechRecognitionEvent): | |
| * dom/EventNames.h: | |
| (WebCore): | |
| 2012-09-16 Mark Hahnenberg <mhahnenberg@apple.com> | |
| Delayed structure sweep can leak structures without bound | |
| https://bugs.webkit.org/show_bug.cgi?id=96546 | |
| Reviewed by Geoffrey Garen. | |
| This patch gets rid of the separate Structure allocator in the MarkedSpace and adds two new destructor-only | |
| allocators. We now have separate allocators for our three types of objects: those objects with no destructors, | |
| those objects with destructors and with immortal structures, and those objects with destructors that don't have | |
| immortal structures. All of the objects of the third type (destructors without immortal structures) now | |
| inherit from a new class named JSDestructibleObject (which in turn is a subclass of JSNonFinalObject), which stores | |
| the ClassInfo for these classes at a fixed offset for safe retrieval during sweeping/destruction. | |
| No new tests. | |
| * ForwardingHeaders/runtime/JSDestructableObject.h: Added. | |
| * bindings/js/JSDOMWrapper.h: Inherits from JSDestructibleObject. | |
| (JSDOMWrapper): | |
| (WebCore::JSDOMWrapper::JSDOMWrapper): | |
| * bindings/scripts/CodeGeneratorJS.pm: Add finalizers to anything that inherits from JSGlobalObject, | |
| e.g. JSDOMWindow and JSWorkerContexts. For those classes we also need to define needsDestruction as true. | |
| (GenerateHeader): | |
| * bridge/objc/objc_runtime.h: Inherit from JSDestructibleObject. | |
| (ObjcFallbackObjectImp): | |
| * bridge/objc/objc_runtime.mm: | |
| (Bindings): | |
| (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp): | |
| * bridge/runtime_array.cpp: Use a finalizer so that JSArray isn't forced to inherit from JSDestructibleObject. | |
| (JSC): | |
| (JSC::RuntimeArray::destroy): | |
| * bridge/runtime_array.h: | |
| (JSC::RuntimeArray::create): | |
| (JSC): | |
| * bridge/runtime_object.cpp: Inherit from JSDestructibleObject. | |
| (Bindings): | |
| (JSC::Bindings::RuntimeObject::RuntimeObject): | |
| * bridge/runtime_object.h: | |
| (RuntimeObject): | |
| 2012-10-02 Anders Carlsson <andersca@apple.com> | |
| Change most GraphicsLayer::create calls to use the version that takes a GraphicsLayerFactory | |
| https://bugs.webkit.org/show_bug.cgi?id=98217 | |
| Reviewed by Andreas Kling. | |
| * WebCore.exp.in: | |
| * rendering/RenderLayerBacking.cpp: | |
| (WebCore::RenderLayerBacking::createGraphicsLayer): | |
| * rendering/RenderLayerCompositor.cpp: | |
| (WebCore::RenderLayerCompositor::updateOverflowControlsLayers): | |
| (WebCore::RenderLayerCompositor::ensureRootLayer): | |
| 2012-10-03 Joshua Bell <jsbell@chromium.org> | |
| IndexedDB: Optimize encodeString/decodeString | |
| https://bugs.webkit.org/show_bug.cgi?id=97794 | |
| Reviewed by Tony Chang. | |
| Optimize string encoding/decoding, which showed up as a CPU hot spot during profiling. | |
| The backing store uses big-endian ordering of 16-bit code unit strings, so a memcopy | |
| isn't sufficient, but the code used StringBuilder::append() character-by-character | |
| and custom byte-swapping which was slow. | |
| Ran a test w/ DumpRenderTree (to avoid multiprocess overhead) taking a 10k character string | |
| and putting it 20k times and getting it 20k times. On my test box, mean time before the | |
| patch was 8.2s, mean time after the patch was 4.6s. | |
| Tested by Chromium's webkit_unit_tests --gtest_filter='IDBLevelDBCodingTest.*String*' | |
| * Modules/indexeddb/IDBLevelDBCoding.cpp: | |
| (WebCore::IDBLevelDBCoding::encodeString): | |
| (WebCore::IDBLevelDBCoding::decodeString): | |
| 2012-10-03 Keishi Hattori <keishi@webkit.org> | |
| Implement DataList UI for input type time on chromium | |
| https://bugs.webkit.org/show_bug.cgi?id=98240 | |
| Reviewed by Kent Tamura. | |
| This adds datalist UI for input type time. We add the picker indicator to | |
| BaseMultipleFieldsDateAndTimeInputType. We enclose the dateTimeEdit element | |
| and picker indicator inside a new div element so we can position the picker | |
| indicator in the same place as input type=date. | |
| Tests: platform/chromium/fast/forms/time/time-suggestion-picker-appearance-rtl.html | |
| platform/chromium/fast/forms/time/time-suggestion-picker-appearance-with-scroll-bar.html | |
| platform/chromium/fast/forms/time/time-suggestion-picker-appearance.html | |
| platform/chromium/fast/forms/time/time-suggestion-picker-key-operations.html | |
| platform/chromium/fast/forms/time/time-suggestion-picker-mouse-operations.html | |
| * css/html.css: | |
| (input::-webkit-date-and-time-container): | |
| * html/BaseMultipleFieldsDateAndTimeInputType.cpp: | |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::BaseMultipleFieldsDateAndTimeInputType): | |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::createShadowSubtree): Creates a picker indicator. | |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::handleKeydownEvent): Open the picker on Alt+Down. | |
| (WebCore): | |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::listAttributeTargetChanged): Updates picker visibility. | |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::updatePickerIndicatorVisibility): In the future, DateInputType can override | |
| this so the picker indicator is always visible. | |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::hidePickerIndicator): | |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::showPickerIndicator): | |
| * html/BaseMultipleFieldsDateAndTimeInputType.h: | |
| (WebCore): | |
| (BaseMultipleFieldsDateAndTimeInputType): | |
| * html/shadow/DateTimeFieldElement.cpp: | |
| (WebCore::DateTimeFieldElement::defaultKeyboardEventHandler): Ignore Alt+down because it should trigger the picker to open. | |
| * rendering/RenderThemeChromiumCommon.cpp: | |
| (WebCore::RenderThemeChromiumCommon::supportsDataListUI): Add time to the list. | |
| 2012-10-03 Andreas Kling <kling@webkit.org> | |
| Give CSSValueList backing vector an inline capacity. | |
| <http://webkit.org/b/98266> | |
| <rdar://problem/12421425> | |
| Reviewed by Anders Carlsson. | |
| Set an inline capacity of 4 on the CSSValue vector backing CSSValueList. This avoids an extra heap allocation | |
| in the common case, and reduces total memory use across the board, since the majority of CSSValueLists have | |
| at least 1 item, and the Vector will bump from 0 to 16 capacity on the first append. | |
| 394kB progression on Membuster3. | |
| * css/CSSValueList.h: | |
| (CSSValueList): | |
| 2012-10-03 Ilya Tikhonovsky <loislo@chromium.org> | |
| Web Inspector: NMI: instrument NativeImageSkia. | |
| https://bugs.webkit.org/show_bug.cgi?id=96277 | |
| Reviewed by Yury Semikhatsky. | |
| * platform/graphics/skia/NativeImageSkia.cpp: | |
| (WebCore::NativeImageSkia::reportMemoryUsage): | |
| (WebCore::reportMemoryUsage): | |
| 2012-10-03 Pavel Feldman <pfeldman@chromium.org> | |
| Web Inspector: remember the last dock option so that user could toggle between dock to bottom and right | |
| https://bugs.webkit.org/show_bug.cgi?id=98255 | |
| Reviewed by Vsevolod Vlasov. | |
| - Introduced DockController.js that covers the dock mechanics | |
| - Removed dock orientation from the settings | |
| - Storing the last dock option to present it as default | |
| - Simplified the multi-option status bar button | |
| * WebCore.gypi: | |
| * WebCore.vcproj/WebCore.vcproj: | |
| * inspector/compile-front-end.py: | |
| * inspector/front-end/DockController.js: Added. | |
| (WebInspector.DockController): | |
| (WebInspector.DockController.prototype.get element): | |
| (WebInspector.DockController.prototype.setDocked.set if): | |
| (WebInspector.DockController.prototype.setDocked): | |
| (WebInspector.DockController.prototype.setDockingUnavailable): | |
| (WebInspector.DockController.prototype._updateUI.get states): | |
| (WebInspector.DockController.prototype._updateUI): | |
| (WebInspector.DockController.prototype._decorateButtonForTargetState): | |
| (WebInspector.DockController.prototype._createDockOptions): | |
| (WebInspector.DockController.prototype._toggleDockState): | |
| (WebInspector.DockController.prototype.isCompactMode): | |
| (WebInspector.DockController.prototype.setCompactMode): | |
| * inspector/front-end/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.setAttachedWindow): | |
| * inspector/front-end/InspectorFrontendHostStub.js: | |
| (.WebInspector.InspectorFrontendHostStub.prototype.requestAttachWindow): | |
| (.WebInspector.InspectorFrontendHostStub.prototype.requestDetachWindow): | |
| * inspector/front-end/Settings.js: | |
| * inspector/front-end/SettingsScreen.js: | |
| (WebInspector.GenericSettingsTab): | |
| * inspector/front-end/StatusBarButton.js: | |
| (WebInspector.StatusBarButton): | |
| * inspector/front-end/Toolbar.js: | |
| (WebInspector.Toolbar): | |
| (WebInspector.Toolbar.prototype.setCompactMode): | |
| (WebInspector.Toolbar.prototype._toolbarDragStart): | |
| (WebInspector.Toolbar.prototype._toolbarDrag): | |
| * inspector/front-end/WebKit.qrc: | |
| * inspector/front-end/externs.js: | |
| (WebInspector.toggleSearchingForNode): | |
| * inspector/front-end/inspector.css: | |
| (body.undocked.platform-mac-snowleopard #toolbar): | |
| (body.undocked.platform-mac-snowleopard #toolbar-dropdown): | |
| * inspector/front-end/inspector.html: | |
| * inspector/front-end/inspector.js: | |
| (WebInspector._createGlobalStatusBarItems): | |
| (windowLoaded): | |
| (WebInspector.setDockingUnavailable): | |
| * inspector/front-end/inspectorCommon.css: | |
| (body.dock-to-right:not(.undocked)): | |
| (body.dock-to-right.inactive:not(.undocked)): | |
| 2012-10-03 Vsevolod Vlasov <vsevik@chromium.org> | |
| Web Inspector: UISourceCode commitWorkingCopy should not fail when original script had syntax error. | |
| https://bugs.webkit.org/show_bug.cgi?id=97272 | |
| Reviewed by Pavel Feldman. | |
| This patch is based on patch by John J. Barton. | |
| * inspector/front-end/JavaScriptSource.js: | |
| (WebInspector.JavaScriptSource.prototype.workingCopyCommitted): added rawLocation null check. | |
| 2012-10-03 Alexander Pavlov <apavlov@chromium.org> | |
| Web Inspector: After "Edit as HTML", any click outside box should stop editing | |
| https://bugs.webkit.org/show_bug.cgi?id=98258 | |
| Reviewed by Vsevolod Vlasov. | |
| Make the DOM tree OL span the entire height of its container in the Elements panel to catch mouse events. | |
| * inspector/front-end/elementsPanel.css: | |
| (#elements-content > ol): | |
| 2012-10-03 Dongwoo Joshua Im <dw.im@samsung.com> | |
| [EFL] Skeleton code of File system API. | |
| https://bugs.webkit.org/show_bug.cgi?id=91187 | |
| Reviewed by Gyuyoung Kim. | |
| Add skeleton code of File System API on EFL port. | |
| Implementation patches will be created later. | |
| No new tests because this is just skeleton code. | |
| * CMakeLists.txt: Add new files which created by other patches in Modules/filesystem/ directory. | |
| * PlatformEfl.cmake: Add AsyncFileSystemEfl.cpp. | |
| * platform/AsyncFileSystem.cpp: | |
| (WebCore): | |
| * platform/efl/AsyncFileSystemEfl.cpp: Added. | |
| * platform/efl/AsyncFileSystemEfl.h: Added. | |
| 2012-10-03 Andreas Kling <kling@webkit.org> | |
| Shrink ElementRareData by moving bool flags to NodeRareData. | |
| <http://webkit.org/b/98225> | |
| Reviewed by Antti Koivisto. | |
| Move all bool flags from ElementRareData to the bitfield in its base class NodeRareData. | |
| This shrinks ElementRareData by 8 bytes (on 64-bit) and saves a whopping 58kB on Membuster3. | |
| Also removed some double raredata hash lookups. | |
| * dom/Element.cpp: | |
| (WebCore::Element::detach): | |
| (WebCore::Element::recalcStyle): | |
| (WebCore::Element::ensureShadow): | |
| (WebCore::Element::setStyleAffectedByEmpty): | |
| (WebCore::Element::styleAffectedByEmpty): | |
| (WebCore::Element::setIsInCanvasSubtree): | |
| (WebCore::Element::isInCanvasSubtree): | |
| (WebCore::Element::containsFullScreenElement): | |
| (WebCore::Element::setContainsFullScreenElement): | |
| * dom/ElementRareData.h: | |
| (ElementRareData): | |
| (WebCore::ElementRareData::ElementRareData): | |
| * dom/NodeRareData.h: | |
| (WebCore::NodeRareData::styleAffectedByEmpty): | |
| (WebCore::NodeRareData::setStyleAffectedByEmpty): | |
| (WebCore::NodeRareData::isInCanvasSubtree): | |
| (WebCore::NodeRareData::setIsInCanvasSubtree): | |
| (NodeRareData): | |
| (WebCore::NodeRareData::containsFullScreenElement): | |
| (WebCore::NodeRareData::setContainsFullScreenElement): | |
| 2012-10-03 Jussi Kukkonen <jussi.kukkonen@intel.com> | |
| getComputedStyle perspective-origin is based on the wrong bounding box | |
| https://bugs.webkit.org/show_bug.cgi?id=98027 | |
| Reviewed by Simon Fraser. | |
| perspective-origin for ComputedStyleDeclaration is currently calculated using the | |
| wrong bounding box (sizingBox() which ends up as the contentbox). | |
| Start using borderbox for ComputedStyleDeclaration perspective-origin, similar to | |
| what transform-origin already does. | |
| Test: fast/css/getComputedStyle/getComputedStyle-origin-percentage.html | |
| * css/CSSComputedStyleDeclaration.cpp: | |
| (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): | |
| 2012-10-03 Patrick Gansterer <paroga@webkit.org> | |
| Build fix for WinCE after r130160. | |
| * platform/graphics/FontFastPath.cpp: | |
| (WebCore::Font::glyphDataAndPageForCharacter): | |
| 2012-10-03 Tommy Widenflycht <tommyw@google.com> | |
| MediaStream API: RTCPeerConnection should send down its handler via the FrameLoaderClient directly after creation. | |
| https://bugs.webkit.org/show_bug.cgi?id=98149 | |
| Reviewed by Adam Barth. | |
| The chromium implementation needs to know which Frame created a PeerConnection so | |
| that the right housekeeping can take place correctly. | |
| Not testable in DRT, but have verified the change manually and with our pyautotests. | |
| * Modules/mediastream/RTCPeerConnection.cpp: | |
| (WebCore::RTCPeerConnection::RTCPeerConnection): | |
| * loader/FrameLoaderClient.h: | |
| (WebCore): | |
| (FrameLoaderClient): | |
| (WebCore::FrameLoaderClient::dispatchWillStartUsingPeerConnectionHandler): | |
| * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp: | |
| (WebCore::RTCPeerConnectionHandlerChromium::toWebRTCPeerConnectionHandler): | |
| (WebCore): | |
| (WebCore::RTCPeerConnectionHandlerChromium::RTCPeerConnectionHandlerChromium): | |
| (WebCore::RTCPeerConnectionHandlerChromium::initialize): | |
| * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h: | |
| (RTCPeerConnectionHandlerChromium): | |
| 2012-10-03 Eugene Klyuchnikov <eustas.bug@gmail.com> | |
| Web Inspector: Profiles: taking heap snapshot causes error message in console. | |
| https://bugs.webkit.org/show_bug.cgi?id=97890 | |
| Reviewed by Yury Semikhatsky. | |
| Actual problem is that proxy loader is closed twice. | |
| "_snapshotReceived" should never try to close receiver, | |
| because it is a callback fired by close. | |
| Also minor glitches fixed: | |
| - taking snapshot shows "Loading..." status first, | |
| and then "Saving xxx%"; | |
| - after all chunks are sent "Parsing" status is set and | |
| then is replaced with "Saving 100%"; | |
| - removed dead code in proxy; | |
| - proxy was ignoring callback parameter; | |
| - "Loading %d\%" is not localized. | |
| * English.lproj/localizedStrings.js: Added missing "Loading %d%" string. | |
| * inspector/front-end/HeapSnapshotProxy.js: Removed dead code. | |
| (WebInspector.HeapSnapshotLoaderProxy): | |
| (WebInspector.HeapSnapshotLoaderProxy.prototype.write): Make this method | |
| interface-conformant. | |
| * inspector/front-end/HeapSnapshotView.js: | |
| (WebInspector.HeapProfileHeader): Fixed update-status and | |
| finish-transfer logic. | |
| 2012-10-03 Jochen Eisinger <jochen@chromium.org> | |
| Make sure that user gestures can't be consumed twice | |
| https://bugs.webkit.org/show_bug.cgi?id=97483 | |
| Reviewed by Adam Barth. | |
| Instead of a simple counter, use a ref counted token to track how many | |
| user gestures happened and where consumed. When creating a timer that | |
| is supposed to forward the user gesture, take a reference to this token | |
| and reinstantiate the UserGestureIndicator with that token when the | |
| timer is triggered. | |
| Tests: platform/chromium/fast/events/popup-forwarded-gesture-blocked.html | |
| platform/chromium/fast/events/popup-forwarded-gesture.html | |
| * dom/UserGestureIndicator.cpp: | |
| (WebCore): | |
| (WebCore::UserGestureIndicator::UserGestureIndicator): | |
| (WebCore::UserGestureIndicator::~UserGestureIndicator): | |
| (WebCore::UserGestureIndicator::processingUserGesture): | |
| (WebCore::UserGestureIndicator::consumeUserGesture): | |
| (WebCore::UserGestureIndicator::currentToken): | |
| * dom/UserGestureIndicator.h: | |
| (Token): | |
| (WebCore::UserGestureIndicator::Token::~Token): | |
| (UserGestureIndicator): | |
| * page/DOMTimer.cpp: | |
| (WebCore::DOMTimer::DOMTimer): | |
| (WebCore::DOMTimer::fired): | |
| * page/DOMTimer.h: | |
| (DOMTimer): | |
| 2012-10-03 Dominic Mazzoni <dmazzoni@google.com> | |
| AX: Heap-use-after-free when deleting a ContainerNode with an AX object | |
| https://bugs.webkit.org/show_bug.cgi?id=98073 | |
| Reviewed by Hajime Morita. | |
| Calls axObjectCache()->remove(this) in ~ContainerNode so that the AX tree | |
| doesn't try to access the container node while walking up the parent chain | |
| from one of the container node's children. | |
| Test: accessibility/container-node-delete-causes-crash.html | |
| * dom/ContainerNode.cpp: | |
| (WebCore::ContainerNode::~ContainerNode): | |
| * dom/Node.cpp: | |
| (WebCore::Node::~Node): | |
| * dom/Node.h: | |
| (WebCore::Node::document): | |
| (WebCore::Node::documentInternal): | |
| 2012-10-03 Vsevolod Vlasov <vsevik@chromium.org> | |
| Web Inspector: SourceURL should be taken from debugger agent when possible. | |
| https://bugs.webkit.org/show_bug.cgi?id=98239 | |
| Reviewed by Yury Semikhatsky. | |
| Removed a check that sourceURL coming from js engine is the same as the one parsed by debugger agent. | |
| Alwys use the one from debugger agent now. | |
| * inspector/InspectorDebuggerAgent.cpp: | |
| (WebCore::InspectorDebuggerAgent::didParseSource): | |
| 2012-10-03 Ilya Tikhonovsky <loislo@chromium.org> | |
| Unreviewed. Touch FrameView.cpp file for fixing mac bot compilation. | |
| * page/FrameView.cpp: | |
| (WebCore): | |
| 2012-10-02 Ilya Tikhonovsky <loislo@chromium.org> | |
| Web Inspector: "Load profile..." context menu item has to be shown only for left column with the list of profiles. | |
| https://bugs.webkit.org/show_bug.cgi?id=98163 | |
| Reviewed by Yury Semikhatsky. | |
| The text was changed to "Load Heap Snapshot..." | |
| Also I changed "Save profile..." to "Save Heap Snapshot..." because other profiles don't support Save/Load operations yet. | |
| The Load context menu item will appear only when the user clicked in sidebar the tree empty space or a profile. | |
| * English.lproj/localizedStrings.js: | |
| * inspector/front-end/ProfilesPanel.js: | |
| (WebInspector.ProfilesPanel.prototype._handleContextMenuEvent): | |
| (WebInspector.ProfileSidebarTreeElement.prototype.handleContextMenuEvent): | |
| 2012-10-03 Harald Alvestrand <hta@google.com> | |
| Add data passing to the GetStats interface of RTCPeerConnection | |
| https://bugs.webkit.org/show_bug.cgi?id=98003 | |
| Reviewed by Adam Barth. | |
| Added an RTCStatsResponseBase interface to platform, and let the | |
| RTCStatsRequestImpl class produce an implementation of it that's returned | |
| to WebCore. | |
| Tested by extension of the RTCPeerConnection-stats.html test. | |
| * Modules/mediastream/RTCStatsElement.cpp: | |
| (WebCore::RTCStatsElement::addStatistic): | |
| (WebCore): | |
| * Modules/mediastream/RTCStatsElement.h: | |
| (RTCStatsElement): | |
| * Modules/mediastream/RTCStatsReport.cpp: | |
| (WebCore): | |
| (WebCore::RTCStatsReport::addElement): | |
| (WebCore::RTCStatsReport::addStatistic): | |
| * Modules/mediastream/RTCStatsReport.h: | |
| (RTCStatsReport): | |
| * Modules/mediastream/RTCStatsRequestImpl.cpp: | |
| (WebCore::RTCStatsRequestImpl::createResponse): | |
| (WebCore): | |
| (WebCore::RTCStatsRequestImpl::requestSucceeded): | |
| * Modules/mediastream/RTCStatsRequestImpl.h: | |
| (RTCStatsRequestImpl): | |
| * Modules/mediastream/RTCStatsResponse.cpp: | |
| (WebCore::RTCStatsResponse::create): | |
| (WebCore::RTCStatsResponse::addReport): | |
| (WebCore): | |
| (WebCore::RTCStatsResponse::addElement): | |
| (WebCore::RTCStatsResponse::addStatistic): | |
| * Modules/mediastream/RTCStatsResponse.h: | |
| (RTCStatsResponse): | |
| * WebCore.gypi: | |
| * platform/chromium/support/WebRTCStatsRequest.cpp: | |
| (WebKit::WebRTCStatsRequest::response): | |
| (WebKit): | |
| (WebKit::WebRTCStatsRequest::requestSucceeded): | |
| * platform/chromium/support/WebRTCStatsResponse.cpp: Added. | |
| (WebKit): | |
| (WebKit::WebRTCStatsResponse::WebRTCStatsResponse): | |
| (WebKit::WebRTCStatsResponse::assign): | |
| (WebKit::WebRTCStatsResponse::reset): | |
| (WebKit::WebRTCStatsResponse::operator WTF::PassRefPtr<WebCore::RTCStatsResponseBase>): | |
| (WebKit::WebRTCStatsResponse::addReport): | |
| (WebKit::WebRTCStatsResponse::addElement): | |
| (WebKit::WebRTCStatsResponse::addStatistic): | |
| * platform/mediastream/RTCStatsRequest.h: | |
| (WebCore): | |
| (RTCStatsRequest): | |
| * platform/mediastream/RTCStatsResponseBase.h: Added. | |
| (WebCore): | |
| (RTCStatsResponseBase): | |
| (WebCore::RTCStatsResponseBase::~RTCStatsResponseBase): | |
| 2012-10-02 Carlos Garcia Campos <cgarcia@igalia.com> | |
| [GTK] Add API to get the web view that initiated a custom URI request to WebKit2 GTK+ | |
| https://bugs.webkit.org/show_bug.cgi?id=97895 | |
| Reviewed by Martin Robinson. | |
| * platform/network/NetworkingContext.h: | |
| (NetworkingContext): Add initiatingPageID(). | |
| * platform/network/ResourceHandle.h: | |
| (ResourceHandle): Add static method | |
| getSoupRequestInitiaingPageID(). | |
| * platform/network/ResourceHandleInternal.h: | |
| (ResourceHandleInternal): Add initiatingPageID(). | |
| * platform/network/soup/ResourceHandleSoup.cpp: | |
| (WebCore::ResourceHandleInternal::initiatingPageID): Get the | |
| initiating page ID of the resource handle networking context. | |
| (WebCore::setSoupRequestInitiaingPageID): Helper function to | |
| attach a page ID to a SoupRequest. | |
| (WebCore::startHTTPRequest): Call setSoupRequestInitiaingPageID() | |
| to attch the initiating page ID to the SoupRequest. | |
| (WebCore::startNonHTTPRequest): Ditto. | |
| (WebCore::ResourceHandle::getSoupRequestInitiaingPageID): Static | |
| method to get the page ID attached to a SoupRequest. | |
| 2012-10-03 Kent Tamura <tkent@chromium.org> | |
| Introduce DateComponents::minimumYear and maximumYear | |
| https://bugs.webkit.org/show_bug.cgi?id=98230 | |
| Reviewed by Kentaro Hara. | |
| Share same difinitions in DateComponents.cpp and DateTimeFieldElements.cpp. | |
| No new tests. This doesn't change any bahevior. | |
| * platform/DateComponents.h: | |
| (WebCore::DateComponents::minimumYear): Moved from DateComponents.cpp. | |
| (WebCore::DateComponents::maximumYear): ditto. | |
| * platform/DateComponents.cpp: | |
| (WebCore): Move out static minimumYear and maximumYear. | |
| (WebCore::DateComponents::parseYear): Use DateCompnents::minimumYear and/or maximumYear. | |
| (WebCore::withinHTMLDateLimits): ditto. | |
| (WebCore::DateComponents::parseWeek): ditto. | |
| (WebCore::DateComponents::setMonthsSinceEpoch): ditto. | |
| (WebCore::DateComponents::setMillisecondsSinceEpochForWeek): ditto. | |
| * html/shadow/DateTimeFieldElements.cpp: | |
| (WebCore): Remove minimumYear and maximumYear. | |
| (WebCore::DateTimeYearFieldElement::DateTimeYearFieldElement): | |
| Use DateComponents::minimumYear and maximumYear. | |
| 2012-10-02 Arko Saha <arko@motorola.com> | |
| Microdata: itemprop names must not override builtin properties. | |
| https://bugs.webkit.org/show_bug.cgi?id=98025 | |
| Reviewed by Kentaro Hara. | |
| We should look in the prototype for functions before assuming it as | |
| an item's name. Return false if the prototype of the object has a | |
| property (function) with propertyName. | |
| Named properties Spec: http://dev.w3.org/2006/webapi/WebIDL/#idl-named-properties | |
| Named property visibility algorithm: | |
| http://dev.w3.org/2006/webapi/WebIDL/#indexed-and-named-properties | |
| ... | |
| 7. If the result of calling the [[HasProperty]] internal method on | |
| prototype with property name P is true, then return false. | |
| ... | |
| Also [OverrideBuiltins] is not declared for any of the properties, | |
| hence no overriding is allowed in this case. | |
| Test: fast/dom/MicroData/itemprop-names-override-builtin-properties.html | |
| * bindings/scripts/CodeGeneratorJS.pm: | |
| (GenerateGetOwnPropertySlotBody): | |
| (GenerateGetOwnPropertyDescriptorBody): | |
| 2012-10-02 Keishi Hattori <keishi@webkit.org> | |
| REGRESSION (r129738): Suggestion picker label is placed in the wrong location | |
| https://bugs.webkit.org/show_bug.cgi?id=98094 | |
| Reviewed by Kent Tamura. | |
| We needed to reverse padding-left/right when rtl. | |
| No new tests. Covered by date-suggestion-picker-appearance.html. | |
| * Resources/pagepopups/suggestionPicker.css: | |
| (.suggestion-list-entry .label): | |
| (.rtl .suggestion-list-entry .label): | |
| 2012-10-02 Yury Semikhatsky <yurys@chromium.org> | |
| Provide memory instrumentation for HashCountedSet | |
| https://bugs.webkit.org/show_bug.cgi?id=98138 | |
| Reviewed by Pavel Feldman. | |
| Replaced addHashCountedSet calls with addMember that now automatically | |
| detects HashCountedSet and calls appropriate routine. | |
| * css/CSSImageGeneratorValue.cpp: | |
| (WebCore::CSSImageGeneratorValue::reportBaseClassMemoryUsage): | |
| * loader/cache/CachedResource.cpp: | |
| 2012-10-02 Nandor Huszka <hnandor@inf.u-szeged.hu> | |
| Buildfix after r130235. | |
| Reviewed by Csaba Osztrogonác. | |
| systemAllowsMultisamplingOnATICards was deleted from GraphicsContext3D, | |
| but function body remained in GraphicsContext3DOpenGLES. Delete method body. | |
| * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp: | |
| 2012-10-02 Kent Tamura <tkent@chromium.org> | |
| Fix assertion failures on Chromium Debug bots for datetime/datetime-local input types. | |
| * html/shadow/DateTimeFieldElements.cpp: | |
| If a placeholder stirng is empty, use a sequence of "-". | |
| (WebCore::DateTimeDayFieldElement::create): | |
| (WebCore::DateTimeMonthFieldElement::create): | |
| (WebCore::DateTimeYearFieldElement::create): | |
| 2012-10-02 MORITA Hajime <morrita@google.com> | |
| https://bugs.webkit.org/show_bug.cgi?id=98134 | |
| [Refactoring] StyleResolver::matchScopedAuthorRules() could be simpler. | |
| Reviewed by Dimitri Glazkov. | |
| matchScopedAuthorRules() did have some optimization which only | |
| makes sense for heavily nested shadow tree. However, we don't see | |
| such type of usage of Shadow DOM and this looks premature | |
| optimization. This change unified its triple for loop into one, | |
| which makes the code much simpler. | |
| No new tests. Covered by existing tests. | |
| * css/StyleResolver.cpp: | |
| (WebCore::StyleResolver::matchScopedAuthorRules): | |
| 2012-10-02 Kent Tamura <tkent@chromium.org> | |
| Introduce Localizer::dateTimeFormatWithSecond and dateTimeFormatWithoutSecond | |
| https://bugs.webkit.org/show_bug.cgi?id=98229 | |
| Reviewed by Kentaro Hara. | |
| Unify identical code in DateTimeInputType and DateTimeLocalInputType as | |
| Localizer member functions. | |
| They still have some common code. We'll address it later. | |
| No new tests. This doesn't change any behavior. | |
| * platform/text/Localizer.h: | |
| (Localizer): Add dateTimeFormatWithSecond and dateTimeFormatWithoutSecond. | |
| * platform/text/Localizer.cpp: | |
| (WebCore::Localizer::dateTimeFormatWithSecond): | |
| Implemented. Just concatenating dateFormat, a space, and timeFormat. | |
| (WebCore::Localizer::dateTimeFormatWithoutSecond): | |
| Implemented. Just concatenating dateFormat, a space, and shortTimeFormat. | |
| * html/DateTimeInputType.cpp: | |
| (WebCore::DateTimeInputType::setupLayoutParameters): | |
| Use dateTimeFormatWithSecond and dateTimeFormatWithoutSecond. | |
| * html/DateTimeLocalInputType.cpp: | |
| (WebCore::DateTimeLocalInputType::setupLayoutParameters): ditto. | |
| 2012-10-03 Kent Tamura <tkent@chromium.org> | |
| Refactoring: DateTimeEditBuilder had better hold LayoutParameters | |
| https://bugs.webkit.org/show_bug.cgi?id=98228 | |
| Reviewed by Kentaro Hara. | |
| Stop copying multiple members of LayoutParameters in DateTimeEditBuilder | |
| constructor. This change improves code size and runtime cost. | |
| No new tests. This doesn't change user-visible behavior. | |
| * html/shadow/DateTimeEditElement.cpp: | |
| (DateTimeEditBuilder): Add a comment about lifetime of objects. | |
| (WebCore::DateTimeEditBuilder::stepRange): | |
| Added. A helper to access m_parameters.stepRange. | |
| (WebCore::DateTimeEditBuilder::DateTimeEditBuilder): | |
| Remove m_stepRange, m_localizer, m_placeholderFor* members. | |
| Add m_parameters. | |
| (WebCore::DateTimeEditBuilder::needMillisecondField): | |
| Use stepRange() instead of m_stepRange. | |
| (WebCore::DateTimeEditBuilder::visitField): | |
| Use m_parameters.placeholderFor*. | |
| (WebCore::DateTimeEditBuilder::shouldMillisecondFieldReadOnly): | |
| Use stepRange() instead of m_stepRange. | |
| (WebCore::DateTimeEditBuilder::shouldMinuteFieldReadOnly): ditto. | |
| (WebCore::DateTimeEditBuilder::shouldSecondFieldReadOnly): ditto. | |
| 2012-10-02 Kent Tamura <tkent@chromium.org> | |
| Implement LocaleICU::dateFormat | |
| https://bugs.webkit.org/show_bug.cgi?id=98118 | |
| Reviewed by Hajime Morita. | |
| http://trac.webkit.org/changeset/130127 introduced | |
| Localizer::dateFormat, and this is its implementation for LocaleICU | |
| classs. The code is going to be used when | |
| ENABLE_INPUT_MULTIPLE_FIELDS_UI is enabled. | |
| No new tests. The function is not used yet. | |
| * platform/text/LocaleICU.cpp: | |
| (WebCore::LocaleICU::dateFormat): | |
| Implemented. Note that m_shortDateFormat is a UDateFormat object, which | |
| knows various format information. | |
| * platform/text/LocaleICU.h: | |
| (LocaleICU): Add m_dateFormat to cache the format string. | |
| 2012-10-02 Kent Tamura <tkent@chromium.org> | |
| [Mac][Chromium-Mac] Implement LocaleMac::dateFormat | |
| https://bugs.webkit.org/show_bug.cgi?id=98116 | |
| Reviewed by Hajime Morita. | |
| http://trac.webkit.org/changeset/130127 introduced | |
| Localizer::dateFormat, and this is its implementation for LocaleICU | |
| classs. The code is going to be used when | |
| ENABLE_INPUT_MULTIPLE_FIELDS_UI is enabled. | |
| No new tests. The function is not used yet. | |
| * platform/text/mac/LocaleMac.h: | |
| (LocaleMac): Declare m_dateFormat. | |
| * platform/text/mac/LocaleMac.mm: | |
| (WebCore::LocaleMac::dateFormat): Implemented. | |
| 2012-10-02 Kent Tamura <tkent@chromium.org> | |
| [Chromium-Win] Implement LocaleWin::dateFormat | |
| https://bugs.webkit.org/show_bug.cgi?id=98117 | |
| Reviewed by Kentaro Hara. | |
| http://trac.webkit.org/changeset/130127 introduced | |
| Localizer::dateFormat, and this is its implementation for LocaleICU | |
| classs. The code is going to be used when | |
| ENABLE_INPUT_MULTIPLE_FIELDS_UI is enabled. | |
| Tests: Added a new test to WebKit/chromium/tests/LocaleWinTest.cpp. | |
| * platform/text/LocaleWin.cpp: | |
| (WebCore::parseDateFormat): | |
| Fix a continuous apostrophes parsing bug; "abc''''def" produced "abc'''def" | |
| (WebCore::appendAsLDMLLiteral): | |
| A helper function to make a literal string for LDML. | |
| (WebCore::convertWindowsDateFormatToLDML): | |
| Creates an LDML format from a parsed date format tokens. | |
| (WebCore::LocaleWin::dateFormat): | |
| Implemented. This uses convertWindowsDateFormatToLDML. | |
| (WebCore::LocaleWin::dateFormat): | |
| Added for testing. The source windows format is specified as a function | |
| argument. | |
| * platform/text/LocaleWin.h: | |
| (LocaleWin): Declare m_dateFormat and dateFormat(). | |
| 2012-10-02 Ian Vollick <vollick@chromium.org> | |
| [chromium] Fix spelling of isNVIDIA override in Extensions3DChromium | |
| https://bugs.webkit.org/show_bug.cgi?id=98219 | |
| Reviewed by Dean Jackson. | |
| The override in Extensions3dChromium should have been spelled isNVIDIA, not isNVidia. | |
| No new tests. No change in functionality. | |
| * platform/graphics/chromium/Extensions3DChromium.h: | |
| (WebCore::Extensions3DChromium::isNVIDIA): | |
| 2012-10-02 Anders Carlsson <andersca@apple.com> | |
| Try to fix the Snow Leopard build. | |
| * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: | |
| 2012-10-02 Joshua Bell <jsbell@chromium.org> | |
| Add htons/htonl definitions and implementations | |
| https://bugs.webkit.org/show_bug.cgi?id=98054 | |
| Reviewed by Darin Adler. | |
| Update users of htons and friends to use new wtf/ByteOrder.h header. | |
| No new tests - just refactoring. | |
| * platform/graphics/WOFFFileFormat.cpp: | |
| * platform/graphics/chromium/VDMXParser.cpp: | |
| == Rolled over to ChangeLog-2012-10-02 == |