Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(75)

Unified Diff: Source/WebCore/ChangeLog

Issue 6691008: Merge 80842 - 2011-03-11 Anton Muhin <antonm@chromium.org>... (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/648/
Patch Set: Created 9 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | Source/WebCore/bindings/v8/V8GCController.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/WebCore/ChangeLog
===================================================================
--- Source/WebCore/ChangeLog (revision 81026)
+++ Source/WebCore/ChangeLog (working copy)
@@ -1,3 +1,17631 @@
+2011-03-11 Anton Muhin <antonm@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ [v8] Change the way group id for CSS objects is calculated
+ https://bugs.webkit.org/show_bug.cgi?id=56117
+
+ Do not treat CSSStyleDeclarations under not CSSRule as belonging to the same object group
+ as they should not be reachable in JavaScript.
+
+ Covered by existing layout tests. Fact of absence of retention is not trivial to prove.
+
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::calculateGroupId):
+ (WebCore::DOMObjectGrouperVisitor::visitDOMWrapper):
+
+2011-03-11 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: hover over elements in Elements panel does not highlight nodes
+ https://bugs.webkit.org/show_bug.cgi?id=56121
+
+ In DOM trees with a comment and/or doctype preceding the HTML tag, the tree container right boundary
+ is 16px apart from the OL right boundary, and we miss the relevant LI by 4px. The fix is to compensate
+ for these 16px when computing the test point coordinates.
+
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline.prototype._treeElementFromEvent):
+
+2011-03-11 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Roll out r80837.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSInjectedScriptHostCustom.cpp:
+ (WebCore::InjectedScriptHost::createInjectedScript):
+ (WebCore::InjectedScriptHost::discardInjectedScript):
+ (WebCore::InjectedScriptHost::injectedScriptFor):
+ (WebCore::InjectedScriptHost::canAccessInspectedWindow):
+ * bindings/js/JSInjectedScriptManager.cpp: Removed.
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ (WebCore::WeakReferenceCallback):
+ (WebCore::createInjectedScriptHostV8Wrapper):
+ (WebCore::InjectedScriptHost::createInjectedScript):
+ (WebCore::InjectedScriptHost::discardInjectedScript):
+ (WebCore::InjectedScriptHost::injectedScriptFor):
+ (WebCore::InjectedScriptHost::canAccessInspectedWindow):
+ * bindings/v8/custom/V8InjectedScriptManager.cpp: Removed.
+ * inspector/ConsoleMessage.cpp:
+ (WebCore::ConsoleMessage::addToFrontend):
+ * inspector/ConsoleMessage.h:
+ * inspector/InjectedScript.cpp:
+ (WebCore::InjectedScript::canAccessInspectedWindow):
+ * inspector/InjectedScript.h:
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::InjectedScriptHost):
+ (WebCore::InjectedScriptHost::~InjectedScriptHost):
+ (WebCore::InjectedScriptHost::inspectImpl):
+ (WebCore::InjectedScriptHost::clearConsoleMessages):
+ (WebCore::InjectedScriptHost::databaseIdImpl):
+ (WebCore::InjectedScriptHost::storageIdImpl):
+ (WebCore::InjectedScriptHost::injectedScriptForId):
+ (WebCore::InjectedScriptHost::injectedScriptForObjectId):
+ (WebCore::InjectedScriptHost::injectedScriptForMainFrame):
+ (WebCore::InjectedScriptHost::discardInjectedScripts):
+ (WebCore::InjectedScriptHost::releaseObjectGroup):
+ (WebCore::InjectedScriptHost::frontend):
+ (WebCore::InjectedScriptHost::injectedScriptSource):
+ (WebCore::InjectedScriptHost::injectScript):
+ * inspector/InjectedScriptHost.h:
+ (WebCore::InjectedScriptHost::create):
+ (WebCore::InjectedScriptHost::inspectorAgent):
+ (WebCore::InjectedScriptHost::disconnectController):
+ * inspector/InjectedScriptManager.cpp: Removed.
+ * inspector/InjectedScriptManager.h: Removed.
+ * inspector/Inspector.idl:
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ (WebCore::InspectorAgent::inspectedPageDestroyed):
+ (WebCore::InspectorAgent::focusNode):
+ (WebCore::InspectorAgent::didClearWindowObjectInWorld):
+ (WebCore::InspectorAgent::createFrontendLifetimeAgents):
+ (WebCore::InspectorAgent::didCommitLoad):
+ (WebCore::InspectorAgent::domContentLoadedEventFired):
+ * inspector/InspectorAgent.h:
+ (WebCore::InspectorAgent::injectedScriptHost):
+ * inspector/InspectorBrowserDebuggerAgent.cpp:
+ * inspector/InspectorConsoleAgent.cpp:
+ (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
+ (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
+ (WebCore::InspectorConsoleAgent::clearConsoleMessages):
+ (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
+ (WebCore::InspectorConsoleAgent::addConsoleMessage):
+ * inspector/InspectorConsoleAgent.h:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::disconnectFrontend):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::InspectorDOMAgent):
+ (WebCore::InspectorDOMAgent::discardBindings):
+ (WebCore::InspectorDOMAgent::addInspectedNode):
+ (WebCore::InspectorDOMAgent::pushNodeToFrontend):
+ (WebCore::InspectorDOMAgent::resolveNode):
+ * inspector/InspectorDOMAgent.h:
+ (WebCore::InspectorDOMAgent::create):
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::create):
+ (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
+ (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
+ (WebCore::InspectorDebuggerAgent::currentCallFrames):
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/InspectorRuntimeAgent.cpp:
+ (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
+ (WebCore::InspectorRuntimeAgent::~InspectorRuntimeAgent):
+ (WebCore::InspectorRuntimeAgent::evaluate):
+ (WebCore::InspectorRuntimeAgent::evaluateOn):
+ (WebCore::InspectorRuntimeAgent::getProperties):
+ (WebCore::InspectorRuntimeAgent::setPropertyValue):
+ (WebCore::InspectorRuntimeAgent::releaseObject):
+ (WebCore::InspectorRuntimeAgent::releaseObjectGroup):
+ * inspector/InspectorRuntimeAgent.h:
+ (WebCore::InspectorRuntimeAgent::create):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
+ (WebInspector.ElementsPanel):
+
+2011-03-11 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: split InjectedScriptHost into InjectedScriptManager and InjectedScriptHost
+ https://bugs.webkit.org/show_bug.cgi?id=56173
+
+ Moved all injected script managing logic into InjectedScriptManager which is owned by InspectorController.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSInjectedScriptHostCustom.cpp:
+ * bindings/js/JSInjectedScriptManager.cpp: Added.
+ (WebCore::InjectedScriptManager::createInjectedScript):
+ (WebCore::InjectedScriptManager::discardInjectedScript):
+ (WebCore::InjectedScriptManager::injectedScriptFor):
+ (WebCore::InjectedScriptManager::canAccessInspectedWindow):
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ * bindings/v8/custom/V8InjectedScriptManager.cpp: Copied from Source/WebCore/bindings/v8/custom/V8InjectedScriptHostCustom.cpp.
+ (WebCore::WeakReferenceCallback):
+ (WebCore::createInjectedScriptHostV8Wrapper):
+ (WebCore::InjectedScriptManager::createInjectedScript):
+ (WebCore::InjectedScriptManager::discardInjectedScript):
+ (WebCore::InjectedScriptManager::injectedScriptFor):
+ (WebCore::InjectedScriptManager::canAccessInspectedWindow):
+ * inspector/ConsoleMessage.cpp:
+ (WebCore::ConsoleMessage::addToFrontend):
+ * inspector/ConsoleMessage.h:
+ * inspector/InjectedScript.cpp:
+ (WebCore::InjectedScript::canAccessInspectedWindow):
+ * inspector/InjectedScript.h:
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::create):
+ (WebCore::InjectedScriptHost::InjectedScriptHost):
+ (WebCore::InjectedScriptHost::~InjectedScriptHost):
+ (WebCore::InjectedScriptHost::disconnect):
+ (WebCore::InjectedScriptHost::inspectImpl):
+ (WebCore::InjectedScriptHost::clearConsoleMessages):
+ (WebCore::InjectedScriptHost::databaseIdImpl):
+ (WebCore::InjectedScriptHost::storageIdImpl):
+ * inspector/InjectedScriptHost.h:
+ (WebCore::InjectedScriptHost::init):
+ (WebCore::InjectedScriptHost::setFrontend):
+ (WebCore::InjectedScriptHost::clearFrontend):
+ * inspector/InjectedScriptManager.cpp: Added.
+ (WebCore::InjectedScriptManager::create):
+ (WebCore::InjectedScriptManager::InjectedScriptManager):
+ (WebCore::InjectedScriptManager::~InjectedScriptManager):
+ (WebCore::InjectedScriptManager::disconnect):
+ (WebCore::InjectedScriptManager::injectedScriptHost):
+ (WebCore::InjectedScriptManager::injectedScriptForId):
+ (WebCore::InjectedScriptManager::injectedScriptForObjectId):
+ (WebCore::InjectedScriptManager::discardInjectedScripts):
+ (WebCore::InjectedScriptManager::releaseObjectGroup):
+ (WebCore::InjectedScriptManager::injectedScriptSource):
+ (WebCore::InjectedScriptManager::injectScript):
+ * inspector/InjectedScriptManager.h: Copied from Source/WebCore/inspector/InjectedScriptHost.h.
+ * inspector/Inspector.idl:
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ (WebCore::InspectorAgent::inspectedPageDestroyed):
+ (WebCore::InspectorAgent::focusNode):
+ (WebCore::InspectorAgent::didClearWindowObjectInWorld):
+ (WebCore::InspectorAgent::createFrontendLifetimeAgents):
+ (WebCore::InspectorAgent::didCommitLoad):
+ (WebCore::InspectorAgent::domContentLoadedEventFired):
+ * inspector/InspectorAgent.h:
+ * inspector/InspectorBrowserDebuggerAgent.cpp:
+ * inspector/InspectorConsoleAgent.cpp:
+ (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
+ (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
+ (WebCore::InspectorConsoleAgent::clearConsoleMessages):
+ (WebCore::InspectorConsoleAgent::addInspectedNode):
+ (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
+ (WebCore::InspectorConsoleAgent::addConsoleMessage):
+ * inspector/InspectorConsoleAgent.h:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::disconnectFrontend):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::InspectorDOMAgent):
+ (WebCore::InspectorDOMAgent::discardBindings):
+ (WebCore::InspectorDOMAgent::pushNodeToFrontend):
+ (WebCore::InspectorDOMAgent::resolveNode):
+ * inspector/InspectorDOMAgent.h:
+ (WebCore::InspectorDOMAgent::create):
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::create):
+ (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
+ (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
+ (WebCore::InspectorDebuggerAgent::currentCallFrames):
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/InspectorRuntimeAgent.cpp:
+ (WebCore::InspectorRuntimeAgent::create):
+ (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
+ (WebCore::InspectorRuntimeAgent::~InspectorRuntimeAgent):
+ (WebCore::InspectorRuntimeAgent::evaluate):
+ (WebCore::InspectorRuntimeAgent::evaluateOn):
+ (WebCore::InspectorRuntimeAgent::getProperties):
+ (WebCore::InspectorRuntimeAgent::setPropertyValue):
+ (WebCore::InspectorRuntimeAgent::releaseObject):
+ (WebCore::InspectorRuntimeAgent::releaseObjectGroup):
+ * inspector/InspectorRuntimeAgent.h:
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
+ (WebInspector.ElementsPanel):
+
+2011-03-09 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Make IDBBackingStore abstract
+ https://bugs.webkit.org/show_bug.cgi?id=56013
+
+ Make IDBBackingStore abstract to allow for multiple implementations.
+ Move the SQLite implementation to IDBSQLiteBackingStore.
+
+ No new tests: refactoring only.
+
+ * WebCore.gypi:
+ * storage/IDBBackingStore.h:
+ (WebCore::IDBBackingStore::~IDBBackingStore):
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::IDBFactoryBackendImpl::open):
+ * storage/IDBSQLiteBackingStore.cpp:
+ (WebCore::IDBSQLiteBackingStore::IDBSQLiteBackingStore):
+ (WebCore::IDBSQLiteBackingStore::~IDBSQLiteBackingStore):
+ (WebCore::runCommands):
+ (WebCore::createTables):
+ (WebCore::createMetaDataTable):
+ (WebCore::getDatabaseSchemaVersion):
+ (WebCore::migrateDatabase):
+ (WebCore::IDBSQLiteBackingStore::open):
+ (WebCore::IDBSQLiteBackingStore::extractIDBDatabaseMetaData):
+ (WebCore::IDBSQLiteBackingStore::setIDBDatabaseMetaData):
+ (WebCore::IDBSQLiteBackingStore::getObjectStores):
+ (WebCore::IDBSQLiteBackingStore::createObjectStore):
+ (WebCore::doDelete):
+ (WebCore::IDBSQLiteBackingStore::deleteObjectStore):
+ (WebCore::whereSyntaxForKey):
+ (WebCore::bindKeyToQuery):
+ (WebCore::lowerCursorWhereFragment):
+ (WebCore::upperCursorWhereFragment):
+ (WebCore::IDBSQLiteBackingStore::getObjectStoreRecord):
+ (WebCore::bindKeyToQueryWithNulls):
+ (WebCore::IDBSQLiteBackingStore::putObjectStoreRecord):
+ (WebCore::IDBSQLiteBackingStore::clearObjectStore):
+ (WebCore::IDBSQLiteBackingStore::deleteObjectStoreRecord):
+ (WebCore::IDBSQLiteBackingStore::nextAutoIncrementNumber):
+ (WebCore::IDBSQLiteBackingStore::keyExistsInObjectStore):
+ (WebCore::IDBSQLiteBackingStore::forEachObjectStoreRecord):
+ (WebCore::IDBSQLiteBackingStore::getIndexes):
+ (WebCore::IDBSQLiteBackingStore::createIndex):
+ (WebCore::IDBSQLiteBackingStore::deleteIndex):
+ (WebCore::IDBSQLiteBackingStore::putIndexDataForRecord):
+ (WebCore::IDBSQLiteBackingStore::deleteIndexDataForRecord):
+ (WebCore::IDBSQLiteBackingStore::getObjectViaIndex):
+ (WebCore::keyFromQuery):
+ (WebCore::IDBSQLiteBackingStore::getPrimaryKeyViaIndex):
+ (WebCore::IDBSQLiteBackingStore::keyExistsInIndex):
+ (WebCore::IDBSQLiteBackingStore::openObjectStoreCursor):
+ (WebCore::IDBSQLiteBackingStore::openIndexKeyCursor):
+ (WebCore::IDBSQLiteBackingStore::openIndexCursor):
+ (WebCore::IDBSQLiteBackingStore::createTransaction):
+ * storage/IDBSQLiteBackingStore.h: Added.
+
+2011-03-11 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Unreviewed build error fix.
+
+ [EFL] Fix build break when SHARED_CORE is ON
+ https://bugs.webkit.org/show_bug.cgi?id=56155
+
+ * platform/efl/ContextMenuEfl.cpp:
+ (WebCore::ContextMenu::ContextMenu):
+ * platform/efl/ContextMenuItemEfl.cpp:
+ (WebCore::ContextMenuItem::nativeMenuItem):
+ (WebCore::ContextMenuItem::ContextMenuItem):
+ (WebCore::ContextMenuItem::~ContextMenuItem):
+
+2011-03-11 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: resource load cancellation is reported to console as an error
+ https://bugs.webkit.org/show_bug.cgi?id=55764
+
+ - mark interruptionForPolicyChangeError as cancellation
+ - do not log resource cancelation as an error
+ - always push resource to front-end before console message, so front-end can use resource info while formatting message.
+
+ * inspector/InspectorConsoleAgent.cpp:
+ (WebCore::InspectorConsoleAgent::didFailLoading):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
+ (WebCore::InspectorInstrumentation::didFailLoadingImpl):
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::stopLoadingForPolicyChange):
+
+2011-03-10 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Get rid of has/add/removeStyleClass() methods on Element.prototype - Step 1
+ https://bugs.webkit.org/show_bug.cgi?id=56096
+
+ No new tests, as this is a refactoring.
+
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.EventListenerBreakpointsSidebarPane):
+ * inspector/front-end/DetailedHeapshotView.js:
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel):
+ (WebInspector.BaseStorageTreeElement):
+ (WebInspector.BaseStorageTreeElement.prototype.onattach):
+ (WebInspector.StorageCategoryTreeElement):
+ (WebInspector.FrameTreeElement):
+ (WebInspector.FrameResourceTreeElement):
+ (WebInspector.DatabaseTreeElement):
+ (WebInspector.DatabaseTableTreeElement):
+ (WebInspector.DOMStorageTreeElement):
+ (WebInspector.CookieTreeElement):
+ (WebInspector.ApplicationCacheTreeElement):
+ (WebInspector.ResourceRevisionTreeElement):
+ * inspector/front-end/utilities.js:
+ (Element.prototype.removeStyleClass):
+ (Element.prototype.addStyleClass):
+ (Element.prototype.hasStyleClass):
+
+2011-03-11 Brian Salomon <bsalomon@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Adds GrContext flush call to PlatformContextSkia destructor.
+Calls GrContext flush with int parameter instead of bool due to skia
+revision.
+
+ No new tests needed.
+
+ * platform/graphics/chromium/DrawingBufferChromium.cpp:
+ (WebCore::DrawingBuffer::publishToPlatformLayer):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::~PlatformContextSkia):
+ (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
+
+2011-03-10 Chris Guillory <chris.guillory@google.com>
+
+ Reviewed by James Robinson.
+
+ Fix for Coverity discovered NO_EFFECT (self-assign) defect.
+ https://bugs.webkit.org/show_bug.cgi?id=54143
+
+ * platform/graphics/gpu/TilingData.cpp:
+ (WebCore::TilingData::setMaxTextureSize):
+
+2011-03-10 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ The web colours palevioletred and mediumpurple are incorrect
+ https://bugs.webkit.org/show_bug.cgi?id=46658
+
+ Changed value for the palevioletred and mediumpurple colors to match
+ the css3 specification.
+
+ Test: fast/css/named-colors.html
+
+ * inspector/front-end/Color.js:
+ * platform/ColorData.gperf:
+
+2011-03-10 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Unreviewed build fix.
+
+ [WML] Fix build error
+ https://bugs.webkit.org/show_bug.cgi?id=56078
+
+ * wml/WMLInputElement.cpp:
+ (WebCore::WMLInputElement::defaultEventHandler):
+
+2011-03-10 Jeremy Moskovich <jeremy@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Fix navigation menus on a bunch of sites in WebKit.
+ https://bugs.webkit.org/show_bug.cgi?id=52535
+
+ WebKit doesn't support position:relative for several table elements and
+ overwrites the style internally when position:relative is encountered.
+ Unfortunately position:relative affects the choice of nodes returned by
+ offsetParent.
+
+ This CL adds a bit to RenderStyle to track whether position:relative was
+ overwritten. The value is then consulted in offsetParent which makes us
+ match FF/IE.
+
+ Tests: fast/block/positioning/offsetLeft-relative-iframe.html
+ fast/block/positioning/offsetLeft-relative-td.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::adjustRenderStyle):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::isOriginallyRelPositioned):
+ (WebCore::RenderObject::offsetParent):
+ * rendering/RenderObject.h:
+ * rendering/style/RenderStyle.h: Add a bit to track the original value of position:relative.
+ (WebCore::InheritedFlags::positionWasRelative):
+ (WebCore::InheritedFlags::setPositionWasRelative):
+ * rendering/style/StyleRareNonInheritedData.cpp:
+ (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
+ (WebCore::StyleRareNonInheritedData::operator==):
+ * rendering/style/StyleRareNonInheritedData.h:
+
+2011-03-10 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (r66428/r71892): Crash after assertion failure (!m_reachedTerminalState) in ResourceLoader::didCancel()
+ https://bugs.webkit.org/show_bug.cgi?id=51357
+
+ Previously, we would try to print from a callstack that didn't want a
+ nested event loop, leading to re-entrancy problems. In this patch, we
+ complete the print call asynchronously, giving us a clean stack on
+ which to run the nested event loop.
+
+ Test: printing/print-close-crash.html
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::DOMWindow):
+ (WebCore::DOMWindow::print):
+ (WebCore::DOMWindow::printTimerFired):
+ * page/DOMWindow.h:
+
+2011-03-11 Roland Steiner <rolandsteiner@chromium.org>
+
+ Reviewed by Ryosuke Niwa.
+
+ Bug 55570 - Remove dependency of dom/InputElement.cpp on html/ and wml/
+ https://bugs.webkit.org/show_bug.cgi?id=55570
+
+ Add a virtual function toInputElement() to Node that has a default
+ implementation of returning 0.
+ For HTMLInputElement and WMLInputElement (which derive from InputElement)
+ override this to return the object.
+ Change all calling sites of the old toInputElement to use the new member
+ function. This also allows us to save some casts.
+
+ No new tests. (refactoring)
+
+ * WebCore.exp.in:
+ * accessibility/AXObjectCache.cpp:
+ (WebCore::AXObjectCache::textMarkerDataForVisiblePosition):
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::isPasswordField):
+ (WebCore::AccessibilityRenderObject::isIndeterminate):
+ (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio):
+ (WebCore::AccessibilityRenderObject::isChecked):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::canShareStyleWithElement):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ * dom/CheckedRadioButtons.cpp:
+ (WebCore::CheckedRadioButtons::removeButton):
+ * dom/InputElement.cpp:
+ * dom/InputElement.h:
+ * dom/Node.cpp:
+ (WebCore::Node::toInputElement):
+ * dom/Node.h:
+ * html/HTMLInputElement.h:
+ (WebCore::HTMLInputElement::toInputElement):
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::inputElement):
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::isChecked):
+ (WebCore::RenderTheme::isIndeterminate):
+ * wml/WMLInputElement.h:
+ (WebCore::WMLInputElement::toInputElement):
+
+2011-03-10 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [EFL] New mediaControl css file for EFL
+ https://bugs.webkit.org/show_bug.cgi?id=55460
+
+ Add new mediaControl css file for html5 video UI.
+
+ * CMakeLists.txt:
+ * CMakeListsEfl.txt:
+ * css/mediaControlsEfl.css: Added.
+ (audio):
+ (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
+ (video:-webkit-full-page-media::-webkit-media-controls-panel):
+ (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
+ (audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
+ (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
+ (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
+ (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
+ (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
+ (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
+ (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
+ (audio::-webkit-media-controls-seek-back-button, video::-webkit-media-controls-seek-back-button):
+ (audio::-webkit-media-controls-seek-forward-button, video::-webkit-media-controls-seek-forward-button):
+ (audio::-webkit-media-controls-fullscreen-button, video::-webkit-media-controls-fullscreen-button):
+ (audio::-webkit-media-controls-rewind-button, video::-webkit-media-controls-rewind-button):
+ (audio::-webkit-media-controls-return-to-realtime-button, video::-webkit-media-controls-return-to-realtime-button):
+ (audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
+ (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button):
+ * platform/efl/RenderThemeEfl.cpp:
+ (WebCore::RenderThemeEfl::extraMediaControlsStyleSheet):
+
+2011-03-10 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ style.display affecting the initial selectedIndex value of a <select> when its multiple attribute is set programatically
+ https://bugs.webkit.org/show_bug.cgi?id=53860
+
+ Preserve selection when changing between multi-select and single-select
+ for <select> boxes even if it has not yet been rendered.
+
+ Test: fast/dom/HTMLSelectElement/change-multiple-preserve-selection.html
+
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::setMultiple):
+
+2011-03-10 Ojan Vafai <ojan@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ update comment to reference new DOM Core spec
+ https://bugs.webkit.org/show_bug.cgi?id=56079
+
+ I'm excising all instances of WRONG_DOCUMENT_ERR from WebKit.
+ This is the only one that's actually specified to fire
+ in the latest DOM Core spec.
+
+ * dom/DOMImplementation.cpp:
+ (WebCore::DOMImplementation::createDocument):
+
+2011-03-10 Rik Cabanier <cabanier@gmail.com>
+
+ Reviewed by Tony Gentilcore.
+
+ Fix that allows fixed length values to be floating point
+ https://bugs.webkit.org/show_bug.cgi?id=52699
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::convertToLength):
+ (WebCore::convertToIntLength):
+ (WebCore::convertToFloatLength):
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::createTransformOperations):
+ * platform/Length.h:
+ (WebCore::Length::Length):
+ (WebCore::Length::operator==):
+ (WebCore::Length::operator!=):
+ (WebCore::Length::rawValue):
+ (WebCore::Length::type):
+ (WebCore::Length::quirk):
+ (WebCore::Length::setValue):
+ (WebCore::Length::calcFloatValue):
+ (WebCore::Length::isZero):
+ (WebCore::Length::blend):
+ (WebCore::Length::getIntValue):
+ (WebCore::Length::getFloatValue):
+ * rendering/AutoTableLayout.cpp:
+ (WebCore::AutoTableLayout::recalcColumn):
+ (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
+ * rendering/FixedTableLayout.cpp:
+ (WebCore::FixedTableLayout::calcWidthArray):
+
+2011-03-10 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80800.
+ http://trac.webkit.org/changeset/80800
+ https://bugs.webkit.org/show_bug.cgi?id=56163
+
+ Caused hundreds of tests to crash on Windows 7 (Requested by
+ rniwa on #webkit).
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::mouseMoved):
+ (WebCore::EventHandler::updateMouseEventTargetNode):
+ * page/FocusController.cpp:
+ (WebCore::FocusController::setActive):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::FrameView):
+ (WebCore::FrameView::~FrameView):
+ * page/FrameView.h:
+ * page/Page.cpp:
+ * page/Page.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollView.h:
+ * rendering/RenderDataGrid.cpp:
+ (WebCore::RenderDataGrid::RenderDataGrid):
+ (WebCore::RenderDataGrid::~RenderDataGrid):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::RenderLayer):
+ (WebCore::RenderLayer::~RenderLayer):
+ * rendering/RenderLayer.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::RenderListBox):
+ (WebCore::RenderListBox::~RenderListBox):
+
+2011-03-10 Alice Boxhall <aboxhall@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ NULL pointer crash when using :empty and :first-line pseudoclass selectors together
+ https://bugs.webkit.org/show_bug.cgi?id=53316
+
+ :empty is calculated for each element during parsing, but then not
+ recalculated after any child elements are attached. Force style
+ re-calculation on elements which have :empty in their style when
+ their children are changed.
+
+ Test: fast/css/empty-first-line-crash.html
+
+ * dom/Element.cpp:
+ (WebCore::checkForEmptyStyleChange): Pull out empty style checking
+ logic from checkForSiblingStyleChanges().
+ (WebCore::checkForSiblingStyleChanges): Use new checkForEmptyStyleChanges()
+ method.
+ (WebCore::Element::childrenChanged): Call checkForEmptyStyleChanges() when
+ called with changedByParser = true.
+
+2011-03-10 Emil A Eklund <eae@chromium.org>
+
+ Unreviewed build fix.
+
+ Fix Leopard Release build broken by r80797.
+
+ * html/CollectionCache.h:
+
+2011-03-10 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for <rdar://problem/8944558> Overlay scrollers in overflow areas need to
+ send notifications appropriate times (showing up, resizing)
+ -and corresponding-
+ https://bugs.webkit.org/show_bug.cgi?id=56067
+
+ The general strategy here is to add a HashSet of ScrollableAreas to the page that
+ can be accessed when necessary to send notifications to all ScrollableAreas.
+
+ Find layers for relevant node and if the layers are in the Page's ScrollableArea
+ set, then send the relevant notification.
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::mouseMoved):
+ (WebCore::EventHandler::updateMouseEventTargetNode):
+
+ When the page is set active or not active, iterate through the Page's
+ ScrollableAreas to send hide/show notifications.
+ * page/FocusController.cpp:
+ (WebCore::FocusController::setActive):
+
+ When a FrameView is created, add it to the ScrollableArea set. When it's
+ destroyed, remove it.
+ * page/FrameView.cpp:
+ (WebCore::FrameView::FrameView):
+ (WebCore::FrameView::~FrameView):
+
+ Iterate through the Page's ScrollableAreas to send the paint notification.
+ (WebCore::FrameView::notifyPageThatContentAreaWillPaint):
+ * page/FrameView.h:
+
+ Add the new ScrollableArea set.
+ * page/Page.cpp:
+ (WebCore::Page::addScrollableArea):
+ (WebCore::Page::removeScrollableArea):
+ (WebCore::Page::pageContainsScrollableArea):
+ * page/Page.h:
+ (WebCore::Page::scrollableAreaSet):
+
+ notifyPageThatContentAreaWillPaint() is a dummy function implemented in FrameView.
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::notifyPageThatContentAreaWillPaint):
+
+ Call notifyPageThatContentAreaWillPaint() instead of calling
+ contentAreaWillPaint() just for the ScrollView.
+ (WebCore::ScrollView::paint):
+ * platform/ScrollView.h:
+
+ Add/remove ScrollableAreas to the set.
+ * rendering/RenderDataGrid.cpp:
+ (WebCore::RenderDataGrid::RenderDataGrid):
+ (WebCore::RenderDataGrid::~RenderDataGrid):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::RenderListBox):
+ (WebCore::RenderListBox::~RenderListBox):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::RenderLayer):
+ (WebCore::RenderLayer::~RenderLayer):
+
+ Should have implemented this ScrollableArea-interface function a while ago.
+ (WebCore::RenderLayer::currentMousePosition):
+ * rendering/RenderLayer.h:
+
+2011-03-10 takano takumi <takano@apple.com>
+
+ Reviewed by David Hyatt.
+
+ Crash in RenderCombineText::combineText when running fast/text/international/text-combine-parser-test.html on Windows with full page heap enabled
+ https://bugs.webkit.org/show_bug.cgi?id=55069
+
+ No new tests. If the test above runs without crash, the fix should be okay.
+
+ * dom/Node.cpp:
+ (WebCore::Node::diff):
+ - Changed to return Detach when textCombine style was changed.
+ * rendering/RenderCombineText.cpp:
+ (WebCore::RenderCombineText::styleDidChange):
+ (WebCore::RenderCombineText::setTextInternal):
+ (WebCore::RenderCombineText::width):
+ (WebCore::RenderCombineText::adjustTextOrigin):
+ (WebCore::RenderCombineText::charactersToRender):
+ (WebCore::RenderCombineText::combineText):
+ - Added assertions to ensure the passed object is RenderCombineText.
+ * rendering/RenderCombineText.h:
+ (WebCore::RenderCombineText::isCombineText):
+ - Added to distinguish plain RenderText and RenderCombineText.
+ (WebCore::toRenderCombineText):
+ - Added assertions to ensure the passed object is RenderCombineText.
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::isCombineText):
+ - Added to distinguish plain RenderText and RenderCombineText.
+
+2011-03-10 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Collection cache not reset when moving base node between documents
+ https://bugs.webkit.org/show_bug.cgi?id=55446
+
+ Fix bug where HTMLCollection::resetCollectionInfo does not reset the
+ cache when the base node is moved to a different document by making sure
+ that the DOMVersion is updated and that it's unique across documents.
+
+ Tests: fast/dom/HTMLFormElement/invalid-form-field.html
+ fast/dom/HTMLFormElement/move-option-between-documents.html
+ fast/dom/collection-nameditem-move-between-documents.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ * dom/Document.h:
+ (WebCore::Document::incDOMTreeVersion):
+ (WebCore::Document::domTreeVersion):
+ * dom/Node.cpp:
+ (WebCore::Node::setDocumentRecursively):
+ * html/FormAssociatedElement.cpp:
+ (WebCore::FormAssociatedElement::resetFormOwner):
+ * html/HTMLCollection.cpp:
+ (WebCore::HTMLCollection::resetCollectionInfo):
+ * xml/XPathResult.h:
+
+2011-03-10 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Unreviewed build fix.
+
+ [EFL] Fix build break when CROSS_PLATFORM_CONTEXT_MENUS is disabled.
+ https://bugs.webkit.org/show_bug.cgi?id=56005
+
+ There are build breaks when CROSS_PLATFORM_CONTEXT_MENUS is disabled.
+
+ * platform/efl/ContextMenuEfl.cpp:
+ (WebCore::ContextMenu::ContextMenu):
+ * platform/efl/ContextMenuItemEfl.cpp:
+
+2011-03-10 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ startOfBlock and endOfBlock may return a position inside hr
+ https://bugs.webkit.org/show_bug.cgi?id=56025
+
+ Replaced calls to enclosingBlockFlowElement in startOfBlock and endOfBlock by
+ calls to enclosingBlock. Added EditingBoundaryCrossingRule to the argument lists
+ of startOfBlock, endOfBlock, and enclosingBlock. Also replaced the last boolean
+ argument variable of enclosingNodeOfType by EditingBoundaryCrossingRule.
+
+ Also replaced calls to enclosingBlockFlowElement in inSameBlock by calls to
+ enclosingBlock to be consitent with startOfBlock and endOfBlock.
+
+ This patch also replaced calls to deprecatedNode in startOfBlock, endOfBlock,
+ and inSameBlock by calls to containerNode because the enclosing block of a position
+ should never be before or after the position.
+
+ No tests are added because this change only affects WebCore internally.
+
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::initializePositionData): Calls enclosingNodeOfType.
+ Pass CanCrossEditingBoundary instead of false.
+ * editing/htmlediting.cpp:
+ (WebCore::unsplittableElementForPosition): Ditto.
+ (WebCore::enclosingBlock): Takes EditingBoundaryCrossingRule and passes it to
+ enclosingNodeOfType.
+ (WebCore::enclosingNodeOfType): Takes EditingBoundaryCrossingRule instead of boolean.
+ Fixed a bug that it stops walking the tree when it reached the root editable node
+ even when the editing boundary crossing rule is CanCrossEditingBoundary.
+ * editing/htmlediting.h: Prototype changes.
+ * editing/visible_units.cpp:
+ (WebCore::startOfBlock): Calls enclosingBlock instead of enclosingBlockFlowElement.
+ Also added an early exit when there's no enclosing block.
+ (WebCore::endOfBlock): Ditto. The early exist in this case prevents crash in
+ lastPositionInNode.
+ (WebCore::inSameBlock): Calls enclosingBlock instead of enclosingBlockFlowElement.
+ (WebCore::isStartOfBlock): Calls startOfBlock with CanCrossEditingBoundary because
+ we don't care where the start of block is when we're comparing against the given position.
+ (WebCore::isEndOfBlock): Ditto.
+ * editing/visible_units.h:
+
+2011-03-10 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Backspace deletes all non-BMP symbols at once, and then some
+ https://bugs.webkit.org/show_bug.cgi?id=55971
+ <rdar://problem/8725312>
+
+ Test: platform/mac/editing/input/insert-delete-smp-symbol.html
+
+ * rendering/RenderText.cpp:
+ (WebCore::isMark): This matches what Core Foundation does for all characters that I tested.
+ (WebCore::RenderText::previousOffsetForBackwardDeletion): Changed to use isMark().
+
+2011-03-10 Chris Evans <cevans@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Error in StyleElement::process with large nodesets
+ https://bugs.webkit.org/show_bug.cgi?id=56150
+
+ Test: none due to excessive runtime and CRASH() vs. real crash.
+
+ * dom/StyleElement.cpp:
+ (WebCore::StyleElement::process): Handle large node sets better.
+
+2011-03-10 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47151
+
+ Percentage heights should skip anonymous containing blocks when computing the used value.
+
+ Added fast/block/basic/percentage-height-inside-anonymous-block.html
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computePercentageLogicalHeight):
+
+2011-03-10 Nat Duca <nduca@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Make updateAndDrawLayers argumentless.
+ https://bugs.webkit.org/show_bug.cgi?id=55985
+
+ Made the TilePainters and viewport parameters for
+ LayerRendererChromium member variables instead of arguments on
+ updateAndDrawLayers. In a future change, this will allows us to
+ draw the layer tree without the WebView's assistance.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::create):
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::verticalScrollbarRect):
+ (WebCore::LayerRendererChromium::horizontalScrollbarRect):
+ (WebCore::LayerRendererChromium::invalidateRootLayerRect):
+ (WebCore::LayerRendererChromium::updateRootLayerContents):
+ (WebCore::LayerRendererChromium::updateRootLayerScrollbars):
+ (WebCore::LayerRendererChromium::drawRootLayer):
+ (WebCore::LayerRendererChromium::setViewport):
+ (WebCore::LayerRendererChromium::updateAndDrawLayers):
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::setRootLayer):
+ (WebCore::LayerRendererChromium::getFramebufferPixels):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::viewportSize):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::draw):
+
+2011-01-25 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Implement spin buttons for GTK+ 2.x
+ https://bugs.webkit.org/show_bug.cgi?id=53098
+
+ Implement spin buttons for GTK+ 2.x. This allows proper render and functioning
+ for input type=number. The implementation is based on the one in gtkspinbutton.c
+ from the GTK+ sources.
+
+ * platform/gtk/RenderThemeGtk.h: Added new members and getters.
+ * platform/gtk/RenderThemeGtk2.cpp:
+ (WebCore::RenderThemeGtk::platformInit): Initialize spin button widget.
+ (WebCore::RenderThemeGtk::adjustRepaintRect): We need to draw outside the
+ spin button area to have proper rendering. There doesn't seem to be any other
+ clean way of having spin buttons that are the size of the text input frame.
+ (WebCore::RenderThemeGtk::adjustInnerSpinButtonStyle): Added implementation.
+ (WebCore::RenderThemeGtk::paintInnerSpinButton): Ditto.
+ (WebCore::RenderThemeGtk::gtkSpinButton): Added.
+
+2011-03-10 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Ryosuke Niwa.
+
+ InsertUnorderedList over a non-editable region and multiple lines enters an infinite loop
+ https://bugs.webkit.org/show_bug.cgi?id=53409
+
+ Fixing broken handling of mixed-editability content for InsertListCommand. Previously, if the selection
+ spanned non-contenteditable regions, it would get stuck endlessly iterating the same region as the algorithm
+ didn't skip the editable boundary.
+
+ Test: editing/execCommand/insert-list-with-noneditable-content.html
+
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::cleanupAfterDeletion): Changed signature to take the destination
+ position for the active editing command. Without this, there are cases when the destination happens
+ to be a placeholder, and we remove it.
+ (WebCore::CompositeEditCommand::moveParagraphs):
+ * editing/CompositeEditCommand.h:
+ * editing/InsertListCommand.cpp:
+ (WebCore::InsertListCommand::doApply): Added logic to the paragraph iteration loop to handle pockets of
+ non-editable content in an editable context. Previously, this could cause an infinite loop.
+ * editing/visible_units.cpp:
+ (WebCore::startOfParagraph): Added a mode of operation where we'll jump across non-editable
+ content in the same paragraph to reach the actual editable paragraph start.
+ (WebCore::endOfParagraph): Ditto.
+ (WebCore::startOfNextParagraph): Now uses the aforementioned non-editable content skipping mode of
+ endOfParagraph.
+
+2011-03-10 Berend-Jan Wever <skylined@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Calling focus() on an area element not in a document should not cause a NULL ptr crash
+ https://bugs.webkit.org/show_bug.cgi?id=54877
+
+ Test: fast/dom/HTMLAreaElement/area-islink-focus-null-ptr-crash.html
+
+ * dom/Element.cpp:
+ (WebCore::Element::focus): Check element is in the document before allowing focus
+ * html/HTMLAreaElement.cpp:
+ (WebCore::HTMLAreaElement::imageElement): Check element has a parent before checking if its parent is a map
+
+2011-03-10 Xiyuan Xia <xiyuan@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [Chromium] Fix default single selection select's popup background on chromium/linux
+ https://bugs.webkit.org/show_bug.cgi?id=56023
+
+ Test: fast/html/select-dropdown-consistent-background-color.html
+
+ * css/themeChromiumLinux.css:
+
+2011-03-10 Kris Jordan <krisjordan@gmail.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Improve default Accept header to give preference to HTML over XML.
+ https://bugs.webkit.org/show_bug.cgi?id=27267
+
+ * loader/FrameLoader.cpp:Changed default accept header to match
+ FireFox' as per bug 27267.
+
+2011-03-10 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] [Webkit2] There are no scrollbars visible in the MiniBrowser
+ https://bugs.webkit.org/show_bug.cgi?id=56125
+
+ No new tests. This functionality will be tested once we have TestRunner
+ implementation for WebKit2 with pixel dumping support.
+
+ * GNUmakefile.am: Add a new define with tracks whether or not we are using
+ our specialized GTK+ ScrollView.
+ * platform/ScrollView.cpp: Only use the GTK+-specific ScrollView if we are compiling
+ WebKit1.
+ (WebCore::ScrollView::wheelEvent):
+ * platform/gtk/ScrollViewGtk.cpp: Ditto.
+
+2011-03-10 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Assertion fails by validating a form twice very quickly
+ https://bugs.webkit.org/show_bug.cgi?id=56069
+
+ If the interactive validation is invoked when a form control is in
+ needsLayout() state, an assertion in isFocusable() fails. To avoid it,
+ Add a call to updateLayoutIgnorePendingStylesheets() before isFocusable().
+
+ Test: fast/forms/interactive-validation-assertion-by-validate-twice.html
+
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::validateInteractively):
+ Calls updateLayoutIgnorePendingStylesheets().
+
+2011-03-10 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47143
+
+ Static distance computation is wrong when an ancestor is also positioned. We need to go up the container()
+ chain (after initially starting with the parent()) when doing this computation, so that we properly skip
+ intermediate boxes between two positioned blocks.
+
+ Added fast/block/positioning/static-distance-with-positioned-ancestor.html.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::computeInlineStaticDistance):
+ (WebCore::computeBlockStaticDistance):
+
+2011-03-10 Adrienne Walker <enne@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Make tiled compositor data structure more efficient.
+ https://bugs.webkit.org/show_bug.cgi?id=54133
+
+ Previously, the compositor had a sparse 2D array of tiles for the
+ whole page, most of which were null. The tiles were implicitly
+ located based on their position in the array. This was inefficient
+ when the page grew (e.g. infinite scrolling) and caused some bugs
+ (e.g. width * height > MAX_INT). This change modifies tiles to have
+ explicit positions so they can be stored in a hash map.
+
+ Tests: LayoutTests/compositing/
+
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::reset):
+ (WebCore::LayerTilerChromium::createTile):
+ (WebCore::LayerTilerChromium::invalidateTiles):
+ (WebCore::LayerTilerChromium::contentRectToTileIndices):
+ (WebCore::LayerTilerChromium::tileAt):
+ (WebCore::LayerTilerChromium::tileContentRect):
+ (WebCore::LayerTilerChromium::tileLayerRect):
+ (WebCore::LayerTilerChromium::invalidateRect):
+ (WebCore::LayerTilerChromium::invalidateEntireLayer):
+ (WebCore::LayerTilerChromium::update):
+ (WebCore::LayerTilerChromium::updateFromPixels):
+ (WebCore::LayerTilerChromium::draw):
+ (WebCore::LayerTilerChromium::growLayerToContain):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ (WebCore::LayerTilerChromium::Tile::Tile):
+ (WebCore::LayerTilerChromium::Tile::i):
+ (WebCore::LayerTilerChromium::Tile::j):
+ (WebCore::LayerTilerChromium::Tile::moveTo):
+ (WebCore::LayerTilerChromium::TileMapKeyTraits::emptyValue):
+ (WebCore::LayerTilerChromium::TileMapKeyTraits::constructDeletedValue):
+ (WebCore::LayerTilerChromium::TileMapKeyTraits::isDeletedValue):
+
+2011-03-10 Ryosuke Niwa <rniwa@webkit.org>
+
+ Unreviewed build fix for r80752; Negated the boolean logic.
+
+ * editing/VisiblePosition.cpp:
+ (WebCore::VisiblePosition::next):
+ (WebCore::VisiblePosition::previous):
+
+2011-03-10 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Make the same change to xheight on Windows for CG.
+
+ * platform/graphics/win/SimpleFontDataCGWin.cpp:
+ (WebCore::SimpleFontData::platformInit):
+
+2011-03-10 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47147
+
+ Fix for repaint issues when the root element is a table and needs to paint a background that
+ covers the entire canvas. Remove paintRootBoxDecorations and replace with paintRootBoxFillLayers,
+ so that it can be called only for fill layer painting. Make tables and normal boxes both
+ call this new method. Fix the dirty check at the start of RenderTable paint to not happen if
+ the table is the root of the document (this same check exists in RenderBlock painting already).
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintRootBoxFillLayers):
+ (WebCore::RenderBox::paintBoxDecorations):
+ (WebCore::RenderBox::paintBoxDecorationsWithSize):
+ * rendering/RenderBox.h:
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::calculateCompositedBounds):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::paint):
+ (WebCore::RenderTable::paintBoxDecorations):
+
+2011-03-10 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80749.
+ http://trac.webkit.org/changeset/80749
+ https://bugs.webkit.org/show_bug.cgi?id=56143
+
+ "Caused at least 3 media tests to be flaky" (Requested by
+ tonyg-cr on #webkit).
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::canTakeNextToken):
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ * html/parser/HTMLParserScheduler.cpp:
+ * html/parser/HTMLParserScheduler.h:
+ (WebCore::HTMLParserScheduler::checkForYieldBeforeToken):
+ * page/FrameView.h:
+
+2011-03-10 Sam Weinig <sam@webkit.org>
+
+ Reviewed by David Hyatt.
+
+ Regression: Content not drawn when scrolling horizontally in an RTL page
+ https://bugs.webkit.org/show_bug.cgi?id=55077
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::overhangAmount):
+ (WebCore::ScrollView::calculateOverhangAreasForPainting):
+ Take the scroll origin into account when calculating overhang.
+
+ * platform/ScrollView.h:
+ * rendering/RenderLayer.h:
+ * platform/ScrollableArea.h:
+ (WebCore::ScrollableArea::scrollOrigin):
+ Move identical scroll origin member from ScrollView and RenderLayer
+ to shared base ScrollableArea. This is also needed so that the animator
+ can access it.
+
+ * platform/mac/ScrollAnimatorMac.mm:
+ (WebCore::ScrollAnimatorMac::pinnedInDirection):
+ (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
+ (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
+ Account for a scroll origin when doing calculating scroll offsets.
+
+2011-03-09 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Plumb through settings for accelerated drawing for canvas
+ https://bugs.webkit.org/show_bug.cgi?id=56039
+
+ No new tests. Doesn't affect behavior, just adding a switch to toggle canvas backends.
+
+ * WebCore.exp.in:
+ * html/HTMLCanvasElement.cpp:
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ * page/Settings.cpp:
+ * page/Settings.h:
+
+2011-03-10 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47157
+
+ CSS2.1 test suite failures because the ex unit is broken with the Ahem font.
+
+ Remove the code that tries to also include the maxX of the glyph bounds for the
+ 'x' glyph, since it just causes the x-height to be way too large in cases where the 'x' glyph extends
+ below the baseline.
+
+ Remove the Apple Symbol hack for ex units, since the person who added that was confused by another
+ issue, namely that CGFontGetXHeight wasn't being properly multiplied by the pointSize. That's why
+ the value was too small. Patched the code to just multiply by pointSize and took out the hack.
+
+ Fix causes many tests in the css2.1 directory to progress, so no new tests required. Many other
+ layout tests change because the xHeight for Lucida Grande gets smaller by a little bit, and radio
+ buttons use ex horizontal margins by default.
+
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::SimpleFontData::platformInit):
+
+2011-03-10 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ VisiblePosition's next and previous should take an enum instead of a boolean
+ https://bugs.webkit.org/show_bug.cgi?id=56135
+
+ Changed the argument type of VisiblePosition::next and VisiblePosition::previous
+ from bool to EditingBoundaryCrossingRule. Also got rid of StayInEditableContent enum
+ in VisibleSelection and replaced it by EditingBoundaryCrossingRule because the enum
+ was only used in VisiblePosition::isAll and subsequently in SelectionController::isAll
+ to call VisiblePosition::next and VisiblePosition::previous.
+
+ * WebCore.exp.in:
+ * dom/Position.cpp:
+ (WebCore::Position::trailingWhitespacePosition):
+ * editing/ApplyBlockElementCommand.cpp:
+ (WebCore::ApplyBlockElementCommand::doApply):
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
+ * editing/InsertListCommand.cpp:
+ (WebCore::InsertListCommand::doApply):
+ (WebCore::InsertListCommand::listifyParagraph):
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::shouldMergeStart):
+ (WebCore::ReplaceSelectionCommand::shouldMergeEnd):
+ (WebCore::ReplaceSelectionCommand::doApply):
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::modifyExtendingRight):
+ (WebCore::SelectionController::modifyExtendingForward):
+ (WebCore::SelectionController::modifyMovingForward):
+ (WebCore::SelectionController::modifyExtendingLeft):
+ (WebCore::SelectionController::modifyExtendingBackward):
+ (WebCore::SelectionController::modifyMovingBackward):
+ * editing/SelectionController.h:
+ (WebCore::SelectionController::isAll):
+ * editing/TypingCommand.cpp:
+ (WebCore::TypingCommand::deleteKeyPressed):
+ (WebCore::TypingCommand::forwardDeleteKeyPressed):
+ * editing/VisiblePosition.cpp:
+ (WebCore::VisiblePosition::next):
+ (WebCore::VisiblePosition::previous):
+ * editing/VisiblePosition.h:
+ * editing/VisibleSelection.cpp:
+ (WebCore::VisibleSelection::isAll):
+ (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):
+ * editing/VisibleSelection.h:
+ * editing/htmlediting.cpp:
+ (WebCore::selectionForParagraphIteration):
+ * editing/visible_units.cpp:
+ (WebCore::startOfNextParagraph):
+
+2011-03-10 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Tony Gentilcore.
+
+ Remove CRASH() calls added to track down bug 53045
+ https://bugs.webkit.org/show_bug.cgi?id=56137
+
+ Remove CRASH() calls added by r76575 and re-label ones added by r80155
+ and r80269 as being associated with bug 56124 (which may still be
+ happening).
+
+ * css/CSSImageValue.cpp:
+ (WebCore::CSSImageValue::cachedImage):
+ * css/CSSSelector.h:
+ * css/CSSSelectorList.cpp:
+ (WebCore::CSSSelectorList::deleteSelectors):
+ * loader/cache/CachedResource.cpp:
+ (WebCore::CachedResource::CachedResource):
+ (WebCore::CachedResource::~CachedResource):
+ * loader/cache/CachedResource.h:
+
+2011-03-10 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Let the parser yield for layout before running scripts
+ https://bugs.webkit.org/show_bug.cgi?id=54355
+
+ Prior to this patch, the parser would yield to perform a layout/paint before running a
+ script only if the script or a stylesheet blocking the script is not loaded yet. Since we
+ don't preload scan into the body while parsing the head, typically we'll block on a script
+ early in the body that causes us to yield to do the first paint within a reasonable time.
+
+ However, I'm planning to change the PreloadScanner to scan into the body from the head.
+ That significantly improves overall load time, but would hurt first paint time because
+ fewer scripts would be blocked during parsing and thus wouldn't yield.
+
+ This change causes us to yield before running scripts if we haven't painted yet (regardless
+ of whether or not the script is loaded). In addition to allowing the above mentioned
+ PreloadScanner change to be implemented without regressing first paint time, this also
+ improves first paint time by itself.
+
+ I tested Alexa's top 45 websites using Web Page Replay to control the content and simulate
+ bandwidth. This patch improved average first paint time by 1% over an unlimited connection,
+ 6% over a 1Mbps connection and 11% over a 5Mbps connection. There was no statistically
+ signifcant change in page load time.
+
+ Within the pages tested, 33 had no statistically significant change in time to first paint,
+ 12 improved, and none regressed. Of the improved, some of the standouts from the 1Mbps set
+ are: 20% on youtube, 37% on wiki, 27% on ebay, 13% on cnn, 16% on espn, 74% on sohu.
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::canTakeNextToken): This is the new yield point.
+ (WebCore::HTMLDocumentParser::pumpTokenizer): Remove ASSERT that we are not paused. isPaused
+ means that we are waiting for a script. Bug 54574 changed pumpTokenizer() so that it does
+ the right thing whether we are just before a token or waiting for a script. Now that we may
+ yield before a token or before a script, this may be called while paused.
+ * html/parser/HTMLParserScheduler.cpp:
+ (WebCore::HTMLParserScheduler::checkForYieldBeforeScript): Added.
+ * page/FrameView.h:
+ (WebCore::FrameView::hasEverPainted): Added.
+
+2011-03-10 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ Some Gtk code uses defined(USE_FREETYPE) instead of just USE(FREETYPE)
+ https://bugs.webkit.org/show_bug.cgi?id=55996
+
+ Use the macre USE instead of defined fro WTF_USE_FREETYPE and
+ WTF_USE_PANGO.
+
+ * GNUmakefile.am:
+ * platform/graphics/cairo/OwnPtrCairo.cpp:
+ * platform/graphics/cairo/OwnPtrCairo.h:
+ * platform/graphics/cairo/RefPtrCairo.cpp:
+ * platform/graphics/cairo/RefPtrCairo.h:
+ * platform/graphics/gtk/FontGtk.cpp:
+ (WebCore::setPangoAttributes):
+ (WebCore::Font::drawComplexText):
+ (WebCore::Font::floatWidthForComplexText):
+ (WebCore::Font::offsetForPositionForComplexText):
+ (WebCore::Font::selectionRectForComplexText):
+
+2011-03-10 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Rolled back in 80277 and 80280 with event handler layout test failures fixed.
+ https://bugs.webkit.org/show_bug.cgi?id=55653
+
+ The failures were caused by a last minute typo: assigning to currentEvent
+ instead of m_currentEvent.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDOMGlobalObject.cpp:
+ * bindings/js/JSDOMGlobalObject.h:
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowCustom.h:
+ * bindings/js/JSWorkerContextBase.cpp:
+
+2011-03-10 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=56129, vertical text broken on Lion and Leopard.
+
+ Add Snow Leopard ifdefs for the scaling by point size and then the division by unitsPerEm to the
+ translationsTransform applied to the results from CTFontGetVerticalTranslationsForGlyphs, since
+ this is done already on Lion and Leopard.
+
+ * platform/graphics/mac/FontMac.mm:
+ (WebCore::showGlyphsWithAdvances):
+
+2011-03-10 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80701.
+ http://trac.webkit.org/changeset/80701
+ https://bugs.webkit.org/show_bug.cgi?id=56126
+
+ fast/dom/Geolocation/window-close-crash.html fails on Snow
+ Leopard release builds (Requested by mihaip on #webkit).
+
+ * page/DOMWindow.cpp:
+ * page/DOMWindow.h:
+ * page/Frame.cpp:
+ (WebCore::Frame::pageDestroyed):
+ (WebCore::Frame::transferChildFrameToNewDocument):
+ * page/Geolocation.cpp:
+ (WebCore::Geolocation::~Geolocation):
+ (WebCore::Geolocation::disconnectFrame):
+ (WebCore::Geolocation::lastPosition):
+ (WebCore::Geolocation::requestPermission):
+ (WebCore::Geolocation::startUpdating):
+ (WebCore::Geolocation::stopUpdating):
+ * page/Geolocation.h:
+ * page/GeolocationController.cpp:
+ (WebCore::GeolocationController::~GeolocationController):
+ * page/Navigator.cpp:
+ * page/Navigator.h:
+ * platform/mock/GeolocationClientMock.cpp:
+ * platform/mock/GeolocationClientMock.h:
+
+2011-03-10 Pratik Solanki <psolanki@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ ASSERT_NOT_REACHED triggered in WebCore::mapHTTPPipeliningPriorityToResourceLoadPriority
+ https://bugs.webkit.org/show_bug.cgi?id=56075
+
+ Map priority value 3, which means no priority, to ResourceLoadPriorityUnresolved.
+
+ * platform/network/cf/ResourceRequestCFNet.h:
+ (WebCore::mapHTTPPipeliningPriorityToResourceLoadPriority):
+ (WebCore::mapResourceLoadPriorityToHTTPPipeliningPriority):
+
+2011-03-10 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Text editor] Substitute live-edit mode activation by double-click
+ https://bugs.webkit.org/show_bug.cgi?id=56084
+
+ Also fixed a regression: console was not opening/closing on ESC key press because tabIndex="0" attribute was preserved for a readOnly viewer.
+
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame):
+ (WebInspector.SourceFrame.prototype._startEditing):
+ (WebInspector.SourceFrame.prototype._registerShortcuts):
+ (WebInspector.SourceFrame.prototype._handleKeyDown):
+ (WebInspector.SourceFrame.prototype._handleSave):
+ (WebInspector.SourceFrame.prototype._handleRevertEditing):
+ (WebInspector.SourceFrame.prototype._doubleClick):
+ * inspector/front-end/TextEditorModel.js:
+ (WebInspector.TextEditorModel.prototype.get text):
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextViewer.prototype.get readOnly):
+ (WebInspector.TextEditorMainPanel):
+ (WebInspector.TextEditorMainPanel.prototype.set readOnly):
+ (WebInspector.TextEditorMainPanel.prototype.get readOnly):
+
+2011-03-10 Greg Simon <gregsimon@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Need new graphic icon for garbage collect button.
+ https://bugs.webkit.org/show_bug.cgi?id=55794
+
+ No new tests: gc tests are flaky due to non-determinisic
+ behavior of collection APIs (more notes in bug)
+
+ * English.lproj/localizedStrings.js:
+ * WebCore.gypi:
+ * bindings/js/ScriptProfiler.cpp:
+ (WebCore::ScriptProfiler::collectGarbage):
+ * bindings/js/ScriptProfiler.h:
+ * bindings/v8/ScriptProfiler.cpp:
+ (WebCore::ScriptProfiler::collectGarbage):
+ * bindings/v8/ScriptProfiler.h:
+ * inspector/Inspector.idl:
+ * inspector/InspectorProfilerAgent.cpp:
+ (WebCore::InspectorProfilerAgent::collectGarbage):
+ * inspector/InspectorProfilerAgent.h:
+ * inspector/front-end/Images/garbageCollectButtonGlyph.png: Added.
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel.prototype.get statusBarItems):
+ (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
+ (WebInspector.TimelinePanel.prototype._garbageCollectButtonClicked):
+ * inspector/front-end/inspector.css:
+ (.garbage-collect-status-bar-item .glyph):
+
+2011-03-10 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: better names for HAR export commands
+ https://bugs.webkit.org/show_bug.cgi?id=56097
+
+ Rename Export to HAR to Copy entry/network log as HAR
+ Expose Copy as HAR unconditionally, remove related settings entry.
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype._contextMenu):
+ * inspector/front-end/Settings.js:
+
+2011-03-10 Qi Zhang <qi.2.zhang@nokia.com>
+
+ Reviewed by Laszlo Gombos.
+
+ [Qt] Mobile Devices should include Model and Firmware Version in Webkit Generated User Agent String
+ https://bugs.webkit.org/show_bug.cgi?id=48636
+
+ Fix a typo in features.pri that turns on this feature on mobile
+ devices by default.
+
+ * features.pri:
+
+2011-03-10 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Invalid expected parameter list in CSSAgent.setSelectorText() callback (CSSStyleModel.js)
+ https://bugs.webkit.org/show_bug.cgi?id=56092
+
+ * inspector/front-end/CSSStyleModel.js:
+ (WebInspector.CSSStyleModel.prototype.setRuleSelector):
+
+2011-03-10 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed: rolling out r80478 and its follow ups for breaking
+ inspector and engadget.com.
+ https://bugs.webkit.org/show_bug.cgi?id=49401
+
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::performTask):
+ (WebCore::Document::postTask):
+ * dom/Document.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::setDefersLoading):
+ * manual-tests/database-callback-deferred.html: Removed.
+ * page/PageGroupLoadDeferrer.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
+ (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
+
+2011-03-10 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Tiled backing store's delegated scroll request uses incorrect convention
+ https://bugs.webkit.org/show_bug.cgi?id=56011
+
+ Use a point instead of delta, when relaying the scroll request from
+ ScrollView::setScrollPosition.
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyChromeClient::delegatedScrollRequested):
+ * page/Chrome.cpp:
+ (WebCore::Chrome::delegatedScrollRequested):
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ * platform/HostWindow.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setScrollPosition):
+
+2011-03-10 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: brush up DOM agent API.
+ https://bugs.webkit.org/show_bug.cgi?id=56093
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::childNodes):
+ (WebCore::InspectorDOMAgent::setNodeName):
+ (WebCore::InspectorDOMAgent::outerHTML):
+ (WebCore::InspectorDOMAgent::setNodeValue):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMNode):
+ (WebInspector.DOMNode.prototype.hasAttributes):
+ (WebInspector.DOMNode.prototype.nodeType):
+ (WebInspector.DOMNode.prototype.nodeName):
+ (WebInspector.DOMNode.prototype.setNodeName):
+ (WebInspector.DOMNode.prototype.localName):
+ (WebInspector.DOMNode.prototype.nodeValue):
+ (WebInspector.DOMNode.prototype.setNodeValue):
+ (WebInspector.DOMNode.prototype.setAttribute):
+ (WebInspector.DOMNode.prototype.attributes):
+ (WebInspector.DOMNode.prototype.removeAttribute):
+ (WebInspector.DOMNode.prototype.childNodes.mycallback):
+ (WebInspector.DOMNode.prototype.childNodes):
+ (WebInspector.DOMNode.prototype.outerHTML):
+ (WebInspector.DOMNode.prototype.setOuterHTML):
+ (WebInspector.DOMNode.prototype.removeNode):
+ (WebInspector.DOMNode.prototype.copyNode):
+ (WebInspector.DOMNode.prototype.path):
+ (WebInspector.DOMNode.prototype._setAttributesPayload):
+ (WebInspector.DOMNode.prototype._addAttribute):
+ (WebInspector.DOMAgent.prototype._characterDataModified):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
+ (WebInspector.ElementsPanel.prototype.decorateNodeLabel):
+ (WebInspector.ElementsPanel.prototype.handleCopyEvent):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline.prototype.findTreeElement):
+ (WebInspector.ElementsTreeElement):
+ (WebInspector.ElementsTreeElement.prototype.updateChildren):
+ (WebInspector.ElementsTreeElement.prototype._updateChildren):
+ (WebInspector.ElementsTreeElement.prototype._startEditingTarget):
+ (WebInspector.ElementsTreeElement.prototype._startEditing):
+ (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
+ (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.moveToNextAttributeIfNeeded):
+ (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted):
+ (WebInspector.ElementsTreeElement.prototype._textNodeEditingCommitted):
+ (WebInspector.ElementsTreeElement.prototype._attributeHTML):
+ ():
+ * inspector/front-end/EventListenersSidebarPane.js:
+ ():
+ * inspector/front-end/MetricsSidebarPane.js:
+ * inspector/front-end/StylesSidebarPane.js:
+ * inspector/front-end/utilities.js:
+
+2011-03-09 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [STYLES] Editing a property value adds a word for any property value that uses a paren
+ https://bugs.webkit.org/show_bug.cgi?id=56002
+
+ * inspector/front-end/StylesSidebarPane.js: Introduce an additional check.
+
+2011-03-09 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: use DebuggerPresentation instead of DebuggerModel in source frame delegate.
+ https://bugs.webkit.org/show_bug.cgi?id=56034
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
+ (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint):
+ (WebInspector.DebuggerPresentationModel.prototype.updateBreakpoint):
+ (WebInspector.DebuggerPresentationModel.prototype.findBreakpoint):
+ (WebInspector.DebuggerPresentationModel.prototype._sourceLocationToActualLocation):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._createSourceFrame):
+ (WebInspector.SourceFrameDelegateForScriptsPanel):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setBreakpoint):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.updateBreakpoint):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.removeBreakpoint):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.findBreakpoint):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.continueToLine):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition.didEditBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu.else.setBreakpointEnabled):
+ (WebInspector.SourceFrame.prototype._contextMenu):
+ (WebInspector.SourceFrame.prototype._mouseDown):
+ (WebInspector.SourceFrameDelegate.prototype.removeBreakpoint):
+ (WebInspector.SourceFrameDelegate.prototype.updateBreakpoint):
+
+2011-03-09 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: elements dom tree - word wrap toggle
+ https://bugs.webkit.org/show_bug.cgi?id=44311
+
+ A "Word Wrap" option is now shown in a context menu for the entire DOM tree content area
+ and persisted into application settings.
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype._contextMenuEventFired):
+ (WebInspector.ElementsPanel.prototype._contextMenuEventFired.toggleWordWrap):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline):
+ (WebInspector.ElementsTreeOutline.prototype._treeElementFromEvent):
+ (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
+ (WebInspector.ElementsTreeElement.prototype.onreveal):
+ * inspector/front-end/Settings.js:
+ (WebInspector.Settings):
+ * inspector/front-end/inspector.css:
+ (#elements-content.nowrap):
+ (#elements-content > ol):
+
+2011-03-09 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: re-implement breakpoints sidebar pane based on debugger presentation model.
+ https://bugs.webkit.org/show_bug.cgi?id=55823
+
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.JavaScriptBreakpointsSidebarPane):
+ (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.addBreakpoint.didLoadSnippet):
+ (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.addBreakpoint):
+ (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.removeBreakpoint):
+ (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.highlightBreakpoint):
+ (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.clearBreakpointHighlight):
+ (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._createBreakpointItemId):
+ (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._breakpointClicked):
+ (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._breakpointCheckboxClicked):
+ (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._contextMenu):
+ (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.reset):
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel):
+ (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
+ (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
+ (WebInspector.DebuggerPresentationModel.prototype._revealHiddenBreakpoints):
+ (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceFileId):
+ (WebInspector.DebuggerPresentationModel.prototype.setBreakpointEnabled):
+ (WebInspector.DebuggerPresentationModel.prototype.removeBreakpoint):
+ (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
+ (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
+ (WebInspector.DebuggerPresentationModel.prototype._actualLocationToSourceLocation):
+ (WebInspector.DebuggerPresentationModel.prototype.reset):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype._breakpointAdded):
+ (WebInspector.ScriptsPanel.prototype._breakpointRemoved):
+ (WebInspector.ScriptsPanel.prototype._debuggerPaused):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ (WebInspector.ScriptsPanel.prototype._clearInterface):
+
+2011-03-10 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Highlighter refactoring
+ https://bugs.webkit.org/show_bug.cgi?id=56015
+
+ * inspector/front-end/TextEditorHighlighter.js:
+ (WebInspector.TextEditorHighlighter):
+ (WebInspector.TextEditorHighlighter.prototype.set mimeType):
+ (WebInspector.TextEditorHighlighter.prototype.highlight):
+ (WebInspector.TextEditorHighlighter.prototype.updateHighlight):
+ (WebInspector.TextEditorHighlighter.prototype._highlightInChunks):
+ (WebInspector.TextEditorHighlighter.prototype._highlightLines):
+ (WebInspector.TextEditorHighlighter.prototype._selectHighlightState):
+ (WebInspector.TextEditorHighlighter.prototype._clearHighlightState):
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextEditorMainPanel.prototype._buildChunks):
+ (WebInspector.TextEditorMainPanel.prototype._updateHighlightsForRange):
+
+2011-03-05 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: move breakpoint column adjustment to debugger model.
+ https://bugs.webkit.org/show_bug.cgi?id=55821
+
+ Test: inspector/debugger/debug-inlined-scripts.html
+
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel.prototype.setBreakpoint.didSetBreakpoint):
+ (WebInspector.DebuggerModel.prototype.setBreakpoint):
+ * inspector/front-end/SourceFrameContent.js:
+ (WebInspector.SourceFrameContent.prototype.sourceFrameLineNumberToActualLocation):
+
+2011-01-21 John Knottenbelt <jknotten@chromium.org>
+
+ Reviewed by Dmitry Titov.
+
+ Detach Geolocation from Frame when Page destroyed.
+ https://bugs.webkit.org/show_bug.cgi?id=52877
+
+ On Page destruction, any outstanding Geolocation permission
+ requests should be cancelled, because the Geolocation can only
+ access the client indirectly via m_frame->page().
+
+ Page destruction is signalled by a call to the
+ Frame::pageDestroyed() method. This explictly calls
+ DOMWindow::resetGeolocation which ultimately calls Geolocation::reset.
+
+ Geolocation::reset() detaches from the GeolocationController,
+ cancels requests, watches and single shots, and sets the
+ permission state back to Unknown.
+
+ Frame::pageDestroyed() is also called by FrameLoader even though
+ the page is not destroyed. We should still cancel permission
+ requests, because the GeolocationClient will become inaccessible
+ to the Geolocation object after this call.
+
+ Frame::transferChildFrameToNewDocument also indirectly calls
+ Geolocation::reset when the frame is reparented between
+ pages. Ideally we would like the Geolocation's activities to
+ continue after reparenting, see bug
+ https://bugs.webkit.org/show_bug.cgi?id=55577
+
+ Since GeolocationController is owned by Page, and all Geolocation
+ objects will now unsubscribe from the GeolocationController on
+ pageDetached(), we no longer need to call stopUpdating() from the
+ GeolocationController's destructor. Instead we can simply assert
+ that there should be no no observers. See related bug
+ https://bugs.webkit.org/show_bug.cgi?id=52216 .
+
+ Introduced new method 'numberOfPendingPermissionRequests' on
+ GeolocationClientMock to count the number of outstanding pending
+ permission requests. This provides a reusable implementation for
+ client-based implementations of the LayoutTestController's
+ numberOfPendingGeolocationPermissionRequests method.
+
+ Test: fast/dom/Geolocation/page-reload-cancel-permission-requests.html
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::resetGeolocation):
+ * page/DOMWindow.h:
+ * page/Frame.cpp:
+ (WebCore::Frame::pageDestroyed):
+ (WebCore::Frame::transferChildFrameToNewDocument):
+ * page/Geolocation.cpp:
+ (WebCore::Geolocation::~Geolocation):
+ (WebCore::Geolocation::page):
+ (WebCore::Geolocation::reset):
+ (WebCore::Geolocation::disconnectFrame):
+ (WebCore::Geolocation::lastPosition):
+ (WebCore::Geolocation::requestPermission):
+ (WebCore::Geolocation::startUpdating):
+ (WebCore::Geolocation::stopUpdating):
+ * page/Geolocation.h:
+ * page/GeolocationController.cpp:
+ (WebCore::GeolocationController::~GeolocationController):
+ * page/Navigator.cpp:
+ (WebCore::Navigator::resetGeolocation):
+ * page/Navigator.h:
+ * platform/mock/GeolocationClientMock.cpp:
+ (WebCore::GeolocationClientMock::numberOfPendingPermissionRequests):
+ * platform/mock/GeolocationClientMock.h:
+
+2011-03-10 Ojan Vafai <ojan@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Able to move nodes across documents
+ https://bugs.webkit.org/show_bug.cgi?id=19524
+
+ Makes cross-document appendChild, insertBefore, Range.insertNode and Range.surroundContents work.
+ This matches Gecko and the new Dom Core spec. There are a number of Range methods where we don't
+ match Gecko or the spec that will need to be updated in a following patch.
+
+ Test: fast/dom/move-nodes-across-documents.html
+
+ * dom/Element.cpp:
+ (WebCore::Element::removeAttributeNode):
+ * dom/NamedNodeMap.cpp:
+ (WebCore::NamedNodeMap::setNamedItem):
+ * dom/Node.cpp:
+ (WebCore::Node::setDocumentRecursively):
+ (WebCore::checkAcceptChild):
+ (WebCore::Node::checkReplaceChild):
+ * dom/Range.cpp:
+ (WebCore::Range::insertNode):
+ (WebCore::Range::surroundContents):
+
+2011-03-09 Antti Koivisto <antti@apple.com>
+
+ Not reviewed.
+
+ Reverting crash catching code, the bug being hunted was fixed by
+ http://trac.webkit.org/changeset/80686
+
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::CachedResourceLoader):
+ (WebCore::CachedResourceLoader::~CachedResourceLoader):
+ (WebCore::CachedResourceLoader::requestImage):
+ (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
+ (WebCore::CachedResourceLoader::requestResource):
+ (WebCore::CachedResourceLoader::setAutoLoadImages):
+ (WebCore::CachedResourceLoader::load):
+ (WebCore::CachedResourceLoader::loadDone):
+ (WebCore::CachedResourceLoader::preload):
+ (WebCore::CachedResourceLoader::requestPreload):
+ * loader/cache/CachedResourceLoader.h:
+
+2011-03-09 Peter Kasting <pkasting@google.com>
+
+ Unreviewed, build fix.
+
+ * StringsNotToBeLocalized.txt: Add function names I forgot.
+ * platform/win/SystemInfo.cpp: #if out some uncalled functions on WinCE,
+ since they don't compile anyway. Use ZeroMemory() instead of "= {0}"
+ since Qt is stupid and (sometimes?!) warns about it.
+ (WebCore::windowsVersion):
+ (WebCore::processorArchitecture):
+
+2011-03-09 Peter Kasting <pkasting@google.com>
+
+ Reviewed by Ryosuke Niwa.
+
+ Add UA string tags for Windows 64.
+ https://bugs.webkit.org/show_bug.cgi?id=55226
+
+ * StringsNotToBeLocalized.txt:
+ * platform/win/SystemInfo.cpp:
+ (WebCore::osVersionForUAString):
+ (WebCore::isWOW64):
+ (WebCore::processorArchitecture):
+ (WebCore::architectureTokenForUAString):
+ (WebCore::windowsVersionForUAString):
+
+2011-03-09 Peter Kasting <pkasting@google.com>
+
+ Unreviewed, attempted build fix.
+
+ * WebCore.pri: Try to update include path for Qt Windows build.
+
+2011-03-09 Peter Kasting <pkasting@google.com>
+
+ Unreviewed, build fix.
+
+ * platform/win/SystemInfo.cpp:
+ (WebCore::windowsVersionForUAString): Fix const conversion warning on Qt.
+
+2011-03-09 Peter Kasting <pkasting@google.com>
+
+ Reviewed by Mihai Parparita.
+
+ Unify Windows version checks.
+ https://bugs.webkit.org/show_bug.cgi?id=55979
+
+ * GNUmakefile.am: Fix spaces -> tabs.
+ * StringsNotToBeLocalized.txt:
+ * WebCore.pro: Add SystemInfo.* to Qt build.
+ * platform/chromium/ScrollbarThemeChromiumWin.cpp:
+ (WebCore::ScrollbarThemeChromiumWin::invalidateOnMouseEnterExit):
+ (WebCore::ScrollbarThemeChromiumWin::getThemeState):
+ (WebCore::ScrollbarThemeChromiumWin::getThemeArrowState):
+ * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
+ (WebCore::fillBMPGlyphs):
+ * platform/win/CursorWin.cpp:
+ (WebCore::createSharedCursor):
+ * platform/win/ScrollbarThemeWin.cpp:
+ (WebCore::ScrollbarThemeWin::ScrollbarThemeWin):
+ * platform/win/SystemInfo.cpp: Add full-fledged version check and UA string helper function.
+ (WebCore::windowsVersion):
+ (WebCore::windowsVersionForUAString):
+ * platform/win/SystemInfo.h: Add full-fledged version check and UA string helper function.
+ * rendering/RenderThemeChromiumWin.cpp:
+ (WebCore::getNonClientMetrics):
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::RenderThemeWin::getThemeData):
+ (WebCore::RenderThemeWin::paintMenuList):
+ (WebCore::RenderThemeWin::paintMenuListButton):
+
+2011-03-09 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Tony Gentilcore.
+
+ REGRESSION (r74807): memory corruption after CachedResourceLoader refactoring
+ https://bugs.webkit.org/show_bug.cgi?id=53045
+
+ Copy the URL out of the CachedResource that is being revalidated, so
+ that we can still use it (in m_validatedURLs) after removing the
+ resource from the memory cache, which may delete it.
+
+ No new tests, since I was not able to trigger this locally (in a layout
+ test or otherwise).
+
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::revalidateResource):
+
+2011-03-09 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ VO reporting incorrect list count for http://www.macworld.com/news.html
+ https://bugs.webkit.org/show_bug.cgi?id=56064
+
+ <li> tags should not be ignored, because they provide valuable information
+ to screen readers.
+
+ Test: platform/mac/accessibility/list-items-ignored.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
+
+2011-03-09 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ <rdar://problem/8733254> Float disappears after incremental layout
+ Fixed the original bug and a copule more issues noticed while doing so.
+
+ Tests: fast/dynamic/dirty-float-in-clean-line.html
+ fast/dynamic/float-at-line-break.html
+ fast/dynamic/float-from-empty-line.html
+
+ * rendering/RenderBlock.h:
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren): If findNextLineBreak() returned an empty line,
+ update the line break info of the last line with the new line break position. This is tested
+ by float-from-empty-line.html.
+ (WebCore::RenderBlock::checkFloatsInCleanLine): Factored out code from determineStartPosition()
+ into this new function.
+ (WebCore::RenderBlock::determineStartPosition): Call checkFloatsInCleanLine().
+ (WebCore::RenderBlock::determineEndPosition): When iterating over lines, check clean lines with
+ floats, as they may yet become dirty because of the floats. This is tested by
+ dirty-float-in-clean-line.html.
+ (WebCore::RenderBlock::findNextLineBreak): If a float fits on the line, and the current line
+ break is at the float, advance it to after the float. Otherwise, if the line gets dirty and the
+ next one does not, the float will not make it into any line. This is tested by
+ float-at-line-break.html.
+
+2011-03-09 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ selectionStart reports wrong caret position when the last characters are newlines
+ https://bugs.webkit.org/show_bug.cgi?id=56061
+
+ The bug was caused by SelectionController::setSelection's not calling
+ notifyRendererOfSelectionChange when old selection was equal to new selection.
+
+ Because InsertLineBreakCommand inserts a text node with a single LF before the caret,
+ this condition holds after the command is executed. However, the values of
+ selectionStart and selectionEnd still need to be updated in this case because
+ the offsets counted from the beginning of textarea have been increased by 1.
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::setSelection): Call notifyRendererOfSelectionChange
+ when m_selection = s.
+ * manual-tests/selection-start-after-inserting-line-break-in-textarea.html: Added.
+
+2011-03-09 Andy Estes <aestes@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Bad cast in HTMLTreeBuilder::processStartTag
+ https://bugs.webkit.org/show_bug.cgi?id=55955
+
+ Test: fast/parser/self-closing-foreign-content.html
+
+ When the parser encounters an svg or mathml root element, it places the
+ insertion mode into InForeignContentMode. However, if the root element
+ is self-closing (e.g. <svg />) then the element is never placed on the
+ open elements stack. This leaves the parser in an inconsistent state
+ where it is in InForeignContentMode but no foreign content is in the
+ open element stack.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody): If a self-closing
+ foreign element is inserted into the tree, do not set the insertion
+ mode to InForeignContentMode.
+
+2011-03-09 Gavin Barraclough <barraclough@apple.com>
+
+ Qt build fix.
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::convertQVariantToValue):
+
+2011-03-09 Andy Estes <aestes@apple.com>
+
+ Reviewed by Adam Barth.
+
+ REGRESSION (r80320): Assertion failure when processing mis-nested foreign content.
+ https://bugs.webkit.org/show_bug.cgi?id=55982
+
+ Test: fast/parser/fragment-foreign-content-misnested.html
+
+ It is a parse error to encounter certain start tags while the parser's
+ insertion mode is InForeignContentMode (e.g. <br>). In these cases, we
+ are to pop open elements off the HTMLElementStack until a foreign
+ content scope marker is encountered. Before the change in r80320 to not
+ insert a fake HTML element during fragment parsing, said fake HTML
+ element counted as a foreign content scope marker.
+
+ With r80320, no fake HTML element is inserted and the stack is popped
+ until empty in cases where no other element claims to be a foreign
+ content scope marker. Fix this by treating the DocumentFragment as a
+ foreign content scope marker.
+
+ * html/parser/HTMLElementStack.cpp:
+ (WebCore::HTMLNames::isForeignContentScopeMarker): Take a
+ ContainerNode* instead of a Element*.
+ (WebCore::HTMLElementStack::popUntilForeignContentScopeMarker): Pass
+ topNode() to isForeignContentScopeMarker() instead of top().
+
+2011-03-09 Gavin Barraclough <barraclough@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Bug 56041 - RexExp constructor should only accept flags "gim"
+ We also should be passing the flags around as a bitfield rather than a string,
+ and should not have redundant, incompatible code for converting the string to a bitfield!
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneDeserializer::readTerminal):
+ - Need to parse flags string back to enum.
+
+2011-03-09 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium]: Regression - Explicitly copy compositing properties from LayerChromium to CCLayerImpl
+ https://bugs.webkit.org/show_bug.cgi?id=56021
+
+ Initializes the m_doubleSided flag of LayerChromiums to the default
+ value of true so the back sides of layers without
+ backface-visibility:hidden are rendered.
+
+ Test: compositing/backface-visibility.html
+
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::LayerChromium):
+
+2011-03-09 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ <rdar://problem/9110316> REGRESSION: 'ex' unit broken for vertical text
+
+ Fall back to the verticalRightOrientation data when obtaining the x-height for vertically oriented
+ text. That way we use the same metrics as for horizontal.
+
+ This fixes regressions in fast/lists and fast/overflow vertical text tests.
+
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::SimpleFontData::platformInit):
+ (WebCore::SimpleFontData::platformBoundsForGlyph):
+
+2011-03-09 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ REGRESSION: crash in nextLinePosition when extending selection forward by line in an empty document
+ https://bugs.webkit.org/show_bug.cgi?id=56004
+
+ The crash was caused by the false assumption that rootEditableElement() or documentElement()
+ always return non-null pointer. Fixed the bug by adding an early exit.
+
+ Test: editing/selection/extend-by-line-in-empty-document.html
+
+ * editing/visible_units.cpp:
+ (WebCore::previousLinePosition):
+ (WebCore::nextLinePosition):
+
+2011-03-09 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: it should be possible to copy stack trace from call stack sidebar pane.
+ https://bugs.webkit.org/show_bug.cgi?id=56024
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane):
+ (WebInspector.CallStackSidebarPane.prototype.update):
+ (WebInspector.CallStackSidebarPane.prototype._contextMenu):
+
+2011-03-09 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Patch FontPlatformDataLinux to properly initialize and copy orientation/text-orientation in all
+ places. Make sure text-orientation is specified in the lookups/creation in FontCustomPlatformData
+ and FontCache.
+
+ * platform/graphics/chromium/FontPlatformDataLinux.cpp:
+ (WebCore::FontPlatformData::FontPlatformData):
+ * platform/graphics/chromium/FontPlatformDataLinux.h:
+ (WebCore::FontPlatformData::FontPlatformData):
+
+2011-03-09 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ JavaNPObject should not use JNI directly
+ https://bugs.webkit.org/show_bug.cgi?id=56009
+
+ We move the JNI code to access a Java object's fields into
+ a new JavaInstance::getField() method.
+
+ No new tests, refactoring only.
+
+ * bridge/jni/v8/JavaInstanceV8.cpp:
+ (JavaInstance::getField):
+ * bridge/jni/v8/JavaInstanceV8.h:
+ * bridge/jni/v8/JavaNPObjectV8.cpp:
+ (JSC::Bindings::JavaNPObjectGetProperty):
+
+2011-03-09 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ NPAPI - jvalue conversion should not be in JavaInstance
+ https://bugs.webkit.org/show_bug.cgi?id=55967
+
+ No new tests, refactoring only.
+
+ * bridge/jni/v8/JavaInstanceV8.cpp:
+ (JavaInstance::invokeMethod):
+ * bridge/jni/v8/JavaInstanceV8.h:
+ * bridge/jni/v8/JavaNPObjectV8.cpp:
+ (JSC::Bindings::JavaNPObjectInvoke):
+
+2011-03-09 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Use the Cookie Storage from the Private Browsing Storage Session directly
+ https://bugs.webkit.org/show_bug.cgi?id=55986
+
+ * WebCore.exp.in:
+ * platform/mac/WebCoreSystemInterface.h:
+ * platform/mac/WebCoreSystemInterface.mm:
+
+ * platform/network/mac/CookieStorageMac.mm:
+ (WebCore::setCookieStoragePrivateBrowsingEnabled):
+ Just copy the cookie storage from the private browsing storage session.
+ * platform/network/cf/CookieStorageCFNet.cpp:
+ (WebCore::setCookieStoragePrivateBrowsingEnabled):
+ Ditto.
+
+2011-03-09 Andrey Kosyakov <caseq@chromium.org>
+
+ Unreviewed. Fixed a crash in InspectorInstrumentation::didReceiveResponse() when loader is null (broken in r80639)
+
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
+
+2011-03-09 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: pass explicit agent references to InspectorBackendDispatcher
+ https://bugs.webkit.org/show_bug.cgi?id=55820
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::disconnectFrontend):
+ (WebCore::InspectorController::dispatchMessageFromFrontend):
+
+2011-03-09 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: resource errors are not reported before front-end is opened
+ https://bugs.webkit.org/show_bug.cgi?id=55939
+
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::didReceiveResourceResponse):
+ (WebCore::InspectorInstrumentation::didFailLoading):
+
+2011-03-08 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Add BackingStoreType parameter to IDBFactoryBackendInterface::open
+ https://bugs.webkit.org/show_bug.cgi?id=55948
+
+ Add a parameter that allows for selection of alternative backing store
+ implementations.
+
+ No new tests: no new functionality.
+
+ * storage/IDBFactory.cpp:
+ (WebCore::IDBFactory::open):
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::IDBFactoryBackendImpl::open):
+ * storage/IDBFactoryBackendImpl.h:
+ * storage/IDBFactoryBackendInterface.h:
+
+2011-03-08 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ Factor out JNI method call to be used by both JSC and V8
+ https://bugs.webkit.org/show_bug.cgi?id=55966
+
+ No new tests, refactoring only.
+
+ * bridge/jni/JNIUtility.cpp:
+ (JSC::Bindings::callJNIMethod):
+ * bridge/jni/JNIUtility.h:
+ * bridge/jni/jsc/JavaInstanceJSC.cpp:
+ (JavaInstance::invokeMethod):
+ * bridge/jni/v8/JavaInstanceV8.cpp:
+ (JavaInstance::invokeMethod):
+
+2011-03-09 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Text editor] Regression in handling DOMNodeInserted/DOMNodeRemoved events
+ https://bugs.webkit.org/show_bug.cgi?id=55818
+
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):
+
+2011-03-09 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Web Inspector: we don't need to transfer objectId and hasChildren for primitive values.
+ https://bugs.webkit.org/show_bug.cgi?id=55998
+
+ * inspector/InjectedScriptSource.js:
+
+2011-03-09 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: watch expressions should show string values in quotes.
+ https://bugs.webkit.org/show_bug.cgi?id=55846
+
+ * inspector/InjectedScriptSource.js:
+ * inspector/front-end/ObjectPropertiesSection.js:
+ (WebInspector.ObjectPropertyTreeElement.prototype.update):
+ * inspector/front-end/RemoteObject.js:
+ (WebInspector.LocalJSONObject.prototype.get description):
+ * inspector/front-end/WatchExpressionsSidebarPane.js:
+ (WebInspector.WatchExpressionsSection.prototype.update):
+ * inspector/front-end/inspector.css:
+ (.console-formatted-string, .console-formatted-regexp):
+
+2011-03-09 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: "length" getter is invoked upon console object formatting.
+ https://bugs.webkit.org/show_bug.cgi?id=55220
+
+ * inspector/InjectedScriptSource.js:
+
+2011-03-08 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: remove groupName from objectId.
+ https://bugs.webkit.org/show_bug.cgi?id=55825
+
+ * inspector/InjectedScriptSource.js:
+
+2011-03-08 Xiaomei Ji <xji@chromium.org>
+
+ Reviewed by David Hyatt.
+
+ Fix Regression: Content not drawn when scrolling horizontally in an RTL page.
+ https://bugs.webkit.org/show_bug.cgi?id=55077.
+
+ Inside ScrollView::calculateOverhangAreasForPainting(), when scroll position
+ is negative, should include the position value into overhang rectangle's
+ starting position.
+
+ Tests: fast/dom/scroll-reveal-left-overflow.html
+ fast/dom/scroll-reveal-top-overflow.html
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::calculateOverhangAreasForPainting):
+
+2011-03-08 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Darin Adler.
+
+ Add templatized CSSMutableStyleDeclaration::get{ShorthandValue, CommonValue, LayeredShorthandValue}()
+ https://bugs.webkit.org/show_bug.cgi?id=55351
+
+ By using some template magic CSSMutableStyleDeclaration::get{ShorthandValue, CommonValue, LayeredShorthandValue}()
+ can be called on an array A without the caller explicitly specifying the size of A.
+
+ No functionality was changed. So no new tests.
+
+ * css/CSSMutableStyleDeclaration.cpp:
+ (WebCore::CSSMutableStyleDeclaration::getPropertyValue): Modified to call templatized variants of
+ CSSMutableStyleDeclaration::get{ShorthandValue, CommonValue, LayeredShorthandValue}().
+ (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue): Renamed second argument from "number" to "size"
+ to better reflect its purpose - to be the size of the passed array.
+ (WebCore::CSSMutableStyleDeclaration::getShorthandValue): Ditto.
+ (WebCore::CSSMutableStyleDeclaration::getCommonValue): Ditto.
+ (WebCore::CSSMutableStyleDeclaration::cssText): Modified to call templatized variant of CSSMutableStyleDeclaration::getShorthandValue().
+ * css/CSSMutableStyleDeclaration.h:
+ (WebCore::CSSMutableStyleDeclaration::getShorthandValue): Added templatized function that can determine
+ the size of a passed array. Changed type of second argument to size_t since it represents the size of
+ an array.
+ (WebCore::CSSMutableStyleDeclaration::getCommonValue): Ditto.
+ (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue): Ditto.
+
+2011-03-08 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION: Copied content loses formatting on paste to external apps.
+ https://bugs.webkit.org/show_bug.cgi?id=47615
+ <rdar://problem/9001214>
+
+ This is a resubmission of a patch that was landed a while ago then rolled
+ back because of a build failure on SnowLeopard and Leopard on the 32-bit builds.
+
+ This patch adds a way for WebKit2 to create NSAttributedStrings from
+ a DOM range without using the AppKit api initWithDOMRange that internally
+ needs to access the WebView. The NSAttributedString is needed to create
+ RTF formats in the pasteboard.
+ This is to be considered a first step, since in the future we want to have
+ an implementation based on the TextIterator.
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/mac/HTMLConverter.h: Added.
+ * platform/mac/HTMLConverter.mm: Added.
+ * platform/mac/PasteboardMac.mm:
+ (WebCore::Pasteboard::writeSelection):
+
+2011-03-08 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Explicitly copy compositing properties from LayerChromium to CCLayerImpl
+ https://bugs.webkit.org/show_bug.cgi?id=55900
+
+ This adds an explicit step to synchronize properties from
+ LayerChromiums to their corresponding CCLayerImpls.
+
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setBounds):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::bounds):
+ (WebCore::LayerChromium::doubleSided):
+ (WebCore::LayerChromium::setDoubleSided):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::CCLayerImpl):
+ (WebCore::CCLayerImpl::updateFromLayer):
+ (WebCore::CCLayerImpl::descendantsDrawsContent):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (WebCore::CCLayerImpl::anchorPoint):
+ (WebCore::CCLayerImpl::anchorPointZ):
+ (WebCore::CCLayerImpl::masksToBounds):
+ (WebCore::CCLayerImpl::opacity):
+ (WebCore::CCLayerImpl::position):
+ (WebCore::CCLayerImpl::preserves3D):
+ (WebCore::CCLayerImpl::sublayerTransform):
+ (WebCore::CCLayerImpl::transform):
+
+2011-03-08 James Robinson <jamesr@chromium.org>
+
+ Chromium compile fix.
+
+ * platform/graphics/chromium/SimpleFontDataLinux.cpp:
+ (WebCore::SimpleFontData::platformInit):
+
+2011-03-08 Peter Kasting <pkasting@google.com>
+
+ Reviewed by James Robinson.
+
+ Unify Windows version checks, part 1.
+ https://bugs.webkit.org/show_bug.cgi?id=55979
+
+ Make everyone (I hope) pull in SystemInfo.cpp. Eliminate the
+ now-unnecessary WindowsVersion.cpp from Chromium.
+
+ * GNUmakefile.am:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * platform/chromium/ScrollbarThemeChromiumWin.cpp:
+ (WebCore::ScrollbarThemeChromiumWin::invalidateOnMouseEnterExit):
+ (WebCore::ScrollbarThemeChromiumWin::getThemeState):
+ (WebCore::ScrollbarThemeChromiumWin::getThemeArrowState):
+ * platform/chromium/WindowsVersion.cpp: Removed.
+ * platform/chromium/WindowsVersion.h: Removed.
+ * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
+ (WebCore::fillBMPGlyphs):
+ * rendering/RenderThemeChromiumWin.cpp:
+ (WebCore::getNonClientMetrics):
+
+2011-03-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Chromium Linux build fix attempt after r80582.
+
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/chromium/SimpleFontDataLinux.cpp:
+ (WebCore::SimpleFontData::platformInit):
+ * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
+ (WebCore::GlyphPage::fill):
+
+2011-03-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Mac build fix attempt for r80582.
+
+ * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
+ (WebCore::disableLigatures):
+
+2011-03-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ Remove calls to deprecatedEditingOffset in SelectionController and VisibleSelection
+ https://bugs.webkit.org/show_bug.cgi?id=54937
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::setSelection): Calls anchorNode() instead of deprecatedNode() to obtain
+ the document. Also restrained the lifetime of document variable.
+ (WebCore::removingNodeRemovesPosition): Compare the node with anchorNode() instead of deprecatedNode()
+ to determine whether or not position becomes null after removing a node.
+ (WebCore::SelectionController::directionOfEnclosingBlock): The enclosing block is always a container
+ so call containerNode() instead of deprecatedNode().
+ (WebCore::SelectionController::debugRenderer): Call containerNode() and computeOffsetInContainer()
+ instead of deprecatedNode() and deprecatedEditingOffset() respectively.
+ (WebCore::SelectionController::isInPasswordField): Look for the shadow root from containerNode()
+ instead of deprecatedNode to determine whether or not selection inside a password field. Also assert
+ that the specified position is not before or after the shadow root as it violates our assumption.
+ * editing/VisibleSelection.cpp:
+ (WebCore::makeSearchRange): Call containerNode() and offsetInContainerNode() instead of deprecatedNode()
+ and deprecatedEditingOffset() respectively because start is always parent anchored and therefore
+ guaranteed to be an offset inside an anchor node.
+ (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries): Call containerNode()
+ instead of deprecatedNode() to look for the lowest editable ancestor because position before or after
+ an editable element isn't editable.
+ * page/DOMSelection.cpp: Call containerNode() and offsetInContainerNode() instead of deprecatedNode()
+ and deprecatedEditingOffset() respectively in the following functions because they are exposed to
+ DOM, which doesn't have before/after concept.
+ (WebCore::DOMSelection::anchorNode):
+ (WebCore::DOMSelection::anchorOffset):
+ (WebCore::DOMSelection::focusNode):
+ (WebCore::DOMSelection::focusOffset):
+ (WebCore::DOMSelection::baseNode):
+ (WebCore::DOMSelection::baseOffset):
+ (WebCore::DOMSelection::extentNode):
+ (WebCore::DOMSelection::extentOffset):
+
+2011-03-08 Brent Fulgham <bfulgham@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Correct uninitialized variable in PolicyCallback found while
+ running WebKit in BoundsChecker.
+ https://bugs.webkit.org/show_bug.cgi?id=45199.
+
+ * loader/PolicyCallback.cpp:
+ (WebCore::PolicyCallback::PolicyCallback): Initialize
+ m_argument.
+
+2011-03-08 Brent Fulgham <bfulgham@webkit.org>
+
+ More build bustage fix.
+
+ * platform/graphics/win/cairo/FontPlatformData.h:
+ (WebCore::FontPlatformData::setOrientation): Duplicate accessor
+ in WinCairo-local header. This is such a mess!
+
+2011-03-08 David Hyatt <hyatt@apple.com>
+
+ Fix build bustage. Hide orientation setting behind a setter and stub it out in all
+ FontPlatformData classes. (This class really needs to move to a common header with ifdefs.)
+
+ * platform/graphics/SimpleFontData.cpp:
+ (WebCore::SimpleFontData::verticalRightOrientationFontData):
+ * platform/graphics/cg/FontPlatformData.h:
+ (WebCore::FontPlatformData::setOrientation):
+ * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
+ (WebCore::FontPlatformData::setOrientation):
+ * platform/graphics/chromium/FontPlatformDataLinux.h:
+ (WebCore::FontPlatformData::setOrientation):
+ * platform/graphics/cocoa/FontPlatformData.h:
+ (WebCore::FontPlatformData::setOrientation):
+ * platform/graphics/freetype/FontPlatformData.h:
+ (WebCore::FontPlatformData::setOrientation):
+ * platform/graphics/qt/FontPlatformData.h:
+ (WebCore::FontPlatformData::setOrientation):
+ * platform/graphics/wince/FontPlatformData.h:
+ (WebCore::FontPlatformData::setOrientation):
+ * platform/graphics/wx/FontPlatformData.h:
+ (WebCore::FontPlatformData::setOrientation):
+
+2011-03-08 Joe Wild <joseph.wild@nokia.com>
+
+ Reviewed by Csaba Osztrogonác.
+
+ [Qt] Missing SVG variables
+ https://bugs.webkit.org/show_bug.cgi?id=32941
+
+ Basically, this patch just modifies features.pri to the Qt build to
+ pass on the ENABLE_SVG_* flags to the IDL binding generator.
+
+ Also I had remove global-construtors.html from the skip list and
+ updated the associated expected results files.
+
+ * features.pri:
+ * page/DOMWindow.idl:
+
+2011-03-08 Alok priyadarshi <alokp@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Plugins needs a way to trigger style recalc
+ https://bugs.webkit.org/show_bug.cgi?id=55242
+
+ No test needed. A simple get function is added.
+
+ * platform/graphics/chromium/PluginLayerChromium.h:
+ (WebCore::PluginLayerChromium::getTextureId):
+
+2011-03-08 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=48540, support the text-orientation CSS property.
+
+ This patch adds support for two values of the text-orientation property (the ones that actually matter): vertical-right and upright.
+ The TextOrientation is part of the FontDescription and used to look up fonts (similar to FontOrientation).
+
+ Orientation of non-CJK characters is done using fallback font data of the appropriate orientation type, e.g., verticalRightOrientation and
+ uprightOrientation fallback font data. Vertical right is just implemented as a normal horizontal font. Upright is implemented as a
+ vertically oriented font that rotates all glyphs.
+
+ The main complication implementing text-orientation is that fonts have "baked-in" vertical glyphs for letters that are hardcoded to
+ a vertical right facing. This means that you can use those special vertical glyphs for vertical-right orientation without having to
+ fall back, but then for upright orientation you have to ignore them and still fall back. As you can see from the test case, this doesn't
+ work very well, but hopefully it won't be all that common. Limitations of CoreText prevent this case from rendering properly in either the
+ simple or complex code paths, although the simple code path at least gets close.
+
+ Added fast/blockflow/text-orientation-basic.html
+
+ * WebCore.exp.in:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSFontFaceSource.cpp:
+ (WebCore::CSSFontFaceSource::getFontData):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator TextOrientation):
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyDeclarations):
+ (WebCore::CSSStyleSelector::applyProperty):
+ * css/CSSValueKeywords.in:
+ * loader/cache/CachedFont.cpp:
+ (WebCore::CachedFont::platformDataFromCustomData):
+ * loader/cache/CachedFont.h:
+ * platform/graphics/FontCache.cpp:
+ (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
+ (WebCore::FontPlatformDataCacheKey::operator==):
+ (WebCore::computeHash):
+ (WebCore::FontCache::getCachedFontPlatformData):
+ * platform/graphics/FontDescription.h:
+ (WebCore::FontDescription::FontDescription):
+ (WebCore::FontDescription::textOrientation):
+ (WebCore::FontDescription::setTextOrientation):
+ (WebCore::FontDescription::operator==):
+ * platform/graphics/FontFastPath.cpp:
+ (WebCore::Font::glyphDataForCharacter):
+ (WebCore::offsetToMiddleOfGlyph):
+ * platform/graphics/SimpleFontData.cpp:
+ (WebCore::SimpleFontData::SimpleFontData):
+ (WebCore::SimpleFontData::verticalRightOrientationFontData):
+ (WebCore::SimpleFontData::uprightOrientationFontData):
+ (WebCore::SimpleFontData::brokenIdeographFontData):
+ (WebCore::SimpleFontData::DerivedFontData::~DerivedFontData):
+ * platform/graphics/SimpleFontData.h:
+ (WebCore::SimpleFontData::hasVerticalGlyphs):
+ (WebCore::SimpleFontData::isTextOrientationFallback):
+ * platform/graphics/cairo/FontCustomPlatformData.h:
+ * platform/graphics/cocoa/FontPlatformData.h:
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::textOrientation):
+ (WebCore::FontPlatformData::hash):
+ (WebCore::FontPlatformData::operator==):
+ * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::operator=):
+ * platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ * platform/graphics/haiku/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ * platform/graphics/haiku/FontCustomPlatformData.h:
+ * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
+ (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
+ * platform/graphics/mac/FontCacheMac.mm:
+ (WebCore::FontCache::createFontPlatformData):
+ * platform/graphics/mac/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ * platform/graphics/mac/FontCustomPlatformData.h:
+ * platform/graphics/mac/FontMac.mm:
+ (WebCore::showGlyphsWithAdvances):
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
+ (WebCore::shouldUseCoreText):
+ (WebCore::GlyphPage::fill):
+ * platform/graphics/mac/SimpleFontDataCoreText.cpp:
+ (WebCore::SimpleFontData::getCFStringAttributes):
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::SimpleFontData::platformInit):
+ (WebCore::SimpleFontData::platformBoundsForGlyph):
+ (WebCore::SimpleFontData::platformWidthForGlyph):
+ * platform/graphics/pango/FontCustomPlatformDataPango.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ * platform/graphics/qt/FontCustomPlatformData.h:
+ * platform/graphics/qt/FontCustomPlatformDataQt.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ * platform/graphics/skia/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ * platform/graphics/skia/FontCustomPlatformData.h:
+ * platform/graphics/win/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ * platform/graphics/win/FontCustomPlatformData.h:
+ * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ * platform/graphics/win/FontCustomPlatformDataCairo.h:
+ * platform/graphics/wince/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ * platform/graphics/wince/FontCustomPlatformData.h:
+ * platform/text/TextOrientation.h: Added.
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::requiresIdeographicBaseline):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::initialTextOrientation):
+
+2011-03-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ addInlineStyleIfNeeded should take EditingStyle
+ https://bugs.webkit.org/show_bug.cgi?id=55950
+
+ Deployed EditingStyle in addInlineStyleIfNeeded, StyleChange::StyleChange, and StyleChange::init.
+ Also extracted EditingStyle::styleIsPresentInComputedStyleOfNode from removeStyleFromRunBeforeApplyingStyle.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::StyleChange::StyleChange): Takes EditingStyle instead of CSSStyleDeclaration.
+ (WebCore::StyleChange::init): Ditto.
+ (WebCore::ApplyStyleCommand::applyBlockStyle): Instantiates StyleChange.
+ (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): Calls addInlineStyleIfNeeded.
+ (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Calls styleIsPresentInComputedStyleOfNode.
+ (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Calls EditingStyle::mergeInlineStyleOfElement
+ instead of manually merging styles.
+ (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Calls addInlineStyleIfNeeded.
+ (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Takes EditingStyle instead of CSSMutableStyleDeclaration.
+ * editing/ApplyStyleCommand.h:
+ * editing/CompositeEditCommand.h:
+ * editing/EditingStyle.cpp:
+ (WebCore::EditingStyle::styleIsPresentInComputedStyleOfNode): Extracted from removeStyleFromRunBeforeApplyingStyle.
+ * editing/EditingStyle.h:
+
+2011-03-08 Nico Weber <thakis@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Crash on big blur radius with canvas
+ https://bugs.webkit.org/show_bug.cgi?id=55951
+
+ Move the clamping code out of an if branch, so that it happens in the
+ canvas case as well.
+
+ Test: fast/canvas/shadow-huge-blur.html
+
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::setPlatformShadow):
+
+2011-03-08 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ WK2: Cannot set focus on an element when focus is outside of WKView
+ https://bugs.webkit.org/show_bug.cgi?id=55281
+
+ In WK2, focus cannot be set from the WebProcess side because there's no platformWidget().
+ Instead, the focus/unfocus messages need to be sent to the UIProcess side.
+
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::setFocus):
+
+2011-03-08 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Overflow: scroll areas should not paint white in scroll corner if the
+ scrollbars are overlay.
+ <rdar://problem/9082871>
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::paintScrollCorner):
+ Don't paint the scroll corner white if we have overlay scrollbars.
+
+2011-03-08 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ The first time animations are committed they have a bad start time
+ https://bugs.webkit.org/show_bug.cgi?id=55947
+
+ Do a check for a returned lastCommitTime of <=0 and replace it
+ with the mediaTime.
+
+
+ * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
+ (WebCore::CACFLayerTreeHost::notifyAnimationsStarted):
+
+2011-03-08 James Kozianski <koz@chromium.org>
+
+ Reviewed by David Levin.
+
+ Expose isValidProtocol() in KURL.h.
+ https://bugs.webkit.org/show_bug.cgi?id=54594
+
+ This is needed to validate protocols used in calls to
+ navigator.registerProtocolHandler().
+
+ * platform/KURL.cpp:
+ * platform/KURL.h:
+ * platform/KURLGoogle.cpp:
+ (WebCore::isValidProtocol):
+
+2011-03-08 Adam Roben <aroben@apple.com>
+
+ Set svn:mime-type to text/css for all Inspector CSS files
+
+ This will cause them to be served with the correct MIME type from svn.webkit.org's web
+ interface.
+
+ Rubber-stamped by Tim Hatcher.
+
+ * inspector/front-end/audits.css: Added property svn:mime-type.
+ * inspector/front-end/goToLineDialog.css: Added property svn:mime-type.
+ * inspector/front-end/heapProfiler.css: Added property svn:mime-type.
+ * inspector/front-end/helpScreen.css: Added property svn:mime-type.
+ * inspector/front-end/inspector.css: Added property svn:mime-type.
+ * inspector/front-end/inspectorSyntaxHighlight.css: Added property svn:mime-type.
+ * inspector/front-end/networkPanel.css: Added property svn:mime-type.
+ * inspector/front-end/popover.css: Added property svn:mime-type.
+ * inspector/front-end/textViewer.css: Added property svn:mime-type.
+
+2011-03-08 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Steve Block.
+
+ IDBCallbacks::onsuccess(IDBIndex*) is unused and should be removed.
+ https://bugs.webkit.org/show_bug.cgi?id=55938
+
+ The IndexedDatabase specification changed and IDBIndex objects are no
+ longer created asynchronously. We therefore no longer need this method.
+
+ No new tests, just cleanup.
+
+ * storage/IDBCallbacks.h:
+ * storage/IDBRequest.cpp:
+ * storage/IDBRequest.h:
+
+2011-03-08 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80551.
+ http://trac.webkit.org/changeset/80551
+ https://bugs.webkit.org/show_bug.cgi?id=55933
+
+ It broke 285 tests on Qt bot (Requested by Ossy on #webkit).
+
+ * WebCore.pro:
+ * platform/SharedBuffer.cpp:
+ * platform/SharedBuffer.h:
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+ (WebCore::QNetworkReplyHandler::forwardData):
+ (WebCore::QNetworkReplyHandler::start):
+ * platform/network/qt/QNetworkReplyHandler.h:
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::ResourceHandle::supportsBufferedData):
+ (WebCore::ResourceHandle::bufferedData):
+ * platform/qt/QtByteBlock.cpp: Removed.
+ * platform/qt/QtByteBlock.h: Removed.
+ * platform/qt/SharedBufferQt.cpp:
+
+2011-03-08 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Benjamin Poulain.
+
+ RenderObject: Pass complex type arguments as const-references.
+
+ * WebCore.exp.in:
+ * rendering/RenderObject.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::drawBoxSideFromPath):
+ (WebCore::RenderObject::drawArcForBoxSide):
+ (WebCore::RenderObject::localToAbsolute):
+ (WebCore::RenderObject::absoluteToLocal):
+
+2011-03-08 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Antonio Gomes.
+
+ Path: Make measurement functions const
+ https://bugs.webkit.org/show_bug.cgi?id=55914
+
+ * platform/graphics/Path.cpp:
+ (WebCore::Path::length):
+ (WebCore::Path::pointAtLength):
+ (WebCore::Path::normalAngleAtLength):
+ * platform/graphics/Path.h:
+ * platform/graphics/cairo/PathCairo.cpp:
+ (WebCore::Path::strokeBoundingRect):
+ * platform/graphics/cg/PathCG.cpp:
+ (WebCore::Path::strokeBoundingRect):
+ * platform/graphics/openvg/PathOpenVG.cpp:
+ (WebCore::Path::strokeBoundingRect):
+ (WebCore::Path::length):
+ (WebCore::Path::pointAtLength):
+ (WebCore::Path::normalAngleAtLength):
+ * platform/graphics/qt/PathQt.cpp:
+ (WebCore::Path::strokeBoundingRect):
+ (WebCore::Path::length):
+ (WebCore::Path::pointAtLength):
+ (WebCore::Path::normalAngleAtLength):
+ * platform/graphics/skia/PathSkia.cpp:
+ (WebCore::Path::strokeBoundingRect):
+ * platform/graphics/wince/PathWinCE.cpp:
+ (WebCore::Path::strokeBoundingRect):
+ * platform/graphics/wx/PathWx.cpp:
+ (WebCore::Path::strokeBoundingRect):
+
+2011-03-08 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Do not set juntion sides on scrollbar stepper buttons
+ https://bugs.webkit.org/show_bug.cgi?id=55868
+
+ Fixes rendering of steppers for themes using rounded stepper
+ buttons on scrollbars like Adwaita.
+
+ * platform/gtk/ScrollbarThemeGtk3.cpp:
+ (WebCore::ScrollbarThemeGtk::paintButton):
+
+2011-03-08 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Use doubles instead of integers for coordinates when rendering arrows
+ https://bugs.webkit.org/show_bug.cgi?id=55866
+
+ To prevent off-by-one rounding errors.
+
+ * platform/gtk/RenderThemeGtk3.cpp:
+ (WebCore::RenderThemeGtk::paintMenuList):
+ * platform/gtk/ScrollbarThemeGtk3.cpp:
+ (WebCore::ScrollbarThemeGtk::paintButton):
+
+2011-03-08 Markus Goetz <guruz@guruz.de>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Use the QNetworkAccessManager zerocopy feature
+ https://bugs.webkit.org/show_bug.cgi?id=50082
+
+ The feature will be introduced in Qt 4.8.
+ This patch is backwards compatible with Qt 4.7.
+
+ * WebCore.pro:
+ * platform/SharedBuffer.cpp:
+ * platform/SharedBuffer.h:
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::bufferedData):
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+ (WebCore::QNetworkReplyHandler::downloadProgress):
+ (WebCore::QNetworkReplyHandler::forwardData):
+ (WebCore::QNetworkReplyHandler::start):
+ * platform/network/qt/QNetworkReplyHandler.h:
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::ResourceHandle::supportsBufferedData):
+ (WebCore::ResourceHandle::bufferedData):
+ * platform/qt/SharedBufferQt.cpp:
+ (WebCore::SharedBuffer::wrapQtByteBlock):
+ (WebCore::SharedBuffer::hasPlatformData):
+ (WebCore::SharedBuffer::platformData):
+ (WebCore::SharedBuffer::platformDataSize):
+ (WebCore::SharedBuffer::maybeTransferPlatformData):
+ (WebCore::SharedBuffer::clearPlatformData):
+
+2011-03-08 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Fix compilation warnings after r80429
+ https://bugs.webkit.org/show_bug.cgi?id=55864
+
+ * platform/gtk/WidgetGtk.cpp:
+
+2011-03-08 Philippe Normand <pnormand@igalia.com>
+
+ Unreviewed, GTK build fix after r80536
+
+ * GNUmakefile.am:
+
+2011-03-08 Zan Dobersek <zandobersek@gmail.com>
+
+ Reviewed by Martin Robinson.
+
+ [Gtk] toDataURL uses incorrect quality value when saving GdkPixbuf to buffer
+ https://bugs.webkit.org/show_bug.cgi?id=55878
+
+ Multiply the quality parameter by 100 to put it in the range [0, 100] as needed
+ when saving GdkPixbuf to a buffer.
+
+ * platform/graphics/gtk/ImageBufferGtk.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+
+2011-03-07 Daniel Cheng <dcheng@chromium.org>
+
+ Unreviewed.
+
+ Final build fix for r80536.
+
+ * DerivedSources.make:
+
+2011-03-07 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Kent Tamura.
+
+ [EFL] Adjust functions of WebCore's efl port to WebKit coding style
+ https://bugs.webkit.org/show_bug.cgi?id=55924
+
+ Adjust webkit style to PlatformKeyboardEventEfl, PlatformMouseEventEfl and WidgetEfl files.
+
+ * platform/efl/PlatformKeyboardEventEfl.cpp:
+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
+ * platform/efl/PlatformMouseEventEfl.cpp:
+ (WebCore::PlatformMouseEvent::PlatformMouseEvent):
+ * platform/efl/WidgetEfl.cpp:
+ (WebCore::Widget::frameRectsChanged):
+ (WebCore::Widget::setEvasObject):
+
+2011-03-07 Daniel Cheng <dcheng@chromium.org>
+
+ Unreviewed.
+
+ More build fixes for r80536.
+
+ * CMakeLists.txt:
+ * platform/chromium/ClipboardChromium.cpp:
+ * platform/chromium/ClipboardChromium.h:
+
+2011-03-07 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Antonio Gomes.
+
+ [EFL] Adjust functions of ScrollbarEfl.cpp to WebKit coding style
+ https://bugs.webkit.org/show_bug.cgi?id=55917
+
+ Adjust webkit style to ScrollbarEfl files.
+
+ * platform/efl/ScrollbarEfl.cpp:
+ (scrollbarEflEdjeMessage):
+ (ScrollbarEfl::setParent):
+ (ScrollbarEfl::updateThumbPositionAndProportion):
+ (ScrollbarEfl::frameRectsChanged):
+ (ScrollbarEfl::paint):
+ * platform/efl/ScrollbarEfl.h:
+
+2011-03-07 Daniel Cheng <dcheng@chromium.org>
+
+ Unreviewed.
+
+ Build fix for Chromium after r80536.
+
+ * platform/chromium/DataTransferItemChromium.cpp:
+ * platform/chromium/DataTransferItemsChromium.cpp:
+
+2011-03-07 Daniel Cheng <dcheng@chromium.org>
+
+ Unreviewed.
+
+ More build fixes for r80536.
+
+ * CMakeLists.txt:
+ * platform/chromium/ClipboardChromium.cpp:
+ * platform/chromium/ClipboardChromium.h:
+
+2011-03-07 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add support for DataTransferItems
+ https://bugs.webkit.org/show_bug.cgi?id=55115
+
+ This patch adds stubs for DataTransferItems/DataTransferItem as well as implementing the
+ basic functionality on the Chromium port. With the exception of DataTransferItem::getAsFile,
+ all functionality on the DataTransferItems collection has been implemented.
+ This change does not actually hook up DataTransferItems to reflect the actual contents of a
+ drop/paste operation or to allow mutation of data in a copy/drag start yet. That will be
+ enabled via several followup patches.
+
+ Test: editing/pasteboard/data-transfer-items.html
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * CodeGenerators.pri:
+ * DerivedSources.cpp:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/generic/RuntimeEnabledFeatures.cpp:
+ * bindings/generic/RuntimeEnabledFeatures.h:
+ (WebCore::RuntimeEnabledFeatures::setDataTransferItemsEnabled):
+ (WebCore::RuntimeEnabledFeatures::dataTransferItemsEnabled):
+ * bindings/scripts/CodeGeneratorV8.pm: Do not emit an #include line for DOMString, since it's built-in.
+ * dom/Clipboard.h:
+ (WebCore::Clipboard::policy):
+ * dom/Clipboard.idl:
+ * dom/DataTransferItem.cpp: Added.
+ * dom/DataTransferItem.h: Added.
+ (WebCore::DataTransferItem::~DataTransferItem):
+ * dom/DataTransferItem.idl: Added.
+ * dom/DataTransferItems.h: Added.
+ (WebCore::DataTransferItems::~DataTransferItems):
+ * dom/DataTransferItems.idl: Added.
+ * dom/StringCallback.cpp: Added.
+ (WebCore::StringCallback::scheduleCallback):
+ * dom/StringCallback.h: Added.
+ (WebCore::StringCallback::~StringCallback):
+ * dom/StringCallback.idl: Added.
+ * platform/chromium/ClipboardChromium.cpp:
+ (WebCore::ClipboardChromium::items):
+ * platform/chromium/ClipboardChromium.h:
+ * platform/chromium/DataTransferItemChromium.cpp: Added.
+ (WebCore::DataTransferItemChromium::create):
+ (WebCore::DataTransferItemChromium::DataTransferItemChromium):
+ (WebCore::DataTransferItemChromium::kind):
+ (WebCore::DataTransferItemChromium::type):
+ (WebCore::DataTransferItemChromium::getAsString):
+ * platform/chromium/DataTransferItemChromium.h: Added.
+ * platform/chromium/DataTransferItemsChromium.cpp: Added.
+ (WebCore::DataTransferItemsChromium::create):
+ (WebCore::DataTransferItemsChromium::DataTransferItemsChromium):
+ (WebCore::DataTransferItemsChromium::length):
+ (WebCore::DataTransferItemsChromium::item):
+ (WebCore::DataTransferItemsChromium::deleteItem):
+ (WebCore::DataTransferItemsChromium::clear):
+ (WebCore::DataTransferItemsChromium::add):
+ * platform/chromium/DataTransferItemsChromium.h: Added.
+
+2011-03-07 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ selectionHasStyle and selectionStartHasStyle should use EditingStyle
+ https://bugs.webkit.org/show_bug.cgi?id=55902
+
+ Deployed EditingStyle in selectionHasStyle and selectionStartHasStyle.
+ This allowed us to move triStateOfStyle from Editor.cpp to EditingStyle.cpp.
+
+ Also changed the argument lists of selectionHasStyle and selectionStartHasStyle
+ to take a property id and a value instead of a CSSMutableStyleDeclaration to cleanup
+ call sites of these two functions.
+
+ * WebCore.exp.in: Updated the signature of selectionHasStyle. No longer exports
+ selectionStartHasStyle because it's not called anywhere outside of WebCore.
+ * WebCore.order: Ditto.
+ * editing/EditingStyle.cpp:
+ (WebCore::EditingStyle::EditingStyle): Added a new constructor that takes a property id
+ and a property value.
+ (WebCore::EditingStyle::triStateOfStyle): Moved from Editor.cpp.
+ * editing/EditingStyle.h:
+ (WebCore::EditingStyle::create): Added.
+ * editing/Editor.cpp:
+ (WebCore::Editor::selectionStartHasStyle): Takes a property id and a value instead of
+ a CSSStyleDeclaration.
+ (WebCore::Editor::selectionHasStyle): Ditto.
+ * editing/Editor.h: Updated the signatures of selectionStartHasStyle and selectionHasStyle.
+ * editing/EditorCommand.cpp:
+ (WebCore::executeToggleStyle): Calls selectionStartHasStyle and selectionHasStyle.
+ (WebCore::stateStyle): Ditto.
+ * page/ContextMenuController.cpp:
+ (WebCore::ContextMenuController::checkOrEnableIfNeeded): Ditto.
+
+2011-03-07 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (HTML5 tree builder): Text selection in a large text document is extremely slow
+ https://bugs.webkit.org/show_bug.cgi?id=55898
+
+ <rdar://problem/9095839> REGRESSION: Mail hangs with a certain large mail message when
+ linkifying e-mail addresses in in -[DOMCharacterData setData:]
+
+ Changes render tree of fast/text/large-text-composed-char.html, but not image results.
+
+ * dom/CharacterData.cpp: (WebCore::CharacterData::parserAppendData):
+ Changed parserAppendData() to accept a maximum length, and moved code from Text::createWithLengthLimit().
+
+ * dom/CharacterData.h: Moved a constant for maximum length from Text.h.
+
+ * dom/Text.cpp: (WebCore::Text::createWithLengthLimit):
+ * dom/Text.h:
+ This function was unused in ToT. Moved code around to share with CharacterData.
+
+ * html/parser/HTMLConstructionSite.cpp: (WebCore::HTMLConstructionSite::insertTextNode):
+ Chnaged to split large text nodes while parsing again.
+
+2011-03-07 Alice Boxhall <aboxhall@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Fix platform/image-encoders/JPEGImageEncoder.cpp empty_output_buffer() behaviour
+ https://bugs.webkit.org/show_bug.cgi?id=54522
+
+ Fix jpegEmptyOutputBuffer() by ignoring free_in_buffer value as required.
+
+ No new tests, as this code is not yet used in WebKit. Once this code is used to implement canvas.toDataUrl(), the canvas tests will exercise it.
+
+ * platform/image-encoders/JPEGImageEncoder.cpp:
+ (WebCore::jpegEmptyOutputBuffer):
+
+2011-03-07 Sergey Glazunov <serg.glazunov@gmail.com>
+
+ Reviewed by Eric Seidel.
+
+ Add the missing insertedIntoDocument() call in SVGVKernElement and SVGHKernElement
+ https://bugs.webkit.org/show_bug.cgi?id=55896
+
+ Test: svg/dom/vkern-element-crash.html
+
+ * svg/SVGHKernElement.cpp:
+ (WebCore::SVGHKernElement::insertedIntoDocument):
+ * svg/SVGVKernElement.cpp:
+ (WebCore::SVGVKernElement::insertedIntoDocument):
+
+2011-03-07 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80514.
+ http://trac.webkit.org/changeset/80514
+ https://bugs.webkit.org/show_bug.cgi?id=55915
+
+ Caused assertion failures (Requested by ukai on #webkit).
+
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::setPlatformShadow):
+ * platform/graphics/skia/ImageSkia.cpp:
+ (WebCore::paintSkBitmap):
+
+2011-03-07 Cosmin Truta <ctruta@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ SVG <image> referenced by <use> is displayed incorrectly
+ https://bugs.webkit.org/show_bug.cgi?id=55750
+
+ The result of sourceURI must use the URL of the enclosing document as base.
+ Otherwise, the base may sometimes be empty, and, as a consequence,
+ the intermediate KURL object may be invalid.
+
+ Test: svg/custom/use-image-in-g.svg
+
+ * svg/SVGImageLoader.cpp:
+ (WebCore::SVGImageLoader::sourceURI):
+
+2011-03-07 Helder Correia <helder@sencha.com>
+
+ Reviewed by Simon Fraser.
+
+ Shadow is not shown when using strokeRect with a gradient strokeStyle
+ https://bugs.webkit.org/show_bug.cgi?id=52509
+
+ This happens in CG and is related to bug 51869, this time to be fixed
+ in GraphicsContext::strokeRect(const FloatRect& r, float lineWidth).
+ We need to draw the gradient clipped to the stroke on a CGLayer first,
+ and then draw the layer on the GraphicsContext.
+
+ Tests: fast/canvas/canvas-strokeRect-gradient-shadow.html
+ svg/css/rect-gradient-stroke-shadow.svg
+
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::strokeRect):
+
+2011-03-07 Justin Novosad <junov@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ Fix for blurs behind bitmap images in Chromium, and boosting
+ shadow blur quality
+ Bug URLs:
+ https://bugs.webkit.org/show_bug.cgi?id=55410
+ https://bugs.webkit.org/show_bug.cgi?id=55506
+
+ No new tests. Covered by existing layout tests.
+
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::setPlatformShadow): Turn on high quality shadows and fix shadow color
+ * platform/graphics/skia/ImageSkia.cpp:
+ (WebCore::paintSkBitmap): Propagate the draw looper from context to painter
+
+2011-03-07 Andreas Kling <kling@webkit.org>
+
+ Unreviewed Mac build fix after r80508.
+
+ * WebCore.exp.in:
+
+2011-03-07 Enrica Casucci <enrica@apple.com>
+
+ Unreviewed build fix.
+
+ Rolling back http://trac.webkit.org/changeset/80497 due to the
+ 32-bit build failures.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/mac/HTMLConverter.h: Removed.
+ * platform/mac/HTMLConverter.mm: Removed.
+ * platform/mac/PasteboardMac.mm:
+ (WebCore::Pasteboard::writeSelection):
+
+2011-03-07 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Benjamin Poulain.
+
+ FrameView::setBaseBackgroundColor: Pass Color argument as const-reference.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::setBaseBackgroundColor):
+ * page/FrameView.h:
+
+2011-03-07 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ REGRESSION(r78147): Crash on http://gnarf.net/jquery/test/
+ https://bugs.webkit.org/show_bug.cgi?id=55894
+
+ The m_frame can disappear out from under us, and there's no point in
+ checking whether the load is complete in a non-existant frame.
+
+ Test: fast/parser/document-write-into-initial-document.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::explicitClose):
+
+2011-03-07 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80500.
+ http://trac.webkit.org/changeset/80500
+ https://bugs.webkit.org/show_bug.cgi?id=55908
+
+ Caused mysterious GYP error (Requested by abarth on #webkit).
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2011-03-07 Adam Barth <abarth@webkit.org>
+
+ Fix Chromium Mac build. This header should only be included when the
+ feature is enabled.
+
+ * platform/cf/RunLoopTimerCF.cpp:
+
+2011-03-07 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Add WML files to WebCore.gypi
+ https://bugs.webkit.org/show_bug.cgi?id=55905
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2011-03-07 Adrienne Walker <enne@google.com>
+
+ Reviewed by James Robinson.
+
+ [chromium] Add missing include to #define Skia parameter
+ https://bugs.webkit.org/show_bug.cgi?id=55885
+
+ * platform/graphics/chromium/ShaderChromium.h:
+
+2011-03-07 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ AX: WK1 needs to use ScrollView attachment for AXScrollArea, WK2 does not
+ https://bugs.webkit.org/show_bug.cgi?id=55706
+
+ * WebCore.exp.in:
+ * accessibility/AXObjectCache.cpp:
+ (WebCore::AXObjectCache::rootObjectForFrame):
+ * accessibility/AXObjectCache.h:
+ * accessibility/AccessibilityScrollView.cpp:
+ (WebCore::AccessibilityScrollView::isAttachment):
+ (WebCore::AccessibilityScrollView::widgetForAttachmentView):
+ * accessibility/AccessibilityScrollView.h:
+ (WebCore::AccessibilityScrollView::firstChild):
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+
+2011-03-07 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION: Copied content loses formatting on paste to external apps.
+ https://bugs.webkit.org/show_bug.cgi?id=47615
+ <rdar://problem/9001214>
+
+ This is a resubmission of a patch that was landed a while ago then rolled
+ back because of a build failure on SnowLeopard and Leopard.
+
+ This patch adds a way for WebKit2 to create NSAttributedStrings from
+ a DOM range without using the AppKit api initWithDOMRange that internally
+ needs to access the WebView. The NSAttributedString is needed to create
+ RTF formats in the pasteboard.
+ This is to be considered a first step, since in the future we want to have
+ an implementation based on the TextIterator.
+
+ * WebCore.xcodeproj/project.pbxproj: Added new file.
+ * platform/mac/HTMLConverter.h: Added.
+ * platform/mac/HTMLConverter.mm: Added.
+ * platform/mac/PasteboardMac.mm:
+ (WebCore::Pasteboard::writeSelection): We now use WebHTMLConverter
+ class for WebKit2 to create the NSAttributedString from the DOM range.
+
+2011-03-07 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Add some missing platform files to WebCore.gypi
+ https://bugs.webkit.org/show_bug.cgi?id=55897
+
+ There are a bunch more, but this is a start.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2011-03-07 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ Rename JNIBridgeV8.cpp/h to JavaFieldV8.cpp/h
+ https://bugs.webkit.org/show_bug.cgi?id=55879
+
+ No new tests, refactoring only.
+
+ * Android.v8bindings.mk:
+ * WebCore.gypi:
+ * bridge/jni/v8/JavaClassV8.cpp:
+ * bridge/jni/v8/JavaClassV8.h:
+ * bridge/jni/v8/JavaFieldV8.cpp: Renamed from Source/WebCore/bridge/jni/v8/JNIBridgeV8.cpp.
+ (JavaField::JavaField):
+ * bridge/jni/v8/JavaFieldV8.h: Renamed from Source/WebCore/bridge/jni/v8/JNIBridgeV8.h.
+ (JSC::Bindings::JavaField::name):
+ (JSC::Bindings::JavaField::type):
+ (JSC::Bindings::JavaField::getJNIType):
+ * bridge/jni/v8/JavaInstanceV8.cpp:
+ * bridge/jni/v8/JavaNPObjectV8.cpp:
+
+2011-03-07 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ Add plumbing for paste support to ChromiumDataObject::types()
+ https://bugs.webkit.org/show_bug.cgi?id=55792
+
+ This is a preliminary patch to support event.dataTransfer.items. This
+ adds plumbing to support retrieving the types in a paste event. It also
+ moves the check for files in a drag/paste up to ClipboardChromium, since
+ internal code needs to be able to differentiate between actual files in
+ a drag and someone that simply decided to use "Files" as a custom type
+ string.
+
+ Test: editing/pasteboard/onpaste-text-html-types.html
+
+ * platform/chromium/ChromiumDataObject.cpp:
+ (WebCore::ChromiumDataObject::types):
+ (WebCore::ChromiumDataObject::containsFilenames):
+ * platform/chromium/ChromiumDataObject.h:
+ * platform/chromium/ClipboardChromium.cpp:
+ (WebCore::ClipboardChromium::types):
+ * platform/chromium/ClipboardMimeTypes.cpp:
+ * platform/chromium/ClipboardMimeTypes.h:
+
+2011-03-07 Takayoshi Kochi <kochi@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [chromium] Use preferred locale information when choosing fallback
+ font using fontconfig on Linux platform.
+ http://bugs.webkit.org/show_bug.cgi?id=55453
+
+ No new tests, as it depends on ICU and locale setting, so it will be
+ covered by Chromium side.
+
+ * platform/chromium/PlatformBridge.h:
+ * platform/graphics/chromium/FontCacheLinux.cpp:
+
+2011-03-07 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Add gobject, cpp, and objc bindings to WebCore.gypi
+ https://bugs.webkit.org/show_bug.cgi?id=55892
+
+ These are also excluded from the Chromium build but needed for various
+ other ports.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2011-03-07 Sergey Glazunov <serg.glazunov@gmail.com>
+
+ Reviewed by Dimitri Glazkov.
+
+ Node::checkAddChild and Node::checkReplaceChild shouldn't change the owner document of a node
+ https://bugs.webkit.org/show_bug.cgi?id=55803
+
+ Test: fast/dom/dom-method-document-change.html
+
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::insertBefore):
+ (WebCore::ContainerNode::replaceChild):
+ (WebCore::ContainerNode::appendChild):
+ * dom/Node.cpp:
+ (WebCore::Node::checkReplaceChild):
+ (WebCore::Node::checkAddChild):
+ * dom/Node.h:
+
+2011-03-07 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80484.
+ http://trac.webkit.org/changeset/80484
+ https://bugs.webkit.org/show_bug.cgi?id=55891
+
+ requires Chromium DEPS roll (Requested by dcheng on #webkit).
+
+ * platform/chromium/ChromiumDataObject.cpp:
+ (WebCore::ChromiumDataObject::types):
+ * platform/chromium/ChromiumDataObject.h:
+ (WebCore::ChromiumDataObject::containsFilenames):
+ * platform/chromium/ClipboardChromium.cpp:
+ (WebCore::ClipboardChromium::types):
+ * platform/chromium/ClipboardMimeTypes.cpp:
+ * platform/chromium/ClipboardMimeTypes.h:
+
+2011-03-07 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Add missing bindings/js files to WebCore.gypi
+ https://bugs.webkit.org/show_bug.cgi?id=55888
+
+ These files are excluded from the Chromium build but needed for the Mac
+ build.
+
+ * WebCore.gypi:
+
+2011-03-07 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ Add plumbing for paste support to ChromiumDataObject::types()
+ https://bugs.webkit.org/show_bug.cgi?id=55792
+
+ This is a preliminary patch to support event.dataTransfer.items. This
+ adds plumbing to support retrieving the types in a paste event. It also
+ moves the check for files in a drag/paste up to ClipboardChromium, since
+ internal code needs to be able to differentiate between actual files in
+ a drag and someone that simply decided to use "Files" as a custom type
+ string.
+
+ Test: editing/pasteboard/onpaste-text-html-types.html
+
+ * platform/chromium/ChromiumDataObject.cpp:
+ (WebCore::ChromiumDataObject::types):
+ (WebCore::ChromiumDataObject::containsFilenames):
+ * platform/chromium/ChromiumDataObject.h:
+ * platform/chromium/ClipboardChromium.cpp:
+ (WebCore::ClipboardChromium::types):
+ * platform/chromium/ClipboardMimeTypes.cpp:
+ * platform/chromium/ClipboardMimeTypes.h:
+
+2011-03-07 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Viewport Warning/Error Messages Are Now Inaccurate
+ https://bugs.webkit.org/show_bug.cgi?id=53707
+
+ Correct and improve the error messages for viewport parsing.
+
+ Tests: fast/viewport/viewport-warnings-1.html
+ fast/viewport/viewport-warnings-2.html
+ fast/viewport/viewport-warnings-3.html
+ fast/viewport/viewport-warnings-4.html
+ fast/viewport/viewport-warnings-5.html
+ fast/viewport/viewport-warnings-6.html
+
+ * dom/ViewportArguments.cpp:
+ (WebCore::numericPrefix):
+ (WebCore::findSizeValue): remove incorrect device-width / height tips.
+ (WebCore::setViewportFeature): report a warning for an unrecognized key.
+ (WebCore::viewportErrorMessageTemplate): added template for unrecognized key.
+ (WebCore::viewportErrorMessageLevel): classify an unrecognized key is an error.
+ * dom/ViewportArguments.h: removed no longer used warnings.
+
+2011-03-07 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Separate the update and draw portions of LayerRendererChromium's drawLayers function
+ https://bugs.webkit.org/show_bug.cgi?id=54047
+
+ This splits up LayerRendererChromium::drawLayers() into two phases,
+ one that updates layers and one that actually draws them. Most of the
+ patch is moving the bodies of drawLayers() and updateLayersRecursive()
+ into smaller helper functions.
+
+ The main entry point is renamed updateAndDrawLayers(), but otherwise
+ has the same signature as drawLayers() did. Internally it does the
+ following:
+
+ 1.) Updates the root layer's contents
+ 2.) Updates the root layer's scrollbars
+ 3.) Updates the RenderSurface tree and the contents of all child
+ layers
+ 4.) Draws the root layer and root layer scrollbars
+ 5.) Draws all child layers using the previously updated
+ CCLayerImpl/RenderSurface data.
+
+ A few things still need to be done after this patch to complete the separation
+ of the update and draw step, but they can happen in later patches:
+ *) The root layer and root layer scrollbars contents should be
+ uploaded to textures at draw time, not update time.
+ *) The RenderSurface tree should be updated at draw time, not update
+ time.
+
+ Covered by the compositing/ tests.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::updateRootLayerContents):
+ (WebCore::LayerRendererChromium::updateRootLayerScrollbars):
+ (WebCore::LayerRendererChromium::drawRootLayer):
+ (WebCore::LayerRendererChromium::updateAndDrawLayers):
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::getFramebufferPixels):
+ (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
+ (WebCore::LayerRendererChromium::updateContentsRecursive):
+ (WebCore::LayerRendererChromium::drawLayer):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::visibleRectSize):
+ * platform/graphics/chromium/RenderSurfaceChromium.cpp:
+ (WebCore::RenderSurfaceChromium::drawSurface):
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+
+2011-03-07 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Sort WebCore.gypi
+ https://bugs.webkit.org/show_bug.cgi?id=55887
+
+ These files should be in order. This is preparation for adding in the
+ missing files.
+
+ * WebCore.gypi:
+
+2011-03-07 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed buildfix after r80478.
+
+ * dom/Document.cpp: Add suggested parentheses to make GCC happy.
+ (WebCore::Document::didReceiveTask):
+
+2011-03-07 Yong Li <yoli@rim.com>
+
+ Reviewed by Darin Adler.
+
+ Defer ScriptExecutionContext::Task's in Document when page loading is deferred.
+ Schedule them with timer when page loading is resumed. The tasks will be performed
+ in the original order. This fixes the problem that database callbacks could be missed
+ when page loading was deferred.
+ https://bugs.webkit.org/show_bug.cgi?id=49401
+
+ Manual test added: manual-tests/database-callback-deferred.html.
+
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::~Document):
+ (WebCore::Document::didReceiveTask):
+ (WebCore::Document::postTask):
+ (WebCore::Document::pendingTasksTimerFired):
+ (WebCore::Document::willDeferLoading):
+ (WebCore::Document::didResumeLoading):
+ * dom/Document.h:
+ * manual-tests/database-callback-deferred.html: Added.
+ * page/PageGroupLoadDeferrer.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
+ (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
+
+2011-03-07 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Use HashMaps for caching primitive values
+ https://bugs.webkit.org/show_bug.cgi?id=55873
+
+ Most documents use only small subset of cacheable primitive values. By replacing
+ fixed size cache arrays with HashMaps we can reduce the constant memory usage while also
+ expanding the range of cacheable values.
+
+ * css/CSSPrimitiveValueCache.cpp:
+ (WebCore::CSSPrimitiveValueCache::CSSPrimitiveValueCache):
+ (WebCore::CSSPrimitiveValueCache::createIdentifierValue):
+ (WebCore::CSSPrimitiveValueCache::createColorValue):
+ (WebCore::CSSPrimitiveValueCache::createValue):
+ * css/CSSPrimitiveValueCache.h:
+
+2011-03-07 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ Split JNIBridgeJSC.cpp/h into JavaArrayJSC.cpp/h and JavaFieldJSC.cpp/h
+ https://bugs.webkit.org/show_bug.cgi?id=55881
+
+ No new tests, refactoring only.
+
+ * Android.jscbindings.mk:
+ * GNUmakefile.am:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bridge/jni/jsc/JNIBridgeJSC.cpp: Removed.
+ * bridge/jni/jsc/JNIBridgeJSC.h: Removed.
+ * bridge/jni/jsc/JNIUtilityPrivate.cpp:
+ * bridge/jni/jsc/JavaClassJSC.cpp:
+ * bridge/jni/jsc/JavaClassJSC.h:
+ * bridge/jni/jsc/JavaInstanceJSC.cpp:
+
+2011-03-07 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Replace WebKit2's decidePolicyForMIMEType with decidePolicyForResponse
+ https://bugs.webkit.org/show_bug.cgi?id=55827
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::dispatchDecidePolicyForResponse):
+ * loader/FrameLoaderClient.h:
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::didReceiveResponse):
+ * loader/PolicyChecker.cpp:
+ (WebCore::PolicyChecker::checkContentPolicy):
+ * loader/PolicyChecker.h:
+ Rename FrameLoaderClient::dispatchDecidePolicyForMIMEType to dispatchDecidePolicyForResponse
+ and pass the entire response, instead of just the MIMEType.
+
+2011-03-07 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Add API to enumerate/delete files downloaded for <audio> and <video>
+ https://bugs.webkit.org/show_bug.cgi?id=55267
+ <rdar://problem/9049280>
+
+ No new tests, this is just more plumbing.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::getSitesInMediaCache): Make static, call MediaPlayer static method.
+ (WebCore::HTMLMediaElement::clearMediaCache): Ditto.
+ (WebCore::HTMLMediaElement::clearMediaCacheForSite): Ditto.
+ * html/HTMLMediaElement.h:
+
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayerFactory::MediaPlayerFactory): Add new media engine factory functions.
+ (WebCore::addMediaEngine): Ditto.
+ (WebCore::MediaPlayer::getSitesInMediaCache): Call static method on all installed media engines.
+ (WebCore::MediaPlayer::clearMediaCache): Ditto.
+ (WebCore::MediaPlayer::clearMediaCacheForSite): Ditto.
+ * platform/graphics/MediaPlayer.h:
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::MediaPlayerPrivateGStreamer::registerMediaEngine): Update for MediaEngineRegistrar change.
+
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Ditto.
+
+ * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
+ (WebCore::MediaPlayerPrivatePhonon::registerMediaEngine): Ditto.
+
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ (WebCore::MediaPlayerPrivateQt::registerMediaEngine): Ditto.
+
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::registerMediaEngine): Ditto.
+
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
+ (WebCore::MediaPlayerPrivate::registerMediaEngine): Ditto.
+
+2011-03-07 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ Split JNIBridge.cpp/h into JavaString.h and JavaMethod.cpp/h
+ https://bugs.webkit.org/show_bug.cgi?id=55774
+
+ No new tests, refactoring only.
+
+ * Android.jscbindings.mk:
+ * Android.v8bindings.mk:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bridge/jni/JavaMethod.cpp:
+ (JavaMethod::JavaMethod):
+ (JavaMethod::~JavaMethod):
+ (appendClassName):
+ (JavaMethod::signature):
+ (JavaMethod::JNIReturnType):
+ (JavaMethod::methodID):
+ * bridge/jni/JavaMethod.h:
+ (JSC::Bindings::JavaMethod::name):
+ (JSC::Bindings::JavaMethod::returnType):
+ (JSC::Bindings::JavaMethod::parameterAt):
+ (JSC::Bindings::JavaMethod::numParameters):
+ (JSC::Bindings::JavaMethod::isStatic):
+ * bridge/jni/JavaString.h:
+ (JSC::Bindings::JavaString::JavaString):
+ (JSC::Bindings::JavaString::utf8):
+ (JSC::Bindings::JavaString::length):
+ (JSC::Bindings::JavaString::impl):
+ * bridge/jni/jni_jsobject.mm:
+ * bridge/jni/jsc/JNIBridgeJSC.h:
+ * bridge/jni/v8/JNIBridgeV8.h:
+ * bridge/jni/v8/JavaClassV8.cpp:
+ * bridge/jni/v8/JavaClassV8.h:
+ * bridge/jni/v8/JavaInstanceV8.cpp:
+
+2011-03-07 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Steve Block.
+
+ Add source to IDBCursor, objectStore to IDBIndex, and remove storeName
+ https://bugs.webkit.org/show_bug.cgi?id=55812
+
+ This brings us in line with what's in the spec:
+ http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html
+
+ * storage/IDBCursor.cpp:
+ (WebCore::IDBCursor::create):
+ (WebCore::IDBCursor::IDBCursor):
+ (WebCore::IDBCursor::source):
+ * storage/IDBCursor.h:
+ * storage/IDBCursor.idl:
+ * storage/IDBCursorWithValue.cpp:
+ (WebCore::IDBCursorWithValue::create):
+ (WebCore::IDBCursorWithValue::IDBCursorWithValue):
+ * storage/IDBCursorWithValue.h:
+ * storage/IDBIndex.cpp:
+ (WebCore::IDBIndex::IDBIndex):
+ * storage/IDBIndex.h:
+ (WebCore::IDBIndex::create):
+ (WebCore::IDBIndex::objectStore):
+ * storage/IDBIndex.idl:
+ * storage/IDBObjectStore.cpp:
+ (WebCore::IDBObjectStore::createIndex):
+ (WebCore::IDBObjectStore::index):
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::onSuccess):
+
+2011-03-07 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ AX: kAXCellForColumnAndRowParameterizedAttribute doesn't work ARIA grids with colspans
+ https://bugs.webkit.org/show_bug.cgi?id=55735
+
+ The ARIA grid implementation needed to verify the row/column range of a cell instead of
+ assuming a 1-1 mapping between children and row/column.
+
+ Test: platform/mac/accessibility/aria-table-with-colspan-cells.html
+
+ * accessibility/AccessibilityARIAGrid.cpp:
+ (WebCore::AccessibilityARIAGrid::cellForColumnAndRow):
+
+2011-03-07 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Steve Block.
+
+ IDBRequest::onSuccess(IDBObjectStore*) should be removed as it is unused.
+ IDBObjectStore objects used to be created asynchronously, so we needed
+ this method to be invoked, with the new object store as the parameter,
+ whenever the creation succeeded. The spec has changed so that IDBObjectStore
+ objects are created synchronously, so this method is no longer needed.
+ https://bugs.webkit.org/show_bug.cgi?id=55777
+
+ No new tests, just refactoring.
+
+ * storage/IDBCallbacks.h:
+ * storage/IDBRequest.cpp:
+ * storage/IDBRequest.h:
+
+2011-03-04 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ JavaParameter should be removed
+ https://bugs.webkit.org/show_bug.cgi?id=55772
+
+ No new tests, refactoring only.
+
+ * bridge/jni/JNIBridge.cpp:
+ (JavaMethod::JavaMethod):
+ (JavaMethod::~JavaMethod):
+ (JavaMethod::signature):
+ * bridge/jni/JNIBridge.h:
+ (JSC::Bindings::JavaMethod::parameterAt):
+ (JSC::Bindings::JavaMethod::numParameters):
+ * bridge/jni/JNIUtility.h:
+ * bridge/jni/jsc/JavaInstanceJSC.cpp:
+ (JavaInstance::invokeMethod):
+ * bridge/jni/v8/JNIUtilityPrivate.cpp:
+ (JSC::Bindings::convertNPVariantToJValue):
+ * bridge/jni/v8/JNIUtilityPrivate.h:
+ * bridge/jni/v8/JavaInstanceV8.cpp:
+ (JavaInstance::invokeMethod):
+
+2011-03-07 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ REGRESSION (r79574): fast/dom/global-constructors.html failing on Windows 7 Release (Tests) bots
+ https://bugs.webkit.org/show_bug.cgi?id=55166
+ <rdar://problem/9050430>
+
+ Make CSS primitive value cache per-document.
+
+ Test: http/tests/security/cross-origin-css-primitive.html
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::valueForNinePieceImage):
+ (WebCore::zoomAdjustedPixelValue):
+ (WebCore::zoomAdjustedNumberValue):
+ (WebCore::zoomAdjustedPixelValueForLength):
+ (WebCore::valueForReflection):
+ (WebCore::getPositionOffsetValue):
+ (WebCore::CSSComputedStyleDeclaration::currentColorOrValidColor):
+ (WebCore::getBorderRadiusCornerValue):
+ (WebCore::computedTransform):
+ (WebCore::getDelayValue):
+ (WebCore::getDurationValue):
+ (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
+ (WebCore::CSSComputedStyleDeclaration::valueForShadow):
+ (WebCore::valueForFamily):
+ (WebCore::renderTextDecorationFlagsToCSSValue):
+ (WebCore::fillRepeatToCSSValue):
+ (WebCore::fillSizeToCSSValue):
+ (WebCore::contentToCSSValue):
+ (WebCore::counterToCSSValue):
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseSheet):
+ (WebCore::CSSParser::parseRule):
+ (WebCore::CSSParser::parseKeyframeRule):
+ (WebCore::CSSParser::parseValue):
+ (WebCore::CSSParser::parseColor):
+ (WebCore::CSSParser::parseSelector):
+ (WebCore::CSSParser::parseDeclaration):
+ (WebCore::CSSParser::setStyleSheet):
+ (WebCore::CSSParser::parseWCSSInputProperty):
+ (WebCore::parseBackgroundClip):
+ (WebCore::CSSParser::parseFillShorthand):
+ (WebCore::CSSParser::parsePage):
+ (WebCore::CSSParser::parseSizeParameter):
+ (WebCore::CSSParser::parseContent):
+ (WebCore::CSSParser::parseAttr):
+ (WebCore::CSSParser::parseBackgroundColor):
+ (WebCore::CSSParser::parseFillPositionXY):
+ (WebCore::CSSParser::parseFillPosition):
+ (WebCore::CSSParser::parseFillRepeat):
+ (WebCore::CSSParser::parseFillSize):
+ (WebCore::CSSParser::parseFillProperty):
+ (WebCore::CSSParser::parseAnimationDelay):
+ (WebCore::CSSParser::parseAnimationDirection):
+ (WebCore::CSSParser::parseAnimationDuration):
+ (WebCore::CSSParser::parseAnimationFillMode):
+ (WebCore::CSSParser::parseAnimationIterationCount):
+ (WebCore::CSSParser::parseAnimationName):
+ (WebCore::CSSParser::parseAnimationPlayState):
+ (WebCore::CSSParser::parseAnimationProperty):
+ (WebCore::CSSParser::parseTransformOriginShorthand):
+ (WebCore::CSSParser::parseAnimationTimingFunction):
+ (WebCore::CSSParser::parseDashboardRegions):
+ (WebCore::CSSParser::parseCounterContent):
+ (WebCore::CSSParser::parseShape):
+ (WebCore::CSSParser::parseFont):
+ (WebCore::CSSParser::parseFontFamily):
+ (WebCore::CSSParser::parseFontStyle):
+ (WebCore::CSSParser::parseFontVariant):
+ (WebCore::CSSParser::parseFontWeight):
+ (WebCore::ShadowParseContext::ShadowParseContext):
+ (WebCore::ShadowParseContext::commitLength):
+ (WebCore::ShadowParseContext::commitStyle):
+ (WebCore::CSSParser::parseShadow):
+ (WebCore::CSSParser::parseReflect):
+ (WebCore::BorderImageParseContext::BorderImageParseContext):
+ (WebCore::BorderImageParseContext::commitNumber):
+ (WebCore::BorderImageParseContext::commitBorderImage):
+ (WebCore::CSSParser::parseBorderImage):
+ (WebCore::CSSParser::parseBorderRadius):
+ (WebCore::CSSParser::parseCounter):
+ (WebCore::parseDeprecatedGradientPoint):
+ (WebCore::parseDeprecatedGradientColorStop):
+ (WebCore::CSSParser::parseDeprecatedGradient):
+ (WebCore::valueFromSideKeyword):
+ (WebCore::parseGradientColorOrKeyword):
+ (WebCore::CSSParser::parseLinearGradient):
+ (WebCore::CSSParser::parseRadialGradient):
+ (WebCore::CSSParser::parseGradientColorStops):
+ (WebCore::CSSParser::parseTransform):
+ (WebCore::CSSParser::parseTransformOrigin):
+ (WebCore::CSSParser::parseTextEmphasisStyle):
+ * css/CSSParser.h:
+ (WebCore::CSSParser::primitiveValueCache):
+ * css/CSSPrimitiveValue.cpp:
+ * css/CSSPrimitiveValue.h:
+ (WebCore::CSSPrimitiveValue::createIdentifier):
+ (WebCore::CSSPrimitiveValue::createColor):
+ (WebCore::CSSPrimitiveValue::create):
+ * css/CSSPrimitiveValueCache.cpp: Added.
+ (WebCore::CSSPrimitiveValueCache::CSSPrimitiveValueCache):
+ (WebCore::CSSPrimitiveValueCache::~CSSPrimitiveValueCache):
+ (WebCore::CSSPrimitiveValueCache::createIdentifierValue):
+ (WebCore::CSSPrimitiveValueCache::createColorValue):
+ (WebCore::CSSPrimitiveValueCache::createValue):
+ * css/CSSPrimitiveValueCache.h: Added.
+ (WebCore::CSSPrimitiveValueCache::create):
+ (WebCore::CSSPrimitiveValueCache::createValue):
+ * dom/Document.cpp:
+ (WebCore::Document::cssPrimitiveValueCache):
+ * dom/Document.h:
+
+2011-03-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Filter sources in WebCore GYP build for Mac
+ https://bugs.webkit.org/show_bug.cgi?id=55857
+
+ This patch removes a large number of files that do not build as part of
+ the Mac build. I'm not fully sold on this method of
+ including/excluding files, but it's the "gyp way" so we should probably
+ try it first.
+
+ This patch also sets xcode_list_excluded_files to 0, which removes the
+ excluded files from the Xcode project file, which is necessary in order
+ to prevent the header map feature from including the wrong header file.
+
+ * gyp/WebCore.gyp:
+
+2011-03-07 Ryuan Choi <ryuan.choi@samsung.com>
+
+ Unreviewed EFL build fix.
+
+ [EFL] Build break on Debug build.
+ https://bugs.webkit.org/show_bug.cgi?id=55858
+
+ * platform/efl/RenderThemeEfl.cpp:
+ (WebCore::RenderThemeEfl::themePartCacheEntrySurfaceCreate):
+
+2011-03-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Add webcore_derived_source_files to WebCore.gypi
+ https://bugs.webkit.org/show_bug.cgi?id=55856
+
+ This is the list of files generated by the Mac port. It's possible
+ other ports generate a different list of files.
+
+ * WebCore.gypi:
+ * gyp/WebCore.gyp:
+
+2011-03-06 Naoki Takano <takano.naoki@gmail.com>
+
+ Reviewed by Kent Tamura.
+
+ Input type=number spin buttons remain invisible but functional after div changed from hidden to visible.
+ https://bugs.webkit.org/show_bug.cgi?id=55839
+ http://crbug.com/73866
+ http://crbug.com/62527
+
+ We also need style change for m_innerSpinButton not only for m_outerSpinBuggon when styleDidChange() is called.
+
+ Test: fast/forms/input-appearance-spinbutton-visibility.html
+
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::styleDidChange):
+
+2011-03-06 Naoki Takano <takano.naoki@gmail.com>
+
+ Reviewed by Kent Tamura.
+
+ [Chromium] Autocomplete suggestion extends out of window (and onto second monitor)
+ https://bugs.webkit.org/show_bug.cgi?id=54795
+
+ Implement width clip logic according to browser screen width and popup window width. This fix is enough for Win and Mac, but there is a problem in Linux. Because WebScreenInfoFactory::screenInfo() can get only merged screen size, not the screen size where the browser exists.
+
+ Test: manual-tests/popup-width-restriction-within-screen.html
+
+ * manual-tests/popup-width-restriction-within-screen.html: Added.
+ * platform/chromium/PopupMenuChromium.cpp:
+ (WebCore::PopupContainer::layoutAndCalculateWidgetRect): Implement the width clip logic according to screen width.
+
+2011-03-06 Yuta Kitamura <yutak@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Add SHA-1 for new WebSocket protocol
+ https://bugs.webkit.org/show_bug.cgi?id=55039
+
+ * ForwardingHeaders/wtf/SHA1.h: Added.
+
+2011-03-06 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Antti Koivisto.
+
+ QuickTime based media engines should respect private browsing mode
+ https://bugs.webkit.org/show_bug.cgi?id=55848
+
+ No new tests, it is only possible to test this by manually deleting and monitoring the
+ the Quicktime caches.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::privateBrowsingStateDidChange): Add logging.
+
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::MediaPlayer): Initialize m_privateBrowsing.
+ (WebCore::MediaPlayer::loadWithNextMediaEngine): Set privacy mode on new media engine.
+ (WebCore::MediaPlayer::setPrivateBrowsingMode): Stash setting in m_privateBrowsing.
+ * platform/graphics/MediaPlayer.h:
+ * platform/graphics/MediaPlayerPrivate.h:
+ (WebCore::MediaPlayerPrivateInterface::setPrivateBrowsingMode):
+
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ (WebCore::MediaPlayerPrivateQTKit::MediaPlayerPrivateQTKit): Initialize m_privateBrowsing.
+ (WebCore::MediaPlayerPrivateQTKit::createQTMovie): Pass private browsing attribute when
+ creating new movie.
+ (WebCore::MediaPlayerPrivateQTKit::setPrivateBrowsingMode): New, store privacy setting in
+ m_privateBrowsing and set movie attribute.
+
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
+ Initialize m_privateBrowsing.
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setPrivateBrowsingMode): New, store
+ privacy setting in m_privateBrowsing and call QTMovie.
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
+
+ * platform/graphics/win/QTMovie.cpp:
+ (QTMoviePrivate::QTMoviePrivate): Initialize m_privateBrowsing.
+ (QTMovie::load):Pass private browsing property when creating new movie.
+ (QTMovie::setPrivateBrowsingMode): New, store privacy setting in m_privateBrowsing and
+ set movie property.
+ * platform/graphics/win/QTMovie.h:
+
+2011-03-06 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Darin Adler.
+
+ style.borderSpacing always returns empty string
+ https://bugs.webkit.org/show_bug.cgi?id=54816
+
+ Teach CSSMutableStyleDeclaration::getPropertyValue() how to reconstitute
+ the value for border-spacing from the value of the WebKit internal CSS
+ property -webkit-border-horizontal-spacing and -webkit-border-vertical-spacing.
+
+ The CSS property border-spacing describes the horizontal and vertical border
+ spacing for an HTML Table element. Notice, WebKit internally represents the value
+ of this property as two properties: -webkit-border-horizontal-spacing and
+ -webkit-border-vertical-spacing, for the horizontal and vertical border spacing,
+ respectively. And WebKit doesn't know to reconstitute these internal properties.
+ Therefore style.borderSpacing always returns the empty string.
+
+ Test: fast/css/table-border-spacing.html
+
+ * css/CSSMutableStyleDeclaration.cpp:
+ (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
+ (WebCore::CSSMutableStyleDeclaration::borderSpacingValue): Added.
+ * css/CSSMutableStyleDeclaration.h:
+
+2011-03-06 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ <rdar://problem/9093327> Implement -hyphenate-limit-{before,after}
+ https://bugs.webkit.org/show_bug.cgi?id=55850
+
+ Tests: fast/css/parsing-hyphenate-limit.html
+ fast/text/hyphenate-limit-before-after.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::computedProperties) Updated this array with the new properties and some old properties
+ that it was missing.
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added
+ CSSPropertyWebkitHyphenateLimit{Before,After}.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue): Parse -webkit-hyphenate-limit-{before,after}, allowing
+ 'auto' and non-negative integers.
+
+ * css/CSSPropertyNames.in: Added -webkit-hyphenate-limit-{before,after}.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty): Handle CSSPropertyWebkitHyphenateLimit{Before,After}.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::tryHyphenating): Added minimum prefix and suffix length parameters and checks to only
+ allow hyphenation if the prefix and the suffix are sufficiently long.
+ (WebCore::RenderBlock::findNextLineBreak): Pass the limits to tryHyphenating().
+
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff): A difference in hyphenation limits is a layout difference.
+
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::hyphenationLimitBefore): Added.
+ (WebCore::InheritedFlags::hyphenationLimitAfter): Added.
+ (WebCore::InheritedFlags::setHyphenationLimitBefore): Added.
+ (WebCore::InheritedFlags::setHyphenationLimitAfter): Added.
+ (WebCore::InheritedFlags::initialHyphenationLimitBefore): Added. Returns -1, which is the
+ representation of 'auto'.
+ (WebCore::InheritedFlags::initialHyphenationLimitAfter): Ditto.
+
+ * rendering/style/StyleRareInheritedData.cpp:
+ (WebCore::StyleRareInheritedData::StyleRareInheritedData): Initialize hyphenation limits.
+ (WebCore::StyleRareInheritedData::operator==): Compare hyphenation limits.
+ * rendering/style/StyleRareInheritedData.h:
+
+2011-03-06 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ WebKit2: Use CFNetwork Sessions API.
+ https://bugs.webkit.org/show_bug.cgi?id=55435.
+
+ When Private Browsing is enabled, use cookies from a in-memory cookie storage based on the
+ Private Browsing Storage Session.
+
+ * WebCore.exp.in:
+ Add the new WKSI functions.
+ * platform/mac/WebCoreSystemInterface.h:
+ Ditto.
+ * platform/mac/WebCoreSystemInterface.mm:
+ Ditto.
+
+ * platform/mac/CookieJar.mm:
+ (WebCore::cookies):
+ If USE(CFURLSTORAGESESSIONS) and there is a Private Browsing Cookie Storage, call into WKSI.
+ Otherwise, behave the same as before.
+ (WebCore::cookieRequestHeaderFieldValue):
+ Ditto.
+ (WebCore::setCookies):
+ Ditto.
+ (WebCore::cookiesEnabled):
+ Ditto
+ (WebCore::getRawCookies):
+ Ditto.
+ (WebCore::deleteCookie):
+ Ditto.
+
+ * platform/network/CookieStorage.h:
+ * platform/network/cf/CookieStorageCFNet.cpp:
+ (WebCore::privateBrowsingCookieStorage):
+ Keep track of the Private Browsing Cookie Storage in a locally defined static inside a
+ function instead of at the global scope.
+ (WebCore::currentCookieStorage):
+ Use privateBrowsingCookieStorage.
+ (WebCore::setCurrentCookieStorage):
+ Ditto.
+ (WebCore::setCookieStoragePrivateBrowsingEnabled):
+ If USE(CFURLSTORAGESESSIONS), send the Private Browsing Storage Session to
+ wkCreatePrivateInMemoryHTTPCookieStorage.
+ * platform/network/mac/CookieStorageMac.mm:
+ (WebCore::privateBrowsingCookieStorage):
+ Keep track of the Private Browsing Cookie Storage.
+ (WebCore::setCookieStoragePrivateBrowsingEnabled):
+ If USE(CFURLSTORAGESESSIONS), then set or clear privateBrowsingCookieStorage().
+ Added a FIXME to observe changes to the Private Browsing Cookie Storage when it is defined.
+
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::shouldRelaxThirdPartyCookiePolicy):
+ Refactor the logic to determine whether or not to relax the third party cookie policy here.
+ If USE(CFURLSTORAGESESSIONS), then get the information from the privateBrowsingCookieStorage.
+ (WebCore::ResourceHandle::createNSURLConnection):
+ Use shouldRelaxThirdPartyCookiePolicy.
+ (WebCore::ResourceHandle::loadResourceSynchronously):
+ Ditto.
+
+2011-03-05 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80428.
+ http://trac.webkit.org/changeset/80428
+ https://bugs.webkit.org/show_bug.cgi?id=55833
+
+ Broke SnowLeopard (Requested by xan_ on #webkit).
+
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::handlePostReadFile):
+
+2011-03-01 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Windowless plugins override the view cursor
+ https://bugs.webkit.org/show_bug.cgi?id=55531
+
+ manual test: manual-tests/plugins/windowless.html
+
+ * platform/gtk/WidgetGtk.cpp:
+ (WebCore::Widget::setCursor): Call into the ChromeClient implementation now.
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::initXEvent): Instead of setting the window for windowless
+ plugin events, set the window value to none. This method is also used to send
+ focus in / focus out events to windowed plugins, but this is not one of the plugin
+ types where the window parameter matters. This matches what Mozilla does. Also
+ pass in the display of the widget itself, not the default display.
+ (WebCore::PluginView::handleMouseEvent): When the cursor leaves the plugin area,
+ reset the cursor.
+ (WebCore::PluginView::platformGetValue): Clean up this section slightly. Give the
+ widget the top-level window explicitly. This matches Mozilla.
+
+2011-03-05 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] http/tests/plugins/post-url-file.html fails on GTK+
+ https://bugs.webkit.org/show_bug.cgi?id=55826
+
+ Correct the implementation of handlePostReadFile which uses GIO APIs and
+ actually resizes the buffer to fit the entire size of the file data. This
+ was likely leading to memory corruption until now.
+
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::handlePostReadFile): Fix this method.
+
+2011-03-05 Mikhail Naganov <mnaganov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Chromium] Allow dynamic enabling of detailed heap profiles.
+ https://bugs.webkit.org/show_bug.cgi?id=55824
+
+ Detailed heap profiles can be now enabled by typing "leakz" in Profiles tab.
+
+ * inspector/front-end/DetailedHeapshotView.js:
+ (WebInspector.DetailedHeapshotView.prototype.isDetailedSnapshot):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.doParse):
+ (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
+ (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
+ (WebInspector.ProfilesPanel.prototype.handleShortcut):
+ (WebInspector.ProfilesPanel.prototype._displayDetailedHeapProfilesEnabledHint.hideHint):
+ (WebInspector.ProfilesPanel.prototype._displayDetailedHeapProfilesEnabledHint):
+ (WebInspector.ProfilesPanel.prototype._enableDetailedHeapProfiles):
+ (WebInspector.ProfilesPanel.prototype._recognizeKeyboardCombo):
+
+2011-03-05 Qi Zhang <qi.2.zhang@nokia.com>
+
+ Reviewed by Laszlo Gombos.
+
+ [Qt] Mobile Devices should include Model and Firmware Version in Webkit Generated User Agent String
+ https://bugs.webkit.org/show_bug.cgi?id=48636
+
+ Add model infomation into user agent string when qtmobility is available, but only for symbian, Maemo and MeeGo.
+
+ * WebCore.pri:
+ * features.pri:
+
+2011-03-05 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed: adding null check to prevent inspector tests from failing.
+
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextEditorGutterChunk.prototype.get offsetTop):
+ (WebInspector.TextEditorMainChunk.prototype.get offsetTop):
+
+2011-03-05 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed: chromium rebaseline, flaky test fix.
+
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.DOMBreakpointView.prototype.populateStatusMessageElement.decorateNode):
+ (WebInspector.DOMBreakpointView.prototype.populateStatusMessageElement):
+ (WebInspector.DOMBreakpointView.prototype._format.formatters.s):
+ (WebInspector.DOMBreakpointView.prototype._format.append):
+ (WebInspector.DOMBreakpointView.prototype._format):
+
+2011-03-04 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [chromium] pause when script is running is broken.
+ https://bugs.webkit.org/show_bug.cgi?id=55762
+
+ * inspector/CodeGeneratorInspector.pm:
+
+2011-03-05 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Add Derived Sources to WebCore GYP build
+ https://bugs.webkit.org/show_bug.cgi?id=55813
+
+ Adding the derived source action to the GYP file required tweaking
+ DerivedSources.make. I'm not sure how DerivedSources.make worked
+ before beause these paths were incorrectly based.
+
+ * DerivedSources.make:
+ * gyp/generate-derived-sources.sh: Added.
+ * gyp/WebCore.gyp:
+
+2011-03-04 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: fix layout tests flakiness.
+ https://bugs.webkit.org/show_bug.cgi?id=55816
+
+ - Order of issuing of evaluateForTestInFrontend was not guaranteed on the backend side (InspectorAgent side)
+ - Order of dispatching using timeouts was guaranteed via queueing. Source of all kinds of pains on SnowLeopard Release (inspector.js)
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ (WebCore::InspectorAgent::disconnectFrontend):
+ (WebCore::InspectorAgent::populateScriptObjects):
+ (WebCore::InspectorAgent::evaluateForTestInFrontend):
+ (WebCore::InspectorAgent::issueEvaluateForTestCommands):
+ * inspector/InspectorAgent.h:
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel.FormattedRecord):
+ * inspector/front-end/inspector.js:
+ (WebInspector.dispatch):
+
+2011-03-05 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ WebCore GYP build should generate fewer than 10,000 compile errors per file
+ https://bugs.webkit.org/show_bug.cgi?id=55810
+
+ This patch adds some missing include paths. We need to figure out how
+ to handle separate include paths per port. It's clear that
+ ForwardingHeaders are only useful for Mac, but it's less clear how to
+ handle the others.
+
+ * WebCore.gypi:
+ * gyp/WebCore.gyp:
+
+2011-03-05 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ <rdar://problem/9082946> Make the Core Text code path in GlyphPage::fill() more robust
+ https://bugs.webkit.org/show_bug.cgi?id=55817
+
+ * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
+ (WebCore::GlyphPage::fill): When determining if a CTRun uses the primary font, compare against
+ a CGFont obtained from Core Text for the primary font. This CGFont may be different from
+ the CGFont stored in the FontPlatformData.
+
+2011-03-05 Ilya Sherman <isherman@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ HTMLInputElement::setValue() should schedule change event when the element is focused.
+ Refactored tracking of "changed since last change event" state from renderer to DOM.In service of https://code.google.com/p/chromium/issues
+ In service of https://code.google.com/p/chromium/issues/detail?id=42716
+ https://bugs.webkit.org/show_bug.cgi?id=53160
+
+ Test: fast/forms/onchange-change-type.html
+ Test: fast/forms/onchange-setvalueforuser.html
+
+ * WebCore.exp.in:
+ * dom/Document.cpp:
+ (WebCore::Document::setFocusedNode):
+ * dom/Element.h:
+ (WebCore::Element::wasChangedSinceLastFormControlChangeEvent): Added.
+ (WebCore::Element::setChangedSinceLastFormControlChangeEvent): Added.
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::HTMLFormControlElement):
+ (WebCore::HTMLFormControlElement::wasChangedSinceLastFormControlChangeEvent): Added.
+ (WebCore::HTMLFormControlElement::setChangedSinceLastFormControlChangeEvent): Added.
+ (WebCore::HTMLFormControlElement::dispatchFormControlChangeEvent): Also clear the "changed since last change event" flag.
+ (WebCore::HTMLFormControlElement::dispatchFormControlInputEvent): Also set the "changed since last change event" flag.
+ * html/HTMLFormControlElement.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::updateType): Also clear the "changed since last change event" flag.
+ (WebCore::HTMLInputElement::setValue):
+ For a focused text field, dispatch an input event, but delay the change event until the field loses focus.
+ (WebCore::HTMLInputElement::defaultEventHandler):
+ (WebCore::HTMLInputElement::stepUpFromRenderer):
+ * html/shadow/TextControlInnerElements.cpp:
+ (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::RenderTextControl):
+ (WebCore::RenderTextControl::subtreeHasChanged):
+ * rendering/RenderTextControl.h:
+ * rendering/RenderTextControlMultiLine.cpp:
+ (WebCore::RenderTextControlMultiLine::subtreeHasChanged):
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
+ * wml/WMLInputElement.cpp:
+ (WebCore::WMLInputElement::WMLInputElement):
+ (WebCore::WMLInputElement::defaultEventHandler):
+ * wml/WMLInputElement.h:
+ (WebCore::WMLInputElement::wasChangedSinceLastFormControlChangeEvent): Added.
+ (WebCore::WMLInputElement::setChangedSinceLastFormControlChangeEvent): Added.
+
+2011-03-04 Xianzhu Wang <wangxianzhu@google.com>
+
+ Reviewed by Adam Barth.
+
+ Remove fake request loading of SVGImage to avoid MainResourceLoader
+ leak. The frame->init() already ensures initialization of the
+ document loader.
+
+ https://bugs.webkit.org/show_bug.cgi?id=55017
+
+ Test: fast/images/svg-image-leak-loader.html
+
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::dataChanged):
+
+2011-03-04 Mike Reed <reed@google.com>
+
+ Reviewed by Mihai Parparita.
+
+ [Chromium] fast/canvas/canvas-arc-360-winding.html fails on Linux and Windows
+ https://bugs.webkit.org/show_bug.cgi?id=49477
+
+ * platform/graphics/skia/PathSkia.cpp:
+ (WebCore::Path::addArc):
+
+2011-03-04 Jia Pu <jpu@apple.com>
+
+ Reviewed by Darin Adler.
+
+ On Mac, the bounding box sent to EditorClient::showCorrectionPanel() is incorrect when the correction occurs in an iframe.
+ https://bugs.webkit.org/show_bug.cgi?id=55717
+ <rdar://problem/9018127>
+
+ manual-test: manual-tests/platforms/mac/autocorrection/autocorrection-in-iframe.html
+
+ Previously, the bounding box passed into EditorClient::showCorrectionPanel() is in the frame's
+ coordinate. This is incorrect when the correction occurs in an iframe. This patch added code
+ to convert the bounding box to window coordinate using ScrollView::contentToWindow().
+
+ * dom/Range.cpp:
+ (WebCore::Range::getBoundingClientRect):
+ (WebCore::Range::boundingRect):
+ * dom/Range.h:
+ * editing/Editor.cpp:
+ (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
+ (WebCore::Editor::correctionPanelTimerFired):
+ (WebCore::Editor::windowRectForRange):
+ * editing/Editor.h:
+ * manual-tests/autocorrection/autocorrection-in-iframe.html: Added.
+ * manual-tests/autocorrection/document-for-iframe-test.html: Added.
+
+2011-03-04 Jia Pu <jpu@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Those checking in Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited() should be done with VisiblePosition::isNull().
+ https://bugs.webkit.org/show_bug.cgi?id=55731
+
+ No new tests. There's no behavioral change.
+
+ This patch improved clarity and readability of Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited().
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited):
+
+2011-03-04 John Bauman <jbauman@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] premultipliedAlpha WebGL context attribute is ignored.
+ https://bugs.webkit.org/show_bug.cgi?id=55411
+
+ Update compositor to set the blending of each layer correctly.
+
+ Test: compositing/webgl/webgl-nonpremultiplied-blend.html
+
+ * platform/graphics/chromium/CanvasLayerChromium.cpp:
+ (WebCore::CanvasLayerChromium::CanvasLayerChromium):
+ (WebCore::CanvasLayerChromium::draw):
+ * platform/graphics/chromium/CanvasLayerChromium.h:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::draw):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawLayers):
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::setContext):
+
+2011-03-04 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ WebCore GYP build should link with the correct frameworks
+ https://bugs.webkit.org/show_bug.cgi?id=55804
+
+ * gyp/WebCore.gyp:
+
+2011-03-04 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ WebCore GYP build should Check For Inappropriate Files in Framework
+ https://bugs.webkit.org/show_bug.cgi?id=55806
+
+ * gyp/WebCore.gyp:
+
+2011-03-04 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Add skeletal WebCore.gyp
+ https://bugs.webkit.org/show_bug.cgi?id=55802
+
+ This doesn't yet build, but the basic structure is there.
+
+ * WebCore.gypi: Added headers and include directories variables.
+ * gyp/WebCore.gyp: Added.
+
+2011-03-04 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Remove unneeded round-trips through ../Source in the Chromium GYP build
+ https://bugs.webkit.org/show_bug.cgi?id=55795
+
+ This is just cleanup work, but it was bugging me.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-03-04 Mike Reed <reed@google.com>
+
+ Reviewed by James Robinson.
+
+ Option to use skia's native text drawing APIs when drawing text
+ on Windows, rather than from outlines using drawPath(). This will
+ only have a significant effect when the skia-gpu backend is enabled.
+ https://bugs.webkit.org/show_bug.cgi?id=55609
+
+ No new tests. This is disabled by default. When enabled, it will draw
+ essentially the same, but with slightly different antialiased edges, due
+ to differences between the current scanconverter and GDI's font scaler.
+ When enabled, we will have to recalibrate layouttest image results.
+
+ * platform/graphics/skia/SkiaFontWin.cpp:
+ (WebCore::skiaDrawText):
+ (WebCore::setupPaintForFont):
+ (WebCore::paintSkiaText):
+
+2011-03-04 Adrienne Walker <enne@google.com>
+
+ Reviewed by James Robinson.
+
+ [chromium] Fix texture stride issues on large content and image layers.
+ https://bugs.webkit.org/show_bug.cgi?id=55679
+
+ This was an error caused during the refactoring in r80081.
+
+ Tests: LayoutTests/compositing/tiling/huge-layer-img.html
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::updateTexture):
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateTextureIfNeeded):
+
+2011-03-04 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80379.
+ http://trac.webkit.org/changeset/80379
+ https://bugs.webkit.org/show_bug.cgi?id=55799
+
+ "Breaks leopard compile (implicit conversion)" (Requested by
+ tonyg-cr on #webkit).
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::convertToLength):
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::createTransformOperations):
+ * platform/Length.h:
+ (WebCore::Length::Length):
+ (WebCore::Length::operator==):
+ (WebCore::Length::operator!=):
+ (WebCore::Length::rawValue):
+ (WebCore::Length::type):
+ (WebCore::Length::quirk):
+ (WebCore::Length::setValue):
+ (WebCore::Length::setRawValue):
+ (WebCore::Length::calcFloatValue):
+ (WebCore::Length::isZero):
+ (WebCore::Length::blend):
+ * rendering/AutoTableLayout.cpp:
+ (WebCore::AutoTableLayout::recalcColumn):
+ (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
+ * rendering/FixedTableLayout.cpp:
+ (WebCore::FixedTableLayout::calcWidthArray):
+
+2011-03-04 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ WebKit2: Use CFNetwork Sessions API.
+ https://bugs.webkit.org/show_bug.cgi?id=55435.
+
+ Add in the CFURLSTORAGESESSIONS guards that I incorrectly left out because the code was
+ contained within guards that made USE(CFURLSTORAGESESSIONS) always be true.
+
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::makeFinalRequest):
+ (WebCore::ResourceHandle::willSendRequest):
+ * platform/network/cf/ResourceRequestCFNet.cpp:
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::createNSURLConnection):
+ (WebCore::ResourceHandle::willSendRequest):
+ * platform/network/mac/ResourceRequestMac.mm:
+
+2011-03-04 Yuqiang Xian <yuqiang.xian@intel.com>
+
+ Reviewed by Darin Adler.
+
+ improve layout performance by reducing the traversal time of the floating objects
+ https://bugs.webkit.org/show_bug.cgi?id=55440
+
+ We observered large overhead on traversing the floating objects list
+ in logicalLeftOffsetForLine() and logicalRightOffsetForLine() especially
+ when the list becomes enormous, for example in the default 30x30 maze test
+ from http://ie.microsoft.com/testdrive/Performance/MazeSolver/Default.html
+ there're >3700 floating objects. When placing a new floating object the
+ entire list (from begin to end) is traversed for multiple times.
+ There's a low hanging fruit to reduce the chances to do the traversal
+ which is especially applicable in logicalLeftOffsetForLine and logicalRightOffsetForLine.
+ As the two routines either cares about FloatLeft objects or FloatRight objects only,
+ if we know there's no corresponding type floating objects in the list
+ we can avoid the traversal actually. One thing we could do is to record
+ the number of FloatLeft objects and the number of FloatRight objects and
+ add a check before doing the traversal. This can reduce the time by 45%
+ to resolve the 30x30 Maze measured on N470 Netbook MeeGo using latest
+ Chromium browser 11 (from 503s to 269s).
+
+ No new tests, relying on existing layout tests.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::~RenderBlock):
+ (WebCore::RenderBlock::addOverflowFromFloats):
+ (WebCore::RenderBlock::repaintOverhangingFloats):
+ (WebCore::RenderBlock::paintFloats):
+ (WebCore::RenderBlock::selectionGaps):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::removeFloatingObject):
+ (WebCore::RenderBlock::removeFloatingObjectsBelow):
+ (WebCore::RenderBlock::positionNewFloats):
+ (WebCore::RenderBlock::positionNewFloatOnLine):
+ (WebCore::RenderBlock::logicalLeftOffsetForLine):
+ (WebCore::RenderBlock::logicalRightOffsetForLine):
+ (WebCore::RenderBlock::nextFloatLogicalBottomBelow):
+ (WebCore::RenderBlock::lowestFloatLogicalBottom):
+ (WebCore::RenderBlock::clearFloats):
+ (WebCore::RenderBlock::addOverhangingFloats):
+ (WebCore::RenderBlock::addIntrudingFloats):
+ (WebCore::RenderBlock::containsFloat):
+ (WebCore::RenderBlock::hitTestFloats):
+ (WebCore::RenderBlock::adjustForBorderFit):
+ (WebCore::RenderBlock::FloatingObjects::clear):
+ (WebCore::RenderBlock::FloatingObjects::increaseObjectsCount):
+ (WebCore::RenderBlock::FloatingObjects::decreaseObjectsCount):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::containsFloats):
+ (WebCore::RenderBlock::FloatingObjects::FloatingObjects):
+ (WebCore::RenderBlock::FloatingObjects::hasLeftObjects):
+ (WebCore::RenderBlock::FloatingObjects::hasRightObjects):
+ (WebCore::RenderBlock::FloatingObjects::set):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::matchedEndLine):
+
+2011-03-04 Rik Cabanier <cabanier@gmail.com>
+
+ Reviewed by David Hyatt.
+
+ Fix that allows fixed length values to be floating point
+ https://bugs.webkit.org/show_bug.cgi?id=52699
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::convertToLength):
+ (WebCore::convertToIntLength):
+ (WebCore::convertToFloatLength):
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::createTransformOperations):
+ * platform/Length.h:
+ (WebCore::Length::Length):
+ (WebCore::Length::operator==):
+ (WebCore::Length::operator!=):
+ (WebCore::Length::rawValue):
+ (WebCore::Length::type):
+ (WebCore::Length::quirk):
+ (WebCore::Length::setValue):
+ (WebCore::Length::calcFloatValue):
+ (WebCore::Length::isZero):
+ (WebCore::Length::blend):
+ (WebCore::Length::getIntValue):
+ (WebCore::Length::getFloatValue):
+ * rendering/AutoTableLayout.cpp:
+ (WebCore::AutoTableLayout::recalcColumn):
+ (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
+ * rendering/FixedTableLayout.cpp:
+ (WebCore::FixedTableLayout::calcWidthArray):
+
+2011-03-04 Steve Falkenburg <sfalken@apple.com>
+
+ Reviewed by Jon Honeycutt.
+
+ Adopt VersionStamper tool for Windows WebKit DLLs
+ https://bugs.webkit.org/show_bug.cgi?id=55784
+
+ We now use a tool to stamp the version number onto the Apple WebKit DLLs
+ during the post-build step.
+
+ * WebCore.vcproj/QTMovieWin.rc: Removed.
+ * WebCore.vcproj/QTMovieWin.vcproj:
+ * WebCore.vcproj/QTMovieWinPostBuild.cmd: Stamp version with VersionStamper.
+ * WebCore.vcproj/QTMovieWinPreBuild.cmd: Don't run auto-version.sh. We don't use autoversion.h in this project.
+ * WebCore.vcproj/WebCoreMediaQT.vsprops: Remove unnecessary include paths for resource files.
+
+2011-03-04 Cosmin Truta <ctruta@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Clarify comment about potential memory leak in SVGImage
+ https://bugs.webkit.org/show_bug.cgi?id=55362
+
+ No functionality change. No new tests.
+
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::dataChanged):
+
+2011-03-04 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ WebKit2: Use CFNetwork Sessions API.
+ https://bugs.webkit.org/show_bug.cgi?id=55435.
+
+ When Private Browsing is enabled, get the cached url response from the cache associated with
+ the Private Browsing Storage Session.
+
+ * WebCore.exp.in:
+ Export the symbol for ResourceHandle::privateBrowsingStorageSession.
+
+2011-03-04 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ JSC and V8 versions of Java bridge should share JobjectWrapper
+ https://bugs.webkit.org/show_bug.cgi?id=55763
+
+ No new tests, refactoring only.
+
+ * Android.jscbindings.mk:
+ * Android.v8bindings.mk:
+ * WebCore.gypi:
+ * WebCore.order:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bridge/jni/JobjectWrapper.cpp:
+ (JobjectWrapper::JobjectWrapper):
+ (JobjectWrapper::~JobjectWrapper):
+ * bridge/jni/JobjectWrapper.h:
+ (JSC::Bindings::JobjectWrapper::instance):
+ (JSC::Bindings::JobjectWrapper::setInstance):
+ (JSC::Bindings::JobjectWrapper::ref):
+ (JSC::Bindings::JobjectWrapper::deref):
+ * bridge/jni/jsc/JNIBridgeJSC.cpp:
+ (JavaField::JavaField):
+ (JavaArray::JavaArray):
+ * bridge/jni/jsc/JNIBridgeJSC.h:
+ * bridge/jni/jsc/JavaInstanceJSC.cpp:
+ (JavaInstance::JavaInstance):
+ * bridge/jni/jsc/JavaInstanceJSC.h:
+
+2011-03-04 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Move shared code into SVGStyledTransformableElement::svgAttributeChanged
+ https://bugs.webkit.org/show_bug.cgi?id=55771
+
+ All sub classes of SVGStyledTransformableElement request a relayout
+ the same way. So move that code into the common base class.
+
+ * svg/SVGCircleElement.cpp:
+ (WebCore::SVGCircleElement::svgAttributeChanged):
+ * svg/SVGEllipseElement.cpp:
+ (WebCore::SVGEllipseElement::svgAttributeChanged):
+ * svg/SVGForeignObjectElement.cpp:
+ (WebCore::SVGForeignObjectElement::svgAttributeChanged):
+ * svg/SVGGElement.cpp:
+ (WebCore::SVGGElement::svgAttributeChanged):
+ * svg/SVGImageElement.cpp:
+ (WebCore::SVGImageElement::svgAttributeChanged):
+ * svg/SVGLineElement.cpp:
+ (WebCore::SVGLineElement::svgAttributeChanged):
+ * svg/SVGPathElement.cpp:
+ (WebCore::SVGPathElement::svgAttributeChanged):
+ * svg/SVGPolyElement.cpp:
+ (WebCore::SVGPolyElement::svgAttributeChanged):
+ * svg/SVGRectElement.cpp:
+ (WebCore::SVGRectElement::svgAttributeChanged):
+ * svg/SVGStyledTransformableElement.cpp:
+ (WebCore::SVGStyledTransformableElement::svgAttributeChanged):
+ * svg/SVGStyledTransformableElement.h:
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::svgAttributeChanged):
+
+2011-03-03 John Abd-El-Malek <jam@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ [chromium] Get rid of IsContentFiltered flags since they&apos;re not used anymore
+ https://bugs.webkit.org/show_bug.cgi?id=55748
+
+ * platform/network/chromium/ResourceResponse.cpp:
+ (WebCore::ResourceResponse::doPlatformCopyData):
+ (WebCore::ResourceResponse::doPlatformAdopt):
+ * platform/network/chromium/ResourceResponse.h:
+ (WebCore::ResourceResponse::ResourceResponse):
+
+2011-03-03 Timothy Hatcher <timothy@apple.com>
+
+ Export SerializedScriptValue::create(JSC::ExecState* exec, JSC::JSValue value).
+
+ Reviewed by Darin Adler.
+
+ * WebCore.exp.in: Added __ZN7WebCore21SerializedScriptValue6createEPN3JSC9ExecStateENS1_7JSValueE.
+
+2011-03-04 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: extract all code that depends on source mapping from SourceFrame.
+ https://bugs.webkit.org/show_bug.cgi?id=55464
+
+ Extract all dependencies on DebuggerModel and ScriptsPanel to a delegate class
+ to encapsulate source mapping aspects from SourceFrame.
+
+ * inspector/front-end/ResourceView.js:
+ (WebInspector.ResourceView.createResourceView):
+ (WebInspector.SourceFrameDelegateForResourcesPanel):
+ (WebInspector.SourceFrameDelegateForResourcesPanel.prototype.requestContent):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._createSourceFrame):
+ (WebInspector.SourceFrameDelegateForScriptsPanel):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame):
+ (WebInspector.SourceFrame.prototype.show):
+ (WebInspector.SourceFrame.prototype._createTextViewer):
+ (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint.didEditBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint):
+ (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition.didEditBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu.else.setBreakpointEnabled):
+ (WebInspector.SourceFrame.prototype._contextMenu):
+ (WebInspector.SourceFrame.prototype._mouseDown):
+ (WebInspector.SourceFrame.prototype._mouseMove):
+ (WebInspector.SourceFrame.prototype._hidePopup):
+ (WebInspector.SourceFrame.prototype._mouseHover):
+ (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
+ (WebInspector.SourceFrame.prototype._showPopup):
+ (WebInspector.SourceFrame.prototype._doubleClick):
+ (WebInspector.SourceFrame.prototype._didEditLine):
+ (WebInspector.SourceFrameDelegate):
+ (WebInspector.SourceFrameDelegate.prototype.requestContent):
+ (WebInspector.SourceFrameDelegate.prototype.debuggingSupported):
+ (WebInspector.SourceFrameDelegate.prototype.setBreakpoint):
+ (WebInspector.SourceFrameDelegate.prototype.removeBreakpoint):
+ (WebInspector.SourceFrameDelegate.prototype.updateBreakpoint):
+ (WebInspector.SourceFrameDelegate.prototype.findBreakpoint):
+ (WebInspector.SourceFrameDelegate.prototype.continueToLine):
+ (WebInspector.SourceFrameDelegate.prototype.canEditScriptSource):
+ (WebInspector.SourceFrameDelegate.prototype.editScriptSource):
+ (WebInspector.SourceFrameDelegate.prototype.debuggerPaused):
+ (WebInspector.SourceFrameDelegate.prototype.evaluate):
+ (WebInspector.SourceFrameDelegate.prototype.releaseEvaluationResult):
+
+2011-03-04 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Extensions API] maintain own, unique & persistent identifiers for resources.
+ https://bugs.webkit.org/show_bug.cgi?id=55686
+
+ - Use internal ids for resources in extension server.
+ - Log errors in inspector tests.
+
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype.resetResources):
+ (WebInspector.ExtensionServer.prototype._notifyResourceFinished):
+ (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
+ (WebInspector.ExtensionServer.prototype._onGetHAR):
+ (WebInspector.ExtensionServer.prototype._onGetResourceContent):
+ (WebInspector.ExtensionServer.prototype._resourceId):
+ (WebInspector.ExtensionServer.prototype._resourceById):
+ * inspector/front-end/HAREntry.js:
+ (WebInspector.HARLog):
+ (WebInspector.HARLog.prototype._convertResource):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype._reset):
+
+2011-03-04 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: exceptions when building context menu in network panel
+ https://bugs.webkit.org/show_bug.cgi?id=55678
+
+ * inspector/front-end/DataGrid.js:
+ (WebInspector.DataGrid.prototype.dataGridNodeFromNode):
+ (WebInspector.DataGrid.prototype.dataGridNodeFromPoint):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype._contextMenu):
+
+2011-03-04 Ilya Sherman <isherman@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Override paintScrollCorner() for FramelessScrollView to forego any custom scrollbar corner rendering.
+ This was previously done in ScrollbarThemeChromium, but we also need this on the Mac when the ScrollView
+ is a FramelessScrollView -- which is mostly just for Autofill.
+ In service of http://crbug.com/73772 (crash)
+ https://bugs.webkit.org/show_bug.cgi?id=55557
+
+ No tests added because this fix is Chromium-specific and the code is currently untestable from within WebKit.
+ In particular, DRT crashes when trying to render a FramelessScrollView.
+
+ * platform/ScrollbarTheme.h:
+ (WebCore::ScrollbarTheme::paintScrollCorner): Body moved to static function defaultPaintScrollCorner().
+ (WebCore::ScrollbarTheme::defaultPaintScrollCorner): Added.
+ * platform/chromium/FramelessScrollView.cpp:
+ (WebCore::FramelessScrollView::paintContents):
+ (WebCore::FramelessScrollView::paintScrollCorner): Fix implementation moved to here from ScrollbarThemeChromium
+ * platform/chromium/FramelessScrollView.h:
+ * platform/chromium/ScrollbarThemeChromium.cpp:
+ * platform/chromium/ScrollbarThemeChromium.h:
+
+2011-03-04 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: move dispatching of didCommitLoad to agents into InspectorInstrumentation
+ https://bugs.webkit.org/show_bug.cgi?id=55770
+
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ (WebCore::InspectorAgent::didCommitLoad):
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::InspectorCSSAgent::InspectorCSSAgent):
+ (WebCore::InspectorCSSAgent::~InspectorCSSAgent):
+ * inspector/InspectorCSSAgent.h:
+ * inspector/InspectorDatabaseAgent.cpp:
+ (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didCommitLoadImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::didCommitLoad):
+ * inspector/InspectorProfilerAgent.cpp:
+ (WebCore::InspectorProfilerAgent::create):
+ (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
+ (WebCore::InspectorProfilerAgent::~InspectorProfilerAgent):
+ (WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
+ (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
+ (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
+ (WebCore::InspectorProfilerAgent::stopUserInitiatedProfiling):
+ * inspector/InspectorProfilerAgent.h:
+ * inspector/InstrumentingAgents.h:
+ (WebCore::InstrumentingAgents::InstrumentingAgents):
+ (WebCore::InstrumentingAgents::inspectorCSSAgent):
+ (WebCore::InstrumentingAgents::setInspectorCSSAgent):
+ (WebCore::InstrumentingAgents::inspectorDOMStorageAgent):
+ (WebCore::InstrumentingAgents::setInspectorDOMStorageAgent):
+ (WebCore::InstrumentingAgents::inspectorDatabaseAgent):
+ (WebCore::InstrumentingAgents::setInspectorDatabaseAgent):
+ (WebCore::InstrumentingAgents::inspectorApplicationCacheAgent):
+ (WebCore::InstrumentingAgents::setInspectorApplicationCacheAgent):
+ (WebCore::InstrumentingAgents::inspectorDebuggerAgent):
+ (WebCore::InstrumentingAgents::setInspectorDebuggerAgent):
+ (WebCore::InstrumentingAgents::inspectorBrowserDebuggerAgent):
+ (WebCore::InstrumentingAgents::setInspectorBrowserDebuggerAgent):
+ (WebCore::InstrumentingAgents::inspectorProfilerAgent):
+ (WebCore::InstrumentingAgents::setInspectorProfilerAgent):
+
+2011-03-04 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: rename RuntimeAgent's function from releaseWrapperObjectGroup to releaseObjectGroup.
+ https://bugs.webkit.org/show_bug.cgi?id=55773
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/InjectedScript.cpp:
+ (WebCore::InjectedScript::releaseObjectGroup):
+ * inspector/InjectedScript.h:
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::releaseObjectGroup):
+ * inspector/InjectedScriptHost.h:
+ * inspector/InjectedScriptSource.js:
+ (.):
+ * inspector/Inspector.idl:
+ * inspector/InspectorConsoleAgent.cpp:
+ (WebCore::InspectorConsoleAgent::clearConsoleMessages):
+ * inspector/InspectorRuntimeAgent.cpp:
+ (WebCore::InspectorRuntimeAgent::releaseObjectGroup):
+ * inspector/InspectorRuntimeAgent.h:
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype.completions.evaluatedProperties):
+ (WebInspector.ConsoleView.prototype.completions):
+ * inspector/front-end/PropertiesSidebarPane.js:
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._hidePopup):
+ * inspector/front-end/WatchExpressionsSidebarPane.js:
+ (WebInspector.WatchExpressionsSection.prototype.update):
+
+2011-03-02 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Gutter height should be 100% when few lines are displayed
+ https://bugs.webkit.org/show_bug.cgi?id=55574
+
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._startEditing):
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextViewer.prototype._syncScroll):
+ (WebInspector.TextEditorGutterPanel.prototype._expandChunks):
+ (WebInspector.TextEditorGutterPanel.prototype.textChanged):
+ (WebInspector.TextEditorGutterPanel.prototype.syncClientHeight):
+ * inspector/front-end/textViewer.css:
+ (.text-editor-lines):
+ (.text-editor-contents .inner-container):
+ (.webkit-line-number):
+
+2011-03-04 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Text editor] Do bisect to find visible chunks
+ https://bugs.webkit.org/show_bug.cgi?id=55685
+
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextEditorChunkedPanel.prototype._chunkNumberForLine):
+ (WebInspector.TextEditorChunkedPanel.prototype._findVisibleChunks):
+ (WebInspector.TextEditorChunkedPanel.prototype._repaintAll):
+ (WebInspector.TextEditorGutterChunk.prototype.get offsetTop):
+ (WebInspector.TextEditorMainPanel.prototype._updateHighlightsForRange):
+ (WebInspector.TextEditorMainChunk.prototype.get offsetTop):
+
+2011-03-04 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Text editor] DOMNodeRemoved events are missing
+ https://bugs.webkit.org/show_bug.cgi?id=55769
+
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextEditorMainPanel):
+ (WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):
+ (WebInspector.TextEditorMainChunk):
+ (WebInspector.TextEditorMainChunk.prototype._createRow):
+
+2011-03-04 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Remove unnecessary domain and success flags from the response messages.
+ https://bugs.webkit.org/show_bug.cgi?id=55768
+
+ We have domain property in the response messages but it is not used because we dispatch
+ the responses on the callback associated with seq.
+
+ If we have property 'errors' in the response then success eq false and true in the other case.
+
+ * inspector/CodeGeneratorInspector.pm:
+
+2011-03-04 Christian Dywan <christian@lanedo.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ Enable Copy Image Address context menu item in the Gtk port
+ https://bugs.webkit.org/show_bug.cgi?id=55136
+
+ * page/ContextMenuController.cpp:
+ * platform/ContextMenuItem.h:
+ * platform/LocalizationStrategy.h:
+ * platform/LocalizedStrings.cpp:
+ * platform/LocalizedStrings.h:
+ * platform/gtk/ContextMenuItemGtk.cpp:
+ * platform/gtk/LocalizedStringsGtk.cpp:
+
+2011-03-04 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: implement getCompletions via evaluate.
+ https://bugs.webkit.org/show_bug.cgi?id=55759
+
+ * inspector/InjectedScript.cpp:
+ * inspector/InjectedScript.h:
+ * inspector/InjectedScriptSource.js:
+ * inspector/Inspector.idl:
+ * inspector/InspectorDebuggerAgent.cpp:
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/InspectorRuntimeAgent.cpp:
+ * inspector/InspectorRuntimeAgent.h:
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype.completions.evaluated):
+ (WebInspector.ConsoleView.prototype.completions.evaluatedProperties):
+ (WebInspector.ConsoleView.prototype.completions):
+ (WebInspector.ConsoleView.prototype._reportCompletions):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame.updatingCallbackWrapper):
+ (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._showPopup):
+ (WebInspector.SourceFrame.prototype._evalSelectionInCallFrame):
+
+2011-03-04 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ V8 version of JavaString should obtain string from JNI in UTF-16 encoding
+ https://bugs.webkit.org/show_bug.cgi?id=55566
+
+ We obtain the string from JNI in UTF-16 encoding and convert
+ to UTF-8 using our own routines as required. This matches the
+ behaviour of the JSC version of JavaString.
+
+ No new tests, no change in behaviour.
+
+ * bridge/jni/v8/JavaStringV8.h:
+ (JSC::Bindings::JavaStringImpl::init):
+ (JSC::Bindings::JavaStringImpl::utf8):
+ (JSC::Bindings::JavaStringImpl::impl):
+
+2011-03-03 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: do not push document into front-end, make it request one.
+ https://bugs.webkit.org/show_bug.cgi?id=55664
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ * inspector/InspectorAgent.h:
+ * inspector/InspectorBrowserDebuggerAgent.cpp:
+ (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::InspectorDOMAgent):
+ (WebCore::InspectorDOMAgent::clearFrontend):
+ (WebCore::InspectorDOMAgent::setDocument):
+ (WebCore::InspectorDOMAgent::getDocument):
+ (WebCore::InspectorDOMAgent::pushNodePathToFrontend):
+ (WebCore::InspectorDOMAgent::boundNodeId):
+ (WebCore::InspectorDOMAgent::resolveNode):
+ (WebCore::InspectorDOMAgent::mainFrameDOMContentLoaded):
+ * inspector/InspectorDOMAgent.h:
+ (WebCore::InspectorDOMAgent::create):
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints):
+ (WebInspector.DOMBreakpointView.prototype.populateStatusMessageElement.decorateNode):
+ (WebInspector.DOMBreakpointView.prototype.populateStatusMessageElement):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMDocument):
+ (WebInspector.DOMAgent):
+ (WebInspector.DOMAgent.prototype.requestDocument):
+ (WebInspector.DOMAgent.prototype.pushNodeToFrontend):
+ (WebInspector.DOMAgent.prototype.pushNodeByPathToFrontend):
+ (WebInspector.DOMAgent.prototype._attributesUpdated):
+ (WebInspector.DOMAgent.prototype._characterDataModified):
+ (WebInspector.DOMAgent.prototype._documentUpdated):
+ (WebInspector.DOMAgent.prototype._setDocument):
+ (WebInspector.DOMAgent.prototype._setDetachedRoot):
+ (WebInspector.DOMAgent.prototype._setChildNodes):
+ (WebInspector.DOMAgent.prototype._childNodeInserted):
+ (WebInspector.DOMAgent.prototype._childNodeRemoved):
+ (WebInspector.DOMDispatcher.prototype.documentUpdated):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.show):
+ (WebInspector.ElementsPanel.prototype.setDocument):
+ * inspector/front-end/MetricsSidebarPane.js:
+ * inspector/front-end/RemoteObject.js:
+ (WebInspector.RemoteObject.prototype.pushNodeToFrontend):
+
+2011-03-04 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: summary bar may overlap content of the network item view
+ https://bugs.webkit.org/show_bug.cgi?id=55656
+
+ - drop custom summary bar placement logic, do it with CSS instead.
+
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype.resize):
+ (WebInspector.NetworkPanel.prototype._createSummaryBar):
+ (WebInspector.NetworkPanel.prototype._updateSummaryBar):
+ (WebInspector.NetworkPanel.prototype._updateFilter):
+ (WebInspector.NetworkPanel.prototype.show):
+ (WebInspector.NetworkPanel.prototype.refresh):
+ (WebInspector.NetworkPanel.prototype._reset):
+ (WebInspector.NetworkPanel.prototype._setLargerResources):
+ (WebInspector.NetworkPanel.prototype._updateOffscreenRows):
+ * inspector/front-end/networkPanel.css:
+ (.network-sidebar .data-grid td):
+ (.network-sidebar tr.filler td):
+ (.network-summary-bar):
+ (.network-sidebar .data-grid .network-summary-bar td):
+ (.network-summary-bar img):
+
+2011-03-04 James Su <suzhe@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ [Chromium] keycode is always 0 when using non-Latin keyboard layout.
+ https://bugs.webkit.org/show_bug.cgi?id=54939
+
+ Add KeyEventCocoa.{h,mm}, so that we can reuse them in chromium.
+
+ No intended functionality change.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2011-03-04 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed EFL build fix for r80324.
+
+ * platform/efl/RenderThemeEfl.cpp:
+ (WebCore::RenderThemeEfl::paintThemePart):
+
+2011-03-04 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed EFL build fix for r80324.
+
+ * platform/efl/RenderThemeEfl.cpp:
+ (WebCore::RenderThemeEfl::paintThemePart):
+
+2011-03-03 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: AppCache agent should have same lifetime as InspectorAgent
+ https://bugs.webkit.org/show_bug.cgi?id=55673
+
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ (WebCore::InspectorAgent::setFrontend):
+ (WebCore::InspectorAgent::disconnectFrontend):
+ (WebCore::InspectorAgent::createFrontendLifetimeAgents):
+ (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
+ (WebCore::InspectorAgent::didCommitLoad):
+ * inspector/InspectorApplicationCacheAgent.cpp:
+ (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
+ (WebCore::InspectorApplicationCacheAgent::setFrontend):
+ (WebCore::InspectorApplicationCacheAgent::clearFrontend):
+ * inspector/InspectorApplicationCacheAgent.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::networkStateChangedImpl):
+ (WebCore::InspectorInstrumentation::updateApplicationCacheStatusImpl):
+ * inspector/InstrumentingAgents.h:
+ (WebCore::InstrumentingAgents::inspectorApplicationCacheAgent):
+ (WebCore::InstrumentingAgents::setInspectorApplicationCacheAgent):
+
+2011-03-03 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Cleanup from https://bugs.webkit.org/show_bug.cgi?id=55427.
+
+ Call WebCore::startObservingCookieChanges and WebCore::stopObservingCookieChanges
+ on all platforms, and stub the functions on platforms that don't implement them.
+
+ Add startObservingCookieChanges and stopObservingCookieChanges to TemporaryLinkStubs
+ for platforms that don't implement them.
+
+ * platform/android/TemporaryLinkStubs.cpp:
+ * platform/brew/TemporaryLinkStubs.cpp:
+ * platform/chromium/TemporaryLinkStubs.cpp:
+ * platform/efl/TemporaryLinkStubs.cpp:
+ * platform/gtk/TemporaryLinkStubs.cpp:
+ * platform/haiku/TemporaryLinkStubs.cpp:
+ * platform/qt/TemporaryLinkStubsQt.cpp:
+ * platform/win/TemporaryLinkStubs.cpp:
+
+2011-03-03 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Refactor createRendererIfNeeded to avoid premature nextRenderer calculation
+ https://bugs.webkit.org/show_bug.cgi?id=55720
+
+ There are two thing going on here:
+ 1. Delaying nextRenderer calculation until we actually use it,
+ previously we would always compute nextRenderer (expensive!)
+ even if no renderer insertion was to occur.
+ 2. Fix fullscreen elements to be inserted into the right place
+ in the rendering tree. Previously they would always be the last
+ child in their parent's list, even if that wasn't the right place.
+
+ I don't know of any way to trigger the fullscreen bug,
+ but I tested this with peacekeeper and saw no performance change.
+
+ Peacekeeper's domJQueryBasics is now possibly as much as 2% faster
+ but I don't really trust the stability of peacekeeper to begin with.
+
+ This paves the way for further improvement in our nextRenderer calculation.
+
+ * dom/Node.cpp:
+ (WebCore::Node::attach):
+ (WebCore::Node::previousRenderer):
+ (WebCore::Node::nextRenderer):
+ (WebCore::Node::createRendererAndStyle):
+ (WebCore::wrapWithRenderFullScreen):
+ (WebCore::Node::createRendererIfNeeded):
+ * dom/Node.h:
+
+2011-03-03 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Remove LOOSE_PASS_OWN_ARRAY_PTR from PassOwnArrayPtr.h
+ https://bugs.webkit.org/show_bug.cgi?id=55554
+
+ * platform/Length.cpp:
+ (WebCore::newLengthArray): Pass nullptr instead of 0.
+
+2011-03-03 Nat Duca <nduca@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Create a LayerChromium layerTreeAsText. Add HUD to
+ LayerRendererChromium that draws compositor FPS and, optionally,
+ the layer tree.
+ https://bugs.webkit.org/show_bug.cgi?id=54710
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/Canvas2DLayerChromium.h:
+ (WebCore::Canvas2DLayerChromium::drawsContent):
+ * platform/graphics/chromium/CanvasLayerChromium.h:
+ (WebCore::CanvasLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::writeIndent):
+ (WebCore::ContentLayerChromium::dumpLayerProperties):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ (WebCore::ContentLayerChromium::drawsContent):
+ (WebCore::ContentLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ (WebCore::GraphicsLayerChromium::setName):
+ (WebCore::GraphicsLayerChromium::updateNames):
+ (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
+ (WebCore::GraphicsLayerChromium::setupContentsLayer):
+ * platform/graphics/chromium/GraphicsLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ (WebCore::ImageLayerChromium::drawsContent):
+ (WebCore::ImageLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::LayerChromium):
+ (WebCore::LayerChromium::setName):
+ (WebCore::LayerChromium::layerTreeAsText):
+ (WebCore::writeIndent):
+ (WebCore::LayerChromium::dumpLayer):
+ (WebCore::LayerChromium::dumpLayerProperties):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::name):
+ (WebCore::LayerChromium::drawsContent):
+ (WebCore::LayerChromium::debugID):
+ (WebCore::LayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::~LayerRendererChromium):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::present):
+ (WebCore::LayerRendererChromium::layerTreeAsText):
+ (WebCore::LayerRendererChromium::dumpRenderSurfaces):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::getHeadsUpDisplay):
+ (WebCore::LayerRendererChromium::rootVisibleRect):
+ * platform/graphics/chromium/PluginLayerChromium.h:
+ (WebCore::PluginLayerChromium::drawsContent):
+ (WebCore::PluginLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/RenderSurfaceChromium.cpp:
+ (WebCore::RenderSurfaceChromium::name):
+ (WebCore::writeIndent):
+ (WebCore::RenderSurfaceChromium::dumpSurface):
+ * platform/graphics/chromium/RenderSurfaceChromium.h:
+ * platform/graphics/chromium/VideoLayerChromium.h:
+ (WebCore::VideoLayerChromium::drawsContent):
+ (WebCore::VideoLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/WebGLLayerChromium.h:
+ (WebCore::WebGLLayerChromium::drawsContent):
+ (WebCore::WebGLLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp: Added.
+ (WebCore::CCHeadsUpDisplay::CCHeadsUpDisplay):
+ (WebCore::CCHeadsUpDisplay::~CCHeadsUpDisplay):
+ (WebCore::CCHeadsUpDisplay::draw):
+ (WebCore::CCHeadsUpDisplay::drawHudContents):
+ (WebCore::CCHeadsUpDisplay::onPresent):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.h: Added.
+ (WebCore::CCHeadsUpDisplay::setShowFPSCounter):
+ (WebCore::CCHeadsUpDisplay::showFPSCounter):
+ (WebCore::CCHeadsUpDisplay::setShowPlatformLayerTree):
+ (WebCore::CCHeadsUpDisplay::showPlatformLayerTree):
+ (WebCore::CCHeadsUpDisplay::enabled):
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::CCLayerImpl):
+ (WebCore::writeIndent):
+ (WebCore::CCLayerImpl::dumpLayerProperties):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (WebCore::CCLayerImpl::debugID):
+ (WebCore::CCLayerImpl::setName):
+ (WebCore::CCLayerImpl::name):
+
+2011-03-02 Ojan Vafai <ojan@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ crash in adoptNode with mutation events
+ https://bugs.webkit.org/show_bug.cgi?id=50046
+
+ If the DOM is modified during the removeChild call in adoptNode,
+ then the setDocument call that follows can leave the DOM in an
+ inconsistent state.
+
+ * dom/Document.cpp:
+ (WebCore::Document::adoptNode):
+
+2011-03-03 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Add audio tag tests to the media controls manual test suite.
+ https://bugs.webkit.org/show_bug.cgi?id=55722
+
+ * manual-tests/media-controls.html: Added 4 audio tests.
+
+2011-03-03 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Eric Seidel.
+
+ [EFL] Adjust functions of RenderThemeEfl.cpp to WebKit parameter style
+ https://bugs.webkit.org/show_bug.cgi?id=54392
+
+ Functions of RenderThemeEfl.cpp adhere efl coding style instead of WebKit coding style.
+ WebCore's functions should adhere WebKit coding style.
+
+ * platform/efl/RenderThemeEfl.cpp:
+ (WebCore::RenderThemeEfl::themePartCacheEntryReset):
+ (WebCore::RenderThemeEfl::themePartCacheEntrySurfaceCreate):
+ (WebCore::RenderThemeEfl::cacheThemePartNew):
+ (WebCore::RenderThemeEfl::cacheThemePartReset):
+ (WebCore::RenderThemeEfl::cacheThemePartResizeAndReset):
+ (WebCore::RenderThemeEfl::cacheThemePartGet):
+ (WebCore::RenderThemeEfl::cacheThemePartFlush):
+ (WebCore::RenderThemeEfl::applyEdjeStateFromForm):
+ (WebCore::RenderThemeEfl::paintThemePart):
+ (WebCore::renderThemeEflColorClassSelectionActive):
+ (WebCore::renderThemeEflColorClassSelectionInactive):
+ (WebCore::renderThemeEflColorClassFocusRing):
+ (WebCore::renderThemeEflColorClassButtonText):
+ (WebCore::renderThemeEflColorClassComboText):
+ (WebCore::renderThemeEflColorClassEntryText):
+ (WebCore::renderThemeEflColorClassSearchText):
+ (WebCore::RenderThemeEfl::applyPartDescription):
+ (WebCore::RenderThemeEfl::applyPartDescriptions):
+ (WebCore::RenderThemeEfl::controlSupportsTints):
+ (WebCore::RenderThemeEfl::baselinePosition):
+ (WebCore::RenderThemeEfl::paintSliderTrack):
+ (WebCore::RenderThemeEfl::adjustSliderTrackStyle):
+ (WebCore::RenderThemeEfl::adjustSliderThumbStyle):
+ (WebCore::RenderThemeEfl::paintSliderThumb):
+ (WebCore::RenderThemeEfl::adjustCheckboxStyle):
+ (WebCore::RenderThemeEfl::paintCheckbox):
+ (WebCore::RenderThemeEfl::adjustRadioStyle):
+ (WebCore::RenderThemeEfl::paintRadio):
+ (WebCore::RenderThemeEfl::adjustButtonStyle):
+ (WebCore::RenderThemeEfl::paintButton):
+ (WebCore::RenderThemeEfl::adjustMenuListStyle):
+ (WebCore::RenderThemeEfl::paintMenuList):
+ (WebCore::RenderThemeEfl::adjustTextFieldStyle):
+ (WebCore::RenderThemeEfl::paintTextField):
+ (WebCore::RenderThemeEfl::adjustTextAreaStyle):
+ (WebCore::RenderThemeEfl::paintTextArea):
+ (WebCore::RenderThemeEfl::adjustSearchFieldDecorationStyle):
+ (WebCore::RenderThemeEfl::paintSearchFieldDecoration):
+ (WebCore::RenderThemeEfl::adjustSearchFieldResultsButtonStyle):
+ (WebCore::RenderThemeEfl::paintSearchFieldResultsButton):
+ (WebCore::RenderThemeEfl::adjustSearchFieldResultsDecorationStyle):
+ (WebCore::RenderThemeEfl::paintSearchFieldResultsDecoration):
+ (WebCore::RenderThemeEfl::adjustSearchFieldCancelButtonStyle):
+ (WebCore::RenderThemeEfl::paintSearchFieldCancelButton):
+ (WebCore::RenderThemeEfl::adjustSearchFieldStyle):
+ (WebCore::RenderThemeEfl::paintSearchField):
+ (WebCore::RenderThemeEfl::adjustProgressBarStyle):
+ (WebCore::RenderThemeEfl::paintProgressBar):
+ (WebCore::RenderThemeEfl::paintMediaFullscreenButton):
+ (WebCore::RenderThemeEfl::paintMediaMuteButton):
+ (WebCore::RenderThemeEfl::paintMediaPlayButton):
+ (WebCore::RenderThemeEfl::paintMediaSeekBackButton):
+ (WebCore::RenderThemeEfl::paintMediaSeekForwardButton):
+ (WebCore::RenderThemeEfl::paintMediaSliderTrack):
+ (WebCore::RenderThemeEfl::paintMediaSliderThumb):
+ (WebCore::RenderThemeEfl::paintMediaVolumeSliderContainer):
+ (WebCore::RenderThemeEfl::paintMediaVolumeSliderTrack):
+ (WebCore::RenderThemeEfl::paintMediaVolumeSliderThumb):
+ (WebCore::RenderThemeEfl::paintMediaCurrentTime):
+
+2011-03-03 Andy Estes <aestes@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Assertion failure in toElement(WebCore::Node*)
+ https://bugs.webkit.org/show_bug.cgi?id=55697
+
+ Test: fast/parser/fragment-foreign-content.html
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::constructTreeFromAtomicToken): The current
+ element in the HTMLElementStack might be a DocumentFragment if a
+ fragment is being parsed who's first node is foreign content.
+
+2011-03-03 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [QT] Implement mock client-based geolocation for layout testing
+ https://bugs.webkit.org/show_bug.cgi?id=54334
+
+ Implements client() to GeolocationController to re-use geolocationClientMock class
+ for layout testing purpose.
+
+ * page/GeolocationController.h:
+ (WebCore::GeolocationController::client):
+
+2011-03-03 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ Stop calling deprecatedNode and deprecatedEditingOffset in InsertTextCommand
+ https://bugs.webkit.org/show_bug.cgi?id=55352
+
+ Stopped calling deprecatedNode and deprecatedEditingOffset in the following functions:
+
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::positionOutsideTabSpan): Takes care of all types of positions and
+ no longer calls deprecated functions.
+ * editing/InsertTextCommand.cpp:
+ (WebCore::InsertTextCommand::positionInsideTextNode): Ditto; renamed from prepareForTextInsertion.
+ Check if the text node inside a tab span before checking if the container node is a text node
+ because the position before or after a text node can still be inside a tab span.
+ (WebCore::InsertTextCommand::input): No longer calls deprecated functions.
+ * editing/InsertTextCommand.h:
+ * editing/ModifySelectionListLevel.cpp:
+ (WebCore::getStartEndListChildren): Call anchorNode() instead of deprecatedNode() because the start
+ or the end of selection could be an immediate child of a list node (e.g. br inside ul)
+
+2011-03-03 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Move last bits of SQL into IDBBackingStore
+ https://bugs.webkit.org/show_bug.cgi?id=55668
+
+ After this, all SQL code for IndexedDB is in IDBBackingStore.cpp.
+
+ No new tests: refactoring only.
+
+ * storage/IDBBackingStore.cpp:
+ (WebCore::IDBBackingStore::createTransaction):
+ * storage/IDBBackingStore.h:
+ * storage/IDBCursorBackendImpl.h:
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::backingStore):
+ * storage/IDBDatabaseBackendImpl.h:
+ * storage/IDBIndexBackendImpl.h:
+ * storage/IDBKey.h:
+ * storage/IDBObjectStoreBackendImpl.h:
+ * storage/IDBTransactionBackendImpl.cpp:
+ (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
+ * storage/IDBTransactionBackendImpl.h:
+ * storage/IDBTransactionBackendInterface.h:
+ * storage/IDBTransactionCoordinator.cpp:
+
+2011-03-03 Adam Klein <adamk@chromium.org>
+
+ Reviewed by David Levin.
+
+ [fileapi] Tighten up ResolveURICallbacks
+ https://bugs.webkit.org/show_bug.cgi?id=55638
+
+ Two changes:
+ - Retry only on TYPE_MISMATCH_ERR now that Chromium
+ properly sets that error code.
+ - Call DirectoryEntry instead of DOMFileSystem methods.
+
+ No change in behavior, so no new tests.
+
+ * fileapi/FileSystemCallbacks.cpp:
+ (WebCore::ResolveURICallbacks::didOpenFileSystem):
+
+2011-03-03 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Get rid of Page::globalHistoryItem
+ https://bugs.webkit.org/show_bug.cgi?id=55738
+
+ The m_globalHistoryItem is only used by Mac and Windows WebKit1.
+ Instead of having WebCore updating this member variable, just call out
+ to a FrameLoaderClient member function and let WebKit keep it up to date.
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::dispatchDidRemoveBackForwardItem):
+ (WebCore::EmptyFrameLoaderClient::updateGlobalHistoryItemForPage):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
+ (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
+ * loader/FrameLoaderClient.h:
+ (WebCore::FrameLoaderClient::updateGlobalHistoryItemForPage):
+ * loader/HistoryController.cpp:
+ (WebCore::HistoryController::goToItem):
+ (WebCore::HistoryController::updateForStandardLoad):
+ (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList):
+ * page/Page.cpp:
+ * page/Page.h:
+
+2011-03-02 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Steve Block.
+
+ Cursor.continue with a key param should test less than, not equal to
+ https://bugs.webkit.org/show_bug.cgi?id=55640
+
+ If you supply a param to cursor.continue, we sould guarantee that
+ the item we continue to is greater than or equal to the parameter.
+ Right now, we only test equality.
+
+ http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#widl-IDBCursor-continue
+ http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#dfn-steps-for-iterating-a-cursor
+
+ Test: storage/indexeddb/cursor-continue.html
+
+ * storage/IDBCursorBackendImpl.cpp:
+ (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
+ * storage/IDBKey.cpp:
+ (WebCore::IDBKey::isLessThan):
+ (WebCore::IDBKey::isEqual):
+ * storage/IDBKey.h:
+
+2011-03-03 Brent Fulgham <bfulgham@webkit.org>
+
+ Build fix. Need win/cURL DownloadBundle stub.
+
+ * platform/network/curl/DownloadBundle.h: Added.
+
+2011-03-03 Geoffrey Garen <ggaren@apple.com>
+
+ Rolled out 80277 and 80280 because they caused event handler layout test
+ failures.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDOMGlobalObject.cpp:
+ * bindings/js/JSDOMGlobalObject.h:
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowCustom.h:
+ * bindings/js/JSWorkerContextBase.cpp:
+
+2011-03-03 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=55721
+ Global IconDatabase should be returned by reference, not as a pointer
+
+ * history/HistoryItem.cpp:
+ (WebCore::HistoryItem::HistoryItem):
+ (WebCore::HistoryItem::~HistoryItem):
+ (WebCore::HistoryItem::reset):
+ (WebCore::HistoryItem::icon):
+ (WebCore::HistoryItem::setURLString):
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::startIconLoader):
+ (WebCore::FrameLoader::commitIconURLToIconDatabase):
+
+ * loader/archive/cf/LegacyWebArchive.cpp:
+ (WebCore::LegacyWebArchive::create):
+
+ * loader/icon/IconDatabase.cpp:
+ (WebCore::iconDatabase):
+ * loader/icon/IconDatabase.h:
+ * loader/icon/IconDatabaseNone.cpp:
+ (WebCore::iconDatabase):
+ * loader/icon/wince/IconDatabaseWinCE.cpp:
+ (WebCore::iconDatabase):
+
+ * loader/icon/IconLoader.cpp:
+ (WebCore::IconLoader::finishLoading):
+
+2011-03-03 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Martin Robinson.
+
+ Stop instantiating legacy editing positions in FocusController::advanceFocusInDocumentOrder
+ https://bugs.webkit.org/show_bug.cgi?id=52742
+
+ Use firstPositionInOrBeforeNode to instantiate appropriate position.
+
+ * page/FocusController.cpp:
+ (WebCore::FocusController::advanceFocusInDocumentOrder):
+
+2011-03-03 Andy Estes <aestes@apple.com>
+
+ Reviewed by Darin Adler.
+
+ When displaying the missing plug-in sheet, pass the 'pluginspage'
+ attribute to the UI process.
+ https://bugs.webkit.org/show_bug.cgi?id=55553
+
+ * WebCore.exp.in: Export __ZN7WebCore9HTMLNames15pluginspageAttrE.
+ * html/HTMLAttributeNames.in: Add 'pluginspage' as a known content
+ attribute.
+
+2011-03-03 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Adam Roben.
+
+ WebKit2: Use CFNetwork Sessions API.
+ https://bugs.webkit.org/show_bug.cgi?id=55435
+
+ Set the Private Browsing Storage Session on requests when Private Browsing is enabled.
+
+ * WebCore.exp.in:
+ Support using WKCopyRequestWithStorageSession in WebCore.
+ * platform/mac/WebCoreSystemInterface.h:
+ Ditto.
+ * platform/mac/WebCoreSystemInterface.mm:
+ Ditto.
+
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::makeFinalRequest):
+ If Private Browsing is enabled, set the Private Browsing Storage Session on the request.
+ (WebCore::ResourceHandle::willSendRequest):
+ Ditto.
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::createNSURLConnection):
+ Ditto.
+ (WebCore::ResourceHandle::willSendRequest):
+ Ditto.
+
+ * platform/network/cf/ResourceRequest.h:
+ * platform/network/cf/ResourceRequestCFNet.cpp:
+ (WebCore::ResourceRequest::setStorageSession):
+ Call through to WKSI.
+ * platform/network/mac/ResourceRequestMac.mm:
+ (WebCore::ResourceRequest::setStorageSession):
+ Ditto.
+
+2011-03-03 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ REGRESSION: Accelerated transitions are jumpy
+ https://bugs.webkit.org/show_bug.cgi?id=55022
+
+ Changed the way default TimingFunction is stored according to Adam Roben's
+ suggestion.
+
+ * platform/animation/TimingFunction.h:
+ (WebCore::CubicBezierTimingFunction::defaultTimingFunction):
+
+2011-03-03 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Rename -webkit-hyphenate-locale to -webkit-locale
+ https://bugs.webkit.org/show_bug.cgi?id=55709
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ (WebCore::cssPropertyID):
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::findNextLineBreak):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::locale):
+ (WebCore::InheritedFlags::setLocale):
+ (WebCore::InheritedFlags::initialLocale):
+ * rendering/style/StyleRareInheritedData.cpp:
+ (WebCore::StyleRareInheritedData::StyleRareInheritedData):
+ (WebCore::StyleRareInheritedData::operator==):
+ * rendering/style/StyleRareInheritedData.h:
+
+2011-03-03 Kevin Ollivier <kevino@theolliviers.com>
+
+ [wx] Build fixes. Use Font::textMetrics to get ascent value, and add missing include.
+
+ * platform/wx/DragDataWx.cpp:
+ * platform/wx/wxcode/win/non-kerned-drawing.cpp:
+ (WebCore::drawTextWithSpacing):
+
+2011-03-03 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Geoffrey Garen.
+
+ JSVariableObject needs to use WriteBarrier for symboltable property storage
+ https://bugs.webkit.org/show_bug.cgi?id=55698
+
+ Update to pass JSGlobalData for the symbol table write used
+ to set the document property.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::updateDocument):
+
+2011-03-03 Alexey Proskuryakov <ap@apple.com>
+
+ More build fixing. Move WebCoreKeyboardUIMode.h to a cross-platform location.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * page/WebCoreKeyboardUIMode.h: Copied from WebCore/page/mac/WebCoreKeyboardUIMode.h.
+ * page/mac/WebCoreKeyboardUIMode.h: Removed.
+
+2011-03-03 Alexey Proskuryakov <ap@apple.com>
+
+ Build fix. Should include WebCoreKeyboardUIMode.h on all platforms now.
+
+ * page/ChromeClient.h:
+
+2011-03-02 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (WebKit2): Tab keys no longer observe Full Keyboard Access
+ https://bugs.webkit.org/show_bug.cgi?id=55633
+ <rdar://problem/8963023>
+
+ * loader/EmptyClients.h: (WebCore::EmptyChromeClient::keyboardUIMode):
+ * page/ChromeClient.h:
+ * page/EventHandler.cpp: (WebCore::EventHandler::tabsToLinks):
+ Merged tabsToLinks() and keyboardUIMode(). The latter returned a superset of information
+ returned by former.
+
+2011-03-03 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Fix Win compile break, caused by r80276.
+
+ * rendering/RenderThemeWin.h: Changed signature of volumeSliderOffsetFromMuteButton
+ to match RenderTheme.h.
+
+2011-03-02 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Moved all variable object storage inline -- upping the object size limit to 1K
+ https://bugs.webkit.org/show_bug.cgi?id=55653
+
+ * bindings/js/JSDOMGlobalObject.cpp:
+ * bindings/js/JSDOMGlobalObject.h:
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowCustom.h:
+ * bindings/js/JSWorkerContextBase.cpp: Removed out-of-line storage. Changed d-> to m_.
+
+2011-03-03 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Use RenderBox in volumeSliderOffsetFromMuteButton, since that's what is actually being used.
+ https://bugs.webkit.org/show_bug.cgi?id=55099
+
+ Cleanup, no behavior change.
+
+ * html/shadow/MediaControls.cpp:
+ (WebCore::MediaControls::updateVolumeSliderContainer): Changed to pass RenderBox
+ instead of Node.
+ * rendering/RenderMediaControls.cpp:
+ (WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton): Changed
+ to use RenderBox as argument.
+ * rendering/RenderMediaControls.h: Ditto.
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::volumeSliderOffsetFromMuteButton): Ditto.
+ * rendering/RenderTheme.h: Ditto.
+ * rendering/RenderThemeChromiumMac.h: Ditto.
+ * rendering/RenderThemeChromiumMac.mm:
+ (WebCore::RenderThemeChromiumMac::volumeSliderOffsetFromMuteButton): Ditto.
+ * rendering/RenderThemeMac.h: Ditto.
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::volumeSliderOffsetFromMuteButton): Ditto.
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::RenderThemeWin::volumeSliderOffsetFromMuteButton): Ditto.
+
+2011-03-03 Alexis Menard <alexis.menard@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ When building with DEFINES+=USE_GSTREAMER=1 we don't want to define ENABLE_QT_MULTIMEDIA to 1.
+ Also add the new files added after https://bugs.webkit.org/show_bug.cgi?id=54870 to support GRefPtr
+ for GstElement.
+
+ * WebCore.pro:
+ * features.pri:
+
+2011-03-03 Anders Carlsson <andersca@apple.com>
+
+ Try to fix the Windows build again.
+
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
+
+2011-03-03 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Add another CRASH() for CSSSelector double frees
+ https://bugs.webkit.org/show_bug.cgi?id=55693
+
+ To help track down bug 53045, add a CRASH call when the the array and/or
+ CSSSelector member in CSSSelectorList is disposed of more than once.
+
+ Just a check, no new tests necessary.
+
+ * css/CSSSelectorList.cpp:
+ (WebCore::CSSSelectorList::deleteSelectors):
+
+2011-03-03 Anders Carlsson <andersca@apple.com>
+
+ Yet another attempt at fixing the Windows build.
+
+ * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
+ * platform/graphics/ca/win/LegacyCACFLayerTreeHost.cpp:
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
+
+2011-03-02 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ REGRESSION: Accelerated transitions are jumpy
+ https://bugs.webkit.org/show_bug.cgi?id=55022
+
+ Got rid of default TimingFunction values from PlatformCAAnimation*. A TimingFunction
+ is now always passed in. The TimingFunction class now has a static method to get
+ a default object which has the 'ease' values in it. I now assert in both Mac and
+ Win implementations if a null TimingFunction pointer is seen.
+
+ * platform/animation/TimingFunction.h:
+ (WebCore::CubicBezierTimingFunction::create):
+ (WebCore::CubicBezierTimingFunction::defaultTimingFunction):
+ (WebCore::CubicBezierTimingFunction::CubicBezierTimingFunction):
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::timingFunctionForAnimationValue):
+ * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
+ (toCAMediaTimingFunction):
+ * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
+ (toCACFTimingFunction):
+
+2011-03-03 Tony Gentilcore <tonyg@chromium.org>
+
+ Unreviewed build fix.
+
+ Fix clang compile after r80220
+ https://bugs.webkit.org/show_bug.cgi?id=55692
+
+ * storage/IDBBackingStore.cpp:
+ (WebCore::IDBBackingStore::getPrimaryKeyViaIndex):
+
+2011-03-03 Anders Carlsson <andersca@apple.com>
+
+ Attempt to fix the Windows build.
+
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
+
+2011-03-02 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Rest of WebKit2: Need a way to send notifications to client when cookies change
+ https://bugs.webkit.org/show_bug.cgi?id=55427
+ <rdar://problem/9056027>
+
+ Add functions to be exported.
+
+ * WebCore.exp.in:
+
+2011-03-03 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Improve WebCore build time by ~5%
+ https://bugs.webkit.org/show_bug.cgi?id=55688
+
+ Forward declare the CATransform3D and CGAffineTransform structs instead of including
+ large chunks of QuartzCore and Core Graphics.
+
+ On an 8 core Mac Pro, this sped up building WebCore by about 5%.
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ * platform/graphics/ca/TransformationMatrixCA.cpp:
+ * platform/graphics/transforms/TransformationMatrix.h:
+
+2011-03-03 Andrey Kosyakov <caseq@chromium.org>
+
+ Unreviewed. Adjusted call to a method renamed in r80102.
+
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._startEditing):
+
+2011-03-03 Timothy Hatcher <timothy@apple.com>
+
+ Use APIEntryShim instead of JSLock in SerializedScriptValue to allow it to be used
+ by contexts not created by WebCore.
+
+ https://webkit.org/b/55642
+
+ Reviewed by Oliver Hunt.
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::SerializedScriptValue::create): Use APIEntryShim instead of JSLock.
+ (WebCore::SerializedScriptValue::deserialize): Ditto.
+
+2011-03-03 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Darin Adler.
+
+ WebCore should check for "Upgrade" and "Connection" header fields in WebSockets handshake
+ https://bugs.webkit.org/show_bug.cgi?id=55498
+ <rdar://problem/8752706>
+
+ Tests: http/tests/websocket/tests/handshake-fail-by-no-connection-header.html
+ http/tests/websocket/tests/handshake-fail-by-no-upgrade-header.html
+
+ * websockets/WebSocketHandshake.h: Removed unused and meaningless setters for response
+ header fields. Removed separate member variables for those, as they were duplicating data
+ available in response, and there is no reason to squeeze microsecods here.
+
+ * websockets/WebSocketHandshake.cpp:
+ (WebCore::WebSocketHandshake::reset): There are no longer member variables for header field
+ values to reset here.
+ (WebCore::WebSocketHandshake::readServerHandshake): Removed a call for processHeaders().
+ (WebCore::WebSocketHandshake::serverWebSocketOrigin): Changed to get the value from response.
+ (WebCore::WebSocketHandshake::serverWebSocketLocation): Ditto.
+ (WebCore::WebSocketHandshake::serverWebSocketProtocol): Ditto.
+ (WebCore::WebSocketHandshake::serverSetCookie): Ditto.
+ (WebCore::WebSocketHandshake::serverSetCookie2): Ditto.
+ (WebCore::WebSocketHandshake::serverUpgrade): Added.
+ (WebCore::WebSocketHandshake::serverConnection): Added.
+ (WebCore::WebSocketHandshake::checkResponseHeaders): Added checks for Upgrade and Connection
+ header field presence and values.
+
+2011-03-03 Helder Correia <helder@sencha.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] fast/canvas/canvas-strokePath-gradient-shadow.html fails
+ https://bugs.webkit.org/show_bug.cgi?id=55651
+
+ When relying on ContextShadow and using a gradient stroke for a path,
+ the alpha of the shadow is incorrect.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::strokePath):
+
+2011-03-03 Martin Robinson <mrobinson@igalia.com>
+
+ XHTMLMP build broken after r78342
+ https://bugs.webkit.org/show_bug.cgi?id=55286
+
+ Fix XHTMLMP build now that the DocumentWriter is a member of DocumentLoader
+ instead of FrameLoader.
+
+ No new tests. This is a build fix.
+
+ * dom/Document.cpp:
+ (WebCore::Document::isXHTMLMPDocument):
+
+2011-03-03 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Eric Carlson.
+
+ Tweak MediaControlMuteButtonElement class hierarchy.
+ https://bugs.webkit.org/show_bug.cgi?id=55614
+
+ This allows the mute button on the panel to have event handlers that are
+ different from the mute button in the volume slider.
+
+ No change in behavior, covered by existing tests.
+
+ * html/shadow/MediaControls.cpp:
+ (WebCore::MediaControls::createMuteButton): Changed to use MediaControlPanelMuteButtonElement.
+ * rendering/MediaControlElements.cpp:
+ (WebCore::MediaControlMuteButtonElement::updateDisplayType):
+ (WebCore::MediaControlPanelMuteButtonElement::MediaControlPanelMuteButtonElement): Added.
+ (WebCore::MediaControlPanelMuteButtonElement::create): Added.
+ (WebCore::MediaControlPanelMuteButtonElement::shadowPseudoId): Moved.
+ * rendering/MediaControlElements.h: Added defs.
+
+2011-03-03 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Resource agent should have same lifetime as Inspector agent
+ https://bugs.webkit.org/show_bug.cgi?id=55461
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ (WebCore::InspectorAgent::inspectedPageDestroyed): disconnectFrontend is called before the agent is destroyed
+ to clear frontend reference in all agents.
+ (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
+ (WebCore::InspectorAgent::setFrontend):
+ (WebCore::InspectorAgent::disconnectFrontend):
+ (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
+ (WebCore::InspectorAgent::didCommitLoad):
+ * inspector/InspectorAgent.h:
+ (WebCore::InspectorAgent::resourceAgent):
+ * inspector/InspectorBrowserDebuggerAgent.cpp:
+ (WebCore::InspectorBrowserDebuggerAgent::~InspectorBrowserDebuggerAgent):
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
+ (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl):
+ (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl):
+ (WebCore::InspectorInstrumentation::didCloseWebSocketImpl):
+ (WebCore::InspectorInstrumentation::retrieveResourceAgent):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::setFrontend):
+ (WebCore::InspectorResourceAgent::clearFrontend):
+ (WebCore::InspectorResourceAgent::restore):
+ (WebCore::InspectorResourceAgent::~InspectorResourceAgent):
+ (WebCore::InspectorResourceAgent::enable):
+ (WebCore::InspectorResourceAgent::disable):
+ (WebCore::InspectorResourceAgent::InspectorResourceAgent):
+ * inspector/InspectorResourceAgent.h:
+ (WebCore::InspectorResourceAgent::create):
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::restore):
+ * inspector/InspectorTimelineAgent.h:
+ * inspector/front-end/NetworkManager.js:
+ (WebInspector.NetworkManager):
+ (WebInspector.NetworkManager.prototype.frontendReused):
+ * inspector/front-end/inspector.js:
+ (WebInspector.frontendReused):
+
+2011-03-03 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ CSS RGBA fast-path color parsing should clamp of out-of-range alpha values
+ https://bugs.webkit.org/show_bug.cgi?id=55661
+
+ Test case originally written by Andreas Kling <andreas.kling@nokia.com>
+
+ Test: fast/canvas/rgba-parsing.html
+
+ * css/CSSParser.cpp:
+ (WebCore::isValidDouble): Check whether the given string is a valid double.
+ (WebCore::parseAlphaValue): Out-of-range alpha values should be clamped to the (0.0, 1.0) range.
+
+2011-03-03 David Holloway <dhollowa@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Changes HTMLTextFormControlElement::placeholderShouldBeVisible to account
+ for non-empty suggestion text. The visibility of the placeholder text
+ now turned off when suggestion text is set.
+ https://bugs.webkit.org/show_bug.cgi?id=55245
+
+ No new tests because, by design, the suggestion text is not accessible
+ through the DOM.
+
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
+ * html/HTMLFormControlElement.h:
+ (WebCore::HTMLTextFormControlElement::isEmptySuggestedValue):
+ * html/HTMLInputElement.h:
+ (WebCore::HTMLInputElement::isEmptySuggestedValue):
+
+2011-03-03 Andy Estes <aestes@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ HTML5 TreeBuilder regressed a Peacekeeper DOM test by 25% (was 40%)
+ https://bugs.webkit.org/show_bug.cgi?id=48719
+
+ Instead of pushing a fake HTMLHtmlElement onto the open element stack
+ during fragment parsing only to later remove it and reparent its
+ children to the DocumentFragment, push the DocumentFragment directly
+ onto the open element stack as the root node. This requires refactoring
+ HTMLElementStack to hold ContainerNode pointers rather than Element
+ pointers, which has implications for HTMLConstructionSite and
+ HTMLTreeBuilder as well.
+
+ With this patch, the regression in Peacekeeper from Safari 5.0.3 to ToT
+ is ~14%. However, if you discount the 'domDynamicCreationCreateElement'
+ test, ToT is now ~4% faster than Safari 5.0.3. This indicates that the
+ regression no longer lies in fragment parsing.
+
+ No new tests. No change in behavior.
+
+ * dom/Element.h:
+ (WebCore::Node::hasLocalName):
+ * dom/Node.h:
+ * html/parser/HTMLConstructionSite.cpp:
+ (WebCore::HTMLNames::hasImpliedEndTag):
+ (WebCore::HTMLConstructionSite::HTMLConstructionSite):
+ (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
+ (WebCore::HTMLConstructionSite::insertComment):
+ (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
+ (WebCore::HTMLConstructionSite::attachToCurrent):
+ (WebCore::HTMLConstructionSite::insertScriptElement):
+ (WebCore::HTMLConstructionSite::insertTextNode):
+ (WebCore::HTMLConstructionSite::createElement):
+ (WebCore::HTMLConstructionSite::createHTMLElement):
+ (WebCore::HTMLConstructionSite::generateImpliedEndTagsWithExclusion):
+ (WebCore::HTMLConstructionSite::generateImpliedEndTags):
+ (WebCore::HTMLConstructionSite::findFosterSite):
+ (WebCore::HTMLConstructionSite::shouldFosterParent):
+ * html/parser/HTMLConstructionSite.h:
+ (WebCore::HTMLConstructionSite::currentNode):
+ * html/parser/HTMLElementStack.cpp:
+ (WebCore::HTMLNames::isNumberedHeaderElement):
+ (WebCore::HTMLNames::isScopeMarker):
+ (WebCore::HTMLNames::isListItemScopeMarker):
+ (WebCore::HTMLNames::isTableScopeMarker):
+ (WebCore::HTMLNames::isTableBodyScopeMarker):
+ (WebCore::HTMLNames::isTableRowScopeMarker):
+ (WebCore::HTMLNames::isButtonScopeMarker):
+ (WebCore::HTMLNames::isSelectScopeMarker):
+ (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
+ (WebCore::HTMLElementStack::ElementRecord::replaceElement):
+ (WebCore::HTMLElementStack::HTMLElementStack):
+ (WebCore::HTMLElementStack::secondElementIsHTMLBodyElement):
+ (WebCore::HTMLElementStack::popAll):
+ (WebCore::HTMLElementStack::popUntilNumberedHeaderElementPopped):
+ (WebCore::HTMLElementStack::popUntil):
+ (WebCore::HTMLElementStack::popUntilPopped):
+ (WebCore::HTMLElementStack::popUntilTableScopeMarker):
+ (WebCore::HTMLElementStack::popUntilTableBodyScopeMarker):
+ (WebCore::HTMLElementStack::popUntilTableRowScopeMarker):
+ (WebCore::HTMLElementStack::pushHTMLHtmlElement):
+ (WebCore::HTMLElementStack::push):
+ (WebCore::HTMLElementStack::insertAbove):
+ (WebCore::HTMLElementStack::find):
+ (WebCore::HTMLElementStack::topmost):
+ (WebCore::HTMLElementStack::contains):
+ (WebCore::inScopeCommon):
+ (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
+ (WebCore::HTMLElementStack::htmlElement):
+ (WebCore::HTMLElementStack::rootNode):
+ (WebCore::HTMLElementStack::pushCommon):
+ * html/parser/HTMLElementStack.h:
+ (WebCore::HTMLElementStack::ElementRecord::element):
+ (WebCore::HTMLElementStack::ElementRecord::node):
+ (WebCore::HTMLElementStack::topNode):
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
+ (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+ (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
+ (WebCore::HTMLTreeBuilder::processEndTagForInCell):
+ (WebCore::HTMLTreeBuilder::processEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+ (WebCore::HTMLTreeBuilder::finished):
+ * html/parser/HTMLTreeBuilder.h:
+
+2011-03-02 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: inspector protocol should allow different domains to have methods with same name
+ https://bugs.webkit.org/show_bug.cgi?id=55558
+
+ * inspector/CodeGeneratorInspector.pm: each command is now identified by domain + command-name(was command-name only).
+
+2011-03-02 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: make selected call frame debugger presentation model property.
+ https://bugs.webkit.org/show_bug.cgi?id=55582
+
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane):
+ (WebInspector.CallStackSidebarPane.prototype.update):
+ (WebInspector.CallStackSidebarPane.prototype.set selectedCallFrame):
+ (WebInspector.CallStackSidebarPane.prototype._selectedCallFrameIndex):
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype.completions):
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
+ (WebInspector.DebuggerPresentationModel.prototype.get selectedCallFrame):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype.getCompletionsOnCallFrame):
+ (WebInspector.ScriptsPanel.prototype._debuggerResumed):
+ (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
+ (WebInspector.ScriptsPanel.prototype._callFrameSelected):
+
+2011-03-03 Jia Pu <jpu@apple.com>
+
+ Reviewed by Darin Adler.
+
+ On Mac OS X, spelling suggestion panel stops showing up after change set 80121
+ https://bugs.webkit.org/show_bug.cgi?id=55628
+
+ Removed a call to stopCorrectionPanelTimer() to fix a regression introduced by changeset 80121.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::appliedEditing):
+ * manual-tests/autocorrection/autocorrection-contraction.html:
+
+2011-03-03 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: rename "sourceName" to "sourceFileId" in ScriptsPanel.js.
+ https://bugs.webkit.org/show_bug.cgi?id=55569
+
+ sourceFileId better reflects the intention to have unique identifier for each source that is shown in scripts panel.
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ * inspector/front-end/ScriptsPanel.js:
+
+2011-03-03 Steve Block <steveblock@google.com>
+
+ Reviewed by David Levin.
+
+ JavaString API should be implementable by both JSC and V8
+ https://bugs.webkit.org/show_bug.cgi?id=55567
+
+ Remove JavaString's UString operator and replace it with a
+ script-engine-independent impl() method, which returns a
+ StringImpl and can be implemented with both JSC and V8.
+
+ No new tests, refactoring only.
+
+ * bridge/jni/JNIBridge.h:
+ (JSC::Bindings::JavaString::impl):
+ * bridge/jni/jni_jsobject.mm:
+ (JavaJSObject::call):
+ (JavaJSObject::eval):
+ (JavaJSObject::getMember):
+ (JavaJSObject::setMember):
+ (JavaJSObject::removeMember):
+ * bridge/jni/jsc/JNIBridgeJSC.cpp:
+ (JavaField::valueFromInstance):
+ (JavaField::setValueToInstance):
+ * bridge/jni/jsc/JavaClassJSC.cpp:
+ (JavaClass::JavaClass):
+ * bridge/jni/jsc/JavaInstanceJSC.cpp:
+ (JavaInstance::invokeMethod):
+ * bridge/jni/jsc/JavaStringJSC.h:
+ (JSC::Bindings::JavaStringImpl::impl):
+ * bridge/jni/v8/JavaStringV8.h:
+ (JSC::Bindings::JavaStringImpl::impl):
+
+2011-03-03 Benjamin Poulain <ikipou@gmail.com>
+
+ Reviewed by Adam Roben.
+
+ REGRESSION (r79817): Lots of leaks of FloatingObjects seen on SnowLeopard Intel Leaks bot
+ https://bugs.webkit.org/show_bug.cgi?id=55602
+
+ Delete the FloatingObject referenced by m_floatingObjects when clearing the floats.
+
+ The DeprecatedPtrList was deleting the objects automatically due to its autoDelete behavior. The
+ objects need to be deleted manually with ListHashSet.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::clearFloats):
+
+2011-03-03 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Move SQL code, especially for cursors, to IDBBackingStore
+ https://bugs.webkit.org/show_bug.cgi?id=55376
+
+ Move SQL code from IDBKey, IDBKeyRange, IDBIndexBackendImpl,
+ IDBObjectStoreBackendImpl, and especially IDBCursorBackendImpl.
+
+ No new functionality, so no new tests.
+
+ * storage/IDBBackingStore.cpp:
+ (WebCore::lowerCursorWhereFragment):
+ (WebCore::upperCursorWhereFragment):
+ (WebCore::IDBBackingStore::deleteObjectStoreRecord):
+ (WebCore::IDBBackingStore::keyExistsInObjectStore):
+ (WebCore::IDBBackingStore::getObjectViaIndex):
+ (WebCore::keyFromQuery):
+ (WebCore::IDBBackingStore::getPrimaryKeyViaIndex):
+ (WebCore::IDBBackingStore::keyExistsInIndex):
+ (WebCore::CursorImplCommon::CursorImplCommon::continueInternal):
+ (WebCore::CursorImplCommon::ObjectStoreCursorImpl::ObjectStoreCursorImpl):
+ (WebCore::CursorImplCommon::ObjectStoreCursorImpl::objectStoreDataId):
+ (WebCore::CursorImplCommon::ObjectStoreCursorImpl::key):
+ (WebCore::CursorImplCommon::ObjectStoreCursorImpl::value):
+ (WebCore::CursorImplCommon::ObjectStoreCursorImpl::continueFunction):
+ (WebCore::IDBBackingStore::openObjectStoreCursor):
+ (WebCore::ObjectStoreCursorImpl::loadCurrentRow):
+ (WebCore::ObjectStoreCursorImpl::currentRowExists):
+ (WebCore::IndexKeyCursorImpl::IndexKeyCursorImpl):
+ (WebCore::IndexKeyCursorImpl::indexDataId):
+ (WebCore::IndexKeyCursorImpl::key):
+ (WebCore::IndexKeyCursorImpl::primaryKey):
+ (WebCore::IndexKeyCursorImpl::continueFunction):
+ (WebCore::IDBBackingStore::openIndexKeyCursor):
+ (WebCore::IndexKeyCursorImpl::loadCurrentRow):
+ (WebCore::IndexKeyCursorImpl::currentRowExists):
+ (WebCore::IndexCursorImpl::IndexCursorImpl):
+ (WebCore::IndexCursorImpl::indexDataId):
+ (WebCore::IndexCursorImpl::key):
+ (WebCore::IndexCursorImpl::primaryKey):
+ (WebCore::IndexCursorImpl::value):
+ (WebCore::IndexCursorImpl::continueFunction):
+ (WebCore::IDBBackingStore::openIndexCursor):
+ (WebCore::IndexCursorImpl::loadCurrentRow):
+ (WebCore::IndexCursorImpl::currentRowExists):
+ * storage/IDBBackingStore.h:
+ (WebCore::IDBBackingStore::Cursor::~Cursor):
+ * storage/IDBCursorBackendImpl.cpp:
+ (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
+ (WebCore::IDBCursorBackendImpl::key):
+ (WebCore::IDBCursorBackendImpl::value):
+ (WebCore::IDBCursorBackendImpl::update):
+ (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
+ (WebCore::IDBCursorBackendImpl::deleteFunction):
+ * storage/IDBCursorBackendImpl.h:
+ (WebCore::IDBCursorBackendImpl::create):
+ * storage/IDBIndexBackendImpl.cpp:
+ (WebCore::IDBIndexBackendImpl::openCursorInternal):
+ (WebCore::IDBIndexBackendImpl::getInternal):
+ (WebCore::IDBIndexBackendImpl::addingKeyAllowed):
+ * storage/IDBIndexBackendImpl.h:
+ * storage/IDBKey.cpp:
+ (WebCore::IDBKey::isEqual):
+ * storage/IDBKey.h:
+ * storage/IDBKeyRange.cpp:
+ * storage/IDBKeyRange.h:
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::putInternal):
+ (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
+ (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
+ * storage/IDBObjectStoreBackendImpl.h:
+
+2011-03-03 Peter Kasting <pkasting@google.com>
+
+ Reviewed by James Robinson.
+
+ Drop redundant "Windows; " from the Windows-specific User Agent string.
+ https://bugs.webkit.org/show_bug.cgi?id=54567
+
+ * StringsNotToBeLocalized.txt:
+
+2011-03-03 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Combo boxes should emit object:selection-changed even when collapsed
+ https://bugs.webkit.org/show_bug.cgi?id=53146
+
+ Emit the selection-changed signals when the menu list value has changed
+
+ Test: platform/gtk/accessibility/combo-box-collapsed-selection-changed.html
+
+ * accessibility/gtk/AXObjectCacheAtk.cpp:
+ (WebCore::getListObject): New, return the right list object for
+ menu lists and list boxes.
+ (WebCore::notifyChildrenSelectionChange): Support menu lists.
+ (WebCore::AXObjectCache::postPlatformNotification): Call function
+ notifyChildrenSelectionChange for AXMenuListValueChanged.
+
+2011-03-03 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ applyInlineStyleToPushDown and removeInlineStyleFromElement should take EditingStyle
+ https://bugs.webkit.org/show_bug.cgi?id=55338
+
+ Include wtf/Forward.h instead of wtf/text/String.h
+
+ * editing/EditingStyle.h:
+
+2011-03-03 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed trivial fix after r80169.
+
+ [Qt][WK2] Memory exhausted when building qtwebkit2 on linux
+ https://bugs.webkit.org/show_bug.cgi?id=55484
+
+ * WebCore.pro: Typo fix. We have to use linux-g++* instead of linux-g++.
+
+
+2011-03-02 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Kent Tamura.
+
+ [Refactoring] Make ScheduledEvent on FrameView abstract out to ScheduleAction
+ https://bugs.webkit.org/show_bug.cgi?id=54440
+
+ - Extracted FrameActionScheduler from FrameView
+ - Extracted FrameAction abstract class from ScheduledEvent,
+ which has fire() virtual method.
+ - Renamed ScheduledEvent EventFrameAction
+
+ With this change, Any action can be hooked up to the end of the layout.
+
+ No new tests. No behavioral change.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * page/FrameActionScheduler.cpp: Added.
+ (WebCore::EventFrameAction::EventFrameAction):
+ (WebCore::EventFrameAction::fire):
+ (WebCore::FrameActionScheduler::FrameActionScheduler):
+ (WebCore::FrameActionScheduler::~FrameActionScheduler):
+ (WebCore::FrameActionScheduler::isEmpty):
+ (WebCore::FrameActionScheduler::clear):
+ (WebCore::FrameActionScheduler::pause):
+ (WebCore::FrameActionScheduler::resume):
+ (WebCore::FrameActionScheduler::dispatch):
+ (WebCore::FrameActionScheduler::scheduleAction):
+ (WebCore::FrameActionScheduler::scheduleEvent):
+ * page/FrameActionScheduler.h: Added.
+ (WebCore::FrameAction::FrameAction):
+ (WebCore::FrameAction::~FrameAction):
+ (WebCore::FrameActionScheduler::isScheduled):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::FrameView):
+ (WebCore::FrameView::~FrameView):
+ (WebCore::FrameView::layout):
+ (WebCore::FrameView::scheduleEvent):
+ (WebCore::FrameView::pauseScheduledEvents):
+ (WebCore::FrameView::resumeScheduledEvents):
+ (WebCore::FrameView::performPostLayoutTasks):
+ (WebCore::FrameView::updateOverflowStatus):
+ * page/FrameView.h:
+
+2011-03-02 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80201.
+ http://trac.webkit.org/changeset/80201
+ https://bugs.webkit.org/show_bug.cgi?id=55648
+
+ "caused tests to crash on several bots" (Requested by rniwa on
+ #webkit).
+
+ * dom/Element.h:
+ (WebCore::Node::hasTagName):
+ * dom/Node.h:
+ * html/parser/HTMLConstructionSite.cpp:
+ (WebCore::HTMLNames::hasImpliedEndTag):
+ (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
+ (WebCore::HTMLConstructionSite::insertComment):
+ (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
+ (WebCore::HTMLConstructionSite::attachToCurrent):
+ (WebCore::HTMLConstructionSite::insertScriptElement):
+ (WebCore::HTMLConstructionSite::insertTextNode):
+ (WebCore::HTMLConstructionSite::createElement):
+ (WebCore::HTMLConstructionSite::createHTMLElement):
+ (WebCore::HTMLConstructionSite::generateImpliedEndTagsWithExclusion):
+ (WebCore::HTMLConstructionSite::generateImpliedEndTags):
+ (WebCore::HTMLConstructionSite::findFosterSite):
+ (WebCore::HTMLConstructionSite::shouldFosterParent):
+ * html/parser/HTMLConstructionSite.h:
+ * html/parser/HTMLElementStack.cpp:
+ (WebCore::HTMLNames::isNumberedHeaderElement):
+ (WebCore::HTMLNames::isScopeMarker):
+ (WebCore::HTMLNames::isListItemScopeMarker):
+ (WebCore::HTMLNames::isTableScopeMarker):
+ (WebCore::HTMLNames::isTableBodyScopeMarker):
+ (WebCore::HTMLNames::isTableRowScopeMarker):
+ (WebCore::HTMLNames::isButtonScopeMarker):
+ (WebCore::HTMLNames::isSelectScopeMarker):
+ (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
+ (WebCore::HTMLElementStack::ElementRecord::replaceElement):
+ (WebCore::HTMLElementStack::HTMLElementStack):
+ (WebCore::HTMLElementStack::secondElementIsHTMLBodyElement):
+ (WebCore::HTMLElementStack::popAll):
+ (WebCore::HTMLElementStack::popUntilTableScopeMarker):
+ (WebCore::HTMLElementStack::popUntilTableBodyScopeMarker):
+ (WebCore::HTMLElementStack::popUntilTableRowScopeMarker):
+ (WebCore::HTMLElementStack::popUntilForeignContentScopeMarker):
+ (WebCore::HTMLElementStack::pushHTMLHtmlElement):
+ (WebCore::HTMLElementStack::push):
+ (WebCore::HTMLElementStack::insertAbove):
+ (WebCore::HTMLElementStack::find):
+ (WebCore::HTMLElementStack::topmost):
+ (WebCore::inScopeCommon):
+ (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
+ (WebCore::HTMLElementStack::htmlElement):
+ (WebCore::HTMLElementStack::bodyElement):
+ (WebCore::HTMLElementStack::pushCommon):
+ * html/parser/HTMLElementStack.h:
+ (WebCore::HTMLElementStack::ElementRecord::element):
+ (WebCore::HTMLElementStack::top):
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
+ (WebCore::HTMLTreeBuilder::FragmentParsingContext::finished):
+ (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+ (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
+ (WebCore::HTMLTreeBuilder::processEndTagForInCell):
+ (WebCore::HTMLTreeBuilder::processEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+ (WebCore::HTMLTreeBuilder::finished):
+ * html/parser/HTMLTreeBuilder.h:
+
+2011-03-02 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: break down InspectorFrontend into domain-specific classes
+ https://bugs.webkit.org/show_bug.cgi?id=55584
+
+ * inspector/CodeGeneratorInspector.pm: InspectorFrontend now contains nested classes for
+ all domains that have event notifications.
+ * inspector/ConsoleMessage.cpp:
+ (WebCore::ConsoleMessage::addToFrontend):
+ (WebCore::ConsoleMessage::updateRepeatCountInConsole):
+ * inspector/ConsoleMessage.h:
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::inspectImpl):
+ * inspector/Inspector.idl:
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::inspectedPageDestroyed):
+ (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
+ (WebCore::InspectorAgent::setFrontend):
+ (WebCore::InspectorAgent::disconnectFrontend):
+ (WebCore::InspectorAgent::populateScriptObjects):
+ (WebCore::InspectorAgent::pushDataCollectedOffline):
+ (WebCore::InspectorAgent::didCommitLoad):
+ (WebCore::InspectorAgent::domContentLoadedEventFired):
+ (WebCore::InspectorAgent::loadEventFired):
+ (WebCore::InspectorAgent::postWorkerNotificationToFrontend):
+ (WebCore::InspectorAgent::evaluateForTestInFrontend):
+ (WebCore::InspectorAgent::showPanel):
+ * inspector/InspectorApplicationCacheAgent.cpp:
+ (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
+ * inspector/InspectorApplicationCacheAgent.h:
+ * inspector/InspectorConsoleAgent.cpp:
+ (WebCore::InspectorConsoleAgent::setFrontend):
+ * inspector/InspectorConsoleAgent.h:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::show):
+ (WebCore::InspectorController::close):
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::setFrontend):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorDOMStorageResource.cpp:
+ (WebCore::InspectorDOMStorageResource::bind):
+ * inspector/InspectorDOMStorageResource.h:
+ * inspector/InspectorDatabaseAgent.cpp:
+ (WebCore::InspectorDatabaseAgent::FrontendProvider::frontend):
+ (WebCore::InspectorDatabaseAgent::FrontendProvider::FrontendProvider):
+ (WebCore::InspectorDatabaseAgent::setFrontend):
+ * inspector/InspectorDatabaseResource.cpp:
+ (WebCore::InspectorDatabaseResource::bind):
+ * inspector/InspectorDatabaseResource.h:
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::setFrontend):
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/InspectorProfilerAgent.cpp:
+ * inspector/InspectorProfilerAgent.h:
+ (WebCore::InspectorProfilerAgent::setFrontend):
+ (WebCore::InspectorProfilerAgent::clearFrontend):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::InspectorResourceAgent):
+ * inspector/InspectorResourceAgent.h:
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::setFrontend):
+ * inspector/InspectorTimelineAgent.h:
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMDispatcher.prototype.inspectElementRequested):
+ (WebInspector.DOMDispatcher.prototype.addNodesToSearchResult):
+ * inspector/front-end/inspector.js:
+
+2011-03-02 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, a trivial regression fix.
+
+ Fix LocalizedNumberICU regression by r80198 and r80199.
+ https://bugs.webkit.org/show_bug.cgi?id=55629
+
+ * platform/text/LocalizedNumberICU.cpp:
+ We should use U_SUCCESS().
+ (WebCore::createFormatterForCurrentLocale):
+ (WebCore::parseLocalizedNumber):
+
+2011-03-02 Dan Bernstein <mitz@apple.com>
+
+ Let Xcode know that Localizable.strings is UTF-16-encoded.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2011-03-02 Andy Estes <aestes@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ HTML5 TreeBuilder regressed a Peacekeeper DOM test by 25% (was 40%)
+ https://bugs.webkit.org/show_bug.cgi?id=48719
+
+ Instead of pushing a fake HTMLHtmlElement onto the open element stack
+ during fragment parsing only to later remove it and reparent its
+ children to the DocumentFragment, push the DocumentFragment directly
+ onto the open element stack as the root node. This requires refactoring
+ HTMLElementStack to hold ContainerNode pointers rather than Element
+ pointers, which has implications for HTMLConstructionSite and
+ HTMLTreeBuilder as well.
+
+ With this patch, the regression in Peacekeeper due to the introduction
+ of the HTML5 fragment parsing algorithm is ~14%. The regression from
+ Safari 5.0.3 is ~24%.
+
+ No new tests. No change in behavior.
+
+ * dom/Element.h:
+ (WebCore::Node::hasLocalName):
+ * dom/Node.h:
+ * html/parser/HTMLConstructionSite.cpp:
+ (WebCore::HTMLNames::hasImpliedEndTag):
+ (WebCore::HTMLConstructionSite::HTMLConstructionSite):
+ (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
+ (WebCore::HTMLConstructionSite::insertComment):
+ (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
+ (WebCore::HTMLConstructionSite::attachToCurrent):
+ (WebCore::HTMLConstructionSite::insertScriptElement):
+ (WebCore::HTMLConstructionSite::insertTextNode):
+ (WebCore::HTMLConstructionSite::createElement):
+ (WebCore::HTMLConstructionSite::createHTMLElement):
+ (WebCore::HTMLConstructionSite::generateImpliedEndTagsWithExclusion):
+ (WebCore::HTMLConstructionSite::generateImpliedEndTags):
+ (WebCore::HTMLConstructionSite::findFosterSite):
+ (WebCore::HTMLConstructionSite::shouldFosterParent):
+ * html/parser/HTMLConstructionSite.h:
+ (WebCore::HTMLConstructionSite::currentNode):
+ * html/parser/HTMLElementStack.cpp:
+ (WebCore::HTMLNames::isNumberedHeaderElement):
+ (WebCore::HTMLNames::isScopeMarker):
+ (WebCore::HTMLNames::isListItemScopeMarker):
+ (WebCore::HTMLNames::isTableScopeMarker):
+ (WebCore::HTMLNames::isTableBodyScopeMarker):
+ (WebCore::HTMLNames::isTableRowScopeMarker):
+ (WebCore::HTMLNames::isButtonScopeMarker):
+ (WebCore::HTMLNames::isSelectScopeMarker):
+ (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
+ (WebCore::HTMLElementStack::ElementRecord::replaceElement):
+ (WebCore::HTMLElementStack::HTMLElementStack):
+ (WebCore::HTMLElementStack::secondElementIsHTMLBodyElement):
+ (WebCore::HTMLElementStack::popAll):
+ (WebCore::HTMLElementStack::popUntilNumberedHeaderElementPopped):
+ (WebCore::HTMLElementStack::popUntil):
+ (WebCore::HTMLElementStack::popUntilPopped):
+ (WebCore::HTMLElementStack::popUntilTableScopeMarker):
+ (WebCore::HTMLElementStack::popUntilTableBodyScopeMarker):
+ (WebCore::HTMLElementStack::popUntilTableRowScopeMarker):
+ (WebCore::HTMLElementStack::pushHTMLHtmlElement):
+ (WebCore::HTMLElementStack::push):
+ (WebCore::HTMLElementStack::insertAbove):
+ (WebCore::HTMLElementStack::find):
+ (WebCore::HTMLElementStack::topmost):
+ (WebCore::HTMLElementStack::contains):
+ (WebCore::inScopeCommon):
+ (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
+ (WebCore::HTMLElementStack::htmlElement):
+ (WebCore::HTMLElementStack::rootNode):
+ (WebCore::HTMLElementStack::pushCommon):
+ * html/parser/HTMLElementStack.h:
+ (WebCore::HTMLElementStack::ElementRecord::element):
+ (WebCore::HTMLElementStack::ElementRecord::node):
+ (WebCore::HTMLElementStack::topNode):
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
+ (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+ (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
+ (WebCore::HTMLTreeBuilder::processEndTagForInCell):
+ (WebCore::HTMLTreeBuilder::processEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+ (WebCore::HTMLTreeBuilder::finished):
+ * html/parser/HTMLTreeBuilder.h:
+
+2011-03-02 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80188.
+ http://trac.webkit.org/changeset/80188
+ https://bugs.webkit.org/show_bug.cgi?id=55647
+
+ Broke the WebKit API tests. (Requested by xenon on #webkit).
+
+ * WebCore.exp.in:
+
+2011-03-02 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, build fix.
+
+ * platform/text/LocalizedNumberICU.cpp:
+ (WebCore::createFormatterForCurrentLocale): Fix a typo.
+
+2011-03-02 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Caching number formatter instances in LocalizedNumber* implementations
+ https://bugs.webkit.org/show_bug.cgi?id=55629
+
+ No new tests. This change doesn't change existing behavior, and is
+ covered by existing tests.
+
+ * platform/text/LocalizedNumberICU.cpp:
+ (WebCore::createFormatterForCurrentLocale):
+ (WebCore::numberFormatter): Introduce a function to return a static
+ instance of NumberFormat.
+ (WebCore::parseLocalizedNumber): Use numberFormatter().
+ (WebCore::formatLocalizedNumber): Use numberFormatter().
+ * platform/text/mac/LocalizedNumberMac.mm:
+ (WebCore::createFormatterForCurrentLocale):
+ (WebCore::numberFormatter): Introduce a function to return a static
+ instance of NSNumberFormatter.
+ (WebCore::parseLocalizedNumber): Use numberFormatter().
+ (WebCore::formatLocalizedNumber): Use numberFormatter().
+
+2011-03-02 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Ryosuke Niwa.
+
+ deprecatedEditingOffset should actually return the expected deprecated value for "after" positions
+ https://bugs.webkit.org/show_bug.cgi?id=54986
+
+ Calls to deprecatedEditingOffset needs to return the expected value for new Before/After positions
+ until we can update all the call sites to consider the new position types.
+
+ No tests. This is intended to simplify the transition to new Positions, not to change behavior.
+
+ * dom/Position.cpp:
+ (WebCore::Position::deprecatedEditingOffset):
+ (WebCore::Position::offsetForPositionAfterAnchor): Added to do the right thing while ensuring
+ inline-speed for most calls to deprecatedEditingOffset.
+ * dom/Position.h:
+
+2011-03-02 Timothy Hatcher <timothy@apple.com>
+
+ Export SerializedScriptValue::create(JSC::ExecState* exec, JSC::JSValue value).
+
+ Reviewed by Darin Adler.
+
+ * WebCore.exp.in: Added __ZN7WebCore21SerializedScriptValue6createEPN3JSC9ExecStateENS1_7JSValueE.
+
+2011-03-02 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by David Levin.
+
+ Manually revert ChromiumDataObject changes.
+ https://bugs.webkit.org/show_bug.cgi?id=55627
+
+ No new tests since no functionality should change.
+
+ * WebCore.gypi:
+ * editing/chromium/EditorChromium.cpp:
+ (WebCore::Editor::newGeneralClipboard):
+ * page/chromium/EventHandlerChromium.cpp:
+ (WebCore::EventHandler::createDraggingClipboard):
+ * platform/chromium/ChromiumDataObject.cpp:
+ (WebCore::ChromiumDataObject::clearData):
+ (WebCore::ChromiumDataObject::clearAll):
+ (WebCore::ChromiumDataObject::clearAllExceptFiles):
+ (WebCore::ChromiumDataObject::hasData):
+ (WebCore::ChromiumDataObject::types):
+ (WebCore::ChromiumDataObject::getData):
+ (WebCore::ChromiumDataObject::setData):
+ (WebCore::ChromiumDataObject::ChromiumDataObject):
+ * platform/chromium/ChromiumDataObject.h:
+ (WebCore::ChromiumDataObject::create):
+ (WebCore::ChromiumDataObject::copy):
+ (WebCore::ChromiumDataObject::urlTitle):
+ (WebCore::ChromiumDataObject::setUrlTitle):
+ (WebCore::ChromiumDataObject::htmlBaseUrl):
+ (WebCore::ChromiumDataObject::setHtmlBaseUrl):
+ (WebCore::ChromiumDataObject::containsFilenames):
+ (WebCore::ChromiumDataObject::filenames):
+ (WebCore::ChromiumDataObject::setFilenames):
+ (WebCore::ChromiumDataObject::fileExtension):
+ (WebCore::ChromiumDataObject::setFileExtension):
+ (WebCore::ChromiumDataObject::fileContentFilename):
+ (WebCore::ChromiumDataObject::setFileContentFilename):
+ (WebCore::ChromiumDataObject::fileContent):
+ (WebCore::ChromiumDataObject::setFileContent):
+ * platform/chromium/ClipboardChromium.cpp:
+ * platform/chromium/ClipboardChromium.h:
+
+2011-03-02 David Grogan <dgrogan@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: fire versionchange events when calling setVersion
+ https://bugs.webkit.org/show_bug.cgi?id=55095
+
+ * dom/EventNames.h:
+ * storage/IDBDatabase.cpp:
+ (WebCore::IDBDatabase::setVersion):
+ (WebCore::IDBDatabase::close):
+ (WebCore::IDBDatabase::onVersionChange):
+ (WebCore::IDBDatabase::open):
+ (WebCore::IDBDatabase::enqueueEvent):
+ (WebCore::IDBDatabase::dispatchEvent):
+ * storage/IDBDatabase.h:
+ (WebCore::IDBDatabase::dispatchEvent):
+ * storage/IDBDatabase.idl:
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::PendingSetVersionCall::create):
+ (WebCore::IDBDatabaseBackendImpl::PendingSetVersionCall::databaseCallbacks):
+ (WebCore::IDBDatabaseBackendImpl::PendingSetVersionCall::PendingSetVersionCall):
+ (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
+ (WebCore::IDBDatabaseBackendImpl::setVersion):
+ (WebCore::IDBDatabaseBackendImpl::open):
+ (WebCore::IDBDatabaseBackendImpl::close):
+ * storage/IDBDatabaseBackendImpl.h:
+ * storage/IDBDatabaseBackendInterface.h:
+ * storage/IDBDatabaseCallbacks.h: Copied from Source/WebCore/storage/IDBVersionChangeEvent.cpp.
+ (WebCore::IDBDatabaseCallbacks::~IDBDatabaseCallbacks):
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::IDBFactoryBackendImpl::open):
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::onSuccess):
+ * storage/IDBVersionChangeEvent.cpp:
+ (WebCore::IDBVersionChangeEvent::create):
+ (WebCore::IDBVersionChangeEvent::IDBVersionChangeEvent):
+ * storage/IDBVersionChangeEvent.h:
+ * storage/IDBVersionChangeRequest.cpp:
+ (WebCore::IDBVersionChangeRequest::onBlocked):
+
+2011-03-02 Alexey Proskuryakov <ap@apple.com>
+
+ Fix assertion failures on Gtk bot.
+
+ * page/EventHandler.cpp: (WebCore::EventHandler::tabsToLinks): Removed an overzealous
+ assertion. We can get here with non-Tab key events when spatial navigation is enabled.
+
+2011-03-02 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80139.
+ http://trac.webkit.org/changeset/80139
+ https://bugs.webkit.org/show_bug.cgi?id=55620
+
+ failing and crashing tests on Snow Leopard bot (Requested by
+ mihaip1 on #webkit).
+
+ * page/DOMWindow.cpp:
+ * page/DOMWindow.h:
+ * page/Frame.cpp:
+ (WebCore::Frame::pageDestroyed):
+ (WebCore::Frame::transferChildFrameToNewDocument):
+ * page/Frame.h:
+ (WebCore::Frame::detachFromPage):
+ * page/Geolocation.cpp:
+ (WebCore::Geolocation::~Geolocation):
+ (WebCore::Geolocation::disconnectFrame):
+ (WebCore::Geolocation::lastPosition):
+ (WebCore::Geolocation::requestPermission):
+ (WebCore::Geolocation::startUpdating):
+ (WebCore::Geolocation::stopUpdating):
+ * page/Geolocation.h:
+ * page/GeolocationController.cpp:
+ (WebCore::GeolocationController::~GeolocationController):
+ * page/Navigator.cpp:
+ * page/Navigator.h:
+ * platform/mock/GeolocationClientMock.cpp:
+ * platform/mock/GeolocationClientMock.h:
+
+2011-03-02 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Adam Roben.
+
+ WebKit2: Use CFNetwork Sessions API.
+ https://bugs.webkit.org/show_bug.cgi?id=55435
+
+ Add the ability to create a Private Browsing Storage Session.
+
+ * WebCore.exp.in:
+ Export the symbol for ResourceHandle::setPrivateBrowsingStorageSessionIdentifierBase.
+
+ * page/Settings.cpp:
+ (WebCore::Settings::setPrivateBrowsingEnabled):
+ Propagate the private browsing state to the ResourceHandle.
+
+ * platform/mac/WebCoreSystemInterface.h:
+ Add the function declaration for wkCreatePrivateStorageSession.
+ * platform/mac/WebCoreSystemInterface.mm:
+
+ * platform/network/ResourceHandle.cpp:
+ (WebCore::privateStorageSession):
+ Since the same Private Browsing Storage Session will need to be accessed throughout the loading
+ code and will need to be used by all web pages and page groups, make it a global static.
+ (WebCore::privateBrowsingStorageSessionIdentifierBase):
+ Ditto, since the identifier is needed to create the Private Browsing Storage Session.
+ (WebCore::ResourceHandle::setPrivateBrowsingEnabled):
+ If enabled, create and store the Private Browsing Storage Session.
+ (WebCore::ResourceHandle::privateBrowsingStorageSession):
+ (WebCore::ResourceHandle::setPrivateBrowsingStorageSessionIdentifierBase):
+ * platform/network/ResourceHandle.h:
+
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::ResourceHandle::createPrivateBrowsingStorageSession):
+ The call to wkCreatePrivateStorageSession needs to be in a file including the correct
+ version of WKSI.
+ (WebCore::ResourceHandle::privateBrowsingStorageSessionIdentifierDefaultBase):
+ Return the bundle identifier.
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::createPrivateBrowsingStorageSession):
+ The call to wkCreatePrivateStorageSession needs to be in a file importing the correct
+ version of WKSI.
+ (WebCore::ResourceHandle::privateBrowsingStorageSessionIdentifierDefaultBase):
+ Return the bundle identifier.
+
+2011-03-02 Daniel Cheng <dcheng@chromium.org>
+
+ Revert frame-specific WebClipboard changes
+ https://bugs.webkit.org/show_bug.cgi?id=55617
+
+ This code is no longer needed since we've decided to use the original
+ approach to copy/paste drag/drop handling in ClipboardChromium.
+
+ No new tests because no functionality changes.
+
+ * platform/chromium/ChromiumDataObject.cpp:
+ (WebCore::ChromiumDataObject::createReadable):
+ * platform/chromium/ChromiumDataObject.h:
+ * platform/chromium/ClipboardChromium.cpp:
+ (WebCore::ClipboardChromium::create):
+ * platform/chromium/PlatformBridge.h:
+ * platform/chromium/ReadableDataObject.cpp:
+ (WebCore::ReadableDataObject::create):
+ (WebCore::ReadableDataObject::ReadableDataObject):
+ (WebCore::ReadableDataObject::getData):
+ (WebCore::ReadableDataObject::urlTitle):
+ (WebCore::ReadableDataObject::htmlBaseUrl):
+ (WebCore::ReadableDataObject::filenames):
+ (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
+ * platform/chromium/ReadableDataObject.h:
+
+2011-03-02 Tony Chang <tony@chromium.org>
+
+ Unreviewed, rolling chromium DEPS to r76362.
+
+ https://bugs.webkit.org/show_bug.cgi?id=55564
+
+ * WebCore.gyp/WebCore.gyp: Switch to libjpeg_turbo to match chromium
+
+2011-03-02 Alexey Proskuryakov <ap@apple.com>
+
+ Build fix.
+
+ * page/ChromeClient.h: (WebCore::ChromeClient::keyboardUIMode): I didn't mean to commit these
+ changes yet.
+
+2011-03-02 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Clean up WebCore tabsToLinks code a little
+ https://bugs.webkit.org/show_bug.cgi?id=55606
+
+ No change in behavior, so no tests.
+
+ * html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::isKeyboardFocusable):
+ This is the only caller of tabsToAllControls(). Renamed this function to tabsToAllFormControls().
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::isKeyboardOptionTab): Moved from platform specific files. This
+ function cannot be file static, because EventHandlerMac.mm uses it.
+ (WebCore::eventInvertsTabsToLinksClientCallResult): Merged implementations from platform
+ specific files. We can just as well have #if here. Renamed for clarity.
+ (WebCore::EventHandler::tabsToLinks): Rewrote in a way that makes it clearer how "invert"
+ works.
+
+ * page/EventHandler.h: We no longer need invertSenseOfTabsToLinks() here, it's only used
+ in EventHandler.cpp.
+
+ * page/android/EventHandlerAndroid.cpp: (WebCore::EventHandler::tabsToAllFormControls):
+ * page/brew/EventHandlerBrew.cpp: (WebCore::EventHandler::tabsToAllFormControls):
+ * page/chromium/EventHandlerChromium.cpp: (WebCore::EventHandler::tabsToAllFormControls):
+ * page/efl/EventHandlerEfl.cpp: (WebCore::EventHandler::tabsToAllFormControls):
+ * page/gtk/EventHandlerGtk.cpp: (WebCore::EventHandler::tabsToAllFormControls):
+ * page/haiku/EventHandlerHaiku.cpp: (WebCore::EventHandler::tabsToAllFormControls):
+ * page/mac/EventHandlerMac.mm: (WebCore::EventHandler::tabsToAllFormControls):
+ * page/qt/EventHandlerQt.cpp: (WebCore::EventHandler::tabsToAllFormControls):
+ * page/win/EventHandlerWin.cpp: (WebCore::EventHandler::tabsToAllFormControls):
+ * page/wx/EventHandlerWx.cpp: (WebCore::EventHandler::tabsToAllFormControls):
+ Updating all port files.
+
+2011-02-28 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Split IDBCursor.value into IDBCursor.primaryKey and IDBCursor.value
+ https://bugs.webkit.org/show_bug.cgi?id=55443
+
+ Implement http://www.w3.org/Bugs/Public/show_bug.cgi?id=11948
+
+ The idea is to have an IDBCursor and an IDBCursorWithValue interface which
+ inherits from the former. index.openKeyCursor will return the former and
+ index/objectStore.openCursor will return the latter. We'll add a primaryKey
+ attribute to IDBCursor. It will always be the key of the associated object
+ store entry. For index.openCursor cursors, the key attribute will be the key
+ of the index. For objectStore.openCursors, it'll be the same as the
+ primaryKey. The value will be the value of the objectStore entry.
+
+ * WebCore.gypi:
+ * bindings/scripts/CodeGeneratorV8.pm:
+ * bindings/v8/SerializedScriptValue.cpp:
+ (WebCore::SerializedScriptValue::deserializeAndSetProperty):
+ * bindings/v8/SerializedScriptValue.h:
+ * bindings/v8/custom/V8IDBAnyCustom.cpp:
+ (WebCore::toV8):
+ * storage/IDBAny.cpp:
+ (WebCore::IDBAny::idbCursorWithValue):
+ (WebCore::IDBAny::set):
+ * storage/IDBAny.h:
+ * storage/IDBCursor.cpp:
+ (WebCore::IDBCursor::create):
+ (WebCore::IDBCursor::primaryKey):
+ (WebCore::IDBCursor::value):
+ * storage/IDBCursor.h:
+ * storage/IDBCursor.idl:
+ * storage/IDBCursorBackendImpl.cpp:
+ (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
+ (WebCore::IDBCursorBackendImpl::primaryKey):
+ (WebCore::IDBCursorBackendImpl::value):
+ (WebCore::IDBCursorBackendImpl::update):
+ (WebCore::IDBCursorBackendImpl::currentRowExists):
+ (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
+ (WebCore::IDBCursorBackendImpl::deleteFunction):
+ (WebCore::IDBCursorBackendImpl::loadCurrentRow):
+ * storage/IDBCursorBackendImpl.h:
+ (WebCore::IDBCursorBackendImpl::create):
+ * storage/IDBCursorBackendInterface.h:
+ * storage/IDBCursorWithValue.cpp: Copied from Source/WebCore/storage/IDBCursor.idl.
+ (WebCore::IDBCursorWithValue::create):
+ (WebCore::IDBCursorWithValue::IDBCursorWithValue):
+ (WebCore::IDBCursorWithValue::~IDBCursorWithValue):
+ * storage/IDBCursorWithValue.h: Copied from Source/WebCore/storage/IDBCursorBackendInterface.h.
+ * storage/IDBCursorWithValue.idl: Copied from Source/WebCore/storage/IDBCursor.idl.
+ * storage/IDBIndex.cpp:
+ (WebCore::IDBIndex::openCursor):
+ (WebCore::IDBIndex::openKeyCursor):
+ * storage/IDBIndexBackendImpl.cpp:
+ (WebCore::IDBIndexBackendImpl::openCursorInternal):
+ (WebCore::IDBIndexBackendImpl::openCursor):
+ (WebCore::IDBIndexBackendImpl::openKeyCursor):
+ * storage/IDBIndexBackendImpl.h:
+ * storage/IDBObjectStore.cpp:
+ (WebCore::IDBObjectStore::openCursor):
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::IDBRequest):
+ (WebCore::IDBRequest::setCursorType):
+ (WebCore::IDBRequest::onSuccess):
+ (WebCore::IDBRequest::dispatchEvent):
+ * storage/IDBRequest.h:
+
+2011-03-02 Aravind Akella <aravind.akella@nokia.com>
+
+ Reviewed by Csaba Osztrogonác.
+
+ [Qt][WK2] Memory exhausted when building qtwebkit2 on linux
+ https://bugs.webkit.org/show_bug.cgi?id=55484
+
+ Using AllInOne files to avoid memory exhaustion for debug
+ builds on 32 bit linux machines.
+
+ No new tests. Fixing a build issue.
+
+ * WebCore.pro:
+
+2011-03-02 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add feature define for data transfer items
+ https://bugs.webkit.org/show_bug.cgi?id=55510
+
+ * Configurations/FeatureDefines.xcconfig:
+ * GNUmakefile.am:
+ * features.pri:
+
+2011-03-02 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Update location of media-file.js, which was moved in r79630.
+
+ * manual-tests/media-controls.html: Updated location.
+
+2011-03-02 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80156.
+ http://trac.webkit.org/changeset/80156
+ https://bugs.webkit.org/show_bug.cgi?id=55604
+
+ "Broke SL compile" (Requested by tonyg-cr on #webkit).
+
+ * bridge/jni/JNIBridge.h:
+ (JSC::Bindings::JavaString::operator UString):
+ * bridge/jni/jni_jsobject.mm:
+ (JavaJSObject::call):
+ (JavaJSObject::eval):
+ (JavaJSObject::getMember):
+ (JavaJSObject::setMember):
+ (JavaJSObject::removeMember):
+ * bridge/jni/jsc/JavaClassJSC.cpp:
+ (JavaClass::JavaClass):
+ * bridge/jni/jsc/JavaStringJSC.h:
+ (JSC::Bindings::JavaStringImpl::uString):
+ * bridge/jni/v8/JavaStringV8.h:
+
+2011-03-02 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ JavaString API should be implementable by both JSC and V8
+ https://bugs.webkit.org/show_bug.cgi?id=55567
+
+ Remove JavaString's UString operator and replace it with a
+ script-engine-independent impl() method, which returns a
+ StringImpl and can be implemented with both JSC and V8.
+
+ No new tests, refactoring only.
+
+ * bridge/jni/JNIBridge.h:
+ (JSC::Bindings::JavaString::impl):
+ * bridge/jni/jni_jsobject.mm:
+ (JavaJSObject::call):
+ (JavaJSObject::eval):
+ (JavaJSObject::getMember):
+ (JavaJSObject::setMember):
+ (JavaJSObject::removeMember):
+ * bridge/jni/jsc/JavaClassJSC.cpp:
+ (JavaClass::JavaClass):
+ * bridge/jni/jsc/JavaStringJSC.h:
+ (JSC::Bindings::JavaStringImpl::impl):
+ * bridge/jni/v8/JavaStringV8.h:
+ (JSC::Bindings::JavaStringImpl::impl):
+
+2011-03-02 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Add CRASH() for CSSSelector double frees
+ https://bugs.webkit.org/show_bug.cgi?id=55596
+
+ To help track down bug 53045, add a CRASH call when the CSSSelector
+ destructor is invoked more than once.
+
+ Just a check, no new tests necessary.
+
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::CSSSelector):
+ (WebCore::CSSSelector::~CSSSelector):
+
+2011-03-02 Carol Szabo <carol.szabo@nokia.com>
+
+ Reviewed by David Hyatt <hyatt@apple.com>
+
+ content property doesn't support quotes
+ https://bugs.webkit.org/show_bug.cgi?id=6503
+
+ Added full support for quotes as defined by CSS 2.1.
+
+ Tests: fast/css/content/content-quotes-01.html
+ fast/css/content/content-quotes-02.html
+ fast/css/content/content-quotes-03.html
+ fast/css/content/content-quotes-04.html
+ fast/css/content/content-quotes-05.html
+ fast/css/content/content-quotes-06.html
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ Added RenderQuote.cpp/h and QuotesData.cpp/h to the dependency lists
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ (WebCore::CSSParser::parseQuotes):
+ * css/CSSParser.h:
+ Added needed stylesheet parsing support for quotes,
+ (no-)open-quote and (no-)close-quote
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ Handled setting of the new quotes RenderStyle property and added
+ handling of quotes for the content property.
+ * css/html.css:
+ (q:before):
+ (q:after):
+ replaced the '"' workaround with open/close-quote
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::dirtyLineBoxesForRenderer):
+ Made RenderQuote behave like RenderCounter.
+ Needed to ensure that the Quote text is calculated before layout,
+ just as it is for RenderCounter.
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::isQuote):
+ * rendering/RenderObjectChildList.cpp:
+ (WebCore::RenderObjectChildList::removeChildNode):
+ (WebCore::RenderObjectChildList::appendChildNode):
+ (WebCore::RenderObjectChildList::insertChildNode):
+ Handled updating of quote depth when renderers are added and removed
+ from the tree.
+ (WebCore::RenderObjectChildList::updateBeforeAfterContent):
+ Added support for Quote content.
+ * rendering/RenderQuote.cpp: Added.
+ (WebCore::adjustDepth):
+ (WebCore::RenderQuote::RenderQuote):
+ (WebCore::RenderQuote::~RenderQuote):
+ (WebCore::RenderQuote::renderName):
+ (WebCore::RenderQuote::placeQuote):
+ (WebCore::LanguageData::operator<):
+ (WebCore::defaultLanguageQuotes):
+ (WebCore::quotesMap):
+ (WebCore::quotesForLanguage):
+ (WebCore::defaultQuotes):
+ (WebCore::RenderQuote::originalText):
+ (WebCore::RenderQuote::computePreferredLogicalWidths):
+ (WebCore::RenderQuote::rendererSubtreeAttached):
+ (WebCore::RenderQuote::rendererRemovedFromTree):
+ (WebCore::RenderQuote::styleDidChange):
+ * rendering/RenderQuote.h: Added.
+ (WebCore::RenderQuote::isQuote):
+ (WebCore::toRenderQuote):
+ * rendering/RenderingAllInOne.cpp:
+ Included RenderQuote.cpp
+ * rendering/style/StyleAllInOne.cpp:
+ Included QuotesData.cpp
+ * rendering/style/ContentData.cpp:
+ (WebCore::ContentData::dataEquivalent):
+ Checked for quotetype identity.
+ (WebCore::ContentData::deleteContent):
+ Accounted for the new QUOTE_TYPE.
+ * rendering/style/ContentData.h:
+ (WebCore::ContentData::isQuote):
+ (WebCore::ContentData::quote):
+ (WebCore::ContentData::setQuote):
+ * rendering/style/QuotesData.cpp: Added.
+ (WebCore::QuotesData::create):
+ (WebCore::QuotesData::operator==):
+ (WebCore::QuotesData::~QuotesData):
+ * rendering/style/QuotesData.h: Added.
+ (WebCore::QuotesData::data):
+ (WebCore::QuotesData::operator delete):
+ (WebCore::QuotesData::QuotesData):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::setContent):
+ (WebCore::RenderStyle::setQuotes):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::quotes):
+ (WebCore::InheritedFlags::setQuotes):
+ * rendering/style/RenderStyleConstants.h:
+ * rendering/style/StyleAllInOne.cpp:
+ Added QuotesData.cpp to the included files list.
+ * rendering/style/StyleRareInheritedData.cpp:
+ (WebCore::StyleRareInheritedData::operator==):
+ Included quotes in equality check.
+ * rendering/style/StyleRareInheritedData.h:
+ Added quotes
+
+2011-03-02 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Selector usage flags should not be set by the CSS parser
+ https://bugs.webkit.org/show_bug.cgi?id=55573
+
+ Currently flags like Document::usesSiblingRules() are set directly by the CSS parser. This is wrong as
+ we may parse stylesheets that are not actually used for document rendering. This is especially bad when
+ the page uses querySelectorAll(). As a result we may end up in various performance penalty boxes
+ triggered by complex selectors for no good reason.
+
+ - Use the selector traversal in style selector constructor to figure out which flags
+ are actually needed for the currently active style sheets.
+ - Remove the selector flag related code from the CSS parser/grammar.
+ - Remove the usesDescendantRules flag completely. We have descendant rules in the default
+ style sheet, every document uses them.
+
+ * css/CSSGrammar.y:
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::updateSpecifiersWithElementName):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::collectSiblingRulesInDefaultStyle):
+ (WebCore::CSSStyleSelector::CSSStyleSelector):
+ (WebCore::CSSStyleSelector::Features::Features):
+ (WebCore::CSSStyleSelector::Features::~Features):
+ (WebCore::CSSStyleSelector::locateCousinList):
+ (WebCore::CSSStyleSelector::matchesSiblingRules):
+ (WebCore::CSSStyleSelector::canShareStyleWithElement):
+ (WebCore::CSSStyleSelector::locateSharedStyle):
+ (WebCore::collectFeaturesFromSelector):
+ (WebCore::collectFeaturesFromList):
+ (WebCore::RuleSet::collectFeatures):
+ * css/CSSStyleSelector.h:
+ (WebCore::CSSStyleSelector::usesSiblingRules):
+ (WebCore::CSSStyleSelector::usesFirstLineRules):
+ (WebCore::CSSStyleSelector::usesBeforeAfterRules):
+ (WebCore::CSSStyleSelector::usesLinkRules):
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::recalcStyle):
+ (WebCore::Document::createStyleSelector):
+ * dom/Document.h:
+ (WebCore::Document::usesSiblingRules):
+ (WebCore::Document::setUsesSiblingRules):
+ (WebCore::Document::usesFirstLineRules):
+ (WebCore::Document::usesBeforeAfterRules):
+ (WebCore::Document::setUsesBeforeAfterRules):
+ * dom/Element.cpp:
+ (WebCore::Element::recalcStyle):
+
+2011-03-02 Brian Weinstein <bweinstein@apple.com>
+
+ Fix fallout from a last minute renaming.
+
+ * platform/network/cf/CookieStorageCFNet.cpp:
+ (WebCore::startObservingCookieChanges):
+ (WebCore::stopObservingCookieChanges):
+
+2011-03-01 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Part of WebKit2: Need a way to send notifications to client when cookies change
+ https://bugs.webkit.org/show_bug.cgi?id=55427
+ <rdar://problem/9056027>
+
+ Add functions on CookieStorage that allow listening for changes in cookies. When
+ the cookies are changed, they call through to CookiesStrategy::notifyCookiesChanged.
+
+ No change in behavior requiring tests.
+
+ * platform/CookiesStrategy.h: Added.
+ (WebCore::CookiesStrategy::~CookiesStrategy):
+
+ * platform/PlatformStrategies.h:
+ (WebCore::PlatformStrategies::cookiesStrategy):
+ (WebCore::PlatformStrategies::PlatformStrategies):
+
+ * platform/network/CookieStorage.h: Add new function declarations.
+
+ * platform/network/cf/CookieStorageCFNet.cpp:
+ (WebCore::notifyCookiesChangedOnMainThread): Call through to CookiesStrategy::notifyCookiesChanged.
+ (WebCore::notifyCookiesChanged): Call notifyCookiesChangedOnMainThread on the main thread.
+ (WebCore::beginObservingCookieChanges): Set up cookie observers on the loader run loop.
+ (WebCore::finishObservingCookieChanges): Remove our cookie observers from the loader run loop.
+
+ * platform/network/mac/CookieStorageMac.mm:
+ (-[CookieStorageObjCAdapter notifyCookiesChangedOnMainThread]): Call through to CookiesStrategy::notifyCookiesChanged.
+ (-[CookieStorageObjCAdapter cookiesChangedNotificationHandler:]): Call notifyCookiesChangedOnMainThread on
+ the main thread.
+ (-[CookieStorageObjCAdapter registerForCookieChangeNotifications]): Set up the observer for cookie change notifications.
+ (-[CookieStorageObjCAdapter unregisterForCookieChangeNotifications]): Remove the observer for cookie change notifications.
+ (WebCore::beginObservingCookieChanges): Create our CookieStorageObjCAdapter, and call registerForCookieChangeNotifications.
+ (WebCore::finishObservingCookieChanges): Call unregisterForCookieChangeNotifications.
+
+ Add new file.
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj: Set role on files we need to include in WebKit to private.
+
+2011-03-02 Sergey Glazunov <serg.glazunov@gmail.com>
+
+ Reviewed by Dimitri Glazkov.
+
+ A WebKitCSSKeyframesRule object should set itself as the parent for inserted rules
+ https://bugs.webkit.org/show_bug.cgi?id=55488
+
+ Test: fast/css/css-keyframe-parent.html
+
+ * css/WebKitCSSKeyframesRule.cpp:
+ (WebCore::WebKitCSSKeyframesRule::append):
+
+2011-03-02 Sergio Villar Senin <svillar@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Add support for external protocol handlers
+ https://bugs.webkit.org/show_bug.cgi?id=55473
+
+ Do not unconditionally create and replace the SoupRequester of the
+ SoupSession if there is already one. No new tests needed as we
+ just allow clients to create their our SoupRequesters.
+
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::ensureSessionIsInitialized):
+
+2011-03-02 John Knottenbelt <jknotten@chromium.org>
+
+ Reviewed by jknotten@chromium.org.
+
+ Fix build-breakage when GEOLOCATION not enabled.
+ https://bugs.webkit.org/show_bug.cgi?id=55586
+
+ Geolocation::reset needs to be defined if ENABLE(GEOLOCATION)
+ is not true.
+
+ * page/Geolocation.cpp:
+ (WebCore::Geolocation::reset):
+
+2011-03-02 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: remove InjectedScriptHost -> DOMAgent dependency.
+ https://bugs.webkit.org/show_bug.cgi?id=55575
+
+ * bindings/js/JSInjectedScriptHostCustom.cpp:
+ (WebCore::JSInjectedScriptHost::inspectedNode):
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ (WebCore::V8InjectedScriptHost::inspectedNodeCallback):
+ * inspector/ConsoleMessage.cpp:
+ (WebCore::ConsoleMessage::addToFrontend):
+ * inspector/InjectedScript.cpp:
+ (WebCore::InjectedScript::evaluateOn):
+ (WebCore::InjectedScript::wrapObject):
+ (WebCore::InjectedScript::wrapNode):
+ (WebCore::InjectedScript::inspectNode):
+ (WebCore::InjectedScript::nodeAsScriptValue):
+ * inspector/InjectedScript.h:
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::addInspectedNode):
+ (WebCore::InjectedScriptHost::clearInspectedNodes):
+ (WebCore::InjectedScriptHost::copyText):
+ (WebCore::InjectedScriptHost::inspectedNode):
+ * inspector/InjectedScriptHost.h:
+ * inspector/InjectedScriptHost.idl:
+ * inspector/InjectedScriptSource.js:
+ * inspector/Inspector.idl:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::discardBindings):
+ (WebCore::InspectorDOMAgent::addInspectedNode):
+ (WebCore::InspectorDOMAgent::resolveNode):
+ (WebCore::InspectorDOMAgent::injectedScriptForNode):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorRuntimeAgent.cpp:
+ (WebCore::InspectorRuntimeAgent::evaluateOn):
+ * inspector/InspectorRuntimeAgent.h:
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip):
+ (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.resolvedNode):
+ (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
+ * inspector/front-end/PropertiesSidebarPane.js:
+ (WebInspector.PropertiesSidebarPane.prototype.update.nodeResolved):
+ (WebInspector.PropertiesSidebarPane.prototype.update.nodePrototypesReady):
+ (WebInspector.PropertiesSidebarPane.prototype.update.fillSection):
+ (WebInspector.PropertiesSidebarPane.prototype.update):
+ * inspector/front-end/RemoteObject.js:
+ (WebInspector.RemoteObject.resolveNode):
+ (WebInspector.RemoteObject.prototype.pushNodeToFrontend):
+ (WebInspector.RemoteObject.prototype.evaluate):
+
+2011-01-21 John Knottenbelt <jknotten@chromium.org>
+
+ Reviewed by Dmitry Titov.
+
+ Detach Geolocation from Frame when Page destroyed.
+ https://bugs.webkit.org/show_bug.cgi?id=52877
+
+ On Page destruction, any outstanding Geolocation permission
+ requests should be cancelled, because the Geolocation can only
+ access the client indirectly via m_frame->page().
+
+ Additionally, if the Frame is reparented to another page, the
+ Geolocation should cancel watches, single-shots and requests on
+ the old page.
+
+ Page destruction is signalled by a call to the
+ Frame::pageDestroyed() method. This calls Frame::detachFromPage,
+ where we extend the call chain to Geolocation::detachFromPage()
+ where we call Geolocation::reset() which detaches from the
+ GeolocationController, cancels requests, watches and single shots,
+ and sets the permission state back to Unknown.
+
+ We also now call detachFromPage when the frame reparented in
+ Frame::transferChildFrameToNewDocument.
+
+ Frame::pageDestroyed() is also called by FrameLoader even though
+ the page is not destroyed. We should still cancel permission
+ requests, because the GeolocationClient will become inaccessible
+ to the Geolocation object after this call.
+
+ Since GeolocationController is owned by Page, and all Geolocation
+ objects will now unsubscribe from the GeolocationController on
+ pageDetached(), we no longer need to call stopUpdating() from the
+ GeolocationController's destructor. Instead we can simply assert
+ that there should be no no observers. See related bug
+ https://bugs.webkit.org/show_bug.cgi?id=52216 .
+
+ Introduced new method 'numberOfPendingPermissionRequests' on
+ GeolocationClientMock to count the number of outstanding pending
+ permission requests. This provides a reusable implementation for
+ client-based implementations of the LayoutTestController's
+ numberOfPendingGeolocationPermissionRequests method.
+
+ Tests: fast/dom/Geolocation/iframe-reparent.html
+ fast/dom/Geolocation/page-reload-cancel-permission-requests.html
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::resetGeolocationPermissions):
+ * page/DOMWindow.h:
+ * page/Frame.cpp:
+ (WebCore::Frame::detachFromPage):
+ (WebCore::Frame::pageDestroyed):
+ (WebCore::Frame::transferChildFrameToNewDocument):
+ * page/Frame.h:
+ * page/Geolocation.cpp:
+ (WebCore::Geolocation::~Geolocation):
+ (WebCore::Geolocation::page):
+ (WebCore::Geolocation::reset):
+ (WebCore::Geolocation::disconnectFrame):
+ (WebCore::Geolocation::lastPosition):
+ (WebCore::Geolocation::requestPermission):
+ (WebCore::Geolocation::startUpdating):
+ (WebCore::Geolocation::stopUpdating):
+ * page/Geolocation.h:
+ * page/GeolocationController.cpp:
+ (WebCore::GeolocationController::~GeolocationController):
+ * page/Navigator.cpp:
+ (WebCore::Navigator::resetGeolocationPermissions):
+ * page/Navigator.h:
+ * platform/mock/GeolocationClientMock.cpp:
+ (WebCore::GeolocationClientMock::numberOfPendingPermissionRequests):
+ * platform/mock/GeolocationClientMock.h:
+
+2011-03-02 Mikhail Naganov <mnaganov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Chromium] Landing detailed heap snapshots, part 4.
+ https://bugs.webkit.org/show_bug.cgi?id=55563
+
+ This part adds implementations for data grids used to display
+ different heap snapshots projections. We are almost done.
+
+ * English.lproj/localizedStrings.js:
+ * WebCore.gypi:
+ * bindings/v8/ScriptHeapSnapshot.cpp:
+ (WebCore::ScriptHeapSnapshot::getExactRetainedSize):
+ * bindings/v8/ScriptHeapSnapshot.h:
+ * inspector/Inspector.idl:
+ * inspector/InspectorProfilerAgent.cpp:
+ (WebCore::InspectorProfilerAgent::getExactHeapSnapshotNodeRetainedSize):
+ * inspector/InspectorProfilerAgent.h:
+ * inspector/front-end/DetailedHeapshotGridNodes.js:
+ (WebInspector.HeapSnapshotObjectNode):
+ (WebInspector.HeapSnapshotObjectNode.prototype._createProvider):
+ (WebInspector.HeapSnapshotInstanceNode):
+ (WebInspector.HeapSnapshotInstanceNode.prototype._createProvider):
+ (WebInspector.HeapSnapshotDominatorObjectNode):
+ (WebInspector.HeapSnapshotDominatorObjectNode.prototype._createProvider):
+ (MixInSnapshotNodeFunctions):
+ * inspector/front-end/DetailedHeapshotView.js:
+ (WebInspector.HeapSnapshotContainmentDataGrid):
+ (WebInspector.HeapSnapshotSortableDataGrid):
+ (WebInspector.HeapSnapshotConstructorsDataGrid):
+ (WebInspector.HeapSnapshotDiffDataGrid):
+ (WebInspector.HeapSnapshotDominatorsDataGrid):
+ (WebInspector.HeapSnapshotRetainingPathsList):
+ (WebInspector.DetailedHeapshotView.profileCallback):
+ (WebInspector.DetailedHeapshotView):
+ * inspector/front-end/HeapSnapshot.js:
+ (WebInspector.HeapSnapshotEdge.prototype.get isInvisible):
+ (WebInspector.HeapSnapshotEdge.prototype.toString):
+ (WebInspector.HeapSnapshot.prototype._init):
+ (WebInspector.HeapSnapshot.prototype._buildAggregatesIndexes):
+ (WebInspector.HeapSnapshot.prototype._markInvisibleEdges):
+ (WebInspector.HeapSnapshotPathFinder.prototype._skipEdge):
+ * inspector/front-end/Images/helpButtonGlyph.png: Added.
+ * inspector/front-end/Panel.js:
+ (WebInspector.Panel.prototype.reset):
+ * inspector/front-end/Popover.js:
+ (WebInspector.Popover):
+ (WebInspector.Popover.prototype.show):
+ (WebInspector.Popover.prototype.hide):
+ (WebInspector.Popover.prototype.get visible):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel.prototype._reset):
+ (WebInspector.ProfilesPanel.prototype.getProfile):
+ * inspector/front-end/heapProfiler.css:
+ * inspector/front-end/inspector.js:
+ (WebInspector.resetFocusElement):
+
+2011-03-02 David Kilzer <ddkilzer@apple.com>
+
+ <http://webkit.org/b/55534> Clean up macros in Extensions3DOpenGL.cpp
+
+ Reviewed by Darin Adler.
+
+ Change "#if GL_APPLE_vertex_array_object" macros to check that
+ GL_APPLE_vertex_array_object is both defined and non-zero.
+
+ * platform/graphics/opengl/Extensions3DOpenGL.cpp:
+ (WebCore::Extensions3DOpenGL::createVertexArrayOES):
+ (WebCore::Extensions3DOpenGL::deleteVertexArrayOES): Remove
+ empty #else clause.
+ (WebCore::Extensions3DOpenGL::isVertexArrayOES):
+ (WebCore::Extensions3DOpenGL::bindVertexArrayOES): Add early
+ return check. Remove #else clause that would never have
+ compiled (since array is not a WTF::String).
+
+2011-03-01 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Assertion failure after removing a selection in keydown handler
+ https://bugs.webkit.org/show_bug.cgi?id=51389
+
+ The bug was caused by textWillBeReplaced's not always updating selection, and
+ shouldRemovePositionAfterAdoptingTextReplacement's not moving the end offset when it's
+ at the end of replaced data.
+
+ Fixed the bug by always updating selection in textWillBeReplaced and fixing the condition
+ to move the offset in shouldRemovePositionAfterAdoptingTextReplacement. Also added a call
+ to setSelection instead of directly modifying m_selection to notify all the clients.
+ Namely, the call to EditorClient::respondToChangedSelection is required for
+ setting-input-value-cancel-ime-composition.html.
+
+ Note that we must update layout before calling setSelection because setSelection calls
+ setFocusedNodeIfNeeded and it requires layout to be up-to-date. Without this call, tests
+ such as fast/forms/input-appearance-maxlength.html hits an assertion in Node::isFocusable.
+
+ Test: editing/input/setting-input-value-cancel-ime-composition.html
+
+ * editing/SelectionController.cpp:
+ (WebCore::shouldRemovePositionAfterAdoptingTextReplacement): When replacing text, the offset
+ of the selection end must be updated even if it was at the end of the replaced text.
+ e.g. removing "world" from "hello world] WebKit" should result in "hello ] WebKit" not
+ "hello WebK[it". Note we don't move the offset if no text is removed because appending
+ "world" to "hello ]" should result in "hello ]world" not "hello world]".
+ (WebCore::SelectionController::textWillBeReplaced): Calls setSelection to update
+ the selection instead of modifying m_selection directly.
+
+2011-03-02 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: highlighted line does not span horizonally in scripts panel while debugging.
+ https://bugs.webkit.org/show_bug.cgi?id=54675
+
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextViewer.prototype._syncScroll):
+ (WebInspector.TextEditorChunkedPanel.prototype._buildChunks):
+ (WebInspector.TextEditorChunkedPanel.prototype.makeLineAChunk):
+ (WebInspector.TextEditorGutterPanel):
+ (WebInspector.TextEditorGutterPanel.prototype._expandChunks):
+ (WebInspector.TextEditorGutterPanel.prototype.textChanged):
+ (WebInspector.TextEditorMainPanel):
+ (WebInspector.TextEditorMainPanel.prototype.set readOnly):
+ (WebInspector.TextEditorMainPanel.prototype._getSelection):
+ (WebInspector.TextEditorMainPanel.prototype._selectionToPosition):
+ (WebInspector.TextEditorMainPanel.prototype._handleDOMSubtreeModified):
+ (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
+ (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
+ * inspector/front-end/textViewer.css:
+ (.inner-container):
+
+2011-03-02 Oleg Romashin <romaxa@gmail.com>
+
+ Reviewed by Andreas Kling.
+
+ Fixing inspector compilation with JAVASCRIPT_DEBUGGER disabled
+ https://bugs.webkit.org/show_bug.cgi?id=55477
+
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::populateScriptObjects):
+
+2011-03-02 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, a trivial fix for r80096.
+
+ REGRESSION (r80096): [Chromium] fast/forms/input-number-unacceptable-style.html failure
+ https://bugs.webkit.org/show_bug.cgi?id=55562
+
+ * platform/text/LocalizedNumberICU.cpp:
+ (WebCore::parseLocalizedNumber): Check the ParsePosition after NumberFormat::parse()
+ to reject strings with a valid number + extra letters.
+
+2011-03-02 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ JObjectWrapper should be moved to its own file
+ https://bugs.webkit.org/show_bug.cgi?id=55384
+
+ No new tests, refactoring only.
+
+ * Android.v8bindings.mk:
+ * WebCore.gypi:
+ * bridge/jni/v8/JNIBridgeV8.cpp:
+ (JavaField::JavaField):
+ * bridge/jni/v8/JNIBridgeV8.h:
+ * bridge/jni/v8/JavaInstanceV8.cpp:
+ (JavaInstance::JavaInstance):
+ * bridge/jni/v8/JavaInstanceV8.h:
+ * bridge/jni/v8/JobjectWrapper.cpp: Copied from Source/WebCore/bridge/jni/v8/JNIBridgeV8.h.
+ (JobjectWrapper::JobjectWrapper):
+ (JobjectWrapper::~JobjectWrapper):
+ * bridge/jni/v8/JobjectWrapper.h: Copied from Source/WebCore/bridge/jni/v8/JNIBridgeV8.h.
+ (JSC::Bindings::JobjectWrapper::instance):
+ (JSC::Bindings::JobjectWrapper::setInstance):
+ (JSC::Bindings::JobjectWrapper::ref):
+ (JSC::Bindings::JobjectWrapper::deref):
+
+2011-02-25 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: factor search logic out of inspector.js
+ https://bugs.webkit.org/show_bug.cgi?id=54965
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.searchCanceled):
+ (WebInspector.ElementsPanel.prototype.switchToAndFocus):
+ (WebInspector.ElementsPanel.prototype._updateMatchesCount):
+ * inspector/front-end/Panel.js:
+ (WebInspector.Panel.prototype.searchCanceled):
+ (WebInspector.Panel.prototype.performSearch.updateMatchesCount):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.searchCanceled):
+ (WebInspector.ScriptsPanel.prototype.performSearch.finishedCallback):
+ (WebInspector.ScriptsPanel.prototype.performSearch):
+ * inspector/front-end/SearchController.js: Added.
+ (WebInspector.SearchController):
+ (WebInspector.SearchController.prototype.updateSearchMatchesCount):
+ (WebInspector.SearchController.prototype.updateSearchLabel):
+ (WebInspector.SearchController.prototype.cancelSearch):
+ (WebInspector.SearchController.prototype.handleShortcut):
+ (WebInspector.SearchController.prototype.activePanelChanged.performPanelSearch):
+ (WebInspector.SearchController.prototype.activePanelChanged):
+ (WebInspector.SearchController.prototype._updateSearchMatchesCount):
+ (WebInspector.SearchController.prototype._focusSearchField):
+ (WebInspector.SearchController.prototype._onSearchFieldManualFocus):
+ (WebInspector.SearchController.prototype._onKeyDown):
+ (WebInspector.SearchController.prototype._onSearch):
+ (WebInspector.SearchController.prototype._performSearch):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/inspector.js:
+ (WebInspector.set currentPanel):
+ (WebInspector.set attached):
+ (WebInspector.doLoadedDone):
+ (WebInspector.documentKeyDown):
+
+2011-03-02 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ FEMorphologyElement changes doesn't require relayout
+ https://bugs.webkit.org/show_bug.cgi?id=55462
+
+ When the FEMorphologyElement receives an update message but the given value remains the same we don't need
+ to relayout the filter.
+
+ No new tests are needed because this modification is covered by the dynamic update tests of FEMorphology.
+
+ * platform/graphics/filters/FEMorphology.cpp:
+ (WebCore::FEMorphology::setMorphologyOperator):
+ (WebCore::FEMorphology::setRadiusX):
+ (WebCore::FEMorphology::setRadiusY):
+ * platform/graphics/filters/FEMorphology.h:
+ * svg/SVGFEMorphologyElement.cpp:
+ (WebCore::SVGFEMorphologyElement::setFilterEffectAttribute):
+ (WebCore::SVGFEMorphologyElement::svgAttributeChanged):
+ * svg/SVGFEMorphologyElement.h:
+
+2011-03-01 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Assertion fails when a form validation bubble appears
+ https://bugs.webkit.org/show_bug.cgi?id=55550
+
+ Test: fast/forms/interactive-validation-attach-assertion.html
+
+ * html/ValidationMessage.cpp:
+ (WebCore::ValidationMessage::buildBubbleTree):
+ Just remove unnecessary attach().
+
+2011-03-01 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Support localized numbers in <input type=number>
+ https://bugs.webkit.org/show_bug.cgi?id=42484
+
+ This change adds support of localized numbers in <input type=number>.
+ This affects only the UI, and not HTMLInputElement::value.
+
+ - Remove the keyboard input restriction feature because it is hard to
+ retrieve characters usable for localized numbers in ICU.
+
+ - Separate convertFromVisibleValue() from sanitizeValue().
+ sanitizeValue() is used for not only converting a renderer value to a
+ DOM value.
+
+ - Implement LocalizedNumber functions for ICU and NSNumberFormatter.
+ It is used only in Chromium for now.
+
+ Test: manual-tests/input-number-localization.html
+
+ * WebCore.gypi: Use LocalizedNumberICU.cpp.
+ * WebCore.xcodeproj/project.pbxproj:
+ Add LocalizedNumberMac.mm and remove LocalizedNumberNone.cpp.
+ * dom/InputElement.h: Introduce convertFromVisibleValue().
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::convertFromVisibleValue):
+ * html/HTMLInputElement.h:
+ * html/InputType.cpp:
+ (WebCore::InputType::convertFromVisibleValue):
+ * html/InputType.h:
+ * html/NumberInputType.cpp: Remove isHTMLNumberCharacter(),
+ isNumberCharacter(), and handleBeforeTextInsertedEvent() because we
+ remove the keyboard input restriction feature for type=number.
+ (WebCore::NumberInputType::convertFromVisibleValue):
+ (WebCore::NumberInputType::sanitizeValue):
+ * html/NumberInputType.h:
+ * manual-tests/input-number-localization.html: Add a manual test because
+ the behavior depends on the current locale.
+ * platform/text/LocalizedNumber.h: Remove isLocalizedNumberCharacter().
+ * platform/text/LocalizedNumberICU.cpp:
+ Implement LocalizedNumber functions with ICU NumberFormat.
+ (WebCore::createFormatterForCurrentLocale):
+ (WebCore::parseLocalizedNumber):
+ (WebCore::formatLocalizedNumber):
+ * platform/text/LocalizedNumberNone.cpp: Remove isLocalizedNumberCharacter().
+ * platform/text/mac/LocalizedNumberMac.mm:
+ Implement LocalizedNumber functions with NSNumberFormatter.
+ (WebCore::parseLocalizedNumber):
+ (WebCore::formatLocalizedNumber):
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
+ * wml/WMLInputElement.h:
+ (WebCore::WMLInputElement::convertFromVisibleValue):
+ Implemented as a function doing nothing.
+
+2011-03-01 Yuta Kitamura <yutak@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION(r78383): Failure to connect on websocketstest.com
+ https://bugs.webkit.org/show_bug.cgi?id=54811
+
+ After r78383, KURL::setPort() no longer appends ":port" part
+ if that port is the default port for URL scheme. This broke
+ SocketStreamHandleCFNet, whose code was based on an assumption
+ that KURL::setPort() always inserts ":port" part.
+
+ To fix this, KURL::port() call is removed from SocketStreamHandle
+ and the port number is calculated on-the-fly.
+
+ Unfortunately it is impossible to write a test; this bug only
+ affects WebSockets connecting to the default port (port 80
+ for ws, port 443 for wss), while we use different ports to test
+ WebSockets in LayoutTests.
+
+ * platform/network/cf/SocketStreamHandle.h:
+ * platform/network/cf/SocketStreamHandleCFNet.cpp:
+ (WebCore::SocketStreamHandle::SocketStreamHandle):
+ (WebCore::SocketStreamHandle::createStreams):
+ (WebCore::SocketStreamHandle::port):
+
+2011-03-01 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80079.
+ http://trac.webkit.org/changeset/80079
+ https://bugs.webkit.org/show_bug.cgi?id=55547
+
+ "Broke the Win debug build?" (Requested by dcheng on #webkit).
+
+ * Configurations/FeatureDefines.xcconfig:
+ * GNUmakefile.am:
+ * features.pri:
+
+2011-02-25 Adrienne Walker <enne@google.com>
+
+ Reviewed by James Robinson.
+
+ [chromium] Abstract "pixels with a graphics context" into its own class
+ https://bugs.webkit.org/show_bug.cgi?id=55259
+
+ This creates new PlatformCanvas/PlatformImage classes which wrap
+ all of the #ifdef Skia/Cg warts from the compositor. All classes
+ (LayerTilerChromium, ContentLayerChromium, and ImageLayerChromium) are
+ modified to use these abstractions.
+
+ Tests: LayoutTests/compositing
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::updateContentsIfDirty):
+ (WebCore::ContentLayerChromium::resizeUploadBuffer):
+ (WebCore::ContentLayerChromium::updateTextureIfNeeded):
+ (WebCore::ContentLayerChromium::updateTexture):
+ (WebCore::ContentLayerChromium::draw):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContentsIfDirty):
+ (WebCore::ImageLayerChromium::updateTextureIfNeeded):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::contentRectToTileIndices):
+ (WebCore::LayerTilerChromium::update):
+ (WebCore::LayerTilerChromium::updateFromPixels):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ * platform/graphics/chromium/PlatformCanvas.cpp: Added.
+ (WebCore::PlatformCanvas::PlatformCanvas):
+ (WebCore::PlatformCanvas::~PlatformCanvas):
+ (WebCore::PlatformCanvas::resize):
+ (WebCore::PlatformCanvas::AutoLocker::AutoLocker):
+ (WebCore::PlatformCanvas::AutoLocker::~AutoLocker):
+ (WebCore::PlatformCanvas::Painter::Painter):
+ (WebCore::PlatformCanvas::Painter::~Painter):
+ * platform/graphics/chromium/PlatformCanvas.h: Added.
+ (WebCore::PlatformCanvas::AutoLocker::pixels):
+ (WebCore::PlatformCanvas::Painter::context):
+ (WebCore::PlatformCanvas::size):
+ * platform/graphics/chromium/PlatformImage.cpp: Copied from Source/WebCore/platform/graphics/chromium/ImageLayerChromium.cpp.
+ (WebCore::PlatformImage::PlatformImage):
+ (WebCore::PlatformImage::updateFromImage):
+ * platform/graphics/chromium/PlatformImage.h: Added.
+ (WebCore::PlatformImage::pixels):
+ (WebCore::PlatformImage::size):
+
+2011-03-01 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add feature define for data transfer items
+ https://bugs.webkit.org/show_bug.cgi?id=55510
+
+ * Configurations/FeatureDefines.xcconfig:
+ * GNUmakefile.am:
+ * features.pri:
+
+2011-03-01 Joseph Pecoraro <joepeck@webkit.org>
+
+ Unreviewed. Roll out r80068 and r80073 due to breaking WebKit2 Qt port.
+
+ * dom/ViewportArguments.cpp:
+ (WebCore::computeViewportAttributes):
+ (WebCore::numericPrefix):
+ (WebCore::findSizeValue):
+ (WebCore::setViewportFeature):
+ (WebCore::viewportErrorMessageTemplate):
+ (WebCore::viewportErrorMessageLevel):
+ * dom/ViewportArguments.h:
+
+2011-03-01 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by James Robinson.
+
+ IDBKeyRange.bound() should not use the optional options object
+ https://bugs.webkit.org/show_bug.cgi?id=55419
+
+ http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#range-concept
+
+ Added some code to existing tests to cover these cases.
+
+ * storage/IDBKeyRange.cpp:
+ (WebCore::IDBKeyRange::bound):
+ * storage/IDBKeyRange.h:
+ * storage/IDBKeyRange.idl:
+
+2011-03-01 Dan Bernstein <mitz@apple.com>
+
+ Build fix.
+
+ * dom/DocumentMarkerController.cpp:
+ (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
+
+2011-03-01 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed. Apply sort-Xcode-project-file.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2011-03-01 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by James Robinson.
+
+ V8 code generator doesn't properly support a single SerializedScriptValue attribute
+ https://bugs.webkit.org/show_bug.cgi?id=55530
+
+ This is tested by the bindings tests changes.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp: Added.
+ (WebDOMTestSerializedScriptValueInterface::WebDOMTestSerializedScriptValueInterfacePrivate::WebDOMTestSerializedScriptValueInterfacePrivate):
+ (WebDOMTestSerializedScriptValueInterface::WebDOMTestSerializedScriptValueInterface):
+ (WebDOMTestSerializedScriptValueInterface::operator=):
+ (WebDOMTestSerializedScriptValueInterface::impl):
+ (WebDOMTestSerializedScriptValueInterface::~WebDOMTestSerializedScriptValueInterface):
+ (WebDOMTestSerializedScriptValueInterface::value):
+ (toWebCore):
+ (toWebKit):
+ * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.h: Added.
+ * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp: Added.
+ (WebKit::kit):
+ (webkit_dom_test_serialized_script_value_interface_get_value):
+ (WebKit::core):
+ (webkit_dom_test_serialized_script_value_interface_finalize):
+ (webkit_dom_test_serialized_script_value_interface_set_property):
+ (webkit_dom_test_serialized_script_value_interface_get_property):
+ (webkit_dom_test_serialized_script_value_interface_constructed):
+ (webkit_dom_test_serialized_script_value_interface_class_init):
+ (webkit_dom_test_serialized_script_value_interface_init):
+ (WebKit::wrapTestSerializedScriptValueInterface):
+ * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h: Added.
+ * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h: Added.
+ * bindings/scripts/test/JS/JSTestInterface.cpp:
+ (WebCore::JSTestInterfaceConstructor::JSTestInterfaceConstructor):
+ (WebCore::JSTestInterface::JSTestInterface):
+ * bindings/scripts/test/JS/JSTestInterface.h:
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
+ (WebCore::JSTestMediaQueryListListenerConstructor::JSTestMediaQueryListListenerConstructor):
+ (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
+ (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
+ * bindings/scripts/test/JS/JSTestObj.cpp:
+ (WebCore::JSTestObjConstructor::JSTestObjConstructor):
+ (WebCore::JSTestObj::JSTestObj):
+ (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
+ (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
+ (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
+ (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs):
+ (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
+ (WebCore::jsTestObjPrototypeFunctionSerializedValue):
+ (WebCore::jsTestObjPrototypeFunctionIdbKey):
+ (WebCore::jsTestObjPrototypeFunctionOptionsObject):
+ (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
+ (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg):
+ (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg):
+ (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
+ (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
+ (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
+ (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
+ (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
+ (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
+ (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
+ (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
+ (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
+ (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
+ (WebCore::jsTestObjPrototypeFunctionClassMethodWithOptional):
+ * bindings/scripts/test/JS/JSTestObj.h:
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp: Added.
+ (WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
+ (WebCore::JSTestSerializedScriptValueInterfaceConstructor::JSTestSerializedScriptValueInterfaceConstructor):
+ (WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertySlot):
+ (WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertyDescriptor):
+ (WebCore::JSTestSerializedScriptValueInterfacePrototype::self):
+ (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
+ (WebCore::JSTestSerializedScriptValueInterface::createPrototype):
+ (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot):
+ (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertyDescriptor):
+ (WebCore::jsTestSerializedScriptValueInterfaceValue):
+ (WebCore::jsTestSerializedScriptValueInterfaceConstructor):
+ (WebCore::JSTestSerializedScriptValueInterface::getConstructor):
+ (WebCore::toJS):
+ (WebCore::toTestSerializedScriptValueInterface):
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h: Copied from Source/WebCore/bindings/scripts/test/JS/JSTestInterface.h.
+ (WebCore::JSTestSerializedScriptValueInterface::createStructure):
+ (WebCore::JSTestSerializedScriptValueInterface::impl):
+ (WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
+ (WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
+ * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h: Added.
+ * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.mm: Added.
+ (-[DOMTestSerializedScriptValueInterface dealloc]):
+ (-[DOMTestSerializedScriptValueInterface finalize]):
+ (-[DOMTestSerializedScriptValueInterface value]):
+ (core):
+ (kit):
+ * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterfaceInternal.h: Added.
+ * bindings/scripts/test/TestSerializedScriptValueInterface.idl: Added.
+ * bindings/scripts/test/V8/V8TestInterface.cpp:
+ (WebCore::ConfigureV8TestInterfaceTemplate):
+ * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp: Copied from Source/WebCore/bindings/scripts/test/V8/V8TestInterface.cpp.
+ (WebCore::TestSerializedScriptValueInterfaceInternal::V8_USE):
+ (WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
+ (WebCore::V8TestSerializedScriptValueInterface::GetRawTemplate):
+ (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
+ (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
+ (WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
+ (WebCore::V8TestSerializedScriptValueInterface::derefObject):
+ * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h: Added.
+ (WebCore::V8TestSerializedScriptValueInterface::toNative):
+ (WebCore::V8TestSerializedScriptValueInterface::wrap):
+ (WebCore::toV8):
+
+2011-03-01 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Joseph Pecoraro.
+
+ Misaligned memory access in CloneDeserializer on all ARM arch.
+ https://bugs.webkit.org/show_bug.cgi?id=48742
+
+ Push platforms that need aligned memory access down the
+ endian independent serialization and deserialization
+ paths.
+
+ * bindings/js/SerializedScriptValue.cpp:
+
+2011-03-01 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Viewport Warning/Error Messages Are Now Inaccurate
+ https://bugs.webkit.org/show_bug.cgi?id=53707
+
+ Correct and improve the error messages for viewport
+ parsing. Clarify the difference between incorrect
+ keys, values, and when to use the device-width or
+ device-height constants.
+
+ * dom/ViewportArguments.cpp:
+ (WebCore::computeViewportAttributes): suggest using keywords if fixed input matches device width or height.
+ (WebCore::numericPrefix):
+ (WebCore::findSizeValue): remove incorrect warnings about fixed numbers because we don't know the device width or height.
+ (WebCore::setViewportFeature): report a warning for an unrecognized key.
+ (WebCore::viewportErrorMessageTemplate): added template for unrecognized key.
+ (WebCore::viewportErrorMessageLevel):
+ * dom/ViewportArguments.h:
+
+2011-03-01 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ WebKit does not merge text decorations in the typing style and the selected element properly
+ https://bugs.webkit.org/show_bug.cgi?id=55349
+
+ The bug was caused by EditingStyle::mergeTypingStyle's not properly merging text decoration property.
+ Fixed the bug by extracting a function from ApplyStyleCommand::pushDownInlineStyleAroundNode and
+ calling it in pushDownInlineStyleAroundNode and in mergeTypingStyle.
+
+ Test: editing/execCommand/merge-text-decoration-with-typing-style.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Takes EditingStyle*;
+ calls mergeInlineStyleOfElement.
+ (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls applyInlineStyleToPushDown.
+ (WebCore::ApplyStyleCommand::removeInlineStyle): Ditto.
+ * editing/ApplyStyleCommand.h:
+ * editing/EditingStyle.cpp:
+ (WebCore::EditingStyle::mergeTypingStyle): Added; calls mergeStyle.
+ (WebCore::EditingStyle::mergeInlineStyleOfElement): Ditto.
+ (WebCore::EditingStyle::mergeStyle): Extracted from applyInlineStyleToPushDown.
+ * editing/EditingStyle.h:
+
+2011-03-01 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Ryosuke Niwa.
+
+ Stop instantiating legacy editing Positions in VisiblePosition
+ https://bugs.webkit.org/show_bug.cgi?id=52919
+
+ Changing VisiblePosition completely away from legacy positions.
+
+ No new tests since this is functionaly equivalent.
+
+ * WebCore.exp.in: Removing the legacy VisiblePosition constructor and
+ adding the PositionIsOffsetInAnchor symbol. If we must create VisiblePositions
+ outside of WebCore, they should be parent anchored.
+ * accessibility/AXObjectCache.cpp:
+ (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::startOfStyleRange):
+ (WebCore::endOfStyleRange):
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (objectAndOffsetUnignored):
+ * dom/Position.cpp:
+ (WebCore::Position::document): Added this inline function to avoid the necessity
+ of calling anchorNode to assure a document from a Position.
+ (WebCore::Position::upstream): Fixed to correctly respect PositionIsAfterAnchor
+ (WebCore::Position::downstream): ditto
+ * dom/Range.cpp:
+ (WebCore::Range::editingStartPosition):
+ * editing/Editor.cpp:
+ (WebCore::Editor::canDeleteRange):
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::doApply):
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
+ (WebCore::SelectionController::setSelectedRange):
+ * editing/TextIterator.cpp:
+ (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
+ * editing/TypingCommand.cpp:
+ (WebCore::TypingCommand::deleteKeyPressed):
+ * editing/VisiblePosition.cpp:
+ (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
+ (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
+ (WebCore::VisiblePosition::canonicalPosition):
+ (WebCore::VisiblePosition::characterAfter):
+ (WebCore::VisiblePosition::localCaretRect):
+ (WebCore::makeRange):
+ (WebCore::startVisiblePosition):
+ (WebCore::endVisiblePosition):
+ (WebCore::setStart):
+ (WebCore::setEnd):
+ (WebCore::isFirstVisiblePositionInNode):
+ (WebCore::isLastVisiblePositionInNode):
+ * editing/VisiblePosition.h:
+ (WebCore::VisiblePosition::VisiblePosition):
+ * editing/htmlediting.cpp:
+ (WebCore::firstInSpecialElement):
+ (WebCore::lastInSpecialElement):
+ (WebCore::visiblePositionBeforeNode):
+ (WebCore::visiblePositionAfterNode):
+ * editing/visible_units.cpp:
+ (WebCore::startPositionForLine):
+ (WebCore::endPositionForLine):
+ (WebCore::previousLinePosition):
+ (WebCore::nextLinePosition):
+ (WebCore::startOfParagraph):
+ (WebCore::endOfParagraph):
+ (WebCore::endOfBlock):
+ (WebCore::startOfDocument):
+ (WebCore::endOfDocument):
+ (WebCore::logicalStartPositionForLine):
+ (WebCore::logicalEndPositionForLine):
+ * page/DOMSelection.cpp:
+ (WebCore::DOMSelection::collapse):
+ (WebCore::DOMSelection::setBaseAndExtent):
+ (WebCore::DOMSelection::setPosition):
+ (WebCore::DOMSelection::extend):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleMousePressEventSingleClick):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::createVisiblePosition):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::visiblePositionForIndex):
+ * svg/SVGTextContentElement.cpp:
+ (WebCore::SVGTextContentElement::selectSubString):
+
+2011-03-01 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Steve Block.
+
+ When an IDBTransaction is aborted, all requests that have not yet fired should fire an ABORT_ERR
+ https://bugs.webkit.org/show_bug.cgi?id=54785
+
+ This patch adds in a lot of sanity checks/ASSERTs to make sure we're doing
+ the right thing and continue to do the right thing. It also modifies EventQueue
+ so that we can cancel an event. To do this efficiently, the vector is now a
+ ListHashSet.
+
+ Cancelling the event is harder/messier, but the most deterministic thing to do.
+ To the user, the work isn't done until we fire the onsuccess/onerror handler.
+ So the event (which does fire that) needs to be cancelable.
+
+ transaction-abort.html tests this.
+
+ * dom/EventQueue.cpp:
+ (WebCore::EventQueue::enqueueEvent):
+ (WebCore::EventQueue::cancelEvent):
+ (WebCore::EventQueue::pendingEventTimerFired):
+ (WebCore::EventQueue::dispatchEvent):
+ * dom/EventQueue.h:
+ * dom/ExceptionCode.cpp:
+ * storage/IDBCursor.cpp:
+ (WebCore::IDBCursor::update):
+ (WebCore::IDBCursor::deleteFunction):
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::close):
+ * storage/IDBDatabaseException.h:
+ * storage/IDBIndex.cpp:
+ (WebCore::IDBIndex::openCursor):
+ (WebCore::IDBIndex::openKeyCursor):
+ (WebCore::IDBIndex::get):
+ (WebCore::IDBIndex::getKey):
+ * storage/IDBObjectStore.cpp:
+ (WebCore::IDBObjectStore::get):
+ (WebCore::IDBObjectStore::add):
+ (WebCore::IDBObjectStore::put):
+ (WebCore::IDBObjectStore::deleteFunction):
+ (WebCore::IDBObjectStore::clear):
+ (WebCore::IDBObjectStore::openCursor):
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::IDBRequest):
+ (WebCore::IDBRequest::~IDBRequest):
+ (WebCore::IDBRequest::readyState):
+ (WebCore::IDBRequest::markEarlyDeath):
+ (WebCore::IDBRequest::source):
+ (WebCore::IDBRequest::abort):
+ (WebCore::IDBRequest::onSuccess):
+ (WebCore::IDBRequest::dispatchEvent):
+ (WebCore::IDBRequest::enqueueEvent):
+ * storage/IDBRequest.h:
+ * storage/IDBTransaction.cpp:
+ (WebCore::IDBTransaction::registerRequest):
+ (WebCore::IDBTransaction::unregisterRequest):
+ (WebCore::IDBTransaction::onAbort):
+ * storage/IDBTransaction.h:
+
+2011-03-01 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Mihai Parparita.
+
+ EventQueue needs to be ref counted
+ https://bugs.webkit.org/show_bug.cgi?id=55512
+
+ EventQueue needs to be ref counted because it's possible for its instance
+ to be deleted while it's dispatching events. This is the reason why
+ https://bugs.webkit.org/show_bug.cgi?id=54785 had to be reverted.
+
+ No change of behavior, so no tests.
+
+ * dom/Document.h:
+ * dom/EventQueue.cpp:
+ (WebCore::EventQueue::create):
+ * dom/EventQueue.h:
+
+2011-03-01 Helder Correia <helder@sencha.com>
+
+ Reviewed by Simon Fraser.
+
+ No shadow when stroking a path with a gradient
+ https://bugs.webkit.org/show_bug.cgi?id=55436
+
+ This happens in CG and is related to bug 52509, this time to be fixed
+ in GraphicsContext::strokePath(). The gradient needs to be drawn
+ clipped to the stroke on a CGLayer first, then the layer drawn on the
+ GraphicsContext.
+
+ Tests: fast/canvas/canvas-strokePath-gradient-shadow.html
+ svg/css/path-gradient-stroke-shadow.svg
+
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::strokePath):
+
+2011-03-01 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix Font::spaceWidth() to be a float instead of an int.
+
+ * platform/graphics/Font.h:
+ (WebCore::Font::spaceWidth):
+
+2011-02-28 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ Chromium gypi file should include Java bridge files from WebCore/bridge
+ https://bugs.webkit.org/show_bug.cgi?id=55387
+
+ No new tests, no code changes.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2011-03-01 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Tony Gentilcore.
+
+ [Web Timing] Handle the case where no responseEnd time is available.
+ https://bugs.webkit.org/show_bug.cgi?id=55444
+
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::MainResourceLoader): Initialize to 0.
+ (WebCore::MainResourceLoader::didFinishLoading): Fall back to current time if no other time is available.
+
+2011-03-01 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed, adding missing change for r80034.
+
+ Add a handler class for Win32 HANDLE
+ https://bugs.webkit.org/show_bug.cgi?id=55334
+
+ * platform/win/Win32Handle.h: Added missing WTF_MAKE_NONCOPYABLE macro.
+
+2011-03-01 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80037.
+ http://trac.webkit.org/changeset/80037
+ https://bugs.webkit.org/show_bug.cgi?id=55508
+
+ broke compile on SL (Requested by tonyg-cr on #webkit).
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSParser.h:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * css/html.css:
+ (q:before):
+ (q:after):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::dirtyLineBoxesForRenderer):
+ * rendering/RenderObject.h:
+ * rendering/RenderObjectChildList.cpp:
+ (WebCore::RenderObjectChildList::removeChildNode):
+ (WebCore::RenderObjectChildList::appendChildNode):
+ (WebCore::RenderObjectChildList::insertChildNode):
+ (WebCore::RenderObjectChildList::updateBeforeAfterContent):
+ * rendering/RenderQuote.cpp: Removed.
+ * rendering/RenderQuote.h: Removed.
+ * rendering/RenderingAllInOne.cpp:
+ * rendering/style/ContentData.cpp:
+ (WebCore::ContentData::dataEquivalent):
+ (WebCore::ContentData::deleteContent):
+ * rendering/style/ContentData.h:
+ * rendering/style/QuotesData.cpp: Removed.
+ * rendering/style/QuotesData.h: Removed.
+ * rendering/style/RenderStyle.cpp:
+ * rendering/style/RenderStyle.h:
+ * rendering/style/RenderStyleConstants.h:
+ * rendering/style/StyleAllInOne.cpp:
+ * rendering/style/StyleRareInheritedData.cpp:
+ (WebCore::StyleRareInheritedData::operator==):
+ * rendering/style/StyleRareInheritedData.h:
+
+2011-03-01 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dave Hyatt.
+
+ Paint outline for tables.
+ https://bugs.webkit.org/show_bug.cgi?id=55474
+
+ Test: fast/table/table-and-parts-outline.html
+
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::paintObject):
+
+2011-03-01 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r80028.
+ http://trac.webkit.org/changeset/80028
+ https://bugs.webkit.org/show_bug.cgi?id=55502
+
+ 'caused crashes; rolling out while investigating' (Requested
+ by jorlow on #webkit).
+
+ * dom/EventQueue.cpp:
+ (WebCore::EventQueue::enqueueEvent):
+ (WebCore::EventQueue::pendingEventTimerFired):
+ (WebCore::EventQueue::dispatchEvent):
+ * dom/EventQueue.h:
+ * dom/ExceptionCode.cpp:
+ * storage/IDBCursor.cpp:
+ (WebCore::IDBCursor::update):
+ (WebCore::IDBCursor::deleteFunction):
+ * storage/IDBDatabaseException.h:
+ * storage/IDBDatabaseException.idl:
+ * storage/IDBIndex.cpp:
+ (WebCore::IDBIndex::openCursor):
+ (WebCore::IDBIndex::openKeyCursor):
+ (WebCore::IDBIndex::get):
+ (WebCore::IDBIndex::getKey):
+ * storage/IDBObjectStore.cpp:
+ (WebCore::IDBObjectStore::get):
+ (WebCore::IDBObjectStore::add):
+ (WebCore::IDBObjectStore::put):
+ (WebCore::IDBObjectStore::deleteFunction):
+ (WebCore::IDBObjectStore::clear):
+ (WebCore::IDBObjectStore::openCursor):
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::IDBRequest):
+ (WebCore::IDBRequest::~IDBRequest):
+ (WebCore::IDBRequest::readyState):
+ (WebCore::IDBRequest::dispatchEvent):
+ (WebCore::IDBRequest::enqueueEvent):
+ (WebCore::IDBRequest::source):
+ * storage/IDBRequest.h:
+ * storage/IDBTransaction.cpp:
+ (WebCore::IDBTransaction::onAbort):
+ * storage/IDBTransaction.h:
+
+2011-03-01 Carol Szabo <carol.szabo@nokia.com>
+
+ Reviewed by David Hyatt <hyatt@apple.com>
+
+ content property doesn't support quotes
+ https://bugs.webkit.org/show_bug.cgi?id=6503
+
+ Added full support for quotes as defined by CSS 2.1.
+
+ Tests: fast/css/content/content-quotes-01.html
+ fast/css/content/content-quotes-02.html
+ fast/css/content/content-quotes-03.html
+ fast/css/content/content-quotes-04.html
+ fast/css/content/content-quotes-05.html
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ Added RenderQuote.cpp/h and QuotesData.cpp/h to the dependency lists
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ (WebCore::CSSParser::parseQuotes):
+ * css/CSSParser.h:
+ Added needed stylesheet parsing support for quotes,
+ (no-)open-quote and (no-)close-quote
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ Handled setting of the new quotes RenderStyle property and added
+ handling of quotes for the content property.
+ * css/html.css:
+ (q:before):
+ (q:after):
+ replaced the '"' workaround with open/close-quote
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::dirtyLineBoxesForRenderer):
+ Made RenderQuote behave like RenderCounter.
+ Needed to ensure that the Quote text is calculated before layout,
+ just as it is for RenderCounter.
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::isQuote):
+ * rendering/RenderObjectChildList.cpp:
+ (WebCore::RenderObjectChildList::removeChildNode):
+ (WebCore::RenderObjectChildList::appendChildNode):
+ (WebCore::RenderObjectChildList::insertChildNode):
+ Handled updating of quote depth when renderers are added and removed
+ from the tree.
+ (WebCore::RenderObjectChildList::updateBeforeAfterContent):
+ * rendering/RenderQuote.cpp: Added.
+ (WebCore::adjustDepth):
+ (WebCore::RenderQuote::RenderQuote):
+ (WebCore::RenderQuote::~RenderQuote):
+ (WebCore::RenderQuote::renderName):
+ (WebCore::RenderQuote::placeQuote):
+ (WebCore::RenderQuote::originalText):
+ (WebCore::RenderQuote::computePreferredLogicalWidths):
+ (WebCore::RenderQuote::rendererSubtreeAttached):
+ (WebCore::RenderQuote::rendererRemovedFromTree):
+ (WebCore::RenderQuote::styleDidChange):
+ * rendering/RenderQuote.h: Added.
+ (WebCore::RenderQuote::isQuote):
+ (WebCore::toRenderQuote):
+ * rendering/RenderingAllInOne.cpp:
+ Included RenderQuote.cpp
+ * rendering/style/StyleAllInOne.cpp:
+ Included QuotesData.cpp
+ * rendering/style/ContentData.cpp:
+ (WebCore::ContentData::dataEquivalent):
+ Checked for quotetype identity.
+ (WebCore::ContentData::deleteContent):
+ Accounted for the new QUOTE_TYPE.
+ * rendering/style/ContentData.h:
+ (WebCore::ContentData::isQuote):
+ (WebCore::ContentData::quote):
+ (WebCore::ContentData::setQuote):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::setContent):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::quotes):
+ (WebCore::InheritedFlags::setQuotes):
+ * rendering/style/RenderStyleConstants.h:
+ * rendering/style/StyleRareInheritedData.cpp:
+ (WebCore::StyleRareInheritedData::operator==):
+ Included quotes in equality check.
+ * rendering/style/StyleRareInheritedData.h:
+ Added quotes
+
+2011-03-01 Michael Nordman <michaeln@google.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Alter the relative priorities of network vs fallback namespaces in the appcache.
+ If a resource url is in an appcache's network namespace and fallback namespace, the network
+ namespace wins (with the exception of the special '*' network namespace which does not take
+ priority over the fallback namespace.
+ https://bugs.webkit.org/show_bug.cgi?id=49292
+
+ Test: http/tests/appcache/online-fallback-layering.html
+
+ * loader/appcache/ApplicationCache.cpp:
+ (WebCore::ApplicationCache::isURLInOnlineWhitelist):
+ * loader/appcache/ApplicationCacheHost.cpp:
+ (WebCore::ApplicationCacheHost::shouldLoadResourceFromApplicationCache):
+ (WebCore::ApplicationCacheHost::getApplicationCacheFallbackResource):
+ * loader/appcache/ApplicationCacheStorage.cpp:
+ (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL):
+
+2011-03-01 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Add a handler class for Win32 HANDLE
+ https://bugs.webkit.org/show_bug.cgi?id=55334
+
+ This class will call CloseHandle in the destructor for valid handles.
+
+ * platform/win/Win32Handle.h: Added.
+
+2011-03-01 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Chris Marrin.
+
+ <audio> and <video> should respect private browsing mode
+ https://bugs.webkit.org/show_bug.cgi?id=55287
+ <rdar://problem/9057699>
+
+ No new tests, this is just the plumbing.
+
+ * dom/Document.cpp:
+ (WebCore::Document::privateBrowsingStateDidChange): New.
+ (WebCore::Document::registerForPrivateBrowsingStateChangedCallbacks): Ditto.
+ (WebCore::Document::unregisterForPrivateBrowsingStateChangedCallbacks): Ditto.
+ * dom/Document.h:
+
+ * dom/Element.h:
+ (WebCore::Element::privateBrowsingStateDidChange): New.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::HTMLMediaElement): Register for privacy mode changes.
+ (WebCore::HTMLMediaElement::~HTMLMediaElement): Unregister for privacy mode changes.
+ (WebCore::HTMLMediaElement::loadResource): Tell player current privacy mode.
+ (WebCore::HTMLMediaElement::privateBrowsingStateDidChange): New, call through to MediaPlayer.
+ * html/HTMLMediaElement.h:
+
+ * page/Page.cpp:
+ (WebCore::Page::privateBrowsingStateChanged): Call document()->privateBrowsingStateDidChange.
+
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::setPrivateBrowsingMode): New, call through to media engine.
+ * platform/graphics/MediaPlayer.h:
+
+ * platform/graphics/MediaPlayerPrivate.h:
+ (WebCore::MediaPlayerPrivateInterface::setPrivateBrowsingMode): Declare new interface.
+
+2011-03-01 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Steve Block.
+
+ When an IDBTransaction is aborted, all requests that have not yet fired should fire an ABORT_ERR
+ https://bugs.webkit.org/show_bug.cgi?id=54785
+
+ This patch adds in a lot of sanity checks/ASSERTs to make sure we're doing
+ the right thing and continue to do the right thing. It also modifies EventQueue
+ so that we can cancel an event. To do this efficiently, the vector is now a
+ ListHashSet.
+
+ Canelling the event is harder/messier, but the most deterministic thing to do.
+ To the user, the work isn't done until we fire the onsuccess/onerror handler.
+ So the event (which does fire that) needs to be cancelable.
+
+ transaction-abort.html tests this.
+
+ * dom/EventQueue.cpp:
+ (WebCore::EventQueue::enqueueEvent):
+ (WebCore::EventQueue::cancelEvent):
+ (WebCore::EventQueue::pendingEventTimerFired):
+ (WebCore::EventQueue::dispatchEvent):
+ * dom/EventQueue.h:
+ * dom/ExceptionCode.cpp:
+ * storage/IDBCursor.cpp:
+ (WebCore::IDBCursor::update):
+ (WebCore::IDBCursor::deleteFunction):
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::close):
+ * storage/IDBDatabaseException.h:
+ * storage/IDBIndex.cpp:
+ (WebCore::IDBIndex::openCursor):
+ (WebCore::IDBIndex::openKeyCursor):
+ (WebCore::IDBIndex::get):
+ (WebCore::IDBIndex::getKey):
+ * storage/IDBObjectStore.cpp:
+ (WebCore::IDBObjectStore::get):
+ (WebCore::IDBObjectStore::add):
+ (WebCore::IDBObjectStore::put):
+ (WebCore::IDBObjectStore::deleteFunction):
+ (WebCore::IDBObjectStore::clear):
+ (WebCore::IDBObjectStore::openCursor):
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::IDBRequest):
+ (WebCore::IDBRequest::~IDBRequest):
+ (WebCore::IDBRequest::readyState):
+ (WebCore::IDBRequest::markEarlyDeath):
+ (WebCore::IDBRequest::source):
+ (WebCore::IDBRequest::abort):
+ (WebCore::IDBRequest::onSuccess):
+ (WebCore::IDBRequest::dispatchEvent):
+ (WebCore::IDBRequest::enqueueEvent):
+ * storage/IDBRequest.h:
+ * storage/IDBTransaction.cpp:
+ (WebCore::IDBTransaction::registerRequest):
+ (WebCore::IDBTransaction::unregisterRequest):
+ (WebCore::IDBTransaction::onAbort):
+ * storage/IDBTransaction.h:
+
+2011-03-01 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Steve Block.
+
+ Only IndexedDB's error event should be cancelable
+ https://bugs.webkit.org/show_bug.cgi?id=55413
+
+ * storage/IDBRequest.cpp:
+ (WebCore::createSuccessEvent):
+ * storage/IDBTransaction.cpp:
+ (WebCore::IDBTransaction::onAbort):
+ (WebCore::IDBTransaction::onComplete):
+
+2011-03-01 Jia Pu <jpu@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Remove CorrectionIndicator markers sooner.
+ https://bugs.webkit.org/show_bug.cgi?id=54893
+ <rdar://problem/8997524>
+
+ Test: platform/mac/editing/spelling/removing-underline-after-accepting-autocorrection-using-punctuation.html
+
+ This patch changes the autocorrection behavior on Mac OS X. We want to remove CorrectionIndicator
+ marker after any editing command if the command:
+ 1. is not a SpellingCorrectionCommand itself.
+ 2. is not the command that triggers the autocorrection.
+ This is achieved by adding shouldRetainAutocorrectionIndicator() function to EditCommand. This function returns
+ false for all commands derived from EditCommand, except SpellingCorrectionCommand and TypingCommand. This function
+ always returns true for SpellingCorrectionCommand. For TypingCommand, the return value is determined by member
+ variable m_shouldRetainAutocorrectionIndicator, which can be modified by passing option into the TypingCommand's
+ public functions.
+
+ To avoid constantly searching marker list, we use variable DocumentMarkerController::m_absentMarkerTypeCache
+ to cache whether there is any marker of a particular type.
+
+ This patch also fixes two minor existing bugs.
+
+ 1. We used to show reversion panel for word with CorrectionIndicator marker. This is incorrect because
+ CorrectionIndicator marker can be removed from corrected words. Since all autocorrected words have Replacement
+ marker unless the whole word is deleted, the correct behavior is to show reversion panel for word with Replacement
+ marker, since all autocorrected words have such marker. However, since we don't want to show the reversion panel
+ if an autocorrected word has been edited, we also check to see if the Replacement marker's description is null.
+
+ This works as following:
+ When we apply an autocorrection, we add Replacement marker to corrected word, and store original word
+ as the marker's description. If the user edited the corrected word afterward, we set description to null.
+ So when we decide whether to show a reversion panel, we not only check for the existence of Replacement
+ marker, but also check if description is null.
+
+ 2. Fixed an assertion violation in Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited(), which would
+ occur when deleting the first character in an editable area.
+
+ * dom/DocumentMarker.h: Added m_possiblyExistingMarkerTypes to allow quickly checking whether a marker type is
+ completely in from the document.
+
+ * dom/DocumentMarkerController.cpp: Most of the functions listed here are optimized for early return by checking
+ the return value of possiblyHasMarkers() at beginning.
+ (WebCore::DocumentMarkerController::possiblyHasMarkers):
+ (WebCore::DocumentMarkerController::DocumentMarkerController):
+ (WebCore::DocumentMarkerController::detach):
+ (WebCore::DocumentMarkerController::removeMarkers):
+ (WebCore::DocumentMarkerController::addMarker):
+ (WebCore::DocumentMarkerController::copyMarkers):
+ (WebCore::DocumentMarkerController::markerContainingPoint):
+ (WebCore::DocumentMarkerController::renderedRectsForMarkers):
+ (WebCore::DocumentMarkerController::removeMarkersFromMarkerMapVectorPair):
+ (WebCore::DocumentMarkerController::repaintMarkers):
+ (WebCore::DocumentMarkerController::shiftMarkers):
+ (WebCore::DocumentMarkerController::setMarkersActive):
+ (WebCore::DocumentMarkerController::hasMarkers):
+ (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
+ * dom/DocumentMarkerController.h:
+ * editing/EditCommand.cpp:
+ (WebCore::EditCommand::apply):
+ (WebCore::EditCommand::shouldRetainAutocorrectionIndicator):
+ (WebCore::EditCommand::setShouldRetainAutocorrectionIndicator):
+ * editing/EditCommand.h:
+ * editing/Editor.cpp:
+ (WebCore::Editor::respondToChangedSelection):
+ (WebCore::Editor::appliedEditing):
+ (WebCore::Editor::insertTextWithoutSendingTextEvent):
+ (WebCore::Editor::insertLineBreak):
+ (WebCore::Editor::insertParagraphSeparator):
+ (WebCore::Editor::markMisspellingsAfterTypingToWord):
+ (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
+ (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited):
+ (WebCore::Editor::applyAutocorrectionBeforeTypingIfAppropriate):
+ * editing/Editor.h:
+ * editing/EditorCommand.cpp:
+ (WebCore::executeInsertLineBreak):
+ (WebCore::executeInsertParagraph):
+ (WebCore::executeInsertText):
+ * editing/SpellingCorrectionCommand.cpp:
+ (WebCore::SpellingCorrectionCommand::shouldRetainAutocorrectionIndicator):
+ * editing/SpellingCorrectionCommand.h:
+ * editing/TypingCommand.cpp:
+ (WebCore::TypingCommand::TypingCommand):
+ (WebCore::TypingCommand::deleteSelection):
+ (WebCore::TypingCommand::deleteKeyPressed):
+ (WebCore::TypingCommand::forwardDeleteKeyPressed):
+ (WebCore::TypingCommand::updateSelectionIfDifferentFromCurrentSelection):
+ (WebCore::TypingCommand::insertText):
+ (WebCore::TypingCommand::insertLineBreak):
+ (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
+ (WebCore::TypingCommand::insertParagraphSeparator):
+ * editing/TypingCommand.h:
+ (WebCore::TypingCommand::create):
+ (WebCore::TypingCommand::shouldRetainAutocorrectionIndicator):
+ (WebCore::TypingCommand::setShouldRetainAutocorrectionIndicator):
+ * manual-tests/autocorrection/type-whitespace-to-dismiss-reversion.html:
+
+2011-03-01 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ FEDisplacementMapElement changes doesn't require relayout
+ https://bugs.webkit.org/show_bug.cgi?id=55454
+
+ When the FEDisplacementMapElement receives an update message but the given value remains the same we don't need
+ to relayout the filter.
+
+ No new tests are needed because this modification is covered by the dynamic update tests of FEDisplacementMap.
+
+ * platform/graphics/filters/FEDisplacementMap.cpp:
+ (WebCore::FEDisplacementMap::setXChannelSelector):
+ (WebCore::FEDisplacementMap::setYChannelSelector):
+ (WebCore::FEDisplacementMap::setScale):
+ * platform/graphics/filters/FEDisplacementMap.h:
+ * svg/SVGFEDisplacementMapElement.cpp:
+ (WebCore::SVGFEDisplacementMapElement::setFilterEffectAttribute):
+ (WebCore::SVGFEDisplacementMapElement::svgAttributeChanged):
+ * svg/SVGFEDisplacementMapElement.h:
+
+2011-03-01 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/8902714> Expand ruby text when it is shorter than the ruby base
+ https://bugs.webkit.org/show_bug.cgi?id=55487
+
+ * css/html.css:
+ (ruby > rt): Changed the default text-align value to -webkit-auto to signal
+ the default expansion behavior.
+ * rendering/RenderBlock.h:
+ (WebCore::RenderRubyText::textAlignmentForLine): Made protected.
+ (WebCore::RenderBlock::adjustInlineDirectionLineBounds): Made protected.
+ * rendering/RenderRubyText.cpp:
+ (WebCore::RenderRubyText::textAlignmentForLine): Added. If text-align is
+ -webkit-auto, returns JUSTIFY to allow expansion.
+ (WebCore::RenderRubyText::adjustInlineDirectionLineBounds): Added. If
+ text-align is -webkit-auto, insets the line such that the inset on each side
+ is the half the inter-ideograph expansion, or one ruby character wide,
+ whichever is smaller.
+ * rendering/RenderRubyText.h:
+
+2011-03-01 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Timothy Hatcher.
+
+ WebKit2 needs to be made localizable
+ https://bugs.webkit.org/show_bug.cgi?id=55483
+
+ * English.lproj/Localizable.strings: Copied from Source/WebKit/English.lproj/Localizable.strings.
+ * WebCore.xcodeproj/project.pbxproj:
+ Move Localizable.strings to WebCore.
+
+ * WebCore.exp.in:
+ Add export for localizedString function.
+
+ * platform/LocalizedStrings.h:
+ * platform/mac/LocalizedStringsMac.mm: Added.
+ Add function to get localized version of a string from the WebCore bundle.
+
+2011-03-01 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Timothy Hatcher.
+
+ All Console Messages should be passed to ChromeClients.
+ https://bugs.webkit.org/show_bug.cgi?id=54926
+
+ Do not filter the message type here, allow clients
+ to filter and deal with the different message types.
+
+ * page/Console.cpp:
+ (WebCore::Console::addMessage):
+
+2011-02-23 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Viewport parsing no longer accepts "1.0;" value as valid.
+ https://bugs.webkit.org/show_bug.cgi?id=53705
+
+ When parsing numeric values, the "css-viewport" spec says
+ to use the number prefix, and the non numeric part of the
+ string can be ignored. This matches our behavior before
+ r67376. The change was that checking the error out condition
+ of String::toFloat doesn't necessarily mean that there
+ was a non-numeric prefix. This patch checks if there was
+ or wasn't a non-numeric prefix.
+
+ There is a console warning in any case where a numeric
+ value is not parsed cleanly. There is an error warning
+ when it is not a number at all, and a tip warning when
+ it has been truncated.
+
+ Error messages are slightly improved to provide more
+ context, both the key and value, when an error happens.
+
+ Test: fast/viewport/viewport-129.html
+
+ * dom/ViewportArguments.cpp:
+ (WebCore::numericPrefix):
+ (WebCore::findSizeValue):
+ (WebCore::findScaleValue):
+ (WebCore::findUserScalableValue):
+ (WebCore::findTargetDensityDPIValue):
+ (WebCore::viewportErrorMessageTemplate):
+ (WebCore::viewportErrorMessageLevel):
+ (WebCore::reportViewportWarning):
+ * dom/ViewportArguments.h:
+
+2011-03-01 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: InjectedScript.setPropertyValue doesn't work.
+ https://bugs.webkit.org/show_bug.cgi?id=55475
+
+ * inspector/InjectedScript.cpp:
+ (WebCore::InjectedScript::setPropertyValue):
+
+2011-03-01 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ Remove unused JavaString::uchars()
+ https://bugs.webkit.org/show_bug.cgi?id=55465
+
+ No new tests, removing dead code only.
+
+ * bridge/jni/JNIBridge.h:
+ * bridge/jni/jsc/JavaStringJSC.h:
+ (JSC::Bindings::JavaStringImpl::utf8):
+ * bridge/jni/v8/JavaStringV8.h:
+
+2011-03-01 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Extremely slow DOM search in GMail
+ https://bugs.webkit.org/show_bug.cgi?id=55456
+
+ The solution comprises three major parts:
+ - avoid multiple invocations of highlightSearchResults(), one per each nodeIds chunk.
+ - cache highlighted node's innerHTML so that no extra _nodeTitleInfo() calls will be needed.
+ - replace hand-written Text nodes iteration with a snapshot-based ".//text()" XPathResult.
+
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.searchCanceled):
+ (WebInspector.ElementsPanel.prototype.addNodesToSearchResult):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement.prototype.highlightSearchResults):
+ (WebInspector.ElementsTreeElement.prototype.updateTitle):
+ ():
+ * inspector/front-end/utilities.js:
+ ():
+
+2011-03-01 Adam Roben <aroben@apple.com>
+
+ Fix multiple-definition linker warnings introduced by r79978 on Windows
+
+ * rendering/RenderingAllInOne.cpp: Removed TextControlInnerElements.cpp, as it is now being
+ compiled separately.
+
+2011-03-01 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ [Qt] Clean up the project files and move common options to WebKit.pri.
+
+ No new tests needed.
+
+ * WebCore.pri: Move common options to WebKit.pri.
+ * WebCore.pro: Ditto.
+
+2011-03-01 Steve Block <steveblock@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ JNI code in Java bridge is not correctly guarded
+ https://bugs.webkit.org/show_bug.cgi?id=55459
+
+ No new tests, build fix only.
+
+ * bridge/jni/v8/JNIBridgeV8.cpp:
+ * bridge/jni/v8/JNIBridgeV8.h:
+ * bridge/jni/v8/JNIUtilityPrivate.cpp:
+ * bridge/jni/v8/JNIUtilityPrivate.h:
+ * bridge/jni/v8/JavaClassV8.cpp:
+ * bridge/jni/v8/JavaClassV8.h:
+ * bridge/jni/v8/JavaInstanceV8.cpp:
+ * bridge/jni/v8/JavaInstanceV8.h:
+ * bridge/jni/v8/JavaNPObjectV8.cpp:
+ * bridge/jni/v8/JavaNPObjectV8.h:
+
+2011-03-01 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ Bridge.h should not include BridgeJSC.h
+ https://bugs.webkit.org/show_bug.cgi?id=55212
+
+ Instead, BridgeJSC.h should include Bridge.h and code should include
+ BridgeJSC.h as appropriate.
+
+ This prevents ports that use V8 from having to include JSC-specific
+ files, even if the contents of those files are guarded.
+
+ No new tests, cleanup only.
+
+ * bindings/js/JSPluginElementFunctions.cpp:
+ * bindings/js/ScriptControllerBrew.cpp:
+ * bindings/js/ScriptControllerGtk.cpp:
+ * bindings/js/ScriptControllerHaiku.cpp:
+ * bindings/js/ScriptControllerQt.cpp:
+ * bindings/js/ScriptControllerMac.mm:
+ * bindings/js/ScriptControllerWin.cpp:
+ * bindings/js/ScriptControllerWx.cpp:
+ * bindings/js/ScriptInstance.h:
+ * bindings/objc/WebScriptObject.mm:
+ * bridge/Bridge.h:
+ * bridge/c/c_class.h:
+ * bridge/c/c_instance.h:
+ * bridge/c/c_runtime.h:
+ * bridge/jni/jsc/JNIBridgeJSC.h:
+ * bridge/jni/jsc/JavaInstanceJSC.h:
+ * bridge/jsc/BridgeJSC.h:
+ * bridge/objc/objc_runtime.h:
+ * bridge/qt/qt_class.h:
+ * bridge/qt/qt_instance.h:
+ * bridge/qt/qt_pixmapruntime.h:
+ * bridge/qt/qt_runtime.h:
+ * bridge/runtime_array.h:
+ * bridge/runtime_method.h:
+ * bridge/runtime_object.h:
+ * bridge/runtime_root.cpp:
+ * bridge/testbindings.cpp:
+ * bridge/testbindings.mm:
+ * bridge/testqtbindings.cpp:
+ * page/win/FrameWin.cpp:
+ * platform/graphics/wince/MediaPlayerProxy.cpp:
+ * plugins/PluginView.cpp:
+ * plugins/PluginViewNone.cpp:
+ * plugins/gtk/PluginViewGtk.cpp:
+ * plugins/mac/PluginViewMac.mm:
+ * plugins/qt/PluginViewQt.cpp:
+ * plugins/symbian/PluginViewSymbian.cpp:
+ * plugins/win/PluginViewWin.cpp:
+
+2011-03-01 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Antti Koivisto.
+
+ SVG 1.1 2nd Edition color-prop-05-t.svg exposes bug in 'currentColor' handling
+ https://bugs.webkit.org/show_bug.cgi?id=54800
+
+ Wrong handling of currentColor on inherit
+ https://bugs.webkit.org/show_bug.cgi?id=38102
+
+ Stop storing RefPtr<SVGPaint> objects in the SVGRenderStyle for fill/stroke. These are the last
+ two objects that held references to CSSValues, they're all gone now, aligning better with RenderStyle.
+ It's also dangerous, as a SVGPaint object can be shared by multiple SVGRenderStyles (MappedAttribute will
+ once create a CSSStyleDeclaration for fill="red" and reuse it where possible), and it was easy to
+ accidently mutate the object, affecting multiple styles. Instead store a Color, an URI and a paint
+ type in SVGRenderStyle, enough to create a SVGPaint object, if needed (eg for computed styles).
+
+ <g color="green"><rect fill="currentColor"/> already worked fine in trunk, but
+ <g fill="currentColor" color="green"><rect color="red"/> procuded a red rectangle.
+
+ In order to fix to bug we have to resolve all currentColor values for SVGPaint objects, in SVGCSSStyleSelector,
+ as it's already done for SVGColor objects (stop-color, flood-color, etc.) instead of in RenderSVGResource::fill/strokePaintingResource,
+ when trying to use the paint server. The correct "color" value that should be used from the RenderStyle, is directly
+ available in CSSStyleSelector: in applyProperty m_style->color() gives the desired value. In CSSStyleSelector it's handled
+ exactly this way for non-SVG currentColor properties. Also fix computed styles, which did not resolve currentColor for SVGPaint/SVGColor.
+
+ A previous patch implemented the SVGPaint/SVGColor API. SVG demands these CSSValues to be mutable. Introduce
+ CSSMutableValue, which extends CSSValue by a Node pointer, and let SVGPaint/SVGColor inherit from it.
+ Mutating a SVGPaint/SVGColor object now takes immediate effect, which is reflected in the inline style / computed style.
+ (Note that getPresentationAttribute() already takes care of removing the CSSValue from the mapped attribute cache, so that it's no longer shared.)
+
+ Add several new tests covering the patch.
+
+ Tests: svg/W3C-SVG-1.1-SE/color-prop-05-t.svg
+ svg/animations/animate-color-fill-currentColor.html
+ svg/custom/SVGPaint-mutate-attribute.svg
+ svg/custom/SVGPaint-mutate-inline-style.svg
+
+ * GNUMakefile.am: Add CSSMutableValue.h
+ * WebCore.gypi: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * css/CSSMutableStyleDeclaration.cpp: Reset the Node pointer in all CSSMutableValues belonging to this style declaration.
+ (WebCore::CSSMutableStyleDeclaration::~CSSMutableStyleDeclaration):
+ * css/CSSMutableStyleDeclaration.h: Add destructor.
+ * css/CSSMutableValue.h: Added.
+ (WebCore::CSSMutableValue::CSSMutableValue):
+ (WebCore::CSSMutableValue::~CSSMutableValue):
+ (WebCore::CSSMutableValue::isMutableValue):
+ (WebCore::CSSMutableValue::node):
+ (WebCore::CSSMutableValue::setNode):
+ (WebCore::CSSMutableValue::setNeedsStyleRecalc):
+ * css/CSSStyleDeclaration.cpp:
+ (WebCore::CSSStyleDeclaration::getPropertyCSSValue): Set the Node object of a CSSMutableValue to the Node, this style declaration belongs to.
+ * css/CSSValue.h:
+ (WebCore::CSSValue::isMutableValue): Return false, default.
+ * css/SVGCSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::adjustSVGPaintForCurrentColor): Add helper function, resolving currentColor values for SVGPaint objects.
+ (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): Use currentColorOrValidColor/adjustSVGPaintForCurrentColor to resolve SVGColor/SVGPaint values.
+ * css/SVGCSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applySVGProperty): Store fill/stroke uri, color, paint type seperated in SVGRenderStyle, don't store the full SVGPaint object anymore.
+ * rendering/style/SVGRenderStyle.cpp:
+ (WebCore::SVGRenderStyle::diff): Adapt to SVGPaint changes.
+ * rendering/style/SVGRenderStyle.h: Ditto.
+ (WebCore::SVGRenderStyle::initialFillOpacity):
+ (WebCore::SVGRenderStyle::initialFillPaintType):
+ (WebCore::SVGRenderStyle::initialFillPaintColor):
+ (WebCore::SVGRenderStyle::initialFillPaintUri):
+ (WebCore::SVGRenderStyle::initialStrokeOpacity):
+ (WebCore::SVGRenderStyle::initialStrokePaintType):
+ (WebCore::SVGRenderStyle::initialStrokePaintColor):
+ (WebCore::SVGRenderStyle::initialStrokePaintUri):
+ (WebCore::SVGRenderStyle::initialStrokeMiterLimit):
+ (WebCore::SVGRenderStyle::initialStopOpacity):
+ (WebCore::SVGRenderStyle::initialFloodOpacity):
+ (WebCore::SVGRenderStyle::setFillPaint):
+ (WebCore::SVGRenderStyle::setStrokePaint):
+ (WebCore::SVGRenderStyle::fillPaintType):
+ (WebCore::SVGRenderStyle::fillPaintColor):
+ (WebCore::SVGRenderStyle::fillPaintUri):
+ (WebCore::SVGRenderStyle::strokePaintType):
+ (WebCore::SVGRenderStyle::strokePaintColor):
+ (WebCore::SVGRenderStyle::strokePaintUri):
+ (WebCore::SVGRenderStyle::hasStroke):
+ (WebCore::SVGRenderStyle::hasFill):
+ * rendering/style/SVGRenderStyleDefs.cpp: Ditto.
+ (WebCore::StyleFillData::StyleFillData):
+ (WebCore::StyleFillData::operator==):
+ (WebCore::StyleStrokeData::StyleStrokeData):
+ (WebCore::StyleStrokeData::operator==):
+ * rendering/style/SVGRenderStyleDefs.h: Ditto.
+ * rendering/svg/RenderSVGResource.cpp: Ditto.
+ (WebCore::requestPaintingResource):
+ * rendering/svg/RenderSVGResourceClipper.cpp: Ditto.
+ (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
+ * rendering/svg/SVGResources.cpp: Ditto.
+ (WebCore::paintingResourceFromSVGPaint):
+ (WebCore::SVGResources::buildCachedResources):
+ * svg/SVGColor.cpp: Call setNeedsStyleRecalc() after mutating the object.
+ (WebCore::SVGColor::setRGBColor):
+ (WebCore::SVGColor::setRGBColorICCColor):
+ (WebCore::SVGColor::setColor):
+ * svg/SVGColor.h:
+ * svg/SVGPaint.cpp: Ditto.
+ (WebCore::SVGPaint::setUri):
+ (WebCore::SVGPaint::setPaint):
+ * svg/SVGPaint.h:
+
+2011-03-01 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Text editor] Handle decorated lines in the editor
+ https://bugs.webkit.org/show_bug.cgi?id=55373
+
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._startEditing):
+ (WebInspector.SourceFrame.prototype._endEditing):
+ (WebInspector.SourceFrame.prototype._createTextViewer):
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextEditorGutterPanel.prototype.textChanged):
+ (WebInspector.TextEditorGutterChunk.prototype.addDecoration):
+ (WebInspector.TextEditorGutterChunk.prototype.removeDecoration):
+ (WebInspector.TextEditorMainPanel.prototype.set readOnly):
+ (WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):
+ (WebInspector.TextEditorMainPanel.prototype._handleDOMSubtreeModified):
+ (WebInspector.TextEditorMainPanel.prototype._markDirtyLines):
+ (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
+ (WebInspector.TextEditorMainPanel.prototype._removeDecorationsInRange):
+ (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
+ (WebInspector.TextEditorMainPanel.prototype._collectLinesFromDiv):
+ (WebInspector.TextEditorMainChunk.prototype.addDecoration):
+ (WebInspector.TextEditorMainChunk.prototype.removeDecoration):
+ (WebInspector.TextEditorMainChunk.prototype.removeAllDecorations):
+ (WebInspector.TextEditorMainChunk.prototype.get decorated):
+
+2011-03-01 Philippe Normand <pnormand@igalia.com>
+
+ Unreviewed GTK build fix after r79978
+
+ * GNUmakefile.am:
+
+2011-03-01 Andras Becsi <abecsi@webkit.org>
+
+ Unreviewed build fix.
+
+ [Qt] Fix minimal build.
+
+ No new tests needed.
+
+ * WebCore.pri: Is included in WebKit2.pro, so XP_UNIX can remain here.
+
+2011-03-01 anthony taranto <anthony.taranto@gmail.com>
+
+ Return undefined value from ScriptController::evaluate(), allowing the
+ caller to distinguish between an error and an undefined return value.
+ https://bugs.webkit.org/show_bug.cgi?id=51528
+
+ * bindings/v8/ScriptController.cpp:
+
+2011-03-01 Roland Steiner <rolandsteiner@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Bug 54853 - Move TextControlInnerElements from WebCore/rendering to WebCore/html/shadow
+ https://bugs.webkit.org/show_bug.cgi?id=54853
+
+ Moving the files from rendering to html/shadow, with the exception of
+ the class RenderTextControlInnerBlock, which I moved to RenderTextControlSingleLine
+ (this place is not ideal, but only a temporary state during the larger refactoring
+ for <input>).
+
+ No new tests. (refactoring)
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/shadow/TextControlInnerElements.cpp: Copied from Source/WebCore/rendering/TextControlInnerElements.cpp.
+ * html/shadow/TextControlInnerElements.h: Copied from Source/WebCore/rendering/TextControlInnerElements.h.
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlInnerBlock::positionForPoint):
+ * rendering/RenderTextControlSingleLine.h:
+ (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
+ (WebCore::RenderTextControlInnerBlock::hasLineIfEmpty):
+ * rendering/TextControlInnerElements.cpp: Removed.
+ * rendering/TextControlInnerElements.h: Removed.
+
+2011-03-01 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ applyInlineStyleToPushDown and removeInlineStyleFromElement should take EditingStyle
+ https://bugs.webkit.org/show_bug.cgi?id=55338
+
+ Deployed EditingStyle in applyInlineStyleToPushDown and removeInlineStyleFromElement.
+
+ Also added a convenience function EditingStyle::setProperty, which lazily instantiates
+ new CSSMutableStyleDeclaration for m_mutableStyle.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Takes EditingStyle*.
+ (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Ditto.
+ (WebCore::ApplyStyleCommand::removeCSSStyle): Ditto.
+ (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls the above three functions.
+ (WebCore::ApplyStyleCommand::removeInlineStyle): Calls pushDownInlineStyleAroundNode.
+ * editing/ApplyStyleCommand.h:
+ * editing/EditingStyle.cpp:
+ (WebCore::HTMLElementEquivalent::addToStyle): Takes EditingStyle*; calls EditingStyle::setProperty.
+ (WebCore::HTMLAttributeEquivalent::addToStyle): Ditto.
+ (WebCore::EditingStyle::setProperty): Added. This member function lazily instantiates
+ new CSSMutableStyleDeclaration for m_mutableStyle.
+ (WebCore::EditingStyle::conflictsWithInlineStyleOfElement): Takes EditingStyle*.
+ (WebCore::EditingStyle::conflictsWithImplicitStyleOfElement): Ditto.
+ (WebCore::EditingStyle::extractConflictingImplicitStyleOfAttributes): Ditto.
+ * editing/EditingStyle.h: Added HTMLElementEquivalent and HTMLAttributeEquivalent as friends.
+ (WebCore::EditingStyle::conflictsWithInlineStyleOfElement): Ditto.
+ * editing/InsertTextCommand.cpp: Removed unnecessary includes.
+ * editing/RemoveCSSPropertyCommand.h: Ditto.
+
+2011-02-28 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed: chromium rebuilds XMLViewer after noop. Fixed gyp file.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-02-28 David Levin <levin@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ KURL should expose a referrer property.
+ https://bugs.webkit.org/show_bug.cgi?id=55415
+
+ No change in functionality so no new tests.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::setOutgoingReferrer): Refactor to put the majority
+ of functionality in KURL::strippedForUseAsReferrer() so that this code can
+ be more easily reused.
+ * platform/KURL.cpp:
+ (WebCore::KURL::strippedForUseAsReferrer): Converts the url to a string
+ which is suitable for use as a referrer.
+ * platform/KURL.h:
+
+2011-02-28 Chang Shu <cshu@webkit.org>
+
+ Reviewed by Ryosuke Niwa.
+
+ Remove the support of Frame::isContentEditable and its dependencies.
+ https://bugs.webkit.org/show_bug.cgi?id=54292
+
+ Frame::isContentEditable is currently based on two things: Editor::clientIsEditable and
+ Document::inDesignMode. In fact, it should only rely on Document::inDesignMode. As a result,
+ Editor::clientIsEditable and its client-side implementation can be removed.
+
+ * WebCore.exp.in:
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::isReadOnly):
+ * editing/Editor.cpp:
+ * editing/Editor.h:
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::setSelectionFromNone):
+ * html/HTMLElement.cpp:
+ (WebCore::HTMLElement::isContentEditable):
+ (WebCore::HTMLElement::isContentRichlyEditable):
+ * page/DragController.cpp:
+ (WebCore::DragController::operationForLoad):
+ * page/EditorClient.h:
+ * page/Frame.cpp:
+ * page/Frame.h:
+
+2011-02-28 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Number type input cannot be set to empty string if it has an initial value
+ https://bugs.webkit.org/show_bug.cgi?id=53744
+
+ We need to distinguish null strings and empty strings for
+ InputElementData::value. So InputType::sanitizeValue() also needs to
+ take care of it.
+
+ * dom/InputElement.h: Add a comment to InputElementData::value and
+ setValue about null strings.
+ * html/InputType.h: Add a comment to sanitizeValue about null strings.
+ * html/NumberInputType.cpp:
+ (WebCore::NumberInputType::sanitizeValue): Returns a null string if the
+ proposed value is a null string. Returning an empty string if the
+ proposed value is not a number.
+
+2011-02-28 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Number type input should not handle mouse wheel events if it has no focus.
+ https://bugs.webkit.org/show_bug.cgi?id=53638
+
+ * html/TextFieldInputType.cpp:
+ (WebCore::TextFieldInputType::handleWheelEventForSpinButton): Check focused().
+
+2011-02-28 Noel Gordon <noel.gordon@gmail.com>
+ Reviewed by James Robinson.
+
+ [chromium] GradientSkia: use the common Gradient stop sorting methods.
+ https://bugs.webkit.org/show_bug.cgi?id=54625
+
+ Remove a FIXME: call the Gradient.cpp stop storting routines, no need
+ to duplicate that code herein.
+
+ No change in behavior, so no new tests.
+
+ * platform/graphics/skia/GradientSkia.cpp:
+ (WebCore::Gradient::platformGradient):
+
+2011-02-28 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ JNI code should include <jni.h> on non-OSX platforms.
+ https://bugs.webkit.org/show_bug.cgi?id=55219
+
+ On Mac we need to include <JavaVM/jni.h> as this is a framework
+ include. We include jni.h through JNIUtility.h to minimize the
+ number of ifdefs.
+
+ No new tests, build fix only.
+
+ * WebCore.xcodeproj/project.pbxproj
+ * bridge/jni/JNIUtility.h:
+ * bridge/jni/jni_jsobject.h:
+ * bridge/jni/jsc/JNIBridgeJSC.h:
+ * bridge/jni/jsc/JavaInstanceJSC.h:
+ * bridge/jni/v8/JavaInstanceV8.h:
+
+2011-02-28 Nebojsa Sabovic <neb@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Pepper plugins render upside down
+ https://bugs.webkit.org/show_bug.cgi?id=55101
+
+ No layout tests for pepper plugins (yet).
+
+ * platform/graphics/chromium/PluginLayerChromium.h:
+
+2011-02-28 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Follow HTML5 spec for document.open() a little more closely
+ https://bugs.webkit.org/show_bug.cgi?id=55392
+
+ See: 3.5.1.4 at http://www.whatwg.org/specs/web-apps/current-work/#dom-document-open.
+
+ The second return check matches the spec. The first return check (isExecutingScript())
+ was left in place because without it, fast/tokenizer/write-external-script-open.html
+ would fail. It also possible there is a spec bug because FF4 crashes on that test and
+ IE9 prints "FAILURE." The isLoadingMainResource() check was removed because the main
+ resource is always loading while parser->isParsing().
+
+ Test: fast/parser/double-write-from-closed-iframe.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::open):
+
+2011-02-28 Avi Drissman <avi@google.com>
+
+ Reviewed by James Robinson.
+
+ WebCursorInfo needs to match enums in platform/Cursor.h
+ https://bugs.webkit.org/show_bug.cgi?id=55094
+
+ * platform/chromium/CursorChromium.cpp:
+ (WebCore::grabCursor):
+ (WebCore::grabbingCursor):
+ * platform/chromium/PlatformCursor.h:
+
+2011-02-28 Jia Pu <jpu@apple.com>
+
+ Reviewed by Darin Adler.
+
+ [Mac] Make "Change back to …" contextual menu item work with new autocorrection.
+ https://bugs.webkit.org/show_bug.cgi?id=55396
+ <rdar://problem/8836093>
+
+ The change in InlineTextBox.cpp fixes a bug, where the rectangle of Replacement marker isn't
+ calculated. We need this to do hit test when deciding whether to show "Change back to ..." on
+ contextual menu.
+
+ The change in Editor.cpp is for notifying spellchecker about the reversion whenever "Change
+ back to ..." is clicked.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::changeBackToReplacedString):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::paintDocumentMarkers):
+
+2011-02-28 Victoria Kirst <vrk@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Fall back to texSubImage2D when mapTexSubImage2D fails in VideoLayerChromium
+ https://bugs.webkit.org/show_bug.cgi?id=55269
+
+ Mesa does not support mapTexSubImage2D, so this change lets
+ GPU-accelerated video work with DRT layout tests.
+
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::updateTexture):
+
+2011-02-28 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text. Change staticX and staticY
+ to be staticInlinePosition and staticBlockPosition. Patch all of the computations involving these variables to be writing
+ mode aware. Mixed writing modes are not yet supported.
+
+ Added new tests in fast/block/positioning/auto.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::adjustPositionedBlock):
+ (WebCore::RenderBlock::layoutPositionedObjects):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::startOffsetForLine):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::appendRunsForObject):
+ (WebCore::setStaticPositions):
+ (WebCore::RenderBlock::skipTrailingWhitespace):
+ (WebCore::RenderBlock::skipLeadingWhitespace):
+ (WebCore::RenderBlock::findNextLineBreak):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::positionLineBox):
+ (WebCore::computeInlineStaticDistance):
+ (WebCore::RenderBox::computePositionedLogicalWidth):
+ (WebCore::computeBlockStaticDistance):
+ (WebCore::RenderBox::computePositionedLogicalHeight):
+ (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
+ (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
+ * rendering/RenderBoxModelObject.h:
+ (WebCore::RenderBoxModelObject::borderAndPaddingLogicalLeft):
+ (WebCore::RenderBoxModelObject::borderAndPaddingStart):
+ (WebCore::RenderBoxModelObject::borderLogicalLeft):
+ (WebCore::RenderBoxModelObject::borderLogicalRight):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutHorizontalBox):
+ (WebCore::RenderFlexibleBox::layoutVerticalBox):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::relativePositionedInlineOffset):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::RenderLayer):
+ * rendering/RenderLayer.h:
+ (WebCore::RenderLayer::staticInlinePosition):
+ (WebCore::RenderLayer::staticBlockPosition):
+ (WebCore::RenderLayer::setStaticInlinePosition):
+ (WebCore::RenderLayer::setStaticBlockPosition):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::hasAutoLeftAndRight):
+ (WebCore::InheritedFlags::hasAutoTopAndBottom):
+ (WebCore::InheritedFlags::hasStaticInlinePosition):
+ (WebCore::InheritedFlags::hasStaticBlockPosition):
+
+2011-02-28 Balazs Kelemen <kbalazs@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ [Qt][WK2] Plugin initialization
+ https://bugs.webkit.org/show_bug.cgi?id=48127
+
+ No function change so no new tests.
+
+ * WebCore.pri: Lift the definition of the XP_UNIX macro
+ from WebCore.pri to WebKit.pri to apply it to WebKit2 as well.
+
+2011-02-28 Dean Jackson <dino@apple.com>
+
+ Reviewed by Eric Carlson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=55239
+
+ Allow webkitEnterFullScreen to be called from outside
+ a user gesture, but only when the correct restrictions
+ have been lifted in WebCore. Add a new restriction type
+ for this situation. Meanwhile, expose the current
+ restrictions externally from HTMLMediaElement, so that
+ clients can easily set restrictions on their port.
+
+ No new tests. This doesn't change existing behavior. Some
+ WebKit clients may lift the restriction.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::HTMLMediaElement):
+ - ensure restrictions initialize with fullscreen restricted
+ * html/HTMLMediaElement.h:
+ (WebCore::HTMLMediaElement::requireUserGestureForLoad):
+ (WebCore::HTMLMediaElement::requireUserGestureForRateChange):
+ (WebCore::HTMLMediaElement::requireUserGestureForFullScreen):
+ (WebCore::HTMLMediaElement::setBehaviorRestrictions):
+ - new methods to expose the current restrictions
+ * html/HTMLVideoElement.cpp:
+ (WebCore::HTMLVideoElement::webkitEnterFullscreen):
+
+2011-02-28 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r78789.
+ http://trac.webkit.org/changeset/78789
+ https://bugs.webkit.org/show_bug.cgi?id=55409
+
+ Incorrect canvas fallback implementation (Requested by
+ inferno-sec on #webkit).
+
+ * accessibility/AccessibilityObject.h:
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
+ (WebCore::AccessibilityRenderObject::canHaveChildren):
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (atkRole):
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::isFocusable):
+ * rendering/RenderHTMLCanvas.cpp:
+ * rendering/RenderHTMLCanvas.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::repaint):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::write):
+
+2011-02-28 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r79425.
+ http://trac.webkit.org/changeset/79425
+ https://bugs.webkit.org/show_bug.cgi?id=55406
+
+ Incorrect canvas fallback implementation. (Requested by
+ inferno-sec on #webkit).
+
+ * rendering/RenderHTMLCanvas.cpp:
+ (WebCore::RenderHTMLCanvas::nodeAtPoint):
+
+2011-02-28 Adam Klein <adamk@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ [fileapi] Implement LocalFileSystem.resolveLocalFileSystemURI
+ https://bugs.webkit.org/show_bug.cgi?id=54774
+
+ See http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#methods
+ for the spec implemented by this patch.
+
+ Test: fast/filesystem/resolve-uri.html
+
+ * fileapi/DOMFileSystemBase.cpp:
+ (WebCore::DOMFileSystemBase::crackFileSystemURL):
+ * fileapi/DOMFileSystemBase.h:
+ Added constants for "temporary" and "persistent".
+ * fileapi/EntryBase.cpp:
+ Replace hardcoded strings with aforementioned constants.
+ * fileapi/FileSystemCallbacks.cpp:
+ (WebCore::ResolveURICallbacks::create):
+ (WebCore::ResolveURICallbacks::ResolveURICallbacks):
+ (WebCore::ResolveURICallbacks::didOpenFileSystem):
+ Chains a call of openFileSystem to calls to getDirectory/getFile.
+ * fileapi/FileSystemCallbacks.h:
+ * fileapi/LocalFileSystem.cpp:
+ (WebCore::LocalFileSystem::readFileSystem):
+ * fileapi/LocalFileSystem.h:
+ Remove size argument from readFileSystem()
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::resolveLocalFileSystemURI):
+ * page/DOMWindow.h:
+ * page/DOMWindow.idl:
+
+2011-02-28 Alexis Menard <alexis.menard@openbossa.org>
+
+ Reviewed by Oliver Hunt.
+
+ Build fix for Qt port after API changes of http://trac.webkit.org/changeset/79904.
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtConnectionObject::execute):
+
+2011-02-25 David Levin <levin@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Remove some duplicate code from KURLGoogle.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=55266
+
+ No change in functionality so no new tests.
+
+ * WebCore.gyp/WebCore.gyp: Make KURL.cpp get built by Chromium.
+ * platform/KURL.cpp:
+ Simply moved #include's and some code that was identical (i.e.
+ had been copied) to KURLGoogle.cpp outside of ifdef !USE(GOOGLEURL)
+ to reduce duplication.
+ * platform/KURLGoogle.cpp:
+ Removed the duplicate code.
+
+2011-02-28 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Gavin Barraclough.
+
+ Make ScopeChainNode GC allocated
+ https://bugs.webkit.org/show_bug.cgi?id=55283
+
+ Update WebCore to deal with the absence of the ScopeChain
+ class.
+
+ * ForwardingHeaders/runtime/ScopeChain.h: Added.
+ * bindings/js/JSHTMLElementCustom.cpp:
+ (WebCore::JSHTMLElement::pushEventHandlerScope):
+ * bindings/js/JSJavaScriptCallFrameCustom.cpp:
+ (WebCore::JSJavaScriptCallFrame::scopeChain):
+ (WebCore::JSJavaScriptCallFrame::scopeType):
+ * bindings/js/JSLazyEventListener.cpp:
+ (WebCore::JSLazyEventListener::initializeJSFunction):
+ * bindings/js/JSMainThreadExecState.h:
+ (WebCore::JSMainThreadExecState::evaluate):
+ * bindings/js/JSNodeCustom.cpp:
+ (WebCore::JSNode::pushEventHandlerScope):
+ * bindings/js/JavaScriptCallFrame.cpp:
+ (WebCore::JavaScriptCallFrame::scopeChain):
+ * bindings/js/JavaScriptCallFrame.h:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bridge/c/c_class.cpp:
+ * bridge/c/c_runtime.cpp:
+ * bridge/jni/JNIBridge.cpp:
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtConnectionObject::execute):
+ * plugins/PluginViewNone.cpp:
+
+2011-02-28 Chang Shu <cshu@webkit.org>
+
+ Reviewed by Adele Peterson.
+
+ REGRESSION (r79762): Items in <select multiple> have focus rings, but shouldn't
+ https://bugs.webkit.org/show_bug.cgi?id=55323
+
+ Draw focus ring on selected items only if spatial navigation is enabled.
+
+ Test: fast/forms/select-listbox-multiple-no-focusring.html
+
+ * rendering/RenderBlock.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::addFocusRingRects):
+
+2011-02-28 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Anders Carlsson.
+
+ We can cancel the plugin load and fail with error before m_manualStream
+ got a chance to initialize in PluginView::didReceiveResponse. This can
+ happen when we run pending document onload events during plugin load that
+ remove the frame from underneath. So, change the assert into a null check.
+ https://bugs.webkit.org/show_bug.cgi?id=55307
+
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::didFail):
+
+2011-02-28 Alexis Menard <alexis.menard@openbossa.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Build fix for Intel ICC Compiler.
+ https://bugs.webkit.org/show_bug.cgi?id=55221
+
+ The virtual inheritance seems to confuse ICC.
+ Anything that links with webkit has an undefined reference otherwise.
+
+ * svg/SVGTransformable.cpp:
+ (WebCore::SVGTransformable::~SVGTransformable):
+ * svg/SVGTransformable.h:
+
+2011-02-28 Sergio Villar Senin <svillar@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [Gtk] Resource size is incorrectly reported to WebCore
+ https://bugs.webkit.org/show_bug.cgi?id=53228
+
+ When calling didReceiveData we are sending an invalid value for
+ lengthReceived. Sometimes we were even passing a boolean value instead of the
+ expected integer. We should pass the size of the received data instead of the
+ total amount of data received.
+
+ * platform/network/ResourceHandleInternal.h:
+ (WebCore::ResourceHandleInternal::ResourceHandleInternal):
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::gotChunkCallback):
+ (WebCore::sendRequestCallback):
+ (WebCore::readCallback):
+
+2011-02-28 Laszlo Gombos <laszlo.1.gombos@nokia.com>
+
+ Reviewed by Dan Bernstein.
+
+ Cleanup the include guard form an Objective-C files
+ https://bugs.webkit.org/show_bug.cgi?id=55379
+
+ Normally Objective-C files do not need include guard.
+ r76916 introduced an include guard in EmptyProtocolDefinitions.h.
+ The guard is no longer needed after r76991.
+
+ No new tests as there is no new functionality.
+
+ * platform/mac/EmptyProtocolDefinitions.h:
+
+2011-02-28 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [REGRESSION] no resources in scripts panel because debugger is enabled too early.
+ https://bugs.webkit.org/show_bug.cgi?id=55389
+
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::populateScriptObjects):
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::setFrontend):
+ (WebCore::InspectorDebuggerAgent::enableDebuggerAfterShown):
+ * inspector/InspectorDebuggerAgent.h:
+
+2011-02-28 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r79877.
+ http://trac.webkit.org/changeset/79877
+ https://bugs.webkit.org/show_bug.cgi?id=55388
+
+ Breaks chromium build (Requested by antonm_ on #webkit).
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::updateContentsIfDirty):
+ (WebCore::ContentLayerChromium::resizeUploadBufferForImage):
+ (WebCore::ContentLayerChromium::resizeUploadBuffer):
+ (WebCore::SkBitmapConditionalAutoLockerPixels::SkBitmapConditionalAutoLockerPixels):
+ (WebCore::SkBitmapConditionalAutoLockerPixels::~SkBitmapConditionalAutoLockerPixels):
+ (WebCore::SkBitmapConditionalAutoLockerPixels::lockPixels):
+ (WebCore::ContentLayerChromium::updateTextureIfNeeded):
+ (WebCore::ContentLayerChromium::draw):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContentsIfDirty):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::contentRectToTileIndices):
+ (WebCore::LayerTilerChromium::update):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ * platform/graphics/chromium/PlatformCanvas.cpp: Removed.
+ * platform/graphics/chromium/PlatformCanvas.h: Removed.
+ * platform/graphics/chromium/PlatformImage.cpp: Removed.
+ * platform/graphics/chromium/PlatformImage.h: Removed.
+
+2011-02-28 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: add live edit test.
+ https://bugs.webkit.org/show_bug.cgi?id=55360
+
+ Test: inspector/debugger/live-edit.html
+
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._doubleClick):
+ (WebInspector.SourceFrame.prototype._didEditLine):
+
+2011-02-28 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed. Follow up to r79858, removing optimistic assertion that fails on debug bot.
+
+ * inspector/InspectorBrowserDebuggerAgent.cpp:
+ (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
+
+2011-02-25 Adrienne Walker <enne@google.com>
+
+ Reviewed by James Robinson.
+
+ [chromium] Abstract "pixels with a graphics context" into its own class
+ https://bugs.webkit.org/show_bug.cgi?id=55259
+
+ This creates new PlatformCanvas/PlatformImage classes which wrap
+ all of the #ifdef Skia/Cg warts from the compositor. All classes
+ (LayerTilerChromium, ContentLayerChromium, and ImageLayerChromium) are
+ modified to use these abstractions.
+
+ Tests: LayoutTests/compositing
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::updateContentsIfDirty):
+ (WebCore::ContentLayerChromium::resizeUploadBuffer):
+ (WebCore::ContentLayerChromium::updateTextureIfNeeded):
+ (WebCore::ContentLayerChromium::updateTexture):
+ (WebCore::ContentLayerChromium::draw):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContentsIfDirty):
+ (WebCore::ImageLayerChromium::updateTextureIfNeeded):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::contentRectToTileIndices):
+ (WebCore::LayerTilerChromium::update):
+ (WebCore::LayerTilerChromium::updateFromPixels):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ * platform/graphics/chromium/PlatformCanvas.cpp: Added.
+ (WebCore::PlatformCanvas::PlatformCanvas):
+ (WebCore::PlatformCanvas::~PlatformCanvas):
+ (WebCore::PlatformCanvas::resize):
+ (WebCore::PlatformCanvas::AutoLocker::AutoLocker):
+ (WebCore::PlatformCanvas::AutoLocker::~AutoLocker):
+ (WebCore::PlatformCanvas::Painter::Painter):
+ (WebCore::PlatformCanvas::Painter::~Painter):
+ * platform/graphics/chromium/PlatformCanvas.h: Added.
+ (WebCore::PlatformCanvas::AutoLocker::pixels):
+ (WebCore::PlatformCanvas::Painter::context):
+ (WebCore::PlatformCanvas::size):
+ * platform/graphics/chromium/PlatformImage.cpp: Copied from Source/WebCore/platform/graphics/chromium/ImageLayerChromium.cpp.
+ (WebCore::PlatformImage::PlatformImage):
+ (WebCore::PlatformImage::updateFromImage):
+ * platform/graphics/chromium/PlatformImage.h: Added.
+ (WebCore::PlatformImage::pixels):
+ (WebCore::PlatformImage::size):
+
+2011-02-28 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r79784.
+ http://trac.webkit.org/changeset/79784
+ https://bugs.webkit.org/show_bug.cgi?id=55386
+
+ This change causes lots of assertion failures in Debug builds
+ (Requested by aroben on #webkit).
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::convertToLength):
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::createTransformOperations):
+ * platform/Length.h:
+ (WebCore::Length::Length):
+ (WebCore::Length::operator==):
+ (WebCore::Length::operator!=):
+ (WebCore::Length::rawValue):
+ (WebCore::Length::type):
+ (WebCore::Length::quirk):
+ (WebCore::Length::setValue):
+ (WebCore::Length::setRawValue):
+ (WebCore::Length::calcFloatValue):
+ (WebCore::Length::isZero):
+ (WebCore::Length::blend):
+ * rendering/AutoTableLayout.cpp:
+ (WebCore::AutoTableLayout::recalcColumn):
+ (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
+ * rendering/FixedTableLayout.cpp:
+ (WebCore::FixedTableLayout::calcWidthArray):
+
+2011-02-28 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Use Frame::ownerElement() directly where appropriate.
+ https://bugs.webkit.org/show_bug.cgi?id=55385
+
+ Don't take the roundabout way through frame->document->ownerElement
+ which just checks that the document->frame is non-null.
+
+ No new test, refactoring only.
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadWithDocumentLoader):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::dispatchLoadEvent):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::scrollRecursively):
+ (WebCore::EventHandler::logicalScrollRecursively):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::init):
+ (WebCore::FrameView::layout):
+ (WebCore::FrameView::repaintContentRectangle):
+ (WebCore::FrameView::windowClipRect):
+ (WebCore::FrameView::paintContents):
+
+2011-02-28 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [REGRESSION] source frame is recreated for each inlined script in document.
+ https://bugs.webkit.org/show_bug.cgi?id=55377
+
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
+ (WebInspector.ScriptsPanel.prototype._sourceFrameForSourceName):
+ (WebInspector.ScriptsPanel.prototype._createSourceFrame):
+ (WebInspector.ScriptsPanel.prototype._recreateSourceFrame):
+
+2011-02-28 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed build fix for !ENABLE(SVG_ANIMATION) after r79569.
+
+ * svg/SVGDocumentExtensions.cpp:
+ (WebCore::SVGDocumentExtensions::removeAllAnimationElementsFromTarget):
+
+2011-02-28 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ Optimize parameter transmissions in FEConvolveMatrix.
+ https://bugs.webkit.org/show_bug.cgi?id=55381
+
+ Parameter transmission via reference is more efficient than with copy. So they are substituted.
+
+ No new tests are needed since this is a refactoring.
+
+ * platform/graphics/filters/FEConvolveMatrix.cpp:
+ (WebCore::FEConvolveMatrix::setKernelSize):
+ (WebCore::FEConvolveMatrix::setTargetOffset):
+ (WebCore::FEConvolveMatrix::setKernelUnitLength):
+ * platform/graphics/filters/FEConvolveMatrix.h:
+
+2011-02-28 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Fix Chromium tests failures due to r79858.
+
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::inspectedPageDestroyed):
+
+2011-02-28 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ XML without style should render as syntax-highlighted source.
+ https://bugs.webkit.org/show_bug.cgi?id=13807
+
+ XML tree view mode implemented. If XML does not have any style
+ information, it is rendered as highlighted source with collapsable
+ elements.
+
+ Tests: fast/css/dumpAsText/xml-stylesheet-pi-not-in-prolog.xml
+ fast/encoding/dumpAsText/utf-16-no-bom.xml
+ http/tests/xmlviewer/dumpAsText/css-stylesheet.xml
+ http/tests/xmlviewer/dumpAsText/frames.html
+ http/tests/xmlviewer/dumpAsText/mathml.xml
+ http/tests/xmlviewer/dumpAsText/svg.xml
+ http/tests/xmlviewer/dumpAsText/wml.xml
+ http/tests/xmlviewer/dumpAsText/xhtml-tag.xml
+ http/tests/xmlviewer/dumpAsText/xlink.xml
+ http/tests/xmlviewer/dumpAsText/xmlviewer-charset-cp1251.xml
+ http/tests/xmlviewer/dumpAsText/xmlviewer-charset-utf8.xml
+ http/tests/xmlviewer/dumpAsText/xmlviewer.xml
+ http/tests/xmlviewer/dumpAsText/xsl-stylesheet.xml
+ http/tests/xmlviewer/dumpAsText/xul.xml
+ svg/hixie/error/dumpAsText/004.xml
+ svg/hixie/error/dumpAsText/005.xml
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::matchUARules):
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::createElement):
+ * dom/Document.h:
+ (WebCore::Document::usesViewSourceStyles):
+ (WebCore::Document::setUsesViewSourceStyles):
+ (WebCore::Document::sawElementsInKnownNamespaces):
+ * dom/XMLDocumentParser.h:
+ * dom/XMLDocumentParserLibxml2.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::processingInstruction):
+ (WebCore::XMLDocumentParser::initializeParserContext):
+ (WebCore::XMLDocumentParser::doEnd):
+ * dom/XMLDocumentParserQt.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::initializeParserContext):
+ (WebCore::XMLDocumentParser::parseProcessingInstruction):
+ * html/HTMLViewSourceDocument.cpp:
+ (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
+ * xml/XMLTreeViewer.cpp: Added.
+ (WebCore::XMLTreeViewer::XMLTreeViewer):
+ (WebCore::XMLTreeViewer::hasNoStyleInformation):
+ (WebCore::XMLTreeViewer::transformDocumentToTreeView):
+ * xml/XMLTreeViewer.h: Added.
+ (WebCore::XMLTreeViewer::~XMLTreeViewer):
+ * xml/XMLViewer.xsl: Added.
+ * xml/XSLStyleSheet.h:
+ (WebCore::XSLStyleSheet::createForXMLTreeViewer):
+
+2011-02-28 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: debugger agents should have same livetime as InspectorAgent
+ https://bugs.webkit.org/show_bug.cgi?id=55369
+
+ DOM and JS debugger agents are now created in InspectorAgent's constructor and owned
+ by the agent. Debugger state is cleared on frontend disconnect.
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
+ (WebCore::InspectorAgent::setFrontend):
+ (WebCore::InspectorAgent::disconnectFrontend):
+ (WebCore::InspectorAgent::populateScriptObjects):
+ (WebCore::InspectorAgent::didCommitLoad):
+ (WebCore::InspectorAgent::showScriptsPanel):
+ * inspector/InspectorAgent.h:
+ * inspector/InspectorBrowserDebuggerAgent.cpp:
+ (WebCore::InspectorBrowserDebuggerAgent::create):
+ (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
+ (WebCore::InspectorBrowserDebuggerAgent::~InspectorBrowserDebuggerAgent):
+ (WebCore::InspectorBrowserDebuggerAgent::debuggerWasEnabled):
+ (WebCore::InspectorBrowserDebuggerAgent::debuggerWasDisabled):
+ (WebCore::InspectorBrowserDebuggerAgent::disable):
+ (WebCore::InspectorBrowserDebuggerAgent::setFrontend):
+ (WebCore::InspectorBrowserDebuggerAgent::clearFrontend):
+ (WebCore::InspectorBrowserDebuggerAgent::setAllBrowserBreakpoints):
+ (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
+ (WebCore::InspectorBrowserDebuggerAgent::setDOMBreakpoint):
+ (WebCore::InspectorBrowserDebuggerAgent::removeDOMBreakpoint):
+ (WebCore::InspectorBrowserDebuggerAgent::willInsertDOMNode):
+ (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):
+ (WebCore::InspectorBrowserDebuggerAgent::willModifyDOMAttr):
+ (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
+ (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
+ (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
+ (WebCore::InspectorBrowserDebuggerAgent::clear):
+ * inspector/InspectorBrowserDebuggerAgent.h:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::debuggerEnabled):
+ (WebCore::InspectorController::showAndEnableDebugger):
+ (WebCore::InspectorController::disableDebugger):
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::create):
+ (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
+ (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent):
+ (WebCore::InspectorDebuggerAgent::startUserInitiatedDebugging):
+ (WebCore::InspectorDebuggerAgent::enable):
+ (WebCore::InspectorDebuggerAgent::disable):
+ (WebCore::InspectorDebuggerAgent::enabled):
+ (WebCore::InspectorDebuggerAgent::restore):
+ (WebCore::InspectorDebuggerAgent::setFrontend):
+ (WebCore::InspectorDebuggerAgent::clearFrontend):
+ (WebCore::InspectorDebuggerAgent::setJavaScriptBreakpoint):
+ (WebCore::InspectorDebuggerAgent::removeJavaScriptBreakpoint):
+ (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
+ (WebCore::InspectorDebuggerAgent::getCompletionsOnCallFrame):
+ (WebCore::InspectorDebuggerAgent::currentCallFrames):
+ (WebCore::InspectorDebuggerAgent::didParseSource):
+ (WebCore::InspectorDebuggerAgent::clear):
+ * inspector/InspectorDebuggerAgent.h:
+ (WebCore::InspectorDebuggerAgent::enable):
+ (WebCore::InspectorDebuggerAgent::disable):
+ (WebCore::InspectorDebuggerAgent::Listener::~Listener):
+ (WebCore::InspectorDebuggerAgent::setListener):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
+ (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
+ (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel.prototype.enableDebugger):
+ (WebInspector.DebuggerModel.prototype.disableDebugger):
+
+2011-02-28 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ FECompositeElement changes doesn't require relayout.
+ https://bugs.webkit.org/show_bug.cgi?id=55367
+
+ When the FECompositeElement receives an update message but the given value remains the same we don't need
+ to relayout the filter.
+
+ No new tests are needed because this modification is covered by the dynamic update tests of FEComposite.
+
+ * platform/graphics/filters/FEComposite.cpp:
+ (WebCore::FEComposite::setOperation):
+ (WebCore::FEComposite::setK1):
+ (WebCore::FEComposite::setK2):
+ (WebCore::FEComposite::setK3):
+ (WebCore::FEComposite::setK4):
+ * platform/graphics/filters/FEComposite.h:
+ * svg/SVGFECompositeElement.cpp:
+ (WebCore::SVGFECompositeElement::setFilterEffectAttribute):
+ (WebCore::SVGFECompositeElement::svgAttributeChanged):
+ * svg/SVGFECompositeElement.h:
+
+2011-02-28 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ FrameLoader: Reorder early-returns in checkCompleted()
+ https://bugs.webkit.org/show_bug.cgi?id=55366
+
+ Check allChildrenAreComplete() last, since it's the most expensive.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::checkCompleted):
+
+2011-02-28 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ Range::processContents needs cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=51006
+
+ Refactored Range::processContents. Extracted childOfCommonRootBeforeOffset from processContents
+ which is used to find processStart and processEnd respectively. In the case of processStart,
+ we use the next sibling of the node returned by childOfCommonRootBeforeOffset when m_start is not
+ the common root because copying m_start's ancestors will result in processing too much contents.
+
+ Also extracted processNodes and deleteCharacterData from processContents and processContentsBetweenOffsets.
+
+ In addition, lengthOfContentsInNode was modified to return the correct length instead of
+ numeric_limits<unsigned>::max() because the convention that processContentsBetweenOffsets automatically
+ corrects the length when endOffset is numeric_limits<unsigned>::max() seemed more confusing than
+ having two switch statements that need to be consistent.
+
+ Historically, lengthOfContentsInNode was introduced in r78413 as a build fix because unsigned const
+ LengthOfContentsInNode added in r78409 violated WebKit C++ rules and caused build failures on Mac and
+ other ports.
+
+ * dom/Range.cpp:
+ (WebCore::childOfCommonRootBeforeOffset): Extracted from processContents.
+ (WebCore::lengthOfContentsInNode): Added.
+ (WebCore::Range::processContents): Calls childOfCommonRootBeforeOffset, lengthOfContentsInNode,
+ and processNodes.
+ (WebCore::deleteCharacterData): Added.
+ (WebCore::Range::processContentsBetweenOffsets): Calls deleteCharacterData and processNodes.
+ (WebCore::Range::processNodes): Extracted from processContents and processContentsBetweenOffsets.
+ (WebCore::Range::processAncestorsAndTheirSiblings):
+ * dom/Range.h:
+
+2011-02-28 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed. Test harness change follow up.
+ Consider missing localized string a warning, not an error in the front-end.
+
+ * inspector/front-end/inspector.js:
+ (WebInspector.UIString):
+
+2011-02-28 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ getJNIEnv() passes wrong type to AttachCurrentThread() for JNIEnv argument on Android
+ https://bugs.webkit.org/show_bug.cgi?id=55218
+
+ AttachCurrentThread() in Android's JVM takes a JINEnv**
+ argument.
+
+ No new tests, build fix only.
+
+ * bridge/jni/JNIUtility.cpp:
+ (JSC::Bindings::getJNIEnv):
+
+2011-02-28 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ FETurbulenceElement changes doesn't require relayout
+ https://bugs.webkit.org/show_bug.cgi?id=55141
+
+ When the FETurbulenceElement receives an update message but the given value remains the same we don't need
+ to relayout the filter.
+ Besides fix a typo in FETurbulence and change the paramterer type of FETurbulence::setNumOctaves from bool
+ to int according to the spec.
+
+ No new tests are needed because this modification is covered by the dynamic update tests of FETurbulence.
+
+ * platform/graphics/filters/FETurbulence.cpp:
+ (WebCore::FETurbulence::FETurbulence):
+ (WebCore::FETurbulence::create):
+ (WebCore::FETurbulence::type):
+ (WebCore::FETurbulence::setType):
+ (WebCore::FETurbulence::setBaseFrequencyY):
+ (WebCore::FETurbulence::setBaseFrequencyX):
+ (WebCore::FETurbulence::setSeed):
+ (WebCore::FETurbulence::setNumOctaves):
+ (WebCore::FETurbulence::setStitchTiles):
+ (WebCore::operator<<):
+ * platform/graphics/filters/FETurbulence.h:
+ * svg/SVGFETurbulenceElement.cpp:
+ (WebCore::SVGFETurbulenceElement::setFilterEffectAttribute):
+ (WebCore::SVGFETurbulenceElement::svgAttributeChanged):
+ (WebCore::SVGFETurbulenceElement::build):
+ * svg/SVGFETurbulenceElement.h:
+
+2011-02-28 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ WebInspector: InspectorAgent calls offsetWidth in the middle of painting
+ https://bugs.webkit.org/show_bug.cgi?id=54597
+
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::drawElementTitle):
+
+2011-02-28 Roland Steiner <rolandsteiner@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Bug 55355 - TextIterator should not be a friend of RenderTextControl
+ https://bugs.webkit.org/show_bug.cgi?id=55355
+
+ Remove need for 'friend' clause by making innerTextElement() public.
+
+ No new tests. (simple refactoring)
+
+ * rendering/RenderTextControl.h:
+
+2011-02-27 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Remove registerBaseEncodingNames and registerBaseCodecs from TextCodecWinCE
+ https://bugs.webkit.org/show_bug.cgi?id=55317
+
+ This functions are obsolete, since r78499 added TextCodecUTF8.
+ Also remove the "fast path" for UTF-8 data, because we now have a separate TextCodec.
+
+ * platform/text/TextEncodingRegistry.cpp:
+ (WebCore::buildBaseTextCodecMaps):
+ * platform/text/wince/TextCodecWinCE.cpp:
+ * platform/text/wince/TextCodecWinCE.h:
+
+2011-02-27 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Sam Weinig.
+
+ Use OwnPtr to handle the memory of RenderBlock::m_floatingObjects and RenderBlock::m_positionedObjects
+ https://bugs.webkit.org/show_bug.cgi?id=55327
+
+ Refactor RenderBlock to use OwnPtr for m_floatingObjects and m_positionedObjects so we do not have
+ to release the memory manually.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::~RenderBlock):
+ (WebCore::RenderBlock::selectionGaps):
+ (WebCore::RenderBlock::insertPositionedObject):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::addOverhangingFloats):
+ (WebCore::RenderBlock::addIntrudingFloats):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::positionedObjects):
+
+2011-02-27 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ Eliminate DeprecatedPtrList
+ https://bugs.webkit.org/show_bug.cgi?id=17425
+
+ Remove the implementation of DeprecatedPtrList and all its references
+ from the build systems.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.order:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/DeprecatedPtrList.h: Removed.
+ * platform/DeprecatedPtrListImpl.cpp: Removed.
+ * platform/DeprecatedPtrListImpl.h: Removed.
+
+2011-02-27 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Use WTF ref counting for FontPlatformDataPrivate
+ https://bugs.webkit.org/show_bug.cgi?id=55303
+
+ Make FontPlatformDataPrivate a RefCounted<FPDP>.
+ Incidentally fixes an uninitialized member bug in FontPlatformData().
+
+ * platform/graphics/qt/FontPlatformData.h:
+ (WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate):
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::isHashTableDeletedValue):
+ (WebCore::FontPlatformData::font):
+ (WebCore::FontPlatformData::size):
+ (WebCore::FontPlatformData::family):
+ (WebCore::FontPlatformData::bold):
+ (WebCore::FontPlatformData::italic):
+ (WebCore::FontPlatformData::smallCaps):
+ (WebCore::FontPlatformData::pixelSize):
+ * platform/graphics/qt/FontPlatformDataQt.cpp:
+ (WebCore::toQFontWeight):
+ (WebCore::FontPlatformData::operator==):
+ (WebCore::FontPlatformData::hash):
+
+2011-02-27 Benjamin Poulain <ikipou@gmail.com>
+
+ Reviewed by Darin Adler.
+
+ Eliminate DeprecatedPtrList from RenderBlock
+ https://bugs.webkit.org/show_bug.cgi?id=54972
+
+ Refactor RenderBlock to get rid of the DeprecatedPtrList.
+ The floating objects are stored in a ListHashSet.
+
+ Refactoring covered by existing test.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::~RenderBlock):
+ (WebCore::RenderBlock::addOverflowFromFloats):
+ (WebCore::RenderBlock::repaintOverhangingFloats):
+ (WebCore::RenderBlock::paintFloats):
+ (WebCore::RenderBlock::selectionGaps):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::removeFloatingObject):
+ (WebCore::RenderBlock::removeFloatingObjectsBelow):
+ (WebCore::RenderBlock::positionNewFloats):
+ (WebCore::RenderBlock::positionNewFloatOnLine):
+ (WebCore::RenderBlock::logicalLeftOffsetForLine):
+ (WebCore::RenderBlock::logicalRightOffsetForLine):
+ (WebCore::RenderBlock::nextFloatLogicalBottomBelow):
+ (WebCore::RenderBlock::lowestFloatLogicalBottom):
+ (WebCore::RenderBlock::clearFloats):
+ (WebCore::RenderBlock::addOverhangingFloats):
+ (WebCore::RenderBlock::addIntrudingFloats):
+ (WebCore::RenderBlock::containsFloat):
+ (WebCore::RenderBlock::hitTestFloats):
+ (WebCore::RenderBlock::adjustForBorderFit):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::FloatingObjectHashFunctions::hash):
+ (WebCore::RenderBlock::FloatingObjectHashFunctions::equal):
+ (WebCore::RenderBlock::FloatingObjectHashTranslator::hash):
+ (WebCore::RenderBlock::FloatingObjectHashTranslator::equal):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::matchedEndLine):
+
+2011-02-26 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ <input value="type=submit"> throws a warning (“HTML parse error”)
+ https://bugs.webkit.org/show_bug.cgi?id=55120
+
+ This patch removes parse error messages from the HTML parser. These
+ messages are displayed at the wrong times, aren't tested, and aren't
+ helpful. We'll try again with some more informative messages and
+ better testing.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::parseError):
+
+2011-02-26 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Remove registerBaseEncodingNames and registerBaseCodecs from TextCodecBrew
+ https://bugs.webkit.org/show_bug.cgi?id=55309
+
+ This functions are obsolete, since r78499 added TextCodecUTF8.
+
+ * platform/text/TextEncodingRegistry.cpp:
+ (WebCore::buildBaseTextCodecMaps):
+ * platform/text/brew/TextCodecBrew.cpp:
+ * platform/text/brew/TextCodecBrew.h:
+
+2011-02-26 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Delay firing of mutation events while setting attribute values
+ https://bugs.webkit.org/show_bug.cgi?id=55199
+
+ Test: fast/dom/attribute-change-on-mutate.html
+
+ * dom/Attr.cpp:
+ (WebCore::Attr::setValue):
+
+2011-02-26 Yi Shen <yi.4.shen@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Notify HTMLMediaElement when MediaPlayerPrivateQt's playback state gets changed
+ https://bugs.webkit.org/show_bug.cgi?id=55252
+
+ Need to invoke a callback function to notify the HTMLMediaElement
+ when MediaPlayerPrivateQt's playback state gets changed.
+
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt): Set a flag to ignore the playback state change for pre-roll
+ (WebCore::MediaPlayerPrivateQt::commitLoad): Call playbackStateChanged() to notify HTMLMediaElement
+ (WebCore::MediaPlayerPrivateQt::stateChanged):
+ * platform/graphics/qt/MediaPlayerPrivateQt.h:
+
+2011-02-25 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ When plugin document parser finishes parsing, it runs the raw
+ document's parser finish functions which call the pending document
+ onload events that removes the frame from underneath. So, we protect
+ frame (and hence frameloader) in DocumentLoader::commitLoad.
+ https://bugs.webkit.org/show_bug.cgi?id=55289
+
+ Test: fast/frames/iframe-plugin-load-remove-document-crash.html
+
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::commitLoad):
+
+2011-02-26 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed: rolling out 79799 and 79804 for breaking xml tests on mac.
+
+2011-02-26 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed: follow up to r79799. Fixing WinCE+Efl, mute new tests on Qt.
+ https://bugs.webkit.org/show_bug.cgi?id=55302
+
+ * CMakeLists.txt:
+
+2011-02-25 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ XML without style should render as syntax-highlighted source.
+ https://bugs.webkit.org/show_bug.cgi?id=13807
+
+ XML tree view mode implemented. If XML does not have any style
+ information, it is rendered as highlighted source with collapsable
+ elements.
+
+ Tests: http/tests/xmlviewer/dumpAsText/css-stylesheet.xml
+ http/tests/xmlviewer/dumpAsText/frames.html
+ http/tests/xmlviewer/dumpAsText/mathml.xml
+ http/tests/xmlviewer/dumpAsText/svg.xml
+ http/tests/xmlviewer/dumpAsText/wml.xml
+ http/tests/xmlviewer/dumpAsText/xhtml-tag.xml
+ http/tests/xmlviewer/dumpAsText/xlink.xml
+ http/tests/xmlviewer/dumpAsText/xmlviewer-charset-cp1251.xml
+ http/tests/xmlviewer/dumpAsText/xmlviewer-charset-utf8.xml
+ http/tests/xmlviewer/dumpAsText/xmlviewer.xml
+ http/tests/xmlviewer/dumpAsText/xsl-stylesheet.xml
+ http/tests/xmlviewer/dumpAsText/xul.xml
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::matchUARules):
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::createElement):
+ * dom/Document.h:
+ (WebCore::Document::usesViewSourceStyles):
+ (WebCore::Document::setUsesViewSourceStyles):
+ (WebCore::Document::sawElementsInKnownNamespaces):
+ * dom/XMLDocumentParser.h:
+ * dom/XMLDocumentParserLibxml2.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::processingInstruction):
+ (WebCore::XMLDocumentParser::initializeParserContext):
+ (WebCore::XMLDocumentParser::doEnd):
+ * dom/XMLDocumentParserQt.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::initializeParserContext):
+ (WebCore::XMLDocumentParser::parseProcessingInstruction):
+ * html/HTMLViewSourceDocument.cpp:
+ (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
+ * xml/XMLTreeViewer.cpp: Added.
+ (WebCore::XMLTreeViewer::XMLTreeViewer):
+ (WebCore::XMLTreeViewer::hasNoStyleInformation):
+ (WebCore::XMLTreeViewer::transformDocumentToTreeView):
+ * xml/XMLTreeViewer.h: Added.
+ (WebCore::XMLTreeViewer::~XMLTreeViewer):
+ * xml/XMLViewer.xsl: Added.
+ * xml/XSLStyleSheet.h:
+ (WebCore::XSLStyleSheet::createFromString):
+
+2011-02-26 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Enable usage of synchronous HTTP feature in Qt
+ https://bugs.webkit.org/show_bug.cgi?id=37191
+
+ Currently, we spin an event loop when doing synchronous calls to
+ wait for completion. This patch uses synchronous requests in Qt,
+ if available, and spins the event loop as a fallback solution.
+
+ Based on work by Simon Hausmann and Peter Hartmann.
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::start):
+ * platform/network/qt/QNetworkReplyHandler.h:
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::WebCoreSynchronousLoader::setReplyFinished):
+ (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ (WebCore::WebCoreSynchronousLoader::didFail):
+ (WebCore::ResourceHandle::loadResourceSynchronously):
+
+2011-02-26 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ REGRESSION(r79398): Webkit crash on dojo theme tester page
+ https://bugs.webkit.org/show_bug.cgi?id=55290
+
+ The bug was caused by selectionStartCSSPropertyValue's not considering the possibility
+ of selectionStartStyle() returning a null pointer. Fixed it by adding a null check.
+
+ Test: editing/execCommand/value-without-selection-crash.html
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::selectionStartCSSPropertyValue):
+
+2011-02-26 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ DumpRenderTree should reset frame opener between tests.
+ https://bugs.webkit.org/show_bug.cgi?id=54874
+
+ No new tests. (no code affected, just exporting a method for DumpRenderTree use)
+
+ * WebCore.exp.in:
+
+2011-02-26 Jia Pu <jpu@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ On Mac, need to remove misspell underline in Editor::learnSpelling().
+ https://bugs.webkit.org/show_bug.cgi?id=55251
+
+ This change makes sure that the misspelling markers are removed after the word is learned.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::learnSpelling):
+
+2011-02-26 Rik Cabanier <cabanier@adobe.com>
+
+ Reviewed by David Hyatt.
+
+ Fix that allows fixed length values to be floating point
+ https://bugs.webkit.org/show_bug.cgi?id=52699
+
+ Transitions now return matrices in floating point. 2 of the transition tests were failing
+ because they expected integer values.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::convertToLength):
+ (WebCore::convertToIntLength):
+ (WebCore::convertToFloatLength):
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::createTransformOperations):
+ * platform/Length.h:
+ (WebCore::Length::Length):
+ (WebCore::Length::operator==):
+ (WebCore::Length::operator!=):
+ (WebCore::Length::rawValue):
+ (WebCore::Length::type):
+ (WebCore::Length::quirk):
+ (WebCore::Length::setValue):
+ (WebCore::Length::calcFloatValue):
+ (WebCore::Length::isZero):
+ (WebCore::Length::blend):
+ (WebCore::Length::getIntValue):
+ (WebCore::Length::getFloatValue):
+ * rendering/AutoTableLayout.cpp:
+ (WebCore::AutoTableLayout::recalcColumn):
+ (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
+ * rendering/FixedTableLayout.cpp:
+ (WebCore::FixedTableLayout::calcWidthArray):
+
+2011-02-26 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ malloc in removeChildren shows up on profile of peacekeeper domDynamicCreationCreateElement
+ https://bugs.webkit.org/show_bug.cgi?id=55204
+
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::removeChildren):
+ - Using an inlineCapacity of 10 for now. We may want to tweak it later.
+ - This removes yet another malloc from code which removes nodes (which is rather common).
+
+2011-02-26 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ HashSet<T>::end() creation is expensive and should be avoided
+ https://bugs.webkit.org/show_bug.cgi?id=55205
+
+ In the common case, m_ranges is an empty set. When that's
+ the case, we spend all our time in skipEmptyBuckets, walking
+ the hash storage skipping over empty buckets.
+
+ This looks to be at least a 5% speedup on (my local version of) peacekeeper's domDynamicCreationCreateElement.
+
+ Before:
+ avg 383.6666666666667
+ median 386
+ stdev 7.152311203768722
+ min 360
+ max 391
+
+ After:
+ avg 366.3333333333333
+ median 366
+ stdev 2.712112747574399
+ min 362
+ max 377
+
+ * dom/Document.cpp:
+ (WebCore::Document::nodeChildrenChanged):
+ (WebCore::Document::nodeChildrenWillBeRemoved):
+ (WebCore::Document::nodeWillBeRemoved):
+ (WebCore::Document::textInserted):
+ (WebCore::Document::textRemoved):
+ (WebCore::Document::textNodesMerged):
+ (WebCore::Document::textNodeSplit):
+
+2011-02-26 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r79764.
+ http://trac.webkit.org/changeset/79764
+ https://bugs.webkit.org/show_bug.cgi?id=55295
+
+ "broke Chromium builds" (Requested by rniwa on #webkit).
+
+ * WebCore.exp.in:
+
+2011-02-26 Adam Klein <adamk@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ [fileapi] Implement EntrySync.toURI by moving Entry::toURI to EntryBase
+ https://bugs.webkit.org/show_bug.cgi?id=54585
+
+ In order to move toURI to EntryBase, it needed access to
+ SecurityOrigin. Most of the changes below were to pass a
+ ScriptExecutionContext to DOMFileSystemBase to enable this.
+
+ Test: fast/filesystem/workers/file-entry-to-uri-sync.html
+
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * fileapi/DOMFileSystem.cpp:
+ (WebCore::DOMFileSystem::DOMFileSystem):
+ * fileapi/DOMFileSystemBase.cpp:
+ (WebCore::DOMFileSystemBase::DOMFileSystemBase):
+ (WebCore::DOMFileSystemBase::securityOrigin):
+ * fileapi/DOMFileSystemBase.h:
+ (WebCore::DOMFileSystemBase::create):
+ * fileapi/DOMFileSystemSync.cpp:
+ (WebCore::DOMFileSystemSync::create):
+ (WebCore::DOMFileSystemSync::DOMFileSystemSync):
+ * fileapi/DOMFileSystemSync.h:
+ (WebCore::DOMFileSystemSync::create):
+ * fileapi/Entry.cpp:
+ * fileapi/Entry.h:
+ * fileapi/EntryBase.cpp: Added.
+ (WebCore::EntryBase::EntryBase):
+ (WebCore::EntryBase::~EntryBase):
+ (WebCore::EntryBase::toURI):
+ * fileapi/EntryBase.h:
+ * fileapi/EntrySync.idl:
+
+2011-02-26 Alice Boxhall <aboxhall@chromium.org>
+
+ Reviewed by Ojan Vafai.
+
+ typing enter in the input element should not fire textInput
+ https://bugs.webkit.org/show_bug.cgi?id=54152
+
+ Stop textInput event propagation in HTMLInputElement::preDispatchEventHandler if the event target should submit implicitly.
+
+ Test: fast/forms/textinput-not-fired-on-enter-in-input.html
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::preDispatchEventHandler): Check m_inputType->shouldSubmitImplicitly for textInputEvents and stop propagation if true.
+
+2011-02-26 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Tony Gentilcore.
+
+ [Web Timing] loadEvent timing should refer to first load event if there are many
+ https://bugs.webkit.org/show_bug.cgi?id=55201
+
+ Test: fast/dom/webtiming-document-open.html
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::dispatchLoadEvent):
+
+2011-02-26 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Fix isLayoutTimerActive for ports that set a minimumLayoutDelay
+ https://bugs.webkit.org/show_bug.cgi?id=54810
+
+ No new tests because no new functionality.
+
+ * dom/Document.cpp:
+ (WebCore::Document::isLayoutTimerActive): Moved from HTMLParserScheduler per FIXME. Compare
+ minimumLayoutDelay() to m_extraLayoutDelay instead of 0. This spirit of this comparison was
+ broken by r52919. The effect would be that ports that set an extra layout delay can't yield
+ between tokens. Note: can't be const because minimumLayoutDelay sets a member.
+ * dom/Document.h:
+ * html/parser/HTMLParserScheduler.cpp:
+ (WebCore::HTMLParserScheduler::continueNextChunkTimerFired):
+ (WebCore::HTMLParserScheduler::checkForYieldBeforeScript):
+
+2011-02-26 David Dorwin <ddorwin@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Enable WebKit Full Screen API in Chromium. The element becomes the full size of the window, but the window is not yet full screen. Support is disabled by default.
+
+ fullscreen javascript bindings not implemented for v8
+ https://bugs.webkit.org/show_bug.cgi?id=44797
+
+ Tested by the existing fullscreen Layout Tests.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2011-02-26 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Prevent parser yields from triggering early dumpAsText()
+ https://bugs.webkit.org/show_bug.cgi?id=55187
+
+ DRT's dumpAsText() takes a snapshot when DocumentLoader::isLoadingInAPISense()
+ indicates the page is done. isLoadingInAPISense depends on
+ HTMLDocumentParser::isProcessingData(), which just checks if the parser is in an
+ insert() or append().
+
+ This means that if the parser is pumping in a resumeParsingAfterScriptExecution() or
+ resumeParsingAfterYield(), isLoadingInAPISense() may not be blocked. This patch
+ fixes that by repurposing m_writeNestingLevel as m_pumpSessionNestingLevel and
+ incrementing it in pumpTokenizer().
+
+ When I locally cause the parser to yield after every token, a lot of tests fail
+ because DRT snapshots too early. This patch fixes those tests, however I'm having
+ trouble writing a test case that reliably reproduces the problem without this patch
+ and passes with it (without changing yield constants). This is because it requires
+ 4,096 tokens in a single pump session to yield and (len('<b>' * 4096 = 12k, which
+ doesn't always happen).
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::HTMLDocumentParser):
+ (WebCore::HTMLDocumentParser::~HTMLDocumentParser):
+ (WebCore::HTMLDocumentParser::processingData):
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ (WebCore::HTMLDocumentParser::insert):
+ (WebCore::HTMLDocumentParser::append):
+ * html/parser/HTMLDocumentParser.h:
+ (WebCore::HTMLDocumentParser::inPumpSession):
+ (WebCore::HTMLDocumentParser::shouldDelayEnd):
+ * html/parser/HTMLParserScheduler.h:
+ (WebCore::PumpSession::PumpSession):
+ * html/parser/NestingLevelIncrementer.h:
+
+2011-02-26 Yongjun Zhang <yongjun_zhang@apple.com>
+
+ Reviewed by David Kilzer.
+
+ https://bugs.webkit.org/show_bug.cgi?id=48781
+
+ Add a resource load delegate method to query if WebCore should paint the default broken image for failed images.
+
+ Add a new resource load client method (shouldPaintBrokenImage). WebKit client can decide if WebCore
+ should paint the default broken image when an image fails to load or decode. The method also passes the
+ URL of the failed image.
+
+ Test: fast/images/support-broken-image-delegate.html
+
+ * loader/FrameLoaderClient.h:
+ (WebCore::FrameLoaderClient::shouldPaintBrokenImage):
+ * loader/cache/CachedImage.cpp:
+ (WebCore::CachedImage::CachedImage):
+ (WebCore::CachedImage::image):
+ (WebCore::CachedImage::checkShouldPaintBrokenImage):
+ (WebCore::CachedImage::error):
+ * loader/cache/CachedImage.h:
+
+2011-02-26 Chris Evans <cevans@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Database: Data race: should only touch the transaction queue inside the
+ lock.
+ https://bugs.webkit.org/show_bug.cgi?id=55031
+
+ * storage/Database.cpp:
+ (WebCore::Database::changeVersion): only touch queue inside lock.
+ (WebCore::Database::runTransaction): only touch queue inside lock.
+
+2011-02-26 Yi Shen <yi.4.shen@nokia.com>
+
+ Reviewed by Eric Carlson.
+
+ Missing volumechangeEvent in case of mediaPlayerVolumeChanged gets callback
+ https://bugs.webkit.org/show_bug.cgi?id=55147
+
+ When HTMLMediaElement::mediaPlayerVolumeChanged() gets callback,
+ a volumechangeEvent event should be fired if the volume gets changed.
+
+ Test: media/event-attributes.html
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::setMuted): Remove updateVolume() since it does nothing when m_player is 0.
+ (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): Fire a volumechangeEvent when the volume is changed.
+
+2011-02-26 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ disableRangeMutation quirk for mail slows down peacekeeper domDynamicCreationCreateElement
+ https://bugs.webkit.org/show_bug.cgi?id=55127
+
+ Before:
+ avg 513.4
+ median 515
+ stdev 7.234638899074368
+ min 490
+ max 528
+
+ After:
+ avg 508.15
+ median 510
+ stdev 6.966168243733426
+ min 485
+ max 515
+
+ Yes, the stdev is a bit high to actually support my conclusions. But looking
+ at the profile, this change makes a lot of sense. I'll up the iterations
+ for future testing.
+
+ * dom/Document.cpp:
+ (WebCore::disableRangeMutation):
+ - This check should only be compiled in if we're planning to run on Tiger or Leopard.
+
+2011-02-26 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ DumpRenderTree should reset frame opener between tests.
+ https://bugs.webkit.org/show_bug.cgi?id=54874
+
+ No new tests. (no code affected, just exporting a method for DumpRenderTree use)
+
+ * WebCore.exp.in:
+
+2011-02-26 Chang Shu <chang.shu@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ Based on patch by Carlos Garcia Campos <cgarcia@igalia.com>.
+
+ Spatial Navigation: Add support for <select> element in multiple selection mode
+ https://bugs.webkit.org/show_bug.cgi?id=49261
+
+ When spatial navigation is enabled, use space key to toggle select
+ items. And the up and down keys should not affect selection but just
+ navigate through items, which is indicated visually by a focus ring.
+
+ New Test: fast/spatial-navigation/snav-single-select-list.html
+ Enhanced Test: fast/spatial-navigation/snav-multiple-select.html
+
+ * dom/SelectElement.cpp:
+ (WebCore::SelectElement::listBoxDefaultEventHandler):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::addFocusRingRects):
+ * rendering/RenderListBox.h:
+
+2011-02-25 Ryosuke Niwa <rniwa@webkit.org>
+
+ Unreviewed Qt build fix; included CSSValueList.h in EditingStyle.cpp.
+
+ * editing/EditingStyle.cpp:
+
+2011-02-25 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Move HTMLEquivalent and its subclasses to EditingStyle
+ https://bugs.webkit.org/show_bug.cgi?id=55207
+
+ Moved HTMLEquivalent and its subclasses from ApplyStyleCommand to EditingStyle,
+ and renamed HTMLEquivalent, HTMLEquivalentValueList, HTMLAttributeEquivalent,
+ and HTMLEquivalentFontSizeAttribute to HTMLElementEquivalent, HTMLTextDecorationEquivalent,
+ HTMLAttributeEquivalent, and HTMLFontSizeEquivalent respectively.
+
+ Also extracted the logic to determine which element and attribute are removed
+ as conflictsWithImplicitStyleOfElement, conflictsWithImplicitStyleOfAttributes,
+ and extractConflictingImplicitStyleOfAttributes.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::removeInlineStyleFromElement):
+ (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement):
+ * editing/ApplyStyleCommand.h:
+ * editing/EditingStyle.cpp:
+ (WebCore::HTMLElementEquivalent::create): Moved from ApplyStyleCommand.cpp.
+ (WebCore::HTMLElementEquivalent::~HTMLElementEquivalent): Ditto.
+ (WebCore::HTMLElementEquivalent::matches): Ditto.
+ (WebCore::HTMLElementEquivalent::hasAttribute): Ditto.
+ (WebCore::HTMLElementEquivalent::propertyExistsInStyle): Ditto.
+ (WebCore::HTMLElementEquivalent::HTMLElementEquivalent): Ditto.
+ (WebCore::HTMLElementEquivalent::valueIsPresentInStyle): Ditto.
+ (WebCore::HTMLElementEquivalent::addToStyle): Ditto.
+ (WebCore::HTMLTextDecorationEquivalent::create): Ditto.
+ (WebCore::HTMLTextDecorationEquivalent::HTMLTextDecorationEquivalent): Ditto.
+ (WebCore::HTMLTextDecorationEquivalent::valueIsPresentInStyle): Ditto.
+ (WebCore::HTMLAttributeEquivalent::create): Ditto.
+ (WebCore::HTMLAttributeEquivalent::matches): Ditto.
+ (WebCore::HTMLAttributeEquivalent::hasAttribute): Ditto.
+ (WebCore::HTMLAttributeEquivalent::attributeName): Ditto.
+ (WebCore::HTMLAttributeEquivalent::HTMLAttributeEquivalent): Ditto.
+ (WebCore::HTMLAttributeEquivalent::valueIsPresentInStyle): Ditto.
+ (WebCore::HTMLAttributeEquivalent::addToStyle): Ditto.
+ (WebCore::HTMLAttributeEquivalent::attributeValueAsCSSValue): Ditto.
+ (WebCore::HTMLFontSizeEquivalent::create): Ditto.
+ (WebCore::HTMLFontSizeEquivalent::HTMLFontSizeEquivalent): Ditto.
+ (WebCore::HTMLFontSizeEquivalent::attributeValueAsCSSValue): Ditto.
+ (WebCore::EditingStyle::conflictsWithImplicitStyleOfElement): Added.
+ (WebCore::htmlAttributeEquivalents): Added.
+ (WebCore::EditingStyle::conflictsWithImplicitStyleOfAttributes): Added.
+ (WebCore::EditingStyle::extractConflictingImplicitStyleOfAttributes): Added.
+ * editing/EditingStyle.h:
+
+2011-02-25 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ AX: Add Xcode entries back to the navigator list for Accessibility cpp files
+ https://bugs.webkit.org/show_bug.cgi?id=55280
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2011-02-25 Fumitoshi Ukai <ukai@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ WebSocket uses insecure random numbers
+ https://bugs.webkit.org/show_bug.cgi?id=54714
+
+ * websockets/WebSocketHandshake.cpp:
+ (WebCore::randomNumberLessThan):
+ (WebCore::generateSecWebSocketKey):
+ (WebCore::generateKey3):
+
+2011-02-25 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Add API to enumerate/delete files downloaded for <audio> and <video>
+ https://bugs.webkit.org/show_bug.cgi?id=55267
+
+ Add review changes missed in r79737.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::clearMediaCacheForSite): Pass string by reference.
+ * html/HTMLMediaElement.h:
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::clearMediaCacheForSite): Ditto.
+ * platform/graphics/MediaPlayer.h:
+ * platform/graphics/MediaPlayerPrivate.h:
+ (WebCore::MediaPlayerPrivateInterface::clearMediaCacheForSite): Ditto.
+
+2011-02-25 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Add API to enumerate/delete files downloaded for <audio> and <video>
+ https://bugs.webkit.org/show_bug.cgi?id=55267
+ <rdar://problem/9049280>
+
+ No new tests, this is just the plumbing.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::getSitesInMediaCache): New, call through to MediaPlayer.
+ (WebCore::HTMLMediaElement::clearMediaCache): Ditto.
+ (WebCore::HTMLMediaElement::clearMediaCacheForSite): Ditto.
+ * html/HTMLMediaElement.h:
+
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::getSitesInMediaCache): New, call through to media engine.
+ (WebCore::MediaPlayer::clearMediaCache): Ditto.
+ (WebCore::MediaPlayer::clearMediaCacheForSite): Ditto.
+ * platform/graphics/MediaPlayer.h:
+
+ * platform/graphics/MediaPlayerPrivate.h:
+ (WebCore::MediaPlayerPrivateInterface::getSitesInMediaCache): Declare new interface.
+ (WebCore::MediaPlayerPrivateInterface::clearMediaCache): Ditto.
+ (WebCore::MediaPlayerPrivateInterface::clearMediaCacheForSite): Ditto.
+
+2011-02-25 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dave Hyatt.
+
+ Don't add inline continuation outline to the containing block's
+ continuationOutlineTable list if it is not enclosed by an anonymous block.
+ https://bugs.webkit.org/show_bug.cgi?id=54690
+
+ We currently don't reconnect inline continuations after a child removal.
+ As a result, those merged inlines do not get seperated and hence not get enclosed
+ by anonymous blocks. In this case, it is better to bail out and paint it ourself.
+
+ Test: fast/table/table-continuation-outline-paint-crash.html
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::paint):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::paintsContinuationOutline): helper function to tell
+ if this containing block has the continuation flow in its continuations list.
+ * rendering/RenderBlock.h: helper function definition.
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::destroy): debug only code that asserts if we leave
+ behind a continuation in the containing block's continuation list when it is
+ getting destroyed.
+
+2011-02-25 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Adam Roben.
+
+ https://bugs.webkit.org/show_bug.cgi?id=55265, remove the unused "Static" type
+ from Length.
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ * platform/Length.h:
+ (WebCore::Length::isFixed):
+ * rendering/AutoTableLayout.cpp:
+ (WebCore::AutoTableLayout::layout):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::isLogicalWidthSpecified):
+ (WebCore::RenderImage::isLogicalHeightSpecified):
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::markContainingBlocksForLayout):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::hasStaticX):
+ (WebCore::InheritedFlags::hasStaticY):
+
+2011-02-25 Brian Weinstein <bweinstein@apple.com>
+
+ Windows build fix.
+
+ * platform/network/cf/CookieJarCFNet.cpp:
+ (WebCore::getHostnamesWithCookies): Add a const_cast.
+ (WebCore::deleteCookiesForHostname): Ditto.
+
+2011-02-25 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Timothy Hatcher.
+
+ Web Inspector: Empty Elements panel after closing and reopening Inspector
+ https://bugs.webkit.org/show_bug.cgi?id=55248
+
+ Fixing regression real quick. Test to follow.
+
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::reset):
+
+2011-02-25 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed: added missing handle scope into V8InjectedScriptHostCustom.
+ https://bugs.webkit.org/show_bug.cgi?id=55256
+
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ (WebCore::InjectedScriptHost::nodeAsScriptValue):
+ (WebCore::V8InjectedScriptHost::currentCallFrameCallback):
+
+2011-02-25 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.
+
+ Make positioned objects work with all possible crazy combinations of mixed writing modes. Added new helper
+ functions that flip around the padding box of the containing block and then add in the appropriate border
+ side to ensure that the offset of the positioned object is actually correctly placed in the containing block's
+ local coordinate space.
+
+ Added two new tests of both replaced and non-replaced positioned elements in mixed writing mode environments.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::computeLogicalLeftPositionedOffset):
+ (WebCore::RenderBox::computePositionedLogicalWidthUsing):
+ (WebCore::computeLogicalTopPositionedOffset):
+ (WebCore::RenderBox::computePositionedLogicalHeightUsing):
+ (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
+ (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
+
+2011-02-25 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by Brady Eidson and looked over by Jessie Berlin.
+
+ WebKit2: Need a way to manage cookies from the web process
+ https://bugs.webkit.org/show_bug.cgi?id=55086
+
+ Implement the functions needed to manage cookies in CookieJar (getHostnamesWithCookies,
+ deleteCookiesWithHostname, and deleteAllCookies) for Mac and CFNetwork (stub out the rest),
+ and call them from WebKit2's WebCookieManager.
+
+ No change in behavior needing tests.
+
+ * WebCore.exp.in: Added needed functions to export.
+ * platform/CookieJar.h:
+
+ * platform/mac/CookieJar.mm:
+ (WebCore::getHostnamesWithCookies): Gets all hostnames with cookies from NSHTTPCookieStorage.
+ (WebCore::deleteCookiesForHostname): Deletes all cookies with a given hostname from
+ NSHTTPCookieStorage.
+ (WebCore::deleteAllCookies): Deletes all cookies from NSHTTPCookieStorage.
+
+ * platform/network/cf/CookieJarCFNet.cpp:
+ (WebCore::getHostnamesWithCookies): Implement using CFNetwork cookie APIs.
+ (WebCore::deleteCookiesForHostname): Ditto.
+ (WebCore::deleteAllCookies): Ditto.
+
+ * platform/efl/CookieJarEfl.cpp: Added stub functions.
+ * platform/haiku/CookieJarHaiku.cpp: Ditto.
+ * platform/network/android/CookieJarAndroid.cpp: Ditto.
+ * platform/network/chromium/CookieJarChromium.cpp: Ditto.
+ * platform/network/curl/CookieJarCurl.cpp: Ditto.
+ * platform/network/soup/CookieJarSoup.cpp: Ditto.
+ * platform/network/win/CookieJarWin.cpp: Ditto.
+ * platform/qt/CookieJarQt.cpp: Ditto.
+
+2011-02-25 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ 'load' and 'error' events fired for @poster
+ https://bugs.webkit.org/show_bug.cgi?id=54908
+
+ * html/HTMLImageLoader.cpp:
+ (WebCore::HTMLImageLoader::dispatchLoadEvent): Don't fire events when being used
+ by a video element.
+
+2011-02-25 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.
+
+ Patch computePositionedLogicalHeightReplaced to be writing-mode aware.
+
+ Added six new tests in fast/replaced.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
+
+2011-02-25 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed build fix.
+
+ * platform/text/brew/TextBreakIteratorBrew.cpp:
+ (WebCore::acquireLineBreakIterator):
+ * platform/text/wince/TextBreakIteratorWinCE.cpp:
+ (WebCore::acquireLineBreakIterator):
+
+2011-02-25 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Update the clip layer size whenever the root layer's size and position
+ is updated. This only affects the accelerated compositing path.
+ https://bugs.webkit.org/show_bug.cgi?id=55103
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::updateRootLayerPosition):
+
+ Test: platform/chromium/compositing/layout-width-change.html
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::updateRootLayerPosition):
+
+2011-02-25 Ned Holbrook <nholbrook@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Minimize calls to ubrk_setText()
+ https://bugs.webkit.org/show_bug.cgi?id=54912
+ <rdar://problem/9032774>
+
+ Avoid calling ubrk_setText() once per call to isBreakable() by using a LazyLineBreakIterator, which defers
+ break iterator creation until needed. This requires replacing the global line break iterator primitive with a
+ version that can be nested, since in some cases two iterators may need to be outstanding. In particular,
+ layoutInlineChildren() may indirectly call computePreferredLogicalWidths() and each may need an iterator.
+ In a test with a paragraph of Japanese text, this reduced the number of ubrk_setText() calls from 164 to 1.
+
+ * platform/text/TextBreakIterator.h: Add LazyLineBreakIterator.
+ (WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
+ (WebCore::LazyLineBreakIterator::~LazyLineBreakIterator):
+ (WebCore::LazyLineBreakIterator::string):
+ (WebCore::LazyLineBreakIterator::length):
+ (WebCore::LazyLineBreakIterator::get):
+ (WebCore::LazyLineBreakIterator::reset):
+ * platform/text/TextBreakIteratorICU.cpp: Replace lineBreakIterator() primitive with acquireLineBreakIterator()/releaseLineBreakIterator().
+ (WebCore::acquireLineBreakIterator):
+ (WebCore::releaseLineBreakIterator):
+ * platform/text/brew/TextBreakIteratorBrew.cpp: Ditto.
+ (WebCore::acquireLineBreakIterator):
+ (WebCore::releaseLineBreakIterator):
+ * platform/text/gtk/TextBreakIteratorGtk.cpp: Ditto.
+ (WebCore::acquireLineBreakIterator):
+ (WebCore::releaseLineBreakIterator):
+ * platform/text/qt/TextBreakIteratorQt.cpp: Ditto.
+ (WebCore::acquireLineBreakIterator):
+ (WebCore::releaseLineBreakIterator):
+ * platform/text/wince/TextBreakIteratorWinCE.cpp: Ditto.
+ (WebCore::acquireLineBreakIterator):
+ (WebCore::releaseLineBreakIterator):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren): Pass a mapping of RenderText to LazyLineBreakIterator from one call of findNextLineBreak() to the next.
+ (WebCore::RenderBlock::findNextLineBreak): Use said mapping, resetting LazyLineBreakIterator for any newly-encountered RenderText.
+ * rendering/RenderText.cpp: Use a local LazyLineBreakIterator.
+ (WebCore::RenderText::computePreferredLogicalWidths):
+ * rendering/break_lines.cpp: Accept LazyLineBreakIterator rather than UniChar buffer.
+ (WebCore::nextBreakablePosition):
+ * rendering/break_lines.h: Accept LazyLineBreakIterator rather than UniChar buffer.
+ (WebCore::isBreakable):
+
+2011-02-25 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.
+
+ Patch computePositionedLogicalWidthReplaced to be writing-mode aware. Not testable yet, since the height function overwrites the values
+ in a vertical text environment.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
+
+2011-02-25 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dave Hyatt.
+
+ When trying to find which lines to dirty for a changed child, make sure
+ that we do test if the adjacent next linebox contains that changed child
+ and if yes, dirty it. This can happen in cases when we have a word break
+ between text nodes.
+ https://bugs.webkit.org/show_bug.cgi?id=55206
+
+ Test: fast/text/word-break-next-linebox-not-dirty-crash-main.html
+
+ * rendering/RenderLineBoxList.cpp:
+ (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
+
+2011-02-25 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Text editor] Add basic layout tests for the highlighter
+ https://bugs.webkit.org/show_bug.cgi?id=54751
+
+ Test: inspector/editor/highlighter-basics.html
+
+ * inspector/front-end/TextEditorHighlighter.js:
+ (WebInspector.TextEditorHighlighter.prototype.highlight):
+
+2011-02-24 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Huge fonts in font preview
+ https://bugs.webkit.org/show_bug.cgi?id=55143
+
+ * inspector/front-end/FontView.js:
+ (WebInspector.FontView.prototype._createContentIfNeeded):
+ (WebInspector.FontView.prototype.show):
+ (WebInspector.FontView.prototype.resize):
+ (WebInspector.FontView.prototype._measureElement):
+ (WebInspector.FontView.prototype.updateFontPreviewSize):
+
+2011-02-25 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ Implement SVGColor/SVGPaint API
+ https://bugs.webkit.org/show_bug.cgi?id=55119
+
+ SVGColor::cssText() shouldn't return #RRGGBBAA colors
+ https://bugs.webkit.org/show_bug.cgi?id=48120
+
+ Rewrite SVGColor/SVGPaint to actually implement their desired setPaint/setColor/setURI APIs.
+ SVGPaint is a CSSValue, and its setPaint() function allows to switch to an arbitary paint type.
+ That means, unlike all other CSSValues, SVGColor/SVGPaint are mutable. That means changes to
+ their CSSValues should be reflected in the elements style as well as in the computed style.
+ This patch doesn't yet implement that, the stubbed-out method valueChanged() is what
+ needs to be implemented. For now you can grab a SVGColor/SVGPaint object through getCSSPropertyValue
+ and manipulate it, in every possible way (SVPaint.uri/paintType/colorType/color attributes are all sync'ed).
+ Switch to strict JS bindings (RequiresAllArguments=Raise, StrictTypeChecking) for both objects.
+
+ Enable proper serialization of colors through Color::serialized(), affects some testcases (#FF.. -> #ff..)
+ Add extensive tests of all SVGColor/SVGPaint API, currently shows some FAIL messages, as element style
+ <-> computed style is not live, after mutating SVGColor/SVGPaint. That will be implemented in a follow-up patch.
+
+ Tests: svg/dom/SVGColor.html
+ svg/dom/SVGPaint.html
+
+ * bindings/scripts/CodeGenerator.pm: Remove obsolete handling of "SVGPaintType", take ushort for paintType, as specified in the SVG 1.1 IDLs.
+ * bindings/scripts/CodeGeneratorJS.pm: Ditto.
+ * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
+ * bindings/scripts/CodeGeneratorV8.pm: Ditto.
+ * css/SVGCSSParser.cpp: Adapt to SVGPaint/SVGColor create() naming convention changes.
+ (WebCore::CSSParser::parseSVGValue):
+ (WebCore::CSSParser::parseSVGPaint):
+ (WebCore::CSSParser::parseSVGColor):
+ * svg/SVGColor.cpp: Rewrite to fully implement the SVGColor API, merge all constructors into one, use more descriptable create() naming convention.
+ (WebCore::valueChanged): Stub implementation, will land in a follow-up patch.
+ (WebCore::SVGColor::SVGColor):
+ (WebCore::SVGColor::setRGBColor):
+ (WebCore::SVGColor::colorFromRGBColorString):
+ (WebCore::SVGColor::setRGBColorICCColor):
+ (WebCore::SVGColor::setColor):
+ (WebCore::SVGColor::cssText):
+ * svg/SVGColor.h:
+ (WebCore::SVGColor::createFromString):
+ (WebCore::SVGColor::createFromColor):
+ (WebCore::SVGColor::color):
+ (WebCore::SVGColor::colorType):
+ (WebCore::SVGColor::~SVGColor):
+ (WebCore::SVGColor::setColor):
+ (WebCore::SVGColor::setColorType):
+ * svg/SVGColor.idl: Enable strict type checking.
+ * svg/SVGPaint.cpp: Rewrite to fully implement the SVGPaint API, merge all constructors into one, use more descriptable create() naming convention.
+ (WebCore::valueChanged): Stub implementation, will land in a follow-up patch.
+ (WebCore::colorTypeForPaintType):
+ (WebCore::SVGPaint::SVGPaint):
+ (WebCore::SVGPaint::setUri):
+ (WebCore::SVGPaint::defaultFill):
+ (WebCore::SVGPaint::defaultStroke):
+ (WebCore::SVGPaint::setPaint):
+ (WebCore::SVGPaint::cssText):
+ (WebCore::SVGPaint::matchesTargetURI):
+ * svg/SVGPaint.h:
+ (WebCore::SVGPaint::createUnknown):
+ (WebCore::SVGPaint::createNone):
+ (WebCore::SVGPaint::createCurrentColor):
+ (WebCore::SVGPaint::createColor):
+ (WebCore::SVGPaint::createURI):
+ (WebCore::SVGPaint::createURIAndColor):
+ (WebCore::SVGPaint::paintType):
+ (WebCore::SVGPaint::uri):
+ (WebCore::SVGPaint::create):
+ (WebCore::SVGPaint::isSVGPaint):
+ * svg/SVGPaint.idl: Enable strict type checking.
+
+2011-02-25 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ FESpecularLightingElement changes doesn't require relayout.
+ https://bugs.webkit.org/show_bug.cgi?id=54451
+
+ When the FESpecularLightingElement receives an update message but the given value remains the same we don't need
+ to relayout the filter. Otherwise, the light source requests a repaint on the specular lighting filter.
+ Besides add ASSERTs to DiffuseLightElement::setFilterEffectAttribute as well to avoid lightSources being null.
+
+ No new tests are needed to check the repaint because it is covered by the dynamic update tests of FESpecularLighting.
+ We only test what happens if we remove the light source of specularLight.
+
+ Test: svg/dynamic-updates/SVGFESpecularLightingElement-remove-lightSource.html
+
+ * platform/graphics/filters/FESpecularLighting.cpp:
+ (WebCore::FESpecularLighting::setSurfaceScale):
+ (WebCore::FESpecularLighting::setSpecularConstant):
+ (WebCore::FESpecularLighting::setSpecularExponent):
+ (WebCore::FESpecularLighting::setKernelUnitLengthX):
+ (WebCore::FESpecularLighting::setKernelUnitLengthY):
+ * platform/graphics/filters/FESpecularLighting.h:
+ * rendering/svg/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::postApplyResource):
+ * svg/SVGFEDiffuseLightingElement.cpp:
+ (WebCore::SVGFEDiffuseLightingElement::setFilterEffectAttribute):
+ (WebCore::SVGFEDiffuseLightingElement::lightElementAttributeChanged):
+ (WebCore::SVGFEDiffuseLightingElement::build):
+ * svg/SVGFEDiffuseLightingElement.h:
+ * svg/SVGFELightElement.cpp:
+ (WebCore::SVGFELightElement::findLightElement):
+ (WebCore::SVGFELightElement::findLight):
+ (WebCore::SVGFELightElement::svgAttributeChanged):
+ * svg/SVGFELightElement.h:
+ * svg/SVGFESpecularLightingElement.cpp:
+ (WebCore::SVGFESpecularLightingElement::setFilterEffectAttribute):
+ (WebCore::SVGFESpecularLightingElement::svgAttributeChanged):
+ (WebCore::SVGFESpecularLightingElement::lightElementAttributeChanged):
+ (WebCore::SVGFESpecularLightingElement::build):
+ * svg/SVGFESpecularLightingElement.h:
+
+2011-02-24 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Revert the support for QNAM affined to a different thread.
+ https://bugs.webkit.org/show_bug.cgi?id=55149
+
+ Qt 4.8 will have QNAM use its own thread internally by default,
+ no need to keep this complexity in WebKit.
+
+ This mainly reverts:
+ http://trac.webkit.org/changeset/73710
+ http://trac.webkit.org/changeset/73712
+
+ * WebCore.pro:
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ (WebCore::MediaPlayerPrivateQt::commitLoad):
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::FormDataIODevice::FormDataIODevice):
+ (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::setLoadMode):
+ (WebCore::QNetworkReplyHandler::abort):
+ (WebCore::QNetworkReplyHandler::release):
+ (WebCore::ignoreHttpError):
+ (WebCore::QNetworkReplyHandler::finish):
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+ (WebCore::QNetworkReplyHandler::forwardData):
+ (WebCore::QNetworkReplyHandler::start):
+ (WebCore::QNetworkReplyHandler::sendQueuedItems):
+ * platform/network/qt/QNetworkReplyHandler.h:
+ (WebCore::QNetworkReplyHandler::reply):
+ * platform/network/qt/QtNAMThreadSafeProxy.cpp: Removed.
+ * platform/network/qt/QtNAMThreadSafeProxy.h: Removed.
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::ResourceHandle::willLoadFromCache):
+ * platform/qt/CookieJarQt.cpp:
+ (WebCore::cookieJar):
+ (WebCore::setCookies):
+ (WebCore::cookies):
+ (WebCore::cookieRequestHeaderFieldValue):
+ (WebCore::cookiesEnabled):
+
+2011-02-25 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ FEBlendElement changes doesn't require relayout
+ https://bugs.webkit.org/show_bug.cgi?id=55138
+
+ When the FEBlendElement receives an update message but the given value remains the same we don't need
+ to relayout the filter.
+
+ No new tests are needed because this modificiation is covered by the dynamic update tests of FEBlend.
+
+ * platform/graphics/filters/FEBlend.cpp:
+ (WebCore::FEBlend::setBlendMode):
+ * platform/graphics/filters/FEBlend.h:
+ * svg/SVGFEBlendElement.cpp:
+ (WebCore::SVGFEBlendElement::setFilterEffectAttribute):
+ (WebCore::SVGFEBlendElement::svgAttributeChanged):
+ (WebCore::SVGFEBlendElement::synchronizeProperty):
+ * svg/SVGFEBlendElement.h:
+
+2011-02-24 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Antonio Gomes.
+
+ Clean up: Extract table height adjustment for <caption> into common function
+ https://bugs.webkit.org/show_bug.cgi?id=54936
+
+ We use similar logic for adjusting the height of a table with respect
+ to a top- and bottom-positioned <caption>. Instead, we should extract
+ the common code into a shared function.
+
+ No functionality changed. So no new tests.
+
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::adjustLogicalHeightForCaption): Added.
+ (WebCore::RenderTable::layout): Extracted common code to adjust table height
+ with respect to the <caption> into RenderTable::adjustLogicalHeightForCaption().
+ * rendering/RenderTable.h:
+
+2011-02-24 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Move draw time properties out of *LayerChromium to CCLayerImpl
+ https://bugs.webkit.org/show_bug.cgi?id=55013
+
+ This adds a new type (tentatively named CCLayerImpl) responsible for drawing/compositing layers.
+ Currently LayerChromiums know about their CCLayerImpls and CCLayerImpls rely on the LayerChromium
+ tree for structure. In theory updates are a LayerChromium-only concept and draw is a CCLayerImpl-only
+ concept, but this patch doesn't go all there yet in the interest of keeping the patch small-ish.
+
+ RenderSurfaces are a CCLayerImpl-only concepts and no longer have any direct LayerChromium dependencies.
+
+ Note: I've put CCLayerImpl into a new 'cc' directory under platform/graphics/chromium/ and intentionally
+ not added it to the include path. We plan to add more compositor implementation details to this directory
+ and we want to keep accidental dependencies on these files to a minimum.
+
+ See https://bugs.webkit.org/show_bug.cgi?id=54047 for the big picture.
+
+ Refactor only, compositing/ tests cover these codepaths.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/CanvasLayerChromium.cpp:
+ (WebCore::CanvasLayerChromium::draw):
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
+ (WebCore::ContentLayerChromium::updateContentsIfDirty):
+ (WebCore::ContentLayerChromium::draw):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::LayerChromium):
+ (WebCore::LayerChromium::cleanupResources):
+ (WebCore::LayerChromium::setLayerRenderer):
+ (WebCore::LayerChromium::setBounds):
+ (WebCore::LayerChromium::setFrame):
+ (WebCore::LayerChromium::setNeedsDisplay):
+ (WebCore::LayerChromium::setBorderColor):
+ (WebCore::LayerChromium::borderColor):
+ (WebCore::LayerChromium::setBorderWidth):
+ (WebCore::LayerChromium::borderWidth):
+ (WebCore::LayerChromium::layerRenderer):
+ (WebCore::LayerChromium::setDoubleSided):
+ (WebCore::LayerChromium::bounds):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::maskDrawLayer):
+ (WebCore::LayerChromium::ccLayerImpl):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::compareLayerZ):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::updateLayersRecursive):
+ (WebCore::LayerRendererChromium::setCompositeOffscreen):
+ (WebCore::LayerRendererChromium::getOffscreenLayerTexture):
+ (WebCore::LayerRendererChromium::drawLayer):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/PluginLayerChromium.cpp:
+ (WebCore::PluginLayerChromium::draw):
+ * platform/graphics/chromium/RenderSurfaceChromium.cpp:
+ (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
+ (WebCore::RenderSurfaceChromium::drawSurface):
+ (WebCore::RenderSurfaceChromium::draw):
+ * platform/graphics/chromium/RenderSurfaceChromium.h:
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::drawYUV):
+ (WebCore::VideoLayerChromium::drawRGBA):
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp: Added.
+ (WebCore::CCLayerImpl::CCLayerImpl):
+ (WebCore::CCLayerImpl::~CCLayerImpl):
+ (WebCore::CCLayerImpl::superlayer):
+ (WebCore::CCLayerImpl::maskLayer):
+ (WebCore::CCLayerImpl::replicaLayer):
+ (WebCore::CCLayerImpl::setLayerRenderer):
+ (WebCore::CCLayerImpl::createRenderSurface):
+ (WebCore::CCLayerImpl::updateContentsIfDirty):
+ (WebCore::CCLayerImpl::drawsContent):
+ (WebCore::CCLayerImpl::draw):
+ (WebCore::CCLayerImpl::unreserveContentsTexture):
+ (WebCore::CCLayerImpl::bindContentsTexture):
+ (WebCore::CCLayerImpl::cleanupResources):
+ (WebCore::CCLayerImpl::getDrawRect):
+ (WebCore::CCLayerImpl::drawDebugBorder):
+ * platform/graphics/chromium/cc/CCLayerImpl.h: Added.
+ (WebCore::CCLayerImpl::create):
+ (WebCore::CCLayerImpl::setDebugBorderColor):
+ (WebCore::CCLayerImpl::debugBorderColor):
+ (WebCore::CCLayerImpl::setDebugBorderWidth):
+ (WebCore::CCLayerImpl::debugBorderWidth):
+ (WebCore::CCLayerImpl::layerRenderer):
+ (WebCore::CCLayerImpl::renderSurface):
+ (WebCore::CCLayerImpl::clearRenderSurface):
+ (WebCore::CCLayerImpl::drawDepth):
+ (WebCore::CCLayerImpl::setDrawDepth):
+ (WebCore::CCLayerImpl::drawOpacity):
+ (WebCore::CCLayerImpl::setDrawOpacity):
+ (WebCore::CCLayerImpl::scissorRect):
+ (WebCore::CCLayerImpl::setScissorRect):
+ (WebCore::CCLayerImpl::targetRenderSurface):
+ (WebCore::CCLayerImpl::setTargetRenderSurface):
+ (WebCore::CCLayerImpl::doubleSided):
+ (WebCore::CCLayerImpl::setDoubleSided):
+ (WebCore::CCLayerImpl::bounds):
+ (WebCore::CCLayerImpl::setBounds):
+ (WebCore::CCLayerImpl::drawTransform):
+ (WebCore::CCLayerImpl::setDrawTransform):
+ (WebCore::CCLayerImpl::drawableContentRect):
+ (WebCore::CCLayerImpl::setDrawableContentRect):
+
+2011-02-24 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ REGRESSION (r79629): Non-expanding ruby base is start-aligned rather than centered
+ https://bugs.webkit.org/show_bug.cgi?id=55197
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Adjust the line boundaries even
+ if there are no expansion opportunities. This allows RenderRubyBase to center itself.
+
+2011-02-24 Darin Adler <darin@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ REGRESSION (r79466): http/tests/incremental/slow-utf8-html.pl flaky due to incorrect assertions
+ https://bugs.webkit.org/show_bug.cgi?id=55135
+
+ * platform/text/TextCodecUTF8.cpp:
+ (WebCore::TextCodecUTF8::decode): Removed incorrect assertions.
+
+2011-02-24 Darin Adler <darin@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ WebKit2: Image-based cursors do not work
+ https://bugs.webkit.org/show_bug.cgi?id=55184
+
+ * WebCore.exp.in: Exported new entry points now used by WebKit2.
+
+2011-02-24 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ ImageBuffer::clip creates an image of the incorrect context in IOSurface case
+ https://bugs.webkit.org/show_bug.cgi?id=55170
+
+ Test: fast/canvas/2d.fillText.gradient.html
+
+ * platform/graphics/cg/ImageBufferCG.cpp: Clipping against ImageBuffer's context
+ instead of ourself (the passed in context).
+
+2011-02-24 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ RenderBoxModelObject::paintBoxShadow should bail earlier
+ https://bugs.webkit.org/show_bug.cgi?id=55186
+
+ Make paintBoxShadow() bail early if there is no shadow, and make
+ callers consistent in not checking for box-shadow before calling it.
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::paintBoxDecorations):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintBoxShadow):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::paintBoxDecorations):
+
+2011-02-24 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Add a USE() macro to control use of the built-in UTF8 codec
+ https://bugs.webkit.org/show_bug.cgi?id=55189
+
+ Guards the built in UTF8 codec registration with USE(BUILTIN_UTF8_CODEC). ICU is used if the USE() is not set.
+
+ * platform/text/TextCodecICU.cpp:
+ (WebCore::TextCodecICU::registerEncodingNames):
+ * platform/text/TextEncodingRegistry.cpp:
+ (WebCore::buildBaseTextCodecMaps):
+
+2011-02-24 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ <rdar://problem/8902740> Expand ruby base when it is shorter than the ruby text
+ https://bugs.webkit.org/show_bug.cgi?id=55183
+
+ Test: fast/ruby/base-shorter-than-text.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::availableLogicalWidthForLine):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::adjustInlineDirectionLineBounds): Added. The base clase implementation does nothing.
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::textAlignmentForLine): Added. Implements the logic that changes "justify" to "auto" for
+ the last line or a line that ends with a hard break.
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Use textAlignmentForLine(), compute the available
+ width more efficiently, and call adjustInlineDirectionLineBounds() for justified lines.
+ * rendering/RenderRubyBase.cpp:
+ (WebCore::RenderRubyBase::rubyRun): Added.
+ (WebCore::RenderRubyBase::textAlignmentForLine): Added. Alwyas returns "justify".
+ (WebCore::RenderRubyBase::adjustInlineDirectionLineBounds): Added. Insets the line such that the inset is
+ half the width of a single intra-line expansion.
+ * rendering/RenderRubyBase.h:
+ * rendering/RenderRubyRun.cpp:
+ (WebCore::RenderRubyRun::addChild):
+
+2011-02-24 James Robinson <jamesr@chromium.org>
+
+ Unreviewed, rolling out r79604.
+ http://trac.webkit.org/changeset/79604
+ https://bugs.webkit.org/show_bug.cgi?id=55017
+
+ Causes assertions to fail on some SVG tests
+
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::dataChanged):
+
+2011-02-24 Oliver Hunt <oliver@apple.com>
+
+ Build fix
+
+ * bindings/js/JSBindingsAllInOne.cpp:
+
+2011-02-24 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.
+
+ Rework the logical height computation for positioned elements to work in terms of before and after. That way the offset is determined from
+ the correct container side in flipped block writing modes (e.g., vertical-rl).
+
+ Patch locationOffsetIncludingFlipping to use the containing block to flip so that it will behave correctly with absolute/fixed positioned
+ elements.
+
+ Patch offsetFromContainer to use the flipped location offset for absolute/fixed positioned elements so that localToAbsolute works properly.
+
+ Added twelve tests in fast/block/positioning/vertical-rl and fast/block/positioning/vertical-lr.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::offsetFromContainer):
+ (WebCore::RenderBox::computePositionedLogicalHeight):
+ (WebCore::RenderBox::computePositionedLogicalHeightUsing):
+ (WebCore::RenderBox::locationOffsetIncludingFlipping):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::logicalTop):
+ (WebCore::InheritedFlags::logicalBottom):
+
+2011-02-23 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Geoffrey Garen.
+
+ Make WeakGCMap use new handle infrastructure
+ https://bugs.webkit.org/show_bug.cgi?id=55100
+
+ Update to new WeakGCMap APIs, this requires threading global
+ data to a few functions that did not need it in the past, but
+ also gets rid of a large number of destructors, as well as the
+ forgetDOMNode, etc APIs.
+
+ We can also drop the JSDebugWrapperSet as its only purpose was
+ to ensure that we retained correct semantics in the old WeakGCMap,
+ but happilly these semantics are now guaranteed by the map itself.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::hasCachedDOMObjectWrapperUnchecked):
+ (WebCore::cacheDOMObjectWrapper):
+ (WebCore::hasCachedDOMNodeWrapperUnchecked):
+ (WebCore::cacheDOMNodeWrapper):
+ (WebCore::isObservableThroughDOM):
+ (WebCore::markDOMNodesForDocument):
+ (WebCore::takeWrappers):
+ (WebCore::updateDOMNodeDocument):
+ (WebCore::markDOMObjectWrapper):
+ (WebCore::markDOMNodeWrapper):
+ (WebCore::stringWrapperDestroyed):
+ (WebCore::jsStringSlowCase):
+ * bindings/js/JSDOMBinding.h:
+ * bindings/js/JSDOMWrapper.cpp:
+ (WebCore::DOMObject::~DOMObject):
+ * bindings/js/JSDebugWrapperSet.cpp: Removed.
+ * bindings/js/JSDebugWrapperSet.h: Removed.
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bridge/jsc/BridgeJSC.cpp:
+ (JSC::Bindings::Instance::createRuntimeObject):
+ * bridge/jsc/BridgeJSC.h:
+ * bridge/runtime_object.cpp:
+ (JSC::Bindings::RuntimeObject::~RuntimeObject):
+ * bridge/runtime_root.cpp:
+ (JSC::Bindings::RootObject::invalidate):
+ (JSC::Bindings::RootObject::addRuntimeObject):
+ (JSC::Bindings::RootObject::removeRuntimeObject):
+ * bridge/runtime_root.h:
+
+2011-02-24 James Robinson <jamesr@chromium.org>
+
+ Fix chromium compile.
+
+ * bindings/v8/custom/V8LocationCustom.cpp:
+ (WebCore::V8Location::toStringCallback):
+
+2011-02-24 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Unreviewed, rolling out r79607.
+ http://trac.webkit.org/changeset/79607
+ https://bugs.webkit.org/show_bug.cgi?id=55157
+
+ Broke Chromium layout tests.
+
+ * html/shadow/MediaControls.cpp:
+ (WebCore::MediaControls::updateVolumeSliderContainer):
+ * rendering/RenderMediaControls.cpp:
+ (WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton):
+ * rendering/RenderMediaControls.h:
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::volumeSliderOffsetFromMuteButton):
+ * rendering/RenderTheme.h:
+ * rendering/RenderThemeChromiumMac.h:
+ * rendering/RenderThemeChromiumMac.mm:
+ (WebCore::RenderThemeChromiumMac::volumeSliderOffsetFromMuteButton):
+ * rendering/RenderThemeMac.h:
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::volumeSliderOffsetFromMuteButton):
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::RenderThemeWin::volumeSliderOffsetFromMuteButton):
+ * rendering/RenderThemeWin.h:
+
+2011-02-24 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Fix the clang -Woverloaded-virtual build.
+
+ JSLocation has a toString function which conflicts with the virtual JSObject::toString member function.
+ Fix this by renaming the implementation function from JSLocation::toString to JSLocation::toStringFunction.
+
+ * bindings/js/JSLocationCustom.cpp:
+ (WebCore::JSLocation::toStringFunction):
+ * bindings/v8/custom/V8LocationCustom.cpp:
+ (WebCore::V8Location::toStringFunctionCallback):
+ * page/Location.idl:
+
+2011-02-24 Anders Carlsson <andersca@apple.com>
+
+ Fix clang build.
+
+ * bindings/objc/WebScriptObject.mm:
+ (-[WebUndefined release]):
+ Release should be "oneway void".
+
+ (-[WebUndefined retainCount]):
+ Return NSUIntegerMax instead of UINT_MAX.
+
+2011-02-24 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Simplify RenderTheme::volumeSliderOffsetFromMuteButton, unduplicate code.
+ https://bugs.webkit.org/show_bug.cgi?id=55157
+
+ Refactoring, no functional changes. Covered by existing tests.
+
+ RenderTheme::volumeSliderOffsetFromMuteButton has the same duplicated
+ logic for all platforms. This patch:
+ a) moves the common logic of determining absolute positioning to a
+ platform-agnostic place;
+ b) simplifies the method to return constant offset.
+
+ * html/shadow/MediaControls.cpp:
+ (WebCore::volumeSliderOffset): Added new helper function,
+ capturing common logic of finding the absolute position of the volume slider.
+ (WebCore::MediaControls::updateVolumeSliderContainer): Changed to use the
+ new helper.
+ * rendering/RenderMediaControls.cpp:
+ (WebCore::RenderMediaControls::volumeSliderOffsetRelativeToMuteButton): Simplified.
+ * rendering/RenderMediaControls.h: Ditto.
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::volumeSliderOffsetRelativeToMuteButton): Ditto.
+ * rendering/RenderTheme.h: Ditto.
+ * rendering/RenderThemeChromiumMac.h: Ditto.
+ * rendering/RenderThemeChromiumMac.mm: Ditto.
+ (WebCore::RenderThemeChromiumMac::volumeSliderOffsetRelativeToMuteButton): Ditto.
+ * rendering/RenderThemeMac.h: Ditto.
+ * rendering/RenderThemeMac.mm: Ditto.
+ (WebCore::RenderThemeMac::volumeSliderOffsetRelativeToMuteButton): Ditto.
+ * rendering/RenderThemeWin.cpp: Ditto.
+ (WebCore::RenderThemeWin::volumeSliderOffsetRelativeToMuteButton): Ditto.
+ * rendering/RenderThemeWin.h: Ditto.
+
+2011-02-24 Tom Sepez <tsepez@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Make frameview resized event dispatch async so that it occurs
+ after layout has completed.
+
+ https://bugs.webkit.org/show_bug.cgi?id=54467
+ Test: fast/replaced/frame-removed-during-resize-smaller.html
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::sendResizeEvent):
+
+2011-02-24 Xianzhu Wang <wangxianzhu@google.com>
+
+ Reviewed by Adam Barth.
+
+ Use loader->init() instead of loader->load() to avoid complex fake
+ request loading and cleanup logic, and also avoid ResourceLoader leaks.
+
+ https://bugs.webkit.org/show_bug.cgi?id=55017
+
+ Test: svg/misc/SVGImage-leak-ResourceLoader.html
+
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::dataChanged):
+
+2011-02-24 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Chromium Mac build fix after r79591.
+
+ * WebCore.gypi: Added RenderMediaControls to WebCore.gypi.
+
+2011-02-24 Misha Tyutyunik <michael.tyutyunik@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Dont use QPixmapCache if QPixmapCache::cacheLimit() is too small
+ (2048Kb for now).
+ https://bugs.webkit.org/show_bug.cgi?id=54887
+
+ No new tests required.
+
+ * platform/graphics/qt/GraphicsLayerQt.cpp:
+ (WebCore::GraphicsLayerQtImpl::allowAcceleratedCompositingCache):
+ (WebCore::GraphicsLayerQtImpl::drawLayerContent):
+ (WebCore::GraphicsLayerQtImpl::paint):
+ (WebCore::GraphicsLayerQtImpl::flushChanges):
+
+2011-02-20 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Nikolas Zimmermann.
+
+ [CAIRO] Support ImageBuffers clip operation on all Cairo ports
+ https://bugs.webkit.org/show_bug.cgi?id=23526
+
+ Add support for ImageBuffer clipping on Cairo by emulating them with image
+ masks. Since masking is immediate on Cairo, we must store the mask surfaces
+ on a stack and apply them during restorePlatformState.
+
+ * platform/graphics/GraphicsContext.h: Add pushImageMask.
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::savePlatformState): Push an empty mask onto the
+ stack, so we can keep track of when to actually apply the image mask.
+ (WebCore::GraphicsContext::restorePlatformState): When we are ready to apply
+ an image mask, use cairo_mask_surface to mask the group that we pushed onto
+ our surface.
+ (WebCore::GraphicsContext::pushImageMask): Added. This method will push a surface
+ onto the image mask stack and push a group onto the Cairo state, so that the masking
+ only affects what we paint after this point.
+ * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Added a class to keep
+ track of image masking information after calls to pushImageMask.
+ (WebCore::ImageMaskInformation::update): Added
+ (WebCore::ImageMaskInformation::valid): Added
+ (WebCore::ImageMaskInformation::maskSurface): Added
+ (WebCore::ImageMaskInformation::maskRect): Added
+ * platform/graphics/cairo/ImageBufferCairo.cpp:
+ (WebCore::ImageBuffer::clip): Call GraphicsContext::pushImageMask.
+
+2011-02-24 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Eric Carlson.
+
+ Add RenderMediaControls to Mac build, unduplicate one method.
+ https://bugs.webkit.org/show_bug.cgi?id=55152
+
+ Refactoring, no functional changes.
+
+ * WebCore.xcodeproj/project.pbxproj: Added RenderMediaControls to project,
+ ran sort-XCode-project-file.
+ * rendering/RenderMediaControls.cpp: Moved ENABLE(VIDEO) and PLATFORM(WIN)
+ defines to allow building on Mac.
+ * rendering/RenderMediaControls.h: Ditto.
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::volumeSliderOffsetFromMuteButton): Replaced guts
+ with a call to RenderMediaControls function.
+
+2011-02-24 James Robinson <jamesr@chromium.org>
+
+ Unreviewed, rolling out r79584.
+ http://trac.webkit.org/changeset/79584
+ https://bugs.webkit.org/show_bug.cgi?id=44797
+
+ [chromium] Patch does not compile if ENABLE_FULLSCREEN_API is
+ not set
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2011-02-24 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ Do not cache the default cairo font options using a static
+ variable. It fixes a memory leak reported by valgrind.
+
+ * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
+ (WebCore::getDefaultFontOptions):
+ (WebCore::FontPlatformData::initializeWithFontFace):
+
+2011-02-24 Andrew Wilson <atwilson@chromium.org>
+
+ Unreviewed, rolling out r79570.
+ http://trac.webkit.org/changeset/79570
+ https://bugs.webkit.org/show_bug.cgi?id=54874
+
+ Breaks chromium build because glue/mocks/mock_web_frame.h/cc
+ was not updated
+
+ * WebCore.exp.in:
+
+2011-02-24 David Dorwin <ddorwin@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Enable WebKit Full Screen API in Chromium. The element becomes the full size of the window, but the window is not yet full screen. Support is disabled by default.
+
+ fullscreen javascript bindings not implemented for v8
+ https://bugs.webkit.org/show_bug.cgi?id=44797
+
+ Tested by the existing fullscreen Layout Tests.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2011-02-24 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: move querySelectorAll from CSS agent to DOM agent where it belongs.
+ https://bugs.webkit.org/show_bug.cgi?id=55131
+
+ Test: inspector/elements/dom-agent-query-selector.html
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorCSSAgent.cpp:
+ * inspector/InspectorCSSAgent.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::nodeToSelectOn):
+ (WebCore::InspectorDOMAgent::querySelector):
+ (WebCore::InspectorDOMAgent::querySelectorAll):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/front-end/AuditRules.js:
+ (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
+ * inspector/front-end/CSSStyleModel.js:
+ (WebInspector.CSSStyleModel.prototype.setRuleSelector.callback):
+ (WebInspector.CSSStyleModel.prototype.setRuleSelector):
+ (WebInspector.CSSStyleModel.prototype.addRule.callback):
+ (WebInspector.CSSStyleModel.prototype.addRule):
+
+2011-02-24 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Fragment parsing does not need to use HTMLSourceTracker
+ https://bugs.webkit.org/show_bug.cgi?id=55011
+
+ Any performance gains from this patch are likely
+ the result of working around:
+ https://bugs.webkit.org/show_bug.cgi?id=55005
+ (Which suggests that fixing bug 55005 will speed
+ up normal HTML parsing substantially.)
+
+ Assuming I ran the numbers correct, here is the
+ change from PerformanceTests/Parser/tiny-innerHTML:
+ Before patch:
+ avg 5586.1
+ median 5594
+ stdev 41.295157101045135
+ min 5425
+ max 5633
+
+ After Patch:
+ avg 2603.9
+ median 2609.5
+ stdev 32.500615378789355
+ min 2475
+ max 2649
+
+ Removing just the HTMLSourceTracker calls brought our
+ score from 5500 to 5200, removing the XSSFilter as well
+ brought it to 2600 on my machine.
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::HTMLDocumentParser):
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ * html/parser/HTMLDocumentParser.h:
+
+2011-02-24 Amruth Raj <amruthraj@motorola.com> and Ravi Phaneendra Kasibhatla <ravi.kasibhatla@motorola.com> and Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Implement WebEventFactory, WebErrors classes for WebKit2
+ https://bugs.webkit.org/show_bug.cgi?id=48510
+
+ Exported static functions for GTK, we need them to create events
+ in WebKit2.
+
+ * platform/PlatformKeyboardEvent.h:
+ * platform/gtk/KeyEventGtk.cpp:
+ (WebCore::PlatformKeyboardEvent::keyIdentifierForGdkKeyCode):
+ (WebCore::PlatformKeyboardEvent::windowsKeyCodeForGdkKeyCode):
+ (WebCore::PlatformKeyboardEvent::singleCharacterString):
+
+2011-02-24 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Remove the GFile GOwnPtr specialization
+ https://bugs.webkit.org/show_bug.cgi?id=55154
+
+ Convert uses of GOwnPtr<GFile> to GRefPtr<GFile>.
+
+ No new tests. This should not change behavior.
+
+ * plugins/gtk/PluginPackageGtk.cpp: Fix include order and remove unnecessary include.
+ (WebCore::PluginPackage::load): Use GRefPtr for GFile instead of GOwnPtr.
+
+2011-02-24 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Rename PLATFORM(SKIA) to USE(SKIA)
+ https://bugs.webkit.org/show_bug.cgi?id=55090
+
+ * config.h: Removed second define of PLATFORM(SKIA).
+ * html/HTMLCanvasElement.cpp:
+ * platform/graphics/FloatPoint.h:
+ * platform/graphics/FloatRect.h:
+ * platform/graphics/Gradient.cpp:
+ * platform/graphics/Gradient.h:
+ * platform/graphics/GraphicsContext.cpp:
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/ImageSource.h:
+ * platform/graphics/IntPoint.h:
+ * platform/graphics/IntRect.h:
+ * platform/graphics/Path.h:
+ * platform/graphics/Pattern.cpp:
+ * platform/graphics/Pattern.h:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/GLES2Canvas.cpp:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ * platform/graphics/chromium/LayerChromium.cpp:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ * platform/graphics/chromium/ShaderChromium.h:
+ * platform/graphics/gpu/LoopBlinnPathProcessor.cpp:
+ * platform/graphics/transforms/AffineTransform.h:
+ * platform/graphics/transforms/TransformationMatrix.h:
+ * platform/image-decoders/ImageDecoder.cpp:
+ * platform/image-decoders/ImageDecoder.h:
+ * rendering/svg/RenderSVGResourceSolidColor.cpp:
+
+2011-02-24 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: follow up to 79566. USE_PARAM not declared
+ https://bugs.webkit.org/show_bug.cgi?id=55155
+
+ * bindings/js/JSInjectedScriptHostCustom.cpp:
+ (WebCore::JSInjectedScriptHost::currentCallFrame):
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ (WebCore::V8InjectedScriptHost::currentCallFrameCallback):
+
+2011-02-24 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Add support for missing properties to getComputedStyle
+ https://bugs.webkit.org/show_bug.cgi?id=23668
+
+ Implement getComputedStyle for the content, counter and outline-offset
+ properties.
+
+ Test: fast/css/getComputedStyle/computed-style-properties.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::contentToCSSValue):
+ (WebCore::counterToCSSValue):
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::cssText):
+ * css/CSSPrimitiveValue.h:
+
+2011-02-24 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ SegmentedString does not need an m_composite member
+ https://bugs.webkit.org/show_bug.cgi?id=55083
+
+ Storing m_composite as distinct from m_substrings.isEmpty()
+ was just error prone and eventually going to get us in trouble.
+
+ I also cleaned up some of the style in SegementedString.*
+ since this file long predates check-webkit-style.
+
+ * platform/text/SegmentedString.cpp:
+ (WebCore::SegmentedString::SegmentedString):
+ (WebCore::SegmentedString::operator=):
+ (WebCore::SegmentedString::length):
+ (WebCore::SegmentedString::setExcludeLineNumbers):
+ (WebCore::SegmentedString::clear):
+ (WebCore::SegmentedString::append):
+ (WebCore::SegmentedString::prepend):
+ (WebCore::SegmentedString::advanceSubstring):
+ (WebCore::SegmentedString::toString):
+ * platform/text/SegmentedString.h:
+ (WebCore::SegmentedSubstring::SegmentedSubstring):
+ (WebCore::SegmentedSubstring::appendTo):
+ (WebCore::SegmentedString::SegmentedString):
+ (WebCore::SegmentedString::isComposite):
+
+2011-02-24 David Kilzer <ddkilzer@apple.com>
+
+ BUILD FIX: Add missing include for UnusedParam.h
+
+ Not reviewed.
+
+ * platform/mac/FileSystemMac.mm: Add include. It should have
+ originally been added with r76614.
+
+2011-02-24 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ DumpRenderTree should reset frame opener between tests.
+ https://bugs.webkit.org/show_bug.cgi?id=54874
+
+ No new tests. (no code affected, just exporting a method for DumpRenderTree use)
+
+ * WebCore.exp.in:
+
+2011-02-24 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Removing a SVG animation target during animation crashes WebKit
+ https://bugs.webkit.org/show_bug.cgi?id=12065
+
+ SVGAnimations with IRI references via 'xlink:href' are slow
+ https://bugs.webkit.org/show_bug.cgi?id=49437
+
+ Store reference to target element for SVG animation elements. This is important if the
+ target gets referenced via 'xlink:href'. At the moment we would call getElementById() multiple
+ times on every animation step. A very expensive operation. This will be avoided with this patch.
+ On the other hand, we need to be sure that the target element is always valid. The reference is
+ reset, if the target was removed from document or its destructor was called. A HashMap in
+ SVGDocumentExtensions stores all mappings from target element to all current animation elements.
+
+ Tests: svg/custom/animate-target-id-changed.svg
+ svg/custom/animate-target-removed-from-document.svg
+
+ * svg/SVGDocumentExtensions.cpp:
+ (WebCore::SVGDocumentExtensions::~SVGDocumentExtensions):
+ (WebCore::SVGDocumentExtensions::addAnimationElementToTarget): New animation gets applied to target.
+ (WebCore::SVGDocumentExtensions::removeAnimationElementFromTarget): Animation stoped, remove it from HashMap.
+ (WebCore::SVGDocumentExtensions::removeAllAnimationElementsFromTarget): Target no longer in document, reset all
+ references in SVG animation elements.
+ * svg/SVGDocumentExtensions.h:
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::~SVGElement):
+ (WebCore::SVGElement::removedFromDocument):
+ (WebCore::SVGElement::attributeChanged):
+ * svg/SVGElement.h:
+ * svg/SVGHKernElement.cpp:
+ (WebCore::SVGHKernElement::removedFromDocument):
+ * svg/SVGVKernElement.cpp:
+ (WebCore::SVGVKernElement::removedFromDocument):
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::SVGSMILElement::SVGSMILElement):
+ (WebCore::SVGSMILElement::removedFromDocument):
+ (WebCore::SVGSMILElement::eventBaseFor):
+ (WebCore::SVGSMILElement::targetElement):
+ * svg/animation/SVGSMILElement.h:
+ (WebCore::SVGSMILElement::resetTargetElement):
+
+2011-02-24 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ REGRESSION: Accelerated transitions are jumpy
+ https://bugs.webkit.org/show_bug.cgi?id=55022
+
+ When an accelerated transition used the default timing function,
+ a typo in toCAMediaTimingFunction() resulting in the incorrect
+ timing function being used.
+
+ Test: transitions/default-timing-function.html
+
+ * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
+ (toCAMediaTimingFunction):
+
+2011-02-24 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Remove bogus optimizations in TextBreakIteratorQt
+ https://bugs.webkit.org/show_bug.cgi?id=55139
+
+ Let QTextBoundaryFinder hold a deep copy of the string data it's
+ operating on, and don't use the same working buffer for all iterators.
+
+ * platform/text/qt/TextBreakIteratorQt.cpp:
+ (WebCore::TextBreakIterator::TextBreakIterator):
+ (WebCore::setUpIterator):
+
+2011-02-24 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Text editor] Bug in the highlighter
+ https://bugs.webkit.org/show_bug.cgi?id=54876
+
+ Tests: inspector/editor/highlighter-long-line.html
+ inspector/editor/highlighter-paste-in-comment.html
+
+ * inspector/front-end/TextEditorHighlighter.js:
+ (WebInspector.TextEditorHighlighter):
+ (WebInspector.TextEditorHighlighter.prototype.set highlightChunkLimit):
+ (WebInspector.TextEditorHighlighter.prototype.updateHighlight):
+ (WebInspector.TextEditorHighlighter.prototype._highlightLines):
+
+2011-02-24 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Tony Gentilcore.
+
+ [Web Timing] Zero out navigationStart and unloadEvent on cross-origin redirect
+ https://bugs.webkit.org/show_bug.cgi?id=55068
+
+ Test: http/tests/misc/webtiming-origins.html
+
+ * page/PerformanceTiming.cpp:
+ (WebCore::PerformanceTiming::navigationStart): Zero out on cross origin redirect.
+ (WebCore::PerformanceTiming::unloadEventStart): Ditto.
+ (WebCore::PerformanceTiming::unloadEventEnd): Ditto.
+
+2011-02-24 Adam Klein <adamk@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [chromium] Add code to WebKit Chromium to allow access to NetworkStateNotifier
+ https://bugs.webkit.org/show_bug.cgi?id=54516
+
+ Give Chromium's NetworkStateNotifier the ability to change the value
+ of m_isOnLine, rather than making it always true.
+
+ No new tests, not sure how to test this. No other LayoutTests seem
+ to exercise navigator.onLine.
+
+ * WebCore.gypi:
+ * platform/network/NetworkStateNotifier.cpp:
+ (WebCore::NetworkStateNotifier::setOnLine): Moved and renamed from NetworkStateNotifierAndroid.
+ * platform/network/NetworkStateNotifier.h:
+ (WebCore::NetworkStateNotifier::networkStateChange): Forward to setOnLine.
+ * platform/network/android/NetworkStateNotifierAndroid.cpp: Removed.
+ * platform/network/chromium/NetworkStateNotifierChromium.cpp: Removed.
+ * platform/network/chromium/NetworkStateNotifierPrivate.h: Removed.
+
+2011-02-24 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Eric Seidel.
+
+ Support building WebKit with Python 3
+ https://bugs.webkit.org/show_bug.cgi?id=55038
+
+ Add support for Python 3 without breaking support for Python 2.
+
+ Main issues:
+ -print is a function in Python 3
+ -list.sort() no longer have the cmp parameter
+ -string.uppercase and string.lowercase have been removed
+
+ * html/parser/create-html-entity-table:
+
+2011-02-24 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ AX: WebKit should expose MathML at least as well as it exposes ARIA role="math"
+ https://bugs.webkit.org/show_bug.cgi?id=55049
+
+ Make <math> elements behave as ARIA math roles and use MathML::alttext as a
+ possible accessible label.
+
+ Test: platform/mac/accessibility/math-alttext.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::accessibilityDescription):
+ (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
+ * mathml/mathattrs.in:
+
+2011-02-24 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: adjust protocol message format according to spec.
+ https://bugs.webkit.org/show_bug.cgi?id=55140
+
+ * inspector/CodeGeneratorInspector.pm:
+
+2011-02-24 Adam Roben <aroben@apple.com>
+
+ Windows Production build fix
+
+ * platform/network/cf/AuthenticationCF.cpp: Add an extra #include as a workaround for
+ <rdar://problem/9042114>.
+
+2011-02-23 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: refactor inspect() workflow so that it did not push dom nodes.
+ https://bugs.webkit.org/show_bug.cgi?id=55057
+
+ Test: inspector/console/command-line-api-inspect.html
+
+ I am working on getting rid of DOM agent pushes - everything should happen upon
+ front-end request. This patch changes the way we handle inspect() command line
+ api: instead of pushing nodes, we are telling front-end that inspect(object) has
+ been requested. It is then up to front-end to request dom nodes and focus them in
+ the tree. I also made inspect() work in a generic manner, using same routines for
+ nodes, databases, storages and potentially new elements.
+
+ As a side-effect, we don't do console.log from within inspect() anymore, but dump
+ inspected value as inspect's result.
+
+ Also, I added individual object release method and made object groups optional.
+
+ * bindings/js/JSInjectedScriptHostCustom.cpp:
+ (WebCore::InjectedScriptHost::scriptValueAsNode):
+ (WebCore::InjectedScriptHost::nodeAsScriptValue):
+ (WebCore::JSInjectedScriptHost::inspect):
+ (WebCore::JSInjectedScriptHost::databaseId):
+ (WebCore::JSInjectedScriptHost::storageId):
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ (WebCore::InjectedScriptHost::scriptValueAsNode):
+ (WebCore::InjectedScriptHost::nodeAsScriptValue):
+ (WebCore::V8InjectedScriptHost::inspectCallback):
+ (WebCore::V8InjectedScriptHost::databaseIdCallback):
+ (WebCore::V8InjectedScriptHost::storageIdCallback):
+ * inspector/InjectedScript.cpp:
+ (WebCore::InjectedScript::nodeForObjectId):
+ (WebCore::InjectedScript::releaseObject):
+ (WebCore::InjectedScript::wrapForConsole):
+ (WebCore::InjectedScript::inspectNode):
+ * inspector/InjectedScript.h:
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::inspectImpl):
+ (WebCore::InjectedScriptHost::databaseIdImpl):
+ (WebCore::InjectedScriptHost::storageIdImpl):
+ * inspector/InjectedScriptHost.h:
+ * inspector/InjectedScriptHost.idl:
+ * inspector/InjectedScriptSource.js:
+ * inspector/Inspector.idl:
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::focusNode):
+ * inspector/InspectorDOMAgent.cpp:
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorDOMStorageAgent.cpp:
+ (WebCore::InspectorDOMStorageAgent::storageId):
+ (WebCore::InspectorDOMStorageAgent::didUseDOMStorage):
+ * inspector/InspectorDOMStorageAgent.h:
+ * inspector/InspectorDOMStorageResource.cpp:
+ * inspector/InspectorDOMStorageResource.h:
+ * inspector/InspectorDatabaseAgent.cpp:
+ (WebCore::InspectorDatabaseAgent::databaseId):
+ * inspector/InspectorDatabaseAgent.h:
+ * inspector/InspectorDatabaseResource.cpp:
+ * inspector/InspectorDatabaseResource.h:
+ * inspector/InspectorRuntimeAgent.cpp:
+ (WebCore::InspectorRuntimeAgent::releaseObject):
+ * inspector/InspectorRuntimeAgent.h:
+ * inspector/front-end/AuditRules.js:
+ (WebInspector.AuditRules.evaluateInTargetWindow):
+ (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
+ * inspector/front-end/DOMStorage.js:
+ * inspector/front-end/Database.js:
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
+ * inspector/front-end/inspector.js:
+ (WebInspector.inspect):
+
+2011-02-22 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: refactor "script or resource" mess in scripts panel.
+ https://bugs.webkit.org/show_bug.cgi?id=54961
+
+ - Use sourceName instead of scriptOrResource
+ - Replace two huge functions _addScriptToFilesMenu and _showScriptOrResource that are
+ calling each other recursively with small one-purpose non-recursive functions
+
+ Test: inspector/debugger/scripts-panel.html
+
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype.get defaultFocusedElement):
+ (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
+ (WebInspector.ScriptsPanel.prototype._addScript):
+ (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
+ (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelectAndShowSourceFrameIfNeeded):
+ (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.optionCompare):
+ (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ (WebInspector.ScriptsPanel.prototype.canShowSourceLine):
+ (WebInspector.ScriptsPanel.prototype.showSourceLine):
+ (WebInspector.ScriptsPanel.prototype._showSourceFrame):
+ (WebInspector.ScriptsPanel.prototype._sourceFrameForSourceName):
+ (WebInspector.ScriptsPanel.prototype._recreateSourceFrame):
+ (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
+ (WebInspector.ScriptsPanel.prototype._addItemToBackForwardList):
+ (WebInspector.ScriptsPanel.prototype._sourceNameForScript):
+ (WebInspector.ScriptsPanel.prototype._scriptForSourceName):
+ (WebInspector.ScriptsPanel.prototype._callFrameSelected):
+ (WebInspector.ScriptsPanel.prototype._filesSelectChanged):
+ (WebInspector.ScriptsPanel.prototype._goBack):
+ (WebInspector.ScriptsPanel.prototype._goForward):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.setExecutionLine):
+
+2011-02-24 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Fragment parsing does not need to use HTMLSourceTracker
+ https://bugs.webkit.org/show_bug.cgi?id=55011
+
+ Any performance gains from this patch are likely
+ the result of working around:
+ https://bugs.webkit.org/show_bug.cgi?id=55005
+ (Which suggests that fixing bug 55005 will speed
+ up normal HTML parsing substantially.)
+
+ Assuming I ran the numbers correct, here is the
+ change from PerformanceTests/Parser/tiny-innerHTML:
+ Before patch:
+ avg 5586.1
+ median 5594
+ stdev 41.295157101045135
+ min 5425
+ max 5633
+
+ After Patch:
+ avg 2603.9
+ median 2609.5
+ stdev 32.500615378789355
+ min 2475
+ max 2649
+
+ Removing just the HTMLSourceTracker calls brought our
+ score from 5500 to 5200, removing the XSSFilter as well
+ brought it to 2600 on my machine.
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::HTMLDocumentParser):
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ * html/parser/HTMLDocumentParser.h:
+
+2011-02-24 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Laszlo Gombos.
+
+ [Qt] MinGW build fails to link
+ https://bugs.webkit.org/show_bug.cgi?id=55050
+
+ Prepend the libraries of subcomponents instead of appending them
+ to fix the library order according to the dependency of the libraries
+
+ No new tests needed.
+
+ * WebCore.pri:
+
+2011-02-24 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ CSP's script-src should block JavaScript URLs
+ https://bugs.webkit.org/show_bug.cgi?id=54787
+
+ Blocking JavaScript URLs required some re-architecting of the lifetime
+ of the ContentSecurityPolicy object. We now manage the lifetime the
+ same way we manage the lifetime of the SecurityOrigin object. In
+ particular, when SecurityOrigin inherits into an about:blank iframe, we
+ inherit the CSP object as well. (This is covered by the test added in
+ this patch.) In the future, we might consider making
+ ContentSecurityPolicy a component of SecurityOrigin instead of a
+ component of Document.
+
+ I noted the trickiness in
+ http://www.w3.org/Security/wiki/Content_Security_Policies so that we'll
+ make sure it gets defined properly in the spec.
+
+ Test: http/tests/security/contentSecurityPolicy/javascript-url.html
+
+ * bindings/ScriptControllerBase.cpp:
+ (WebCore::ScriptController::executeIfJavaScriptURL):
+ * dom/Document.cpp:
+ (WebCore::Document::initSecurityContext):
+ * dom/Document.h:
+ (WebCore::Document::contentSecurityPolicy):
+ * page/ContentSecurityPolicy.cpp:
+ (WebCore::ContentSecurityPolicy::allowJavaScriptURLs):
+ * page/ContentSecurityPolicy.h:
+ (WebCore::ContentSecurityPolicy::create):
+
+2011-02-21 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GStreamer] GRefPtr support for GstElement
+ https://bugs.webkit.org/show_bug.cgi?id=54870
+
+ * CMakeListsEfl.txt:
+ * GNUmakefile.am:
+ * platform/graphics/gstreamer/GRefPtrGStreamer.cpp: Added.
+ (WTF::GstElement):
+ * platform/graphics/gstreamer/GRefPtrGStreamer.h: Added.
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ (webKitWebSrcQuery):
+
+2011-02-24 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Share code between elementFromPoint and caretRangeFromPoint in Document.
+ https://bugs.webkit.org/show_bug.cgi?id=54610
+
+ Eliminate duplicate code by moving shared logic from elementFromPoint and
+ caretRangeFromPoint into helper function.
+
+ * dom/Document.cpp:
+ (WebCore::nodeFromPoint):
+ (WebCore::Document::elementFromPoint):
+ (WebCore::Document::caretRangeFromPoint):
+
+2011-02-24 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Unreviewed build fix.
+
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::removeAttribute):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::cachedResources):
+ * inspector/InspectorRuntimeAgent.cpp:
+ (WebCore::InspectorRuntimeAgent::evaluate):
+
+2011-02-24 Zan Dobersek <zandobersek@gmail.com>
+
+ Reviewed by Eric Seidel.
+
+ [gtk] Failing collinear arcTo canvas tests
+ https://bugs.webkit.org/show_bug.cgi?id=54658
+
+ Check for collinearity of the three points that affect how arcTo call
+ results. This behavior is in accordance with the HTML standard.
+
+ No new tests added as this is already covered by at least two tests.
+
+ * platform/graphics/cairo/PathCairo.cpp:
+ (WebCore::areaOfTriangleFormedByPoints):
+ (WebCore::Path::addArcTo):
+
+2011-02-24 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: There is a validator of the protocol message format.
+
+ It has two parts. InspectorBackendStub.js is the frontend part.
+ InspectorBackendDispatcher.cpp is the backend part.
+ Both parts are checking protocol message format and report the error if
+ the message has not enough fields or the types of fields do not match with
+ Inspector.idl specification. These validators are generated automatically.
+
+ In addition, we have a number of places at the backend where we check the
+ function arguments and do nothing if the arguments are invalid
+ from the business logic point of view.
+
+ This patch bring us an ability to report a custom error from such function to the frontend.
+
+ https://bugs.webkit.org/show_bug.cgi?id=54971
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/InjectedScriptHost.cpp:
+ * inspector/InspectorAgent.cpp:
+ * inspector/InspectorAgent.h:
+ * inspector/InspectorApplicationCacheAgent.cpp:
+ * inspector/InspectorApplicationCacheAgent.h:
+ * inspector/InspectorBrowserDebuggerAgent.cpp:
+ * inspector/InspectorBrowserDebuggerAgent.h:
+ * inspector/InspectorCSSAgent.cpp:
+ * inspector/InspectorCSSAgent.h:
+ * inspector/InspectorConsoleAgent.cpp:
+ * inspector/InspectorConsoleAgent.h:
+ * inspector/InspectorController.cpp:
+ * inspector/InspectorDOMAgent.cpp:
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorDOMStorageAgent.cpp:
+ * inspector/InspectorDOMStorageAgent.h:
+ * inspector/InspectorDatabaseAgent.cpp:
+ * inspector/InspectorDatabaseAgent.h:
+ * inspector/InspectorDebuggerAgent.cpp:
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/InspectorProfilerAgent.cpp:
+ * inspector/InspectorProfilerAgent.h:
+ * inspector/InspectorResourceAgent.cpp:
+ * inspector/InspectorResourceAgent.h:
+ * inspector/InspectorRuntimeAgent.cpp:
+ * inspector/InspectorRuntimeAgent.h:
+ * inspector/InspectorTimelineAgent.cpp:
+ * inspector/InspectorTimelineAgent.h:
+
+2011-02-24 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Ojan Vafai.
+
+ Crash when deleting inside a blockquote with a large offset
+ https://bugs.webkit.org/show_bug.cgi?id=55098
+
+ The bug was caused by inconsistency in lineBreakExistsAtPosition and breakOutOfEmptyMailBlockquotedParagraph.
+ While lineBreakExistsAtPosition was checking that a line break exists at the downstream of the given position,
+ breakOutOfEmptyMailBlockquotedParagraph wasn't using the downstream for caretPos. Fixed the bug by using
+ the downstream position to instantiate caretPos.
+
+ Co-author: Abhishek Arya <inferno@chromium.org>.
+
+ Test: editing/deleting/delete-blockquote-large-offsets.html
+
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
+
+2011-02-24 Robert Kroeger <rjkroege@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Added timestamps to PlatformTouchEvent etc.
+
+ PlatformTouchEvent doesn't have a timestamp and so
+ eventSender.leapForward cannot be used for touchevent based tests.
+ This change adds a timestamp to PlatformTouchEvent and initializes
+ it in a reasonable manner on Android and Qt platforms.
+
+ [chromium] [WebCore] [android] Touch events are missing time stamps
+ https://bugs.webkit.org/show_bug.cgi?id=53510
+
+ * platform/PlatformTouchEvent.h:
+ (WebCore::PlatformTouchEvent::PlatformTouchEvent):
+ (WebCore::PlatformTouchEvent::timestamp):
+ * platform/android/PlatformTouchEventAndroid.cpp:
+ (WebCore::PlatformTouchEvent::PlatformTouchEvent):
+ * platform/qt/PlatformTouchEventQt.cpp:
+ (WebCore::PlatformTouchEvent::PlatformTouchEvent):
+
+2011-02-24 Renata Hodovan <reni@webkit.org>
+
+ Unreviewed GTK, Snow Leopard build fix for r79474.
+
+ * platform/graphics/filters/FEConvolveMatrix.cpp:
+ (WebCore::FEConvolveMatrix::setKernelUnitLength):
+ * platform/graphics/filters/FEConvolveMatrix.h:
+
+2011-02-24 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ Use IntRect instead of a pointer to a GtkAllocation struct to avoid
+ unnecessary memory allocations.
+
+ * plugins/PluginView.h:
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::setNPWindowIfNeeded):
+ (WebCore::PluginView::plugAddedCallback):
+
+2011-02-24 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Unreviewed. Fix the build with GTK+ 3.
+
+ * plugins/PluginView.h:
+
+2011-02-23 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Refactor HTMLEquivalent into a hierachy of classes
+ https://bugs.webkit.org/show_bug.cgi?id=55025
+
+ Converted HTMLEquivalent into a class. Some logic in removeImplicitlyStyledElement is
+ extracted as member functions of HTMLEquivalent and its subclasses.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::HTMLEquivalent::create): Added.
+ (WebCore::HTMLEquivalent::~HTMLEquivalent): Added.
+ (WebCore::HTMLEquivalent::matches): Returns true if the element is an equivalent, meaning that
+ the element's implicit style affects the property of this equivalence.
+ (WebCore::HTMLEquivalent::hasAttribute): Returns true if this equivalence requires attributes;
+ e.g. color, size, dir.
+ (WebCore::HTMLEquivalent::propertyExistsInStyle): Returns true if the property of this equivalence
+ exists in the specified style. e.g. if this equivalence is for size attribute and font-size property,
+ this function returns true if the specified style has font-size property set.
+ (WebCore::HTMLEquivalent::HTMLEquivalent): Added.
+ (WebCore::HTMLEquivalent::valueIsPresentInStyle): Returns true if the specified style has the
+ implicit style of the specified element of this equivalence.
+ (WebCore::HTMLEquivalent::addToStyle): Adds the implicit style of the element of this equivalence
+ to the specified mutable style.
+ (WebCore::HTMLEquivalentValueList::create): Added.
+ (WebCore::HTMLEquivalentValueList::HTMLEquivalentValueList): Added.
+ (WebCore::HTMLEquivalentValueList::valueIsPresentInStyle): Added.
+ (WebCore::HTMLEquivalentAttribute::create): Added.
+ (WebCore::HTMLEquivalentAttribute::matches): Added.
+ (WebCore::HTMLEquivalentAttribute::hasAttribute): Added.
+ (WebCore::HTMLEquivalentAttribute::attributeName): Added.
+ (WebCore::HTMLEquivalentAttribute::HTMLEquivalentAttribute): Added.
+ (WebCore::HTMLEquivalentAttribute::valueIsPresentInStyle): Added.
+ (WebCore::HTMLEquivalentAttribute::addToStyle): Added.
+ (WebCore::HTMLEquivalentAttribute::attributeValueAsCSSValue): Added.
+ (WebCore::HTMLEquivalentFontSizeAttribute::create): Added.
+ (WebCore::HTMLEquivalentFontSizeAttribute::HTMLEquivalentFontSizeAttribute): Added.
+ (WebCore::HTMLEquivalentFontSizeAttribute::attributeValueAsCSSValue): Added.
+ (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Uses new classes.
+
+2011-02-23 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r79510.
+ http://trac.webkit.org/changeset/79510
+ https://bugs.webkit.org/show_bug.cgi?id=55114
+
+ It made ~200 tests crash on Qt bot (Requested by Ossy_ on
+ #webkit).
+
+ * platform/text/TextBreakIterator.h:
+ * platform/text/TextBreakIteratorICU.cpp:
+ (WebCore::lineBreakIterator):
+ * platform/text/qt/TextBreakIteratorQt.cpp:
+ (WebCore::lineBreakIterator):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::findNextLineBreak):
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::computePreferredLogicalWidths):
+ * rendering/break_lines.cpp:
+ (WebCore::nextBreakablePosition):
+ * rendering/break_lines.h:
+ (WebCore::isBreakable):
+
+2011-02-23 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ Used svn merge -r79502:79501 to roll out r79502 because it broke the
+ SnowLeopard and Leopard builds.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/mac/HTMLConverter.h: Removed.
+ * platform/mac/HTMLConverter.mm: Removed.
+ * platform/mac/PasteboardMac.mm:
+ (WebCore::Pasteboard::writeSelection):
+
+2011-02-23 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix for <rdar://problem/9002157> Garbage in the bottom right corner of the window
+ when scrolling
+
+ When there is both a horizontal and a vertical scrollbar, it is necessary to
+ include the space between them in the invalidation.
+ * platform/ScrollableArea.cpp:
+ (WebCore::ScrollableArea::setScrollOffsetFromAnimation):
+
+2011-02-23 Ned Holbrook <nholbrook@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Minimize calls to ubrk_setText()
+ https://bugs.webkit.org/show_bug.cgi?id=54912
+ <rdar://problem/9032774>
+
+ Avoid calling ubrk_setText() once per call to isBreakable() by using a LazyLineBreakIterator, which defers
+ break iterator creation until needed. This requires replacing the global line break iterator primitive with a
+ version that can be nested, since in some cases two iterators may need to be outstanding. In particular,
+ layoutInlineChildren() may indirectly call computePreferredLogicalWidths() and each may need an iterator.
+ In a test with a paragraph of Japanese text, this reduced the number of ubrk_setText() calls from 164 to 1.
+
+ * platform/text/TextBreakIterator.h: Add LazyLineBreakIterator.
+ (WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
+ (WebCore::LazyLineBreakIterator::~LazyLineBreakIterator):
+ (WebCore::LazyLineBreakIterator::string):
+ (WebCore::LazyLineBreakIterator::length):
+ (WebCore::LazyLineBreakIterator::get):
+ (WebCore::LazyLineBreakIterator::reset):
+ * platform/text/TextBreakIteratorICU.cpp: Replace lineBreakIterator() primitive with acquireLineBreakIterator()/releaseLineBreakIterator().
+ (WebCore::acquireLineBreakIterator):
+ (WebCore::releaseLineBreakIterator):
+ * platform/text/qt/TextBreakIteratorQt.cpp: Ditto TextBreakIteratorICU.cpp.
+ (WebCore::acquireLineBreakIterator):
+ (WebCore::releaseLineBreakIterator):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren): Pass a mapping of RenderText to LazyLineBreakIterator from one call of findNextLineBreak() to the next.
+ (WebCore::RenderBlock::findNextLineBreak): Use said mapping, resetting LazyLineBreakIterator for any newly-encountered RenderText.
+ * rendering/RenderText.cpp: Use a local LazyLineBreakIterator.
+ (WebCore::RenderText::computePreferredLogicalWidths):
+ * rendering/break_lines.cpp: Accept LazyLineBreakIterator rather than TextBreakIterator.
+ (WebCore::nextBreakablePosition):
+ * rendering/break_lines.h: Accept LazyLineBreakIterator rather than TextBreakIterator.
+ (WebCore::isBreakable):
+
+2011-02-23 Anders Carlsson <andersca@apple.com>
+
+ Fix build.
+
+ * platform/mac/HTMLConverter.h:
+
+2011-02-17 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION: Copied content loses formatting on paste to external apps.
+ https://bugs.webkit.org/show_bug.cgi?id=47615
+ <rdar://problem/9001214>
+
+ This patch adds a way for WebKit2 to create NSAttributedStrings from
+ a DOM range without using the AppKit api initWithDOMRange that internally
+ needs to access the WebView. The NSAttributedString is needed to create
+ RTF formats in the pasteboard.
+ This is to be considered a first step, since in the future we want to have
+ an implementation based on the TextIterator.
+
+ * WebCore.xcodeproj/project.pbxproj: Added new file.
+ * platform/mac/HTMLConverter.h: Added.
+ * platform/mac/HTMLConverter.mm: Added.
+ * platform/mac/PasteboardMac.mm:
+ (WebCore::Pasteboard::writeSelection): We now use WebHTMLConverter
+ class for WebKit2 to create the NSAttributedString from the DOM range.
+
+2011-02-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.
+
+ Patch computePositionedLogicalHeightUsing to be writing-mode-aware.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computePositionedLogicalWidthUsing):
+ (WebCore::RenderBox::computePositionedLogicalHeightUsing):
+ * rendering/RenderBox.h:
+
+2011-02-23 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [Gtk] Flash item placed on wrong location right after load
+ https://bugs.webkit.org/show_bug.cgi?id=37769
+
+ If a plugin is GtkSocket based, do not set the widget allocation until the
+ window is actually embedded in the parent. When the window is embedded, use
+ any pending allocation for the call to gtk_widget_size_allocate. This bug
+ seems to only appear with Flash movies loaded as the src of an iframe.
+
+ * manual-tests/plugins/windowed-in-iframe.html: Added.
+ * plugins/PluginView.h: Add a few new members to track window embedding state.
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::setNPWindowIfNeeded): If this is a GtkSocket-based plugin
+ wait until the plug-added signal fires to set the widget allocation.
+ (WebCore::PluginView::plugAddedCallback): Updated to be a static method, so that
+ we can access private members. If there is a pending allocation, call gtk_widget_size_allocate
+ with it.
+ (WebCore::PluginView::platformStart): Update the plugin state, so that we do not
+ call gtk_widget_size_allocate if the window isn't embedded.
+
+2011-02-18 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Mac OS X Services are not available for selected text in WebKit2 windows.
+ https://bugs.webkit.org/show_bug.cgi?id=54777
+ <rdar://problem/8666428>
+
+ The changes to WebCore for this bug are limited to exposing a new
+ entry point in the Editor class to write to the pasteboard and
+ changes to the Pasteboard class to write the selection with
+ a given set of pasteboard types. The majority of the work
+ is done in WebKit2.
+
+ * WebCore.exp.in:
+ * editing/Editor.h:
+ * editing/mac/EditorMac.mm: Added entrypoint to write the
+ selection to the pasteboard.
+ (WebCore::Editor::writeSelectionToPasteboard):
+ * platform/Pasteboard.h:
+ * platform/mac/ClipboardMac.mm:
+ (WebCore::ClipboardMac::writeRange):
+ * platform/mac/PasteboardMac.mm:
+ (WebCore::Pasteboard::writeSelection):
+
+2011-02-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.
+
+ Patch computePositionedLogicalHeight to be writing-mode-aware. Functions it calls have not been
+ patched yet, so still not testable in a vertical text environment.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computePositionedLogicalHeight):
+
+2011-02-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.
+
+ Patch computePositionedLogicalWidthUsing to be writing-mode-aware. Still not testable in a vertical text
+ environment, since height computations will overwrite all values computed here until they are patched as well.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computePositionedLogicalWidthUsing):
+ * rendering/RenderBox.h:
+
+2011-02-23 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ FEColorMatrixElement changes doesn't require relayout
+ https://bugs.webkit.org/show_bug.cgi?id=54880
+
+ When the FEColorMatrixElement receives an update message but the given value remains the same we don't need
+ to relayout the filter.
+
+ No new tests are needed because this modificiation is covered by the dynamic update tests of FEColorMatrix.
+
+ * platform/graphics/filters/FEColorMatrix.cpp:
+ (WebCore::FEColorMatrix::setType):
+ (WebCore::FEColorMatrix::setValues):
+ * platform/graphics/filters/FEColorMatrix.h:
+ * svg/SVGFEColorMatrixElement.cpp:
+ (WebCore::SVGFEColorMatrixElement::setFilterEffectAttribute):
+ (WebCore::SVGFEColorMatrixElement::svgAttributeChanged):
+ * svg/SVGFEColorMatrixElement.h:
+
+2011-02-23 James Robinson <jamesr@chromium.org>
+
+ REGRESSION(79466): fast/parser/test-unicode-characters-in-attribute-name.html fails
+
+ Reverts TextCodecUTF16.cpp back to pre-79466 state. The crash fix in 79466 was for UTF-8 only, it also caused the UTF16 path to fail.
+
+ * platform/text/TextCodecUTF16.cpp:
+ (WebCore::newStreamingTextDecoderUTF16LE):
+ (WebCore::newStreamingTextDecoderUTF16BE):
+ (WebCore::TextCodecUTF16::decode):
+ (WebCore::TextCodecUTF16::encode):
+
+2011-02-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.
+
+ Patch computePositionedLogicalWidth to be writing-mode-aware. Functions it calls have not been
+ patched yet, so still not testable in a vertical text environment.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computePositionedLogicalWidth):
+
+2011-02-23 James Robinson <jamesr@chromium.org>
+
+ Unreviewed, rolling out r79428.
+ http://trac.webkit.org/changeset/79428
+ https://bugs.webkit.org/show_bug.cgi?id=54714
+
+ Does not work in the Chromium sandbox
+
+ * websockets/WebSocketHandshake.cpp:
+ (WebCore::generateSecWebSocketKey):
+ (WebCore::generateKey3):
+
+2011-02-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.
+
+ Add logical accessors for the left()/right()/top()/bottom() properties on the RenderStyle.
+
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::logicalLeft):
+ (WebCore::InheritedFlags::logicalRight):
+ (WebCore::InheritedFlags::logicalTop):
+ (WebCore::InheritedFlags::logicalBottom):
+
+2011-02-23 Darin Adler <darin@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Fix crash seen in one of the regression tests.
+
+ * platform/text/TextCodecUTF16.cpp:
+ (WebCore::TextCodecUTF16::decode): Handle case where we did not decode any new data,
+ we were not told to flush, and we had a buffered byte. The assertion here was incorrect,
+ and the correct thing to do is nothing.
+
+2011-02-23 Sergey Glazunov <serg.glazunov@gmail.com>
+
+ Reviewed by James Robinson.
+
+ SVGCursorElement::removeClient() should verify that its argument is connected with
+ the proper cursor element.
+ https://bugs.webkit.org/show_bug.cgi?id=54979
+
+ Test: svg/css/multiple-cursors-crash.html
+
+ * svg/SVGCursorElement.cpp:
+ (WebCore::SVGCursorElement::removeClient):
+
+2011-02-23 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ FEConvolveMatrixElement changes doesn't require relayout
+ https://bugs.webkit.org/show_bug.cgi?id=55067
+
+ When the FEConvolveMatrixElement receives an update message but the
+ given value remains the same we don't need to relayout the filter.
+
+ No new tests are needed because this modificiation is covered by the
+ dynamic update tests of FEConvolveMatrix.
+
+ * platform/graphics/filters/FEConvolveMatrix.cpp:
+ (WebCore::FEConvolveMatrix::setDivisor):
+ (WebCore::FEConvolveMatrix::setBias):
+ (WebCore::FEConvolveMatrix::setTargetOffset):
+ (WebCore::FEConvolveMatrix::edgeMode):
+ (WebCore::FEConvolveMatrix::setEdgeMode):
+ (WebCore::FEConvolveMatrix::setPreserveAlpha):
+ * platform/graphics/filters/FEConvolveMatrix.h:
+ * svg/SVGFEConvolveMatrixElement.cpp:
+ (WebCore::SVGFEConvolveMatrixElement::setFilterEffectAttribute):
+ (WebCore::SVGFEConvolveMatrixElement::svgAttributeChanged):
+ * svg/SVGFEConvolveMatrixElement.h:
+
+2011-02-23 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Rolled back in r79367 with SnowLeopard Release bot crash fixed.
+ https://bugs.webkit.org/show_bug.cgi?id=54999
+
+ * ForwardingHeaders/wtf/DoublyLinkedList.h: Added.
+
+2011-02-23 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Add more thorough manual test coverage for media controls
+ https://bugs.webkit.org/show_bug.cgi?id=55006
+
+ * manual-tests/media-controls.html: Added.
+
+2011-02-23 Darin Adler <darin@apple.com>
+
+ Fix build.
+
+ * platform/text/TextCodecUTF16.cpp:
+ (WebCore::TextCodecUTF16::decode): Removed stray unused local variable.
+
+2011-02-23 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Setting shadow host should also attach and set inDocument, just like
+ appending/inserting a child.
+ https://bugs.webkit.org/show_bug.cgi?id=55065
+
+ No new tests, because functionality is not yet used.
+
+ * dom/Element.cpp:
+ (WebCore::Element::setShadowRoot): Add attaching and setting inDocument
+ for the shadow DOM subtree, like the host.
+
+2011-02-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Darin Adler and Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.
+
+ - Add clientLogicalWidth and clientLogicalHeight that call the correct clientWidth or clientHeight based off
+ writing-mode.
+ - Patch clientLogicalBottom to use clientLogicalHeight.
+ - Convert containingBlockWidthForPositioned and containingBlockHeightForPositioned to be logical and to make use of
+ clientLogicalHeight/Width. Also make them able to handle perpendicular writing mode containining blocks.
+ - Refine containingBlockLogicalHeightForPositioned to match containingBlockLogicalWidthForPositioned more closely.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computeReplacedLogicalWidthUsing):
+ (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
+ (WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
+ (WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
+ (WebCore::RenderBox::computePositionedLogicalWidth):
+ (WebCore::RenderBox::computePositionedLogicalHeight):
+ (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
+ (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::clientLogicalWidth):
+ (WebCore::RenderBox::clientLogicalHeight):
+ (WebCore::RenderBox::clientLogicalBottom):
+
+2011-02-23 Darin Adler <darin@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ REGRESSION (new UTF-8 decoder): Reproducible crash on alltommac.se
+ https://bugs.webkit.org/show_bug.cgi?id=54862
+
+ Correct handling of end of buffer partial sequence in UTF-8 and UTF-16 decoders when flushing with zero length
+ https://bugs.webkit.org/show_bug.cgi?id=54444
+
+ No new tests at this time. I will add some tests later, but since multiple
+ people are hitting this I wanted to get it in as quickly as possible.
+
+ * platform/text/TextCodecUTF16.cpp:
+ (WebCore::TextCodecUTF16::decode): Tweaked coding style quite a bit.
+ Removed special case for zero length now that main code handles it
+ correctly. Used words instead of abbreviations for local variable names.
+ Added error handling for a trailing byte.
+
+ * platform/text/TextCodecUTF8.cpp:
+ (WebCore::TextCodecUTF8::consumePartialSequenceByte): Added. Helper function
+ to make the handleError and handlePartialSequence functions clearer.
+ (WebCore::TextCodecUTF8::handleError): Added. Helper function to make the
+ handlePartialSequence clearer.
+ (WebCore::TextCodecUTF8::handlePartialSequence): Added. Factored out code for
+ the partial sequence case. Making this a separate function probably helps make
+ the fast case a little faster. This new version handles more cases correctly,
+ which is what fixes the crashes we were seeing. In particular, it no longer
+ assumes that the partial sequence is truly partial, because there are cases
+ where we end up handling complete sequences here, such as when a complete
+ sequence is inside a malformed partial sequence.
+ (WebCore::TextCodecUTF8::decode): Removed partial sequence code and made this
+ call handlePartialSequence instead. Could be streamlined if we double checked
+ that passing a reference to "destination" and "source" doesn't harm code
+ generation too much, so perhaps someone can do that research on a few compilers
+ later and clean this up. Removed special case for zero length now that the
+ main code handles that correctly.
+
+ * platform/text/TextCodecUTF8.h: Added declarations for new functions.
+ Made partial sequence buffer large enough to hold a whole sequence so we can
+ use it to complete and decode a sequence in place.
+
+2011-02-23 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dave Hyatt.
+
+ Make clear float lineboxes resilient against overflows.
+ https://bugs.webkit.org/show_bug.cgi?id=54995
+
+ We try to dirty everthing in block range if we have a negative
+ logical bottom, or if our logical bottom is less than our logical
+ top, or if our logical top is equal to INT_MAX. Plus, we also dirty
+ a linebox if its block logical height is less than zero.
+ Tests: fast/overflow/overflow-height-float-not-removed-crash2.html
+ fast/overflow/overflow-height-float-not-removed-crash3.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::removeFloatingObject):
+ (WebCore::RenderBlock::markLinesDirtyInBlockRange):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::alignBoxesInBlockDirection): remove the hack
+ added in r69735. we don't need this anymore since we are making the
+ underlying float dirty logic resilient.
+
+2011-02-22 Kenneth Russell <kbr@google.com>
+
+ Reviewed by Darin Fisher.
+
+ Per-page minimum DOMTimer interval broken for repeating timers
+ https://bugs.webkit.org/show_bug.cgi?id=55014
+
+ When the minimum timer interval is adjusted, if the timer is
+ repeating, cause its repeat interval to be set to its original
+ timeout clamped to the new minimum interval.
+
+ Tests: fast/dom/timer-increase-min-interval-repeating.html
+ fast/dom/timer-increase-then-decrease-min-interval-repeating.html
+
+ * page/DOMTimer.cpp:
+ (WebCore::DOMTimer::adjustMinimumTimerInterval):
+
+2011-02-23 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ Fix two issues seen in WebKit2 views on Mac:
+ - <rdar://problem/8867831> WebKit2: Insertion points in form fields no longer blink
+ - <rdar://problem/8950362> REGRESSION (WebKit2): Cannot deselect text
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::EventHandler): Initialize m_activationEventNumber
+ to -1. Since WebKit2 doesn�t support non-activating clicks yet (<http://webkit.org/b/55053>
+ <rdar://problem/9042197>) and doesn�t send event numbers, all events were considered to be
+ window-activating events. This in turn prevented them from clearing the selection and resuming
+ caret blinking on mouse up.
+
+2011-02-23 Jacob Dinu <dinu.jacob@nokia.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Linking error for some InspectorController symbols
+ https://bugs.webkit.org/show_bug.cgi?id=54953
+
+ Moved out hideHighlight definition from under JAVASCRIPT_DEBUGGER flag
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::hideHighlight):
+ (WebCore::InspectorController::resume):
+
+2011-02-23 Hans Wennborg <hans@chromium.org>
+
+ IndexedDB: Move some SQL code into IDBBackingStore
+ https://bugs.webkit.org/show_bug.cgi?id=54889
+
+ The idea is to gather all the SQL logic into IDBBackingStore.
+
+ No new functionality, so no new tests.
+
+ * storage/IDBBackingStore.cpp:
+ (WebCore::IDBBackingStore::IDBBackingStore):
+ (WebCore::runCommands):
+ (WebCore::createTables):
+ (WebCore::createMetaDataTable):
+ (WebCore::getDatabaseSchemaVersion):
+ (WebCore::migrateDatabase):
+ (WebCore::IDBBackingStore::open):
+ (WebCore::IDBBackingStore::extractIDBDatabaseMetaData):
+ (WebCore::IDBBackingStore::setIDBDatabaseMetaData):
+ (WebCore::IDBBackingStore::getObjectStores):
+ (WebCore::IDBBackingStore::createObjectStore):
+ (WebCore::doDelete):
+ (WebCore::IDBBackingStore::deleteObjectStore):
+ (WebCore::whereSyntaxForKey):
+ (WebCore::bindKeyToQuery):
+ (WebCore::IDBBackingStore::getObjectStoreRecord):
+ (WebCore::bindKeyToQueryWithNulls):
+ (WebCore::IDBBackingStore::putObjectStoreRecord):
+ (WebCore::IDBBackingStore::deleteIndexDataForRecord):
+ (WebCore::IDBBackingStore::putIndexDataForRecord):
+ (WebCore::IDBBackingStore::createIndex):
+ (WebCore::IDBBackingStore::deleteIndex):
+ (WebCore::IDBBackingStore::clearObjectStore):
+ * storage/IDBBackingStore.h:
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
+ (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
+ (WebCore::IDBDatabaseBackendImpl::deleteObjectStoreInternal):
+ (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
+ (WebCore::IDBDatabaseBackendImpl::loadObjectStores):
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::IDBFactoryBackendImpl::IDBFactoryBackendImpl):
+ (WebCore::IDBFactoryBackendImpl::addIDBBackingStore):
+ (WebCore::IDBFactoryBackendImpl::removeIDBBackingStore):
+ (WebCore::IDBFactoryBackendImpl::open):
+ * storage/IDBFactoryBackendImpl.h:
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::getInternal):
+ (WebCore::IDBObjectStoreBackendImpl::putInternal):
+ (WebCore::IDBObjectStoreBackendImpl::clearInternal):
+ (WebCore::populateIndex):
+ (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
+ (WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal):
+
+2011-02-23 Siddharth Mathur <siddharth.mathur@nokia.com>
+
+ Reviewed by Laszlo Gombos.
+
+ [Qt] Fix the Symbian build after r79334
+ https://bugs.webkit.org/show_bug.cgi?id=55044
+
+ No new tests as there is no new functionality.
+
+ * WebCore.pri: Reorder symbian blocks to make sure that
+ system-sqlite is set before it is tested.
+
+ Copy the rules from JavaScriptCore.pri for defineTest().
+
+2011-02-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Use AtomicString::fromUTF8 instead of String::fromUTF8 for AtomicStrings
+ https://bugs.webkit.org/show_bug.cgi?id=54992
+
+ * websockets/WebSocketHandshake.cpp:
+ (WebCore::WebSocketHandshake::readHTTPHeaders):
+
+2011-02-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [CMake] Move platform dependent files out of main CMakeLists.txt
+ https://bugs.webkit.org/show_bug.cgi?id=53891
+
+ Apple Windows port does not use the image decoders,
+ so move them into the platform specific CMake files.
+
+ * CMakeLists.txt:
+ * CMakeListsEfl.txt:
+ * CMakeListsWinCE.txt:
+
+2011-02-21 Stephen White <senorblanco@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ Jittering when animating a rotated image
+ https://bugs.webkit.org/show_bug.cgi?id=50775
+
+ Since Skia does not seem to suffer from pixel cracks when scaling to
+ non-integral sizes the way CG does, no-op roundToDevicePixels on the
+ Skia implementation.
+
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::roundToDevicePixels):
+
+2011-02-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [WINCE] Get rid of TemporaryLinkStubs.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=54825
+
+ * CMakeListsWinCE.txt:
+ * platform/network/win/CookieStorageWin.cpp: Copied from platform/wince/TemporaryLinkStubs.cpp.
+ * platform/wince/TemporaryLinkStubs.cpp: Removed.
+
+2011-02-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Rename PLATFORM(CF) to USE(CF)
+ https://bugs.webkit.org/show_bug.cgi?id=53540
+
+ * WebCore.gyp/WebCore.gyp:
+ * editing/SmartReplace.cpp:
+ * editing/SmartReplaceICU.cpp:
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::didReceiveResponse):
+ (WebCore::MainResourceLoader::didReceiveData):
+ (WebCore::MainResourceLoader::didFinishLoading):
+ (WebCore::MainResourceLoader::didFail):
+ * loader/archive/ArchiveFactory.cpp:
+ (WebCore::archiveMIMETypes):
+ * platform/FileSystem.h:
+ * platform/KURL.h:
+ * platform/KURLGoogle.cpp:
+ * platform/RunLoopTimer.h:
+ * platform/SharedBuffer.cpp:
+ * platform/SharedBuffer.h:
+ * platform/UUID.cpp:
+ (WebCore::createCanonicalUUIDString):
+ * platform/network/ResourceHandle.h:
+ * platform/network/ResourceRequestBase.h:
+ * platform/network/curl/ResourceHandleCurl.cpp:
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::certificatePath):
+ * platform/text/cf/StringCF.cpp:
+ * platform/text/cf/StringImplCF.cpp:
+ * platform/win/BString.cpp:
+ * platform/win/BString.h:
+ * platform/win/ClipboardUtilitiesWin.cpp:
+ (WebCore::getWebLocData):
+ (WebCore::getURL):
+ (WebCore::getClipboardData):
+ * platform/win/ClipboardWin.cpp:
+ (WebCore::writeFileToDataObject):
+ * platform/win/SearchPopupMenuWin.cpp:
+ (WebCore::SearchPopupMenuWin::enabled):
+ (WebCore::SearchPopupMenuWin::saveRecentSearches):
+ (WebCore::SearchPopupMenuWin::loadRecentSearches):
+
+2011-02-23 Benjamin Kalman <kalman@chromium.org>
+
+ Reviewed by Ojan Vafai.
+
+ Moving or selecting backwards by words jumps to start of contenteditable region if contenteditable=false span is encountered
+ https://bugs.webkit.org/show_bug.cgi?id=51001
+
+ Test: editing/selection/extend-backward-by-word-over-non-editable.html
+
+ Revert some previous changes (the TextIteratorEndsAtEditingBoundary text iteration behaviour) which caused this
+ bug in the first place, and fix SimplifiedBackwardsTextIterator's iteration range check as an alternative fix.
+
+ The original bug was that double-clicking on an inline editable span at the start of a paragraph would clear the
+ selection (webkit.org/b/36360). This was caused by upstream/downstream VisbiblePosition complications. To fix,
+ refuse to iterate beyond the start node (rather than refusing to iterate across editable boundaries, which
+ causes this bug).
+
+ To see why this is correct, and to make it clearer that is indeed what is happening, the text iterator code has
+ been slightly restructured to express the invariant that the iterator will never advance past the start node.
+
+ * editing/TextIterator.cpp:
+ (WebCore::TextIterator::TextIterator): Remove references to TextIterationEndsAtEditing boundary.
+ (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): Remove m_pastStartNode as the
+ mechanism for iteration range checking, and use a flag m_havePassedStartNode instead.
+ (WebCore::SimplifiedBackwardsTextIterator::advance): Clean up, use advanceRespectingRange and
+ m_havePassedStartNode for iteration range checking rather than m_pastStartNode.
+ (WebCore::SimplifiedBackwardsTextIterator::advanceRespectingRange): The new way of modifying m_node
+ which updates m_havePassedStartNode and refuses to continue when it becomes true.
+ * editing/TextIterator.h: Remove TextIteratorEndsAtEditingBoundary, update for new/removed prototypes and
+ member variables.
+ * editing/visible_units.cpp:
+ (WebCore::previousBoundary): Remove references to TextIteratorEndsAtEditingBoundary.
+
+2011-02-23 Fumitoshi Ukai <ukai@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ WebSocket uses insecure random numbers
+ https://bugs.webkit.org/show_bug.cgi?id=54714
+
+ * websockets/WebSocketHandshake.cpp:
+ (WebCore::randomNumberLessThan):
+ (WebCore::generateSecWebSocketKey):
+ (WebCore::generateKey3):
+
+2011-02-21 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Rename IDBSQLiteDatabase to IDBBackingStore
+ https://bugs.webkit.org/show_bug.cgi?id=54864
+
+ No new functionality, so no new tests.
+
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * storage/IDBBackingStore.cpp:
+ (WebCore::IDBBackingStore::IDBBackingStore):
+ (WebCore::IDBBackingStore::~IDBBackingStore):
+ * storage/IDBBackingStore.h:
+ (WebCore::IDBBackingStore::create):
+ (WebCore::IDBBackingStore::db):
+ * storage/IDBCursorBackendImpl.cpp:
+ (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
+ (WebCore::IDBCursorBackendImpl::currentRowExists):
+ (WebCore::IDBCursorBackendImpl::database):
+ * storage/IDBCursorBackendImpl.h:
+ (WebCore::IDBCursorBackendImpl::create):
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
+ (WebCore::IDBDatabaseBackendImpl::sqliteDatabase):
+ (WebCore::IDBDatabaseBackendImpl::createObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
+ (WebCore::IDBDatabaseBackendImpl::loadObjectStores):
+ * storage/IDBDatabaseBackendImpl.h:
+ (WebCore::IDBDatabaseBackendImpl::create):
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::IDBFactoryBackendImpl::removeIDBBackingStore):
+ (WebCore::openSQLiteDatabase):
+ (WebCore::IDBFactoryBackendImpl::open):
+ * storage/IDBFactoryBackendImpl.h:
+ * storage/IDBIndexBackendImpl.cpp:
+ (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
+ (WebCore::IDBIndexBackendImpl::openCursorInternal):
+ (WebCore::IDBIndexBackendImpl::sqliteDatabase):
+ * storage/IDBIndexBackendImpl.h:
+ (WebCore::IDBIndexBackendImpl::create):
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl):
+ (WebCore::IDBObjectStoreBackendImpl::createIndex):
+ (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
+ (WebCore::IDBObjectStoreBackendImpl::loadIndexes):
+ (WebCore::IDBObjectStoreBackendImpl::sqliteDatabase):
+ * storage/IDBObjectStoreBackendImpl.h:
+ (WebCore::IDBObjectStoreBackendImpl::create):
+
+2011-02-23 Dominic Mazzoni <dmazzoni@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add a hit test handler for canvas elements that handles clicks on the canvas but ignores children.
+ https://bugs.webkit.org/show_bug.cgi?id=54697
+
+ New test to prevent this from regressing in the future: canvas/canvas-mouse-events.html
+
+ * rendering/RenderHTMLCanvas.cpp:
+ (WebCore::RenderHTMLCanvas::nodeAtPoint):
+
+2011-02-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Remove obsolete focusRingColor functions
+ https://bugs.webkit.org/show_bug.cgi?id=54824
+
+ * CMakeListsWinCE.txt:
+ * platform/graphics/haiku/ColorHaiku.cpp:
+ * platform/graphics/wince/ColorWinCE.cpp: Removed.
+
+2011-02-22 Jia Pu <jpu@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ On Mac OS X, English contractions are marked misspelled with certain user preference setting.
+ https://bugs.webkit.org/show_bug.cgi?id=54975
+
+ manual test: manual-tests/autocorrection/spellcheck-on-contraction-when-autocorrection-is-off.html
+
+ Without this patch, we check for contraction only when autocorrection or other type of auto-
+ substituation is on. And we failed to check for contraction if only spellchecking is turned on.
+ This patch implements the desired behavior, checking for contraction when either correction/substitution,
+ or spellchecking, is on.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
+ * manual-tests/autocorrection/spellcheck-on-contraction-when-autocorrection-is-off.html: Added.
+
+2011-02-22 Charlie Reis <creis@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Remove DatabasePolicy from FrameLoaderTypes
+ https://bugs.webkit.org/show_bug.cgi?id=54968
+
+ The DatabasePolicy enum is no longer needed now that we avoid stopping
+ loaders on same-document navigations.
+
+ Existing test: storage/hash-change-with-xhr.html
+
+ * WebCore.exp.in:
+ * loader/DocumentLoader.cpp:
+ * loader/DocumentLoader.h:
+ * loader/FrameLoader.cpp:
+ * loader/FrameLoader.h:
+ * loader/FrameLoaderTypes.h:
+ * workers/WorkerThread.cpp:
+
+2011-02-22 Alexis Menard <alexis.menard@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] QWebView ignores a palette set with QWebView::setPalette()
+ https://bugs.webkit.org/show_bug.cgi?id=31742
+
+ Use custom QWebView palette if the view provides one.
+ Modified version of a patch made by Fabrizio Machado.
+
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::platformActiveSelectionBackgroundColor):
+ (WebCore::RenderThemeQt::platformInactiveSelectionBackgroundColor):
+ (WebCore::RenderThemeQt::platformActiveSelectionForegroundColor):
+ (WebCore::RenderThemeQt::platformInactiveSelectionForegroundColor):
+ (WebCore::RenderThemeQt::platformFocusRingColor):
+
+2011-02-22 Brian Salomon <bsalomon@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Don't disable accelerated canvas when using the skia gpu backend.
+
+ No new tests are required.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation):
+
+2011-02-22 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] <select>s on http://www.ryanair.com render wrong
+ https://bugs.webkit.org/show_bug.cgi?id=29647
+
+ Reducing padding in <select> elements to improve its rendering and introducing a
+ rendering adjustment specific to QMacStyle.
+
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::setPopupPadding):
+ (WebCore::RenderThemeQt::paintMenuList):
+
+2011-02-22 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ FontCache: Make cTargetInactiveFontData an int instead of float.
+ https://bugs.webkit.org/show_bug.cgi?id=54963
+
+ * platform/graphics/FontCache.cpp:
+
+2011-02-22 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Make Editor::selectionComputedStyle return EditingStyle
+ https://bugs.webkit.org/show_bug.cgi?id=54933
+
+ Renamed selectionComputedStyle to selectionStartStyle and changed the return type to EditingStyle.
+ It also no longer takes a boolean shouldUseFixedFontDefaultSize.
+
+ Also added EditingStyle::mergeTypingStyle which replaced old editingStyleIncludingTypingStyle. This function
+ doesn't extract inheritable properties prior to merge because this turned out be a bug, which was revealed
+ by an existing layout test only after the code was shared with selectionStartStyle.
+
+ No tests are added since this is a refactoring.
+
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::moveParagraphs): Calls EditingStyle::create and EditingStyle::mergeTypingStyle.
+ (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Ditto.
+ * editing/EditingStyle.cpp: Removed editingStyleIncludingTypingStyle.
+ (WebCore::EditingStyle::mergeTypingStyle): Added.
+ * editing/EditingStyle.h:
+ (WebCore::EditingStyle::shouldUseFixedDefaultFontSize): Added.
+ * editing/Editor.cpp:
+ (WebCore::Editor::selectionStartHasStyle): Calls selectionStartStyle.
+ (WebCore::Editor::selectionHasStyle): Ditto.
+ (WebCore::Editor::selectionStartCSSPropertyValue): Ditto.
+ (WebCore::Editor::selectionStartStyle): Renamed from selectionComputedStyle; returns EditingStyle.
+ * editing/Editor.h:
+ * editing/EditorCommand.cpp:
+ (WebCore::executeToggleStyleInList): Calls selectionStartStyle.
+ * editing/InsertLineBreakCommand.cpp:
+ * editing/InsertParagraphSeparatorCommand.cpp:
+ (WebCore::InsertParagraphSeparatorCommand::calculateStyleBeforeInsertion): Calls EditingStyle::create and
+ EditingStyle::mergeTypingStyle.
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::doApply): Ditto.
+
+2011-02-22 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] painting of windowed plugins faulty on certain scroll events
+
+ https://bugs.webkit.org/show_bug.cgi?id=52735
+
+ Invalidate the pluginview's relative rect rather then the frameRect(). This is because QWebFrame::renderRelativeCoords()
+ imitates ScrollView and adds the scroll offset back on to the rect we damage here (making the co-ordinates absolute
+ to the frame again) before passing it to FrameView.
+
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+
+2011-02-22 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ Minimal build broken
+ https://bugs.webkit.org/show_bug.cgi?id=54743
+
+ Moved the code of setInspectorExtensionAPI and
+ dispatchMessageFromFrontend out of #if
+ ENABLE(JAVASCRIPT_DEBUGGER) to fix link error of the minimal build.
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::setInspectorExtensionAPI):
+ (WebCore::InspectorController::dispatchMessageFromFrontend):
+
+2011-02-22 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r79367.
+ http://trac.webkit.org/changeset/79367
+ https://bugs.webkit.org/show_bug.cgi?id=55012
+
+ all layout tests are crashing on Snow Leopard (Requested by
+ rniwa on #webkit).
+
+ * ForwardingHeaders/wtf/DoublyLinkedList.h: Removed.
+
+2011-02-22 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Deploy EditingStyle in removeInlineStyleFromElement and removeCSSStyle
+ https://bugs.webkit.org/show_bug.cgi?id=54944
+
+ Deployed EditingStyle in removeInlineStyleFromElement and removeCSSStyle.
+
+ Also extracted EditingStyle::conflictsWithInlineStyleOfElement from ApplyStyleCommand::removeCSSStyle,
+ which returns true iff the specified element has inline style that conflicts or matches the editing style.
+ It also appends conflicting property IDs to the vector of property IDs if one is specified.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::applyBlockStyle): Calls removeCSSStyle.
+ (WebCore::ApplyStyleCommand::applyInlineStyle): Calls shouldSplitTextElement.
+ (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Calls removeInlineStyleFromElement.
+ (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Takes EditingStyle* instead of CSSMutableStyleDeclaration*.
+ (WebCore::ApplyStyleCommand::removeCSSStyle): Ditto; extracted the logic to decide properties to remove as
+ conflictsWithInlineStyleOfElement.
+ (WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle): Calls shouldRemoveInlineStyleFromElement.
+ (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls removeInlineStyleFromElement.
+ (WebCore::ApplyStyleCommand::removeInlineStyle): Ditto.
+ (WebCore::ApplyStyleCommand::shouldSplitTextElement): Takes EditingStyle* instead of CSSMutableStyleDeclaration*.
+ * editing/ApplyStyleCommand.h:
+ (WebCore::ApplyStyleCommand::shouldRemoveInlineStyleFromElement): Ditto.
+ * editing/EditingStyle.cpp:
+ (WebCore::EditingStyle::conflictsWithInlineStyleOfElement): Extracted from ApplyStyleCommand::removeCSSStyle.
+ * editing/EditingStyle.h:
+ (WebCore::EditingStyle::conflictsWithInlineStyleOfElement): Added.
+
+2011-02-22 Chang Shu <cshu@webkit.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ [Qt] editing/deleting/5408255.html fails
+ https://bugs.webkit.org/show_bug.cgi?id=54964
+
+ Move WebCore resource file to QtWebKit since they are referred in WebKit.
+
+ * WebCore.pro:
+
+2011-02-22 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ <rdar://problem/8762042> and https://bugs.webkit.org/show_bug.cgi?id=54514
+ API to view and delete Application Cache data by origin.
+
+ Implement these to be used by WK2 API:
+ * loader/appcache/ApplicationCacheStorage.cpp:
+ (WebCore::ApplicationCacheStorage::getOriginsWithCache):
+ (WebCore::ApplicationCacheStorage::deleteEntriesForOrigin):
+
+2011-02-22 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Manage MarkedBlocks in a linked list instead of a vector, so arbitrary removal is O(1)
+ https://bugs.webkit.org/show_bug.cgi?id=54999
+
+ New WTF header.
+
+ * ForwardingHeaders/wtf/DoublyLinkedList.h: Copied from ForwardingHeaders/wtf/FixedArray.h.
+
+2011-02-22 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=54991
+ Scrollbar::nativeTheme()->usesOverlayScrollbars() should not be consulted for CSS
+ Scrollbars
+ -and corresponding-
+ <rdar://problem/9034318>
+
+ Instead of consulting the theme directly, callers should ask the Scrollbar or
+ ScrollableArea if the scrollbars are overlay or not.
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::visibleContentRect):
+ (WebCore::ScrollView::scrollContents):
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollableArea.cpp:
+ (WebCore::ScrollableArea::setScrollOffsetFromAnimation):
+ (WebCore::ScrollableArea::hasOverlayScrollbars):
+ * platform/ScrollableArea.h:
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::isOverlayScrollbar):
+ * platform/Scrollbar.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::includeVerticalScrollbarSize):
+ (WebCore::RenderBox::includeHorizontalScrollbarSize):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::verticalScrollbarWidth):
+ (WebCore::RenderLayer::horizontalScrollbarHeight):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::verticalScrollbarWidth):
+ * rendering/RenderScrollbar.h:
+ (WebCore::RenderScrollbar::isOverlayScrollbar):
+
+2011-02-22 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ [Qt] Redesign the build system
+ https://bugs.webkit.org/show_bug.cgi?id=51339
+
+ Move inspector's resource files into the final build step to fix the layout test regression.
+
+ No new tests needed.
+
+ * WebCore.pro: Move inspector's resource files into QtWebKit.pro.
+
+2011-02-22 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] fast/frames/iframe-scale-applied-twice.html fails after r79167
+ https://bugs.webkit.org/show_bug.cgi?id=54990
+
+ No new tests. This will cause fast/events/scroll-after-click-on-tab-index.html
+ to start passing again.
+
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::visibleContentRect): Update this method to match the original
+ in the parent class.
+
+2011-01-17 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] fast/events/scroll-after-click-on-tab-index has been failing on the bots
+ https://bugs.webkit.org/show_bug.cgi?id=49177
+
+ * platform/ScrollView.cpp: Remove the GTK+ guards around the implementation
+ of platformAddChild and platformRemoveChild. This code can be shared.
+ * platform/gtk/MainFrameScrollbarGtk.cpp:
+ (MainFrameScrollbarGtk::attachAdjustment): Prevent re-attaching an already attached
+ adjustment. Connect the adjustment value-changed signal handler after resetting the
+ adjustment. This prevents the rest from stomping on pre-existing WebCore values.
+ (MainFrameScrollbarGtk::gtkValueChanged): If the scrollbar is no longer attached to
+ a scrollview do not listing for value changes. These scrollbars are defunct.
+ * platform/gtk/ScrollViewGtk.cpp: Remove duplicated empty methods.
+
+2011-02-22 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: refactor InjectedScript : InspectorDOMAgent interaction.
+ https://bugs.webkit.org/show_bug.cgi?id=54954
+
+ * bindings/js/JSInjectedScriptHostCustom.cpp:
+ (WebCore::InjectedScriptHost::toNode):
+ (WebCore::JSInjectedScriptHost::inspect):
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ (WebCore::InjectedScriptHost::toNode):
+ (WebCore::V8InjectedScriptHost::inspectCallback):
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/InjectedScript.cpp:
+ (WebCore::InjectedScript::nodeForObjectId):
+ * inspector/InjectedScript.h:
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::inspect):
+ * inspector/InjectedScriptHost.h:
+ * inspector/InjectedScriptHost.idl:
+ * inspector/InjectedScriptSource.js:
+ (.):
+ * inspector/Inspector.idl:
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::focusNode):
+ * inspector/InspectorAgent.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::inspect):
+ (WebCore::InspectorDOMAgent::pushNodeToFrontend):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/front-end/AuditRules.js:
+ (WebInspector.AuditRules.evaluateInTargetWindow):
+ (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
+ (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
+ (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.receivedImages):
+ (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.pushImageNodes):
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype.completions):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMDispatcher.prototype.childNodeRemoved):
+ (WebInspector.DOMDispatcher.prototype.inspectElementRequested):
+ * inspector/front-end/RemoteObject.js:
+ (WebInspector.RemoteObject.prototype.pushNodeToFrontend):
+
+2011-02-22 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ Part of <rdar://problem/8762042> and https://bugs.webkit.org/show_bug.cgi?id=54514
+ API to view and delete Application Cache data by origin.
+
+ Stub these out for now:
+ * loader/appcache/ApplicationCacheStorage.cpp:
+ (WebCore::ApplicationCacheStorage::getOriginsWithCache):
+ (WebCore::ApplicationCacheStorage::deleteEntriesForOrigin):
+ (WebCore::ApplicationCacheStorage::deleteAllEntries): Moved implementation here from WebKit/Mac
+ * loader/appcache/ApplicationCacheStorage.h:
+
+ Export the new symbols:
+ * WebCore.exp.in:
+
+2011-02-22 Anders Carlsson <andersca@apple.com>
+
+ Fix debug build.
+
+ * WebCore.exp.in:
+
+2011-02-22 Balazs Kelemen <kbalazs@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ notImplemented() should behave identical in WebCore and WebKit2
+ https://bugs.webkit.org/show_bug.cgi?id=54449
+
+ No functional change so no new tests.
+
+ * WebCore.xcodeproj/project.pbxproj: Add NotImplemented.h as private header
+ to be able to use it in WebKit2.
+
+2011-02-22 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Laszlo Gombos.
+ Rubber-stamped by Csaba Osztrogonác.
+
+ [Qt] Redesign the build system
+ https://bugs.webkit.org/show_bug.cgi?id=51339
+
+ The patch landed in r79320 didn't contain the cleanup
+ which was already addressed in the last attachment.
+
+ No new tests needed.
+
+ * WebCore.pri: Add common LIB and CONFIG options.
+ * WebCore.pro: Add accidentally moved sections.
+
+2011-02-22 Philippe Normand <pnormand@igalia.com>
+
+ Unreviewed, rolling out r79321.
+ http://trac.webkit.org/changeset/79321
+ https://bugs.webkit.org/show_bug.cgi?id=53146
+
+ Regresses fast/forms/listbox-typeahead-cyrillic.html and fast
+ /spatial-navigation/snav-single-select.html on GTK
+
+ * accessibility/gtk/AXObjectCacheAtk.cpp:
+ (WebCore::notifyChildrenSelectionChange):
+ (WebCore::AXObjectCache::postPlatformNotification):
+
+2011-02-22 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Inspector.IDL change. rename attribute notify -> event.
+ https://bugs.webkit.org/show_bug.cgi?id=54958
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/Inspector.idl:
+
+2011-02-22 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Timeline agent should have same lifetime as InspectorAgent
+ https://bugs.webkit.org/show_bug.cgi?id=54951
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/Inspector.idl:
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
+ (WebCore::InspectorAgent::setFrontend):
+ (WebCore::InspectorAgent::disconnectFrontend):
+ (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
+ (WebCore::InspectorAgent::didCommitLoad):
+ (WebCore::InspectorAgent::domContentLoadedEventFired):
+ (WebCore::InspectorAgent::loadEventFired):
+ * inspector/InspectorAgent.h:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::startTimelineProfiler):
+ (WebCore::InspectorController::stopTimelineProfiler):
+ (WebCore::InspectorController::timelineProfilerEnabled):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::retrieveTimelineAgent):
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
+ (WebCore::InspectorTimelineAgent::setFrontend):
+ (WebCore::InspectorTimelineAgent::clearFrontend):
+ (WebCore::InspectorTimelineAgent::restore):
+ (WebCore::InspectorTimelineAgent::startTimelineProfiler):
+ (WebCore::InspectorTimelineAgent::stopTimelineProfiler):
+ (WebCore::InspectorTimelineAgent::timelineProfilerStarted):
+ (WebCore::InspectorTimelineAgent::didCommitLoad):
+ (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
+ (WebCore::InspectorTimelineAgent::clearRecordStack):
+ * inspector/InspectorTimelineAgent.h:
+ (WebCore::InspectorTimelineAgent::create):
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
+
+2011-02-22 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: flakyness of inspector tests.
+ https://bugs.webkit.org/show_bug.cgi?id=54729
+
+ As far as we have the protocol with sequence numbers we can simplify test harness support
+ and drop out chomium specific methods.
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/front-end/TestController.js:
+ (WebInspector.TestController):
+ (WebInspector.TestController.prototype.notifyDone):
+ (WebInspector.TestController.prototype.runAfterPendingDispatches):
+ (WebInspector.TestController.prototype._evaluateForTestInFrontend):
+ * inspector/front-end/inspector.js:
+ (WebInspector.dispatch):
+
+2011-02-22 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Combo boxes should emit object:selection-changed even when collapsed
+ https://bugs.webkit.org/show_bug.cgi?id=53146
+
+ Emit the selection-changed signals when the menu list value has changed
+
+ Test: platform/gtk/accessibility/combo-box-collapsed-selection-changed.html
+
+ * accessibility/gtk/AXObjectCacheAtk.cpp:
+ (WebCore::getListObject): New, return the right list object for
+ menu lists and list boxes.
+ (WebCore::notifyChildrenSelectionChange): Support menu lists.
+ (WebCore::AXObjectCache::postPlatformNotification): Call function
+ notifyChildrenSelectionChange for AXMenuListValueChanged.
+
+2011-02-22 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Laszlo Gombos.
+
+ [Qt] Redesign the build system
+ https://bugs.webkit.org/show_bug.cgi?id=51339
+
+ Part 2.
+
+ Build WebCore as a static library, compile the WebKit API and WebKit2 API
+ in a final step and link to WebKit2, WebCore and JSC libraries to fix
+ linking issues resulting from stripped away symbols.
+
+ No new tests needed.
+
+ * WebCore.pri: Add needed rules for handling the static library.
+ * WebCore.pro: Reorganize API and linker options to QtWebKit.pro.
+
+2011-02-22 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [REGRESSION] navigation does not work when inspector is opened.
+ https://bugs.webkit.org/show_bug.cgi?id=54947
+
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
+ * inspector/InspectorState.cpp:
+ (WebCore::InspectorState::loadFromCookie):
+ * inspector/InspectorState.h:
+
+2011-02-15 Jer Noble <jer.noble@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Built-in HTML5 <audio> (and sometimes <video>) UI doesn't update playhead location or time displays
+ https://bugs.webkit.org/show_bug.cgi?id=46142
+
+ Push a LayoutStateMaintainer in RenderMedia::layout() before calling layout() on the
+ container elements. This is necessary because, during layout(), the child renderers
+ query the current LayoutState to determine where they will be repainting. If a new
+ LayoutState is not pushed here, child renderers will attempt to repaint relative to
+ their grandparent's origin instead of their parents', and repaint operations will fail.
+
+ * rendering/RenderMedia.cpp:
+ (WebCore::RenderMedia::layout):
+
+2011-02-22 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Cleaning: remove a overzealous check for the pointer "files" from Chrome::setToolTip()
+ https://bugs.webkit.org/show_bug.cgi?id=54952
+
+ Remove the unnecessary condition from the if(), HTMLInputElement::files() always return
+ a valid reference for the input type FileInputType.
+
+ * page/Chrome.cpp:
+ (WebCore::Chrome::setToolTip):
+
+2011-02-21 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: extract source mapping from SourceFrame to DebuggerPresentationModel.
+ https://bugs.webkit.org/show_bug.cgi?id=54645
+
+ This is needed to map one script to several source files.
+
+ Test: inspector/debugger/source-frame.html
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/DebuggerPresentationModel.js: Added.
+ (WebInspector.DebuggerPresentationModel):
+ (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceName):
+ (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
+ (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
+ (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
+ (WebInspector.DebuggerPresentationModel.prototype._encodeSourceLocation):
+ (WebInspector.DebuggerPresentationModel.prototype._actualLocationToSourceLocation):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype._breakpointAdded):
+ (WebInspector.ScriptsPanel.prototype._breakpointRemoved):
+ (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
+ (WebInspector.ScriptsPanel.prototype._sourceFrameForScript):
+ (WebInspector.ScriptsPanel.prototype._addSourceFrame):
+ (WebInspector.ScriptsPanel.prototype._removeSourceFrame):
+ (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
+ (WebInspector.ScriptsPanel.prototype._clearCurrentExecutionLine):
+ (WebInspector.ScriptsPanel.prototype._callFrameSelected):
+ (WebInspector.SourceFrameContentProviderForScript.prototype._buildSource):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.get loaded):
+ (WebInspector.SourceFrame.prototype._createTextViewer):
+ (WebInspector.SourceFrame.prototype._setTextViewerDecorations):
+ (WebInspector.SourceFrame.prototype.setExecutionLine):
+ (WebInspector.SourceFrame.prototype.clearExecutionLine):
+ (WebInspector.SourceFrame.prototype.addBreakpoint):
+ (WebInspector.SourceFrame.prototype.removeBreakpoint):
+ (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint.didEditBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint):
+ (WebInspector.SourceFrame.prototype._findBreakpoint.filter):
+ (WebInspector.SourceFrame.prototype._findBreakpoint):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+
+2011-02-22 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: provide a button to expand inspector toolbar when not all panel buttons fit
+ https://bugs.webkit.org/show_bug.cgi?id=54671
+
+ - factored toolbar handling out of inspector.js
+ - added toolbar dropdown
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer.prototype._onCreatePanel):
+ * inspector/front-end/Panel.js:
+ (WebInspector.Panel.prototype.get toolbarItem):
+ * inspector/front-end/Toolbar.js: Added.
+ (WebInspector.Toolbar):
+ (WebInspector.Toolbar.prototype.resize):
+ (WebInspector.Toolbar.prototype.addPanel):
+ (WebInspector.Toolbar.prototype._toolbarDragStart):
+ (WebInspector.Toolbar.prototype._toolbarDragEnd):
+ (WebInspector.Toolbar.prototype._toolbarDrag):
+ (WebInspector.Toolbar.prototype._onClose):
+ (WebInspector.Toolbar.prototype._setDropdownVisible):
+ (WebInspector.Toolbar.prototype._toggleDropdown):
+ (WebInspector.Toolbar.prototype._updateDropdownButtonAndHideDropdown):
+ (WebInspector.Toolbar.createPanelToolbarItem.onToolbarItemClicked):
+ (WebInspector.Toolbar.createPanelToolbarItem):
+ (WebInspector.ToolbarDropdown):
+ (WebInspector.ToolbarDropdown.prototype.show):
+ (WebInspector.ToolbarDropdown.prototype.hide):
+ (WebInspector.ToolbarDropdown.prototype.get visible):
+ (WebInspector.ToolbarDropdown.prototype._populate):
+ (WebInspector.ToolbarDropdown.prototype._onKeyDown):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.css:
+ (#toolbar):
+ (.toolbar-item):
+ (.toolbar-item.toggleable):
+ (.toolbar-item.toggleable.toggled-on):
+ (#toolbar-dropdown .toolbar-icon):
+ (#toolbar-dropdown .toolbar-label):
+ (#toolbar-controls):
+ (#toolbar-dropdown-arrow):
+ (body.attached #toolbar-dropdown-arrow):
+ (#toolbar-dropdown-arrow.dropdown-visible):
+ (#toolbar-dropdown-arrow:hover):
+ (#toolbar-dropdown-arrow:active):
+ (#toolbar-dropdown):
+ (body.detached.platform-mac-snowleopard #toolbar-dropdown):
+ (#toolbar-dropdown .scrollable-content):
+ (#toolbar-dropdown .toolbar-item):
+ (#toolbar-dropdown .toolbar-item.toggleable.toggled-on):
+ (#toolbar-dropdown .toolbar-item:hover):
+ (#toolbar-dropdown .toolbar-item.toggleable.toggled-on:hover):
+ (#toolbar-dropdown .toolbar-item:active .toolbar-icon):
+ (.scrollable-content):
+ (.scrollable-content::-webkit-scrollbar):
+ (.scrollable-content::-webkit-resizer):
+ (.scrollable-content::-webkit-scrollbar-thumb:vertical):
+ (.scrollable-content::-webkit-scrollbar-thumb:vertical:active):
+ (.scrollable-content::-webkit-scrollbar-track:vertical):
+ (.toolbar-search-item):
+ (#search):
+ (body.attached #search):
+ (#search-results-matches):
+ (#close-button-left, #close-button-right):
+ (.close-left):
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/inspector.js:
+ (WebInspector.set attached):
+ (WebInspector.addPanel):
+ (WebInspector.windowResize):
+
+2011-02-22 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] make distcheck fails
+ https://bugs.webkit.org/show_bug.cgi?id=54943
+
+ Added new headers and removed references to deleted files.
+
+ * GNUmakefile.am:
+
+2011-02-21 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: make DOM storage and Database agents have the same lifetime as InspectorAgent
+ https://bugs.webkit.org/show_bug.cgi?id=54891
+
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ (WebCore::InspectorAgent::setFrontend):
+ (WebCore::InspectorAgent::disconnectFrontend):
+ (WebCore::InspectorAgent::createFrontendLifetimeAgents):
+ (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
+ (WebCore::InspectorAgent::didCommitLoad):
+ * inspector/InspectorAgent.h:
+ (WebCore::InspectorAgent::instrumentingAgents):
+ * inspector/InspectorDOMStorageAgent.cpp:
+ (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
+ (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
+ (WebCore::InspectorDOMStorageAgent::setFrontend):
+ (WebCore::InspectorDOMStorageAgent::clearFrontend):
+ (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
+ (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
+ (WebCore::InspectorDOMStorageAgent::didUseDOMStorage):
+ (WebCore::InspectorDOMStorageAgent::clearResources):
+ * inspector/InspectorDOMStorageAgent.h:
+ (WebCore::InspectorDOMStorageAgent::create):
+ * inspector/InspectorDatabaseAgent.cpp:
+ (WebCore::InspectorDatabaseAgent::didOpenDatabase):
+ (WebCore::InspectorDatabaseAgent::clearResources):
+ (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
+ (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
+ (WebCore::InspectorDatabaseAgent::setFrontend):
+ (WebCore::InspectorDatabaseAgent::clearFrontend):
+ (WebCore::InspectorDatabaseAgent::databaseForId):
+ (WebCore::InspectorDatabaseAgent::selectDatabase):
+ * inspector/InspectorDatabaseAgent.h:
+ (WebCore::InspectorDatabaseAgent::create):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didOpenDatabaseImpl):
+ (WebCore::InspectorInstrumentation::didUseDOMStorageImpl):
+
+2011-02-22 Steve Lacey <sjl@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Rename new media statistics apis to better names
+
+ https://bugs.webkit.org/show_bug.cgi?id=54784
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::webkitAudioDecodedByteCount):
+ (WebCore::HTMLMediaElement::webkitVideoDecodedByteCount):
+ * html/HTMLMediaElement.h:
+ * html/HTMLMediaElement.idl:
+ * html/HTMLVideoElement.cpp:
+ (WebCore::HTMLVideoElement::webkitDecodedFrameCount):
+ (WebCore::HTMLVideoElement::webkitDroppedFrameCount):
+ * html/HTMLVideoElement.h:
+ * html/HTMLVideoElement.idl:
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::decodedFrameCount):
+ (WebCore::MediaPlayer::droppedFrameCount):
+ (WebCore::MediaPlayer::audioDecodedByteCount):
+ (WebCore::MediaPlayer::videoDecodedByteCount):
+ * platform/graphics/MediaPlayer.h:
+ * platform/graphics/MediaPlayerPrivate.h:
+ (WebCore::MediaPlayerPrivateInterface::decodedFrameCount):
+ (WebCore::MediaPlayerPrivateInterface::droppedFrameCount):
+ (WebCore::MediaPlayerPrivateInterface::audioDecodedByteCount):
+ (WebCore::MediaPlayerPrivateInterface::videoDecodedByteCount):
+
+2011-02-21 Roland Steiner <rolandsteiner@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Bug 54435 - Simplify CSSStyleSelector::canShareStyleWithElement
+ https://bugs.webkit.org/show_bug.cgi?id=54435
+
+ Changed the function to a series of early-exit 'if's,
+ removed most temporary variables.
+
+ No new tests. (refactoring)
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::canShareStyleWithElement):
+
+2011-02-21 Nico Weber <thakis@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] PopupContainer::show() confuses clang's -Woverloaded-virtual
+ https://bugs.webkit.org/show_bug.cgi?id=54923
+
+ Rename PopupContainer::show() to showInRect(), to make it obvious it's
+ not an override of ScrollView::show().
+
+ No intended functionality change.
+
+ * platform/chromium/PopupMenuChromium.cpp:
+ (WebCore::PopupContainer::showInRect):
+ (WebCore::PopupMenuChromium::show):
+ * platform/chromium/PopupMenuChromium.h:
+
+2011-02-21 Julien Chaffraix <jchaffraix@codeaurora.org>
+
+ Reviewed by Antti Koivisto.
+
+ Improve the local{SharedStyle,CousinList} algorithm
+ https://bugs.webkit.org/show_bug.cgi?id=45507
+
+ This change improves the algorithm to find shared styles: the old
+ algorithm would stop the search after the first cousin, even if
+ the search threshold is not met. As such, the algorithm would
+ systematically miss sharings across second cousins and beyond.
+ The new algorithm continues the search, as long as threshold is
+ not met. It also separates the threshold for sibling/cousins
+ search, from that on the levels of search, which is easier to
+ optimize.
+ The new algorithm finds up to 30% more sharings on some sites
+ (e.g. amazon.com and rakuten.co.jp) with no noticeable slowdown.
+
+ No new test, refactoring only.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::locateCousinList):
+ (WebCore::CSSStyleSelector::locateSharedStyle):
+ While changing the algorithm, cleaned up the style of those 2 methods
+ (use early return, renamed some variables).
+
+ * css/CSSStyleSelector.h:
+
+2011-02-21 Nico Weber <thakis@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ RenderTableCell::baselinePosition() confuses clang's -Woverloaded-virtual
+ https://bugs.webkit.org/show_bug.cgi?id=54922
+
+ RenderTableCell::baselinePosition() has the same name as a virtual
+ method in superclass RenderBlock. Rename the subclass method to make
+ it clear it's not an attempted override.
+
+ No intended functionality change.
+
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::cellBaselinePosition):
+ * rendering/RenderTableCell.h:
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::calcRowLogicalHeight):
+ (WebCore::RenderTableSection::layoutRows):
+
+2011-02-21 Benjamin Kalman <kalman@chromium.org>
+
+ Reviewed by Ryosuke Niwa.
+
+ Extending selection by a boundary granularity (LineBoundary/ParagraphBoundary/DocumentBoundary) sets incorrect
+ start/end of selection for RTL
+ https://bugs.webkit.org/show_bug.cgi?id=54724
+
+ On mac, the selection should always grow when extending by a boundary granularity (line/paragraph/document).
+ This is achieved by extending from the start for the "left" direction (e.g. pressing left arrow key), or
+ extending from the end when for the "right" direction (e.g. pressing right arrow key).
+
+ However, this has a bug for RTL text, which should actually extend from the *end* when extending left (since
+ direction is obviously reversed) and likewise extend from the start when extending right.
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::modify):
+
+2011-02-21 Nico Weber <thakis@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ ImageDocument::imageChanged() confuses clang's -Woverride-virtual
+ https://bugs.webkit.org/show_bug.cgi?id=54924
+
+ Rename ImageDocument::imageChanged() to imageUpdated() to make clear
+ that it's not an override of CachedResourceClient::imageChanged().
+
+ * html/ImageDocument.cpp:
+ (WebCore::ImageDocumentParser::appendBytes):
+ (WebCore::ImageDocumentParser::finish):
+ (WebCore::ImageDocument::imageUpdated):
+ * html/ImageDocument.h:
+
+2011-02-21 Roland Steiner <rolandsteiner@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Bug 54934 - Sort the WebCore project file(s)
+ https://bugs.webkit.org/show_bug.cgi?id=54934
+
+ No new tests. (no code affected)
+
+ * GNUmakefile.am:
+ * WebCore.xcodeproj/project.pbxproj:
+
+2011-02-21 Nico Weber <thakis@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ canAccommodateEllipsis() confuses clang's -Woverloaded-virtual
+ https://bugs.webkit.org/show_bug.cgi?id=54909
+
+ Rename the overload in RootInlineBox to lineCanAccomodateEllipsis() to
+ unconfuse clang. No intended functionality change.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::checkLinesForTextOverflow):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::applyLineClamp):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::lineCanAccommodateEllipsis):
+ * rendering/RootInlineBox.h:
+
+2011-02-21 Adele Peterson <adele@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix for for https://bugs.webkit.org/show_bug.cgi?id=54402
+ REGRESSION (r72052): Placeholder text doesn't have the right padding for search fields on Windows
+
+ Test: updated fast/forms/placeholder-position.html and tested manually
+
+ Consider padding and margin for the results and cancel buttons. This is important for the Windows
+ theme which uses padding to correctly position those buttons. This change fixes the placeholder
+ position, and also better aligns the results popup list with the actual text you type.
+
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::clientPaddingLeft):
+ (WebCore::RenderTextControlSingleLine::clientPaddingRight):
+
+2011-02-21 Nico Weber <thakis@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ GIFImageDecoder::setSize() tries to override the superclass method but fails
+ https://bugs.webkit.org/show_bug.cgi?id=54305
+
+ The superclass uses unsigned instead of int for its parameters, so
+ GIFImageDecoder::setSize() was an overload, not an override.
+
+ * platform/image-decoders/gif/GIFImageDecoder.cpp:
+ (WebCore::GIFImageDecoder::setSize):
+ * platform/image-decoders/gif/GIFImageDecoder.h:
+
+2011-02-21 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Deploy EditingStyle more in ApplyStyleCommand and do some cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=54528
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::StyleChange::init): Allows style to be a null pointer.
+ (WebCore::ApplyStyleCommand::applyInlineStyle): Overrides the value of text-decoration property by that of
+ -webkit-text-decorations-in-effect and remove the latter property when present. This allows removeImplicitlyStyledElement
+ to ignore -webkit-text-decorations-in-effect. Also uses the return value of EditingStyle::textDirection to determine
+ whether or not we need to apply unicode-bidi / direction instead of directly checking the value of unicode-bidi property.
+ (WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle): Takes EditingStyle* instead of CSSMutableStyleDeclaration*.
+ (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): Ditto.
+ (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Ditto.
+ (WebCore::ApplyStyleCommand::removeCSSStyle): Ditto.
+ (WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle): Ditto.
+ (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Ditto.
+ (WebCore::ApplyStyleCommand::removeInlineStyle): Ditto; no longer collapse text decoration properties because
+ ApplyStyleCommand::applyInlineStyle already does it.
+ * editing/ApplyStyleCommand.h:
+ * editing/EditingStyle.cpp:
+ (WebCore::EditingStyle::textDirection): Exits early when m_mutableStyle is null.
+ (WebCore::EditingStyle::collapseTextDecorationProperties): Extracted from ApplyStyleCommand::removeInlineStyle.
+ * editing/EditingStyle.h:
+
+2011-02-21 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Darin Adler and Alexey Proskuryakov.
+
+ <http://webkit.org/b/54919> / <rdar://problem/7689300> WebCore should retrieve unclamped frame delays from ImageIO
+
+ * platform/graphics/cg/ImageSourceCG.cpp:
+ (WebCore::ImageSource::frameDurationAtIndex): Look for the unclamped frame delay in the
+ frame properties dictionary and use that if it exists. If it does not exist in the
+ dictionary then fall back to using the clamped frame delay.
+
+2011-02-21 James Kozianski <koz@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Causes elements to be unfocusable after tabindex property is removed.
+ https://bugs.webkit.org/show_bug.cgi?id=54727
+
+ Test: fast/html/tabindex-removal.html
+
+ * dom/Node.cpp:
+ (WebCore::Node::clearTabIndexExplicitly):
+ * dom/Node.h:
+ * dom/NodeRareData.h:
+ (WebCore::NodeRareData::clearTabIndexExplicitly):
+ * html/HTMLElement.cpp:
+ (WebCore::HTMLElement::parseMappedAttribute):
+
+2011-02-21 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ <rdar://problem/8995483> Remove stubs of unneeded NSURLAuthenticationChallengeSender methods
+
+ * platform/network/mac/AuthenticationMac.mm: Remove the stubs that are no longer needed.
+
+2011-02-21 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ Overhang areas need to be invalidated on scroll
+ <rdar://problem/9032194>
+ https://bugs.webkit.org/show_bug.cgi?id=54917
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::scrollContents):
+ We need to explicitly invalidate the overhang areas when we scroll the contents
+ of a ScrollView, since they could contain arbitrary content that cannot be blitted.
+
+2011-02-21 Lucas Forschler <lforschler@apple.com>
+
+ Reviewed by Stephanie Lewis.
+
+ Fix the Leopard Debug build by incorporating the RenderSVGAllInOne.cpp
+
+ No new tests required.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2011-02-21 Pratik Solanki <psolanki@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Remove global initializer in CookieStorageCFNet.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=54905
+
+ * platform/network/cf/CookieStorageCFNet.cpp:
+ (WebCore::currentCookieStorage):
+ (WebCore::setCurrentCookieStorage):
+ (WebCore::setCookieStoragePrivateBrowsingEnabled):
+
+2011-02-18 Jer Noble <jer.noble@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ WebKit2: Media document videos play only sound, no video (affects trailers.apple.com)
+ https://bugs.webkit.org/show_bug.cgi?id=54771
+
+ Now that video is accelerated, we no longer need to special case
+ video playing within a media document.
+
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ (WebCore::MediaPlayerPrivateQTKit::preferredRenderingMode):
+ (WebCore::MediaPlayerPrivateQTKit::supportsAcceleratedRendering):
+
+2011-02-21 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Adam Roben.
+
+ REGRESSION (WebKit2): HTTP requests time out after 60 seconds
+ https://bugs.webkit.org/show_bug.cgi?id=54755
+ <rdar://problem/9006592>
+
+ No new tests - it won't be great to have a test that runs for a minute.
+
+ It's now possible to set a default timeout to be used at ResourceRequest creation. If one
+ hasn't been set, ResourceRequest will behave as before (use NSURLRequest default on Mac,
+ or use INT_MAX on other platforms).
+
+ * WebCore.exp.in:
+ * platform/network/ResourceRequestBase.cpp:
+ (WebCore::ResourceRequestBase::defaultTimeoutInterval): Get the ResourceRequest notion of
+ default timeout interval (may be 0 if using NSURLRequest default).
+ (WebCore::ResourceRequestBase::setDefaultTimeoutInterval): Set the static member variable.
+ (WebCore::ResourceRequestBase::updatePlatformRequest): Added an assertion that resource
+ request is updated. Plaform code often calls updateResourceRequest() indirectly from this
+ function, and that must obviously be a no-op.
+ (WebCore::ResourceRequestBase::updateResourceRequest): Added an assertion in the opposite
+ direction.
+ * platform/network/ResourceRequestBase.h: Changed "unspecifiedTimeoutInterval" to
+ "defaultTimeoutInterval". It has been used as default by most platforms anyway.
+ (WebCore::ResourceRequestBase::ResourceRequestBase):
+
+ * platform/network/mac/ResourceRequestMac.mm: (WebCore::ResourceRequest::doUpdatePlatformRequest):
+ Now zero is the magic value, not INT_MAX. We'll use NSURLRequest default if neither
+ setTimeoutInterval() nor setDefaultTimeoutInterval() has been called.
+
+2011-02-21 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] editing/pasteboard/dataTransfer-setData-getData.html fails
+ https://bugs.webkit.org/show_bug.cgi?id=54895
+
+ Correct the GTK+ clipboard implementation to know that "text" is an alias
+ for "text/html" data. This corrects the failing test.
+
+ * platform/gtk/ClipboardGtk.cpp:
+ (WebCore::dataObjectTypeFromHTMLClipboardType): Accept "text" as well as "Text".
+ (WebCore::ClipboardGtk::types): Advertise "text" as well as "Text".
+
+2011-02-21 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ ProcessingInstruction should provide a way to know if it is of CSS type.
+ https://bugs.webkit.org/show_bug.cgi?id=54868
+
+ * dom/ProcessingInstruction.cpp:
+ (WebCore::ProcessingInstruction::ProcessingInstruction):
+ (WebCore::ProcessingInstruction::checkStyleSheet):
+ (WebCore::ProcessingInstruction::setCSSStyleSheet):
+ * dom/ProcessingInstruction.h:
+ (WebCore::ProcessingInstruction::isCSS):
+
+2011-02-21 Simon Fraser <simon.fraser@apple.com>
+
+ Put JSDOMImplementationCustom.cpp where it belongs in the project.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2011-02-21 Gavin Barraclough <barraclough@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Bug 54894 - Make inheritance structure described by ClassInfo match C++ class hierarchy.
+
+ The ClassInfo objects describe an inheritance hierarchy, with each ClassInfo instance
+ containing a pointer to its parent class. These links should reflect the inheritance
+ hierarchy of C++ classes below JSObject. For the large part it does, but in some cases
+ entries in the C++ hierarchy are skipped over. This presently likely doesn't matter,
+ since intervening C++ classes may not have ClassInfo - but would be a potential bug
+ were ClassInfo were to be added.
+
+ * bindings/js/JSAudioConstructor.cpp:
+ * bindings/js/JSDOMGlobalObject.cpp:
+ * bindings/js/JSImageConstructor.cpp:
+ * bindings/js/JSOptionConstructor.cpp:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bridge/objc/objc_runtime.mm:
+ * bridge/runtime_object.cpp:
+
+2011-02-21 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: navigation does not work after reopening frontend.
+ https://bugs.webkit.org/show_bug.cgi?id=54879
+
+ Test: http/tests/inspector-enabled/open-close-open.html
+
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::setFrontend):
+ * inspector/InspectorState.cpp:
+ (WebCore::InspectorState::unmute):
+ * inspector/InspectorState.h:
+
+2011-02-21 Adam Roben <aroben@apple.com>
+
+ Protect the PluginView when evaluating javascript: URLs
+
+ Fixes <http://webkit.org/b/54884> <rdar://problem/9030864>
+ plugins/get-url-with-javascript-destroying-plugin.html crashing on Windows since it was
+ added
+
+ Reviewed by Sam Weinig.
+
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::performRequest): Protect the PluginView, not just its parent frame,
+ when evaluating javascript: URLs.
+
+2011-02-21 Martin Robinson <mrobinson@igalia.com>
+
+ Fix GTK+ build after r79223.
+
+ * GNUmakefile.am: Add file missing from the source list.
+
+2011-02-14 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: audits should not warn about gzip compression for 304s
+ https://bugs.webkit.org/show_bug.cgi?id=54343
+
+ Do not run compression-related audits on 304 resources.
+ Drive-by: handle multi-encoding resources (Content-Encoding: sdhc,gzip) correctly.
+
+ * inspector/front-end/AuditRules.js:
+ (WebInspector.AuditRules.GzipRule.prototype.doRun):
+ (WebInspector.AuditRules.GzipRule.prototype._isCompressed):
+
+2011-02-08 Anton Muhin <antonm@chromium.org>
+
+ Reviewed by Adam Barth and Alexey Proskuryakov.
+
+ Propagate security origin of parent document into HTML documents created with DOMImplementation
+ https://bugs.webkit.org/show_bug.cgi?id=53611
+
+ This restores invariant that JS wrappers residing in the same JS context should come
+ from the same security origin.
+
+ Absence of regressions is covered by the current tests. Different security origin of
+ DOMImplementation is difficult to check with layout tests as DOMImplementation
+ resides in the same JS context as parent document and therefore there are no security origin checks.
+ This is observable however in C++.
+
+ * Android.jscbindings.mk:
+ * CMakeLists.txt:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::NodeGrouperVisitor::visitDOMWrapper):
+ * dom/DOMImplementation.cpp:
+ (WebCore::DOMImplementation::DOMImplementation):
+ (WebCore::DOMImplementation::createDocument):
+ * dom/DOMImplementation.h:
+ (WebCore::DOMImplementation::create):
+ (WebCore::DOMImplementation::documentDestroyed):
+ (WebCore::DOMImplementation::parentDocument):
+ * dom/DOMImplementation.idl:
+ * dom/Document.cpp:
+ (WebCore::Document::~Document):
+ (WebCore::Document::implementation):
+ * dom/Document.h:
+
+2011-02-21 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Text editor] Optimize editing updates in gutter panel
+ https://bugs.webkit.org/show_bug.cgi?id=54866
+
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextViewer.prototype.set startEditingListener):
+ (WebInspector.TextViewer.prototype.set endEditingListener):
+ (WebInspector.TextViewer.prototype.endUpdates):
+ (WebInspector.TextViewer.prototype._enterInternalTextChangeMode):
+ (WebInspector.TextViewer.prototype._exitInternalTextChangeMode):
+ (WebInspector.TextEditorChunkedPanel.prototype._chunkNumberForLine):
+ (WebInspector.TextEditorGutterPanel.prototype._expandChunks):
+ (WebInspector.TextEditorGutterPanel.prototype.textChanged):
+ (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
+
+2011-02-21 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [Audits] Image dimensions in inline style not checked
+ https://bugs.webkit.org/show_bug.cgi?id=54738
+
+ * inspector/front-end/AuditRules.js:
+ (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
+
+2011-02-21 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: create and destroy DOM agent along with InspectorAgent
+ https://bugs.webkit.org/show_bug.cgi?id=54875
+
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * inspector/InstrumentingAgents.h: Added. Agents that want to instrument WebCore should register themselve
+ on this object.
+ (WebCore::InstrumentingAgents::InstrumentingAgents):
+ (WebCore::InstrumentingAgents::~InstrumentingAgents):
+ (WebCore::InstrumentingAgents::inspectorBrowserDebuggerAgent):
+ (WebCore::InstrumentingAgents::setInspectorBrowserDebuggerAgent):
+ (WebCore::InstrumentingAgents::inspectorConsoleAgent):
+ (WebCore::InstrumentingAgents::setInspectorConsoleAgent):
+ (WebCore::InstrumentingAgents::inspectorDOMAgent):
+ (WebCore::InstrumentingAgents::setInspectorDOMAgent):
+ (WebCore::InstrumentingAgents::inspectorDOMStorageAgent):
+ (WebCore::InstrumentingAgents::setInspectorDOMStorageAgent):
+ (WebCore::InstrumentingAgents::inspectorDatabaseAgent):
+ (WebCore::InstrumentingAgents::setInspectorDatabaseAgent):
+ (WebCore::InstrumentingAgents::inspectorDebuggerAgent):
+ (WebCore::InstrumentingAgents::setInspectorDebuggerAgent):
+ (WebCore::InstrumentingAgents::inspectorProfilerAgent):
+ (WebCore::InstrumentingAgents::setInspectorProfilerAgent):
+ (WebCore::InstrumentingAgents::inspectorResourceAgent):
+ (WebCore::InstrumentingAgents::setInspectorResourceAgent):
+ (WebCore::InstrumentingAgents::inspectorRuntimeAgent):
+ (WebCore::InstrumentingAgents::setInspectorRuntimeAgent):
+ (WebCore::InstrumentingAgents::inspectorStorageAgent):
+ (WebCore::InstrumentingAgents::setInspectorStorageAgent):
+ (WebCore::InstrumentingAgents::inspectorTimelineAgent):
+ (WebCore::InstrumentingAgents::setInspectorTimelineAgent):
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ (WebCore::InspectorAgent::setFrontend):
+ (WebCore::InspectorAgent::disconnectFrontend):
+ (WebCore::InspectorAgent::createFrontendLifetimeAgents):
+ (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
+ (WebCore::InspectorAgent::didCommitLoad):
+ (WebCore::InspectorAgent::domContentLoadedEventFired):
+ (WebCore::InspectorAgent::loadEventFired):
+ * inspector/InspectorAgent.h:
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::InspectorCSSAgent::InspectorCSSAgent):
+ (WebCore::InspectorCSSAgent::~InspectorCSSAgent):
+ * inspector/InspectorCSSAgent.h:
+ * inspector/InspectorConsoleAgent.cpp:
+ (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
+ (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
+ (WebCore::InspectorConsoleAgent::clearConsoleMessages):
+ (WebCore::InspectorConsoleAgent::clearFrontend):
+ (WebCore::InspectorConsoleAgent::resourceRetrievedByXMLHttpRequest):
+ (WebCore::InspectorConsoleAgent::setMonitoringXHREnabled):
+ (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
+ (WebCore::InspectorConsoleAgent::addConsoleMessage):
+ * inspector/InspectorConsoleAgent.h:
+ * inspector/InspectorDOMAgent.cpp: DOM agent now lives even when the front-end is not attached.
+ (WebCore::InspectorDOMAgent::InspectorDOMAgent):
+ (WebCore::InspectorDOMAgent::setFrontend): Add DOM agent to the set of active agents when the front-end
+ is attached.
+ (WebCore::InspectorDOMAgent::clearFrontend):
+ * inspector/InspectorDOMAgent.h:
+ (WebCore::InspectorDOMAgent::create):
+
+2011-02-21 Csaba Osztrogonác <ossy@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt][V8]REGRESSION(r79157): Fix build
+ https://bugs.webkit.org/show_bug.cgi?id=54871
+
+ * bridge/npruntime_internal.h: Add one more undef because of evil X11 macro.
+
+2011-02-16 Vitaly Repeshko <vitalyr@chromium.org>
+
+ Reviewed by Mihai Parparita.
+
+ [V8] SerializedScriptValue: fix JS exception handling.
+ https://bugs.webkit.org/show_bug.cgi?id=54555
+
+ Added checks for exceptions and empty handles:
+ * bindings/v8/SerializedScriptValue.cpp:
+ (WebCore::Serializer::Serializer):
+ (WebCore::Serializer::serialize):
+ (WebCore::Serializer::checkException):
+ (WebCore::Serializer::reportFailure):
+ (WebCore::Serializer::ArrayState::advance):
+ (WebCore::Serializer::AbstractObjectState::AbstractObjectState):
+ (WebCore::Serializer::AbstractObjectState::advance):
+ (WebCore::Serializer::push):
+ (WebCore::Serializer::handleError):
+ (WebCore::Serializer::newObjectState):
+ (WebCore::Serializer::doSerialize):
+ (WebCore::SerializedScriptValue::SerializedScriptValue):
+
+2011-02-21 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ Add selectionchange event
+ https://bugs.webkit.org/show_bug.cgi?id=45712
+
+ Added the support for asynchronous selectionchange event, which is fired whenever selection is changed.
+ This event is not cancelable and does not bubble. An event listener can be attached to a document by
+ body element's onselectionchange attribute or via document's onselectionchange property.
+
+ Note that WebKit's implementation fires the event asynchronously whereas Internet Explorer's implementation
+ fires it synchronously. This implies that a script that modify selection (e.g. via selection's addRange)
+ will not observe the event before the control returns to JavaScript.
+
+ See also: http://msdn.microsoft.com/en-us/library/ms536968(VS.85).aspx
+
+ Tests: fast/events/selectionchange-iframe.html
+ fast/events/selectionchange-user-initiated.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::enqueueDocumentEvent): Added.
+ * dom/Document.h: Added selectionchange event listener.
+ * dom/Document.idl: Added onselectionchagne attribute.
+ * dom/EventNames.h: Added selectionchange
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::setSelection): Fires selectionchange event.
+ * html/HTMLAttributeNames.in: Added onselectionchange.
+ * html/HTMLBodyElement.cpp:
+ (WebCore::HTMLBodyElement::parseMappedAttribute): Handles onselectionchange attribute.
+
+2011-02-21 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: protocol error messages are dumping incorrectly in Layout tests.
+ https://bugs.webkit.org/show_bug.cgi?id=54859
+
+ * inspector/CodeGeneratorInspector.pm:
+
+2011-02-21 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: generate protocol documentation based on IDL.
+ https://bugs.webkit.org/show_bug.cgi?id=54822
+
+ * inspector/CodeGeneratorInspector.pm:
+
+2011-02-21 Andoni Morales Alastruey <amorales@flumotion.com>
+
+ Reviewed by Martin Robinson.
+
+ [GStreamer] Add URI queries support in webkitwebsrc
+ https://bugs.webkit.org/show_bug.cgi?id=54627
+
+ This allow replying to URI queries from downstream elements
+ with the uri currently set in the source element.
+
+ No new tests, this feature is dedicated to internal GStreamer use,
+ such as the upcoming HTTP Live Streaming element.
+
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ (webKitWebSrcQuery):
+
+2011-02-21 Andoni Morales Alastruey <amorales@flumotion.com>
+
+ Reviewed by Martin Robinson.
+
+ [GStreamer] Add 'location' property in webkitwebsrc
+ https://bugs.webkit.org/show_bug.cgi?id=54628
+
+ No new tests, this feature is dedicated to internal GStreamer use,
+ such as the upcoming HTTP Live Streaming element.
+
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ (webkit_web_src_class_init):
+ (webKitWebSrcSetProperty):
+ (webKitWebSrcGetProperty):
+
+2011-02-17 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ Rename Position::node() to Position::deprecatedNode()
+ https://bugs.webkit.org/show_bug.cgi?id=54622
+
+ Done the rename. All calls to node() are replaced by calls to deprecatedNode() except when
+ calls were of the form node()->document() and node()->inDocument() in which case they were
+ replaced by anchorNode()->document() and anchorNode()->inDocument() respectively.
+
+ * WebCore.exp.in: Added Position::containerNode.
+
+ The rest abbreviated for simplicity. Please see svn log.
+
+2011-02-20 Gavin Barraclough <barraclough@apple.com>
+
+ Build fix (remove includes).
+
+ * bindings/js/JSDOMBinding.cpp:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ * bindings/js/JSHistoryCustom.cpp:
+ * bindings/js/JSLocationCustom.cpp:
+
+2011-02-20 Gavin Barraclough <barraclough@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=54839
+ Remove PrototypeFunction, NativeFunctionWrapper, and GlobalEvalFunction.
+
+ Historically, Native functions used to be represented by PrototypeFunctions, however
+ since introducing call optimizations to the JIT this has used JSFunctions for host
+ calls too. At the point this change was made, the interpreter continued to use
+ PrototypeFunctions, however since fallback from the JIT to interpreter was introduced
+ the interpreter has had to be able to run using host functions represented using
+ JSFunctions - leading to an unnecessary and redundant divergence in behaviour between
+ interpreter only builds, and situations where the JIT has fallen back to interpreting.
+
+ NativeFunctionWrapper only existed to select between PrototypeFunction and JSFunction
+ for wrappers for host functions, and as such can also be removed.
+
+ GlobalEvalFunction is a redundant wrapper that happens to be derived from
+ PrototypeFunction. It existed to hold a reference to the global object - but since all
+ functions how derive from JSObjectWithGlobalObject, this no longer requires an
+ additional class to provide this functionality.
+
+ * bindings/js/JSDOMBinding.cpp:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ * bindings/js/JSHistoryCustom.cpp:
+ * bindings/js/JSLocationCustom.cpp:
+ Removed use of redundant classes.
+
+2011-02-20 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r79169.
+ http://trac.webkit.org/changeset/79169
+ https://bugs.webkit.org/show_bug.cgi?id=54846
+
+ Made unexpected results for tests without CJK characters
+ (Requested by tkent on #webkit).
+
+ * platform/graphics/chromium/FontCacheChromiumWin.cpp:
+ (WebCore::FontCache::createFontPlatformData):
+ * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::operator=):
+ * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
+ (WebCore::FontPlatformData::orientation):
+ * platform/graphics/skia/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+
+2011-02-20 Chun-Lung Huang <alvincl.huang@gmail.com>
+
+ Reviewed by Kent Tamura.
+
+ On Chromium Windows, glyphs in vertical text tests are rotated 90
+ degrees clockwise. https://bugs.webkit.org/show_bug.cgi?id=51450
+
+ This platform dependent patch makes Chromium Windows show the
+ vertical writing text correctly. Job was done by adding a prefix '@'
+ in front of the font family name (Windows Only). No new tests added.
+
+ * platform/graphics/chromium/FontCacheChromiumWin.cpp:
+ (WebCore::FontCache::createFontPlatformData):
+ * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::operator=):
+ * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
+ (WebCore::FontPlatformData::orientation):
+ * platform/graphics/skia/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+
+2011-02-20 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dirk Schulze.
+
+ REGRESSION (r73369-r73405): transform animation interpolates incorrectly
+ https://bugs.webkit.org/show_bug.cgi?id=54793
+
+ After the refactoring in r73380, the ending state for some types of
+ accelerated animations was computed incorrectly, because the TransformationMatrix
+ wasn't reset to identity before the ending value transformations were applied.
+
+ Fix by cleaning up the code to use explicit, separate values for
+ starting and ending values. Only matrix-type animations had this
+ issue, but cleaned up other clauses similarly.
+
+ Test: animations/3d/matrix-transform-type-animation.html
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::setTransformAnimationEndpoints):
+
+2011-02-20 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ <rdar://problem/9028929> REGRESSION (r75897): Scaling applied twice to an iframe with a transformed ancestor
+
+ Test: fast/frames/iframe-scale-applied-twice.html
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::create): Set the initial bounds of the view to match the
+ frame size.
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::visibleContentRect): Based on bounds, not frame size.
+ (WebCore::ScrollView::updateScrollbars): Ditto.
+ (WebCore::ScrollView::setFrameRect): Moved code that really handles bounds size
+ change to setBoundsSize().
+ (WebCore::ScrollView::setBoundsSize): Added.
+ (WebCore::ScrollView::setInitialBoundsSize): Added. Sets the bounds size but does
+ not update anything.
+ (WebCore::ScrollView::frameRectsChanged): Based on bounds, not frame size.
+ (WebCore::ScrollView::scrollbarCornerPresent): Ditto.
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::boundsSize): Added this getter.
+ * platform/Widget.h:
+ (WebCore::Widget::resize): Set the bounds size to the frame size.
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::paint): Fixed an error in the indirect drawing code
+ path where the buffer rect was resized to capture only the damaged part, but was
+ still drawn in the original location.
+
+2011-02-20 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ Tighten up access permissions by using libxslt API
+ https://bugs.webkit.org/show_bug.cgi?id=52688
+ <rdar://problem/8909191>
+
+ * xml/XSLTProcessorLibxslt.cpp: (WebCore::XSLTProcessor::transformToString): We are only
+ interested in a string result, so let libxslt know about that.
+
+2011-02-20 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r79104.
+ http://trac.webkit.org/changeset/79104
+ https://bugs.webkit.org/show_bug.cgi?id=54835
+
+ Might have caused flaky canaries (Requested by tonyg-cr on
+ #webkit).
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::canTakeNextToken):
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ * html/parser/HTMLParserScheduler.cpp:
+ (WebCore::isLayoutTimerActive):
+ * html/parser/HTMLParserScheduler.h:
+ (WebCore::HTMLParserScheduler::checkForYieldBeforeToken):
+ * page/FrameView.h:
+
+2011-02-20 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG animation - analyze attribute type for animation
+ https://bugs.webkit.org/show_bug.cgi?id=54542
+
+ Analyze animated attribute type to determine the kind of animation. Removed enum PropertyType and replace it
+ with AnimatedAttributeType instead. More cleanup of the animation code.
+ Added missing fillAttributeToPropertyTypeMap() for SVGGElement.
+
+ Use QualifiedName instead of AtomicStrings for attribute names. This makes it easier to handle animated attributes
+ from a different namespace like xlink:href. The rest of the SVG code is using QualifiedNames as well.
+
+ No change of functionality on the animation code. The changes for the <g>-element affect animateTransform. Sadly
+ animateTransform is not supported by our SVG animation test script at the moment. Can still be tested manually
+ with the W3C test suite in trunk.
+
+ The change on SVGUseElement gets covered by animate-elem-39-t.svg
+
+ Test: svg/animations/animate-dynamic-update-attributeName.html
+
+ * svg/SVGAnimateElement.cpp:
+ (WebCore::SVGAnimateElement::SVGAnimateElement):
+ (WebCore::SVGAnimateElement::hasValidAttributeType):
+ (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::inheritsFromProperty):
+ (WebCore::SVGAnimateElement::calculateFromAndToValues):
+ (WebCore::SVGAnimateElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateElement::resetToBaseValue):
+ (WebCore::SVGAnimateElement::applyResultsToTarget):
+ (WebCore::SVGAnimateElement::calculateDistance):
+ * svg/SVGAnimateElement.h:
+ * svg/SVGAnimateMotionElement.cpp:
+ (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
+ (WebCore::parsePoint):
+ (WebCore::SVGAnimateMotionElement::resetToBaseValue):
+ (WebCore::SVGAnimateMotionElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateMotionElement::calculateDistance):
+ * svg/SVGAnimateMotionElement.h:
+ * svg/SVGAnimateTransformElement.cpp:
+ (WebCore::SVGAnimateTransformElement::hasValidAttributeType):
+ (WebCore::SVGAnimateTransformElement::determineAnimatedAttributeType):
+ (WebCore::SVGAnimateTransformElement::resetToBaseValue):
+ (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateTransformElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
+ (WebCore::SVGAnimateTransformElement::calculateDistance):
+ * svg/SVGAnimateTransformElement.h:
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::parseKeyTimes):
+ (WebCore::parseKeySplines):
+ (WebCore::SVGAnimationElement::isTargetAttributeCSSProperty):
+ (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
+ (WebCore::SVGAnimationElement::calculateKeyTimesForCalcModePaced):
+ (WebCore::solveEpsilon):
+ (WebCore::SVGAnimationElement::calculatePercentFromKeyPoints):
+ (WebCore::SVGAnimationElement::currentValuesFromKeyPoints):
+ (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
+ (WebCore::SVGAnimationElement::startedActiveInterval):
+ * svg/SVGAnimationElement.h:
+ * svg/SVGFilterElement.cpp:
+ (WebCore::SVGFilterElement::fillAttributeToPropertyTypeMap):
+ * svg/SVGGElement.cpp:
+ (WebCore::SVGGElement::attributeToPropertyTypeMap):
+ (WebCore::SVGGElement::fillAttributeToPropertyTypeMap): Added to fill the animated attribute map for this element.
+ * svg/SVGGElement.h:
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::fillAttributeToPropertyTypeMap): Changed attribute type to AnimatedString for xlink:href.
+ * svg/animation/SMILTimeContainer.cpp:
+ (WebCore::SMILTimeContainer::baseValueFor):
+ (WebCore::SMILTimeContainer::updateAnimations):
+ * svg/animation/SMILTimeContainer.h:
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::SVGSMILElement::SVGSMILElement):
+ (WebCore::constructQualifiedName): Create a QualifiedName from a attribute name.
+ (WebCore::SVGSMILElement::insertedIntoDocument): Update local varaible of attribute name.
+ (WebCore::SVGSMILElement::removedFromDocument): Ditto.
+ (WebCore::SVGSMILElement::attributeChanged): Ditto.
+ * svg/animation/SVGSMILElement.h:
+ (WebCore::SVGSMILElement::attributeName):
+
+2011-02-20 David Kilzer <ddkilzer@apple.com>
+
+ BUILD FIX: Add missing UNUSED_PARAM() when !ENABLE(FULLSCREEN_API)
+
+ Not reviewed.
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::requiresCompositingForFullScreen):
+
+2011-02-20 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Implement PlatformKeyboardEvent::getCurrentModifierState()
+ https://bugs.webkit.org/show_bug.cgi?id=52880
+
+ * platform/gtk/KeyEventGtk.cpp:
+ (WebCore::PlatformKeyboardEvent::getCurrentModifierState):
+
+2011-02-19 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ DragController should use Color::serialized() when passing colors to CSSStyleDeclaration
+ https://bugs.webkit.org/show_bug.cgi?id=54545
+
+ * page/DragController.cpp:
+ (WebCore::DragController::concludeEditDrag):
+
+2011-02-19 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Add phase in addition to momentumPhase to platform wheel events
+ Part of <rdar://problem/8945362>
+
+ Rename existing phase to momentumPhase.
+
+ * platform/PlatformWheelEvent.h:
+ (WebCore::PlatformWheelEvent::PlatformWheelEvent):
+ (WebCore::PlatformWheelEvent::momentumPhase):
+ * platform/mac/ScrollAnimatorMac.mm:
+ (WebCore::ScrollAnimatorMac::handleWheelEvent):
+ (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
+ * platform/mac/WheelEventMac.mm:
+ (WebCore::momentumPhaseForEvent):
+ (WebCore::phaseForEvent):
+ (WebCore::PlatformWheelEvent::PlatformWheelEvent):
+
+2011-02-19 Gavin Barraclough <barraclough@apple.com>
+
+ Qt build fix.
+
+ * bridge/runtime_method.h:
+ (JSC::RuntimeMethod::createStructure):
+
+2011-02-19 Gavin Barraclough <barraclough@apple.com>
+
+ Qt build fix.
+
+ * bridge/qt/qt_instance.cpp:
+ * bridge/qt/qt_pixmapruntime.cpp:
+
+2011-02-19 Gavin Barraclough <barraclough@apple.com>
+
+ Qt build fix.
+
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtInstance::getMethod):
+ * bridge/qt/qt_pixmapruntime.cpp:
+ (JSC::Bindings::QtPixmapInstance::getMethod):
+
+2011-02-18 Gavin Barraclough <barraclough@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Bug 54786 - Devirtualize JSCell::classInfo()
+
+ Instead of making a virtual function call, add a pointer to the ClassInfo
+ onto Structure.
+
+ This removes a virtual function call, and paves the way towards removing all
+ the createStructure methods, and StructureFlags/AnonymousSlotCount properties
+ (these should be able to move onto ClassInfo).
+
+ Calls to Structure::create must now pass a pointer to the ClassInfo for the
+ structure. All objects now have a ClassInfo pointer, non-object cell types
+ still do not.
+
+ Changes are most mechanical, involving three steps:
+ * Remove virtual classInfo() methods.
+ * Add &s_info parameter to calls to Structure::create.
+ * Rename ClassInfo static members on classes from 'info' to 's_info',
+ for consistency.
+
+ * WebCore.exp.in:
+ * bindings/js/JSAudioConstructor.cpp:
+ * bindings/js/JSAudioConstructor.h:
+ * bindings/js/JSDOMBinding.cpp:
+ * bindings/js/JSDOMBinding.h:
+ * bindings/js/JSDOMGlobalObject.cpp:
+ * bindings/js/JSDOMGlobalObject.h:
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowShell.cpp:
+ * bindings/js/JSDOMWindowShell.h:
+ * bindings/js/JSGeolocationCustom.cpp:
+ * bindings/js/JSImageConstructor.cpp:
+ * bindings/js/JSImageConstructor.h:
+ * bindings/js/JSImageDataCustom.cpp:
+ * bindings/js/JSOptionConstructor.cpp:
+ * bindings/js/JSOptionConstructor.h:
+ * bindings/js/JSWorkerContextBase.cpp:
+ * bindings/js/JSWorkerContextBase.h:
+ * bindings/js/SerializedScriptValue.cpp:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bridge/c/CRuntimeObject.cpp:
+ * bridge/c/CRuntimeObject.h:
+ * bridge/c/c_instance.cpp:
+ * bridge/jni/jsc/JNIUtilityPrivate.cpp:
+ * bridge/jni/jsc/JavaInstanceJSC.cpp:
+ * bridge/jni/jsc/JavaRuntimeObject.cpp:
+ * bridge/jni/jsc/JavaRuntimeObject.h:
+ * bridge/jsc/BridgeJSC.cpp:
+ * bridge/objc/ObjCRuntimeObject.h:
+ * bridge/objc/ObjCRuntimeObject.mm:
+ * bridge/objc/objc_instance.mm:
+ * bridge/objc/objc_runtime.h:
+ * bridge/objc/objc_runtime.mm:
+ * bridge/runtime_array.cpp:
+ * bridge/runtime_array.h:
+ * bridge/runtime_method.cpp:
+ * bridge/runtime_method.h:
+ * bridge/runtime_object.cpp:
+ * bridge/runtime_object.h:
+
+2011-02-19 Zan Dobersek <zandobersek@gmail.com>
+
+ Reviewed by Martin Robinson.
+
+ [cairo][canvas] Drawing from/into float rectangles with width or height in range 0 to 1 fails
+ https://bugs.webkit.org/show_bug.cgi?id=54491
+
+ When width or height in float rectangle are in range (0, 0.5) or (-0.5, 0)
+ and would round to 0, alter the behaviour to ensure that width or height are
+ at least 1 pixel in size in these cases.
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::roundToDevicePixels):
+
+2011-02-19 Dan Bernstein <mitz@apple.com>
+
+ LLVM Compiler build fix.
+
+ * platform/graphics/ShadowBlur.cpp:
+ (WebCore::ShadowBlur::blurLayerImage): Eliminated a file static that generated
+ a global initializer since the compiler does not evaluate sqrtf at compile time.
+
+2011-02-19 Brian Ryner <bryner@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Replace the #include of DocumentLoader.h in Document.h with a
+ forward declaration, and add a missing #include now that this
+ transitive include is gone.
+ https://bugs.webkit.org/show_bug.cgi?id=50489
+
+ No new tests required.
+
+ * bindings/ScriptControllerBase.cpp:
+ * dom/Document.h:
+
+2011-02-19 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Antonio Gomes.
+
+ [EFL] Remove WebCore::currentTime()
+ https://bugs.webkit.org/show_bug.cgi?id=53886
+
+ There is no declaration for it and we use WTF::currentTime() everywhere.
+
+ * platform/efl/SystemTimeEfl.cpp:
+
+2011-02-19 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ Move KeygenWinCE from wince into win directory
+ https://bugs.webkit.org/show_bug.cgi?id=54804
+
+ Move this file into the win directory, since it can be used on all windows platforms.
+
+ * CMakeListsWinCE.txt:
+ * platform/win/SSLKeyGeneratorWin.cpp: Renamed from platform/wince/KeygenWinCE.cpp.
+
+2011-02-19 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ Make FileChooserWin.cpp more portable and use it on WinCE
+ https://bugs.webkit.org/show_bug.cgi?id=54803
+
+ * CMakeListsWinCE.txt:
+ * platform/win/FileChooserWin.cpp:
+ (WebCore::FileChooser::basenameForWidth):
+ * platform/wince/FileChooserWinCE.cpp: Removed.
+
+2011-02-19 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Make ScriptElement match the HTML5 spec
+ https://bugs.webkit.org/show_bug.cgi?id=54676
+
+ This implements the "prepare a script" section of the HTML5 spec in ScriptElement::prepareScript().
+ http://www.whatwg.org/specs/web-apps/current-work/multipage/scripting-1.html#prepare-a-script
+
+ There are a couple of things missing from the spec that would be new functionality. These will be added later.
+ - Support for async=false
+ - Empty src attribute should dispatch an error.
+
+ There are a couple of slight behavioral changes to match the spec.
+ - An XHTML script that is loaded then copied will not fire load on the copy.
+ - If onbeforeload moves the script to a different document, then it will not try to execute again because wasAlreadyStarted is true.
+
+ The parsers were updated to use the new API, but not rewritten to look like the spec. That will be done separately.
+
+ Test: All existing tests.
+
+ * dom/ScriptElement.cpp: Rewritten to match HTML5 spec.
+ (WebCore::ScriptElement::ScriptElement):
+ (WebCore::ScriptElement::insertedIntoDocument): Logic moved to prepareScript.
+ (WebCore::ScriptElement::childrenChanged): Logic moved to prepareScript.
+ (WebCore::ScriptElement::handleSourceAttribute): Logic moved to prepareScript.
+ (WebCore::isLegacySupportedJavaScriptLanguage): Added to support old script types in layout tests.
+ (WebCore::ScriptElement::isScriptTypeSupported): Derived from old shouldExecuteAsJavaScript().
+ (WebCore::ScriptElement::prepareScript): START HERE. Main change. Should read exactly like HTML5's "prepare a script." Legacy type support needed for layout tests using XML parser.
+ (WebCore::ScriptElement::requestScript): Most logic moved to prepareScript. Check security settings here.
+ (WebCore::ScriptElement::executeScript): Combined evaluateScript() and executeScript() from old code. Logic moved to prepareScript.
+ (WebCore::ScriptElement::stopLoadRequest): Ignore parser executed scripts.
+ (WebCore::ScriptElement::execute): Renamed executeScript.
+ (WebCore::ScriptElement::notifyFinished): We should only listen for non-parser executed scripts.
+ (WebCore::ScriptElement::ignoresLoadRequest): New variable names.
+ (WebCore::ScriptElement::childrenAreCommentsOrEmptyText): Added for HTML5 compliance.
+ (WebCore::ScriptElement::scriptCharset): Use HTML5 variables.
+ * dom/ScriptElement.h:
+ (WebCore::ScriptElement::willBeParserExecuted): Added.
+ (WebCore::ScriptElement::readyToBeParserExecuted): Added.
+ (WebCore::ScriptElement::willExecuteWhenDocumentFinishedParsing): Added.
+ (WebCore::ScriptElement::cachedScript): prepareScript() is the only place that should load scripts. This accessor lets the parsers listen for when loads finish.
+ (WebCore::ScriptElement::isParserInserted): Added.
+ * dom/XMLDocumentParserLibxml2.cpp:
+ (WebCore::XMLDocumentParser::endElementNs): Should behave the same. Offloads much of its work to prepareScript().
+ * dom/XMLDocumentParserQt.cpp:
+ (WebCore::XMLDocumentParser::parseEndElement): Identical to libxml2 changes.
+ * html/HTMLScriptElement.cpp:
+ (WebCore::HTMLScriptElement::insertedIntoDocument): No longer needs url.
+ (WebCore::HTMLScriptElement::hasSourceAttribute): Added.
+ * html/HTMLScriptElement.h:
+ * html/parser/HTMLScriptRunner.cpp:
+ (WebCore::HTMLScriptRunner::requestPendingScript): Requesting scripts offloaded to ScriptElement.
+ (WebCore::HTMLScriptRunner::runScript): Should behave the same. Offloads much of its work to prepareScript().
+ * svg/SVGScriptElement.cpp:
+ (WebCore::SVGScriptElement::svgAttributeChanged): New ScriptElement function names.
+ (WebCore::SVGScriptElement::insertedIntoDocument): No longer needs url.
+ (WebCore::SVGScriptElement::finishParsingChildren): ScriptElement::finishParsingChildren is gone.
+ (WebCore::SVGScriptElement::hasSourceAttribute): Added.
+ (WebCore::SVGScriptElement::dispatchLoadEvent): New ScriptElement function names.
+ * svg/SVGScriptElement.h:
+
+2011-02-19 Marc-Antoine Ruel <maruel@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Split webcore_rendering off webcore_remaining to reduce its size for WPO builds
+ https://bugs.webkit.org/show_bug.cgi?id=54789
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-02-19 Bill Budge <bbudge@chromium.org>
+
+ Reviewed by David Levin.
+
+ ThreadableLoaderClient needs willSendRequest method
+ https://bugs.webkit.org/show_bug.cgi?id=54688
+
+ No new tests. Exposes no new functionality
+
+ * WebCore.gypi:
+ * loader/DocumentThreadableLoader.cpp:
+ (WebCore::DocumentThreadableLoader::willSendRequest):
+ (WebCore::DocumentThreadableLoader::didReceiveData):
+ (WebCore::DocumentThreadableLoader::didReceiveCachedMetadata):
+ * loader/DocumentThreadableLoaderClient.h: Added.
+ (WebCore::DocumentThreadableLoaderClient::isDocumentThreadableLoaderClient):
+ (WebCore::DocumentThreadableLoaderClient::willSendRequest):
+ * loader/ThreadableLoaderClient.h:
+ (WebCore::ThreadableLoaderClient::isDocumentThreadableLoaderClient):
+
+2011-02-19 Charlie Reis <creis@chromium.org>
+
+ Reviewed by Mihai Parparita.
+
+ Ensure loading has stopped in HistoryController::goToItem
+ https://bugs.webkit.org/show_bug.cgi?id=54517
+
+ Avoid stopping all loaders in goToItem for same document navigations
+ or pseudo-back-forward URLs. Make HistoryController::goToItem private
+ to force callers to go through Page::goToItem. Also add a callback to
+ FrameLoaderClient to let clients decide whether to stop loading first.
+
+ Test: http/tests/navigation/forward-to-fragment-fires-onload.html
+
+ * loader/EmptyClients.h:
+ * loader/FrameLoader.h:
+ * loader/FrameLoaderClient.h:
+ * loader/HistoryController.cpp:
+ * loader/HistoryController.h:
+ * page/Page.cpp:
+
+2011-02-19 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Daniel Bates.
+
+ Fix xssAuditor/iframe-injection.html
+ https://bugs.webkit.org/show_bug.cgi?id=54591
+
+ We should block the iframe src attribute. Although this technically
+ can't be used to run script, it's a pretty easy vector for stealing
+ passwords.
+
+ * html/parser/XSSFilter.cpp:
+ (WebCore::XSSFilter::filterTokenInitial):
+ (WebCore::XSSFilter::filterIframeToken):
+ * html/parser/XSSFilter.h:
+
+2011-02-18 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Let the parser yield for layout before running scripts
+ https://bugs.webkit.org/show_bug.cgi?id=54355
+
+ Prior to this patch, the parser would yield to perform a layout/paint before running a
+ script only if the script or a stylesheet blocking the script is not loaded yet. Since we
+ don't preload scan into the body while parsing the head, typically we'll block on a script
+ early in the body that causes us to yield to do the first paint within a reasonable time.
+
+ However, I'm planning to change the PreloadScanner to scan into the body from the head.
+ That significantly improves overall load time, but would hurt first paint time because
+ fewer scripts would be blocked during parsing and thus wouldn't yield.
+
+ This change causes us to yield before running scripts if we haven't painted yet (regardless
+ of whether or not the script is loaded). In addition to allowing the above mentioned
+ PreloadScanner change to be implemented without regressing first paint time, this also
+ improves first paint time by itself.
+
+ I tested Alexa's top 45 websites using Web Page Replay to control the content and simulate
+ bandwidth. This patch improved average first paint time by 1% over an unlimited connection,
+ 6% over a 1Mbps connection and 11% over a 5Mbps connection. There was no statistically
+ signifcant change in page load time.
+
+ Within the pages tested, 33 had no statistically significant change in time to first paint,
+ 12 improved, and none regressed. Of the improved, some of the standouts from the 1Mbps set
+ are: 20% on youtube, 37% on wiki, 27% on ebay, 13% on cnn, 16% on espn, 74% on sohu.
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::canTakeNextToken): This is the new yield point.
+ (WebCore::HTMLDocumentParser::pumpTokenizer): Remove ASSERT that we are not paused. isPaused
+ means that we are waiting for a script. Bug 54574 changed pumpTokenizer() so that it does
+ the right thing whether we are just before a token or waiting for a script. Now that we may
+ yield before a token or before a script, this may be called while paused.
+ * html/parser/HTMLParserScheduler.cpp:
+ (WebCore::isLayoutTimerActive): Added a FIXME because r52919 changed minimumLayoutDelay()
+ to return m_extraLayoutDelay instead of 0 as a minimum. So checking !minimumLayoutDelay()
+ no longer works. The fix is to change it to check minimumLayoutDelay() ==
+ m_extraLayoutDelay. But this is all the more reason to move this method onto Document. I'll
+ do this in a follow up.
+ (WebCore::HTMLParserScheduler::checkForYieldBeforeScript): Added.
+ * page/FrameView.h:
+ (WebCore::FrameView::hasEverPainted): Added.
+
+2011-02-18 Dawit Alemayehu <adawit@kde.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Button Element is rendered w/ text off-center.
+ https://bugs.webkit.org/show_bug.cgi?id=53373
+
+ Test: LayoutTests/fast/forms/button-white-space.html
+
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::adjustButtonStyle):
+
+2011-02-18 Jonathan Backer <backer@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ [chromium] Fix leak of texture IDs in compositor.
+ https://bugs.webkit.org/show_bug.cgi?id=54750
+
+ No new tests. It is extremely unlikely that this leak would have
+ any user visible impact because only a few bytes of space are wasted
+ (we're leaking texture IDs, not actual textures) and the space of
+ texture IDs is large (32 bits).
+
+ * platform/graphics/chromium/TextureManager.cpp:
+ (WebCore::TextureManager::requestTexture):
+
+2011-02-18 Yi Shen <yi.4.shen@nokia.com>
+
+ Reviewed by Tor Arne Vestbø.
+
+ Always display the media controls when requiresFullscreenForVideoPlayback() is true
+ https://bugs.webkit.org/show_bug.cgi?id=54308
+
+ For video element, it should have controls when
+ Chrome::requiresFullscreenForVideoPlayback() is true.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::controls):
+
+2011-02-18 Adrienne Walker <enne@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Use nearest-neighbor filtering for root layer.
+ https://bugs.webkit.org/show_bug.cgi?id=54409
+ https://bugs.webkit.org/show_bug.cgi?id=54509
+
+ This setting creates more consistent images for LayoutTests and
+ prevents small floating point errors in texture coordinates from
+ creating off-by-one pixel color differences.
+
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::update):
+
+2011-02-18 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Kent Tamura.
+
+ [EFL] Fix coding style errors in RenderThemeEfl.h
+ https://bugs.webkit.org/show_bug.cgi?id=54693
+
+ Fix style errors in RenderThemeEfl.h
+
+ * platform/efl/RenderThemeEfl.h:
+
+2011-02-18 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] The localized vendor name for Qt SIS packages should be "Nokia"
+ https://bugs.webkit.org/show_bug.cgi?id=54742
+
+ This change was applied in the Qt repository (qt/src/3rdparty/webkit),
+ so we should do the same here in QtWebKit.
+
+ Patch by Eckhart Koppen <eckhart.koppen@nokia.com>
+ a8a84f1667966acfa093c4be0b7d4b0900ddd3d9:
+
+ The previously used name "Nokia, Qt" was not usable for Nokia
+ Content Signing, which only allows "Nokia" as the visible vendor
+ name. The unique vendor ID remains as "Nokia, Qt"
+
+ * WebCore.pro:
+
+2011-02-18 Alexis Menard <alexis.menard@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] REGRESSION(r67516) : on www.gmail.com a strange rendering issue appears on the
+ menu bar due to flash.
+ https://bugs.webkit.org/show_bug.cgi?id=54741
+
+ Only show plugins with a valid size. We then don't involve X11 if there is
+ nothing to see anyway.
+
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+ (WebCore::PluginView::platformStart):
+
+2011-02-18 Ryuan Choi <ryuan.choi@samsung.com>
+
+ Reviewed by Kent Tamura.
+
+ [EFL] Remove GDK dependency.
+ https://bugs.webkit.org/show_bug.cgi?id=53978
+
+ Remove GLIB_SUPPORT macro in GDK related code.
+ Regardless of GLIB_SUPPORT, getDefaultFontOptions() will works same way.
+
+ * CMakeListsEfl.txt:
+ * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
+ (WebCore::getDefaultFontOptions):
+
+2011-02-18 Noel Gordon <noel.gordon@gmail.com>
+
+ Reviewed by James Robinson.
+
+ [Chromium] Add elliptical gradient support to GradientSkia
+ https://bugs.webkit.org/show_bug.cgi?id=51841
+
+ Covered by existing tests, these need new rebaselines once this patch
+ lands for chrome linux, win32
+
+ fast/gradients/css3-color-stop-units.html
+ fast/gradients/css3-color-stops.html
+ fast/gradients/css3-linear-angle-gradients.html
+ fast/gradients/css3-radial-gradients.html
+ fast/gradients/css3-radial-gradients2.html
+ fast/gradients/css3-radial-gradients3.html
+ fast/gradients/css3-repeating-radial-gradients.html
+
+ * platform/graphics/skia/GradientSkia.cpp:
+ (WebCore::Gradient::platformGradient):
+
+2011-02-18 James Robinson <jamesr@chromium.org>
+
+ Fix typo in boundary test in ASSERT() - test is for an inclusive range, not exclusive.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::updateTextureIfNeeded):
+
+2011-02-18 Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Tiled backing store area is too big.
+ Error in area calculcation causes size of backing store
+ up to 6 times bigger than viewport with default multipliers.
+ https://bugs.webkit.org/show_bug.cgi?id=54587
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::TiledBackingStore::createTiles):
+
+2011-02-18 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Fix for <rdar://problem/9018729> Horizontal scroller doesn't
+ appear when loading a page with a Horizontal scrollbar from
+ the back/forward cache.
+
+ This patch adds a new bool member variable to FrameView to
+ keep track of whether we are loading a page from the back/
+ forward cache. If we are, don't suppress scrollbars on
+ first layout.
+ * history/CachedFrame.cpp:
+ (WebCore::CachedFrameBase::restore):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::FrameView):
+ (WebCore::FrameView::reset):
+ (WebCore::FrameView::layout):
+ * page/FrameView.h:
+ (WebCore::FrameView::setIsRestoringFromBackForward):
+ (WebCore::FrameView::isRestoringFromBackForward):
+
+2011-02-18 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed WinCE build fix for r78846.
+
+ * platform/graphics/wince/FontWinCE.cpp:
+ (WebCore::TextRunComponent::TextRunComponent):
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContext::drawLineForText):
+ (WebCore::GraphicsContext::drawLineForTextChecking):
+ (WebCore::GraphicsContext::drawText):
+ * platform/wince/FileChooserWinCE.cpp:
+ (WebCore::FileChooser::basenameForWidth):
+
+2011-02-18 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Crash in EventHandler::sendContextMenuEventForKey
+ https://bugs.webkit.org/show_bug.cgi?id=54495
+
+ Test: fast/events/menu-keydown-on-hidden-element.html
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::sendContextMenuEventForKey): Add null check.
+
+2011-02-15 Adrienne Walker <enne@google.com>
+
+ Reviewed by James Robinson.
+
+ [chromium] Clean up shader code from LayerChromium classes
+ https://bugs.webkit.org/show_bug.cgi?id=54484
+
+ This is a refactoring and there should be no change in functionality.
+ All shader code is pulled out into classes in ShaderChromium.
+ The SharedValues classes are now turned into ProgramBinding, one per
+ shader program. These contain shader classes that know about what
+ variables they can bind.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/CanvasLayerChromium.cpp:
+ (WebCore::CanvasLayerChromium::draw):
+ * platform/graphics/chromium/CanvasLayerChromium.h:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::draw):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/GeometryBinding.cpp: Added.
+ (WebCore::GeometryBinding::GeometryBinding):
+ (WebCore::GeometryBinding::~GeometryBinding):
+ (WebCore::GeometryBinding::prepareForDraw):
+ * platform/graphics/chromium/GeometryBinding.h: Copied from Source/WebCore/platform/graphics/chromium/PluginLayerChromium.h.
+ (WebCore::GeometryBinding::initialized):
+ (WebCore::GeometryBinding::context):
+ (WebCore::GeometryBinding::quadVerticesVbo):
+ (WebCore::GeometryBinding::quadElementsVbo):
+ (WebCore::GeometryBinding::positionAttribLocation):
+ (WebCore::GeometryBinding::texCoordAttribLocation):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::drawDebugBorder):
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::sharedGeometry):
+ (WebCore::LayerRendererChromium::borderProgram):
+ (WebCore::LayerRendererChromium::contentLayerProgram):
+ (WebCore::LayerRendererChromium::canvasLayerProgram):
+ (WebCore::LayerRendererChromium::videoLayerRGBAProgram):
+ (WebCore::LayerRendererChromium::videoLayerYUVProgram):
+ (WebCore::LayerRendererChromium::pluginLayerProgram):
+ (WebCore::LayerRendererChromium::renderSurfaceProgram):
+ (WebCore::LayerRendererChromium::renderSurfaceMaskProgram):
+ (WebCore::LayerRendererChromium::tilerProgram):
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::draw):
+ (WebCore::LayerTilerChromium::drawTexturedQuad):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ * platform/graphics/chromium/PluginLayerChromium.cpp:
+ (WebCore::PluginLayerChromium::draw):
+ * platform/graphics/chromium/PluginLayerChromium.h:
+ * platform/graphics/chromium/ProgramBinding.cpp: Added.
+ (WebCore::ProgramBindingBase::ProgramBindingBase):
+ (WebCore::ProgramBindingBase::~ProgramBindingBase):
+ (WebCore::ProgramBindingBase::init):
+ (WebCore::ProgramBindingBase::loadShader):
+ (WebCore::ProgramBindingBase::createShaderProgram):
+ * platform/graphics/chromium/ProgramBinding.h: Added.
+ (WebCore::ProgramBindingBase::program):
+ (WebCore::ProgramBindingBase::initialized):
+ (WebCore::ProgramBinding::ProgramBinding):
+ (WebCore::ProgramBinding::vertexShader):
+ (WebCore::ProgramBinding::fragmentShader):
+ * platform/graphics/chromium/RenderSurfaceChromium.cpp:
+ (WebCore::RenderSurfaceChromium::drawSurface):
+ * platform/graphics/chromium/RenderSurfaceChromium.h:
+ * platform/graphics/chromium/ShaderChromium.cpp: Added.
+ (WebCore::VertexShaderPosTex::VertexShaderPosTex):
+ (WebCore::VertexShaderPosTex::init):
+ (WebCore::VertexShaderPosTex::getShaderString):
+ (WebCore::VertexShaderPosTexYUVStretch::VertexShaderPosTexYUVStretch):
+ (WebCore::VertexShaderPosTexYUVStretch::init):
+ (WebCore::VertexShaderPosTexYUVStretch::getShaderString):
+ (WebCore::VertexShaderPos::VertexShaderPos):
+ (WebCore::VertexShaderPos::init):
+ (WebCore::VertexShaderPos::getShaderString):
+ (WebCore::VertexShaderPosTexTransform::VertexShaderPosTexTransform):
+ (WebCore::VertexShaderPosTexTransform::init):
+ (WebCore::VertexShaderPosTexTransform::getShaderString):
+ (WebCore::FragmentTexAlphaBinding::FragmentTexAlphaBinding):
+ (WebCore::FragmentTexAlphaBinding::init):
+ (WebCore::FragmentShaderRGBATexFlipAlpha::getShaderString):
+ (WebCore::FragmentShaderRGBATexAlpha::getShaderString):
+ (WebCore::FragmentShaderBGRATexAlpha::getShaderString):
+ (WebCore::FragmentShaderRGBATexAlphaMask::FragmentShaderRGBATexAlphaMask):
+ (WebCore::FragmentShaderRGBATexAlphaMask::init):
+ (WebCore::FragmentShaderRGBATexAlphaMask::getShaderString):
+ (WebCore::FragmentShaderYUVVideo::FragmentShaderYUVVideo):
+ (WebCore::FragmentShaderYUVVideo::init):
+ (WebCore::FragmentShaderYUVVideo::getShaderString):
+ (WebCore::FragmentShaderColor::FragmentShaderColor):
+ (WebCore::FragmentShaderColor::init):
+ (WebCore::FragmentShaderColor::getShaderString):
+ * platform/graphics/chromium/ShaderChromium.h: Added.
+ (WebCore::VertexShaderPosTex::matrixLocation):
+ (WebCore::VertexShaderPosTexYUVStretch::matrixLocation):
+ (WebCore::VertexShaderPosTexYUVStretch::yWidthScaleFactorLocation):
+ (WebCore::VertexShaderPosTexYUVStretch::uvWidthScaleFactorLocation):
+ (WebCore::VertexShaderPos::matrixLocation):
+ (WebCore::VertexShaderPosTexTransform::matrixLocation):
+ (WebCore::VertexShaderPosTexTransform::texTransformLocation):
+ (WebCore::FragmentTexAlphaBinding::alphaLocation):
+ (WebCore::FragmentTexAlphaBinding::samplerLocation):
+ (WebCore::FragmentShaderRGBATexAlphaMask::alphaLocation):
+ (WebCore::FragmentShaderRGBATexAlphaMask::samplerLocation):
+ (WebCore::FragmentShaderRGBATexAlphaMask::maskSamplerLocation):
+ (WebCore::FragmentShaderYUVVideo::yTextureLocation):
+ (WebCore::FragmentShaderYUVVideo::uTextureLocation):
+ (WebCore::FragmentShaderYUVVideo::vTextureLocation):
+ (WebCore::FragmentShaderYUVVideo::alphaLocation):
+ (WebCore::FragmentShaderYUVVideo::ccMatrixLocation):
+ (WebCore::FragmentShaderYUVVideo::signAdjLocation):
+ (WebCore::FragmentShaderColor::colorLocation):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::draw):
+ (WebCore::VideoLayerChromium::drawYUV):
+ (WebCore::VideoLayerChromium::drawRGBA):
+ * platform/graphics/chromium/VideoLayerChromium.h:
+
+2011-02-18 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Update texture for ContentLayerChromiums in draw() call instead of updateContents..() call
+ https://bugs.webkit.org/show_bug.cgi?id=54315
+
+ This defers all operations on the compositor's GL context until the
+ draw() call which is a prerequisite for moving the draw() off-thread.
+ Also cleans up the update cycle a bit - there were some unused local
+ variables and whatnot.
+
+ One consequence of this change is that the upload buffer is retained
+ across updates now instead of allocated by each paint. This is
+ necessary so that the full layer contents can be uploaded if the
+ texture manager evicts the layer's backing texture. This costs more
+ persistent memory but avoids lots of allocator churn on updates.
+ Another nonobvious detail is that I have to update the texture for
+ ContentLayerChromiums in bindContentsTexture() because mask layers
+ never draw(), they are instead bound to the secondary texture unit.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
+ (WebCore::ContentLayerChromium::updateContentsIfDirty):
+ (WebCore::ContentLayerChromium::resizeUploadBufferForImage):
+ (WebCore::ContentLayerChromium::resizeUploadBuffer):
+ (WebCore::SkBitmapConditionalAutoLockerPixels::SkBitmapConditionalAutoLockerPixels):
+ (WebCore::SkBitmapConditionalAutoLockerPixels::~SkBitmapConditionalAutoLockerPixels):
+ (WebCore::SkBitmapConditionalAutoLockerPixels::lockPixels):
+ (WebCore::ContentLayerChromium::updateTextureIfNeeded):
+ (WebCore::ContentLayerChromium::draw):
+ (WebCore::ContentLayerChromium::unreserveContentsTexture):
+ (WebCore::ContentLayerChromium::bindContentsTexture):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContentsIfDirty):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setBounds):
+ * platform/graphics/chromium/LayerChromium.h:
+
+2011-02-18 Kenneth Russell <kbr@google.com>
+
+ Unreviewed, Chromium build fix on certain Linux platforms.
+
+ * platform/graphics/gpu/LoopBlinnSolidFillShader.cpp:
+
+2011-02-18 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Implement client based geolocation for qtport
+ https://bugs.webkit.org/show_bug.cgi?id=42629
+
+ Implements client based geolocation for qtwebkit. Removed old code related to non-client based geolocation
+
+ No tests as yet. This will be raised as different bug as new mock client implementation need to be done.
+
+ * WebCore.pro:
+ * features.pri:
+ * platform/qt/GeolocationServiceQt.cpp: Removed.
+ * platform/qt/GeolocationServiceQt.h: Removed.
+
+2011-02-18 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Dave Hyatt.
+
+ Add support for dir=auto
+ https://bugs.webkit.org/show_bug.cgi?id=50916
+
+ When an element has dir attribute with value "auto", call defaultWritingMode
+ to find its directionality.
+ Added a flag SelfOrAncestorHasDirAutoFlag, and added hooks in the DOM to set
+ and check this flag. This flag is set on every node between an element with
+ dir=auto attribute and its first text node. Changes in the DOM between those
+ elements will trigger re-evaluating the directionality, but changes not
+ between those element do not need to be concerned.
+ The DOM hooks were added to childrenChanged, and to parseMappedAttribute.
+ The directionality is evaluated when children are added, and cleared when they are
+ removed. Directionality flag is also cleared on a child that is no longer determining
+ the directionality due to a sibling being added before that child.
+
+ Added 2 static CSSMutableStyleDeclarations to be used for elements with dir=auto.
+ We cannot used the mapped declaration, because it can take only one value.
+
+ Tests: fast/dom/HTMLElement/attr-dir-auto-change-before-text-node.html
+ fast/dom/HTMLElement/attr-dir-auto-change-child-node.html
+ fast/dom/HTMLElement/attr-dir-auto-change-text.html
+ fast/dom/HTMLElement/attr-dir-auto-children.html
+ fast/dom/HTMLElement/attr-dir-auto-remove-add-children.html
+ fast/dom/HTMLElement/attr-dir-auto.html
+ fast/dom/HTMLElement/attr-dir-value-change.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::leftToRightDeclaration):
+ (WebCore::rightToLeftDeclaration):
+ (WebCore::CSSStyleSelector::canShareStyleWithElement):
+ (WebCore::CSSStyleSelector::styleForElement):
+ * dom/Node.h:
+ (WebCore::Node::selfOrAncestorHasDirAutoAttribute):
+ (WebCore::Node::setSelfOrAncestorHasDirAutoAttribute):
+ * html/HTMLElement.cpp:
+ (WebCore::HTMLElement::mapToEntry):
+ (WebCore::HTMLElement::parseMappedAttribute):
+ (WebCore::setHasDirAutoFlagRecursively):
+ (WebCore::HTMLElement::childrenChanged):
+ (WebCore::HTMLElement::directionalityIfhasDirAutoAttribute):
+ (WebCore::HTMLElement::directionality):
+ (WebCore::HTMLElement::dirAttributeChanged):
+ (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildAttributeChanged):
+ (WebCore::HTMLElement::calculateAndAdjustDirectionality):
+ (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged):
+ * html/HTMLElement.h:
+
+2011-02-18 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ Navigating downwards / upwards does not focus on the links spread across more than one line.
+ https://bugs.webkit.org/show_bug.cgi?id=54639
+
+ When 2 anchor elements span more than one line each, and one ends on the same line that the
+ second starts on, the rects reported by their renderers are overlapping. When handling
+ 2 overlapping nodes, check for this case, and don't assume that one of the nodes is on a higher layer.
+
+ Test: fast/spatial-navigation/snav-two-elements-one-line.html
+
+ * page/FocusController.cpp:
+ (WebCore::updateFocusCandidateIfNeeded):
+ (WebCore::FocusController::findFocusCandidateInContainer):
+ * page/SpatialNavigation.cpp:
+ (WebCore::areElementsOnSameLine):
+ (WebCore::distanceDataForNode):
+ * page/SpatialNavigation.h:
+
+2011-02-18 Ben Vanik <benvanik@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Bug 53940: Implement the OES_vertex_array_object WebGL extension
+ https://bugs.webkit.org/show_bug.cgi?id=53940
+
+ Initial implementation of the OES_vertex_array_object extension adding the OESVertexArrayObject
+ extension container and WebGLVertexArrayObjectOES VAO object. The extension is plumbed through
+ the Extensions3D interface and implemented in the Extensions3DOpenGL (WebKit/OSX) version when
+ it is available.
+ Two big changes touching code outside of the extension files:
+ * Moved the typedefs at the top of GraphicsContext3D.h to GraphicsTypes3D.h (modeled after
+ GraphicsTypes.h). They are not namespaced as they weren't before.
+ * To make the code cleaner/clearer all vertex attribute state has been moved to the
+ WebGLVertexArrayObjectOES type (struct VertexAttribState) except for values which are still
+ on the WebGLRenderingContext. A default VAO is now used to store the existing attribute
+ states for when no other VAO is used. Code in WebGLRenderingContext dealing with buffers and
+ vertex attributes now defers to or stores values in the bound array object.
+
+ Tested against the WebGL conformance suite and the new
+ oes-vertex-array-object test:
+ https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/oes-vertex-array-object.html
+
+ * CMakeLists.txt:
+ * CodeGenerators.pri:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.gyp: Modified property svn:ignore.
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSWebGLRenderingContextCustom.cpp:
+ (WebCore::toJS):
+ * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
+ (WebCore::toV8Object):
+ * html/canvas/OESVertexArrayObject.cpp: Added.
+ (WebCore::OESVertexArrayObject::OESVertexArrayObject):
+ (WebCore::OESVertexArrayObject::~OESVertexArrayObject):
+ (WebCore::OESVertexArrayObject::getName):
+ (WebCore::OESVertexArrayObject::create):
+ (WebCore::OESVertexArrayObject::createVertexArrayOES):
+ (WebCore::OESVertexArrayObject::deleteVertexArrayOES):
+ (WebCore::OESVertexArrayObject::isVertexArrayOES):
+ (WebCore::OESVertexArrayObject::bindVertexArrayOES):
+ * html/canvas/OESVertexArrayObject.h: Added.
+ * html/canvas/OESVertexArrayObject.idl: Added.
+ * html/canvas/WebGLExtension.h:
+ * html/canvas/WebGLGetInfo.cpp:
+ (WebCore::WebGLGetInfo::WebGLGetInfo):
+ (WebCore::WebGLGetInfo::getWebGLVertexArrayObjectOES):
+ * html/canvas/WebGLGetInfo.h:
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::initializeNewContext):
+ (WebCore::WebGLRenderingContext::bindBuffer):
+ (WebCore::WebGLRenderingContext::deleteBuffer):
+ (WebCore::WebGLRenderingContext::disableVertexAttribArray):
+ (WebCore::WebGLRenderingContext::validateElementArraySize):
+ (WebCore::WebGLRenderingContext::validateIndexArrayConservative):
+ (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
+ (WebCore::WebGLRenderingContext::validateRenderingState):
+ (WebCore::WebGLRenderingContext::drawElements):
+ (WebCore::WebGLRenderingContext::enableVertexAttribArray):
+ (WebCore::WebGLRenderingContext::getExtension):
+ (WebCore::WebGLRenderingContext::getParameter):
+ (WebCore::WebGLRenderingContext::getSupportedExtensions):
+ (WebCore::WebGLRenderingContext::getVertexAttrib):
+ (WebCore::WebGLRenderingContext::vertexAttribPointer):
+ (WebCore::WebGLRenderingContext::validateBufferDataParameters):
+ (WebCore::WebGLRenderingContext::vertexAttribfImpl):
+ (WebCore::WebGLRenderingContext::vertexAttribfvImpl):
+ (WebCore::WebGLRenderingContext::initVertexAttrib0):
+ (WebCore::WebGLRenderingContext::simulateVertexAttrib0):
+ (WebCore::WebGLRenderingContext::restoreStatesAfterVertexAttrib0Simulation):
+ (WebCore::WebGLRenderingContext::getNumberOfExtensions):
+ (WebCore::WebGLRenderingContext::getExtensionNumber):
+ * html/canvas/WebGLRenderingContext.h:
+ (WebCore::WebGLRenderingContext::getMaxVertexAttribs):
+ (WebCore::WebGLRenderingContext::setBoundVertexArrayObject):
+ (WebCore::WebGLRenderingContext::VertexAttribValue::VertexAttribValue):
+ * html/canvas/WebGLVertexArrayObjectOES.cpp: Added.
+ (WebCore::WebGLVertexArrayObjectOES::create):
+ (WebCore::WebGLVertexArrayObjectOES::WebGLVertexArrayObjectOES):
+ (WebCore::WebGLVertexArrayObjectOES::deleteObjectImpl):
+ * html/canvas/WebGLVertexArrayObjectOES.h: Added.
+ (WebCore::WebGLVertexArrayObjectOES::~WebGLVertexArrayObjectOES):
+ (WebCore::WebGLVertexArrayObjectOES::VertexAttribState::VertexAttribState):
+ (WebCore::WebGLVertexArrayObjectOES::isDefaultObject):
+ (WebCore::WebGLVertexArrayObjectOES::hasEverBeenBound):
+ (WebCore::WebGLVertexArrayObjectOES::setHasEverBeenBound):
+ (WebCore::WebGLVertexArrayObjectOES::getElementArrayBuffer):
+ (WebCore::WebGLVertexArrayObjectOES::setElementArrayBuffer):
+ (WebCore::WebGLVertexArrayObjectOES::getVertexAttribState):
+ (WebCore::WebGLVertexArrayObjectOES::isVertexArray):
+ * html/canvas/WebGLVertexArrayObjectOES.idl: Added.
+ * platform/graphics/Extensions3D.h:
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/GraphicsTypes3D.h: Added.
+ * platform/graphics/chromium/Extensions3DChromium.h:
+ * platform/graphics/opengl/Extensions3DOpenGL.cpp:
+ (WebCore::Extensions3DOpenGL::supports):
+ (WebCore::Extensions3DOpenGL::createVertexArrayOES):
+ (WebCore::Extensions3DOpenGL::deleteVertexArrayOES):
+ (WebCore::Extensions3DOpenGL::isVertexArrayOES):
+ (WebCore::Extensions3DOpenGL::bindVertexArrayOES):
+ * platform/graphics/opengl/Extensions3DOpenGL.h:
+ * platform/graphics/qt/Extensions3DQt.cpp:
+ (WebCore::Extensions3DQt::createVertexArrayOES):
+ (WebCore::Extensions3DQt::deleteVertexArrayOES):
+ (WebCore::Extensions3DQt::isVertexArrayOES):
+ (WebCore::Extensions3DQt::bindVertexArrayOES):
+ * platform/graphics/qt/Extensions3DQt.h:
+
+2011-02-17 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: reflect changes to styles when they happen outside inspector.
+ https://bugs.webkit.org/show_bug.cgi?id=44620
+
+ Notify InspectorInstrumentation of inline style changes from CSSMutableStyleDeclaration
+ whenever the style change does not come from a direct "style" attribute modification.
+ The performance regression occurs only with the Web Inspector opened, when inline styles
+ are modified through setting style.cssText or style.<styleAttribute>: according to the Web Inspector protocol,
+ an attribute change requires that all attributes for the node in question be pushed into the frontend.
+
+ Test: inspector/styles/styles-update-from-js.html
+
+ * css/CSSMutableStyleDeclaration.cpp:
+ (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::RevalidateStyleAttributeTask::reset):
+ (WebCore::RevalidateStyleAttributeTask::RevalidateStyleAttributeTask):
+ (WebCore::RevalidateStyleAttributeTask::scheduleFor):
+ (WebCore::RevalidateStyleAttributeTask::onTimer):
+ (WebCore::InspectorDOMAgent::reset):
+ (WebCore::InspectorDOMAgent::didInvalidateStyleAttr):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didInvalidateStyleAttrImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::didInvalidateStyleAttr):
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyleSheetForInlineStyle::didModifyElementAttribute):
+ (WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady):
+ (WebCore::InspectorStyleSheetForInlineStyle::elementStyleText):
+ * inspector/InspectorStyleSheet.h:
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype._attributesUpdated):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
+ (WebInspector.StylesSidebarPane.prototype.addBlankSection):
+ (WebInspector.StylePropertiesSection.prototype.onpopulate):
+ (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty):
+ (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate):
+ (WebInspector.BlankStylePropertiesSection):
+ (WebInspector.StylePropertyTreeElement):
+ (WebInspector.StylePropertyTreeElement.prototype):
+ (WebInspector.StylePropertyTreeElement.prototype.element.userInput.previousContent.context.moveDirection):
+
+2011-02-16 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Refactor pumpTokenizer loop
+ https://bugs.webkit.org/show_bug.cgi?id=54574
+
+ 1. This makes pumpTokenizer() safe to call when waiting for a script or when about to get
+ the next token, although ASSERTs still enforce that we aren't waiting for a script. This
+ enables resumeParsingAfterYield() to call pumpTokenizer with no modifications even if we
+ yield before running a script rather than before taking a token (see bug 54355).
+ 2. This also picks up the refCount >= 1 assert when stopped.
+
+ Tested PerformanceTests/Parser to verify no regression. If anything it got faster.
+ Before:
+ avg 985.05
+ median 985.5
+ stdev 3.007906248539007
+ min 980
+ max 990
+ After:
+ avg 980.05
+ median 981
+ stdev 3.122098653149833
+ min 974
+ max 985
+
+ No new tests because no new functionality.
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::canTakeNextToken): Added.
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ * html/parser/HTMLDocumentParser.h:
+
+2011-02-18 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r79003.
+ http://trac.webkit.org/changeset/79003
+ https://bugs.webkit.org/show_bug.cgi?id=54753
+
+ It broke tests on GTK bots (Requested by Ossy on #webkit).
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::lastChildConsideringContinuation):
+ * dom/Node.cpp:
+ (WebCore::Node::removeEventListener):
+ * html/DateComponents.cpp:
+ (WebCore::DateComponents::parseTime):
+
+2011-02-18 Csaba Osztrogonác <ossy@webkit.org>
+
+ Rubber-stamped by Andreas Kling.
+
+ Warning fix. Use ASSERT_UNUSED() instead of ASSERT().
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::lastChildConsideringContinuation):
+ * dom/Node.cpp:
+ (WebCore::Node::removeEventListener):
+ * html/DateComponents.cpp:
+ (WebCore::DateComponents::parseTime):
+
+2011-02-18 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Text editor] Optimize editing updates in main panel
+ https://bugs.webkit.org/show_bug.cgi?id=54661
+
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextViewer):
+ (WebInspector.TextViewer.prototype._textChanged):
+ (WebInspector.TextViewer.prototype._enterInternalTextChangeMode):
+ (WebInspector.TextViewer.prototype._exitInternalTextChangeMode):
+ (WebInspector.TextViewer.prototype._syncDecorationsForLine):
+ (WebInspector.TextEditorChunkedPanel.prototype.textChanged):
+ (WebInspector.TextEditorChunkedPanel.prototype._scroll):
+ (WebInspector.TextEditorChunkedPanel.prototype.chunkForLine):
+ (WebInspector.TextEditorChunkedPanel.prototype._totalHeight):
+ (WebInspector.TextEditorGutterPanel.prototype._expandChunks):
+ (WebInspector.TextEditorGutterChunk):
+ (WebInspector.TextEditorGutterChunk.prototype.addDecoration):
+ (WebInspector.TextEditorGutterChunk.prototype.removeDecoration):
+ (WebInspector.TextEditorMainPanel):
+ (WebInspector.TextEditorMainPanel.prototype._expandChunks):
+ (WebInspector.TextEditorMainPanel.prototype._highlightDataReady):
+ (WebInspector.TextEditorMainPanel.prototype._markSkippedPaintLines):
+ (WebInspector.TextEditorMainPanel.prototype._paintSkippedLines):
+ (WebInspector.TextEditorMainPanel.prototype._paintLines):
+ (WebInspector.TextEditorMainPanel.prototype._paintLine):
+ (WebInspector.TextEditorMainPanel.prototype._positionToSelection):
+ (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
+ (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
+ (WebInspector.TextEditorMainPanel.prototype._updateHighlightsForRange):
+ (WebInspector.TextEditorMainPanel.prototype._collectLinesFromDiv):
+ (WebInspector.TextEditorMainChunk):
+ (WebInspector.TextEditorMainChunk.prototype.get startLine):
+ (WebInspector.TextEditorMainChunk.prototype.set startLine):
+ (WebInspector.TextEditorMainChunk.prototype.getExpandedLineRow):
+ (WebInspector.TextEditorMainChunk.prototype.updateCollapsedLineRow):
+
+2011-02-18 Steve Block <steveblock@google.com>
+
+ Reviewed by Andreas Kling
+
+ Memory allocation error in convertV8ObjectToNPVariant() for strings
+ https://bugs.webkit.org/show_bug.cgi?id=54737
+
+ Include the termination character in the length when allocating memory
+ and copying the string. This fixes a crashing bug on Android.
+
+ This should be tested by the java/ tests on Chromium, but these
+ tests are currently skipped.
+
+ * bindings/v8/V8NPUtils.cpp:
+ (WebCore::convertV8ObjectToNPVariant):
+
+2011-02-18 Philippe Normand <pnormand@igalia.com>
+
+ Unreviewed, rolling out r78979.
+ http://trac.webkit.org/changeset/78979
+ https://bugs.webkit.org/show_bug.cgi?id=53146
+
+ causes multiple crashes on GTK
+
+ * accessibility/gtk/AXObjectCacheAtk.cpp:
+ (WebCore::notifyChildrenSelectionChange):
+ (WebCore::AXObjectCache::postPlatformNotification):
+
+2011-02-18 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] minimal build unrecognized options
+ https://bugs.webkit.org/show_bug.cgi?id=50890
+
+ * GNUmakefile.am: new feature defines for optional features build.
+
+2011-02-17 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Populate indexes created for object stores with data
+ https://bugs.webkit.org/show_bug.cgi?id=54669
+
+ Make sure that indices for object stores that already hold data get
+ populated.
+
+ * storage/IDBIndexBackendImpl.h:
+ (WebCore::IDBIndexBackendImpl::hasValidId):
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::putInternal):
+ (WebCore::populateIndex):
+ (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
+
+2011-02-18 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Combo boxes should emit object:selection-changed even when collapsed
+ https://bugs.webkit.org/show_bug.cgi?id=53146
+
+ Emit the selection-changed signals when the menu list value has changed
+
+ Test: platform/gtk/accessibility/combo-box-collapsed-selection-changed.html
+
+ * accessibility/gtk/AXObjectCacheAtk.cpp:
+ (WebCore::getListObject): New, return the right list object for
+ menu lists and list boxes.
+ (WebCore::notifyChildrenSelectionChange): Support menu lists.
+ (WebCore::AXObjectCache::postPlatformNotification): Call function
+ notifyChildrenSelectionChange for AXMenuListValueChanged.
+
+2011-02-18 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [Gtk] atk_text_get_selection/atk_text_set_selection fails for list items
+ https://bugs.webkit.org/show_bug.cgi?id=53453
+
+ Ensure that atk_text_{get|set}_selection() work with list items.
+
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (webkit_accessible_text_get_text): Properly handle list item
+ markers when returning the text for an object for a given interval
+ specified through the startOffset and endOffset parameters.
+ (getSelectionOffsetsForObject): Bear in mind list item markers
+ when returning the offsets for a selection over a list item.
+ (webkit_accessible_text_set_selection): Adjust offsets if needed
+ for list items with item markers. Ensure that it returns TRUE only
+ when everything went fine setting the text selection.
+
+2011-02-18 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ https://bugs.webkit.org/show_bug.cgi?id=54728
+ checkSelector*Value functions used in fastCheckSelector fail to inline
+
+ Wrap the functions used as template arguments to classes.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::fastCheckSingleSelector):
+ (WebCore::ClassCheck::checkValue):
+ (WebCore::IdCheck::checkValue):
+ (WebCore::TagCheck::checkValue):
+ (WebCore::CSSStyleSelector::SelectorChecker::fastCheckSelector):
+
+2011-02-17 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Composited iframe content is missing from snapshots in WebKit2
+ https://bugs.webkit.org/show_bug.cgi?id=54696
+
+ We need to propagate the 'flattening' paint behavior flag
+ down to subviews while painting. WebKit1 does this via
+ code in WebFrameView, but this is a more general fix
+ that works in WebKit2 as well.
+
+ Made a utility method, parentFrameView(), which I changed
+ some other methods to use as well.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::isEnclosedInCompositingLayer):
+ (WebCore::FrameView::useSlowRepaints):
+ (WebCore::FrameView::useSlowRepaintsIfNotOverlapped):
+ (WebCore::FrameView::isOverlappedIncludingAncestors):
+ (WebCore::FrameView::parentFrameView):
+ (WebCore::FrameView::paintContents):
+ * page/FrameView.h:
+
+2011-02-17 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ <rdar://problem/8898595> Pages that use fixed positioning display poorly when scaled
+
+ * html/HTMLBodyElement.cpp:
+ (WebCore::adjustForZoom): Account for page scale.
+ (WebCore::HTMLBodyElement::setScrollLeft): Ditto.
+ (WebCore::HTMLBodyElement::setScrollTop): Ditto.
+ * page/FrameView.cpp:
+ (WebCore::FrameView::scrollXForFixedPosition): Moved from ScrollView here and changed to
+ account for page scale: when the page is scaled, the “viewport” with respect to which fixed
+ objects are positioned is scaled as well. Since it’s now bigger than the real viewport (that is,
+ the frame view), we move it around in proportion to the document scroll, so that when the document
+ is fully scrolled to the bottom-right, the bottom right of the scaled viewport is visible.
+ (WebCore::FrameView::scrollYForFixedPosition): Ditto.
+ (WebCore::FrameView::scrollOffsetForFixedPosition): Moved from ScrollView here.
+ * page/FrameView.h:
+ * platform/ScrollView.cpp: Moved functions to FrameView.
+ * platform/ScrollView.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updateRepaintRectsAfterScroll): Account for the RenderView being transformed.
+ (WebCore::RenderLayer::calculateClipRects): Used scrollOffsetForFixedPosition().
+ (WebCore::RenderLayer::backgroundClipRect): Ditto.
+
+2011-02-17 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ Add support for GPU accelerated path rendering
+ https://bugs.webkit.org/show_bug.cgi?id=44729
+
+ Incorporates the Loop and Blinn path rendering algorithm as an
+ option to the GPU-accelerated canvas code, currently only compiled
+ in to the Chromium port. Currently it's toggled by changing a
+ hardcoded constant in
+ SharedGraphicsContext3D::useLoopBlinnForPathRendering() and is
+ disabled by default. This mechanism can be improved once we've
+ gained more confidence in the implementation. There are some known
+ bugs that need to be fixed first.
+
+ No new tests; ran some 2D Canvas tests manually with the new flag
+ both enabled and disabled.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/GLES2Canvas.cpp:
+ (WebCore::GLES2Canvas::GLES2Canvas):
+ (WebCore::GLES2Canvas::fillPath):
+ * platform/graphics/chromium/GLES2Canvas.h:
+ * platform/graphics/gpu/LoopBlinnClassifier.h:
+ * platform/graphics/gpu/LoopBlinnLocalTriangulator.h:
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::create):
+ (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
+ (WebCore::SharedGraphicsContext3D::createBuffer):
+ (WebCore::SharedGraphicsContext3D::bindBuffer):
+ (WebCore::SharedGraphicsContext3D::bufferData):
+ (WebCore::SharedGraphicsContext3D::bufferSubData):
+ (WebCore::SharedGraphicsContext3D::useLoopBlinnForPathRendering):
+ (WebCore::SharedGraphicsContext3D::useLoopBlinnInteriorProgram):
+ (WebCore::SharedGraphicsContext3D::useLoopBlinnExteriorProgram):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::fillPath):
+
+2011-02-16 Stephen White <senorblanco@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Layout Test fast/canvas/setWidthResetAfterForcedRender.html fails on
+ accelerated 2D canvas w/compositor enabled.
+ https://bugs.webkit.org/show_bug.cgi?id=54561
+
+ When resetting the CanvasRenderingContext2D, we also need to send a
+ contentChanged() to the relevant RenderLayer. This is similar to what
+ is done in didDraw().
+
+ Covered by fast/canvas/setWidthResetAfterForcedRender.html, but note
+ that this test will still fail pixel tests because the compositor
+ is not compatible with repaint tests (the green square is now white,
+ but the half-transparent grey repaint rect does not appear).
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::reset):
+
+2011-02-17 Sergey Glazunov <serg.glazunov@gmail.com>
+
+ Reviewed by Kenneth Russell.
+
+ Null out the WEBKIT_lose_context WebGL extension's context pointer when
+ the WebGL rendering context is removed.
+ https://bugs.webkit.org/show_bug.cgi?id=54679
+
+ Test: fast/canvas/webgl/context-destroyed-crash.html
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::~WebGLRenderingContext):
+ * html/canvas/WebKitLoseContext.cpp:
+ (WebCore::WebKitLoseContext::loseContext): Add null-check for m_context.
+ * html/canvas/WebKitLoseContext.h:
+ (WebCore::WebKitLoseContext::contextDestroyed):
+
+2011-02-17 Kenneth Russell <kbr@google.com>
+
+ Reviewed by Chris Marrin.
+
+ Construction of Uint8Array from JS Array (and possibly others) incorrectly clamps values
+ https://bugs.webkit.org/show_bug.cgi?id=52768
+
+ Removed incorrect clamping code from IntegralTypedArrayBase. Fixed
+ code which casts from incoming double to the destination type.
+ Changed the JSC bindings to use this code, rather than a copy of
+ the casting code and a different constructor, in order to reuse
+ the fix.
+
+ * bindings/js/JSArrayBufferViewHelper.h:
+ (WebCore::constructArrayBufferView):
+ * html/canvas/Int32Array.h:
+ (WebCore::Int32Array::set):
+ * html/canvas/Int8Array.h:
+ (WebCore::Int8Array::set):
+ * html/canvas/IntegralTypedArrayBase.h:
+ (WebCore::IntegralTypedArrayBase::set):
+ * html/canvas/Uint16Array.h:
+ (WebCore::Uint16Array::set):
+ * html/canvas/Uint32Array.h:
+ (WebCore::Uint32Array::set):
+ * html/canvas/Uint8Array.h:
+ (WebCore::Uint8Array::set):
+
+2011-02-17 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ Knob proportion not quite right during rubber-band.
+ <rdar://problem/9015201>
+
+ Change knob proportion algorithm to treat overhang as making the view smaller,
+ rather than document bigger.
+
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::paint):
+
+2011-02-16 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ Summary: HTML5 <details> and <summary>: HTMLSummaryElement
+ https://bugs.webkit.org/show_bug.cgi?id=54584
+
+ Adding class HTMLSummaryElement to build systems. This class will be used in
+ the implementation of new HTML5 tag <summary>.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/HTMLElementsAllInOne.cpp:
+ * html/HTMLSummaryElement.cpp: Added.
+ (WebCore::HTMLSummaryElement::create):
+ (WebCore::HTMLSummaryElement::HTMLSummaryElement):
+ * html/HTMLSummaryElement.h: Added.
+ * html/HTMLTagNames.in:
+
+2011-02-17 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ Throwing in an IndexedDB error or success event should lead to the transaction aborting
+ https://bugs.webkit.org/show_bug.cgi?id=54249
+
+ When an exception is thrown but not handled within an IDBRequests success/error event,
+ we should abort the transaction.
+
+ Test: storage/indexeddb/exception-in-event-aborts.html
+
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSEventListener::handleEvent):
+ * bindings/js/JSEventTarget.cpp:
+ (WebCore::toJS):
+ * bindings/v8/V8AbstractEventListener.cpp:
+ (WebCore::V8AbstractEventListener::invokeEventHandler):
+ * dom/EventTarget.cpp:
+ (WebCore::EventTarget::uncaughtExceptionInEventHandler):
+ * dom/EventTarget.h:
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::uncaughtExceptionInEventHandler):
+ * storage/IDBRequest.h:
+
+2011-02-17 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ WebKit2: Support Dictionary popup
+ <rdar://problem/7660670>
+
+ Add some necessary exports.
+
+ * WebCore.exp.in:
+
+2011-02-17 W. James MacLean <wjmaclean@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Add command-line flag to enable composite to offscreen texture.
+ https://bugs.webkit.org/show_bug.cgi?id=52311
+
+ Add plumbing to allow command-line switch to enable offscreen compositing. Function
+ LayerRendererChromium::copyOffscreenTextureToDisplay used for now to mimic
+ normal renderer operation.
+
+ Existing functionality not changed; offscreen compositing will be tested via GPU test framework.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::setRootLayer):
+ (WebCore::LayerRendererChromium::setCompositeOffscreen):
+ (WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay):
+ (WebCore::LayerRendererChromium::useRenderSurface):
+ (WebCore::LayerRendererChromium::setScissorToRect):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::isCompositingOffscreen):
+
+2011-02-17 Kevin Ollivier <kevino@theolliviers.com>
+
+ [wx] Build fixes after recent changes.
+
+ * dom/ScriptedAnimationController.h:
+ * platform/graphics/wx/FontWx.cpp:
+ (WebCore::Font::drawComplexText):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ (WebCore::GraphicsContext::drawLineForText):
+ (WebCore::GraphicsContext::drawLineForTextChecking):
+ * platform/wx/WidgetWx.cpp:
+ (WebCore::Widget::setFrameRect):
+
+2011-02-16 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by Brady Eidson.
+
+ WebKit2: Need a way to manage the WebCore Cache
+ https://bugs.webkit.org/show_bug.cgi?id=54501
+
+ Add a way to get a set of all of the origins that have entries in the
+ WebCore memory cache, and a method to remove all resources from the memory
+ cache from a given security origin.
+
+ No change in behavior.
+
+ * WebCore.exp.in: Add functions that need to be exported.
+ * loader/cache/MemoryCache.cpp:
+ (WebCore::MemoryCache::removeResourcesWithOrigin):
+ (WebCore::MemoryCache::getOriginsWithCache):
+ * loader/cache/MemoryCache.h:
+
+2011-02-16 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=54244
+
+ Convert the line box tree to floating point and eliminate font rounding hacks. This patch removes all of the rounding
+ hacks from the Font code and makes sure all Font APIs involving width measurement and width offsets use floats.
+
+ The line box tree's x, y and logicalWidth members have all been converted to floats and all of the line box APIs have
+ been changed as well.
+
+ In terms of pixel adjustments, overflow is using an enclosing model (so it will be enclosingIntRect of a line box's x/y/width/height).
+
+ Background and border painting is using a rounding model, so borders and backgrounds will round to the nearest pixel when painting.
+
+ Replaced elements still snap to integer positions on lines, and they use a rounding model as well, although their underlying line boxes
+ still have a precise floating point position.
+
+ Justification will now allow subpixel positioning to occur as well. Platforms that don't support subpixel positioning should already
+ be rounding justification spacing in their font code.
+
+ Many layout test results change on Mac, since rounding hacks were used there and are now gone.
+
+ * WebCore.exp.in:
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawTextInternal):
+ * platform/chromium/FileChooserChromium.cpp:
+ (WebCore::FileChooser::basenameForWidth):
+ * platform/graphics/Font.cpp:
+ (WebCore::Font::width):
+ * platform/graphics/Font.h:
+ (WebCore::Font::spaceWidth):
+ (WebCore::Font::tabWidth):
+ * platform/graphics/FontFastPath.cpp:
+ (WebCore::Font::getGlyphsAndAdvancesForSimpleText):
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::drawText):
+ (WebCore::GraphicsContext::drawEmphasisMarks):
+ (WebCore::GraphicsContext::drawBidiText):
+ (WebCore::GraphicsContext::drawHighlightForText):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/SimpleFontData.cpp:
+ (WebCore::SimpleFontData::SimpleFontData):
+ (WebCore::SimpleFontData::platformGlyphInit):
+ * platform/graphics/SimpleFontData.h:
+ (WebCore::SimpleFontData::spaceWidth):
+ * platform/graphics/StringTruncator.cpp:
+ (WebCore::stringWidth):
+ (WebCore::truncateString):
+ (WebCore::StringTruncator::centerTruncate):
+ (WebCore::StringTruncator::rightTruncate):
+ (WebCore::StringTruncator::width):
+ * platform/graphics/StringTruncator.h:
+ * platform/graphics/TextRun.h:
+ (WebCore::TextRun::TextRun):
+ (WebCore::TextRun::xPos):
+ (WebCore::TextRun::expansion):
+ (WebCore::TextRun::directionalOverride):
+ (WebCore::TextRun::disableSpacing):
+ * platform/graphics/WidthIterator.cpp:
+ (WebCore::WidthIterator::WidthIterator):
+ (WebCore::WidthIterator::advance):
+ * platform/graphics/WidthIterator.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::drawLineForText):
+ (WebCore::GraphicsContext::drawLineForTextChecking):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::drawLineForText):
+ * platform/graphics/mac/ComplexTextController.cpp:
+ (WebCore::ComplexTextController::ComplexTextController):
+ (WebCore::ComplexTextController::advance):
+ (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
+ * platform/graphics/mac/ComplexTextController.h:
+ * platform/graphics/mac/FontComplexTextMac.cpp:
+ (WebCore::Font::getGlyphsAndAdvancesForComplexText):
+ * platform/graphics/mac/GraphicsContextMac.mm:
+ (WebCore::GraphicsContext::drawLineForTextChecking):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::drawLineForText):
+ (WebCore::GraphicsContext::drawLineForTextChecking):
+ * platform/graphics/qt/SimpleFontDataQt.cpp:
+ (WebCore::SimpleFontData::platformGlyphInit):
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::drawLineForTextChecking):
+ (WebCore::GraphicsContext::drawLineForText):
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::GraphicsContext::drawLineForTextChecking):
+ * platform/graphics/win/UniscribeController.cpp:
+ (WebCore::UniscribeController::shapeAndPlaceItem):
+ * platform/gtk/FileChooserGtk.cpp:
+ (WebCore::FileChooser::basenameForWidth):
+ * platform/mac/DragImageMac.mm:
+ (WebCore::widthWithFont):
+ (WebCore::drawAtPoint):
+ * platform/mac/FileChooserMac.mm:
+ (WebCore::FileChooser::basenameForWidth):
+ * platform/win/DragImageWin.cpp:
+ (WebCore::createDragImageForLink):
+ * platform/win/FileChooserWin.cpp:
+ (WebCore::FileChooser::basenameForWidth):
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupMenuWin::calculatePositionAndSize):
+ * platform/win/WebCoreTextRenderer.cpp:
+ (WebCore::WebCoreTextFloatWidth):
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::addNodeToRectBasedTestResult):
+ * rendering/HitTestResult.h:
+ * rendering/InlineBox.cpp:
+ (WebCore::InlineBox::adjustPosition):
+ (WebCore::InlineBox::placeEllipsisBox):
+ (WebCore::InlineBox::locationIncludingFlipping):
+ (WebCore::InlineBox::flipForWritingMode):
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::InlineBox):
+ (WebCore::InlineBox::adjustLineDirectionPosition):
+ (WebCore::InlineBox::adjustBlockDirectionPosition):
+ (WebCore::InlineBox::setX):
+ (WebCore::InlineBox::x):
+ (WebCore::InlineBox::setY):
+ (WebCore::InlineBox::y):
+ (WebCore::InlineBox::width):
+ (WebCore::InlineBox::height):
+ (WebCore::InlineBox::logicalLeft):
+ (WebCore::InlineBox::logicalRight):
+ (WebCore::InlineBox::setLogicalLeft):
+ (WebCore::InlineBox::pixelSnappedLogicalLeft):
+ (WebCore::InlineBox::pixelSnappedLogicalRight):
+ (WebCore::InlineBox::setLogicalWidth):
+ (WebCore::InlineBox::logicalWidth):
+ (WebCore::InlineBox::verticalAlign):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::roundedFrameRect):
+ (WebCore::InlineFlowBox::adjustPosition):
+ (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
+ (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
+ (WebCore::verticalPositionForBox):
+ (WebCore::InlineFlowBox::computeLogicalBoxHeights):
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
+ (WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
+ (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
+ (WebCore::InlineFlowBox::computeOverflow):
+ (WebCore::InlineFlowBox::setLayoutOverflow):
+ (WebCore::InlineFlowBox::setVisualOverflow):
+ (WebCore::InlineFlowBox::nodeAtPoint):
+ (WebCore::InlineFlowBox::paintBoxDecorations):
+ (WebCore::InlineFlowBox::paintMask):
+ (WebCore::InlineFlowBox::placeEllipsisBox):
+ * rendering/InlineFlowBox.h:
+ (WebCore::InlineFlowBox::maxYLayoutOverflow):
+ (WebCore::InlineFlowBox::maxXLayoutOverflow):
+ (WebCore::InlineFlowBox::layoutOverflowRect):
+ (WebCore::InlineFlowBox::maxYVisualOverflow):
+ (WebCore::InlineFlowBox::maxXVisualOverflow):
+ (WebCore::InlineFlowBox::visualOverflowRect):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::placeEllipsisBox):
+ (WebCore::InlineTextBox::nodeAtPoint):
+ (WebCore::paintTextWithShadows):
+ (WebCore::InlineTextBox::paint):
+ (WebCore::InlineTextBox::paintSelection):
+ (WebCore::InlineTextBox::paintCompositionBackground):
+ (WebCore::InlineTextBox::paintDecoration):
+ (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
+ (WebCore::InlineTextBox::paintTextMatchMarker):
+ (WebCore::InlineTextBox::paintDocumentMarkers):
+ (WebCore::InlineTextBox::paintCompositionUnderline):
+ (WebCore::InlineTextBox::textPos):
+ (WebCore::InlineTextBox::offsetForPosition):
+ (WebCore::InlineTextBox::positionForOffset):
+ * rendering/InlineTextBox.h:
+ (WebCore::InlineTextBox::setExpansion):
+ * rendering/RenderBR.h:
+ (WebCore::RenderBR::width):
+ * rendering/RenderBlock.cpp:
+ (WebCore::stripTrailingSpace):
+ (WebCore::updatePreferredWidth):
+ (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
+ (WebCore::RenderBlock::adjustForBorderFit):
+ (WebCore::RenderBlock::addFocusRingRects):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
+ (WebCore::RenderBlock::fitBelowFloats):
+ (WebCore::textWidth):
+ (WebCore::tryHyphenating):
+ (WebCore::RenderBlock::findNextLineBreak):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::positionLineBox):
+ (WebCore::RenderBox::flipForWritingMode):
+ * rendering/RenderBox.h:
+ * rendering/RenderCombineText.cpp:
+ (WebCore::RenderCombineText::width):
+ (WebCore::RenderCombineText::adjustTextOrigin):
+ (WebCore::RenderCombineText::combineText):
+ * rendering/RenderCombineText.h:
+ (WebCore::RenderCombineText::combinedTextWidth):
+ * rendering/RenderCounter.cpp:
+ (WebCore::RenderCounter::computePreferredLogicalWidths):
+ * rendering/RenderCounter.h:
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
+ * rendering/RenderImage.cpp:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::linesBoundingBox):
+ (WebCore::RenderInline::linesVisualOverflowBoundingBox):
+ (WebCore::RenderInline::addFocusRingRects):
+ (WebCore::RenderInline::paintOutline):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::updateFromElement):
+ (WebCore::RenderListBox::paintItemForeground):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::updateOptionsWidth):
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::localCaretRect):
+ (WebCore::RenderText::widthFromCache):
+ (WebCore::RenderText::trimmedPrefWidths):
+ (WebCore::RenderText::minLogicalWidth):
+ (WebCore::RenderText::maxLogicalWidth):
+ (WebCore::RenderText::computePreferredLogicalWidths):
+ (WebCore::RenderText::firstRunOrigin):
+ (WebCore::RenderText::firstRunX):
+ (WebCore::RenderText::firstRunY):
+ (WebCore::RenderText::width):
+ (WebCore::RenderText::linesBoundingBox):
+ * rendering/RenderText.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::getAvgCharWidth):
+ (WebCore::RenderTextControl::paintPlaceholder):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::writeTextRun):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::placeEllipsis):
+ (WebCore::RootInlineBox::placeEllipsisBox):
+ (WebCore::RootInlineBox::adjustPosition):
+ (WebCore::RootInlineBox::beforeAnnotationsAdjustment):
+ (WebCore::RootInlineBox::paddedLayoutOverflowRect):
+ * rendering/RootInlineBox.h:
+ * rendering/VerticalPositionCache.h:
+ * rendering/svg/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::offsetForPosition):
+ (WebCore::SVGInlineTextBox::positionForOffset):
+ (WebCore::SVGInlineTextBox::constructTextRun):
+ * rendering/svg/SVGInlineTextBox.h:
+ * rendering/svg/SVGRenderTreeAsText.cpp:
+ (WebCore::writeRenderSVGTextBox):
+ * rendering/svg/SVGTextMetrics.cpp:
+ (WebCore::SVGTextMetrics::SVGTextMetrics):
+ (WebCore::constructTextRun):
+ * svg/SVGFont.cpp:
+ (WebCore::floatWidthMissingGlyphCallback):
+ (WebCore::Font::drawTextUsingSVGFont):
+
+2011-02-17 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ 'ex' coordinates fail, when SVGFont doesn't provide an explicit xHeight attribute
+ https://bugs.webkit.org/show_bug.cgi?id=54672
+
+ Measure the xHeight from the 'x' glyph of a SVGFont, if the font itself doesn't explicitely specify an x-height attribute.
+ Fixes the modern version of SVG 1.1 2nd Edition coords-units-03-b.svg.
+
+ Test: svg/W3C-SVG-1.1-SE/coords-units-03-b.svg
+
+ * platform/graphics/SimpleFontData.cpp:
+ (WebCore::SimpleFontData::SimpleFontData):
+
+2011-02-10 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Adam Roben.
+
+ HTML5 <details> and <summary>: localized text
+ https://bugs.webkit.org/show_bug.cgi?id=54260
+
+ The method defaultDetailsSummaryText was added to LocalizationStrategy class and to
+ platform/LocalizedStrings. It is used to provide the default label to be used by a
+ <details> tag that has no <summary> child.
+
+ * platform/LocalizationStrategy.h:
+ * platform/LocalizedStrings.cpp:
+ (WebCore::fileButtonNoFileSelectedLabel):
+ (WebCore::defaultDetailsSummaryText):
+ * platform/LocalizedStrings.h:
+ * platform/android/LocalizedStringsAndroid.cpp:
+ (WebCore::defaultDetailsSummaryText):
+ * platform/brew/LocalizedStringsBrew.cpp:
+ (WebCore::defaultDetailsSummaryText):
+ * platform/efl/LocalizedStringsEfl.cpp:
+ (WebCore::defaultDetailsSummaryText):
+ * platform/gtk/LocalizedStringsGtk.cpp:
+ (WebCore::defaultDetailsSummaryText):
+ * platform/haiku/LocalizedStringsHaiku.cpp:
+ (WebCore::defaultDetailsSummaryText):
+ * platform/wx/LocalizedStringsWx.cpp:
+ (WebCore::defaultDetailsSummaryText):
+
+2011-02-17 Kristian Amlie <kristian.amlie@nokia.com>
+
+ Reviewed by Laszlo Gombos.
+
+ Updated include paths for phonon.
+
+ [Qt] WebKit patches required to work with a modularized version of Qt
+ https://bugs.webkit.org/show_bug.cgi?id=53916
+
+ Build fix. No tests.
+
+ * WebCore.pro:
+
+2011-02-17 Hui Huang <hui.2.huang@nokia.com>
+
+ Reviewed by Laszlo Gombos.
+
+ The URL of HTML5 Video Element is percent encoded at websites such as youtube.
+ It is percent encoded again by QUrl constructor QUrl::QUrl(QString). This causes
+ the HTTP GET request for the video to be rejected by the service provider.
+ https://bugs.webkit.org/show_bug.cgi?id=53973.
+
+ The bug is fixed by constructing QUrl from the encoded URL.
+
+ New test function tst_QWebPage::loadHtml5Video() is added in
+ Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp
+
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ (WebCore::MediaPlayerPrivateQt::commitLoad):
+
+2011-02-17 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Antti Koivisto.
+
+ [Qt] Crash when calling QWebFrame::setUrl() while a previous load has pending requests
+ https://bugs.webkit.org/show_bug.cgi?id=49216
+
+ CachedResourceRequest::didFail() will protect the CachedResourceLoader's
+ document() while it runs, but if we're being called from the Document destructor,
+ the protecting RefPtr<Document> will cause a double-delete instead.
+
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::~CachedResourceLoader): Clear the m_document
+ pointer so CachedResourceRequest::didFail() won't try to protect it.
+ (WebCore::CachedResourceLoader::frame): Add null-check for m_document.
+
+2011-02-17 Andrey Adaikin <aandrey@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Text editor] Add updateHighlight method to the highlighter
+ https://bugs.webkit.org/show_bug.cgi?id=54448
+
+ * inspector/front-end/SourceTokenizer.js:
+ * inspector/front-end/TextEditorHighlighter.js:
+ (WebInspector.TextEditorHighlighter.prototype.set mimeType):
+ (WebInspector.TextEditorHighlighter.prototype.reset):
+ (WebInspector.TextEditorHighlighter.prototype.updateHighlight):
+ (WebInspector.TextEditorHighlighter.prototype._highlightInChunks):
+ (WebInspector.TextEditorHighlighter.prototype._highlightLines):
+
+2011-02-16 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: show all inlined scripts from single document in the same source frame.
+ https://bugs.webkit.org/show_bug.cgi?id=54544
+
+ Currently when debugging synchronously executed inlined scripts each script is shown in it's own source frame ("example.html:24").
+ We should show such scripts in the same source frame "example.html" with <script></script> framing.
+
+ Test: inspector/debugger/debug-inlined-scripts.html
+
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
+ (WebInspector.ScriptsPanel.prototype._addScript):
+ (WebInspector.ScriptsPanel.prototype._resourceForURL):
+ (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
+ (WebInspector.ScriptsPanel.prototype.addConsoleMessage):
+ (WebInspector.ScriptsPanel.prototype.clearConsoleMessages):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
+ (WebInspector.ScriptsPanel.prototype._sourceFrameForScript):
+ (WebInspector.ScriptsPanel.prototype._recreateSourceFrame):
+ (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
+ (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu.optionCompare):
+ (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
+ (WebInspector.SourceFrameContentProviderForScript.prototype.requestContent):
+ (WebInspector.SourceFrameContentProviderForScript.prototype._buildSource):
+
+2011-02-17 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ svg/batik/paints/patternRegions-positioned-objects.svg fails on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=44484
+
+ Pattern of pattern defined with objectBoundingBox does not render correctly
+ https://bugs.webkit.org/show_bug.cgi?id=53463
+
+ Fix <pattern> + patternContentUnits="objectBoundingBox" support.
+ We were incorrrectly translating the tile image transform, by the target objects bbox.x()/y().
+ RenderSVGResourceMask/Clipper don't have this error.
+
+ Fix nesting <patterns> in objectBoundingBox mode, propagate the tileImageTransform as new user-space
+ when drawing the pattern children. <mask> + <clipPath> don't have the problem.
+
+ Test: svg/custom/nested-pattern-boundingBoxModeContent.svg
+
+ * rendering/svg/RenderSVGResourcePattern.cpp:
+ (WebCore::RenderSVGResourcePattern::buildTileImageTransform):
+ (WebCore::RenderSVGResourcePattern::createTileImage):
+
+2011-02-17 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed.
+
+ [Qt][V8] Buildfix after r78752.
+
+ * CodeGenerators.pri: Add missing IDL files.
+
+2011-02-17 Benjamin Kalman <kalman@chromium.org>
+
+ Reviewed by Ryosuke Niwa.
+
+ RTL lineboundary left/right is reversed when cursor is at start of RTL container
+ https://bugs.webkit.org/show_bug.cgi?id=54534
+
+ Test: editing/selection/extend-left-right-by-lineboundary.html
+
+ Add missing cases for extending left/right by lineboundary.
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::modifyExtendingRight):
+ (WebCore::SelectionController::modifyExtendingLeft):
+
+2011-02-16 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] libsoup critical warnings
+ https://bugs.webkit.org/show_bug.cgi?id=54557
+
+ Avoid pausing a soup message for already downloaded resources.
+
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::ResourceHandle::platformSetDefersLoading):
+
+2011-02-16 Brian Ryner <bryner@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Split the socket address field into separate IP address and port fields.
+ This will make the field less error-prone to parse, for example when
+ dealing with IPv6 literals.
+ https://bugs.webkit.org/show_bug.cgi?id=54607
+
+ No new tests required.
+
+ * platform/network/chromium/ResourceResponse.cpp:
+ (WebCore::ResourceResponse::doPlatformCopyData):
+ (WebCore::ResourceResponse::doPlatformAdopt):
+ * platform/network/chromium/ResourceResponse.h:
+ (WebCore::ResourceResponse::ResourceResponse):
+ (WebCore::ResourceResponse::remoteIPAddress):
+ (WebCore::ResourceResponse::setRemoteIPAddress):
+ (WebCore::ResourceResponse::remotePort):
+ (WebCore::ResourceResponse::setRemotePort):
+
+2011-02-16 Dominic Mazzoni <dmazzoni@google.com>
+
+ Reviewed by Chris Fleizach.
+
+ Add support for canvas fallback content.
+ https://bugs.webkit.org/show_bug.cgi?id=50126
+
+ Test: accessibility/canvas-fallback-content.html
+
+ * accessibility/AccessibilityObject.h:
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
+ (WebCore::AccessibilityRenderObject::canHaveChildren):
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (atkRole):
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::isFocusable):
+ * rendering/RenderHTMLCanvas.cpp:
+ (WebCore::RenderHTMLCanvas::recursiveSetNoNeedsLayout):
+ (WebCore::RenderHTMLCanvas::layout):
+ (WebCore::RenderHTMLCanvas::nodeAtPoint):
+ * rendering/RenderHTMLCanvas.h:
+ (WebCore::RenderHTMLCanvas::children):
+ (WebCore::RenderHTMLCanvas::canHaveChildren):
+ (WebCore::RenderHTMLCanvas::virtualChildren):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::repaint):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::write):
+
+2011-02-16 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Allow acceleratesDrawing for WebKit2
+ https://bugs.webkit.org/show_bug.cgi?id=54511
+
+ Plumb through preference for accelerated drawing.
+
+ When accelerated drawing is enabled, set a flag on new GraphicsLayers.
+
+ Not testable via Layout Tests
+
+ * WebCore.exp.in:
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+ (WebCore::Settings::setAcceleratedDrawingEnabled):
+ * page/Settings.h:
+ (WebCore::Settings::acceleratedDrawingEnabled):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::updateBacking):
+
2011-02-16 Victoria Kirst <vrk@google.com>
Reviewed by Kenneth Russell.
« no previous file with comments | « no previous file | Source/WebCore/bindings/v8/V8GCController.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698