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

Unified Diff: Source/WebCore/ChangeLog

Side-by-side diff isn't available for this file because of its large size.
Issue 12562002: Merge 145013 (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/1410/
Patch Set: Created 7 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:
Download patch
« no previous file with comments | « no previous file | Source/WebCore/svg/SVGViewSpec.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 145015)
+++ Source/WebCore/ChangeLog (working copy)
@@ -1,3 +1,7829 @@
+2013-03-06 Abhishek Arya <inferno@chromium.org>
+
+ Crash in SVGViewSpec::viewTarget
+ https://bugs.webkit.org/show_bug.cgi?id=111648
+
+ Reviewed by Philip Rogers.
+
+ * svg/SVGViewSpec.cpp:
+ (WebCore::SVGViewSpec::viewTarget):
+
+2013-03-06 Benjamin Poulain <benjamin@webkit.org>
+
+ WebKitTestRunner needs layoutTestController.elementDoesAutoCompleteForElementWithId
+ https://bugs.webkit.org/show_bug.cgi?id=42696
+
+ Reviewed by Andreas Kling.
+
+ Since the method acts directly on a WebCore element and strictly test
+ HTMLInputElement::shouldAutoComplete(), the test function is moved to internals.
+
+ * testing/Internals.cpp:
+ (WebCore::Internals::elementShouldAutoComplete):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2013-03-06 Alexey Proskuryakov <ap@apple.com>
+
+ [Mac] Synthetic ResourceResponses cannot be sent over IPC without losing most information
+ https://bugs.webkit.org/show_bug.cgi?id=111623
+
+ Reviewed by Brady Eidson.
+
+ * WebCore.exp.in: Exported functions for building synthetic responses.
+
+ * platform/network/ResourceResponseBase.cpp:
+ * platform/network/ResourceResponseBase.h:
+ Added a lot of FIXMEs.
+
+ * platform/network/cf/ResourceResponse.h:
+ (WebCore::ResourceResponse::ResourceResponse):
+ (WebCore::ResourceResponse::platformResponseIsUpToDate):
+ Track m_platformResponseIsUpToDate flag as well as we can. Currently, it will
+ be incorrect if a real platform response gets mutated.
+
+ * platform/network/cf/ResourceResponseCFNet.cpp:
+ (WebCore::ResourceResponse::cfURLResponse): Added a FIXME about how useless this
+ function is when it tries to create a new CFURLResponse.
+
+ * platform/network/mac/ResourceResponseMac.mm:
+ (WebCore::ResourceResponse::initNSURLResponse): Added a FIXME.
+ (WebCore::ResourceResponse::nsURLResponse): Added a return to make logic more clear.
+ (WebCore::ResourceResponse::ResourceResponse): Track m_platformResponseIsUpToDate.
+
+ * platform/network/blackberry/ResourceResponse.h:
+ * platform/network/curl/ResourceResponse.h:
+ * platform/network/qt/ResourceResponse.h:
+ * platform/network/soup/ResourceResponse.h:
+ * platform/network/win/ResourceResponse.h:
+ These platforms do not keep a platform response, so it's never up to date, and
+ WebCore data needs to be serialized.
+
+2013-03-06 Dana Jansens <danakj@chromium.org>
+
+ [chromium] Remove WebSharedGraphicsContext3D class
+ https://bugs.webkit.org/show_bug.cgi?id=111492
+
+ Reviewed by James Robinson.
+
+ Removing dead code, no new tests.
+
+ * WebCore.gypi:
+ * platform/chromium/support/WebSharedGraphicsContext3D.cpp: Removed.
+
+2013-03-06 Dana Jansens <danakj@chromium.org>
+
+ [chromium] Don't get callbacks or create GrContext from unowned WebGraphicsContext3D
+ https://bugs.webkit.org/show_bug.cgi?id=111638
+
+ Reviewed by James Robinson.
+
+ If the context is not owned, it's lifetime is not guaranteed, and by the time
+ the GraphicsContext3D is destroyed, the WGC3D can already be deleted.
+
+ When the context is not owned by the GraphicsContext3D, then don't clean it up
+ in the destructor or set up callbacks, as these are the owner's responsibility.
+
+ * platform/chromium/support/GraphicsContext3DPrivate.cpp:
+ (WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
+ (WebCore::GraphicsContext3DPrivate::grContext):
+ (WebCore::GraphicsContext3DPrivate::setContextLostCallback):
+ (WebCore::GraphicsContext3DPrivate::setErrorMessageCallback):
+
+2013-02-22 Jer Noble <jer.noble@apple.com>
+
+ Default mouse cursor behavior should be auto-hide for full screen video with custom controls
+ https://bugs.webkit.org/show_bug.cgi?id=107601
+
+ Reviewed by Beth Dakin.
+
+ Test: fullscreen/video-cursor-auto-hide.html
+
+ To facilitate automatically hiding the mouse cursor after a certain amount of idle mouse
+ time, add a new CSS property '-webkit-cursor-visibility', and handle that value inside of
+ EventHandler. When that value is present, the EventHandler will start a timer which, when
+ fired, will set the view's cursor to the None cursor. Subsequent mouse moves will either
+ cancel the timer, or reset the auto-hide timer.
+
+ Add a new CSS property, '-webkit-cursor-visibility':
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator ECursorVisibility):
+ * css/CSSProperty.cpp:
+ (WebCore::CSSProperty::isInheritedProperty):
+ * css/CSSPropertyNames.in:
+ * css/CSSValueKeywords.in:
+ * css/StyleBuilder.cpp:
+ (WebCore::StyleBuilder::StyleBuilder):
+ * css/StyleResolver.cpp:
+ (WebCore::StyleResolver::applyProperty):
+
+ Add a rule for video descendants of full screen elements to auto-hide the cursor on hover:
+ * css/fullscreen.css:
+ (:-webkit-full-screen video:hover):
+
+ Add a new timer, m_autoHideCursorTimer, to control resetting the view's cursor to None after
+ enough mouse idle time has passed.
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::EventHandler):
+ (WebCore::EventHandler::~EventHandler):
+ (WebCore::EventHandler::clear):
+ (WebCore::EventHandler::selectCursor):
+ (WebCore::EventHandler::startAutoHideCursorTimer):
+ (WebCore::EventHandler::cancelAutoHideCursorTimer):
+ (WebCore::EventHandler::autoHideCursorTimerFired):
+ * page/EventHandler.h:
+
+ Make FrameView::isActive() a public function (like it is in its superclass).
+ * page/FrameView.h:
+ (FrameView):
+
+ Move the definition for timeWithoutMouseMovementBeforeHidingControls from page->theme()
+ to page->settings() and allow that setting to be overridden in InternalSettings for
+ testing purposes:
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+ * page/Settings.h:
+ (WebCore::Settings::setTimeWithoutMouseMovementBeforeHidingControls):
+ (WebCore::Settings::timeWithoutMouseMovementBeforeHidingControls):
+ * rendering/RenderTheme.h:
+ * testing/InternalSettings.cpp:
+ (WebCore::InternalSettings::Backup::Backup):
+ (WebCore::InternalSettings::Backup::restoreTo):
+ (WebCore::InternalSettings::setTimeWithoutMouseMovementBeforeHidingControls):
+ * testing/InternalSettings.h:
+ (InternalSettings):
+ * testing/InternalSettings.idl:
+ * html/shadow/MediaControls.cpp:
+ (WebCore::MediaControls::startHideFullscreenControlsTimer):
+
+ Add support to FeatureObserver for CURSOR_VISIBILITY:
+ * page/FeatureObserver.h:
+
+ Enable the feature flag:
+ * Configurations/FeatureDefines.xcconfig:
+
+2013-03-06 Jer Noble <jer.noble@apple.com>
+
+ Full screen from an iframe with a z-index style will allow siblings with higher z-index to overlay full screen content.
+ https://bugs.webkit.org/show_bug.cgi?id=111637
+
+ Reviewed by Simon Fraser.
+
+ No new tests; updated fullscreen/full-screen-iframe-zIndex.html to expose bug.
+
+ Pages with explicit z-index: styles on their iframes will override the default z-index: UA style when
+ elements within that iframe enter full screen mode. Mark the UA style as !important so as to not allow
+ iframe siblings with higher z-index styles to overlay the full screen element.
+
+ * css/fullscreen.css:
+ (:-webkit-full-screen):
+
+2013-03-06 Levi Weintraub <leviw@chromium.org>
+
+ InsertUnorderedList can lead to lost content and assertions in moveParagraphs
+ https://bugs.webkit.org/show_bug.cgi?id=111228
+
+ Reviewed by Ryosuke Niwa.
+
+ When a list is wrapped in a presentational inline like a b tag, we'd create markup that included
+ everything up to the b tag from moveParagraphs when intending to only move the contents of the
+ list item. This could make it impossible to remove content from a list and trigger loss of
+ editable text.
+
+ Test: editing/execCommand/insert-remove-block-list-inside-presentational-inline.html
+
+ * editing/EditingStyle.cpp:
+ (WebCore::elementMatchesAndPropertyIsNotInInlineStyleDecl): Ensure there's an inline style
+ before calling propertyExistsInStyle.
+ (WebCore::HTMLElementEquivalent::propertyExistsInStyle): Removing null check for style.
+ All callers ensure this value isn't null.
+ * editing/markup.cpp:
+ (WebCore::highestAncestorToWrapMarkup): Avoid going over RenderBlocks when finding the highest
+ presentational ancestor to avoid leaving the bounds of the original paragraph.
+
+2013-03-06 Adam Klein <adamk@chromium.org>
+
+ [V8] Use implicit references instead of object groups to keep registered MutationObservers alive
+ https://bugs.webkit.org/show_bug.cgi?id=111382
+
+ Reviewed by Adam Barth.
+
+ Two-phase approach to implicit references: after grouping objects
+ together, add an implicit reference between each registered node's
+ group and the MutationObserver's group (which includes wrappers from
+ all worlds).
+
+ Also changed many uses of v8::Value to v8::Object where we know we're
+ dealing with Object and the V8 API expects them.
+
+ Test: ManualTests/mutation-observer-leaks-nodes.html
+
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::ImplicitConnection::ImplicitConnection):
+ (WebCore::ImplicitConnection::wrapper):
+ (ImplicitConnection):
+ (WebCore::ImplicitReference::ImplicitReference): Wrapper class holding a parent who should have an implicit reference to a child.
+ (ImplicitReference):
+ (WebCore::operator<): Needed for std::sort() call to avoid the overhead of using a HashMap
+ (WebCore::WrapperGrouper::addObjectWrapperToGroup):
+ (WebCore::WrapperGrouper::addNodeWrapperToGroup):
+ (WebCore::WrapperGrouper::addImplicitReference):
+ (WrapperGrouper):
+ (WebCore::WrapperGrouper::apply):
+
+2013-03-06 Ankur Taly <ataly@google.com>
+
+ Modify log method in V8DOMActivityLogger so that the apiName and
+ extraInfo arguments are of type const String& instead of const char*.
+ This change gets rid of some of the memory ownership issues that arise
+ with char* pointers.
+ https://bugs.webkit.org/show_bug.cgi?id=111483
+
+ Reviewed by Adam Barth.
+
+ There are no new tests as there is no change in behavior.
+
+ * bindings/v8/V8DOMActivityLogger.h:
+ (WebCore::V8DOMActivityLogger::log):
+
+2013-03-06 Mike Reed <reed@google.com>
+
+ Use SkTypeface API directly, rather than (soon to be private) SkFontHost
+ https://bugs.webkit.org/show_bug.cgi?id=111588
+
+ Reviewed by Stephen White.
+
+ No new tests, as existing tests in fast/writing-mode exercise this code.
+
+ e.g. japanese-rl-text-with-broken-font.html
+ vertical-subst-font-vert-no-dflt.html
+
+ * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:
+ (WebCore::FontPlatformData::emSizeInFontUnits):
+ (WebCore::FontPlatformData::openTypeTable):
+ * platform/graphics/harfbuzz/HarfBuzzFaceSkia.cpp:
+ (WebCore::harfBuzzSkiaGetTable):
+ (WebCore::HarfBuzzFace::createFace):
+ * platform/graphics/skia/SimpleFontDataSkia.cpp:
+ (WebCore::SimpleFontData::platformInit):
+
+2013-03-06 Victor Costan <costan@gmail.com>
+
+ Cleanup in multipart FormData sending code.
+ https://bugs.webkit.org/show_bug.cgi?id=111603
+
+ Reviewed by Alexey Proskuryakov.
+
+ No new tests. This is cleanup.
+
+ * platform/network/FormDataBuilder.cpp:
+ (WebCore::appendQuotedString): use proper types (e.g, size_t instead of
+ unsigned long)
+
+2013-03-06 Tony Gentilcore <tonyg@chromium.org>
+
+ Threaded HTML parser should use 8 bit strings for attributes
+ https://bugs.webkit.org/show_bug.cgi?id=111610
+
+ Reviewed by Eric Seidel.
+
+ This fixes a 27% regression in dromaeo_jslibattrjquery on the threaded HTML parser vs. the main thread parser.
+
+ No new tests because no new functionality.
+
+ * html/parser/CompactHTMLToken.cpp:
+ (WebCore::CompactHTMLToken::CompactHTMLToken):
+
+2013-03-06 Alpha Lam <hclam@chromium.org>
+
+ More cleanup in GIFImageReader
+ https://bugs.webkit.org/show_bug.cgi?id=111137
+
+ Reviewed by Stephen White.
+
+ Refactor GIFImageReaderReader with the following changes:
+ + Separate GIFLZWContext for decoding states.
+ + Replace unsigned char* with Vector<unsigned char>
+
+ There is no change in code behavior and just refactoring.
+
+ No new tests. This is covered by existing GIFImageReaderTest.
+ I also did a local testing on a 50k image corpus and showed no regression.
+
+ * platform/image-decoders/gif/GIFImageDecoder.cpp:
+ (WebCore::GIFImageDecoder::haveDecodedRow):
+ * platform/image-decoders/gif/GIFImageDecoder.h:
+ (GIFImageDecoder):
+ * platform/image-decoders/gif/GIFImageReader.cpp:
+ (GIFImageReader::outputRow):
+ (GIFImageReader::doLZW):
+ (GIFImageReader::decodeInternal):
+ (GIFImageReader::prepareLZWContext):
+ * platform/image-decoders/gif/GIFImageReader.h:
+ (GIFFrameContext):
+ (GIFFrameContext::GIFFrameContext):
+ (GIFFrameContext::~GIFFrameContext):
+ (GIFLZWContext):
+ (GIFLZWContext::GIFLZWContext):
+ (GIFImageReader):
+
+2013-03-06 Tim Horton <timothy_horton@apple.com>
+
+ Fix typo'd MainThreadScrollingBecauseOfStyleIndictaion
+ https://bugs.webkit.org/show_bug.cgi?id=111557
+
+ Reviewed by Geoff Garen.
+
+ * page/scrolling/mac/ScrollingCoordinatorMac.mm:
+ (WebCore::ScrollingCoordinatorMac::commitTreeState):
+ * platform/graphics/TiledBacking.h:
+ * platform/graphics/ca/mac/TileCache.mm:
+ (WebCore::TileCache::updateTileCoverageMap):
+
+2013-03-05 Geoffrey Garen <ggaren@apple.com>
+
+ Removed some dead code in the page cache
+ https://bugs.webkit.org/show_bug.cgi?id=111525
+
+ Reviewed by Alexey Proskuryakov.
+
+ Page cache autorelease doesn't exist anymore, so there's no need to keep
+ around these olds hacks.
+
+ * WebCore.exp.in:
+ * history/PageCache.cpp:
+ (WebCore::PageCache::PageCache):
+ (WebCore):
+ * history/PageCache.h:
+ (PageCache):
+ * page/Settings.cpp:
+ (WebCore::Settings::setUsesPageCache):
+ * platform/mac/MemoryPressureHandlerMac.mm:
+ (WebCore::MemoryPressureHandler::releaseMemory):
+ * platform/qt/QtTestSupport.cpp:
+ (WebKit::QtTestSupport::clearMemoryCaches):
+
+2013-03-06 Rafael Weinstein <rafaelw@chromium.org>
+
+ Unreviewed, rolling out r144924.
+ http://trac.webkit.org/changeset/144924
+ https://bugs.webkit.org/show_bug.cgi?id=109908
+
+ caused multiple crashes in inspector/debugger tests
+
+ * bindings/js/JSInjectedScriptHostCustom.cpp:
+ * bindings/js/ScriptObject.h:
+ * bindings/v8/ScriptObject.h:
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::create):
+ (WebCore::InjectedScriptHost::InjectedScriptHost):
+ (WebCore::InjectedScriptHost::disconnect):
+ * inspector/InjectedScriptHost.h:
+ (WebCore):
+ (InjectedScriptHost):
+ * inspector/InjectedScriptHost.idl:
+ * inspector/InjectedScriptManager.cpp:
+ (WebCore::InjectedScriptManager::InjectedScriptManager):
+ (WebCore::InjectedScriptManager::discardInjectedScripts):
+ (WebCore::InjectedScriptManager::discardInjectedScriptsFor):
+ * inspector/InjectedScriptManager.h:
+ (InjectedScriptManager):
+ * inspector/InjectedScriptSource.js:
+ (.):
+
+2013-03-06 Dmitry Zvorygin <zvorygin@chromium.org>
+
+ Introduce new message sources for logging.
+ https://bugs.webkit.org/show_bug.cgi?id=110968
+
+ Reviewed by Pavel Feldman.
+
+ Added SecurityMessageSource, RenderingMessageSource, StorageMessageSource, AppCacheMessageSource, CSSMessageSource.
+ Changed some logging lines to contain more descriptive message source.
+
+ * Modules/webdatabase/DatabaseBase.cpp:
+ (WebCore::DatabaseBase::logErrorMessage):
+ * Modules/webdatabase/DatabaseManager.cpp:
+ (WebCore::DatabaseManager::logErrorMessage):
+ * Modules/websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::fail):
+ * bindings/ScriptControllerBase.cpp:
+ (WebCore::ScriptController::canExecuteScripts):
+ * css/MediaList.cpp:
+ (WebCore::addResolutionWarningMessageToConsole):
+ * dom/Document.cpp:
+ (WebCore::Document::processHttpEquiv):
+ * dom/ScriptElement.cpp:
+ (WebCore::ScriptElement::executeScript):
+ (WebCore::ScriptElement::notifyFinished):
+ * dom/ViewportArguments.cpp:
+ (WebCore::reportViewportWarning):
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::shouldAutofocus):
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::validateInteractively):
+ * html/HTMLIFrameElement.cpp:
+ (WebCore::HTMLIFrameElement::parseAttribute):
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::getImageData):
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore):
+ (WebCore::WebGLRenderingContext::printWarningToConsole):
+ * html/parser/XSSAuditor.cpp:
+ (WebCore::XSSAuditor::init):
+ * html/parser/XSSAuditorDelegate.cpp:
+ (WebCore::XSSAuditorDelegate::didBlockScript):
+ * inspector/ConsoleMessage.cpp:
+ (WebCore::messageSourceValue):
+ * inspector/Inspector.json:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::submitForm):
+ (WebCore::FrameLoader::reportLocalLoadFailed):
+ (WebCore::createWindow):
+ * loader/ImageLoader.cpp:
+ (WebCore::ImageLoader::notifyFinished):
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::responseReceived):
+ * loader/MixedContentChecker.cpp:
+ (WebCore::MixedContentChecker::logWarning):
+ * loader/TextTrackLoader.cpp:
+ (WebCore::TextTrackLoader::corsPolicyPreventedLoad):
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::abort):
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::printAccessDeniedMessage):
+ * page/Console.cpp:
+ (WebCore::printMessageSourceAndLevelPrefix):
+ * page/ConsoleTypes.h:
+ * page/ContentSecurityPolicy.cpp:
+ (WebCore::ContentSecurityPolicy::logToConsole):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::dispatchMessageEventWithOriginCheck):
+ * page/PointerLockController.cpp:
+ (WebCore::PointerLockController::requestPointerLock):
+ * svg/SVGDocumentExtensions.cpp:
+ (WebCore::reportMessage):
+
+2013-03-06 Florin Malita <fmalita@chromium.org>
+
+ SVG pattern to pattern reference does not work if first pattern has a child node
+ https://bugs.webkit.org/show_bug.cgi?id=111586
+
+ Reviewed by Philip Rogers.
+
+ SVGPatternElement::collectPatternAttributes should test for child elements, not child nodes.
+
+ Tests: svg/custom/pattern-reference-expected.svg
+ svg/custom/pattern-reference.svg
+
+ * svg/SVGPatternElement.cpp:
+ (WebCore::SVGPatternElement::collectPatternAttributes):
+
+2013-03-06 Christophe Dumez <ch.dumez@sisa.samsung.com>
+
+ [soup] session cookies are not correctly reported in getRawCookies()
+ https://bugs.webkit.org/show_bug.cgi?id=111584
+
+ Reviewed by Martin Robinson.
+
+ As per libsoup documentation, SoupCookie->expires is NULL for session cookies.
+ However, the soup implementation for getRawCookies() does not check for NULL
+ case before passing the value to soup_date_to_time_t(), which leads to run time
+ warnings.
+
+ We should also pass true for WebCore::Cookie's session argument if
+ SoupCookie->expires is NULL. The current implementation reports the cookie as a
+ session one if soup_cookie_jar_is_persistent(jar) returns true, which is
+ inaccurate.
+
+ No new tests, no behavior change for layout tests as Web Inspector currently
+ ignores the "session" member and uses expires/max-age instead to deduce it.
+
+ * platform/network/soup/CookieJarSoup.cpp:
+ (WebCore::getRawCookies):
+
+2013-03-06 Douglas Stockwell <dstockwell@chromium.org>
+
+ REGRESSION(r111639): delayed animation start can be postponed
+ https://bugs.webkit.org/show_bug.cgi?id=108582
+
+ Query the animation timer directly for the time it will next fire rather than
+ trying to cache the interval. Previous approach was incorrect -- as time advanced
+ it was possible for the interval to jump beyond the next service time.
+
+ Reviewed by Darin Adler.
+
+ Test: animations/animation-delay-changed.html
+
+ * page/animation/AnimationController.cpp:
+ (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
+ (WebCore::AnimationControllerPrivate::updateAnimationTimerForRenderer):
+ (WebCore::AnimationControllerPrivate::updateAnimationTimer):
+ * page/animation/AnimationControllerPrivate.h:
+ (AnimationControllerPrivate): Remove m_previousTimeToNextService
+
+2013-03-06 Andrey Lushnikov <lushnikov@chromium.org>
+
+ Web Inspector: [ACE] show execution line in Ace editor
+ https://bugs.webkit.org/show_bug.cgi?id=111575
+
+ Reviewed by Pavel Feldman.
+
+ Highlight execution line by the means of Ace full line markers.
+
+ No new tests.
+
+ * inspector/front-end/AceTextEditor.js:
+ (WebInspector.AceTextEditor.prototype.setExecutionLine):
+ (WebInspector.AceTextEditor.prototype.clearExecutionLine):
+ (WebInspector.AceTextEditor.prototype.setSelection):
+ * inspector/front-end/ace/acedevtools.css:
+ (.ace-editor-container):
+ (.webkit-execution-line):
+
+2013-03-06 Yury Semikhatsky <yurys@chromium.org>
+
+ Web Inspector: fix closure compiler warnings in the profiler code
+ https://bugs.webkit.org/show_bug.cgi?id=111581
+
+ Reviewed by Vsevolod Vlasov.
+
+ Added missing annotations. Replaced NativeProfileLauncherView with
+ ProfileLauncherView.
+
+ * inspector/InjectedScriptExterns.js:
+ (InjectedScriptHost.prototype.objectId):
+ (InjectedScriptHost.prototype.releaseObjectId):
+ * inspector/front-end/FlameChart.js:
+ (WebInspector.FlameChart.prototype._forEachNode):
+ * inspector/front-end/ProfileLauncherView.js:
+ * inspector/front-end/ProfilesPanel.js:
+
+2013-03-06 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ [BlackBerry] Pass String::StrictConversion instead of true to String::utf8()
+ https://bugs.webkit.org/show_bug.cgi?id=111546
+
+ Reviewed by Rob Buis.
+
+ String::utf8() API changed in r134173.
+
+ * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
+ (WebCore::MediaPlayerPrivate::notifyChallengeResult):
+
+2013-03-06 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Remove the (dead) code for handling shorthands in StyleResolver / StyleBuilder
+ https://bugs.webkit.org/show_bug.cgi?id=111505
+
+ Unreviewed minimal build fix.
+
+ * css/StyleResolver.cpp:
+ (WebCore::StyleResolver::applyProperty):
+ Put CSSPropertyWebkitWrap under the proper if-guard.
+
+2013-03-06 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Unreviewed follow up to r144928: front-end closure compilation fixes.
+
+ * inspector/front-end/FilteredItemSelectionDialog.js:
+ (WebInspector.JavaScriptOutlineDialog.prototype.dispose):
+ (WebInspector.OpenResourceDialog.prototype.dispose):
+ * inspector/front-end/StyleSheetOutlineDialog.js:
+ (WebInspector.StyleSheetOutlineDialog.prototype.dispose):
+
+2013-03-06 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Update open resource dialog when new uiSourceCodes are loaded.
+ https://bugs.webkit.org/show_bug.cgi?id=111327
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/FilteredItemSelectionDialog.js:
+ (WebInspector.FilteredItemSelectionDialog):
+ (WebInspector.FilteredItemSelectionDialog.prototype.willHide):
+ (WebInspector.FilteredItemSelectionDialog.prototype._itemsLoaded):
+ (WebInspector.FilteredItemSelectionDialog.prototype._updateAfterItemsLoaded):
+ (WebInspector.FilteredItemSelectionDialog.prototype._filterItems.compareFunction):
+ (WebInspector.FilteredItemSelectionDialog.prototype._filterItems):
+ (WebInspector.SelectionDialogContentProvider.prototype.dispose):
+ (WebInspector.JavaScriptOutlineDialog.prototype._didBuildOutlineChunk):
+ (WebInspector.OpenResourceDialog):
+ (WebInspector.OpenResourceDialog.prototype.requestItems):
+ (WebInspector.OpenResourceDialog.prototype._filterUISourceCode):
+ (WebInspector.OpenResourceDialog.prototype._uiSourceCodeAdded):
+ (WebInspector.OpenResourceDialog.prototype.dispose):
+ * inspector/front-end/StyleSheetOutlineDialog.js:
+ (WebInspector.StyleSheetOutlineDialog.prototype.requestItems):
+ (WebInspector.StyleSheetOutlineDialog.prototype.requestItems.didGetStyleSheet):
+
+2013-03-06 Vladislav Kaznacheev <kaznacheev@chromium.org>
+
+ Web Inspector: Move sidebar-specific styles to a separate file.
+ https://bugs.webkit.org/show_bug.cgi?id=111173
+
+ Reviewed by Pavel Feldman.
+
+ * WebCore.gypi:
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.JavaScriptBreakpointsSidebarPane):
+ (WebInspector.EventListenerBreakpointsSidebarPane):
+ * inspector/front-end/NativeBreakpointsSidebarPane.js:
+ (WebInspector.NativeBreakpointsSidebarPane):
+ * inspector/front-end/SidebarPane.js:
+ (WebInspector.SidebarPaneTitle):
+ (WebInspector.SidebarPaneStack):
+ (WebInspector.SidebarTabbedPane):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/breakpointsList.css: Added.
+ (.sidebar-pane > .body .breakpoint-condition):
+ (#breakpoint-condition-input):
+ (ol.breakpoint-list):
+ (.breakpoints-list-deactivated):
+ (.breakpoint-list li):
+ (.breakpoint-list li:hover):
+ (.breakpoint-list .checkbox-elem):
+ (.breakpoint-list .source-text):
+ (.sidebar-pane .breakpoint-hit):
+ (li.breakpoint-hit .breakpoint-hit-marker):
+ (.event-listener-breakpoints .event-category):
+ (.event-listener-breakpoints.properties-tree .children li):
+ (.event-listener-breakpoints .checkbox-elem):
+ * inspector/front-end/elementsPanel.css:
+ (.panel.elements .sidebar-pane-toolbar > select):
+ (.panel.elements .sidebar-pane-toolbar > select:hover):
+ (.panel.elements .sidebar-pane-toolbar > select:active):
+ (.panel.elements .sidebar-pane-toolbar > select.select-settings):
+ (.panel.elements .sidebar-pane-toolbar > select.select-filter):
+ (.panel.elements .sidebar-pane-toolbar > select > option, .panel.elements .sidebar-pane-toolbar > select > hr):
+ * inspector/front-end/inspector.css:
+ (.event-bar .event-properties):
+ * inspector/front-end/scriptsPanel.css:
+ (.workers-list > li):
+ (a.worker-item):
+ (a.worker-item:hover):
+ * inspector/front-end/sidebarPane.css: Added.
+ (.sidebar-pane):
+ (.sidebar-pane > .body):
+ (.sidebar-pane > .body .info):
+ (.sidebar-pane > .body .placard + .info):
+ (.sidebar-pane.visible > .body):
+ (.sidebar-pane .section .properties):
+ (.sidebar-tabbed-pane .tabbed-pane-header):
+ (.sidebar-pane-stack > .sidebar-pane.visible:nth-last-of-type(1)):
+ (.sidebar-pane-title):
+ (.sidebar-pane-title + .sidebar-pane-title, .pane:not(.visible) + .sidebar-pane-title, .sidebar-pane-title:first-of-type):
+ (.sidebar-pane-title:active):
+ (.sidebar-pane-title::before):
+ (.sidebar-pane-title.expanded::before):
+ (.sidebar-pane-toolbar):
+ (.sidebar-pane-toolbar > *):
+ (.sidebar-pane-toolbar > .pane-title-button):
+ (.sidebar-pane-toolbar > .pane-title-button:hover):
+ (.sidebar-pane-toolbar > .pane-title-button:active, .sidebar-pane-toolbar > .pane-title-button.toggled):
+ (.sidebar-pane-toolbar > .pane-title-button.add):
+ (.sidebar-pane-toolbar > .pane-title-button.element-state):
+ (.sidebar-pane-toolbar > .pane-title-button.refresh):
+ (.sidebar-pane-subtitle):
+ (body.platform-windows .sidebar-pane-subtitle):
+ (.sidebar-pane-subtitle input, .section .header input[type=checkbox]):
+
+2013-03-06 Vladislav Kaznacheev <kaznacheev@chromium.org>
+
+ Web Inspector: Combine style-related panes into a single tab when Elements panel is split horizontally.
+ https://bugs.webkit.org/show_bug.cgi?id=111550
+ Reviewed by Pavel Feldman.
+
+ Grouping the Elements sidebar panes into two tabbed panes proved to be
+ confusing and inconvenient. Put all the Elements sidebar panes into a single tabbed pane.
+ Combined Styles, Computed Style and Metrics into a single pane.
+
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype._splitVertically):
+ (WebInspector.ElementsPanel.prototype.addExtensionSidebarPane):
+ * inspector/front-end/elementsPanel.css:
+ (.sidebar-pane.composite):
+ (.sidebar-pane.composite > .body):
+ (.sidebar-pane.composite .metrics):
+ (.sidebar-pane.composite .sidebar-pane-toolbar):
+ (.sidebar-pane.composite .sidebar-pane-toolbar > .sidebar-pane-subtitle):
+ (.sidebar-pane.composite .styles-section.read-only):
+
+2013-03-05 Yury Semikhatsky <yurys@chromium.org>
+
+ Web Inspector: support stable remote object ids
+ https://bugs.webkit.org/show_bug.cgi?id=109908
+
+ Reviewed by Pavel Feldman.
+
+ Introduced a map from javascript object to its id. It guarantees
+ that object is assined id only once (unless it is explicitely
+ released). The map is per execution context and is stored in
+ InjectedScriptManager.
+
+ Test: inspector-protocol/persistent-id.html
+
+ * bindings/js/JSInjectedScriptHostCustom.cpp:
+ (WebCore::JSInjectedScriptHost::objectId):
+ (WebCore):
+ (WebCore::JSInjectedScriptHost::releaseObjectId):
+ * bindings/js/ScriptObject.h:
+ (WTF):
+ (WTF::ScriptObjectHash::hash):
+ (WTF::ScriptObjectHash::equal):
+ (ScriptObjectHash):
+ * bindings/v8/ScriptObject.h:
+ (WTF):
+ (WTF::ScriptObjectHash::hash):
+ (WTF::ScriptObjectHash::equal):
+ (ScriptObjectHash):
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ (WebCore::V8InjectedScriptHost::objectIdMethodCustom):
+ (WebCore):
+ (WebCore::V8InjectedScriptHost::releaseObjectIdMethodCustom):
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::create):
+ (WebCore::InjectedScriptHost::InjectedScriptHost):
+ (WebCore::InjectedScriptHost::disconnect):
+ (WebCore::InjectedScriptHost::objectId):
+ (WebCore):
+ (WebCore::InjectedScriptHost::releaseObjectId):
+ * inspector/InjectedScriptHost.h:
+ (WebCore):
+ (InjectedScriptHost):
+ * inspector/InjectedScriptHost.idl:
+ * inspector/InjectedScriptManager.cpp:
+ (InjectedScriptManager::ObjectIdMap):
+ (WebCore::InjectedScriptManager::ObjectIdMap::ObjectIdMap):
+ (WebCore::InjectedScriptManager::ObjectIdMap::objectId):
+ (WebCore::InjectedScriptManager::ObjectIdMap::releaseObjectId):
+ (WebCore):
+ (WebCore::InjectedScriptManager::InjectedScriptManager):
+ (WebCore::InjectedScriptManager::discardInjectedScripts):
+ (WebCore::InjectedScriptManager::discardInjectedScriptsFor):
+ (WebCore::InjectedScriptManager::objectId):
+ (WebCore::InjectedScriptManager::releaseObjectId):
+ * inspector/InjectedScriptManager.h:
+ (InjectedScriptManager):
+ * inspector/InjectedScriptSource.js:
+ (.):
+
+2013-03-06 Marja Hölttä <marja@chromium.org>
+
+ REGRESSION(r144617): Wrong usage of overwritten variable in toDOMWindow (V8Binding.cpp)
+ https://bugs.webkit.org/show_bug.cgi?id=111565
+
+ Reviewed by Jochen Eisinger.
+
+ In toDOMWindow, the variable "global" was first nuked, and then used again. This
+ change was introduced in r144617.
+
+ No new tests (no functional changes).
+
+ * bindings/v8/V8Binding.cpp:
+ (WebCore::toDOMWindow):
+
+2013-03-06 Yury Semikhatsky <yurys@chromium.org>
+
+ Web Inspector: use regular eval instead of injectScript for front-end extension API
+ https://bugs.webkit.org/show_bug.cgi?id=111529
+
+ Reviewed by Pavel Feldman.
+
+ Removed InjectedScriptManager::injectScript and replaced all of it calls
+ except the actual script injection with ScriptController::executeScript.
+
+ * inspector/InjectedScriptManager.cpp:
+ (WebCore::InjectedScriptManager::injectedScriptFor):
+ * inspector/InjectedScriptManager.h:
+ (InjectedScriptManager):
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::didClearWindowObjectInWorld):
+ * inspector/InspectorPageAgent.cpp:
+ (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMAgent.prototype._emulateTouchEventsChanged.get if):
+ * inspector/front-end/ExtensionAPI.js:
+ (buildExtensionAPIInjectedScript):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer.prototype._onReload):
+
+2013-03-06 Allan Sandfeld Jensen <allan.jensen@digia.com>
+
+ [Qt] Do not disable C++0x
+ https://bugs.webkit.org/show_bug.cgi?id=111559
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ * WebCore.pri:
+
+2013-03-06 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Remove the (dead) code for handling shorthands in StyleResolver / StyleBuilder
+ https://bugs.webkit.org/show_bug.cgi?id=111505
+
+ Reviewed by Alexis Menard.
+
+ The CSS parsing code expands shorthands (with the exception of 'font') to their longhands.
+ This means that all the code in StyleResolver / StyleBuilder to handle shorthands is basically
+ dead and shouldn't be there. The reason for it to be is that people didn't know about shorthands
+ expansion and thus copied existing code.
+
+ This change addresses both issues by removing the code and adding ASSERTs that should prevent people
+ from adding more dead code.
+
+ Refactoring, covered by existing tests.
+
+ * css/StylePropertyShorthand.h: Added isExpandedShorthand.
+ * css/StylePropertyShorthand.cpp:
+ (WebCore::isExpandedShorthand):
+ Added this function that ignores 'font' as it is the only shorthand that is no consistently expanded
+ to account for system fonts.
+
+ * css/StyleBuilder.cpp:
+ (WebCore::StyleBuilder::StyleBuilder):
+ Removed the shorthands.
+
+ * css/StyleBuilder.h:
+ (WebCore::StyleBuilder::setPropertyHandler):
+ Added ASSERTs that people don't add shorthand handling.
+
+ * css/StyleResolver.cpp:
+ (WebCore::isValidVisitedLinkProperty):
+ Removed all the shorthands (shouldn't be reachable unless the ASSERT in applyProperty
+ triggers).
+
+ (WebCore::StyleResolver::applyProperty):
+ Removed all shorthand handling code, moved the shorthands together and added some ASSERT
+ to ensure people don't abuse the code and re-add some of it back by mistake.
+
+2013-03-05 Kent Tamura <tkent@chromium.org>
+
+ Rename WebCore/editing/visible_units.* to VisibleUnits.*
+ https://bugs.webkit.org/show_bug.cgi?id=111426
+
+ Reviewed by Alexey Proskuryakov.
+
+ No new tests. Just a refactoring.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.vcxproj/WebCore.vcxproj:
+ * WebCore.vcxproj/WebCore.vcxproj.filters:
+ * WebCore.xcodeproj/project.pbxproj:
+ * accessibility/AccessibilityNodeObject.cpp:
+ * accessibility/AccessibilityObject.cpp:
+ * accessibility/AccessibilityRenderObject.cpp:
+ * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
+ * accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
+ * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
+ * dom/Position.cpp:
+ * dom/Range.cpp:
+ * editing/AlternativeTextController.cpp:
+ * editing/ApplyBlockElementCommand.cpp:
+ * editing/ApplyStyleCommand.cpp:
+ * editing/CompositeEditCommand.cpp:
+ * editing/DeleteSelectionCommand.cpp:
+ * editing/EditingAllInOne.cpp:
+ * editing/EditingStyle.cpp:
+ * editing/Editor.cpp:
+ * editing/FormatBlockCommand.cpp:
+ * editing/FrameSelection.cpp:
+ * editing/IndentOutdentCommand.cpp:
+ * editing/InsertLineBreakCommand.cpp:
+ * editing/InsertListCommand.cpp:
+ * editing/InsertParagraphSeparatorCommand.cpp:
+ * editing/InsertTextCommand.cpp:
+ * editing/ReplaceSelectionCommand.cpp:
+ * editing/SurroundingText.cpp:
+ * editing/TextCheckingHelper.cpp:
+ * editing/TextIterator.cpp:
+ * editing/TypingCommand.cpp:
+ * editing/VisiblePosition.cpp:
+ * editing/VisibleSelection.cpp:
+ * editing/VisibleUnits.cpp: Copied from Source/WebCore/editing/visible_units.cpp.
+ * editing/VisibleUnits.h: Copied from Source/WebCore/editing/visible_units.h.
+ * editing/htmlediting.cpp:
+ * editing/markup.cpp:
+ * editing/visible_units.cpp: Removed.
+ * editing/visible_units.h: Removed.
+ * page/Frame.cpp:
+ * page/mac/FrameMac.mm:
+ * platform/win/EditorWin.cpp:
+
+2013-03-06 Alexis Menard <alexis@webkit.org>
+
+ Do not add CSSPropertyBorderImage shorthand part of the property list when parsing CSS border property
+ https://bugs.webkit.org/show_bug.cgi?id=111481
+
+ Reviewed by Julien Chaffraix.
+
+ After http://trac.webkit.org/changeset/135848 and more generally we do not
+ add shorthand directly into the property list used afterwards to build
+ StylePropertySet but we rather expand the shorthand to add the
+ longhands. CSSPropertyBorderImage is a shorthand and it should follow
+ that rule, so when we successfully parsed CSS border property and we
+ should reset border-image then we should reset the longhands too.
+
+ Test: LayoutTests/inspector/styles/styles-new-API-expected.txt which
+ reflects the fact that we add longhands instead of the shorthand. All
+ the other tests should not regress.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+
+2013-03-06 Luiz Agostini <luiz.agostini@nokia.com>
+
+ Accelerated overflow scrolling for Coordinated Graphics.
+ https://bugs.webkit.org/show_bug.cgi?id=110323
+
+ Reviewed by Noam Rosenthal.
+
+ A scroll offset is applied to individual layers on UI process and the
+ web process is notified assynchronously.
+ The new API WKCoordinatedScene may be used to scroll layers in the UI process.
+
+ Tests will be added on bug #111140.
+
+ Scrolling coordinator is used to provide a ScrollableArea to CoordinatedGraphicsLayer.
+
+ * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp:
+ (WebCore::ScrollingCoordinatorCoordinatedGraphics::scrollableAreaScrollLayerDidChange):
+ (WebCore):
+ (WebCore::ScrollingCoordinatorCoordinatedGraphics::willDestroyScrollableArea):
+ * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.h:
+ (ScrollingCoordinatorCoordinatedGraphics):
+
+ GraphicsLayerTextureMapper is responsible for receiving the 'did commit' messages and to pass
+ them to its TextureMapperLayer on the appropriated time.
+
+ * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
+ (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
+ (WebCore::GraphicsLayerTextureMapper::didCommitScrollOffset):
+ (WebCore):
+ (WebCore::GraphicsLayerTextureMapper::setIsScrollable):
+ (WebCore::GraphicsLayerTextureMapper::commitLayerChanges):
+ * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
+ (WebCore::GraphicsLayerTextureMapper::setScrollClient):
+ (WebCore::GraphicsLayerTextureMapper::setID):
+ (GraphicsLayerTextureMapper):
+ (WebCore::GraphicsLayerTextureMapper::isScrollable):
+
+ TextureMapperLayer is responsible for applying the requested scroll offset and for
+ sending the commit messages to web process. It is also able to hittest layers and identify
+ the ones that are scrollable.
+
+ * platform/graphics/texmap/TextureMapperLayer.cpp:
+ (WebCore::TextureMapperLayer::hitTest):
+ (WebCore):
+ (WebCore::TextureMapperLayer::scrollableLayerHitTestCondition):
+ (WebCore::TextureMapperLayer::findScrollableContentsLayerAt):
+ (WebCore::TextureMapperLayer::mapScrollOffset):
+ (WebCore::TextureMapperLayer::commitScrollOffset):
+ (WebCore::TextureMapperLayer::scrollBy):
+ (WebCore::TextureMapperLayer::didCommitScrollOffset):
+ * platform/graphics/texmap/TextureMapperLayer.h:
+ (TextureMapperLayer):
+ (ScrollingClient):
+ (WebCore::TextureMapperLayer::TextureMapperLayer):
+ (WebCore::TextureMapperLayer::setID):
+ (WebCore::TextureMapperLayer::id):
+ (WebCore::TextureMapperLayer::setScrollClient):
+ (WebCore::TextureMapperLayer::setIsScrollable):
+ (WebCore::TextureMapperLayer::isScrollable):
+ (WebCore::TextureMapperLayer::adjustedPosition):
+
+ CoordinatedGraphicsLayer receives the commit messages and updates its ScrollableArea.
+
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
+ (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
+ (WebCore::CoordinatedGraphicsLayer::setScrollableArea):
+ (WebCore):
+ (WebCore::CoordinatedGraphicsLayer::commitScrollOffset):
+ (WebCore::CoordinatedGraphicsLayer::resetLayerState):
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
+ (WebCore):
+ (CoordinatedGraphicsLayer):
+ (WebCore::CoordinatedGraphicsLayer::isScrollable):
+
+ CoordinatedGraphicsScene receives the commit messages from TextureMapperLayer and
+ dispatches them on the main thread. It also has a new method that is used to find
+ the topmost scrollable layer at a given point.
+
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
+ (WebCore::CoordinatedGraphicsScene::setLayerState):
+ (WebCore::CoordinatedGraphicsScene::createLayer):
+ (WebCore::CoordinatedGraphicsScene::dispatchCommitScrollOffset):
+ (WebCore):
+ (WebCore::CoordinatedGraphicsScene::commitScrollOffset):
+ (WebCore::CoordinatedGraphicsScene::findScrollableContentsLayerAt):
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
+ (WebCore):
+ (CoordinatedGraphicsSceneClient):
+ (CoordinatedGraphicsScene):
+
+ New fields have been added to CoordinatedGraphicsLayerState.
+
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
+ (CoordinatedGraphicsLayerState):
+
+2013-03-06 Allan Sandfeld Jensen <allan.jensen@digia.com>
+
+ REGGRESSION (r142112): It made compositing tests fail on EFL, Qt.
+ https://bugs.webkit.org/show_bug.cgi?id=109291
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Report we support fixed layers.
+
+ * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.h:
+ (WebCore::ScrollingCoordinatorCoordinatedGraphics::supportsFixedPositionLayers):
+ (ScrollingCoordinatorCoordinatedGraphics):
+
+2013-03-06 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r144859.
+ http://trac.webkit.org/changeset/144859
+ https://bugs.webkit.org/show_bug.cgi?id=111519
+
+ Introduced a test that calls non-exist function on non-
+ Chromium ports and crash on Chromium (Requested by rniwa on
+ #webkit).
+
+ * html/HTMLAudioElement.h:
+ (WebCore::HTMLAudioElement::hasPendingActivity):
+ (HTMLAudioElement):
+ * html/HTMLAudioElement.idl:
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::hasPendingActivity):
+ * html/HTMLMediaElement.idl:
+
+2013-03-06 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: Could not open Profiles panel.
+ https://bugs.webkit.org/show_bug.cgi?id=111535
+
+ Reviewed by Alexander Pavlov.
+
+ * inspector/front-end/CPUProfileView.js:
+ * inspector/front-end/ProfilesPanel.js:
+
+2013-03-06 Tony Chang <tony@chromium.org>
+
+ Crash during middle mouse click when page is removed
+ https://bugs.webkit.org/show_bug.cgi?id=111489
+
+ Reviewed by Hajime Morrita.
+
+ Check for a null page that can happen if we remove the document from the DOM.
+ The other methods in EventHandler also check for a null page.
+
+ Test: editing/pasteboard/selection-paste-crash.html
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handlePasteGlobalSelection):
+
+2013-03-05 Eric Seidel <eric@webkit.org>
+
+ Replace shouldLazyAttach bool with an enum for readability
+ https://bugs.webkit.org/show_bug.cgi?id=111503
+
+ Reviewed by Dimitri Glazkov.
+
+ No behavioral change.
+
+ * bindings/cpp/WebDOMNodeCustom.cpp:
+ (WebDOMNode::insertBefore):
+ (WebDOMNode::replaceChild):
+ (WebDOMNode::appendChild):
+ * bindings/js/JSNodeCustom.cpp:
+ (WebCore::JSNode::insertBefore):
+ (WebCore::JSNode::replaceChild):
+ (WebCore::JSNode::appendChild):
+ * bindings/v8/custom/V8NodeCustom.cpp:
+ (WebCore):
+ (WebCore::V8Node::insertBeforeMethodCustom):
+ (WebCore::V8Node::replaceChildMethodCustom):
+ (WebCore::V8Node::appendChildMethodCustom):
+ * dom/ContainerNode.cpp:
+ (WebCore):
+ (WebCore::ContainerNode::insertBefore):
+ (WebCore::ContainerNode::replaceChild):
+ (WebCore::ContainerNode::appendChild):
+ (WebCore::updateTreeAfterInsertion):
+ * dom/ContainerNode.h:
+ (ContainerNode):
+ * dom/Node.cpp:
+ (WebCore::Node::insertBefore):
+ (WebCore::Node::replaceChild):
+ (WebCore::Node::appendChild):
+ * dom/Node.h:
+ (Node):
+ * editing/AppendNodeCommand.cpp:
+ (WebCore::AppendNodeCommand::doApply):
+ * editing/InsertNodeBeforeCommand.cpp:
+ (WebCore::InsertNodeBeforeCommand::doApply):
+ * html/shadow/MediaControlsApple.cpp:
+ (WebCore::MediaControlsApple::createControls):
+ * html/shadow/MediaControlsBlackBerry.cpp:
+ (WebCore::MediaControlsBlackBerry::createControls):
+ * html/shadow/MediaControlsChromium.cpp:
+ (WebCore::MediaControlsChromium::initializeControls):
+ * html/shadow/MediaControlsChromiumAndroid.cpp:
+ (WebCore::MediaControlsChromiumAndroid::createControls):
+
+2013-03-05 Hajime Morrita <morrita@google.com>
+
+ Custom Elements: CustomElementConstructor::m_name doesn't have any good use.
+ https://bugs.webkit.org/show_bug.cgi?id=111523
+
+ Reviewed by Kentaro Hara.
+
+ This change removes CustomElementConstructor::m_name and renames
+ m_tagName to m_name. Now generated function name is same as interface name.
+
+ Originally, m_name was added to specify the generated constructor
+ name. An early version of custom element allows to give the name,
+ but it no longer says anything about that.
+
+ The rename is to align the semantics of type extension mechanism
+ of Custom Elements, where the name of a custom element isn't
+ necessarily a tag name.
+
+ No new tests. Just removing old code.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateHeader):
+ * dom/CustomElementConstructor.cpp:
+ (WebCore::CustomElementConstructor::create):
+ (WebCore::CustomElementConstructor::CustomElementConstructor):
+ (WebCore::CustomElementConstructor::createElement):
+ * dom/CustomElementConstructor.h:
+ (CustomElementConstructor):
+ (WebCore::CustomElementConstructor::name):
+ * dom/CustomElementRegistry.cpp:
+ (WebCore::CustomElementRegistry::registerElement):
+
+2013-03-05 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: Flame Chart. Provide node context info in a popover when mouse hovers over a flame chart item.
+ https://bugs.webkit.org/show_bug.cgi?id=111442
+
+ Reviewed by Yury Semikhatsky.
+
+ FlameChart is a canvas so it is not possible to attach the popover to the items on it.
+ It would be a bit tricky to support an offset due to complex behaviour of the popover.
+ The simplest solution is to create a fake anchor element and move it to the right position.
+
+ * inspector/front-end/FlameChart.js:
+ (WebInspector.FlameChart):
+ (WebInspector.FlameChart.prototype._getPopoverAnchor):
+ (WebInspector.FlameChart.prototype._showPopover):
+ (WebInspector.FlameChart.prototype._onMouseMove):
+ (WebInspector.FlameChart.prototype.findNodeCallback):
+ (WebInspector.FlameChart.prototype._coordinatesToNode):
+ (WebInspector.FlameChart.prototype.onResize):
+ * inspector/front-end/flameChart.css:
+ (.flame-chart .item-anchor):
+
+2013-03-05 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed buildfix after r144787. Add missing USE(GRAPHICS_SURFACE) guards.
+
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
+ (WebCore::CoordinatedGraphicsScene::setLayerState):
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
+ (WebCore::CoordinatedGraphicsLayerState::CoordinatedGraphicsLayerState):
+
+2013-03-05 Geoffrey Garen <ggaren@apple.com>
+
+ Autoreleased cached pages slow down the PLT by 2%
+ https://bugs.webkit.org/show_bug.cgi?id=111522
+
+ Reviewed by Filip Pizlo.
+
+ Let's stop doing that.
+
+ 2% PLT speedup.
+
+ * history/PageCache.cpp:
+ (WebCore::PageCache::remove):
+
+2013-03-05 Hayato Ito <hayato@chromium.org>
+
+ [Shadow] Implements event re-targeting for Touch Events.
+ https://bugs.webkit.org/show_bug.cgi?id=107800
+
+ Reviewed by Dimitri Glazkov.
+
+ So far, Touch Events have been intentionally disabled in shadow
+ tree since it allows users to access internal nodes in shadow tree
+ by accessing Touch Event's information.
+
+ This patch re-targets all individual touch point's target in
+ TouchList (touches, targetTouches and changedTouches) owned by a Touch Event
+ before the Touch Event is dispatched so that we won't break an
+ upper boundary of shadow DOM.
+
+ Touch Events re-targeting is similar to that of Mouse Events
+ re-targeting. The difference is that a Touch Event can have more
+ than one related target because of multiple touches. We must
+ re-target all individual touch points which can be referred from
+ the Touch Event.
+
+ Now, Touch Events can be fired in shadow tree. I've removed the
+ existing limitation.
+
+ Test: fast/dom/shadow/touch-event-retargeting.html
+
+ * dom/EventContext.cpp:
+ (WebCore::EventContext::isTouchEventContext):
+ (WebCore):
+ (WebCore::TouchEventContext::TouchEventContext):
+ (WebCore::TouchEventContext::~TouchEventContext):
+ (WebCore::TouchEventContext::handleLocalEvents):
+ (WebCore::TouchEventContext::isTouchEventContext):
+ (WebCore::TouchEventContext::checkReachability): Used for assertion of reachability for each Touch point.
+ * dom/EventContext.h:
+ (WebCore):
+ (EventContext):
+ (TouchEventContext): Introduced to hold necessary information for re-targeting Touch event.
+ (WebCore::TouchEventContext::touches):
+ (WebCore::TouchEventContext::targetTouches):
+ (WebCore::TouchEventContext::changedTouches):
+ (WebCore::EventContext::isReachable):
+ * dom/EventRetargeter.cpp:
+ (WebCore::EventRetargeter::calculateEventPath):
+ (WebCore::EventRetargeter::adjustForTouchEvent):
+ (WebCore):
+ (WebCore::EventRetargeter::adjustTouchList):
+ (WebCore::EventRetargeter::adjustForRelatedTarget):
+ (WebCore::EventRetargeter::calculateAdjustedNodes): Updated so that this can be used for Touch point re-targeting.
+ (WebCore::EventRetargeter::buildRelatedNodeMap):
+ * dom/EventRetargeter.h:
+ (WebCore):
+ (EventRetargeter):
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchEvent):
+ (WebCore):
+ (WebCore::Node::dispatchTouchEvent):
+ * dom/Node.h:
+ (WebCore):
+ (Node):
+ * dom/Touch.cpp:
+ (WebCore::Touch::Touch):
+ (WebCore):
+ (WebCore::Touch::cloneWithNewTarget):
+ * dom/Touch.h:
+ (Touch):
+ * dom/TouchEvent.cpp:
+ (WebCore::TouchEventDispatchMediator::create):
+ (WebCore):
+ (WebCore::TouchEventDispatchMediator::TouchEventDispatchMediator):
+ (WebCore::TouchEventDispatchMediator::event):
+ (WebCore::TouchEventDispatchMediator::dispatchEvent):
+ * dom/TouchEvent.h:
+ (TouchEvent):
+ (WebCore::TouchEvent::setTouches):
+ (WebCore::TouchEvent::setTargetTouches):
+ (WebCore::TouchEvent::setChangedTouches):
+ (TouchEventDispatchMediator):
+ (WebCore):
+ (WebCore::toTouchEvent):
+ * dom/TouchList.cpp:
+ (WebCore::TouchList::item):
+ (WebCore):
+ * dom/TouchList.h:
+ (TouchList):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::hitTestResultInFrame): Removed the limitation. Adjusting is no longer done here.
+ (WebCore::EventHandler::handleTouchEvent):
+
+2013-03-05 Hajime Morrita <morrita@google.com>
+
+ [Custom Elements][V8] Custom Element doesn't need its own WrapperTypeInfo
+ https://bugs.webkit.org/show_bug.cgi?id=111411
+
+ Reviewed by Kentaro Hara.
+
+ No new tests. No observable change yet.
+
+ This is a preparation for Bug 110436, where WebKit is going to
+ allow any HTML element to be a superclass of custom elements.
+
+ This change eliminates WrapperTypeInfo for custom element. Instead
+ of that, the wrapper of a custom element picks WrapperTypeInfo
+ from most descendant built-in HTML element. For example, think about
+ following hierarchy:
+
+ - ... <- HTMLElement <- HTMLDivElememnt <- ExistingCustomElement <- NewCustomElement
+
+ In this case, both ExistingCustomElement and NewCustomElement has
+ HTMLDivElememnt's type info. This is because HTMLDivElememnt is
+ the most descendant (or "the nearest") built-in HTML
+ element. (HTMLElement isn't the most descendant.
+ ExistingCustomElement isn't a built-in.)
+
+ Using such WrapperTypeInfos, created custom element wrappers can
+ get appropriate set of method and properties regardless of its
+ super-elements.
+
+ This change tells the prototype object of each built-in object
+ which WrapperTypeInfo the native backing wants:
+ HTMLDivElememnt.prototype knows V8HTMLDivElement::info for
+ example. The pointer to the type info is stored into an internal
+ field. On wrapper construction, createWrapper() walks up the
+ prototype chain and pick the first one.
+
+ * bindings/v8/V8DOMConfiguration.cpp:
+ (WebCore::V8DOMConfiguration::configureTemplate):
+ * bindings/v8/V8HTMLCustomElement.cpp:
+ (WebCore::findWrapperTypeOf):
+ (WebCore::V8HTMLCustomElement::createWrapper):
+ * bindings/v8/V8HTMLCustomElement.h:
+ * bindings/v8/V8PerContextData.cpp:
+ (WebCore::V8PerContextData::constructorForTypeSlowCase):
+ * bindings/v8/WrapperTypeInfo.h:
+ (WebCore):
+
+2013-03-05 Aaron Colwell <acolwell@chromium.org>
+
+ Heap-use-after-free in WebCore::HTMLMediaElement::~HTMLMediaElement
+ https://bugs.webkit.org/show_bug.cgi?id=110623
+
+ Reviewed by Eric Seidel.
+
+ Test: http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html
+
+ * html/HTMLAudioElement.h:
+ (HTMLAudioElement):
+ * html/HTMLAudioElement.idl:
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::hasPendingActivity):
+ * html/HTMLMediaElement.idl:
+
+2013-03-05 Chris Fleizach <cfleizach@apple.com>
+
+ AX: Support aria-posinset/setsize
+ https://bugs.webkit.org/show_bug.cgi?id=109725
+
+ Reviewed by Tim Horton.
+
+ Expose aria-setsize and aria-posinset through accessibility.
+ Right now only the Mac platform exposes them.
+
+ Test: platform/mac/accessibility/aria-setsize-posinset.html
+
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::supportsARIASetSize):
+ (WebCore):
+ (WebCore::AccessibilityObject::supportsARIAPosInset):
+ (WebCore::AccessibilityObject::ariaSetSize):
+ (WebCore::AccessibilityObject::ariaPosInset):
+ * accessibility/AccessibilityObject.h:
+ (AccessibilityObject):
+ * accessibility/mac/WebAccessibilityObjectWrapper.mm:
+ (-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
+ (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
+ * html/HTMLAttributeNames.in:
+
+
+2013-03-05 Peter Nelson <peter@peterdn.com>
+
+ [WinCairo] Support for cookies is incomplete
+ https://bugs.webkit.org/show_bug.cgi?id=110147
+
+ Expired and HttpOnly cookies no longer accessible from JavaScript.
+ Cookies set in JavaScript now have correct domain/path.
+
+ Reviewed by Brent Fulgham.
+
+ Test: http/tests/cookies/http-get-cookie-set-in-js.html
+
+ * platform/network/curl/CookieJarCurl.cpp:
+ (WebCore):
+ (WebCore::addMatchingCurlCookie):
+ (WebCore::getNetscapeCookieFormat):
+ (WebCore::setCookiesFromDOM):
+ (WebCore::cookieRequestHeaderFieldValue):
+
+2013-03-05 Alec Flett <alecflett@chromium.org>
+
+ Fix mac clang build with long long
+ https://bugs.webkit.org/show_bug.cgi?id=111495
+
+ Unreviewed fix for mac build.
+
+ * Modules/indexeddb/IDBBackingStore.cpp:
+ (WebCore::IDBBackingStore::IDBBackingStore):
+
+2013-03-05 Alec Flett <alecflett@chromium.org>
+
+ Fix mac clang build with long long
+ https://bugs.webkit.org/show_bug.cgi?id=111495
+
+ Unreviewed fix for mac build.
+
+ * Modules/indexeddb/IDBBackingStore.cpp:
+ (WebCore::IDBBackingStore::IDBBackingStore):
+
+2013-03-05 Aaron Colwell <acolwell@chromium.org>
+
+ Add V8Document.h include when the V8 code generator creates a toV8(Document*) call.
+ https://bugs.webkit.org/show_bug.cgi?id=111486
+
+ Reviewed by Adam Barth.
+
+ No new tests. This doesn't change user visible behavior.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateNamedConstructor):
+ * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
+
+2013-03-05 Shawn Singh <shawnsingh@chromium.org>
+
+ Fix default background of a dragged image.
+ https://bugs.webkit.org/show_bug.cgi?id=110512
+
+ Reviewed by Tony Chang.
+
+ Transparent background color (particularly visible in the padding
+ of an element) was not being respected. The solution is to
+ initially fill the drag image with transparent instead of white,
+ so that any color background works correctly. This patch does not
+ affect Apple Mac or Win platforms, given that this part of the
+ code is #if guarded from those platforms.
+
+ Manual test added:
+ ManualTests/drag-background-with-padding.html
+
+ Infrastructure for retrieving the drag image for pixel testing
+ does not yet exist.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::nodeImage):
+
+2013-03-05 Emil A Eklund <eae@chromium.org>
+
+ ASSERTION FAILED: i < size(), UNKNOWN in WebCore::RenderTableSection::layout
+ https://bugs.webkit.org/show_bug.cgi?id=108838
+
+ Reviewed by Levi Weintraub.
+
+ Ensure that RenderTable::recalcSections is called when moving a
+ TableSection by calling setNeedsSectionRecalc in addChild for
+ TableSections.
+
+ Test: fullscreen/full-screen-table-section.html
+
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::addChild):
+
+2013-03-05 Kenneth Russell <kbr@google.com>
+
+ Upgrade ANGLE to r1987
+ https://bugs.webkit.org/show_bug.cgi?id=111381
+
+ Reviewed by Dean Jackson.
+
+ Covered by existing tests. Ran WebGL conformance tests in Safari
+ to ensure correct operation of patch.
+
+ * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
+ (WebCore::GraphicsContext3D::GraphicsContext3D):
+ * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
+ (WebCore::GraphicsContext3D::GraphicsContext3D):
+ * platform/graphics/efl/GraphicsContext3DEfl.cpp:
+ (WebCore::GraphicsContext3D::GraphicsContext3D):
+ * platform/graphics/mac/GraphicsContext3DMac.mm:
+ (WebCore::GraphicsContext3D::GraphicsContext3D):
+ * platform/graphics/qt/GraphicsContext3DQt.cpp:
+ (WebCore::GraphicsContext3DPrivate::initializeANGLE):
+ Changed all ports to query for highp support in fragment
+ shaders and conditionally enable it in ANGLE shader translator.
+
+2013-03-05 Alec Flett <alecflett@chromium.org>
+
+ IndexedDB: Add IDBBackingStoreTest
+ https://bugs.webkit.org/show_bug.cgi?id=111233
+
+ Reviewed by Adam Barth.
+
+ These are tweaks to make IDBBackingStore more easily testable.
+
+ * Modules/indexeddb/IDBBackingStore.cpp:
+ (WebCore::IDBBackingStore::IDBBackingStore): Allow use without a backing store.
+
+2013-03-04 James Robinson <jamesr@chromium.org>
+
+ [chromium] Move check for threaded compositing from WebCompositorSupport to Platform
+ https://bugs.webkit.org/show_bug.cgi?id=111386
+
+ Reviewed by Adrienne Walker.
+
+ This moves checks for whether threaded compositing is enabled from WebCompositorSupport
+ to Platform. In the case of Canvas2DLayerBridge, the check is moved completely out of
+ the class to make it easier for tests to specify the threaded configuration to use in the test.
+
+ * platform/graphics/chromium/Canvas2DLayerBridge.cpp:
+ (WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
+ * platform/graphics/chromium/Canvas2DLayerBridge.h:
+ (WebCore::Canvas2DLayerBridge::create):
+ (Canvas2DLayerBridge):
+ * platform/graphics/chromium/DrawingBufferChromium.cpp:
+ (WebCore::DrawingBuffer::DrawingBuffer):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::createAcceleratedCanvas):
+
+2013-03-05 Anders Carlsson <andersca@apple.com>
+
+ Split up the storage event dispatch functions further
+ https://bugs.webkit.org/show_bug.cgi?id=111482
+
+ Reviewed by Beth Dakin.
+
+ Add new functions for dispatching storage events to a set of frames.
+
+ * storage/StorageAreaImpl.cpp:
+ (WebCore::StorageAreaImpl::dispatchStorageEvent):
+ * storage/StorageEventDispatcher.cpp:
+ (WebCore::StorageEventDispatcher::dispatchSessionStorageEvents):
+ (WebCore::StorageEventDispatcher::dispatchLocalStorageEvents):
+ (WebCore):
+ (WebCore::StorageEventDispatcher::dispatchSessionStorageEventsToFrames):
+ (WebCore::StorageEventDispatcher::dispatchLocalStorageEventsToFrames):
+ * storage/StorageEventDispatcher.h:
+ (WebCore):
+ (StorageEventDispatcher):
+
+2013-03-05 Stephen Chenney <schenney@chromium.org>
+
+ Crash when ImageLoader deletes Element inside SVGImageElement
+ https://bugs.webkit.org/show_bug.cgi?id=111085
+
+ Reviewed by Abhishek Arya.
+
+ Elements with ImageLoader objects associated with them may have their
+ final reference held by the ImageLoader (to allow events to be sent
+ and handled). Any call on Element that causes the ImageLoader to
+ dispatch events might then result in the final deref of the Element
+ itself, thus leaving all the Element's "this" pointers up the stack
+ pointing to invalid memory.
+
+ This change puts the deref of the Element on a timer so that, if the
+ deref is called via a method on Element, the call stack will unwind
+ before the deref occurs.
+
+ Test: svg/custom/image-with-attr-change-after-delete-crash.html
+
+ * loader/ImageLoader.cpp:
+ (WebCore::ImageLoader::ImageLoader): Initialize a timer
+ (WebCore::ImageLoader::updatedHasPendingEvent): Put deref of the
+ element on a oneShotTimer, with appropriate assertions and checks to
+ ensure we only ref/deref once.
+ (WebCore::ImageLoader::timerFired): Deref the element when the timer fires.
+ * loader/ImageLoader.h:
+ (ImageLoader): Define a timer for controlling deref of the element.
+
+2013-03-05 Antoine Quint <graouts@apple.com>
+
+ Web Inspector: identify reflection layers in LayerTreeAgent
+ https://bugs.webkit.org/show_bug.cgi?id=111419
+
+ We add a new property "isReflection" to the Layer objects returned
+ to the front-end to indicate whether the layer was created to host
+ the reflection for an element. When this new property is true, the
+ "nodeId" property is set to point to the reflected element's node
+ id, since there is no node per-se directly associated with this layer.
+ We also change the "bounds" property to return absolute page coordinates
+ such that the front-end can use this information to highlight that
+ region in the page since metrics would otherwise be unavailable.
+
+ Reviewed by Dean Jackson.
+
+ Test: inspector-protocol/layers/layers-reflected-content.html
+
+ * inspector/Inspector.json:
+ * inspector/InspectorLayerTreeAgent.cpp:
+ (WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
+
+2013-03-05 peavo@outlook.com <peavo@outlook.com>
+
+ [WinCairo] Compile fix after r144024.
+ https://bugs.webkit.org/show_bug.cgi?id=111306
+
+ Reviewed by James Robinson.
+
+ * page/scrolling/ScrollingCoordinator.cpp: Added guard for USE(ACCELERATED_COMPOSITING).
+ * page/scrolling/ScrollingCoordinator.h: Added guard for USE(ACCELERATED_COMPOSITING).
+
+2013-03-05 James Weatherall <wez@chromium.org>
+
+ keydown and keyup events have zero keycode for some numeric pad keys under Chromium on Linux
+ https://bugs.webkit.org/show_bug.cgi?id=85642
+
+ Add missing key mappings for GDK_KP_Begin, GDK_KP_Insert, GDK_KP_Delete and GDK_ISO_Level3_Shift.
+
+ Reviewed by Ojan Vafai.
+
+ * platform/chromium/KeyCodeConversionGtk.cpp:
+ (WebCore::windowsKeyCodeForKeyEvent):
+
+2013-03-05 Alec Flett <alecflett@chromium.org>
+
+ IndexedDB: Properly refactor frontend/backend code by #includes
+ https://bugs.webkit.org/show_bug.cgi?id=110653
+
+ Reviewed by Dimitri Glazkov.
+
+ IndexedDB has a distinct backend and frontend, with well defined
+ *Interface / *Callbacks classes distinguishing them, respectively.
+
+ This makes sure that the frontend and backend do not include each
+ other and fixes build problems that occurred as a result.
+
+ Specifically this moves enums out of IDBCursor and IDBTransaction
+ into IndexedDB.h in a new WebCore::IndexedDB namespace.
+
+ No new tests, as this is just a refactor.
+
+2013-03-05 Jeffrey Pfau <jpfau@apple.com>
+
+ Clear associated cache partitions when deleting origins' cache
+ https://bugs.webkit.org/show_bug.cgi?id=111383
+
+ Reviewed by Maciej Stachowiak.
+
+ Clear the cache partitions associated with the origin being cleared.
+
+ Not possible to test with current automated test tools, must be tested manually.
+
+ * loader/cache/MemoryCache.cpp:
+ (WebCore::MemoryCache::removeResourcesWithOrigin):
+
+2013-03-04 Ojan Vafai <ojan@chromium.org>
+
+ Inline min/maxInstrinsicLogicalWidth functions
+ https://bugs.webkit.org/show_bug.cgi?id=111399
+
+ Reviewed by Tony Chang.
+
+ Turns out these functions don't need to be public and only
+ have one caller. This patch is in preparation for supporting
+ intrinsic widths on tables, which will need to pass in the
+ border and padding width as an argument.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::fillAvailableMeasure):
+ (WebCore::RenderBox::computeIntrinsicLogicalWidthUsing):
+ (WebCore::RenderBox::computeLogicalWidthInRegionUsing):
+ * rendering/RenderBox.h:
+
+2013-03-05 Victor Carbune <vcarbune@chromium.org>
+
+ Cue line-height property shouldn't be inherited from the video element
+ https://bugs.webkit.org/show_bug.cgi?id=111262
+
+ Reviewed by Eric Carlson.
+
+ Test: media/track/track-cue-rendering-on-resize.html
+
+ * css/mediaControls.css:
+ (video::-webkit-media-text-track-container): Set the default font size
+ and family using the "font" property to also reset the line-height property.
+
+2013-03-05 Joshua Bell <jsbell@chromium.org>
+
+ IndexedDB: Remove some unused binding code
+ https://bugs.webkit.org/show_bug.cgi?id=111463
+
+ Reviewed by Adam Barth.
+
+ IDBRequest got a custom V8 getter for |request| to help diagnose an issue, but the
+ root cause was found/fixed (http://wkbug.com/110916 and http://wkbug.com/110206) so
+ remove it. Also, IDBKey was marked ScriptWrappable but it is now explicitly converted
+ to a ScriptValue before it gets anywhere near the binding code, so remove that too.
+ Finally, createIDBKeyFromValue doesn't need to be exposed from IDBBindingUtilities.
+
+ No new tests - just removing dead code.
+
+ * Modules/indexeddb/IDBKey.h: No need for ScriptWrappable.
+ * Modules/indexeddb/IDBRequest.idl: Remove custom binding (root cause of bug found).
+ * WebCore.gypi: Ditto.
+ * bindings/js/IDBBindingUtilities.h: Don't expose internal createIDBKeyFromValue().
+ * bindings/v8/IDBBindingUtilities.h: Ditto.
+ * bindings/v8/custom/V8IDBRequestCustom.cpp: Removed.
+
+2013-03-05 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r144798.
+ http://trac.webkit.org/changeset/144798
+ https://bugs.webkit.org/show_bug.cgi?id=111478
+
+ "broke chromium windows build" (Requested by dpranke on
+ #webkit).
+
+ * GNUmakefile.list.am:
+ * Modules/indexeddb/IDBBackingStore.cpp:
+ (WebCore::IDBBackingStore::Cursor::continueFunction):
+ (WebCore::objectStoreCursorOptions):
+ (WebCore::indexCursorOptions):
+ (WebCore::IDBBackingStore::openObjectStoreCursor):
+ (WebCore::IDBBackingStore::openObjectStoreKeyCursor):
+ (WebCore::IDBBackingStore::openIndexKeyCursor):
+ (WebCore::IDBBackingStore::openIndexCursor):
+ * Modules/indexeddb/IDBBackingStore.h:
+ (IDBBackingStore):
+ * Modules/indexeddb/IDBCursor.cpp:
+ (WebCore::IDBCursor::create):
+ (WebCore::IDBCursor::IDBCursor):
+ (WebCore::IDBCursor::continueFunction):
+ (WebCore::IDBCursor::stringToDirection):
+ (WebCore::IDBCursor::directionToString):
+ * Modules/indexeddb/IDBCursor.h:
+ (IDBCursor):
+ * Modules/indexeddb/IDBCursorBackendImpl.cpp:
+ (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
+ (WebCore::IDBCursorBackendImpl::deleteFunction):
+ (WebCore::IDBCursorBackendImpl::CursorPrefetchIterationOperation::perform):
+ * Modules/indexeddb/IDBCursorBackendImpl.h:
+ (WebCore::IDBCursorBackendImpl::create):
+ (WebCore::IDBCursorBackendImpl::value):
+ (IDBCursorBackendImpl):
+ * Modules/indexeddb/IDBCursorBackendInterface.h:
+ (WebCore):
+ * Modules/indexeddb/IDBCursorWithValue.cpp:
+ (WebCore::IDBCursorWithValue::create):
+ (WebCore::IDBCursorWithValue::IDBCursorWithValue):
+ * Modules/indexeddb/IDBCursorWithValue.h:
+ (IDBCursorWithValue):
+ * Modules/indexeddb/IDBDatabase.cpp:
+ (WebCore::IDBDatabase::transaction):
+ * Modules/indexeddb/IDBDatabase.h:
+ * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
+ (WebCore::GetOperation::create):
+ (WebCore::GetOperation::GetOperation):
+ (GetOperation):
+ (WebCore::OpenCursorOperation::create):
+ (WebCore::OpenCursorOperation::OpenCursorOperation):
+ (OpenCursorOperation):
+ (WebCore::IDBDatabaseBackendImpl::createObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::deleteObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::createIndex):
+ (WebCore::IDBDatabaseBackendImpl::deleteIndex):
+ (WebCore::IDBDatabaseBackendImpl::get):
+ (WebCore::GetOperation::perform):
+ (WebCore::IDBDatabaseBackendImpl::put):
+ (WebCore::PutOperation::perform):
+ (WebCore::IDBDatabaseBackendImpl::setIndexKeys):
+ (WebCore::IDBDatabaseBackendImpl::openCursor):
+ (WebCore::OpenCursorOperation::perform):
+ (WebCore::CountOperation::perform):
+ (WebCore::IDBDatabaseBackendImpl::deleteRange):
+ (WebCore::DeleteRangeOperation::perform):
+ (WebCore::IDBDatabaseBackendImpl::clear):
+ (WebCore::IDBDatabaseBackendImpl::transactionStarted):
+ (WebCore::IDBDatabaseBackendImpl::transactionFinished):
+ (WebCore::IDBDatabaseBackendImpl::transactionFinishedAndAbortFired):
+ (WebCore::IDBDatabaseBackendImpl::transactionFinishedAndCompleteFired):
+ (WebCore::IDBDatabaseBackendImpl::createTransaction):
+ (WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
+ * Modules/indexeddb/IDBDatabaseBackendImpl.h:
+ (IDBDatabaseBackendImpl):
+ * Modules/indexeddb/IDBDatabaseBackendInterface.h:
+ * Modules/indexeddb/IDBFactory.h:
+ * Modules/indexeddb/IDBIndex.cpp:
+ (WebCore):
+ (WebCore::IDBIndex::openCursor):
+ (WebCore::IDBIndex::openKeyCursor):
+ * Modules/indexeddb/IDBObjectStore.cpp:
+ (WebCore):
+ (WebCore::IDBObjectStore::openCursor):
+ * Modules/indexeddb/IDBRequest.cpp:
+ (WebCore::IDBRequest::IDBRequest):
+ (WebCore::IDBRequest::setCursorDetails):
+ (WebCore::IDBRequest::setResultCursor):
+ (WebCore::IDBRequest::onSuccess):
+ * Modules/indexeddb/IDBRequest.h:
+ (IDBRequest):
+ * Modules/indexeddb/IDBTransaction.cpp:
+ (WebCore::IDBTransaction::create):
+ (WebCore::IDBTransaction::IDBTransaction):
+ (WebCore::IDBTransaction::stringToMode):
+ (WebCore::IDBTransaction::modeToString):
+ * Modules/indexeddb/IDBTransaction.h:
+ (WebCore::IDBTransaction::isReadOnly):
+ (WebCore::IDBTransaction::isVersionChange):
+ (IDBTransaction):
+ * Modules/indexeddb/IDBTransactionBackendImpl.cpp:
+ (WebCore::IDBTransactionBackendImpl::create):
+ (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
+ * Modules/indexeddb/IDBTransactionBackendImpl.h:
+ (IDBTransactionBackendImpl):
+ (WebCore::IDBTransactionBackendImpl::mode):
+ * Modules/indexeddb/IDBTransactionCoordinator.cpp:
+ (WebCore::IDBTransactionCoordinator::processStartedTransactions):
+ (WebCore::IDBTransactionCoordinator::canRunTransaction):
+ * Modules/indexeddb/IndexedDB.h: Removed.
+ * Target.pri:
+ * WebCore.gypi:
+
+2013-03-05 Tommy Widenflycht <tommyw@google.com>
+
+ MediaStream API: Allow local and remote descriptions to be accessed after close
+ https://bugs.webkit.org/show_bug.cgi?id=111437
+
+ Reviewed by Adam Barth.
+
+ It's quite clear in the standard that the getters should still return the old value.
+ Also overhauling the state setters a bit to check if the new state is different.
+
+ Existing tests expanded to cover patch.
+
+ * Modules/mediastream/RTCPeerConnection.cpp:
+ (WebCore::RTCPeerConnection::localDescription):
+ (WebCore::RTCPeerConnection::remoteDescription):
+ (WebCore::RTCPeerConnection::changeSignalingState):
+ (WebCore::RTCPeerConnection::changeIceGatheringState):
+ (WebCore::RTCPeerConnection::changeIceConnectionState):
+
+2013-03-05 Charlie Reis <creis@chromium.org>
+
+ Add FrameLoaderClient::didAccessInitialDocument
+ https://bugs.webkit.org/show_bug.cgi?id=107963
+
+ Notifies the FrameLoaderClient if another page accesses the
+ initial empty document of a main frame. In this case, it is
+ no longer safe to display the provisional URL.
+
+ Only takes effect for PLATFORM(CHROMIUM), since no other platforms
+ listen to the notification.
+
+ Reviewed by Adam Barth.
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::setSecurityToken):
+ Use default token for initial document.
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ Notify loader if initial document is accessed.
+ (WebCore::V8DOMWindow::namedSecurityCheck):
+ (WebCore::V8DOMWindow::indexedSecurityCheck):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::FrameLoader):
+ (WebCore::FrameLoader::didAccessInitialDocument):
+ (WebCore):
+ * loader/FrameLoader.h:
+ (FrameLoader):
+ * loader/FrameLoaderClient.h:
+ (FrameLoaderClient):
+ (WebCore::FrameLoaderClient::didAccessInitialDocument):
+
+2013-03-05 Otto Derek Cheung <otcheung@rim.com>
+
+ [BlackBerry] Fix assertion in CookieManager::getBackingStoreCookies
+ https://bugs.webkit.org/show_bug.cgi?id=111468
+
+ Reviewed by Rob Buis.
+ Internally reviewed by Konrad Piascik.
+
+ The assert in getBackingStoreCookies could be giving out false positives now
+ that we have our fixes for cookie loading in PR 286189. The cookie store could
+ be half loaded if the first cookie get/set call happens before the db is fully loaded.
+ A full webkit sync call to reload the database will cause the assert to be hit.
+
+ Safer to flush everything out and try again.
+
+ * platform/blackberry/CookieManager.cpp:
+ (WebCore::CookieManager::getBackingStoreCookies):
+
+2013-03-05 Tony Gentilcore <tonyg@chromium.org>
+
+ CompactHTMLToken does not need an XSSInfo pointer
+ https://bugs.webkit.org/show_bug.cgi?id=111423
+
+ Reviewed by Eric Seidel.
+
+ The CompactHTMLToken should remain as small as possible because it is copied. This shrinks the size by one pointer
+ by moving a relatively uncommon attribute out to its own Vector.
+
+ No new tests because no new functionality.
+
+ * html/parser/BackgroundHTMLParser.cpp:
+ (WebCore::checkThatXSSInfosAreSafeToSendToAnotherThread):
+ (WebCore):
+ (WebCore::BackgroundHTMLParser::pumpTokenizer):
+ (WebCore::BackgroundHTMLParser::sendTokensToMainThread):
+ * html/parser/BackgroundHTMLParser.h:
+ (BackgroundHTMLParser):
+ * html/parser/CompactHTMLToken.cpp:
+ (SameSizeAsCompactHTMLToken):
+ (WebCore::CompactHTMLToken::isSafeToSendToAnotherThread):
+ * html/parser/CompactHTMLToken.h:
+ (WebCore):
+ (CompactHTMLToken):
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
+ * html/parser/HTMLDocumentParser.h:
+ (ParsedChunk):
+ * html/parser/XSSAuditorDelegate.h:
+ (XSSInfo):
+ (WebCore):
+
+2013-03-05 Anders Carlsson <andersca@apple.com>
+
+ Split StorageEventDispatcher::dispatch into two functions
+ https://bugs.webkit.org/show_bug.cgi?id=111464
+
+ Reviewed by Beth Dakin.
+
+ Split StorageEventDispatcher::dispatch into dispatchSessionStorageEvent and
+ dispatchLocalStorageEvent and make StorageAreaImpl::dispatchStorageEvent call
+ the right function based on the storage area type.
+
+ * storage/StorageAreaImpl.cpp:
+ (WebCore::StorageAreaImpl::dispatchStorageEvent):
+ * storage/StorageEventDispatcher.cpp:
+ (WebCore::StorageEventDispatcher::dispatchSessionStorageEvent):
+ (WebCore):
+ (WebCore::StorageEventDispatcher::dispatchLocalStorageEvent):
+ * storage/StorageEventDispatcher.h:
+ (StorageEventDispatcher):
+
+2013-03-05 Brent Fulgham <bfulgham@webkit.org>
+
+ [WinCairo] Unreviewed build fix after r144024.
+
+ * page/scrolling/ScrollingCoordinator.cpp:
+ (WebCore::ScrollingCoordinator::scrollLayerForScrollableArea): Handle
+ case of not using Accelerated Compositing
+ (WebCore::ScrollingCoordinator::horizontalScrollbarLayerForScrollableArea):
+ (WebCore::ScrollingCoordinator::verticalScrollbarLayerForScrollableArea): Ditto.
+
+2013-03-05 Alec Flett <alecflett@chromium.org>
+
+ IndexedDB: Properly refactor frontend/backend code by #includes
+ https://bugs.webkit.org/show_bug.cgi?id=110653
+
+ Reviewed by Dimitri Glazkov.
+
+ IndexedDB has a distinct backend and frontend, with well defined
+ *Interface / *Callbacks classes distinguishing them, respectively.
+
+ This makes sure that the frontend and backend do not include each
+ other and fixes build problems that occurred as a result.
+
+ Specifically this moves enums out of IDBCursor and IDBTransaction
+ into IndexedDB.h in a new WebCore::IndexedDB namespace.
+
+ No new tests, as this is just a refactor.
+
+2013-03-05 James Robinson <jamesr@chromium.org>
+
+ ContainerNode::setActive should not sleep for 100ms on platforms that do not implement synchronous repaint(true) semantics
+ https://bugs.webkit.org/show_bug.cgi?id=87054
+
+ Reviewed by Darin Adler.
+
+ Adds a new ChromeClient function to query if the platform supports the immediate parameter
+ to the invalidation APIs and guards the synchronous repaint logic in ContainerNode::setActive()
+ with it.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::setActive):
+ * page/ChromeClient.h:
+ (WebCore::ChromeClient::supportsImmediateInvalidation):
+
+2013-03-05 Anders Carlsson <andersca@apple.com>
+
+ Simplify storage event dispatch somewhat
+ https://bugs.webkit.org/show_bug.cgi?id=111461
+
+ Reviewed by Beth Dakin.
+
+ Add a StorageAreaImpl::dispatchStorageEvent to avoid replicating the calls to
+ StorageEventDispatcher::dispatch there times. This is in preparation for changing the
+ interface of StorageEventDispatcher so it can be used by WebKit2.
+
+ * storage/StorageAreaImpl.cpp:
+ (WebCore::StorageAreaImpl::setItem):
+ (WebCore::StorageAreaImpl::removeItem):
+ (WebCore::StorageAreaImpl::clear):
+ (WebCore::StorageAreaImpl::dispatchStorageEvent):
+
+ * storage/StorageAreaImpl.h:
+ Reindent.
+
+2013-03-05 Tony Chang <tony@chromium.org>
+
+ Fix some crashes in render sliders
+ https://bugs.webkit.org/show_bug.cgi?id=111458
+
+ Reviewed by Ojan Vafai.
+
+ Fix some cases where we assumed the renderer is a renderBox.
+
+ Test: fast/forms/range/slider-inline-crash.html
+
+ * html/shadow/SliderThumbElement.cpp:
+ (WebCore::RenderSliderContainer::layout): Use renderBox() which will return 0 if the renderer is not a RenderBox.
+ (WebCore::SliderThumbElement::setPositionFromPoint): Bail out early if renderBox() is 0.
+
+2013-03-04 Andrew Scherkus <scherkus@chromium.org>
+
+ REGRESSION(r142191): Fix closed caption buttons for ports still using the painting path.
+ https://bugs.webkit.org/show_bug.cgi?id=111109
+
+ Reviewed by Eric Carlson.
+
+ Covered by following tests:
+ media/track/track-cue-rendering-horizontal.html
+ media/track/track-cue-rendering-vertical.html
+
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::paint):
+ * rendering/RenderTheme.h:
+ (WebCore::RenderTheme::paintMediaToggleClosedCaptionsButton):
+
+2013-03-05 Gwang Yoon Hwang <ryumiel@company100.net>
+
+ Coordinated Graphics: CoordinatedGraphicsLayer makes CoordinatedGraphicsScene perform via CoordinatedGraphicsState.
+ https://bugs.webkit.org/show_bug.cgi?id=108294
+
+ Reviewed by Anders Carlsson.
+
+ CoordinatedLayerTreeHostProxy has too many IPC messages (e.g. SyncCanvas and
+ CreateTile), and there is a long function chain from CoordinatedGraphicsLayer to
+ CoordinatedGraphicsScene (4 classes).
+ If we want to add a new message, we need to add similar functions into 4 classes.
+
+ Now CoordinatedLayerTreeHost has only one IPC message for CoordinatedGraphicsLayer:
+ CommitCoordinatedGraphicsState.
+ CoordinatedGraphicsLayer makes CoordinatedGraphicsScene run as follows:
+ 1. CoordinatedGraphicsLayer makes a CoordinatedGraphicsLayerState.
+ 2. CoordinatedLayerTreeHost stores all LayerStates.
+ 3. CoordinatedLayerTreeHost sends GraphicsState includes LayerStates to CoordinatedLayerTreeHostProxy
+ at the moment of flushing via CommitCoordinatedGraphicsState message.
+ 4. CoordinatedGraphicsScene applies all state changes to layers.
+
+ There is one big behavior change. All states changes (e.g.
+ UpdateTiles, SetLayerChildren, and etc..) are performed at the same time, when
+ CoordinatedGraphicsScene::commitCoordinatedGraphicsState is called.
+
+ This patch is based on Dongsung Huang, and Noam's work in
+ https://bugs.webkit.org/show_bug.cgi?id=108294
+
+ No new tests, covered by existing tests.
+
+ * Target.pri:
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
+ (WebCore::CoordinatedGraphicsLayer::setPosition):
+ (WebCore::CoordinatedGraphicsLayer::setAnchorPoint):
+ (WebCore::CoordinatedGraphicsLayer::setSize):
+ (WebCore::CoordinatedGraphicsLayer::setTransform):
+ (WebCore::CoordinatedGraphicsLayer::setChildrenTransform):
+ (WebCore::CoordinatedGraphicsLayer::setPreserves3D):
+ (WebCore::CoordinatedGraphicsLayer::setMasksToBounds):
+ (WebCore::CoordinatedGraphicsLayer::setDrawsContent):
+ (WebCore::CoordinatedGraphicsLayer::setContentsVisible):
+ (WebCore::CoordinatedGraphicsLayer::setContentsOpaque):
+ (WebCore::CoordinatedGraphicsLayer::setBackfaceVisibility):
+ (WebCore::CoordinatedGraphicsLayer::setOpacity):
+ (WebCore::CoordinatedGraphicsLayer::setContentsRect):
+ (WebCore::CoordinatedGraphicsLayer::setFilters):
+ (WebCore::CoordinatedGraphicsLayer::setContentsToSolidColor):
+ (WebCore::CoordinatedGraphicsLayer::setShowDebugBorder):
+ (WebCore::CoordinatedGraphicsLayer::setShowRepaintCounter):
+ (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
+ (WebCore::CoordinatedGraphicsLayer::setReplicatedByLayer):
+ (WebCore::CoordinatedGraphicsLayer::setFixedToViewport):
+ (WebCore::CoordinatedGraphicsLayer::syncChildren):
+ (WebCore::CoordinatedGraphicsLayer::syncFilters):
+ (WebCore::CoordinatedGraphicsLayer::syncImageBacking):
+ (WebCore::CoordinatedGraphicsLayer::syncLayerState):
+ (WebCore::CoordinatedGraphicsLayer::setDebugBorder):
+ (WebCore::CoordinatedGraphicsLayer::syncAnimations):
+ (WebCore::CoordinatedGraphicsLayer::syncCanvas):
+ (WebCore::CoordinatedGraphicsLayer::destroyCanvasIfNeeded):
+ (WebCore::CoordinatedGraphicsLayer::createCanvasIfNeeded):
+ (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
+ (WebCore::CoordinatedGraphicsLayer::resetLayerState):
+ (WebCore):
+ (WebCore::CoordinatedGraphicsLayer::releaseImageBackingIfNeeded):
+ (WebCore::CoordinatedGraphicsLayer::setRootLayer):
+ (WebCore::CoordinatedGraphicsLayer::tiledBackingStorePaintEnd):
+ (WebCore::CoordinatedGraphicsLayer::createTile):
+ (WebCore::CoordinatedGraphicsLayer::updateTile):
+ (WebCore::CoordinatedGraphicsLayer::removeTile):
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
+ (CoordinatedGraphicsLayerClient):
+ (CoordinatedGraphicsLayer):
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
+ (WebCore::CoordinatedGraphicsScene::createCanvasIfNeeded):
+ (WebCore::CoordinatedGraphicsScene::syncCanvasIfNeeded):
+ (WebCore::CoordinatedGraphicsScene::destroyCanvasIfNeeded):
+ (WebCore::CoordinatedGraphicsScene::setLayerRepaintCountIfNeeded):
+ (WebCore::CoordinatedGraphicsScene::setLayerChildrenIfNeeded):
+ (WebCore::CoordinatedGraphicsScene::setLayerFiltersIfNeeded):
+ (WebCore::CoordinatedGraphicsScene::setLayerState):
+ (WebCore::CoordinatedGraphicsScene::deleteLayer):
+ (WebCore::CoordinatedGraphicsScene::createTilesIfNeeded):
+ (WebCore::CoordinatedGraphicsScene::removeTilesIfNeeded):
+ (WebCore::CoordinatedGraphicsScene::updateTilesIfNeeded):
+ (WebCore::CoordinatedGraphicsScene::assignImageBackingToLayer):
+ (WebCore::CoordinatedGraphicsScene::commitSceneState):
+ (WebCore::CoordinatedGraphicsScene::setLayerAnimationsIfNeeded):
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
+ (WebCore):
+ (CoordinatedGraphicsScene):
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h: Added.
+ (WebCore):
+ (TileUpdateInfo):
+ (TileCreationInfo):
+ (WebCore::CoordinatedGraphicsLayerState::CoordinatedGraphicsLayerState):
+ (CoordinatedGraphicsLayerState):
+ (CoordinatedGraphicsState):
+ * platform/graphics/texmap/coordinated/CoordinatedImageBacking.h:
+ * platform/graphics/texmap/coordinated/CoordinatedLayerInfo.h: Removed.
+ * platform/graphics/texmap/coordinated/SurfaceUpdateInfo.h:
+
+2013-03-05 Roger Fong <roger_fong@apple.com>
+
+ Unreviewed. AppleWin VS2010 build fix.
+
+ * WebCore.vcxproj/WebCore.vcxproj:
+ * WebCore.vcxproj/WebCore.vcxproj.filters:
+ * rendering/RenderingAllInOne.cpp:
+
+2013-03-05 Bem Jones-Bey <bjonesbe@adobe.com>
+
+ [CSS Exclusions] shape-outside on floats for polygon shapes
+ https://bugs.webkit.org/show_bug.cgi?id=98676
+
+ Reviewed by David Hyatt.
+
+ Implement support for polygonal shape-outside on floats. The basic
+ tack taken here is to keep using the bounding box of the shape to
+ position the float, but to compute the offset (caused by the shape)
+ from the bounding box for each line when creating and positioning
+ other inline content.
+
+ Test: fast/exclusions/shape-outside-floats/shape-outside-floats-simple-polygon.html
+
+ * rendering/ExclusionShapeInfo.cpp:
+ (WebCore):
+ (WebCore::::computedShape): Add new template parameter.
+ (WebCore::::logicalTopOffset): Add new template parameter.
+ (WebCore::::computeSegmentsForLine): Move here from
+ ExclusionShapeInsideInfo, since ExclusionShapeOutsideInfo needs it
+ as well. Make virtual since there is slightly different behavior
+ between each class even though the vast majority of the code is
+ common.
+ * rendering/ExclusionShapeInfo.h:
+ (WebCore):
+ (WebCore::ExclusionShapeInfo::~ExclusionShapeInfo): Since
+ computeSegmentsForLine is virtual, the destructor must be virtual
+ as well.
+ (ExclusionShapeInfo): Add new data members to support
+ computeSegmentsForLine.
+ (WebCore::ExclusionShapeInfo::shapeLogicalRight): Fix bug, the logical
+ right is based off of maxX, not y. (it's a logical bounding box!)
+ (WebCore::ExclusionShapeInfo::logicalLineTop): Moved from
+ ExclusionShapeInsideInfo for use by computeSegmentsForLine and
+ lineOverlapsShapeBounds.
+ (WebCore::ExclusionShapeInfo::logicalLineBottom): Moved from
+ ExclusionShapeInsideInfo for use by computeSegmentsForLine and
+ lineOverlapsShapeBounds.
+ (WebCore::ExclusionShapeInfo::lineOverlapsShapeBounds): Moved from
+ ExclusionShapeInsideInfo for use by computeSegmentsForLine.
+ * rendering/ExclusionShapeInsideInfo.cpp: Moved common code from
+ computeSegmentsForLine into ExclusionShapeInfo.
+ * rendering/ExclusionShapeInsideInfo.h:
+ (WebCore): Moved some methods to ExclusionShapeInfo.
+ (ExclusionShapeInsideInfo): Update for new template parameter.
+ (WebCore::ExclusionShapeInsideInfo::compyteSegmentsForLine): Override
+ superclass method to clear the segment ranges. Segement ranges
+ aren't used by shape outside, and have some complex dependencies
+ that make it very hard to try and move up into ExclusionShapeInfo.
+ (WebCore::ExclusionShapeInsideInfo::ExclusionShapeInsideInfo): Update
+ for new template parameter.
+ * rendering/ExclusionShapeOutsideInfo.cpp:
+ (WebCore::ExclusionShapeOutsideInfo::isEnabledFor): Add polygons as a
+ supported shape.
+ (WebCore::ExclusionShapeOutsideInfo::computeSegmentsForLine): Override
+ superclass method to not recompute if it isn't needed (this isn't
+ straightfoward for shape inside, which is why it isn't common),
+ and to save the left and right offsets caused by the shape
+ outside, since that's all that is needed to properly do layout in
+ the case of floats.
+ * rendering/ExclusionShapeOutsideInfo.h:
+ (WebCore::ExclusionShapeOutsideInfo::shapeLogicalOffset): Reformat to
+ be on a single line, like most other methods of it's type in
+ WebKit headers.
+ (ExclusionShapeOutsideInfo): Update for new template parameter.
+ (WebCore::ExclusionShapeOutsideInfo::logicalLeftOffsetForLine):
+ Accessor method to get the left offset between the shape and the
+ shape's bounding box.
+ (WebCore::ExclusionShapeOutsideInfo::logicalRightOffsetForLine):
+ Accessor method to get the left offset between the shape and the
+ shape's bounding box.
+ (WebCore::ExclusionShapeOutsideInfo::ExclusionShapeOutsideInfo):
+ Update for new template parameter.
+ * rendering/RenderBlock.cpp:
+ (WebCore::::collectIfNeeded): Save the last float encountered so that
+ the shape outside offset can be accounted for.
+ (WebCore::RenderBlock::logicalLeftOffsetForLine): Account for the
+ shape outside offset on the outermost float.
+ (WebCore::RenderBlock::logicalRightOffsetForLine): Account for the
+ shape outside offset on the outermost float.
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::FloatIntervalSearchAdapter::FloatIntervalSearchAdapter):
+ Initialize the lastFloat member.
+ (WebCore::RenderBlock::FloatIntervalSearchAdapter::lastFloat): Get the
+ last float encountered.
+ (FloatIntervalSearchAdapter): Add a pointer to the last float
+ encountered. Note that the variable is mutable because
+ collectIfNeeded is declared as a const method even though it isn't
+ (it uses loopholes to update m_offset and m_heightRemaining).
+ Instead of trying to come up with a hack to stick with the
+ loopholes, I decided to be explicit about it.
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Take
+ into account the offset from any polygonal shape outside.
+ (WebCore::RenderBlock::LineBreaker::nextSegmentBreak): Add a FIXME
+ because the current code will not work properly with stacked
+ floats that have polygonal shape outside.
+
+2013-03-04 David Hyatt <hyatt@apple.com>
+
+ [New Multicolumn] Autogenerate regions for columns.
+ https://bugs.webkit.org/show_bug.cgi?id=111363
+
+ Reviewed by Dean Jackson.
+
+ In CSS Regions, we lay out the regions first, and then
+ we put the flow thread into the regions. This model doesn't
+ really work for multicolumn layout, which needs to be able
+ to auto-generate new regions lazily in response to the flow
+ thread asking for regions at particular offsets.
+
+ With the multi-column model, where the regions can't just occur
+ anywhere, its ok not to lay them out before the flow thread, as
+ long as we have at least given them the correct size.
+
+ This patch changes the layout algorithm for columns to:
+ (1) Size any existing regions (without worrying about placement).
+ (2) Lay out the flow thread (generating and sizing regions lazily
+ that need to be created).
+ (3) Lay out the regions (to give them correct placement and to
+ compute overflow correctly for the multi-column block that contains
+ the regions).
+
+ There are no new tests, since there are no behavioral changes. This
+ is just groundwork for being able to add new sets in response to
+ spans, balancing, and nested pagination contexts.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
+ (WebCore::RenderBlock::layoutBlockChild):
+ * rendering/RenderBlock.h:
+ (RenderBlock):
+ Since we want to be able to call determineLogicalLeftPositionForChild
+ to place the flow thread properly, and we don't want to apply a layout
+ delta (flow threads repaint themselves), we parameterize the method
+ here so that it can be called without applying a layout delta.
+
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::addRegionToThread):
+ (WebCore::RenderFlowThread::removeRegionFromThread):
+ These methods are only used by RenderMultiColumnFlowThread, since
+ RenderNamedFlowThread overrides them. Remove the code that invalidates
+ the flow threads region set as regions come and go, since that is now
+ going to be expected with auto-generation.
+
+ (WebCore::RenderFlowThread::validateRegions):
+ Refactor the code in RenderFlowThread::layout that validates the regions
+ into its own method, so that we can re-validate regions at any time
+ after generating new ones.
+
+ (WebCore::RenderFlowThread::layout):
+ Changed to move the region validation code into its own function that is
+ now called from here.
+
+ (WebCore::RenderFlowThread::updateLogicalWidth):
+ Don't assert if a region set needs layout.
+
+ (WebCore::RenderFlowThread::computeLogicalHeight):
+ Ditto. Don't assert if a region set needs layout. That's expected now.
+
+ (WebCore::RenderFlowThread::regionAtBlockOffset):
+ Add code to regionAtBlockOffset to auto-generate regions up to
+ the offset. This ensures the region that is being asked for
+ exists.
+
+ (WebCore::RenderFlowThread::pageLogicalTopForOffset):
+ (WebCore::RenderFlowThread::pageLogicalWidthForOffset):
+ (WebCore::RenderFlowThread::pageLogicalHeightForOffset):
+ (WebCore::RenderFlowThread::pageRemainingLogicalHeightForOffset):
+ These functions are no longer const, since the act of asking for
+ pagination offsets can cause us to generate new regions.
+
+ (WebCore::RenderFlowThread::mapFromFlowToRegion):
+ Modified to turn auto-generation off, since this is not really
+ a "layout-time" function.
+
+ (WebCore::RenderFlowThread::logicalWidthChangedInRegions):
+ Modified to not assert if a region set needs layout, since that is
+ expected now.
+
+ * rendering/RenderFlowThread.h:
+ Changes to remove const from the methods that can trigger region
+ auto-generation.
+
+ * rendering/RenderMultiColumnBlock.cpp:
+ (WebCore::RenderMultiColumnBlock::styleDidChange):
+ Make sure to propagate style changes down into the regions. I don't know
+ of any correctness bugs around this, but I figured I'd be thorough.
+
+ (WebCore::RenderMultiColumnBlock::checkForPaginationLogicalHeightChange):
+ We no longer build a column set aggressively. We wait for the flow thread
+ to ask us for a region at a particular offset, and only then do we
+ build the set.
+
+ (WebCore::RenderMultiColumnBlock::addChild):
+ Now that we lay out the flow thread as a special excluded child, we don't
+ care about the ordering of it relative to the region children.
+
+ (WebCore::RenderMultiColumnBlock::layoutSpecialExcludedChild):
+ We now lay out the flow thread as a special excluded child (like the legend
+ of a fieldset).
+
+ * rendering/RenderMultiColumnBlock.h:
+ (RenderMultiColumnBlock):
+ Add new overrides like layoutSpecialExcludedChild.
+
+ * rendering/RenderMultiColumnFlowThread.cpp:
+ (WebCore::RenderMultiColumnFlowThread::initialLogicalWidth):
+ Set the flow thread to the initial column width even when no regions exist
+ yet. This way we ensure the width is right even when we don't have any
+ regions yet.
+
+ (WebCore::RenderMultiColumnFlowThread::autoGenerateRegionsToBlockOffset):
+ This method handles autogenerating the new region for a given offset.
+ Right now it's simplistic, since we only have one column set. This method
+ will be enhanced in future patches when we start supporting multiple column
+ sets.
+
+ * rendering/RenderMultiColumnFlowThread.h:
+ (RenderMultiColumnFlowThread):
+ Adding new method declarations like autoGenerateRegionsToBlockOffset.
+
+ * rendering/RenderMultiColumnSet.cpp:
+ (WebCore::RenderMultiColumnSet::updateLogicalWidth):
+ Since regions lay out after flow threads, we don't need to make
+ setFlowThreadPortionRect virtual any longer. We can just get our column set's
+ width correct immediately. This is the same logic, just moved into updateLogicalWidth().
+
+ * rendering/RenderMultiColumnSet.h:
+ Remove setFlowThreadPortionRect override, since the function can just be simple
+ and non-virtual in RenderRegion now.
+
+ * rendering/RenderRegion.cpp:
+ (WebCore::RenderRegion::layoutBlock):
+ Don't ever invalidate region sets in response to our size changing during layout. Since
+ our size is always determined outside of layout now, we don't need to do any of
+ these checks.
+
+ * rendering/RenderRegion.h:
+ (WebCore::RenderRegion::setFlowThreadPortionRect):
+ Changed to be non-virtual now that RenderMultiColumnSet doesn't need to override.
+
+2013-03-04 Alexey Proskuryakov <ap@apple.com>
+
+ Make AsyncFileReader work without ScriptExecutionContext
+ https://bugs.webkit.org/show_bug.cgi?id=111376
+
+ Reviewed by Anders Carlsson.
+
+ * WebCore.xcodeproj/project.pbxproj: Added MainThreadTask.h.
+
+ * dom/ScriptExecutionContext.cpp:
+ * dom/ScriptExecutionContext.h:
+ Removed fileThread(). Creating a thread for every context that acesses files appears
+ wasteful and unnecessary.
+
+ * fileapi/AsyncFileStream.h:
+ * fileapi/AsyncFileStream.cpp:
+ (WebCore::createFileThread): FileThread is now a singleton.
+ (WebCore::fileThread): Ditto.
+ (WebCore::AsyncFileStream::AsyncFileStream):
+ (WebCore::AsyncFileStream::create):
+ (WebCore::didStart):
+ (WebCore::AsyncFileStream::startOnFileThread):
+ (WebCore::AsyncFileStream::stop):
+ (WebCore::derefProxyOnMainThread):
+ (WebCore::AsyncFileStream::stopOnFileThread):
+ (WebCore::didGetSize):
+ (WebCore::AsyncFileStream::getSizeOnFileThread):
+ (WebCore::didOpen):
+ (WebCore::AsyncFileStream::openForReadOnFileThread):
+ (WebCore::AsyncFileStream::openForWriteOnFileThread):
+ (WebCore::didRead):
+ (WebCore::AsyncFileStream::readOnFileThread):
+ (WebCore::didWrite):
+ (WebCore::AsyncFileStream::writeOnFileThread):
+ (WebCore::didTruncate):
+ (WebCore::AsyncFileStream::truncateOnFileThread):
+ Use callOnMainThread() instead of posting messages through a context. We never used
+ other threads, and don't plan to.
+
+ * loader/ResourceLoader.cpp:
+ * loader/ResourceLoader.h:
+ We no longer need this pseudo-client call to create an AsyncFileStream, now that
+ we don't need to get a ScriptExecutionContext somewhere.
+
+ * platform/MainThreadTask.h: Added. This implements callOnMainThread with multiple
+ strongly typed arguments. Closely based on CrossThreadTask.h.
+
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::BlobResourceHandle): Create AsyncFileStream directly.
+
+ * platform/network/ResourceHandleClient.h: Removed createAsyncFileStream().
+
+2013-03-05 Jessie Berlin <jberlin@apple.com>
+
+ Update the localizable strings file.
+
+ Rubber-stamped by Anders Carlsson.
+
+ * English.lproj/Localizable.strings:
+
+2013-03-05 Chris Fleizach <cfleizach@apple.com>
+
+ AX: aria-label does not override text content on iOS
+ https://bugs.webkit.org/show_bug.cgi?id=111222
+
+ Reviewed by David Kilzer.
+
+ Make iOS use the same text alternative computation that Mac is using. The main difference
+ is that description and title need to be concatenated, because iOS doesn't have two attributes
+ to return those values.
+
+ Test: platform/iphone-simulator/accessibility/aria-label-with-internal-text.html
+
+ * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
+ (-[WebAccessibilityObjectWrapper stringValueShouldBeUsedInLabel]):
+ (-[WebAccessibilityObjectWrapper accessibilityLabel]):
+ (-[WebAccessibilityObjectWrapper accessibilityHint]):
+ * accessibility/mac/WebAccessibilityObjectWrapperBase.h:
+
+2013-03-05 David Kilzer <ddkilzer@apple.com>
+
+ BUILD FIX (r144698): Only enable SPEECH_SYNTHESIS for Mac
+ <http://webkit.org/b/106742>
+
+ Fixes the following build failures:
+
+ Undefined symbols for architecture i386:
+ "__ZTVN7WebCore25PlatformSpeechSynthesizerE", referenced from:
+ __ZN7WebCore25PlatformSpeechSynthesizerC2EPNS_31PlatformSpeechSynthesizerClientE in PlatformSpeechSynthesizer.o
+ NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
+ "__ZN7WebCore25PlatformSpeechSynthesizer19initializeVoiceListEv", referenced from:
+ __ZN7WebCore25PlatformSpeechSynthesizerC2EPNS_31PlatformSpeechSynthesizerClientE in PlatformSpeechSynthesizer.o
+ ld: symbol(s) not found for architecture i386
+
+ * Configurations/FeatureDefines.xcconfig:
+ - Only set ENABLE_SPEECH_SYNTHESIS for the macosx platform.
+
+2013-03-05 Dmitry Zvorygin <zvorygin@chromium.org>
+
+ Web Inspector: registered new MIME type application/font-woff for WOFF fonts.
+ https://bugs.webkit.org/show_bug.cgi?id=111418
+
+ The WOFF MIME Type was formally registered as application/font-woff (FINALLY):
+ http://www.iana.org/assignments/media-types/application/font-woff
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/NetworkManager.js:
+ (WebInspector.NetworkManager):
+ (WebInspector.NetworkDispatcher.prototype._updateNetworkRequestWithResponse):
+
+2013-03-05 Julien Chaffraix <jchaffraix@webkit.org>
+
+ [CSS Grid Layout] Add parsing for grid-{end|after}
+ https://bugs.webkit.org/show_bug.cgi?id=111372
+
+ Reviewed by Tony Chang.
+
+ Test: fast/css-grid-layout/grid-item-end-after-get-set.html
+
+ This change adds the proper support for grid-{end|after}. It doesn't update
+ grid-{row|column} to be a shorthand for both grid-{before|start} and grid-{after|end}
+ though.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ Added the new properties to our known properties. Also added
+ support for getComputedStyle.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ Added parsing for the new properties.
+
+ * css/CSSProperty.cpp:
+ (WebCore::CSSProperty::isInheritedProperty):
+ The new properties are not inherited.
+
+ * css/CSSPropertyNames.in:
+ Added the new properties.
+
+ * css/StyleResolver.cpp:
+ (WebCore::StyleResolver::applyProperty):
+ Added code to handle applying them to our style.
+
+ * rendering/style/RenderStyle.h:
+ * rendering/style/StyleGridItemData.cpp:
+ (WebCore::StyleGridItemData::StyleGridItemData):
+ * rendering/style/StyleGridItemData.h:
+ (WebCore::StyleGridItemData::operator==):
+ (StyleGridItemData):
+ Updated our representation to store the new properties.
+
+2013-03-05 Andrey Kosyakov <caseq@chromium.org>
+
+ Unreviewed follow-up to r144756, fix broken inspector-less build.
+
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::willWriteHTML):
+
+2013-03-05 Mark Lam <mark.lam@apple.com>
+
+ Improve robustness of WebSQL quota management.
+ https://bugs.webkit.org/show_bug.cgi?id=110600.
+
+ Reviewed by Geoffrey Garen.
+
+ 1. Introduced the OriginLock for synchronizing write access to the
+ database origin directory. This allows us to more accurately
+ compute the disk usage.
+
+ The OriginLock uses a mutex to provide mutual exclusion between
+ threads and a file lock for mutual exclusion between processes.
+ The file lock part is conditional on USE(FILE_LOCK).
+
+ The mutex mutual exclusion also serves to ensure that only 1 thread
+ can write to a sqlite database at one time.
+
+ 2. Change the SQLTransactionCoordinator to only allow one write
+ transaction to an origin instead of one write transaction per
+ database. This is needed in order to accurately compute the
+ disk usage. It is also necessary so that the OriginLock does not
+ deadlock itself (as would be the case if concurrent write transactions
+ to different databases in the same origin are allowed).
+
+ 3. Fix DatabaseTracker::getMaxSizeForDatabase() to check for when
+ disk usage may exceed the quota, and ensure that we will return
+ an appropriate max database size.
+
+ Disk usage can exceed the usage if it is already near the quota limit
+ but have not exceeded it yet. If a new database is opened in that
+ origin, it may bump the usage above the quota, but should not
+ continually repeat this. Subsequent attempts to open a database
+ will find that the quota is already exhausted and fail.
+
+ There is still a race condition pertaining to the tracker database
+ getting out of sync that may still enable runaway growth in the
+ database sizes. That issue only manifest in a multi-process
+ environment, and will be fixed in another changeset.
+
+ 4. Fixed a bug in SQLStatement to check if the errorCallback exists
+ before invoking it.
+
+ No new layout tests. A quota-test.html was attached to bugzilla for manual
+ testing of multi-tab concurrent consumption of storage resource, and also
+ to test handling situations when the user deletes the database files while
+ the script is still using the database.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * Modules/webdatabase/DatabaseTracker.cpp:
+ (WebCore::DatabaseTracker::getMaxSizeForDatabase):
+ (WebCore::DatabaseTracker::originLockFor):
+ (WebCore::DatabaseTracker::deleteOriginLockFor):
+ (WebCore::DatabaseTracker::deleteOrigin):
+ * Modules/webdatabase/DatabaseTracker.h:
+ * Modules/webdatabase/OriginLock.cpp: Added.
+ (WebCore::OriginLock::lockFileNameForPath):
+ (WebCore::OriginLock::OriginLock):
+ (WebCore::OriginLock::~OriginLock):
+ (WebCore::OriginLock::lock):
+ (WebCore::OriginLock::unlock):
+ * Modules/webdatabase/OriginLock.h: Added.
+ * Modules/webdatabase/SQLStatement.cpp:
+ (WebCore::SQLStatement::performCallback):
+ * Modules/webdatabase/SQLTransactionBackend.cpp:
+ (WebCore::SQLTransactionBackend::doCleanup):
+ (WebCore::SQLTransactionBackend::computeNextStateAndCleanupIfNeeded):
+ (WebCore::SQLTransactionBackend::openTransactionAndPreflight):
+ (WebCore::SQLTransactionBackend::postflightAndCommit):
+ (WebCore::SQLTransactionBackend::cleanupAfterTransactionErrorCallback):
+ (WebCore::SQLTransactionBackend::acquireOriginLock):
+ (WebCore::SQLTransactionBackend::releaseOriginLockIfNeeded):
+ * Modules/webdatabase/SQLTransactionBackend.h:
+ (SQLTransactionBackend):
+ * Modules/webdatabase/SQLTransactionCoordinator.cpp:
+ (WebCore::getDatabaseIdentifier):
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.vcxproj/WebCore.vcxproj:
+ * WebCore.vcxproj/WebCore.vcxproj.filters:
+ * WebCore.xcodeproj/project.pbxproj:
+ * config.h:
+ * platform/FileSystem.h:
+ * platform/posix/FileSystemPOSIX.cpp:
+ (WebCore::lockFile):
+ (WebCore::unlockFile):
+
+2013-03-05 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: move PopoverContentHelper from TimelinePresentationModel.js to Popover.js.
+ https://bugs.webkit.org/show_bug.cgi?id=111431
+
+ Reviewed by Yury Semikhatsky.
+
+ class WebInspector.TimelinePresentationModel.PopoverContentHelper was renamed to WebInspector.PopoverContentHelper.
+ Style names were changed accordingly.
+
+ * inspector/front-end/Popover.js:
+ (WebInspector.PopoverContentHelper):
+ (WebInspector.PopoverContentHelper.prototype.contentTable):
+ (WebInspector.PopoverContentHelper.prototype._createCell):
+ (WebInspector.PopoverContentHelper.prototype.appendTextRow):
+ (WebInspector.PopoverContentHelper.prototype.appendElementRow):
+ (WebInspector.PopoverContentHelper.prototype.appendStackTrace):
+ * inspector/front-end/TimelinePresentationModel.js:
+ (WebInspector.TimelinePresentationModel.prototype.generateMainThreadBarPopupContent):
+ (WebInspector.TimelinePresentationModel.Record.prototype._generatePopupContentWithImagePreview):
+ (WebInspector.TimelinePresentationModel.generatePopupContentForFrame):
+ (WebInspector.TimelinePresentationModel.generatePopupContentForFrameStatistics):
+ * inspector/front-end/popover.css:
+ (.popover-details):
+ (.popover-function-name):
+ (.popover-stacktrace-title):
+ (.popover-details-row-title):
+ (.popover-details-row-data):
+ (.popover-details-title):
+ * inspector/front-end/timelinePanel.css:
+
+2013-03-05 Yury Semikhatsky <yurys@chromium.org>
+
+ Web Inspector: remove "Live native memory chart" experiment
+ https://bugs.webkit.org/show_bug.cgi?id=111432
+
+ Reviewed by Alexander Pavlov.
+
+ Removed support for live native memory chart.
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/NativeMemorySnapshotView.js:
+ * inspector/front-end/ProfileLauncherView.js:
+ (WebInspector.ProfileLauncherView):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel):
+ * inspector/front-end/Settings.js:
+ (WebInspector.ExperimentsSettings):
+ * inspector/front-end/nativeMemoryProfiler.css:
+
+2013-03-05 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: remove length parameter from Parse HTML timeline event
+ https://bugs.webkit.org/show_bug.cgi?id=111421
+
+ Reviewed by Yury Semikhatsky.
+
+ - remove length parameter in all instrumentation methods used to emit ParseHTML timeline event;
+ - drive-by style fixes.
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::didReceiveParsedChunkFromBackgroundParser):
+ (WebCore::HTMLDocumentParser::pumpPendingSpeculations):
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore):
+ (WebCore::InspectorInstrumentation::willWriteHTMLImpl):
+ (WebCore::InspectorInstrumentation::didWriteHTMLImpl):
+ * inspector/InspectorInstrumentation.h:
+ (InspectorInstrumentation):
+ (WebCore::InspectorInstrumentation::willWriteHTML):
+ (WebCore::InspectorInstrumentation::didWriteHTML):
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::willWriteHTML):
+ (WebCore::InspectorTimelineAgent::didWriteHTML):
+ * inspector/InspectorTimelineAgent.h:
+ (InspectorTimelineAgent):
+ * inspector/TimelineRecordFactory.cpp:
+ (WebCore::TimelineRecordFactory::createParseHTMLData):
+ * inspector/TimelineRecordFactory.h:
+ (TimelineRecordFactory):
+
+2013-03-05 Alexei Filippov <alph@chromium.org>
+
+ Web Inspector: allow each profiler panel to have own landing page
+ https://bugs.webkit.org/show_bug.cgi?id=111298
+
+ Reviewed by Yury Semikhatsky.
+
+ Refactor profiler landing page to allow different profiler panels to have own landing pages.
+ - MultiProfileLauncherView is inherited from ProfileLauncherView
+ - Native memory distribution profiler has got a custom page.
+
+ No new tests: code refactoring.
+
+ * inspector/front-end/HeapSnapshotView.js:
+ (WebInspector.HeapSnapshotView.prototype.get profile):
+ (WebInspector.HeapSnapshotView.prototype.get baseProfile):
+ (WebInspector.HeapSnapshotView.prototype._profiles):
+ * inspector/front-end/NativeMemorySnapshotView.js:
+ * inspector/front-end/ProfileLauncherView.js:
+ (WebInspector.ProfileLauncherView):
+ (WebInspector.ProfileLauncherView.prototype.addProfileType):
+ (WebInspector.ProfileLauncherView.prototype._controlButtonClicked):
+ (WebInspector.ProfileLauncherView.prototype._updateControls):
+ (WebInspector.ProfileLauncherView.prototype.profileStarted):
+ (WebInspector.ProfileLauncherView.prototype.profileFinished):
+ (WebInspector.MultiProfileLauncherView):
+ (WebInspector.MultiProfileLauncherView.prototype.addProfileType):
+ (WebInspector.MultiProfileLauncherView.prototype._profileTypeChanged):
+ (WebInspector.NativeProfileLauncherView):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel):
+ (WebInspector.ProfilesPanel.prototype._createLauncherView):
+ (WebInspector.CPUProfilerPanel):
+ (WebInspector.CSSSelectorProfilerPanel):
+ (WebInspector.HeapProfilerPanel):
+ (WebInspector.CanvasProfilerPanel):
+ (WebInspector.MemoryChartProfilerPanel):
+ (WebInspector.MemoryChartProfilerPanel.prototype._createLauncherView):
+ (WebInspector.NativeMemoryProfilerPanel):
+ * inspector/front-end/profilesPanel.css:
+ (.panel-enabler-view.profile-launcher-view button:not(.status-bar-item)):
+
+2013-03-05 Eugene Klyuchnikov <eustas@chromium.org>
+
+ Web Inspector: Clarify some StylesSidebarPanel and CSSMetadata JSDocs.
+ https://bugs.webkit.org/show_bug.cgi?id=111427
+
+ Reviewed by Alexander Pavlov.
+
+ Goal: reflect in JSDoc that non-null array is passed to completionsReady callback.
+
+ * inspector/front-end/CSSMetadata.js:
+ Added JSDocs, avoided possible NPEs.
+ * inspector/front-end/StylesSidebarPane.js:
+ Fixed JSDocs, removed unused assignment.
+
+2013-03-05 David Kilzer <ddkilzer@apple.com>
+
+ BUILD FIX (r144727): Change type of columnRange and rowRange to pair<unsigned, unsigned>
+ <http://webkit.org/b/110050>
+
+ Fixes the following build failures:
+
+ Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:741:30: error: non-const lvalue reference to type 'pair<unsigned int, unsigned int>' cannot bind to a value of unrelated type 'pair<int, int>'
+ tableCell->rowIndexRange(rowRange);
+ ^~~~~~~~
+ In file included from Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:33:
+ Source/WebCore/accessibility/AccessibilityTableCell.h:47:58: note: passing argument to parameter 'rowRange' here
+ virtual void rowIndexRange(pair<unsigned, unsigned>& rowRange);
+ ^
+ Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:742:33: error: non-const lvalue reference to type 'pair<unsigned int, unsigned int>' cannot bind to a value of unrelated type 'pair<int, int>'
+ tableCell->columnIndexRange(columnRange);
+ ^~~~~~~~~~~
+ In file included from Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:33:
+ Source/WebCore/accessibility/AccessibilityTableCell.h:49:61: note: passing argument to parameter 'columnRange' here
+ virtual void columnIndexRange(pair<unsigned, unsigned>& columnRange);
+ ^
+ Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:804:30: error: non-const lvalue reference to type 'pair<unsigned int, unsigned int>' cannot bind to a value of unrelated type 'pair<int, int>'
+ tableCell->rowIndexRange(rowRange);
+ ^~~~~~~~
+ In file included from Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:33:
+ Source/WebCore/accessibility/AccessibilityTableCell.h:47:58: note: passing argument to parameter 'rowRange' here
+ virtual void rowIndexRange(pair<unsigned, unsigned>& rowRange);
+ ^
+ Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:818:33: error: non-const lvalue reference to type 'pair<unsigned int, unsigned int>' cannot bind to a value of unrelated type 'pair<int, int>'
+ tableCell->columnIndexRange(columnRange);
+ ^~~~~~~~~~~
+ In file included from Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:33:
+ Source/WebCore/accessibility/AccessibilityTableCell.h:49:61: note: passing argument to parameter 'columnRange' here
+ virtual void columnIndexRange(pair<unsigned, unsigned>& columnRange);
+ ^
+ 4 errors generated.
+
+ * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
+ (-[WebAccessibilityObjectWrapper accessibilityHeaderElements]):
+ (-[WebAccessibilityObjectWrapper accessibilityRowRange]):
+ (-[WebAccessibilityObjectWrapper accessibilityColumnRange]):
+
+2013-03-04 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: [refactoring] set frame identifiers in timeline records early, do not keep them in event stack
+ https://bugs.webkit.org/show_bug.cgi?id=111345
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::pushGCEventRecords):
+ (WebCore::InspectorTimelineAgent::addRecordToTimeline):
+ (WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
+ (WebCore::InspectorTimelineAgent::setFrameIdentifier):
+ (WebCore):
+ (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
+ (WebCore::InspectorTimelineAgent::appendRecord):
+ (WebCore::InspectorTimelineAgent::pushCurrentRecord):
+ (WebCore::InspectorTimelineAgent::commitFrameRecord):
+ * inspector/InspectorTimelineAgent.h:
+ (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
+ (TimelineRecordEntry):
+ (InspectorTimelineAgent):
+
+2013-03-05 Tommy Widenflycht <tommyw@google.com>
+
+ MediaStream API: Add the getStreamById method on RTCPeerConnection
+ https://bugs.webkit.org/show_bug.cgi?id=111311
+
+ Reviewed by Adam Barth.
+
+ Adding the missing method on RTCPeerConnection defined here:
+ http://dev.w3.org/2011/webrtc/editor/webrtc.html#widl-RTCPeerConnection-getStreamById-MediaStream-DOMString-streamId
+
+ Existing tests have been extended to cover patch.
+
+ * Modules/mediastream/RTCPeerConnection.cpp:
+ (WebCore::RTCPeerConnection::getStreamById):
+ (WebCore):
+ * Modules/mediastream/RTCPeerConnection.h:
+ (RTCPeerConnection):
+ * Modules/mediastream/RTCPeerConnection.idl:
+ * platform/chromium/support/WebMediaStream.cpp:
+ (WebKit::WebMediaStream::initialize):
+ (WebKit):
+ * platform/mediastream/MediaStreamSource.cpp:
+ (WebCore::MediaStreamSource::setReadyState):
+
+2013-03-05 Antoine Quint <graouts@apple.com>
+
+ Web Inspector: allow retrieval of composited layers in a given DOM subtree
+ https://bugs.webkit.org/show_bug.cgi?id=111312
+
+ Introduce the LayerTreeAgent.layersForNode(node) method allowing the front-end
+ to gather all composited layers associated with nodes in the subtree of which
+ the provided node is the root.
+
+ In order to gather the layers in the subtree, we first traverse the node's
+ renderer's RenderObject hierarchy and whenever we encounter a RenderObject
+ that has a RenderLayer, we then traverse that renderLayer's RenderLayer
+ hierarchy. This allows for a quick path through the relevant objects we're
+ gathering.
+
+ Layers gathered will push the node to which they're associated, allowing a
+ nodeId for this layer to be listed in the Layer object sent to the front-end.
+ It is crucial to be able to provide a nodeId as well as a layerId for a Layer
+ object in order to be able to correctly assess mutations in the layer tree.
+ For instance, it is expected that a node's layer be replaced by a new layer
+ to represent a slightly different rendering of its content, but the front-end
+ should be able to represent this layer as an object for which only certain
+ attributes have changed (like the "paintCount" property).
+
+ Layer objects also indicate whether they're associated to a node hosted in a
+ shadow tree (the optional "isInShadowTree" property) in order for the front-end
+ to be able to only show this layer if the option to show nodes hosted in shadow
+ tree is enabled.
+
+ Finally, since we're only gathering composited layers, we're removing the
+ "isLayerComposited" property and removing the optional flag on the "paintCount",
+ "memory" and "compositedBounds" properties.
+
+ Reviewed by Simon Fraser.
+
+ Test: inspector-protocol/layers/layers-for-node.html
+
+ * inspector/Inspector.json:
+ * inspector/InspectorLayerTreeAgent.cpp:
+ (WebCore::InspectorLayerTreeAgent::layersForNode):
+ (WebCore):
+ (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderObjectHierarchy):
+ (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderLayerHierarchy):
+ (WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
+ (WebCore::InspectorLayerTreeAgent::idForNode):
+ * inspector/InspectorLayerTreeAgent.h:
+ (InspectorLayerTreeAgent):
+
+2013-03-04 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: use timestamps consistent with rest of Timeline in WebSocket events.
+ https://bugs.webkit.org/show_bug.cgi?id=111344
+
+ - create web socket related records in a manner consistent with the rest of timeline.
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::didCreateWebSocket):
+ (WebCore::InspectorTimelineAgent::willSendWebSocketHandshakeRequest):
+ (WebCore::InspectorTimelineAgent::didReceiveWebSocketHandshakeResponse):
+ (WebCore::InspectorTimelineAgent::didDestroyWebSocket):
+ * inspector/InspectorTimelineAgent.h:
+ (InspectorTimelineAgent):
+
+2013-03-05 Andrei Bucur <abucur@adobe.com>
+
+ [CSS Regions] Crash when MathML used in CSS Regions
+ https://bugs.webkit.org/show_bug.cgi?id=110686
+
+ Reviewed by David Hyatt.
+
+ The MathML blocks trigger a children layout when computing the preferred widths. This happens to determine the preferred
+ logical heights of the children. When the layout reaches the line boxes computation the preferred width of the containing block
+ is requested. Because it wasn't computed, the layout of the children is started again to determine the preferred logical heights.
+ This causes an infinite recursion and triggers a stack overflow.
+
+ The patch introduces a new RAII utility class that disables fragmentation when the constructor is called and restores it
+ on the destructor. This class is used when computing the preferred height for the children of a MathML block.
+
+ Test: fast/regions/mathml-crash.html
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::setFlowThreadStateIncludingDescendants): Do not cross RenderFlowThread boundaries when updating the flow thread
+ state flag. The innermost flow threads need to manage their descendants flag values.
+ * rendering/RenderView.cpp:
+ (WebCore::FragmentationDisabler::FragmentationDisabler):
+ (WebCore):
+ (WebCore::FragmentationDisabler::~FragmentationDisabler):
+ * rendering/RenderView.h:
+ (FragmentationDisabler):
+ (WebCore):
+ * rendering/mathml/RenderMathMLBlock.cpp:
+ (WebCore::RenderMathMLBlock::computeChildrenPreferredLogicalHeights):
+
+2013-03-05 Mike West <mkwst@chromium.org>
+
+ Cleanup: Move HitTestLocation and HitTestResult into separate files.
+ https://bugs.webkit.org/show_bug.cgi?id=111294
+
+ Reviewed by Allan Sandfeld Jensen.
+
+ HitTestLocation and HitTestResult currently both live in
+ HitTestResult.h. That makes things more difficult to understand than
+ they should be, and violates the one-class-one-file principle that
+ WebKit generally follows. Happily, it's fairly trivial to fix.
+
+ This should have no visible change; it's strictly an internal
+ refactoring. It doesn't even touch any implementation code: we're
+ just moving bits from one place to another.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ Hey, look: a new file! Let's add it to six different build systems! :)
+ * rendering/HitTestLocation.cpp: Added.
+ (WebCore):
+ (WebCore::HitTestLocation::HitTestLocation):
+ (WebCore::HitTestLocation::~HitTestLocation):
+ (WebCore::HitTestLocation::operator=):
+ (WebCore::HitTestLocation::move):
+ (WebCore::HitTestLocation::intersectsRect):
+ (WebCore::HitTestLocation::intersects):
+ (WebCore::HitTestLocation::rectForPoint):
+ * rendering/HitTestLocation.h: Added.
+ (WebCore):
+ (HitTestLocation):
+ (WebCore::HitTestLocation::point):
+ (WebCore::HitTestLocation::roundedPoint):
+ (WebCore::HitTestLocation::region):
+ (WebCore::HitTestLocation::isRectBasedTest):
+ (WebCore::HitTestLocation::isRectilinear):
+ (WebCore::HitTestLocation::boundingBox):
+ (WebCore::HitTestLocation::topPadding):
+ (WebCore::HitTestLocation::rightPadding):
+ (WebCore::HitTestLocation::bottomPadding):
+ (WebCore::HitTestLocation::leftPadding):
+ (WebCore::HitTestLocation::transformedPoint):
+ (WebCore::HitTestLocation::transformedRect):
+ * rendering/HitTestResult.cpp:
+ * rendering/HitTestResult.h:
+ Move all this code from HitTestResult.* to HitTestLocation.*.
+ * rendering/RenderBlock.cpp:
+ Include HitTestLocation.h.
+
+2013-03-05 Jochen Eisinger <jochen@chromium.org>
+
+ Refactor UserGestureIndicator::Token to be a top-level class
+ https://bugs.webkit.org/show_bug.cgi?id=111412
+
+ Reviewed by Nico Weber.
+
+ This will allow for forward declaring the class in a public WebKit
+ API header. The goal is to enable the embedder to hold on to a
+ UserGestureToken.
+
+ * dom/UserGestureIndicator.cpp:
+ (WebCore::UserGestureIndicator::UserGestureIndicator):
+ (WebCore::UserGestureIndicator::currentToken):
+ * dom/UserGestureIndicator.h:
+ (UserGestureToken):
+ (WebCore::UserGestureToken::~UserGestureToken):
+ (WebCore):
+ (UserGestureIndicator):
+ * page/DOMTimer.h:
+ (DOMTimer):
+ * page/EventHandler.h:
+
+2013-03-05 Mike West <mkwst@chromium.org>
+
+ Remove redundant code in Document::updateHoverActiveState.
+ https://bugs.webkit.org/show_bug.cgi?id=111303
+
+ Reviewed by Darin Adler.
+
+ Document::updateHoverActiveState currently looks for touchrelease events
+ and explictly clears out the hover state for all nodes between the
+ currently hovered node and the top of the hover chain. This is actually
+ redundant with the logic in the rest of the function; we can simplify by
+ setting the Element* we're working with to 0, which causes the later
+ loops to do the necessary work.
+
+ There should be no web-visible effect from this change; it should simply
+ make this function less complex.
+
+ Extracted from Allan Sandfeld Jensen's original patch to wkbug.com/98168
+
+ * dom/Document.cpp:
+ (WebCore::Document::updateHoverActiveState):
+ Set innerElementInDocument to 0 rather than walking the hover chain
+ and clearing it when we see a touchrelease event. The rest of the
+ code in this function will have the same effect.
+
+2013-03-05 Koji Hara <kojih@chromium.org>
+
+ [V8] Remove unused custom indexedPropertyGetter
+ https://bugs.webkit.org/show_bug.cgi?id=111409
+
+ Reviewed by Kentaro Hara.
+
+ Remove unused custom indexedPropertyGetter.
+ There are 9 custom indexedPropertyGetter, including an unused one(NamedNodeMap).
+ This commit assures all existing custom indexedPropertyGetter(for V8) are used.
+
+ No new tests. Simple refactoring.
+
+ * bindings/v8/custom/V8NamedNodeMapCustom.cpp: Remove indexedPropertyGetter
+
+2013-03-05 Hajime Morrita <morrita@google.com>
+
+ ShadowRoot needs guardRef() and guardDeref()
+ https://bugs.webkit.org/show_bug.cgi?id=109777
+
+ Reviewed by Dimitri Glazkov.
+
+ This change moves m_guardRefCount from Document to TreeScope,
+ which allows ShadowRoot to be guarded by guardRef() mechanism as
+ Document. After r137524, Node referes TreeScope instead of
+ Document. This is natural consequence of the change: It no longer
+ makes sense to guardRef() Document pointer from Node.
+
+ Detail:
+
+ - Document::m_guardRefCount and related funcdtions are moved to TreeScope
+ - Document::removedLastRef is factored out into TreeScope::removedLastRefToScope(),
+ TreeScope::dispose() and Docuent::dispose(). ShadowRoot also got its own dispose() implementation.
+ - Moved guardRef() and guardDeref() calls to TreeScope and Node.
+ Note that there are two "guarded" TreeScope references. One is
+ Node::m_treeScope and another is TreeScope::m_parentTreeScope.
+ The guarded-ref management is now encapsulated in these two classes.
+
+ No new tests. Covered by existing tests.
+
+ * WebCore.exp.in:
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::~Document):
+ (WebCore::Document::dispose): Extracted from removedLastRef()
+ * dom/Document.h:
+ (WebCore::Node::isTreeScope):
+ (WebCore::Node::Node):
+ * dom/DocumentFragment.cpp:
+ (WebCore::DocumentFragment::DocumentFragment): Remove ASSERT() and move it to ...
+ (WebCore::DocumentFragment::create): ... here, to allow NULL document from ShadowRoot.
+ * dom/Node.cpp:
+ (WebCore::Node::~Node):
+ (WebCore::Node::removedLastRef):
+ * dom/Node.h:
+ (WebCore::Node::setTreeScope):
+ * dom/Element.cpp:
+ (WebCore::Element::ensureAttr): This has been wrong and is fixed in this revision since the incorrectness is unveiled by this change.
+ * dom/ShadowRoot.cpp:
+ (WebCore::ShadowRoot::ShadowRoot): Passed NULL document to superclass. This aligns what Document is doing.
+ (WebCore::ShadowRoot::dispose): Added.
+ * dom/ShadowRoot.h:
+ (ShadowRoot):
+ * dom/TreeScope.cpp:
+ (SameSizeAsTreeScope):
+ (WebCore::TreeScope::TreeScope):
+ (WebCore::TreeScope::~TreeScope):
+ (WebCore::TreeScope::dispose): Added.
+ (WebCore::TreeScope::setParentTreeScope):
+ (WebCore::TreeScope::deletionHasBegun):
+ (WebCore::TreeScope::beginDeletion):
+ (WebCore::TreeScope::refCount): Added.
+ * dom/TreeScope.h: Turned m_rootNode to Node* from ContainerNode* for Node::isTreeScope to be inlined.
+ (WebCore::TreeScope::guardRef): Pulled up from Document.
+ (WebCore::TreeScope::guardDeref): Ditto.
+ (WebCore::TreeScope::hasGuardRefCount): Added to hide m_guardRefCount.
+ (WebCore::TreeScope::deletionHasBegun): Added.
+ (WebCore::TreeScope::beginDeletion): Added.
+ (WebCore::TreeScope::removedLastRefToScope): Pulled up from Document.
+ * dom/TreeScopeAdopter.cpp:
+ (WebCore::TreeScopeAdopter::moveTreeToNewScope):
+ (WebCore::TreeScopeAdopter::moveNodeToNewDocument):
+
+2013-03-04 Uday Kiran <udaykiran@motorola.com>
+
+ getPropertyValue for -webkit-text-stroke returns null, should compute the shorthand value
+ https://bugs.webkit.org/show_bug.cgi?id=111018
+
+ Reviewed by Alexander Pavlov.
+
+ Test: fast/css/getPropertyValue-webkit-text-stroke.html
+
+ * css/StylePropertySet.cpp:
+ (WebCore::StylePropertySet::getPropertyValue):
+
+2013-03-04 Uday Kiran <udaykiran@motorola.com>
+
+ getPropertyValue for -webkit-columns returns null, should compute the shorthand value
+ https://bugs.webkit.org/show_bug.cgi?id=111011
+
+ Reviewed by Alexander Pavlov.
+
+ Test: fast/css/getPropertyValue-columns.html
+
+ * css/StylePropertySet.cpp:
+ (WebCore::StylePropertySet::getPropertyValue):
+
+2013-03-04 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Do not accumulate file system files, add them to workspace immediately
+ https://bugs.webkit.org/show_bug.cgi?id=111325
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/FileSystemProjectDelegate.js:
+ (WebInspector.FileSystemProjectDelegate.prototype.populate.fileLoaded):
+ (WebInspector.FileSystemProjectDelegate.prototype.populate):
+ * inspector/front-end/IsolatedFileSystem.js:
+ (WebInspector.IsolatedFileSystem.prototype.innerCallback):
+ (WebInspector.IsolatedFileSystem.prototype.requestFilesRecursive):
+
+2013-03-04 Kinuko Yasuda <kinuko@chromium.org>
+
+ Unreviewed Windows build fix attempt.
+
+ floor method is ambigious so explicitly specify the type.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::validateCompressedTexFuncData):
+
+2013-03-04 Chris Fleizach <cfleizach@apple.com>
+
+ AX: cellForColumnAndRow fails for tables with hidden table cells
+ https://bugs.webkit.org/show_bug.cgi?id=110050
+
+ Reviewed by Tim Horton.
+
+ If a table had hidden cells, then accessibility code was being confused in a few ways.
+ 1) The cellForColumnAndRow method would return the wrong information since that was
+ using the RenderTableSection to retrieve a cell, which did not have the same data as the AXTable
+ 2) The way we were adding children made it impossible to determine column and row range because we
+ would skip rows that had hidden children
+ 3) AccessibilityARIAGrid and AccessibilityTable were using different methods for cellForColumnAndRow
+
+ The fix does a few things to make things right:
+ 1) Always add an accessibility row, even if there are no visible cells in that row.
+ 2) Have one method for AXTable and AXARIAGrid for cellForColumnAndRow.
+ 3) Change cellForColumnAndRow to query the accessibility children rather than the RenderTableSection in determining the row, col info.
+ 4) cellForColumnAndRow should use unsigned values instead of int values.
+
+ Test: accessibility/table-with-hidden-head-section.html
+
+ * accessibility/AccessibilityARIAGrid.cpp:
+ (WebCore):
+ * accessibility/AccessibilityARIAGrid.h:
+ (AccessibilityARIAGrid):
+ * accessibility/AccessibilityARIAGridCell.cpp:
+ (WebCore::AccessibilityARIAGridCell::rowIndexRange):
+ (WebCore::AccessibilityARIAGridCell::columnIndexRange):
+ * accessibility/AccessibilityARIAGridCell.h:
+ (AccessibilityARIAGridCell):
+ * accessibility/AccessibilityTable.cpp:
+ (WebCore::AccessibilityTable::addChildren):
+ (WebCore::AccessibilityTable::cellForColumnAndRow):
+ * accessibility/AccessibilityTable.h:
+ (WebCore):
+ (AccessibilityTable):
+ * accessibility/AccessibilityTableCell.cpp:
+ (WebCore::AccessibilityTableCell::rowIndexRange):
+ (WebCore::AccessibilityTableCell::columnIndexRange):
+ * accessibility/AccessibilityTableCell.h:
+ (AccessibilityTableCell):
+ * accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
+ (webkitAccessibleTableGetColumnAtIndex):
+ (webkitAccessibleTableGetRowAtIndex):
+ (webkitAccessibleTableGetColumnExtentAt):
+ (webkitAccessibleTableGetRowExtentAt):
+ (webkitAccessibleTableGetColumnHeader):
+ (webkitAccessibleTableGetRowHeader):
+ * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
+ (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
+ * rendering/RenderTableSection.h:
+ (RenderTableSection):
+ (WebCore::RenderTableSection::rowRendererAt):
+
+2013-03-04 Arpita Bahuguna <a.bah@samsung.com>
+
+ getAttribute does not behave correctly for mixed-case attributes on HTML elements
+ https://bugs.webkit.org/show_bug.cgi?id=105713
+
+ Reviewed by Andreas Kling.
+
+ getAttribute() and getAttributeNode() APIs do not convert the
+ passed attribute name to lowercase before comparing against the
+ existing attributes.
+ The specification however states that the passed name should
+ be converted to ASCII lowercase before checking for the existence
+ of the given attribute. [www.w3.org/TR/domcore/#dom-element-getattribute]
+
+ Test: fast/dom/Element/getAttribute-case-insensitivity.html
+
+ * dom/Element.h:
+ (WebCore::ElementData::getAttributeItemIndex):
+ getAttributeItemIndex() accepts a bool param 'shouldIgnoreAttributeCase'
+ which specifies whether the attribute's case should be ignored
+ before comparison. But inspite of this param's value we still carry
+ out a case sensitive search.
+ Have modified the same to convert the passed attribute's name to
+ lowercase if 'shouldIgnoreAttributeCase' is true.
+
+2013-03-04 Kunihiko Sakamoto <ksakamoto@chromium.org>
+
+ [Chromium] Add runtime flag for font load events
+ https://bugs.webkit.org/show_bug.cgi?id=111296
+
+ Reviewed by Kent Tamura.
+
+ Add a runtime feature flag for FontLoader interface (disabled by default),
+ and enable ENABLE_FONT_LOAD_EVENTS build flag for chromium.
+
+ * bindings/generic/RuntimeEnabledFeatures.cpp:
+ (WebCore):
+ * bindings/generic/RuntimeEnabledFeatures.h:
+ (RuntimeEnabledFeatures):
+ (WebCore::RuntimeEnabledFeatures::setFontLoadEventsEnabled):
+ (WebCore::RuntimeEnabledFeatures::fontLoadEventsEnabled):
+
+2013-03-04 Brandon Jones <bajones@google.com>
+
+ WEBGL_compressed_texture_atc implementation
+ https://bugs.webkit.org/show_bug.cgi?id=110496
+
+ Reviewed by Kenneth Russell.
+
+ Test: webgl/conformance/extensions/webgl-compressed-texture-atc.html
+
+ Exposes the WEBGL_compressed_texture_atc extension, but is unverified since no desktop hardware supports
+ the format that I am aware of. Should enable mobile ports to expose the format, however.
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSWebGLRenderingContextCustom.cpp:
+ (WebCore::toJS):
+ * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
+ (WebCore::toV8Object):
+ * html/canvas/WebGLCompressedTextureATC.cpp: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
+ (WebCore):
+ (WebCore::WebGLCompressedTextureATC::WebGLCompressedTextureATC):
+ (WebCore::WebGLCompressedTextureATC::~WebGLCompressedTextureATC):
+ (WebCore::WebGLCompressedTextureATC::getName):
+ (WebCore::WebGLCompressedTextureATC::create):
+ (WebCore::WebGLCompressedTextureATC::supported):
+ * html/canvas/WebGLCompressedTextureATC.h: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
+ (WebCore):
+ (WebGLCompressedTextureATC):
+ * html/canvas/WebGLCompressedTextureATC.idl: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
+ * html/canvas/WebGLExtension.h:
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore):
+ (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
+ (WebCore::WebGLRenderingContext::getExtension):
+ (WebCore::WebGLRenderingContext::getSupportedExtensions):
+ (WebCore::WebGLRenderingContext::validateCompressedTexFuncData):
+ * html/canvas/WebGLRenderingContext.h:
+ (WebCore):
+ (WebGLRenderingContext):
+ * platform/graphics/Extensions3D.h:
+
+
+2013-03-04 Eugene Klyuchnikov <eustas@chromium.org>
+
+ Web Inspector: Exceptions when WebInspector run in hosted mode.
+ https://bugs.webkit.org/show_bug.cgi?id=111326
+
+ Reviewed by Pavel Feldman.
+
+ There is bug in commands code generation in InspectorBackend.js
+ As a consequence all protocol enums have wrong names and cause
+ exception when refererenced.
+
+ Currently protocol enums are referenced only from NetworkManager.
+
+ Test: inspector/inspector-backend-commands-generation.html
+
+ * inspector/front-end/InspectorBackend.js:
+ (InspectorBackendClass.prototype.loadFromJSONIfNeeded):
+ Use static method to generate code.
+ (InspectorBackendClass._generateCommands):
+ Extracted from loadFromJSONIfNeeded. Typo fixed.
+
+2013-03-04 Chris Rogers <crogers@google.com>
+
+ Add audio hardware support for multi-channel output by implementing AudioDestinationNode.maxChannelCount
+ https://bugs.webkit.org/show_bug.cgi?id=111385
+
+ Reviewed by James Robinson.
+
+ See specification details for .maxChannelCount:
+ https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#AudioDestinationNode
+
+ * Modules/webaudio/AudioDestinationNode.h:
+ (WebCore::AudioDestinationNode::maxChannelCount):
+ * Modules/webaudio/AudioDestinationNode.idl:
+ * Modules/webaudio/AudioNode.h:
+ Implement .maxChannelCount attribute.
+
+ (AudioNode):
+ * Modules/webaudio/DefaultAudioDestinationNode.h:
+ * Modules/webaudio/DefaultAudioDestinationNode.cpp:
+ (WebCore::DefaultAudioDestinationNode::initialize):
+ (WebCore::DefaultAudioDestinationNode::createDestination):
+ (WebCore::DefaultAudioDestinationNode::enableInput):
+ Call to createDestination() now takes no argument.
+ Instead we maintain a member variable for the input device ID.
+ (WebCore::DefaultAudioDestinationNode::maxChannelCount):
+ (WebCore::DefaultAudioDestinationNode::setChannelCount):
+ Check port-specific hardware support for maxChannelCount(),
+ and allow setting the channel count based on what the hardware
+ supports.
+
+ * platform/audio/AudioDestination.h:
+ (AudioDestination):
+ * platform/audio/chromium/AudioDestinationChromium.cpp:
+ (WebCore::AudioDestination::maxChannelCount):
+ (WebCore::AudioDestinationChromium::render):
+ Call into chromium WebKit API: audioHardwareOutputChannels().
+
+ * platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
+ (WebCore::AudioDestination::maxChannelCount):
+ Add basic implementation for maxChannelCount() only supporting stereo output.
+
+ * platform/audio/mac/AudioDestinationMac.cpp:
+ (WebCore::AudioDestination::maxChannelCount):
+ Add basic implementation for maxChannelCount() only supporting stereo output.
+ Later, the mac port can support more than this with some small improvements to AudioDestinationMac.
+
+2013-03-04 Adam Barth <abarth@webkit.org>
+
+ Background HTML parser can rewind the tokenizer after end-of-file
+ https://bugs.webkit.org/show_bug.cgi?id=111365
+
+ Reviewed by Eric Seidel.
+
+ Prior to this patch, it was possible to call didFailSpeculation after
+ processing the end-of-file token because checkForSpeculationFailure
+ didn't zero out m_tokenizer in some control paths.
+
+ This patch renames checkForSpeculationFailure to validateSpeculations
+ and ensures that it always takes ownership of the main thread's
+ HTMLTokenizer.
+
+ This patch also adds a number of ASSERTs to make sure the parser state
+ machine stays in the correct configuration (e.g., that we don't have a
+ main thread tokenizer while we're supposed to be tokenizing on the
+ background thread).
+
+ Test: fast/parser/document-write-fighting-eof.html
+
+ * html/parser/BackgroundHTMLInputStream.cpp:
+ (WebCore::BackgroundHTMLInputStream::rewindTo):
+ * html/parser/BackgroundHTMLParser.cpp:
+ (WebCore::BackgroundHTMLParser::append):
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::validateSpeculations):
+ (WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
+ (WebCore::HTMLDocumentParser::pumpPendingSpeculations):
+ (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
+ * html/parser/HTMLDocumentParser.h:
+ (HTMLDocumentParser):
+
+2013-03-04 Tim 'mithro' Ansell <mithro@mithis.com>
+
+ Make sure that clearOwnerNode also clears StyleResolver references (via didMutate).
+ https://bugs.webkit.org/show_bug.cgi?id=109446
+
+ Reviewed by Eric Seidel.
+
+ Test: fast/css/stylesheet.innerHTML-calls-didmutate.html
+
+ * css/CSSStyleSheet.h:
+
+2013-03-04 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewd build fix after r144701.
+
+ * platform/EventTracer.cpp:
+ (WebCore::EventTracer::initialize):
+
+2013-03-04 Min Qin <qinmin@chromium.org>
+
+ Fix some style issues in RenderLayerCompositor
+ https://bugs.webkit.org/show_bug.cgi?id=111369
+
+ Reviewed by Simon Fraser.
+
+ Just style fix, no test needed
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::frameViewDidScroll):
+ (WebCore::RenderLayerCompositor::requiresCompositingForPosition):
+
+2013-03-04 Terry Anderson <tdanderson@chromium.org>
+
+ Revert changes to RenderLayer::scrollByRecursively() that were added for gesture-scrolling
+ https://bugs.webkit.org/show_bug.cgi?id=111007
+
+ Reviewed by Simon Fraser.
+
+ Due to http://trac.webkit.org/changeset/144519 landing, the changes made to RenderLayer in
+ http://trac.webkit.org/changeset/142057,
+ http://trac.webkit.org/changeset/140177, and
+ http://trac.webkit.org/changeset/142195
+ are no longer necessary (as RenderLayer::scrollByRecursively() is not used for
+ gesture-scrolling) and should be reverted.
+
+ No change in behavior, so no new tests needed.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::scrollByRecursively):
+ * rendering/RenderLayer.h:
+
+2013-03-04 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewed build fix after r144701.
+
+ * platform/EventTracer.cpp:
+ (WebCore::EventTracer::initialize):
+
+2013-03-04 Christian Biesinger <cbiesinger@chromium.org>
+
+ REGRESSION (r143643): Buttons containing floats render differently
+ https://bugs.webkit.org/show_bug.cgi?id=110933
+
+ Reviewed by Ojan Vafai.
+
+ Test: fast/forms/button-with-float.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
+ Also include new flexbox as a renderer that needs to enclose
+ overhanging floats. Flex boxes establish a block formatting context,
+ so they need to contain floats:
+ http://dev.w3.org/csswg/css3-flexbox/#flex-items
+
+2013-03-04 Chris Fleizach <cfleizach@apple.com>
+
+ Support WebSpeech - Speech Synthesis
+ https://bugs.webkit.org/show_bug.cgi?id=106742
+
+ Build fix.
+
+ * Modules/speech/SpeechSynthesis.cpp:
+
+2013-03-04 Rafael Weinstein <rafaelw@chromium.org>
+
+ Unreviewed, rolling out r144595.
+ http://trac.webkit.org/changeset/144595
+ https://bugs.webkit.org/show_bug.cgi?id=90341
+
+ Causing multiple crashes in fast/dom/Element/* tests (hits
+ assert in Attr.cp:215)
+
+ * dom/Element.cpp:
+ (WebCore::Element::setAttributeNode):
+
+2013-02-26 Kentaro Hara <haraken@chromium.org>
+
+ [chromium] Implement TRACE_EVENT macros for sampling profiling
+ https://bugs.webkit.org/show_bug.cgi?id=110932
+
+ Reviewed by Adam Barth.
+
+ We are implementing TRACE_EVENT macros for sampling profiling.
+ It works in the following mechanism:
+
+ - Chromium defines global state variables for sampling profiling.
+ (i.e. g_trace_state0, g_trace_state1, g_trace_state2 in trace_event.h)
+
+ - WebKit gets the addresses of the global state variables at the
+ initialization step. (i.e. EventTracer::initialize())
+
+ - WebKit updates the global states by using TRACE_EVENT_SAMPLING_STATE()
+ macros every time WebKit changes its state. (e.g. DOM attribute
+ getters/setters/methods)
+
+ - A sampling thread running in Chrome reads the global states
+ periodically and visualizes the profiling results into about://tracing.
+
+ This patch implements (1) a WebKit API to get the addresses of
+ the global states and (2) the TRACE_EVENT_SAMPLING_STATE() macro.
+
+ No tests. The sampling profiler is not enabled in Chrome by default.
+ I manually inserted TRACE_EVENT_SAMPLING_STATE() macros and
+ confirmed that the sampling profiling is working as expected.
+
+ * platform/EventTracer.cpp:
+ (WebCore::EventTracer::initialize):
+ (WebCore::EventTracer::getTraceCategoryEnabledFlag):
+ (WebCore):
+ * platform/EventTracer.h:
+ (WebCore):
+ (EventTracer):
+ * platform/chromium/EventTracerChromium.cpp:
+ (WebCore):
+ (WebCore::EventTracer::initialize):
+ * platform/chromium/TraceEvent.h:
+
+2013-03-04 Chris Fleizach <cfleizach@apple.com>
+
+ Support WebSpeech - Speech Synthesis
+ https://bugs.webkit.org/show_bug.cgi?id=106742
+
+ Reviewed by Simon Fraser.
+
+ Enable speech synthesis for the Mac.
+
+ * Configurations/FeatureDefines.xcconfig:
+
+2013-03-04 Ruslan Abdikeev <aruslan@chromium.org>
+
+ <link rel="apple-touch-icon"> tag is not honored on CNN.com, workflowy.com etc
+ https://bugs.webkit.org/show_bug.cgi?id=109061
+
+ Reviewed by Adam Barth.
+
+ Test: fast/dom/icon-url-list-apple-touch.html
+
+ Added iconTypes parameter to Document::iconURLs().
+ Added Document::shortcutIconURLs() with original semantics of iconURLs().
+ Fixed IconController.cpp to provide iconTypesMask to iconURLs().
+ Renamed iconTypes to iconTypesMask to make the meaning clearer.
+
+ * WebCore.exp.in:
+ * dom/Document.cpp:
+ (WebCore::Document::shortcutIconURLs):
+ (WebCore):
+ (WebCore::Document::iconURLs):
+ * dom/Document.h:
+ (Document):
+ * loader/icon/IconController.cpp:
+ (WebCore::IconController::iconURL):
+ (WebCore::IconController::urlsForTypes):
+ * testing/Internals.cpp:
+ (WebCore::Internals::iconURLs):
+ (WebCore::Internals::shortcutIconURLs):
+ (WebCore):
+ (WebCore::Internals::allIconURLs):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2013-02-27 Jeffrey Pfau <jpfau@apple.com>
+
+ Cache partitioning does not affect iframe MainResources
+ https://bugs.webkit.org/show_bug.cgi?id=111022
+
+ Reviewed by David Kilzer.
+
+ Set the partition of a main resource request if in a subframe.
+
+ Test: http/tests/cache/partitioned-cache-iframe.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadURL):
+
+2013-03-04 Chris Fleizach <cfleizach@apple.com>
+
+ AX: user agent shadow roots for plugins should be 'accessible'
+ https://bugs.webkit.org/show_bug.cgi?id=111339
+
+ Reviewed by Tim Horton.
+
+ If a plugin element uses a user agent shadow element, we should make that shadow element
+ into a button with the title and subtitle put together, and use that as the label. This
+ will probably be the best accessibility experience.
+
+ * html/HTMLPlugInImageElement.cpp:
+ (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
+
+2013-03-04 Alok Priyadarshi <alokp@chromium.org>
+
+ [chromium] Form controls on composited layers are not painted properly
+ https://bugs.webkit.org/show_bug.cgi?id=111366
+
+ Reviewed by James Robinson.
+
+ Set PlatformContextSkia::m_drawingToImageBuffer which is used as a hint to properly blend GDI-painted bitmap.
+
+ * platform/graphics/chromium/OpaqueRectTrackingContentLayerDelegate.cpp:
+ (WebCore::OpaqueRectTrackingContentLayerDelegate::paintContents):
+
+2013-03-04 Simon Fraser <simon.fraser@apple.com>
+
+ Give ViewportConstraints classes copy constructors
+ https://bugs.webkit.org/show_bug.cgi?id=111367
+
+ Reviewed by Beth Dakin.
+
+ Downstream code requires that ViewportConstraints objects have
+ copy constructors, so add them.
+
+ Also clean up some redundant initialization of stack objects
+ in RenderLayerCompositor.
+
+ No behavior change.
+
+ * page/scrolling/ScrollingConstraints.h:
+ (WebCore::ViewportConstraints::ViewportConstraints):
+ (ViewportConstraints):
+ (WebCore::FixedPositionViewportConstraints::FixedPositionViewportConstraints):
+ (FixedPositionViewportConstraints):
+ (WebCore::StickyPositionViewportConstraints::StickyPositionViewportConstraints):
+ (StickyPositionViewportConstraints):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::computeFixedViewportConstraints):
+ (WebCore::RenderLayerCompositor::computeStickyViewportConstraints):
+
+2013-03-04 Roger Fong <roger_fong@apple.com>
+
+ Unreviewed. AppleWin build fix.
+
+ * html/parser/XSSAuditor.cpp:
+ (WebCore::isSemicolonSeparatedAttribute):
+
+2013-03-04 Andreas Kling <akling@apple.com>
+
+ CSSParser: Avoid temporary String when parsing hex colors.
+ <http://webkit.org/b/111341>
+
+ Reviewed by Anders Carlsson.
+
+ Templatize CSSParser::fastParseColor() so we can pass a CSSParserString as the color name.
+ This avoids creating a temporary WTF::String from the parser string.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::fastParseColor):
+ * css/CSSParser.h:
+ * css/CSSParserValues.h:
+ (CSSParserString):
+
+2013-03-04 Julien Chaffraix <jchaffraix@webkit.org>
+
+ [CSS Grid Layout] Add parsing for grid-{start|before}
+ https://bugs.webkit.org/show_bug.cgi?id=110988
+
+ Reviewed by Tony Chang.
+
+ Test: fast/css-grid-layout/grid-item-start-before-get-set.html
+
+ Refactored how we store internally grid-{row|column} to be based on grid-{before|start}.
+ This is required as grid-{row|column} are shorthands for resp. grid-{before|after} and grid-{start|end}
+ in the specification and will also be in the code. That means a lot of methods were renamed to be more
+ aligned with the new design.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSProperty.cpp:
+ (WebCore::CSSProperty::isInheritedProperty):
+ * css/CSSPropertyNames.in:
+ * css/StyleResolver.cpp:
+ (WebCore::StyleResolver::applyProperty):
+ Added the code to parse, apply and get back the new properties. Also
+ some renaming after the internal naming change below.
+
+ * rendering/RenderGrid.cpp:
+ (WebCore::RenderGrid::maximumIndexInDirection):
+ (WebCore::RenderGrid::placeItemsOnGrid):
+ (WebCore::RenderGrid::autoPlacementMajorAxisPositionForChild):
+ (WebCore::RenderGrid::autoPlacementMinorAxisPositionForChild):
+ * rendering/style/RenderStyle.h:
+ * rendering/style/StyleGridItemData.cpp:
+ (WebCore::StyleGridItemData::StyleGridItemData):
+ * rendering/style/StyleGridItemData.h:
+ (WebCore::StyleGridItemData::operator==):
+ Updated the naming now that we manipulate grid-{before|start} instead of grid-{row|column}.
+
+2013-03-04 Chris Fleizach <cfleizach@apple.com>
+
+ WebSpeech: change voiceURI to voice
+ https://bugs.webkit.org/show_bug.cgi?id=110773
+
+ Reviewed by Tim Horton.
+
+ Change the voiceURI property to a voice property that takes a SpeechSynthesisVoice.
+ This was recently added to the errata of the WebSpeech spec.
+
+ Test: platform/mac/fast/speechsynthesis/speech-synthesis-utterance-uses-voice.html
+
+ * Modules/speech/SpeechSynthesisUtterance.cpp:
+ (WebCore):
+ (WebCore::SpeechSynthesisUtterance::voice):
+ (WebCore::SpeechSynthesisUtterance::setVoice):
+ * Modules/speech/SpeechSynthesisUtterance.h:
+ (SpeechSynthesisUtterance):
+ * Modules/speech/SpeechSynthesisUtterance.idl:
+ * Modules/speech/SpeechSynthesisVoice.h:
+ (WebCore::SpeechSynthesisVoice::platformVoice):
+ (SpeechSynthesisVoice):
+ * platform/PlatformSpeechSynthesisUtterance.cpp:
+ (WebCore::PlatformSpeechSynthesisUtterance::PlatformSpeechSynthesisUtterance):
+ * platform/PlatformSpeechSynthesisUtterance.h:
+ (WebCore::PlatformSpeechSynthesisUtterance::voice):
+ (WebCore::PlatformSpeechSynthesisUtterance::setVoice):
+ (PlatformSpeechSynthesisUtterance):
+ * platform/mac/PlatformSpeechSynthesizerMac.mm:
+ (-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):
+
+2013-03-04 Victor Costan <costan@gmail.com>
+
+ Filename passed to FormData.append() takes precedence over filename in
+ File.
+ https://bugs.webkit.org/show_bug.cgi?id=111255
+
+ Reviewed by Alexey Proskuryakov.
+
+ Test: http/tests/local/formdata/send-form-data-with-filename.html
+
+ * platform/network/FormData.cpp:
+ (WebCore::FormData::appendKeyValuePairItems): changed to implement the
+ behavior in the XMLHttpRequest W3C spec.
+
+2013-03-04 Alexis Hetu <sugoi@chromium.org>
+
+ Canvas and DOM go out of sync
+ https://bugs.webkit.org/show_bug.cgi?id=107701
+
+ Reviewed by Simon Fraser.
+
+ Test: fast/canvas/canvas-overflow-hidden-animation.html
+
+ Added an update of the current compositor from the layer's stacking
+ container when the layer itself isn't a stacking container.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateAfterLayout):
+ Added an update of the stacking container of the owning layer of the
+ layer backing when the owning layer isn't a stacking container itself.
+
+2013-03-04 Alexey Proskuryakov <ap@apple.com>
+
+ Small BlobResourceHandle cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=111352
+
+ Reviewed by Sam Weinig.
+
+ 1. Don't use PassRefPtr<BlobStorageData> when ownership is not being passed.
+ 2. Added OVERRIDE to some functions.
+ 3. Added const to ResourceHandle::firstRequest().
+
+ * platform/network/BlobRegistryImpl.cpp:
+ (WebCore::loadResourceSynchronously):
+ (WebCore::BlobRegistryImpl::createResourceHandle):
+ (WebCore::BlobRegistryImpl::getBlobDataFromURL):
+ * platform/network/BlobRegistryImpl.h:
+ (BlobRegistryImpl):
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::createAsync):
+ (WebCore::BlobResourceHandle::loadResourceSynchronously):
+ * platform/network/BlobResourceHandle.h:
+ (BlobResourceHandle):
+ * platform/network/FormData.cpp:
+ (WebCore::appendBlobResolved):
+ * platform/network/ResourceHandle.cpp:
+ (WebCore::ResourceHandle::firstRequest):
+ * platform/network/ResourceHandle.h:
+ (ResourceHandle):
+
+2013-03-04 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Introduce WebInspector.EventTarget interface for interfaces that dispatch events.
+ https://bugs.webkit.org/show_bug.cgi?id=111320
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/Object.js:
+ (WebInspector.EventTarget):
+ (WebInspector.EventTarget.prototype.addEventListener):
+ (WebInspector.EventTarget.prototype.removeEventListener):
+ (WebInspector.EventTarget.prototype.removeAllListeners):
+ (WebInspector.EventTarget.prototype.hasEventListeners):
+ (WebInspector.EventTarget.prototype.dispatchEventToListeners):
+ * inspector/front-end/ResourceScriptMapping.js:
+ * inspector/front-end/UISourceCode.js:
+ * inspector/front-end/Workspace.js:
+ (WebInspector.ProjectDelegate.prototype.searchInFileContent):
+
+2013-03-04 Tom Sepez <tsepez@chromium.org>
+
+ XSSAuditor bypass with --> comment syntax.
+ https://bugs.webkit.org/show_bug.cgi?id=111349
+
+ Reviewed by Adam Barth.
+
+ Test: http/tests/security/xssAuditor/open-iframe-src-03.html
+
+ * html/parser/XSSAuditor.cpp:
+ (WebCore::isTerminatingCharacter):
+ Adds ">" to the list of terminating characters, so that comments of
+ the form --> end the snippet we seek to match.
+
+2013-03-04 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Modal dialogs sometimes lose focus.
+ https://bugs.webkit.org/show_bug.cgi?id=111317
+
+ Reviewed by Pavel Feldman.
+
+ setCurrentFocusElement doesn't give focus to an element anymore
+ if modal glass pane is shown and element is not inside it.
+
+ * inspector/front-end/Dialog.js:
+ (WebInspector.Dialog):
+ (WebInspector.Dialog.prototype._hide):
+ * inspector/front-end/InspectorView.js:
+ (WebInspector.InspectorView.prototype.defaultFocusedElement):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.defaultFocusedElement):
+ * inspector/front-end/UIUtils.js:
+ (WebInspector.GlassPane):
+ (WebInspector.GlassPane.prototype.dispose):
+ (WebInspector.setCurrentFocusElement):
+ * inspector/front-end/dialog.css:
+
+2013-03-04 Roger Fong <roger_fong@apple.com>
+
+ Unreviewed. AppleWin build fix.
+
+ * WebCore.vcxproj/WebCore.vcxproj:
+
+2013-03-04 Dan Carney <dcarney@google.com>
+
+ [v8] add isolate parameter to heap statistics calls
+ https://bugs.webkit.org/show_bug.cgi?id=111308
+
+ Reviewed by Jochen Eisinger.
+
+ No new tests.
+
+ * bindings/v8/ScriptGCEvent.cpp:
+ (WebCore::ScriptGCEvent::getHeapSize):
+ (WebCore::ScriptGCEvent::getUsedHeapSize):
+ * bindings/v8/V8AdaptorFunction.cpp:
+ (WebCore::V8AdaptorFunction::getTemplate):
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::V8GCController::checkMemoryUsage):
+
+2013-03-04 Jochen Eisinger <jochen@chromium.org>
+
+ [chromium] remove deprecated hyphenation methods from Platform
+ https://bugs.webkit.org/show_bug.cgi?id=111101
+
+ Reviewed by Adam Barth.
+
+ * platform/text/chromium/Hyphenation.cpp:
+ (WebCore::canHyphenate):
+ (WebCore::lastHyphenLocation):
+
+2013-03-04 Benjamin Poulain <benjamin@webkit.org>
+
+ Use initialization from literal for MediaFeatureNames
+ https://bugs.webkit.org/show_bug.cgi?id=111283
+
+ Reviewed by Andreas Kling.
+
+ * css/MediaFeatureNames.cpp:
+ (WebCore::MediaFeatureNames::init):
+ Initialization from literal is faster and use less memory. The names are
+ defined statically in MediaFeatureNames.h.
+
+ Also use the NotNull placement new to avoid a branch on silly allocators.
+
+2013-03-04 Joshua Bell <jsbell@chromium.org>
+
+ [V8] Unreviewed. Rebaselined run-bindings-tests following r144617
+
+ * bindings/scripts/test/V8/V8Float64Array.cpp:
+ (WebCore::ConfigureV8Float64ArrayTemplate):
+ (WebCore::V8Float64Array::GetTemplate):
+ * bindings/scripts/test/V8/V8Float64Array.h:
+ (V8Float64Array):
+ * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
+ (WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
+ (WebCore::TestActiveDOMObjectV8Internal::TestActiveDOMObjectDomainSafeFunctionSetter):
+ (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
+ (WebCore::V8TestActiveDOMObject::GetTemplate):
+ * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
+ (V8TestActiveDOMObject):
+ * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
+ (WebCore::ConfigureV8TestCustomNamedGetterTemplate):
+ (WebCore::V8TestCustomNamedGetter::GetTemplate):
+ * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
+ (V8TestCustomNamedGetter):
+ * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
+ (WebCore::ConfigureV8TestEventConstructorTemplate):
+ (WebCore::V8TestEventConstructor::GetTemplate):
+ * bindings/scripts/test/V8/V8TestEventConstructor.h:
+ (V8TestEventConstructor):
+ * bindings/scripts/test/V8/V8TestEventTarget.cpp:
+ (WebCore::ConfigureV8TestEventTargetTemplate):
+ (WebCore::V8TestEventTarget::GetTemplate):
+ * bindings/scripts/test/V8/V8TestEventTarget.h:
+ (V8TestEventTarget):
+ * bindings/scripts/test/V8/V8TestException.cpp:
+ (WebCore::ConfigureV8TestExceptionTemplate):
+ (WebCore::V8TestException::GetTemplate):
+ * bindings/scripts/test/V8/V8TestException.h:
+ (V8TestException):
+ * bindings/scripts/test/V8/V8TestInterface.cpp:
+ (WebCore::ConfigureV8TestInterfaceTemplate):
+ (WebCore::V8TestInterface::GetTemplate):
+ * bindings/scripts/test/V8/V8TestInterface.h:
+ (V8TestInterface):
+ * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
+ (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
+ (WebCore::V8TestMediaQueryListListener::GetTemplate):
+ * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
+ (V8TestMediaQueryListListener):
+ * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
+ (WebCore::V8TestNamedConstructorConstructor::GetTemplate):
+ (WebCore::ConfigureV8TestNamedConstructorTemplate):
+ (WebCore::V8TestNamedConstructor::GetTemplate):
+ * bindings/scripts/test/V8/V8TestNamedConstructor.h:
+ (V8TestNamedConstructorConstructor):
+ (V8TestNamedConstructor):
+ * bindings/scripts/test/V8/V8TestNode.cpp:
+ (WebCore::ConfigureV8TestNodeTemplate):
+ (WebCore::V8TestNode::GetTemplate):
+ * bindings/scripts/test/V8/V8TestNode.h:
+ (V8TestNode):
+ * bindings/scripts/test/V8/V8TestObj.cpp:
+ (WebCore::ConfigureV8TestObjTemplate):
+ (WebCore::V8TestObj::GetTemplate):
+ (WebCore::V8TestObj::installPerContextPrototypeProperties):
+ * bindings/scripts/test/V8/V8TestObj.h:
+ (V8TestObj):
+ * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
+ (WebCore::ConfigureV8TestOverloadedConstructorsTemplate):
+ (WebCore::V8TestOverloadedConstructors::GetTemplate):
+ * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
+ (V8TestOverloadedConstructors):
+ * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
+ (WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
+ (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
+ * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
+ (V8TestSerializedScriptValueInterface):
+ * bindings/scripts/test/V8/V8TestTypedefs.cpp:
+ (WebCore::ConfigureV8TestTypedefsTemplate):
+ (WebCore::V8TestTypedefs::GetTemplate):
+ * bindings/scripts/test/V8/V8TestTypedefs.h:
+ (V8TestTypedefs):
+
+2013-03-04 Tony Chang <tony@chromium.org>
+
+ Unreviewed, rolling out r144562.
+ http://trac.webkit.org/changeset/144562
+ https://bugs.webkit.org/show_bug.cgi?id=85642
+
+ Caused KeyPadInsert faluires in webkit_unittests
+
+ * platform/chromium/KeyCodeConversionGtk.cpp:
+ (WebCore::windowsKeyCodeForKeyEvent):
+
+2013-03-04 Uday Kiran <udaykiran@motorola.com>
+
+ getComputedStyle not implemented for -webkit-columns shorthand
+ https://bugs.webkit.org/show_bug.cgi?id=111236
+
+ Reviewed by Alexis Menard.
+
+ Implement getComputedStyle for -webkit-columns shorthand.
+
+ Test: fast/css/getComputedStyle/getComputedStyle-webkit-columns-shorthand.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+
+2013-03-04 Levi Weintraub <leviw@chromium.org>
+
+ Add support for 8 bit TextRuns on Chromium Linux & Mac
+ https://bugs.webkit.org/show_bug.cgi?id=99393
+
+ Reviewed by Eric Seidel.
+
+ Adding support for 8 bit TextRuns for Mac and Linux Chromium. To accomplish this,
+ 8 bit text runs are upconverted to 16 bit in the complex text path during string
+ normalization, as HarfBuzz operates on UChars.
+
+ Windows has platfom assumptions that TextRuns are 16 bit that need to be addressed
+ before enabling this optimization.
+
+ No new tests. No change in behavior.
+
+ (WebCore::HarfBuzzShaperBase::setNormalizedBuffer):
+ * platform/graphics/harfbuzz/HarfBuzzShaperBase.h:
+ * platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
+ (WebCore::normalizeCharacters):
+ (WebCore::HarfBuzzShaper::HarfBuzzShaper):
+
+2013-03-04 Alexis Menard <alexis@webkit.org>
+
+ transition-property property and transition shorthand property doesn't accept "all, all".
+ https://bugs.webkit.org/show_bug.cgi?id=111201
+
+ Reviewed by Simon Fraser.
+
+ Relax the parsing of transition-property to allow all, all as a value.
+ It is not very useful per say but it is possible by the spec and we
+ align with Firefox, IE and Opera.
+
+ Test: LayoutTests/transitions/transitions-parsing.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseAnimationProperty):
+
+2013-03-04 Min Qin <qinmin@chromium.org>
+
+ Don't apply page scale to clipRect if applyPageScaleFactorInCompositor is set to true
+ https://bugs.webkit.org/show_bug.cgi?id=111229
+
+ Reviewed by Simon Fraser.
+
+ If applyPageScaleFactorInCompositor is set to true, webcore should use css coordinates.
+ As a result, we shouldn't apply page scale to clipRect in RenderLayerCompositor.
+ Layout tests set the flag to false, so we don't have anything to test against.
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::addToOverlapMap):
+
+2013-03-04 Ian Vollick <vollick@chromium.org>
+
+ ASSERTION FAILED: m_clipRectsCache->m_respectingOverflowClip[clipRectsType] == (clipRectsContext.respectOverflowClip == RespectOverflowClip) in RenderLayer.
+ https://bugs.webkit.org/show_bug.cgi?id=108257
+
+ Reviewed by David Hyatt.
+
+ With composited scrolling we paint both with and without respecting
+ overflow clip. To prevent collisions in the clip cache, and to prevent
+ throwing away cached clips unnecessarily, we keep two copies of the
+ clip cache -- one for when overflow clip is respected, and one for
+ when it isn't.
+
+ No new tests. Covered by existing tests (in debug):
+ compositing/overflow/automatically-opt-into-composited-scrolling.html
+ compositing/overflow/composited-scrolling-creates-a-stacking-container.html
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updateClipRects):
+ No longer asserts that our 'respect overflow clip' status is
+ consistent. It also gets and sets the clip cache using the clip rect
+ context rather than just the clip rect type.
+ (WebCore::RenderLayer::calculateClipRects):
+ (WebCore::RenderLayer::parentClipRects):
+ (WebCore::RenderLayer::clearClipRects):
+ (WebCore::ClipRectsCache::ClipRectsCache):
+ (WebCore::ClipRectsCache::getClipRects):
+ (WebCore::ClipRectsCache::setClipRects):
+ (WebCore::ClipRectsCache::getIndex):
+ Get and set the cached clip rects using the context rather than
+ type.
+ (WebCore::RenderLayer::clipRects):
+ We now cache twice as many clip rects.
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
+ ShouldRespectOverflowClip was moved out of RenderLayer.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updateClipRects):
+ (WebCore::RenderLayer::calculateClipRects):
+ (WebCore::RenderLayer::parentClipRects):
+ (WebCore::RenderLayer::clearClipRects):
+ * rendering/RenderLayer.h:
+ (WebCore::ClipRectsCache::ClipRectsCache):
+ (WebCore::ClipRectsCache::getClipRects):
+ (WebCore::ClipRectsCache::setClipRects):
+ (ClipRectsCache):
+ (WebCore::ClipRectsCache::getIndex):
+ (WebCore::RenderLayer::clipRects):
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
+
+2013-03-04 Aaron Colwell <acolwell@chromium.org>
+
+ Remove unused return value from SourceBufferPrivate::abort() and WebSourceBuffer::abort().
+ https://bugs.webkit.org/show_bug.cgi?id=111195
+
+ Reviewed by Adam Barth.
+
+ No new tests. No user visible behavior changed.
+
+ * platform/graphics/SourceBufferPrivate.h:
+ (SourceBufferPrivate):
+
+2013-03-04 David Hyatt <hyatt@apple.com>
+
+ [New Multicolumn] Eliminate the unique multicolumn flow thread style creation function
+ https://bugs.webkit.org/show_bug.cgi?id=111338
+
+ Reviewed by Allan Jensen.
+
+ There is nothing special about a multi-column flow thread style now, so we can just
+ use the existing anonymous style creation function.
+
+ * rendering/RenderMultiColumnBlock.cpp:
+ (WebCore):
+ (WebCore::RenderMultiColumnBlock::addChild):
+
+2013-03-04 Mario Sanchez Prada <mario.prada@samsung.com>
+
+ [GTK] WebCore::returnString is unsafe and should be removed!
+ https://bugs.webkit.org/show_bug.cgi?id=110423
+
+ Reviewed by Martin Robinson.
+
+ Remove returnString() and replace it in callers with a new
+ function that will cache and return the values of string
+ properties for ATK interfaces in the private section of the
+ wrapper AtkObject WebKitAccessible.
+
+ * accessibility/atk/WebKitAccessibleUtil.cpp: Remove returnString().
+ * accessibility/atk/WebKitAccessibleUtil.h: Ditto.
+
+ * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
+ (_WebKitAccessiblePrivate): New private structure to store cached
+ values of string property for the different ATK interfaces.
+ (cacheAndReturnAtkProperty): New helper function to make sure the
+ returned const gchar* value is previously cached in the private
+ section of the wrapper AtkObject.
+ (webkitAccessibleGetName): Use the new helper function.
+ (webkitAccessibleGetDescription): Ditto.
+ (webkitAccessibleInit): Initialize pointer to private structure.
+ (webkitAccessibleFinalize): Remove unneeded code.
+ (webkitAccessibleClassInit): Add private struct to class type/
+ * accessibility/atk/WebKitAccessibleWrapperAtk.h:
+ (_WebKitAccessible): New member pointing to the private structure,
+ made the new helper function cacheAndReturnAtkProperty() available
+ to external callers (implementation files for ATK interfaces).
+ (AtkCachedProperty): New enum to allow reusing code when calling
+ cacheAndReturnAtkProperty() to cache and return different properties.
+
+ * accessibility/atk/WebKitAccessibleInterfaceAction.cpp:
+ (webkitAccessibleActionGetKeybinding): Replace calls to returnString()
+ with calls to the new helper function cacheAndReturnAtkProperty().
+ (webkitAccessibleActionGetName): Ditto.
+ * accessibility/atk/WebKitAccessibleInterfaceDocument.cpp:
+ (documentAttributeValue): Ditto.
+ (webkitAccessibleDocumentGetLocale): Ditto.
+ * accessibility/atk/WebKitAccessibleInterfaceImage.cpp:
+ (webkitAccessibleImageGetImageDescription): Ditto.
+
+ Remove returnString() from WebKitAccessibleHyperlink (which is not
+ an AtkObject, but a GObject) as well, replacing it in callers with
+ simple code that will cache and return the required values in the
+ private section of these kind of objects.
+
+ * accessibility/atk/WebKitAccessibleHyperlink.cpp:
+ (_WebKitAccessibleHyperlinkPrivate): Added two new fields to cache
+ string values for the key binding and name properties from the
+ AtkAction interface, which is implemented by AtkHyperlink.
+ (webkitAccessibleHyperlinkActionGetKeybinding): Cache the string
+ value for the key binding before returning a const gchar* pointer.
+ (webkitAccessibleHyperlinkActionGetName): Ditto.
+ (webkitAccessibleHyperlinkGetURI): Do not cache the URI here, as
+ this function returns a gchar* that will be owned by the caller.
+
+2013-03-04 peavo@outlook.com <peavo@outlook.com>
+
+ [Curl] Compile fix after r144216
+ https://bugs.webkit.org/show_bug.cgi?id=111305
+
+ Reviewed by Brent Fulgham.
+
+ * platform/network/curl/ResourceRequest.h:
+ (WebCore::ResourceRequest::cfURLRequest): Added new parameter.
+
+2013-03-03 David Hyatt <hyatt@apple.com>
+
+ [New Multicolumn] Make sure region styling works for columns inside regions.
+ https://bugs.webkit.org/show_bug.cgi?id=111276
+
+ Reviewed by Sam Weinig.
+
+ Test: fast/regions/region-styling-in-columns.html
+
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::CurrentRenderFlowThreadMaintainer::CurrentRenderFlowThreadMaintainer):
+ (WebCore::CurrentRenderFlowThreadMaintainer::~CurrentRenderFlowThreadMaintainer):
+ * rendering/RenderFlowThread.h:
+ (CurrentRenderFlowThreadMaintainer):
+ Fix the CurrentRenderFlowThreadMaintainer so that it saves off the old render flow thread
+ and restores it when done. This effectively makes flow thread layout a push/pop stack,
+ since with in-flow threads, this is allowed. We assert that a nested flow thread is
+ in-flow to preserve the invariant that you can't nest CSS Regions flow thread.
+
+ * rendering/RenderRegion.cpp:
+ (WebCore::RenderRegion::computeChildrenStyleInRegion):
+ Add isInFlowRenderFlowThread() to the anonymous check to make sure a style gets made
+ for the nested flow thread.
+
+2013-03-04 Andrey Lushnikov <lushnikov@chromium.org>
+
+ Web Inspector: WebInspector.AceTextEditor throws a warning
+ https://bugs.webkit.org/show_bug.cgi?id=111315
+
+ Reviewed by Pavel Feldman.
+
+ Add WebInspector.AceTextEditor to externs.js to suppress closure
+ compilation warning.
+
+ No new tests: no change in behaviour.
+
+ * inspector/front-end/externs.js:
+ (WebInspector.AceTextEditor):
+
+2013-03-04 Antoine Quint <graouts@apple.com>
+
+ Fix debug build under certain configurations, cause was
+ http://trac.webkit.org/changeset/144624.
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ * inspector/InspectorLayerTreeAgent.cpp:
+ (WebCore::InspectorLayerTreeAgent::InspectorLayerTreeAgent):
+ * inspector/InspectorLayerTreeAgent.h:
+ (WebCore):
+ (WebCore::InspectorLayerTreeAgent::create):
+ (InspectorLayerTreeAgent):
+
+2013-03-04 Allan Sandfeld Jensen <allan.jensen@digia.com>
+
+ [Qt] REGRESSION(r141240) Crash in PluginPackage::fetchInfo
+ https://bugs.webkit.org/show_bug.cgi?id=111322
+
+ Reviewed by Simon Hausmann.
+
+ Do not try to load blacklisted plugins.
+
+ * plugins/qt/PluginPackageQt.cpp:
+ (WebCore::PluginPackage::fetchInfo):
+
+2013-03-04 Alexis Menard <alexis@webkit.org>
+
+ transition properties can't be found in CSSStyleDeclaration
+ https://bugs.webkit.org/show_bug.cgi?id=110011
+
+ Reviewed by Antti Koivisto.
+
+ The previous approach for handling the unprefixing was to alias the
+ unprefixed properties with the prefixed ones in CSSPropertyNames.in.
+ Unfortunately it will alias the properties in the parsing code which will just
+ identically parse the two versions. This means that when we populate StylePropertySet
+ we do not have information whether we just parsed the prefixed, the
+ unprefixed properties or we parsed both. The patch takes another
+ approach by creating two distinct sets of properties (unprefixed and
+ prefixed). Each properties have their own id and we now handle them in
+ the parsing code as disctints properties and add both versions to the
+ declared style. In order to avoid properties getting out of sync,
+ this patch adds few facilities to StylePropertySet to update the
+ prefixed and the unprefixed entries. Finally the style resolution
+ happens only for the prefixed version (to limit the size of this patch)
+ and the unprefixed versions are not resolved. This is to avoid creating
+ the animation objects twice for the resolved style.
+
+ Test : transitions/transitions-parsing.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore):
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::addPropertyWithPrefixingVariant): Always add the
+ prefixed and the unprefixed property even if only one is specified.
+ (WebCore):
+ (WebCore::CSSParser::parseValue):
+ (WebCore::CSSParser::parseTransitionShorthand): Add both prefixed and
+ unprefixed longhands to the declarated style.
+ (WebCore::CSSParser::parseAnimationProperty):
+ * css/CSSParser.h:
+ (CSSParser):
+ * css/CSSProperty.cpp:
+ (WebCore::CSSProperty::isInheritedProperty):
+ * css/CSSProperty.h:
+ (WebCore:: prefixingVariantForPropertyId): This function takes a given
+ property id and returns its prefixed or unprefixed id if it exists. If
+ not it returns the same id.
+ (WebCore):
+ * css/CSSPropertyNames.in:
+ * css/StylePropertySet.cpp:
+ (WebCore::StylePropertySet::getPropertyValue):
+ (WebCore::StylePropertySet::removeShorthandProperty):
+ (WebCore::StylePropertySet::removeProperty):
+ (WebCore::StylePropertySet::removeProperty): Remove
+ also the prefixed or unprefixed shorthand if it exists.
+ (WebCore):
+ (WebCore::StylePropertySet::setProperty):
+ (WebCore::StylePropertySet:: appendPrefixingVariantProperty):
+ (WebCore::StylePropertySet::setPrefixingVariantProperty): If it
+ exists a unprefixed or prefixed counterpart of the property we're
+ trying to set, then we update the other one.
+ (WebCore::StylePropertySet::asText):
+ (WebCore::StylePropertySet::mergeAndOverrideOnConflict):
+ * css/StylePropertySet.h:
+ (StylePropertySet):
+ * css/StylePropertyShorthand.cpp:
+ (WebCore::transitionShorthand):
+ (WebCore):
+ (WebCore::shorthandForProperty): Define the transitions unprefixed
+ longhands.
+ * css/StylePropertyShorthand.h:
+ (WebCore):
+ * css/StyleResolver.cpp:
+ (WebCore::StyleResolver::applyProperty): StyleBuilder will handle the
+ resolution and the creation of the animations for the style. As the
+ declarated style now contains declarations for the prefixed and
+ unprefixed property we do not want to resolve two times and create duplicate animations.
+ Therefore when we try to resolve the unprefixed version we just bail out.
+
+2013-03-04 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: CPU Flame Chart: reveal profiler DataGrid node when user clicks on a FlameChart item.
+ https://bugs.webkit.org/show_bug.cgi?id=111309
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/CPUProfileView.js:
+ (WebInspector.CPUProfileView.prototype._revealProfilerNode):
+ * inspector/front-end/FlameChart.js:
+ (WebInspector.FlameChart):
+ (WebInspector.FlameChart.prototype._onClick):
+
+2013-03-04 Antoine Quint <graouts@apple.com>
+
+ Web Inspector: remove existing LayerTreeAgent protocol APIs
+ https://bugs.webkit.org/show_bug.cgi?id=111251
+
+ In order to eventually provide a more useful API for the LayerTreeAgent
+ that will be done in followup bugs, we remove the current API exposed by
+ the agent providing a clean slate that will make future patches easier
+ to read. Additionally, we remove the "childLayers" property on the Layer
+ object since we will no longer be providing a hierarchy of layers, but
+ rather a flat list of layers attached to a node and its descendants.
+
+ No new tests since we're removing the APIs exposed by the LayerTreeAgent.
+ Subsequent patches will add tests as new APIs are added.
+
+ Reviewed by Timothy Hatcher.
+
+ * inspector/Inspector.json:
+ * inspector/InspectorDOMAgent.cpp:
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorLayerTreeAgent.cpp:
+ (WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
+ * inspector/InspectorLayerTreeAgent.h:
+ (InspectorLayerTreeAgent):
+
+2013-03-04 Li Yin <li.yin@intel.com>
+
+ MediaStream.ended must return true when it is created with ended tracks.
+ https://bugs.webkit.org/show_bug.cgi?id=111293
+
+ Reviewed by Kentaro Hara.
+
+ Spec: http://dev.w3.org/2011/webrtc/editor/getusermedia.html#MediaStream-ended
+ When a MediaStream object is created, its ended attribute must be set to false,
+ unless it is being created using the MediaStream() constructor whose arguments
+ are lists of MediaStreamTrack objects that are all ended, in which case the
+ MediaStream object must be created with its ended attribute set to true.
+
+ Test: fast/mediastream/MediaStreamConstructor.html
+
+ * platform/mediastream/MediaStreamDescriptor.h:
+ (WebCore::MediaStreamDescriptor::MediaStreamDescriptor):
+
+2013-03-04 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: Adding new rules broken if a <style> tag is added to document dynamically
+ https://bugs.webkit.org/show_bug.cgi?id=111299
+
+ Reviewed by Pavel Feldman.
+
+ The CSSStyleSheet instance should be retrieved directly from the HTMLStyleElement just created,
+ not from the document.styleSheets list.
+
+ Test: inspector/styles/add-new-rule-with-style-after-body.html
+
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
+
+2013-03-04 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: Unreviewed. Fix for closure type annotations.
+
+ * inspector/front-end/FlameChart.js:
+
+2013-03-04 Kondapally Kalyan <kalyan.kondapally@intel.com>
+
+ [EFL] Build fix when compiling with GLES2 support enabled.
+ https://bugs.webkit.org/show_bug.cgi?id=111291
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ This patch fixes build issues when compiling with GLES2
+ support. As part of the fix the patch removes Evas specific
+ workaround of using GLX with EGL in PlatformContext as GLES2
+ is the main target with EGL.
+
+ * platform/graphics/OpenGLESShims.h:
+ * platform/graphics/opengl/GLPlatformContext.cpp:
+ (WebCore::GLCurrentContextWrapper::GLCurrentContextWrapper):
+ * platform/graphics/texmap/TextureMapper.h:
+
+2013-03-04 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: implement Flame Chart for CPU profiler.
+ https://bugs.webkit.org/show_bug.cgi?id=111162
+
+ Reviewed by Yury Semikhatsky.
+
+ It is an initial implementation. The next step is to provide
+ function names and other stats about the hovered item.
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.vcxproj/WebCore.vcxproj:
+ * WebCore.vcxproj/WebCore.vcxproj.filters:
+ * inspector/compile-front-end.py:
+ * inspector/front-end/CPUProfileView.js:
+ (WebInspector.CPUProfileView.prototype._getCPUProfileCallback):
+ * inspector/front-end/FlameChart.js: Added.
+ (WebInspector.FlameChart):
+ (WebInspector.FlameChart.prototype._onMouseMove):
+ (WebInspector.FlameChart.prototype.findNodeCallback):
+ (WebInspector.FlameChart.prototype._coordinatesToNode):
+ (WebInspector.FlameChart.prototype.onResize):
+ (WebInspector.FlameChart.prototype._rootNodes):
+ (WebInspector.FlameChart.prototype.draw):
+ (WebInspector.FlameChart.prototype._drawNode):
+ (WebInspector.FlameChart.prototype._forEachNode):
+ (WebInspector.FlameChart.prototype._drawBar):
+ (WebInspector.FlameChart.prototype.update):
+ * inspector/front-end/Settings.js:
+ (WebInspector.ExperimentsSettings):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/flameChart.css: Added.
+ (.flame-chart):
+
+2013-03-04 Marja Hölttä <marja@chromium.org>
+
+ [V8] Add a "context type" parameter to GetTemplate and ConfigureV8SomethingTemplate functions
+ https://bugs.webkit.org/show_bug.cgi?id=110875
+
+ The parameter will later be used for generating specialized V8
+ bindings for the 3 different world types (main world, isolated
+ work, worker).
+
+ Reviewed by Kentaro Hara.
+
+ No new tests (no changes in behavior yet).
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateHeader):
+ (GenerateDomainSafeFunctionGetter):
+ (GenerateDomainSafeFunctionSetter):
+ (GenerateNormalAttrGetter):
+ (GenerateNamedConstructor):
+ (GenerateImplementation):
+ * bindings/v8/DOMDataStore.cpp:
+ (WebCore::DOMDataStore::DOMDataStore):
+ * bindings/v8/DOMDataStore.h:
+ (DOMDataStore):
+ * bindings/v8/DOMWrapperWorld.cpp:
+ (WebCore):
+ (WebCore::DOMWrapperWorld::setInitializingWindow):
+ (WebCore::DOMWrapperWorld::DOMWrapperWorld):
+ (WebCore::DOMWrapperWorld::contextHasCorrectPrototype):
+ * bindings/v8/DOMWrapperWorld.h:
+ (DOMWrapperWorld):
+ (WebCore::DOMWrapperWorld::getWorld):
+ * bindings/v8/Dictionary.cpp:
+ (WebCore::Dictionary::get):
+ * bindings/v8/PageScriptDebugServer.cpp:
+ (WebCore::retrieveFrameWithGlobalObjectCheck):
+ * bindings/v8/V8AdaptorFunction.cpp:
+ (WebCore::V8AdaptorFunction::getTemplate):
+ (WebCore::V8AdaptorFunction::wrap):
+ * bindings/v8/V8AdaptorFunction.h:
+ (V8AdaptorFunction):
+ * bindings/v8/V8Binding.cpp:
+ (WebCore::toDOMWindow):
+ (WebCore::toScriptExecutionContext):
+ (WebCore::worldType):
+ (WebCore):
+ (WebCore::worldTypeInMainThread):
+ * bindings/v8/V8Binding.h:
+ (WebCore):
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::clearForNavigation):
+ (WebCore::V8DOMWindowShell::installDOMWindow):
+ * bindings/v8/V8DOMWrapper.cpp:
+ (WebCore::V8DOMWrapper::createWrapper):
+ * bindings/v8/V8Initializer.cpp:
+ (WebCore::findFrame):
+ * bindings/v8/V8PerContextData.cpp:
+ (WebCore::V8PerContextData::constructorForTypeSlowCase):
+ * bindings/v8/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::WorkerScriptController):
+ (WebCore::WorkerScriptController::controllerForContext):
+ * bindings/v8/WrapperTypeInfo.h:
+ (WebCore::WrapperTypeInfo::getTemplate):
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ (WebCore::V8DOMWindow::eventAttrGetterCustom):
+ (WebCore::V8DOMWindow::eventAttrSetterCustom):
+ (WebCore::V8DOMWindow::toStringMethodCustom):
+ (WebCore::V8DOMWindow::namedSecurityCheck):
+ (WebCore::V8DOMWindow::indexedSecurityCheck):
+ (WebCore::toV8):
+ * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
+ (WebCore::V8HTMLDocument::wrapInShadowObject):
+ * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
+ (WebCore::V8HTMLImageElementConstructor::GetTemplate):
+ * bindings/v8/custom/V8HTMLImageElementConstructor.h:
+ (V8HTMLImageElementConstructor):
+ * bindings/v8/custom/V8InjectedScriptManager.cpp:
+ (WebCore::createInjectedScriptHostV8Wrapper):
+ (WebCore::InjectedScriptManager::canAccessInspectedWindow):
+ * bindings/v8/custom/V8LocationCustom.cpp:
+ (WebCore::V8Location::reloadAttrGetterCustom):
+ (WebCore::V8Location::replaceAttrGetterCustom):
+ (WebCore::V8Location::assignAttrGetterCustom):
+ * bindings/v8/custom/V8MessageEventCustom.cpp:
+ (WebCore::V8MessageEvent::initMessageEventMethodCustom):
+
+2013-03-04 Andrey Lushnikov <lushnikov@chromium.org>
+
+ Web Inspector: add Ace editor experiment
+ https://bugs.webkit.org/show_bug.cgi?id=111191
+
+ Reviewed by Pavel Feldman.
+
+ No new tests.
+
+ Add Ace text editor experiment.
+
+ * WebCore.gypi:
+ * inspector/front-end/AceTextEditor.js: Added.
+ * inspector/front-end/Settings.js:
+ (WebInspector.ExperimentsSettings):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame):
+ * inspector/front-end/ace/ace.js: Added.
+ * inspector/front-end/ace/acedevtools.css: Added.
+ * inspector/front-end/ace/mode_css.js: Added.
+ * inspector/front-end/ace/mode_html.js: Added.
+ * inspector/front-end/ace/mode_javascript.js: Added.
+ * inspector/front-end/ace/theme_textmate.js: Added.
+ * inspector/front-end/ace/LICENSE.txt: Added.
+
+2013-03-04 Kunihiko Sakamoto <ksakamoto@chromium.org>
+
+ Add build flag for FontLoader
+ https://bugs.webkit.org/show_bug.cgi?id=111289
+
+ Reviewed by Benjamin Poulain.
+
+ Add ENABLE_FONT_LOAD_EVENTS build flag (disabled by default).
+
+ * Configurations/FeatureDefines.xcconfig:
+
+2013-03-04 Mike West <mkwst@chromium.org>
+
+ XSSAuditor should strip dangerous attributes from SMIL animation elements.
+ https://bugs.webkit.org/show_bug.cgi?id=111071
+
+ Reviewed by Adam Barth.
+
+ SMIL animation elements can, amusingly enough, animate the 'href' of a
+ link. This patch teaches XSSAuditor how to deal with the
+ semicolon-separated 'animation[values]' attribute in order to ensure
+ that it doesn't contain JavaScript URLs that could be animated into
+ place for an unsuspecting user to click on.
+
+ Test: http/tests/security/xssAuditor/svg-animate.html
+
+ * html/parser/XSSAuditor.cpp:
+ (WebCore::isSemicolonSeparatedAttribute): Added.
+ This returns true if the given attribute is SVGNames::valuesAttr,
+ but makes it possible to easily extend the list with additional
+ attributes with this strange property.
+ (WebCore::semicolonSeparatedValueContainsJavaScriptURL): Added.
+ Given a semicolon-separated string, determine if it contains any
+ JavaScript URLs.
+ (WebCore::XSSAuditor::eraseDangerousAttributesIfInjected):
+ When looking for dangerousness, determine whether or not we should
+ be comparing against each member of a semicolon-separated list.
+
+2013-03-04 Arvid Nilsson <anilsson@rim.com>
+
+ [BlackBerry] New files for BlackBerry::Platform::Graphics::GraphicsContext integration
+ https://bugs.webkit.org/show_bug.cgi?id=111153
+
+ Reviewed by Rob Buis.
+
+ BlackBerry PR 293208
+
+ This patch contains contributions from many members of the BlackBerry
+ WebKit team:
+
+ Rob Buis
+ Robin Cao
+ Eli Fidler
+ Mike Lattanzio
+ Yong Li
+ Maxim Mogilnitsky
+ Joshua Netterfield
+ Arvid Nilsson
+ Jakob Petsovits
+ Konrad Piascik
+ Jeff Rogers
+ Artem Simonov
+ Filip Spacek
+ George Staikos
+
+ Covered by existing tests.
+
+ * platform/graphics/blackberry/FontBlackBerry.cpp: Added.
+ (FSFixedToFloat):
+ (FloatToFSFixed):
+ (WebCore):
+ (WebCore::Font::drawComplexText):
+ (WebCore::Font::floatWidthForComplexText):
+ (WebCore::Font::offsetForPositionForComplexText):
+ (WebCore::Font::selectionRectForComplexText):
+ (WebCore::Font::drawGlyphs):
+ (WebCore::Font::canReturnFallbackFontsForComplexText):
+ (WebCore::Font::drawEmphasisMarksForComplexText):
+ (WebCore::Font::canExpandAroundIdeographsInComplexText):
+ * platform/graphics/blackberry/FontCacheBlackBerry.cpp: Added.
+ (WebCore):
+ (WebCore::FontCache::platformInit):
+ (WebCore::FontCache::getFontDataForCharacters):
+ (WebCore::FontCache::getSimilarFontPlatformData):
+ (WebCore::FontCache::getLastResortFallbackFont):
+ (WebCore::FontCache::getTraitsInFamily):
+ (WebCore::getFamilyNameStringFromFontDescriptionAndFamily):
+ (WebCore::fontWeightToFontconfigWeight):
+ (WebCore::FontCache::createFontPlatformData):
+ * platform/graphics/blackberry/FontCustomPlatformData.h: Added.
+ (WebCore):
+ (FontCustomPlatformData):
+ * platform/graphics/blackberry/FontCustomPlatformDataBlackBerry.cpp: Added.
+ (WebCore):
+ (WebCore::FontCustomPlatformData::FontCustomPlatformData):
+ (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ (WebCore::FontCustomPlatformData::supportsFormat):
+ (WebCore::createFontCustomPlatformData):
+ * platform/graphics/blackberry/FontPlatformDataBlackBerry.cpp: Added.
+ (WebCore):
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::~FontPlatformData):
+ (WebCore::FontPlatformData::name):
+ (WebCore::FontPlatformData::applyState):
+ (WebCore::FontPlatformData::platformDataInit):
+ (WebCore::FontPlatformData::platformDataAssign):
+ (WebCore::FontPlatformData::platformIsEqual):
+ (WebCore::FontPlatformData::description):
+ (WebCore::FontPlatformData::harfbuzzFace):
+ (WebCore::FontPlatformData::scaledFont):
+ (WebCore::FontPlatformData::setFakeBold):
+ (WebCore::FontPlatformData::setFakeItalic):
+ (WebCore::FontPlatformData::platformFontHandle):
+ (WebCore::FontPlatformData::isFixedPitch):
+ * platform/graphics/blackberry/GlyphPageTreeNodeBlackBerry.cpp: Added.
+ (WebCore):
+ (WorldTypeScopedPtr):
+ (WebCore::WorldTypeScopedPtr::WorldTypeScopedPtr):
+ (WebCore::WorldTypeScopedPtr::~WorldTypeScopedPtr):
+ (WebCore::WorldTypeScopedPtr::get):
+ (WebCore::GlyphPage::fill):
+ * platform/graphics/blackberry/GradientBlackBerry.cpp: Added.
+ (WebCore):
+ (WebCore::totalStopsNeeded):
+ (WebCore::fillStops):
+ (WebCore::Gradient::platformGradient):
+ (WebCore::Gradient::platformDestroy):
+ (WebCore::Gradient::fill):
+ (WebCore::Gradient::setPlatformGradientSpaceTransform):
+ * platform/graphics/blackberry/GraphicsContextBlackBerry.cpp: Added.
+ (WebCore):
+ (GraphicsContextPlatformPrivate):
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::platformContext):
+ (WebCore::GraphicsContext::savePlatformState):
+ (WebCore::GraphicsContext::restorePlatformState):
+ (WebCore::GraphicsContext::setIsAcceleratedContext):
+ (WebCore::GraphicsContext::isAcceleratedContext):
+ (WebCore::GraphicsContext::getCTM):
+ (WebCore::GraphicsContext::concatCTM):
+ (WebCore::GraphicsContext::setCTM):
+ (WebCore::GraphicsContext::scale):
+ (WebCore::GraphicsContext::rotate):
+ (WebCore::GraphicsContext::translate):
+ (WebCore::GraphicsContext::drawEllipse):
+ (WebCore::GraphicsContext::strokeArc):
+ (WebCore::GraphicsContext::drawConvexPolygon):
+ (WebCore::GraphicsContext::drawRect):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::clearRect):
+ (WebCore::GraphicsContext::strokeRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::roundToDevicePixels):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ (WebCore::GraphicsContext::clearPlatformShadow):
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ (WebCore::GraphicsContext::setLineCap):
+ (WebCore::GraphicsContext::setLineDash):
+ (WebCore::GraphicsContext::setLineJoin):
+ (WebCore::GraphicsContext::setMiterLimit):
+ (WebCore::GraphicsContext::setAlpha):
+ (WebCore::GraphicsContext::clip):
+ (WebCore::GraphicsContext::clipOut):
+ (WebCore::GraphicsContext::clipConvexPolygon):
+ (WebCore::GraphicsContext::addRoundedRectClip):
+ (WebCore::GraphicsContext::clipOutRoundedRect):
+ (WebCore::GraphicsContext::clipBounds):
+ (WebCore::GraphicsContext::addInnerRoundedRectClip):
+ (WebCore::GraphicsContext::setURLForRect):
+ (WebCore::GraphicsContext::setPlatformTextDrawingMode):
+ (WebCore::GraphicsContext::setPlatformStrokeColor):
+ (WebCore::GraphicsContext::setPlatformStrokeStyle):
+ (WebCore::GraphicsContext::setPlatformStrokeThickness):
+ (WebCore::GraphicsContext::setPlatformFillColor):
+ (WebCore::GraphicsContext::setPlatformCompositeOperation):
+ (WebCore::GraphicsContext::setPlatformShouldAntialias):
+ (WebCore::GraphicsContext::setImageInterpolationQuality):
+ (WebCore::GraphicsContext::imageInterpolationQuality):
+ * platform/graphics/blackberry/ITypeUtils.h: Added.
+ (floatToITypeFixed):
+ (intToITypeFixed):
+ (iTypeFixedToFloat):
+ * platform/graphics/blackberry/ImageBufferBlackBerry.cpp: Added.
+ (WebCore):
+ (WebCore::makeBufferCurrent):
+ (WebCore::getImageDataInternal):
+ (WebCore::ImageBufferData::getImageData):
+ (WebCore::flushAndDraw):
+ (WebCore::ImageBufferData::draw):
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::~ImageBuffer):
+ (WebCore::ImageBuffer::context):
+ (WebCore::ImageBuffer::platformLayer):
+ (WebCore::ImageBuffer::copyImage):
+ (WebCore::ImageBuffer::clip):
+ (WebCore::ImageBuffer::draw):
+ (WebCore::ImageBuffer::drawPattern):
+ (WebCore::ImageBuffer::platformTransformColorSpace):
+ (WebCore::ImageBuffer::getUnmultipliedImageData):
+ (WebCore::ImageBuffer::getPremultipliedImageData):
+ (WebCore::ImageBuffer::putByteArray):
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/blackberry/ImageBufferDataBlackBerry.h: Added.
+ (WebCore):
+ (ImageBufferData):
+ * platform/graphics/blackberry/PathBlackBerry.cpp: Added.
+ (WebCore):
+ (WebCore::scratchContext):
+ (WebCore::Path::Path):
+ (WebCore::Path::~Path):
+ (WebCore::Path::operator=):
+ (WebCore::Path::currentPoint):
+ (WebCore::Path::contains):
+ (WebCore::Path::strokeContains):
+ (WebCore::Path::translate):
+ (WebCore::Path::boundingRect):
+ (WebCore::Path::strokeBoundingRect):
+ (WebCore::Path::moveTo):
+ (WebCore::Path::addLineTo):
+ (WebCore::Path::addQuadCurveTo):
+ (WebCore::Path::addBezierCurveTo):
+ (WebCore::Path::addArcTo):
+ (WebCore::Path::closeSubpath):
+ (WebCore::Path::addArc):
+ (WebCore::Path::addRect):
+ (WebCore::Path::addEllipse):
+ (WebCore::Path::platformAddPathForRoundedRect):
+ (WebCore::Path::clear):
+ (WebCore::Path::isEmpty):
+ (WebCore::Path::hasCurrentPoint):
+ (WebCore::Path::apply):
+ (WebCore::Path::transform):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::drawFocusRing):
+ (WebCore::GraphicsContext::drawLine):
+ (WebCore::GraphicsContext::drawLineForDocumentMarker):
+ (WebCore::GraphicsContext::drawLineForText):
+ (WebCore::GraphicsContext::clip):
+ (WebCore::GraphicsContext::clipPath):
+ (WebCore::GraphicsContext::canvasClip):
+ (WebCore::GraphicsContext::clipOut):
+ * platform/graphics/blackberry/PatternBlackBerry.cpp: Added.
+ (WebCore):
+ (WebCore::Pattern::platformDestroy):
+ (WebCore::Pattern::platformPattern):
+ (WebCore::Pattern::setPlatformPatternSpaceTransform):
+ * platform/graphics/blackberry/PlatformSupport.cpp: Added.
+ (WebCore):
+ (WebCore::PlatformSupport::getFontFamilyForCharacters):
+ * platform/graphics/blackberry/PlatformSupport.h: Added.
+ (WebCore):
+ (PlatformSupport):
+ (FontFamily):
+ * platform/graphics/blackberry/SimpleFontDataBlackBerry.cpp: Added.
+ (WebCore):
+ (WebCore::FSFixedToFloat):
+ (WebCore::SimpleFontData::platformInit):
+ (WebCore::SimpleFontData::platformCharWidthInit):
+ (WebCore::SimpleFontData::platformDestroy):
+ (WebCore::SimpleFontData::createScaledFontData):
+ (WebCore::SimpleFontData::smallCapsFontData):
+ (WebCore::SimpleFontData::emphasisMarkFontData):
+ (WebCore::SimpleFontData::containsCharacters):
+ (WebCore::SimpleFontData::determinePitch):
+ (WebCore::SimpleFontData::platformBoundsForGlyph):
+ (WebCore::SimpleFontData::platformWidthForGlyph):
+ (WebCore::SimpleFontData::canRenderCombiningCharacterSequence):
+
+2013-03-04 Adam Bergkvist <adam.bergkvist@ericsson.com>
+
+ MediaStream API: local addTrack() and removeTrack() operations should not fire events.
+ https://bugs.webkit.org/show_bug.cgi?id=111079
+
+ Reviewed by Adam Barth.
+
+ Removed the scheduling of "addtrack" and "removetrack" events by
+ addTrack and removeTrack(). Replaced the test since the old test was
+ driven by the event firing removed by this patch.
+
+ Test: fast/mediastream/MediaStream-add-remove-tracks.html
+
+ * Modules/mediastream/MediaStream.cpp:
+ (WebCore::MediaStream::addTrack):
+ (WebCore::MediaStream::removeTrack):
+
+2013-03-04 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: touchmove not emulated inside iframe
+ https://bugs.webkit.org/show_bug.cgi?id=111292
+
+ Reviewed by Vsevolod Vlasov.
+
+ Move fake touch event dispatching from mouseMoved() into handleMouseMoveEvent()
+ and bail out earlier from dispatchSyntheticTouchEventIfEnabled() when the event
+ should be dispatched on a subframe.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::mouseMoved):
+ (WebCore::EventHandler::handleMouseMoveEvent):
+ (WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
+
+2013-03-04 Mike West <mkwst@chromium.org>
+
+ Long URLs in error messages should be shortened
+ https://bugs.webkit.org/show_bug.cgi?id=111133
+
+ Reviewed by Jochen Eisinger.
+
+ When generating console messages, we're often copying the page's URL
+ in order to add detail about where the error occurred. Generally, this
+ is fine, but in edge cases (multi-meg 'data:' URLs), we're using far
+ more memory than we should, and impacting performance.
+
+ This patch adds an 'elidedString()' method to KURL for use in this
+ sort of case; when generating console messages, we should insert the
+ elided URL rather than the full URL.
+
+ This shouldn't change any visible behavior; we're already visually
+ eliding URLs in console messages for URLs above 150 characters. This
+ patch simply changes the underlying string to ensure that no URL is
+ over 1k in length to begin with.
+
+ * platform/KURL.cpp:
+ (WebCore::KURL::elidedString): Added.
+ * platform/KURL.h:
+ An exciting new method that gives you the same result as string()
+ for URLs less than 1k long, and elides the middle of URLs longer
+ than 1k by replacing everything but the first and last 0.5k with
+ "...".
+ * bindings/ScriptControllerBase.cpp:
+ (WebCore::ScriptController::canExecuteScripts):
+ * Modules/websockets/WebSocket.cpp:
+ (WebCore::WebSocket::connect):
+ (WebCore::WebSocket::send):
+ * Modules/websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::send):
+ (WebCore::WebSocketChannel::fail):
+ * bindings/ScriptControllerBase.cpp:
+ (WebCore::ScriptController::canExecuteScripts):
+ * dom/Document.cpp:
+ (WebCore::Document::processHttpEquiv):
+ * dom/ScriptElement.cpp:
+ (WebCore::ScriptElement::executeScript):
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::canPlayType):
+ (WebCore::HTMLMediaElement::isSafeToLoadURL):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::submitForm):
+ (WebCore::FrameLoader::loadFrameRequest):
+ (WebCore::FrameLoader::commitProvisionalLoad):
+ (WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):
+ (WebCore::FrameLoader::loadProvisionalItemFromCachedPage):
+ (WebCore::createWindow):
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::willSendRequest):
+ (WebCore::MainResourceLoader::responseReceived):
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::didReceiveResponse):
+ (WebCore::ApplicationCacheGroup::didFail):
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::canRequest):
+ (WebCore::CachedResourceLoader::requestResource):
+ (WebCore::CachedResourceLoader::loadResource):
+ (WebCore::CachedResourceLoader::printAccessDeniedMessage):
+ * page/ContentSecurityPolicy.cpp:
+ (WebCore::CSPDirectiveList::checkSourceAndReportViolation):
+ (WebCore::CSPDirectiveList::allowScriptNonce):
+ (WebCore::CSPDirectiveList::allowPluginType):
+ Use 'KURL::elidedString()' rather than 'KURL::string()'
+ * loader/MixedContentChecker.cpp:
+ (WebCore::MixedContentChecker::logWarning):
+ Here, we're doing the same as above, but it enables us to throw
+ away the asUTF8() function entirely by switching to makeString
+ rather than String::format.
+
+2013-03-04 Andrey Lushnikov <lushnikov@chromium.org>
+
+ Web Inspector: add runtime flag to determine if inspector's source files were flattened.
+ https://bugs.webkit.org/show_bug.cgi?id=111184
+
+ Reviewed by Pavel Feldman.
+
+ - Add a file "buildSystemOnly.js" which will be included into
+ devtools.html only by GYP build system. This script sets a single flag
+ which essentially means that inspector source files were run
+ through a build system and flattened.
+ - Update "importScript" and "registerRequiredCSS" functions to correct
+ paths according to the "flattenImports" flag.
+
+ No new tests: no change in behaviour.
+
+ * WebCore.gypi:
+ * inspector/front-end/CodeMirrorTextEditor.js:
+ (WebInspector.CodeMirrorTextEditor):
+ * inspector/front-end/View.js:
+ (WebInspector.View.prototype.registerRequiredCSS):
+ * inspector/front-end/buildSystemOnly.js: Added.
+ * inspector/front-end/utilities.js:
+
+2013-03-04 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Fix front-end compilation
+ https://bugs.webkit.org/show_bug.cgi?id=111286
+
+ Reviewed by Alexander Pavlov.
+
+ * inspector/InjectedScriptSource.js:
+ * inspector/front-end/FileSystemProjectDelegate.js:
+ * inspector/front-end/NavigatorView.js:
+ (WebInspector.NavigatorView.prototype.removeUISourceCode):
+ (WebInspector.NavigatorTreeNode.prototype.reset):
+ (WebInspector.NavigatorFolderTreeNode.prototype.didAddChild):
+
+2013-03-03 Kondapally Kalyan <kalyan.kondapally@intel.com>
+
+ [EFL][WebGL] Add proper checks to enable GraphicsSurface usage on EGL without XCompositeWindow.
+ https://bugs.webkit.org/show_bug.cgi?id=108034
+
+ Reviewed by Laszlo Gombos.
+
+ Covered by existing WebGL tests.
+
+ Currently, we set GRAPHICS_SURFACE to true if support for XCompositeWindow
+ is identified during compile time. This is ok, when using GLX. We might not
+ have support for XCompositeWindow when using EGL and GLES2.0. This patch
+ makes changes so that GRAPHICS_SURFACE is always enabled with EGL and adds
+ GLX guard to the parts of code dependent on XCompositeWindow support.
+
+ * platform/graphics/opengl/GLPlatformSurface.cpp:
+ * platform/graphics/surfaces/glx/GLXConfigSelector.h:
+ (WebCore::GLXConfigSelector::findMatchingConfig):
+ * platform/graphics/surfaces/glx/X11Helper.cpp:
+ (WebCore::X11Helper::createOffScreenWindow):
+ (WebCore::X11Helper::isXRenderExtensionSupported):
+ * platform/graphics/surfaces/glx/X11Helper.h:
+
+2013-03-03 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: [PageAgent] can't find frame by security origin.
+ https://bugs.webkit.org/show_bug.cgi?id=110849
+
+ Use toRawString() in order to compare Frames' SecurityOrigins for storage-related goals.
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/InspectorPageAgent.cpp:
+ (WebCore::InspectorPageAgent::findFrameWithSecurityOrigin):
+
+2013-03-03 Alexander Pavlov <apavlov@chromium.org>
+
+ Unreviewed, rolling out r144455.
+ http://trac.webkit.org/changeset/144455
+ https://bugs.webkit.org/show_bug.cgi?id=111165
+
+ A simpler solution to the SecurityOrigin -> localStorage
+ lookup exists
+
+ * inspector/front-end/DOMStorage.js:
+ (WebInspector.DOMStorage.storageId):
+ (WebInspector.DOMStorage.prototype.get id):
+ (WebInspector.DOMStorage.prototype.getItems):
+ (WebInspector.DOMStorage.prototype.setItem):
+ (WebInspector.DOMStorage.prototype.removeItem):
+ (WebInspector.DOMStorageModel.prototype._securityOriginAdded):
+ (WebInspector.DOMStorageModel.prototype._securityOriginRemoved):
+ (WebInspector.DOMStorageModel.prototype._storageKey):
+ * inspector/front-end/ExtensionAuditCategory.js:
+ * inspector/front-end/FileSystemModel.js:
+ (WebInspector.FileSystemModel.prototype._reset):
+ (WebInspector.FileSystemModel.prototype._securityOriginAdded):
+ (WebInspector.FileSystemModel.prototype._securityOriginRemoved):
+ (WebInspector.FileSystemModel.prototype._addOrigin):
+ (WebInspector.FileSystemModel.prototype._removeOrigin):
+ (WebInspector.FileSystemModel.prototype._requestFileSystemRoot):
+ (WebInspector.FileSystemModel.prototype._fileSystemRootReceived):
+ (WebInspector.FileSystemModel.prototype._removeFileSystem):
+ (WebInspector.FileSystemModel.FileSystem.prototype.get name):
+ * inspector/front-end/IndexedDBModel.js:
+ (WebInspector.IndexedDBModel.prototype._reset):
+ (WebInspector.IndexedDBModel.prototype.refreshDatabaseNames):
+ (WebInspector.IndexedDBModel.prototype._securityOriginAdded):
+ (WebInspector.IndexedDBModel.prototype._securityOriginRemoved):
+ (WebInspector.IndexedDBModel.prototype._addOrigin):
+ (WebInspector.IndexedDBModel.prototype._removeOrigin):
+ (WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
+ (WebInspector.IndexedDBModel.prototype._loadDatabaseNames):
+ (WebInspector.IndexedDBModel.prototype._loadDatabase):
+ (WebInspector.IndexedDBModel.prototype.):
+ (WebInspector.IndexedDBModel.prototype._requestData):
+ (WebInspector.IndexedDBModel.DatabaseId.prototype.equals):
+ * inspector/front-end/IndexedDBViews.js:
+ (WebInspector.IDBDatabaseView.prototype._refreshDatabase):
+ * inspector/front-end/ResourceTreeModel.js:
+ (WebInspector.ResourceTreeModel):
+ (WebInspector.ResourceTreeModel.prototype._addFrame):
+ (WebInspector.ResourceTreeModel.prototype._addSecurityOrigin):
+ (WebInspector.ResourceTreeModel.prototype._removeSecurityOrigin):
+ (WebInspector.ResourceTreeModel.prototype.securityOrigins):
+ (WebInspector.ResourceTreeModel.prototype._handleMainFrameDetached):
+ (WebInspector.ResourceTreeModel.prototype._frameNavigated):
+ (WebInspector.ResourceTreeModel.prototype._frameDetached):
+ (WebInspector.ResourceTreeFrame):
+ (WebInspector.ResourceTreeFrame.prototype._navigate):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.IDBDatabaseTreeElement):
+ (WebInspector.IDBDatabaseTreeElement.prototype.get itemURL):
+ (WebInspector.IDBObjectStoreTreeElement.prototype.get itemURL):
+ (WebInspector.IDBIndexTreeElement.prototype.get itemURL):
+ (WebInspector.DOMStorageTreeElement):
+ (WebInspector.DOMStorageTreeElement.prototype.get itemURL):
+ (WebInspector.FileSystemTreeElement):
+
+2013-03-01 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Let user know when file system based uiSourceCode was changed on disk.
+ https://bugs.webkit.org/show_bug.cgi?id=110133
+
+ Reviewed by Pavel Feldman.
+
+ We now check if file system based uiSourceCode content was updated externally when
+ UISourceCodeFrame is shown or inspector window is focused.
+ If there is no working copy being edited right now we replace old content with the new one silently.
+ Otherwise ask user if he wants to replace his working copy with the new content.
+
+ * English.lproj/localizedStrings.js:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/DefaultTextEditor.js:
+ (WebInspector.DefaultTextEditor.prototype.editRange):
+ * inspector/front-end/FileSystemProjectDelegate.js:
+ (WebInspector.FileSystemProjectDelegate.prototype.innerCallback):
+ (WebInspector.FileSystemProjectDelegate.prototype.requestFileContent):
+ (WebInspector.FileSystemProjectDelegate.prototype._contentRequestFinished):
+ (WebInspector.FileSystemProjectDelegate.prototype.requestUpdatedFileContent):
+ (WebInspector.FileSystemProjectDelegate.prototype.contentCallback):
+ (WebInspector.FileSystemProjectDelegate.prototype.searchInFileContent):
+ * inspector/front-end/JavaScriptSourceFrame.js:
+ (WebInspector.JavaScriptSourceFrame.prototype.wasShown):
+ (WebInspector.JavaScriptSourceFrame.prototype.willHide):
+ * inspector/front-end/SimpleWorkspaceProvider.js:
+ (WebInspector.SimpleProjectDelegate.prototype.requestUpdatedFileContent):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.setContent):
+ * inspector/front-end/UISourceCode.js:
+ (WebInspector.UISourceCode.prototype.checkContentUpdated.updatedContentLoaded):
+ (WebInspector.UISourceCode.prototype.checkContentUpdated):
+ * inspector/front-end/UISourceCodeFrame.js:
+ (WebInspector.UISourceCodeFrame.prototype.wasShown):
+ (WebInspector.UISourceCodeFrame.prototype.willHide):
+ (WebInspector.UISourceCodeFrame.prototype._windowFocused):
+ (WebInspector.UISourceCodeFrame.prototype._checkContentUpdated):
+ * inspector/front-end/Workspace.js:
+ (WebInspector.ProjectDelegate.prototype.requestUpdatedFileContent):
+ (WebInspector.Project.prototype.requestUpdatedFileContent):
+
+2013-03-03 Arpita Bahuguna <a.bah@samsung.com>
+
+ createAttribute/setAttributeNode does not properly normalize case
+ https://bugs.webkit.org/show_bug.cgi?id=90341
+
+ Reviewed by Darin Adler.
+
+ setAttributeNode() verifies for existing attributes in a case sensitive
+ manner. Thus, it would add another attribute if specified in a case
+ different from the existing one. Instead, like setAttribute(), it too
+ should modify the existing attribute's value.
+
+ Test: fast/dom/Element/setAttributeNode-case-insensitivity.html
+
+ * dom/Element.cpp:
+ (WebCore::Element::setAttributeNode):
+ Made changes to check for an existing attribute by converting the
+ specified attribute's localName to lowercase.
+
+2013-03-03 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewed. Rebaselined run-bindings-tests.
+
+ * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
+ (WebCore::TestActiveDOMObjectV8Internal::indexedSecurityCheck):
+ (TestActiveDOMObjectV8Internal):
+ (WebCore::TestActiveDOMObjectV8Internal::namedSecurityCheck):
+ (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
+ * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
+ (V8TestActiveDOMObject):
+
+2013-03-03 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewed build fix after r144590.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateSecurityCheckFunctions):
+
+2013-03-03 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewed build fix after r144587.
+
+ * bindings/v8/V8Binding.cpp:
+ (WebCore::toV8Context):
+ * bindings/v8/V8MutationCallback.cpp:
+ (WebCore::V8MutationCallback::V8MutationCallback):
+
+2013-03-01 Kentaro Hara <haraken@chromium.org>
+
+ [V8] HTMLDocument.all should have [Replaceable]
+ https://bugs.webkit.org/show_bug.cgi?id=111230
+
+ Reviewed by Adam Barth.
+
+ (Although HTMLDocument.all is already removed from the spec,)
+ it is expected to behave as a [Replaceable] attribute. By adding
+ a [Replaceable] IDL attribute, we can remove custom implementation
+ of HTMLDocument.all.
+
+ I confimed that exactly the same code is generated for .all getter
+ and setter.
+
+ No tests. No change in behavior.
+
+ * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
+ * html/HTMLDocument.idl:
+
+2013-03-01 Kentaro Hara <haraken@chromium.org>
+
+ [V8] indexedSecurityCheck() and namedSecurityCheck() should be auto-generated
+ https://bugs.webkit.org/show_bug.cgi?id=111225
+
+ Reviewed by Adam Barth.
+
+ indexedSecurityCheck() and namedSecurityCheck() should be auto-generated,
+ except for DOMWindow's ones.
+
+ No tests. No change in behavior.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateHeader):
+ (GenerateImplementation):
+ (GenerateSecurityCheckFunctions):
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ (WebCore::V8DOMWindow::namedSecurityCheckCustom):
+ (WebCore::V8DOMWindow::indexedSecurityCheckCustom):
+ * bindings/v8/custom/V8HistoryCustom.cpp:
+ * bindings/v8/custom/V8LocationCustom.cpp:
+
+2013-03-01 Kentaro Hara <haraken@chromium.org>
+
+ [V8] Rename $implContentDecls to $implContentInternals in CodeGeneratorV8.pm
+ https://bugs.webkit.org/show_bug.cgi?id=111214
+
+ Reviewed by Adam Barth.
+
+ $implContentDecls stores generated code that is put in a namespace 'XXXV8Internal'.
+ For clarification, it should be renamed to $implContentInternals.
+
+ No tests. No change in behavior.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateDomainSafeFunctionGetter):
+ (GenerateDomainSafeFunctionSetter):
+ (GenerateConstructorGetter):
+ (GenerateNormalAttrGetterCallback):
+ (GenerateNormalAttrGetter):
+ (GenerateReplaceableAttrSetterCallback):
+ (GenerateReplaceableAttrSetter):
+ (GenerateNormalAttrSetterCallback):
+ (GenerateNormalAttrSetter):
+ (GenerateOverloadedFunction):
+ (GenerateFunctionCallback):
+ (GenerateFunction):
+ (GenerateOverloadedConstructorCallback):
+ (GenerateSingleConstructorCallback):
+ (GenerateEventConstructor):
+ (GenerateTypedArrayConstructor):
+ (GenerateImplementation):
+ (WriteData):
+
+2013-03-01 Kentaro Hara <haraken@chromium.org>
+
+ [V8] Rename getWorld() to isolatedWorld(), and getWorldForEnteredContext() to isolatedWorldForEnteredContext()
+ https://bugs.webkit.org/show_bug.cgi?id=111212
+
+ Reviewed by Adam Barth.
+
+ The rename I did in r142424 was wrong. Given that getWorld() returns 0
+ for the main world, it should be named isolatedWorld(). Similarly,
+ given that getWorldForEnteredContext() returns 0 for the main world,
+ it should be named isolatedWorldForEnteredContext().
+
+ No tests. No change in behavior.
+
+ * bindings/v8/CustomElementHelpers.cpp:
+ (WebCore::CustomElementHelpers::isFeatureAllowed):
+ * bindings/v8/DOMDataStore.cpp:
+ (WebCore::DOMDataStore::current):
+ * bindings/v8/DOMWrapperWorld.cpp:
+ (WebCore::DOMWrapperWorld::makeContextWeak):
+ * bindings/v8/DOMWrapperWorld.h:
+ (WebCore::DOMWrapperWorld::isolatedWorld):
+ * bindings/v8/ScriptController.cpp:
+ (WebCore::ScriptController::shouldBypassMainWorldContentSecurityPolicy):
+ (WebCore::ScriptController::currentWorldContext):
+ * bindings/v8/V8Binding.h:
+ (WebCore::isolatedWorldForEnteredContext):
+ * bindings/v8/WorldContextHandle.cpp:
+ (WebCore::WorldContextHandle::WorldContextHandle):
+ * bindings/v8/custom/V8DocumentCustom.cpp:
+ (WebCore::wrap):
+ * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
+ (WebCore::wrap):
+ * bindings/v8/custom/V8SVGDocumentCustom.cpp:
+ (WebCore::wrap):
+ * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
+ (WebCore::V8XMLHttpRequest::constructorCustom):
+
+2013-03-01 Kentaro Hara <haraken@chromium.org>
+
+ [V8] Move HTMLDocument::getNamedProperty() to DOMWindowShell
+ https://bugs.webkit.org/show_bug.cgi?id=111223
+
+ Reviewed by Adam Barth.
+
+ HTMLDocument::getNamedProperty() is used by DOMWindowShell.
+ It can be a static method in DOMWindowShell.
+
+ No tests. No change in behavior.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateHeader):
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::getNamedProperty):
+ (WebCore):
+ (WebCore::getter):
+ * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
+
+2013-03-03 Dan Bernstein <mitz@apple.com>
+
+ Build fix after r144565. Reverted r144533.
+
+ * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h:
+
+2013-03-03 Adam Barth <abarth@webkit.org>
+
+ Attempt to fix the Qt build after r144498
+ https://bugs.webkit.org/show_bug.cgi?id=111272
+
+ Reviewed by Eric Seidel.
+
+ Update the Qt version of the XML parser to call the new API.
+
+ * xml/parser/XMLDocumentParserQt.cpp:
+ (WebCore::XMLDocumentParser::resumeParsing):
+ (WebCore::XMLDocumentParser::appendFragmentSource):
+
+2013-03-03 Dean Jackson <dino@apple.com>
+
+ Plug-ins that are appropriately large w.r.t page size should autostart
+ https://bugs.webkit.org/show_bug.cgi?id=111242
+
+ Reviewed by Brady Eidson.
+
+ A "full-page" plug-in site should never snapshot. The trick is
+ how to determine what is full-page. This change implements the
+ following algorithm.
+
+ - The plug-in is in the main frame (not an iframe).
+ - The plug-in is sized with width and height 100%.
+ - The displayed area of the plug-in is more than 96% of the viewport area.
+
+ This is definitely not foolproof. For example, zombo.com has a slight
+ border around its plug-in. As the window size gets smaller, the body margin
+ takes up more than 5% of the width or height, and the plug-in doesn't pass
+ the tests above.
+
+ * html/HTMLPlugInImageElement.cpp:
+ (WebCore): New static constant: sizingFullPageThresholdPercentage
+ (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Implements
+ the rules described above.
+
+2013-03-03 Ryosuke Niwa <rniwa@webkit.org>
+
+ [Win] IDLParser.pm fails to parse OESTextureHalfFloat and causes a build failure
+ https://bugs.webkit.org/show_bug.cgi?id=111267
+
+ Reviewed by Kentaro Hara.
+
+ Allow empty definitions.
+
+ * bindings/scripts/IDLParser.pm:
+ (Parse):
+
+2013-03-03 David Kilzer <ddkilzer@apple.com>
+
+ BUILD FIX: RenderLayerFilterInfo.h needs to include Element.h with ENABLE(SVG)
+
+ Fixes the following build failures:
+
+ In file included from Source/WebCore/rendering/RenderLayerFilterInfo.cpp:33:
+ Source/WebCore/rendering/RenderLayerFilterInfo.h:118:19: error: use of undeclared identifier 'Element'
+ Vector<RefPtr<Element> > m_internalSVGReferences;
+ ^
+ Source/WebCore/rendering/RenderLayerFilterInfo.h:118:28: error: expected a type
+ Vector<RefPtr<Element> > m_internalSVGReferences;
+ ^
+ Source/WebCore/rendering/RenderLayerFilterInfo.h:118:30: error: private field 'm_internalSVGReferences' is not used [-Werror,-Wunused-private-field]
+ Vector<RefPtr<Element> > m_internalSVGReferences;
+ ^
+ 3 errors generated.
+
+ * rendering/RenderLayerFilterInfo.h: Include Element.h within
+ ENABLE(SVG). Move ENABLE(SVG) block below unconditional
+ headers.
+
+2013-03-03 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r144567.
+ http://trac.webkit.org/changeset/144567
+ https://bugs.webkit.org/show_bug.cgi?id=111266
+
+ Does not compile on apple-win (Requested by abarth on
+ #webkit).
+
+ * WebCore.exp.in:
+ * dom/Document.cpp:
+ (WebCore::Document::iconURLs):
+ * dom/Document.h:
+ (Document):
+ * loader/icon/IconController.cpp:
+ (WebCore::IconController::iconURL):
+ (WebCore::IconController::urlsForTypes):
+ * loader/icon/IconController.h:
+ (IconController):
+ * testing/Internals.cpp:
+ (WebCore::Internals::iconURLs):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2013-03-03 Mike West <mkwst@chromium.org>
+
+ CSP 1.1: Support CSP 1.1 directives on the unprefixed header.
+ https://bugs.webkit.org/show_bug.cgi?id=111254
+
+ Reviewed by Adam Barth.
+
+ We'd like to ensure that early adopters don't get stuck on a prefixed
+ header; when CSP 1.1 is baked enough to be supported in multiple
+ browsers, everything should Just Workâ„¢.
+
+ This patch changes WebKit's behavior regarding CSP_NEXT features.
+ Currently, they're only exposed on the prefixed header ('X-WebKit-CSP').
+ This patch exposes those features on the canonical header, assuming
+ that the runtime flag is set. This shouldn't have any effect at all on
+ ports that haven't yet enabled CSP_NEXT, and will simply clear the way
+ for a clean deployment to a wider audience once the specification
+ process is further along.
+
+ This change shouldn't have any effect on the existing tests: they
+ should run just as they did before. The next step will be to adjust
+ the LayoutTests for 1.1 to prefer the canonical header, but I'll do
+ that in another patch to reduce churn.
+
+ Related, the enum names no longer made sense: the difference between the
+ canonical 'Content-Security-Policy' header and 'X-WebKit-CSP' is the
+ prefix, not the functionality. This patch renames them for clarity.
+
+ * dom/Document.cpp:
+ (WebCore::Document::processHttpEquiv):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::didBeginDocument):
+ Use the new enum names.
+ * page/ContentSecurityPolicy.cpp:
+ (CSPDirectiveList):
+ (WebCore::CSPDirectiveList::CSPDirectiveList):
+ (WebCore::CSPDirectiveList::addDirective):
+ Drop the 'm_experimental' property from CSPDirectiveList; we'll
+ control the behavior via the runtime flag from now on.
+
+ Also, this fixes a small bug in 'addDirective()': we never threw
+ unrecognized directive errors for users who were sending the
+ prefixed header. Oops!
+ (WebCore::ContentSecurityPolicy::deprecatedHeaderType):
+ Use the new enum names.
+ * page/ContentSecurityPolicy.h:
+ Redefine the enum for clarity: 'PrefixedReport' and 'Report'
+ rather than 'ReportAllDirectives' and 'ReportStableDirectives'.
+
+2013-03-03 Ryosuke Niwa <rniwa@webkit.org>
+
+ Another Windows build fix attempt after r144567.
+ Try touching the IDL file in a hope it'll regenerate JSInternals.cpp.
+
+ * testing/Internals.idl:
+
+2013-03-03 Adam Barth <abarth@webkit.org>
+
+ Unreviewed attempted build fix. Adds back some includes removed in
+ http://trac.webkit.org/changeset/144565.
+
+ * Modules/mediastream/RTCPeerConnection.cpp:
+ * bindings/ScriptControllerBase.cpp:
+ * bindings/objc/DOM.mm:
+ * bindings/v8/ScriptController.cpp:
+ * bindings/v8/V8DOMWindowShell.cpp:
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ * css/CSSFontSelector.cpp:
+ * css/WebKitCSSSVGDocumentValue.cpp:
+ * dom/DOMImplementation.cpp:
+ * dom/PendingScript.h:
+ * dom/ScriptElement.cpp:
+ * dom/ScriptElement.h:
+ * history/CachedFrame.cpp:
+ * html/DOMURL.cpp:
+ * html/HTMLAnchorElement.cpp:
+ * html/HTMLAppletElement.cpp:
+ * html/HTMLElement.cpp:
+ * html/HTMLEmbedElement.cpp:
+ * html/HTMLFrameSetElement.cpp:
+ * html/HTMLHtmlElement.cpp:
+ * html/HTMLImageElement.cpp:
+ * html/HTMLObjectElement.cpp:
+ * html/HTMLPlugInElement.cpp:
+ * html/ImageDocument.cpp:
+ * html/ImageInputType.cpp:
+ * html/MediaDocument.cpp:
+ * html/PluginDocument.cpp:
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore):
+ * html/parser/HTMLConstructionSite.cpp:
+ * html/parser/HTMLParserOptions.cpp:
+ * html/parser/XSSAuditorDelegate.cpp:
+ * inspector/InspectorDebuggerAgent.cpp:
+ * inspector/InspectorFileSystemAgent.cpp:
+ * inspector/InspectorFrontendHost.cpp:
+ * inspector/InspectorInstrumentation.h:
+ * inspector/InspectorPageAgent.cpp:
+ * inspector/NetworkResourcesData.cpp:
+ * inspector/NetworkResourcesData.h:
+ (WebCore):
+ * loader/CookieJar.cpp:
+ * loader/CrossOriginAccessControl.cpp:
+ * loader/FrameLoader.cpp:
+ * loader/MainResourceLoader.cpp:
+ * loader/MixedContentChecker.cpp:
+ * loader/PingLoader.cpp:
+ * loader/SubframeLoader.cpp:
+ * loader/SubresourceLoader.cpp:
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ * loader/appcache/ApplicationCacheHost.cpp:
+ * loader/cache/CachedResource.cpp:
+ * loader/icon/IconController.cpp:
+ * page/DOMWindowExtension.cpp:
+ * page/Frame.cpp:
+ * page/PerformanceTiming.cpp:
+ * page/PointerLockController.cpp:
+ * page/animation/CSSPropertyAnimation.cpp:
+ * platform/chromium/PasteboardChromium.cpp:
+ * platform/efl/ErrorsEfl.cpp:
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ * platform/gtk/ErrorsGtk.cpp:
+ * platform/gtk/PasteboardGtk.cpp:
+ * platform/gtk/PasteboardHelper.h:
+ * platform/mac/ClipboardMac.mm:
+ * platform/mac/HTMLConverter.mm:
+ * platform/qt/PasteboardQt.cpp:
+ * plugins/DOMMimeType.cpp:
+ * plugins/PluginView.cpp:
+ * rendering/HitTestResult.cpp:
+ * rendering/RenderImage.cpp:
+ * rendering/RenderImageResource.cpp:
+ * rendering/RenderImageResourceStyleImage.cpp:
+ * rendering/RenderLayer.cpp:
+ * rendering/RenderLayerBacking.cpp:
+ * svg/SVGImageLoader.cpp:
+ * svg/SVGUseElement.cpp:
+ * testing/MockPagePopupDriver.cpp:
+ * xml/XSLStyleSheet.h:
+ (WebCore):
+
+2013-03-03 Ruslan Abdikeev <aruslan@chromium.org>
+
+ <link rel="apple-touch-icon"> tag is not honored on CNN.com, workflowy.com etc
+ https://bugs.webkit.org/show_bug.cgi?id=109061
+
+ Reviewed by Adam Barth.
+
+ Test: fast/dom/icon-url-list-apple-touch.html
+
+ Added iconTypes parameter to Document::iconURLs().
+ Added Document::shortcutIconURLs() with original semantics of iconURLs().
+ Fixed IconController.cpp to provide iconTypesMask to iconURLs().
+ Renamed iconTypes to iconTypesMask to make the meaning clearer.
+
+ * WebCore.exp.in:
+ * dom/Document.cpp:
+ (WebCore::Document::shortcutIconURLs):
+ (WebCore):
+ (WebCore::Document::iconURLs):
+ * dom/Document.h:
+ (Document):
+ * loader/icon/IconController.cpp:
+ (WebCore::IconController::iconURL):
+ (WebCore::IconController::urlsForTypes):
+ * testing/Internals.cpp:
+ (WebCore::Internals::iconURLs):
+ (WebCore::Internals::shortcutIconURLs):
+ (WebCore):
+ (WebCore::Internals::allIconURLs):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2013-03-03 Mike West <mkwst@chromium.org>
+
+ CSP: Throw a warning when a '*-report-only' header doesn't contain a 'report-uri' directive.
+ https://bugs.webkit.org/show_bug.cgi?id=111208
+
+ Reviewed by Adam Barth.
+
+ Developers in the wild have been observed to serve a report-only CSP
+ header with a policy that doesn't contain a 'report-uri' directive.
+ This has zero effect, of course, and we should help them understand
+ that by throwing a warning up on the console.
+
+ Test: http/tests/security/contentSecurityPolicy/report-only-report-uri-missing.html
+
+ * page/ContentSecurityPolicy.cpp:
+ (WebCore::CSPDirectiveList::isReportOnly): Added.
+ (WebCore::CSPDirectiveList::reportURIs): Added.
+ (WebCore::CSPDirectiveList::create):
+ After creating a CSPDirectiveList, check whether it's in
+ report-only mode without a report-uri. If so, warn the developer.
+ (WebCore::ContentSecurityPolicy::reportMissingReportURI): Added.
+ Write an exciting message to the console, warning the developer
+ about her expensive no-op machine.
+
+2013-03-03 Adam Barth <abarth@webkit.org>
+
+ Unreviewed rollout of http://trac.webkit.org/r144530
+ As described in https://bugs.webkit.org/show_bug.cgi?id=111167 and
+ https://bugs.webkit.org/show_bug.cgi?id=111035, this patch caused a
+ large number of ASSERTs in chromium-win.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * Modules/mediastream/RTCPeerConnection.cpp:
+ * Modules/notifications/Notification.cpp:
+ * Target.pri:
+ * WebCore.exp.in:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.vcxproj/WebCore.vcxproj:
+ * WebCore.vcxproj/WebCore.vcxproj.filters:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/ScriptControllerBase.cpp:
+ * bindings/js/JSNodeCustom.cpp:
+ * bindings/js/ScriptController.cpp:
+ * bindings/js/ScriptSourceCode.h:
+ (WebCore):
+ * bindings/objc/DOM.mm:
+ * bindings/v8/ScriptController.cpp:
+ * bindings/v8/V8DOMWindowShell.cpp:
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ * css/CSSCrossfadeValue.h:
+ (WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
+ (WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::CrossfadeSubimageObserverProxy):
+ * css/CSSFontFaceSource.h:
+ * css/CSSFontSelector.cpp:
+ * css/WebKitCSSSVGDocumentValue.cpp:
+ * css/WebKitCSSSVGDocumentValue.h:
+ (WebCore):
+ * dom/Clipboard.cpp:
+ (WebCore::Clipboard::Clipboard):
+ * dom/ContainerNode.cpp:
+ * dom/DOMImplementation.cpp:
+ * dom/PendingScript.h:
+ * dom/ScriptElement.cpp:
+ * dom/ScriptElement.h:
+ * history/CachedFrame.cpp:
+ * html/DOMURL.cpp:
+ * html/HTMLAnchorElement.cpp:
+ * html/HTMLAppletElement.cpp:
+ * html/HTMLElement.cpp:
+ * html/HTMLEmbedElement.cpp:
+ * html/HTMLFrameSetElement.cpp:
+ * html/HTMLHtmlElement.cpp:
+ * html/HTMLImageElement.cpp:
+ * html/HTMLObjectElement.cpp:
+ * html/HTMLPlugInElement.cpp:
+ * html/ImageDocument.cpp:
+ * html/ImageInputType.cpp:
+ * html/MediaDocument.cpp:
+ * html/PluginDocument.cpp:
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore):
+ * html/parser/HTMLConstructionSite.cpp:
+ * html/parser/HTMLParserOptions.cpp:
+ * html/parser/HTMLScriptRunner.h:
+ * html/parser/XSSAuditor.cpp:
+ * html/parser/XSSAuditorDelegate.cpp:
+ * inspector/InspectorDebuggerAgent.cpp:
+ * inspector/InspectorFileSystemAgent.cpp:
+ * inspector/InspectorFrontendHost.cpp:
+ * inspector/InspectorInstrumentation.h:
+ (WebCore):
+ * inspector/InspectorPageAgent.cpp:
+ * inspector/NetworkResourcesData.cpp:
+ * inspector/NetworkResourcesData.h:
+ (WebCore):
+ * loader/CookieJar.cpp:
+ * loader/CrossOriginAccessControl.cpp:
+ * loader/CrossOriginAccessControl.h:
+ (WebCore):
+ * loader/CrossOriginPreflightResultCache.h:
+ * loader/DocumentThreadableLoader.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::FrameLoader):
+ * loader/FrameLoader.h:
+ (WebCore):
+ (WebCore::FrameLoader::policyChecker):
+ * loader/ImageLoader.cpp:
+ * loader/ImageLoader.h:
+ * loader/LinkLoader.h:
+ (WebCore):
+ * loader/MainResourceLoader.cpp:
+ * loader/MainResourceLoader.h:
+ (WebCore):
+ * loader/MixedContentChecker.cpp:
+ * loader/PingLoader.cpp:
+ * loader/PolicyChecker.h:
+ (WebCore):
+ * loader/ProgressTracker.cpp:
+ * loader/SubframeLoader.cpp:
+ * loader/SubresourceLoader.cpp:
+ * loader/TextTrackLoader.cpp:
+ * loader/TextTrackLoader.h:
+ (WebCore):
+ * loader/ThreadableLoader.h:
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ * loader/appcache/ApplicationCacheGroup.h:
+ (WebCore):
+ * loader/appcache/ApplicationCacheHost.cpp:
+ * loader/archive/cf/LegacyWebArchive.cpp:
+ * loader/cache/CachedFont.cpp:
+ * loader/cache/CachedFont.h:
+ (CachedFontClient):
+ (WebCore::CachedFontClient::~CachedFontClient):
+ (WebCore::CachedFontClient::expectedType):
+ (WebCore::CachedFontClient::resourceClientType):
+ (WebCore::CachedFontClient::fontLoaded):
+ (WebCore):
+ * loader/cache/CachedFontClient.h: Removed.
+ * loader/cache/CachedImage.cpp:
+ * loader/cache/CachedRawResource.cpp:
+ * loader/cache/CachedRawResource.h:
+ (WebCore):
+ (CachedRawResourceClient):
+ (WebCore::CachedRawResourceClient::~CachedRawResourceClient):
+ (WebCore::CachedRawResourceClient::expectedType):
+ (WebCore::CachedRawResourceClient::resourceClientType):
+ (WebCore::CachedRawResourceClient::dataSent):
+ (WebCore::CachedRawResourceClient::responseReceived):
+ (WebCore::CachedRawResourceClient::dataReceived):
+ (WebCore::CachedRawResourceClient::redirectReceived):
+ (WebCore::CachedRawResourceClient::dataDownloaded):
+ * loader/cache/CachedRawResourceClient.h: Removed.
+ * loader/cache/CachedResource.cpp:
+ * loader/cache/CachedResourceHandle.cpp:
+ (WebCore):
+ * loader/cache/CachedResourceHandle.h:
+ (WebCore):
+ (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
+ (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
+ * loader/cache/CachedSVGDocument.h:
+ (CachedSVGDocumentClient):
+ (WebCore::CachedSVGDocumentClient::~CachedSVGDocumentClient):
+ (WebCore::CachedSVGDocumentClient::expectedType):
+ (WebCore::CachedSVGDocumentClient::resourceClientType):
+ (WebCore):
+ * loader/cache/CachedSVGDocumentClient.h: Removed.
+ * loader/cache/CachedSVGDocumentReference.cpp: Removed.
+ * loader/cache/CachedSVGDocumentReference.h:
+ (WebCore):
+ (WebCore::CachedSVGDocumentReference::CachedSVGDocumentReference):
+ (WebCore::CachedSVGDocumentReference::~CachedSVGDocumentReference):
+ * loader/cache/CachedStyleSheetClient.h:
+ (WebCore):
+ * loader/cache/MemoryCache.h:
+ (WebCore):
+ (MemoryCache):
+ * loader/chromium/CachedRawResourceChromium.cpp:
+ * loader/icon/IconController.cpp:
+ * loader/icon/IconLoader.h:
+ * loader/mac/ResourceLoaderMac.mm:
+ * page/DOMWindowExtension.cpp:
+ * page/Frame.cpp:
+ (WebCore::Frame::Frame):
+ (WebCore):
+ (WebCore::Frame::reportMemoryUsage):
+ * page/Frame.h:
+ (WebCore):
+ (Frame):
+ (WebCore::Frame::init):
+ (WebCore::Frame::loader):
+ * page/PerformanceNavigation.cpp:
+ * page/PerformanceTiming.cpp:
+ * page/PointerLockController.cpp:
+ * page/Settings.cpp:
+ * page/animation/CSSPropertyAnimation.cpp:
+ * platform/chromium/PasteboardChromium.cpp:
+ * platform/efl/ErrorsEfl.cpp:
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
+ * platform/graphics/filters/FilterOperation.cpp:
+ (WebCore):
+ * platform/graphics/filters/FilterOperation.h:
+ (WebCore):
+ (WebCore::FilterOperation::ReferenceFilterOperation::setCachedSVGDocumentReference):
+ (WebCore::FilterOperation::ReferenceFilterOperation::ReferenceFilterOperation):
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ * platform/gtk/ErrorsGtk.cpp:
+ * platform/gtk/PasteboardGtk.cpp:
+ * platform/gtk/PasteboardHelper.h:
+ * platform/mac/ClipboardMac.h:
+ * platform/mac/ClipboardMac.mm:
+ * platform/mac/HTMLConverter.mm:
+ * platform/mac/PasteboardMac.mm:
+ * platform/network/AuthenticationChallengeBase.cpp:
+ * platform/network/cf/CookieJarCFNet.cpp:
+ * platform/network/cf/ResourceRequestCFNet.cpp:
+ * platform/network/mac/CookieStorageMac.mm:
+ * platform/qt/PasteboardQt.cpp:
+ * plugins/DOMMimeType.cpp:
+ * plugins/PluginRequest.h: Removed.
+ * plugins/PluginStream.h:
+ (PluginStreamClient):
+ (WebCore::PluginStreamClient::~PluginStreamClient):
+ (WebCore::PluginStreamClient::streamDidFinishLoading):
+ (WebCore):
+ * plugins/PluginStreamClient.h: Removed.
+ * plugins/PluginView.cpp:
+ * plugins/PluginView.h:
+ (WebCore):
+ (PluginRequest):
+ (WebCore::PluginRequest::PluginRequest):
+ (WebCore::PluginRequest::frameLoadRequest):
+ (WebCore::PluginRequest::notifyData):
+ (WebCore::PluginRequest::sendNotification):
+ (WebCore::PluginRequest::shouldAllowPopups):
+ * rendering/HitTestResult.cpp:
+ * rendering/InlineFlowBox.cpp:
+ * rendering/RenderBox.cpp:
+ * rendering/RenderEmbeddedObject.cpp:
+ * rendering/RenderImage.cpp:
+ * rendering/RenderImageResource.cpp:
+ (WebCore::RenderImageResource::RenderImageResource):
+ (WebCore):
+ * rendering/RenderImageResource.h:
+ (WebCore::RenderImageResource::image):
+ (WebCore::RenderImageResource::errorOccurred):
+ (WebCore::RenderImageResource::usesImageContainerSize):
+ (WebCore::RenderImageResource::imageHasRelativeWidth):
+ (WebCore::RenderImageResource::imageHasRelativeHeight):
+ (WebCore::RenderImageResource::imageSize):
+ * rendering/RenderImageResourceStyleImage.cpp:
+ * rendering/RenderLayer.cpp:
+ * rendering/RenderLayerBacking.cpp:
+ * rendering/RenderLayerFilterInfo.h:
+ (WebCore):
+ * rendering/RenderListItem.cpp:
+ * rendering/RenderListMarker.cpp:
+ * rendering/RenderSnapshottedPlugIn.cpp:
+ * rendering/RenderTableCol.cpp:
+ * rendering/RenderTableRow.cpp:
+ * rendering/RenderTableSection.cpp:
+ * rendering/style/StyleCachedShader.h:
+ * rendering/style/StyleCustomFilterProgram.cpp: Removed.
+ * rendering/style/StyleCustomFilterProgram.h:
+ (WebCore):
+ (WebCore::StyleCustomFilterProgram::vertexShaderString):
+ (StyleCustomFilterProgram):
+ (WebCore::StyleCustomFilterProgram::fragmentShaderString):
+ (WebCore::StyleCustomFilterProgram::isLoaded):
+ (WebCore::StyleCustomFilterProgram::willHaveClients):
+ (WebCore::StyleCustomFilterProgram::didRemoveLastClient):
+ (WebCore::StyleCustomFilterProgram::notifyFinished):
+ * svg/SVGFEImageElement.h:
+ * svg/SVGFontFaceUriElement.h:
+ (SVGFontFaceUriElement):
+ * svg/SVGImageLoader.cpp:
+ * svg/SVGUseElement.cpp:
+ * svg/SVGUseElement.h:
+ * svg/graphics/SVGImageCache.cpp:
+ * testing/MockPagePopupDriver.cpp:
+ * xml/XSLStyleSheet.h:
+ (WebCore):
+ * xml/XSLTProcessorLibxslt.cpp:
+ * xml/parser/XMLDocumentParser.cpp:
+ * xml/parser/XMLDocumentParser.h:
+ * xml/parser/XMLDocumentParserLibxml2.cpp:
+
+2013-03-03 Kentaro Hara <haraken@chromium.org>
+
+ [V8] Remove TranslateParameter() from CodeGeneratorV8.pm
+ https://bugs.webkit.org/show_bug.cgi?id=111218
+
+ Reviewed by Adam Barth.
+
+ TranslateParameter() does nothing. It tries to convert TimeoutHandler to DOMString,
+ but there is no non-custom method that uses TimeoutHandler.
+
+ The only place where TimeoutHandler is used in the WebKit IDL is setTimeout() and setInterval().
+ However, the latest spec uses 'any' instead of TimeoutHandler.
+ http://dev.w3.org/html5/spec-LC/timers.html
+ Thus, this patch updates the IDL declarations of setTimeout() and setInterval()
+ according to the spec. By this change, TimeoutHandler is gone away from the WebKit IDL.
+ (Anyway this IDL change has no effect, because setTimeout() and setInterval() are written
+ in custom bindings.)
+
+ No tests. No change in behavior.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateParametersCheck):
+ * page/DOMWindow.idl:
+ * workers/WorkerContext.idl:
+
+2013-03-03 James Weatherall <wez@chromium.org>
+
+ keydown and keyup events have zero keycode for some numeric pad keys under Chromium on Linux
+ https://bugs.webkit.org/show_bug.cgi?id=85642
+
+ Add missing key mappings for GDK_KP_Begin, GDK_KP_Insert, GDK_KP_Delete and GDK_ISO_Level3_Shift.
+
+ Reviewed by Adam Barth.
+
+ * platform/chromium/KeyCodeConversionGtk.cpp:
+ (WebCore::windowsKeyCodeForKeyEvent):
+
+2013-03-03 Adam Barth <abarth@webkit.org>
+
+ REGRESSION(144520): Does not compile on chromium-win
+ https://bugs.webkit.org/show_bug.cgi?id=111261
+
+ Unreviewed rollout of http://trac.webkit.org/changeset/144520. This
+ patch does not compile for chromium-win. See the bug for the compile
+ error.
+
+ * rendering/ExclusionShapeInsideInfo.cpp:
+ * rendering/ExclusionShapeInsideInfo.h:
+ (WebCore):
+ (LineSegmentRange):
+ (WebCore::LineSegmentRange::LineSegmentRange):
+ (WebCore::ExclusionShapeInsideInfo::isEnabledFor):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::willBeDestroyed):
+ (WebCore::RenderBlock::exclusionShapeInsideInfo):
+ (WebCore):
+ (WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange):
+ * rendering/RenderBlock.h:
+ (WebCore):
+ (RenderBlock):
+ (RenderBlockRareData):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::constructBidiRunsForLine):
+
+2013-03-02 Zan Dobersek <zdobersek@igalia.com>
+
+ REGRESSION (r144517): IndexedDB layout test failures on GTK
+ https://bugs.webkit.org/show_bug.cgi?id=111243
+
+ Reviewed by Martin Robinson.
+
+ Changes to the custom JSC bindings for IDBAny are required after r144517,
+ specifically the case of IDBAny object having the KeyPathType type has to be covered.
+ These changes are analogous to those made to the V8 bindings in the mentioned commit.
+
+ No new tests - already covered by existing tests.
+
+ * bindings/js/JSIDBAnyCustom.cpp:
+ (WebCore::toJS): A helper function that wraps an IDBKeyPath into a JSValue.
+ (WebCore): Shuffle the order inside the switch statement a bit to match the V8 custom bindings.
+ Cover the case where the IDBAny object has the KeyPathType, calling the new helper method.
+
+2013-03-02 Darin Adler <darin@apple.com>
+
+ Another try at fixing the build.
+
+ * loader/cache/MemoryCache.cpp: Added an include of CachedResourceHandle.h.
+
+2013-03-02 Darin Adler <darin@apple.com>
+
+ Try to fix build.
+
+ * inspector/InspectorInstrumentation.h: Add missing forward declaration
+ of CachedResource.
+
+2013-02-18 Darin Adler <darin@apple.com>
+
+ Cut down the number of source files that depend on Clipboard.h
+ https://bugs.webkit.org/show_bug.cgi?id=110030
+
+ Reviewed by Ryosuke Niwa.
+
+ I am doing some work on Clipboard and it's better to recompile 50 files
+ each time we touch the header instead of 700. Also cut down on includes
+ of DragState.h.
+
+ * WebCore.exp.in: Updated for new MouseEvent::create function.
+
+ * dom/ClipboardEvent.cpp: Added include of Clipboard.h since we use it
+ here and the world no longer includes it everywhere.
+
+ * dom/ClipboardEvent.h: Forward declared Clipboard instead of including
+ Clipboard.h. Also made some overrides private because they can be.
+
+ * dom/DataTransferItem.h: Removed unneeded include of Clipboard.h.
+
+ * dom/MouseEvent.cpp: Added include of Clipboard.h since we use it
+ here and the world no longer includes it everywhere.
+ (WebCore::MouseEvent::create): Made the create function non-inline
+ since we can't compile it without including Clipboard.h and we don't
+ want to include Clipboard.h in the header. This is not so commonly
+ used or so hot that this needs to be inlined.
+
+ * dom/MouseEvent.h: Forward declared Clipboard instead of including
+ Clipboard.h. Made MouseEvent::create a non-inline function and also
+ used overloading instead of default arguments, since we can't compile
+ a default argument of type PassRefPtr<Clipboard> without including
+ Clipboard.h.
+
+ * dom/WheelEvent.cpp: Added include of Clipboard.h since we use it
+ here and the world no longer includes it everywhere.
+
+ * dom/WheelEvent.h: Forward declare PlatformWheelEvent since it is used
+ in this header. Previously we'd get it indirectly from including a header
+ that included Clipboard.h.
+
+ * editing/Editor.cpp: Added include of Clipboard.h since we use it here
+ and the world no longer includes it everywhere.
+
+ * inspector/InspectorDebuggerAgent.cpp: Added include of CachedResource.h.
+ We used to get this indirectly through Clipboard.h.
+
+ * inspector/InspectorFrontendHost.cpp: Added includes of ResourceError.h
+ and ResourceResponse.h. We used to get these indirectly through Clipboard.h.
+ Also removed unneeded include of <wtf/RefPtr.h>.
+
+ * inspector/NetworkResourcesData.cpp: Added include of CachedResource.h.
+ We used to get this indirectly through Clipboard.h.
+
+ * loader/PingLoader.cpp: Added include of ResourceResponse.h.
+ We used to get this indirectly through Clipboard.h.
+
+ * page/DragController.cpp: Added include of DragState.h.
+ We used to get this indirectly through EventHandler.h
+
+ * page/EventHandler.h: Forward declared DragState and Element instead of
+ including DragState.h. Also added an include of LayoutPoint.h, which we
+ used to get indirectly through DragState.h.
+
+2013-02-27 Darin Adler <darin@apple.com>
+
+ StringHasher functions require alignment that call sites do not all guarantee
+ https://bugs.webkit.org/show_bug.cgi?id=110171
+
+ Reviewed by Benjamin Poulain.
+
+ * platform/graphics/WidthCache.h:
+ (WebCore::WidthCache::SmallStringKey::SmallStringKey): Use the newly added
+ addCharactersAssumingAligned to make sure we don't slow this call site down.
+ It's safe since this code always adds characters two at a time.
+
+2013-03-02 Adam Barth <abarth@webkit.org>
+
+ XSSAuditor has a subtle race condition when used with the threaded HTML parser
+ https://bugs.webkit.org/show_bug.cgi?id=111253
+
+ Reviewed by Eric Seidel.
+
+ We were refing and derefing a StringImpl for a main-thread
+ AtomicString. Using QualifiedNames on the background thread is very
+ fragile and we should figure out a more robust solution.
+
+ * html/parser/XSSAuditor.cpp:
+ (WebCore::findAttributeWithName):
+
+2013-03-02 Benjamin Poulain <bpoulain@apple.com>
+
+ Move computedStyleIncludingVisitedInfo from TestRunner to Internals
+ https://bugs.webkit.org/show_bug.cgi?id=109772
+
+ Reviewed by Andreas Kling.
+
+ The function computedStyleIncludingVisitedInfo() is purely internal to WebCore,
+ it is better defined on Internals than on TestRunner.
+
+ * testing/Internals.cpp:
+ (WebCore::Internals::computedStyleIncludingVisitedInfo):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2013-03-02 David Kilzer <ddkilzer@apple.com>
+
+ BUILD FIX (r143637): Export ScriptController::javaScriptContext() on iOS
+ <http://webkit.org/b/106059>
+
+ Fixes the following build failure:
+
+ Undefined symbols for architecture armv7:
+ "__ZN7WebCore16ScriptController17javaScriptContextEv", referenced from:
+ -[WebFrame javaScriptContext] in WebFrame.o
+ __ZN20WebFrameLoaderClient35dispatchDidClearWindowObjectInWorldEPN7WebCore15DOMWrapperWorldE in WebFrameLoaderClient.o
+ ld: symbol(s) not found for architecture armv7
+
+ * WebCore.exp.in: Export ScriptController::javaScriptContext()
+ even more unconditionally.
+
+2013-03-02 Eric Seidel <eric@webkit.org>
+
+ Remove two unnecessary mallocs from the main-thread-parser code path
+ https://bugs.webkit.org/show_bug.cgi?id=111249
+
+ Reviewed by Adam Barth.
+
+ I noticed these while fixing up our Vector -> String conversions
+ but never went back to fix the FIXME.
+
+ AtomicString(Vector<UChar, capacity>) is smart enough to avoid mallocing
+ if the represented string is already in the AtomicString table. It
+ also handles 8bit vs. 16bit and empty() just like nameString() does.
+
+ I also removed a 3rd caller to nameString() in the XSSAuditor which
+ was causing an unnecessary malloc in both the main and background
+ thread parser paths.
+
+ * html/parser/AtomicHTMLToken.h:
+ (WebCore::AtomicHTMLToken::AtomicHTMLToken):
+ * html/parser/HTMLToken.h:
+ * html/parser/XSSAuditor.cpp:
+ (WebCore):
+ (WebCore::threadSafeMatch):
+ (WebCore::hasName):
+
+2013-03-02 Eric Seidel <eric@webkit.org>
+
+ constructTreeFromCompactHTMLToken should call clearExternalCharacters
+ https://bugs.webkit.org/show_bug.cgi?id=111248
+
+ Reviewed by Adam Barth.
+
+ I don't know how to write a test for this. It's possible characters()
+ is never accessed from HTMLStackItem::token(), but it's better to be
+ safe than sorry here.
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::constructTreeFromCompactHTMLToken):
+
+2013-03-02 Rob Buis <rbuis@rim.com>
+
+ Text overflow ellipsis wrong color when using webkit-text-fill-color
+ https://bugs.webkit.org/show_bug.cgi?id=54841
+
+ Reviewed by David Hyatt.
+
+ Take -webkit-text-fill-color into account for ellipsis painting.
+
+ Test: fast/css/text-overflow-ellipsis-color.html
+
+ * rendering/EllipsisBox.cpp:
+ (WebCore::EllipsisBox::paint):
+
+2013-03-02 Ryosuke Niwa <rniwa@webkit.org>
+
+ Fix a typo in my previous commit (r144534).
+
+ * platform/win/PasteboardWin.cpp:
+
+2013-03-02 Nayan Kumar K <nayankk@motorola.com>
+
+ [WebGL] Support for texImage2D of type HALF_FLOAT_OES with ArrayBufferView.
+ https://bugs.webkit.org/show_bug.cgi?id=110818
+
+ Reviewed by Kenneth Russell.
+
+ As per OES_texture_half_float specification texImage2D and texSubImage2D entry
+ points taking ArrayBufferView should extended to accept null with the pixel type
+ HALF_FLOAT_OES.
+
+ Tests: fast/canvas/webgl/oes-texture-half-float-not-supported.html
+ fast/canvas/webgl/oes-texture-half-float.html
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSWebGLRenderingContextCustom.cpp:
+ (WebCore::toJS):
+ * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
+ (WebCore::toV8Object):
+ * html/canvas/OESTextureHalfFloat.cpp: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
+ (WebCore):
+ (WebCore::OESTextureHalfFloat::OESTextureHalfFloat):
+ (WebCore::OESTextureHalfFloat::~OESTextureHalfFloat):
+ (WebCore::OESTextureHalfFloat::getName):
+ (WebCore::OESTextureHalfFloat::create):
+ * html/canvas/OESTextureHalfFloat.h: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
+ (WebCore):
+ (OESTextureHalfFloat):
+ * html/canvas/OESTextureHalfFloat.idl: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
+ * html/canvas/WebGLExtension.h:
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore):
+ (WebCore::WebGLRenderingContext::getExtension):
+ (WebCore::WebGLRenderingContext::texImage2D):
+ (WebCore::WebGLRenderingContext::texSubImage2D):
+ (WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):
+ (WebCore::WebGLRenderingContext::validateTexFuncData):
+ * html/canvas/WebGLRenderingContext.h:
+ (WebCore):
+ (WebGLRenderingContext):
+ * html/canvas/WebGLRenderingContext.idl:
+ * platform/graphics/Extensions3D.h:
+ (Extensions3D):
+ * platform/graphics/GraphicsContext3D.cpp:
+ (WebCore::GraphicsContext3D::computeFormatAndTypeParameters):
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/GraphicsTypes3D.h:
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::texImage2D):
+
+2013-03-02 Ryosuke Niwa <rniwa@webkit.org>
+
+ Windows build fix attempt after r144530.
+
+ * platform/win/PasteboardWin.cpp:
+
+2013-03-01 Dan Bernstein <mitz@apple.com>
+
+ Tried to fix the build after r144530.
+
+ * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h: Include the header for the
+ base class.
+
+2013-03-01 Terry Anderson <tdanderson@chromium.org>
+
+ Remove unused member variable m_useLatchedEventNode from PlatformWheelEvent.h
+ https://bugs.webkit.org/show_bug.cgi?id=107314
+
+ Reviewed by Darin Adler.
+
+ EventHandler::handleGestureScrollCore() was removed in http://trac.webkit.org/changeset/140177,
+ and this was the only place where the member variable |m_useLatchedEventNode| in
+ PlatformWheelEvent was mutated. This variable is no longer needed and so it should be removed.
+
+ No change in behavior, so no new tests needed.
+
+ * platform/PlatformWheelEvent.h:
+ (WebCore::PlatformWheelEvent::PlatformWheelEvent):
+ (WebCore::PlatformWheelEvent::useLatchedEventNode):
+ (PlatformWheelEvent):
+
+2013-02-28 Alexey Proskuryakov <ap@apple.com>
+
+ Reduce amount of rebuilding when touching networking headers
+ https://bugs.webkit.org/show_bug.cgi?id=111035
+
+ Reviewed by Eric Seidel.
+
+ This uses a number of common unsurprising techniques. One interesting observation
+ is that including CachedResource related headers is very expensive. We can usually
+ get away with their Client counterparts, and with CachedResourceHandle.
+
+ * page/Frame.cpp:
+ * page/Frame.h:
+ Don't include FrameLoader, greatly reducing include graph for most non-loader files.
+ This required making Frame::init() non-inline - I'm not sure why it ever was.
+
+ * loader/FrameLoader.cpp:
+ * loader/FrameLoader.h:
+ Even though FrameLoader is logically on loading side of WebCore, it's included in
+ too many places. Not including PolicyChecker.h and ResourceHandle.h was among the
+ largest wins. As a future improvement, we should probably convert other members
+ to OwnPtrs.
+
+ * css/CSSCrossfadeValue.h: Initializing CachedResourceHandle with 0 requires a
+ definition of a class it holds, but default construction does not.
+
+ * loader/CrossOriginAccessControl.h: This file among others only needs ResourceHandleTypes.h,
+ not ResourceHandle.h. This header is semi-recent, so not all include sites were updated.
+
+ * loader/cache/CachedFont.h:
+ * loader/cache/CachedFontClient.h: Added.
+ * loader/cache/CachedRawResource.h:
+ * loader/cache/CachedRawResourceClient.h: Added.
+ * loader/cache/CachedSVGDocument.h:
+ * loader/cache/CachedSVGDocumentClient.h: Added.
+ These types were defining client types in the same headers, making it impossible
+ to avoid including networking headers through CachedResource. Moved clients into
+ separate files.
+
+ * plugins/PluginStream.h:
+ * plugins/PluginStreamClient.h: Added.
+ Similar situation here.
+
+ * loader/cache/CachedResourceHandle.cpp:
+ * loader/cache/CachedResourceHandle.h:
+ Moved functions that need to know about CachedResource to .cpp file. This is another
+ huge win. Added a destructor, so that CachedResource woudn't be needed in all files
+ that include CachedResourceHandle.
+
+ * loader/cache/CachedSVGDocumentReference.cpp: Added.
+ * loader/cache/CachedSVGDocumentReference.h:
+ Moved constructor and virtual function implementations to a .cpp file - they need
+ not inlining, and this lets us avoid including CachedSVGDocument.h in the header.
+
+ * platform/graphics/filters/FilterOperation.cpp:
+ * platform/graphics/filters/FilterOperation.h:
+ Avoid including CachedSVGDocumentReference.h. This is not such a big win now that
+ CachedSVGDocumentReference.h itself is smaller, but FilterOperation is so clearly
+ rendering code that it seems best to cut any ties with resources and loading.
+ Added a virtual destrutor in .cpp file, because inline destructors in polymorphic
+ classes are generally harmful (due to code bloat).
+
+ * plugins/PluginRequest.h: Added.
+ * plugins/PluginView.h:
+ Moved PluginRequest into a separate file, it was out of place in a view hierarchy
+ class file.
+
+ * rendering/RenderImageResource.cpp:
+ * rendering/RenderImageResource.h:
+ Moved definitions of virtual functions to a .cpp file. Thre is no win from having
+ them inline, and now we don't need CachedImage.h in the header.
+
+ * rendering/style/StyleCustomFilterProgram.cpp: Added.
+ * rendering/style/StyleCustomFilterProgram.h:
+ Ditto.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * Modules/mediastream/RTCPeerConnection.cpp:
+ * Modules/notifications/Notification.cpp:
+ * Target.pri:
+ * WebCore.exp.in:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.vcxproj/WebCore.vcxproj:
+ * WebCore.vcxproj/WebCore.vcxproj.filters:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/ScriptControllerBase.cpp:
+ * bindings/js/JSNodeCustom.cpp:
+ * bindings/js/ScriptController.cpp:
+ * bindings/js/ScriptSourceCode.h:
+ * bindings/objc/DOM.mm:
+ * bindings/v8/ScriptController.cpp:
+ * bindings/v8/V8DOMWindowShell.cpp:
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ * css/CSSFontFaceSource.h:
+ * css/CSSFontSelector.cpp:
+ * css/WebKitCSSSVGDocumentValue.cpp:
+ * css/WebKitCSSSVGDocumentValue.h:
+ * dom/Clipboard.cpp:
+ * dom/ContainerNode.cpp:
+ * dom/DOMImplementation.cpp:
+ * dom/PendingScript.h:
+ * dom/ScriptElement.cpp:
+ * dom/ScriptElement.h:
+ * history/CachedFrame.cpp:
+ * html/DOMURL.cpp:
+ * html/HTMLAnchorElement.cpp:
+ * html/HTMLAppletElement.cpp:
+ * html/HTMLElement.cpp:
+ * html/HTMLEmbedElement.cpp:
+ * html/HTMLFrameSetElement.cpp:
+ * html/HTMLHtmlElement.cpp:
+ * html/HTMLImageElement.cpp:
+ * html/HTMLObjectElement.cpp:
+ * html/HTMLPlugInElement.cpp:
+ * html/ImageDocument.cpp:
+ * html/ImageInputType.cpp:
+ * html/MediaDocument.cpp:
+ * html/PluginDocument.cpp:
+ * html/canvas/WebGLRenderingContext.cpp:
+ * html/parser/HTMLConstructionSite.cpp:
+ * html/parser/HTMLParserOptions.cpp:
+ * html/parser/HTMLScriptRunner.h:
+ * html/parser/XSSAuditor.cpp:
+ * html/parser/XSSAuditorDelegate.cpp:
+ * inspector/InspectorDebuggerAgent.cpp:
+ * inspector/InspectorFileSystemAgent.cpp:
+ * inspector/InspectorFrontendHost.cpp:
+ * inspector/InspectorInstrumentation.h:
+ * inspector/InspectorPageAgent.cpp:
+ * inspector/NetworkResourcesData.cpp:
+ * inspector/NetworkResourcesData.h:
+ * loader/CookieJar.cpp:
+ * loader/CrossOriginAccessControl.cpp:
+ * loader/CrossOriginPreflightResultCache.h:
+ * loader/DocumentThreadableLoader.h:
+ * loader/ImageLoader.cpp:
+ * loader/ImageLoader.h:
+ * loader/LinkLoader.h:
+ * loader/MainResourceLoader.cpp:
+ * loader/MainResourceLoader.h:
+ * loader/MixedContentChecker.cpp:
+ * loader/PingLoader.cpp:
+ * loader/PolicyChecker.h:
+ * loader/ProgressTracker.cpp:
+ * loader/SubframeLoader.cpp:
+ * loader/SubresourceLoader.cpp:
+ * loader/TextTrackLoader.cpp:
+ * loader/TextTrackLoader.h:
+ * loader/ThreadableLoader.h:
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ * loader/appcache/ApplicationCacheGroup.h:
+ * loader/appcache/ApplicationCacheHost.cpp:
+ * loader/archive/cf/LegacyWebArchive.cpp:
+ * loader/cache/CachedFont.cpp:
+ * loader/cache/CachedImage.cpp:
+ * loader/cache/CachedRawResource.cpp:
+ * loader/cache/CachedResource.cpp:
+ * loader/cache/CachedStyleSheetClient.h:
+ * loader/cache/MemoryCache.cpp:
+ * loader/cache/MemoryCache.h:
+ * loader/chromium/CachedRawResourceChromium.cpp:
+ * loader/icon/IconController.cpp:
+ * loader/icon/IconLoader.h:
+ * loader/mac/ResourceLoaderMac.mm:
+ * page/DOMWindowExtension.cpp:
+ * page/DragController.cpp:
+ * page/PerformanceNavigation.cpp:
+ * page/PerformanceTiming.cpp:
+ * page/PointerLockController.cpp:
+ * page/Settings.cpp:
+ * page/animation/CSSPropertyAnimation.cpp:
+ * platform/chromium/PasteboardChromium.cpp:
+ * platform/efl/ErrorsEfl.cpp:
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ * platform/gtk/ErrorsGtk.cpp:
+ * platform/gtk/PasteboardGtk.cpp:
+ * platform/gtk/PasteboardHelper.h:
+ * platform/mac/ClipboardMac.h:
+ * platform/mac/ClipboardMac.mm:
+ * platform/mac/HTMLConverter.mm:
+ * platform/mac/PasteboardMac.mm:
+ * platform/network/AuthenticationChallengeBase.cpp:
+ * platform/network/cf/CookieJarCFNet.cpp:
+ * platform/network/cf/ResourceRequestCFNet.cpp:
+ * platform/network/mac/CookieStorageMac.mm:
+ * platform/qt/PasteboardQt.cpp:
+ * plugins/DOMMimeType.cpp:
+ * plugins/PluginView.cpp:
+ * rendering/HitTestResult.cpp:
+ * rendering/InlineFlowBox.cpp:
+ * rendering/RenderBox.cpp:
+ * rendering/RenderEmbeddedObject.cpp:
+ * rendering/RenderImage.cpp:
+ * rendering/RenderImageResourceStyleImage.cpp:
+ * rendering/RenderLayer.cpp:
+ * rendering/RenderLayerBacking.cpp:
+ * rendering/RenderLayerFilterInfo.h:
+ * rendering/RenderListItem.cpp:
+ * rendering/RenderListMarker.cpp:
+ * rendering/RenderSnapshottedPlugIn.cpp:
+ * rendering/RenderTableCol.cpp:
+ * rendering/RenderTableRow.cpp:
+ * rendering/RenderTableSection.cpp:
+ * rendering/style/StyleCachedShader.h:
+ * svg/SVGFEImageElement.h:
+ * svg/SVGFontFaceUriElement.h:
+ * svg/SVGImageLoader.cpp:
+ * svg/SVGUseElement.cpp:
+ * svg/SVGUseElement.h:
+ * svg/graphics/SVGImageCache.cpp:
+ * testing/MockPagePopupDriver.cpp:
+ * xml/XSLStyleSheet.h:
+ * xml/XSLTProcessorLibxslt.cpp:
+ * xml/parser/XMLDocumentParser.cpp:
+ * xml/parser/XMLDocumentParser.h:
+ * xml/parser/XMLDocumentParserLibxml2.cpp:
+ Many self-evident changes - removing unnecessary header includes, adding smaller
+ more local ones that are now necessary.
+
+2013-03-01 David Hyatt <hyatt@apple.com>
+
+ [New Multicolumn] Transformed objects inside fragmented transparent objects don't render
+ https://bugs.webkit.org/show_bug.cgi?id=111221.
+
+ Reviewed by Simon Fraser.
+
+ Improve transparencyClipBox so that it understands when moving into descendants
+ that it does in fact have to break up the transformed clip rect across the
+ fragments.
+
+ Make sure when handling fragmented transforms using multiple paints that
+ the test that determines the extent of the transform within the fragments
+ uses transparencyClipBox. This gives us an accurate set of columns that the
+ final transformed result will paint across.
+
+ Tests: fast/multicol/mixed-opacity-fixed-test.html
+ fast/multicol/mixed-opacity-test.html
+ fast/multicol/transform-inside-opacity.html
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::transparencyClipBox):
+ (WebCore::expandClipRectForDescendantsAndReflection):
+ Break transformed boxes up into fragments when they are
+ being requested by an ancestor.
+
+ (WebCore::RenderLayer::collectFragments):
+ (WebCore::RenderLayer::paintTransformedLayerIntoFragments):
+ (WebCore::RenderLayer::hitTestTransformedLayerInFragments):
+ * rendering/RenderLayer.h:
+ (RenderLayer):
+ Modify collectFragments so that we pass in the correct range
+ within the columns that can possibly cover the fragmented
+ transformed box.
+
+2013-03-01 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: Native Memory Instrumentation: do not visit raw pointers by default.
+ https://bugs.webkit.org/show_bug.cgi?id=110943
+
+ Reviewed by Yury Semikhatsky.
+
+ Unfortunately in many cases raw pointer may point to an object that has been deleted.
+ There is no working solution to solve this problem in general.
+ It could be solved only on case by case basis.
+
+ * inspector/HeapGraphSerializer.cpp:
+ (WebCore::HeapGraphSerializer::HeapGraphSerializer):
+ (WebCore::HeapGraphSerializer::reportLeaf):
+ * loader/cache/MemoryCache.cpp:
+ (WebCore::MemoryCache::reportMemoryUsage):
+ * platform/graphics/BitmapImage.cpp:
+ (WebCore::FrameData::reportMemoryUsage):
+ * platform/graphics/skia/MemoryInstrumentationSkia.cpp:
+ (reportMemoryUsage):
+
+2013-03-01 Kentaro Hara <haraken@chromium.org>
+
+ Style recalculation takes too long when adding whitespace text nodes
+ https://bugs.webkit.org/show_bug.cgi?id=110786
+
+ Reviewed by Darin Adler.
+
+ // This takes 216 msec.
+ for (var i = 0; i < 1500; ++i) {
+ document.body.appendChild(document.createTextNode('x'));
+ document.body.appendChild(document.createElement('div'));
+ document.body.appendChild(document.createTextNode('x'));
+ }
+
+ // But this takes 25.3 seconds.
+ for (var i = 0; i < 1500; ++i) {
+ document.body.appendChild(document.createTextNode(' '));
+ document.body.appendChild(document.createElement('div'));
+ document.body.appendChild(document.createTextNode(' '));
+ }
+
+ The reason is that we do not create renderers for empty text
+ nodes and thus we are hitting the worst O(N^2) case in Node::attach().
+ (See FIXME in Node::attach().)
+
+ This patch adds a logic to bail out the loop to avoid the O(N^2) case.
+ Specifically, the patch bails out the loop if we encounter a text node
+ for which we again decided not to create a renderer. This bail out is
+ reasonable because the fact that we again decided not to create a renderer
+ for the text node indicates that there will be no affect of the result
+ of Text::textRendererIsNeeded() of the rest of the sibling nodes.
+
+ Performance test: https://bugs.webkit.org/attachment.cgi?id=190545
+ Performance result in Chromium/Linux: 25.3 sec => 48 msec !
+
+ Test: perf/append-text-nodes-without-renderers.html (for performance)
+ fast/dynamic/create-renderer-for-whitespace-only-text.html (for correctness)
+
+ The loop was introduced in r29054. We have to make sure that
+ all layout tests that were updated in r29054 pass with this patch.
+ See http://trac.webkit.org/changeset/29054.
+
+ * dom/Node.cpp:
+ (WebCore::Node::attach):
+
+2013-03-01 Jason Anderssen <janderssen@gmail.com>
+
+ Moved markerTextForListItem from TestRunner to Internals
+ https://bugs.webkit.org/show_bug.cgi?id=110939
+
+ Reviewed by Benjamin Poulain.
+
+ TestRunner framework is an old way of testing webkit, it would be
+ better to incorporate the testing frame directly into the WebCore itself
+ as to make it more compatible with WK2.
+
+ * testing/Internals.cpp:
+ (WebCore::Internals::markerTextForListItem):
+ (WebCore):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2013-03-01 Elliott Sprehn <esprehn@gmail.com>
+
+ Don't leak Documents when using MutationObserver from extensions
+ https://bugs.webkit.org/show_bug.cgi?id=111234
+
+ Reviewed by Adam Barth.
+
+ MutationObserverCallback holds a WorldContextHandle which secretly isn't
+ a handle to anything when it's for the main world. When it's for a non-main
+ world though, like those used in extensions, it becomes a strong reference
+ to the v8::Context which results in leaks by creating cycles:
+
+ MutationObserver -> Callback -> World -> Document -> Node -> MutationObserver.
+
+ Instead we should keep a RefPtr to a DOMWrapperWorld in the callback and then
+ get the v8::Context from that inside handleEvent.
+
+ Tests: ManualTests/leak-observer-nonmain-world.html
+
+ * bindings/v8/V8Binding.cpp:
+ (WebCore::toV8Context): Added overload that takes a DOMWrapperWorld.
+ * bindings/v8/V8Binding.h:
+ * bindings/v8/V8MutationCallback.cpp:
+ (WebCore::V8MutationCallback::V8MutationCallback):
+ (WebCore::V8MutationCallback::handleEvent):
+ * bindings/v8/V8MutationCallback.h:
+ (V8MutationCallback):
+
+2013-03-01 Bear Travis <betravis@adobe.com>
+
+ [css exclusions] Move ExclusionShapeInsideInfo into RenderBlockRareData
+ https://bugs.webkit.org/show_bug.cgi?id=110995
+
+ Reviewed by Julien Chaffraix.
+
+ This patch moves ExclusionShapeInsideInfo into the RenderBlockRareData struct,
+ which enables us to move away from the global ExclusionShapeInsideInfo map.
+ Some additional refactoring was done to remove ExclusionShapeInsideInfo's
+ dependency on InlineIterator, which depended on RenderBlock. This work required
+ adding a new LineSegmentIterator struct.
+
+ Refactoring, no new tests.
+
+ * rendering/ExclusionShapeInsideInfo.cpp:
+ (WebCore):
+ (WebCore::LineSegmentRange::LineSegmentRange): Moving the InlineIterator
+ constructor to the .cpp file, as InlineIterator is now forward declared in
+ the .h file.
+ (WebCore::ExclusionShapeInsideInfo::isEnabledFor): Moving isEnabledFor to
+ the .cpp file, as RenderBlock is now forward declared in the .h file.
+ * rendering/ExclusionShapeInsideInfo.h:
+ (WebCore):
+ (LineSegmentIterator): A simple struct for containing segment positions for
+ layout.
+ (WebCore::LineSegmentIterator::LineSegmentIterator): Constructor.
+ (LineSegmentRange): Transitioning to store LineSegmentIterator.
+ (WebCore::LineSegmentRange::LineSegmentRange): Ditto.
+ (ExclusionShapeInsideInfo):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::willBeDestroyed): Destroying a block will now destroy
+ its ExclusionShapeInsideInfo, so there is no need to remove it from the map.
+ (WebCore):
+ (WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange): Use
+ the RenderBlockRareData struct rather than the global map.
+ * rendering/RenderBlock.h:
+ (WebCore):
+ (WebCore::RenderBlock::ensureExclusionShapeInsideInfo): Ensure an info struct
+ is present if the shape-inside style is set.
+ (WebCore::RenderBlock::exclusionShapeInsideInfo): Look up the info struct for
+ the current block.
+ (WebCore::RenderBlock::setExclusionShapeInsideInfo): Update the info struct
+ for the current block.
+ (RenderBlockRareData): Add the ExclusionShapeInsideInfo member.
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::constructBidiRunsForLine): Construct the appropriate offsets during
+ layout based on the stored LineSegmentIterators.
+
+2013-03-01 Terry Anderson <tdanderson@chromium.org>
+
+ EventHandler::handleGestureScrollUpdate() should invoke the user-generated scroll routines
+ so its behavior matches other user-initiated scrolls
+ https://bugs.webkit.org/show_bug.cgi?id=109769
+
+ Reviewed by James Robinson.
+
+ To ensure that the scrolling behavior of GestureScrollUpdate events are consistent with
+ the scrolling behavior of mousewheel events, use the existing user-generated scroll logic
+ instead of calling into RenderLayer::scrollByRecursively(). This patch fixes the bug
+ reported in https://bugs.webkit.org/show_bug.cgi?id=109316, where the example page can
+ be scrolled using touch but cannot be scrolled using mousewheels.
+
+ Note that this patch does not use any of the mousewheel event-handling code.
+
+ Tests: fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html
+ fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html
+ fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html
+ fast/events/touch/gesture/touch-gesture-noscroll-body.html
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::clear):
+ (WebCore::EventHandler::handleGestureEvent):
+ (WebCore::EventHandler::handleGestureScrollBegin):
+ (WebCore::EventHandler::handleGestureScrollUpdate):
+ (WebCore::EventHandler::sendScrollEventToView):
+ By calling this function at the start of handleGestureScrollUpdate() in the case
+ where |m_scrollGestureHandlingNode| is null, we ensure that the scroll updates
+ can still scroll the page itself, if possible.
+ (WebCore):
+ (WebCore::EventHandler::clearGestureScrollNodes):
+ * page/EventHandler.h:
+ (EventHandler):
+ * platform/PlatformWheelEvent.h:
+ (WebCore::PlatformWheelEvent::setHasPreciseScrollingDeltas):
+
+2013-03-01 Alec Flett <alecflett@chromium.org>
+
+ IndexedDB: Avoid ScriptValue copies in IDBAny
+ https://bugs.webkit.org/show_bug.cgi?id=111002
+
+ Reviewed by Adam Barth.
+
+ This avoids some v8 handle thrashing in the long term,
+ and protects us against some crashes in the short term.
+
+ The crashes will be fixed in
+ https://bugs.webkit.org/show_bug.cgi?id=110206.
+
+ * Modules/indexeddb/IDBAny.cpp:
+ (WebCore::IDBAny::createNull):
+ (WebCore::IDBAny::createString):
+ (WebCore::IDBAny::IDBAny):
+ (WebCore::IDBAny::scriptValue):
+ * Modules/indexeddb/IDBAny.h:
+ (WebCore::IDBAny::create):
+ (IDBAny):
+ (WebCore::IDBAny::keyPath):
+ * bindings/v8/custom/V8IDBAnyCustom.cpp:
+ (WebCore::toV8):
+ (WebCore):
+
+2013-03-01 Victor Carbune <vcarbune@chromium.org>
+
+ Support padding, margin and border for internal UA cue styling
+ https://bugs.webkit.org/show_bug.cgi?id=110703
+
+ Reviewed by Eric Carlson.
+
+ For some particular user agent styling this allows the possibility
+ of making the window around the cue text bigger to match some user
+ styles (see CaptionUserPreferencesMac::captionsStyleSheetOverride).
+
+ These properties *cannot* be set through by using the ::cue
+ pseudo-element and, as specified, are used only internally.
+
+ Note: This patch is identical to the previously commited one,
+ as it was rolled back without related tests failing.
+
+ Test: media/track/track-cue-rendering-with-padding.html
+
+ * css/mediaControls.css:
+ (video::-webkit-media-text-track-display): Set the CSS box model
+ to include in the specified width or height the values of
+ padding / margin / border by using -webkit-box-sizing and avoid
+ overflow over 100% width because of having these properties set.
+ * rendering/RenderTextTrackCue.cpp:
+ (WebCore::RenderTextTrackCue::isOutside): To not interfere with
+ the regular WebVTT positioning algorithm, the check is done for
+ the absolute content box.
+ (WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet): Added
+ an extra adjustment step to accomodate vertical padding (and not
+ overflow the cue container)
+
+2013-03-01 Andy Estes <aestes@apple.com>
+
+ REGRESSION (r125809): CFStrings created via StringImpl::createCFString() might reference freed memory when Objective-C garbage collection is enabled
+ https://bugs.webkit.org/show_bug.cgi?id=111219
+
+ Reviewed by Benjamin Poulain.
+
+ StringImpl::createCFString() uses CFStringCreateWithBytesNoCopy() in
+ order to create CFString without making an unnecessary copy. In order
+ to ensure that the the StringImpl's backing buffer isn't deallocated
+ while the CFString is still alive, we use a custom CFAllocator to
+ ref/deref the StringImpl at the appropriate times.
+
+ However, custom allocators aren't supported when Objective-C garbage
+ collection is enabled, so in this case we use the default CF allocator.
+ Since we can't guarantee the lifetime of the StringImpl in this case,
+ we should just fall back to copying the string, as we did prior to r125809.
+
+ * platform/text/cf/StringImplCF.cpp:
+ (garbageCollectionEnabled): Moved the check for whether garbage
+ collection is enabled from StringWrapperCFAllocator::create() to here.
+ (WTF::StringWrapperCFAllocator::create): Call garbageCollectionEnabled().
+ (WTF::StringImpl::createCFString): If garbage collection is enabled,
+ call the variants of CFStringCreate that copy the string.
+
+2013-03-01 Roger Fong <roger_fong@apple.com>
+
+ Unreviewed AppleWin build fix.
+
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::ResourceHandle::createCFURLConnection):
+
+2013-03-01 Martin Robinson <mrobinson@igalia.com>
+
+ [GTK] Allow sharing the WebCore include list with the Chromium build
+ https://bugs.webkit.org/show_bug.cgi?id=110241
+
+ Reviewed by Dirk Pranke.
+
+ * WebCore.gyp/WebCoreGTK.gyp: Added. A skeleton gyp file for WebCoreGTK+.
+ * WebCore.gypi: Added shared include directories.
+
+2013-03-01 Alexey Proskuryakov <ap@apple.com>
+
+ Make in-memory blobs work in NetworkProcess
+ https://bugs.webkit.org/show_bug.cgi?id=111132
+
+ Reviewed by Sam Weinig.
+
+ * WebCore.exp.in:
+ * WebCore.xcodeproj/project.pbxproj:
+ Exported functions now needed by WebKit2, and made some headers Private instead
+ of Project.
+
+2013-03-01 Eric Seidel <eric@webkit.org>
+
+ Threaded HTML Parser has an extra copy of every byte from the network
+ https://bugs.webkit.org/show_bug.cgi?id=111135
+
+ Reviewed by Adam Barth.
+
+ Every LayoutTest executes this code in threaded parsing mode.
+
+ * dom/DecodedDataDocumentParser.cpp:
+ (WebCore::DecodedDataDocumentParser::appendBytes):
+ - Pass ownership of the decoded string to the parser.
+ (WebCore::DecodedDataDocumentParser::flush):
+ - Same.
+ * dom/DecodedDataDocumentParser.h:
+ (DecodedDataDocumentParser):
+ * dom/Document.cpp:
+ (WebCore::Document::setContent):
+ * dom/DocumentParser.h:
+ (DocumentParser):
+ * dom/RawDataDocumentParser.h:
+ (WebCore::RawDataDocumentParser::append):
+ * html/FTPDirectoryDocument.cpp:
+ (FTPDirectoryDocumentParser):
+ (WebCore::FTPDirectoryDocumentParser::append):
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::append):
+ * html/parser/HTMLDocumentParser.h:
+ (HTMLDocumentParser):
+ * html/parser/HTMLViewSourceParser.cpp:
+ (WebCore::HTMLViewSourceParser::append):
+ * html/parser/HTMLViewSourceParser.h:
+ (HTMLViewSourceParser):
+ * html/parser/TextDocumentParser.cpp:
+ (WebCore::TextDocumentParser::append):
+ * html/parser/TextDocumentParser.h:
+ (TextDocumentParser):
+ * loader/DocumentWriter.cpp:
+ (WebCore::DocumentWriter::replaceDocument):
+ * xml/parser/XMLDocumentParser.cpp:
+ (WebCore::XMLDocumentParser::append):
+ * xml/parser/XMLDocumentParser.h:
+ (XMLDocumentParser):
+ * xml/parser/XMLDocumentParserLibxml2.cpp:
+ (WebCore::XMLDocumentParser::resumeParsing):
+
+2013-03-01 David Hyatt <hyatt@apple.com>
+
+ [New Multicolumn] Change inRenderFlowThread to follow containing block chain
+ https://bugs.webkit.org/show_bug.cgi?id=111206
+
+ Reviewed by Simon Fraser.
+
+ This patch removes inRenderFlowThread and changes enclosingRenderFlowThread()
+ to flowThreadContainingBlock(). flowThreadContainingBlock() now follows
+ the containing block chain instead of the parent chain when outside of layout.
+ (It already did the right thing when called during layout.)
+
+ By removing inRenderFlowThread (which was following the parent chain), all
+ code that is checking for flow thread containment now correctly uses the
+ containing block chain. This allows for content to escape in-flow flow threads
+ and do the right thing without asserting.
+
+ Test: fast/multicol/positioned-outside-of-columns.html
+
+ * dom/WebKitNamedFlow.cpp:
+ (WebCore::inFlowThread):
+ (WebCore::WebKitNamedFlow::getRegionsByContent):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::removeLeftoverAnonymousBlock):
+ (WebCore::RenderBlock::collapseAnonymousBoxChild):
+ (WebCore::RenderBlock::updateRegionsAndExclusionsLogicalSize):
+ (WebCore::RenderBlock::computeRegionRangeForBlock):
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::computeOverflow):
+ (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
+ (WebCore::RenderBlock::computeLogicalLocationForFloat):
+ (WebCore::RenderBlock::logicalLeftOffsetForContent):
+ (WebCore::RenderBlock::logicalRightOffsetForContent):
+ (WebCore::RenderBlock::hasNextPage):
+ (WebCore::RenderBlock::applyBeforeBreak):
+ (WebCore::RenderBlock::applyAfterBreak):
+ (WebCore::RenderBlock::pageLogicalTopForOffset):
+ (WebCore::RenderBlock::pageLogicalHeightForOffset):
+ (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
+ (WebCore::RenderBlock::adjustForUnsplittableChild):
+ (WebCore::RenderBlock::adjustLinePositionForPagination):
+ (WebCore::RenderBlock::lineWidthForPaginatedLineChanged):
+ (WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage):
+ (WebCore::RenderBlock::regionAtBlockOffset):
+ (WebCore::RenderBlock::setStaticInlinePositionForChild):
+ (WebCore::RenderBlock::logicalWidthChangedInRegions):
+ (WebCore::RenderBlock::clampToStartAndEndRegions):
+ * rendering/RenderBlock.h:
+ (RenderBlock):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::layoutExclusionShapeInsideInfo):
+ (WebCore::LineLayoutState::LineLayoutState):
+ (WebCore::LineLayoutState::flowThread):
+ (WebCore::LineLayoutState::setFlowThread):
+ (LineLayoutState):
+ (WebCore::RenderBlock::layoutRunsAndFloatsInRange):
+ (WebCore::RenderBlock::linkToEndLineIfNeeded):
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::determineStartPosition):
+ (WebCore::RenderBlock::checkPaginationAndFloatsAtEndLine):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::clearRenderBoxRegionInfo):
+ (WebCore::RenderBox::renderBoxRegionInfo):
+ (WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
+ (WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
+ (WebCore::RenderBox::computePositionedLogicalWidth):
+ (WebCore::RenderBox::computePositionedLogicalHeight):
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutBlock):
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::objectInFlowRegion):
+ * rendering/RenderGrid.cpp:
+ (WebCore::RenderGrid::layoutBlock):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::updateAlwaysCreateLineBoxes):
+ * rendering/RenderLayer.cpp:
+ (WebCore::accumulateOffsetTowardsAncestor):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::canBeComposited):
+ * rendering/RenderMedia.cpp:
+ (WebCore::RenderMedia::layout):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::locateFlowThreadContainingBlock):
+ (WebCore::RenderObject::containerForRepaint):
+ (WebCore::RenderObject::willBeRemovedFromTree):
+ (WebCore::RenderObject::removeFromRenderFlowThread):
+ (WebCore::RenderObject::removeFromRenderFlowThreadRecursive):
+ * rendering/RenderObject.h:
+ (RenderObject):
+ (WebCore::RenderObject::flowThreadContainingBlock):
+ * rendering/RenderRegion.cpp:
+ (WebCore::RenderRegion::setObjectStyleInRegion):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::addChild):
+ (WebCore::RenderView::initializeLayoutState):
+ (WebCore::RenderView::setSelection):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::pushLayoutState):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::containingRegion):
+ (WebCore::RootInlineBox::setContainingRegion):
+
+2013-02-28 Sam Weinig <sam@webkit.org>
+
+ Add SPI for marking a WebView as doing things on behalf of another process
+ https://bugs.webkit.org/show_bug.cgi?id=111125
+
+ Reviewed by Alexey Proskuryakov.
+
+ * platform/network/NetworkingContext.h:
+ (NetworkingContext):
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::ResourceHandle::createCFURLConnection):
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::createNSURLConnection):
+ Set the sourceApplicationAuditData on the URL connection if available.
+
+2013-03-01 Brent Fulgham <bfulgham@webkit.org>
+
+ [Windows] Unreviewed VS2010 build fix.
+
+ * WebCore.vcxproj/WebCore.vcxproj: Add missing TimelineTraceEventProcessor
+ files to the project.
+ * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
+
+2013-03-01 Bear Travis <betravis@adobe.com>
+
+ [css exclusions] setting shape-inside on a parent does not relayout child blocks' inline content
+ https://bugs.webkit.org/show_bug.cgi?id=108128
+
+ Reviewed by David Hyatt.
+
+ Ensure that blocks lay out when their parent's shape-inside changes.
+ ExclusionShapeInsideInfo now stores an additional flag indicating whether
+ the shape has changed and its block's children require layout. Each block
+ can look up the flag via LayoutState to determine whether it needs to lay
+ out its children.
+
+ Test: fast/exclusions/shape-inside/shape-inside-dynamic-nested.html
+
+ * rendering/ExclusionShapeInfo.h:
+ (WebCore::ExclusionShapeInfo::shapeSizeDirty): Add a method to determine
+ if the shape has changed.
+ (ExclusionShapeInfo):
+ * rendering/ExclusionShapeInsideInfo.h:
+ (WebCore::ExclusionShapeInsideInfo::setNeedsLayout): Set the flag indicating
+ layout is necessary.
+ (WebCore::ExclusionShapeInsideInfo::needsLayout): Retrieve the layout flag.
+ (ExclusionShapeInsideInfo):
+ (WebCore::ExclusionShapeInsideInfo::ExclusionShapeInsideInfo): Initialize
+ the layout flag.
+ * rendering/RenderBlock.cpp:
+ (WebCore::exclusionInfoRequiresRelayout): Return true if the shape info should
+ cause a relayout. Also update the needsLayout flag on the ExclusionShapeInsideInfo.
+ (WebCore):
+ (WebCore::RenderBlock::updateRegionsAndExclusionsLogicalSize): Return a boolean
+ indicating whether regions or exclusions updates should cause a relayout.
+ (WebCore::RenderBlock::layoutBlock): Relayout children if the shape inside has
+ changed.
+ * rendering/RenderBlock.h:
+ (RenderBlock):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutExclusionShapeInsideInfo): Changing to be a
+ class method.
+ (WebCore::LineWidth::LineWidth): Changing to use class method.
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Ditto.
+ (WebCore::constructBidiRunsForLine): Ditto.
+ (WebCore::RenderBlock::layoutRunsAndFloatsInRange): Ditto.
+ (WebCore::RenderBlock::LineBreaker::nextLineBreak): Ditto.
+
+2013-03-01 Uday Kiran <udaykiran@motorola.com>
+
+ getComputedStyle not implemented for -webkit-column-rule shorthand
+ https://bugs.webkit.org/show_bug.cgi?id=111203
+
+ Reviewed by Alexis Menard.
+
+ Implement getComputedStyle for -webkit-column-rule property.
+
+ Test: fast/css/getComputedStyle/getComputedStyle-column-rule.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+
+2013-02-28 David Hyatt <hyatt@apple.com>
+
+ REGRESSION(r144318) 1-7% perf. regression on SVG/SvgHitTesting
+ https://bugs.webkit.org/show_bug.cgi?id=111117
+
+ Make sure the allocated vector has a capacity of 1, since that is
+ far and away the most common case.
+
+ Reviewed by Andreas Kling.
+
+ * rendering/RenderFlowThread.h:
+ (WebCore):
+ * rendering/RenderLayer.h:
+ (WebCore):
+ * rendering/RenderMultiColumnSet.cpp:
+ (WebCore::RenderMultiColumnSet::collectLayerFragments):
+ * rendering/RenderMultiColumnSet.h:
+ * rendering/RenderRegion.h:
+ (WebCore):
+ (WebCore::RenderRegion::collectLayerFragments):
+
+2013-03-01 Enrica Casucci <enrica@apple.com>
+
+ Crash at WebCore::SharedBuffer::hasPlatformData writing an image to the pasteboard.
+ https://bugs.webkit.org/show_bug.cgi?id=111211.
+ <rdar://problem/8772758>
+
+ Reviewed by Ryosuke Niwa.
+
+ This is a speculative fix since we don't have a solid repro case.
+ Adding null check every time we build a SharedBuffer from an NSData
+ we have obtained manipulating data from the pasteboard.
+
+ * platform/mac/PasteboardMac.mm:
+ (WebCore::writeFileWrapperAsRTFDAttachment):
+ (WebCore::Pasteboard::writeImage):
+
+2013-03-01 Enrica Casucci <enrica@apple.com>
+
+ Crash at WebCore::SharedBuffer::hasPlatformData during paste.
+ https://bugs.webkit.org/show_bug.cgi?id=111207.
+ <rdar://problem/13024528>
+
+ Reviewed by Ryosuke Niwa.
+
+ This is a speculative fix since we don't have a solid repro case.
+ Adding null check every time we get a SharedBuffer from the pasteboard.
+
+ * platform/mac/PasteboardMac.mm:
+ (WebCore::Pasteboard::plainText):
+ (WebCore::documentFragmentWithRTF):
+
+2013-03-01 Alexey Proskuryakov <ap@apple.com>
+
+ Build fix for builds with BLOB disabled. This fixes it for me on Mac at least.
+
+ * platform/network/BlobRegistryImpl.cpp:
+
+2013-03-01 peavo@outlook.com <peavo@outlook.com>
+
+ [Curl] Session cookies should not be persistent.
+ https://bugs.webkit.org/show_bug.cgi?id=111060
+
+ Reviewed by Brent Fulgham.
+
+ Curl saves both persistent cookies, and session cookies to the cookie file.
+ The session cookies should be deleted before starting a new session.
+
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::ResourceHandleManager): Call method to initialize cookie session.
+ (WebCore::ResourceHandleManager::initCookieSession): Added method to initialize cookie session.
+ * platform/network/curl/ResourceHandleManager.h: Added method to initialize cookie session.
+
+2013-03-01 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Navigator should show tree element for each folder in the source path.
+ https://bugs.webkit.org/show_bug.cgi?id=108943
+
+ Reviewed by Pavel Feldman.
+
+ NavigatorView now renders tree element for each folder in uiSourceCode uri.
+ Merging several folders into one tree elememnt when folder has only one folder as a child is supported.
+ ScriptsNavigator has horizontal scroll now.
+ Projects are shown in ScriptsNavigator by their displayName. This allows us to show several root file system folders
+ with the same name in the navigator (e.g. 'Source/WebCore/inspector' and 'LayoutTests/inspector').
+
+ Test: inspector/debugger/navigator-view.html: Renamed from scripts-file-selector.html
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/NavigatorView.js:
+ (WebInspector.NavigatorView):
+ (WebInspector.NavigatorView.iconClassForType):
+ (WebInspector.NavigatorView.prototype.addUISourceCode):
+ (WebInspector.NavigatorView.prototype._getProjectNode):
+ (WebInspector.NavigatorView.prototype._createProjectNode):
+ (WebInspector.NavigatorView.prototype._getOrCreateProjectNode):
+ (WebInspector.NavigatorView.prototype._getFolderNode):
+ (WebInspector.NavigatorView.prototype._createFolderNode):
+ (WebInspector.NavigatorView.prototype._getOrCreateFolderNode):
+ (WebInspector.NavigatorView.prototype._getUISourceCodeParentNode):
+ (WebInspector.NavigatorView.prototype._getOrCreateUISourceCodeParentNode):
+ (WebInspector.NavigatorView.prototype.revealUISourceCode):
+ (WebInspector.NavigatorView.prototype.removeUISourceCode):
+ (WebInspector.NavigatorView.prototype.rename):
+ (WebInspector.NavigatorView.prototype.reset):
+ (.typeWeight):
+ (WebInspector.NavigatorTreeOutline._treeElementsCompare):
+ (WebInspector.BaseNavigatorTreeElement):
+ (WebInspector.BaseNavigatorTreeElement.prototype.type):
+ (WebInspector.NavigatorFolderTreeElement):
+ (WebInspector.NavigatorFolderTreeElement.prototype.onpopulate):
+ (WebInspector.NavigatorFolderTreeElement.prototype.onattach):
+ (WebInspector.NavigatorSourceTreeElement):
+ (WebInspector.NavigatorTreeNode):
+ (WebInspector.NavigatorTreeNode.prototype.treeElement):
+ (WebInspector.NavigatorTreeNode.prototype.dispose):
+ (WebInspector.NavigatorTreeNode.prototype.isRoot):
+ (WebInspector.NavigatorTreeNode.prototype.hasChildren):
+ (WebInspector.NavigatorTreeNode.prototype.populate):
+ (WebInspector.NavigatorTreeNode.prototype.wasPopulated):
+ (WebInspector.NavigatorTreeNode.prototype.didAddChild):
+ (WebInspector.NavigatorTreeNode.prototype.willRemoveChild):
+ (WebInspector.NavigatorTreeNode.prototype.isPopulated):
+ (WebInspector.NavigatorTreeNode.prototype.isEmpty):
+ (WebInspector.NavigatorTreeNode.prototype.child):
+ (WebInspector.NavigatorTreeNode.prototype.children):
+ (WebInspector.NavigatorTreeNode.prototype.appendChild):
+ (WebInspector.NavigatorTreeNode.prototype.removeChild):
+ (WebInspector.NavigatorTreeNode.prototype.reset):
+ (WebInspector.NavigatorRootTreeNode):
+ (WebInspector.NavigatorRootTreeNode.prototype.isRoot):
+ (WebInspector.NavigatorRootTreeNode.prototype.treeElement):
+ (WebInspector.NavigatorRootTreeNode.prototype.wasPopulated):
+ (WebInspector.NavigatorRootTreeNode.prototype.didAddChild):
+ (WebInspector.NavigatorRootTreeNode.prototype.willRemoveChild):
+ (WebInspector.NavigatorUISourceCodeTreeNode):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype.treeElement):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype.updateTitle):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype.hasChildren):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype.dispose):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype._titleChanged):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype._workingCopyChanged):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype._workingCopyCommitted):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype._formattedChanged):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype.reveal):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.commitHandler):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.cancelHandler):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.afterEditing):
+ (WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename):
+ (WebInspector.NavigatorFolderTreeNode):
+ (WebInspector.NavigatorFolderTreeNode.prototype.treeElement):
+ (WebInspector.NavigatorFolderTreeNode.prototype._createTreeElement):
+ (WebInspector.NavigatorFolderTreeNode.prototype.wasPopulated):
+ (WebInspector.NavigatorFolderTreeNode.prototype._addChildrenRecursive):
+ (WebInspector.NavigatorFolderTreeNode.prototype._shouldMerge):
+ (WebInspector.NavigatorFolderTreeNode.prototype.didAddChild):
+ (WebInspector.NavigatorFolderTreeNode.prototype.willRemoveChild):
+ * inspector/front-end/ScriptsNavigator.js:
+ * inspector/front-end/SimpleWorkspaceProvider.js:
+ (WebInspector.SimpleProjectDelegate.prototype.displayName):
+ * inspector/front-end/navigatorView.css:
+ (.navigator > ol):
+ (.navigator .base-navigator-tree-element-title):
+ (.navigator-tabbed-pane .navigator-container):
+
+2013-03-01 Arvid Nilsson <anilsson@rim.com>
+
+ [BlackBerry] Upstream BlackBerry::Platform::Graphics::GraphicsContext integration related changes in platform/graphics/blackberry
+ https://bugs.webkit.org/show_bug.cgi?id=111072
+
+ Reviewed by Rob Buis.
+
+ BlackBerry PR 293208
+
+ This patch contains contributions from many members of the BlackBerry
+ WebKit team:
+
+ Rob Buis
+ Robin Cao
+ Michael Carmody
+ Max Feil
+ Eli Fidler
+ Antonio Gomes
+ Jacky Jiang
+ Mike Lattanzio
+ Yong Li
+ Andrew Lo
+ Maxim Mogilnitsky
+ Joshua Netterfield
+ Arvid Nilsson
+ Jakob Petsovits
+ Konrad Piascik
+ Jeff Rogers
+ Artem Simonov
+ Filip Spacek
+ George Staikos
+ Cosmin Truta
+
+ Covered by existing tests.
+
+ * platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:
+ (WebCore::CanvasLayerWebKitThread::deleteTextures):
+ (CanvasLayerCompositingThreadClient):
+ (WebCore::CanvasLayerCompositingThreadClient::layerCompositingThreadDestroyed):
+ (WebCore::CanvasLayerCompositingThreadClient::layerVisibilityChanged):
+ (WebCore::CanvasLayerCompositingThreadClient::uploadTexturesIfNeeded):
+ (WebCore::CanvasLayerCompositingThreadClient::clearBuffer):
+ (WebCore):
+ (WebCore::CanvasLayerCompositingThreadClient::CanvasLayerCompositingThreadClient):
+ (WebCore::CanvasLayerCompositingThreadClient::drawTextures):
+ (WebCore::CanvasLayerCompositingThreadClient::deleteTextures):
+ (WebCore::CanvasLayerCompositingThreadClient::commitPendingTextureUploads):
+ (WebCore::CanvasLayerWebKitThread::CanvasLayerWebKitThread):
+ (WebCore::CanvasLayerWebKitThread::~CanvasLayerWebKitThread):
+ (WebCore::CanvasLayerWebKitThread::clearBuffer):
+ * platform/graphics/blackberry/CanvasLayerWebKitThread.h:
+ (WebCore):
+ (WebCore::CanvasLayerWebKitThread::create):
+ (CanvasLayerWebKitThread):
+ * platform/graphics/blackberry/DisplayRefreshMonitorBlackBerry.cpp:
+ (WebCore::DisplayRefreshMonitor::displayLinkFired):
+ * platform/graphics/blackberry/DrawingBufferBlackBerry.cpp:
+ (WebCore::DrawingBuffer::DrawingBuffer):
+ (WebCore):
+ (WebCore::DrawingBuffer::publishToPlatformLayer):
+ (WebCore::DrawingBuffer::platformLayer):
+ * platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.cpp:
+ (WebCore::EGLImageLayerCompositingThreadClient::~EGLImageLayerCompositingThreadClient):
+ (WebCore::EGLImageLayerCompositingThreadClient::uploadTexturesIfNeeded):
+ (WebCore::EGLImageLayerCompositingThreadClient::drawTextures):
+ (WebCore::EGLImageLayerCompositingThreadClient::deleteTextures):
+ (WebCore::EGLImageLayerCompositingThreadClient::bindContentsTexture):
+ (WebCore::EGLImageLayerCompositingThreadClient::setTextureAccessor):
+ * platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.h:
+ (Graphics):
+ (EGLImageLayerCompositingThreadClient):
+ (WebCore::EGLImageLayerCompositingThreadClient::EGLImageLayerCompositingThreadClient):
+ * platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp:
+ (WebCore::EGLImageLayerWebKitThread::EGLImageLayerWebKitThread):
+ (WebCore::EGLImageLayerWebKitThread::~EGLImageLayerWebKitThread):
+ (WebCore::EGLImageLayerWebKitThread::updateFrontBuffer):
+ (WebCore::EGLImageLayerWebKitThread::deleteFrontBuffer):
+ (WebCore::EGLImageLayerWebKitThread::commitPendingTextureUploads):
+ (WebCore::EGLImageLayerWebKitThread::createTextureIfNeeded):
+ (WebCore::EGLImageLayerWebKitThread::blitToFrontBuffer):
+ * platform/graphics/blackberry/EGLImageLayerWebKitThread.h:
+ (Graphics):
+ (EGLImageLayerWebKitThread):
+ * platform/graphics/blackberry/FloatRectBlackBerry.cpp:
+ (WebCore::FloatRect::normalized):
+ (WebCore):
+ * platform/graphics/blackberry/FontCacheBlackberry.cpp: Removed.
+ * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
+ (WebCore::GraphicsContext3D::GraphicsContext3D):
+ (WebCore::GraphicsContext3D::paintToCanvas):
+ (WebCore::GraphicsContext3D::getImageData):
+ (WebCore):
+ * platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:
+ (WebCore::GraphicsLayerBlackBerry::GraphicsLayerBlackBerry):
+ (WebCore::GraphicsLayerBlackBerry::setBackgroundColor):
+ (WebCore::GraphicsLayerBlackBerry::clearBackgroundColor):
+ (WebCore):
+ (WebCore::GraphicsLayerBlackBerry::setContentsNeedsDisplay):
+ (WebCore::GraphicsLayerBlackBerry::setNeedsDisplay):
+ (WebCore::GraphicsLayerBlackBerry::setNeedsDisplayInRect):
+ (WebCore::GraphicsLayerBlackBerry::updateLayerBackgroundColor):
+ (WebCore::GraphicsLayerBlackBerry::setupContentsLayer):
+ * platform/graphics/blackberry/GraphicsLayerBlackBerry.h:
+ (GraphicsLayerBlackBerry):
+ (WebCore::GraphicsLayerBlackBerry::notifySyncRequired):
+ * platform/graphics/blackberry/ImageBlackBerry.cpp:
+ (WebCore::ImageFrame::asNewNativeImage):
+ (WebCore):
+ (WebCore::FrameData::clear):
+ (WebCore::BitmapImage::BitmapImage):
+ (WebCore::BitmapImage::checkForSolidColor):
+ (WebCore::BitmapImage::invalidatePlatformData):
+ (WebCore::BitmapImage::draw):
+ (WebCore::Image::drawPattern):
+ * platform/graphics/blackberry/InstrumentedPlatformCanvas.h: Removed.
+ * platform/graphics/blackberry/LayerCompositingThread.cpp:
+ (WebCore::LayerCompositingThread::drawTextures):
+ (WebCore::LayerCompositingThread::drawSurface):
+ (WebCore::LayerCompositingThread::contentsTexture):
+ (WebCore::LayerCompositingThread::commitPendingTextureUploads):
+ (WebCore):
+ * platform/graphics/blackberry/LayerCompositingThread.h:
+ (Graphics):
+ (LayerCompositingThread):
+ * platform/graphics/blackberry/LayerCompositingThreadClient.h:
+ (Graphics):
+ (WebCore):
+ (LayerCompositingThreadClient):
+ (WebCore::LayerCompositingThreadClient::contentsTexture):
+ (WebCore::LayerCompositingThreadClient::commitPendingTextureUploads):
+ * platform/graphics/blackberry/LayerData.h:
+ (WebCore::LayerData::LayerData):
+ (WebCore::LayerData::contentsResolutionIndependent):
+ (LayerData):
+ (WebCore::LayerData::layerProgram):
+ (WebCore::LayerData::isContainerForFixedPositionLayers):
+ (WebCore::LayerData::isFixedToTop):
+ (WebCore::LayerData::isFixedToLeft):
+ (WebCore::LayerData::frameVisibleRect):
+ (WebCore::LayerData::frameContentsSize):
+ (WebCore::LayerData::contentsScale):
+ * platform/graphics/blackberry/LayerFilterRenderer.cpp:
+ (WebCore::LayerFilterRendererAction::LayerFilterRendererAction):
+ (WebCore::LayerFilterRenderer::initializeSharedGLObjects):
+ (WebCore::LayerFilterRenderer::ping):
+ (WebCore::LayerFilterRenderer::pong):
+ (WebCore::LayerFilterRenderer::pushSnapshot):
+ (WebCore::LayerFilterRenderer::popSnapshot):
+ (WebCore::LayerFilterRenderer::applyActions):
+ * platform/graphics/blackberry/LayerRenderer.cpp:
+ (WebCore):
+ (WebCore::LayerRenderer::LayerRenderer):
+ (WebCore::LayerRenderer::~LayerRenderer):
+ (WebCore::LayerRenderer::setViewport):
+ (WebCore::LayerRenderer::compositeLayers):
+ (WebCore::LayerRenderer::compositeBuffer):
+ (WebCore::LayerRenderer::drawColor):
+ (WebCore::LayerRenderer::useSurface):
+ (WebCore::LayerRenderer::drawLayersOnSurfaces):
+ (WebCore::glRound):
+ (WebCore::LayerRenderer::toOpenGLWindowCoordinates):
+ (WebCore::LayerRenderer::drawDebugBorder):
+ (WebCore::LayerRenderer::drawHolePunchRect):
+ (WebCore::LayerRenderer::updateLayersRecursive):
+ (WebCore::LayerRenderer::compositeLayersRecursive):
+ (WebCore::LayerRenderer::createProgram):
+ (WebCore::LayerRenderer::useProgram):
+ (WebCore::LayerRenderer::useLayerProgram):
+ * platform/graphics/blackberry/LayerRenderer.h:
+ (LayerRenderer):
+ * platform/graphics/blackberry/LayerRendererSurface.cpp:
+ (WebCore::LayerRendererSurface::ensureTexture):
+ * platform/graphics/blackberry/LayerTile.cpp:
+ (WebCore::LayerTile::LayerTile):
+ (WebCore::LayerTile::setContents):
+ (WebCore::LayerTile::updateContents):
+ * platform/graphics/blackberry/LayerTile.h:
+ (LayerTile):
+ (WebCore::LayerTile::renderState):
+ (WebCore::LayerTile::needsRender):
+ (WebCore::LayerTile::setNeedsRender):
+ (WebCore::LayerTile::setRenderPending):
+ (WebCore::LayerTile::setRenderDone):
+ * platform/graphics/blackberry/LayerTileIndex.h:
+ * platform/graphics/blackberry/LayerTiler.cpp:
+ (WebCore):
+ (WebCore::defaultTileSize):
+ (WebCore::LayerTiler::LayerTiler):
+ (WebCore::LayerTiler::updateTextureContentsIfNeeded):
+ (WebCore::LayerTiler::createBuffer):
+ (WebCore::LayerTiler::willCommit):
+ (WebCore::LayerTiler::commitPendingTextureUploads):
+ (WebCore::LayerTiler::layerVisibilityChanged):
+ (WebCore::LayerTiler::uploadTexturesIfNeeded):
+ (WebCore::LayerTiler::processTextureJob):
+ (WebCore::LayerTiler::addTileJob):
+ (WebCore::LayerTiler::performTileJob):
+ (WebCore::LayerTiler::drawTile):
+ (WebCore::LayerTiler::drawTextures):
+ (WebCore::LayerTiler::pruneTextures):
+ (WebCore::LayerTiler::updateTileSize):
+ (WebCore::LayerTiler::setNeedsBacking):
+ (WebCore::LayerTiler::contentsTexture):
+ * platform/graphics/blackberry/LayerTiler.h:
+ (WebCore::LayerTiler::tileSize):
+ (LayerTiler):
+ (WebCore::LayerTiler::TextureJob::TextureJob):
+ (WebCore::LayerTiler::TextureJob::setContents):
+ (WebCore::LayerTiler::TextureJob::updateContents):
+ (TextureJob):
+ (WebCore::LayerTiler::needsRender):
+ (WebCore::LayerTiler::removeUpdateContentsJobs):
+ * platform/graphics/blackberry/LayerWebKitThread.cpp:
+ (WebCore::LayerWebKitThread::LayerWebKitThread):
+ (WebCore::LayerWebKitThread::~LayerWebKitThread):
+ (WebCore::LayerWebKitThread::paintContents):
+ (WebCore::LayerWebKitThread::commitPendingTextureUploads):
+ (WebCore::LayerWebKitThread::setContents):
+ (WebCore::LayerWebKitThread::setNeedsCommit):
+ (WebCore::LayerWebKitThread::notifyAnimationsStarted):
+ (WebCore::LayerWebKitThread::commitOnWebKitThread):
+ (WebCore::LayerWebKitThread::startAnimations):
+ (WebCore::LayerWebKitThread::updateTextureContents):
+ (WebCore::LayerWebKitThread::commitOnCompositingThread):
+ (WebCore::LayerWebKitThread::addSublayer):
+ (WebCore):
+ (WebCore::LayerWebKitThread::addOverlay):
+ (WebCore::LayerWebKitThread::insert):
+ (WebCore::LayerWebKitThread::removeFromSuperlayer):
+ (WebCore::LayerWebKitThread::removeSublayerOrOverlay):
+ (WebCore::LayerWebKitThread::remove):
+ (WebCore::LayerWebKitThread::replaceSublayer):
+ (WebCore::LayerWebKitThread::filtersCanBeComposited):
+ (WebCore::LayerWebKitThread::removeAll):
+ (WebCore::LayerWebKitThread::setSublayers):
+ (WebCore::LayerWebKitThread::updateLayerHierarchy):
+ (WebCore::LayerWebKitThread::setIsMask):
+ (WebCore::LayerWebKitThread::releaseLayerResources):
+ * platform/graphics/blackberry/LayerWebKitThread.h:
+ (WebCore::LayerWebKitThread::insertSublayer):
+ (LayerWebKitThread):
+ (WebCore::LayerWebKitThread::isMask):
+ (WebCore::LayerWebKitThread::removeAllSublayers):
+ (WebCore::LayerWebKitThread::setFixedPosition):
+ (WebCore::LayerWebKitThread::setIsContainerForFixedPositionLayers):
+ (WebCore::LayerWebKitThread::setFixedToTop):
+ (WebCore::LayerWebKitThread::setFixedToLeft):
+ (WebCore::LayerWebKitThread::setFrameVisibleRect):
+ (WebCore::LayerWebKitThread::setFrameContentsSize):
+ (WebCore::LayerWebKitThread::setLayerProgram):
+ * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
+ (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
+ (WebCore::MediaPlayerPrivate::play):
+ (WebCore::MediaPlayerPrivate::supportsFullscreen):
+ (WebCore::MediaPlayerPrivate::paintCurrentFrameInContext):
+ (WebCore::MediaPlayerPrivate::prepareForRendering):
+ (WebCore):
+ (WebCore::MediaPlayerPrivate::resizeSourceDimensions):
+ (WebCore::MediaPlayerPrivate::percentLoaded):
+ (WebCore::MediaPlayerPrivate::updateStates):
+ (WebCore::MediaPlayerPrivate::waitMetadataTimerFired):
+ (WebCore::MediaPlayerPrivate::onAuthenticationNeeded):
+ (WebCore::MediaPlayerPrivate::notifyChallengeResult):
+ (WebCore::MediaPlayerPrivate::isProcessingUserGesture):
+ (WebCore::loadBufferingImageData):
+ (WebCore::MediaPlayerPrivate::setBuffering):
+ (WebCore::MediaPlayerPrivate::drawBufferingAnimation):
+ (WebCore::MediaPlayerPrivate::onConditionallyEnterFullscreen):
+ (WebCore::MediaPlayerPrivate::onExitFullscreen):
+ (WebCore::MediaPlayerPrivate::onCreateHolePunchRect):
+ (WebCore::MediaPlayerPrivate::onDestroyHolePunchRect):
+ * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
+ (BlackBerry):
+ (Platform):
+ (Graphics):
+ (MediaPlayerPrivate):
+ * platform/graphics/blackberry/PluginLayerWebKitThread.cpp:
+ (WebCore::PluginLayerWebKitThread::setPluginView):
+ * platform/graphics/blackberry/Texture.cpp:
+ (WebCore::Texture::Texture):
+ (WebCore::Texture::updateContents):
+ (WebCore::Texture::setContentsToColor):
+ (WebCore::Texture::protect):
+ * platform/graphics/blackberry/Texture.h:
+ (Texture):
+ (WebCore::Texture::textureId):
+ (WebCore::Texture::isDirty):
+ (WebCore::Texture::hasTexture):
+ (WebCore::Texture::sizeInBytes):
+ (WebCore::Texture::setTextureId):
+ (WebCore::Texture::setSize):
+ * platform/graphics/blackberry/TextureCacheCompositingThread.cpp:
+ (WebCore::TextureCacheCompositingThread::allocateTextureId):
+ (WebCore::freeTextureId):
+ (WebCore::TextureCacheCompositingThread::collectGarbage):
+ (WebCore::TextureCacheCompositingThread::textureSizeInBytesChanged):
+ (WebCore):
+ (WebCore::TextureCacheCompositingThread::textureDestroyed):
+ (WebCore::TextureCacheCompositingThread::install):
+ (WebCore::TextureCacheCompositingThread::resizeTexture):
+ (WebCore::TextureCacheCompositingThread::evict):
+ (WebCore::TextureCacheCompositingThread::prune):
+ (WebCore::TextureCacheCompositingThread::clear):
+ (WebCore::TextureCacheCompositingThread::textureForTiledContents):
+ (WebCore::TextureCacheCompositingThread::updateContents):
+ * platform/graphics/blackberry/TextureCacheCompositingThread.h:
+ (TextureCacheCompositingThread):
+ (WebCore::TextureCacheCompositingThread::ZombieTexture::ZombieTexture):
+ (ZombieTexture):
+ * platform/graphics/blackberry/skia/ImageBufferDataSkia.h: Removed.
+ * platform/graphics/blackberry/skia/PlatformSupport.cpp: Removed.
+ * platform/graphics/blackberry/skia/PlatformSupport.h: Removed.
+
+2013-03-01 Jocelyn Turcotte <jocelyn.turcotte@digia.com>
+
+ [Qt] Fix the Mac build with the current qtbase/dev branch
+ https://bugs.webkit.org/show_bug.cgi?id=111190
+
+ Reviewed by Allan Sandfeld Jensen.
+
+ QMAKE_MACOSX_DEPLOYMENT_TARGET now influences
+ __MAC_OS_X_VERSION_MIN_REQUIRED through -mmacosx-version-min after
+ changes in qtbase to support iOS.
+
+ Having only WebCore defining it to 10.5 would create a mismatch of
+ ENABLE_THREADING_LIBDISPATCH with WTF to cause undefined symbols
+ while linking both together at the end.
+
+ Fix it by removing the statement which isn't needed anymore.
+ qtbase/mkspecs/common/mac-minimum-version.conf already defines
+ 10.6 as the minimum Mac version.
+
+ * Target.pri:
+
+2013-03-01 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: [Regression] Snippets renaming is broken.
+ https://bugs.webkit.org/show_bug.cgi?id=111181
+
+ Reviewed by Alexander Pavlov.
+
+ * inspector/front-end/NavigatorView.js:
+ * inspector/front-end/ScriptSnippetModel.js:
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.set _fileRenamed):
+ * inspector/front-end/UISourceCode.js:
+ (WebInspector.UISourceCode.prototype.rename):
+
+2013-03-01 David Hyatt <hyatt@apple.com>
+
+ Fix a misspelled word in RenderObject.h. staticly -> statically.
+
+ Reviewed by Dean Jackson.
+
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
+ (WebCore::RenderObject::RenderObjectBitfields::isPositioned):
+
+2013-03-01 David Hyatt <hyatt@apple.com>
+
+ [New Multicolumn] Change flow thread containment to be a state.
+ https://bugs.webkit.org/show_bug.cgi?id=111110
+
+ Change m_inRenderFlowThread from a single bit to an actual state. This
+ will let us track whether we're inside a multicolumn (in-flow) flow thread
+ or a named (out-of-flow) flow thread. In the former case, we're going to have
+ to do more work to maintain this state, but for now I've kept all the logic
+ the same just for the initial landing.
+
+ Reviewed by Andreas Kling.
+
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
+ (WebCore::NodeRenderingContext::createRendererForTextIfNeeded):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::clone):
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::RenderFlowThread):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::clone):
+ * rendering/RenderMultiColumnFlowThread.cpp:
+ (WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::setFlowThreadStateIncludingDescendants):
+ (WebCore::RenderObject::removeFromRenderFlowThreadRecursive):
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::setParent):
+ (RenderObject):
+ (WebCore::RenderObject::inRenderFlowThread):
+ (WebCore::RenderObject::flowThreadState):
+ (WebCore::RenderObject::setFlowThreadState):
+ (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
+ (RenderObjectBitfields):
+ (WebCore::RenderObject::RenderObjectBitfields::flowThreadState):
+ (WebCore::RenderObject::RenderObjectBitfields::setFlowThreadState):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::addChild):
+
+2013-03-01 Jessie Berlin <jberlin@apple.com>
+
+ Build fix.
+
+ Roll out r144431 because it was a build fix for r144422, which was rolled out in r144446.
+
+ * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h:
+
+2013-03-01 David Kilzer <ddkilzer@apple.com>
+
+ BUILD FIX (r144358): Add UNUSED_PARAM() macros to WebCore::Extensions3DOpenGL::drawBuffersEXT()
+ <http://webkit.org/b/109331>
+
+ Fixes the following build failures:
+
+ Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp:218:51: error: unused parameter 'n' [-Werror,-Wunused-parameter]
+ void Extensions3DOpenGL::drawBuffersEXT(GC3Dsizei n, const GC3Denum* bufs)
+ ^
+ Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp:218:70: error: unused parameter 'bufs' [-Werror,-Wunused-parameter]
+ void Extensions3DOpenGL::drawBuffersEXT(GC3Dsizei n, const GC3Denum* bufs)
+ ^
+ 2 errors generated.
+
+ * platform/graphics/opengl/Extensions3DOpenGL.cpp:
+ (WebCore::Extensions3DOpenGL::drawBuffersEXT): Add UNUSED_PARAM()
+ macros.
+
+2013-03-01 Dan Carney <dcarney@google.com>
+
+ [v8] ScriptValue has dangerous copy semantics
+ https://bugs.webkit.org/show_bug.cgi?id=110206
+
+ Reviewed by Kentaro Hara.
+
+ Update ScriptValue to used a SharedPersistent,
+ making it impossible to return dead references.
+
+ No new tests. No change in functionality.
+
+ * bindings/v8/ScriptValue.cpp:
+ (WebCore::ScriptValue::serialize):
+ (WebCore::ScriptValue::getString):
+ (WebCore::ScriptValue::toString):
+ (WebCore::ScriptValue::toInspectorValue):
+ * bindings/v8/ScriptValue.h:
+ (WebCore::ScriptValue::ScriptValue):
+ (WebCore::ScriptValue::operator=):
+ (WebCore::ScriptValue::operator==):
+ (WebCore::ScriptValue::isEqual):
+ (WebCore::ScriptValue::isFunction):
+ (WebCore::ScriptValue::isNull):
+ (WebCore::ScriptValue::isUndefined):
+ (WebCore::ScriptValue::isObject):
+ (WebCore::ScriptValue::hasNoValue):
+ (WebCore::ScriptValue::clear):
+ (ScriptValue):
+ (WebCore::ScriptValue::v8Value):
+ (WebCore::ScriptValue::v8ValueRaw):
+ * bindings/v8/SharedPersistent.h:
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ (WebCore::InjectedScriptHost::scriptValueAsNode):
+ * bindings/v8/custom/V8MessageEventCustom.cpp:
+ (WebCore::V8MessageEvent::dataAttrGetterCustom):
+
+2013-03-01 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Add FeatureObserver for marquee and reflection
+ https://bugs.webkit.org/show_bug.cgi?id=111118
+
+ Reviewed by Simon Fraser.
+
+ Refactoring covered by existing tests.
+
+ * page/FeatureObserver.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::styleChanged):
+ Added some instrumentation for reflection and marquee as they are both prefixed and this would help
+ to know their popularity on the web. Marquee was split between <marquee> (HTMLMarqueeElement) and
+ overflow: -webkit-marquee (CSSOverflowMarquee).
+
+2013-03-01 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: Introduce opaque SecurityOrigin string identifiers in the frontend
+ https://bugs.webkit.org/show_bug.cgi?id=111165
+
+ Reviewed by Vsevolod Vlasov.
+
+ A plain string security origin value has been replaced by WebInspector.SecurityOrigin all over the code,
+ containing a URL (which holds a stringified security origin) and an identifier (which is now used
+ as a key in place of the stringified security origin in various maps). To avoid the ResourceTreeModel
+ code clutter, the security origin tracking code has been extracted into a separate type,
+ WebInspector.SecurityOriginTracker, which works as a helper on the ResourceTreeModel.
+
+ No new tests, as it is a refactoring.
+
+ * inspector/front-end/DOMStorage.js:
+ (WebInspector.DOMStorage.storageId):
+ (WebInspector.DOMStorage.prototype.id):
+ (WebInspector.DOMStorage.prototype.getItems):
+ (WebInspector.DOMStorage.prototype.setItem):
+ (WebInspector.DOMStorage.prototype.removeItem):
+ (WebInspector.DOMStorageModel.prototype._securityOriginAdded):
+ (WebInspector.DOMStorageModel.prototype._securityOriginRemoved):
+ (WebInspector.DOMStorageModel.prototype._storageKey):
+ * inspector/front-end/ExtensionAuditCategory.js:
+ * inspector/front-end/FileSystemModel.js:
+ (WebInspector.FileSystemModel.prototype._reset):
+ (WebInspector.FileSystemModel.prototype._securityOriginAdded):
+ (WebInspector.FileSystemModel.prototype._securityOriginRemoved):
+ (WebInspector.FileSystemModel.prototype._addOrigin):
+ (WebInspector.FileSystemModel.prototype._removeOrigin):
+ (WebInspector.FileSystemModel.prototype._requestFileSystemRoot):
+ (WebInspector.FileSystemModel.prototype._fileSystemRootReceived):
+ (WebInspector.FileSystemModel.prototype._removeFileSystem):
+ (WebInspector.FileSystemModel.FileSystem.prototype.get name):
+ * inspector/front-end/IndexedDBModel.js:
+ (WebInspector.IndexedDBModel.prototype._reset):
+ (WebInspector.IndexedDBModel.prototype.refreshDatabaseNames):
+ (WebInspector.IndexedDBModel.prototype._securityOriginAdded):
+ (WebInspector.IndexedDBModel.prototype._securityOriginRemoved):
+ (WebInspector.IndexedDBModel.prototype._addOrigin):
+ (WebInspector.IndexedDBModel.prototype._removeOrigin):
+ (WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
+ (WebInspector.IndexedDBModel.prototype._loadDatabaseNames):
+ (WebInspector.IndexedDBModel.prototype._loadDatabase):
+ (WebInspector.IndexedDBModel.prototype.):
+ (WebInspector.IndexedDBModel.prototype._requestData):
+ (WebInspector.IndexedDBModel.DatabaseId.prototype.equals):
+ * inspector/front-end/IndexedDBViews.js:
+ (WebInspector.IDBDatabaseView.prototype._refreshDatabase):
+ * inspector/front-end/ResourceTreeModel.js:
+ (WebInspector.ResourceTreeModel.prototype._addFrame):
+ (WebInspector.ResourceTreeModel.prototype.securityOriginForId):
+ (WebInspector.ResourceTreeModel.prototype.securityOrigins):
+ (WebInspector.ResourceTreeModel.prototype._handleMainFrameDetached):
+ (WebInspector.ResourceTreeModel.prototype._frameNavigated):
+ (WebInspector.ResourceTreeModel.prototype._frameDetached):
+ (WebInspector.ResourceTreeModel.SecurityOriginTracker):
+ (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._addSecurityOrigin):
+ (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._removeSecurityOrigin):
+ (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._bindSecurityOrigin):
+ (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._unbindSecurityOrigin):
+ (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._detachMainFrame):
+ (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._securityOriginForId):
+ (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._securityOrigins):
+ (WebInspector.ResourceTreeFrame.prototype._navigate):
+ (WebInspector.SecurityOrigin.prototype.id):
+ (WebInspector.SecurityOrigin.prototype.url):
+ (WebInspector.SecurityOrigin.prototype.uiTitle):
+ (WebInspector.SecurityOrigin.prototype.toProtocol):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.IDBDatabaseTreeElement):
+ (WebInspector.IDBDatabaseTreeElement.prototype.get itemURL):
+ (WebInspector.IDBObjectStoreTreeElement.prototype.get itemURL):
+ (WebInspector.IDBIndexTreeElement.prototype.get itemURL):
+ (WebInspector.DOMStorageTreeElement):
+ (WebInspector.DOMStorageTreeElement.prototype.get itemURL):
+ (WebInspector.FileSystemTreeElement):
+
2013-03-01 Eugene Klyuchnikov <eustas@chromium.org>
Web Inspector: [DataGrid] Columns are misaligned after rows being refreshed.
« no previous file with comments | « no previous file | Source/WebCore/svg/SVGViewSpec.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698