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

Unified Diff: Source/WebCore/ChangeLog

Issue 7432005: Merge 91249 - Fix microphone icon placement in speech input control for dir=rtl. (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/782/
Patch Set: Created 9 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « LayoutTests/platform/chromium/test_expectations.txt ('k') | Source/WebCore/css/html.css » ('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 91253)
+++ Source/WebCore/ChangeLog (working copy)
@@ -1,3 +1,6475 @@
+2011-07-19 Jeremy Moskovich <jeremy@chromium.org>
+
+ Fix microphone icon placement in speech input control for dir=rtl.
+ https://bugs.webkit.org/show_bug.cgi?id=64668
+
+ Reviewed by Dimitri Glazkov.
+
+ Modify default stylesheet to propagate dir=rtl from the outer input
+ control to the shadow DOM container. This makes the microphone
+ icon appear on the left for dir=rtl, which is the desired behavior.
+
+ Test: fast/speech/speech-bidi-rendering.html
+
+ * css/html.css:
+ (input[x-webkit-speech][dir=rtl]::-webkit-textfield-decoration-container):
+
+2011-07-19 Raphael Kubo da Costa <kubo@profusion.mobi>
+
+ [EFL] Account for the invalid pointer case in WebCore::screenRect()
+ https://bugs.webkit.org/show_bug.cgi?id=64543
+
+ Reviewed by Antonio Gomes.
+
+ Fix a regression introduced in r88245: it assumes the pointer passed
+ to screenRect() is always valid.
+ fast/frames/crash-removed-iframe.html proves this is not always true,
+ so we need to do some sanity check on the pointer before using it.
+ No new tests as this has been caught by the current test suite.
+
+ * platform/efl/PlatformScreenEfl.cpp:
+ (WebCore::screenRect):
+
+2011-07-19 Robin Qiu <robin.qiu@torchmobile.com.cn>
+
+ Reviewed by Antonio Gomes.
+
+ ScrollBar should initialize current position in constructor.
+ https://bugs.webkit.org/show_bug.cgi?id=39284
+
+ When ScrollBar is created, m_currentPos should be initialized to
+ m_scrollableArea's current scrollPosition. Because scrollbars may
+ be created after the content of m_scrollableArea has been scrolled.
+
+ Test: scrollbars/scrollbar-initial-position.html
+
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::Scrollbar):
+
+2011-07-19 Yuta Kitamura <yutak@chromium.org>
+
+ WebSocket: Implement hybi framing
+ https://bugs.webkit.org/show_bug.cgi?id=64522
+
+ Reviewed by Kent Tamura.
+
+ Implement WebSocket framing protocol which is mainly described in
+ <http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-10#section-4> and
+ <http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-10#section-6>.
+
+ Hybi protocol introduces a new frame format which is drastically different from
+ the old one. Notable differences are:
+ - Binary data support.
+ - Fragmentation support: a single message can be fragmented to multiple frames.
+ - Ping-pong support.
+ - Masking: frame content of a client must be masked to prevent cross-protocol attacks.
+
+ This patch covers the following features:
+ - Send a pong frame when a ping frame is received.
+ - Receive fragmented frames.
+ - Receive masked frames. (Servers do not have to mask frames, but they may if they wish.)
+
+ The following features are NOT implemented yet:
+ - Send or receive binary messages.
+ - Send a ping message.
+ - Send fragmented frames. (It is unclear whether this is necessary.)
+ - Rewrite the frame content by WebSocket protocol extensions (like frame compression).
+
+ New tests: http/tests/websocket/tests/hybi/broken-utf8.html
+ http/tests/websocket/tests/hybi/fragmented-control-frame.html
+ http/tests/websocket/tests/hybi/fragmented-frames.html
+ http/tests/websocket/tests/hybi/interleaved-fragments.html
+ http/tests/websocket/tests/hybi/long-control-frame.html
+ http/tests/websocket/tests/hybi/masked-frames.html
+ http/tests/websocket/tests/hybi/pong.html
+ http/tests/websocket/tests/hybi/reserved-bits.html
+ http/tests/websocket/tests/hybi/reserved-opcodes.html
+ http/tests/websocket/tests/hybi/too-long-payload.html
+
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::WebSocketChannel):
+ (WebCore::WebSocketChannel::send):
+ The original content of send() was moved to a private method sendFrameHixie76().
+ (WebCore::WebSocketChannel::fail):
+ Stop handling incoming data after the WebSocket connection is failed.
+ It was unclear to me whether we should do the same thing for hixie-76 connection;
+ for now, I kept the original behavior.
+ (WebCore::WebSocketChannel::processBuffer):
+ (WebCore::WebSocketChannel::resumeTimerFired):
+ (WebCore::WebSocketChannel::startClosingHandshake):
+ (WebCore::WebSocketChannel::closingTimerFired):
+ (WebCore::WebSocketChannel::parseFrame):
+ (WebCore::WebSocketChannel::processFrame):
+ (WebCore::WebSocketChannel::processFrameHixie76):
+ (WebCore::WebSocketChannel::sendFrame):
+ (WebCore::WebSocketChannel::sendFrameHixie76):
+ * websockets/WebSocketChannel.h:
+ (WebCore::WebSocketChannel::isNonControlOpCode):
+ (WebCore::WebSocketChannel::isControlOpCode):
+ (WebCore::WebSocketChannel::isReservedOpCode):
+
+2011-07-19 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ REGRESSION (r88913): Preview in Safari's snippet editor has a fixed height instead of filling the entire pane
+ https://bugs.webkit.org/show_bug.cgi?id=64059
+
+ REGRESSION (r88913): <object> has wrong computed height
+ https://bugs.webkit.org/show_bug.cgi?id=62769
+
+ Reviewed by Rob Buis.
+
+ Fix misinterpretation of CSS 2.1 - "10.5 Content height: the 'height' property".
+ It says "If the height of the containing block is not specified explicitelz (i.e. it depends on the
+ content height), and this element is not absolutely positioned, the value computes to 'auto'".
+
+ Checking whether the containing block height depends on the content height is not equal to checking
+ whether the height property is set on the containing block, there are other ways to implicitly specify
+ the height by setting top & bottom. Fix that by checking whether the containing block has a height
+ property or top & bottom set.
+
+ While I was at it, make computeReplacedLogicalWidth/Height a bit more explicit to make it easier to compare
+ the code with the spec quoatations - this doesn't change the functionality only the readability.
+
+ Test: fast/css/replaced-element-implicit-size.html
+
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::computeReplacedLogicalWidth): Cleanup comment, make code more explicit.
+ (WebCore::RenderReplaced::logicalHeightIsAuto): Add helper method used by computeReplacedLogicalHeight.
+ (WebCore::RenderReplaced::computeReplacedLogicalHeight): Fix height=auto detection.
+ * rendering/RenderReplaced.h:
+
+2011-07-18 Ryosuke Niwa <rniwa@webkit.org>
+
+ REGRESSION(91209?): fast/css/custom-font-xheight.html is failing on Leopard
+ https://bugs.webkit.org/show_bug.cgi?id=64767
+
+ Add a runtime check for font cascading optimization.
+
+ It's a constant value in Mac port so hopefully gcc will constant-propagate the value
+ and eliminate the function altogether.
+
+ * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
+ (WebCore::canSetCascadeListForCustomFont): Added.
+ (WebCore::FontPlatformData::ctFont):
+
+2011-07-18 MORITA Hajime <morrita@google.com>
+
+ [ShadowContentElement] forwarded node should be able to access its hosting content element.
+ https://bugs.webkit.org/show_bug.cgi?id=64251
+
+ Reviewed by Dimitri Glazkov.
+
+ - Introduced ShadowInclusionSet to manage included nodes to its includer content element.
+ ShadowInclusionSet instance is owned by ShadowRoot.
+ - Updated the set on inclusion list changes.
+ - Used the set to retrieve the content element of NodeRenderingContext.
+
+ There are also related refactoring and cleanup:
+ - Renamed NodeRenderingContext::m_contentElement to m_includer
+ - ShadowContentSelector::m_activeElement is no longer used, thus removed.
+
+ Test: fast/dom/shadow/content-element-includer.html
+
+ * WebCore.exp.in:
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRenderingContext::NodeRenderingContext):
+ (WebCore::NodeRenderingContext::nextRenderer):
+ (WebCore::NodeRenderingContext::previousRenderer):
+ * dom/NodeRenderingContext.h:
+ (WebCore::NodeRenderingContext::includer):
+ * dom/ShadowContentElement.cpp:
+ (WebCore::removeFromSet):
+ (WebCore::addToSet):
+ (WebCore::ShadowContentElement::attach):
+ (WebCore::ShadowContentElement::detach):
+ * dom/ShadowContentElement.h:
+ (WebCore::ShadowInclusionSet::add):
+ (WebCore::ShadowInclusionSet::remove):
+ (WebCore::ShadowInclusionSet::isEmpty):
+ (WebCore::ShadowInclusionSet::Translator::hash):
+ (WebCore::ShadowInclusionSet::Translator::equal):
+ (WebCore::ShadowInclusionSet::Hash::hash):
+ (WebCore::ShadowInclusionSet::Hash::equal):
+ (WebCore::ShadowInclusionSet::find):
+ * dom/ShadowContentSelector.cpp:
+ (WebCore::ShadowContentSelector::ShadowContentSelector):
+ (WebCore::ShadowContentSelector::selectInclusion):
+ * dom/ShadowContentSelector.h:
+ * dom/ShadowRoot.cpp:
+ (WebCore::ShadowRoot::~ShadowRoot):
+ (WebCore::ShadowRoot::includerFor):
+ (WebCore::ShadowRoot::inclusions):
+ (WebCore::ShadowRoot::ensureInclusions):
+ * dom/ShadowRoot.h:
+ (WebCore::toShadowRoot):
+ * testing/Internals.cpp:
+ (WebCore::Internals::includerFor):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2011-07-18 Dean Jackson <dino@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=64742
+ Expose WebPreferences for media playback requiring user gestures and inline playback
+
+ Reviewed by Simon Fraser.
+
+ Media playback already tested if it should require user gestures, but
+ no setting was ever exposed to clients. Also, some ports only allow media
+ playback to be fullscreen, so exposing a new setting for them.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::HTMLMediaElement): Examine the new Setting
+ for user gestures.
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+ * page/Settings.h: Two new settings.
+ (WebCore::Settings::setMediaPlaybackRequiresUserGesture):
+ (WebCore::Settings::mediaPlaybackRequiresUserGesture):
+ (WebCore::Settings::setMediaPlaybackAllowsInline):
+ (WebCore::Settings::mediaPlaybackAllowsInline):
+
+2011-07-18 Ryosuke Niwa <rniwa@webkit.org>
+
+ Leopard build fix after r91229.
+
+ * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
+ (WebCore::FontPlatformData::ctFont):
+
+2011-07-18 Dan Bernstein <mitz@apple.com>
+
+ REGRESSION(91209?): fast/css/custom-font-xheight.html is failing on Leopard
+ https://bugs.webkit.org/show_bug.cgi?id=64767
+
+ Reviewed by Sam Weinig.
+
+ * platform/graphics/Font.h:
+ * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
+ (WebCore::FontPlatformData::ctFont): Undo the cascade list optimization on Leopard for custom
+ fonts, because adding a cascade list apparently breaks the font.
+
+2011-07-18 Matthew Delaney <mdelaney@apple.com>
+
+ Remove drawsUsingCopy now that all ports handle the copying
+ https://bugs.webkit.org/show_bug.cgi?id=64768
+
+ Introduced in https://bugs.webkit.org/show_bug.cgi?id=43507, ImageBuffer::drawsUsingCopy
+ was used to know whether or not an ImageBuffer should be explicitly copied before being
+ painted into a context (as was used in HTMLCanvasElement::paint). All platforms now
+ handle the logic of copying or not in their ImageBuffer::draw() implementations, so
+ drawsUsingCopy() is no longer needed. This patch removes it.
+
+ Reviewed by Dan Bernstein.
+
+ No new tests; does not affect behavior.
+
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::paint):
+ * platform/graphics/ImageBuffer.h:
+ (WebCore::ImageBuffer::isAccelerated):
+ * platform/graphics/cairo/ImageBufferCairo.cpp:
+ * platform/graphics/cg/ImageBufferCG.cpp:
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ * platform/graphics/wince/ImageBufferWinCE.cpp:
+ * platform/graphics/wx/ImageBufferWx.cpp:
+
+2011-07-18 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: [REGRESSION] Resource preserving fails when frameNavigated event is dispatched on NetworkPanel.
+ https://bugs.webkit.org/show_bug.cgi?id=64748
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkLogView.prototype._frameNavigated):
+
+2011-07-18 Brian Weinstein <bweinstein@apple.com>
+
+ Prep work for: Crash under WebPage::platformDragEnded when dragging on Mac
+ https://bugs.webkit.org/show_bug.cgi?id=64766
+ <rdar://problem/9548174>
+
+ Reviewed by Darin Adler.
+
+ Add a DragClient function that is called when a drag is ended, and call it from DragController::dragEnded.
+ This isn't used yet, but will be used by WebKit2 on Mac.
+
+ This patch also cleans up style in DragClient.h.
+
+ No change in behavior, no tests needed.
+
+ * page/DragClient.h:
+ (WebCore::DragClient::dragEnded): Stub virtual implementation for now, this will be used by
+ WebKit2 on Mac.
+ * page/DragController.cpp:
+ (WebCore::DragController::dragEnded): Call DragClient::dragEnded.
+
+2011-07-18 Jon Honeycutt <jhoneycutt@apple.com>
+
+ Focus and selection events are not fired when a <select>'s selection
+ changes
+ https://bugs.webkit.org/show_bug.cgi?id=64504
+ <rdar://problem/9319881>
+
+ Reviewed by Alice Liu.
+
+ Test: platform/win/accessibility/option-element-selection-and-focus-events.html
+
+ * accessibility/chromium/AXObjectCacheChromium.cpp:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ Add new notification type to the section of unhandled notifications.
+
+ * accessibility/AXObjectCache.h:
+ Declare a new notification, AXMenuListItemSelected.
+
+ * accessibility/AccessibilityMenuList.cpp:
+ (WebCore::AccessibilityMenuList::didUpdateActiveOption):
+ Tell our child popup that the active option changed, and post a
+ notification that our value changed.
+
+ * accessibility/AccessibilityMenuList.h:
+ Declare didUpdateActiveOption().
+
+ * accessibility/AccessibilityMenuListPopup.cpp:
+ (WebCore::AccessibilityMenuListPopup::didUpdateActiveOption):
+ Get the child <option> element that is selected, and fire focus and
+ selection events for it.
+
+ * accessibility/AccessibilityMenuListPopup.h:
+ Declare didUpdateActiveOption().
+
+ * accessibility/win/AXObjectCacheWin.cpp:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ Map AXMenuListItemSelected -> EVENT_OBJECT_SELECTION.
+
+ * dom/SelectElement.cpp:
+ (WebCore::SelectElement::setSelectedIndex):
+ Pass the newly-selected index.
+
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::RenderMenuList):
+ Update the initialization list for the renamed m_lastActiveIndex.
+ (WebCore::RenderMenuList::setTextFromOption):
+ A new selection has been made in the popup; call
+ didUpdateActiveOption().
+ (WebCore::RenderMenuList::didSetSelectedIndex):
+ Call didUpdateActiveOption(), passing the index of the newly-selected
+ <option>.
+ (WebCore::RenderMenuList::didUpdateActiveOption):
+ If accessibility is disabled, or if the active option has not changed,
+ return early. Check whether the option index is in the range of list
+ items, and assert that the item at that index is an <option> element.
+ Tell the AccessibilityMenuList for this element that we updated the
+ active option.
+
+ * rendering/RenderMenuList.h:
+ Updated the declaration of didSetSelectedIndex() to take the selected
+ index. Declared didUpdateActiveOption(). Renamed m_lastSelectedIndex to
+ m_lastActiveIndex.
+
+2011-07-18 Dan Bernstein <mitz@apple.com>
+
+ Specify a cascade list consisting of the last resort font for Core Text
+ https://bugs.webkit.org/show_bug.cgi?id=64747
+
+ Reviewed by Sam Weinig.
+
+ No new tests, because this does not affect behavior.
+
+ This prevents Core Text from taking its default, longer fallback list when the primary font does
+ not include a character. This is OK to do because WebKit never uses the results of Core Text
+ fallback anyway.
+
+ * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
+ (WebCore::cascadeToLastResortFontDescriptor): Added. Returns a CTFontDescriptor with a cascade
+ list consisting of the last resort font.
+ (WebCore::FontPlatformData::ctFont): Changed to include the cascadeToLastResortFontDescriptor
+ in the returned font.
+
+2011-07-18 James Robinson <jamesr@chromium.org>
+
+ Timer scheduling should be based off the monotonic clock
+ https://bugs.webkit.org/show_bug.cgi?id=64544
+
+ Reviewed by Darin Adler.
+
+ Changes the Timer scheduling logic from using absolute values in terms of currentTime() to using relative
+ intervals in terms of monotonicallyIncreasingTime(). This provides better standards compliance, compatibility,
+ and predictability when the system clock is adjusted.
+
+ No automated tests since there is no way to modify the system clock from DRT.
+
+ * platform/SharedTimer.h:
+ (WebCore::MainThreadSharedTimer::setFireInterval):
+ * platform/ThreadTimers.cpp:
+ (WebCore::ThreadTimers::updateSharedTimer):
+ (WebCore::ThreadTimers::sharedTimerFiredInternal):
+ * platform/Timer.cpp:
+ (WebCore::TimerBase::start):
+ (WebCore::TimerBase::nextFireInterval):
+ * platform/android/SharedTimerAndroid.cpp:
+ (WebCore::setSharedTimerFireInterval):
+ * platform/brew/SharedTimerBrew.cpp:
+ (WebCore::setSharedTimerFireInterval):
+ * platform/chromium/PlatformBridge.h:
+ * platform/chromium/SharedTimerChromium.cpp:
+ (WebCore::setSharedTimerFireInterval):
+ * platform/efl/SharedTimerEfl.cpp:
+ (WebCore::addNewTimer):
+ (WebCore::setSharedTimerFireInterval):
+ * platform/gtk/SharedTimerGtk.cpp:
+ (WebCore::setSharedTimerFireInterval):
+ * platform/haiku/SharedTimerHaiku.cpp:
+ (WebCore::SharedTimerHaiku::start):
+ (WebCore::setSharedTimerFireInterval):
+ * platform/mac/SharedTimerMac.mm:
+ (WebCore::setSharedTimerFireInterval):
+ * platform/qt/SharedTimerQt.cpp:
+ (WebCore::SharedTimerQt::start):
+ (WebCore::setSharedTimerFireInterval):
+ * platform/win/SharedTimerWin.cpp:
+ (WebCore::setSharedTimerFireInterval):
+ * platform/wince/SharedTimerWinCE.cpp:
+ (WebCore::setSharedTimerFireInterval):
+ * platform/wx/SharedTimerWx.cpp:
+ (WebCore::setSharedTimerFireInterval):
+ * workers/WorkerRunLoop.cpp:
+ (WebCore::WorkerSharedTimer::setFireInterval):
+
+2011-07-18 Pratik Solanki <psolanki@apple.com>
+
+ Unreviewed. Fix Windows build. Move static function defaultSessionCookieStorage() to before
+ its use in defaultCookieStorage().
+
+ * platform/network/cf/CookieStorageCFNet.cpp:
+ (WebCore::defaultSessionCookieStorage):
+
+2011-07-18 Pratik Solanki <psolanki@apple.com>
+
+ Part of https://bugs.webkit.org/show_bug.cgi?id=63674
+ Get webkit to compile with USE(CFNETWORK) enabled on Mac
+
+ Reviewed by David Kilzer.
+
+ Get coookie storage code to work with USE(CFNETWORK) enabled on Mac.
+
+ No new tests because no change in functionality.
+
+ * platform/network/cf/CookieStorageCFNet.cpp:
+ (WebCore::defaultCookieStorage):
+ (WebCore::defaultSessionCookieStorage):
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::ResourceHandle::createPrivateBrowsingStorageSession):
+ * platform/network/mac/CookieStorageMac.mm:
+
+2011-07-18 Pratik Solanki <psolanki@apple.com>
+
+ Part of https://bugs.webkit.org/show_bug.cgi?id=63674
+ Get webkit to compile with USE(CFNETWORK) enabled on Mac
+
+ Reviewed by David Kilzer.
+
+ * WebCore.exp.in:
+
+2011-07-18 Gavin Barraclough <barraclough@apple.com>
+
+ Speculative fix for Leopard assertions caused by 91095.
+
+ Rubber stamped by Sam Weinig.
+
+ * bridge/NP_jsobject.cpp:
+ (_NPN_Invoke):
+ - ensure we pass the window shell, not the global object.
+
+2011-07-18 Mark Hahnenberg <mhahnenberg@apple.com>
+
+ Refactor JSC to replace JSCell::operator new with static create method
+ https://bugs.webkit.org/show_bug.cgi?id=64466
+
+ Reviewed by Oliver Hunt (oliver@apple.com) and Darin Adler (darin@apple.com).
+
+ First step in a longer refactoring process to remove the use of
+ operator new overloading in order to allocate GC objects and to replace
+ this method with static create methods for each individual type of heap-allocated
+ JS object. This particular patch only deals with replacing uses of
+ operator new within JSC proper. Future patches will remove it from the
+ parts that interface with the DOM. Due to the DOM's continued dependence
+ on it, operator new has not actually been removed from JSCell.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::jsDateOrNull):
+ (WebCore::objectToStringFunctionGetter):
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::nonCachingStaticFunctionGetter):
+ * bindings/js/JSHistoryCustom.cpp:
+ (WebCore::nonCachingStaticBackFunctionGetter):
+ (WebCore::nonCachingStaticForwardFunctionGetter):
+ (WebCore::nonCachingStaticGoFunctionGetter):
+ * bindings/js/JSLocationCustom.cpp:
+ (WebCore::nonCachingStaticReplaceFunctionGetter):
+ (WebCore::nonCachingStaticReloadFunctionGetter):
+ (WebCore::nonCachingStaticAssignFunctionGetter):
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneDeserializer::readTerminal):
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::convertQVariantToValue):
+
+2011-07-18 Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
+
+ [Texmap] [Qt] [WK2] Unsync in TextureMapperNode between parent and child lists cause crashes on WK2.
+ https://bugs.webkit.org/show_bug.cgi?id=62587
+
+ Reviewed by Noam Rosenthal.
+
+ Fix unsync between m_parent and m_children list in child and parent texture mapper nodes
+ in syncCompositingStateSelf.
+
+ * platform/graphics/texmap/TextureMapperNode.cpp:
+ (WebCore::TextureMapperNode::syncCompositingStateSelf):
+
+2011-07-18 Rob Buis <rbuis@rim.com>
+
+ Stroking of zero-length paths in SVG should change according to erratum
+ https://bugs.webkit.org/show_bug.cgi?id=18356
+
+ Reviewed by Nikolas Zimmermann.
+
+ Do not rely on toolkits to correctly render zero-length path with stroke-linecap=round, render
+ it ourselves just like for stroke-linecap=square.
+
+ * rendering/svg/RenderSVGPath.cpp:
+ (WebCore::RenderSVGPath::shouldStrokeZeroLengthSubpath):
+ (WebCore::RenderSVGPath::setupSquareCapPath):
+
+2011-07-18 Mihnea Ovidenie <mihnea@adobe.com>
+
+ [REGRESSION] Value 'none' breaks multiple background-image display
+ https://bugs.webkit.org/show_bug.cgi?id=59274
+
+ Reviewed by Simon Fraser.
+
+ When taking fast path for simple color background, we should draw
+ the background only if it is the last in the list of backgrounds.
+ Otherwise, it will obscure the previously drawn backgrounds.
+
+ Test: fast/backgrounds/background-fast-path-simple-color.html
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintFillLayerExtended):
+
+2011-07-18 Yi Shen <yi.4.shen@nokia.com>
+
+ [Qt] ASSERTION FAILED in ResourceHandle::setDefersLoading causes crash
+ https://bugs.webkit.org/show_bug.cgi?id=62808
+
+ The assertion in ResourceHandle::setDefersLoading assumes asynchronous
+ content delivery -- To resume a page, first, its main resource loader
+ calls setDefersLoading to resume loading the main content; then all the
+ sub-resource loaders calls setDefersLoading to resume sub-contents.
+ However, since QNetworkReplyHandler delivers content synchronously,
+ some new sub-resource loaders get created as soon as the main resource
+ loader resumed, and all these new sub-resource loaders set their
+ defersLoading flag to false. Then, the assertion fails for these new
+ sub-resource loaders when calling setDefersLoading on them. As a fix,
+ this path makes QNetworkReplyHandler deliver content asynchronously
+ when its load type is set to SynchronousLoad.
+
+ Reviewed by Benjamin Poulain.
+
+ Test: loader/load-defer-resume-crash.html
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandlerCallQueue::setDeferSignals):
+ * platform/network/qt/QNetworkReplyHandler.h:
+ (WebCore::QNetworkReplyHandler::setLoadingDeferred):
+
+2011-07-18 Young Han Lee <joybro@company100.net>
+
+ AnimationBase asserts if a test tries to pause during the delay phase
+ https://bugs.webkit.org/show_bug.cgi?id=59475
+
+ Reviewed by Simon Fraser.
+
+ There is no more assertion failure after r90765, but the testcase still fails due to
+ the miscalculation of the pauseTime. This patch pauses the animation at its startTime
+ if a test tries to pause it during the delay phase.
+
+ Test: transitions/transition-in-delay-phase.html
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::AnimationBase::freezeAtTime):
+
+2011-07-18 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Web Inspector: provide unique identifiers for loaders
+ https://bugs.webkit.org/show_bug.cgi?id=64599
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::loaderDetachedFromFrameImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::frameDestroyed):
+ (WebCore::InspectorInstrumentation::loaderDetachedFromFrame):
+ * inspector/InspectorPageAgent.cpp:
+ (WebCore::InspectorPageAgent::loaderId):
+ (WebCore::InspectorPageAgent::loaderDetachedFromFrame):
+ * inspector/InspectorPageAgent.h:
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::detachFromFrame):
+
+2011-07-18 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: "Reveal in Elements Panel" is broken.
+ https://bugs.webkit.org/show_bug.cgi?id=64688
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline):
+ (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement):
+ (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):
+ (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
+
+2011-07-18 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Remove RenderObject::addLayers second argument
+ https://bugs.webkit.org/show_bug.cgi?id=64649
+
+ Reviewed by Benjamin Poulain.
+
+ No change in behavior.
+
+ The code was always passing |this| as the second argument. Thus just
+ removed the argument for clarity.
+
+ * rendering/RenderObject.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::addLayers): Removed the argument, replaced
+ by |this|.
+
+ * rendering/RenderObjectChildList.cpp:
+ (WebCore::RenderObjectChildList::appendChildNode):
+ (WebCore::RenderObjectChildList::insertChildNode):
+ Removed the second argument at those 2 call sites.
+
+2011-07-18 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: do not pause on caught exceptions while typing in the console.
+ https://bugs.webkit.org/show_bug.cgi?id=64379
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/Inspector.json:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ * inspector/InspectorRuntimeAgent.cpp:
+ (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
+ (WebCore::InspectorRuntimeAgent::evaluate):
+ (WebCore::InspectorRuntimeAgent::setScriptDebugServer):
+ * inspector/InspectorRuntimeAgent.h:
+ * inspector/WorkerInspectorController.cpp:
+ (WebCore::WorkerInspectorController::WorkerInspectorController):
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
+ * inspector/front-end/WatchExpressionsSidebarPane.js:
+ (WebInspector.WatchExpressionsSection.prototype.update):
+
+2011-07-18 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r91132 and r91135.
+ http://trac.webkit.org/changeset/91132
+ http://trac.webkit.org/changeset/91135
+ https://bugs.webkit.org/show_bug.cgi?id=64681
+
+ Broke GTK and Chromium debug bots (Requested by rniwa on
+ #webkit).
+
+ * accessibility/AXObjectCache.h:
+ * accessibility/AccessibilityMenuList.cpp:
+ * accessibility/AccessibilityMenuList.h:
+ * accessibility/AccessibilityMenuListPopup.cpp:
+ * accessibility/AccessibilityMenuListPopup.h:
+ * accessibility/chromium/AXObjectCacheChromium.cpp:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ * accessibility/win/AXObjectCacheWin.cpp:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ * dom/SelectElement.cpp:
+ (WebCore::SelectElement::setSelectedIndex):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::RenderMenuList):
+ (WebCore::RenderMenuList::setTextFromOption):
+ (WebCore::RenderMenuList::didSetSelectedIndex):
+ * rendering/RenderMenuList.h:
+
+2011-07-17 Luke Macpherson <macpherson@chromium.org>
+
+ Implement CSSPropertyCursor in CSSStyleApplyProperty
+ https://bugs.webkit.org/show_bug.cgi?id=64432
+
+ Reviewed by Dimitri Glazkov.
+
+ No new tests / refectoring only.
+
+ * css/CSSStyleApplyProperty.cpp:
+ Add handler for CSSPropertyCursor.
+ * css/CSSStyleSelector.cpp:
+ Remove current handler of CSSPropertyCursor.
+ * css/CSSStyleSelector.h:
+ Make styleImage and cachedOrPendingFromValue public.
+
+2011-07-16 Simon Fraser <simon.fraser@apple.com>
+
+ Add code to attempt to align compositing layers to pixel boundaries when page scale changes
+ https://bugs.webkit.org/show_bug.cgi?id=64658
+
+ Reviewed by Dan Bernstein.
+
+ Implemented a new behavior on GraphicsLayerCA which attempts to keep layers pixel
+ aligned as page scale changes.
+
+ This requires denoting which layer has the page scale on it (it is assumed to be
+ already aligned), via setAppliesPageScale(). We also now pass a scale and offset
+ down through the GraphicsLayer commits, which are used to map layer bounds to display
+ coordinates for rounding.
+
+ * platform/graphics/GraphicsLayer.h: New flags and getters/setters for pixel alignment,
+ and the layer that is the applier of the scale.
+ (WebCore::GraphicsLayer::setMaintainsPixelAlignment):
+ (WebCore::GraphicsLayer::maintainsPixelAlignment):
+ (WebCore::GraphicsLayer::setAppliesPageScale):
+ (WebCore::GraphicsLayer::appliesPageScale):
+
+ * platform/graphics/GraphicsLayer.cpp:
+ (WebCore::GraphicsLayer::GraphicsLayer): Initialize the new flags.
+ (WebCore::GraphicsLayer::backingScaleFactor): Utility method that calls the client if there is one.
+ (WebCore::GraphicsLayer::pageScaleFactor): Ditto.
+
+ * platform/graphics/GraphicsLayerClient.h:
+ (WebCore::GraphicsLayerClient::backingScaleFactor): Provide default implementation.
+ (WebCore::GraphicsLayerClient::pageScaleFactor): Ditto.
+
+ * platform/graphics/ca/GraphicsLayerCA.h: Pass scale and base-relative offset around
+ to methods that need to update geometry during commit.
+ Some new methods related to pixel alignment.
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::computePositionRelativeToBase): For single-layer commits,
+ we have to compute the base-relative offset, and whether we're under the layer
+ applying the scale by walking up the tree.
+
+ (WebCore::GraphicsLayerCA::syncCompositingStateForThisLayerOnly): Call
+ computePositionRelativeToBase() to get scaling parameters for the target layer.
+
+ (WebCore::GraphicsLayerCA::recursiveCommitChanges): Pass flags related to scaling.
+ positionRelativeToBase is an offset relative to the ancestor layer known to be pixel
+ aligned. affectedByPageScale is true for layers which are descendants of the layer
+ which applies the scale.
+
+ (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): Pass scale and offset.
+ (WebCore::GraphicsLayerCA::updateGeometry): Call computePixelAlignment() to get
+ pixel-aligned geometry. This only needs to be applied to layers which render content,
+ so re-organize the code to use the unchanged layer geometry for the structural layer,
+ but to apply the adjusted geometry to the m_layer.
+
+ (WebCore::GraphicsLayerCA::updateStructuralLayer): Pass scale and offset.
+ (WebCore::GraphicsLayerCA::ensureStructuralLayer): Ditto.
+ (WebCore::GraphicsLayerCA::updateLayerDrawsContent): Ditto.
+ (WebCore::GraphicsLayerCA::updateContentsScale): Ditto.
+ (WebCore::GraphicsLayerCA::requiresTiledLayer): Ditto.
+ (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Ditto.
+ (WebCore::GraphicsLayerCA::setKeepPixelAligned): When set, dirties flags
+ for properties that need to be recomputed.
+ (WebCore::GraphicsLayerCA::noteChangesForScaleSensitiveProperties):
+ (WebCore::isIntegral):
+ (WebCore::GraphicsLayerCA::computePixelAlignment): Map our bounds to screen
+ scale, round out to an integral rect, then map it back, adding a fudge factor
+ so that CA backing stores don't end up being smaller than we expect because
+ of integer truncation.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::createGraphicsLayer): Turn on pixel alignment if
+ the compositor says so.
+ (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): Set the RenderView's
+ layer as the one applying the scale, for the main frame.
+
+ * rendering/RenderLayerCompositor.h: New method.
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::keepLayersPixelAligned): Master switch for
+ pixel alignment. Default to on.
+ (WebCore::RenderLayerCompositor::ensureRootLayer): Give the two root-ish layers
+ a client so they can ask for page scale if necessary.
+
+2011-07-16 Enrica Casucci <enrica@apple.com>
+
+ REGRESSION: Pressing return in a particular document sends the cursor to the end of the document.
+ https://bugs.webkit.org/show_bug.cgi?id=64140
+ <rdar://problem/9737491>
+
+ Inserting a paragraph separator at a break element, inside an inline, generates redundant markup
+ and moves the selection at the end of the inserted block.
+ The fix consists in detecting that the insertion point is a break element and simply inserting another
+ break element. This solves the problem of the wrong final selection and also produces less redundant
+ markup.
+
+ Reviewed by Simon Fraser.
+
+ Test: editing/inserting/insert-paragraph-separator-at-break.html
+
+ * editing/InsertParagraphSeparatorCommand.cpp:
+ (WebCore::InsertParagraphSeparatorCommand::doApply): Modified logic for insertion at a break
+ element.
+
+2011-07-16 Pratik Solanki <psolanki@apple.com>
+
+ SubresourceLoader::didReceiveDataArray can crash when calling m_client->didReceiveData()
+ https://bugs.webkit.org/show_bug.cgi?id=64656
+ <rdar://problem/9754425>
+
+ Reviewed by Alexey Proskuryakov.
+
+ * loader/cf/SubresourceLoaderCF.cpp:
+ (WebCore::SubresourceLoader::didReceiveDataArray): Check for m_client before calling
+ m_client->didReceiveData().
+
+2011-07-16 Dinu Jacob <dinu.jacob@nokia.com>
+
+ [Qt] Compilation fails on disabling TextureMapper
+ https://bugs.webkit.org/show_bug.cgi?id=64408
+
+ Fix compilation error due to API name change in GraphicsLayer
+
+ Reviewed by Noam Rosenthal.
+
+ * platform/graphics/qt/GraphicsLayerQt.cpp:
+ (WebCore::GraphicsLayerQt::setContentsToBackgroundColor):
+ * platform/graphics/qt/GraphicsLayerQt.h:
+
+2011-07-15 Pratik Solanki <psolanki@apple.com>
+
+ Part of https://bugs.webkit.org/show_bug.cgi?id=63674
+ Get webkit to compile with USE(CFNETWORK) enabled on Mac
+
+ Reviewed by David Kilzer.
+
+ New WebKitSystemInterface functions for CFNetwork-based loader.
+
+ * WebCore.exp.in:
+ * platform/mac/WebCoreSystemInterface.h:
+ * platform/mac/WebCoreSystemInterface.mm:
+
+2011-07-16 Jessie Berlin <jberlin@apple.com>
+
+ Work towards determining the cause of frequent crashes due to null frame below
+ ApplicationCacheHost::scheduleLoadFallbackResourceFromApplicationCache.
+ https://bugs.webkit.org/show_bug.cgi?id=62764
+
+ Reviewed by Darin Adler.
+
+ No loads should be going on for a DocumentLoader that has been detached from its frame, but
+ that appears to be what is happening in this bug.
+
+ Add assertions with the hope that someone will run into this while debugging and thereby find
+ a reproducible case.
+
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::willSendRequest):
+ (WebCore::ResourceLoader::didSendData):
+ (WebCore::ResourceLoader::didReceiveResponse):
+ (WebCore::ResourceLoader::didReceiveData):
+ (WebCore::ResourceLoader::didFinishLoading):
+ (WebCore::ResourceLoader::didFail):
+ (WebCore::ResourceLoader::wasBlocked):
+ (WebCore::ResourceLoader::cannotShowURL):
+ (WebCore::ResourceLoader::shouldUseCredentialStorage):
+ (WebCore::ResourceLoader::willCacheResponse):
+
+2011-07-16 Sergey Glazunov <serg.glazunov@gmail.com>
+
+ DOMWindow::open performs a security check on a wrong window
+ https://bugs.webkit.org/show_bug.cgi?id=64651
+
+ Reviewed by Adam Barth.
+
+ Test: http/tests/security/xss-DENIED-window-open-parent.html
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::open):
+
+2011-07-16 Sam Weinig <sam@webkit.org>
+
+ Attribute selectors don't handle glob namespaces (e.g. *|E)
+ https://bugs.webkit.org/show_bug.cgi?id=64567
+
+ Reviewed by Anders Carlsson.
+
+ Change checking of attribute selectors to match CSS 3 Selectors in
+ the presence of namespaces. This entails changing the algorithm to
+ check each attribute on an element as a match for the attribute selector
+ and taking into account a prefix of *.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::attributeQualifiedNameMatches):
+ Checks if the a particular attributes qualified name matches
+ the attribute selector, taking into account a prefix of *.
+
+ (WebCore::attributeValueMatches):
+ Checks if a particular attribute on an element, matches
+ the attribute selector.
+
+ (WebCore::anyAttributeMatches):
+ Top level attribute check. Checks if any of an elements attributes
+ match the attribute selector.
+
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ Factor out attribute checking code into the above functions.
+
+2011-07-16 Jon Honeycutt <jhoneycutt@apple.com>
+
+ WinCE build fix. Unreviewed.
+
+ * dom/SelectElement.cpp:
+
+2011-07-16 Kulanthaivel Palanichamy <kulanthaivel@codeaurora.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG animation API crashes on SVGAnimateTransform
+ https://bugs.webkit.org/show_bug.cgi?id=64104
+
+ This patch ensures the update in AnimatedTransform list in
+ SVGAnimateTransformElement.cpp is in sync with its wrapper list.
+
+ Test: svg/animations/svgtransform-animation-discrete.html
+
+ * svg/SVGAnimateTransformElement.cpp:
+ (WebCore::animatedTransformListFor):
+ (WebCore::SVGAnimateTransformElement::resetToBaseValue):
+ (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
+
+2011-07-15 Simon Fraser <simon.fraser@apple.com>
+
+ Fix the build.
+
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::updateEnabledState):
+
+2011-07-15 Simon Fraser <simon.fraser@apple.com>
+
+ Another Windows build fix; make this method non-pure virtual.
+
+ * platform/graphics/GraphicsLayerClient.h:
+ (WebCore::GraphicsLayerClient::didCommitChangesForLayer):
+
+2011-07-15 Simon Fraser <simon.fraser@apple.com>
+
+ Fix build error in 32-bit builds.
+
+ * rendering/svg/RenderSVGPath.cpp:
+ (WebCore::RenderSVGPath::zeroLengthSubpathRect):
+
+2011-07-15 Simon Fraser <simon.fraser@apple.com>
+
+ Fix Windows build.
+
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
+ (WebCore::MediaPlayerPrivate::backingScaleFactor):
+ (WebCore::MediaPlayerPrivate::pageScaleFactor):
+
+2011-07-15 Simon Fraser <simon.fraser@apple.com>
+
+ Have GraphicsLayer pull their contentsScale, rather than pushing it onto them
+ https://bugs.webkit.org/show_bug.cgi?id=64643
+
+ Reviewed by Darin Adler.
+
+ RenderLayerBacking would set the contentsScale on GraphicsLayers
+ on creation, and update it when the pageScaleFactor changed. However,
+ RenderLayerBacking doesn't really know what contentsScale is best
+ for a layer, so instead, have GraphicsLayers call back through the
+ GraphicsLayerClient to get the two relevant scale factors, and do
+ their own computation of contentsScale.
+
+ No testable behavior changes.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::pageScaleFactorChanged): No need to pass the scale.
+
+ * platform/graphics/GraphicsLayer.cpp:
+ (WebCore::GraphicsLayer::notePageScaleFactorChangedIncludingDescendants):
+ Recurse through the GraphicsLayer tree, calling pageScaleFactorChanged() on
+ each layer.
+
+ * platform/graphics/GraphicsLayer.h:
+ (WebCore::GraphicsLayer::pageScaleFactorChanged):
+ Remove contentsScale/setContentsScale
+
+ * platform/graphics/GraphicsLayerClient.h:
+ Add methods to fetch the backingScaleFactor() and pageScaleFactor().
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::GraphicsLayerCA): m_uncommittedChanges
+ defaults to ContentsScaleChanged so we update contentsScale on
+ the first flush.
+
+ (WebCore::GraphicsLayerCA::setContentsToBackgroundColor):
+ This was the wrong time to call updateContentsRect() and setupContentsLayer();
+ those should be done at commit time, so moved to updateLayerBackgroundColor().
+ (WebCore::GraphicsLayerCA::recursiveCommitChanges): Note whether we
+ have any changes, and call didCommitChangesForLayer() on the client.
+ (WebCore::GraphicsLayerCA::updateLayerBackgroundColor): Code moved to here.
+ (WebCore::clampedContentsScaleForScale): No longer has any hysteresis
+ on the scale, and now just clamps.
+ (WebCore::GraphicsLayerCA::updateContentsScale): Fetch the scales
+ from the client, and multiply them, then clamp.
+ (WebCore::GraphicsLayerCA::requiresTiledLayer): This now takes
+ contentsScale into account when deciding to use tiled layer,
+ so that zooming in will cause layers to start tiling.
+ (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Don't call
+ setContentsScale(), but rather updateContentsScale().
+ (WebCore::GraphicsLayerCA::pageScaleFactorChanged): Set the bits
+ for properties that depend on the scale.
+ (WebCore::GraphicsLayerCA::noteChangesForScaleSensitiveProperties):
+ Note that contentsScale needs to be updated. At some point we might also
+ need to dirty other properties.
+ * platform/graphics/ca/GraphicsLayerCA.h: Moved the m_allowTiledLayer
+ bool for better packing. No need for a m_contentsScale member now.
+ * rendering/RenderLayer.cpp: Removed pageScaleFactorChanged().
+ * rendering/RenderLayer.h: Ditto.
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): No need
+ to push the contents scale.
+ (WebCore::RenderLayerBacking::updateForegroundLayer): Ditto.
+ (WebCore::RenderLayerBacking::updateMaskLayer): Ditto.
+ (WebCore::RenderLayerBacking::pageScaleFactor): GraphicsLayerClient method.
+ (WebCore::RenderLayerBacking::backingScaleFactor): GraphicsLayerClient method.
+ (WebCore::RenderLayerBacking::didCommitChangesForLayer): Send through
+ to the compositor.
+ * rendering/RenderLayerBacking.h: GraphicsLayerClient methods.
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::didFlushChangesForLayer): We'll use
+ this later.
+ (WebCore::RenderLayerCompositor::backingScaleFactor): GraphicsLayerClient method.
+ (WebCore::RenderLayerCompositor::pageScaleFactor): Ditto.
+ (WebCore::RenderLayerCompositor::didCommitChangesForLayer): Ditto.
+ (WebCore::RenderLayerCompositor::ensureRootLayer): No need to push the contents scale.
+ (WebCore::RenderLayerCompositor::pageScaleFactorChanged): Just call notePageScaleFactorChangedIncludingDescendants()
+ on the root GraphicsLayer.
+ * rendering/RenderLayerCompositor.h: Added GraphicsLayerClient methods.
+
+2011-07-15 Jon Honeycutt <jhoneycutt@apple.com>
+
+ Build fix. Unreviewed.
+
+ * accessibility/AccessibilityMenuListPopup.cpp:
+ (WebCore::AccessibilityMenuListPopup::didUpdateActiveOption):
+ Cast size_t to int for comparison.
+
+2011-07-15 Andy Estes <aestes@apple.com>
+
+ Rename applicationIsSolarWalk() to applicationIsSolarWalkMac().
+ https://bugs.webkit.org/show_bug.cgi?id=64641
+
+ Reviewed by Brian Weinstein.
+
+ * WebCore.exp.in: Update to new symbol.
+ * platform/RuntimeApplicationChecks.cpp:
+ (WebCore::applicationIsSolarWalkMac): Renamed from applicationIsSolarWalk.
+ * platform/RuntimeApplicationChecks.h: Ditto.
+
+2011-07-15 Mark Rowe <mrowe@apple.com>
+
+ Fix the build.
+
+ * platform/graphics/GraphicsContext.h:
+ (WebCore::GraphicsContextStateSaver::context): Remove a bogus type qualifier.
+
+2011-07-13 Jon Honeycutt <jhoneycutt@apple.com>
+
+ Focus and selection events are not fired when a <select>'s selection
+ changes
+ https://bugs.webkit.org/show_bug.cgi?id=64504
+ <rdar://problem/9319881>
+
+ Reviewed by Alice Liu.
+
+ Test: platform/win/accessibility/option-element-selection-and-focus-events.html
+
+ * accessibility/chromium/AXObjectCacheChromium.cpp:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ Add new notification type to the section of unhandled notifications.
+
+ * accessibility/AXObjectCache.h:
+ Declare a new notification, AXMenuListItemSelected.
+
+ * accessibility/AccessibilityMenuList.cpp:
+ (WebCore::AccessibilityMenuList::didUpdateActiveOption):
+ Tell our child popup that the active option changed, and post a
+ notification that our value changed.
+
+ * accessibility/AccessibilityMenuList.h:
+ Declare didUpdateActiveOption().
+
+ * accessibility/AccessibilityMenuListPopup.cpp:
+ (WebCore::AccessibilityMenuListPopup::didUpdateActiveOption):
+ Get the child <option> element that is selected, and fire focus and
+ selection events for it.
+
+ * accessibility/AccessibilityMenuListPopup.h:
+ Declare didUpdateActiveOption().
+
+ * accessibility/win/AXObjectCacheWin.cpp:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ Map AXMenuListItemSelected -> EVENT_OBJECT_SELECTION.
+
+ * dom/SelectElement.cpp:
+ (WebCore::SelectElement::setSelectedIndex):
+ Pass the newly-selected index.
+
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::RenderMenuList):
+ Update the initialization list for the renamed m_lastActiveIndex.
+ (WebCore::RenderMenuList::setTextFromOption):
+ A new selection has been made in the popup; call
+ didUpdateActiveOption().
+ (WebCore::RenderMenuList::didSetSelectedIndex):
+ Call didUpdateActiveOption(), passing the index of the newly-selected
+ <option>.
+ (WebCore::RenderMenuList::didUpdateActiveOption):
+ If accessibility is disabled, or if the active option has not changed,
+ return early. Check whether the option index is in the range of list
+ items, and assert that the item at that index is an <option> element.
+ Tell the AccessibilityMenuList for this element that we updated the
+ active option.
+
+ * rendering/RenderMenuList.h:
+ Updated the declaration of didSetSelectedIndex() to take the selected
+ index. Declared didUpdateActiveOption(). Renamed m_lastSelectedIndex to
+ m_lastActiveIndex.
+
+2011-07-13 Jon Honeycutt <jhoneycutt@apple.com>
+
+ ALT + DOWN arrow key does not open select
+
+ https://bugs.webkit.org/show_bug.cgi?id=14407
+ <rdar://problem/5319507>
+
+ Reviewed by Alexey Proskuryakov.
+
+ No test, because eventSender sends events to the WebView, rather than
+ the popup menu, so the popup isn't closed.
+
+ * WebCore.vcproj/WebCore.vcproj:
+ Add SelectElementWin.cpp to project.
+
+ * dom/SelectElement.cpp:
+ (WebCore::SelectElement::platformHandleKeydownEvent):
+ Moved ARROW_KEYS_POP_MENU code here. Updated to return whether the
+ function has handled the key, or whether the caller needs to process it
+ further.
+ (WebCore::SelectElement::menuListDefaultEventHandler):
+ Allow the platform the first chance at handling the keyboard event.
+
+ * dom/SelectElement.h:
+ Declare platformHandleKeydownEvent().
+ * dom/SelectElementWin.cpp: Added.
+ (WebCore::SelectElement::platformHandleKeyboardEvent):
+ Allow (Shift) F4 and (Ctrl/Shift) Alt/AltGr + Up/Down
+ arrow to show the popup. After the popup is dismissed, call
+ setSelectedIndex(), and report that we handled the event.
+
+ * platform/win/PopupMenuWin.cpp:
+ Declare HIGH_BIT_MASK_SHORT.
+ (WebCore::PopupMenuWin::show):
+ Forward WM_SYSKEYDOWN to the popup's HWND.
+ (WebCore::PopupMenuWin::wndProc):
+ Allow the same shortcuts that show the menu to hide it, matching
+ Firefox.
+
+2011-07-12 Jon Honeycutt <jhoneycutt@apple.com>
+
+ Ensure that a single select element's child option elements are
+ reported correctly to accessibility clients if the children are
+ changed.
+
+ https://bugs.webkit.org/show_bug.cgi?id=64500
+ <rdar://problem/9773066>
+
+ Reviewed by Beth Dakin.
+
+ Test: platform/win/accessibility/single-select-children-changed.html
+
+ * accessibility/AccessibilityMenuListPopup.cpp:
+ (WebCore::AccessibilityMenuListPopup::addChildren):
+ Remove a comment about WML, which we no longer support.
+ (WebCore::AccessibilityMenuListPopup::childrenChanged):
+ Don't just remove children that were detached - this will miss childen
+ that were dynamically added. Clear the children and re-add them.
+
+2011-07-15 Rob Buis <rbuis@rim.com>
+
+ Stroking of zero-length paths in SVG should change according to erratum
+ https://bugs.webkit.org/show_bug.cgi?id=18356
+
+ Reviewed by Nikolas Zimmermann.
+
+ Ensure rendering of zero-length paths with stroke-linecap=square works by
+ creating the square rectangle manually.
+
+ Tests: svg/W3C-SVG-1.1-SE/painting-control-04-f.svg
+ svg/custom/zero-path-square-cap-rendering.svg
+
+ * platform/graphics/GraphicsContext.h:
+ (WebCore::GraphicsContextStateSaver::context):
+ * rendering/svg/RenderSVGPath.cpp:
+ (WebCore::RenderSVGPath::strokeContains):
+ (WebCore::RenderSVGPath::shouldStrokeZeroLengthSubpath):
+ (WebCore::RenderSVGPath::zeroLengthSubpathRect):
+ (WebCore::RenderSVGPath::setupSquareCapPath):
+ (WebCore::RenderSVGPath::setupNonScalingStrokePath):
+ (WebCore::RenderSVGPath::fillAndStrokePath):
+ (WebCore::RenderSVGPath::updateCachedBoundaries):
+ * rendering/svg/RenderSVGPath.h:
+
+2011-06-27 Adrienne Walker <enne@google.com>
+
+ Reviewed by Simon Fraser.
+
+ Overlap map for compositing needs to consider clipping
+ https://bugs.webkit.org/show_bug.cgi?id=63493
+
+ Test: compositing/layer-creation/overlap-clipping.html
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::addToOverlapMap):
+ * rendering/RenderLayerCompositor.h:
+
+2011-07-15 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r90592.
+ http://trac.webkit.org/changeset/90592
+ https://bugs.webkit.org/show_bug.cgi?id=64627
+
+ Causes crashes with the web audio async decoding API
+ (Requested by jamesr on #webkit).
+
+ * html/canvas/ArrayBuffer.cpp:
+ (WebCore::ArrayBuffer::~ArrayBuffer):
+ (WebCore::ArrayBuffer::tryAllocate):
+ * manual-tests/array-buffer-memory.html: Removed.
+
+2011-07-15 Kenneth Russell <kbr@google.com>
+
+ Don't restore WebGL context if it was guilty of a graphics reset
+ https://bugs.webkit.org/show_bug.cgi?id=64497
+
+ Reviewed by Stephen White.
+
+ Use getGraphicsResetStatusARB already defined in Extensions3D to
+ determine why the context was lost, and respond to guilty context
+ notifications by forbidding restoration of the context.
+
+ It isn't currently possible to write an automated test for this.
+ We might consider extending the WEBKIT_lose_context extension to
+ allow a reason to be provided why the context was lost. It was
+ tested manually in Chromium on Windows and Linux with some test
+ cases that provoke actual graphics card resets.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::WebGLRenderingContextRestoreTimer::fired):
+ (WebCore::WebGLRenderingContext::forceLostContext):
+ (WebCore::WebGLRenderingContext::maybeRestoreContext):
+ * html/canvas/WebGLRenderingContext.h:
+
+2011-07-15 Chris Marrin <cmarrin@apple.com>
+
+ Move TransformState to platform/graphics and give it the option to transform just a FloatQuad
+ https://bugs.webkit.org/show_bug.cgi?id=64542
+
+ Reviewed by Simon Fraser.
+
+ This is to make it possible to use TransformState in some GraphicsLayer work. HitTestingTransformState
+ was split out and left in rendering since it's not needed in the platform code. Also added a FIXME
+ because HitTestingTransformState should eventually be replaced by TransformState.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/transforms/TransformState.cpp: Copied from Source/WebCore/rendering/TransformState.cpp.
+ (WebCore::TransformState::move):
+ (WebCore::TransformState::flattenWithTransform):
+ * platform/graphics/transforms/TransformState.h: Copied from Source/WebCore/rendering/TransformState.h.
+ (WebCore::TransformState::TransformState):
+ (WebCore::TransformState::setQuad):
+ * rendering/HitTestingTransformState.cpp: Copied from Source/WebCore/rendering/TransformState.cpp.
+ * rendering/HitTestingTransformState.h: Copied from Source/WebCore/rendering/TransformState.h.
+ * rendering/RenderLayer.cpp:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::localToContainerQuad):
+ * rendering/RenderingAllInOne.cpp:
+ * rendering/TransformState.cpp: Removed.
+ * rendering/TransformState.h: Removed.
+
+2011-07-15 Pratik Solanki <psolanki@apple.com>
+
+ Part of https://bugs.webkit.org/show_bug.cgi?id=63674
+ Get webkit to compile with USE(CFNETWORK) enabled on Mac
+
+ Reviewed by David Kilzer.
+
+ Minor changes needed to keep the compiler happy.
+
+ No new tests because no change in functionality.
+
+ * platform/network/cf/FormDataStreamCFNet.cpp:
+ * platform/network/cf/ResourceErrorCF.cpp:
+ (WebCore::ResourceError::platformCopy):
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::WebCoreSynchronousLoaderClient::willSendRequest):
+ * platform/network/cf/ResourceResponseCFNet.cpp:
+ (WebCore::toTimeT):
+
+2011-07-15 Dan Bernstein <mitz@apple.com>
+
+ REGRESSION: Mouse cursor doesn’t hide when full screen video HUD hides
+ https://bugs.webkit.org/show_bug.cgi?id=64615
+
+ Reviewed by Anders Carlsson.
+
+ * html/shadow/MediaControlRootElement.cpp:
+ (WebCore::MediaControlRootElement::enteredFullscreen): Hide the mouse cursor immediately when
+ entering full screen.
+ (WebCore::MediaControlRootElement::hideFullscreenControlsTimerFired): Hide the mouse cursor when
+ hiding the HUD.
+ * loader/EmptyClients.h:
+ (WebCore::EmptyChromeClient::setCursorHiddenUntilMouseMoves): Added empty implementation.
+ * page/Chrome.cpp:
+ (WebCore::Chrome::setCursorHiddenUntilMouseMoves): Added. Calls through to the client.
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ * platform/HostWindow.h:
+
+2011-07-14 Gavin Barraclough <barraclough@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=64250
+ Global strict mode function leaking global object as "this".
+
+ Reviewed by Oliver Hunt.
+
+ * bindings/js/JSMainThreadExecState.h:
+ (WebCore::JSMainThreadExecState::call):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateHeader):
+ - Change call to pass DOM Window shell, instead of the global varaible object.
+
+2011-07-15 Brian Salomon <bsalomon@google.com>
+
+ [SKIA] Must make skia's GL context current before drawing in GraphicsContext::clearRect
+ https://bugs.webkit.org/show_bug.cgi?id=64612
+
+ Reviewed by Stephen White.
+
+ Tested by compositing/shadows/shadow-drawing.html
+
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::clearRect):
+
+2011-07-15 Ian Henderson <ianh@apple.com>
+
+ Avoid rounded rect corner-drawing overhead if no corners are visible
+ https://bugs.webkit.org/show_bug.cgi?id=64584
+
+ Reviewed by Simon Fraser.
+
+ No new tests, rendering is visually identical.
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::paintBoxDecorations): Pass PaintInfo into
+ paintBorder.
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintBoxDecorations): Ditto.
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::unroundClippedCorners):
+ (WebCore::RenderBoxModelObject::paintBorder):
+ Any invisible corner may be replaced with a corner of radius zero, as
+ long as the stroke style is solid. Change the GraphicsContext
+ parameter into a PaintInfo parameter so we can get the rect to be
+ drawn.
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::paintBoxDecorations): Pass PaintInfo into
+ paintBorder.
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::paintBoxDecorations): Ditto.
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::paintBoxDecorations): Ditto.
+
+2011-07-15 Jeff Miller <jeffm@apple.com>
+
+ Add UserAgentStyleSheetsData.cpp to WebCore.vcproj
+ https://bugs.webkit.org/show_bug.cgi?id=64609
+
+ Add UserAgentStyleSheetsData.cpp to WebCore.vcproj for convenient access, but don't compile it.
+ This matches what we do with other generated DerivedSources.
+
+ Reviewed by Brian Weinstein.
+
+ No new tests, just adding a file.
+
+ * WebCore.vcproj/WebCore.vcproj: Add UserAgentStyleSheetsData.cpp.
+
+2011-07-15 Pratik Solanki <psolanki@apple.com>
+
+ Part of https://bugs.webkit.org/show_bug.cgi?id=63674
+ Get webkit to compile with USE(CFNETWORK) enabled on Mac
+
+ Reviewed by David Kilzer.
+
+ No new tests because no change in functionality and option is not enabled on Mac.
+
+ * platform/network/cf/AuthenticationCF.h: Just use AuthenticationMac.h instead of having
+ Mac-specific declarations here.
+ * platform/network/cf/CredentialStorageCFNet.cpp:
+ * platform/network/mac/AuthenticationMac.h:
+
+2011-07-15 Pratik Solanki <psolanki@apple.com>
+
+ Part of https://bugs.webkit.org/show_bug.cgi?id=63674
+ Get webkit to compile with USE(CFNETWORK) enabled on Mac
+
+ Reviewed by David Kilzer.
+
+ Get LoaderRunLoop to work on Mac when USE(CFNETWORK) is enabled. Although we could use the
+ main run loop, it's better to have a separate thread handling the loads so that it can work
+ in parallel to the main thread. This is similar to what NSURLConnection does for us
+ internally when we use the NS APIs.
+
+ No new tests because no change in functionality and option is not enabled on Mac.
+
+ * platform/network/cf/LoaderRunLoopCF.cpp:
+ (WebCore::runLoaderThread): Create an autorelease pool for objc code that might be called in
+ the run loop.
+ (WebCore::loaderRunLoop):
+ * platform/network/cf/LoaderRunLoopCF.h:
+
+2011-07-15 Xiaomei Ji <xji@chromium.org>
+
+ --webkit-visual-word crash on mixed editability
+ https://bugs.webkit.org/show_bug.cgi?id=61978
+
+ --webkit-visual-word crashes (VisiblePosition.getInlineBoxAndOffset could return null box)
+ https://bugs.webkit.org/show_bug.cgi?id=62814
+
+ Reviewed by Ryosuke Niwa.
+
+ Replace previousWordPosition/nextWordPosition with previousBoundary/nextBoundary which do
+ not honor editable bounary. Honor editable boundary as the last stage of leftWordPosition
+ and rightWordPosition.
+
+ Check previousBoundary/nextBoundary against NULL. Have a static function to encapsulate the
+ usage of getInlineBoxAndOffset and check the visible position is not NULL before passing to
+ getInlineBoxAndOffset. Check the box returned from getInlineBoxAndOffset is not NULL before
+ accessing.
+
+ Test: editing/selection/move-by-word-visually-null-box.html
+
+ * editing/visible_units.cpp:
+ (WebCore::positionIsInBox):
+ (WebCore::previousWordBreakInBoxInsideBlockWithSameDirectionality):
+ (WebCore::lastWordBreakInBox):
+ (WebCore::positionIsVisuallyOrderedInBoxInBlockWithDifferentDirectionality):
+ (WebCore::nextWordBreakInBoxInsideBlockWithDifferentDirectionality):
+ (WebCore::positionIsInsideBox):
+ (WebCore::leftWordPositionAcrossBoundary):
+ (WebCore::rightWordPositionAcrossBoundary):
+ (WebCore::leftWordPosition):
+ (WebCore::rightWordPosition):
+
+2011-07-15 Pratik Solanki <psolanki@apple.com>
+
+ Remove unncessary creation of connectionProperties dictionary
+ https://bugs.webkit.org/show_bug.cgi?id=63958
+
+ Reviewed by Alexey Proskuryakov.
+
+ No new tests because no change in functionality.
+
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::ResourceHandle::loadResourceSynchronously):
+
+2011-07-15 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: Focusing on another node while editing CSS property does not update styles
+ https://bugs.webkit.org/show_bug.cgi?id=64283
+
+ Reviewed by Yury Semikhatsky.
+
+ Test: inspector/styles/styles-change-node-while-editing.html
+
+ * inspector/front-end/CSSStyleModel.js:
+ (WebInspector.CSSProperty.prototype.setText):
+ (WebInspector.CSSProperty.prototype.setText.callback):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMAgent.prototype._inlineStyleInvalidated):
+ (WebInspector.DOMDispatcher.prototype.inlineStyleInvalidated):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel):
+ (WebInspector.ElementsPanel.prototype._attributesUpdated):
+ (WebInspector.ElementsPanel.prototype.updateStyles):
+ * inspector/front-end/MetricsSidebarPane.js:
+ (WebInspector.MetricsSidebarPane):
+ (WebInspector.MetricsSidebarPane.prototype.update):
+ (WebInspector.MetricsSidebarPane.prototype._innerUpdate.callback):
+ (WebInspector.MetricsSidebarPane.prototype._innerUpdate.inlineStyleCallback):
+ (WebInspector.MetricsSidebarPane.prototype._innerUpdate):
+ (WebInspector.MetricsSidebarPane.prototype._styleSheetChanged):
+ (WebInspector.MetricsSidebarPane.prototype._attributesUpdated):
+ (WebInspector.MetricsSidebarPane.prototype.startEditing):
+ (WebInspector.MetricsSidebarPane.prototype.editingEnded):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane):
+ (WebInspector.StylesSidebarPane.prototype.update):
+ (WebInspector.StylesSidebarPane.prototype._innerUpdate.stylesCallback):
+ (WebInspector.StylesSidebarPane.prototype._innerUpdate.computedStyleCallback):
+ (WebInspector.StylesSidebarPane.prototype._innerUpdate):
+ (WebInspector.StylesSidebarPane.prototype._styleSheetChanged):
+ (WebInspector.StylesSidebarPane.prototype._attributesUpdated):
+ (WebInspector.StylesSidebarPane.prototype._refreshUpdate):
+ (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
+ (WebInspector.StylesSidebarPane.prototype._nodeStylesUpdatedForTest):
+ (WebInspector.StylesSidebarPane.prototype._toggleElementStatePane):
+ (WebInspector.StylesSidebarPane.prototype._createElementStatePane.clickListener):
+ (WebInspector.StylePropertyTreeElement.prototype):
+ (WebInspector.StylePropertyTreeElement.prototype.event):
+ (WebInspector.StylePropertyTreeElement.prototype.element.userInput.previousContent.context.moveDirection):
+ (WebInspector.StylePropertyTreeElement.prototype.styleText.updateInterface.majorChange.isRevert):
+
+2011-07-15 Mike Reed <reed@google.com>
+
+ [skia] remove legacy draw-text-as-paths code, as skia now draws all text as text
+ https://bugs.webkit.org/show_bug.cgi?id=64368
+
+ Reviewed by James Robinson.
+
+ * platform/graphics/chromium/FontChromiumWin.cpp:
+ (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
+ * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
+ (WebCore::FontPlatformData::RefCountedHFONT::~RefCountedHFONT):
+ * platform/graphics/chromium/UniscribeHelper.cpp:
+ (WebCore::UniscribeHelper::draw):
+ * platform/graphics/skia/SkiaFontWin.cpp:
+ (WebCore::skiaDrawText):
+ (WebCore::setupPaintForFont):
+ (WebCore::paintSkiaText):
+ * platform/graphics/skia/SkiaFontWin.h:
+
+2011-07-15 Piroska András <Piroska.Andras@stud.u-szeged.hu>
+
+ Pixel difference in FEMorphology effect
+ https://bugs.webkit.org/show_bug.cgi?id=63930
+
+ Reviewed by Zoltan Herczeg.
+
+ Using short-circuit evaluation in the setFilterEffectAttribute function
+ was wrong. We should call both setRadius functions and evaluate the
+ changes separately.
+
+ * svg/SVGFEMorphologyElement.cpp:
+ (WebCore::SVGFEMorphologyElement::setFilterEffectAttribute):
+
+2011-07-15 Jeff Miller <jeffm@apple.com>
+
+ Fullscreen content doesn't use fullscreen controller on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=64540
+ <rdar://problem/9510455>
+
+ Reviewed by Darin Adler.
+
+ RenderThemeWin needs to override extraFullScreenStyleSheet() to return
+ the fullscreenQuickTime stylesheet.
+
+ Test added to fullscreen/video-controls-override.html.
+
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::RenderThemeWin::extraFullScreenStyleSheet): Added.
+ * rendering/RenderThemeWin.h: Override extraFullScreenStyleSheet().
+
+2011-07-15 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Not reviewed. Fix build failure introduced in r91061.
+
+ * page/Console.cpp:
+ (WebCore::Console::markTimeline): Remove argument name from unused parameter.
+
+2011-07-15 Kenneth Rohde Christiansen <kenneth@webkit.org>
+
+ Upstream QtWebKit/N9 changes related to visibleContentRect
+ https://bugs.webkit.org/show_bug.cgi?id=64589
+
+ Reviewed by Simon Hausmann.
+
+ Rename setActualVisibleContentRect to setFixedVisibleContentRect
+ as that makes it more obvious that it is an override. It is also
+ consistent with the setFixedLayout which is often used in
+ conjunction with it.
+
+ Make visibleContentRect return the fixed value if set, and remove
+ all calls to actualVisibleContentRect.
+
+ Also updated the documentation.
+
+ This is similar to what we have on our QtWebKit/N9 branch and is
+ pretty well tested.
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::visibleContentRect):
+ If a fixed visibleContentRect is set, return that.
+ Remove the code returning the contents size when in
+ paintsEntireContents mode as that is wrong and already
+ ifdeffed out for EFL.
+ (WebCore::ScrollView::setScrollPosition):
+ Do not try to be smart and update the fixed visibleContentsRect
+ automatically, as the embedder might ignore the scroll request
+ for various reasons.
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::setFixedVisibleContentRect):
+ (WebCore::ScrollView::fixedVisibleContentRect):
+
+2011-07-15 Mike West <mkwst@chromium.org>
+
+ Web Inspector: Rename console.markTimeline() to console.timeStamp() for Firebug compatibility.
+ https://bugs.webkit.org/show_bug.cgi?id=63317
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/timeline/timeline-time-stamp.html
+
+ * inspector/InspectorConsoleInstrumentation.h:
+ (WebCore::InspectorInstrumentation::consoleTimeStamp):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::consoleTimeStampImpl):
+ * inspector/InspectorInstrumentation.h:
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::didTimeStamp):
+ * inspector/InspectorTimelineAgent.h:
+ * inspector/TimelineRecordFactory.cpp:
+ (WebCore::TimelineRecordFactory::createTimeStampData):
+ * inspector/TimelineRecordFactory.h:
+ * inspector/front-end/TimelineAgent.js:
+ * inspector/front-end/TimelineOverviewPane.js:
+ (WebInspector.TimelineOverviewPane.prototype.update.markPercentagesForRecord):
+ (WebInspector.TimelineOverviewPane.prototype.update):
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel):
+ (WebInspector.TimelinePanel.prototype.get _recordStyles):
+ (WebInspector.TimelinePanel.prototype._updateEventDividers):
+ (WebInspector.TimelinePanel.prototype._createEventDivider):
+ (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
+ (WebInspector.TimelinePanel.prototype._clearPanel):
+ (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
+ * page/Console.cpp:
+ (WebCore::Console::markTimeline):
+ (WebCore::Console::timeStamp):
+ * page/Console.h:
+ * page/Console.idl:
+
+2011-07-15 Jonathan Dong <jonathan.dong@torchmobile.com.cn>
+
+ LocalStorage: Changed the value type of ItemTable from TEXT to BLOB
+ to avoid string truncation.
+ This patch will also convert the exsisting ItemTable and perform
+ the DATA MIGRATION job.
+ https://bugs.webkit.org/show_bug.cgi?id=58762
+
+ Reviewed by Jeremy Orlow.
+
+ Tests: manual-tests/localstorage-value-truncation.html
+
+ * manual-tests/localstorage-value-truncation.html: Added.
+ Demostrate the testcase shown in bug 58762.
+ * platform/sql/SQLiteStatement.cpp:
+ (WebCore::SQLiteStatement::isColumnDeclearedAsBlob):
+ Test if the pre-defined type of column is BLOB.
+ * platform/sql/SQLiteStatement.h:
+ * storage/StorageAreaSync.cpp:
+ Change the localStorage value type from Text to BLOB to avoid the
+ value string truncation at \x00.
+ (WebCore::StorageAreaSync::openDatabase):
+ Change the database structure, use BLOB to replace the TEXT type of
+ value segment in ItemTable.
+ (WebCore::StorageAreaSync::migrateItemTableIfNeeded):
+ Migrate the ItemTable if the pre-defined type of value is TEXT.
+ (WebCore::StorageAreaSync::performImport):
+ Use getColumnBlobAsString() to import the BLOB value.
+ (WebCore::StorageAreaSync::sync):
+ Use bindBlob() to bind value string to the SQLiteStatement for the
+ database execution.
+ * storage/StorageAreaSync.h:
+
+2011-07-15 Kentaro Hara <haraken@google.com>
+
+ Clear the content of a search input form when 'Escape' is pressed.
+ https://bugs.webkit.org/show_bug.cgi?id=51897
+
+ This change added handleKeydownEvent() to a search input form,
+ which clears the form and triggers a 'search' event when 'Escape' is pressed.
+
+ Reviewed by Kent Tamura.
+
+ Test: fast/forms/input-search-press-escape-key.html
+
+ * html/SearchInputType.cpp:
+ (WebCore::SearchInputType::handleKeydownEvent):
+ * html/SearchInputType.h:
+
+2011-07-15 Alexandru Chiculita <achicu@adobe.com>
+
+ Move useRepaintBounds from RenderBlock::layoutRunsAndFloats to LineLayoutState
+ https://bugs.webkit.org/show_bug.cgi?id=64360
+
+ Reviewed by Hajime Morita.
+
+ No new tests needed because the patch is just a refactor.
+
+ * rendering/RenderBlock.h:
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::LineLayoutState::LineLayoutState):
+ (WebCore::LineLayoutState::usesRepaintBounds):
+ (WebCore::LineLayoutState::setRepaintRange):
+ (WebCore::LineLayoutState::updateRepaintRangeFromBox):
+ (WebCore::RenderBlock::layoutRunsAndFloats):
+ (WebCore::RenderBlock::determineStartPosition):
+
+2011-07-14 MORITA Hajime <morrita@google.com>
+
+ ExceptionCodePlaceholder should have its own ExceptionCodePlaceholder.cpp file
+ https://bugs.webkit.org/show_bug.cgi?id=64503
+
+ Reviewed by Darin Adler.
+
+ No new tests. Just a file reorg.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/DOMAllInOne.cpp:
+ * dom/ExceptionCodePlaceholder.cpp: Added.
+ (WebCore::NoExceptionAssertionChecker::NoExceptionAssertionChecker):
+ (WebCore::NoExceptionAssertionChecker::~NoExceptionAssertionChecker):
+ * dom/ExceptionCodePlaceholder.h: Removed NoExceptionAssertionChecker::m_function, which is loonger used.
+
+2011-07-14 Mark Pilgrim <pilgrim@chromium.org>
+
+ Remove LegacyDefaultOptionalArguments flag from WebGL
+ https://bugs.webkit.org/show_bug.cgi?id=64549
+
+ Reviewed by Kenneth Russell.
+
+ * html/canvas/WebGLRenderingContext.idl:
+
+2011-07-14 Yuta Kitamura <yutak@chromium.org>
+
+ WebSocket: Introduce pywebsocket-0.6b2
+ https://bugs.webkit.org/show_bug.cgi?id=64534
+
+ Reviewed by Kent Tamura.
+
+ pywebsocket now accepts "Sec-WebSocket-Version: 8" as required in hybi-10 specification.
+
+ No new functionality is added, thus no new tests. Existing WebSocket tests should keep passing.
+
+ * websockets/WebSocketHandshake.cpp:
+ (WebCore::WebSocketHandshake::clientHandshakeMessage):
+ (WebCore::WebSocketHandshake::clientHandshakeRequest):
+
+2011-07-14 SravanKumar S <sravan.ken@gmail.com>
+
+ Replaced isChecked() with shouldAppearChecked() in HTMLInputElement.cpp along with all the corresponding function calls.
+ https://bugs.webkit.org/show_bug.cgi?id=54476
+
+ Reviewed by Darin Adler.
+
+ No new tests, since existing fast/dom/HTMLInputElement/checked-pseudo-selector.html verifies the patch.
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::isChecked):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::canShareStyleWithControl):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ * dom/CheckedRadioButtons.cpp:
+ (WebCore::CheckedRadioButtons::removeButton):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::shouldAppearChecked):
+ * html/HTMLInputElement.h: Removed virtual declaration from shouldAppearChecked().
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::isChecked):
+
+2011-07-14 Kenichi Ishibashi <bashi@chromium.org>
+
+ <input form="x"> should not associate the input with any forms when there is no form with id="x"
+ https://bugs.webkit.org/show_bug.cgi?id=64509
+
+ Don't set form owner when a form associated element has the form attribute but there is no such form element.
+
+ Reviewed by Kent Tamura.
+
+ Test: fast/forms/form-attribute-nonexistence-form-id.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::resetFormElementsOwner): Removed the argument which is no longer needed.
+ * dom/Document.h: Ditto.
+ * html/FormAssociatedElement.cpp:
+ (WebCore::FormAssociatedElement::insertedIntoTree): Resets m_form whenever the element has the form attribute.
+ (WebCore::FormAssociatedElement::resetFormOwner): Don't set m_form when there is no form element which has the given id.
+ (WebCore::FormAssociatedElement::formAttributeChanged): Removed the argument of resetFormOwner().
+ * html/FormAssociatedElement.h: Ditto.
+ * html/HTMLFormElement.cpp: Ditto.
+ (WebCore::HTMLFormElement::insertedIntoDocument):
+ (WebCore::HTMLFormElement::removedFromDocument):
+
+2011-07-14 Kent Tamura <tkent@chromium.org>
+
+ REGRESSION (r90809): Setting a checkbox's checked property, doesn't render as checked until app window loses focus
+ https://bugs.webkit.org/show_bug.cgi?id=64537
+
+ Reviewed by Darin Adler.
+
+ We stopped to call updateCheckedRadioButtons() for checkboxes
+ since r90809, but we need to call RenderTheme::stateChanged(),
+ which was in updateCheckedRadioButtons(), for checkboxes.
+
+ Tests: fast/forms/checkbox-appearance-change-by-checked-expected.html
+ fast/forms/checkbox-appearance-change-by-checked.html
+
+ * html/HTMLInputElement.cpp: Move the RenderTheme::stateChanged() call
+ from updateCheckedRadioButtons() to setChecked().
+ (WebCore::HTMLInputElement::updateCheckedRadioButtons):
+ (WebCore::HTMLInputElement::setChecked):
+
+2011-07-14 Adam Barth <abarth@webkit.org>
+
+ The beforeload event allows tracking URI changes in a frame
+ https://bugs.webkit.org/show_bug.cgi?id=64482
+
+ Reviewed by Nate Chapin.
+
+ Tests: http/tests/security/beforeload-iframe-client-redirect.html
+ http/tests/security/beforeload-iframe-server-redirect.html
+
+ Only dispatch the beforeload event for a frame if we haven't yet
+ committed our first real load. The URL that we send to our parent will
+ be the same URL the parent seens in the src attribute.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadWithDocumentLoader):
+
+2011-07-14 Dan Bernstein <mitz@apple.com>
+
+ LLVM Compiler build fix.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::ApplyPropertyComputeLength::applyValue):
+
+2011-07-14 Darin Adler <darin@apple.com>
+
+ [Mac] Use [NSCursor operationNotAllowedCursor] for CSS no-drop as well as CSS not-allowed
+ https://bugs.webkit.org/show_bug.cgi?id=64570
+
+ Reviewed by Alexey Proskuryakov.
+
+ Mac OS X documentation and usage makes it clear that this cursor is usually used for no-drop,
+ and that it's also reasonable to use it for not-allowed.
+
+ * platform/mac/CursorMac.mm:
+ (WebCore::Cursor::ensurePlatformCursor): Use [NSCursor operationNotAllowedCursor] for
+ Cursor::NoDrop.
+
+2011-07-14 Luke Macpherson <macpherson@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Introduce templated compute length class in CSSStyleApplyProperty, and use to handle several CSS properties.
+ https://bugs.webkit.org/show_bug.cgi?id=62957
+
+ No new tests / refactoring only.
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::computeLength):
+ Add computeLength function that returns unsigned short.
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::ApplyPropertyComputeLength::ApplyPropertyComputeLength):
+ Added class to handle computeLength based properties.
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ Initialize ApplyPropertyComputeLength for appropriate properties.
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::useSVGZoomRules):
+ Make this a public member function instead of a private static function.
+ (WebCore::CSSStyleSelector::applyProperty):
+ Removed code now implemented in CSSStyleApplyProperty.
+ (WebCore::CSSStyleSelector::setFontSize):
+ Use new useSVGZoomRules function.
+ * css/CSSStyleSelector.h:
+ Add interface for useSVGZoomRules.
+
+2011-07-14 Antti Koivisto <antti@apple.com>
+
+ REGRESSION: Should not dispatch didFirstVisuallyNonEmptyLayout for the initial empty document
+ https://bugs.webkit.org/show_bug.cgi?id=64557
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Avoid sending didFirstVisuallyNonEmptyLayout for the initial empty document of the frame. The
+ clients may not expect it and it doesn't make much sense in any case.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::performPostLayoutTasks):
+
+2011-07-14 Jeffrey Pfau <jpfau@apple.com>
+
+ Character reference parser for new XML parser
+ https://bugs.webkit.org/show_bug.cgi?id=64398
+
+ Reviewed by Adam Barth.
+
+ Refactored out the HTML entity parser and added a common template for parsing character references.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/parser/HTMLEntityParser.cpp:
+ (WebCore::consumeHTMLEntity):
+ * xml/parser/CharacterReferenceParserInlineMethods.h: Copied from Source/WebCore/html/parser/HTMLEntityParser.cpp.
+ (WebCore::isHexDigit):
+ (WebCore::unconsumeCharacters):
+ (WebCore::consumeCharacterReference):
+ * xml/parser/XMLCharacterReferenceParser.cpp: Added.
+ (WebCore::consumeXMLCharacterReference):
+ * xml/parser/XMLCharacterReferenceParser.h: Added.
+
+2011-07-14 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: panel switching is too slow.
+ https://bugs.webkit.org/show_bug.cgi?id=60959
+
+ * inspector/front-end/inspector.css:
+ (.panel):
+ (.panel.visible):
+
+2011-07-14 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: remove more unused CSS from inspector.css
+ https://bugs.webkit.org/show_bug.cgi?id=64529
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/inspector.css:
+
+2011-07-14 Ryosuke Niwa <rniwa@webkit.org>
+
+ Move subtreeHasChanged from RenderTextControl to HTMLTextFormControlElement
+ https://bugs.webkit.org/show_bug.cgi?id=64476
+
+ Reviewed by Kent Tamura.
+
+ Moved subtreeHasChanged from RenderTextControl, RenderTextControlSingleLine, and
+ RenderTextControlMultiLine to HTMLTextFormControlElement, HTMLInputElement, and
+ HTMLTextAreaElement. Also moved m_searchEventTimer and related functions from
+ RenderTextSingleLine to SearchInputType.
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::subtreeHasChanged): Moved from RenderTextControlSingleLine.
+ (WebCore::HTMLInputElement::onSearch): Calls stopSearchEventTimer.
+ * html/HTMLInputElement.h:
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::subtreeHasChanged): Moved from RenderTextMultiLine.
+ * html/HTMLTextAreaElement.h:
+ * html/HTMLTextFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::defaultEventHandler): Calls subtreeHasChanged.
+ (WebCore::HTMLTextFormControlElement::subtreeHasChanged): Added; calls respondToChangeByUser.
+ * html/HTMLTextFormControlElement.h:
+ * html/SearchInputType.cpp:
+ (WebCore::SearchInputType::SearchInputType): Initializes m_searchEventTimer.
+ (WebCore::SearchInputType::startSearchEventTimer): Moved from RenderTextControlSingleLine.
+ (WebCore::SearchInputType::stopSearchEventTimer): Ditto.
+ (WebCore::SearchInputType::searchEventTimerFired): Ditto.
+ * html/SearchInputType.h:
+ * html/TextFieldInputType.cpp:
+ (WebCore::TextFieldInputType::handleBeforeTextInsertedEvent): Updated comment.
+ * rendering/RenderTextControl.cpp:
+ * rendering/RenderTextControl.h:
+ (WebCore::RenderTextControl::respondToChangeByUser): Renamed from subtreeHasChanged.
+ * rendering/RenderTextControlMultiLine.cpp:
+ * rendering/RenderTextControlMultiLine.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine): No longer initializes
+ m_searchEventTimer.
+ * rendering/RenderTextControlSingleLine.h:
+
+2011-07-14 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Move XML errors handling out from XMLDocumentParser (refactoring).
+ https://bugs.webkit.org/show_bug.cgi?id=64305
+
+ XML errors handling logic is moved out from XMLDocumentParser to allow using it for XSLT error handling as well.
+
+ Reviewed by Adam Barth.
+
+ No tests needed as there is no new functionality added.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * xml/XMLErrors.cpp: Added.
+ (WebCore::XMLErrors::XMLErrors):
+ (WebCore::XMLErrors::handleError):
+ (WebCore::XMLErrors::appendErrorMessage):
+ (WebCore::createXHTMLParserErrorHeader):
+ (WebCore::XMLErrors::insertErrorMessageBlock):
+ * xml/XMLErrors.h: Added.
+ * xml/parser/XMLDocumentParser.cpp:
+ (WebCore::XMLDocumentParser::pushCurrentNode):
+ (WebCore::XMLDocumentParser::handleError):
+ (WebCore::XMLDocumentParser::insertErrorMessageBlock):
+ * xml/parser/XMLDocumentParser.h:
+ * xml/parser/XMLDocumentParserLibxml2.cpp:
+ (WebCore::PendingCallbacks::appendErrorCallback):
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::doWrite):
+ (WebCore::XMLDocumentParser::error):
+ (WebCore::warningHandler):
+ (WebCore::fatalErrorHandler):
+ (WebCore::normalErrorHandler):
+ * xml/parser/XMLDocumentParserQt.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::doWrite):
+ (WebCore::XMLDocumentParser::doEnd):
+ (WebCore::XMLDocumentParser::parse):
+ (WebCore::XMLDocumentParser::parseStartElement):
+ (WebCore::XMLDocumentParser::parseDtd):
+
+2011-07-14 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: InspectorResourceAgent should generate unique identifier and save cachedResource for resources from memory cache.
+ https://bugs.webkit.org/show_bug.cgi?id=64356
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/Inspector.json:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCache):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
+ * inspector/InspectorResourceAgent.h:
+ * inspector/front-end/NetworkManager.js:
+ (WebInspector.NetworkManager.prototype.requestContent):
+ (WebInspector.NetworkDispatcher):
+ (WebInspector.NetworkDispatcher.prototype.resourceLoadedFromMemoryCache):
+ (WebInspector.NetworkDispatcher.prototype._appendRedirect):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkLogView.prototype._frameNavigated):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadedResourceFromMemoryCache):
+ * loader/FrameLoader.h:
+
+2011-07-14 Tim Horton <timothy_horton@apple.com>
+
+ Clear SVGElementInstance's children immediately upon detachment
+ https://bugs.webkit.org/show_bug.cgi?id=63739
+ <rdar://problem/9705708>
+
+ Reviewed by Nikolas Zimmermann.
+
+ In addition to clearing the instance's children in the destructor,
+ clear them when the instance is detached from its <use>. This way,
+ we won't attempt to use them after we're detached but before the
+ destructor has been called.
+
+ Test: svg/custom/use-crash-using-children-before-destroy.svg
+
+ * svg/SVGElementInstance.cpp:
+ (WebCore::SVGElementInstance::~SVGElementInstance):
+ (WebCore::SVGElementInstance::clearChildren):
+ * svg/SVGElementInstance.h:
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::detachInstance):
+
+2011-07-14 Nate Chapin <japhet@chromium.org>
+
+ Don't skip custom cursors if an Image* is null,
+ since this can lead to a non-custom Cursor flickering
+ back in when the custom cursor hasn't finished loading yet.
+ https://bugs.webkit.org/show_bug.cgi?id=64321
+
+ Reviewed by Darin Fisher.
+
+ Manual test, since we're testing visual flickering.
+
+ * manual-tests/canvas-cursor.html: Added.
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::selectCursor):
+ * platform/Cursor.cpp:
+ (WebCore::determineHotSpot):
+
+2011-07-14 Young Han Lee <joybro@company100.net>
+
+ Reviewed by Dirk Schulze.
+
+ REGRESSION (r89774): svg/W3C-SVG-1.1/animate-elem-82-t.svg hits assertion failure.
+ https://bugs.webkit.org/show_bug.cgi?id=63911
+
+ Some functions assumed calculateKeyTimesIndex() does not return the last index of
+ the keyTimes, but it would be right behavior for calculateKeyTimesIndex() when it
+ accepts 1 as the percent argument.
+
+ To avoid the assumption, and for more efficiency, this patch allows the functions
+ using calculateKeyTimesIndex() to return early when it accepts 1 as the percent argument.
+ These functions have always returned the last element of the corresponding vector
+ in that situation.
+
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::SVGAnimationElement::calculatePercentFromKeyPoints):
+ (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
+
+2011-07-14 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: remove more dead code
+ https://bugs.webkit.org/show_bug.cgi?id=64524
+
+ Reviewed by Yury Semikhatsky.
+
+ * WebCore.gypi:
+ * inspector/front-end/SummaryBar.js: Removed.
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.css:
+ * inspector/front-end/inspector.html:
+
+2011-07-14 Peter Varga <pvarga@webkit.org>
+
+ [Qt][V8] Build fix after r90830.
+
+ Reviewed by Csaba Osztrogonác.
+
+ The histogramEnumeration() function isn't available from the Qt port's
+ PlatformBridge.h because this function is Chromium specific.
+ Since the http://trac.webkit.org/changeset/90830 change we need to
+ guard the usage of the histogramEnumeration() function.
+
+ No new tests needed.
+
+ * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
+ (WebCore::V8InspectorFrontendHost::recordActionTakenCallback):
+ (WebCore::V8InspectorFrontendHost::recordPanelShownCallback):
+ (WebCore::V8InspectorFrontendHost::recordSettingChangedCallback):
+
+2011-07-14 Yury Semikhatsky <yurys@chromium.org>
+
+ Web Inspector: show only Console and Scripts panels in shared worker inspector front-end
+ https://bugs.webkit.org/show_bug.cgi?id=64519
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/WorkerManager.js:
+ (WebInspector.WorkerManager):
+ (WebInspector.WorkerManager.isWorkerFrontend):
+ (WebInspector.WorkerManager.isSharedWorkerFrontend):
+ (WebInspector.WorkerManager.prototype._openInspectorWindow):
+ (WebInspector.DedicatedWorkerMessageForwarder):
+
+2011-07-14 MORITA Hajime <morrita@google.com>
+
+ Unreviewed, rolling out r90976, r90981, and r90985.
+ http://trac.webkit.org/changeset/90976
+ http://trac.webkit.org/changeset/90981
+ http://trac.webkit.org/changeset/90985
+ https://bugs.webkit.org/show_bug.cgi?id=64251
+
+ build break
+
+ * WebCore.exp.in:
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRenderingContext::NodeRenderingContext):
+ (WebCore::NodeRenderingContext::nextRenderer):
+ (WebCore::NodeRenderingContext::previousRenderer):
+ * dom/NodeRenderingContext.h:
+ * dom/ShadowContentElement.cpp:
+ (WebCore::ShadowContentElement::attach):
+ (WebCore::ShadowContentElement::detach):
+ * dom/ShadowContentElement.h:
+ * dom/ShadowContentSelector.cpp:
+ (WebCore::ShadowContentSelector::ShadowContentSelector):
+ (WebCore::ShadowContentSelector::selectInclusion):
+ (WebCore::ShadowContentSelector::willAttachContentFor):
+ (WebCore::ShadowContentSelector::didAttachContent):
+ (WebCore::ShadowContentSelector::activeElement):
+ * dom/ShadowContentSelector.h:
+ * dom/ShadowRoot.cpp:
+ (WebCore::ShadowRoot::~ShadowRoot):
+ (WebCore::ShadowRoot::activeContentElement):
+ * dom/ShadowRoot.h:
+ * testing/Internals.cpp:
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2011-07-13 Ryosuke Niwa <rniwa@webkit.org>
+
+ Move forwardEvent from RenderTextControl to HTMLTextFormControlElement
+ https://bugs.webkit.org/show_bug.cgi?id=64475
+
+ Reviewed by Kent Tamura.
+
+ Moved forwardEvent from RenderTextControl, RenderTextControlSingleLine, and RenderTextControlMultiLine
+ to HTMLTextFormControlElement, HTMLInputElement, and HTMLTextAreaElement.
+
+ This removes the last dependency on Event.h and EventNames.h in the cpp files for the above render
+ objects classes.
+
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::defaultEventHandler):
+ * html/HTMLTextFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::forwardEvent):
+ * html/HTMLTextFormControlElement.h:
+ * html/TextFieldInputType.cpp:
+ (WebCore::TextFieldInputType::forwardEvent):
+ * rendering/RenderTextControl.cpp:
+ * rendering/RenderTextControl.h:
+ * rendering/RenderTextControlMultiLine.cpp:
+ * rendering/RenderTextControlMultiLine.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ * rendering/RenderTextControlSingleLine.h:
+
+2011-07-13 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: if you rename an element into the INPUT element the browser will crash.
+ https://bugs.webkit.org/show_bug.cgi?id=64292
+
+ Reviewed by Joseph Pecoraro.
+
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::setNodeName):
+ Unnecessary function call copyNonAttributeProperties was removed.
+
+2011-07-13 Yuta Kitamura <yutak@chromium.org>
+
+ WebSocket: Implement hybi handshake
+ https://bugs.webkit.org/show_bug.cgi?id=64344
+
+ Reviewed by Kent Tamura.
+
+ Implement WebSocket handshake which is described at
+ <http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-10#section-5.1>.
+
+ Notable differences from hixie-76 protocol are:
+ - Challenge-response scheme has been changed dramatically.
+ - Servers do not send Sec-WebSocket-Location and Sec-WebSocket-Origin anymore.
+ - The value of "Upgrade" header has been changed to "websocket" (lower-case only).
+ - "Origin" header in client's request is renamed to "Sec-WebSocket-Origin".
+
+ New tests: http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header.html
+ http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header.html
+ http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header.html
+
+ Note: Tests under hybi/ directory (including the new ones) are skipped and cannot be enabled
+ yet, because pywebsocket does not accept requests from half-baked client implementation
+ (i.e. hybi handshake + hixie-76 framing). They will be unskipped when hybi framing is landed
+ in WebCore.
+
+ * websockets/WebSocketHandshake.cpp:
+ Functions and members only used for hixie-76 handshake are renamed so that they are not confused
+ with hybi-10's ones.
+ (WebCore::generateHixie76SecWebSocketKey):
+ (WebCore::generateHixie76Key3):
+ (WebCore::generateHixie76ExpectedChallengeResponse):
+ (WebCore::generateSecWebSocketKey):
+ Generates a value for Sec-WebSocket-Key as stated in hybi-10.
+ (WebCore::getExpectedWebSocketAccept):
+ Calculates the expected value of Sec-WebSocket-Accept.
+ (WebCore::WebSocketHandshake::WebSocketHandshake):
+ (WebCore::WebSocketHandshake::clientHandshakeMessage):
+ (WebCore::WebSocketHandshake::clientHandshakeRequest):
+ (WebCore::WebSocketHandshake::readServerHandshake):
+ (WebCore::WebSocketHandshake::serverWebSocketAccept):
+ (WebCore::WebSocketHandshake::serverWebSocketExtensions):
+ (WebCore::WebSocketHandshake::checkResponseHeaders):
+ * websockets/WebSocketHandshake.h:
+
+2011-07-13 MORITA Hajime <morrita@google.com>
+
+ [ShadowContentElement] forwarded node should be able to access its hosting content element.
+ https://bugs.webkit.org/show_bug.cgi?id=64251
+
+ Reviewed by Dimitri Glazkov.
+
+ - Introduced ShadowInclusionSet to manage included nodes to its includer content element.
+ ShadowInclusionSet instance is owned by ShadowRoot.
+ - Updated the set on inclusion list changes.
+ - Used the set to retrieve the content element of NodeRenderingContext.
+
+ There are also related refactoring and cleanup:
+ - Renamed NodeRenderingContext::m_contentElement to m_includer
+ - ShadowContentSelector::m_activeElement is no longer used, thus removed.
+
+ Test: fast/dom/shadow/content-element-includer.html
+
+ * WebCore.exp.in:
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRenderingContext::NodeRenderingContext):
+ (WebCore::NodeRenderingContext::nextRenderer):
+ (WebCore::NodeRenderingContext::previousRenderer):
+ * dom/NodeRenderingContext.h:
+ (WebCore::NodeRenderingContext::includer):
+ * dom/ShadowContentElement.cpp:
+ (WebCore::removeFromSet): Added
+ (WebCore::addToSet): Added
+ (WebCore::ShadowContentElement::attach):
+ (WebCore::ShadowContentElement::detach):
+ * dom/ShadowContentElement.h:
+ (WebCore::ShadowInclusionSet::add):
+ (WebCore::ShadowInclusionSet::remove):
+ (WebCore::ShadowInclusionSet::isEmpty):
+ (WebCore::ShadowInclusionSet::Translator::hash):
+ (WebCore::ShadowInclusionSet::Translator::equal):
+ (WebCore::ShadowInclusionSet::Hash::hash):
+ (WebCore::ShadowInclusionSet::Hash::equal):
+ (WebCore::ShadowInclusionSet::find):
+ * dom/ShadowContentSelector.cpp:
+ (WebCore::ShadowContentSelector::ShadowContentSelector):
+ (WebCore::ShadowContentSelector::selectInclusion):
+ * dom/ShadowContentSelector.h:
+ * dom/ShadowRoot.cpp:
+ (WebCore::ShadowRoot::~ShadowRoot):
+ (WebCore::ShadowRoot::includerFor): Replaced activeElement()
+ (WebCore::ShadowRoot::inclusions): Added
+ (WebCore::ShadowRoot::ensureInclusions): Added
+ * dom/ShadowRoot.h:
+ (WebCore::toShadowRoot):
+ * testing/Internals.cpp:
+ (WebCore::Internals::includerFor):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2011-07-12 Dominic Cooney <dominicc@chromium.org>
+
+ Raise if dispatchEvent dispatches an event that is being dispatched
+ https://bugs.webkit.org/show_bug.cgi?id=64150
+
+ Reviewed by Dimitri Glazkov.
+
+ Spec: http://www.w3.org/TR/DOM-Level-3-Events/#events-EventTarget-dispatchEvent
+
+ Test: fast/events/dispatch-event-being-dispatched.html
+
+ * dom/Event.h:
+ (WebCore::Event::isBeingDispatched): Added.
+ * dom/EventException.h:
+ * dom/EventException.idl: Add DISPATCH_REQUEST_ERR.
+ * dom/EventTarget.cpp:
+ (WebCore::EventTarget::dispatchEvent): Raise if being dispatched.
+ * dom/ExceptionCode.cpp: Add gunk for DISPATCH_REQUEST_ERR.
+
+2011-07-13 Kent Tamura <tkent@chromium.org>
+
+ Implement text field placeholders using shadow DOM
+ https://bugs.webkit.org/show_bug.cgi?id=64253
+
+ Reviewed by Dimitri Glazkov.
+
+ Represents a placeholder text as a shadow element, and its
+ visibility is controlled by 'visibility' CSS property.
+
+ This patch removes all of existing code about placeholder from
+ RenderTextControl*. RenderTextControl* have only small code about
+ placeholder layout.
+
+ Also, this patch removes INPUT_PLACEHOLDER legacy pseudo ID, and
+ the placeholder style uses Element::shadowPseudoId().
+
+ This fixes the following regressions:
+ - https://bugs.webkit.org/show_bug.cgi?id=51290
+ - https://bugs.webkit.org/show_bug.cgi?id=54797
+ - https://bugs.webkit.org/show_bug.cgi?id=54814
+ - https://bugs.webkit.org/show_bug.cgi?id=63367
+
+ Test: fast/forms/textarea-placeholder-wrapping.html
+
+ * css/CSSSelector.cpp: Remove INPUT_PLACEHOLDER legacy pseudo ID.
+ (WebCore::CSSSelector::pseudoId):
+ (WebCore::nameToPseudoTypeMap):
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h: ditto.
+ * css/html.css:
+ (::-webkit-input-placeholder): Added. This contains properties
+ common in <input> and <textarea>. Some properties have !important
+ so that a stylesheet specified by a page author won't break
+ WebKit's assumption.
+ (input::-webkit-input-placeholder, isindex::-webkit-input-placeholder):
+ Added the default style for <input> placeholders.
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::placeholderElement): Delegate to an InputType.
+ (WebCore::HTMLInputElement::updatePlaceholderText): ditto.
+ * html/HTMLInputElement.h: Declare placeholderElement() and updatePlaceholderText().
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::createRenderer):
+ Remove the 'placeholderVisible' argument.
+ (WebCore::HTMLTextAreaElement::placeholderElement): Added.
+ (WebCore::HTMLTextAreaElement::updatePlaceholderText):
+ Added. This creates, deletes, or updates the placeholder element.
+ * html/HTMLTextAreaElement.h:
+ - Declare placeholderElement() and updatePlaceholderText().
+ - Add m_placeholder.
+ * html/HTMLTextFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::updatePlaceholderVisibility):
+ Update the placeholder element and 'visibility' CSS property,
+ instead of delegating the job to a renderer.
+ * html/HTMLTextFormControlElement.h:
+ Declare two pure virtual functions: placeholderElement() and updatePlaceholderText().
+ * html/InputType.cpp:
+ (WebCore::InputType::placeholderElement): Add an empty implementation.
+ (WebCore::InputType::updatePlaceholderText): Add an empty implementation.
+ * html/InputType.h: Declare placeholderElement() and updatePlaceholderText().
+ * html/TextFieldInputType.cpp:
+ (WebCore::TextFieldInputType::createRenderer):
+ Remove the 'placeholderVisible' argument.
+ (WebCore::TextFieldInputType::placeholderElement): Added.
+ (WebCore::TextFieldInputType::destroyShadowSubtree): Deletes m_placeholder.
+ (WebCore::TextFieldInputType::updatePlaceholderText):
+ Added. This creates, deletes, or updates the placeholder element.
+ * html/TextFieldInputType.h:
+ - Declare placeholderElement() and updatePlaceholderText().
+ - Add m_placeholder.
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::RenderTextControl):
+ Remove the 'placeholderVisible' argument.
+ (WebCore::RenderTextControl::layoutSpecialExcludedChild):
+ Excludes the placeholder renderer in order to avoid to secure a box for
+ the placeholder.
+ * rendering/RenderTextControl.h:
+ - Remove declarations of removed functions.
+ - Update the RenderTextControl signature.
+ - Add layoutSpecialExcludedChild().
+ * rendering/RenderTextControlMultiLine.cpp:
+ (WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
+ Remove the 'placeholderVisible' argument.
+ (WebCore::RenderTextControlMultiLine::layoutSpecialExcludedChild):
+ Laying out the placeholder box so that it has correct width and location.
+ * rendering/RenderTextControlMultiLine.h:
+ - Remove declarations of removed functions.
+ - Update the RenderTextControlMultiLine signature.
+ - Add layoutSpecialExcludedChild().
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
+ Remove the 'placeholderVisible' argument.
+ (WebCore::RenderTextControlSingleLine::layout):
+ Laying out the placeholder box so that it has correct width and location.
+ * rendering/RenderTextControlSingleLine.h:
+ - Remove declarations of removed functions.
+ - Update the RenderTextControlSingleLine signature.
+ * rendering/style/RenderStyleConstants.h: Remove INPUT_PLACEHOLDER.
+
+2011-07-13 James Simonsen <simonjam@chromium.org>
+
+ Remove hack that forcefully prevents scripts from running in shadow SVG
+ https://bugs.webkit.org/show_bug.cgi?id=64419
+
+ This hack was put in to prevent scripts from running in shadow SVG. This should never have
+ happened, but did because we didn't parse <script> tags in SVG properly. This was fixed in
+ r88584, so the hack is no longer needed.
+
+ No new tests since there is no change in functionality.
+
+ Reviewed by Tony Gentilcore.
+
+ * dom/ScriptElement.cpp:
+ (WebCore::ScriptElement::prepareScript):
+
+2011-07-13 Mihnea Ovidenie <mihnea@adobe.com>
+
+ [CSSRegions] Parse -webkit-content-order property
+ https://bugs.webkit.org/show_bug.cgi?id=63897
+
+ Reviewed by David Hyatt.
+
+ Test: fast/regions/webkit-content-order-parsing.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::regionIndex):
+ (WebCore::InheritedFlags::setRegionIndex):
+ (WebCore::InheritedFlags::initialRegionIndex):
+ * rendering/style/StyleRareNonInheritedData.cpp:
+ (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
+ (WebCore::StyleRareNonInheritedData::operator==):
+ * rendering/style/StyleRareNonInheritedData.h:
+
+2011-07-13 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Move draw implementation for ContentLayerChromium/ImageLayerChromium to the appropriate CCLayerImpl subclass
+ https://bugs.webkit.org/show_bug.cgi?id=58833
+
+ Adds a TiledLayerChromium class to handle the tiling logic shared by ContentLayerChromium and ImageLayerChromium
+ so that they can be siblings in the class hierarchy instead of children. Also adds a CCTiledLayerImpl to handle
+ the drawing responsibilities for tiled layers.
+
+ TiledLayerChromium maintains a tiler, tiling options, and calculates the tiling transform. Subclasses are
+ responsible for providing an appropriate texture updater implementation. CCTiledLayerImpl takes the tiler,
+ tiling transform and layer properties and draws the layer. Longer term it'd be better of the CCTiledLayerImpl
+ owned the tiler and the TiledLayerChromium only owned an updater, but getting there will require changing the
+ way tile eviction works.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::ContentLayerChromium):
+ (WebCore::ContentLayerChromium::paintContentsIfDirty):
+ (WebCore::ContentLayerChromium::drawsContent):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ (WebCore::ContentLayerChromium::textureUpdater):
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::ImageLayerChromium):
+ (WebCore::ImageLayerChromium::cleanupResources):
+ (WebCore::ImageLayerChromium::paintContentsIfDirty):
+ (WebCore::ImageLayerChromium::textureUpdater):
+ (WebCore::ImageLayerChromium::contentBounds):
+ (WebCore::ImageLayerChromium::drawsContent):
+ (WebCore::ImageLayerChromium::createTextureUpdaterIfNeeded):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::pushPropertiesTo):
+ (WebCore::LayerChromium::ccLayerImpl):
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawRootLayer):
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::updateRect):
+ (WebCore::LayerTilerChromium::draw):
+ (WebCore::LayerTilerChromium::drawTiles):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ * platform/graphics/chromium/TiledLayerChromium.cpp: Added.
+ (WebCore::TiledLayerChromium::TiledLayerChromium):
+ (WebCore::TiledLayerChromium::~TiledLayerChromium):
+ (WebCore::TiledLayerChromium::createCCLayerImpl):
+ (WebCore::TiledLayerChromium::cleanupResources):
+ (WebCore::TiledLayerChromium::setLayerRenderer):
+ (WebCore::TiledLayerChromium::updateTileSizeAndTilingOption):
+ (WebCore::TiledLayerChromium::drawsContent):
+ (WebCore::TiledLayerChromium::createTilerIfNeeded):
+ (WebCore::TiledLayerChromium::updateCompositorResources):
+ (WebCore::TiledLayerChromium::setTilingOption):
+ (WebCore::TiledLayerChromium::setIsMask):
+ (WebCore::TiledLayerChromium::tilingTransform):
+ (WebCore::TiledLayerChromium::pushPropertiesTo):
+ (WebCore::writeIndent):
+ (WebCore::TiledLayerChromium::dumpLayerProperties):
+ * platform/graphics/chromium/TiledLayerChromium.h: Added.
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (WebCore::CCLayerImpl::setDrawsContent):
+ (WebCore::CCLayerImpl::drawsContent):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp: Added.
+ (WebCore::CCTiledLayerImpl::CCTiledLayerImpl):
+ (WebCore::CCTiledLayerImpl::~CCTiledLayerImpl):
+ (WebCore::CCTiledLayerImpl::draw):
+ (WebCore::CCTiledLayerImpl::bindContentsTexture):
+ (WebCore::CCTiledLayerImpl::dumpLayerProperties):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.h: Added.
+ (WebCore::CCTiledLayerImpl::create):
+ (WebCore::CCTiledLayerImpl::setTilingTransform):
+ (WebCore::CCTiledLayerImpl::setTiler):
+
+2011-07-13 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Remove an unused bit in RenderObject
+ https://bugs.webkit.org/show_bug.cgi?id=64485
+
+ Reviewed by Darin Adler.
+
+ No change in behavior so no new test.
+
+ * rendering/RenderObject.h: Removed a bit that was duplicated from RenderTableCell.
+ However it was not used in RenderObject and RenderTableCell already packed this bit.
+ We were lying in the number of used bits in RenderObject which was 33. This change
+ brings us back to what was advertised.
+
+2011-07-13 Simon Fraser <simon.fraser@apple.com>
+
+ Fix non-debug builds.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::createGraphicsLayer):
+
+2011-07-13 Vitaly Repeshko <vitalyr@chromium.org>
+
+ [chromium] Fix mac build after r90949.
+
+ * bindings/v8/V8HiddenPropertyName.cpp:
+ (WebCore::V8HiddenPropertyName::hiddenReferenceName):
+ * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
+ (WebCore::toV8Object):
+
+2011-07-13 Emil A Eklund <eae@chromium.org>
+
+ Switch table rendering to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=64478
+
+ Reviewed by Eric Seidel.
+
+ No new tests, no new functionality.
+
+ * rendering/AutoTableLayout.cpp:
+ * rendering/AutoTableLayout.h:
+ * rendering/HitTestResult.cpp:
+ * rendering/HitTestResult.h:
+ * rendering/LayoutTypes.h:
+ * rendering/RenderBlock.h:
+ * rendering/RenderBoxModelObject.cpp:
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderObject.h:
+ * rendering/RenderTable.cpp:
+ * rendering/RenderTable.h:
+ * rendering/RenderTableCell.cpp:
+ * rendering/RenderTableCell.h:
+
+2011-07-13 Simon Fraser <simon.fraser@apple.com>
+
+ Factor some GraphicsLayer creation code in RenderLayerBacking
+ https://bugs.webkit.org/show_bug.cgi?id=64487
+
+ Reviewed by Sam Weinig.
+
+ Move the GraphicsLayer::create() calls into once place so that we
+ don't have lots of #ifndef NDEBUG in various places, and can share
+ more code in future.
+
+ No behavior change, so no new tests.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::RenderLayerBacking):
+ (WebCore::RenderLayerBacking::~RenderLayerBacking):
+ (WebCore::RenderLayerBacking::createGraphicsLayer):
+ (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
+ (WebCore::RenderLayerBacking::destroyGraphicsLayers):
+ (WebCore::RenderLayerBacking::updateLayerTransform):
+ (WebCore::RenderLayerBacking::updateClippingLayers):
+ (WebCore::RenderLayerBacking::updateOverflowControlsLayers):
+ (WebCore::RenderLayerBacking::updateForegroundLayer):
+ (WebCore::RenderLayerBacking::updateMaskLayer):
+ * rendering/RenderLayerBacking.h:
+
+2011-07-13 Xan Lopez <xlopez@igalia.com>
+
+ [GTK] Fix distcheck.
+
+ Reviewed by Martin Robinson.
+
+ * GNUmakefile.list.am: add missing files.
+
+2011-07-13 James Robinson <jamesr@chromium.org>
+
+ [chromium] No implementation defined for WTF::monotonicallyIncreasingTime
+ https://bugs.webkit.org/show_bug.cgi?id=64420
+
+ Reviewed by Tony Gentilcore.
+
+ Removes some redundant time related code.
+
+ * platform/chromium/PlatformBridge.h:
+ * platform/chromium/SystemTimeChromium.cpp:
+ (WebCore::userIdleTime):
+
+2011-07-13 Vitaly Repeshko <vitalyr@chromium.org>
+
+ [V8] Avoid memory leaks with hidden references.
+ https://bugs.webkit.org/show_bug.cgi?id=64467
+
+ Reviewed by Adam Barth.
+
+ We used to have growing arrays of hidden references associated
+ with objects. The entries in this array had no keys and were never
+ removed. This patch changes the interface to require a reference
+ name. This way it's harder to leak an unbounded number of
+ objects. Also it makes our wrapper objects one machine word
+ smaller.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateNormalAttrGetter): Started using new interface.
+
+ Interface changes:
+ * bindings/v8/V8DOMWrapper.cpp:
+ (WebCore::V8DOMWrapper::setNamedHiddenReference):
+ (WebCore::V8DOMWrapper::setNamedHiddenWindowReference):
+ * bindings/v8/V8DOMWrapper.h:
+
+ Added a helper to compute hidden reference names as V8 strings:
+ * bindings/v8/V8HiddenPropertyName.cpp:
+ (WebCore::V8HiddenPropertyName::hiddenReferenceName):
+ * bindings/v8/V8HiddenPropertyName.h:
+
+ * bindings/v8/WrapperTypeInfo.h: Removed the hidden reference
+ array internal field.
+
+ Update usages of hidden references:
+ * bindings/v8/custom/V8CSSStyleSheetCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8DOMStringMapCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8DOMTokenListCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8LocationCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8MessageChannelConstructor.cpp:
+ (WebCore::V8MessageChannel::constructorCallback):
+ * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8StyleSheetCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
+ (WebCore::toV8Object):
+
+ * bindings/scripts/test/V8/V8TestObj.cpp:
+ (WebCore::TestObjInternal::readOnlyTestObjAttrAttrGetter): Updated.
+
+2011-07-13 Joseph Pecoraro <joepeck@webkit.org>
+
+ Improve names of some ApplicationCacheStorage accessor methods
+ https://bugs.webkit.org/show_bug.cgi?id=64433
+
+ Reviewed by Alexey Proskuryakov.
+
+ Some methods returned a bool for success/failure and
+ actually returned a value as an out parameter so their
+ name was confusing. Rename these methods to make them
+ more clear.
+
+ (WebCore::ApplicationCache::diskUsageForOrigin):
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::recalculateAvailableSpaceInQuota):
+ * loader/appcache/ApplicationCacheStorage.cpp:
+ (WebCore::ApplicationCacheStorage::calculateQuotaForOrigin):
+ (WebCore::ApplicationCacheStorage::calculateUsageForOrigin):
+ (WebCore::ApplicationCacheStorage::calculateRemainingSizeForOriginExcludingCache):
+ (WebCore::ApplicationCacheStorage::checkOriginQuota):
+ * loader/appcache/ApplicationCacheStorage.h:
+ * loader/appcache/ApplicationCache.cpp:
+ Rename the methods.
+
+ * WebCore.exp.in:
+ Replaced old versions. Also, calculateRemaining wasn't needed
+ outside WebCore, so no longer export it.
+
+2011-07-13 Joseph Pecoraro <joepeck@webkit.org>
+
+ Some ApplicationCache Origin Cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=64431
+
+ Reviewed by Alexey Proskuryakov.
+
+ - m_loadedSize is inaccurate. This just replaces it with
+ calls to ApplicationCache::estimatedSizeInStorage.
+
+ - m_availableSpaceInQuota can get out of date, so we just
+ recalculate it at the start of appcache downloads.
+
+ * loader/appcache/ApplicationCacheGroup.h:
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
+ (WebCore::ApplicationCacheGroup::didReceiveData):
+ Remove references to m_loadedSize.
+
+ (WebCore::ApplicationCacheGroup::didFinishLoading):
+ Replace m_loadedSize with estimatedSizeInStorage after we
+ add the new cached resource to the cache. The calculation
+ already happened so this check is fast.
+
+ (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
+ When we start the Downloading phase, recalculate the quota
+ so that we have an up to date quota value so that we can
+ break early if needed.
+
+2011-07-12 Brent Fulgham <bfulgham@webkit.org>
+
+ Standardize WinCairo conditionalized code under PLATFORM macro.
+ https://bugs.webkit.org/show_bug.cgi?id=64377
+
+ Reviewed by Maciej Stachowiak.
+
+ Update compile-time conditions that had previously used #ifdef
+ of WIN_CAIRO to consistently use PLATFORM(WIN_CAIRO).
+
+ * WebCore.vcproj/WebCoreCairo.vsprops: Remove redundant declaration
+ of WIN_CAIRO.
+ * WebCore.vcproj/WebCoreDebugCairoCFLite.vsprops: Update to use
+ the existing WinCairo.vsprops file.
+ * WebCorePrefix.h: Update for new WTF_PLATFORM_WIN_CAIRO define.
+ * config.h: Update to use PLATFORM(WIN_CAIRO).
+
+2011-07-13 Alexandru Chiculita <achicu@adobe.com>
+
+ [CSS Exclusions] Fix for comment #23 on wrap-shape parsing bug 61726
+ https://bugs.webkit.org/show_bug.cgi?id=64464
+
+ Reviewed by Tony Chang.
+
+ No new tests needed.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseWrapShapeRect): Removed the "valid" local.
+ (WebCore::CSSParser::parseWrapShapeCircle): Removed the "valid" local.
+ (WebCore::CSSParser::parseWrapShapeEllipse): Removed the "valid" local.
+ * css/CSSPrimitiveValue.cpp:
+ * css/CSSWrapShapes.h:
+ (WebCore::CSSWrapShapePolygon::getXAt): Replaced bit shift with multiplication.
+ (WebCore::CSSWrapShapePolygon::getYAt): Replaced bit shift with multiplication.
+ * rendering/style/RenderStyle.cpp:
+ * rendering/style/StyleRareNonInheritedData.h:
+
+2011-07-13 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Issue with Frame lifetime due to deletion in beforeload event.
+ https://bugs.webkit.org/show_bug.cgi?id=64457
+
+ Copy the Frame protector higher in the stack from loadWithDocumentLoader
+ to loadFrameRequest since any of loadPostRequest or loadURL can call
+ loadWithDocumentLoader, thereby dispatching the beforeload event and
+ blowing away the frame. This deleted frame will be later accessed in
+ the loadFrameRequest function causing a crash.
+
+ Test: fast/events/form-iframe-target-before-load-crash2.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadFrameRequest):
+ (WebCore::FrameLoader::loadWithDocumentLoader):
+
+2011-07-13 Mihnea Ovidenie <mihnea@adobe.com>
+
+ [CSSRegions]content:-webkit-from-flow not applied correctly
+ https://bugs.webkit.org/show_bug.cgi?id=64438
+
+ Reviewed by Tony Chang.
+
+ Forgot to modify getStringValue(), i was modifying only getStringValue(ExceptionCode&).
+
+ Test: fast/regions/content-webkit-from-flow-parsing.html (existing).
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::getStringValue):
+
+2011-07-12 Ryosuke Niwa <rniwa@webkit.org>
+
+ Don't reuse the last InsertTextCommand
+ https://bugs.webkit.org/show_bug.cgi?id=64416
+
+ Reviewed by Justin Garcia.
+
+ This patch makes the interface of InsertTextCommand less foreign. It now takes arguments in
+ its constructor and executes the command in doApply like other edit commands.
+
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::applyCommandToComposite): Added.
+ * editing/CompositeEditCommand.h:
+ * editing/InsertTextCommand.cpp:
+ (WebCore::InsertTextCommand::InsertTextCommand): Takes arguments input used to take.
+ (WebCore::InsertTextCommand::doApply): Renamed from input.
+ * editing/InsertTextCommand.h:
+ (WebCore::InsertTextCommand::create): Takes arguments input used to take.
+ * editing/TypingCommand.cpp:
+ (WebCore::TypingCommand::insertTextRunWithoutNewlines): Creates InsertTextCommand.
+
+2011-07-12 Dmitry Lomov <dslomov@google.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=63041
+ [Chromium][V8] Make DOMDataStore per-isolate
+ This patch:
+ - makes DOMData class an utility class with static members only
+ - adds an isolate-specific DOMDataStore in V8BindingPerIsolateData.
+ Dromaeo benchmarks are not affected.
+
+ Reviewed by Adam Barth.
+
+ * bindings/v8/DOMData.cpp:
+ (WebCore::getDefaultStore):
+ (WebCore::DOMData::getCurrentStore):
+ * bindings/v8/DOMData.h:
+ * bindings/v8/DOMDataStore.cpp:
+ (WebCore::DOMDataStore::DOMDataStore):
+ (WebCore::DOMDataStore::allStores):
+ * bindings/v8/DOMDataStore.h:
+ * bindings/v8/ScopedDOMDataStore.cpp:
+ (WebCore::ScopedDOMDataStore::ScopedDOMDataStore):
+ * bindings/v8/ScopedDOMDataStore.h:
+ * bindings/v8/StaticDOMDataStore.cpp:
+ (WebCore::StaticDOMDataStore::StaticDOMDataStore):
+ * bindings/v8/StaticDOMDataStore.h:
+ * bindings/v8/V8Binding.h:
+ (WebCore::V8BindingPerIsolateData::allStores):
+ (WebCore::V8BindingPerIsolateData::getDOMDataStore):
+ (WebCore::V8BindingPerIsolateData::setDOMDataStore):
+ * bindings/v8/V8Binding.cpp:
+ (WebCore::V8BindingPerIsolateData::V8BindingPerIsolateData):
+ * bindings/v8/V8DOMMap.cpp:
+ (WebCore::DOMDataStoreHandle::DOMDataStoreHandle):
+ (WebCore::getDOMDataStore):
+ (WebCore::enableFasterDOMStoreAccess):
+
+2011-07-12 Simon Fraser <simon.fraser@apple.com>
+
+ Rename compositing-related updateContentsScale() methods
+ https://bugs.webkit.org/show_bug.cgi?id=64430
+
+ Reviewed by Joseph Pecoraro.
+
+ Rename updateContentsScale() to something less presumptuous; layers may choose
+ to do something other than update their contents scale when the page scale factor
+ changes. pageScaleFactorChanged() is a better name.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::pageScaleFactorChanged):
+ (WebCore::Frame::scalePage):
+ * page/Frame.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::pageScaleFactorChanged):
+ * rendering/RenderLayer.h:
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::pageScaleFactorChanged):
+ * rendering/RenderLayerBacking.h:
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::pageScaleFactorChanged):
+ * rendering/RenderLayerCompositor.h:
+
+2011-07-13 Pierre Rossi <pierre.rossi@gmail.com>
+
+ Fix compile for QRawFont.
+
+ https://bugs.webkit.org/show_bug.cgi?id=64453
+
+ Reviewed by Andreas Kling.
+
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/qt/FontQt.cpp:
+ (WebCore::Font::drawGlyphs):
+
+2011-07-13 John Knottenbelt <jknotten@chromium.org>
+
+ Reference Geolocation object from GeoNotifier and Geolocation::setIsAllowed.
+ https://bugs.webkit.org/show_bug.cgi?id=64363
+
+ Reviewed by Tony Gentilcore.
+
+ Test: fast/dom/Geolocation/remove-remote-context-in-error-callback-crash.html
+
+ * page/Geolocation.cpp:
+ (WebCore::Geolocation::setIsAllowed):
+ * page/Geolocation.h:
+
+2011-07-13 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Network panel search needs each resource to have unique identifier.
+ https://bugs.webkit.org/show_bug.cgi?id=64287
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/NetworkManager.js:
+ (WebInspector.NetworkManager.prototype.requestContent):
+ (WebInspector.NetworkDispatcher):
+ (WebInspector.NetworkDispatcher.prototype.requestWillBeSent):
+ (WebInspector.NetworkDispatcher.prototype.resourceLoadedFromMemoryCache):
+ (WebInspector.NetworkDispatcher.prototype._appendRedirect):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype._appendResource):
+ (WebInspector.NetworkPanel.prototype._frameNavigated):
+ (WebInspector.NetworkPanel.prototype._updateSearchMatchedListAfterResourceIdentifierChanged):
+
+2011-07-13 Alexandru Chiculita <achicu@adobe.com>
+
+ Bridge RenderBoxModelObject::calculateBackgroundImageGeometry parameters into a class
+ https://bugs.webkit.org/show_bug.cgi?id=63987
+
+ Reviewed by Hajime Morita.
+
+ Change doesn't add new functionality. No test needed.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::maskClipRect):
+ (WebCore::RenderBox::repaintLayerRectsForImage):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintFillLayerExtended):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setNoRepeatX):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setNoRepeatY):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::useFixedAttachment):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::clip):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::relativePhase):
+ (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
+ * rendering/RenderBoxModelObject.h:
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::destOrigin):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setDestOrigin):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::destRect):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setDestRect):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::phase):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setPhase):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::tileSize):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setTileSize):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setPhaseX):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setPhaseY):
+
+2011-07-13 MORITA Hajime <morrita@google.com>
+
+ Refactoring: Ignored ExceptionCode value should be less annoying.
+ https://bugs.webkit.org/show_bug.cgi?id=63688
+
+ - Introduced ExceptionCodePlaceholder class for the default parameter of ExceptionCode.
+ - Introduced ASSERT_NO_EXCEPTION to check ExceptionCode not set to non-zero after the call.
+ - Adopted ASSERT_NO_EXCEPTION in Range.cpp
+
+ No new tests. No behaviour change.
+
+ Reviewed by Darin Adler.
+
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/ExceptionCodePlaceholder.h: Added.
+ (WebCore::ExceptionCodePlaceholder::ExceptionCodePlaceholder):
+ (WebCore::ExceptionCodePlaceholder::operator ExceptionCode& ):
+ (WebCore::IgnorableExceptionCode::IgnorableExceptionCode):
+ (WebCore::CheckedExceptionCode::CheckedExceptionCode):
+ (WebCore::CheckedExceptionCode::~CheckedExceptionCode):
+ * dom/Range.cpp:
+ (WebCore::Range::Range):
+ (WebCore::Range::editingStartPosition):
+ * dom/Range.h:
+
+2011-07-13 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Regression: OOB read in svg text run
+ https://bugs.webkit.org/show_bug.cgi?id=63627
+
+ Not reviewed.
+
+ Fixed last minute typo leading to assertions.
+
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::paintSelection):
+
+2011-07-12 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: factor NetworkLogView out of Network panel
+ https://bugs.webkit.org/show_bug.cgi?id=64366
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkLogView):
+ (WebInspector.NetworkLogView.prototype.get useLargeRows):
+ (WebInspector.NetworkLogView.prototype.set allowPopover):
+ (WebInspector.NetworkLogView.prototype.elementsToRestoreScrollPositionsFor):
+ (WebInspector.NetworkLogView.prototype.resize):
+ (WebInspector.NetworkLogView.prototype._createTable):
+ (WebInspector.NetworkLogView.prototype.show):
+ (WebInspector.NetworkLogView.prototype.hide):
+ (WebInspector.NetworkLogView.prototype._reset):
+ (WebInspector.NetworkLogView.prototype.switchToDetailedView):
+ (WebInspector.NetworkLogView.prototype.switchToBriefView):
+ (WebInspector.NetworkLogView.prototype.get _setLargerResources):
+ (WebInspector.NetworkLogView.prototype._getPopoverAnchor):
+ (WebInspector.NetworkPanel):
+ (WebInspector.NetworkPanel.prototype.get toolbarItemLabel):
+ (WebInspector.NetworkPanel.prototype.get statusBarItems):
+ (WebInspector.NetworkPanel.prototype.elementsToRestoreScrollPositionsFor):
+ (WebInspector.NetworkPanel.prototype.resize):
+ (WebInspector.NetworkPanel.prototype._reset):
+ (WebInspector.NetworkPanel.prototype.updateSidebarWidth):
+ (WebInspector.NetworkPanel.prototype.updateMainViewWidth):
+ (WebInspector.NetworkPanel.prototype.handleShortcut):
+ (WebInspector.NetworkPanel.prototype.show):
+ (WebInspector.NetworkPanel.prototype.hide):
+ (WebInspector.NetworkPanel.prototype.get resources):
+ (WebInspector.NetworkPanel.prototype.resourceById):
+ (WebInspector.NetworkPanel.prototype.canShowAnchorLocation):
+ (WebInspector.NetworkPanel.prototype.showAnchorLocation):
+ (WebInspector.NetworkPanel.prototype._onViewCleared):
+ (WebInspector.NetworkPanel.prototype._onRowSizeChanged):
+ (WebInspector.NetworkPanel.prototype._onResourceSelected):
+ (WebInspector.NetworkPanel.prototype._showResource):
+ (WebInspector.NetworkPanel.prototype._closeVisibleResource):
+ (WebInspector.NetworkPanel.prototype._toggleGridMode):
+ (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
+ (WebInspector.NetworkPanel.prototype.performSearch):
+ (WebInspector.NetworkPanel.prototype.jumpToPreviousSearchResult):
+ (WebInspector.NetworkPanel.prototype.jumpToNextSearchResult):
+ (WebInspector.NetworkPanel.prototype.searchCanceled):
+ (WebInspector.NetworkDataGridNode):
+ (WebInspector.NetworkDataGridNode.prototype.isFilteredOut):
+ (WebInspector.NetworkDataGridNode.prototype.select):
+ (WebInspector.NetworkDataGridNode.prototype.get selectable):
+
+2011-07-13 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r90634.
+ http://trac.webkit.org/changeset/90634
+ https://bugs.webkit.org/show_bug.cgi?id=64448
+
+ Qt HTTP Pipelining is not robust enough to be used in that
+ generic way. (Requested by benjaminp on #webkit).
+
+ * platform/network/qt/ResourceRequestQt.cpp:
+ (WebCore::ResourceRequest::toNetworkRequest):
+
+2011-07-13 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Regression: OOB read in svg text run
+ https://bugs.webkit.org/show_bug.cgi?id=63627
+
+ Reviewed by Zoltan Herczeg.
+
+ A TextRun is constructed for a portion of a string [a,b] whose original length is c (0 < a < b < c).
+ The TextRun charactersLength variable stores the length of the remaining text from (b..c) in order
+ to support ligatures in SVG Fonts. Example: <text>ffl</text>. When measuring the advance from char 0
+ to char 1 the whole 'ffl' text must be passed to the SVG glyph selection code, as the SVG Font may
+ define a single glyph for the characters 'ffl' thus leading to a single character long text
+ pointing to the ffl ligature, not three individual 'f' / 'f' / 'l' characters anymore.
+
+ constructTextRun(..const UChar*, int length, ..) did not correctly calculate the maximum length (b..c).
+ The passed in UChar buffer starts at eg. textRenderer->characters() + start(), and following condition
+ holds true for 'length': start() + length <= textRenderer->textLength() (which denotes the maximum length
+ of the textRenderer->characters() buffer). We have to keep track of the start() offset, so that we
+ can calculate the charactersLength for the TextRun correctly: textRenderer->textLength() - start().
+
+ There are also other cases like RenderCombinedText and/or the presence of hyphens that were incorrectly
+ tracked. Only InlineTextBox had to be fixed, the other callsites in eg. RenderBlockLineLayout already
+ computed the maximum length correctly - I assured this by valgrind runs on all SVG Font tests.
+
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::paint):
+ (WebCore::InlineTextBox::paintSelection):
+ (WebCore::InlineTextBox::constructTextRun): Add maximumLength parameter to constructTextRun.
+ * rendering/InlineTextBox.h: Ditto.
+
+2011-07-12 Antti Koivisto <antti@apple.com>
+
+ didFirstVisuallyNonEmptyLayout dispatched too early
+ https://bugs.webkit.org/show_bug.cgi?id=64412
+
+ Reviewed by Darin Adler and Sam Weinig.
+
+ Improve the mechanism that dispatches didFirstVisuallyNonEmptyLayout
+
+ - Wait until a threshold of characters and pixels has been exceeded before dispatching.
+ - Wait until stylesheets are loaded (painting is disabled in this case).
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::reset):
+ (WebCore::FrameView::performPostLayoutTasks):
+ * page/FrameView.h:
+ (WebCore::FrameView::incrementVisuallyNonEmptyCharacterCount):
+ (WebCore::FrameView::incrementVisuallyNonEmptyPixelCount):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::RenderImage):
+ (WebCore::RenderImage::imageChanged):
+ * rendering/RenderImage.h:
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::RenderText):
+
+2011-07-12 MORITA Hajime <morrita@google.com>
+
+ [Refactoring][ShadowContentElement] Forwarded node list should be a linked-list.
+ https://bugs.webkit.org/show_bug.cgi?id=64252
+
+ Reviewed by Dimitri Glazkov.
+
+ Introduced ShadowInclusionList and ShadowInclusion for maintaining
+ forwarded content children. ShadowInclusion is doubly-linked list.
+ ShadowContentElement::m_inclusions is replaced by ShadowInclusionList.
+
+ This change is a prepration for bug 64251, which will introduce
+ forwarded-children to content-element table.
+
+ No new tests. No behavioral change.
+
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::nextRendererOf):
+ (WebCore::previousRendererOf):
+ (WebCore::firstRendererOf):
+ (WebCore::lastRendererOf):
+ * dom/ShadowContentElement.cpp:
+ (WebCore::ShadowInclusion::append):
+ (WebCore::ShadowInclusion::unlink):
+ (WebCore::ShadowInclusionList::ShadowInclusionList):
+ (WebCore::ShadowInclusionList::~ShadowInclusionList):
+ (WebCore::ShadowInclusionList::find):
+ (WebCore::ShadowInclusionList::clear):
+ (WebCore::ShadowInclusionList::append):
+ (WebCore::ShadowContentElement::attach):
+ * dom/ShadowContentElement.h:
+ (WebCore::ShadowInclusion::includer):
+ (WebCore::ShadowInclusion::content):
+ (WebCore::ShadowInclusion::next):
+ (WebCore::ShadowInclusion::previous):
+ (WebCore::ShadowInclusion::ShadowInclusion):
+ (WebCore::ShadowInclusion::create):
+ (WebCore::ShadowInclusionList::first):
+ (WebCore::ShadowInclusionList::last):
+ (WebCore::ShadowInclusionList::isEmpty):
+ (WebCore::ShadowInclusionList::append):
+ (WebCore::ShadowContentElement::inclusions):
+ * dom/ShadowContentSelector.cpp:
+ (WebCore::ShadowContentSelector::selectInclusion):
+ * dom/ShadowContentSelector.h:
+
+2011-07-12 David Reveman <reveman@chromium.org>
+
+ [Chromium] Use nearest filter method with pixel aligned transforms.
+ https://bugs.webkit.org/show_bug.cgi?id=64338
+
+ Reviewed by James Robinson.
+
+ Check for integer translation and use nearest texture filter when
+ possible to avoid filter precisions problems at the layer edges.
+
+ Test: compositing/iframes/nested-iframe-scrolling.html (existing)
+
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::drawTiles):
+ * platform/graphics/transforms/TransformationMatrix.cpp:
+ (WebCore::TransformationMatrix::isIntegerTranslation):
+ * platform/graphics/transforms/TransformationMatrix.h:
+
+2011-07-12 David Reveman <reveman@chromium.org>
+
+ Removed unnecessary function parameters from TilingData::textureOffset.
+ https://bugs.webkit.org/show_bug.cgi?id=64245
+
+ Reviewed by Brent Fulgham.
+
+ No new tests, no functionality changes.
+
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::drawTiles):
+ * platform/graphics/gpu/TilingData.cpp:
+ (WebCore::TilingData::textureOffset):
+ * platform/graphics/gpu/TilingData.h:
+
+2011-07-12 Ryosuke Niwa <rniwa@webkit.org>
+
+ Move RenderTextControl::indexForVisiblePosition to HTMLTextFormControlElement
+ https://bugs.webkit.org/show_bug.cgi?id=64403
+
+ Reviewed by Hajime Morita.
+
+ Moved indexForVisiblePosition from RenderTextControl to HTMLTextFormControlElement.
+
+ Also replaced the call to RenderTextControl::isSelectableElement by a call to enclosingTextFormControl
+ (moved from htmlediting to HTMLTextFormControlElement) because we are only interested in checking
+ whether the given position is inside the current text form control or not.
+
+ In addition, modernized the code in indexForVisiblePosition by calling parentAnchoredEquivalent on the
+ given position and replacing calls to deprecateNode and deprecatedEditingOffset by calls to containerNode
+ and offsetInContainer.
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::indexForVisiblePosition): Calls indexForVisiblePosition.
+ * editing/htmlediting.cpp: Removed enclosingTextFromControl.
+ * editing/htmlediting.h: Removed enclosingTextFromControl.
+ * html/HTMLTextFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::indexForVisiblePosition): Moved from RenderTextControl.
+ (WebCore::HTMLTextFormControlElement::computeSelectionStart): Calls indexForVisiblePosition.
+ (WebCore::HTMLTextFormControlElement::computeSelectionEnd): Calls indexForVisiblePosition.
+ (WebCore::enclosingTextFormControl): Moved from htmlediting.cpp
+ * html/HTMLTextFormControlElement.h:
+ * rendering/RenderTextControl.cpp:
+ * rendering/RenderTextControl.h:
+
+2011-07-12 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Make RenderObject::containingBlock virtual for better speed and clarity
+ https://bugs.webkit.org/show_bug.cgi?id=64318
+
+ Reviewed by Darin Adler.
+
+ No new tests, performance refactoring.
+
+ On some of my test cases, this method takes between 3 and 5% of the time spend.
+ The method makes 2 calls to virtual methods which could be moved to their overriden
+ version of containingBlock if we made it virtual.
+
+ That's what this patch does. It saves between 1 and 2% on some synthetic test cases
+ as well as made the current method shorter.
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::containingBlock): Removed code for RenderView and RenderTableCell,
+ replaced by ASSERTs.
+
+ * rendering/RenderObject.h: Made containingBlock virtual.
+
+ * rendering/RenderTableCell.h:
+ (WebCore::RenderTableCell::containingBlock):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::containingBlock):
+ The code moved from RenderObject is inlined in those 2 methods.
+
+2011-07-12 James Robinson <jamesr@chromium.org>
+
+ [chromium] Chromium win build fix.
+
+ * platform/graphics/chromium/FontChromiumWin.cpp:
+ (WebCore::drawGlyphsWin):
+
+2011-07-12 Pratik Solanki <psolanki@apple.com>
+
+ Get webkit to compile with USE(CFNETWORK) enabled on Mac
+ https://bugs.webkit.org/show_bug.cgi?id=63674
+
+ Reviewed by David Kilzer.
+
+ Changes to ResourceHandle class to get it to compile with USE(CFNETWORK).
+
+ No new tests because no change in functionality and option is not enabled on Mac.
+
+ * platform/network/ResourceHandle.h:
+ * platform/network/ResourceHandleInternal.h:
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::didReceiveResponse):
+ (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
+ (WebCore::ResourceHandle::start):
+ (WebCore::WebCoreSynchronousLoaderClient::willSendRequest): Call adjustMIMETypeIfNecessary
+ on Mac. Also port over fix for <rdar://problem/6901522> added in r43993 which forces the
+ MIME type to text/html if the request is annotated with a "ForceHTMLMIMEType" property.
+
+2011-07-12 James Robinson <jamesr@chromium.org>
+
+ [chromium] Delete the unused legacy accelerated canvas 2d code
+ https://bugs.webkit.org/show_bug.cgi?id=64214
+
+ Reviewed by Stephen White.
+
+ This removes the legacy accelerated canvas 2d path and support logic since we (chromium) are no longer using
+ this codepath and it seems clear that no other port is interested.
+
+ Refactoring and removing unused code, so no new tests.
+
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
+ (WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation):
+ (WebCore::CanvasRenderingContext2D::didDraw):
+ * html/canvas/CanvasRenderingContext2D.h:
+ * loader/EmptyClients.h:
+ * page/ChromeClient.h:
+ * page/Page.cpp:
+ (WebCore::Page::sharedGraphicsContext3D):
+ * page/Page.h:
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::setSharedGraphicsContext3D):
+ (WebCore::GraphicsContext::syncSoftwareCanvas):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/chromium/DrawingBufferChromium.cpp:
+ (WebCore::DrawingBuffer::setGrContext):
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/chromium/cc/CCLayerSorter.cpp:
+ (WebCore::pointInTriangle):
+ * platform/graphics/gpu/BicubicShader.cpp: Removed.
+ * platform/graphics/gpu/BicubicShader.h: Removed.
+ * platform/graphics/gpu/ConvolutionShader.cpp: Removed.
+ * platform/graphics/gpu/ConvolutionShader.h: Removed.
+ * platform/graphics/gpu/GraphicsContextGPU.cpp: Removed.
+ * platform/graphics/gpu/GraphicsContextGPU.h: Removed.
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp: Removed.
+ * platform/graphics/gpu/SharedGraphicsContext3D.h: Removed.
+ * platform/graphics/gpu/SolidFillShader.cpp: Removed.
+ * platform/graphics/gpu/SolidFillShader.h: Removed.
+ * platform/graphics/gpu/TexShader.cpp: Removed.
+ * platform/graphics/gpu/TexShader.h: Removed.
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::savePlatformState):
+ (WebCore::GraphicsContext::restorePlatformState):
+ (WebCore::GraphicsContext::addInnerRoundedRectClip):
+ (WebCore::GraphicsContext::clearRect):
+ (WebCore::GraphicsContext::clip):
+ (WebCore::GraphicsContext::canvasClip):
+ (WebCore::GraphicsContext::clipOut):
+ (WebCore::GraphicsContext::clipPath):
+ (WebCore::GraphicsContext::concatCTM):
+ (WebCore::GraphicsContext::setCTM):
+ (WebCore::GraphicsContext::drawConvexPolygon):
+ (WebCore::GraphicsContext::drawEllipse):
+ (WebCore::GraphicsContext::drawFocusRing):
+ (WebCore::GraphicsContext::drawLine):
+ (WebCore::GraphicsContext::drawLineForTextChecking):
+ (WebCore::GraphicsContext::drawLineForText):
+ (WebCore::GraphicsContext::drawRect):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::scale):
+ (WebCore::GraphicsContext::setAlpha):
+ (WebCore::GraphicsContext::setPlatformCompositeOperation):
+ (WebCore::GraphicsContext::setPlatformFillColor):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ (WebCore::GraphicsContext::strokeArc):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::strokeRect):
+ (WebCore::GraphicsContext::rotate):
+ (WebCore::GraphicsContext::translate):
+ (WebCore::GraphicsContext::setSharedGraphicsContext3D):
+ (WebCore::GraphicsContext::syncSoftwareCanvas):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::copyImage):
+ (WebCore::ImageBuffer::draw):
+ (WebCore::ImageBuffer::getUnmultipliedImageData):
+ (WebCore::ImageBuffer::getPremultipliedImageData):
+ (WebCore::ImageBuffer::putUnmultipliedImageData):
+ (WebCore::ImageBuffer::putPremultipliedImageData):
+ * platform/graphics/skia/ImageSkia.cpp:
+ (WebCore::BitmapImage::draw):
+ (WebCore::BitmapImageSingleFrameSkia::draw):
+ * platform/graphics/skia/NativeImageSkia.cpp:
+ (WebCore::NativeImageSkia::~NativeImageSkia):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::PlatformContextSkia):
+ (WebCore::PlatformContextSkia::~PlatformContextSkia):
+ (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
+ (WebCore::PlatformContextSkia::makeGrContextCurrent):
+ * platform/graphics/skia/PlatformContextSkia.h:
+
+2011-07-12 Emil A Eklund <eae@chromium.org>
+
+ Switch InlineFlowBox to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=64399
+
+ Reviewed by Eric Seidel.
+
+ First step in moving floats over to the new layout abstraction.
+
+ No new tests, no new functionality.
+
+ * rendering/InlineBox.cpp:
+ (WebCore::InlineBox::logicalHeight):
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::logicalTop):
+ (WebCore::InlineBox::logicalBottom):
+ (WebCore::InlineBox::setLogicalTop):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
+ (WebCore::InlineFlowBox::computeLogicalBoxHeights):
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
+ (WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
+ (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
+ (WebCore::InlineFlowBox::addReplacedChildOverflow):
+ (WebCore::InlineFlowBox::constrainToLineTopAndBottomIfNeeded):
+ (WebCore::InlineFlowBox::computeOverAnnotationAdjustment):
+ (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment):
+ * rendering/InlineFlowBox.h:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::logicalRightSelectionGap):
+ * rendering/RenderBlock.h:
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::alignBoxesInBlockDirection):
+ (WebCore::RootInlineBox::lineSelectionGap):
+ (WebCore::RootInlineBox::ascentAndDescentForBox):
+ (WebCore::RootInlineBox::verticalPositionForBox):
+ * rendering/RootInlineBox.h:
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::getShadowExtent):
+ (WebCore::RenderStyle::getShadowHorizontalExtent):
+ (WebCore::RenderStyle::getShadowVerticalExtent):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::getTextShadowExtent):
+ (WebCore::InheritedFlags::getTextShadowHorizontalExtent):
+ (WebCore::InheritedFlags::getTextShadowVerticalExtent):
+ (WebCore::InheritedFlags::getTextShadowInlineDirectionExtent):
+ (WebCore::InheritedFlags::getTextShadowBlockDirectionExtent):
+ (WebCore::InheritedFlags::getBoxShadowExtent):
+ (WebCore::InheritedFlags::getBoxShadowHorizontalExtent):
+ (WebCore::InheritedFlags::getBoxShadowVerticalExtent):
+ (WebCore::InheritedFlags::getBoxShadowInlineDirectionExtent):
+ (WebCore::InheritedFlags::getBoxShadowBlockDirectionExtent):
+ (WebCore::InheritedFlags::getShadowInlineDirectionExtent):
+ (WebCore::InheritedFlags::getShadowBlockDirectionExtent):
+ * rendering/style/ShadowData.cpp:
+ (WebCore::calculateShadowExtent):
+ (WebCore::ShadowData::adjustRectForShadow):
+ * rendering/style/ShadowData.h:
+ (WebCore::ShadowData::ShadowData):
+ (WebCore::ShadowData::x):
+ (WebCore::ShadowData::y):
+
+2011-07-12 Kenichi Ishibashi <bashi@chromium.org>
+
+ [Chromium] SVG text is not rendered sometimes with geometricPrecision
+ https://bugs.webkit.org/show_bug.cgi?id=64341
+
+ Changing the type of x and y offsets of ComplexTextControllerLinux to make it possible to treat negative offsets.
+
+ Reviewed by Tony Chang.
+
+ Test: platform/chromium-linux/svg/text/text-with-geometric-precision.svg
+
+ * platform/graphics/chromium/ComplexTextControllerLinux.cpp: Changed the type of m_offsetX and m_startingY from unsigned to int.
+ (WebCore::ComplexTextController::ComplexTextController): Changed the type of the argument.
+ (WebCore::ComplexTextController::reset): Ditto.
+ * platform/graphics/chromium/ComplexTextControllerLinux.h:
+
+2011-07-12 Alexandru Chiculita <achicu@adobe.com>
+
+ Reviewed by David Hyatt.
+
+ [CSS Exclusions] Parse wrap-shape property
+ https://bugs.webkit.org/show_bug.cgi?id=61726
+
+ Parsing wrap-shape: rect, circle, ellipse and polygon.
+ Moved WindRule from Path.h to it's own file.
+
+ Test: fast/exclusions/parsing-wrap-shape.html
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ (WebCore::CSSParser::parseWrapShapeRect):
+ (WebCore::CSSParser::parseWrapShapeCircle):
+ (WebCore::CSSParser::parseWrapShapeEllipse):
+ (WebCore::CSSParser::parseWrapShapePolygon):
+ (WebCore::CSSParser::parseWrapShape):
+ * css/CSSParser.h:
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::init):
+ (WebCore::CSSPrimitiveValue::cleanup):
+ (WebCore::CSSPrimitiveValue::cssText):
+ * css/CSSPrimitiveValue.h:
+ (WebCore::CSSPrimitiveValue::getShapeValue):
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * css/CSSValueKeywords.in:
+ * css/CSSWrapShapes.cpp: Added.
+ (WebCore::CSSWrapShapeRect::cssText):
+ (WebCore::CSSWrapShapeCircle::cssText):
+ (WebCore::CSSWrapShapeEllipse::cssText):
+ (WebCore::CSSWrapShapePolygon::cssText):
+ * css/CSSWrapShapes.h: Added.
+ (WebCore::CSSWrapShape::~CSSWrapShape):
+ (WebCore::CSSWrapShape::CSSWrapShape):
+ (WebCore::CSSWrapShapeRect::create):
+ (WebCore::CSSWrapShapeRect::left):
+ (WebCore::CSSWrapShapeRect::top):
+ (WebCore::CSSWrapShapeRect::width):
+ (WebCore::CSSWrapShapeRect::height):
+ (WebCore::CSSWrapShapeRect::radiusX):
+ (WebCore::CSSWrapShapeRect::radiusY):
+ (WebCore::CSSWrapShapeRect::setLeft):
+ (WebCore::CSSWrapShapeRect::setTop):
+ (WebCore::CSSWrapShapeRect::setWidth):
+ (WebCore::CSSWrapShapeRect::setHeight):
+ (WebCore::CSSWrapShapeRect::setRadiusX):
+ (WebCore::CSSWrapShapeRect::setRadiusY):
+ (WebCore::CSSWrapShapeRect::type):
+ (WebCore::CSSWrapShapeRect::CSSWrapShapeRect):
+ (WebCore::CSSWrapShapeCircle::create):
+ (WebCore::CSSWrapShapeCircle::left):
+ (WebCore::CSSWrapShapeCircle::top):
+ (WebCore::CSSWrapShapeCircle::radius):
+ (WebCore::CSSWrapShapeCircle::setLeft):
+ (WebCore::CSSWrapShapeCircle::setTop):
+ (WebCore::CSSWrapShapeCircle::setRadius):
+ (WebCore::CSSWrapShapeCircle::type):
+ (WebCore::CSSWrapShapeCircle::CSSWrapShapeCircle):
+ (WebCore::CSSWrapShapeEllipse::create):
+ (WebCore::CSSWrapShapeEllipse::left):
+ (WebCore::CSSWrapShapeEllipse::top):
+ (WebCore::CSSWrapShapeEllipse::radiusX):
+ (WebCore::CSSWrapShapeEllipse::radiusY):
+ (WebCore::CSSWrapShapeEllipse::setLeft):
+ (WebCore::CSSWrapShapeEllipse::setTop):
+ (WebCore::CSSWrapShapeEllipse::setRadiusX):
+ (WebCore::CSSWrapShapeEllipse::setRadiusY):
+ (WebCore::CSSWrapShapeEllipse::type):
+ (WebCore::CSSWrapShapeEllipse::CSSWrapShapeEllipse):
+ (WebCore::CSSWrapShapePolygon::create):
+ (WebCore::CSSWrapShapePolygon::appendPoint):
+ (WebCore::CSSWrapShapePolygon::getXAt):
+ (WebCore::CSSWrapShapePolygon::getYAt):
+ (WebCore::CSSWrapShapePolygon::setWindRule):
+ (WebCore::CSSWrapShapePolygon::windRule):
+ (WebCore::CSSWrapShapePolygon::type):
+ (WebCore::CSSWrapShapePolygon::CSSWrapShapePolygon):
+ * css/SVGCSSValueKeywords.in:
+ * platform/graphics/Path.h:
+ * platform/graphics/WindRule.h: Added.
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::setWrapShape):
+ (WebCore::InheritedFlags::wrapShape):
+ (WebCore::InheritedFlags::initialWrapShape):
+ * rendering/style/StyleRareNonInheritedData.cpp:
+ (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
+ (WebCore::StyleRareNonInheritedData::operator==):
+ * rendering/style/StyleRareNonInheritedData.h:
+
+2011-07-12 Simon Fraser <simon.fraser@apple.com>
+
+ Clean up some RenderLayerCompositor code relating to scroll and root layers
+ https://bugs.webkit.org/show_bug.cgi?id=64400
+
+ Reviewed by James Robinson.
+
+ There was no need for FrameView::syncCompositingStateForThisFrame()
+ to call syncCompositingStateForThisLayerOnly() on the various
+ scrollbar-related layers, because the subsequent call to
+ compositor()->flushPendingLayerChanges() starts to flush at
+ m_overflowControlsHostLayer if one exists, and it's an ancestor
+ of the scrollbar layers.
+
+ Also clean up terminology in RenderLayerCompositor.
+ m_rootPlatformLayer -> m_rootContentLayer
+ rootPlatformLayer() -> rootGraphicsLayer()
+
+ No behavior change, so no new tests.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::syncCompositingStateForThisFrame):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::enableCompositingMode):
+ (WebCore::RenderLayerCompositor::flushPendingLayerChanges):
+ (WebCore::RenderLayerCompositor::updateCompositingLayers):
+ (WebCore::RenderLayerCompositor::layerTreeAsText):
+ (WebCore::RenderLayerCompositor::parentFrameContentLayers):
+ (WebCore::RenderLayerCompositor::rootGraphicsLayer):
+ (WebCore::RenderLayerCompositor::didMoveOnscreen):
+ (WebCore::RenderLayerCompositor::willMoveOffscreen):
+ (WebCore::RenderLayerCompositor::updateRootLayerPosition):
+ (WebCore::RenderLayerCompositor::ensureRootLayer):
+ (WebCore::RenderLayerCompositor::destroyRootLayer):
+ (WebCore::RenderLayerCompositor::attachRootLayer):
+ (WebCore::RenderLayerCompositor::detachRootLayer):
+ (WebCore::RenderLayerCompositor::updateRootLayerAttachment):
+ * rendering/RenderLayerCompositor.h:
+
+2011-07-12 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r90842.
+ http://trac.webkit.org/changeset/90842
+ https://bugs.webkit.org/show_bug.cgi?id=64401
+
+ Causes crash in debug on compositing/overflow/content-gains-
+ scrollbars.html (Requested by jamesr on #webkit).
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::ContentLayerChromium):
+ (WebCore::ContentLayerChromium::paintContentsIfDirty):
+ (WebCore::ContentLayerChromium::cleanupResources):
+ (WebCore::ContentLayerChromium::setLayerRenderer):
+ (WebCore::ContentLayerChromium::tilingTransform):
+ (WebCore::ContentLayerChromium::contentBounds):
+ (WebCore::ContentLayerChromium::updateLayerSize):
+ (WebCore::ContentLayerChromium::draw):
+ (WebCore::ContentLayerChromium::drawsContent):
+ (WebCore::ContentLayerChromium::createTilerIfNeeded):
+ (WebCore::ContentLayerChromium::updateCompositorResources):
+ (WebCore::ContentLayerChromium::setTilingOption):
+ (WebCore::ContentLayerChromium::bindContentsTexture):
+ (WebCore::ContentLayerChromium::setIsMask):
+ (WebCore::writeIndent):
+ (WebCore::ContentLayerChromium::dumpLayerProperties):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::ImageLayerChromium):
+ (WebCore::ImageLayerChromium::paintContentsIfDirty):
+ (WebCore::ImageLayerChromium::updateCompositorResources):
+ (WebCore::ImageLayerChromium::contentBounds):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ (WebCore::ImageLayerChromium::drawsContent):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::pushPropertiesTo):
+ (WebCore::LayerChromium::ccLayerImpl):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::draw):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawRootLayer):
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::updateRect):
+ (WebCore::LayerTilerChromium::draw):
+ (WebCore::LayerTilerChromium::drawTiles):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ * platform/graphics/chromium/TiledLayerChromium.cpp: Removed.
+ * platform/graphics/chromium/TiledLayerChromium.h: Removed.
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::drawsContent):
+ (WebCore::CCLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp: Removed.
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.h: Removed.
+
+2011-07-12 Joseph Pecoraro <joepeck@webkit.org>
+
+ ApplicationCache update should not immediately fail when reaching per-origin quota
+ https://bugs.webkit.org/show_bug.cgi?id=64177
+
+ Reviewed by Alexey Proskuryakov.
+
+ New behavior of handling ApplicationCache per-origin quotas. Previously,
+ if the quota was reached while downloading we would fail the download
+ and then prompt the user for a storage increase. This required a refresh,
+ a redownload of resources, and the total storage was not known so the
+ process could be repeated multiple times before an acceptable quota
+ was found or the user disallowed an increase.
+
+ The new behavior is to complete the download of the entire appcache.
+ When the cache completes downloading and it is greater than the origin
+ quota, prompt the user to allow a quota increase with the known space
+ needed. If the quota is increased, the cache will succeed, otherwise
+ it will fail with the normal failure steps.
+
+ An alternative behavior is prompting while downloading immediately
+ when the origin quota is reached, however at that point the entire
+ space needed is unknown and so quota increases might not be enough
+ and could result in multiple prompts to the user.
+
+ Tests: http/tests/appcache/origin-quota-continued-download-multiple-manifests.html
+ http/tests/appcache/origin-quota-continued-download.html
+
+ * loader/appcache/ApplicationCacheGroup.h:
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
+ Rename instance variable to be more clear on its intent.
+
+ (WebCore::ApplicationCacheGroup::didFinishLoading):
+ Check the quota limit while downloading so we can fail early
+ if the user already denied a quota increase.
+
+ (WebCore::ApplicationCacheGroup::didReachOriginQuota):
+ Pass the space needed information to the chrome client.
+
+ (WebCore::ApplicationCacheGroup::cacheUpdateFailedDueToOriginQuota):
+ Removed. Instead convert the callers to update state and console
+ log when the per-origin quota is reached. This allows us to follow
+ the normal failure steps if the quota is reached at the end of a
+ download, and the alternative short path when we fail during downloading.
+
+ (WebCore::ApplicationCacheGroup::recalculateAvailableSpaceInQuota):
+ Extract to a helper function.
+
+ (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
+ Allow for a quota increase at the end of the download now that
+ we know the space needed. Then proceed to fail or succeed
+ as we normally would.
+
+ * loader/appcache/ApplicationCacheStorage.h:
+ * loader/appcache/ApplicationCacheStorage.cpp:
+ (WebCore::ApplicationCacheStorage::checkOriginQuota):
+ (WebCore::ApplicationCacheStorage::storeNewestCache):
+ Extract checking the origin quota for when an ApplicationCacheGroup
+ will be replacing an ApplicationCacheGroup into a helper function.
+ The helper also provides an out parameter for the space needed
+ to properly fit the new cache group if it wouldn't fit.
+
+ * page/ChromeClient.h:
+ * loader/EmptyClients.h:
+ (WebCore::EmptyChromeClient::reachedApplicationCacheOriginQuota):
+ Add a space needed parameter when reaching the per-origin quota.
+
+2011-07-12 Chris Rogers <crogers@google.com>
+
+ AudioDevice::Stop can close NULL handle.
+ https://bugs.webkit.org/show_bug.cgi?id=64157
+
+ Reviewed by Kenneth Russell.
+
+ No new tests since audio API is not yet implemented.
+
+ * bindings/js/JSAudioContextCustom.cpp:
+ (WebCore::JSAudioContextConstructor::constructJSAudioContext):
+ * bindings/v8/custom/V8AudioContextCustom.cpp:
+ (WebCore::V8AudioContext::constructorCallback):
+ * webaudio/AudioContext.cpp:
+ (WebCore::AudioContext::create):
+ (WebCore::AudioContext::uninitialize):
+ * webaudio/AudioContext.h:
+
+2011-07-12 John Bates <jbates@google.com>
+
+ Move call to syncCompositingLayers so that we do not trigger redundant draws.
+ https://bugs.webkit.org/show_bug.cgi?id=64224
+
+ doComposite was triggering two composites every time a canvas was dirtied.
+ By moving syncCompositingLayers call to layout, the client code can draw without triggering
+ a redundant frame. Also renamed WebViewImpl::updateLayers to
+ syncCompositingLayers, because it was confusing. CCLayerTreeHostImplProxy::updateLayers was
+ no longer needed, because animateAndLayout calls WebViewImpl::layout.
+
+ Reviewed by James Robinson.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::updateLayers):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::syncCompositingLayers):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp:
+ (WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommit):
+
+2011-07-12 Ryosuke Niwa <rniwa@webkit.org>
+
+ Isolate HTMLTextFormControlElement into a separate file
+ https://bugs.webkit.org/show_bug.cgi?id=64381
+
+ Reviewed by Dimitri Glazkov.
+
+ Extracted HTMLTextFormControlElement.h and HTMLTextFormControlElement.cpp out of
+ HTMLFormControlElement.h and HTMLFormControlElement.cpp.
+
+ Also moved defaultEventHandler from HTMLFormControlElementWithState to HTMLTextFormControlElement
+ because it was specific to HTMLTextFormControlElement, and replaced all references to
+ HTMLFormControlElementWithState in HTMLInputElement and HTMLTextAreaElement by ones to
+ HTMLTextFormControlElement.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * editing/TextIterator.cpp:
+ * editing/htmlediting.cpp:
+ * html/HTMLElementsAllInOne.cpp:
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::isFocusable):
+ * html/HTMLFormControlElement.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::isKeyboardFocusable):
+ (WebCore::HTMLInputElement::isMouseFocusable):
+ (WebCore::HTMLInputElement::updateFocusAppearance):
+ (WebCore::HTMLInputElement::canStartSelection):
+ (WebCore::HTMLInputElement::parseMappedAttribute):
+ (WebCore::HTMLInputElement::finishParsingChildren):
+ (WebCore::HTMLInputElement::rendererIsNeeded):
+ (WebCore::HTMLInputElement::attach):
+ (WebCore::HTMLInputElement::detach):
+ (WebCore::HTMLInputElement::copyNonAttributeProperties):
+ (WebCore::HTMLInputElement::defaultEventHandler):
+ (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
+ (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
+ (WebCore::HTMLInputElement::addSubresourceAttributeURLs):
+ (WebCore::HTMLInputElement::recalcWillValidate):
+ * html/HTMLInputElement.h:
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::defaultEventHandler):
+ * html/HTMLTextAreaElement.h:
+ * html/HTMLTextFormControlElement.cpp: Copied from Source/WebCore/html/HTMLFormControlElement.cpp.
+ (WebCore::HTMLTextFormControlElement::defaultEventHandler):
+ * html/HTMLTextFormControlElement.h: Copied from Source/WebCore/html/HTMLFormControlElement.h.
+
+2011-07-12 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r90831.
+ http://trac.webkit.org/changeset/90831
+ https://bugs.webkit.org/show_bug.cgi?id=64389
+
+ Likely caused fast/canvas/DrawImageSinglePixelStretch.html to
+ start timing out on the chromium GPU bots (Requested by ojan
+ on #webkit).
+
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::getImageData):
+ (WebCore::putImageData):
+
+2011-07-12 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Move draw implementation for ContentLayerChromium/ImageLayerChromium to the appropriate CCLayerImpl subclass
+ https://bugs.webkit.org/show_bug.cgi?id=58833
+
+ Adds a TiledLayerChromium class to handle the tiling logic shared by ContentLayerChromium and ImageLayerChromium
+ so that they can be siblings in the class hierarchy instead of children. Also adds a CCTiledLayerImpl to handle
+ the drawing responsibilities for tiled layers.
+
+ TiledLayerChromium maintains a tiler, tiling options, and calculates the tiling transform. Subclasses are
+ responsible for providing an appropriate texture updater implementation. CCTiledLayerImpl takes the tiler,
+ tiling transform and layer properties and draws the layer. Longer term it'd be better of the CCTiledLayerImpl
+ owned the tiler and the TiledLayerChromium only owned an updater, but getting there will require changing the
+ way tile eviction works.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::ContentLayerChromium):
+ (WebCore::ContentLayerChromium::paintContentsIfDirty):
+ (WebCore::ContentLayerChromium::drawsContent):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ (WebCore::ContentLayerChromium::textureUpdater):
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::ImageLayerChromium):
+ (WebCore::ImageLayerChromium::cleanupResources):
+ (WebCore::ImageLayerChromium::paintContentsIfDirty):
+ (WebCore::ImageLayerChromium::textureUpdater):
+ (WebCore::ImageLayerChromium::contentBounds):
+ (WebCore::ImageLayerChromium::drawsContent):
+ (WebCore::ImageLayerChromium::createTextureUpdaterIfNeeded):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::pushPropertiesTo):
+ (WebCore::LayerChromium::ccLayerImpl):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::contentBounds):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawRootLayer):
+ (WebCore::visibleLayerRect):
+ (WebCore::paintLayerContentsIfDirty):
+ (WebCore::LayerRendererChromium::paintLayerContents):
+ (WebCore::LayerRendererChromium::drawLayer):
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::updateRect):
+ (WebCore::LayerTilerChromium::draw):
+ (WebCore::LayerTilerChromium::drawTiles):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ * platform/graphics/chromium/TiledLayerChromium.cpp: Added.
+ (WebCore::TiledLayerChromium::TiledLayerChromium):
+ (WebCore::TiledLayerChromium::~TiledLayerChromium):
+ (WebCore::TiledLayerChromium::createCCLayerImpl):
+ (WebCore::TiledLayerChromium::cleanupResources):
+ (WebCore::TiledLayerChromium::setLayerRenderer):
+ (WebCore::TiledLayerChromium::updateTileSizeAndTilingOption):
+ (WebCore::TiledLayerChromium::drawsContent):
+ (WebCore::TiledLayerChromium::createTilerIfNeeded):
+ (WebCore::TiledLayerChromium::updateCompositorResources):
+ (WebCore::TiledLayerChromium::setTilingOption):
+ (WebCore::TiledLayerChromium::setIsMask):
+ (WebCore::TiledLayerChromium::tilingTransform):
+ (WebCore::TiledLayerChromium::pushPropertiesTo):
+ (WebCore::writeIndent):
+ (WebCore::TiledLayerChromium::dumpLayerProperties):
+ * platform/graphics/chromium/TiledLayerChromium.h: Copied from Source/WebCore/platform/graphics/chromium/ContentLayerChromium.h.
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (WebCore::CCLayerImpl::setDrawsContent):
+ (WebCore::CCLayerImpl::drawsContent):
+ (WebCore::CCLayerImpl::contentBounds):
+ (WebCore::CCLayerImpl::setContentBounds):
+ (WebCore::CCLayerImpl::doubleSided):
+ (WebCore::CCLayerImpl::setDoubleSided):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp: Added.
+ (WebCore::CCTiledLayerImpl::CCTiledLayerImpl):
+ (WebCore::CCTiledLayerImpl::~CCTiledLayerImpl):
+ (WebCore::CCTiledLayerImpl::draw):
+ (WebCore::CCTiledLayerImpl::bindContentsTexture):
+ (WebCore::CCTiledLayerImpl::dumpLayerProperties):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.h: Added.
+ (WebCore::CCTiledLayerImpl::create):
+ (WebCore::CCTiledLayerImpl::setTilingTransform):
+ (WebCore::CCTiledLayerImpl::setTiler):
+
+2011-07-12 Arno Renevier <arno@renevier.net>
+
+ [GTK] DOM bindings do not have gir annotations
+ https://bugs.webkit.org/show_bug.cgi?id=45395
+
+ Reviewed by Xan Lopez.
+
+ * bindings/scripts/CodeGeneratorGObject.pm: generate introspection annotations.
+ * bindings/scripts/test/GObject/WebKitDOMTestCallback.h: update for new output.
+ * bindings/scripts/test/GObject/WebKitDOMTestObj.h: ditto.
+ * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h: ditto.
+
+2011-07-12 Chris Rogers <crogers@google.com>
+
+ webkitAudioContext does not do proper sanity checking on its arguments.
+ https://bugs.webkit.org/show_bug.cgi?id=64076
+
+ Reviewed by Kenneth Russell.
+
+ No new tests since audio API is not yet implemented.
+
+ * bindings/js/JSAudioContextCustom.cpp:
+ (WebCore::JSAudioContextConstructor::constructJSAudioContext):
+ (WebCore::JSAudioContext::createBuffer):
+ * bindings/v8/custom/V8AudioContextCustom.cpp:
+ (WebCore::V8AudioContext::constructorCallback):
+ (WebCore::V8AudioContext::createBufferCallback):
+ * platform/audio/HRTFDatabaseLoader.h:
+ (WebCore::HRTFDatabaseLoader::databaseSampleRate):
+ * webaudio/AudioContext.cpp:
+ (WebCore::AudioContext::create):
+ (WebCore::AudioContext::createOfflineContext):
+ (WebCore::AudioContext::createBuffer):
+ * webaudio/AudioContext.h:
+
+2011-07-12 Pratik Solanki <psolanki@apple.com>
+
+ Implement didReceiveDataArray callback for CFNetwork based loader
+ https://bugs.webkit.org/show_bug.cgi?id=64130
+
+ Reviewed by David Kilzer.
+
+ Factor out the didReceiveDataArray code from ResourceHandleMac.mm into
+ a new method ResourceHandle::handleDataArray(). Implement the callback
+ in the CFNetwork loader code and call handleDataArray() to process
+ incoming data.
+
+ No new tests because the flag is not enabled for any bots.
+
+ * platform/network/ResourceHandle.h:
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::didReceiveDataArray):
+ (WebCore::ResourceHandle::createCFURLConnection):
+ (WebCore::ResourceHandle::handleDataArray):
+ * platform/network/mac/ResourceHandleMac.mm:
+ (-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]):
+
+2011-07-12 Emil A Eklund <eae@chromium.org>
+
+ Switch preferred width/height and columns to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=64329
+
+ Reviewed by Eric Seidel.
+
+ No new tests, no new functionality.
+
+ * rendering/LayoutTypes.h:
+ (WebCore::ceiledLayoutUnit):
+ Add ceiledLayoutUnit to go with the floored version.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::adjustRectForColumns):
+ (WebCore::RenderBlock::flipForWritingModeIncludingColumns):
+ (WebCore::RenderBlock::adjustStartEdgeForWritingModeIncludingColumns):
+ Rename rect version of flipForWritingModeIncludingColumns to
+ adjustStartEdgeForWritingModeIncludingColumns as it adjust the start edge
+ and does not flip the rect.
+
+ (WebCore::RenderBlock::adjustForColumns):
+ (WebCore::updatePreferredWidth):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::minPreferredLogicalWidth):
+ (WebCore::RenderBox::maxPreferredLogicalWidth):
+ (WebCore::RenderBox::offsetFromContainer):
+ (WebCore::RenderBox::computePercentageLogicalHeight):
+ (WebCore::RenderBox::flipForWritingMode):
+ (WebCore::RenderBox::flipForWritingModeIncludingColumns):
+ * rendering/RenderBox.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::itemBoundingBoxRect):
+ * rendering/RenderListBox.h:
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::minPreferredLogicalWidth):
+ (WebCore::RenderObject::maxPreferredLogicalWidth):
+ (WebCore::RenderObject::adjustForColumns):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::computeReplacedLogicalWidth):
+ (WebCore::RenderReplaced::computeReplacedLogicalHeight):
+ * rendering/TableLayout.h:
+
+2011-07-12 Levi Weintraub <leviw@chromium.org>
+
+ Change roundedIntRect to roundedRect
+ https://bugs.webkit.org/show_bug.cgi?id=64326
+
+ Reviewed by Eric Seidel.
+
+ Renaming RoundedIntRect to RoundedRect and moving the underlying type to Layout units from
+ integer-based versions.
+
+ No new tests, no new functionality
+
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::addRoundedRectClip):
+ (WebCore::GraphicsContext::clipOutRoundedRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::fillRectWithRoundedHole):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/Path.cpp:
+ (WebCore::Path::addRoundedRect):
+ * platform/graphics/Path.h:
+ * platform/graphics/RoundedIntRect.cpp: Removed.
+ * platform/graphics/RoundedIntRect.h: Removed.
+ * platform/graphics/RoundedRect.cpp: Copied from Source/WebCore/platform/graphics/RoundedIntRect.cpp.
+ (WebCore::RoundedRect::Radii::isZero):
+ (WebCore::RoundedRect::Radii::scale):
+ (WebCore::RoundedRect::Radii::expand):
+ (WebCore::RoundedRect::inflateWithRadii):
+ (WebCore::RoundedRect::Radii::includeLogicalEdges):
+ (WebCore::RoundedRect::Radii::excludeLogicalEdges):
+ (WebCore::RoundedRect::RoundedRect):
+ (WebCore::RoundedRect::includeLogicalEdges):
+ (WebCore::RoundedRect::excludeLogicalEdges):
+ (WebCore::RoundedRect::isRenderable):
+ * platform/graphics/RoundedRect.h: Copied from Source/WebCore/platform/graphics/RoundedIntRect.h.
+ (WebCore::RoundedRect::Radii::Radii):
+ (WebCore::RoundedRect::Radii::setTopLeft):
+ (WebCore::RoundedRect::Radii::setTopRight):
+ (WebCore::RoundedRect::Radii::setBottomLeft):
+ (WebCore::RoundedRect::Radii::setBottomRight):
+ (WebCore::RoundedRect::Radii::topLeft):
+ (WebCore::RoundedRect::Radii::topRight):
+ (WebCore::RoundedRect::Radii::bottomLeft):
+ (WebCore::RoundedRect::Radii::bottomRight):
+ (WebCore::RoundedRect::Radii::expand):
+ (WebCore::RoundedRect::Radii::shrink):
+ (WebCore::RoundedRect::rect):
+ (WebCore::RoundedRect::setRect):
+ (WebCore::RoundedRect::move):
+ (WebCore::RoundedRect::inflate):
+ (WebCore::RoundedRect::expandRadii):
+ (WebCore::RoundedRect::shrinkRadii):
+ (WebCore::operator==):
+ * platform/graphics/ShadowBlur.cpp:
+ (WebCore::ScratchBuffer::setLastShadowValues):
+ (WebCore::ScratchBuffer::setLastInsetShadowValues):
+ (WebCore::ScratchBuffer::matchesLastShadow):
+ (WebCore::ScratchBuffer::matchesLastInsetShadow):
+ (WebCore::computeSliceSizesFromRadii):
+ (WebCore::ShadowBlur::templateSize):
+ (WebCore::ShadowBlur::drawRectShadow):
+ (WebCore::ShadowBlur::drawInsetShadow):
+ (WebCore::ShadowBlur::drawRectShadowWithoutTiling):
+ (WebCore::ShadowBlur::drawInsetShadowWithoutTiling):
+ (WebCore::ShadowBlur::drawInsetShadowWithTiling):
+ (WebCore::ShadowBlur::drawRectShadowWithTiling):
+ (WebCore::ShadowBlur::drawLayerPieces):
+ * platform/graphics/ShadowBlur.h:
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::fillRectWithRoundedHole):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintBoxDecorations):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::getBackgroundRoundedRect):
+ (WebCore::RenderBoxModelObject::paintFillLayerExtended):
+ (WebCore::RenderBoxModelObject::paintOneBorderSide):
+ (WebCore::RenderBoxModelObject::paintBorderSides):
+ (WebCore::RenderBoxModelObject::paintTranslucentBorderSides):
+ (WebCore::RenderBoxModelObject::paintBorder):
+ (WebCore::RenderBoxModelObject::drawBoxSideFromPath):
+ (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
+ (WebCore::RenderBoxModelObject::paintBoxShadow):
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::paintMenuListButtonGradients):
+ (WebCore::RenderThemeMac::paintSliderTrack):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::calcRadiiFor):
+ (WebCore::calcConstraintScaleFor):
+ (WebCore::RenderStyle::getRoundedBorderFor):
+ (WebCore::RenderStyle::getRoundedInnerBorderFor):
+ * rendering/style/RenderStyle.h:
+
+2011-07-12 Mike Reed <reed@google.com>
+
+ [skia] optimize getImageData to avoid a copy when not needed. lockPixels() now does the right thing.
+ https://bugs.webkit.org/show_bug.cgi?id=64302
+
+ Reviewed by Stephen White.
+
+ No new tests. Just an optimization for getImageData(), existing <canvas> tests apply
+
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::getImageData):
+ (WebCore::putImageData):
+
+2011-07-12 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: introduce UserMetrics for collecting stats in Chromium port.
+ https://bugs.webkit.org/show_bug.cgi?id=64350
+
+ Reviewed by Yury Semikhatsky.
+
+ Test: inspector/user-metrics.html
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * bindings/js/JSInspectorFrontendHostCustom.cpp:
+ (WebCore::JSInspectorFrontendHost::recordActionTaken):
+ (WebCore::JSInspectorFrontendHost::recordPanelShown):
+ (WebCore::JSInspectorFrontendHost::recordSettingChanged):
+ * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
+ (WebCore::histogramEnumeration):
+ (WebCore::V8InspectorFrontendHost::recordActionTakenCallback):
+ (WebCore::V8InspectorFrontendHost::recordPanelShownCallback):
+ (WebCore::V8InspectorFrontendHost::recordSettingChangedCallback):
+ * inspector/InspectorFrontendHost.idl:
+ * inspector/front-end/AuditsPanel.js:
+ (WebInspector.AuditsPanel.prototype.initiateAudit):
+ * inspector/front-end/ConsoleView.js:
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel.prototype.setBreakpoint):
+ (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
+ * inspector/front-end/InspectorFrontendHostStub.js:
+ (.WebInspector.InspectorFrontendHostStub.prototype.loadSessionSetting):
+ (.WebInspector.InspectorFrontendHostStub.prototype.recordActionTaken):
+ (.WebInspector.InspectorFrontendHostStub.prototype.recordPanelShown):
+ (.WebInspector.InspectorFrontendHostStub.prototype.recordSettingChanged):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel.prototype._setRecordingProfile):
+ (WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
+ * inspector/front-end/UserMetrics.js: Added.
+ (WebInspector.UserMetrics.settingChanged):
+ (WebInspector.UserMetrics):
+ (WebInspector.UserMetrics.prototype.panelShown):
+ (WebInspector.UserMetrics._Recorder):
+ (WebInspector.UserMetrics._Recorder.prototype.record):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/inspector.js:
+ (WebInspector._toggleAttach):
+
+2011-07-12 Pratik Solanki <psolanki@apple.com>
+
+ Reviewed by David Kilzer.
+
+ Add NSURLResponse wrapper in ResourceResponse when USE(CFNETWORK) is enabled
+ https://bugs.webkit.org/show_bug.cgi?id=63286
+
+ When USE(CFNETWORK) is enabled on Mac, keep an NSURLResponse object along with the
+ CFURLResponseRef so that WebKit can continue using the NSURLResponse.
+
+ No new tests because no change in functionality and option is not enabled on Mac.
+
+ * platform/network/cf/ResourceResponse.h:
+ (WebCore::ResourceResponse::ResourceResponse):
+ * platform/network/mac/ResourceResponseMac.mm:
+ (WebCore::ResourceResponse::initNSURLResponse):
+ (WebCore::ResourceResponse::nsURLResponse):
+ (WebCore::ResourceResponse::ResourceResponse):
+
+2011-07-12 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: Cancelling an empty edit fails.
+ https://bugs.webkit.org/show_bug.cgi?id=64351
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/ResourceView.js:
+ (WebInspector.EditableResourceSourceFrame.prototype.cancelEditing):
+
+2011-07-12 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: make TextViewerDelegate methods implementations public in SourceFrame.
+ https://bugs.webkit.org/show_bug.cgi?id=64353
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.beforeTextChanged):
+ (WebInspector.SourceFrame.prototype.afterTextChanged):
+ (WebInspector.SourceFrame.prototype.populateTextAreaContextMenu):
+ (WebInspector.SourceFrame.prototype.suggestedFileName):
+ (WebInspector.SourceFrame.prototype.doubleClick):
+ (WebInspector.SourceFrame.prototype.cancelEditing):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.doubleClick):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.beforeTextChanged):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.afterTextChanged):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.commitEditing):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.cancelEditing):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateLineGutterContextMenu):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateTextAreaContextMenu):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.suggestedFileName):
+
+2011-07-12 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: remove more dead code from the Network panel
+ https://bugs.webkit.org/show_bug.cgi?id=64291
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype._toggleGridMode):
+ (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
+ * inspector/front-end/networkPanel.css:
+
+2011-07-12 Adam Roben <aroben@apple.com>
+
+ Unreviewed, rolling out r90811.
+ http://trac.webkit.org/changeset/90811
+ https://bugs.webkit.org/show_bug.cgi?id=61025
+
+ Several svg tests failing assertions beneath
+ SVGSMILElement::findInstanceTime
+
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::SVGSMILElement::findInstanceTime):
+
+2011-07-12 Oliver Varga <Varga.Oliver@stud.u-szeged.hu>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Speed up SVGSMILElement::findInstanceTime.
+ https://bugs.webkit.org/show_bug.cgi?id=61025
+
+ Replace the linear search to binary search on ordered list because
+ the previous searches from the beginning was not efficient.
+ Out of index error fixed by Renata Hodovan.
+
+ No new tests this is only a performance tweak.
+
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::extractTimeFromVector):
+ (WebCore::SVGSMILElement::findInstanceTime):
+
+2011-07-11 Zeng Huiqing <huiqing.zeng@intel.com>
+
+ Optimize HTMLInputElement::updateCheckedRadioButtons
+ https://bugs.webkit.org/show_bug.cgi?id=62840
+
+ Reviewed by Kent Tamura.
+
+ No new tests.
+
+ * dom/Document.h:
+ (WebCore::Document::getFormElements):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::updateCheckedRadioButtons):
+ (WebCore::HTMLInputElement::setChecked):
+
+2011-07-11 Pratik Solanki <psolanki@apple.com>
+
+ Reviewed by David Kilzer.
+
+ Add NSURLRequest wrapper in ResourceRequest when USE(CFNETWORK) is enabled
+ https://bugs.webkit.org/show_bug.cgi?id=63276
+
+ When USE(CFNETWORK) is enabled on Mac, keep an NSURLRequest object along with the
+ CFURLRequestRef so that WebKit can continue using the NSURLRequest.
+
+ No new tests because no change in functionality and option is not enabled on Mac.
+
+ * platform/network/cf/ResourceRequest.h:
+ (WebCore::ResourceRequest::updateNSURLRequest):
+ (WebCore::ResourceRequest::ResourceRequest):
+ * platform/network/cf/ResourceRequestCFNet.cpp:
+ (WebCore::findCFURLRequestSetContentDispositionEncodingFallbackArrayFunction):
+ (WebCore::findCFURLRequestCopyContentDispositionEncodingFallbackArrayFunction):
+ (WebCore::ResourceRequest::doUpdatePlatformRequest):
+ (WebCore::ResourceRequest::applyWebArchiveHackForMail):
+ * platform/network/mac/ResourceRequestMac.mm:
+ (WebCore::ResourceRequest::nsURLRequest):
+ (WebCore::ResourceRequest::ResourceRequest):
+ (WebCore::ResourceRequest::updateNSURLRequest):
+
+2011-07-11 Ryosuke Niwa <rniwa@webkit.org>
+
+ positionForPoint is broken when a block is positioned relatively inside the parent
+ https://bugs.webkit.org/show_bug.cgi?id=64298
+
+ Reviewed by Simon Fraser.
+
+ The bug was caused by positionForPointRespectingEditingBoundaries's not taking relativePositionOffset
+ into account when computing the point in child coordinates. Fixed the bug by adding the offset to
+ childLocation as needed.
+
+ Test: fast/block/positioning/hittest-on-relative-positioned-children.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::positionForPointRespectingEditingBoundaries): Fixed the bug; also replaced all instances of
+ IntPoint by LayoutPoint.
+
+2011-07-11 Dan Bernstein <mitz@apple.com>
+
+ Excessive expansion of justified text when rounding hacks are enabled
+ https://bugs.webkit.org/show_bug.cgi?id=64331
+
+ Reviewed by Anders Carlsson.
+
+ Test: platform/mac/fast/text/rounding-hacks-expansion.html
+
+ When rounding hacks are enabled, the expansion at each expansion opportunity should be by an
+ integer. Restored more of the logic that was removed in r78846 in order to ensure this.
+
+ * platform/graphics/WidthIterator.cpp:
+ (WebCore::WidthIterator::advance):
+ * platform/graphics/mac/ComplexTextController.cpp:
+ (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
+
+2011-07-11 Jer Noble <jer.noble@apple.com>
+
+ HTML5 video controller in fullscreen is partly off-screen (at least on youtube) using ClickToFlash
+ https://bugs.webkit.org/show_bug.cgi?id=64327
+
+ Reviewed by Darin Adler.
+
+ No new tests; no change in functionality, so covered by existing tests.
+
+ Make the rules from fullscreenQuickTime.css !important so they are not overridden
+ by page authors.
+
+ * css/fullscreenQuickTime.css:
+ (video:-webkit-full-screen::-webkit-media-controls-panel):
+
+2011-07-11 Levi Weintraub <leviw@chromium.org>
+
+ Switch lineTop and lineBottom to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=64317
+
+ Reviewed by Eric Seidel.
+
+ Changing lineTop and lineBottom to LayoutUnits and preparing all uses
+ of them for the upcoming conversion.
+
+ No new tests, no new functionality.
+
+ * rendering/EllipsisBox.cpp:
+ (WebCore::EllipsisBox::nodeAtPoint):
+ * rendering/EllipsisBox.h:
+ * rendering/GapRects.h:
+ (WebCore::GapRects::left):
+ (WebCore::GapRects::center):
+ (WebCore::GapRects::right):
+ (WebCore::GapRects::uniteLeft):
+ (WebCore::GapRects::uniteCenter):
+ (WebCore::GapRects::uniteRight):
+ (WebCore::GapRects::operator LayoutRect):
+ * rendering/InlineBox.cpp:
+ (WebCore::InlineBox::nodeAtPoint):
+ * rendering/InlineBox.h:
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
+ (WebCore::InlineFlowBox::flipLinesInBlockDirection):
+ (WebCore::InlineFlowBox::computeOverflow):
+ (WebCore::InlineFlowBox::setLayoutOverflow):
+ (WebCore::InlineFlowBox::setVisualOverflow):
+ (WebCore::InlineFlowBox::setOverflowFromLogicalRects):
+ (WebCore::InlineFlowBox::nodeAtPoint):
+ * rendering/InlineFlowBox.h:
+ (WebCore::InlineFlowBox::layoutOverflowRect):
+ (WebCore::InlineFlowBox::visualOverflowRect):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::nodeAtPoint):
+ * rendering/RenderLineBoxList.cpp:
+ (WebCore::RenderLineBoxList::anyLineIntersectsRect):
+ * rendering/RenderLineBoxList.h:
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::positionListMarker):
+ * rendering/RenderTextControl.h:
+ * rendering/RenderTextControlMultiLine.cpp:
+ (WebCore::RenderTextControlMultiLine::adjustControlHeightBasedOnLineHeight):
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
+ * rendering/RenderTextControlSingleLine.h:
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::nodeAtPoint):
+ * rendering/RootInlineBox.h:
+ (WebCore::RootInlineBox::lineTop):
+ (WebCore::RootInlineBox::lineBottom):
+ (WebCore::RootInlineBox::setLineTopBottomPositions):
+ (WebCore::RootInlineBox::logicalTopVisualOverflow):
+ (WebCore::RootInlineBox::logicalBottomVisualOverflow):
+ (WebCore::RootInlineBox::logicalTopLayoutOverflow):
+ (WebCore::RootInlineBox::logicalBottomLayoutOverflow):
+ * rendering/svg/SVGInlineFlowBox.h:
+ * rendering/svg/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::nodeAtPoint):
+ * rendering/svg/SVGInlineTextBox.h:
+ * rendering/svg/SVGRootInlineBox.h:
+
+2011-07-11 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Daniel Bates.
+
+ [GTK] Transition to Mozilla named cursors have incorrect hotspot and rendering
+ https://bugs.webkit.org/show_bug.cgi?id=62752
+
+ Instead of offsetting the cursor blit by the hotspot, just pass the hotspot
+ arguments to the GdkCursor constructor.
+
+ No new tests. This is covered by manual-tests/cursor.html.
+
+ * platform/gtk/CursorGtk.cpp:
+ (WebCore::createNamedCursor):
+
+2011-07-11 Yi Shen <yi.4.shen@nokia.com>
+
+ [Qt] Unreviewed rollout 90779 which may fail the layout-test.
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandlerCallQueue::setDeferSignals):
+ * platform/network/qt/QNetworkReplyHandler.h:
+
+2011-07-11 Bradley Nelson <bradnelson@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Split webcore_dom off webcore_remaining to reduce its size for
+ whole program optimization builds.
+
+ https://bugs.webkit.org/show_bug.cgi?id=64299
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-07-11 Yi Shen <yi.4.shen@nokia.com>
+
+ [Qt] ASSERTION FAILED in ResourceHandle::setDefersLoading causes crash
+ https://bugs.webkit.org/show_bug.cgi?id=62808
+
+ Reviewed by Benjamin Poulain.
+
+ The assertion in ResourceHandle::setDefersLoading assumes asynchronous
+ content delivery -- To resume a page, first, its main resource loader
+ calls setDefersLoading to resume loading the main content; then all the
+ sub-resource loaders calls setDefersLoading to resume sub-contents.
+ However, since QNetworkReplyHandler delivers content synchronously,
+ some new sub-resource loaders get created as soon as the main resource
+ loader resumed, and all these new sub-resource loaders set their
+ defersLoading flag to false. Then, the assertion fails for these new
+ sub-resource loaders when calling setDefersLoading on them. As a fix,
+ this path makes QNetworkReplyHandler deliver content asynchronously.
+
+ Test: loader/load-defer-resume-crash.html
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandlerCallQueue::setDeferSignals):
+ * platform/network/qt/QNetworkReplyHandler.h:
+
+2011-07-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Move innerTextElement() from RenderTextControl to HTMLTextFormControlElement
+ https://bugs.webkit.org/show_bug.cgi?id=64134
+
+ Reviewed by Kent Tamura.
+
+ Moved innerTextElement from RenderTextControl to HTMLTextFormControlElement. It is implemented by
+ HTMLInputElement and HTMLTextAreaElement instead of RenderTextControlSingleLine and
+ RenderTextControlMultiLine.
+
+ This refactoring removes the indirection through RenderTextControl and makes the ownership of
+ shadow DOM for input and textarea elements clear. Accessing the shadow DOM of input and textarea elements
+ are now less error prone because it no longer depends on the lifetime of the render tree.
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::indexForVisiblePosition): Access innerTextElement via
+ HTMLTextFormControlElement.
+ * dom/Node.cpp:
+ (WebCore::traverseTreeAndMark): No longer calls innerTextElement because this was a work-around
+ needed before making input and textarea elements use the new shadow DOM model.
+ * editing/TextIterator.cpp:
+ (WebCore::TextIterator::handleReplacedElement): Access innerTextElement via HTMLTextFormControlElement.
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::hasVisibleTextArea): Takes innerTextElement.
+ (WebCore::HTMLTextFormControlElement::setSelectionRange): Calls innerTextElement().
+ (WebCore::HTMLTextFormControlElement::selection): Ditto.
+ (WebCore::HTMLTextFormControlElement::selectionStart): Ditto; no longer uses a temporary local variable
+ for innerTextElement because innerTextElement() no longer depends on the lifetime of the render tree.
+ (WebCore::HTMLTextFormControlElement::selectionEnd): Ditto.
+ * html/HTMLFormControlElement.h:
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::innerTextElement): Added.
+ * html/HTMLTextAreaElement.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::textFormControlElement): Made this function a const member.
+ (WebCore::RenderTextControl::innerTextElement): Added.
+ * rendering/RenderTextControl.h:
+ * rendering/RenderTextControlMultiLine.cpp:
+ * rendering/RenderTextControlMultiLine.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ * rendering/RenderTextControlSingleLine.h:
+
+2011-07-11 Tony Chang <tony@chromium.org>
+
+ rename RenderObject::isFlexibleBox to isDeprecatedFlexibleBox
+ https://bugs.webkit.org/show_bug.cgi?id=64217
+
+ Reviewed by Ojan Vafai.
+
+ This is to make way for the new flexbox needing a similar method.
+ RenderObject also has isFlexingChildren() and isStretchingChildren(),
+ but we may be able to use those for the new flexbox as well so I
+ didn't rename them.
+
+ No new tests, just refactoring.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::removeChild):
+ (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
+ (WebCore::shouldCheckLines):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
+ (WebCore::RenderBox::computeLogicalHeight):
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
+ * rendering/RenderDeprecatedFlexibleBox.h:
+ (WebCore::RenderDeprecatedFlexibleBox::isDeprecatedFlexibleBox):
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::isDeprecatedFlexibleBox):
+
+2011-07-11 Nate Chapin <japhet@chromium.org>
+
+ [Chromium] Ensure we don't crash when an
+ HTMLSelectElement mouse release event removes
+ the element from the DOM.
+ https://bugs.webkit.org/show_bug.cgi?id=64295
+
+ Reviewed by Dimitri Glazkov.
+
+ Manual test only because the crash requires a
+ real popup menu, which DRT doesn't provide.
+
+ * manual-tests/chromium/popup-menu-crash.html: Added.
+ * platform/chromium/PopupMenuChromium.cpp:
+ (WebCore::PopupContainer::handleMouseReleaseEvent):
+
+2011-07-11 Mike Reed <reed@google.com>
+
+ [skia] remove platform helpers for gradients and patterns
+ https://bugs.webkit.org/show_bug.cgi?id=64281
+
+ Reviewed by Stephen White.
+
+ No new tests. fixes canvas/philip/tests/2d.gradient.object.update.html
+
+ Remove (now empty) platform helpers for fill/stroke gradients/patterns. We now pickup the platformGradient
+ and platformPattern fresh when they're needed, so we can see any edits that have occurred to them
+ 2d.gradient.object.update.html sets the fillgradient, and then edits the gradient object. This CL allows
+ us to see that edit.
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::setStrokePattern):
+ (WebCore::GraphicsContext::setFillPattern):
+ (WebCore::GraphicsContext::setStrokeGradient):
+ (WebCore::GraphicsContext::setFillGradient):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::State::State):
+ (WebCore::PlatformContextSkia::State::~State):
+ (WebCore::PlatformContextSkia::PlatformContextSkia):
+ (WebCore::PlatformContextSkia::drawRect):
+ (WebCore::PlatformContextSkia::setupShader):
+ (WebCore::PlatformContextSkia::setupPaintForFilling):
+ (WebCore::PlatformContextSkia::setupPaintForStroking):
+ (WebCore::PlatformContextSkia::setFillColor):
+ (WebCore::PlatformContextSkia::setStrokeColor):
+ (WebCore::PlatformContextSkia::canAccelerate):
+ * platform/graphics/skia/PlatformContextSkia.h:
+ (WebCore::PlatformContextSkia::setGraphicsContext):
+
+2011-07-11 Young Han Lee <joybro@company100.net>
+
+ Reviewed by Simon Fraser.
+
+ Transition LayoutTest using pause API shows wrong result if it tries to pause a transition after its delay time.
+ https://bugs.webkit.org/show_bug.cgi?id=63859
+
+ The existing code to set the m_startTime haven't worked because
+ the animation is not the right state to accept the start event.
+ This patch just sets the values directly instead of using event.
+
+ Test: transitions/delay.html
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::AnimationBase::freezeAtTime):
+
+2011-07-11 Ryosuke Niwa <rniwa@webkit.org>
+
+ Move selection related code from RenderTextControl to HTMLTextFormControlElement
+ https://bugs.webkit.org/show_bug.cgi?id=64133
+
+ Reviewed by Dimitri Glazkov.
+
+ Moved selectionStart, selectionEnd, hasVisibleTextArea, setSelectionRange, setContainerAndOffsetForRange
+ and selection from RenderTextControl.cpp to HTMLFormControlElement.cpp.
+
+ This refactoring removes RenderTextControl's dependency on FrameSelection.
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::selectedText): Calls HTMLTextFromControl::selectedText.
+ (WebCore::AccessibilityRenderObject::selectedTextRange): Calls selectionStart and selectionEnd.
+ (WebCore::AccessibilityRenderObject::setSelectedTextRange): Ditto.
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::selectedText): Extracted from AccessibilityRenderObject::selectedText.
+ (WebCore::hasVisibleTextArea): Added.
+ (WebCore::HTMLTextFormControlElement::setSelectionRange): Merged with the function of the same name in RenderTextControl.
+ (WebCore::HTMLTextFormControlElement::selectionStart): Calls computeSelectionStart instead of RenderTextControl::selectionStart.
+ (WebCore::HTMLTextFormControlElement::computeSelectionStart): Moved from RenderTextControl::selectionStart.
+ (WebCore::HTMLTextFormControlElement::selectionEnd): Calls computeSelectionEnd instead of RenderText::selectionEnd.
+ (WebCore::HTMLTextFormControlElement::computeSelectionEnd): Moved from RenderTextControl::selectionStart.
+ (WebCore::setContainerAndOffsetForRange): Moved from RenderTextControl.cpp.
+ (WebCore::HTMLTextFormControlElement::selection): Merged with the function of the same name in RenderTextControl.
+ (WebCore::HTMLTextFormControlElement::restoreCachedSelection): Calls computeSelectionStart and computeSelectionEnd instead of
+ RenderTextControl::selectionStart and RenderTextControl::selectionEnd.
+ (WebCore::HTMLTextFormControlElement::selectionChanged): Calls selectionStart and selectionEnd.
+ * html/HTMLFormControlElement.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::setValue): Calls setSelectionRange.
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::textFormControlElement): Added.
+ * rendering/RenderTextControl.h:
+
+2011-07-11 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ Canvas: Use fast, approximate dirty rects for stroke()
+ https://bugs.webkit.org/show_bug.cgi?id=59764
+
+ No new tests, this is an optimization.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::stroke): Instead of using
+ Path::strokeBoundingRect() to calculate the exact bounding rect
+ for a path stroke, get the Path::boundingRect() and inflate it by
+ miterLimit + lineWidth to get a slightly oversized dirty rect
+ in a fraction of the time.
+
+2011-07-11 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [refactoring] Remove dependencies of components requiring network resource list from network panel
+ https://bugs.webkit.org/show_bug.cgi?id=62477
+
+ * inspector/front-end/AuditsPanel.js:
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._inspectedURLChanged):
+ (WebInspector.ExtensionServer.prototype._onGetHAR):
+ (WebInspector.ExtensionServer.prototype.initExtensions):
+ * inspector/front-end/HAREntry.js:
+ (WebInspector.HARLog):
+ (WebInspector.HARLog.prototype.build):
+ * inspector/front-end/NetworkManager.js:
+ (WebInspector.NetworkLog):
+ (WebInspector.NetworkLog.prototype.get resources):
+ (WebInspector.NetworkLog.prototype._onInspectedURLChanged):
+ (WebInspector.NetworkLog.prototype._onResourceStarted):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype._reset):
+ (WebInspector.NetworkPanel.prototype._copyAll):
+ (WebInspector.NetworkPanel.prototype._exportAll):
+ * inspector/front-end/inspector.js:
+ (WebInspector.reset):
+
+2011-07-11 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: make SourceFrame a View.
+ https://bugs.webkit.org/show_bug.cgi?id=64274
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame):
+ (WebInspector.SourceFrame.createSearchRegex):
+ (WebInspector.SourceFrame.prototype.show):
+ (WebInspector.SourceFrame.prototype.hide):
+ (WebInspector.SourceFrame.prototype._beforeTextChanged):
+ (WebInspector.SourceFrame.prototype._afterTextChanged):
+ (WebInspector.SourceFrame.prototype._initializeTextViewer):
+ (WebInspector.SourceFrame.prototype.performSearch.doFindSearchMatches):
+ (WebInspector.SourceFrame.prototype.performSearch):
+ (WebInspector.SourceFrame.prototype._populateTextAreaContextMenu):
+ (WebInspector.SourceFrame.prototype._suggestedFileName):
+ (WebInspector.SourceFrame.prototype._doubleClick):
+ (WebInspector.SourceFrame.prototype._cancelEditing):
+ (WebInspector.TextViewerDelegateForSourceFrame):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.doubleClick):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.beforeTextChanged):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.afterTextChanged):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.commitEditing):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.cancelEditing):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateLineGutterContextMenu):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateTextAreaContextMenu):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.suggestedFileName):
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextViewerDelegate.prototype.populateLineGutterContextMenu):
+
+2011-07-11 Noel Gordon <noel.gordon@gmail.com>
+
+ Reviewed by Adam Roben.
+
+ Forward focus events to windowless plugins on the windows port.
+ https://bugs.webkit.org/show_bug.cgi?id=62375
+
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::setFocus): Forward focus events if the plugin is windowless.
+
+2011-07-11 Shinya Kawanaka <shinyak@google.com>
+
+ Added accessibility notification when value is changed.
+ https://bugs.webkit.org/show_bug.cgi?id=64256
+
+ Notifies the value change of range input when accessibility is enabled.
+
+ Reviewed by Kent Tamura.
+
+ Covered by existing tests.
+
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::handleKeydownEvent):
+ Added accessibility notification when value is changed.
+
+2011-07-08 Mikhail Naganov <mnaganov@chromium.org>
+
+ Web Inspector: Fix resizing of sidebar pane in Timeline and Profile panels.
+ https://bugs.webkit.org/show_bug.cgi?id=64161
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
+ * inspector/front-end/TimelineOverviewPane.js:
+ (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
+
+2011-07-11 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: [REGRESSION r89753-89754] highlight does not respect scroller location.
+ https://bugs.webkit.org/show_bug.cgi?id=63982
+
+ Rolling out 89760, 89756, 89754, 89753 for breaking inspector highlight.
+
+ Reviewed by Yury Semikhatsky.
+
+ * WebCore.exp.in:
+ * inspector/DOMNodeHighlighter.cpp:
+ (WebCore::DOMNodeHighlighter::drawNodeHighlight):
+ * page/FrameView.cpp:
+ * page/FrameView.h:
+ * platform/ScrollView.h:
+ * platform/Widget.cpp:
+ * platform/Widget.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::mapLocalToContainer):
+ * rendering/RenderBox.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::mapLocalToContainer):
+ * rendering/RenderInline.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::mapLocalToContainer):
+ (WebCore::RenderObject::localToContainerQuad):
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::localToAbsoluteQuad):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::mapLocalToContainer):
+ * rendering/RenderView.h:
+ * rendering/svg/RenderSVGForeignObject.cpp:
+ (WebCore::RenderSVGForeignObject::mapLocalToContainer):
+ * rendering/svg/RenderSVGForeignObject.h:
+ * rendering/svg/RenderSVGInline.cpp:
+ (WebCore::RenderSVGInline::mapLocalToContainer):
+ * rendering/svg/RenderSVGInline.h:
+ * rendering/svg/RenderSVGModelObject.cpp:
+ (WebCore::RenderSVGModelObject::mapLocalToContainer):
+ * rendering/svg/RenderSVGModelObject.h:
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::mapLocalToContainer):
+ * rendering/svg/RenderSVGRoot.h:
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::mapLocalToContainer):
+ * rendering/svg/RenderSVGText.h:
+ * rendering/svg/SVGRenderSupport.cpp:
+ (WebCore::SVGRenderSupport::mapLocalToContainer):
+ * rendering/svg/SVGRenderSupport.h:
+
+2011-07-11 Mustafizur Rahaman <mustaf.here@gmail.com>
+
+ Reviewed by James Robinson.
+
+ Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.fill.destination-atop.html
+ https://bugs.webkit.org/show_bug.cgi?id=48292
+
+ and
+
+ Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.pattern.destination-atop.html
+ https://bugs.webkit.org/show_bug.cgi?id=48302
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::shouldDisplayTransparencyElsewhere): Added CompositeDestinationAtop
+ to draw transparency elsewhere for destination-atop
+
+2011-07-08 Mikhail Naganov <mnaganov@chromium.org>
+
+ Web Inspector: [Chromium] Get rid of flickering "Please wait" message in Heap profiler.
+ https://bugs.webkit.org/show_bug.cgi?id=61175
+
+ The message has been replaced with spinner icons appearing instead of profile's
+ icon. As each profile owns a worker, they run independently, and there can be
+ multiple spinners at the same time.
+
+ Reviewed by Pavel Feldman.
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/DetailedHeapshotGridNodes.js:
+ (WebInspector.HeapSnapshotGridNode.prototype._populate.sorted):
+ (WebInspector.HeapSnapshotGridNode.prototype._populate):
+ (WebInspector.HeapSnapshotGridNode.prototype.populateChildren.childrenRetrieved):
+ (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
+ * inspector/front-end/DetailedHeapshotView.js:
+ (WebInspector.HeapSnapshotSortableDataGrid.prototype.sortingChanged):
+ (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext):
+ (WebInspector.HeapSnapshotRetainingPathsList.prototype.searchCancelled):
+ (WebInspector.DetailedHeapshotView.profileCallback):
+ (WebInspector.DetailedHeapshotView):
+ (WebInspector.DetailedHeapshotView.prototype._changeBase.baseProfileLoaded):
+ (WebInspector.DetailedHeapshotView.prototype._changeBase):
+ (WebInspector.DetailedHeapshotView.prototype.processLoadedSnapshot):
+ (WebInspector.DetailedHeapshotView.prototype._changeView):
+ * inspector/front-end/HeapSnapshotProxy.js:
+ (WebInspector.HeapSnapshotWorker):
+ (WebInspector.HeapSnapshotWorker.prototype.dispose):
+ (WebInspector.HeapSnapshotWorker.prototype.startCheckingForLongRunningCalls):
+ (WebInspector.HeapSnapshotWorker.prototype._checkLongRunningCalls):
+ (WebInspector.HeapSnapshotProxyObject.prototype.callMethod):
+ (WebInspector.HeapSnapshotProxyObject.prototype.get worker):
+ * inspector/front-end/Images/spinnerActive.gif: Added. Generated using ajaxload.info.
+ * inspector/front-end/Images/spinnerActiveSelected.gif: Added. Generated using ajaxload.info.
+ * inspector/front-end/Images/spinnerInactive.gif: Added. Generated using ajaxload.info.
+ * inspector/front-end/Images/spinnerInactiveSelected.gif: Added. Generated using ajaxload.info.
+ * inspector/front-end/PleaseWaitMessage.js: Removed.
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel.prototype._addProfileHeader):
+ (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot.setProfileWait):
+ (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot):
+ (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.parsed):
+ (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
+ (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
+ * inspector/front-end/SidebarTreeElement.js:
+ (WebInspector.SidebarTreeElement.prototype.set wait):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/heapProfiler.css:
+ (.heap-snapshot-sidebar-tree-item.wait .icon):
+ (.heap-snapshot-sidebar-tree-item.wait.selected .icon):
+ (body.inactive .heap-snapshot-sidebar-tree-item.wait .icon):
+ (body.inactive .heap-snapshot-sidebar-tree-item.wait.selected .icon):
+ * inspector/front-end/inspector.html:
+
+2011-07-10 Patrick Gansterer <paroga@webkit.org>
+
+ Generate conditional include statements in CodeGeneratorJS
+ https://bugs.webkit.org/show_bug.cgi?id=64231
+
+ Reviewed by Brent Fulgham.
+
+ Suround headers with a correspondig #if ENABLE() line.
+ This allows us to generate bindings only of required IDL files.
+
+ Changing the current preprocessor statements to the Conditional attribute
+ in a next step helps in getting rid of calls to the preprocessor,
+ which causes so much pain on a natvie Windows environment.
+
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateImplementation):
+ (WriteData):
+
+2011-07-10 Patrick Gansterer <paroga@webkit.org>
+
+ Remove array size from generated JSC binding tables
+ https://bugs.webkit.org/show_bug.cgi?id=64229
+
+ Reviewed by Brent Fulgham.
+
+ Because many items in the array are surrounded with #if(ENABLE_XXX) lines,
+ the array size isn't fix and correct in all cases.
+ So let the compiler calculate the correct size itself.
+
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateHashTable):
+ * bindings/scripts/test/JS/JSTestInterface.cpp:
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
+ * bindings/scripts/test/JS/JSTestObj.cpp:
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
+
+2011-07-10 Kenichi Ishibashi <bashi@chromium.org>
+
+ Let plugins participate in form submission
+ https://bugs.webkit.org/show_bug.cgi?id=13061
+
+ Implements HTMLObjectElement::appendFormData() so that object
+ elements respond as form associated elements.
+
+ Reviewed by Anders Carlsson.
+
+ Test: plugins/form-value.html
+
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::appendFormData): Implemented.
+ * plugins/PluginViewBase.h:
+ (WebCore::PluginViewBase::getFormValue): Added.
+
+2011-07-10 Anders Carlsson <andersca@apple.com>
+
+ WebKit2 is leaking NSCursors created by leakNamedCursor
+ https://bugs.webkit.org/show_bug.cgi?id=64241
+ <rdar://problem/9507151>
+
+ Reviewed by Oliver Hunt.
+
+ * platform/mac/CursorMac.mm:
+ (WebCore::createNamedCursor):
+ Rename this from leakNamedCursor to createNamedCursor and make it return a
+ RetainPtr<NSCursor> instead of a raw pointer.
+
+ (WebCore::Cursor::ensurePlatformCursor):
+ Don't leak cursors here. We still won't deallocate cursors during shutdown (which leakNamedCursor
+ was said to prevent) because the cursor singletons are all allocated from the heap and are never destroyed
+ anyway.
+
+2011-07-10 Yuta Kitamura <yutak@chromium.org>
+
+ WebSocket: Add useHixie76Protocol flag to WebSocketChannel and WebSocketHandshake
+ https://bugs.webkit.org/show_bug.cgi?id=64244
+
+ Reviewed by Kent Tamura.
+
+ Get the value of Settings::useHixie76WebSocketProtocol() and save it in
+ WebSocketChannel and WebSocketHandshake instances. Obtained flag value
+ is not used for now.
+
+ No behavior change, thus no new tests.
+
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::WebSocketChannel):
+ WebSocketChannel is always created in context of Document (see
+ ThreadableWebSocketChannel::create()).
+ Because m_useHixie76Protocol must be passed to WebSocketHandshake
+ constructor, WebSocketHandshake instance is allocated dynamically
+ and stored in OwnPtr.
+ (WebCore::WebSocketChannel::connect):
+ (WebCore::WebSocketChannel::fail):
+ (WebCore::WebSocketChannel::disconnect):
+ (WebCore::WebSocketChannel::didOpen):
+ (WebCore::WebSocketChannel::didFail):
+ (WebCore::WebSocketChannel::processBuffer):
+ * websockets/WebSocketChannel.h:
+ * websockets/WebSocketHandshake.cpp:
+ (WebCore::WebSocketHandshake::WebSocketHandshake):
+ * websockets/WebSocketHandshake.h:
+
+2011-07-10 Tom Hudson <tomhudson@google.com>
+
+ Reviewed by James Robinson.
+
+ GraphicsContextSkia::drawConvexPolygon doesn't pay attention to shouldAntialias
+ https://bugs.webkit.org/show_bug.cgi?id=61369
+
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::drawConvexPolygon): Pass the
+ shouldAntialias parameter on to Skia.
+
+2011-07-10 Yuzo Fujishima <yuzo@google.com>
+
+ Fix for Bug 63968 - Add comment to explain Vector usage in FontCache::purgeInactiveFontData
+ https://bugs.webkit.org/show_bug.cgi?id=63968
+
+ Reviewed by Dan Bernstein.
+
+ No new tests because this changes comments only.
+
+ * platform/graphics/FontCache.cpp:
+ (WebCore::FontCache::purgeInactiveFontData): Add explanation why SimpleFontData is not deleted in the iteration loop.
+
+2011-07-10 Emil A Eklund <eae@chromium.org>
+
+ Switch updateHitTestResult to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=64209
+
+ Reviewed by Eric Seidel.
+
+ No new tests, no functionality changes.
+
+ * rendering/EllipsisBox.cpp:
+ (WebCore::EllipsisBox::nodeAtPoint):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::hitTestFloats):
+ (WebCore::RenderBlock::updateHitTestResult):
+ * rendering/RenderBlock.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::updateHitTestResult):
+ * rendering/RenderInline.h:
+ * rendering/RenderLineBoxList.cpp:
+ (WebCore::RenderLineBoxList::hitTest):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::updateHitTestResult):
+ * rendering/RenderObject.h:
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::updateHitTestResult):
+ * rendering/RenderView.h:
+ * rendering/svg/RenderSVGContainer.cpp:
+ (WebCore::RenderSVGContainer::nodeAtFloatPoint):
+ * rendering/svg/RenderSVGImage.cpp:
+ (WebCore::RenderSVGImage::nodeAtFloatPoint):
+ * rendering/svg/RenderSVGPath.cpp:
+ (WebCore::RenderSVGPath::nodeAtFloatPoint):
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::nodeAtPoint):
+
+2011-07-10 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Fix member variable order of ContextMenuItem
+ https://bugs.webkit.org/show_bug.cgi?id=59905
+
+ Use the same order at decleration and assignment to silence compiler warning.
+
+ * platform/ContextMenuItem.h:
+
+2011-07-10 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/9750062> REGRESSION: Button text missing in many iTunes Store pages
+ https://bugs.webkit.org/show_bug.cgi?id=64236
+
+ Reviewed by Maciej Stachowiak.
+
+ Test: fast/css/empty-display-none.html
+
+ When an :empty selector caused an element to not have a renderer, the check for empty style
+ change when finishing parsing the elemenet did nothing, because it could not check if the
+ element’s current style was affected by :empty. The fix is to record the fact that the style
+ was affected by :empty in ElementRareData in the no-renderer case.
+
+ * dom/Element.cpp:
+ (WebCore::Element::recalcStyle): Clear the m_styleAffectedByEmpty flag.
+ (WebCore::checkForEmptyStyleChange): If the style is null (meaning there is no renderer), check
+ Element::styleAffectedByEmpty().
+ (WebCore::Element::setStyleAffectedByEmpty): Added. Sets the flag in rare data.
+ (WebCore::Element::styleAffectedByEmpty): Added. Checks for the flag in rare data.
+ * dom/Element.h:
+ * dom/ElementRareData.h:
+ (WebCore::ElementRareData::ElementRareData): Added m_styleAffectedByEmpty and initialized it
+ to false.
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRendererFactory::createRendererAndStyle): If an element doesn’t need a renderer
+ and its style is affected by :empty, record this fact in the element by calling setStyleAffectedByEmpty().
+
+2011-07-10 Mark Rowe <mrowe@apple.com>
+
+ Fix the build.
+
+ * svg/properties/SVGAttributeToPropertyMap.h: Forward-declare SVGPropertyInfo as a struct
+ since that's what it is.
+
+2011-07-09 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed WinCE build fix for r90680.
+
+ Repeat the change done in r90681 for all other SVGAnimated*PropertyTearOff.h files.
+
+ * svg/properties/SVGAnimatedEnumerationPropertyTearOff.h: Make create public and remove friendship with SVGAnimatedProperty.
+ * svg/properties/SVGAnimatedListPropertyTearOff.h: Ditto.
+ * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h: Ditto.
+ * svg/properties/SVGAnimatedPropertyTearOff.h: Ditto.
+ * svg/properties/SVGAnimatedTransformListPropertyTearOff.h: Ditto.
+
+2011-07-09 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Add a possibility to retrieve the associated SVGAnimatedProperty object for a certain XML attribute
+ https://bugs.webkit.org/show_bug.cgi?id=63797
+
+ Fix WinCE build. Funny none other platform complained.
+
+ * svg/properties/SVGAnimatedStaticPropertyTearOff.h: Make create public, SVGAnimatedProperty needs it - remove friendship with it.
+
+2011-07-09 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Add a possibility to retrieve the associated SVGAnimatedProperty object for a certain XML attribute
+ https://bugs.webkit.org/show_bug.cgi?id=63797
+
+ Reviewed by Dirk Schulze.
+
+ In order to prepare animVal support we need a way to map a given SVG DOM attribute to a SVGAnimatedProperty.
+ eg. SVGNames::xAttr -> SVGRectElement::xAnimated(), etc. This will be needed to update the animVal of the
+ SVGAnimatedProperty, if an animation is running. It would required adding a new method to all SVG* classes
+ that define animated properties. Unfortunately we already have lots of repeated code in methods like
+ synchronizeProperty / fillAttributeToPropertyTypeMap. Look at SVGRectElement for example:
+
+ void SVGRectElement::synchronizeProperty(const QualifiedName& attrName)
+ {
+ if (attrName == anyQName()) {
+ synchronizeX();
+ synchronizeY();
+ ...
+ }
+
+ if (attrName == SVGNames::xAttr) {
+ synchronizeX();
+ return;
+ }
+
+ if (attrName == SVGNames::yAttr) {
+ synchronizeY();
+ return;
+ }
+ ...
+ }
+
+ or
+
+ void SVGRectElement::fillAttributeToPropertyTypeMap()
+ {
+ AttributeToPropertyTypeMap& attributeToPropertyTypeMap = this->attributeToPropertyTypeMap();
+
+ SVGStyledTransformableElement::fillPassedAttributeToPropertyTypeMap(attributeToPropertyTypeMap);
+ attributeToPropertyTypeMap.set(SVGNames::xAttr, AnimatedLength);
+ attributeToPropertyTypeMap.set(SVGNames::yAttr, AnimatedLength);
+ ...
+ }
+
+ These lookups are all performed dynamically. Each synchronizeProperty() call does a lot of comparisons.
+ fillAttributeToPropertyTypeMap() isn't that bad as the result is cached in a static HashMap per-SVGRectElement.
+ There's no reason to do these things dynamically!
+
+ Inspired by JSC, I'm adding a "static const SVGPropertyInfo s_fooPropertyInfo" object for each animated SVG property.
+ For example, for SVGRectElements SVGAnimatedLength x property we're storing:
+ - "AnimatedPropertyType type" (AnimatedLength -- note the enum was named AnimatedAttributeType, I renamed it to AnimatedPropertyType for clarity)
+ - "const QualifiedName& attributeName" (SVGNames::xAttr)
+ - "const AtomicString& propertyIdentifier" (SVGNames::xAttr.localName() -- only different if N-wrappers map to a single XML DOM attribute, eg. orientAttr)
+ - "SynchronizeProperty synchronizeProperty" (callback to SVGRectElement::synchronizeX)
+ - "LookupOrCreateWrapperForAnimatedProperty lookupOrCreateWrapperForAnimatedProperty" (callback to SVGRectElement::xAnimated)
+
+ Using this information, we can replace all the various synchronizeProperty/fillAttributeToPropertyMap implementations, with a single one in SVGElement.
+ All these are auto-generated, using the standard macros used to define/declare SVG animated properties. This required several changes to the macros.
+ Here's a summary:
+
+ #1) In all headers, wrap DECLARE_ANIMATED_* calls, in BEGIN_DECLARE_ANIMATED_PROPERTIES(ClassName) / END_DECLARE_ANIMATED_PROPERTIES blocks.
+
+ Sample change for SVGRectElement:
+ - DECLARE_ANIMATED_LENGTH(X, x)
+ - DECLARE_ANIMATED_LENGTH(Y, y)
+ - ...
+
+ + BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGRectElement)
+ + DECLARE_ANIMATED_LENGTH(X, x)
+ + DECLARE_ANIMATED_LENGTH(Y, y)
+ + ...
+ + END_DECLARE_ANIMATED_PROPERTIES
+
+ #2) In all cpp files, add a new section wrapped in BEGIN_REGISTER_ANIMATED_PROPERTIES(ClassName / END_REGISTER_ANIMATED_PROPERTIES blocks:
+
+ Sample change for SVGRectElement:
+ +BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGRectElement)
+ + REGISTER_LOCAL_ANIMATED_PROPERTY(x)
+ + REGISTER_LOCAL_ANIMATED_PROPERTY(y)
+ + ...
+ + REGISTER_PARENT_ANIMATED_PROPERTIES(SVGStyledTransformableElement)
+ + REGISTER_PARENT_ANIMATED_PROPERTIES(SVGTests)
+ +END_REGISTER_ANIMATED_PROPERTIES
+
+ This is the main piece of the logic that replaces the manual synchronizeProperty/fillAttributeToPropertyMap implementation. It expands to following:
+
+ SVGAttributeToPropertyMap& SVGRectElement::attributeToPropertyMap()
+ {
+ DEFINE_STATIC_LOCAL(SVGAttributeToPropertyMap, s_attributeToPropertyMap, ());
+ }
+
+ static void registerAnimatedPropertiesForSVGRectElement()
+ {
+ SVGAttributeToPropertyMap& map = SVGRectElement::attributeToPropertyMap();
+ if (!map.isEmpty())
+ return;
+ map.addProperty(SVGRectElement::xPropertyInfo());
+ map.addProperty(SVGRectElement::yPropertyInfo());
+ ...
+ map.addProperties(SVGStyledTransformableElement::attributeToPropertyMap());
+ map.addProperties(SVGTests::attributeToPropertyMap());
+ }
+
+ A single-instance of SVGAttributeToPropertyMap is created for each SVG*Element. The constructor of SVGRectElement is supposed to call
+ registerAnimatedPropertiesForSVGRectElement(), which collects all properties of SVGRectElement and all its parent classes and stores them
+ in a Vector<const SVGPropertyInfo*>. This Vector is stored in a HashMap<QualifiedName, Vector<const SVGPropertyInfo*> > where the key
+ is the attribute name (eg. SVGNames::xAttr -> SVGRectElement::xPropertyInfo). This is only done _once_ per SVGRectElement.
+
+ SVGElement contains a "virtual SVGAttributeToPropertyMap& localAttributeToPropertyMap()" method, and SVGRectElement overrides it
+ and returns SVGRectElement::attributeToPropertyMap() (which is static!) -- this is hidden again in the macros, no need to write any code.
+
+ SVGAttributeToPropertyMap provides following API:
+ - bool synchronizeProperty(SVGElement* contextElement, const QualifiedName& attributeName)
+ - void synchronizeProperties(SVGElement* contextElement)
+
+ A generic way to synchronize a SVGAnimatedProperty with its XML DOM attribute. Any SVG DOM change to eg. <rect>s x property will now trigger
+ contextElement->localAttributeToPropertyMap().synchronizeProperty(this, SVGNames::xAttr)
+ The SVGAttributeToPropertyMap will ask its HashMap for the Vector containing the properties for SVGNames::xAttr (in that case, just one xAnimated()).
+
+ - void animatedPropertyTypeForAttribute(const QualifiedName& attributeName, Vector<AnimatedPropertyType>& propertyTypes)
+
+ This method replaces the fillAttributeToPropertyMap implementations everywhere.
+
+ - void animatedPropertiesForAttribute(SVGElement* contextElement, const QualifiedName& attributeName, Vector<RefPtr<SVGAnimatedProperty> >& properties);
+
+ This method is not used yet, but allows us to collect all SVGAnimatedProperties for a QualifiedName -- the initial goal for this patch.
+
+ #3) In all cpp files, add a call to "registerAnimatedPropertiesForClassName()" in the constructor. Forgetting this will result in a compile error.
+
+ Doesn't affect any tests.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (NativeToJSValue):
+ * bindings/scripts/CodeGeneratorObjC.pm:
+ (GenerateImplementation):
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateNormalAttrGetter):
+ * svg/SVGAElement.cpp:
+ (WebCore::SVGAElement::SVGAElement):
+ * svg/SVGAElement.h:
+ (WebCore::SVGAElement::synchronizeRequiredFeatures):
+ (WebCore::SVGAElement::synchronizeRequiredExtensions):
+ (WebCore::SVGAElement::synchronizeSystemLanguage):
+ * svg/SVGAltGlyphElement.cpp:
+ (WebCore::SVGAltGlyphElement::SVGAltGlyphElement):
+ * svg/SVGAltGlyphElement.h:
+ * svg/SVGAnimateElement.cpp:
+ (WebCore::SVGAnimateElement::SVGAnimateElement):
+ (WebCore::SVGAnimateElement::hasValidAttributeType):
+ (WebCore::SVGAnimateElement::determineAnimatedPropertyType):
+ (WebCore::SVGAnimateElement::determinePropertyValueTypes):
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateElement::calculateFromAndToValues):
+ (WebCore::SVGAnimateElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateElement::resetToBaseValue):
+ (WebCore::SVGAnimateElement::applyResultsToTarget):
+ (WebCore::SVGAnimateElement::calculateDistance):
+ (WebCore::SVGAnimateElement::ensureAnimator):
+ * svg/SVGAnimateElement.h:
+ * svg/SVGAnimateTransformElement.cpp:
+ (WebCore::SVGAnimateTransformElement::hasValidAttributeType):
+ (WebCore::SVGAnimateTransformElement::determineAnimatedPropertyType):
+ (WebCore::SVGAnimateTransformElement::resetToBaseValue):
+ (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
+ * svg/SVGAnimateTransformElement.h:
+ * svg/SVGAnimatedAngle.h:
+ * svg/SVGAnimatedBoolean.h:
+ * svg/SVGAnimatedEnumeration.h:
+ * svg/SVGAnimatedInteger.h:
+ * svg/SVGAnimatedLength.h:
+ * svg/SVGAnimatedLengthList.h:
+ * svg/SVGAnimatedNumber.h:
+ * svg/SVGAnimatedNumberList.h:
+ * svg/SVGAnimatedPreserveAspectRatio.h:
+ * svg/SVGAnimatedRect.h:
+ * svg/SVGAnimatedString.h:
+ * svg/SVGAnimatedTransformList.h:
+ * svg/SVGAnimatedType.cpp:
+ (WebCore::SVGAnimatedType::SVGAnimatedType):
+ * svg/SVGAnimatedType.h:
+ (WebCore::SVGAnimatedType::type):
+ * svg/SVGAnimatedTypeAnimator.h:
+ (WebCore::SVGAnimatedTypeAnimator::SVGAnimatedTypeAnimator):
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::SVGAnimationElement::SVGAnimationElement):
+ (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
+ * svg/SVGAnimationElement.h:
+ (WebCore::SVGAnimationElement::synchronizeRequiredFeatures):
+ (WebCore::SVGAnimationElement::synchronizeRequiredExtensions):
+ (WebCore::SVGAnimationElement::synchronizeSystemLanguage):
+ * svg/SVGAnimatorFactory.h:
+ (WebCore::SVGAnimatorFactory::create):
+ * svg/SVGCircleElement.cpp:
+ (WebCore::SVGCircleElement::SVGCircleElement):
+ * svg/SVGCircleElement.h:
+ (WebCore::SVGCircleElement::synchronizeRequiredFeatures):
+ (WebCore::SVGCircleElement::synchronizeRequiredExtensions):
+ (WebCore::SVGCircleElement::synchronizeSystemLanguage):
+ * svg/SVGClipPathElement.cpp:
+ (WebCore::SVGClipPathElement::SVGClipPathElement):
+ * svg/SVGClipPathElement.h:
+ (WebCore::SVGClipPathElement::synchronizeRequiredFeatures):
+ (WebCore::SVGClipPathElement::synchronizeRequiredExtensions):
+ (WebCore::SVGClipPathElement::synchronizeSystemLanguage):
+ * svg/SVGComponentTransferFunctionElement.cpp:
+ (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
+ * svg/SVGComponentTransferFunctionElement.h:
+ * svg/SVGCursorElement.cpp:
+ (WebCore::SVGCursorElement::SVGCursorElement):
+ * svg/SVGCursorElement.h:
+ (WebCore::SVGCursorElement::synchronizeRequiredFeatures):
+ (WebCore::SVGCursorElement::synchronizeRequiredExtensions):
+ (WebCore::SVGCursorElement::synchronizeSystemLanguage):
+ * svg/SVGDefsElement.cpp:
+ (WebCore::SVGDefsElement::SVGDefsElement):
+ * svg/SVGDefsElement.h:
+ (WebCore::SVGDefsElement::synchronizeRequiredFeatures):
+ (WebCore::SVGDefsElement::synchronizeRequiredExtensions):
+ (WebCore::SVGDefsElement::synchronizeSystemLanguage):
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::animatedPropertyTypeForAttribute):
+ (WebCore::SVGElement::updateAnimatedSVGAttribute):
+ (WebCore::SVGElement::localAttributeToPropertyMap):
+ (WebCore::SVGElement::synchronizeRequiredFeatures):
+ (WebCore::SVGElement::synchronizeRequiredExtensions):
+ (WebCore::SVGElement::synchronizeSystemLanguage):
+ * svg/SVGElement.h:
+ (WebCore::SVGElement::svgAttributeChanged):
+ (WebCore::SVGElement::synchronizeRequiredFeatures):
+ (WebCore::SVGElement::synchronizeRequiredExtensions):
+ (WebCore::SVGElement::synchronizeSystemLanguage):
+ * svg/SVGEllipseElement.cpp:
+ (WebCore::SVGEllipseElement::SVGEllipseElement):
+ * svg/SVGEllipseElement.h:
+ (WebCore::SVGEllipseElement::synchronizeRequiredFeatures):
+ (WebCore::SVGEllipseElement::synchronizeRequiredExtensions):
+ (WebCore::SVGEllipseElement::synchronizeSystemLanguage):
+ * svg/SVGFEBlendElement.cpp:
+ (WebCore::SVGFEBlendElement::SVGFEBlendElement):
+ * svg/SVGFEBlendElement.h:
+ * svg/SVGFEColorMatrixElement.cpp:
+ (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
+ * svg/SVGFEColorMatrixElement.h:
+ * svg/SVGFEComponentTransferElement.cpp:
+ (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
+ * svg/SVGFEComponentTransferElement.h:
+ * svg/SVGFECompositeElement.cpp:
+ (WebCore::SVGFECompositeElement::SVGFECompositeElement):
+ * svg/SVGFECompositeElement.h:
+ * svg/SVGFEConvolveMatrixElement.cpp:
+ (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement):
+ * svg/SVGFEConvolveMatrixElement.h:
+ * svg/SVGFEDiffuseLightingElement.cpp:
+ (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
+ * svg/SVGFEDiffuseLightingElement.h:
+ * svg/SVGFEDisplacementMapElement.cpp:
+ (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
+ * svg/SVGFEDisplacementMapElement.h:
+ * svg/SVGFEDropShadowElement.cpp:
+ (WebCore::SVGFEDropShadowElement::SVGFEDropShadowElement):
+ * svg/SVGFEDropShadowElement.h:
+ * svg/SVGFEFloodElement.cpp:
+ * svg/SVGFEFloodElement.h:
+ * svg/SVGFEGaussianBlurElement.cpp:
+ (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
+ * svg/SVGFEGaussianBlurElement.h:
+ * svg/SVGFEImageElement.cpp:
+ (WebCore::SVGFEImageElement::SVGFEImageElement):
+ * svg/SVGFEImageElement.h:
+ * svg/SVGFELightElement.cpp:
+ (WebCore::SVGFELightElement::SVGFELightElement):
+ * svg/SVGFELightElement.h:
+ * svg/SVGFEMergeElement.cpp:
+ * svg/SVGFEMergeElement.h:
+ * svg/SVGFEMergeNodeElement.cpp:
+ (WebCore::SVGFEMergeNodeElement::SVGFEMergeNodeElement):
+ * svg/SVGFEMergeNodeElement.h:
+ * svg/SVGFEMorphologyElement.cpp:
+ (WebCore::SVGFEMorphologyElement::SVGFEMorphologyElement):
+ * svg/SVGFEMorphologyElement.h:
+ * svg/SVGFEOffsetElement.cpp:
+ (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
+ * svg/SVGFEOffsetElement.h:
+ * svg/SVGFESpecularLightingElement.cpp:
+ (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
+ * svg/SVGFESpecularLightingElement.h:
+ * svg/SVGFETileElement.cpp:
+ (WebCore::SVGFETileElement::SVGFETileElement):
+ * svg/SVGFETileElement.h:
+ * svg/SVGFETurbulenceElement.cpp:
+ (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
+ * svg/SVGFETurbulenceElement.h:
+ * svg/SVGFilterElement.cpp:
+ (WebCore::SVGFilterElement::SVGFilterElement):
+ * svg/SVGFilterElement.h:
+ * svg/SVGFilterPrimitiveStandardAttributes.cpp:
+ (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
+ * svg/SVGFilterPrimitiveStandardAttributes.h:
+ * svg/SVGFitToViewBox.cpp:
+ * svg/SVGFitToViewBox.h:
+ * svg/SVGFontElement.cpp:
+ (WebCore::SVGFontElement::SVGFontElement):
+ * svg/SVGFontElement.h:
+ (WebCore::SVGFontElement::rendererIsNeeded):
+ * svg/SVGForeignObjectElement.cpp:
+ (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
+ * svg/SVGForeignObjectElement.h:
+ (WebCore::SVGForeignObjectElement::synchronizeRequiredFeatures):
+ (WebCore::SVGForeignObjectElement::synchronizeRequiredExtensions):
+ (WebCore::SVGForeignObjectElement::synchronizeSystemLanguage):
+ * svg/SVGGElement.cpp:
+ (WebCore::SVGGElement::SVGGElement):
+ * svg/SVGGElement.h:
+ (WebCore::SVGGElement::synchronizeRequiredFeatures):
+ (WebCore::SVGGElement::synchronizeRequiredExtensions):
+ (WebCore::SVGGElement::synchronizeSystemLanguage):
+ * svg/SVGGlyphElement.cpp:
+ * svg/SVGGlyphElement.h:
+ * svg/SVGGradientElement.cpp:
+ (WebCore::SVGGradientElement::SVGGradientElement):
+ (WebCore::SVGGradientElement::svgAttributeChanged):
+ * svg/SVGGradientElement.h:
+ * svg/SVGImageElement.cpp:
+ (WebCore::SVGImageElement::SVGImageElement):
+ * svg/SVGImageElement.h:
+ (WebCore::SVGImageElement::synchronizeRequiredFeatures):
+ (WebCore::SVGImageElement::synchronizeRequiredExtensions):
+ (WebCore::SVGImageElement::synchronizeSystemLanguage):
+ * svg/SVGLineElement.cpp:
+ (WebCore::SVGLineElement::SVGLineElement):
+ * svg/SVGLineElement.h:
+ (WebCore::SVGLineElement::synchronizeRequiredFeatures):
+ (WebCore::SVGLineElement::synchronizeRequiredExtensions):
+ (WebCore::SVGLineElement::synchronizeSystemLanguage):
+ * svg/SVGLinearGradientElement.cpp:
+ (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
+ * svg/SVGLinearGradientElement.h:
+ * svg/SVGMPathElement.cpp:
+ (WebCore::SVGMPathElement::SVGMPathElement):
+ * svg/SVGMPathElement.h:
+ * svg/SVGMarkerElement.cpp:
+ (WebCore::SVGMarkerElement::orientTypePropertyInfo):
+ (WebCore::SVGMarkerElement::SVGMarkerElement):
+ (WebCore::SVGMarkerElement::setOrientToAuto):
+ (WebCore::SVGMarkerElement::setOrientToAngle):
+ (WebCore::SVGMarkerElement::synchronizeOrientType):
+ (WebCore::SVGMarkerElement::lookupOrCreateOrientTypeWrapper):
+ (WebCore::SVGMarkerElement::orientTypeAnimated):
+ * svg/SVGMarkerElement.h:
+ * svg/SVGMaskElement.cpp:
+ (WebCore::SVGMaskElement::SVGMaskElement):
+ * svg/SVGMaskElement.h:
+ (WebCore::SVGMaskElement::synchronizeRequiredFeatures):
+ (WebCore::SVGMaskElement::synchronizeRequiredExtensions):
+ (WebCore::SVGMaskElement::synchronizeSystemLanguage):
+ * svg/SVGMissingGlyphElement.cpp:
+ * svg/SVGMissingGlyphElement.h:
+ * svg/SVGPathElement.cpp:
+ (WebCore::SVGPathElement::dPropertyInfo):
+ (WebCore::SVGPathElement::SVGPathElement):
+ (WebCore::SVGPathElement::svgAttributeChanged):
+ (WebCore::SVGPathElement::lookupOrCreateDWrapper):
+ (WebCore::SVGPathElement::synchronizeD):
+ (WebCore::SVGPathElement::pathSegList):
+ (WebCore::SVGPathElement::animatedPathSegList):
+ * svg/SVGPathElement.h:
+ (WebCore::SVGPathElement::pathByteStream):
+ (WebCore::SVGPathElement::synchronizeRequiredFeatures):
+ (WebCore::SVGPathElement::synchronizeRequiredExtensions):
+ (WebCore::SVGPathElement::synchronizeSystemLanguage):
+ * svg/SVGPathSegWithContext.h:
+ (WebCore::SVGPathSegWithContext::animatedProperty):
+ * svg/SVGPatternElement.cpp:
+ (WebCore::SVGPatternElement::SVGPatternElement):
+ * svg/SVGPatternElement.h:
+ (WebCore::SVGPatternElement::synchronizeRequiredFeatures):
+ (WebCore::SVGPatternElement::synchronizeRequiredExtensions):
+ (WebCore::SVGPatternElement::synchronizeSystemLanguage):
+ * svg/SVGPolyElement.cpp:
+ (WebCore::SVGPolyElement::pointsPropertyInfo):
+ (WebCore::SVGPolyElement::SVGPolyElement):
+ (WebCore::SVGPolyElement::parseMappedAttribute):
+ (WebCore::SVGPolyElement::synchronizePoints):
+ (WebCore::SVGPolyElement::lookupOrCreatePointsWrapper):
+ (WebCore::SVGPolyElement::points):
+ (WebCore::SVGPolyElement::animatedPoints):
+ * svg/SVGPolyElement.h:
+ (WebCore::SVGPolyElement::synchronizeRequiredFeatures):
+ (WebCore::SVGPolyElement::synchronizeRequiredExtensions):
+ (WebCore::SVGPolyElement::synchronizeSystemLanguage):
+ * svg/SVGRadialGradientElement.cpp:
+ (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
+ * svg/SVGRadialGradientElement.h:
+ * svg/SVGRectElement.cpp:
+ (WebCore::SVGRectElement::SVGRectElement):
+ * svg/SVGRectElement.h:
+ (WebCore::SVGRectElement::synchronizeRequiredFeatures):
+ (WebCore::SVGRectElement::synchronizeRequiredExtensions):
+ (WebCore::SVGRectElement::synchronizeSystemLanguage):
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::SVGSVGElement):
+ * svg/SVGSVGElement.h:
+ (WebCore::SVGSVGElement::synchronizeRequiredFeatures):
+ (WebCore::SVGSVGElement::synchronizeRequiredExtensions):
+ (WebCore::SVGSVGElement::synchronizeSystemLanguage):
+ * svg/SVGScriptElement.cpp:
+ (WebCore::SVGScriptElement::SVGScriptElement):
+ * svg/SVGScriptElement.h:
+ * svg/SVGStopElement.cpp:
+ (WebCore::SVGStopElement::SVGStopElement):
+ * svg/SVGStopElement.h:
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::SVGStyledElement):
+ (WebCore::cssPropertyToTypeMap):
+ (WebCore::SVGStyledElement::animatedPropertyTypeForAttribute):
+ * svg/SVGStyledElement.h:
+ * svg/SVGStyledTransformableElement.cpp:
+ (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
+ * svg/SVGStyledTransformableElement.h:
+ * svg/SVGSwitchElement.cpp:
+ (WebCore::SVGSwitchElement::SVGSwitchElement):
+ * svg/SVGSwitchElement.h:
+ (WebCore::SVGSwitchElement::synchronizeRequiredFeatures):
+ (WebCore::SVGSwitchElement::synchronizeRequiredExtensions):
+ (WebCore::SVGSwitchElement::synchronizeSystemLanguage):
+ * svg/SVGSymbolElement.cpp:
+ (WebCore::SVGSymbolElement::SVGSymbolElement):
+ * svg/SVGSymbolElement.h:
+ * svg/SVGTRefElement.cpp:
+ (WebCore::SVGTRefElement::SVGTRefElement):
+ * svg/SVGTRefElement.h:
+ * svg/SVGTSpanElement.cpp:
+ * svg/SVGTSpanElement.h:
+ * svg/SVGTests.cpp:
+ (WebCore::SVGTests::requiredFeaturesPropertyInfo):
+ (WebCore::SVGTests::requiredExtensionsPropertyInfo):
+ (WebCore::SVGTests::systemLanguagePropertyInfo):
+ (WebCore::SVGTests::attributeToPropertyMap):
+ (WebCore::SVGTests::synchronizeRequiredFeatures):
+ (WebCore::SVGTests::synchronizeRequiredExtensions):
+ (WebCore::SVGTests::synchronizeSystemLanguage):
+ * svg/SVGTests.h:
+ * svg/SVGTextContentElement.cpp:
+ (WebCore::SVGTextContentElement::textLengthPropertyInfo):
+ (WebCore::SVGTextContentElement::SVGTextContentElement):
+ (WebCore::SVGTextContentElement::synchronizeTextLength):
+ (WebCore::SVGTextContentElement::lookupOrCreateTextLengthWrapper):
+ (WebCore::SVGTextContentElement::textLengthAnimated):
+ * svg/SVGTextContentElement.h:
+ (WebCore::SVGTextContentElement::synchronizeRequiredFeatures):
+ (WebCore::SVGTextContentElement::synchronizeRequiredExtensions):
+ (WebCore::SVGTextContentElement::synchronizeSystemLanguage):
+ * svg/SVGTextElement.cpp:
+ (WebCore::SVGTextElement::SVGTextElement):
+ * svg/SVGTextElement.h:
+ * svg/SVGTextPathElement.cpp:
+ (WebCore::SVGTextPathElement::SVGTextPathElement):
+ * svg/SVGTextPathElement.h:
+ * svg/SVGTextPositioningElement.cpp:
+ (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
+ * svg/SVGTextPositioningElement.h:
+ * svg/SVGTitleElement.cpp:
+ * svg/SVGTitleElement.h:
+ (WebCore::SVGTitleElement::rendererIsNeeded):
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::SVGUseElement):
+ * svg/SVGUseElement.h:
+ (WebCore::SVGUseElement::synchronizeRequiredFeatures):
+ (WebCore::SVGUseElement::synchronizeRequiredExtensions):
+ (WebCore::SVGUseElement::synchronizeSystemLanguage):
+ * svg/SVGViewElement.cpp:
+ (WebCore::SVGViewElement::SVGViewElement):
+ * svg/SVGViewElement.h:
+ * svg/SVGViewSpec.cpp:
+ (WebCore::SVGViewSpec::SVGViewSpec):
+ * svg/SVGViewSpec.h:
+ * svg/properties/SVGAnimatedProperty.h:
+ (WebCore::SVGAnimatedProperty::lookupOrCreateWrapper):
+ (WebCore::SVGAnimatedProperty::lookupWrapper):
+ * svg/properties/SVGAnimatedPropertyMacros.h:
+ * svg/properties/SVGAnimatedPropertySynchronizer.h:
+ * svg/properties/SVGAttributeToPropertyMap.cpp: Added.
+ (WebCore::SVGAttributeToPropertyMap::addProperties):
+ (WebCore::SVGAttributeToPropertyMap::addProperty):
+ (WebCore::SVGAttributeToPropertyMap::animatedPropertiesForAttribute):
+ (WebCore::SVGAttributeToPropertyMap::animatedPropertyTypeForAttribute):
+ (WebCore::SVGAttributeToPropertyMap::synchronizeProperties):
+ (WebCore::SVGAttributeToPropertyMap::synchronizeProperty):
+ (WebCore::SVGAttributeToPropertyMap::animatedProperty):
+ * svg/properties/SVGAttributeToPropertyMap.h: Added.
+ (WebCore::SVGAttributeToPropertyMap::SVGAttributeToPropertyMap):
+ (WebCore::SVGAttributeToPropertyMap::~SVGAttributeToPropertyMap):
+ (WebCore::SVGAttributeToPropertyMap::isEmpty):
+ * svg/properties/SVGPropertyInfo.h: Added.
+ (WebCore::SVGPropertyInfo::SVGPropertyInfo):
+
+2011-07-09 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed build fix after r90676.
+
+ * platform/graphics/ImageBuffer.cpp:
+
+2011-07-08 Dirk Schulze <krit@webkit.org>
+
+ Refactoring luminance code in RenderSVGResourceMasker
+ https://bugs.webkit.org/show_bug.cgi?id=64146
+
+ Reviewed by Simon Fraser.
+
+ Moved luminance calculcation code to ImageBuffer. The code is doing pixel manipulations and can now get replaced
+ by platform specific algorithms in the ImmageBuffer*.cpp files.
+
+ No change of functionality. No new tests.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/ImageBuffer.cpp:
+ (WebCore::ImageBuffer::transformColorSpace):
+ (WebCore::ImageBuffer::genericConvertToLuminanceMask):
+ (WebCore::ImageBuffer::convertToLuminanceMask):
+ * platform/graphics/ImageBuffer.h:
+ * rendering/svg/RenderSVGResourceMasker.cpp:
+ (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
+
+2011-07-08 Simon Fraser <simon.fraser@apple.com>
+
+ Clean up RenderWidget::destroy() to share more code
+ https://bugs.webkit.org/show_bug.cgi?id=64138
+
+ Reviewed by James Robinson.
+
+ RenderWidget::destroy() copied code from various other
+ destroy() methods, which made code maintenance in this
+ area very risky.
+
+ Fix by adding a virtual willBeDestroyed() method, which
+ replaces most instances of destroy(). Now, only RenderWidget
+ and RenderObject implement destroy(), and each just calls
+ willBeDestroyed(). Code duplication is averted.
+
+ No behavior change, so no tests.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::willBeDestroyed):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::willBeDestroyed):
+ * rendering/RenderBox.h:
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::willBeDestroyed):
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderFullScreen.cpp:
+ (RenderFullScreenPlaceholder::willBeDestroyed):
+ (RenderFullScreen::willBeDestroyed):
+ * rendering/RenderFullScreen.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::willBeDestroyed):
+ * rendering/RenderInline.h:
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::willBeDestroyed):
+ * rendering/RenderListItem.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::willBeDestroyed):
+ (WebCore::RenderObject::destroy):
+ * rendering/RenderObject.h:
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::willBeDestroyed):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::willBeDestroyed):
+ * rendering/RenderTableCell.h:
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::willBeDestroyed):
+ * rendering/RenderTableRow.h:
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::willBeDestroyed):
+ * rendering/RenderTableSection.h:
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::willBeDestroyed):
+ * rendering/RenderText.h:
+ * rendering/RenderTextFragment.cpp:
+ (WebCore::RenderTextFragment::willBeDestroyed):
+ * rendering/RenderTextFragment.h:
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::willBeDestroyed):
+ (WebCore::RenderWidget::destroy):
+ * rendering/RenderWidget.h:
+ * rendering/svg/RenderSVGBlock.cpp:
+ (WebCore::RenderSVGBlock::willBeDestroyed):
+ * rendering/svg/RenderSVGBlock.h:
+ * rendering/svg/RenderSVGInline.cpp:
+ (WebCore::RenderSVGInline::willBeDestroyed):
+ * rendering/svg/RenderSVGInline.h:
+ * rendering/svg/RenderSVGInlineText.cpp:
+ (WebCore::RenderSVGInlineText::willBeDestroyed):
+ * rendering/svg/RenderSVGInlineText.h:
+ * rendering/svg/RenderSVGModelObject.cpp:
+ (WebCore::RenderSVGModelObject::willBeDestroyed):
+ * rendering/svg/RenderSVGModelObject.h:
+ * rendering/svg/RenderSVGResourceContainer.cpp:
+ (WebCore::RenderSVGResourceContainer::willBeDestroyed):
+ * rendering/svg/RenderSVGResourceContainer.h:
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::willBeDestroyed):
+ * rendering/svg/RenderSVGRoot.h:
+ * rendering/svg/SVGResourcesCache.h:
+
+2011-07-08 Adam Barth <abarth@webkit.org>
+
+ Unreviewed, rolling out r90662.
+ http://trac.webkit.org/changeset/90662
+ https://bugs.webkit.org/show_bug.cgi?id=64210
+
+ Introduced regressions in Chromium browser tests (Requested by
+ rniwa on #webkit).
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::selectedText):
+ (WebCore::AccessibilityRenderObject::selectedTextRange):
+ (WebCore::AccessibilityRenderObject::setSelectedTextRange):
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::setSelectionRange):
+ (WebCore::HTMLTextFormControlElement::selectionStart):
+ (WebCore::HTMLTextFormControlElement::selectionEnd):
+ (WebCore::HTMLTextFormControlElement::selection):
+ (WebCore::HTMLTextFormControlElement::restoreCachedSelection):
+ (WebCore::HTMLTextFormControlElement::selectionChanged):
+ * html/HTMLFormControlElement.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::setValue):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::selectionStart):
+ (WebCore::RenderTextControl::selectionEnd):
+ (WebCore::RenderTextControl::hasVisibleTextArea):
+ (WebCore::setSelectionRange):
+ (WebCore::setContainerAndOffsetForRange):
+ (WebCore::RenderTextControl::selection):
+ * rendering/RenderTextControl.h:
+
+2011-07-08 Brian Salomon <bsalomon@google.com>
+
+ Make GL context current before updating layer texture using skia-gpu
+ https://bugs.webkit.org/show_bug.cgi?id=64206
+
+ Reviewed by James Robinson.
+
+ Covered by existing tests (when accelerated drawing and compositing are on).
+
+ * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
+ (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
+
+2011-07-08 Tony Chang <tony@chromium.org>
+
+ Refactor override size to be a size rather than just an int
+ https://bugs.webkit.org/show_bug.cgi?id=64195
+
+ Reviewed by David Hyatt.
+
+ Also convert to LayoutSize and LayoutUnit.
+
+ Covered by existing tests.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::overrideSize): Pass in a LayoutSize.
+ (WebCore::RenderBox::setOverrideSize):
+ (WebCore::RenderBox::clearOverrideSize): New method for clearing the
+ override size (previous we would pass in -1)
+ (WebCore::RenderBox::overrideWidth):
+ (WebCore::RenderBox::overrideHeight):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::computePercentageLogicalHeight):
+ (WebCore::RenderBox::availableLogicalHeightUsing):
+ * rendering/RenderBox.h:
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::gatherFlexChildrenInfo):
+ (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
+ (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
+ (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::setOverrideSizeFromRowHeight):
+ * rendering/RenderTableCell.h: Remove setOverrideSize since it was
+ only called in one place to clear the override size. Inline this
+ logic instead.
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::calcRowLogicalHeight):
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::destroy):
+
+2011-07-08 Emil A Eklund <eae@chromium.org>
+
+ Switch pointInContainer and accumulatedOffset to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=64112
+
+ Reviewed by Eric Seidel.
+
+ Convert remaining IntPoint versions of the pointInContainer and
+ accumulatedOffset arguments to the new layout abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::addNodeToRectBasedTestResult):
+ * rendering/HitTestResult.h:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::isPointInOverflowControl):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::pushContentsClip):
+ (WebCore::RenderBox::popContentsClip):
+ * rendering/RenderBox.h:
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
+ * rendering/RenderEmbeddedObject.h:
+ * rendering/RenderLineBoxList.cpp:
+ (WebCore::RenderLineBoxList::hitTest):
+ * rendering/RenderLineBoxList.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::isPointInOverflowControl):
+ * rendering/RenderListBox.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::hitTest):
+ * rendering/RenderObject.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::hitInnerTextElement):
+ * rendering/RenderTextControl.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::nodeAtPoint):
+
+2011-07-07 Ryosuke Niwa <rniwa@webkit.org>
+
+ Move selection related code from RenderTextControl to HTMLTextFormControlElement
+ https://bugs.webkit.org/show_bug.cgi?id=64133
+
+ Reviewed by Dimitri Glazkov.
+
+ Moved selectionStart, selectionEnd, hasVisibleTextArea, setSelectionRange, setContainerAndOffsetForRange
+ and selection from RenderTextControl.cpp to HTMLFormControlElement.cpp.
+
+ This refactoring removes RenderTextControl's dependency on FrameSelection.
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::selectedText): Calls HTMLTextFromControl::selectedText.
+ (WebCore::AccessibilityRenderObject::selectedTextRange): Calls selectionStart and selectionEnd.
+ (WebCore::AccessibilityRenderObject::setSelectedTextRange): Ditto.
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::selectedText): Extracted from AccessibilityRenderObject::selectedText.
+ (WebCore::hasVisibleTextArea):
+ (WebCore::HTMLTextFormControlElement::setSelectionRange): Merged with the function of the same name in
+ RenderTextControl.
+ (WebCore::HTMLTextFormControlElement::selectionStart): Ditto.
+ (WebCore::HTMLTextFormControlElement::selectionEnd): Ditto.
+ (WebCore::setContainerAndOffsetForRange): Moved from RenderTextControl.cpp
+ (WebCore::HTMLTextFormControlElement::selection): Merged with the function of the same name in RenderTextControl.
+ (WebCore::HTMLTextFormControlElement::selectionChanged): Calls selectionStart and selectionEnd.
+ * html/HTMLFormControlElement.h:
+ (WebCore::HTMLTextFormControlElement::restoreCachedSelection): Moved from HTMLFormControlElement.cpp now that
+ all functions are self-contained in HTMLTextFormControlElement.
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::setValue): Calls setSelectionRange.
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::textFormControlElement): Added.
+ * rendering/RenderTextControl.h:
+
+2011-07-08 Mike Reed <reed@google.com>
+
+ remove (empty) indirection between GraphicsContextPlatformPrivate and PlatformContextSkia
+ https://bugs.webkit.org/show_bug.cgi?id=64178
+
+ Reviewed by Stephen White.
+
+ No new tests. no functionality change, other than removing an indirection that is not needed
+
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/skia/GraphicsContextPlatformPrivate.h: Removed.
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::platformContext):
+
+2011-07-08 Jeffrey Pfau <jpfau@apple.com>
+
+ Add framework for a new/dummy XMLDocumentParser
+ https://bugs.webkit.org/show_bug.cgi?id=63955
+
+ Reviewed by Adam Barth.
+
+ Added a dummy framework NewXMLDocumentParser
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/Document.cpp:
+ (WebCore::Document::createParser):
+ * xml/parser/NewXMLDocumentParser.cpp: Added.
+ (WebCore::NewXMLDocumentParser::NewXMLDocumentParser):
+ (WebCore::NewXMLDocumentParser::textPosition):
+ (WebCore::NewXMLDocumentParser::lineNumber):
+ (WebCore::NewXMLDocumentParser::insert):
+ (WebCore::NewXMLDocumentParser::append):
+ (WebCore::NewXMLDocumentParser::finish):
+ (WebCore::NewXMLDocumentParser::detach):
+ (WebCore::NewXMLDocumentParser::hasInsertionPoint):
+ (WebCore::NewXMLDocumentParser::finishWasCalled):
+ (WebCore::NewXMLDocumentParser::processingData):
+ (WebCore::NewXMLDocumentParser::prepareToStopParsing):
+ (WebCore::NewXMLDocumentParser::stopParsing):
+ (WebCore::NewXMLDocumentParser::isWaitingForScripts):
+ (WebCore::NewXMLDocumentParser::isExecutingScript):
+ (WebCore::NewXMLDocumentParser::executeScriptsWaitingForStylesheets):
+ * xml/parser/NewXMLDocumentParser.h: Added.
+ (WebCore::NewXMLDocumentParser::create):
+
+2011-07-08 David Reveman <reveman@chromium.org>
+
+ Remove unused function parameters.
+
+ Reviewed by Ryosuke Niwa.
+
+ * platform/graphics/gpu/TilingData.cpp:
+ (WebCore::TilingData::textureOffset):
+
+2011-07-08 David Reveman <reveman@chromium.org>
+
+ Reviewed by Stephen White.
+
+ [Chromium] Edge anti-aliasing for composited layers.
+ https://bugs.webkit.org/show_bug.cgi?id=61388
+
+ Add transparent outer border to tiled layers and adjust vertex
+ coordinates so that use of a bilinear filter creates a smooth
+ layer edge.
+
+ Tests: platform/chromium/compositing/tiny-layer-rotated.html
+ platform/chromium/compositing/huge-layer-rotated.html (existing)
+ TilingDataTest in webkit_unit_tests
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ Change maxUntiledSize to 510 to ensure that tiles are not greater
+ than 512 with outer borders.
+ (WebCore::ContentLayerChromium::updateLayerSize): We can't use the
+ layer size as tile size when we want to avoid tiling as this will
+ not be enough space to include possible outer borders. We instead use
+ an empty size, which allows the tiler to automatically adjust the
+ tile size to be large enough for the layer to fit in one tile.
+ (WebCore::ContentLayerChromium::createTilerIfNeeded):
+ (WebCore::ContentLayerChromium::setIsMask): Don't use border texels
+ for layer used as mask.
+
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ (WebCore::ContentLayerChromium::m_borderTexels) Added.
+
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::tileTexRect): Added.
+ (WebCore::LayerTilerChromium::tileLayerRect): m_tileSize is no
+ longer the correct layer size. Size of bounds with border should
+ be the correct layer size.
+ (WebCore::LayerTilerChromium::growLayerToContain): Adjust texture
+ size to include outer borders and handle empty m_tileSize.
+ (WebCore::LayerTilerChromium::invalidateRect): Use size of rectangle
+ returned by tileTexRect instead of m_tileSize for texture size.
+ (WebCore::LayerTilerChromium::prepareToUpdate): Ditto.
+ (WebCore::LayerTilerChromium::draw): Compute and intersect tile edges
+ instead of using tile coordinates directly. Edges are adjusted to
+ include outer borders and make sure all partially covered pixels are
+ processed.
+ (WebCore::LayerTilerChromium::drawTexturedQuad): Pass quad to
+ shader using point uniform.
+ (WebCore::LayerTilerChromium::invalidateRect): Invalidate old layer
+ area to clear any contents left from previous layer size.
+
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ (WebCore::LayerTilerChromium::tileTexRect) Added.
+ (WebCore::LayerTilerChromium::drawTexturedQuad): Add quad parameter.
+
+ * platform/graphics/chromium/ShaderChromium.cpp:
+ (WebCore::VertexShaderPosTexTransform::getShaderString) Get X/Y vertex
+ components from point uniform.
+ (WebCore::VertexShaderPosTexTransform::VertexShaderPosTexTransform)
+ Added point uniform.
+ (WebCore::VertexShaderPosTexTransform::init) Ditto.
+ (WebCore::VertexShaderPosTexTransform::pointLocation) Added.
+
+ * platform/graphics/chromium/ShaderChromium.h:
+ (WebCore::VertexShaderPosTexTransform::pointLocation) Added.
+
+ * platform/graphics/gpu/TilingData.cpp:
+ (WebCore::TilingData::tileBoundsWithOuterBorder): Added.
+ (WebCore::TilingData::computeNumTiles): Adjust for outer border.
+ (WebCore::TilingData::tileXIndexFromSrcCoord): Ditto.
+ (WebCore::TilingData::tileYIndexFromSrcCoord): Ditto.
+ (WebCore::TilingData::tileSizeX): Ditto.
+ (WebCore::TilingData::tileSizeY): Ditto.
+ (WebCore::TilingData::intersectDrawQuad): Ditto.
+ (WebCore::TilingData::textureOffset): Ditto.
+
+ * platform/graphics/gpu/TilingData.h:
+ (WebCore::TilingData::tileBoundsWithOuterBorder): Added.
+
+2011-07-08 Mike Reed <reed@google.com>
+
+ [skia] don't rely on lockPixels failure to detect gpu-backed device (in prep for skia roll)
+ https://bugs.webkit.org/show_bug.cgi?id=64162
+
+ Reviewed by Stephen White.
+
+ No new tests. preparing for skia roll, where lockPixels always succeeds (but slowly for gpu-backed)
+
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::putImageData):
+
+2011-07-08 Chang Shu <cshu@webkit.org>
+
+ Update calling sites after function renamed.
+ https://bugs.webkit.org/show_bug.cgi?id=59114
+
+ Reviewed by Alexey Proskuryakov.
+
+ No new tests, just refactoring.
+
+ * editing/visible_units.cpp:
+ (WebCore::previousBoundary):
+ (WebCore::nextBoundary):
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::setTextInternal):
+
+2011-07-08 Mihnea Ovidenie <mihnea@adobe.com>
+
+ [CSSRegions]Parse content: -webkit-from-flow
+ https://bugs.webkit.org/show_bug.cgi?id=63133
+
+ Reviewed by David Hyatt.
+
+ Test: fast/regions/content-webkit-from-flow-parsing.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::contentToCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseContent):
+ (WebCore::CSSParser::parseFromFlowContent):
+ * css/CSSParser.h:
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::cleanup):
+ (WebCore::CSSPrimitiveValue::getStringValue):
+ (WebCore::CSSPrimitiveValue::cssText):
+ * css/CSSPrimitiveValue.h:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::regionThread):
+ (WebCore::InheritedFlags::setRegionThread):
+ (WebCore::InheritedFlags::initialRegionThread):
+ * rendering/style/StyleRareNonInheritedData.cpp:
+ (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
+ (WebCore::StyleRareNonInheritedData::operator==):
+ * rendering/style/StyleRareNonInheritedData.h:
+
+2011-07-08 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: NetworkPanel search failed if the matched sting is in the query part of url
+ https://bugs.webkit.org/show_bug.cgi?id=64167
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype._matchResource):
+ (WebInspector.NetworkPanel.prototype._highlightNthMatchedResource):
+ (WebInspector.NetworkDataGridNode.prototype._refreshNameCell):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.prototype.get folder):
+
+2011-07-08 Benjamin Poulain <benjamin@webkit.org>
+
+ [Qt] Enable HTTP Pipelining by default
+ https://bugs.webkit.org/show_bug.cgi?id=64169
+
+ Reviewed by Andreas Kling.
+
+ QNetworkAccessManager disables HTTP pipelining by default. We enable it by
+ setting an attribute on the request.
+
+ * platform/network/qt/ResourceRequestQt.cpp:
+ (WebCore::ResourceRequest::toNetworkRequest):
+
+2011-07-08 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: CSS inspector gets confused about specificity of !important properties
+ https://bugs.webkit.org/show_bug.cgi?id=64074
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype._markUsedProperties):
+
+2011-07-08 Alexander Pavlov <apavlov@chromium.org>
+
+ [Chromium] Unreviewed, clang build fix.
+
+ * inspector/InspectorStyleTextEditor.h:
+
+2011-07-08 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: add support for drag'n'drop of non-elements (comments, text, etc.)
+ https://bugs.webkit.org/show_bug.cgi?id=64163
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/Inspector.json:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::moveTo):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline.prototype._isValidDragSourceOrTarget):
+
+2011-07-08 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: secure access to extensions API
+ https://bugs.webkit.org/show_bug.cgi?id=64080
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.Panels.prototype.create):
+ (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setPage):
+ * inspector/front-end/ExtensionPanel.js:
+ (WebInspector.ExtensionPanel):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._onCreatePanel):
+ (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
+ (WebInspector.ExtensionServer.prototype._addExtensions):
+ (WebInspector.ExtensionServer.prototype._onWindowMessage):
+ (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
+ (WebInspector.ExtensionServer.prototype._expandResourcePath):
+ (WebInspector.ExtensionServer.prototype._normalizePath):
+
+2011-07-08 Adam Barth <abarth@webkit.org>
+
+ Unreviewed, rolling out r90615.
+ http://trac.webkit.org/changeset/90615
+ https://bugs.webkit.org/show_bug.cgi?id=64158
+
+ broke inspector/extensions/extensions.html (Requested by caseq
+ on #webkit).
+
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.Panels.prototype.create):
+ (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setPage):
+ (WebInspector.injectedExtensionAPI.expandURL):
+ * inspector/front-end/ExtensionPanel.js:
+ (WebInspector.ExtensionPanel):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._onCreatePanel):
+ (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
+ (WebInspector.ExtensionServer.prototype._addExtensions):
+ (WebInspector.ExtensionServer.prototype._onWindowMessage):
+ (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
+
+2011-07-07 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: Adding CSS properties results in messy style rules
+ https://bugs.webkit.org/show_bug.cgi?id=63622
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/styles/styles-formatting.html
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSPropertySourceData.cpp:
+ (WebCore::SourceRange::length):
+ * css/CSSPropertySourceData.h:
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyle::InspectorStyle):
+ (WebCore::InspectorStyle::setPropertyText):
+ (WebCore::InspectorStyle::toggleProperty):
+ (WebCore::InspectorStyle::applyStyleText):
+ (WebCore::InspectorStyle::newLineAndWhitespaceDelimiters):
+ * inspector/InspectorStyleSheet.h:
+ * inspector/InspectorStyleTextEditor.cpp: Added.
+ (WebCore::InspectorStyleTextEditor::InspectorStyleTextEditor):
+ (WebCore::InspectorStyleTextEditor::insertProperty):
+ (WebCore::InspectorStyleTextEditor::replaceProperty):
+ (WebCore::InspectorStyleTextEditor::removeProperty):
+ (WebCore::InspectorStyleTextEditor::enableProperty):
+ (WebCore::InspectorStyleTextEditor::disableProperty):
+ (WebCore::InspectorStyleTextEditor::disabledIndexByOrdinal):
+ (WebCore::InspectorStyleTextEditor::shiftDisabledProperties):
+ (WebCore::InspectorStyleTextEditor::internalReplaceProperty):
+ * inspector/InspectorStyleTextEditor.h: Added.
+ (WebCore::InspectorStyleTextEditor::styleText):
+
+2011-07-08 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: Quotes are rendered as &quot; in the DOM tree
+ https://bugs.webkit.org/show_bug.cgi?id=64154
+
+ Reviewed by Yury Semikhatsky.
+
+ Since we currently rely on setting textContent rather than innerHTML for the DOM tree elements,
+ escapeHTML() calls unnecessarily HTML-escape certain characters in the DOM tree contents.
+
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement.prototype._buildAttributeDOM):
+ ():
+
+2011-07-08 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Remove unused code from InspectorAgent.h.
+ https://bugs.webkit.org/show_bug.cgi?id=64120
+
+ Reviewed by Joseph Pecoraro.
+
+ * inspector/InspectorAgent.h:
+
+2011-07-08 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: secure access to extensions API
+ https://bugs.webkit.org/show_bug.cgi?id=64080
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.Panels.prototype.create):
+ (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setPage):
+ * inspector/front-end/ExtensionPanel.js:
+ (WebInspector.ExtensionPanel):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._onCreatePanel):
+ (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
+ (WebInspector.ExtensionServer.prototype._addExtensions):
+ (WebInspector.ExtensionServer.prototype._onWindowMessage):
+ (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
+ (WebInspector.ExtensionServer.prototype._expandResourcePath):
+ (WebInspector.ExtensionServer.prototype._normalizePath):
+
+2011-07-08 Yury Semikhatsky <yurys@chromium.org>
+
+ Web Inspector: typing undefined = 1 in console crashes browser
+ https://bugs.webkit.org/show_bug.cgi?id=64155
+
+ Do not access undefined value directly when producing JSON objects as undefined
+ may be overriden by the inspected page.
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/console/console-eval-undefined-override.html
+
+ * inspector/InjectedScriptSource.js:
+ (.):
+ ():
+
+2011-07-07 Emil A Eklund <eae@chromium.org>
+
+ Switch HitTestResult to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=64131
+
+ Reviewed by Eric Seidel.
+
+ No new tests, no functionality changes.
+
+ * page/MouseEventWithHitTestResults.cpp:
+ (WebCore::MouseEventWithHitTestResults::localPoint):
+ * page/MouseEventWithHitTestResults.h:
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::HitTestResult):
+ (WebCore::HitTestResult::addNodeToRectBasedTestResult):
+ (WebCore::HitTestResult::rectForPoint):
+ * rendering/HitTestResult.h:
+ (WebCore::HitTestResult::point):
+ (WebCore::HitTestResult::localPoint):
+ (WebCore::HitTestResult::setPoint):
+ (WebCore::HitTestResult::setLocalPoint):
+ (WebCore::HitTestResult::rectForPoint):
+
+2011-07-07 Levi Weintraub <leviw@chromium.org>
+
+ Switch remaining paint functions to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=64116
+
+ Reviewed by Eric Seidel.
+
+ Switching all functions with IntPoint paintOffsets to the new Layout types.
+
+ No new tests, no functionality changes.
+
+ * rendering/EllipsisBox.cpp:
+ (WebCore::EllipsisBox::paint):
+ (WebCore::EllipsisBox::paintSelection):
+ * rendering/EllipsisBox.h:
+ * rendering/InlineBox.cpp:
+ (WebCore::InlineBox::paint):
+ * rendering/InlineBox.h:
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::paint):
+ * rendering/InlineFlowBox.h:
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::paint):
+ (WebCore::InlineTextBox::paintCustomHighlight):
+ * rendering/InlineTextBox.h:
+ * rendering/LayoutTypes.h:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::paintColumnRules):
+ (WebCore::RenderBlock::paintColumnContents):
+ (WebCore::RenderBlock::paintContents):
+ (WebCore::RenderBlock::paintChildren):
+ (WebCore::RenderBlock::paintCaret):
+ (WebCore::RenderBlock::paintObject):
+ (WebCore::RenderBlock::paintFloats):
+ (WebCore::RenderBlock::paintEllipsisBoxes):
+ (WebCore::RenderBlock::paintContinuationOutlines):
+ (WebCore::RenderBlock::paintSelection):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintCustomHighlight):
+ * rendering/RenderBox.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::paintOutline):
+ (WebCore::RenderInline::paintOutlineForLine):
+ * rendering/RenderInline.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::paintOverflowControls):
+ (WebCore::RenderLayer::paintScrollCorner):
+ (WebCore::RenderLayer::paintResizer):
+ * rendering/RenderLayer.h:
+ * rendering/RenderLineBoxList.cpp:
+ (WebCore::RenderLineBoxList::paint):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::paintScrollbar):
+ (WebCore::RenderListBox::paintItemForeground):
+ (WebCore::RenderListBox::paintItemBackground):
+ * rendering/RenderListBox.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::paintFocusRing):
+ (WebCore::RenderObject::paintOutline):
+ * rendering/RenderObject.h:
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::shouldPaint):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::RenderScrollbarPart::paintIntoRect):
+ * rendering/RenderScrollbarPart.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::paintBackgroundsBehindCell):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::paintCell):
+ * rendering/RenderTableSection.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::paintPlaceholder):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::paintEllipsisBox):
+ (WebCore::RootInlineBox::paintCustomHighlight):
+ (WebCore::RootInlineBox::paint):
+ * rendering/RootInlineBox.h:
+ * rendering/mathml/RenderMathMLBlock.cpp:
+ (WebCore::RenderMathMLBlock::paint):
+ * rendering/mathml/RenderMathMLFraction.cpp:
+ (WebCore::RenderMathMLFraction::paint):
+ * rendering/mathml/RenderMathMLRoot.cpp:
+ (WebCore::RenderMathMLRoot::paint):
+ * rendering/mathml/RenderMathMLSquareRoot.cpp:
+ (WebCore::RenderMathMLSquareRoot::paint):
+
2011-07-07 Steve VanDeBogart <vandebo@chromium.org>
Work around Skia PDF's lack of inverted path support.
@@ -19,6 +6491,8231 @@
* platform/graphics/skia/PlatformContextSkia.cpp:
(WebCore::PlatformContextSkia::clipPathAntiAliased):
+2011-07-07 Emil A Eklund <eae@chromium.org>
+
+ Switch rendering tree selection code to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63762
+
+ Reviewed by Eric Seidel.
+
+ Switch selection getters and selection gap calculation methods over to
+ new layout abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::selectionTop):
+ (WebCore::InlineTextBox::selectionBottom):
+ (WebCore::InlineTextBox::selectionHeight):
+ (WebCore::InlineTextBox::isSelected):
+ * rendering/InlineTextBox.h:
+ * rendering/RenderBR.h:
+ (WebCore::RenderBR::selectionRectForRepaint):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::selectionGapRectsForRepaint):
+ (WebCore::RenderBlock::selectionGaps):
+ (WebCore::RenderBlock::inlineSelectionGaps):
+ (WebCore::RenderBlock::blockSelectionGaps):
+ (WebCore::RenderBlock::blockSelectionGap):
+ (WebCore::RenderBlock::logicalLeftSelectionGap):
+ (WebCore::RenderBlock::logicalRightSelectionGap):
+ (WebCore::RenderBlock::logicalLeftSelectionOffset):
+ (WebCore::RenderBlock::logicalRightSelectionOffset):
+ (WebCore::RenderBlock::positionForPointWithInlineChildren):
+ (WebCore::RenderBlock::desiredColumnWidth):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::selectionRectForRepaint):
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::selectionRectForRepaint):
+ * rendering/RenderListMarker.h:
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::selectionRect):
+ (WebCore::RenderObject::selectionRectForRepaint):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::selectionRectForRepaint):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderSelectionInfo.h:
+ (WebCore::RenderSelectionInfo::RenderSelectionInfo):
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::selectionRectForRepaint):
+ * rendering/RenderText.h:
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::selectionTop):
+ (WebCore::RootInlineBox::selectionBottom):
+ * rendering/RootInlineBox.h:
+ (WebCore::RootInlineBox::selectionHeight):
+
+2011-07-07 Gavin Peters <gavinp@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ fast/dom/HTMLLinkElement/link-and-subresource-test.html is flaky on chromium debug bots
+ https://bugs.webkit.org/show_bug.cgi?id=60097
+
+ The culprit was that CachedResource:stopLoading() was using *this
+ after a call to checkNotify(), which isn't kosher. This patch
+ uses a CachedResourceHandle to keep the CachedResource alive.
+
+ The test is a very close copy of the eponymous
+ link-and-subresource-test.html, only substituting invalid
+ resources for the valid ones in that test. The reproduction is
+ timing related, and happens much more consistantly with an invalid
+ resource for whatever reason.
+ Test: fast/dom/HTMLLinkElement/link-and-subresource-test-nonexistent.html
+
+ * loader/cache/CachedResource.cpp:
+ (WebCore::CachedResource::stopLoading):
+
+2011-07-07 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ Use v8::AdjustAmountOfExternalAllocatedMemory for ArrayBuffers
+ https://bugs.webkit.org/show_bug.cgi?id=42912
+
+ This calls v8's AdjustAmountOfExternalAllocatedMemory when ArrayBuffers are allocated/deallocated so that V8's
+ garbage collection heuristics can account for the memory held by these objects. On the new test page, this
+ reduces the peak memory use from 5BG+ (or a crash in 32-bit systems) to <300MB.
+
+ Test: WebCore/manual-tests/array-buffer-memory.html
+
+ * html/canvas/ArrayBuffer.cpp:
+ (WebCore::ArrayBuffer::~ArrayBuffer):
+ (WebCore::ArrayBuffer::tryAllocate):
+
+2011-07-07 Ryosuke Niwa <rniwa@webkit.org>
+
+ Move all code related to cachedSelection to HTMLTextFormControlElement
+ https://bugs.webkit.org/show_bug.cgi?id=64118
+
+ Reviewed by Alexey Proskuryakov.
+
+ Moved m_cachedSelectionStart and m_cachedSelectionEnd from HTMLInputElement
+ and HTMLTextAreaElement to HTMLTextFormControlElement
+
+ Also removed cached selection related functions from RenderTextControl,
+ RenderTextControlSingleLine, and RenderTextControlMultiLine because they were
+ merely providing wrapper functions to enable polymorphism between
+ input and textarea elements and their WML equivalents.
+
+ * editing/FrameSelection.cpp:
+ (WebCore::FrameSelection::notifyRendererOfSelectionChange): Calls HTMLTextFormControlElement's
+ selectionChanged instead of RenderTextControl's.
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::HTMLTextFormControlElement): Initialize
+ m_cachedSelectionStart and m_cachedSelectionEnd.
+ (WebCore::HTMLTextFormControlElement::selectionStart):
+ (WebCore::HTMLTextFormControlElement::selectionEnd):
+ (WebCore::HTMLTextFormControlElement::selection):
+ (WebCore::HTMLTextFormControlElement::restoreCachedSelection): Added.
+ (WebCore::HTMLTextFormControlElement::selectionChanged): Extracted from
+ RenderTextControl::selectionChanged.
+ * html/HTMLFormControlElement.h:
+ (WebCore::HTMLTextFormControlElement::cacheSelection): Extracted from HTMLInputElement
+ and HTMLTextAreaElement.
+ (WebCore::HTMLTextFormControlElement::hasCachedSelectionStart): Added.
+ (WebCore::HTMLTextFormControlElement::hasCachedSelectionEnd): Added.
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::HTMLInputElement):
+ (WebCore::HTMLInputElement::updateFocusAppearance):
+ * html/HTMLInputElement.h:
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
+ (WebCore::HTMLTextAreaElement::updateFocusAppearance):
+ * html/HTMLTextAreaElement.h:
+ (WebCore::HTMLTextAreaElement::isEmptyValue):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::setSelectionRange):
+ * rendering/RenderTextControl.h:
+ * rendering/RenderTextControlMultiLine.cpp:
+ * rendering/RenderTextControlMultiLine.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ * rendering/RenderTextControlSingleLine.h:
+
+2011-07-07 Emil A Eklund <eae@chromium.org>
+
+ Switch addFocusRingRects to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=64114
+
+ Reviewed by Eric Seidel.
+
+ No new tests, no functionality changes.
+
+ * rendering/LayoutTypes.h:
+ (WebCore::flooredLayoutPoint):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::addFocusRingRects):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::addFocusRingRects):
+ * rendering/RenderBox.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::addFocusRingRects):
+ * rendering/RenderInline.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::addFocusRingRects):
+ * rendering/RenderListBox.h:
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::addFocusRingRects):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::addFocusRingRects):
+ * rendering/RenderTextControl.h:
+ * rendering/svg/RenderSVGContainer.cpp:
+ (WebCore::RenderSVGContainer::addFocusRingRects):
+ * rendering/svg/RenderSVGContainer.h:
+ * rendering/svg/RenderSVGImage.cpp:
+ (WebCore::RenderSVGImage::addFocusRingRects):
+ * rendering/svg/RenderSVGImage.h:
+ * rendering/svg/RenderSVGPath.cpp:
+ (WebCore::RenderSVGPath::addFocusRingRects):
+ * rendering/svg/RenderSVGPath.h:
+
+2011-07-06 Adrienne Walker <enne@google.com>
+
+ [chromium] Reduce compositor texture memory by skipping layers and clipping surfaces
+ https://bugs.webkit.org/show_bug.cgi?id=64052
+
+ Reviewed by James Robinson.
+
+ Layers and surfaces that are entirely transparent are now skipped.
+ Parent scissor rects are now applied to the content rect of surfaces
+ so that offscreen surfaces can be skipped.
+
+ Landing this for vangelis@chromium.org.
+
+ Covered by existing tests.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::calculateVisibleRect):
+ (WebCore::calculateVisibleLayerRect):
+ (WebCore::LayerRendererChromium::paintLayerContents):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
+ (WebCore::LayerRendererChromium::updateCompositorResources):
+ (WebCore::LayerRendererChromium::drawLayer):
+ * platform/graphics/chromium/RenderSurfaceChromium.cpp:
+ (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
+
+2011-07-07 Adam Barth <abarth@webkit.org>
+
+ Unreviewed, rolling out r90581.
+ http://trac.webkit.org/changeset/90581
+ https://bugs.webkit.org/show_bug.cgi?id=64124
+
+ Broke a bunch of inspector tests (Requested by ojan on
+ #webkit).
+
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.Panels.prototype.create):
+ (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setPage):
+ (WebInspector.injectedExtensionAPI.expandURL):
+ * inspector/front-end/ExtensionPanel.js:
+ (WebInspector.ExtensionPanel):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._onCreatePanel):
+ (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
+ (WebInspector.ExtensionServer.prototype._addExtensions):
+ (WebInspector.ExtensionServer.prototype._onWindowMessage):
+ (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
+
+2011-07-07 Adrienne Walker <enne@google.com>
+
+ [chromium] Fix crash when compositing gets disabled mid-paint
+ https://bugs.webkit.org/show_bug.cgi?id=64119
+
+ Reviewed by James Robinson.
+
+ WebKit paint can disable compositing and call setRootLayer(0). Adding
+ a check for this in drawLayers prevents a null pointer deref.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawLayers):
+
+2011-07-07 Dirk Schulze <krit@webkit.org>
+
+ SVGAnimateTransform does not support calcMode=discrete
+ https://bugs.webkit.org/show_bug.cgi?id=63914
+
+ Reviewed by Rob Buis.
+
+ CalcMode discrete specifies that the animation function will jump from one value to the next without any interpolation.
+ Implemented calcMode discrete by checking current progress of animation. If we are in the first half of the animation,
+ we use the start value of the aniamtion, end value for the second half of the animation. The key time at 50% is used on
+ all other animations as well as on other SVG viewers.
+
+ Added a manual test. DRT crashes on an automated test with the SVG animation API. Opened a new bug report: 64104.
+
+ * manual-tests/svg-animateTransform-calcMode-discrete.svg: Added.
+ * svg/SVGAnimateTransformElement.cpp:
+ (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
+
+2011-07-07 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Rob Buis.
+
+ SVGAnimatedPath needs fallback for 'by' animation
+ https://bugs.webkit.org/show_bug.cgi?id=63865
+
+ Added fallback to 'to' animation for 'by' animated SVGAnimatedPathAnimator.
+
+ Clenup of SVGAnimateElement. Removed all switches since we support all AnimatedTypes
+ with the exception of AnimatedEnumeration. AnimatedEnumeration gets animated as AnimatedString at the moment.
+
+ Test: svg/animations/svgpath-animation-1.html
+
+ * svg/SVGAnimateElement.cpp:
+ (WebCore::getPropertyValue):
+ (WebCore::inheritsFromProperty):
+ (WebCore::attributeValueIsCurrentColor):
+ (WebCore::SVGAnimateElement::adjustForCurrentColor):
+ (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateElement::calculateFromAndToValues):
+ (WebCore::SVGAnimateElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateElement::resetToBaseValue):
+ (WebCore::SVGAnimateElement::applyResultsToTarget):
+ (WebCore::SVGAnimateElement::calculateDistance):
+ * svg/SVGAnimatedPath.cpp:
+ (WebCore::SVGAnimatedPathAnimator::calculateFromAndByValues):
+
+2011-07-07 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: secure access to extensions API
+ https://bugs.webkit.org/show_bug.cgi?id=64080
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.Panels.prototype.create):
+ (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setPage):
+ * inspector/front-end/ExtensionPanel.js:
+ (WebInspector.ExtensionPanel):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._onCreatePanel):
+ (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
+ (WebInspector.ExtensionServer.prototype._addExtensions):
+ (WebInspector.ExtensionServer.prototype._onWindowMessage):
+ (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
+ (WebInspector.ExtensionServer.prototype._expandResourcePath):
+
+2011-07-07 Kyusun Kim <maniagoon@company100.net>
+
+ The return value of SharedBuffer::createWithContentsOfFile must have valid m_size.
+ https://bugs.webkit.org/show_bug.cgi?id=63313
+
+ Reviewed by Eric Seidel.
+
+ * platform/posix/SharedBufferPOSIX.cpp:
+ (WebCore::SharedBuffer::createWithContentsOfFile):
+
+2011-07-07 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/9737435> Re-enable -webkit-column-break-inside: avoid
+ https://bugs.webkit.org/show_bug.cgi?id=64102
+
+ Reviewed by Simon Fraser.
+
+ -webkit-column-break-inside: avoid was disabled in r62632 along with page-break-inside: avoid.
+ The latter remains disabled.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::adjustForUnsplittableChild): Treat the child as unsplittable if
+ '-webkit-column-break-inside: avoid' was specified.
+
+2011-07-07 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: visual regressions in network panel
+ https://bugs.webkit.org/show_bug.cgi?id=64089
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/networkPanel.css:
+ (.data-grid.network-log-grid tr.filler td):
+ (.network.panel .sidebar):
+
+2011-07-07 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Reviewed by David Hyatt.
+
+ Partial layout when a flex-box has visibility: collapse
+ https://bugs.webkit.org/show_bug.cgi?id=63776
+
+ Tests: fast/flexbox/crash-button-input-autofocus.html
+ fast/flexbox/crash-button-keygen.html
+ fast/flexbox/crash-button-relayout.html
+
+ The issue is that FlexBoxIterator would skip any child if it has visibility: collapsed.
+ However if one of the child is anonymous, it may wrap some other child that would be skipped.
+ Now FlexBoxIterator is called during the layout phase and thus some nodes would not relayouted
+ as expected.
+
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::FlexBoxIterator::next): When iterating, don't skip anonymous content as there may
+ be real content hiding below.
+
+2011-07-07 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: URL links in styles open new tab instead of showing resources panel.
+ https://bugs.webkit.org/show_bug.cgi?id=64090
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
+
+2011-07-07 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: active panel does not receive resize event when drawer is resized
+ https://bugs.webkit.org/show_bug.cgi?id=64094
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/Drawer.js:
+ (WebInspector.Drawer.prototype._statusBarDragging):
+
+2011-07-07 Pavel Feldman <pfeldman@chromium.org>
+
+ Web Inspector: prevent default action during drag'n'drop in the Elements panel.
+ https://bugs.webkit.org/show_bug.cgi?id=64081
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline):
+ (WebInspector.ElementsTreeOutline.prototype._ondragstart):
+ (WebInspector.ElementsTreeOutline.prototype._ondragover):
+ (WebInspector.ElementsTreeOutline.prototype._ondragend):
+ * inspector/front-end/treeoutline.js:
+ (TreeOutline.prototype.treeElementFromPoint):
+
+2011-07-07 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Move remaining enums out of SVG*Element classes
+ https://bugs.webkit.org/show_bug.cgi?id=64075
+
+ Reviewed by Dirk Schulze.
+
+ Move remaining enums out of SVG*Element classes. This is a preparation patch for bug 63797.
+ Also move the SVGPropertyTraits template specializations for enum types before the class
+ definition in the header, otherwhise we can't use SVGPropertyTraits<FooType>::fromString/toString
+ in the DECLARE_ANIMATED* macros, which is needed soon.
+
+ No new tests, just refactoring.
+
+ * rendering/svg/RenderSVGResourceGradient.cpp:
+ (WebCore::RenderSVGResourceGradient::applyResource):
+ * rendering/svg/RenderSVGResourceGradient.h:
+ * rendering/svg/RenderSVGResourceMarker.cpp:
+ (WebCore::RenderSVGResourceMarker::angle):
+ (WebCore::RenderSVGResourceMarker::markerTransformation):
+ * rendering/svg/RenderSVGResourceMarker.h:
+ (WebCore::RenderSVGResourceMarker::markerUnits):
+ * rendering/svg/RenderSVGTextPath.cpp:
+ (WebCore::RenderSVGTextPath::RenderSVGTextPath):
+ (WebCore::RenderSVGTextPath::exactAlignment):
+ (WebCore::RenderSVGTextPath::stretchMethod):
+ * rendering/svg/SVGRenderTreeAsText.cpp:
+ (WebCore::operator<<):
+ (WebCore::writeCommonGradientProperties):
+ * rendering/svg/SVGTextChunkBuilder.cpp:
+ (WebCore::SVGTextChunkBuilder::addTextChunk):
+ * rendering/svg/SVGTextLayoutEngine.cpp:
+ (WebCore::SVGTextLayoutEngine::parentDefinesTextLength):
+ (WebCore::SVGTextLayoutEngine::beginTextPathLayout):
+ * svg/GradientAttributes.h:
+ (WebCore::GradientAttributes::GradientAttributes):
+ (WebCore::GradientAttributes::spreadMethod):
+ (WebCore::GradientAttributes::setSpreadMethod):
+ * svg/SVGComponentTransferFunctionElement.h:
+ * svg/SVGFEBlendElement.h:
+ * svg/SVGFEColorMatrixElement.h:
+ * svg/SVGFECompositeElement.h:
+ * svg/SVGFEConvolveMatrixElement.h:
+ * svg/SVGFEDisplacementMapElement.h:
+ * svg/SVGFEMorphologyElement.h:
+ * svg/SVGFETurbulenceElement.h:
+ * svg/SVGGradientElement.cpp:
+ (WebCore::SVGGradientElement::SVGGradientElement):
+ * svg/SVGGradientElement.h:
+ * svg/SVGMarkerElement.cpp:
+ (WebCore::SVGMarkerElement::SVGMarkerElement):
+ (WebCore::SVGMarkerElement::parseMappedAttribute):
+ (WebCore::SVGMarkerElement::setOrientToAuto):
+ (WebCore::SVGMarkerElement::setOrientToAngle):
+ (WebCore::SVGMarkerElement::synchronizeOrientType):
+ (WebCore::SVGMarkerElement::orientTypeAnimated):
+ * svg/SVGMarkerElement.h:
+ * svg/SVGTextContentElement.cpp:
+ (WebCore::SVGTextContentElement::SVGTextContentElement):
+ * svg/SVGTextContentElement.h:
+ * svg/SVGTextPathElement.cpp:
+ (WebCore::SVGTextPathElement::SVGTextPathElement):
+ * svg/SVGTextPathElement.h:
+
+2011-07-07 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: Protocol: pointers to optional "in" parameters passing to the
+ backend methods should be NULL if they are not specified in the message.
+ https://bugs.webkit.org/show_bug.cgi?id=64083
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/CodeGeneratorInspector.pm:
+ (generateBackendFunction):
+ (generateArgumentGetters):
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::InspectorCSSAgent::getStylesForNode):
+
+2011-07-07 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: Searching on the Network panel doesn't do anything?
+ https://bugs.webkit.org/show_bug.cgi?id=55489
+
+ This is initial implementation of search in Network panel.
+ It is pretty simple search only for names and paths.
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype.refresh):
+ (WebInspector.NetworkPanel.prototype._reset):
+ (WebInspector.NetworkPanel.prototype._updateOffscreenRows):
+ (WebInspector.NetworkPanel.prototype._matchResource):
+ (WebInspector.NetworkPanel.prototype._clearSearchMatchedList):
+ (WebInspector.NetworkPanel.prototype._highlightNthMatchedResource):
+ (WebInspector.NetworkPanel.prototype.performSearch):
+ (WebInspector.NetworkDataGridNode.prototype.createCells):
+ * inspector/front-end/utilities.js:
+ (String.prototype.escapeHTML):
+ ():
+
+2011-07-07 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Resources panel shows only one resource when multiple resources have the same url.
+ https://bugs.webkit.org/show_bug.cgi?id=63936
+
+ Reviewed by Pavel Feldman.
+
+ Test: http/tests/inspector/resource-tree/resource-tree-non-unique-url.html
+
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.FrameTreeElement.prototype.appendResource):
+
+2011-07-07 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Add support for clearing cache and cookies from network panel.
+ https://bugs.webkit.org/show_bug.cgi?id=63999
+
+ Reviewed by Pavel Feldman.
+
+ * English.lproj/localizedStrings.js:
+ * inspector/Inspector.json:
+ * inspector/InspectorClient.h:
+ (WebCore::InspectorClient::clearBrowserCache):
+ (WebCore::InspectorClient::clearBrowserCookies):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::clearBrowserCache):
+ (WebCore::InspectorResourceAgent::clearBrowserCookies):
+ (WebCore::InspectorResourceAgent::InspectorResourceAgent):
+ * inspector/InspectorResourceAgent.h:
+ (WebCore::InspectorResourceAgent::create):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype._contextMenu):
+ (WebInspector.NetworkPanel.prototype._clearBrowserCache):
+ (WebInspector.NetworkPanel.prototype._clearBrowserCookies):
+ * inspector/front-end/Settings.js:
+
+2011-07-07 Shinya Kawanaka <shinyak@google.com>
+
+ Added more key bindings for input[type=range].
+ https://bugs.webkit.org/show_bug.cgi?id=52262
+
+ Added PageUp/PageDown/Home/End key bindings for input[type=range].
+ PageUp/PageDown change value by about 10%.
+ Home/End change value to minimum/maximum.
+
+ Reviewed by Kent Tamura.
+
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::handleKeydownEvent):
+ Added key bindings.
+
+2011-07-07 Oleg Romashin <romaxa@gmail.com>
+
+ Fix InspectorInstrumentation compilation.
+ https://bugs.webkit.org/show_bug.cgi?id=64033
+
+ Reviewed by Yury Semikhatsky.
+
+ No new tests. just compile fix.
+
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didInvalidateStyleAttrImpl):
+
+2011-07-06 Mihnea Ovidenie <mihnea@adobe.com>
+
+ Reviewed by David Hyatt.
+
+ [CSSRegions] Parse flow property
+ https://bugs.webkit.org/show_bug.cgi?id=61730
+
+ Test: fast/regions/webkit-flow-parsing.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ (WebCore::CSSParser::parseFlowThread):
+ * css/CSSParser.h:
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::flowThread):
+ (WebCore::InheritedFlags::setFlowThread):
+ (WebCore::InheritedFlags::initialFlowThread):
+ * rendering/style/StyleRareNonInheritedData.cpp:
+ (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
+ (WebCore::StyleRareNonInheritedData::operator==):
+ * rendering/style/StyleRareNonInheritedData.h:
+
+2011-07-06 MORITA Hajime <morrita@google.com>
+
+ [ShadowContentElement] Redundant RenderText objects are created on the content boundaries.
+ https://bugs.webkit.org/show_bug.cgi?id=63977
+
+ Reviewed by Dimitri Glazkov.
+
+ NodeRenderingContext::nextRenderer() and previousRenderer() didn't work well
+ when it crosses content elements:
+ - It doesn't step into forwarded children of ShadowContentElement.
+ - It doesn't step out from traversing forwarded children to
+ neighbors of the content element of that forwarded chidren.
+
+ This change makes it to step into and out from content element.
+
+ Test: fast/dom/shadow/content-element-renderers.html
+
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::firstRendererOf): Added
+ (WebCore::lastRendererOf): Added
+ (WebCore::NodeRenderingContext::nextRenderer):
+ (WebCore::NodeRenderingContext::previousRenderer):
+
+2011-07-06 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ [EFL] Add Fullscreen API feature
+ https://bugs.webkit.org/show_bug.cgi?id=63975
+
+ Add needed files for enabling ENABLE_FULLSCREEN_API feature.
+
+ Reviewed by Adam Barth.
+
+ * CMakeLists.txt: Add RenderFullScreen.cpp, fullscreen.css
+
+2011-07-06 Emil A Eklund <eae@chromium.org>
+
+ Switch absoluteRects to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=64035
+
+ Reviewed by Eric Seidel.
+
+ Move absoluteRects over to new layout unit abstraction.
+ Add flooredLayoutPoint, mapped to flooredIntPoint.
+
+ No new tests, no functionality changes.
+
+ * rendering/LayoutTypes.h:
+ (WebCore::flooredLayoutPoint):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::absoluteRects):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::absoluteRects):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::absoluteRects):
+ * rendering/RenderInline.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::absoluteBoundingBoxRect):
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::absoluteRects):
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::absoluteRects):
+ * rendering/RenderText.h:
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::absoluteRects):
+ * rendering/RenderView.h:
+ * rendering/svg/RenderSVGBlock.cpp:
+ (WebCore::RenderSVGBlock::absoluteRects):
+ * rendering/svg/RenderSVGBlock.h:
+ * rendering/svg/RenderSVGModelObject.cpp:
+ (WebCore::RenderSVGModelObject::absoluteRects):
+ * rendering/svg/RenderSVGModelObject.h:
+
+2011-07-06 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch offsetFromContainer and related to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63659
+
+ Switch offsetFromContainer and related mapping methods to new layout unit
+ abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/LayoutTypes.h:
+ (WebCore::enclosingLayoutRect):
+ (WebCore::roundedLayoutPoint):
+ (WebCore::roundedLayoutUnit):
+ Add LayoutUnit versions of enclosingIntRect, roundedIntPoint and lroundf.
+ For now these map to their int counterpart but once we switch to float or
+ fixed point they'll be no-ops and eventually will be removed.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::mapLocalToContainer):
+ (WebCore::RenderBox::mapAbsoluteToLocalPoint):
+ (WebCore::RenderBox::offsetFromContainer):
+ * rendering/RenderBox.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::linesBoundingBox):
+ (WebCore::RenderInline::offsetFromContainer):
+ (WebCore::RenderInline::mapLocalToContainer):
+ (WebCore::RenderInline::mapAbsoluteToLocalPoint):
+ (WebCore::RenderInline::relativePositionedInlineOffset):
+ * rendering/RenderInline.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::offsetFromContainer):
+ (WebCore::RenderObject::offsetFromAncestorContainer):
+ * rendering/RenderObject.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::offsetFromContainer):
+ * rendering/RenderTableCell.h:
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::convertToPaintingRect):
+
+2011-07-06 Levi Weintraub <leviw@chromium.org>
+
+ Switch FrameSelection to new Layout Types
+ https://bugs.webkit.org/show_bug.cgi?id=64043
+
+ Reviewed by Eric Seidel.
+
+ Switching the selection classes to the new layout types. Changing
+ NoXPosForVerticalArrowNavigation to a static inline since as it stood it violated
+ our global initializer rule when converted to numeric_limits from INT_MIN.
+
+ No new tests, no functionality changes.
+
+ * editing/FrameSelection.cpp:
+ (WebCore::FrameSelection::modify):
+ (WebCore::absoluteCaretY):
+ (WebCore::FrameSelection::lineDirectionPointForBlockDirectionNavigation):
+ (WebCore::CaretBase::clearCaretRect):
+ (WebCore::CaretBase::updateCaretRect):
+ (WebCore::FrameSelection::localCaretRect):
+ (WebCore::CaretBase::absoluteBoundsForLocalRect):
+ (WebCore::FrameSelection::absoluteCaretBounds):
+ (WebCore::repaintRectForCaret):
+ (WebCore::CaretBase::caretRepaintRect):
+ (WebCore::FrameSelection::recomputeCaretRect):
+ (WebCore::FrameSelection::paintCaret):
+ (WebCore::CaretBase::paintCaret):
+ (WebCore::FrameSelection::contains):
+ (WebCore::DragCaretController::paintDragCaret):
+ (WebCore::FrameSelection::bounds):
+ (WebCore::FrameSelection::revealSelection):
+ * editing/FrameSelection.h:
+ (WebCore::CaretBase::localCaretRectWithoutUpdate):
+
+2011-07-06 Levi Weintraub <leviw@chromium.org>
+
+ Switch Overflow and FrameRect methods in InlineBox to Layout Units
+ https://bugs.webkit.org/show_bug.cgi?id=64034
+
+ Reviewed by Eric Seidel.
+
+ Switching Overflow and FrameRect methods on InlineBox to new Layout Unit abstraction and
+ cleaning up some compilation errors that crop up when building with floating point layout units.
+
+ No new tests, no functionality changes.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::sizingBox):
+ * dom/Document.h:
+ * editing/DeleteButtonController.cpp:
+ (WebCore::isDeletableElement):
+ * inspector/DOMNodeHighlighter.cpp:
+ (WebCore::DOMNodeHighlighter::drawNodeHighlight):
+ * page/animation/AnimationBase.cpp:
+ (WebCore::blendFunc):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::visibleWidth):
+ (WebCore::ScrollView::visibleHeight):
+ * platform/ScrollableArea.h:
+ (WebCore::ScrollableArea::visibleHeight):
+ (WebCore::ScrollableArea::visibleWidth):
+ * platform/graphics/FloatPoint.h: Adding FloatPoint and FloatSize move[By] functions
+ (WebCore::FloatPoint::move):
+ (WebCore::FloatPoint::moveBy):
+ * rendering/AutoTableLayout.cpp:
+ (WebCore::AutoTableLayout::computePreferredLogicalWidths):
+ (WebCore::AutoTableLayout::layout):
+ * rendering/InlineFlowBox.h:
+ (WebCore::InlineFlowBox::layoutOverflowRect):
+ (WebCore::InlineFlowBox::logicalLeftLayoutOverflow):
+ (WebCore::InlineFlowBox::logicalRightLayoutOverflow):
+ (WebCore::InlineFlowBox::logicalTopLayoutOverflow):
+ (WebCore::InlineFlowBox::logicalBottomLayoutOverflow):
+ (WebCore::InlineFlowBox::logicalLayoutOverflowRect):
+ (WebCore::InlineFlowBox::visualOverflowRect):
+ (WebCore::InlineFlowBox::logicalLeftVisualOverflow):
+ (WebCore::InlineFlowBox::logicalRightVisualOverflow):
+ (WebCore::InlineFlowBox::logicalTopVisualOverflow):
+ (WebCore::InlineFlowBox::logicalBottomVisualOverflow):
+ (WebCore::InlineFlowBox::logicalVisualOverflowRect):
+ (WebCore::InlineFlowBox::frameRectIncludingLineHeight):
+ (WebCore::InlineFlowBox::logicalFrameRectIncludingLineHeight):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::RenderBlockRareData::positiveMarginBeforeDefault):
+ (WebCore::RenderBlock::RenderBlockRareData::negativeMarginBeforeDefault):
+ (WebCore::RenderBlock::RenderBlockRareData::positiveMarginAfterDefault):
+ (WebCore::RenderBlock::RenderBlockRareData::negativeMarginAfterDefault):
+
+2011-07-06 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch nodeAtPoint to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63663
+
+ No new tests, no functionality changes.
+
+ * rendering/EllipsisBox.cpp:
+ (WebCore::EllipsisBox::nodeAtPoint):
+ * rendering/EllipsisBox.h:
+ * rendering/InlineBox.cpp:
+ (WebCore::InlineBox::nodeAtPoint):
+ * rendering/InlineBox.h:
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::nodeAtPoint):
+ * rendering/InlineFlowBox.h:
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::nodeAtPoint):
+ * rendering/InlineTextBox.h:
+ * rendering/LayoutTypes.h:
+ (WebCore::toLayoutSize):
+ (WebCore::toLayoutPoint):
+ (WebCore::roundedLayoutPoint):
+ (WebCore::roundedLayoutUnit):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::nodeAtPoint):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::nodeAtPoint):
+ * rendering/RenderBox.h:
+ * rendering/RenderFrameSet.cpp:
+ (WebCore::RenderFrameSet::nodeAtPoint):
+ * rendering/RenderFrameSet.h:
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::nodeAtPoint):
+ * rendering/RenderImage.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::nodeAtPoint):
+ * rendering/RenderInline.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::nodeAtPoint):
+ * rendering/RenderListBox.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::nodeAtPoint):
+ * rendering/RenderObject.h:
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::nodeAtPoint):
+ * rendering/RenderTable.h:
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::nodeAtPoint):
+ * rendering/RenderTableRow.h:
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::nodeAtPoint):
+ * rendering/RenderTableSection.h:
+ * rendering/RenderText.h:
+ (WebCore::RenderText::nodeAtPoint):
+ * rendering/RenderTextControlMultiLine.cpp:
+ (WebCore::RenderTextControlMultiLine::nodeAtPoint):
+ * rendering/RenderTextControlMultiLine.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::nodeAtPoint):
+ * rendering/RenderTextControlSingleLine.h:
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::nodeAtPoint):
+ * rendering/RenderWidget.h:
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::nodeAtPoint):
+ * rendering/RootInlineBox.h:
+ * rendering/svg/RenderSVGForeignObject.cpp:
+ (WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
+ (WebCore::RenderSVGForeignObject::nodeAtPoint):
+ * rendering/svg/RenderSVGForeignObject.h:
+ * rendering/svg/RenderSVGModelObject.cpp:
+ (WebCore::RenderSVGModelObject::nodeAtPoint):
+ * rendering/svg/RenderSVGModelObject.h:
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::nodeAtPoint):
+ * rendering/svg/RenderSVGRoot.h:
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::nodeAtPoint):
+ * rendering/svg/RenderSVGText.h:
+ * rendering/svg/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::nodeAtPoint):
+ * rendering/svg/SVGInlineTextBox.h:
+
+2011-07-06 Adrienne Walker <enne@google.com>
+
+ [chromium] Add compositor texture manager soft limits and lost focus reclaiming
+ https://bugs.webkit.org/show_bug.cgi?id=64009
+
+ Reviewed by James Robinson.
+
+ Add a soft limit for texture memory. Unprotected textures will get
+ reclaimed when above this limit. Increase the hard limit for maximum
+ texture memory as well, now that there is a better heuristic and
+ textures are reclaimed from tabs without focus.
+
+ Landing this for vangelis@chromium.org.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::releaseTextures):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::protectTileTextures):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ * platform/graphics/chromium/TextureManager.cpp:
+ (WebCore::TextureManager::TextureManager):
+ (WebCore::TextureManager::requestTexture):
+ * platform/graphics/chromium/TextureManager.h:
+ (WebCore::TextureManager::create):
+
+2011-07-06 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed: Web Inspector: fixing typo introduced in the r90397.
+
+ * inspector/front-end/StylesSidebarPane.js:
+
+2011-07-06 Mike Reed <reed@google.com>
+
+ [skia] don't include deprecated header
+ https://bugs.webkit.org/show_bug.cgi?id=64025
+
+ Reviewed by James Robinson.
+
+ No new tests. Just removing #include of an unused header that will be gone soon
+
+ * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+
+2011-06-30 Cris Neckar <cdn@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Add versioning to Chromium clipboard and prevent polling from inside events.
+ https://bugs.webkit.org/show_bug.cgi?id=63738
+
+ * platform/chromium/ChromiumDataObject.cpp:
+ (WebCore::ChromiumDataObject::getSequenceNumber):
+ * platform/chromium/ChromiumDataObject.h:
+ * platform/chromium/ClipboardChromium.cpp:
+ (WebCore::ClipboardChromium::ClipboardChromium):
+ (WebCore::ClipboardChromium::getData):
+ (WebCore::ClipboardChromium::platformClipboardChanged):
+ * platform/chromium/ClipboardChromium.h:
+ * platform/chromium/DataTransferItemChromium.cpp:
+ (WebCore::DataTransferItemChromium::getAsString):
+ (WebCore::DataTransferItemChromium::getAsFile):
+ * platform/chromium/PlatformBridge.h:
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
+
+2011-07-01 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Stephen White.
+
+ [chromium] Externalize layer visibility calculation
+ https://bugs.webkit.org/show_bug.cgi?id=63847
+
+ This moves the layer visibility calculation from the layer itself out to LayerRendererChromium, like the other
+ calculated properties. Previously, we were doing this calculating at paint time and again at draw time and
+ relying on the fact that this produced the same value. This avoids the redundant calculation.
+
+ Covered by existing compositing/ layout tests.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::ContentLayerChromium):
+ (WebCore::ContentLayerChromium::paintContentsIfDirty):
+ (WebCore::ContentLayerChromium::tilingTransform):
+ (WebCore::ContentLayerChromium::contentBounds):
+ (WebCore::ContentLayerChromium::updateLayerSize):
+ (WebCore::ContentLayerChromium::draw):
+ (WebCore::ContentLayerChromium::setTilingOption):
+ (WebCore::ContentLayerChromium::setIsMask):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::paintContentsIfDirty):
+ (WebCore::ImageLayerChromium::contentBounds):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::pushPropertiesTo):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::contentBounds):
+ (WebCore::LayerChromium::visibleLayerRect):
+ (WebCore::LayerChromium::setVisibleLayerRect):
+ (WebCore::LayerChromium::draw):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::calculateVisibleLayerRect):
+ (WebCore::LayerRendererChromium::paintLayerContents):
+ (WebCore::LayerRendererChromium::drawLayer):
+ * platform/graphics/chromium/RenderSurfaceChromium.cpp:
+ (WebCore::RenderSurfaceChromium::draw):
+ * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
+ (WebCore::CCCanvasLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (WebCore::CCLayerImpl::contentBounds):
+ (WebCore::CCLayerImpl::setContentBounds):
+ (WebCore::CCLayerImpl::visibleLayerRect):
+ (WebCore::CCLayerImpl::setVisibleLayerRect):
+ (WebCore::CCLayerImpl::doubleSided):
+ (WebCore::CCLayerImpl::setDoubleSided):
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
+ (WebCore::CCPluginLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
+ * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
+ (WebCore::CCVideoLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
+
+2011-07-06 John Sullivan <sullivan@apple.com>
+
+ IconDatabase::synchronousIconForPageURL() has inconsistent API when no custom icon is available
+ <https://bugs.webkit.org/show_bug.cgi?id=64015>
+ <rdar://problem/9706277>
+
+ For some URLs it would return a particular size of default icon; for other
+ URLs it would return 0.
+
+ Reviewed by Ada Chan.
+
+ * loader/icon/IconDatabase.cpp:
+ (WebCore::IconDatabase::synchronousIconForPageURL):
+ Return 0 in all cases where there is no custom icon.
+
+2011-07-06 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch RenderLayer::hitTest* to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63640
+
+ Switch hit testing and supporting methods for RenderLayer over to the new
+ layout unit abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/LayoutTypes.h:
+ (WebCore::roundedLayoutPoint):
+ Add roundedLayoutPoint abstraction, calls roundedIntPoint now but will be a
+ no-op (and eventually go away) once we switch to float or fixed point.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::createLocalTransformState):
+ (WebCore::RenderLayer::hitTestLayer):
+ (WebCore::RenderLayer::hitTestList):
+ (WebCore::RenderLayer::hitTestPaginatedChildLayer):
+ (WebCore::RenderLayer::hitTestChildLayerColumns):
+ (WebCore::RenderLayer::calculateRects):
+ * rendering/RenderLayer.h:
+
+2011-07-06 Simon Fraser <simon.fraser@apple.com>
+
+ Have RenderLayerCompositor take care of clearing backing store when entering the page cache
+ https://bugs.webkit.org/show_bug.cgi?id=64018
+
+ Reviewed by Joseph Pecoraro.
+
+ Move responsibility for tearing down all RenderLayer backing stores from
+ RenderLayer itself to RenderLayerCompositor, since RenderLayerCompositor
+ manages backing store creation and destruction in general.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::clearBackingStores):
+ * rendering/RenderLayer.cpp:
+ * rendering/RenderLayer.h:
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::clearBackingForLayerIncludingDescendants):
+ (WebCore::RenderLayerCompositor::clearBackingForAllLayers):
+ * rendering/RenderLayerCompositor.h:
+
+2011-07-06 Ryuan Choi <ryuan.choi@samsung.com>
+
+ [Performance] Only call sendContentResizeNotification when the scrollbar actually did change
+ https://bugs.webkit.org/show_bug.cgi?id=47320
+
+ Reviewed by Eric Seidel.
+
+ Move avoidScrollbarCreation checking code from setHasHorizontalScrollbar
+ and setHasVerticalScrollbar to their caller in order to keep sendContentResizedNotification
+ false in case scrollbar is not really changed.
+ As a result, it will remove unnecessary relayout in the above case.
+
+ No new tests as this is very hard to write tests for. The bug only
+ occured when scrolling the sites which contain frame in browser with
+ frameFlattening. This should not change functionality in other case.
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setHasHorizontalScrollbar):
+ (WebCore::ScrollView::setHasVerticalScrollbar):
+ (WebCore::ScrollView::updateScrollbars):
+
+2011-07-06 Nate Chapin <japhet@chromium.org>
+
+ Don't let all subresources keep isLoadingInAPISense() from
+ returning false, only requests that affect
+ CachedResourceRequest::requestCount().
+ https://bugs.webkit.org/show_bug.cgi?id=62066
+
+ Reviewed by Adam Barth.
+
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::dispatchWindowLoadEvent):
+ * dom/Document.h:
+ (WebCore::Document::loadEventFinished):
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::isLoadingInAPISense):
+
+2011-07-06 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: implement drag'n'drop in the elements panel for reordering nodes.
+ https://bugs.webkit.org/show_bug.cgi?id=63990
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/Inspector.json:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::moveTo):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMNode.prototype._removeChild):
+ (WebInspector.DOMNode.prototype.ownerDocumentElement):
+ (WebInspector.DOMNode.prototype.moveTo):
+ (WebInspector.DOMAgent.prototype._childNodeRemoved):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline):
+ (WebInspector.ElementsTreeOutline.prototype._ondragstart):
+ (WebInspector.ElementsTreeOutline.prototype._ondragover):
+ (WebInspector.ElementsTreeOutline.prototype._ondragleave):
+ (WebInspector.ElementsTreeOutline.prototype._isValidDragSourceOrTarget):
+ (WebInspector.ElementsTreeOutline.prototype._ondragend.callback):
+ (WebInspector.ElementsTreeOutline.prototype._ondragend):
+ (WebInspector.ElementsTreeOutline.prototype._clearDragOverTreeElementMarker):
+ (WebInspector.ElementsTreeOutline.prototype.populateContextMenu.focusElement):
+ (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
+ (WebInspector.ElementsTreeElement.prototype.onattach):
+ * inspector/front-end/inspector.css:
+ (.outline-disclosure li.elements-drag-over .selection):
+ * inspector/front-end/treeoutline.js:
+ (TreeOutline.prototype.treeElementFromEvent):
+
+2011-07-06 Andras Becsi <abecsi@webkit.org>
+
+ Fix "warning: a `;' might be needed at the end of action code"
+
+ Unreviewed gardening.
+
+ No new tests needed.
+
+ * css/CSSGrammar.y: Future versions of Bison will not add the ';' so add it.
+
+2011-07-06 Andras Becsi <abecsi@webkit.org>
+
+ [Qt] Revome unused but set shadowBlur variable after r90406.
+
+ Unreviewed build fix.
+
+ No new tests needed.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::fillPath): Use the GraphicsContext brush.
+
+2011-07-06 Andras Becsi <abecsi@webkit.org>
+
+ [Qt] Remove duplicate entries of ShadowBlur sources from project file.
+
+ Rubber-stamped by Csaba Osztrogonác.
+
+ No new tests needed.
+
+ * WebCore.pro: These files were already added in r84410.
+
+2011-07-05 Kentaro Hara <haraken@google.com>
+
+ Trigger a 'change' event whenever selected files are changed
+ https://bugs.webkit.org/show_bug.cgi?id=63929
+
+ Reviewed by Kent Tamura.
+
+ Record previously selected files and then compare them with newly selected files.
+ If the previously selected files and their order are not equal to those of
+ the newly selected files, we trigger the 'change' event.
+
+ Test: fast/forms/file-input-change-event.html
+
+ * html/FileInputType.cpp:
+ (WebCore::FileInputType::filesChosen): Calls dispathChangeEvent() only when the previously selected files are different from the newly selected files
+
+2011-06-29 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ [Mac] REGRESSION (r88415): Range slider doesn't have focus appearance.
+ https://bugs.webkit.org/show_bug.cgi?id=63573
+
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::paintSliderThumb):
+ Need to pass the RenderObject of the owner <input> because
+ updateFocusedState() checks the outline style of the specified
+ renderer, and we'd like to make a slider thumb reflect the owner
+ focus style.
+
+2011-07-05 Hans Wennborg <hans@chromium.org>
+
+ [V8][Chromium] Remove use of OwnHandle from V8LocalContext
+ https://bugs.webkit.org/show_bug.cgi?id=63925
+
+ Reviewed by Adam Barth.
+
+ Replace the OwnHandle<> member in V8LocalContext with
+ v8::Persistent<v8::Context>.
+ The code that used OwnHandle<> would not correctly Dispose
+ of the Context, which would cause the memory to fill up when creating
+ and destructing many V8LocalContext objects, such as in the case
+ of IndexedDB.
+
+ * bindings/v8/V8Utilities.cpp:
+ (WebCore::V8LocalContext::V8LocalContext):
+ (WebCore::V8LocalContext::~V8LocalContext):
+ * bindings/v8/V8Utilities.h:
+
+2011-07-05 Igor Oliveira <igor.oliveira@openbossa.org>
+
+ [Qt] Add ShadowBlur support
+ https://bugs.webkit.org/show_bug.cgi?id=62997
+
+ Use ShadowBlur instead of ContextShadow to handle canvas and css shadows. ShadowBlur is
+ a newer and platform independent shadow implementation.
+ Qt QPainter does not have support for shadows so is necessary to create a layer support
+ to draw complex shapes and fonts. The beginShadowLayer creates a temporary shadow buffer
+ where the canvas can draw onto and endShadowLayer applies the blur filter, colors the
+ shadow buffer and draw the final shadow to the graphics context.
+
+ Reviewed by Andreas Kling.
+
+ * WebCore.pro:
+ * platform/graphics/GraphicsContext.cpp:
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/ShadowBlur.cpp:
+ (WebCore::ShadowBlur::ShadowBlur):
+ (WebCore::ShadowBlur::setShadowValues):
+ (WebCore::ShadowBlur::updateShadowBlurValues):
+ (WebCore::ShadowBlur::clear):
+ (WebCore::ShadowBlur::blurAndColorShadowBuffer):
+ (WebCore::ShadowBlur::beginShadowLayer):
+ (WebCore::ShadowBlur::endShadowLayer):
+ * platform/graphics/ShadowBlur.h:
+ (WebCore::ShadowBlur::type):
+ * platform/graphics/qt/ContextShadowQt.cpp: Removed.
+ * platform/graphics/qt/FontQt.cpp:
+ (WebCore::drawTextCommon):
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContextPlatformPrivate::mustUseShadowBlur):
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+ (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
+ (WebCore::GraphicsContext::savePlatformState):
+ (WebCore::GraphicsContext::restorePlatformState):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::shadowBlur):
+ (WebCore::GraphicsContext::clipBounds):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ (WebCore::GraphicsContext::clearPlatformShadow):
+ * platform/graphics/qt/ImageQt.cpp:
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/qt/StillImageQt.cpp:
+ (WebCore::StillImage::draw):
+
+2011-07-05 Sam Weinig <sam@webkit.org>
+
+ Null deref accessing CustomEvent.detail
+ <rdar://problem/9724577>
+ https://bugs.webkit.org/show_bug.cgi?id=63885
+
+ Reviewed by Anders Carlsson.
+
+ Test: fast/events/custom-event-uninitialized.html
+
+ * bindings/scripts/CodeGeneratorJS.pm:
+ Guard against uninitialized script value.
+
+2011-07-05 Pratik Solanki <psolanki@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Coalesce data array into one NSData before calling didReceiveData
+ https://bugs.webkit.org/show_bug.cgi?id=63916
+ <rdar://problem/9715181>
+
+ Instead of calling didReceiveData multiple times with smaller chunks of data, we merge the
+ data buffers into one and call it once.
+
+ No new tests because the flag isn't enabled yet.
+
+ * platform/network/mac/ResourceHandleMac.mm:
+ (-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]):
+
+2011-07-05 Tamas Czene <Czene.Tamas@stud.u-szeged.hu>
+
+ Reviewed by Simon Fraser.
+
+ Remove virtual functions from StyleImage.
+ https://bugs.webkit.org/show_bug.cgi?id=63909
+
+ We can remove the virtual "isChachedImage, isPendingImage, isGeneratedImage" functions to speed up the StyleImage.
+ Some profile data shows this part is significant, especially in small CSS-based sites.
+ Removing the virtual functions - removing the calls - makes a small performance progression on this part.
+
+ * rendering/style/StyleCachedImage.h:
+ (WebCore::StyleCachedImage::StyleCachedImage):
+ * rendering/style/StyleGeneratedImage.h:
+ (WebCore::StyleGeneratedImage::StyleGeneratedImage):
+ * rendering/style/StyleImage.h:
+ (WebCore::StyleImage::isCachedImage):
+ (WebCore::StyleImage::isPendingImage):
+ (WebCore::StyleImage::isGeneratedImage):
+ (WebCore::StyleImage::StyleImage):
+ * rendering/style/StylePendingImage.h:
+ (WebCore::StylePendingImage::StylePendingImage):
+
+2011-07-05 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: add "element state" setting to the styles section title.
+ https://bugs.webkit.org/show_bug.cgi?id=63932
+
+ Reviewed by Yury Semikhatsky.
+
+ * English.lproj/localizedStrings.js:
+ * WebCore.gypi:
+ * inspector/front-end/Images/paneElementStateButtons.png: Added.
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.muteEventListener):
+ (WebInspector.StylesSidebarPane):
+ (WebInspector.StylesSidebarPane.prototype.update):
+ (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
+ (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
+ (WebInspector.StylesSidebarPane.prototype.addBlankSection):
+ (WebInspector.StylesSidebarPane.prototype.registerShortcuts):
+ (WebInspector.StylesSidebarPane.prototype._toggleElementStatePane):
+ (WebInspector.StylesSidebarPane.prototype._createElementStatePane.clickListener):
+ (WebInspector.StylesSidebarPane.prototype._createElementStatePane.createCheckbox):
+ (WebInspector.StylesSidebarPane.prototype._createElementStatePane):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.css:
+ (.pane > .title > .pane-title-button:active, .pane > .title > .pane-title-button.toggled):
+ (.pane > .title > .pane-title-button.element-state):
+ (.styles-element-state-pane):
+ (.styles-element-state-pane.expanded):
+ (.styles-element-state-pane > table):
+ (.styles-element-state-pane input):
+
+2011-06-22 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: extract duplicated code that deals with source mappings.
+ https://bugs.webkit.org/show_bug.cgi?id=63139
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleMessage.prototype.isEqual):
+ (WebInspector.ConsoleMessage.prototype.get stackTrace):
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype._uiLocationToScriptLocation):
+ (WebInspector.DebuggerPresentationModel.prototype._updateAnchor):
+ (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage.didGetUILocation):
+ (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage):
+ (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
+ (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger.didGetScriptLocation):
+ (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger):
+ (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.updateSourceFileBreakpointsAndDispatchEvent):
+ (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.didGetUILocation):
+ (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
+ (WebInspector.DebuggerPresentationModel.prototype._sourceFileForScript):
+ (WebInspector.PresenationCallFrame):
+ (WebInspector.PresenationCallFrame.prototype.sourceLine):
+
+2011-07-05 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: WebInspector frontend reports a protocol error in remote debugging mode.
+ https://bugs.webkit.org/show_bug.cgi?id=63935
+
+ it was error generated for obsolete message "loaded" which was sent from frontend to backend.
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/front-end/inspector.js:
+ (WebInspector.loaded.WebInspector.socket.onopen):
+ (WebInspector.loaded):
+
+2011-07-05 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: [refactoring] remove network-sidebar style, add network-log-grid
+ https://bugs.webkit.org/show_bug.cgi?id=63913
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel):
+ (WebInspector.NetworkPanel.prototype._createTable):
+ * inspector/front-end/networkPanel.css:
+ (.network-log-grid):
+ (.network-log-grid table.data):
+ (.network-log-grid.small table.data):
+ (.network-log-grid td):
+ (.network-log-grid.small td):
+ (.network-log-grid th):
+ (.network-log-grid.small th):
+ (.network-log-grid th, .network.panel .data-grid th.sort-descending, .network.panel .data-grid th.sort-ascending):
+ (.network-log-grid .data-container):
+ (.network-log-grid.small .data-container):
+ (.network-log-grid select):
+ (.network-log-grid.small tr.offscreen):
+ (.network-log-grid tr.offscreen):
+ (.network-log-grid tr.offscreen td):
+ (.network-log-grid tr.filler):
+ (.network-log-grid tr:not(.filler) td.name-column):
+ (.network.panel:not(.viewing-resource) .network-log-grid td.name-column:hover):
+ (.network-log-grid td.time-column):
+ (.network-log-grid.small .network-graph-side):
+ (.network-log-grid th.sortable:active):
+ (.network-log-grid tr.selected .network-cell-subtitle):
+ (.network-log-grid .icon):
+ (.network-log-grid.small .icon):
+ (.network-log-grid .network-category-scripts .icon):
+ (.network-log-grid.small .network-category-scripts .icon):
+ (.network-log-grid .network-category-documents .icon):
+ (.network-log-grid.small .network-category-documents .icon):
+ (.network-log-grid .network-category-stylesheets .icon):
+ (.network-log-grid.small .network-category-stylesheets .icon):
+ (.network-log-grid .network-category-images .icon):
+ (.network-log-grid.small .network-category-images .icon):
+ (.network-log-grid .image-network-icon-preview):
+ (.network-log-grid.small .image-network-icon-preview):
+ (.network-timeline-grid.small .network-event-divider):
+ (.network-log-grid .resources-dividers):
+ (.network-log-grid .resources-dividers-label-bar):
+ (.network-timeline-grid.small .resources-dividers-label-bar):
+ (.network-timeline-grid .resources-divider-label):
+ (.network-timeline-grid .resources-dividers-label-bar .resources-divider):
+ (.network-timeline-grid.small .resources-dividers-label-bar .resources-divider):
+ (.network-timeline-grid .resources-divider.first .resources-divider-label):
+ (.network-timeline-grid .resources-dividers-label-bar .resources-divider.first):
+ (.network-timeline-grid tr.filler td):
+ (.network-summary-bar td):
+ (.network.panel.viewing-resource .network-log-grid th):
+ (.network-log-grid.full-grid-mode .viewer-column):
+ (.network-log-grid.brief-grid-mode .time-column):
+ (.network-log-grid.viewing-resource-mode .timeline-column):
+ (.network.panel .sidebar):
+ (.network.panel.viewing-resource .network-log-grid .data-grid-resizer):
+
+2011-07-05 Alexandru Chiculita <achicu@adobe.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] "cat" is not available when building.
+ https://bugs.webkit.org/show_bug.cgi?id=63924
+
+ Changed 'cat' to 'perl -ne \"print $1\"' because 'cat' is not available on Windows with
+ MSVC toolchain. It passed the Qt buildbots, because they run with cygwin.
+
+ Project file change. No tests needed.
+
+ * CodeGenerators.pri:
+2011-07-05 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Unreviewed; Qt Linux Release minimal compile fix.
+
+ * testing/Internals.h:
+ (WebCore::Internals::setInspectorResourcesDataSizeLimits):
+ * testing/Internals.idl:
+
+2011-07-05 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Show content for plugin requests in network panel.
+ https://bugs.webkit.org/show_bug.cgi?id=30080
+
+ Now the data from didReceiveData callback is passed to inspector.
+ It is then saved in NetworkResourcesData structure for plugin requests.
+ Added window.internals.setInspectorResourcesDataSizeLimits() method
+ for testing replacement logic.
+
+ Reviewed by Pavel Feldman.
+
+ Tests: http/tests/inspector/network/network-content-replacement-embed.html
+ http/tests/inspector/network/network-content-replacement-xhr.html
+ http/tests/inspector/network/network-embed.html
+
+ * WebCore.exp.in:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::setResourcesDataSizeLimitsFromInternals):
+ * inspector/InspectorController.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didReceiveDataImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::didReceiveData):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::didReceiveResponse):
+ (WebCore::InspectorResourceAgent::didReceiveData):
+ (WebCore::InspectorResourceAgent::didFinishLoading):
+ (WebCore::InspectorResourceAgent::setInitialXHRContent):
+ (WebCore::InspectorResourceAgent::setResourcesDataSizeLimitsFromInternals):
+ (WebCore::InspectorResourceAgent::getResourceContent):
+ * inspector/InspectorResourceAgent.h:
+ * inspector/NetworkResourcesData.cpp:
+ (WebCore::NetworkResourcesData::ResourceData::ResourceData):
+ (WebCore::NetworkResourcesData::ResourceData::setContent):
+ (WebCore::NetworkResourcesData::ResourceData::purgeContent):
+ (WebCore::NetworkResourcesData::ResourceData::createDecoder):
+ (WebCore::NetworkResourcesData::ResourceData::dataLength):
+ (WebCore::NetworkResourcesData::ResourceData::appendData):
+ (WebCore::NetworkResourcesData::ResourceData::decodeDataToContent):
+ (WebCore::NetworkResourcesData::NetworkResourcesData):
+ (WebCore::NetworkResourcesData::responseReceived):
+ (WebCore::NetworkResourcesData::setResourceContent):
+ (WebCore::NetworkResourcesData::maybeAddResourceData):
+ (WebCore::NetworkResourcesData::maybeDecodeDataToContent):
+ (WebCore::NetworkResourcesData::data):
+ (WebCore::NetworkResourcesData::clear):
+ (WebCore::NetworkResourcesData::setResourcesDataSizeLimits):
+ (WebCore::NetworkResourcesData::ensureNoDataForIdentifier):
+ (WebCore::NetworkResourcesData::ensureFreeSpace):
+ * inspector/NetworkResourcesData.h:
+ (WebCore::NetworkResourcesData::ResourceData::hasContent):
+ (WebCore::NetworkResourcesData::ResourceData::content):
+ (WebCore::NetworkResourcesData::ResourceData::decoder):
+ (WebCore::NetworkResourcesData::ResourceData::buffer):
+ (WebCore::NetworkResourcesData::ResourceData::setBuffer):
+ (WebCore::NetworkResourcesData::ResourceData::hasData):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.prototype.get contentEncoded):
+ * inspector/front-end/ResourcePreviewView.js:
+ (WebInspector.ResourcePreviewView.prototype.contentLoaded):
+ (WebInspector.ResourcePreviewView.prototype._createEmptyView):
+ (WebInspector.ResourcePreviewView.prototype._createPreviewView):
+ * inspector/front-end/ResourceView.js:
+ (WebInspector.ResourceView.hasTextContent):
+ * loader/DocumentThreadableLoader.cpp:
+ (WebCore::DocumentThreadableLoader::didReceiveData):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::willLoadMediaElementURL):
+ (WebCore::FrameLoader::commitProvisionalLoad):
+ (WebCore::FrameLoader::loadResourceSynchronously):
+ (WebCore::FrameLoader::loadedResourceFromMemoryCache):
+ * loader/ResourceLoadNotifier.cpp:
+ (WebCore::ResourceLoadNotifier::didReceiveData):
+ (WebCore::ResourceLoadNotifier::dispatchDidReceiveData):
+ (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
+ * loader/ResourceLoadNotifier.h:
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::didReceiveData):
+ * testing/Internals.cpp:
+ (WebCore::Internals::setInspectorResourcesDataSizeLimits):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2011-07-05 Kent Tamura <tkent@chromium.org>
+
+ Add an assertion that percent height box is unregistered correctly.
+ https://bugs.webkit.org/show_bug.cgi?id=62792
+
+ Reviewed by Hajime Morita.
+
+ No new tests. This won't change behavior.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::hasPercentHeightDescendant): Added.
+ * rendering/RenderBlock.h: Declare hasPercentHeightDescendant().
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::destroy): Assert !hasPercentHeightDescendant().
+
+2011-07-04 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: Enable settings screen with settings for console and elements panels.
+ https://bugs.webkit.org/show_bug.cgi?id=62853
+
+ Reviewed by Yury Semikhatsky.
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/HelpScreen.js:
+ (WebInspector.HelpScreen.prototype.hide):
+ * inspector/front-end/SettingsScreen.js:
+ (WebInspector.SettingsScreen):
+ (WebInspector.SettingsScreen.prototype._createRadioSetting.clickListener):
+ (WebInspector.SettingsScreen.prototype._createRadioSetting.get for):
+ * inspector/front-end/ShortcutsScreen.js:
+ (WebInspector.ShortcutsScreen.prototype.hide):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype._colorFormatSettingChanged):
+ (WebInspector.StylesSidebarPane.prototype._updateColorFormatFilter.get var):
+ (WebInspector.StylesSidebarPane.prototype._updateColorFormatFilter):
+ (WebInspector.StylesSidebarPane.prototype._changeSetting):
+ (WebInspector.StylePropertyTreeElement.prototype.updateTitle.):
+ * inspector/front-end/inspector.css:
+ (#counters):
+ * inspector/front-end/inspector.js:
+ (WebInspector._createGlobalStatusBarItems):
+ (WebInspector._toggleSettings):
+ (WebInspector._showShortcutsScreen):
+ (WebInspector._hideShortcutsScreen):
+ (WebInspector._showSettingsScreen.onhide):
+ (WebInspector._showSettingsScreen):
+ (WebInspector._hideSettingsScreen):
+ (WebInspector.documentKeyDown):
+
+2011-07-05 Shinya Kawanaka <shinyak@google.com>
+
+ Reviewed by Kent Tamura.
+
+ The default step is used when attribute step of input[type='number'] is "any".
+ https://bugs.webkit.org/show_bug.cgi?id=57723
+
+ When step is "any", 0 was chosen as step, but this is not intuitive.
+ So changed to use the default step.
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::getAllowedValueStep):
+ Calls getAllowedValueStepWithDecimalPlaces with RejectAny.
+ (WebCore::HTMLInputElement::getAllowedValueStepWithDecimalPlaces):
+ Takes a new arugument AnyStepHandling. If it is AnyIsDefaultStep, this method
+ allows "step" attribute to take a value "any" to use the default step as step value.
+ Otherwise, INVALID_STATE_ERR will be returned if "step" is "any".
+ (WebCore::HTMLInputElement::applyStep): ditto.
+ (WebCore::HTMLInputElement::stepUp):
+ Calls applyStep with RejectAny.
+ (WebCore::HTMLInputElement::stepDown): ditto.
+ (WebCore::HTMLInputElement::stepUpFromRenderer):
+ Removes a check that step is "any". It is checked in getAllowedValueStepWithDecimalPlaces.
+ * html/HTMLInputElement.h:
+
+2011-07-04 Dominic Cooney <dominicc@chromium.org>
+
+ Simplify <progress> element's isDeterminate logic.
+ https://bugs.webkit.org/show_bug.cgi?id=63889
+
+ Reviewed by Hajime Morita.
+
+ Covered by existing tests
+ fast/dom/HTMLProgressElement/indeterminate-progress-*.html
+
+ * html/HTMLProgressElement.cpp:
+ (WebCore::HTMLProgressElement::position): don't duplicate isDeterminate
+ (WebCore::HTMLProgressElement::isDeterminate): remove redundant tests
+ (WebCore::HTMLProgressElement::didElementStateChange): fix formatting
+ * html/HTMLProgressElement.h:
+
+2011-07-04 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Kent Tamura.
+
+ [EFL] Add hasOwnDisabledStateHandlingFor() to RenderThemeEfl
+ https://bugs.webkit.org/show_bug.cgi?id=63884
+
+ As MediaControlRootElement decides whether it will display timeline
+ according to the return value of RenderTheme's hasOwnDisabledStateHandlingFor(),
+ RenderThemeEfl has to implement this function.
+
+ Existing tests cover the visibility of the controls.
+
+ * platform/efl/RenderThemeEfl.h:
+ (WebCore::RenderThemeEfl::hasOwnDisabledStateHandlingFor):
+
+2011-07-04 Kent Tamura <tkent@chromium.org>
+
+ REGRESSION (r87067): Text overflows from short height text field.
+ https://bugs.webkit.org/show_bug.cgi?id=61768
+
+ Reviewed by Dimitri Glazkov.
+
+ Since r87067, the RenderStyle for the inner text element is reset
+ by the value update, but the renderer for the inner text element
+ keeps to have metrics calculated by the previous style. So
+ RenderTextControlSingleLine::layout() didn't set a desired height
+ to the renderer for the inner text element.
+
+ This patch changes the style creation code so that it has the
+ desired height initially.
+
+ Test: fast/forms/textfield-overflow-by-value-update.html
+
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
+ Initialize m_desiredInnerTextHeight.
+ (WebCore::RenderTextControlSingleLine::layout):
+ Update m_desiredInnerTextHeight.
+ (WebCore::RenderTextControlSingleLine::styleDidChange):
+ Reset m_desiredInnerTextHeight.
+ (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
+ Sets the height if m_desiredInnerTextHeight has a concrete value.
+ * rendering/RenderTextControlSingleLine.h:
+ Declare m_desiredInnerTextHeight.
+
+2011-07-04 MORITA Hajime <morrita@google.com>
+
+ Accessing ShadowRoot.nodeList causes an assertion failure.
+ http://webkit.org/b/63798
+
+ The TreeScope destructor did clear the reference to TreeScope,
+ then the Node destructor accessing treeScope(), which results
+ an inconsistent state during the NodeList cache cleanup.
+
+ This change clears NodeList cache during the TreeScope destructor.
+ The Node destructor no longer does problematic NodeList cache
+ manipulation.
+
+ Test: fast/dom/shadow/shadow-root-node-list.html
+
+ Reviewed by Dimitri Glazkov.
+
+ * dom/Node.cpp:
+ (WebCore::Node::~Node):
+ (WebCore::Node::clearRareData):
+ * dom/Node.h:
+ * dom/TreeScope.cpp:
+ (WebCore::TreeScope::~TreeScope):
+
+2011-07-04 Vsevolod Vlasov <vsevik@chromium.org>
+
+ ResourceLoadNotifier::dispatchWillSendRequest should not compare StringImpl directly
+ https://bugs.webkit.org/show_bug.cgi?id=63873
+
+ Reviewed by Alexey Proskuryakov.
+
+ * loader/ResourceLoadNotifier.cpp:
+ (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
+
+2011-07-04 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r90373.
+ http://trac.webkit.org/changeset/90373
+ https://bugs.webkit.org/show_bug.cgi?id=63917
+
+ Breaks Qt Linux Release minimal (Requested by vsevik on
+ #webkit).
+
+ * WebCore.exp.in:
+ * inspector/InspectorController.cpp:
+ * inspector/InspectorController.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didReceiveContentLengthImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::didReceiveContentLength):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::didReceiveResponse):
+ (WebCore::InspectorResourceAgent::didReceiveContentLength):
+ (WebCore::InspectorResourceAgent::didFinishLoading):
+ (WebCore::InspectorResourceAgent::setInitialXHRContent):
+ (WebCore::InspectorResourceAgent::getResourceContent):
+ * inspector/InspectorResourceAgent.h:
+ * inspector/NetworkResourcesData.cpp:
+ (WebCore::NetworkResourcesData::ResourceData::ResourceData):
+ (WebCore::NetworkResourcesData::ResourceData::content):
+ (WebCore::NetworkResourcesData::ResourceData::appendContent):
+ (WebCore::NetworkResourcesData::ResourceData::purgeContent):
+ (WebCore::NetworkResourcesData::NetworkResourcesData):
+ (WebCore::NetworkResourcesData::responseReceived):
+ (WebCore::NetworkResourcesData::addResourceContent):
+ (WebCore::NetworkResourcesData::data):
+ (WebCore::NetworkResourcesData::clear):
+ (WebCore::NetworkResourcesData::ensureNoDataForIdentifier):
+ (WebCore::NetworkResourcesData::ensureFreeSpace):
+ * inspector/NetworkResourcesData.h:
+ (WebCore::NetworkResourcesData::ResourceData::hasContent):
+ (WebCore::NetworkResourcesData::ResourceData::setIsContentPurged):
+ (WebCore::NetworkResourcesData::ResourceData::textEncodingName):
+ (WebCore::NetworkResourcesData::ResourceData::setTextEncodingName):
+ * inspector/front-end/Resource.js:
+ * inspector/front-end/ResourcePreviewView.js:
+ (WebInspector.ResourcePreviewView.prototype.contentLoaded):
+ (WebInspector.ResourcePreviewView.prototype._createInnerView):
+ * inspector/front-end/ResourceView.js:
+ (WebInspector.ResourceView.hasTextContent):
+ * loader/DocumentThreadableLoader.cpp:
+ (WebCore::DocumentThreadableLoader::didReceiveData):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::willLoadMediaElementURL):
+ (WebCore::FrameLoader::commitProvisionalLoad):
+ (WebCore::FrameLoader::loadResourceSynchronously):
+ (WebCore::FrameLoader::loadedResourceFromMemoryCache):
+ * loader/ResourceLoadNotifier.cpp:
+ (WebCore::ResourceLoadNotifier::didReceiveData):
+ (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
+ (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
+ * loader/ResourceLoadNotifier.h:
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::didReceiveData):
+ * testing/Internals.cpp:
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2011-07-04 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Show content for plugin requests in network panel.
+ https://bugs.webkit.org/show_bug.cgi?id=30080
+
+ Reviewed by Pavel Feldman.
+
+ Tests: http/tests/inspector/network/network-content-replacement-embed.html
+ http/tests/inspector/network/network-content-replacement-xhr.html
+ http/tests/inspector/network/network-embed.html
+
+ * WebCore.exp.in:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::setResourcesDataSizeLimitsFromInternals):
+ * inspector/InspectorController.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didReceiveDataImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::didReceiveData):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::didReceiveResponse):
+ (WebCore::InspectorResourceAgent::didReceiveData):
+ (WebCore::InspectorResourceAgent::didFinishLoading):
+ (WebCore::InspectorResourceAgent::setInitialXHRContent):
+ (WebCore::InspectorResourceAgent::setResourcesDataSizeLimitsFromInternals):
+ (WebCore::InspectorResourceAgent::getResourceContent):
+ * inspector/InspectorResourceAgent.h:
+ * inspector/NetworkResourcesData.cpp:
+ (WebCore::NetworkResourcesData::ResourceData::ResourceData):
+ (WebCore::NetworkResourcesData::ResourceData::setContent):
+ (WebCore::NetworkResourcesData::ResourceData::purgeContent):
+ (WebCore::NetworkResourcesData::ResourceData::createDecoder):
+ (WebCore::NetworkResourcesData::ResourceData::dataLength):
+ (WebCore::NetworkResourcesData::ResourceData::appendData):
+ (WebCore::NetworkResourcesData::ResourceData::decodeDataToContent):
+ (WebCore::NetworkResourcesData::NetworkResourcesData):
+ (WebCore::NetworkResourcesData::responseReceived):
+ (WebCore::NetworkResourcesData::setResourceContent):
+ (WebCore::NetworkResourcesData::maybeAddResourceData):
+ (WebCore::NetworkResourcesData::maybeDecodeDataToContent):
+ (WebCore::NetworkResourcesData::data):
+ (WebCore::NetworkResourcesData::clear):
+ (WebCore::NetworkResourcesData::setResourcesDataSizeLimits):
+ (WebCore::NetworkResourcesData::ensureNoDataForIdentifier):
+ (WebCore::NetworkResourcesData::ensureFreeSpace):
+ * inspector/NetworkResourcesData.h:
+ (WebCore::NetworkResourcesData::ResourceData::hasContent):
+ (WebCore::NetworkResourcesData::ResourceData::content):
+ (WebCore::NetworkResourcesData::ResourceData::decoder):
+ (WebCore::NetworkResourcesData::ResourceData::buffer):
+ (WebCore::NetworkResourcesData::ResourceData::setBuffer):
+ (WebCore::NetworkResourcesData::ResourceData::hasData):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.prototype.get contentEncoded):
+ * inspector/front-end/ResourcePreviewView.js:
+ (WebInspector.ResourcePreviewView.prototype.contentLoaded):
+ (WebInspector.ResourcePreviewView.prototype._createEmptyView):
+ (WebInspector.ResourcePreviewView.prototype._createPreviewView):
+ * inspector/front-end/ResourceView.js:
+ (WebInspector.ResourceView.hasTextContent):
+ * loader/DocumentThreadableLoader.cpp:
+ (WebCore::DocumentThreadableLoader::didReceiveData):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::willLoadMediaElementURL):
+ (WebCore::FrameLoader::commitProvisionalLoad):
+ (WebCore::FrameLoader::loadResourceSynchronously):
+ (WebCore::FrameLoader::loadedResourceFromMemoryCache):
+ * loader/ResourceLoadNotifier.cpp:
+ (WebCore::ResourceLoadNotifier::didReceiveData):
+ (WebCore::ResourceLoadNotifier::dispatchDidReceiveData):
+ (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
+ * loader/ResourceLoadNotifier.h:
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::didReceiveData):
+ * testing/Internals.cpp:
+ (WebCore::Internals::setInspectorResourcesDataSizeLimits):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2011-07-04 Jeff Timanus <twiz@chromium.org>
+
+ Reviewed by Stephen White.
+
+ Prevent calls to GrapicsContext3D::deleteTexture with id 0 in DrawingBuffer::clear().
+ https://bugs.webkit.org/show_bug.cgi?id=63756
+
+ * platform/graphics/gpu/DrawingBuffer.cpp:
+ (WebCore::DrawingBuffer::clear):
+
+2011-07-04 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Andreas Kling.
+
+ [GTK] r90148 did not apply to X11 platforms in WebKit1
+ https://bugs.webkit.org/show_bug.cgi?id=63862
+
+ Correct the guard for an X11 specific piece of code. TARGET(X11) not
+ defined for the GTK+ port.
+
+ No new tests. This is covered by an existing test.
+
+ * plugins/npapi.cpp: Correct the X11 guard.
+ (NPN_InvalidateRect):
+
+2011-07-04 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: implement settings panel.
+ https://bugs.webkit.org/show_bug.cgi?id=63907
+
+ Reviewed by Yury Semikhatsky.
+
+ * English.lproj/localizedStrings.js:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.XHRBreakpointsSidebarPane.prototype._saveBreakpoints):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._saveBreakpoints):
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView):
+ (WebInspector.ConsoleView.prototype._handleContextMenuEvent.monitoringXHRItemAction):
+ (WebInspector.ConsoleView.prototype._handleContextMenuEvent.get preserveLogItemAction):
+ (WebInspector.ConsoleView.prototype._monitoringXHREnabledSettingChanged):
+ (WebInspector.ConsoleView.prototype._registerShortcuts):
+ * inspector/front-end/DOMBreakpointsSidebarPane.js:
+ (WebInspector.DOMBreakpointsSidebarPane.prototype._saveBreakpoints):
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype._contextMenuEventFired):
+ (WebInspector.ElementsPanel.prototype._domWordWrapSettingChanged):
+ (WebInspector.ElementsPanel.prototype._registerShortcuts):
+ * inspector/front-end/EventListenersSidebarPane.js:
+ (WebInspector.EventListenersSidebarPane.prototype):
+ ():
+ * inspector/front-end/HelpScreen.js:
+ (WebInspector.HelpScreen):
+ (WebInspector.HelpScreen.prototype.show):
+ (WebInspector.HelpScreen.prototype.hide):
+ (WebInspector.HelpScreen.prototype._onKeyDown):
+ * inspector/front-end/NetworkItemView.js:
+ * inspector/front-end/NetworkPanel.js:
+ * inspector/front-end/Panel.js:
+ (WebInspector.Panel.prototype.saveSidebarWidth):
+ * inspector/front-end/ProfilesPanel.js:
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.BaseStorageTreeElement.prototype.onselect):
+ (WebInspector.StorageCategoryTreeElement.prototype.onexpand):
+ (WebInspector.StorageCategoryTreeElement.prototype.set oncollapse):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._sourceFileAdded.get if):
+ (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions.callback):
+ (WebInspector.ScriptsPanel.prototype._createSidebarButtonAndRegisterShortcuts):
+ * inspector/front-end/Settings.js:
+ (WebInspector.Settings):
+ (WebInspector.Settings.prototype.installApplicationSetting):
+ (WebInspector.Setting):
+ (WebInspector.Setting.prototype.addChangeListener):
+ (WebInspector.Setting.prototype.removeChangeListener):
+ (WebInspector.Setting.prototype.get var):
+ (WebInspector.Setting.prototype):
+ (WebInspector.Setting.prototype.set if):
+ * inspector/front-end/SettingsScreen.js: Added.
+ (WebInspector.SettingsScreen):
+ (WebInspector.SettingsScreen.prototype._appendSection):
+ (WebInspector.SettingsScreen.prototype._columnElement):
+ (WebInspector.SettingsScreen.prototype._createCheckboxSetting.get listener):
+ (WebInspector.SettingsScreen.prototype._createRadioSetting):
+ * inspector/front-end/ShortcutsScreen.js: Renamed from Source/WebCore/inspector/front-end/ShortcutsHelp.js.
+ (WebInspector.ShortcutsScreen):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype.registerShortcuts):
+ * inspector/front-end/WatchExpressionsSidebarPane.js:
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/helpScreen.css:
+ (.help-window-main):
+ (body.attached .help-window-main):
+ (.help-window-caption):
+ (body.attached .help-window-caption):
+ (.help-content):
+ (.help-close-button):
+ (body.attached .help-close-button):
+ (body.attached .help-content):
+ (.help-table):
+ (body.platform-mac .help-key):
+ (.help-combine-keys):
+ (.help-content p):
+ (.help-content fieldset):
+ (.help-content fieldset p):
+ (.help-content p.help-section):
+ (.help-section-title):
+ (.help-content input[type=checkbox]):
+ * inspector/front-end/inspector.css:
+ (button.settings-status-bar-item):
+ (.settings-status-bar-item .glyph):
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/inspector.js:
+ (WebInspector._createGlobalStatusBarItems):
+ (WebInspector._toggleAttach):
+ (WebInspector._toggleSettings):
+ (WebInspector._registerShortcuts):
+ (WebInspector.documentKeyDown):
+
+2011-07-04 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Resources loaded to Resources Panel from InspectorPageAgent do not have mime type set.
+ https://bugs.webkit.org/show_bug.cgi?id=63701
+
+ Pass cachedResource/documentLoader mimeType from InspectorPageAgent to frontend.
+
+ Reviewed by Yury Semikhatsky.
+
+ Test: http/tests/inspector/resource-tree/resource-tree-mimetype.html
+
+ * inspector/Inspector.json:
+ * inspector/InspectorPageAgent.cpp:
+ (WebCore::InspectorPageAgent::buildObjectForFrame):
+ (WebCore::InspectorPageAgent::buildObjectForFrameTree):
+ * inspector/front-end/ResourceTreeModel.js:
+ (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
+ (WebInspector.ResourceTreeModel.prototype._createResource):
+
+2011-07-04 Yury Semikhatsky <yurys@chromium.org>
+
+ Web Inspector: repeated message counter should be aligned with other message icons
+ https://bugs.webkit.org/show_bug.cgi?id=63901
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/inspector.css:
+ (.console-message .bubble):
+
+2011-07-04 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Adding new CSS rules should be more discoverable in the UI
+ https://bugs.webkit.org/show_bug.cgi?id=63803
+
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype._createNewRule):
+
+2011-07-04 Danilo Cesar Lemes de Paula <danilo.cesar@collabora.co.uk>
+
+ [Qt] Fixing build with --media-stream flag enabled
+ https://bugs.webkit.org/show_bug.cgi?id=63831
+
+ Reviewed by Benjamin Poulain.
+
+ * features.pri: Adding support to ENABLE_MEDIA_STREAM flag.
+
+2011-07-04 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Update network resource url from response data.
+ https://bugs.webkit.org/show_bug.cgi?id=63736
+
+ * inspector/Inspector.json:
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::buildObjectForResourceResponse):
+ * inspector/front-end/NetworkManager.js:
+ (WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
+
+2011-07-04 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [Extensions API] audit formatter names should begin with create
+ https://bugs.webkit.org/show_bug.cgi?id=63802
+
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.AuditResultImpl):
+
+2011-07-03 Dominic Cooney <dominicc@chromium.org>
+
+ The value property of an indeterminate progress element should be zero
+ https://bugs.webkit.org/show_bug.cgi?id=63861
+
+ Reviewed by Kent Tamura.
+
+ Test: fast/dom/HTMLProgressElement/set-progress-properties.html
+
+ * html/HTMLProgressElement.cpp:
+ (WebCore::HTMLProgressElement::value):
+
+2011-07-03 Robert Hogan <robert@webkit.org>
+
+ Restore scroll position on page reloads scheduled by <meta http-equiv="refresh" content="XX"/>
+ https://bugs.webkit.org/show_bug.cgi?id=62482
+
+ If a <meta http-equiv="refresh"> directive schedules a page reload rather than
+ a redirect restore the scroll position after the reload. Do the same on location.reload().
+
+ Reviewed by Adam Barth.
+
+ Tests: http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-2.html
+ http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier.html
+ http/tests/navigation/scrollstate-after-http-equiv-refresh.html
+ http/tests/navigation/scrollstate-after-location-reload.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadURL):
+ Only make the load FrameLoadTypeSame if it has not already been set as FrameLoadTypeReload*.
+ FrameLoadTypeReload* loads are set through http-equiv refreshes, manual reloads, or location.reload()
+ and honour the user's scroll position in the frame. A FrameLoadTypeSame is for when the frame is loading
+ the same page again, e.g. by clicking a link.
+
+ * loader/NavigationScheduler.cpp:
+ (WebCore::ScheduledRedirect::fire): Tell FrameLoader::changeLocation() if this is a reload.
+
+2011-07-03 Dirk Schulze <krit@webkit.org>
+
+ SVGAnimateTransform accumulate=sum restarts on every repeat
+ https://bugs.webkit.org/show_bug.cgi?id=63876
+
+ Reviewed by Nikolas Zimmermann.
+
+ We applied transforms from previous animation repeats to a transform list. The problem is, that we calculated the current
+ transform based on the percentage of the current repeat count. This causes an animation starting from scale level 0
+ on every repeat. Now I add the repeat count to the current percentage, so that the distance calculation starts from 100% on
+ the first repeat, from 200% on the second and so on.
+
+ Test: svg/animations/svgtransform-animation-1.html
+
+ * svg/SVGAnimateTransformElement.cpp:
+ (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
+
+2011-07-03 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r90342.
+ http://trac.webkit.org/changeset/90342
+ https://bugs.webkit.org/show_bug.cgi?id=63875
+
+ Newly added tests fail on Mac, GTK, and Win7 (Requested by
+ abarth on #webkit).
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadURL):
+ * loader/NavigationScheduler.cpp:
+
+2011-07-03 Robert Hogan <robert@webkit.org>
+
+ Restore scroll position on page reloads scheduled by <meta http-equiv="refresh" content="XX"/>
+ https://bugs.webkit.org/show_bug.cgi?id=62482
+
+ If a <meta http-equiv="refresh"> directive schedules a page reload rather than
+ a redirect restore the scroll position after the reload. Do the same on location.reload().
+
+ Reviewed by Adam Barth.
+
+ Tests: http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-2.html
+ http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier.html
+ http/tests/navigation/scrollstate-after-http-equiv-refresh.html
+ http/tests/navigation/scrollstate-after-location-reload.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadURL):
+ Only make the load FrameLoadTypeSame if it has not already been set as FrameLoadTypeReload*.
+ FrameLoadTypeReload* loads are set through http-equiv refreshes, manual reloads, or location.reload()
+ and honour the user's scroll position in the frame. A FrameLoadTypeSame is for when the frame is loading
+ the same page again, e.g. by clicking a link.
+
+ * loader/NavigationScheduler.cpp:
+ (WebCore::ScheduledRedirect::fire): Tell FrameLoader::changeLocation() if this is a reload.
+
+2011-04-02 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Benjamin Poulain.
+
+ [Qt] Support third-party cookie policy for Qt clients
+ https://bugs.webkit.org/show_bug.cgi?id=45455
+
+ Identifying third-party cookies is facilitated by API new to QUrl from
+ Qt 4.8: QUrl::topLevelDomain(). This API uses the Mozilla public suffix
+ list to determine the top-level registry-controlled domain of the Url.
+
+ See also: http://gitorious.org/qt/qt/merge_requests/1205
+ (commit 154402f56dcf8303a6ce601a52215226af8d31ba)
+ http://bugreports.qt.nokia.com/browse/QTBUG-13601
+
+ Test: http/tests/cookies/strict-third-party-cookie-blocking.html
+
+ * WebCore.pro:
+ * platform/network/qt/ResourceRequestQt.cpp:
+ (WebCore::ResourceRequest::toNetworkRequest):
+ * platform/qt/CookieJarQt.cpp:
+ (WebCore::setCookies):
+ (WebCore::cookies):
+ * platform/qt/ThirdPartyCookiesQt.cpp: Added.
+ (WebCore::cookieJar):
+ (WebCore::isFirstPartyCookie):
+ (WebCore::cookieAllowed):
+ (WebCore::allowThirdPartyCookies):
+ * platform/qt/ThirdPartyCookiesQt.h: Added.
+
+2011-07-03 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Web Inspector: Preflight OPTIONS requests are not shown on network panel for asynchronous XHRs.
+ https://bugs.webkit.org/show_bug.cgi?id=63712
+
+ Added InspectorInstrumentation calls to preflight OPTIONS requests callbacks in DocumentThreadableLoader.
+
+ * loader/DocumentThreadableLoader.cpp:
+ (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
+ (WebCore::DocumentThreadableLoader::didReceiveResponse):
+ (WebCore::DocumentThreadableLoader::didReceiveData):
+ (WebCore::DocumentThreadableLoader::didFinishLoading):
+ (WebCore::DocumentThreadableLoader::didFail):
+ (WebCore::DocumentThreadableLoader::loadRequest):
+ * loader/DocumentThreadableLoader.h:
+
+2011-06-23 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] Windowless Plugins : <input> cursor blinks even after transferring focus to plugin
+ https://bugs.webkit.org/show_bug.cgi?id=30355
+
+ Test: plugins/mouse-click-plugin-clears-selection.html
+
+ PluginView needs to use page->focusController()->setFocusedNode() when focusing a plugin
+ in order to clear the FrameSelection in the currently focused node. In its platform-specific
+ code Chromium already does this (WebPluginContainerImpl.cpp).
+
+ * WebCore.exp.in: Add symbol for FocusController::setFocusedNode
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::focusPluginElement): Using FocusController::setFocusedNode() makes
+ the call to FocusController:setFocusedFrame() and Document::setFocusedNode()
+ redundant, since it calls both.
+
+2011-07-01 Michael Nordman <michaeln@google.com>
+
+ Reviewed by Darin Fisher.
+
+ [Chromium] FileSystem API can be used to learn about installed software on the user's computer.
+ Added a new MIMETypeRegistry method to return a type based on a well known set of mappings
+ without consulting the OS/registry.
+ https://bugs.webkit.org/show_bug.cgi?id=63220
+
+ No new tests, existing layout tests that invoke file.type apply.
+
+ * fileapi/File.cpp: Refactored the factory methods.
+ (WebCore::createBlobDataForFileWithType):
+ (WebCore::createBlobDataForFile):
+ (WebCore::createBlobDataForFileSystemFile):
+ (WebCore::File::File):
+ * platform/MIMETypeRegistry.cpp: Added getWellKnownMIMETypeForExtension() method.
+ (WebCore::mediaMIMETypeMap):
+ (WebCore::findMimeType):
+ (WebCore::MIMETypeRegistry::getWellKnownMIMETypeForExtension):
+ * platform/MIMETypeRegistry.h:
+ * platform/chromium/MIMETypeRegistryChromium.cpp: Added getWellKnownMIMETypeForExtension() method.
+ (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
+ (WebCore::MIMETypeRegistry::getWellKnownMIMETypeForExtension):
+ (WebCore::findMimeType):
+ * platform/chromium/PlatformBridge.h:
+
+2011-07-01 Tim Horton <timothy_horton@apple.com>
+
+ Reviewed by Darin Adler.
+
+ SVG data:image/svg+xml;base64 URLs inside CSS throw mime type warning
+ https://bugs.webkit.org/show_bug.cgi?id=54325
+
+ Add image/svg+xml to the list of acceptable MIME types for the Image type.
+
+ * inspector/front-end/inspector.js:
+ (WebInspector):
+
+2011-07-01 Tim Horton <timothy_horton@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Errors encountered within SVG documents should be reported to the console
+ https://bugs.webkit.org/show_bug.cgi?id=62599
+
+ Add SVGElement::reportAttributeParsingError, which will
+ write a Web Inspector console message if passed an SVGParsingError
+ and the attribute which was being applied, only in the case where
+ there is actually an error.
+
+ Include the SVG document's URI when writing to the Web Inspector
+ console, so that the UI displays both the filename and the line number.
+
+ * svg/SVGDocumentExtensions.cpp:
+ (WebCore::reportMessage):
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::reportAttributeParsingError):
+ * svg/SVGElement.h:
+
+2011-07-01 Scott Byer <scottbyer@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Smooth scrolling fixes
+ https://bugs.webkit.org/show_bug.cgi?id=63770
+
+ Tests: Chromium webkit_unit_tests ScrollAnimatorNoneTest.ScrollWheelTrace and .LinuxTrackPadTrace
+
+ Fix issues found in manual testing; distill the traces into unit tests. Fix the issues the tests exposed in the
+ scroll animation code.
+
+ * platform/ScrollAnimatorNone.cpp:
+ (WebCore::ScrollAnimatorNone::PerAxisData::updateDataFromParameters):
+ (WebCore::ScrollAnimatorNone::scroll):
+
+2011-07-01 Levi Weintraub <leviw@chromium.org>
+
+ Switch primary virtual layout functions to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63852
+
+ Reviewed by Eric Seidel.
+
+ Switching the primary overloaded layout functions over to the new layout unit abstraction.
+
+ No new tests, no functionality changes.
+
+ * html/shadow/MediaControlElements.cpp:
+ (WebCore::RenderMediaVolumeSliderContainer::layout):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::layout):
+ * rendering/AutoTableLayout.cpp:
+ (WebCore::AutoTableLayout::layout):
+ * rendering/FixedTableLayout.cpp:
+ (WebCore::FixedTableLayout::layout):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::layout):
+ * rendering/RenderFrameSet.cpp:
+ (WebCore::RenderFrameSet::layout):
+ * rendering/RenderMedia.cpp:
+ (WebCore::RenderMedia::layout):
+ * rendering/RenderRubyRun.cpp:
+ (WebCore::RenderRubyRun::layout):
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::RenderScrollbarPart::layout):
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::layout):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::layout):
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::layout):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::layout):
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::layout):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::layout):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::layoutDelta):
+ (WebCore::RenderView::addLayoutDelta):
+ * rendering/mathml/RenderMathMLRoot.cpp:
+ (WebCore::RenderMathMLRoot::layout):
+ * rendering/mathml/RenderMathMLRow.cpp:
+ (WebCore::RenderMathMLRow::layout):
+ * rendering/mathml/RenderMathMLSquareRoot.cpp:
+ (WebCore::RenderMathMLSquareRoot::layout):
+ * rendering/mathml/RenderMathMLSubSup.cpp:
+ (WebCore::RenderMathMLSubSup::layout):
+ * rendering/mathml/RenderMathMLUnderOver.cpp:
+ (WebCore::RenderMathMLUnderOver::layout):
+
+2011-07-01 Sam Weinig <sam@webkit.org>
+
+ Reduce parser nesting cap to 512
+ https://bugs.webkit.org/show_bug.cgi?id=63856
+
+ Reviewed by Dan Bernstein.
+
+ Given Firefox's cap of 200, our cap of 2048 seemed a little excessive. Lower
+ the nesting cap to 512 to cover more cases where rending recursion was biting us.
+
+ * page/Settings.h:
+ Reduce the nesting cap to 512.
+
+2011-07-01 Darin Adler <darin@apple.com>
+
+ Add change accidentally left out of last commit.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateContentsScale): Multiply in the
+ backing scale.
+
+2011-07-01 Darin Adler <darin@apple.com>
+
+ Consider backing scale when setting up graphics layers
+ https://bugs.webkit.org/show_bug.cgi?id=63848
+
+ Reviewed by Simon Fraser.
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::clampedContentsScaleForScale):
+ Increased the maximum scale since scale factor can now include
+ both page contents scale and backing scale.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::createGraphicsLayer): Multiply in the
+ backing scale as well as the page contents scale.
+ (WebCore::RenderLayerBacking::updateForegroundLayer): Ditto.
+ (WebCore::RenderLayerBacking::updateMaskLayer): Ditto.
+ (WebCore::RenderLayerBacking::pageContentsScale): Added.
+ (WebCore::RenderLayerBacking::backingScale): Added.
+ * rendering/RenderLayerBacking.h: Added new private functions.
+
+2011-07-01 Adele Peterson <adele@apple.com>
+
+ Reviewed by Darin Adler.
+
+ WebCore part of fix for https://bugs.webkit.org/show_bug.cgi?id=63851
+ <rdar://problem/8981062> Crash when loading a document in an editable WebView that has a subframe with an unstyled body
+
+ No new tests. I tried to make a test in DumpRenderTree with an editable WebView,
+ but was unsuccessful in getting the crash to happen in that instance.
+
+ * editing/Editor.cpp: (WebCore::Editor::applyEditingStyleToElement): Add a nil check that exits early, in addition to the ASSERT.
+
+2011-07-01 Levi Weintraub <leviw@chromium.org>
+
+ Switch overflow and collapsedMargins to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63840
+
+ Reviewed by Eric Seidel.
+
+ Switching overflow and collapsedMargins over to the new layout unit abstraction.
+
+ Also removing an unused function: blockDirectionOverflow
+
+ No new tests, no functionality changes.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::collapsedMarginBeforeForChild):
+ (WebCore::RenderBlock::collapsedMarginAfterForChild):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::collapsedMarginBefore):
+ (WebCore::RenderBlock::collapsedMarginAfter):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::addOverflowFromChild):
+ (WebCore::RenderBox::addLayoutOverflow):
+ (WebCore::RenderBox::addVisualOverflow):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::layoutOverflowRect):
+ (WebCore::RenderBox::minYLayoutOverflow):
+ (WebCore::RenderBox::maxYLayoutOverflow):
+ (WebCore::RenderBox::minXLayoutOverflow):
+ (WebCore::RenderBox::maxXLayoutOverflow):
+ (WebCore::RenderBox::maxLayoutOverflow):
+ (WebCore::RenderBox::logicalLeftLayoutOverflow):
+ (WebCore::RenderBox::logicalRightLayoutOverflow):
+ (WebCore::RenderBox::visualOverflowRect):
+ (WebCore::RenderBox::minYVisualOverflow):
+ (WebCore::RenderBox::maxYVisualOverflow):
+ (WebCore::RenderBox::minXVisualOverflow):
+ (WebCore::RenderBox::maxXVisualOverflow):
+ (WebCore::RenderBox::logicalLeftVisualOverflow):
+ (WebCore::RenderBox::logicalRightVisualOverflow):
+ (WebCore::RenderBox::addOverflowFromChild):
+ (WebCore::RenderBox::collapsedMarginBefore):
+ (WebCore::RenderBox::collapsedMarginAfter):
+ * rendering/RenderOverflow.h:
+ (WebCore::RenderOverflow::RenderOverflow):
+ (WebCore::RenderOverflow::minYLayoutOverflow):
+ (WebCore::RenderOverflow::maxYLayoutOverflow):
+ (WebCore::RenderOverflow::minXLayoutOverflow):
+ (WebCore::RenderOverflow::maxXLayoutOverflow):
+ (WebCore::RenderOverflow::minYVisualOverflow):
+ (WebCore::RenderOverflow::maxYVisualOverflow):
+ (WebCore::RenderOverflow::minXVisualOverflow):
+ (WebCore::RenderOverflow::maxXVisualOverflow):
+ (WebCore::RenderOverflow::setMinYLayoutOverflow):
+ (WebCore::RenderOverflow::setMaxYLayoutOverflow):
+ (WebCore::RenderOverflow::setMinXLayoutOverflow):
+ (WebCore::RenderOverflow::setMaxXLayoutOverflow):
+ (WebCore::RenderOverflow::setMinYVisualOverflow):
+ (WebCore::RenderOverflow::setMaxYVisualOverflow):
+ (WebCore::RenderOverflow::setMinXVisualOverflow):
+ (WebCore::RenderOverflow::setMaxXVisualOverflow):
+ (WebCore::RenderOverflow::layoutOverflowRect):
+ (WebCore::RenderOverflow::visualOverflowRect):
+ (WebCore::RenderOverflow::move):
+ (WebCore::RenderOverflow::addLayoutOverflow):
+ (WebCore::RenderOverflow::addVisualOverflow):
+ (WebCore::RenderOverflow::setLayoutOverflow):
+ (WebCore::RenderOverflow::setVisualOverflow):
+ (WebCore::RenderOverflow::resetLayoutOverflow):
+
+2011-07-01 Nate Chapin <japhet@chromium.org>
+
+ Ensure WorkerScriptLoader::notifyFinished() doesn't re-enter.
+ https://bugs.webkit.org/show_bug.cgi?id=63835
+
+ Reviewed by Dmitry Titov.
+
+ Test: fast/workers/worker-finish-crash.html
+
+ * workers/WorkerScriptLoader.cpp:
+ (WebCore::WorkerScriptLoader::WorkerScriptLoader):
+ (WebCore::WorkerScriptLoader::notifyFinished):
+ * workers/WorkerScriptLoader.h:
+
+2011-07-01 Adrienne Walker <enne@google.com>
+
+ [chromium] Upload root layer textures first so that it is less likely to be skipped
+ https://bugs.webkit.org/show_bug.cgi?id=63850
+
+ Reviewed by James Robinson.
+
+ This is a tiny follow-on patch to bug 63760. If the root layer is not
+ uploaded first, then it may not have enough space to fit into texture
+ memory and might be skipped, leaving a blue background.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::updateLayers):
+
+2011-07-01 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ location.replace with a hash change does not update the history entry
+ https://bugs.webkit.org/show_bug.cgi?id=63777
+
+ location.replace('#foo') would not update the HistoryItem with the
+ new URL, thus navigating back to the page would use the previous
+ URL, even though it had been replaced. Make
+ HistoryController::updateForSameDocumentNavigation mirror
+ HistoryController::replaceState.
+
+ Test: fast/history/location-replace-hash.html
+
+ * loader/HistoryController.cpp:
+ (WebCore::HistoryController::updateForSameDocumentNavigation):
+
+2011-07-01 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Ojan Vafai.
+
+ Move m_isDirectional from FrameSelection to VisibleSelection
+ https://bugs.webkit.org/show_bug.cgi?id=63473
+
+ Move m_isDirectional from FrameSelection to VisibleSelection.
+
+ Also fixed a bug that WebKit does not preserve non-directional selection after undo.
+
+ Test: editing/selection/directionality-after-undo-replace.html
+
+ * WebCore.exp.in: Updated the signature of setSelection.
+ * editing/FrameSelection.cpp:
+ (WebCore::FrameSelection::FrameSelection): Removed the call to setIsDirectional.
+ (WebCore::shouldAlwaysUseDirectionalSelection): Added.
+ (WebCore::FrameSelection::setSelection): No longer takes DirectionalityPolicy.
+ Calls setIsDirectional(true) when the platform doesn't support non-directional selection.
+ Passes align and granularity to setSelection of the base end point as expected.
+ No longer updates granularity when updating the selection of a different frame.
+ (WebCore::FrameSelection::willBeModified): Calls VisibleSelection::isDirectional().
+ (WebCore::FrameSelection::modify): No longer calls trialFrameSelection.setIsDirectional
+ because the directionality is passed from m_selection automatically.
+ Also calls shouldAlwaysUseDirectionalSelection.
+ * editing/FrameSelection.h: Remove m_isDirectional. Make all boolean bit fields.
+ (WebCore::FrameSelection::setSelection): No longer takes DirectionalityPolicy.
+ * editing/VisibleSelection.cpp:
+ (WebCore::VisibleSelection::VisibleSelection): Initializes m_isDirectional to true.
+ This should be changed to false to fix the bug 60529.
+ * editing/VisibleSelection.h:
+ (WebCore::VisibleSelection::isDirectional): Added.
+ (WebCore::VisibleSelection::setIsDirectional): Added.
+ * page/EventHandler.cpp:
+ (WebCore::setNonDirectionalSelectionIfNeeded): Creates a non-directional selection instead of
+ calling setSelection with MakeNonDirectionalSelection.
+ (WebCore::EventHandler::handleMousePressEventSingleClick): Remove the call to setIsDirectional
+ because it already calls setNonDirectionalSelectionIfNeeded.
+
+2011-07-01 Tony Chang <tony@chromium.org>
+
+ cleanup of flexbox and marquee data naming in StyleRareNonInheritedData
+ https://bugs.webkit.org/show_bug.cgi?id=63827
+
+ Reviewed by Ojan Vafai.
+
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::RenderStyle):
+ (WebCore::RenderStyle::diff):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::boxAlign):
+ (WebCore::InheritedFlags::boxFlex):
+ (WebCore::InheritedFlags::boxFlexGroup):
+ (WebCore::InheritedFlags::boxLines):
+ (WebCore::InheritedFlags::boxOrdinalGroup):
+ (WebCore::InheritedFlags::boxOrient):
+ (WebCore::InheritedFlags::boxPack):
+ (WebCore::InheritedFlags::marqueeIncrement):
+ (WebCore::InheritedFlags::marqueeSpeed):
+ (WebCore::InheritedFlags::marqueeLoopCount):
+ (WebCore::InheritedFlags::marqueeBehavior):
+ (WebCore::InheritedFlags::marqueeDirection):
+ (WebCore::InheritedFlags::setBoxAlign):
+ (WebCore::InheritedFlags::setBoxFlex):
+ (WebCore::InheritedFlags::setBoxFlexGroup):
+ (WebCore::InheritedFlags::setBoxLines):
+ (WebCore::InheritedFlags::setBoxOrdinalGroup):
+ (WebCore::InheritedFlags::setBoxOrient):
+ (WebCore::InheritedFlags::setBoxPack):
+ (WebCore::InheritedFlags::setMarqueeIncrement):
+ (WebCore::InheritedFlags::setMarqueeSpeed):
+ (WebCore::InheritedFlags::setMarqueeDirection):
+ (WebCore::InheritedFlags::setMarqueeBehavior):
+ (WebCore::InheritedFlags::setMarqueeLoopCount):
+ * rendering/style/StyleRareNonInheritedData.cpp:
+ (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
+ (WebCore::StyleRareNonInheritedData::operator==):
+ * rendering/style/StyleRareNonInheritedData.h:
+ flexibleBox -> m_deprecatedFlexibleBox and marquee to m_marquee
+
+2011-07-01 Mike Reed <reed@google.com>
+
+ Stop using deprecated SkDeviceFactory API
+ https://bugs.webkit.org/show_bug.cgi?id=63488
+
+ Reviewed by James Robinson.
+
+ No new tests. Check-point for removing Factory API from Skia
+
+ * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
+ (WebCore::LayerTextureUpdaterSkPicture::createFrameBuffer):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
+
+2011-07-01 Jeffrey Pfau <jpfau@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Move XMLDocumentParser to new folder xml/parser/
+ https://bugs.webkit.org/show_bug.cgi?id=63666
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * GNUmakefile.list.am:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * WebCore.pri:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.vcproj/WebCoreCommon.vsprops:
+ * WebCore.vcproj/copyForwardingHeaders.cmd:
+ * WebCore.xcodeproj/project.pbxproj:
+ * xml/parser/XMLDocumentParser.cpp:
+ (WebCore::XMLDocumentParser::pushCurrentNode):
+ (WebCore::XMLDocumentParser::popCurrentNode):
+ (WebCore::XMLDocumentParser::clearCurrentNodeStack):
+ (WebCore::XMLDocumentParser::insert):
+ (WebCore::XMLDocumentParser::append):
+ (WebCore::XMLDocumentParser::handleError):
+ (WebCore::XMLDocumentParser::enterText):
+ (WebCore::toString):
+ (WebCore::XMLDocumentParser::exitText):
+ (WebCore::XMLDocumentParser::detach):
+ (WebCore::XMLDocumentParser::end):
+ (WebCore::XMLDocumentParser::finish):
+ (WebCore::XMLDocumentParser::finishWasCalled):
+ (WebCore::createXHTMLParserErrorHeader):
+ (WebCore::XMLDocumentParser::insertErrorMessageBlock):
+ (WebCore::XMLDocumentParser::notifyFinished):
+ (WebCore::XMLDocumentParser::isWaitingForScripts):
+ (WebCore::XMLDocumentParser::pauseParsing):
+ (WebCore::XMLDocumentParser::parseDocumentFragment):
+ * xml/parser/XMLDocumentParser.h:
+ (WebCore::XMLParserContext::context):
+ (WebCore::XMLParserContext::XMLParserContext):
+ (WebCore::XMLDocumentParser::create):
+ (WebCore::XMLDocumentParser::setIsXHTMLDocument):
+ (WebCore::XMLDocumentParser::isXHTMLDocument):
+ (WebCore::XMLDocumentParser::setIsXHTMLMPDocument):
+ (WebCore::XMLDocumentParser::isXHTMLMPDocument):
+ (WebCore::XMLDocumentParser::wellFormed):
+ (WebCore::XMLDocumentParser::context):
+ * xml/parser/XMLDocumentParserLibxml2.cpp:
+ (WebCore::PendingCallbacks::~PendingCallbacks):
+ (WebCore::PendingCallbacks::create):
+ (WebCore::PendingCallbacks::appendStartElementNSCallback):
+ (WebCore::PendingCallbacks::appendEndElementNSCallback):
+ (WebCore::PendingCallbacks::appendCharactersCallback):
+ (WebCore::PendingCallbacks::appendProcessingInstructionCallback):
+ (WebCore::PendingCallbacks::appendCDATABlockCallback):
+ (WebCore::PendingCallbacks::appendCommentCallback):
+ (WebCore::PendingCallbacks::appendInternalSubsetCallback):
+ (WebCore::PendingCallbacks::appendErrorCallback):
+ (WebCore::PendingCallbacks::callAndRemoveFirstCallback):
+ (WebCore::PendingCallbacks::isEmpty):
+ (WebCore::PendingCallbacks::PendingCallbacks):
+ (WebCore::PendingCallbacks::PendingCallback::~PendingCallback):
+ (WebCore::PendingCallbacks::PendingStartElementNSCallback::~PendingStartElementNSCallback):
+ (WebCore::PendingCallbacks::PendingStartElementNSCallback::call):
+ (WebCore::PendingCallbacks::PendingEndElementNSCallback::call):
+ (WebCore::PendingCallbacks::PendingCharactersCallback::~PendingCharactersCallback):
+ (WebCore::PendingCallbacks::PendingCharactersCallback::call):
+ (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::~PendingProcessingInstructionCallback):
+ (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::call):
+ (WebCore::PendingCallbacks::PendingCDATABlockCallback::~PendingCDATABlockCallback):
+ (WebCore::PendingCallbacks::PendingCDATABlockCallback::call):
+ (WebCore::PendingCallbacks::PendingCommentCallback::~PendingCommentCallback):
+ (WebCore::PendingCallbacks::PendingCommentCallback::call):
+ (WebCore::PendingCallbacks::PendingInternalSubsetCallback::~PendingInternalSubsetCallback):
+ (WebCore::PendingCallbacks::PendingInternalSubsetCallback::call):
+ (WebCore::matchFunc):
+ (WebCore::OffsetBuffer::OffsetBuffer):
+ (WebCore::OffsetBuffer::readOutBytes):
+ (WebCore::switchToUTF16):
+ (WebCore::shouldAllowExternalLoad):
+ (WebCore::openFunc):
+ (WebCore::readFunc):
+ (WebCore::writeFunc):
+ (WebCore::closeFunc):
+ (WebCore::errorFunc):
+ (WebCore::XMLParserContext::createStringParser):
+ (WebCore::XMLParserContext::createMemoryParser):
+ (WebCore::XMLDocumentParser::supportsXMLVersion):
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLParserContext::~XMLParserContext):
+ (WebCore::XMLDocumentParser::~XMLDocumentParser):
+ (WebCore::XMLDocumentParser::doWrite):
+ (WebCore::toString):
+ (WebCore::toAtomicString):
+ (WebCore::handleElementNamespaces):
+ (WebCore::handleElementAttributes):
+ (WebCore::XMLDocumentParser::startElementNs):
+ (WebCore::XMLDocumentParser::endElementNs):
+ (WebCore::XMLDocumentParser::characters):
+ (WebCore::XMLDocumentParser::error):
+ (WebCore::XMLDocumentParser::processingInstruction):
+ (WebCore::XMLDocumentParser::cdataBlock):
+ (WebCore::XMLDocumentParser::comment):
+ (WebCore::XMLDocumentParser::startDocument):
+ (WebCore::XMLDocumentParser::endDocument):
+ (WebCore::XMLDocumentParser::internalSubset):
+ (WebCore::getParser):
+ (WebCore::hackAroundLibXMLEntityBug):
+ (WebCore::startElementNsHandler):
+ (WebCore::endElementNsHandler):
+ (WebCore::charactersHandler):
+ (WebCore::processingInstructionHandler):
+ (WebCore::cdataBlockHandler):
+ (WebCore::commentHandler):
+ (WebCore::warningHandler):
+ (WebCore::fatalErrorHandler):
+ (WebCore::normalErrorHandler):
+ (WebCore::sharedXHTMLEntity):
+ (WebCore::getXHTMLEntity):
+ (WebCore::getEntityHandler):
+ (WebCore::startDocumentHandler):
+ (WebCore::endDocumentHandler):
+ (WebCore::internalSubsetHandler):
+ (WebCore::externalSubsetHandler):
+ (WebCore::ignorableWhitespaceHandler):
+ (WebCore::XMLDocumentParser::initializeParserContext):
+ (WebCore::XMLDocumentParser::doEnd):
+ (WebCore::xmlDocPtrForString):
+ (WebCore::XMLDocumentParser::lineNumber):
+ (WebCore::XMLDocumentParser::columnNumber):
+ (WebCore::XMLDocumentParser::textPosition):
+ (WebCore::XMLDocumentParser::textPositionOneBased):
+ (WebCore::XMLDocumentParser::stopParsing):
+ (WebCore::XMLDocumentParser::resumeParsing):
+ (WebCore::XMLDocumentParser::appendFragmentSource):
+ (WebCore::attributesStartElementNsHandler):
+ (WebCore::parseAttributes):
+ * xml/parser/XMLDocumentParserQt.cpp:
+ (WebCore::EntityResolver::resolveUndeclaredEntity):
+ (WebCore::XMLDocumentParser::supportsXMLVersion):
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::~XMLDocumentParser):
+ (WebCore::XMLDocumentParser::doWrite):
+ (WebCore::XMLDocumentParser::initializeParserContext):
+ (WebCore::XMLDocumentParser::doEnd):
+ (WebCore::XMLDocumentParser::lineNumber):
+ (WebCore::XMLDocumentParser::columnNumber):
+ (WebCore::XMLDocumentParser::textPosition):
+ (WebCore::XMLDocumentParser::textPositionOneBased):
+ (WebCore::XMLDocumentParser::stopParsing):
+ (WebCore::XMLDocumentParser::resumeParsing):
+ (WebCore::XMLDocumentParser::appendFragmentSource):
+ (WebCore::attributesStartElementNsHandler):
+ (WebCore::parseAttributes):
+ (WebCore::prefixFromQName):
+ (WebCore::handleElementNamespaces):
+ (WebCore::handleElementAttributes):
+ (WebCore::XMLDocumentParser::parse):
+ (WebCore::XMLDocumentParser::startDocument):
+ (WebCore::XMLDocumentParser::parseStartElement):
+ (WebCore::XMLDocumentParser::parseEndElement):
+ (WebCore::XMLDocumentParser::parseCharacters):
+ (WebCore::XMLDocumentParser::parseProcessingInstruction):
+ (WebCore::XMLDocumentParser::parseCdata):
+ (WebCore::XMLDocumentParser::parseComment):
+ (WebCore::XMLDocumentParser::endDocument):
+ (WebCore::XMLDocumentParser::hasError):
+ (WebCore::XMLDocumentParser::parseDtd):
+ * xml/parser/XMLDocumentParserScope.cpp:
+ (WebCore::XMLDocumentParserScope::XMLDocumentParserScope):
+ (WebCore::XMLDocumentParserScope::~XMLDocumentParserScope):
+
+2011-07-01 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Reserve all tile textures at layer update time to guarantee
+ that they will be available at draw time.
+ https://bugs.webkit.org/show_bug.cgi?id=63760
+
+ In addition, this patch unreserves textures used by RenderSurface's
+ right after the RenderSurface has been used to free up memory for
+ subsequent RenderSurfaces.
+
+ This patch also "fixes" the pages that display a blue background when
+ running out of texture memory as the root layer tiles get reserved first
+ and are guaranteed to get textures.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::ContentLayerChromium):
+ (WebCore::ContentLayerChromium::visibleLayerRect):
+ (WebCore::ContentLayerChromium::setIsMask):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::paintContentsIfDirty):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::paintLayerContents):
+ (WebCore::LayerRendererChromium::drawLayer):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ * platform/graphics/chromium/LayerTexture.cpp:
+ (WebCore::LayerTexture::unreserve):
+ * platform/graphics/chromium/LayerTexture.h:
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::prepareToUpdate):
+ (WebCore::LayerTilerChromium::updateRect):
+ (WebCore::LayerTilerChromium::drawTiles):
+ * platform/graphics/chromium/RenderSurfaceChromium.cpp:
+ (WebCore::RenderSurfaceChromium::releaseContentsTexture):
+ * platform/graphics/chromium/RenderSurfaceChromium.h:
+ * platform/graphics/chromium/TextureManager.cpp:
+ (WebCore::TextureManager::unprotectTexture):
+ * platform/graphics/chromium/TextureManager.h:
+
+2011-07-01 Jungshik Shin <jshin@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Allow generic font family settings per script code.
+ https://bugs.webkit.org/show_bug.cgi?id=20797
+
+ Make generic font family getters/setters accept an additional
+ argument (script code). It has a default value so that if an embedder
+ does not have/want a per-script font family setting, call-sites
+ don't have to be changed.
+ This is to prepare for fixing bug 10874 (font selection is not
+ language-dependent) and bug 18085.
+
+ uscript.h has been updated to that of ICU 3.6 (the version of ICU on
+ Mac OS 10.5)
+
+ There should be no change in layout and no new layout test
+ is added.
+
+ * WebCore.exp.in:
+ * icu/unicode/uscript.h: updated to ICU 4.6
+ * page/Settings.cpp:
+ (WebCore::setGenericFontFamilyMap): helper to set generic family per script
+ (WebCore::getGenericFontFamilyForScript): helper function used by getters for fooFontFamily.
+ (WebCore::Settings::standardFontFamily):
+ (WebCore::Settings::setStandardFontFamily):
+ (WebCore::Settings::fixedFontFamily):
+ (WebCore::Settings::setFixedFontFamily):
+ (WebCore::Settings::serifFontFamily):
+ (WebCore::Settings::setSerifFontFamily):
+ (WebCore::Settings::sansSerifFontFamily):
+ (WebCore::Settings::setSansSerifFontFamily):
+ (WebCore::Settings::cursiveFontFamily):
+ (WebCore::Settings::setCursiveFontFamily):
+ (WebCore::Settings::fantasyFontFamily):
+ (WebCore::Settings::setFantasyFontFamily):
+ * page/Settings.h: setter and getter for FooFontFamily have a new optional argument, scriptCode.
+
+2011-07-01 Tony Chang <tony@chromium.org>
+
+ Reviewed by Ojan Vafai.
+
+ rename StyleFlexibleBoxData to StyleDeprecatedFlexibleBoxData
+ https://bugs.webkit.org/show_bug.cgi?id=63773
+
+ We will have a similar struct to hold CSS3 flexible box data, so
+ this makes way for the new class.
+ I will rename the member variable in RenderStyle.h in a follow up
+ change.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.order:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/style/RenderStyle.h:
+ * rendering/style/StyleAllInOne.cpp:
+ * rendering/style/StyleDeprecatedFlexibleBoxData.cpp:
+ (WebCore::StyleDeprecatedFlexibleBoxData::StyleDeprecatedFlexibleBoxData):
+ (WebCore::StyleDeprecatedFlexibleBoxData::operator==):
+ * rendering/style/StyleDeprecatedFlexibleBoxData.h:
+ (WebCore::StyleDeprecatedFlexibleBoxData::create):
+ (WebCore::StyleDeprecatedFlexibleBoxData::copy):
+ (WebCore::StyleDeprecatedFlexibleBoxData::operator!=):
+ * rendering/style/StyleRareNonInheritedData.h:
+
+2011-07-01 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ IndexedDB: Fix constants for webkitIDBTransaction.READ_WRITE/READ_ONLY
+ https://bugs.webkit.org/show_bug.cgi?id=63754
+
+ Fix values for the webkitIDBTransaction.READ_WRITE/READ_ONLY
+ constants. Douglas Stockwell pointed out that these were reverse
+ of what the spec says.
+
+ * storage/IDBTransaction.h:
+ * storage/IDBTransaction.idl:
+
+2011-07-01 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch positionForPoint to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63774
+
+ Switching positionForPoint functions to new layout unit abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/RenderBR.cpp:
+ (WebCore::RenderBR::positionForPoint):
+ * rendering/RenderBR.h:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::positionForPoint):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::positionForPoint):
+ * rendering/RenderBox.h:
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::positionForPoint):
+ * rendering/RenderFileUploadControl.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::positionForPoint):
+ * rendering/RenderInline.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::positionForPoint):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::positionForPoint):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::positionForPoint):
+ * rendering/RenderText.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlInnerBlock::positionForPoint):
+ * rendering/RenderTextControlSingleLine.h:
+ * rendering/svg/RenderSVGInlineText.cpp:
+ (WebCore::RenderSVGInlineText::positionForPoint):
+ * rendering/svg/RenderSVGInlineText.h:
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::positionForPoint):
+ * rendering/svg/RenderSVGText.h:
+
+2011-07-01 Andrew Scherkus <scherkus@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Re-enable WTF_USE_WEBAUDIO_FFMPEG for Chromium
+ https://bugs.webkit.org/show_bug.cgi?id=63783
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-07-01 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Daniel Bates.
+
+ [CMake] Don't compile unused bindings
+ https://bugs.webkit.org/show_bug.cgi?id=63741
+
+ * UseJSC.cmake: Added IF (ENABLE_XXX) around files.
+
+2011-07-01 Joone Hur <joone.hur@collabora.co.uk>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Add DeviceOrientation feature
+ https://bugs.webkit.org/show_bug.cgi?id=63720
+
+ Add DeviceMotionClientGtk.cpp and DeviceOrientationClientGtk.cpp to WebKitGtk+ build.
+
+ * GNUmakefile.am: Add DeviceMotionClientGtk.cpp, DeviceOrientationClientGtk.cpp.
+
+2011-07-01 Kentaro Hara <haraken@google.com>
+
+ Reviewed by Kent Tamura.
+
+ Disallow clicking an [X] button in 'search' input forms when 'disabled' attribute or 'readonly' attribute is set.
+ https://bugs.webkit.org/show_bug.cgi?id=63709
+
+ Ignore a cancel button event on a 'search' input form if 'disabled' attribute or
+ 'readonly' attribute is set to the input form.
+
+ Test: fast/forms/search-disabled-readonly.html
+
+ * html/shadow/TextControlInnerElements.cpp:
+ (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
+
+2011-06-30 Mikhail Naganov <mnaganov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [Chromium] Fix heap snapshots in a remote debugging session from Safari.
+ https://bugs.webkit.org/show_bug.cgi?id=63703
+
+ * inspector/front-end/HeapSnapshotWorker.js:
+ (.Function.prototype.bind.return.bound):
+ (.Function.prototype.bind):
+
+2011-07-01 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGAnimatedLengthListAnimator does not take additive="sum" into accout
+ https://bugs.webkit.org/show_bug.cgi?id=63705
+
+ Added support for additive animations to SVGAnimatedLengthListAnimator. Don't clear the animatedList if not
+ necessary.
+
+ SVGLength unit gets animated as well now. We used to take the unit of 'from' all the time.
+
+ Tests: svg/animations/svglength-animation-unitType.html
+ svg/animations/svglengthlist-animation-5.html
+
+ * svg/SVGAnimatedLength.cpp:
+ (WebCore::SVGAnimatedLengthAnimator::calculateAnimatedValue): Code clean-up and support for unit animation.
+ * svg/SVGAnimatedLengthList.cpp: Add support for additive animations.
+ (WebCore::SVGAnimatedLengthListAnimator::calculateAnimatedValue):
+ * svg/SVGLength.cpp:
+ (WebCore::SVGLength::SVGLength):
+ (WebCore::SVGLength::setValue): New setValue that gets the LengthType and UnitType as argument for supporting animations of units as well.
+ * svg/SVGLength.h:
+
+2011-07-01 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGAnimatedType should support SVGAnimatedInteger animation
+ https://bugs.webkit.org/show_bug.cgi?id=63789
+
+ Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368
+ This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGAnimatedInteger.
+
+ SVGAnimatedInteger is used for some attributes of SVG filter effects. The animation of those attributes work after this patch.
+
+ Test: svg/animations/svginteger-animation-1.html
+
+ * CMakeLists.txt: Added file to build system.
+ * GNUmakefile.list.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * svg/SVGAllInOne.cpp: Ditto.
+ * svg/SVGAnimateElement.cpp: Make use of AnimatedInteger.
+ (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateElement::calculateFromAndToValues):
+ (WebCore::SVGAnimateElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateElement::resetToBaseValue):
+ (WebCore::SVGAnimateElement::applyResultsToTarget):
+ (WebCore::SVGAnimateElement::calculateDistance):
+ * svg/SVGAnimatedInteger.cpp: Added. The new animator for SVGAnimatedInteger.
+ (WebCore::SVGAnimatedIntegerAnimator::SVGAnimatedIntegerAnimator):
+ (WebCore::SVGAnimatedIntegerAnimator::constructFromString):
+ (WebCore::SVGAnimatedIntegerAnimator::calculateFromAndToValues):
+ (WebCore::SVGAnimatedIntegerAnimator::calculateFromAndByValues):
+ (WebCore::SVGAnimatedIntegerAnimator::calculateAnimatedValue):
+ (WebCore::SVGAnimatedIntegerAnimator::calculateDistance):
+ * svg/SVGAnimatedInteger.h:
+ (WebCore::SVGAnimatedIntegerAnimator::~SVGAnimatedIntegerAnimator):
+ * svg/SVGAnimatedType.cpp: Added handler for AnimatedInteger.
+ (WebCore::SVGAnimatedType::~SVGAnimatedType):
+ (WebCore::SVGAnimatedType::createInteger):
+ (WebCore::SVGAnimatedType::integer):
+ (WebCore::SVGAnimatedType::valueAsString):
+ (WebCore::SVGAnimatedType::setValueAsString):
+ * svg/SVGAnimatedType.h:
+ * svg/SVGAnimatorFactory.h:
+ (WebCore::SVGAnimatorFactory::create):
+
+2011-06-30 Eugene Klyuchnikov <eustas.bug@gmail.com>
+
+ Reviewed by Pavel Feldman.
+
+ WebInspector: Performance / memory allocation issue in WebInspector.TextEditorModel.prototype._replaceTabsIfNeeded
+ https://bugs.webkit.org/show_bug.cgi?id=40447
+
+ Test: inspector/editor/text-editor-model-replace-tabs.html
+
+ * inspector/front-end/TextEditorModel.js:
+ (WebInspector.TextEditorModel.prototype._replaceTabsIfNeeded): avoid looped production of tail substrings
+
+2011-06-30 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [Chromium] Input type="range" slider thumb is rendered upside down on Mac OS X.
+ https://bugs.webkit.org/show_bug.cgi?id=63697
+
+ http://trac.webkit.org/changeset/86261 added a thumb flipping code
+ for Mac-WebKit2. Chromium also needs it.
+
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::paintSliderThumb): Always flip vertically on Chromium.
+
+2011-06-30 Kenichi Ishibashi <bashi@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ [Chromium] -webkit-text-stroke doesn't affect with non-zero width border property
+ https://bugs.webkit.org/show_bug.cgi?id=63698
+
+ Restore the stroke style when it is modified in RenderObject::drawLineForBoxSide() to show text stroke correctly.
+
+ Test: platform/chromium/fast/text/text-stroke-with-border.html
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::drawLineForBoxSide): Save/restore the stroke style.
+
+2011-06-30 Gwang Yoon Hwang <ryumiel@company100.net>
+
+ Reviewed by Nate Chapin.
+
+ [V8] Add ENABLE(INSPECTOR) guards around v8 custom bindings.
+ https://bugs.webkit.org/show_bug.cgi?id=63442
+
+ No new tests needed.
+
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
+
+2011-06-30 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Remove positionForCoordinates
+ https://bugs.webkit.org/show_bug.cgi?id=63765
+
+ Removing positionForCoordinate. We should always use positionForPoint. Also cleaning up
+ RenderBox's implementation of positionForPoint.
+
+ No new tests, there should be no functionality changes.
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::stringValue): Removing dead, or at least untested, code and
+ adding an ASSERT_NOT_REACHED.
+ (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::positionForPoint): cleaning up some ugly code.
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::positionForPoint):
+ * rendering/RenderObject.cpp:
+ * rendering/RenderObject.h:
+
+2011-06-30 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Improve WebGL object lifetime management in WebGLRenderingContext
+ https://bugs.webkit.org/show_bug.cgi?id=63635
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::getAttachedShaders): Use cached objects instead of querying the underlying GL.
+ (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): Ditto.
+ (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects): Multiple loop because objects might be removed from the table within an iteration.
+ * html/canvas/WebGLRenderingContext.h:
+
+2011-06-30 Rafael Brandao <rafael.lobo@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] build-webkit warning: cannot find file ElementShadowPseudoId.h
+ https://bugs.webkit.org/show_bug.cgi?id=63747
+
+ Removed reference to ElementShadowPseudoId.h that no longer exists.
+
+ * WebCore.pro:
+
+2011-06-30 Anders Carlsson <andersca@apple.com>
+
+ Fix clang build.
+
+ Remove the complete Widget constructor from the .exp.in file; since Widget is an abstract class,
+ its complete constructor can never be called and clang has stopped emitting it altogether.
+
+ * WebCore.exp.in:
+
+2011-06-30 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch paintingRootRect and RenderObject repaint methods to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63746
+
+ Switching paintingRootRect and RenderObject repaint functions over to the
+ new layout unit abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::repaintDuringLayoutIfMoved):
+ * rendering/RenderBox.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::paintingRootRect):
+ (WebCore::RenderObject::paint):
+ (WebCore::RenderObject::repaintUsingContainer):
+ (WebCore::RenderObject::repaintRectangle):
+ (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
+ (WebCore::RenderObject::repaintDuringLayoutIfMoved):
+ * rendering/RenderObject.h:
+
+2011-06-30 Cary Clark <caryclark@google.com>
+
+ Reviewed by James Robinson.
+
+ Use Skia if Skia on Mac Chrome is enabled
+ https://bugs.webkit.org/show_bug.cgi?id=62999
+
+ No new tests. This does not affect existing
+ functionality.
+
+ * WebCore.gyp/WebCore.gyp:
+ Include Skia and related files and exclude CG
+ and related files when building Chromium for Skia
+ on the Mac.
+
+ * loader/cache/CachedFont.cpp:
+ Rename CHROME to CHROMIUM.
+
+ * platform/chromium/DragImageRef.h:
+ * platform/graphics/FloatPoint.h:
+ * platform/graphics/FloatRect.h:
+ * platform/graphics/FloatSize.h:
+ * platform/graphics/FontPlatformData.h:
+ (WebCore::FontPlatformData::hash):
+ * platform/graphics/GlyphBuffer.h:
+ (WebCore::GlyphBuffer::advanceAt):
+ (WebCore::GlyphBuffer::add):
+ (WebCore::GlyphBuffer::expandLastAdvance):
+ * platform/graphics/IntPoint.h:
+ * platform/graphics/IntRect.h:
+ * platform/graphics/IntSize.h:
+ * platform/graphics/SimpleFontData.h:
+ * platform/graphics/cg/FloatPointCG.cpp:
+ * platform/graphics/cg/FloatRectCG.cpp:
+ * platform/graphics/cg/FloatSizeCG.cpp:
+ * platform/graphics/cg/IntPointCG.cpp:
+ * platform/graphics/cg/IntRectCG.cpp:
+ * platform/graphics/cg/IntSizeCG.cpp:
+ * platform/graphics/mac/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
+ (WebCore::createFontCustomPlatformData):
+ * platform/graphics/mac/FontCustomPlatformData.h:
+ (WebCore::FontCustomPlatformData::FontCustomPlatformData):
+ Ditto.
+
+2011-06-30 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Update SVG position values on SVG DOM updates
+ https://bugs.webkit.org/show_bug.cgi?id=62439
+
+ Test: svg/custom/crash-textPath-attributes.html
+
+ * rendering/svg/RenderSVGInline.cpp:
+ (WebCore::RenderSVGInline::destroy): Notify our containing RenderSVGText that it needs
+ to update its positioning information.
+
+ * rendering/svg/SVGInlineFlowBox.cpp:
+ (WebCore::SVGInlineFlowBox::calculateBoundaries): Check the type of the InlineBox
+ like the rest of the code (fixes an ASSERT_NOT_REACHED in InlineBox::calculateBoudaries).
+
+ * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
+ (WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextSubtree): Clear
+ our cached layout attributes every time we invalidate them. This avoids keeping stale
+ attribute that have a backpointer to a RenderObject.
+
+2011-06-30 Sreeram Ramachandran <sreeram@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Suppress modal JavaScript/HTML dialogs during unload events
+ https://bugs.webkit.org/show_bug.cgi?id=56397
+
+ Allows clients to specify whether to show alerts during unload handlers.
+ When checking for whether a page dismissal event is being dispatched,
+ it's important to check all frames on the page (otherwise it becomes a
+ loophole easily exploited).
+
+ Test: fast/loader/page-dismissal-modal-dialogs.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::FrameLoader):
+ (WebCore::FrameLoader::stopLoading):
+ (WebCore::FrameLoader::loadURL):
+ (WebCore::FrameLoader::loadWithDocumentLoader):
+ (WebCore::FrameLoader::stopAllLoaders):
+ (WebCore::FrameLoader::fireBeforeUnloadEvent):
+ * loader/FrameLoader.h:
+ (WebCore::FrameLoader::pageDismissalEventBeingDispatched):
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::requestImage):
+ * page/Chrome.cpp:
+ (WebCore::canRunModalIfDuringPageDismissal):
+ (WebCore::Chrome::canRunModalNow):
+ (WebCore::Chrome::runJavaScriptAlert):
+ (WebCore::Chrome::runJavaScriptConfirm):
+ (WebCore::Chrome::runJavaScriptPrompt):
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ (WebCore::ChromeClient::shouldRunModalDialogDuringPageDismissal):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::showModalDialog):
+
+2011-06-30 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Assertion failure in RenderSVGInlineText::characterStartsNewTextChunk
+ https://bugs.webkit.org/show_bug.cgi?id=63076
+
+ Tests: svg/custom/crash-text-in-textpath.svg
+ svg/custom/text-node-in-text-invalidated.svg
+
+ The problem was that we did not call setNeedsPositionUpdate on RenderSVGText. When
+ doing our layout, we would not update the attributes on our SVGRenderInlineText as
+ we would not lay it out.
+
+ This was caused by childrenChanged being overridden on SVGTextPositioningElement but
+ not on SVGTextPathElement.
+
+ As both classes shared the same mother class, it made sense to move the logic here.
+ There should be no other side effects as SVGTextPathElement and SVGTextPositioningElement
+ are the only classes deriving from SVGTextContentElement.
+
+ * svg/SVGTextContentElement.cpp:
+ (WebCore::SVGTextContentElement::childrenChanged): Moved this method from SVGTextPositioningElement.
+ * svg/SVGTextContentElement.h:
+ * svg/SVGTextPositioningElement.cpp:
+ (WebCore::SVGTextPositioningElement::svgAttributeChanged): Updated after updatePositioningValuesInRenderer
+ removal, replaced by RenderSVGText::locateRenderSVGTextAncestor.
+ * svg/SVGTextPositioningElement.h:
+
+2011-06-30 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed build fix for !ENABLE(DATABASE) after r84789.
+
+ * bindings/js/JSDOMBinding.cpp:
+
+2011-06-30 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ More ScrollableArea scaffolding
+ https://bugs.webkit.org/show_bug.cgi?id=63678
+
+ Add a way to get the enclosing scrollable area for a given scrollable area.
+ Also, add ScrollableArea::isPinnedInDirectionOfScrollDelta.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::enclosingScrollableArea):
+ Return 0 for now.
+
+ * page/FrameView.h:
+ Add FrameView::enclosingScrollableArea.
+
+ * platform/ScrollableArea.cpp:
+ (WebCore::ScrollableArea::isPinnedInDirectionOfScrollDelta):
+ Return whether the area is pinned in the direction of the scroll delta.
+
+ * platform/ScrollableArea.h:
+ Add new member functions.
+
+ * platform/chromium/FramelessScrollView.cpp:
+ (WebCore::FramelessScrollView::enclosingScrollableArea):
+ * platform/chromium/FramelessScrollView.h:
+ Add stub.
+
+ * platform/win/PopupMenuWin.h:
+ (WebCore::PopupMenuWin::enclosingScrollableArea):
+ Always return 0.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::enclosingScrollableLayer):
+ Add helper function.
+
+ (WebCore::RenderLayer::scrollByRecursively):
+ Use the new enclosingScrollableLayer helper function.
+
+ (WebCore::RenderLayer::enclosingScrollableArea):
+ Return the enclosing scrollable area.
+
+ * rendering/RenderLayer.h:
+ Add new member function.
+
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::enclosingScrollableArea):
+ Return 0 for now.
+
+ * rendering/RenderListBox.h:
+ Add new member function.
+
+2011-06-30 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Anders Carlsson.
+
+ [GTK] Crash observed with nspluginwrapper and flash
+ https://bugs.webkit.org/show_bug.cgi?id=62249
+
+ Test: plugins/invalidate-rect-with-null-npp-argument.html
+
+ * plugins/npapi.cpp:
+ (NPN_InvalidateRect): Guard against null instances here.
+
+2011-06-30 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch availableWidth/Height, logicalLeft/RightOffsetForLine to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63671
+
+ Switch availableWidth/Height, logicalLeft/RightOffsetForLine functions over to the
+ new layout unit abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::logicalLeftOffsetForLine):
+ (WebCore::RenderBlock::logicalRightOffsetForLine):
+ (WebCore::RenderBlock::availableLogicalWidthForLine):
+ (WebCore::RenderBlock::availableLogicalWidth):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalRightOffsetForLine):
+ (WebCore::RenderBlock::logicalLeftOffsetForLine):
+ (WebCore::RenderBlock::startOffsetForLine):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::availableLogicalHeight):
+ (WebCore::RenderBox::availableLogicalHeightUsing):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::availableLogicalWidth):
+ (WebCore::RenderBox::availableWidth):
+ (WebCore::RenderBox::availableHeight):
+
+2011-06-30 Adam Barth <abarth@webkit.org>
+
+ Remove useless ASSERT that breaks the build.
+
+ * dom/StyledElement.cpp:
+ (WebCore::parseColorStringWithCrazyLegacyRules):
+
+2011-06-30 Tab Atkins <jackalmage@gmail.com>
+
+ Reviewed by Adam Barth.
+
+ Fix legacy color attribute parsing to match HTML spec
+ https://bugs.webkit.org/show_bug.cgi?id=63029
+
+ Relevant spec link: http://www.whatwg.org/specs/web-apps/current-work/complete/common-microsyntaxes.html#rules-for-parsing-a-legacy-color-value
+ Fix legacy color attribute parsing (<body bgcolor>, <font color>, etc.) to match the HTML spec and more closely match other browsers.
+
+ Test: fast/dom/attribute-legacy-colors.html
+
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::addCSSColor):
+
+2011-06-28 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ IndexedDB: Prepare for running layout tests with LevelDB
+ https://bugs.webkit.org/show_bug.cgi?id=63593
+
+ Migration of data from SQLite to LevelDB must be done before the
+ m_backingStore map is checked for an open LevelDB, because if a
+ previous layout test has used LevelDB, it will be in the
+ m_backingStore map.
+
+ Covered by existing layout tests.
+
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::IDBFactoryBackendImpl::open):
+
+2011-06-30 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: introduce "filter" icons for timeline panel and elements sidebar.
+ https://bugs.webkit.org/show_bug.cgi?id=63731
+
+ * inspector/front-end/EventListenersSidebarPane.js:
+ * inspector/front-end/Images/paneFilterButtons.png: Added.
+ * inspector/front-end/Images/statusbarButtonGlyphs.png:
+ * inspector/front-end/StylesSidebarPane.js:
+ * inspector/front-end/inspector.css:
+ (.pane > .title > select):
+ (.pane > .title > select.select-settings):
+ (.pane > .title > select.select-filter):
+ (.timeline-filter-status-bar-item .glyph):
+
+2011-06-28 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ IndexedDB: Support for deleteIndex with LevelDB backing store
+ https://bugs.webkit.org/show_bug.cgi?id=63539
+
+ Covered by storage/indexeddb/mozilla/remove-index.html.
+
+ * storage/IDBLevelDBBackingStore.cpp:
+ (WebCore::IDBLevelDBBackingStore::deleteIndex):
+
+2011-06-30 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Ryosuke Niwa.
+
+ Crash when calling DOMSubtreeModified event when extracting range
+ contents.
+ https://bugs.webkit.org/show_bug.cgi?id=63650
+
+ Convert a few nodes to RefPtrs and add commonRoot verification checks
+ for Range::processContents.
+
+ Tests: fast/dom/Range/range-extract-contents-event-fire-crash.html
+ fast/dom/Range/range-extract-contents-event-fire-crash2.html
+
+ * dom/Range.cpp:
+ (WebCore::childOfCommonRootBeforeOffset):
+ (WebCore::Range::processContents):
+ (WebCore::Range::processContentsBetweenOffsets):
+ (WebCore::Range::processAncestorsAndTheirSiblings):
+
+2011-06-30 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ Add +[WebView _allowsRoundingHacks]
+ https://bugs.webkit.org/show_bug.cgi?id=63734
+
+ * WebCore.exp.in: Export TextRun::allowsRoundingHacks().
+ * platform/graphics/TextRun.cpp:
+ (WebCore::TextRun::allowsRoundingHacks): Added this accessor.
+ * platform/graphics/TextRun.h:
+
+2011-06-30 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ [WIN] Don't redefine the keyboard codes
+ https://bugs.webkit.org/show_bug.cgi?id=63726
+
+ Only define the codes when undefined.
+ r64957 fixed this problem for COMPILER(MINGW) but not for OS(WINCE).
+
+ * platform/WindowsKeyboardCodes.h:
+
+2011-06-30 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: hide "Enabled background events collection" option in context menu until the setting is persisted
+ https://bugs.webkit.org/show_bug.cgi?id=63708
+
+ The option has no much sense if it is not preserved between browser restarts.
+
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype._contextMenu):
+
+2011-06-30 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Remove dependnecy on IDL generation for disabled features in JSC bindings
+ https://bugs.webkit.org/show_bug.cgi?id=63718
+
+ Move the #if ENABLE() line directly after #include "config.h".
+ This enables us to compile all files even when we don't generate the IDL output.
+
+ * bindings/js/IDBBindingUtilities.cpp:
+ * bindings/js/JSConsoleCustom.cpp:
+ * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
+ * bindings/js/JSCustomXPathNSResolver.cpp:
+ * bindings/js/JSDOMApplicationCacheCustom.cpp:
+ * bindings/js/JSDeviceMotionEventCustom.cpp:
+ * bindings/js/JSDeviceOrientationEventCustom.cpp:
+ * bindings/js/JSInjectedScriptHostCustom.cpp:
+ * bindings/js/JSInjectedScriptManager.cpp:
+ * bindings/js/JSInspectorFrontendHostCustom.cpp:
+ * bindings/js/JSJavaScriptCallFrameCustom.cpp:
+ * bindings/js/JSSQLResultSetRowListCustom.cpp:
+ * bindings/js/JSSQLTransactionCustom.cpp:
+ * bindings/js/JSSQLTransactionSyncCustom.cpp:
+ * bindings/js/JSSVGElementInstanceCustom.cpp:
+ * bindings/js/JSStorageCustom.cpp:
+ * bindings/js/JSTouchCustom.cpp:
+ * bindings/js/JSTouchListCustom.cpp:
+ * bindings/js/JSXPathResultCustom.cpp:
+ * bindings/js/JavaScriptCallFrame.cpp:
+ * bindings/js/PageScriptDebugServer.cpp:
+ * bindings/js/ScriptDebugServer.cpp:
+ * bindings/js/ScriptGCEvent.cpp:
+ * bindings/js/ScriptProfile.cpp:
+ * bindings/js/WorkerScriptDebugServer.cpp:
+
+2011-06-30 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ [Chromium] Autofill suggestions appear in upper left corner after input change
+ https://bugs.webkit.org/show_bug.cgi?id=63702
+
+ This change fixes a few popup layout issues, some of which have existed for quite a while:
+ - the absence of the ChromeClientImpl::screenToWindow() implementation (the method used to always return (0, 0));
+ - the confusion of window and screen coordinates passed into the autofill popup client's setWindowRect() method;
+ - the use of the current frameRect() width as the target element's width (which was wrong when refreshing
+ a popup resized during the initial layout (e.g. made wider than the target element)).
+
+ No new tests, as this is a change to platform-specific widget code. The test case is provided in the bug description.
+
+ * platform/chromium/PopupMenuChromium.cpp:
+ (WebCore::PopupContainer::layoutAndGetRTLOffset): Use original target element width, not frameRect().width(),
+ since the latter gets updated if the popup is not the same width as the target element.
+ (WebCore::PopupContainer::refresh): Restore only the popup bounds rather than its original rectangle,
+ since it sometimes breaks the invalidation region and layout.
+
+2011-06-30 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r90102.
+ http://trac.webkit.org/changeset/90102
+ https://bugs.webkit.org/show_bug.cgi?id=63714
+
+ Lots of tests asserting beneath
+ SVGSMILElement::findInstanceTime (Requested by aroben on
+ #webkit).
+
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::SVGSMILElement::findInstanceTime):
+
+2011-06-30 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: remove ExtensionAPISchema.json
+ https://bugs.webkit.org/show_bug.cgi?id=63687
+
+ * inspector/front-end/ExtensionAPISchema.json: Removed.
+
+2011-06-30 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Unreviewed build fix for chromium.
+
+ * inspector/CodeGeneratorInspector.pm:
+
+2011-06-30 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Unreviewed build fix for mac.
+
+ * inspector/CodeGeneratorInspector.pm:
+
+2011-06-30 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Protocol: error object needs some improvement.
+ https://bugs.webkit.org/show_bug.cgi?id=63707
+
+ Current implementation is not useful in the code.
+ We need to have toString implementation with nice formatting
+ I'd like to use error.message property as the main place for the error's text.
+
+ * inspector/CodeGeneratorInspector.pm:
+
+2011-06-30 Mikhail Naganov <mnaganov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [Chromium] Support annotations for arrays in heap profiler.
+ https://bugs.webkit.org/show_bug.cgi?id=63690
+
+ * inspector/front-end/DetailedHeapshotGridNodes.js:
+ (WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
+
+
+2011-06-30 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed build fix for !ENABLE(SVG_ANIMATION) after r88663, r89187, r89220, r89431 and r89661.
+
+ * svg/SVGAnimatedAngle.h:
+ * svg/SVGAnimatedLength.h:
+ * svg/SVGAnimatedNumber.h:
+ * svg/SVGAnimatedRect.h:
+ * svg/SVGAnimatedString.h:
+
+2011-06-30 Gabor Loki <loki@webkit.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ Fixed several style and typo issues after r90091.
+ https://bugs.webkit.org/show_bug.cgi?id=63692
+
+ Rename yStart to extremaStartY during computing extremas
+
+ * platform/graphics/filters/FEMorphology.cpp:
+ (WebCore::FEMorphology::platformApplyGeneric):
+ * platform/graphics/filters/FEMorphology.h:
+
+2011-06-30 Oliver Varga <Varga.Oliver@stud.u-szeged.hu>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Speed up SVGSMILElement::findInstanceTime.
+ https://bugs.webkit.org/show_bug.cgi?id=61025
+
+ Replace the linear search to binary search on ordered list because
+ the previous searches from the beginning was not efficient.
+
+ No new tests this is only a performance tweak.
+
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::extractTimeFromVector):
+ (WebCore::SVGSMILElement::findInstanceTime):
+
+2011-06-30 Kentaro Hara <haraken@google.com>
+
+ Reviewed by Kent Tamura.
+
+ Change the label of an HTML5 file chooser button to "Choose Files"
+ https://bugs.webkit.org/show_bug.cgi?id=49245
+
+ We should notify capability of multiple files to users.
+
+ Test: fast/forms/input-file-label.html
+
+ * English.lproj/Localizable.strings:
+ * html/FileInputType.cpp:
+ (WebCore::UploadButtonElement::createForMultiple): Constructs a multiple file chooser button.
+ (WebCore::FileInputType::createShadowSubtree): Constructs a single/multiple file chooser button depending on 'multiple' attribute.
+ (WebCore::FileInputType::multipleAttributeChanged): Updates the label of the file chooser button.
+ * html/FileInputType.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::parseMappedAttribute): Updates the shadow tree of the file chooser button when 'multiple' attribute is set or unset.
+ * html/InputType.cpp:
+ (WebCore::InputType::multipleAttributeChanged): Virtual method to be overridden by FileInputType.
+ * html/InputType.h:
+ * platform/DefaultLocalizationStrategy.cpp:
+ (WebCore::DefaultLocalizationStrategy::fileButtonChooseFileLabel): Updated the description for "Choose File".
+ (WebCore::DefaultLocalizationStrategy::fileButtonChooseMultipleFilesLabel): Returns a string "Choose Files".
+ * platform/DefaultLocalizationStrategy.h:
+ * platform/LocalizationStrategy.h:
+ * platform/LocalizedStrings.cpp:
+ (WebCore::fileButtonChooseMultipleFilesLabel): Wrapper method for getting the "Choose Files" label.
+ * platform/LocalizedStrings.h:
+ * platform/brew/LocalizedStringsBrew.cpp:
+ (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
+ * platform/efl/LocalizedStringsEfl.cpp:
+ (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
+ * platform/gtk/LocalizedStringsGtk.cpp:
+ (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
+ * platform/haiku/LocalizedStringsHaiku.cpp:
+ (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
+ * platform/wx/LocalizedStringsWx.cpp:
+ (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
+
+2011-06-30 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ Replace isNodeInTextFormControl(Node*) by enclosingTextFormControl(const Position&)
+ https://bugs.webkit.org/show_bug.cgi?id=63672
+
+ Replaced isNodeInTextFormControl(Node*) by enclosingTextFormControl(const Position&).
+ Also added a safe toTextFormControl to HTMLFormControlElement.h.
+
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::doApply): Calls enclosingTextFormControl instead of manually
+ checking the tag name of shadowAncestorNode.
+ * editing/Editor.cpp:
+ (WebCore::Editor::selectionForCommand): Rewritten using enclosingTextFormControl and toTextFormControl.
+ (WebCore::Editor::cut): Calls enclosingTextFormControl instead of isNodeInTextFormControl.
+ (WebCore::Editor::copy): Ditto.
+ (WebCore::Editor::setBaseWritingDirection): Calls toTextFormControl instead of manually checking tag name.
+ * editing/FrameSelection.cpp:
+ (WebCore::FrameSelection::isInPasswordField): Calls enclosingTextFormControl.
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::doApply): Ditto.
+ * editing/htmlediting.cpp:
+ (WebCore::enclosingTextFormControl): Added.
+ * editing/htmlediting.h:
+ * html/HTMLFormControlElement.h:
+ (WebCore::toTextFormControl): Added.
+ * page/DragController.cpp:
+ (WebCore::DragController::startDrag): Calls enclosingTextFormControl instead of isNodeInTextFormControl.
+
+2011-06-27 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: source code is not highlighted after drawer height animations.
+ https://bugs.webkit.org/show_bug.cgi?id=62860
+
+ * inspector/front-end/Drawer.js:
+ (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
+ (WebInspector.Drawer.prototype._animateDrawerHeight):
+
+2011-06-30 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Dimitri Glazkov.
+
+ Crash if ShadowRoot has a text node.
+ https://bugs.webkit.org/show_bug.cgi?id=63607
+
+ Node::styleForRenderer() for Text node wasn't shadow-aware.
+ This change allow styleForRenderer() to know its visual parent by
+ passing NodeRenderingContext.
+
+ Changes other than NodeRenderingContext and Element is just a
+ follow up for change above.
+
+ * dom/Element.cpp: use NodeRenderingContext to resolve parent node.
+ (WebCore::Element::recalcStyle):
+ * dom/Node.cpp:
+ (WebCore::Node::styleForRenderer): Added NodeRenderingContext as a parameter.
+ * dom/Node.h:
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRendererFactory::createRendererAndStyle):
+ * html/HTMLOptGroupElement.cpp:
+ (WebCore::HTMLOptGroupElement::attach):
+ * html/HTMLOptionElement.cpp:
+ (WebCore::HTMLOptionElement::attach):
+ * html/HTMLTitleElement.cpp:
+ (WebCore::HTMLTitleElement::textWithDirection):
+ * html/shadow/TextControlInnerElements.cpp:
+ (WebCore::TextControlInnerElement::styleForRenderer):
+ (WebCore::TextControlInnerTextElement::styleForRenderer):
+ * html/shadow/TextControlInnerElements.h:
+
+ Test: fast/dom/shadow/shadow-root-text-child.html
+
+2011-06-30 Piroska András <Piroska.Andras@stud.u-szeged.hu>
+
+ Reviewed by Dirk Schulze.
+
+ Apply the ParallelJobs support to FEMorphology
+ https://bugs.webkit.org/show_bug.cgi?id=63064
+
+ The FEMorphology filter of SVG can consume lots of resources if it is
+ applied to a large area. The computation can be distributed to multiple
+ cores if the architecture supports.
+ The average performance progression is 20-25% on dual-core machines.
+
+ * platform/graphics/filters/FEMorphology.cpp:
+ (WebCore::FEMorphology::platformApplyGeneric): Apply the filter between yStart and yEnd interval
+ (WebCore::FEMorphology::platformApplyWorker): Call the generic apply from a parallel worker
+ (WebCore::FEMorphology::platformApply):
+ (WebCore::FEMorphology::apply): Move the functionality into platformApply
+ (WebCore::FEMorphology::externalRepresentation): Remove whitespaces
+ * platform/graphics/filters/FEMorphology.h:
+
+2011-06-29 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Avoid custom layout code of RenderTextControlSingleLine
+ https://bugs.webkit.org/show_bug.cgi?id=61415
+
+ If a text field has a search results button, a search cancel
+ button, a speech button, or a spin button, the editable inner text
+ element and the buttons are wrapped by a flexible box container,
+ and the editable inner text element has flexibility. As the result
+ of applying the flexible box, we don't need any horizontal layout
+ code in RenderTextControlSingleLine except the inner spin button.
+
+ Also, we remove custom hit-testing code in nodeAtPoint(). If a
+ user clicks on a position left of the inner editable text but not
+ on the search results button, the search results button doesn't
+ work though it worked.
+
+ * css/html.css:
+ (input::-webkit-textfield-decoration-container):
+ New style definition for the "container" element.
+ (input[type="search"]::-webkit-search-cancel-button):
+ It should be a block element because it's a child of the flexible box.
+ Also, this doesn't have flexibility.
+ (input[type="search"]::-webkit-search-decoration): ditto.
+ (input[type="search"]::-webkit-search-results-decoration): ditto.
+ (input[type="search"]::-webkit-search-results-button): ditto.
+ (input::-webkit-inner-spin-button): ditto.
+ (input::-webkit-input-speech-button): ditto.
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::containerElement):
+ Add an accessor of the flexible box container.
+ It just calls InputType::containerElement().
+ * html/HTMLInputElement.h: Declare it.
+ * html/InputType.h:
+ (WebCore::InputType::containerElement): New accessor for a shadow element.
+ * html/SearchInputType.cpp:
+ (WebCore::SearchInputType::SearchInputType):
+ m_innerBlock is moved to TextFieldInputType.
+ (WebCore::SearchInputType::needsContainer):
+ A search field always needs the flexible box container because
+ of the results button and the cancel button.
+ (WebCore::SearchInputType::createShadowSubtree):
+ Use TextFieldInputType::createShadowSubtree(), then modify the tree.
+ (WebCore::SearchInputType::destroyShadowSubtree):
+ m_innerBlock is moved to TextFieldInputType.
+ * html/SearchInputType.h:
+ * html/TextFieldInputType.cpp:
+ (WebCore::TextFieldInputType::TextFieldInputType):
+ Initialize the new members.
+ (WebCore::TextFieldInputType::needsContainer):
+ Returns true if x-webkit-speech. We check a spin button separately.
+ (WebCore::TextFieldInputType::createShadowSubtree):
+ Wrap everything with the flexible box container if needsContainer() or we need a spin button.
+ (WebCore::TextFieldInputType::containerElement): Added an accessor.
+ (WebCore::TextFieldInputType::innerBlockElement): ditto.
+ (WebCore::TextFieldInputType::innerTextElement): ditto.
+ (WebCore::TextFieldInputType::innerSpinButtonElement): ditto.
+ (WebCore::TextFieldInputType::speechButtonElement): ditto.
+ (WebCore::TextFieldInputType::destroyShadowSubtree):
+ Clear references to new shadow nodes.
+ * html/TextFieldInputType.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::containerElement): Added an accessor.
+ (WebCore::RenderTextControlSingleLine::innerTextElement):
+ (WebCore::RenderTextControlSingleLine::layout):
+ - Correct heights check
+ Comparing with height(), not contentHeigth(), was incorrect.
+ - Adjust the container height like the editable inner text.
+ - Remove width adjustment
+ - Remove the speech button layout code
+ The flexible box layout is enough.
+ (WebCore::RenderTextControlSingleLine::nodeAtPoint):
+ Remove custom code for results/cancel/speech buttons, and
+ Simplify comments.
+ (WebCore::RenderTextControlSingleLine::forwardEvent):
+ Remove custom forwarding code for results/cancel buttons.
+ (WebCore::RenderTextControlSingleLine::styleDidChange):
+ Clear the style of the container because we update it in layout().
+ (WebCore::RenderTextControlSingleLine::hasControlClip):
+ Decoration buttons should be clipped by the container.
+ (WebCore::RenderTextControlSingleLine::controlClipRect): ditto.
+ (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
+ We don't need to use display:inline-block any more.
+ (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
+ The text wrapper element should have flexibility.
+ (WebCore::RenderTextControlSingleLine::textBlockInsetTop):
+ Updated for the tree structure change.
+ * rendering/RenderTextControlSingleLine.h:
+
+2011-06-29 Kent Tamura <tkent@chromium.org>
+
+ [Mac] Attempt to fix Leopard build.
+
+ * platform/mac/CursorMac.mm:
+ (WebCore::Cursor::ensurePlatformCursor):
+
+2011-06-29 Darin Adler <darin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ [Mac] Use system cursors instead of custom bitmaps where possible
+ https://bugs.webkit.org/show_bug.cgi?id=63679
+
+ * Resources/crossHairCursor.png: Removed.
+ * Resources/notAllowedCursor.png: Removed.
+ * WebCore.exp.in: Added wkCursor.
+ * WebCore/WebCore.gyp/WebCore.gyp: Removed the two now-unused PNG files.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+
+ * platform/mac/CursorMac.mm:
+ (WebCore::Cursor::ensurePlatformCursor): Use NSCursor API for Cross, Hand,
+ VerticalText, ContextMenu, Copy, and NotAllowed. Use wkCursor for Move,
+ Alias, Progress, and the resize and panning cursors.
+
+ * platform/mac/WebCoreSystemInterface.h: Added wkCursor.
+ * platform/mac/WebCoreSystemInterface.mm: Ditto.
+
+2011-06-29 Keishi Hattori <keishi@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Remove extra space at EOL in view source mode
+ https://bugs.webkit.org/show_bug.cgi?id=63620
+
+ Test: fast/frames/viewsource-linebreak.html
+
+ * css/view-source.css:
+ (tbody:last-child .webkit-line-content:empty:before): If we don't do this
+ the last line will be empty and the height will be shorter than the rest.
+ * html/HTMLViewSourceDocument.cpp:
+ (WebCore::HTMLViewSourceDocument::addSource): If source file is empty, add an empty line.
+ (WebCore::HTMLViewSourceDocument::finishLine): Call when you are done with the current line.
+ Adds a BR element if the line is empty and sets current to tbody.
+ (WebCore::HTMLViewSourceDocument::addText):
+ * html/HTMLViewSourceDocument.h:
+
+2011-06-29 Brent Fulgham <bfulgham@webkit.org>
+
+ [WinCE] Correct logical state of WINCE test.
+
+ * platform/win/ScrollbarThemeWin.cpp: The #if OS(WINCE)
+ should have been #if !OS(WINCE)
+ (WebCore::ScrollbarThemeWin::paintTrackPiece):
+ (WebCore::ScrollbarThemeWin::paintButton):
+ (WebCore::ScrollbarThemeWin::paintThumb):
+ * rendering/RenderThemeWin.cpp: ditto.
+ (WebCore::drawControl):
+
+2011-06-29 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by Enrica Casucci.
+
+ I forgot to include these (reviewed) style fix-ups in my previous check-in.
+
+ * editing/htmlediting.cpp:
+ (WebCore::indexForVisiblePosition):
+ (WebCore::visiblePositionForIndex):
+
+2011-06-29 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by Enrica Casucci.
+
+ https://bugs.webkit.org/show_bug.cgi?id=62922
+ indexForVisiblePosition(const VisiblePosition& visiblePosition) does not consider shadow content
+
+ VisiblePositions can be inside web form text regions, which use shadow trees. Made indexForVisiblePosition
+ aware of this, and added a new parameter to obtain the scope for a VisiblePosition, in addition to its index.
+
+ Added visiblePositionForIndex to go in the opposite direction, taking into account the scope
+ used to compute the index.
+
+ These two functions use TextIterators to convert between VisiblePositions and indices. But
+ TextIterator iteration using TextIteratorEmitsCharactersBetweenAllVisiblePositions does not
+ exactly match VisiblePosition iteration, so using them to preserve a selection during an
+ editing operation is unreliable. This can be seen in the expected results for:
+
+ editing/execCommand/indent-pre-list.html
+ editing/execCommand/crash-indenting-list-item.html
+
+ TextIterator's TextIteratorEmitsCharactersBetweenAllVisiblePositions mode needs to be fixed, or
+ these functions need to be changed to iterate using actual VisiblePositions. See:
+
+ https://bugs.webkit.org/show_bug.cgi?id=63590
+ TextIterators in TextIteratorEmitsCharactersBetweenAllVisiblePositions do not exactly match VisiblePositions
+
+ Also:
+
+ https://bugs.webkit.org/show_bug.cgi?id=63592
+ Use visiblePositionForIndex and indexForVisiblePosition everywhere that TextIterators are used to convert between VisiblePositions and indices
+
+ No new tests added because indexForVisiblePosition is currently only used for editing operations
+ that cannot be performed inside web form fields.
+
+ * editing/ApplyBlockElementCommand.cpp:
+ (WebCore::ApplyBlockElementCommand::doApply):
+ * editing/InsertListCommand.cpp:
+ (WebCore::InsertListCommand::doApply):
+ * editing/htmlediting.cpp:
+ (WebCore::indexForVisiblePosition):
+ (WebCore::visiblePositionForIndex):
+ * editing/htmlediting.h:
+
+2011-06-29 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Remove ElementWithPseudoId, since now an Element can store it all by itself.
+ https://bugs.webkit.org/show_bug.cgi?id=63657
+
+ Refactoring, covered by existing tests.
+
+ * CMakeLists.txt: Removed ElementWithPseudoId from build.
+ * GNUmakefile.list.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.order: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * html/ColorInputType.cpp:
+ (WebCore::ColorInputType::createShadowSubtree): Changed to use plain-old HTMLDivElement.
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::createShadowSubtree): Ditto.
+ * html/ValidationMessage.cpp:
+ (WebCore::ValidationMessage::buildBubbleTree): Ditto.
+ * html/shadow/ElementWithPseudoId.cpp: Removed.
+ * html/shadow/ElementWithPseudoId.h: Removed.
+
+2011-06-29 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch computeWidth and computeHeight functions to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63655
+
+ Switch computeWidth and computeHeight functions over to the new layout unit abstraction.
+
+ Making a point to mark rounding that should eventually be removed by linking to a new
+ tracking bug: 63645.
+
+ No new tests, no functionality changes.
+
+ * rendering/AutoTableLayout.cpp:
+ (WebCore::AutoTableLayout::computePreferredLogicalWidths):
+ * rendering/AutoTableLayout.h:
+ * rendering/FixedTableLayout.cpp:
+ (WebCore::FixedTableLayout::computePreferredLogicalWidths):
+ * rendering/FixedTableLayout.h:
+ * rendering/LayoutTypes.h:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::computePreferredLogicalWidths):
+ (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
+ (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computeLogicalWidthUsing):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::computeLogicalHeightUsing):
+ (WebCore::RenderBox::computePercentageLogicalHeight):
+ (WebCore::RenderBox::computeReplacedLogicalWidth):
+ (WebCore::RenderBox::computeReplacedLogicalWidthRespectingMinMaxWidth):
+ (WebCore::RenderBox::computeReplacedLogicalWidthUsing):
+ (WebCore::RenderBox::computeReplacedLogicalHeight):
+ (WebCore::RenderBox::computeReplacedLogicalHeightRespectingMinMaxHeight):
+ (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
+ * rendering/RenderBox.h:
+ * rendering/RenderIFrame.cpp:
+ (WebCore::RenderIFrame::computeLogicalWidth):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::computeReplacedLogicalWidth):
+ (WebCore::RenderImage::computeReplacedLogicalHeight):
+ * rendering/RenderImage.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::computePreferredLogicalWidths):
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::computePreferredLogicalWidths):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::computePreferredLogicalWidths):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::computeReplacedLogicalWidth):
+ (WebCore::RenderReplaced::computeReplacedLogicalHeight):
+ (WebCore::RenderReplaced::computePreferredLogicalWidths):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::computePreferredLogicalWidths):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::computeLogicalWidth):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::computePreferredLogicalWidths):
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::computeReplacedLogicalWidth):
+ (WebCore::RenderVideo::computeReplacedLogicalHeight):
+ * rendering/RenderVideo.h:
+ * rendering/svg/RenderSVGForeignObject.cpp:
+ (WebCore::RenderSVGForeignObject::computeLogicalWidth):
+ (WebCore::RenderSVGForeignObject::computeLogicalHeight):
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
+ (WebCore::RenderSVGRoot::computeIntrinsicWidth):
+ (WebCore::RenderSVGRoot::computeIntrinsicHeight):
+ (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
+ (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
+ (WebCore::RenderSVGRoot::layout):
+ * rendering/svg/RenderSVGRoot.h:
+
+2011-06-23 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by James Robinson.
+
+ In RenderBlock, RenderWidget and RenderReplaced destroy functions,
+ call dirtyLinesFromChangedChild to tell our parent that we are going away.
+ https://bugs.webkit.org/show_bug.cgi?id=60307
+
+ Test: fast/block/child-not-removed-from-parent-lineboxes-crash.html
+ fast/block/block-not-removed-from-parent-lineboxes-crash.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::destroy):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::destroy):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::destroy):
+
+2011-06-29 Brent Fulgham <bfulgham@webkit.org>
+
+ Speculative WinCE build correction.
+
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::drawControl): Don't call setRGBABitmapAlpha
+ for WinCE case.
+
+2011-06-29 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION(r89952): r89952 added a wrong assertion in visible_units.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=63668
+
+ We need to assert the offset to be zero only when the position is NOT offset in node.
+
+ * editing/visible_units.cpp:
+ (WebCore::startOfParagraph):
+
+2011-06-29 Brent Fulgham <bfulgham@webkit.org>
+
+ Speculative WinCE build correction after r90057.
+
+ * CMakeListsWinCE.txt: Roll back r90061, since GetWorldTransform
+ is not available in WinCE.
+ * platform/win/ScrollbarThemeWin.cpp: Conditionally exclude calls
+ to DIBPixelData::setRGBABitmapAlpha for WinCE.
+ (WebCore::ScrollbarThemeWin::paintTrackPiece):
+ (WebCore::ScrollbarThemeWin::paintButton):
+ (WebCore::ScrollbarThemeWin::paintThumb):
+
+2011-06-29 Brent Fulgham <bfulgham@webkit.org>
+
+ Speculative WinCE build correction after r90057.
+
+ * CMakeListsWinCE.txt: Add missing DIBPixelData.cpp to
+ WinCE build to support setting bitmap image alpha value.
+
+2011-06-29 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ Lay some groundwork for rubber-banding in overflow:scroll divs
+ https://bugs.webkit.org/show_bug.cgi?id=63654
+
+ Make it possible for scrollTop and scrollLeft on a RenderLayer to be
+ set to negative values, which we will do during rubber-banding in
+ future. Continue to clamp programmatic scrolls, and scroll positions
+ set by layout between 0 and the max value.
+
+ Test: fast/layers/negative-scroll-positions.html
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::setScrollLeft):
+ (WebCore::RenderBox::setScrollTop):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::scrollToOffset):
+ (WebCore::RenderLayer::scrollTo):
+ * rendering/RenderLayer.h:
+ (WebCore::RenderLayer::scrollToXOffset):
+ (WebCore::RenderLayer::scrollToYOffset):
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::forwardEvent):
+
+2011-06-29 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ RenderLayer::maximumScrollPosition() is wrong
+ https://bugs.webkit.org/show_bug.cgi?id=62667
+
+ * platform/ScrollableArea.h:
+ (WebCore::ScrollableArea::isVerticalScrollerPinnedToMinimumPosition):
+ (WebCore::ScrollableArea::isVerticalScrollerPinnedToMaximumPosition):
+ Add these for good measure; they will be needed in an upcoming patch.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::maximumScrollPosition):
+ Subtract the visible content rect, including the scroll bars.
+
+2011-06-29 Brent Fulgham <bfulgham@webkit.org>
+
+ Speculative WinCE build correction after r90053.
+
+ * platform/graphics/GraphicsContext.h:
+ (WebCore::GraphicsContext::inTransparencyLayer): Provide
+ stub implementation for 'inTransparencyLayer'.
+
+2011-06-29 Xu Fan <qifuren1985@gmail.com>
+
+ Reviewed by Brent Fulgham.
+
+ Fix Scrollbars Transparent in Windows XP if WebKit is using Layered Window
+ https://bugs.webkit.org/show_bug.cgi?id=61136
+
+ * platform/graphics/win/DIBPixelData.h: add a static method setRGBABitmapAlpha
+ * platform/graphics/win/DIBPixelData.cpp: add implementation
+ * platform/win/ScrollbarThemeWin.cpp: fix scroolbar transparent
+ * rendering/RenderThemeWin.cpp: fix textbox and button transparent
+
+2011-06-29 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch RenderBoxModelObject::margin* and setMargin* to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63652
+
+ Switch margin methods for render tree over to the new layout unit abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/InlineFlowBox.h:
+ * rendering/RenderBlock.cpp:
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ * rendering/RenderBox.h:
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderInline.cpp:
+ * rendering/RenderInline.h:
+ * rendering/RenderText.h:
+
+2011-06-29 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch paint to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63645
+
+ Switch vanilla paint function over to the new layout unit abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::paint):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paint):
+ * rendering/RenderBox.h:
+ * rendering/RenderDetailsMarker.cpp:
+ (WebCore::RenderDetailsMarker::paint):
+ * rendering/RenderDetailsMarker.h:
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::paint):
+ * rendering/RenderEmbeddedObject.h:
+ * rendering/RenderFrameSet.cpp:
+ (WebCore::RenderFrameSet::paint):
+ * rendering/RenderFrameSet.h:
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::paint):
+ * rendering/RenderImage.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::paint):
+ * rendering/RenderInline.h:
+ * rendering/RenderLineBoxList.h:
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::paint):
+ * rendering/RenderListItem.h:
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::paint):
+ * rendering/RenderListMarker.h:
+ * rendering/RenderObject.h:
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::paint):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderReplica.cpp:
+ (WebCore::RenderReplica::paint):
+ * rendering/RenderReplica.h:
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::paint):
+ * rendering/RenderTable.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::paint):
+ * rendering/RenderTableCell.h:
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::paint):
+ * rendering/RenderTableRow.h:
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::paint):
+ * rendering/RenderTableSection.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::paint):
+ * rendering/RenderTextControlSingleLine.h:
+ * rendering/RenderTheme.h:
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::paint):
+ * rendering/RenderView.h:
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::paint):
+ * rendering/RenderWidget.h:
+ * rendering/mathml/RenderMathMLBlock.h:
+ * rendering/mathml/RenderMathMLFraction.h:
+ * rendering/mathml/RenderMathMLRoot.h:
+ * rendering/mathml/RenderMathMLSquareRoot.h:
+ * rendering/svg/RenderSVGContainer.h:
+ * rendering/svg/RenderSVGForeignObject.h:
+ * rendering/svg/RenderSVGHiddenContainer.h:
+ * rendering/svg/RenderSVGImage.h:
+ * rendering/svg/RenderSVGPath.h:
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::paint):
+ * rendering/svg/RenderSVGRoot.h:
+ * rendering/svg/RenderSVGText.h:
+
+2011-06-29 Jian Li <jianli@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ WebGL test failing on SL bots: fast/canvas/webgl/data-view-test.html
+ https://bugs.webkit.org/show_bug.cgi?id=63151
+
+ The fix is to change to throw TypeError in custom JS/V8 bindings.
+
+ * bindings/js/JSDataViewCustom.cpp:
+ (WebCore::getDataViewMember):
+ (WebCore::setDataViewMember):
+ * bindings/v8/custom/V8DataViewCustom.cpp:
+ (WebCore::V8DataView::constructorCallback):
+ (WebCore::V8DataView::getInt8Callback):
+
+2011-06-29 Luke Macpherson <macpherson@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Convert uses of computeLengthIntForLength() to computeLength<Length>()
+ https://bugs.webkit.org/show_bug.cgi?id=63641
+
+ No new tests / refactoring only.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::convertToLength):
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::applyPageSizeProperty):
+ (WebCore::CSSStyleSelector::mmLength):
+ (WebCore::CSSStyleSelector::inchLength):
+ (WebCore::CSSStyleSelector::mapFillSize):
+ (WebCore::CSSStyleSelector::mapFillXPosition):
+ (WebCore::CSSStyleSelector::mapFillYPosition):
+
+2011-06-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Simplify AudioBufferSourceNode rendering
+ https://bugs.webkit.org/show_bug.cgi?id=63586
+
+ No new tests since this doesn't change API.
+
+ * webaudio/AudioBufferSourceNode.cpp:
+ (WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
+ (WebCore::AudioBufferSourceNode::process):
+ (WebCore::AudioBufferSourceNode::renderFromBuffer):
+ (WebCore::AudioBufferSourceNode::reset):
+ (WebCore::AudioBufferSourceNode::setBuffer):
+ (WebCore::AudioBufferSourceNode::noteOn):
+ (WebCore::AudioBufferSourceNode::noteGrainOn):
+ (WebCore::AudioBufferSourceNode::totalPitchRate):
+ * webaudio/AudioBufferSourceNode.h:
+
+2011-06-29 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [Freetype] Many tests report ERROR: Failed to get glyph page zero.
+ https://bugs.webkit.org/show_bug.cgi?id=63498
+
+ Instead of conditionally instantiating the m_scaledFont member of FontPlatformData,
+ always instantiate it. For times when the size is 0 and the instantiation would lead
+ to a Cairo error, we use size 1 and just make operations which would fail conditional
+ on the m_size > 0.
+
+ No new tests. This change is covered by existing tests. We should
+ observe no errors on the bots after landing.
+
+ * platform/graphics/cairo/FontCairo.cpp:
+ (WebCore::Font::drawGlyphs): Instead of looking at whether or not there is
+ a scaled font to determine whether to draw, just look at the size.
+ * platform/graphics/freetype/FontPlatformData.h: Remove the m_font member.
+ * platform/graphics/freetype/FontPlatformDataFreeType.cpp: Always instantiate
+ a scaled font member and remove references to m_font. If we are instantiating
+ a scaled font for a 0 size font, instantiate a size 1 font, so that we can
+ still use Cairo to query font properties.
+ * platform/graphics/freetype/GlyphPageTreeNodeFreeType.cpp:
+ (WebCore::GlyphPage::fill): We can assume there is always a scaled font now.
+ * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
+ (WebCore::SimpleFontData::platformInit): Ditto.
+ (WebCore::SimpleFontData::createScaledFontData): Ditto.
+ (WebCore::SimpleFontData::containsCharacters): Ditto.
+ (WebCore::SimpleFontData::platformWidthForGlyph): Ditto.
+
+2011-06-29 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Media element loads blocked by a resource load delegate do not generate an error event
+ https://bugs.webkit.org/show_bug.cgi?id=63558
+
+ Tests: media/media-blocked-by-beforeload.html
+ media/media-blocked-by-willsendrequest.html
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::selectMediaResource): Call mediaLoadingFailed instead of noneSupported
+ so all failures follow the same code path.
+ (WebCore::HTMLMediaElement::loadResource): Call mediaLoadingFailed when there is no frame, when
+ the loader delegate rejects the url, or when MediaPlayer doesn't find a media engine that
+ supports the type.
+ (WebCore::HTMLMediaElement::selectNextSourceChild): Fix incorrect logging.
+ (WebCore::HTMLMediaElement::mediaLoadingFailed): Change name of parameter from "state" to
+ "error" to make its purpose obvious.
+
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::load): Return a bool indicating whether or not the url was given to
+ a media engine.
+ (WebCore::MediaPlayer::loadWithNextMediaEngine): Add some logging.
+ * platform/graphics/MediaPlayer.h:
+
+2011-06-29 Darin Adler <darin@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ [WebKit2] Crash loading page that adds/removes frame in DOMContentLoaded/loaded
+ https://bugs.webkit.org/show_bug.cgi?id=63483
+
+ Test: fast/loader/create-frame-in-DOMContentLoaded.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::init): Added an assertion.
+ (WebCore::FrameLoader::finishedLoadingDocument): Removed a non-helpful #if
+ statement. The rule that we do not call the client when creating the initial
+ empty document was nominally specific to Windows and Chromium but is needed
+ for all platforms.
+
+2011-06-29 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Switch hitTestColumns/Contents/Floats to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63589
+
+ Switch location and size methods for RenderBox over to the new layout unit abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/ColumnInfo.h:
+ (WebCore::ColumnInfo::desiredColumnWidth):
+ (WebCore::ColumnInfo::setDesiredColumnWidth):
+ (WebCore::ColumnInfo::columnHeight):
+ (WebCore::ColumnInfo::setColumnCountAndHeight):
+ (WebCore::ColumnInfo::setColumnHeight):
+ (WebCore::ColumnInfo::updateMinimumColumnHeight):
+ (WebCore::ColumnInfo::minimumColumnHeight):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::addOverflowFromChildren):
+ (WebCore::RenderBlock::paintColumnRules):
+ (WebCore::RenderBlock::paintColumnContents):
+ (WebCore::RenderBlock::hitTestFloats):
+ (WebCore::RenderBlock::hitTestColumns):
+ (WebCore::RenderBlock::hitTestContents):
+ (WebCore::RenderBlock::columnRectAt):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::xPositionForFloatIncludingMargin):
+ (WebCore::RenderBlock::yPositionForFloatIncludingMargin):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::hitTestContents):
+ * rendering/RenderLayer.h:
+
+2011-06-29 Adrienne Walker <enne@google.com>
+
+ Reviewed by James Robinson.
+
+ [chromium] Divide by zero in TilingData
+ https://bugs.webkit.org/show_bug.cgi?id=63305
+
+ Add safety checks for empty layers.
+
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::prepareToUpdate):
+ (WebCore::LayerTilerChromium::reset):
+ (WebCore::LayerTilerChromium::updateRect):
+
+2011-06-29 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Extract setShadowRoot function, harden it in preparation to be exposed to script.
+ https://bugs.webkit.org/show_bug.cgi?id=63596
+
+ Refactoring, covered by existing tests.
+
+ * dom/Element.cpp:
+ (WebCore::validateShadowRoot): Added.
+ (WebCore::Element::setShadowRoot): Extracted from ensureShadowRoot.
+ (WebCore::Element::ensureShadowRoot): Changed to use setShadowRoot.
+ * dom/Element.h: Added decl.
+
+2011-06-29 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: REGRESSION Resource revision fails to request content if it was not yet loaded for resource.
+ https://bugs.webkit.org/show_bug.cgi?id=63631
+
+ Test: http/tests/inspector/network/network-request-revision-content.html
+
+ * inspector/front-end/Resource.js:
+ (WebInspector.ResourceRevision.prototype.requestContent):
+
+2011-06-29 Igor Oliveira <igor.oliveira@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] GraphicsContext::clipToImageBuffer does not support scale transformation
+ https://bugs.webkit.org/show_bug.cgi?id=63555
+
+ Scale alphaMask if GraphicsContext is scaled
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::pushTransparencyLayerInternal):
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::ImageBuffer::clip):
+
+2011-06-29 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: backend needs to provide system-unique object ids, so these remain unique across navigation
+ https://bugs.webkit.org/show_bug.cgi?id=62894
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::setAgentProcessIdentifier):
+ * inspector/InspectorController.h:
+ * inspector/InspectorPageAgent.cpp:
+ (WebCore::InspectorPageAgent::setAgentIdentifier):
+ (WebCore::InspectorPageAgent::createIdentifier):
+ (WebCore::InspectorPageAgent::frameForId):
+ (WebCore::InspectorPageAgent::frameId):
+ (WebCore::InspectorPageAgent::frameDestroyed):
+ * inspector/InspectorPageAgent.h:
+
+2011-06-29 Pavel Feldman <pfeldman@google.com>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: create status bar buttons programmatically. Add "Inspect" button to all panels.
+ https://bugs.webkit.org/show_bug.cgi?id=63450
+
+ Buttons should be created in code, not in HTML. Also making Inspect Element
+ action available on all panels (as an experiment).
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype.show):
+ (WebInspector.ConsoleView.prototype.hide):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel):
+ (WebInspector.ElementsPanel.prototype.get statusBarItems):
+ (WebInspector.ElementsPanel.prototype.updateFocusedNode):
+ (WebInspector.ElementsPanel.prototype._setSearchingForNode):
+ (WebInspector.ElementsPanel.prototype.toggleSearchingForNode):
+ * inspector/front-end/inspector.css:
+ (button.dock-status-bar-item.status-bar-item .glyph):
+ (button.dock-status-bar-item.status-bar-item.toggled-on .glyph):
+ (.console-status-bar-item .glyph):
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/inspector.js:
+ (WebInspector._createGlobalStatusBarItems):
+ (WebInspector.set attached):
+
+2011-06-29 Pavel Feldman <pfeldman@google.com>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: tab crash after deleting trailing quote when editing attribute
+ https://bugs.webkit.org/show_bug.cgi?id=63544
+
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::setAttributesText):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted.moveToNextAttributeIfNeeded):
+ (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
+
+2011-06-29 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: REGRESSION Inspector failing to load resource content after navigation. Safari.
+ https://bugs.webkit.org/show_bug.cgi?id=63480
+
+ * inspector/front-end/NetworkManager.js:
+ (WebInspector.NetworkDispatcher):
+ (WebInspector.NetworkDispatcher.prototype.resourceLoadedFromMemoryCache):
+
+2011-06-29 Mike West <mkwst@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Missing fields in HAR
+ https://bugs.webkit.org/show_bug.cgi?id=58127
+
+ Specifically, this patch adds:
+ - entry.request.httpVersion
+ - entry.request.headersSize
+ - entry.request.bodySize
+ - entry.response.httpVersion
+ - entry.response.headersSize
+ - entry.response.bodySize
+ - entry.response.content.compression
+
+ Tests: http/tests/inspector/resource-har-conversion.html
+ http/tests/inspector/resource-har-headers.html
+ http/tests/inspector/resource-parameters.html
+ http/tests/inspector/network/network-size.html
+
+ * inspector/front-end/HAREntry.js:
+ (WebInspector.HAREntry.prototype.build):
+ (WebInspector.HAREntry.prototype._buildRequest):
+ (WebInspector.HAREntry.prototype._buildResponse):
+ (WebInspector.HAREntry.prototype._buildContent):
+ (WebInspector.HAREntry.prototype._buildCookie):
+ (WebInspector.HAREntry.prototype._interval):
+ (WebInspector.HAREntry.prototype.get requestBodySize):
+ (WebInspector.HAREntry.prototype.get responseBodySize):
+ (WebInspector.HAREntry.prototype.get responseCompression):
+ (WebInspector.HARLog.prototype.build):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.prototype.set requestHeaders):
+ (WebInspector.Resource.prototype.get requestHeadersText):
+ (WebInspector.Resource.prototype.set requestHeadersText):
+ (WebInspector.Resource.prototype.get requestHeadersSize):
+ (WebInspector.Resource.prototype.get requestHttpVersion):
+ (WebInspector.Resource.prototype.set responseHeaders):
+ (WebInspector.Resource.prototype.get responseHeadersText):
+ (WebInspector.Resource.prototype.set responseHeadersText):
+ (WebInspector.Resource.prototype.get responseHeadersSize):
+ (WebInspector.Resource.prototype.get responseHttpVersion):
+
+2011-06-29 Hayato Ito <hayato@chromium.org>
+
+ Reviewed by Hajime Morita.
+
+ Make a shadow host transfer a focus to the first focusable element in the shadow root when its focus() is called.
+ https://bugs.webkit.org/show_bug.cgi?id=62358.
+
+ This patch doesn't take an effect on the following elements to keep a compatibility.
+ - <input>, <textarea>, <video> and <audio> elements
+ We'll address these elements separately after re-targeting focus events
+ (bug 61421) is implemented.
+
+ A shadow root's <content> is not considered in this patch.
+ That should be addressed in another patch. See bug 63522.
+
+ Test: fast/dom/shadow/shadow-host-transfer-focus.html
+
+ * dom/Element.cpp:
+ (WebCore::Element::focus):
+ * page/FocusController.cpp:
+ (WebCore::shadowRoot):
+ (WebCore::isTreeScopeOwner):
+ (WebCore::FocusController::transferFocusToElementInShadowRoot):
+ (WebCore::hasCustomFocusLogic):
+ (WebCore::FocusController::findFocusableNodeDecendingDownIntoFrameDocumentOrShadowRoot):
+ (WebCore::FocusController::advanceFocusInDocumentOrder):
+ (WebCore::ownerOfTreeScope):
+ (WebCore::FocusController::findFocusableNodeAcrossTreeScope):
+ * page/FocusController.h:
+
+2011-06-29 Ryan Sleevi <rsleevi@chromium.org>
+
+ Reviewed by Dirk Schulze.
+
+ SVGRadialGradientElement::selfHasRelativeLengths() doesn't consider if cx() is relative
+ https://bugs.webkit.org/show_bug.cgi?id=61600
+
+ Correct the logic for checking for relative lengths in a SVGRadialGradientElement to consider cx() in addition to cy()
+
+ No new tests, as there is no way to currently test this. With the bug present, a side-effect is causing the
+ expected/correct image to be rendered. This is because the cached SVG resource is getting invalided through a
+ different path, forcing a repaint. The repaint takes into consideration the proper dimensions, hiding the bug.
+
+ * svg/SVGRadialGradientElement.cpp:
+ (WebCore::SVGRadialGradientElement::selfHasRelativeLengths):
+
+2011-06-28 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGAnimatedType should support SVGBoolean animation
+ https://bugs.webkit.org/show_bug.cgi?id=63529
+
+ Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368
+ This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGBoolean.
+
+ The new animator does not affect any behavior, since it was animated with SVGAnimatedString before. The new animator is still needed
+ to support animVal and baseVal later.
+
+ Test: svg/animations/svgboolean-animation-1.html
+
+ * CMakeLists.txt: Add new file to build system.
+ * GNUmakefile.list.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * svg/SVGAllInOne.cpp: Ditto.
+ * svg/SVGAnimateElement.cpp: Make use of AnimatedBoolean.
+ (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateElement::calculateFromAndToValues):
+ (WebCore::SVGAnimateElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateElement::resetToBaseValue):
+ (WebCore::SVGAnimateElement::applyResultsToTarget):
+ (WebCore::SVGAnimateElement::calculateDistance):
+ * svg/SVGAnimatedBoolean.cpp: Added. New animator for SVGBoolean.
+ (WebCore::SVGAnimatedBooleanAnimator::SVGAnimatedBooleanAnimator):
+ (WebCore::SVGAnimatedBooleanAnimator::constructFromString):
+ (WebCore::SVGAnimatedBooleanAnimator::calculateFromAndToValues):
+ (WebCore::SVGAnimatedBooleanAnimator::calculateFromAndByValues):
+ (WebCore::SVGAnimatedBooleanAnimator::calculateAnimatedValue):
+ (WebCore::SVGAnimatedBooleanAnimator::calculateDistance):
+ * svg/SVGAnimatedBoolean.h:
+ (WebCore::SVGAnimatedBooleanAnimator::~SVGAnimatedBooleanAnimator):
+ * svg/SVGAnimatedType.cpp: Use bool for SVGBoolean.
+ (WebCore::SVGAnimatedType::~SVGAnimatedType):
+ (WebCore::SVGAnimatedType::createBoolean):
+ (WebCore::SVGAnimatedType::boolean):
+ (WebCore::SVGAnimatedType::valueAsString):
+ (WebCore::SVGAnimatedType::setValueAsString):
+ * svg/SVGAnimatedType.h:
+ * svg/SVGAnimatorFactory.h: New crate function for SVGAnimatedSVGBooleanAnimator.
+ (WebCore::SVGAnimatorFactory::create):
+
+2011-06-28 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Make applyAuthorSheets settable on ShadowRoot.
+ https://bugs.webkit.org/show_bug.cgi?id=63599
+
+ Refactoring and adding not-yet used function, tests to follow when API lands.
+
+ * dom/ShadowRoot.cpp:
+ (WebCore::ShadowRoot::ShadowRoot): Added initializer.
+ (WebCore::ShadowRoot::applyAuthorSheets): Made to use member variable.
+ (WebCore::ShadowRoot::setApplyAuthorSheets): Added.
+ * dom/ShadowRoot.h: Tweaked, added decls.
+
+2011-06-28 Ilya Sherman <isherman@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ form.autocomplete="off" does not work
+ Rename the autoComplete() method for HTMLFormElement, HTMLFormControlElementWithState, and HTMLInputElement to shouldAutocomplete()
+ Add the autocomplete attribute to HTMLFormElement.idl and HTMLInputElement.idl
+ https://bugs.webkit.org/show_bug.cgi?id=35823
+
+ Test: fast/forms/autocomplete.html
+
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElementWithState::shouldAutocomplete): Renamed from ::autoComplete()
+ (WebCore::HTMLFormControlElementWithState::shouldSaveAndRestoreFormControlState): Update callsite.
+ * html/HTMLFormControlElement.h:
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::~HTMLFormElement): Update callsite.
+ (WebCore::HTMLFormElement::parseMappedAttribute): Update callsite.
+ (WebCore::HTMLFormElement::documentDidBecomeActive): Update callsite.
+ (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): Update callsite.
+ (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Update callsite.
+ (WebCore::HTMLFormElement::shouldAutocomplete): Renamed from ::autoComplete()
+ * html/HTMLFormElement.h:
+ * html/HTMLFormElement.idl: Bind the autocomplete attribute to a JavaScript property.
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::shouldAutocomplete): Renamed from ::autoComplete()
+ * html/HTMLInputElement.h:
+ * html/HTMLInputElement.idl: Bind the autocomplete attribute to a JavaScript property.
+ * WebCore.exp.in: Updated autoComplete() -> shouldAutocomplete()
+
+2011-06-28 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Store shadowPseudoId in ElementRareData.
+ https://bugs.webkit.org/show_bug.cgi?id=63604
+
+ No new tests, because the code isn't yet used.
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::isUnknownPseudoType): Added convenience helper.
+ * css/CSSSelector.h: Added decl.
+ * dom/Element.cpp:
+ (WebCore::Element::shadowPseudoId): Changed to use ElementRareData.
+ (WebCore::Element::setShadowPseudoId): Ditto.
+ * dom/Element.h: Added decls.
+ * dom/ElementRareData.h: Added a member to keep shadowPseudoId.
+
+2011-06-28 Kenichi Ishibashi <bashi@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [Chromium] Remove dependencies on harfbuzz from FontPlatformDataLinux and FontLinux
+ https://bugs.webkit.org/show_bug.cgi?id=62530
+
+ - Moved codes of FontLinux which depend on harfbuzz APIs to ComplexTextController. Removed Some methods of ComplexTextController(advances() and logClusters()) since they are no longer needed.
+ - Moved RefCountedHarfbuzzFace from FontPlatformDataLinux to HarfbuzzSkia and renamed it to HarfbuzzFace.
+
+ No new tests because there is no behavior change (The existing tests should cover the changes).
+
+ * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
+ (WebCore::ComplexTextController::ComplexTextController): Added arguments so eliminating setter invocations.
+ (WebCore::ComplexTextController::setupForRTL): Added.
+ (WebCore::ComplexTextController::setupFontForScriptRun): Adopt the change of HarfbuzzFace class.
+ (WebCore::ComplexTextController::setGlyphPositions): Use m_item.log_clusters instead of removed method.
+ (WebCore::ComplexTextController::glyphIndexForXPositionInScriptRun): Added.
+ (WebCore::ComplexTextController::offsetForPosition): Ditto.
+ (WebCore::ComplexTextController::selectionRect): Ditto.
+ * platform/graphics/chromium/ComplexTextControllerLinux.h:
+ (WebCore::ComplexTextController::width):
+ * platform/graphics/chromium/FontLinux.cpp: Removed truncateFixedPointToInteger().
+ (WebCore::Font::drawComplexText): Removed setter invocations of ComplexTextController.
+ (WebCore::Font::floatWidthForComplexText): Ditto.
+ (WebCore::Font::offsetForPositionForComplexText): Moved harfbuzz dependent code to ComplexTextController.
+ (WebCore::Font::selectionRectForComplexText): Ditto.
+ * platform/graphics/chromium/FontPlatformDataLinux.cpp:
+ (WebCore::FontPlatformData::harfbuzzFace): Wrapped up HB_FaceRec in HarfbuzzFace class.
+ * platform/graphics/chromium/FontPlatformDataLinux.h: Moved RefCountedHarfbuzzFace class and renamed to HarfbuzzFace.
+ * platform/graphics/chromium/HarfbuzzSkia.cpp:
+ (WebCore::allocHarfbuzzFont): Moved from ComplexTextControllerLinux.cpp.
+ (WebCore::HarfbuzzFace::HarfbuzzFace): Added.
+ (WebCore::HarfbuzzFace::~HarfbuzzFace): Added.
+ * platform/graphics/chromium/HarfbuzzSkia.h:
+ (WebCore::HarfbuzzFace::create): Added.
+ (WebCore::HarfbuzzFace::face): Added.
+ * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
+ (WebCore::substituteWithVerticalGlyphs): Adopt the change of HarfbuzzFace class.
+
+2011-06-28 Roland Steiner <rolandsteiner@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Bug 55930 - (CVE-2011-1440) Incorrect handling of 'display:' property within nested <ruby> tags
+ https://bugs.webkit.org/show_bug.cgi?id=55930
+
+ Don't set style type BEFORE/AFTER on anonymous wrapper block.
+ Rather, check style type on generated wrapped child.
+
+ Tests: fast/ruby/generated-after-counter-doesnt-crash.html
+ fast/ruby/generated-before-and-after-counter-doesnt-crash.html
+ fast/ruby/generated-before-counter-doesnt-crash.html
+
+ * rendering/RenderRuby.cpp:
+ (WebCore::isAnonymousRubyInlineBlock):
+ (WebCore::isRubyBeforeBlock):
+ (WebCore::isRubyAfterBlock):
+ (WebCore::rubyBeforeBlock):
+ (WebCore::rubyAfterBlock):
+ (WebCore::createAnonymousRubyInlineBlock):
+ (WebCore::RenderRubyAsInline::addChild):
+ (WebCore::RenderRubyAsBlock::addChild):
+
+2011-06-28 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch RenderLayer position/size to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63578
+
+ Switch location and size methods for RenderLayer over to the new layout unit abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::resize):
+ (WebCore::RenderLayer::visibleHeight):
+ (WebCore::RenderLayer::visibleWidth):
+ (WebCore::RenderLayer::offsetFromResizeCorner):
+ * rendering/RenderLayer.h:
+ (WebCore::RenderLayer::location):
+ (WebCore::RenderLayer::setLocation):
+ (WebCore::RenderLayer::size):
+ (WebCore::RenderLayer::setSize):
+ (WebCore::RenderLayer::rect):
+ (WebCore::RenderLayer::renderBoxLocation):
+ (WebCore::RenderLayer::renderBoxX):
+ (WebCore::RenderLayer::renderBoxY):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::visibleHeight):
+ (WebCore::RenderListBox::visibleWidth):
+ * rendering/RenderListBox.h:
+
+2011-06-28 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch paintObject and paintReplaced to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63585
+
+ Switching paintObject and paintReplaced to layout type abstractions from more integral types.
+
+ No new tests as this is just moving to an abstraction.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::paintObject):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::paintObject):
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::paintReplaced):
+ * rendering/RenderEmbeddedObject.h:
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::paintObject):
+ * rendering/RenderFileUploadControl.h:
+ * rendering/RenderHTMLCanvas.cpp:
+ (WebCore::RenderHTMLCanvas::paintReplaced):
+ * rendering/RenderHTMLCanvas.h:
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::paintReplaced):
+ * rendering/RenderImage.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::paintObject):
+ * rendering/RenderListBox.h:
+ * rendering/RenderReplaced.h:
+ (WebCore::RenderReplaced::paintReplaced):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::paintObject):
+ * rendering/RenderTable.h:
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::paintObject):
+ * rendering/RenderTableSection.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::paintObject):
+ * rendering/RenderTextControl.h:
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::paintReplaced):
+ * rendering/RenderVideo.h:
+
+2011-06-28 Adam Langley <agl@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Skip cache validation on back with HTTPS.
+ https://bugs.webkit.org/show_bug.cgi?id=63537
+
+ For back navigations over HTTP, WebKit sets a flag to use cached data
+ irrespective of whether it has expired. However, this isn't currently
+ done for HTTPS.
+
+ The logic in question was added in
+ https://bugs.webkit.org/show_bug.cgi?id=33993 and appears to have been
+ precautionary. However, both Firefox and IE will use this back
+ navigation trick for HTTPS as well and so we should probably behave
+ likewise.
+
+ Test: http/tests/cache/history-only-cached-subresource-loads-max-age-https.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::addExtraFieldsToRequest):
+
+2011-06-28 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Remove errant isShadowBoundary on ShadowRoot.
+ https://bugs.webkit.org/show_bug.cgi?id=63588
+
+ Removing dead code, no tests for that.
+
+ * dom/ShadowRoot.h: Removed a function that's no longer used.
+
+2011-06-28 Zeng Huiqing <huiqing.zeng@intel.com>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium]Optimize GraphicsLayerChromium::setChildren()
+ https://bugs.webkit.org/show_bug.cgi?id=62837
+
+ No new tests.
+
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
+ (WebCore::GraphicsLayerChromium::setChildren):
+ (WebCore::GraphicsLayerChromium::addChild):
+ * platform/graphics/chromium/GraphicsLayerChromium.h:
+
+2011-06-28 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch paintBoxShadow and paintBoxDecorations to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63577
+
+ Switching paintBoxShadow and paintBoxDecorations to layout type abstraction
+ from more integral types.
+
+ No new tests as this is just moving to an abstraction.
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::paintBoxShadow):
+ (WebCore::InlineFlowBox::paintBoxDecorations):
+ * rendering/InlineFlowBox.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintBoxDecorations):
+ * rendering/RenderBox.h:
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintBoxShadow):
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::paintBoxDecorations):
+ * rendering/RenderFieldset.h:
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::paintBoxDecorations):
+ * rendering/RenderTable.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::paintBoxDecorations):
+ * rendering/RenderTableCell.h:
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::paintBoxDecorations):
+ * rendering/RenderView.h:
+
+2011-06-28 Emil A Eklund <eae@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch RenderBox position/size to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63571
+
+ Switch location and size methods for RenderBox over to the new layout unit abstraction.
+
+ No new tests, no functionality changes.
+
+ * rendering/RenderBox.cpp:
+ * rendering/RenderBox.h:
+ * rendering/RenderBoxModelObject.cpp:
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderInline.cpp:
+ * rendering/RenderInline.h:
+ * rendering/RenderVideo.cpp:
+ * rendering/RenderVideo.h:
+
+2011-06-28 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r89968.
+ http://trac.webkit.org/changeset/89968
+ https://bugs.webkit.org/show_bug.cgi?id=63581
+
+ Broke chromium windows compile (Requested by jamesr on
+ #webkit).
+
+ * WebCore.gyp/WebCore.gyp:
+ * loader/cache/CachedFont.cpp:
+ * platform/chromium/DragImageRef.h:
+ * platform/graphics/FloatPoint.h:
+ * platform/graphics/FloatRect.h:
+ * platform/graphics/FloatSize.h:
+ * platform/graphics/FontPlatformData.h:
+ (WebCore::FontPlatformData::hash):
+ * platform/graphics/GlyphBuffer.h:
+ (WebCore::GlyphBuffer::advanceAt):
+ (WebCore::GlyphBuffer::add):
+ (WebCore::GlyphBuffer::expandLastAdvance):
+ * platform/graphics/IntPoint.h:
+ * platform/graphics/IntRect.h:
+ * platform/graphics/IntSize.h:
+ * platform/graphics/SimpleFontData.h:
+ * platform/graphics/cg/FloatPointCG.cpp:
+ * platform/graphics/cg/FloatRectCG.cpp:
+ * platform/graphics/cg/FloatSizeCG.cpp:
+ * platform/graphics/cg/IntPointCG.cpp:
+ * platform/graphics/cg/IntRectCG.cpp:
+ * platform/graphics/cg/IntSizeCG.cpp:
+ * platform/graphics/mac/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
+ (WebCore::createFontCustomPlatformData):
+ * platform/graphics/mac/FontCustomPlatformData.h:
+ (WebCore::FontCustomPlatformData::FontCustomPlatformData):
+
+2011-06-28 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch PaintMask* to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63576
+
+ Switching paintMask* to layout type abstraction from more integral types.
+
+ No new tests as this is just moving to an abstraction.
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::paintMask):
+ * rendering/InlineFlowBox.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintMask):
+ (WebCore::RenderBox::paintMaskImages):
+ * rendering/RenderBox.h:
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::paintMask):
+ * rendering/RenderFieldset.h:
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::paintMask):
+ * rendering/RenderTable.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::paintMask):
+ * rendering/RenderTableCell.h:
+
+2011-06-28 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Switch paintFillLayer* to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=63570
+
+ Switching painFillLayer* to layout type abstraction from more integral types.
+
+ No new tests as this is just moving to an abstraction.
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::paintFillLayers):
+ (WebCore::InlineFlowBox::paintFillLayer):
+ * rendering/InlineFlowBox.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintFillLayers):
+ (WebCore::RenderBox::paintFillLayer):
+ * rendering/RenderBox.h:
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintFillLayerExtended):
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderObject.h:
+
+2011-06-28 Luke Macpherson <macpherson@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Use appropriate macro for CSSPropertyWebkitAppearance in CSSStyleSelector::applyProperty()
+ https://bugs.webkit.org/show_bug.cgi?id=63197
+
+ No new tests / no functionality changed.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ Use HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE macro and delete duplicate code.
+
+2011-06-28 Cary Clark <caryclark@google.com>
+
+ Reviewed by James Robinson.
+
+ Use Skia if Skia on Mac Chrome is enabled
+ https://bugs.webkit.org/show_bug.cgi?id=62999
+
+ No new tests. This does not affect existing
+ functionality.
+
+ * WebCore.gyp/WebCore.gyp:
+ Include Skia and related files and exclude CG
+ and related files when building Chromium for Skia
+ on the Mac.
+
+ * loader/cache/CachedFont.cpp:
+ Rename CHROME to CHROMIUM.
+
+ * platform/chromium/DragImageRef.h:
+ * platform/graphics/FloatPoint.h:
+ * platform/graphics/FloatRect.h:
+ * platform/graphics/FloatSize.h:
+ * platform/graphics/FontPlatformData.h:
+ (WebCore::FontPlatformData::hash):
+ * platform/graphics/GlyphBuffer.h:
+ (WebCore::GlyphBuffer::advanceAt):
+ (WebCore::GlyphBuffer::add):
+ (WebCore::GlyphBuffer::expandLastAdvance):
+ * platform/graphics/IntPoint.h:
+ * platform/graphics/IntRect.h:
+ * platform/graphics/IntSize.h:
+ * platform/graphics/SimpleFontData.h:
+ * platform/graphics/cg/FloatPointCG.cpp:
+ * platform/graphics/cg/FloatRectCG.cpp:
+ * platform/graphics/cg/FloatSizeCG.cpp:
+ * platform/graphics/cg/IntPointCG.cpp:
+ * platform/graphics/cg/IntRectCG.cpp:
+ * platform/graphics/cg/IntSizeCG.cpp:
+ * platform/graphics/mac/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
+ (WebCore::createFontCustomPlatformData):
+ * platform/graphics/mac/FontCustomPlatformData.h:
+ (WebCore::FontCustomPlatformData::FontCustomPlatformData):
+ Ditto.
+
+2011-06-28 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Stop instantiating Position with PositionIsOffsetInAnchor in various files
+ https://bugs.webkit.org/show_bug.cgi?id=63384
+
+ Refactoring.
+
+ Removed many if conditions that compared the anchor type to Position::PositionIsOffsetInAnchor
+ because there were also checking that containerNode is a text node.
+
+ Also added Position::containerText() to avoid manually casting containerNode().
+
+ * dom/Position.cpp:
+ (WebCore::Position::Position): Added an assertion to ensure BeforeChildren/AfterChildren
+ anchor type won't be used for a node whose contents is ignored by editing.
+ (WebCore::Position::containerText): Added.
+ * dom/Position.h:
+ * editing/ApplyBlockElementCommand.cpp:
+ (WebCore::isNewLineAtPosition): Removed a redundant comparison of anchor type.
+ (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded): Since containerNode
+ is always a text node when renderStyleOfEnclosingTextNode returns a render style, use new Position
+ constructor that takes Text* and offset.
+ (WebCore::ApplyBlockElementCommand::endOfNextParagrahSplittingTextNodesIfNeeded): Removed redundant
+ comparison of anchor type and use new Position constructor that takes Text* and offset.
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::splitTextAtStart): Replaced an assertion that compared anchor type by
+ an assertion that the container node is a text node; use new constructor.
+ (WebCore::ApplyStyleCommand::splitTextAtEnd): Ditto; also added early exits in the case script
+ modified DOM.
+ (WebCore::ApplyStyleCommand::splitTextElementAtStart): Ditto.
+ (WebCore::ApplyStyleCommand::splitTextElementAtEnd): Ditto.
+ (WebCore::ApplyStyleCommand::joinChildTextNodes): Use new constructor.
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::Editor::replaceSelectedTextInNode): Calls containerText instead of manually casting containerNode.
+ * editing/Editor.cpp:
+ (WebCore::Editor::canDeleteRange): Call Range::startPosition instead of manually instantiating Position
+ by calling startContainer and startOffset.
+ * editing/FrameSelection.cpp:
+ (WebCore::FrameSelection::setSelectedRange): Ditto.
+ * editing/InsertTextCommand.cpp:
+ (WebCore::InsertTextCommand::input): Calls containerText instead of manually casting containerNode.
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::doApply): Calls containerText instead of manually casting containerNode.
+ * editing/VisiblePosition.cpp:
+ (WebCore::VisiblePosition::characterAfter): Removed a redundant anchor type comparison.
+ (WebCore::startVisiblePosition): Call Range::startPosition instead of startContainer and startOffset.
+ (WebCore::endVisiblePosition): Call Range::endPosition instead of endContainer and endOffset.
+ * editing/htmlediting.cpp:
+ (WebCore::firstInSpecialElement): Call containerNode() to address <rdar://problem/5027702>.
+ (WebCore::lastInSpecialElement): Ditto; use new constructor.
+ * editing/visible_units.cpp:
+ (WebCore::endPositionForLine): Use new constructor.
+ (WebCore::startOfParagraph): Ditto.
+ (WebCore::endOfParagraph): Ditto.
+
+2011-06-28 Rob Buis <rbuis@rim.com>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG1.1SE test text-tref-03-b.svg fails
+ https://bugs.webkit.org/show_bug.cgi?id=63390
+
+ Support tref on forward referenced content by listening to DOMSubtreeModified events. This also
+ allows updating after modifications in the referenced content subtree.
+
+ Tests: svg/W3C-SVG-1.1-SE/text-tref-03-b.svg
+ svg/custom/text-tref-03-b-change-href-dom.svg
+ svg/custom/text-tref-03-b-change-href.svg
+ svg/custom/text-tref-03-b-dynamic.svg
+ svg/custom/text-tref-03-b-dynamic2.svg
+ svg/custom/text-tref-03-b-referenced-element-removal.svg
+ svg/custom/text-tref-03-b-tref-removal.svg
+
+ * svg/SVGTRefElement.cpp:
+ (WebCore::SubtreeModificationEventListener::create):
+ (WebCore::SubtreeModificationEventListener::cast):
+ (WebCore::SubtreeModificationEventListener::removeFromTarget):
+ (WebCore::SubtreeModificationEventListener::SubtreeModificationEventListener):
+ (WebCore::SubtreeModificationEventListener::operator==):
+ (WebCore::SubtreeModificationEventListener::handleEvent):
+ (WebCore::SVGTRefElement::updateReferencedText):
+ (WebCore::SVGTRefElement::parseMappedAttribute):
+ (WebCore::SVGTRefElement::svgAttributeChanged):
+ (WebCore::SVGTRefElement::buildPendingResource):
+ (WebCore::SVGTRefElement::removedFromDocument):
+ * svg/SVGTRefElement.h:
+
+2011-06-28 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Anders Carlsson.
+
+ Split the string creation into a local (while creating text runs)
+ so that it is not destroyed prematurely.
+ https://bugs.webkit.org/show_bug.cgi?id=63543
+
+ Run fast/forms/text-control-intrinsic-widths.html under valgrind/ASAN.
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
+ this one is just done for caution, in case, we don't do the same
+ mistake when adding legacy rounding hacks option.
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::getAvgCharWidth):
+
+2011-06-28 Greg Simon <gregsimon@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Migrate SQLite backing store to LevelDB backing store for Indexeddb.
+ https://bugs.webkit.org/show_bug.cgi?id=62780
+
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::computeFileIdentifier):
+ (WebCore::computeUniqueIdentifier):
+ (WebCore::IDBFactoryBackendImpl::open):
+ (WebCore::migrateObjectStores):
+ (WebCore::IDBFactoryBackendImpl::migrateFromSQLiteToLevelDB):
+ * storage/IDBLevelDBBackingStore.cpp:
+ (WebCore::IDBLevelDBBackingStore::backingStoreExists):
+ * storage/IDBLevelDBBackingStore.h:
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::populateIndex):
+ * storage/IDBObjectStoreBackendImpl.h:
+ * storage/IDBSQLiteBackingStore.cpp:
+ (WebCore::IDBSQLiteBackingStore::backingStoreExists):
+ * storage/IDBSQLiteBackingStore.h:
+
+2011-06-28 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Create intermediate classes as a path towards getting off of pixel offsets
+ https://bugs.webkit.org/show_bug.cgi?id=61896
+
+ Creating three intermediate typedefs to aid in moving layout and hit testing from integers
+ to floats. We'll transition the render tree over to these intermediate types and add
+ infrastructure to support the new types behind USE(FLOAT_LAYOUT_OFFSETS). This allows the ultimate
+ changeover to be easier.
+
+ Switching LayoutState over to this abstraction to verify it works correctly.
+
+ No new tests since this is creating a new abstraction, not changing current behavior.
+
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/LayoutState.cpp:
+ (WebCore::LayoutState::LayoutState):
+ (WebCore::LayoutState::pageLogicalOffset):
+ (WebCore::LayoutState::addForcedColumnBreak):
+ * rendering/LayoutState.h:
+ * rendering/LayoutTypes.h: Added.
+
+2011-06-28 Jeff Miller <jeffm@apple.com>
+
+ Add fullscreen.css and fullscreenQuickTime.css to the WebCore Visual Studio project for convenience.
+ Looks like Visual Studio also re-sorted one more file since my last checkin.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2011-06-28 Jeff Miller <jeffm@apple.com>
+
+ Re-sort the WebCore project with Visual Studio after recent changes that I assume were done by manually editing the XML.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2011-06-28 Joone Hur <joone.hur@collabora.co.uk>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Rename 3D transforms to 3D rendering
+ https://bugs.webkit.org/show_bug.cgi?id=63508
+
+ This patch allows to include ENABLE_3D_RENDERING to build WebKitGtk+.
+
+ * GNUmakefile.am: Add ENABLE_3D_RENDERING
+
+2011-06-22 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: use column numbers when linking to script location in timeline and console.
+ https://bugs.webkit.org/show_bug.cgi?id=63126
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement):
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
+ (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendStackTrace):
+
+2011-06-28 Joone Hur <joone.hur@collabora.co.uk>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Allow to build WebKitGtk+ with accelerated compositing
+ https://bugs.webkit.org/show_bug.cgi?id=63404
+
+ WebKitGtk+ needs to implement accelerated compositing for running CSS3 3D transforms
+ and animation through GPU acceleration. We could implement GraphicsLayer using Clutter.
+
+ * GNUmakefile.list.am:
+ * platform/graphics/clutter/GraphicsLayerClutter.cpp: Added.
+ (WebCore::GraphicsLayer::create): Not implemented yet.
+ (WebCore::GraphicsLayerClutter::GraphicsLayerClutter):
+ (WebCore::GraphicsLayerClutter::~GraphicsLayerClutter):
+ (WebCore::GraphicsLayerClutter::setNeedsDisplay): Ditto.
+ (WebCore::GraphicsLayerClutter::setNeedsDisplayInRect): Ditto.
+ * platform/graphics/clutter/GraphicsLayerClutter.h: Added.
+
+2011-06-28 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (r89733): fast/text/zero-font-size.html is failing on Leopard
+ https://bugs.webkit.org/show_bug.cgi?id=63512
+
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::SimpleFontData::platformWidthForGlyph): Initialize the advance local variable, because
+ on Leopard wkGetGlyphTransformedAdvances can return successfully yet not update the variable when
+ the font size is 0. Presumably, r89733 exposed this by changing the values put on the stack just
+ before this function is called.
+
+2011-06-27 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Change the inspector model API and backend to allow CSS pseudoclass inspection
+ https://bugs.webkit.org/show_bug.cgi?id=63446
+
+ * inspector/Inspector.json:
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::computePseudoClassMask):
+ (WebCore::InspectorCSSAgent::getStylesForNode):
+ * inspector/InspectorCSSAgent.h:
+ * inspector/front-end/AuditRules.js:
+ (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
+ * inspector/front-end/CSSStyleModel.js:
+ (WebInspector.CSSStyleModel.prototype.getStylesAsync):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype.update):
+
+2011-06-28 Kent Tamura <tkent@chromium.org>
+
+ Fix a build error on Mac by r89907.
+
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::SVGSMILElement::endListChanged):
+
+2011-06-27 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ [Chromium] SELECT or autofill popup is trimmed by screen edge on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=63438
+
+ If the popup is calculated to be trimmed by a screen edge, an attempt is made
+ to alter its vertical edge alignment (set to the right edge for LTR or to the left edge for RTL)
+ to see if the trimmed portion becomes smaller than that with the original layout.
+ The change involves remembering the original frameRect for the popup and restoring it in refresh().
+ This is due to the fact that the frameRect originally set in showInRect() is overwritten
+ by layoutAndGetRTLOffset(), which breaks the originally requested popup container layout metrics.
+ The max width is reset on every layoutAndCalculateWidgetRect(), as it can be constrained by the screen edge,
+ and thus should be re-checked every time the popup is displayed, in case the browser window has been moved.
+
+ Tests: manual-tests/popup-width-restriction-within-screen.html partly covers the fix (should not regress).
+ Other than that, there is no way to unit-test the platform-specific native code.
+
+ * platform/chromium/PopupMenuChromium.cpp:
+ (WebCore::PopupListBox::setMaxWidth): Added. Avoid duplicate popup content layouts (in contrast with setMaxWidthAndLayout()).
+ (WebCore::PopupListBox::PopupListBox):
+ (WebCore::PopupContainer::layoutAndCalculateWidgetRect): Attempt a left-right popup alignment inversion
+ to minimize the trimmed content. Also restore a default max popup width.
+ (WebCore::PopupContainer::layoutAndGetRTLOffset): Always return the popup listbox offset for the RTL (right alignment) case.
+ The method rename is due to the return value semantics change.
+ (WebCore::PopupContainer::showInRect): Store the originally requested frameRect for the popup.
+ (WebCore::PopupContainer::refresh): Restore the original popup frameRect to avoid layout artifacts on refresh.
+ (WebCore::PopupContainer::isRTL): This check should be made by the layoutAndGetRTLOffset() clients.
+ * platform/chromium/PopupMenuChromium.h:
+
+2011-06-28 Kentaro Hara <haraken@google.com>
+
+ Reviewed by Kent Tamura.
+
+ Allow spaces between e-mail addresses in 'email' input type.
+ https://bugs.webkit.org/show_bug.cgi?id=55987
+
+ Allowed spaces between e-mail addresses in 'email' input type,
+ e.g. ' a@p.com , b@p.com ' is a valid value. Implemented the
+ value sanitization algorithm for an e-mail value. Added more unit
+ tests that check the e-mail value parser.
+
+ Test: fast/forms/ValidityState-typeMismatch-email.html
+
+ * html/EmailInputType.cpp:
+ (WebCore::EmailInputType::typeMismatchFor):
+ (WebCore::EmailInputType::sanitizeValue):
+ * html/EmailInputType.h:
+ * html/parser/HTMLParserIdioms.cpp:
+ (WebCore::stripHTMLLineBreaks):
+ * html/parser/HTMLParserIdioms.h:
+ (WebCore::isHTMLLineBreak):
+
+2011-06-28 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Hajime Morita.
+
+ Refactor RenderTextControl::text().
+ https://bugs.webkit.org/show_bug.cgi?id=63519
+
+ No new tests because this is just a refactoring.
+
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::setInnerTextValue):
+ Resuce the number of text() calls.
+ (WebCore::finishText):
+ - Use StringBuilder.
+ - Make this a static function.
+ This function doesn't access anything of RenderTextControl.
+ (WebCore::RenderTextControl::text):
+ Use emptyString() and StringBuilder.
+ (WebCore::RenderTextControl::textWithHardLineBreaks): ditto.
+ * rendering/RenderTextControl.h: Remove finishText().
+
+2011-06-28 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: console.group messages should never be coalesced
+ https://bugs.webkit.org/show_bug.cgi?id=63521
+
+ * inspector/InspectorConsoleAgent.cpp:
+ (WebCore::isGroupMessage):
+ (WebCore::InspectorConsoleAgent::addConsoleMessage):
+
+2011-06-28 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: console group boundaries should be more distinct in UI
+ https://bugs.webkit.org/show_bug.cgi?id=63455
+
+ Show grey bracket to on the left side of a console group message to highlight
+ the group extent.
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleGroup):
+ * inspector/front-end/inspector.css:
+ (#console-prompt):
+ (.console-message, .console-user-command):
+ (.console-message::before, .console-user-command::before, #console-prompt::before, .console-group-title::before):
+ (.console-group-title::before):
+ (.console-group):
+ (.console-group-bracket):
+ (.console-group.collapsed > .console-group-bracket):
+
+2011-06-28 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Hajime Morita.
+
+ Use RefPtr for the HTMLElement data members of TextFieldInptType
+ and SearchInputType.
+ https://bugs.webkit.org/show_bug.cgi?id=63511
+
+ No new tests because of no behavior change.
+
+ * html/SearchInputType.cpp:
+ (WebCore::SearchInputType::SearchInputType):
+ No need to initialize the element members explicitly because
+ RefPtr constructor works well.
+ (WebCore::SearchInputType::createShadowSubtree):
+ Substitute an element to a data member, and don't call RefPtr<>::release().
+ (WebCore::SearchInputType::innerBlockElement):
+ Moved from the header file, and adjustment for RefPtr<>.
+ (WebCore::SearchInputType::resultsButtonElement): ditto.
+ (WebCore::SearchInputType::cancelButtonElement): ditto.
+ (WebCore::SearchInputType::destroyShadowSubtree):
+ Adjustment for RefPtr<>.
+ * html/SearchInputType.h:
+ - Move accessor functions to the cpp file because they are virtual.
+ - Change element data member types: HTMLElement* -> RefPtr<HTMLElement>.
+ * html/TextFieldInputType.cpp:
+ (WebCore::TextFieldInputType::TextFieldInputType):
+ No need to initialize the element members explicitly because
+ RefPtr constructor works well.
+ (WebCore::TextFieldInputType::~TextFieldInputType):
+ Explicityly defines the destructor in the cpp file to avoid to
+ make it implicitly in the header file. If the destructor was made
+ in the header file, we would need to include HTMLElement.h in the
+ header file.
+ (WebCore::TextFieldInputType::createShadowSubtree):
+ - Don't call RenderTheme::themeForPage().
+ - Substitute an element to a data member, and don't call RefPtr<>::release().
+ (WebCore::TextFieldInputType::setInnerTextElement):
+ Moved from the header file to avoid to include HTMLElement.h.
+ (WebCore::TextFieldInputType::setSpeechButtonElement): ditto.
+ (WebCore::TextFieldInputType::innerTextElement):
+ Moved from the header file, and adjustment for RefPtr<>.
+ (WebCore::TextFieldInputType::innerSpinButtonElement): ditto.
+ (WebCore::TextFieldInputType::speechButtonElement): ditto.
+ (WebCore::TextFieldInputType::destroyShadowSubtree):
+ Adjustment for RefPtr<>.
+ * html/TextFieldInputType.h:
+ - Move accessor functions to the cpp file because they are virtual.
+ - Change element data member types: HTMLElement* -> RefPtr<HTMLElement>.
+
+2011-06-28 Felician Marton <marton.felician.zoltan@stud.u-szeged.hu>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG animation flickers when restarting
+ https://bugs.webkit.org/show_bug.cgi?id=18450
+
+ Add new parameter to the following methods. The new parameter is the time of adding a "begin" or "end" time to the SVG animation.
+ - WebCore::SVGSMILElement::addBeginTime
+ - WebCore::SVGSMILElement::beginListChanged
+ - WebCore::SVGSMILElement::addEndTime
+ - WebCore::SVGSMILElement::endListChanged
+ In case of beginTime and beginListChanged it's necessary, because the delay between the event of adding a new begin time
+ (in WebCore::SVGAnimationElement::beginElementAt) and the actual processing (in WebCore::SVGSMILElement::endListChanged)
+ is significant. In lack of event time we can't decide that we should consider the new time or not.
+ If the new begin time is smaller than the event time, we musn't begin the animation, else we shoud do further calculations.
+
+ The following methods just modified for consistency:
+ - WebCore::SVGSMILElement::addEndTime
+ - WebCore::SVGSMILElement::endListChanged
+
+ No new tests, because currently there is no way to test SVG flickering at zero time.
+
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::SVGAnimationElement::beginElementAt):
+ (WebCore::SVGAnimationElement::endElementAt):
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::SVGSMILElement::attributeChanged):
+ (WebCore::SVGSMILElement::addBeginTime):
+ (WebCore::SVGSMILElement::addEndTime):
+ (WebCore::SVGSMILElement::beginListChanged):
+ (WebCore::SVGSMILElement::endListChanged):
+ The body changed:
+ - Use new parameter, the time of adding the new begin time.
+ - Cancel some incorrect optimalization. We should also do further calculations when elapsed >= m_intervalBegin.
+ (WebCore::SVGSMILElement::createInstanceTimesFromSyncbase):
+ (WebCore::SVGSMILElement::handleConditionEvent):
+ (WebCore::SVGSMILElement::beginByLinkActivation):
+ * svg/animation/SVGSMILElement.h:
+
+2011-06-28 Csaba Osztrogonác <ossy@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ Adding MHTML reading support.
+ https://bugs.webkit.org/show_bug.cgi?id=7168
+
+ * features.pri: Disable MHTML on Qt by default in a proper way.
+
+2011-06-28 Csaba Osztrogonác <ossy@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Remove ENABLE_XBL, because there aren't ENABLE(XBL) macros anymore.
+
+ * features.pri:
+
+2011-06-27 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Unreviewed. Fix style error related to wrong include order.
+
+ * platform/graphics/efl/ImageEfl.cpp:
+
+2011-06-27 Brian Weinstein <bweinstein@apple.com>
+
+ Fix the WebCore vcproj file after r89851.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2011-06-27 Joe Wild <joseph.wild@nokia.com>
+
+ Reviewed by Simon Fraser.
+
+ Crash on www.crave.cnet.com in FrameView::windowClipRect()
+ https://bugs.webkit.org/show_bug.cgi?id=56393
+
+ Check for a null renderer to fix a crash. This situation can
+ arise when external content/plugins is referenced from html
+ elements with style="display:none".
+
+ Test: plugins/hidden-iframe-with-swf-plugin.html
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::windowClipRect):
+
+2011-06-27 Raymes Khoury <raymes@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ WebCore fails to compile in thumb mode when neon instructions are
+ enabled.
+
+ There are two files (FELightingNEON.cpp and FEGaussianBlur.cpp)
+ which fail to build when -mthumb is passed to gcc. These contain inline
+ assembly for neon instructions on arm. This patch forces the -marm flag
+ to be passed when compiling these files to work around this.
+
+ https://bugs.webkit.org/show_bug.cgi?id=62916
+
+ Built WebKit in Chromium and checked that -marm is passed
+ only when building these files.
+
+ https://bugs.webkit.org/show_bug.cgi?id=62916
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-06-27 Jay Civelli <jcivelli@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Adding binary part support to MHTML.
+ https://bugs.webkit.org/show_bug.cgi?id=63310
+
+ * loader/archive/mhtml/MHTMLArchive.cpp:
+ (WebCore::MHTMLArchive::generateMHTMLData):
+ (WebCore::MHTMLArchive::generateMHTMLDataUsingBinaryEncoding):
+ * loader/archive/mhtml/MHTMLArchive.h:
+ * loader/archive/mhtml/MHTMLParser.cpp:
+ (WebCore::MHTMLParser::parseNextPart):
+ * platform/SharedBuffer.cpp:
+ (WebCore::SharedBuffer::append):
+ * platform/SharedBuffer.h:
+ * platform/network/MIMEHeader.cpp:
+ (WebCore::MIMEHeader::parseContentTransferEncoding):
+ * platform/network/MIMEHeader.h:
+
+2011-06-27 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Add support for unicode-bidi:plaintext CSS property
+ https://bugs.webkit.org/show_bug.cgi?id=50949
+
+ Adding support for unicode-bidi: plaintext. This involves invoking P2 and P3
+ of the Unicode BiDi algorithm on each paragraph of a block with that style.
+ This is similar to dir=auto but done per-paragraph instead of per element.
+
+ Test: fast/text/international/unicode-bidi-plaintext.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue): Added plaintext.
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Ditto.
+ (WebCore::CSSPrimitiveValue::operator EUnicodeBidi): Ditto.
+ * css/CSSValueKeywords.in: Ditto.
+ * html/HTMLElement.cpp:
+ (WebCore::unicodeBidiAttributeForDirAuto): Helper to map elements with dir=auto
+ to their proper unicode-bidi attribute.
+ (WebCore::HTMLElement::parseMappedAttribute): Assign plaintext to pre and textarea
+ when dir=auto.
+ * platform/text/UnicodeBidi.h: Added plaintext.
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::determineParagraphDirection): Determines the direction of a paragraph
+ based on the first strong character. Stops at first paragraph separator.
+ (WebCore::RenderBlock::layoutInlineChildren): Uses determineParagraphDirection
+ when in unicode-bidi: plaintext mode (and operating at the block's BidiContext)
+ to set each paragraph to the proper base BidiContext.
+ (WebCore::RenderBlock::determineStartPosition): Ditto.
+ * rendering/style/RenderStyle.h: Gave _unicodebidi another bit to accomodate
+ for plaintext.
+
+2011-06-27 Alexis Menard <alexis.menard@openbossa.org>
+
+ Reviewed by Darin Adler.
+
+ Use specific headers includes rather than full system headers.
+ https://bugs.webkit.org/show_bug.cgi?id=63475
+
+ Use only needed headers rather than system headers.
+
+ No new tests, it's just a little cosmetic change.
+
+ * platform/mac/WebVideoFullscreenController.h:
+ * platform/mac/WebVideoFullscreenHUDWindowController.h:
+
+2011-06-27 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Allow non-main thread text drawing in ICU ports
+ https://bugs.webkit.org/show_bug.cgi?id=63482
+
+ Some ports allow multiple threads to draw strings.
+ LineBreakIteratorPool is not thread safe and the existing
+ ASSERT caught cases where multiple threads were trying
+ to access the shared pool. This makes the pool a lazily
+ created per-thread pool to allow for thread safe pool use.
+
+ * platform/ThreadGlobalData.h:
+ * platform/ThreadGlobalData.cpp:
+ (WebCore::ThreadGlobalData::ThreadGlobalData): start with null.
+ (WebCore::ThreadGlobalData::lineBreakIteratorPool): lazily create.
+ (WebCore::ThreadGlobalData::destroy): delete.
+ Manage the lifetime of the per-thread pool instance.
+
+ * platform/text/LineBreakIteratorPoolICU.h:
+ (WebCore::LineBreakIteratorPool::sharedPool):
+ Use the per-thread pool instance and remove the ASSERT that
+ this needs to be on the main thread.
+
+ (WebCore::LineBreakIteratorPool::create):
+ Create a PassOwnPtr so we can use OwnPtr on pools.
+
+ (WebCore::LineBreakIteratorPool::LineBreakIteratorPool):
+ Private now that there is a public create function.
+
+2011-06-27 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Extract LineBreakIteratorPool class into its own file
+ https://bugs.webkit.org/show_bug.cgi?id=63471
+
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ Add the new file to builds that used TextBreakIteratorPoolICU.h.
+
+ * platform/text/LineBreakIteratorPoolICU.h: Added.
+ (WebCore::LineBreakIteratorPool::sharedPool):
+ (WebCore::LineBreakIteratorPool::LineBreakIteratorPool):
+ Expose the constructor so it can be used by others.
+
+ * platform/text/TextBreakIteratorICU.cpp:
+ Remove the old LineBreakIteratorPool implementation.
+
+2011-06-27 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by Ryosuke Niwa.
+
+ CompositeEditCommand::inputText(const String& text, bool selectedInsertText) is unused
+ https://bugs.webkit.org/show_bug.cgi?id=62921
+
+ * editing/CompositeEditCommand.cpp:
+ * editing/CompositeEditCommand.h:
+ * editing/InsertTextCommand.cpp:
+ (WebCore::InsertTextCommand::input):
+
+2011-05-17 Nat Duca <nduca@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Implement CCLayerTreeHost and CCLayerTreeHostImpl portions of threaded compositor
+ https://bugs.webkit.org/show_bug.cgi?id=58408
+
+ Create CCLayerTreeHost and CCLayerTreeHostImpl, which are the main
+ thread and compositor thread halves of a composited view. Communication
+ between the two is based on the design used in FileStreamProxy.
+
+ * WebCore.gypi:
+ * platform/chromium/TraceEvent.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::create):
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::setViewport):
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromiumImpl::create):
+ (WebCore::LayerRendererChromiumImpl::drawLayersAndPresent):
+ (WebCore::LayerRendererChromiumImpl::LayerRendererChromiumImpl):
+ (WebCore::LayerRendererChromiumImpl::drawLayersOnMainThread):
+ (WebCore::LayerRendererChromiumImplProxy::create):
+ (WebCore::LayerRendererChromiumImplProxy::createLayerTreeHostImpl):
+ (WebCore::LayerRendererChromiumImplProxy::LayerRendererChromiumImplProxy):
+ (WebCore::LayerRendererChromium::createLayerTreeHostImplProxy):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::setShowFPSCounter):
+ (WebCore::CCHeadsUpDisplay::setShowPlatformLayerTree):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
+ (WebCore::CCHeadsUpDisplay::currentFrameNumber):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::init):
+ (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::beginCommit):
+ (WebCore::CCLayerTreeHost::commitComplete):
+ (WebCore::CCLayerTreeHost::animateAndLayout):
+ (WebCore::CCLayerTreeHost::createLayerTreeHostCommitter):
+ (WebCore::CCLayerTreeHost::setNeedsCommitAndRedraw):
+ (WebCore::CCLayerTreeHost::setNeedsRedraw):
+ (WebCore::CCLayerTreeHost::updateLayers):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
+ (WebCore::CCLayerTreeHost::frameNumber):
+ * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
+ (WebCore::CCLayerTreeHostCommitter::create):
+ (WebCore::CCLayerTreeHostCommitter::commit):
+ * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
+ (WebCore::CCLayerTreeHostCommitter::CCLayerTreeHostCommitter):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp: Added.
+ (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
+ (WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
+ (WebCore::CCLayerTreeHostImpl::beginCommit):
+ (WebCore::CCLayerTreeHostImpl::commitComplete):
+ (WebCore::CCLayerTreeHostImpl::drawLayers):
+ (WebCore::CCLayerTreeHostImpl::setNeedsCommitAndRedraw):
+ (WebCore::CCLayerTreeHostImpl::setNeedsRedraw):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
+ (WebCore::CCLayerTreeHostImplClient::~CCLayerTreeHostImplClient):
+ (WebCore::CCLayerTreeHostImpl::frameNumber):
+ (WebCore::CCLayerTreeHostImpl::sourceFrameNumber):
+ (WebCore::CCLayerTreeHostImpl::setSourceFrameNumber):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp: Added.
+ (WebCore::CCLayerTreeHostImplProxy::CCLayerTreeHostImplProxy):
+ (WebCore::CCLayerTreeHostImplProxy::start):
+ (WebCore::CCLayerTreeHostImplProxy::~CCLayerTreeHostImplProxy):
+ (WebCore::CCLayerTreeHostImplProxy::isStarted):
+ (WebCore::CCLayerTreeHostImplProxy::setNeedsCommitAndRedraw):
+ (WebCore::CCLayerTreeHostImplProxy::setNeedsRedraw):
+ (WebCore::CCLayerTreeHostImplProxy::stop):
+ (WebCore::CCLayerTreeHostImplProxy::postDrawLayersTaskOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommitOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::isMainThread):
+ (WebCore::CCLayerTreeHostImplProxy::isCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommit):
+ (WebCore::CCLayerTreeHostImplProxy::commitOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::drawLayersOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::setNeedsCommitAndRedrawOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::setNeedsRedrawOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::initImplOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::layerTreeHostClosedOnCCThread):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.h: Added.
+ (WebCore::CCLayerTreeHostImplProxy::host):
+ * platform/graphics/chromium/cc/CCMainThreadTask.h:
+ * platform/graphics/chromium/cc/CCThread.cpp:
+ (WebCore::CCThread::runLoop):
+ * platform/graphics/chromium/cc/CCThreadTask.h:
+
+2011-06-27 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Fix removal of overhanging floats on style changes to absolute/fixed position.
+ https://bugs.webkit.org/show_bug.cgi?id=63355
+
+ 1. If we are not currently positioned.
+ 2. And we are not floating. (If we are floating, then this will be automatically
+ done in RenderBox::styleWillChange as part of removeFloatingOrPositionedChildFromBlockLists)
+ 3. And we have overhanging floats from previous sibling blocks.
+ 4. And our new new style tells that we will have absolute or fixed position.
+
+ Then, we mark all our descendants with floats for layout. This will make sure that
+ overhanging floats are removed. Also, it is important to do that since if that previous
+ sibling block goes away, it is not able to tell us that to remove those floats thinking
+ that being a positioned block, we should have removed them already.
+
+ Tests: fast/block/float/intruding-float-add-in-sibling-block-on-static-position.html
+ fast/block/float/intruding-float-add-in-sibling-block-on-static-position2.html
+ fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position.html
+ fast/block/float/intruding-float-remove-from-sibling-block-on-absolute-position2.html
+ fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position.html
+ fast/block/float/intruding-float-remove-from-sibling-block-on-fixed-position2.html
+ fast/block/float/overhanging-float-add-in-static-position-block.html
+ fast/block/float/overhanging-float-add-in-static-position-block2.html
+ fast/block/float/overhanging-float-remove-from-absolute-position-block.html
+ fast/block/float/overhanging-float-remove-from-absolute-position-block2.html
+ fast/block/float/overhanging-float-remove-from-fixed-position-block.html
+ fast/block/float/overhanging-float-remove-from-fixed-position-block2.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::styleWillChange):
+
+2011-06-27 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGAnimatedType should support SVGPreserveAspectRatio animation
+ https://bugs.webkit.org/show_bug.cgi?id=63456
+
+ Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368
+ This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGAnimatedPreserveAspectRatio.
+
+ The new animator does not affect any behavior, since it was animated with SVGAnimatedString before. The new animator is still needed
+ to support animVal and baseVal later.
+
+ Test: svg/animations/svgPreserveAspectRatio-animation-1.html
+
+ * CMakeLists.txt: Added new file.
+ * GNUmakefile.list.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * svg/SVGAllInOne.cpp: Ditto.
+ * svg/SVGAnimateElement.cpp: Handle AnimatedPreserveAspectRatio.
+ (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateElement::calculateFromAndToValues):
+ (WebCore::SVGAnimateElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateElement::resetToBaseValue):
+ (WebCore::SVGAnimateElement::applyResultsToTarget):
+ (WebCore::SVGAnimateElement::calculateDistance):
+ * svg/SVGAnimatedPreserveAspectRatio.cpp: Added. New animator for SVGAnimatedPreserveAspectRatio.
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::SVGAnimatedPreserveAspectRatioAnimator):
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::constructFromString):
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::calculateFromAndToValues):
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::calculateFromAndByValues):
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::calculateAnimatedValue):
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::calculateDistance):
+ * svg/SVGAnimatedPreserveAspectRatio.h:
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::~SVGAnimatedPreserveAspectRatioAnimator):
+ * svg/SVGAnimatedType.cpp: Support for SVGPreserveAspectRatio.
+ (WebCore::SVGAnimatedType::~SVGAnimatedType):
+ (WebCore::SVGAnimatedType::createPreserveAspectRatio):
+ (WebCore::SVGAnimatedType::preserveAspectRatio):
+ (WebCore::SVGAnimatedType::valueAsString):
+ (WebCore::SVGAnimatedType::setValueAsString):
+ (WebCore::SVGAnimatedType::setPreserveAspectRatioBaseValue):
+ * svg/SVGAnimatedType.h:
+ * svg/SVGAnimatorFactory.h:
+ (WebCore::SVGAnimatorFactory::create):
+
+2011-06-27 Alexis Menard <alexis.menard@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Remove Phonon MediaPlayer from the tree.
+ https://bugs.webkit.org/show_bug.cgi?id=63448
+
+ Remove Phonon mediaplayer as it is unused, not finished and
+ unmaintained.
+
+ * WebCore.gypi:
+ * WebCore.pri:
+ * WebCore.pro:
+ * features.pri:
+ * platform/graphics/MediaPlayer.cpp:
+ * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: Removed.
+ * platform/graphics/qt/MediaPlayerPrivatePhonon.h: Removed.
+
+2011-06-27 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ Crash in TextIterator
+ https://bugs.webkit.org/show_bug.cgi?id=63334
+
+ Fix a crash in TextIterator. Keep m_sortedTextBoxes and renderer consistent
+ and check !m_offset when handling first letter.
+
+ Also add more assertions to help detecting similar bugs.
+
+ Test: editing/text-iterator/first-letter-rtl-crash.html
+
+ * editing/TextIterator.cpp:
+ (WebCore::TextIterator::handleTextNode):
+ (WebCore::TextIterator::emitText):
+
+2011-06-27 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] tst_QWebFrame::overloadedSlots() fails
+ https://bugs.webkit.org/show_bug.cgi?id=37319
+
+ This patch is based on Noam Rosenthal original patch in the same bug.
+
+ When hinted with QWebElement metatype, we qualify the conversion
+ from JSElement as a "perfect match".
+
+ The test was failing because the wrong slot was called, since the QWebElement
+ match was taken as equal to the others and not chosen when the metacall happened.
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::convertValueToQVariant): Identify the conversion between JSElement
+ to QWebElement as a "perfect match" (dist = 0). Add comments to explain the reason
+ why we have the implicit conversion.
+
+2011-06-27 ChangSeok Oh <shivamidow@gmail.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Fix build break to support webgl
+ https://bugs.webkit.org/show_bug.cgi?id=63425
+
+ Some missing files in ANGLE are just added to fix build-break.
+
+ No test reqired
+
+ * GNUmakefile.list.am:
+
+2011-06-27 Hyowon Kim <hw1008.kim@samsung.com>
+
+ Reviewed by Martin Robinson.
+
+ [EFL] Add some PLATFORM(EFL) ifdefs to GraphicsContext3D.h
+ https://bugs.webkit.org/show_bug.cgi?id=62959
+
+ Add PLATFORM(EFL) ifdefs to use GraphicsContextInternal.
+
+ * platform/graphics/GraphicsContext3D.h:
+
+2011-06-27 Alexandru Chiculita <achicu@adobe.com>
+
+ Reviewed by Ojan Vafai.
+
+ css combinator "+" in combination with NAV tag is buggy
+ https://bugs.webkit.org/show_bug.cgi?id=47971
+
+ Added a new state in css/tokenizer.flex for the "nth" rule. The state begins
+ at nth-*( functions and ends at the first ")". It avoids parsing selectors
+ like "#div+nav" as: "#div" "+n" "av".
+
+ Test: fast/css/div_plus_nav_bug47971.html
+
+ * css/maketokenizer:
+ * css/tokenizer.flex:
+
+2011-06-27 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r89822.
+ http://trac.webkit.org/changeset/89822
+ https://bugs.webkit.org/show_bug.cgi?id=63461
+
+ Broken builds (Requested by apavlov on #webkit).
+
+ * inspector/Inspector.json:
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::InspectorCSSAgent::getStylesForNode):
+ * inspector/InspectorCSSAgent.h:
+ * inspector/front-end/AuditRules.js:
+ (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
+ * inspector/front-end/CSSStyleModel.js:
+ (WebInspector.CSSStyleModel.prototype.getStylesAsync):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype.update):
+
+2011-06-27 Noel Gordon <noel.gordon@gmail.com>
+
+ Reviewed by Adam Roben.
+
+ Send keypress events to windowless plugins on the windows port.
+ https://bugs.webkit.org/show_bug.cgi?id=63144
+
+ No new tests. Covered by existing windowless plugin tests plugins/mouse-events.html
+ and plugins/keyboard-events.html. Both are not yet working as desired because focus
+ events are not being fowarded to windowed plugins on the win port (bug 62375). Test
+ plugin logging on the win port was added in bug 61721. New failing expectations for
+ plugins/keyboard-events.html were subsequently added in bug 33973 so there's no need
+ to update test expectations in this patch.
+
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::handleKeyboardEvent): Add an ASSERT(m_plugin && !m_isWindowed)
+ to indicate that the routine is for windowless plugins. Remove trailing whitespace.
+ Add handling for keyPress events (map to WM_CHAR).
+ (WebCore::PluginView::handleMouseEvent): Add the ASSERT to indicate that the routine
+ is for windowless plugins. Add FIXME note. Remove trailing whitespace.
+
+2011-06-27 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Change the inspector model API and backend to allow CSS pseudoclass inspection
+ https://bugs.webkit.org/show_bug.cgi?id=63446
+
+ * inspector/Inspector.json:
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::computePseudoClassMask):
+ (WebCore::InspectorCSSAgent::getStylesForNode):
+ * inspector/InspectorCSSAgent.h:
+ * inspector/front-end/AuditRules.js:
+ (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
+ * inspector/front-end/CSSStyleModel.js:
+ (WebInspector.CSSStyleModel.prototype.getStylesAsync):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype.update):
+
+2011-06-27 Pavel Feldman <pfeldman@google.com>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [REGRESSION r84481] updateLayout called from DrawNodeHighlight
+ https://bugs.webkit.org/show_bug.cgi?id=63405
+
+ We should not call layout from paint.
+
+ * inspector/DOMNodeHighlighter.cpp:
+ (WebCore::DOMNodeHighlighter::drawNodeHighlight):
+ * inspector/DOMNodeHighlighter.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::drawNodeHighlight):
+
+2011-06-27 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Unreviewed. Fix style error in EFL port.
+
+ * platform/efl/PlatformKeyboardEventEfl.cpp:
+ * platform/efl/PlatformScreenEfl.cpp:
+ * platform/efl/SharedBufferEfl.cpp:
+
+2011-06-27 Pavel Feldman <pfeldman@google.com>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: node selection is slow in the Elements panel.
+ https://bugs.webkit.org/show_bug.cgi?id=60813
+
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype.update.stylesCallback):
+ (WebInspector.StylesSidebarPane.prototype.update.computedStyleCallback):
+ (WebInspector.StylesSidebarPane.prototype.update):
+
+2011-06-26 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: roll out r88337 for making tests flaky.
+ https://bugs.webkit.org/show_bug.cgi?id=63422
+
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel):
+ (WebInspector.ElementsPanel.prototype.updateStyles):
+ (WebInspector.ElementsPanel.prototype._stylesUpdated):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype.update.stylesCallback):
+ (WebInspector.StylesSidebarPane.prototype.update.computedStyleCallback):
+ (WebInspector.StylesSidebarPane.prototype.update):
+
+2011-06-27 Huang Dongsung <luxtella@company100.net>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ TiledBackingStore endlessly creates and destroys tiles due to an off-by-one
+ error.
+ https://bugs.webkit.org/show_bug.cgi?id=62422
+
+ REGRESSION(r77286): Remove bottomRight().
+ REGRESSION(r77312): Change the logic to get the bottom right point.
+ REGRESSION(r77928): Cause off-by-one error in TiledBackingStore.
+ REGRESSION(r78783): Cause off-by-one error in TiledDrawingAreaProxy.
+ REGRESSION(r78785): Cause off-by-one error in TiledDrawingAreaProxy.
+
+ If the viewport width equals the contents width, especially in the mobile
+ device, TiledBackingStore endlessly creates and deletes the rightmost
+ column and bottom row of tiles.
+ In the detail, dropTilesOutsideRect() in TiledBackingStore::createTiles()
+ deletes tiles and setTile(coordinate, Tile::create(this, coordinate)) creates
+ tiles infinitely.
+ Modified TiledDrawingAreaProxy also.
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::innerBottomRight):
+ (WebCore::TiledBackingStore::invalidate):
+ (WebCore::TiledBackingStore::paint):
+ (WebCore::TiledBackingStore::createTiles):
+
+2011-06-26 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Remove LegacyDefaultOptionalArguments from WebAudio IDL files
+ https://bugs.webkit.org/show_bug.cgi?id=63416
+
+ WebAudio isn't that widely used, so it's seems somewhat safe to remove
+ legacy code generation hacks. I'm not an expert on WebAudio, but the
+ API doesn't appear to need many optional arguments.
+
+ There are a bunch of APIs that have custom bindings that look like they
+ could be autogenerated. I've added FIXME comments where appropriate.
+
+ * webaudio/AudioBuffer.idl:
+ * webaudio/AudioContext.idl:
+ * webaudio/AudioListener.idl:
+ * webaudio/AudioNode.idl:
+ * webaudio/AudioPannerNode.idl:
+ * webaudio/AudioParam.idl:
+ * webaudio/RealtimeAnalyserNode.idl:
+
+2011-06-26 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: REGRESSION Scripts panel sidebar pane context menu has no "Remove breakpoint" item
+ https://bugs.webkit.org/show_bug.cgi?id=63421
+
+ Show generic sidebar menu only if no pane-specific menu has been shown.
+
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+
+2011-06-26 Adam Barth <abarth@webkit.org>
+
+ Build fix for clang. Apparently clang doesn't want us to use the std
+ namespace in headers, which makes sense.
+
+ * svg/SVGAnimatedType.h:
+
+2011-06-26 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Remove LegacyDefaultOptionalArguments from XMLHttpRequest.idl and XMLHttpRequestUpload.idl
+ https://bugs.webkit.org/show_bug.cgi?id=63418
+
+ The XMLHttpRequest.idl interface used to implement the new behavior
+ manually using the RequiresAllArguments attribute. Now that we have
+ that behavior by default, we can simply remove the
+ LegacyDefaultOptionalArguments attribute.
+
+ * xml/XMLHttpRequest.idl:
+ * xml/XMLHttpRequestUpload.idl:
+
+2011-06-26 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGAnimatedType should support SVGLengthList animation
+ https://bugs.webkit.org/show_bug.cgi?id=63399
+
+ Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368
+ This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGAnimatedLengthList.
+
+ Interpolated animations of glyph positions are possible now.
+
+ Tests: svg/animations/svglengthlist-animation-1.html
+ svg/animations/svglengthlist-animation-2.html
+ svg/animations/svglengthlist-animation-3.html
+ svg/animations/svglengthlist-animation-4.html
+
+ * CMakeLists.txt: Add new file to build system.
+ * GNUmakefile.list.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * svg/SVGAllInOne.cpp: Ditto.
+ * svg/SVGAnimateElement.cpp: Make use of AnimatedLengthList.
+ (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateElement::calculateFromAndToValues):
+ (WebCore::SVGAnimateElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateElement::resetToBaseValue):
+ (WebCore::SVGAnimateElement::applyResultsToTarget):
+ (WebCore::SVGAnimateElement::calculateDistance):
+ * svg/SVGAnimatedLengthList.cpp: Added. New animator for SVGLengthList.
+ (WebCore::SVGAnimatedLengthListAnimator::SVGAnimatedLengthListAnimator):
+ (WebCore::SVGAnimatedLengthListAnimator::constructFromString):
+ (WebCore::SVGAnimatedLengthListAnimator::calculateFromAndToValues):
+ (WebCore::SVGAnimatedLengthListAnimator::calculateFromAndByValues):
+ (WebCore::SVGAnimatedLengthListAnimator::calculateAnimatedValue):
+ (WebCore::SVGAnimatedLengthListAnimator::calculateDistance):
+ * svg/SVGAnimatedLengthList.h:
+ (WebCore::SVGAnimatedLengthListAnimator::~SVGAnimatedLengthListAnimator):
+ * svg/SVGAnimatedType.cpp: Add SVGLengthList.
+ (WebCore::SVGAnimatedType::~SVGAnimatedType):
+ (WebCore::SVGAnimatedType::createLengthList):
+ (WebCore::SVGAnimatedType::lengthList):
+ (WebCore::SVGAnimatedType::valueAsString):
+ (WebCore::SVGAnimatedType::setValueAsString):
+ * svg/SVGAnimatedType.h:
+ * svg/SVGAnimatorFactory.h:
+ (WebCore::SVGAnimatorFactory::create):
+ * svg/SVGLength.cpp: Add new constructor with LengthType, LengthMode and value.
+ (WebCore::SVGLength::SVGLength):
+ * svg/SVGLength.h:
+
+2011-06-26 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ window.location should use the holder's prototype chain
+ https://bugs.webkit.org/show_bug.cgi?id=63411
+
+ This patch corrects the prototype chain for Location, but we really
+ should do a complete cleanup of the prototype chain generation, like we
+ did for JavaScriptCore.
+
+ Test: http/tests/security/location-prototype.html
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+
+2011-06-26 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Add [Optional] attributes where appropriate for addEventListener and removeEventListener
+ https://bugs.webkit.org/show_bug.cgi?id=63417
+
+ This patch doesn't actually change behavior because these interfaces
+ have the LegacyDefaultOptionalArguments attribute. This patch paves
+ the way to removing LegacyDefaultOptionalArguments from some of these
+ interfaces as well as making the project safer for copy-and-pasting
+ these methods into new IDL files that don't have the
+ LegacyDefaultOptionalArguments attribute.
+
+ * bindings/scripts/test/TestObj.idl:
+ * dom/EventTarget.idl:
+ * dom/MediaStream.idl:
+ * dom/MessagePort.idl:
+ * dom/Node.idl:
+ * loader/appcache/DOMApplicationCache.idl:
+ * notifications/Notification.idl:
+ * page/DOMWindow.idl:
+ * page/EventSource.idl:
+ * storage/IDBRequest.idl:
+ * storage/IDBTransaction.idl:
+ * svg/SVGElementInstance.idl:
+ * websockets/WebSocket.idl:
+ * workers/AbstractWorker.idl:
+ * workers/WorkerContext.idl:
+ * xml/XMLHttpRequest.idl:
+ * xml/XMLHttpRequestUpload.idl:
+
+2011-06-26 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ m_formElementsWithFormAttribute doesn't ref the objects it holds
+ https://bugs.webkit.org/show_bug.cgi?id=62956
+
+ Test: fast/forms/form-associated-element-crash3.html
+
+ * dom/Document.h:
+
+2011-06-26 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ FileList::filenames should be FileList::paths, because it's more accurate.
+ https://bugs.webkit.org/show_bug.cgi?id=63414
+
+ Refactoring, no change in behavior.
+
+ * fileapi/FileList.cpp:
+ (WebCore::FileList::paths): Renamed from filenames.
+ * fileapi/FileList.h:
+ * html/FileInputType.cpp:
+ (WebCore::FileInputType::handleDOMActivateEvent): Changed to use filenames, also fixed a reach-unto-thyself whoopsie.
+ (WebCore::FileInputType::requestIcon): Ditto.
+ (WebCore::FileInputType::filesChosen): Ditto.
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::fileTextValue): Ditto.
+
+2011-06-26 Young Han Lee <joybro@company100.net>
+
+ Reviewed by Dirk Schulze.
+
+ SVGAnimation - keyTime value 1 never get animated
+ https://bugs.webkit.org/show_bug.cgi?id=63230
+
+ According to the SMIL 3.0 specification, the index of the keyTimes should be
+ determined under the end-point-exclusive rule (e.g. Given keyTimes(0;0.5;1)
+ and t=0.5, the current index of the keyTimes have to be 1 not 0).
+ http://www.w3.org/TR/SMIL3/smil-animation.html#animationNS-InterpolationExamplesAdvanced
+
+ Test: svg/animations/animate-number-calcMode-discrete-keyTimes.html
+
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::SVGAnimationElement::calculateKeyTimesIndex):
+
+2011-06-26 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ With word-break: break-all, words do not break correctly before a surrogate pair
+ https://bugs.webkit.org/show_bug.cgi?id=63401
+
+ The code to check for mid-word breaks accumulates width one character at a time. It was actually
+ measuring the two parts of the surrogate pair individually, so they appeared to have zero width.
+ Fixed by checking for surrogate pairs and measuring the pair as one unit.
+
+ Test: fast/text/midword-break-before-surrogate-pair.html
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::LineBreaker::nextLineBreak):
+
+2011-06-26 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGAnimatedType should support SVGNumberOptionalNumber animation
+ https://bugs.webkit.org/show_bug.cgi?id=63397
+
+ Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368
+ This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGAnimatedNumberOptionalNumber.
+
+ Animations of attributes with type SVGAnimatedNumberOptionalNumber can be interpolated now. This can be used for smooth
+ growing shadows with feGaussianBlur, feDropShadow or other filter effects.
+
+ Tests: svg/animations/svgnumberoptionalnumber-animation-1.html
+ svg/animations/svgnumberoptionalnumber-animation-2.html
+ svg/animations/svgnumberoptionalnumber-animation-3.html
+ svg/animations/svgnumberoptionalnumber-animation-4.html
+
+ * CMakeLists.txt: Added new files to build system.
+ * GNUmakefile.list.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * svg/SVGAllInOne.cpp: Ditto.
+ * svg/SVGAnimateElement.cpp: Make use of attribute type AnimatedNumberOptionalNumber.
+ (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateElement::calculateFromAndToValues):
+ (WebCore::SVGAnimateElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateElement::resetToBaseValue):
+ (WebCore::SVGAnimateElement::applyResultsToTarget):
+ (WebCore::SVGAnimateElement::calculateDistance):
+ * svg/SVGAnimatedNumberOptionalNumber.cpp: Added. New animator for SVGAnimatedNumberOptionalNumber.
+ (WebCore::SVGAnimatedNumberOptionalNumberAnimator::SVGAnimatedNumberOptionalNumberAnimator):
+ (WebCore::SVGAnimatedNumberOptionalNumberAnimator::constructFromString):
+ (WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateFromAndToValues):
+ (WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateFromAndByValues):
+ (WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateAnimatedValue):
+ (WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateDistance):
+ * svg/SVGAnimatedNumberOptionalNumber.h: Added.
+ (WebCore::SVGAnimatedNumberOptionalNumberAnimator::~SVGAnimatedNumberOptionalNumberAnimator):
+ * svg/SVGAnimatedType.cpp: Added new type: pair<float, float>.
+ (WebCore::SVGAnimatedType::~SVGAnimatedType):
+ (WebCore::SVGAnimatedType::createNumberOptionalNumber):
+ (WebCore::SVGAnimatedType::numberOptionalNumber):
+ (WebCore::SVGAnimatedType::valueAsString):
+ (WebCore::SVGAnimatedType::setValueAsString):
+ * svg/SVGAnimatedType.h:
+ * svg/SVGAnimatorFactory.h: Add new animator to factory.
+ (WebCore::SVGAnimatorFactory::create):
+
+2011-06-25 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Crash in frameless document with media element.
+ https://bugs.webkit.org/show_bug.cgi?id=63393
+
+ Since MediaControls::create can return 0 (and does for frameless documents), we must anticipate it
+ in the calling code.
+
+ Test: fast/dom/shadow/frameless-media-element-crash.html
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::attributeChanged): Changed to bail out if controls weren't successfully created.
+ (WebCore::HTMLMediaElement::createMediaControls): Renamed to better reflect the purpose, changed to handle failure of creation.
+ (WebCore::HTMLMediaElement::preDispatchEventHandler): Changed to bail out if controls weren't successfully created.
+ * html/HTMLMediaElement.h: Adjusted def.
+
+2011-06-25 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Fix some minor style issues
+ https://bugs.webkit.org/show_bug.cgi?id=63391
+
+ * inspector/DOMNodeHighlighter.cpp:
+ (WebCore::DOMNodeHighlighter::DrawNodeHighlight):
+ The explicit WebCore namespace usage can be dropped.
+
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::mapLocalToContainer):
+ Use ASSERT_UNUSED for a parameter that we want to ASSERT
+ on for a debug build, but is UNUSED in a release build.
+
+2011-06-25 Joseph Pecoraro <joepeck@webkit.org>
+
+ Unreviewed build fix.
+
+ Use UNUSED_PARAM on the correct param!
+
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::mapLocalToContainer):
+
+2011-06-25 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Simon Fraser.
+
+ Inspector highlight rect is wrong for contents of transformed iframes
+ https://bugs.webkit.org/show_bug.cgi?id=53627
+
+ Part 2: Only adjust for the FrameView's scroll position when
+ the localToAbsolute mapping did not end with fixed content.
+ Content that is inside of a fixed position container is already
+ adjusted for the FrameView's scrollPosition when RenderView
+ maps local to container.
+
+ This patch uses a "wasFixed" out parameter to determine if
+ the localToAbsolute transformation ended inside a fixed block,
+ and if so does not apply the scroll position.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::convertFromRenderer):
+ Respect wasFixed as described above.
+
+ * rendering/RenderBox.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::mapLocalToContainer):
+ This is the only time that "fixed" ever changed. So when
+ fixed changes, update the optional wasFixed out parameter.
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::localToAbsolute):
+ (WebCore::RenderObject::mapLocalToContainer):
+ (WebCore::RenderObject::localToContainerQuad):
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::localToAbsoluteQuad):
+ Ignore wasFixed by default, but pipe it though where needed.
+
+ * rendering/RenderView.h:
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::mapLocalToContainer):
+ This is the final recursive call, so wasFixed goes no
+ further. We sanity check its value in debug builds.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::selectionGapRectsForRepaint):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::mapLocalToContainer):
+ * rendering/RenderInline.h:
+ * rendering/svg/RenderSVGForeignObject.cpp:
+ (WebCore::RenderSVGForeignObject::mapLocalToContainer):
+ * rendering/svg/RenderSVGForeignObject.h:
+ * rendering/svg/RenderSVGInline.cpp:
+ (WebCore::RenderSVGInline::mapLocalToContainer):
+ * rendering/svg/RenderSVGInline.h:
+ * rendering/svg/RenderSVGModelObject.cpp:
+ (WebCore::RenderSVGModelObject::mapLocalToContainer):
+ * rendering/svg/RenderSVGModelObject.h:
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::mapLocalToContainer):
+ * rendering/svg/RenderSVGRoot.h:
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::mapLocalToContainer):
+ * rendering/svg/RenderSVGText.h:
+ * rendering/svg/SVGRenderSupport.cpp:
+ (WebCore::SVGRenderSupport::mapLocalToContainer):
+ * rendering/svg/SVGRenderSupport.h:
+ Pipe wasFixed through where needed.
+
+2011-06-25 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Simon Fraser.
+
+ Inspector highlight rect is wrong for contents of transformed iframes
+ https://bugs.webkit.org/show_bug.cgi?id=53627
+
+ Part 1: Provide FloatQuad versions of convertFromRenderer,
+ convertToContainingView, and convertChildToSelf, so that we
+ can get the fully transformed quad of a renderer all the
+ way up to the root widget.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::convertFromRenderer):
+ (WebCore::FrameView::convertToContainingView):
+ * page/FrameView.h:
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::convertChildToSelf):
+ * platform/Widget.h:
+ * platform/Widget.cpp:
+ (WebCore::Widget::convertToContainingView):
+ Provide FloatQuad versions of these already existing functions.
+
+ (WebCore::Widget::convertToRootContainingView):
+ Provide a helper conversion function to recursively
+ convert a given FloatQuad up to the root widget.
+
+ * inspector/DOMNodeHighlighter.cpp:
+ (WebCore::DOMNodeHighlighter::DrawNodeHighlight):
+ Use the new methods to convert the FloatQuad for the highlighted
+ node to the root container, without losing transformation
+ information. Add a FIXME for SVG, which is still broken.
+
+ * WebCore.exp.in:
+ Export the new Widget functions so WebKit can link properly.
+
+2011-06-25 Dirk Schulze <krit@webkit.org>
+
+ Unreviewed build fix.
+
+ SVGAnimatedType should support SVGNumberList animation
+ https://bugs.webkit.org/show_bug.cgi?id=63387
+
+ * svg/SVGAnimatedNumberList.cpp:
+ (WebCore::SVGAnimatedNumberListAnimator::calculateAnimatedValue):
+
+2011-06-25 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGAnimatedType should support SVGNumberList animation
+ https://bugs.webkit.org/show_bug.cgi?id=63387
+
+ Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368
+ This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGNumberList.
+
+ Animations of attributes with type SVGNumberList can be interpolated now.
+
+ Tests: svg/animations/svgnumberlist-animation-1.html
+ svg/animations/svgnumberlist-animation-2.html
+
+ * CMakeLists.txt: Added new file to build system.
+ * GNUmakefile.list.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * svg/SVGAllInOne.cpp: Ditto.
+ * svg/SVGAnimateElement.cpp: Make use of attribute type AnimatedNumberList.
+ (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateElement::calculateFromAndToValues):
+ (WebCore::SVGAnimateElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateElement::resetToBaseValue):
+ (WebCore::SVGAnimateElement::applyResultsToTarget):
+ (WebCore::SVGAnimateElement::calculateDistance):
+ * svg/SVGAnimatedNumber.cpp:
+ (WebCore::SVGAnimatedNumberAnimator::calculateAnimatedNumber): Made method static for reuse in SVGAnimatedNumberList (and SVGAnimatedNumberOptionalNumber later).
+ (WebCore::SVGAnimatedNumberAnimator::calculateAnimatedValue): Use new static function.
+ * svg/SVGAnimatedNumber.h:
+ * svg/SVGAnimatedNumberList.cpp: Added. New animator for SVGNumberList.
+ (WebCore::SVGAnimatedNumberListAnimator::SVGAnimatedNumberListAnimator):
+ (WebCore::SVGAnimatedNumberListAnimator::constructFromString):
+ (WebCore::SVGAnimatedNumberListAnimator::calculateFromAndToValues):
+ (WebCore::SVGAnimatedNumberListAnimator::calculateFromAndByValues):
+ (WebCore::SVGAnimatedNumberListAnimator::calculateAnimatedValue):
+ (WebCore::SVGAnimatedNumberListAnimator::calculateDistance):
+ * svg/SVGAnimatedNumberList.h:
+ (WebCore::SVGAnimatedNumberListAnimator::~SVGAnimatedNumberListAnimator):
+ * svg/SVGAnimatedType.cpp: Use new Animator.
+ (WebCore::SVGAnimatedType::~SVGAnimatedType):
+ (WebCore::SVGAnimatedType::createNumberList):
+ (WebCore::SVGAnimatedType::numberList):
+ (WebCore::SVGAnimatedType::valueAsString):
+ (WebCore::SVGAnimatedType::setValueAsString):
+ * svg/SVGAnimatedType.h:
+ * svg/SVGAnimatorFactory.h:
+ (WebCore::SVGAnimatorFactory::create):
+
+2011-06-25 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ Convert SVGPath to SVGAnimatorFactory concept
+ https://bugs.webkit.org/show_bug.cgi?id=63336
+
+ Convert <animate attributeName="d"> parsing to the new SVGAnimatorFactory concept, removing
+ the last special data types from SVGAnimateElement: SVGPathByteStream m_fromPath/m_toPath/m_animatedPath.
+ All existing non-string primitives have been converted to the new concept.
+
+ Doesn't change any functionality.
+
+ * CMakeLists.txt: Added SVGAnimatedPath.*.
+ * GNUmakefile.list.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * svg/SVGAllInOne.cpp: Ditto.
+ * svg/SVGAnimateElement.cpp:
+ (WebCore::SVGAnimateElement::SVGAnimateElement):
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateElement::calculateFromAndToValues):
+ (WebCore::SVGAnimateElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateElement::resetToBaseValue):
+ (WebCore::SVGAnimateElement::applyResultsToTarget):
+ * svg/SVGAnimateElement.h:
+ * svg/SVGAnimatedPath.cpp: Added.
+ (WebCore::SVGAnimatedPathAnimator::SVGAnimatedPathAnimator):
+ (WebCore::SVGAnimatedPathAnimator::constructFromString):
+ (WebCore::SVGAnimatedPathAnimator::calculateFromAndToValues):
+ (WebCore::SVGAnimatedPathAnimator::calculateFromAndByValues):
+ (WebCore::SVGAnimatedPathAnimator::calculateAnimatedValue):
+ (WebCore::SVGAnimatedPathAnimator::calculateDistance):
+ * svg/SVGAnimatedPath.h: Added.
+ (WebCore::SVGAnimatedPathAnimator::~SVGAnimatedPathAnimator):
+ * svg/SVGAnimatedType.cpp:
+ (WebCore::SVGAnimatedType::~SVGAnimatedType):
+ (WebCore::SVGAnimatedType::createPath):
+ (WebCore::SVGAnimatedType::path):
+ (WebCore::SVGAnimatedType::valueAsString):
+ (WebCore::SVGAnimatedType::setValueAsString):
+ * svg/SVGAnimatedType.h:
+ * svg/SVGAnimatorFactory.h:
+ (WebCore::SVGAnimatorFactory::create):
+ * svg/SVGPathByteStream.h:
+ (WebCore::SVGPathByteStream::initializeFrom):
+ * svg/SVGPathParserFactory.cpp:
+ (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromSVGPathSegList):
+ (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString):
+ (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream):
+
+2011-06-25 Jer Noble <jer.noble@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ SOFT_LINK_POINTER_OPTIONAL isn't optional.
+ https://bugs.webkit.org/show_bug.cgi?id=63378
+
+ Continuation of r89718. SOFT_LINK_POINTER_OPTIONAL should check the value returned by dlsym before dereferencing it.
+
+ * platform/mac/SoftLinking.h:
+
+2011-06-25 Rob Buis <rbuis@rim.com>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG1.1SE test linking-uri-01-b.svg fails
+ https://bugs.webkit.org/show_bug.cgi?id=63322
+
+ Allow navigating to internal <view> targets. When choosing Back ensure
+ the <svg> current view is initialized correctly.
+
+ Tests: svg/W3C-SVG-1.1-SE/linking-uri-01-b.svg
+ svg/custom/linking-uri-01-b.svg
+
+ * page/FrameView.cpp: Delegate to setupInitialView.
+ (WebCore::FrameView::scrollToAnchor):
+ * svg/SVGAElement.cpp: Allow navigating to internal <view> targets.
+ (WebCore::SVGAElement::defaultEventHandler):
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::setupInitialView): Initialize current view depending on fragment identifier.
+ (WebCore::SVGSVGElement::inheritViewAttributes):
+ * svg/SVGSVGElement.h:
+
+2011-06-24 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (r77740): Shadow DOM pseudo elements aren't matching when combined with descendant selectors
+ https://bugs.webkit.org/show_bug.cgi?id=63373
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::pushParentStackFrame): Changed to use parentOrHostElement.
+ (WebCore::CSSStyleSelector::pushParent): Ditto.
+ * dom/Node.cpp:
+ (WebCore::Node::parentOrHostElement): Added.
+ * dom/Node.h:
+
+2011-06-24 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ Add an option to enable legacy rounding hacks
+ https://bugs.webkit.org/show_bug.cgi?id=63363
+
+ Restored most of text rounding hacks which were removed in r78846, with a global flag to control
+ whether rounding hacks are allowed, which defaults to false.
+
+ Test: platform/mac/fast/text/rounding-hacks.html
+
+ * CMakeLists.txt: Added TextRun.cpp.
+ * GNUmakefile.list.am: Ditto.
+ * WebCore.exp.in: Export new TextRun function and global and updated StringTruncator functions.
+ * WebCore.gypi: Added TextRun.cpp.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawTextInternal): Disable rounding hacks in the one place
+ they used to be disabled.
+ * platform/graphics/Font.cpp: Re-added the rounding character table.
+ * platform/graphics/Font.h:
+ (WebCore::Font::isRoundingHackCharacter): Re-added.
+ * platform/graphics/FontFastPath.cpp:
+ (WebCore::Font::getGlyphsAndAdvancesForSimpleText): Account for final rounding width.
+ * platform/graphics/SimpleFontData.cpp:
+ (WebCore::SimpleFontData::platformGlyphInit): Initialize m_adjustedSpaceWidth.
+ * platform/graphics/SimpleFontData.h:
+ (WebCore::SimpleFontData::adjustedSpaceWidth): Re-added.
+ * platform/graphics/StringTruncator.cpp:
+ (WebCore::stringWidth): Re-added disableRoundingHacks parameter.
+ (WebCore::truncateString): Ditto.
+ (WebCore::StringTruncator::centerTruncate): Added EnableRoundingHacksOrNot parameter.
+ (WebCore::StringTruncator::rightTruncate): Ditto.
+ (WebCore::StringTruncator::width): Ditto.
+ * platform/graphics/StringTruncator.h:
+ * platform/graphics/TextRun.cpp: Added.
+ (WebCore::TextRun::setAllowsRoundingHacks): Added.
+ * platform/graphics/TextRun.h:
+ (WebCore::TextRun::TextRun): Added RoundingHacks parameter to the constructors, used to initialize
+ the m_applyRunRounding and m_applyWordRounding member variables, subject to rounding hacks being allowed.
+ (WebCore::TextRun::applyRunRounding): Re-added this accessor.
+ (WebCore::TextRun::applyWordRounding): Ditto.
+ (WebCore::TextRun::disableRoundingHacks): Re-added.
+ * platform/graphics/WidthIterator.cpp:
+ (WebCore::WidthIterator::WidthIterator): Re-added code to apply rounding hacks.
+ (WebCore::WidthIterator::advance): Ditto.
+ * platform/graphics/WidthIterator.h:
+ * platform/graphics/mac/ComplexTextController.cpp:
+ (WebCore::ceilCGFloat): Re-added.
+ (WebCore::ComplexTextController::ComplexTextController): Re-added code to apply rounding hacks.
+ (WebCore::ComplexTextController::advance): Ditto.
+ (WebCore::ComplexTextController::adjustGlyphsAndAdvances): Ditto.
+ * platform/graphics/mac/ComplexTextController.h:
+ (WebCore::ComplexTextController::finalRoundingWidth): Re-added this accessor.
+ * platform/graphics/mac/FontComplexTextMac.cpp:
+ (WebCore::Font::getGlyphsAndAdvancesForComplexText): Accound for final rounding width.
+ * platform/graphics/qt/SimpleFontDataQt.cpp:
+ (WebCore::SimpleFontData::platformGlyphInit): Initialize m_adjustedSpaceWidth.
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::fileListNameForWidth): Enabled rounding hacks in the string truncator.
+ * platform/mac/DragImageMac.mm:
+ (WebCore::widthWithFont): Disable rounding hacks when measuring.
+ (WebCore::drawAtPoint): Disable rounding hacks when drawing.
+ * platform/win/DragImageWin.cpp:
+ (WebCore::createDragImageForLink): Enable rounding hacks in the string truncator.
+ * platform/win/WebCoreTextRenderer.cpp:
+ (WebCore::WebCoreTextFloatWidth): Ditto.
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::paintObject): Disable rounding hacks.
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::updateFromElement): Ditto.
+ (WebCore::RenderListBox::paintItemForeground): Ditto.
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::getAvgCharWidth): Ditto.
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::fileListNameForWidth): Enabled rounding hacks in the string truncator.
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::fileListNameForWidth): Ditto.
+ * rendering/svg/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::constructTextRun): Disabled rounding hacks.
+ * rendering/svg/SVGTextMetrics.cpp:
+ (WebCore::constructTextRun): Ditto.
+
+2011-06-24 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Rob Buis.
+
+ Integrate SVG Fonts within GlyphPage concept, removing the special SVG code paths from Font, making it possible to reuse the simple text code path for SVG Fonts
+ https://bugs.webkit.org/show_bug.cgi?id=59085
+
+ font substitution doesn't work for HTML text using SVG fonts
+ https://bugs.webkit.org/show_bug.cgi?id=17608
+
+ Selection rects are wrong for text with SVG fonts
+ https://bugs.webkit.org/show_bug.cgi?id=25460
+
+ With @font-face, SVG fonts only work as primary, non-segmented
+ https://bugs.webkit.org/show_bug.cgi?id=32227
+
+ When using SVG fonts with @font-face word-spacing and text-align: justify are not being honored
+ https://bugs.webkit.org/show_bug.cgi?id=34236
+
+ SVG @font-face breaks text-overflow: ellipsis
+ https://bugs.webkit.org/show_bug.cgi?id=36840
+
+ REGRESSION: SVG Font selection problems
+ https://bugs.webkit.org/show_bug.cgi?id=41934
+
+ Tests: svg/custom/svg-fonts-fallback.xhtml (for bug 17608, extended the original test from Mark Ambachtsheer)
+ svg/custom/svg-fonts-segmented.xhtml (for bug 32227)
+ svg/custom/svg-fonts-word-spacing.html (for bug 34236, from Michael Lewis)
+ svg/text/select-text-svgfont.html (for bug 25460/41934, from Emil Schutte)
+ svg/text/text-overflow-ellipsis-svgfont.html (for 36840, from Emil Schutte)
+
+ Rewrite the SVG Fonts support to fully integrate within the GlyphPage concept and the "simple" code path used to render platform fonts.
+ That means the special logic for measuring text using SVG Fonts, calculating offset for positions, computing selection rects etc. is all gone now.
+ There's no difference anymore between using a native font or a SVG Font, in terms of these operations.
+
+ This makes text selection using SVG Fonts possible again.
+
+ * features.pri: Temporarily turn of SVG Fonts for Qt, as long as QRawFont support is not available and the fast path is disabled.
+ * page/DOMWindow.idl: Touched file to force Qt regenerating the bindings.
+ * platform/graphics/Font.cpp: Remove SVG Font special cases, the simple code path now handles SVG Fonts as well.
+ (WebCore::Font::drawText):
+ (WebCore::Font::drawEmphasisMarks):
+ (WebCore::Font::width):
+ (WebCore::Font::selectionRectForText):
+ (WebCore::Font::offsetForPosition):
+ (WebCore::Font::codePath):
+ * platform/graphics/Font.h: Pass TextRun to drawGlyphBuffer/drawEmphasisMarks. Add new glyphDataAndPageForCharacter() method which returns a pair
+ std::pair<GlyphData, GlyphPage*>, so we know the associated GlyphPage for a certain GlyphData object, which is needed to properly
+ handle font fallback glyph matching for SVG Fonts..
+ (WebCore::Font::fontList): Add FontFallbackList accessor.
+ * platform/graphics/FontFallbackList.h: Add getters/setters for glyphPageZero -- SVG Fonts support needs access to these objects from SVGTextRunRenderingContext.
+ (WebCore::FontFallbackList::glyphPageZero):
+ (WebCore::FontFallbackList::glyphPages):
+ (WebCore::FontFallbackList::setGlyphPageZero):
+ (WebCore::FontFallbackList::setGlyphPages):
+ * platform/graphics/FontFastPath.cpp:
+ (WebCore::Font::glyphDataForCharacter): Move implementation to glyphDataAndPageForCharacter(), and use that method from here.
+ (WebCore::Font::glyphDataAndPageForCharacter): Does the same as before, just returns an additional GlyphPage* pointer.
+ (WebCore::Font::getEmphasisMarkGlyphData): Remove SVG Fonts special case.
+ (WebCore::Font::drawGlyphBuffer): Ditto.
+ * platform/graphics/FontMetrics.h:
+ (WebCore::scaleEmToUnits): Refactored scaleEmToUnits free function from SimpleFontDataMac/CGWin to share with SVGFontData/SVGTextRunRenderingContext.
+ * platform/graphics/GlyphPageTreeNode.cpp:
+ (WebCore::fill): Stop skipping SVG Fonts, they now also fill the GlyphPage using the glyphs defined in the SVG Font.
+ * platform/graphics/SVGGlyph.h: s/isValid/isPartOfLigature/. Its usage has been changed.
+ (WebCore::SVGGlyph::SVGGlyph):
+ (WebCore::SVGGlyph::operator==):
+ * platform/graphics/SimpleFontData.cpp: Change font size to be a float, not an int.
+ (WebCore::SimpleFontData::SimpleFontData):
+ * platform/graphics/SimpleFontData.h: Add new pure virtual methods to the AdditionalFontData interface, to be implemented in SVGFontData.
+ (WebCore::SimpleFontData::widthForGlyph): Call widthForSVGGlyph, if we encounter a SVG glyph.
+ * platform/graphics/TextRun.h:
+ * platform/graphics/WidthIterator.cpp:
+ (WebCore::WidthIterator::glyphDataForCharacter):
+ (WebCore::WidthIterator::advance):
+ * platform/graphics/WidthIterator.h: Store several new members needed for SVG Fonts support (last processed glyph name used for kerning pair lookup)
+ and a map mapping each character of a text to its arabic-form (if needed, to perform SVG glyph selection for Arabic text).
+ (WebCore::WidthIterator::run):
+ (WebCore::WidthIterator::runWidthSoFar):
+ (WebCore::WidthIterator::lastGlyphName):
+ (WebCore::WidthIterator::setLastGlyphName):
+ (WebCore::WidthIterator::arabicForms):
+ * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp: Use new scaleEmToUnits free function from FontMetrics.h.
+ * platform/graphics/mac/SimpleFontDataMac.mm: Ditto.
+ * platform/graphics/win/SimpleFontDataCGWin.cpp: Ditto.
+ * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
+ (WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes): Handle UTF-16 surrogate pairs correctly, fixes the previous Acid3 regression.
+ * rendering/svg/SVGTextMetrics.cpp:
+ (WebCore::SVGTextMetrics::SVGTextMetrics):
+ (WebCore::constructTextRun):
+ (WebCore::SVGTextMetrics::measureCharacterRange):
+ * rendering/svg/SVGTextMetrics.h:
+ * rendering/svg/SVGTextRunRenderingContext.cpp: Remove drawTextUsingSVGFont/floatWidthUsingSVGFont/selectionRectForTextUsingSVGFont/offsetForPositionForTextUsingSVGFont.
+ (WebCore::firstParentRendererForNonTextNode): Don't assert node() exists, doesn't hold true for generated render objects.
+ (WebCore::renderObjectFromRun): Renamed from referencingRenderObjectFromRun.
+ (WebCore::SVGTextRunRenderingContext::floatWidthUsingSVGFont): Remove extra "extraCharsAvailable" parameter, now solves via TextRun::charactersLength().
+ (WebCore::calculateEmUnitToPixelScaleFactor): Add helper method.
+ (WebCore::SVGTextRunRenderingContext::drawSVGGlyphs): Main drawing method, this actually creates/renders Paths.
+ (WebCore::SVGTextRunRenderingContext::glyphDataForCharacter): Part 1/2 of SVG Glyph selection code.
+ * rendering/svg/SVGTextRunRenderingContext.h:
+ * svg/SVGAltGlyphElement.cpp:
+ (WebCore::SVGAltGlyphElement::hasValidGlyphElement):
+ * svg/SVGAltGlyphElement.h:
+ * svg/SVGFontData.cpp:
+ (WebCore::SVGFontData::initializeFontData): Changed font size from int to float.
+ (WebCore::SVGFontData::widthForSVGGlyph): Lookup a SVGGlyph from a Glyph using the glyph table in SVGFontElement and calculate its width.
+ (WebCore::SVGFontData::applySVGGlyphSelection): Part 2/2 of SVG Glyph selection code.
+ (WebCore::SVGFontData::fillSVGGlyphPage): Fill GlyphPage using glyphs defined in the SVG Font.
+ (WebCore::SVGFontData::fillBMPGlyphs): Moved from the previous fillSVGGlyphPage implementation.
+ (WebCore::SVGFontData::fillNonBMPGlyphs): Add non-bmp glyph handling, fixing the Acid3 regression (support using SVGGlyphs for UTF-16 surrogate pairs).
+ * svg/SVGFontData.h:
+ * svg/SVGFontElement.cpp:
+ (WebCore::SVGFontElement::registerLigaturesInGlyphCache): Enable ligature registration for the use within GlyphPage.
+ (WebCore::SVGFontElement::ensureGlyphCache):
+ * svg/SVGGlyphMap.h: Switch to use SurrogatePairTextIterator, and switch glyph table from UChar to UChar32, just like GlyphPage, to handle glyphs from non-BMP correctly.
+ (WebCore::SVGGlyphMap::addGlyph): Remove setting isValid, it's not needed anymore and gone.
+ (WebCore::SVGGlyphMap::collectGlyphsForString):
+ * svg/svgtags.in: Surround vkern in ENABLE_SVG_FONTS block.
+
+2011-06-24 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Antonio Gomes.
+
+ [CMAKE] Replace ";" with space in FEATURE_DEFINES macro
+ https://bugs.webkit.org/show_bug.cgi?id=62211
+
+ html.css file doesn't recognize ENABLE_XXX macro because FEATURE_DEFINES macro has ";"
+ as separator. So, let the html.css to use new feature macro with space separator.
+
+ * CMakeLists.txt:
+
+2011-06-24 Gavin Peters <gavinp@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ fix possible race in LinkLoader
+ https://bugs.webkit.org/show_bug.cgi?id=63360
+
+ In chromium bug 80729
+ http://code.google.com/p/chromium/issues/detail?id=80729 I am
+ seeing some kind of double triggering of the timer; I am concerned
+ that it is possible that a Link element errors out or succeeds,
+ sets a timer, and shortly before the timer is triggered it is
+ editted, launches another request. After that, the first timer
+ triggers, zeroing out m_cachedResource. Then, the second load
+ finishes, and *crash*. If this is the case, this fix should stop
+ it.
+
+ No new tests; I haven't reproduced this. I hope chrome's crash
+ telemetry will give good feedback; this crash is occuring many times a
+ day so the difference should be obvious.
+
+ * loader/LinkLoader.cpp:
+ (WebCore::LinkLoader::LinkLoader):
+ (WebCore::LinkLoader::linkLoadTimerFired):
+ (WebCore::LinkLoader::linkLoadingErrorTimerFired):
+ (WebCore::LinkLoader::notifyFinished):
+ * loader/LinkLoader.h:
+
+2011-06-24 Jer Noble <jer.noble@apple.com>
+
+ Reviewed by Eric Carlson.
+
+ Safari will quit unexpectedly when launching Safari in the first time (crash in initQTSecurityPolicyNoLocalToRemoteSiteAttribute)
+ https://bugs.webkit.org/show_bug.cgi?id=63332
+ <rdar://problem/9661650>
+
+ No new tests; Only affects machines with QTKit < 7.6.3 installed.
+
+ Check to see if QTSecurityPolicyNoRemoteToLocalSiteAttribute is non-NULL before passing it into -[QTMovie initWithAttributes:],
+ as it is only defined in QTKit >= 7.6.3. If it is NULL, pass QTSecurityPolicyNoCrossSiteAttribute=YES instead, which has
+ the same effect in earlier versions of QTKit as the NoLocalToRemote and NoRemoteToLocal keys. To avoid ASSERTs when running
+ debug builds with earlier versions of QTKit, add a SOFT_LINK_POINTER_OPTIONAL macro to SoftLinking.h and make these keys optional.
+
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ (WebCore::MediaPlayerPrivateQTKit::commonMovieAttributes):
+ * platform/mac/SoftLinking.h: Add SOFT_LINK_POINTER_OPTIONAL macro.
+
+2011-06-24 Darin Adler <darin@apple.com>
+
+ Try to fix Windows build failure.
+
+ * platform/win/ClipboardUtilitiesWin.cpp:
+ (WebCore::setFileDescriptorData): Copy string into a local so we
+ can call charactersWithNullTermination on it.
+
+2011-06-23 Darin Adler <darin@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Remove some unneeded functions from FrameLoader
+ https://bugs.webkit.org/show_bug.cgi?id=63295
+
+ Removing 7 of the functions in FrameLoader.h is probably a step
+ in the right direction.
+
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::handledOnloadEvents):
+ Moved the call to stopDeferringEvents in here from FrameLoader.
+ * loader/DocumentLoader.h: Ditto.
+
+ * loader/DocumentWriter.h: Fixed a typo.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::setFirstPartyForCookies): Changed this to
+ use a non-recursive tree walk instead of recursion.
+ (WebCore::FrameLoader::stopAllLoaders): Moved the code from
+ stopLoadingSubframes inline, since it's only two lines of code.
+ (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Moved
+ the code from markLoadComplete inline, since it's only one line.
+ (WebCore::FrameLoader::checkLoadComplete): Changed this to use a
+ non-recursive tree walk instead of recursion, eliminating the
+ recursiveCheckLoadComplete function completely.
+ (WebCore::FrameLoader::handledOnloadEvents): Moved the call to
+ stopDeferringEvents into DocumentLoader.
+
+ * loader/FrameLoader.h: Removed unneeded forward declarations,
+ and now-unneeded functions setupForReplaceByMIMEType,
+ isStopping, isLoadingFromCachedPage, stopLoadingSubframes,
+ markLoadComplete, mainReceivedError, and recursiveCheckLoadComplete.
+ Also made allChildrenAreComplete private.
+
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::continueAfterContentPolicy):
+ Call DocumentLoader::isStopping so we can remove the function
+ from FrameLoader that just calls through. Other call sites were
+ using DocumentLoader::isStopping directly.
+ (WebCore::MainResourceLoader::didReceiveResponse): Call
+ DocumentLoader::setupForReplaceByMIMEType so we can remove the
+ function from FrameLoader that just calls through. This was
+ the only call site.
+
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::init): Call the
+ ResourceLoader::cancelledError function instead of calling
+ directly to FrameLoader.
+
+ * loader/ResourceLoader.h: Made response an inline function.
+
+2011-06-24 Alexey Proskuryakov <ap@apple.com>
+
+ Rubber-stamped by Maciej Stachowiak.
+
+ REGRESSION (r88984): Infinite recursion in DocumentLoader::detachFromFrame/stopLoading
+
+ No new tests, as there is no known way to reproduce this (but we'll keep investigating, as
+ the rollout will re-introduce the older less frequent crash).
+
+ * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::detachFromFrame): Rollout the fix
+ for bug 62764.
+
+2011-06-24 Tony Chang <tony@chromium.org>
+
+ Reviewed by Ojan Vafai.
+
+ add flexbox and inline-flexbox as possible CSS display values
+ https://bugs.webkit.org/show_bug.cgi?id=63361
+
+ Test: css3/flexbox/display-property.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSValueKeywords.in:
+
+2011-06-24 Anna Cavender <annacc@chromium.org>
+
+ Reviewed by Eric Carlson.
+
+ Loading out-of-band text track files from <track>.
+ https://bugs.webkit.org/show_bug.cgi?id=62881
+
+ Uses the src attribute of <track> urls to load out-of-band text track
+ files using ThreadableLoader. Also removes TextTrackPrivateInterface
+ (as well as LoadableTextTrackImpl and MutableTextTrackImpl) classes.
+
+ No new tests because feature is hidden behind VIDEO_TRACK feature
+ define, which is turned off.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/HTMLMediaElement.cpp:
+ * html/HTMLMediaElement.h:
+ * html/HTMLTrackElement.cpp:
+ * html/HTMLTrackElement.h:
+ * html/LoadableTextTrack.cpp:
+ * html/LoadableTextTrack.h:
+ * html/LoadableTextTrackImpl.cpp: Removed.
+ * html/LoadableTextTrackImpl.h: Removed.
+ * html/MutableTextTrack.cpp:
+ * html/MutableTextTrack.h:
+ * html/MutableTextTrackImpl.cpp: Removed.
+ * html/MutableTextTrackImpl.h: Removed.
+ * html/TextTrack.cpp:
+ * html/TextTrack.h:
+ * html/TextTrackPrivate.h: Removed.
+ * platform/track/CueParser.cpp:
+ * platform/track/CueParser.h:
+
+2011-06-24 Rob Buis <rbuis@rim.com>
+
+ Rubber-stamped by Nikolas Zimmermann.
+
+ All pointer-events fail if text has visibility="hidden"
+ https://bugs.webkit.org/show_bug.cgi?id=62209
+
+ Do not use writing mode aware code for SVG Text.
+
+ No new tests needed.
+
+ * rendering/svg/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::nodeAtPoint):
+
+2011-06-24 Lukasz Slachciak <l.slachciak@samsung.com>
+
+ Reviewed by Darin Adler.
+
+ Change NDEBUG to !LOG_DISABLED macro in databases for logging.
+ https://bugs.webkit.org/show_bug.cgi?id=63346
+
+ Changed NDEBUG to !LOG_DISABLED in databases code which involves logging.
+ This change resolves also build break in Release build when logging enabled.
+
+ No new tests because there is no new behavior or feature exposed.
+
+ * loader/icon/IconDatabase.cpp: Macro fixes.
+ (WebCore::IconDatabase::iconDatabaseSyncThread):
+ (WebCore::IconDatabase::syncThreadMainLoop):
+ (WebCore::IconDatabase::readFromDatabase):
+ (WebCore::IconDatabase::writeToDatabase):
+ (WebCore::IconDatabase::cleanupSyncThread):
+ * storage/AbstractDatabase.h: Macro fixes.
+ * storage/DatabaseTask.cpp: Macro fixes.
+ * storage/DatabaseTask.h: Macro fixes.
+ * storage/SQLTransaction.cpp: Macro fixes.
+ * storage/SQLTransaction.h: Macro fixes.
+
+2011-06-24 Tony Chang <tony@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Pass Strings by const reference to functions
+ https://bugs.webkit.org/show_bug.cgi?id=63341
+
+ Note that since Strings hold a RefPtr to StringImpl, passing Strings
+ by value isn't horrible, but it does cause ref count churn and using
+ const references is more consistent with the rest of the code base.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::addHTTPOriginIfNeeded): Rework the code to not
+ change the value of the passed in String.
+ * loader/FrameLoader.h:
+ * platform/win/ClipboardUtilitiesWin.cpp:
+ (WebCore::setFileDescriptorData):
+ * platform/win/ClipboardUtilitiesWin.h:
+ * storage/DatabaseTracker.h:
+ * storage/IDBLevelDBBackingStore.cpp:
+ (WebCore::IDBLevelDBBackingStore::IDBLevelDBBackingStore):
+ * storage/IDBLevelDBBackingStore.h:
+ * storage/IDBSQLiteBackingStore.cpp:
+ (WebCore::IDBSQLiteBackingStore::IDBSQLiteBackingStore):
+ * storage/IDBSQLiteBackingStore.h:
+ * storage/chromium/DatabaseTrackerChromium.cpp:
+ (WebCore::DatabaseTracker::getOpenDatabases):
+ * svg/SVGPaint.cpp:
+ (WebCore::SVGPaint::SVGPaint):
+ * svg/SVGPaint.h:
+ * svg/animation/SMILTimeContainer.cpp:
+ (WebCore::SMILTimeContainer::updateAnimations):
+ * svg/animation/SMILTimeContainer.h:
+ * websockets/ThreadableWebSocketChannelClientWrapper.cpp:
+ (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageCallback):
+ * websockets/ThreadableWebSocketChannelClientWrapper.h:
+
+2011-06-24 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Add clamping for CSSPrimitiveValues and SVGInlineText font size.
+ https://bugs.webkit.org/show_bug.cgi?id=53449
+
+ Test: svg/text/svg-zoom-large-value.xhtml
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): add asserts to detect if the
+ number created is valid.
+ * css/CSSPrimitiveValue.h: add clamping checks to prevent overflows.
+ (WebCore::CSSPrimitiveValue::getFloatValue):
+ (WebCore::CSSPrimitiveValue::getIntValue):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): split into two
+ static functions, one specific to CSSStyleSelector and other generic to help
+ in clamping font size for other callers like svg text, etc.
+ * css/CSSStyleSelector.h:
+ * platform/graphics/FontDescription.h: add asserts to detect if the new font
+ size is valid.
+ (WebCore::FontDescription::setComputedSize):
+ (WebCore::FontDescription::setSpecifiedSize):
+ * rendering/svg/RenderSVGInlineText.cpp:
+ (WebCore::RenderSVGInlineText::computeNewScaledFontForStyle): use the new helper
+ from CSSStyleSelector to help in clamping new scaled font size. do not use
+ "smart minimum" since svg allows really small unreadable fonts (tested by existing
+ layout tests). Document's minimum font size clamp (0 in my case) and harmless epsilon
+ check in CSSStyleSelector function should still hold for svg.
+
+2011-06-24 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Remove unsafe static_cast inside the InlineBox hierarchy
+ https://bugs.webkit.org/show_bug.cgi?id=63077
+
+ Refactoring only, no new test.
+
+ * rendering/InlineFlowBox.h:
+ (WebCore::toInlineFlowBox):
+ * rendering/InlineTextBox.h:
+ (WebCore::toInlineTextBox):
+ Added the proper cast methods to those 2 classes from an InlineBox.
+
+ * rendering/InlineBox.cpp:
+ (WebCore::InlineBox::nextLeafChild):
+ (WebCore::InlineBox::prevLeafChild):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::getFlowSpacingLogicalWidth):
+ (WebCore::InlineFlowBox::addToLine):
+ (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
+ (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
+ (WebCore::InlineFlowBox::requiresIdeographicBaseline):
+ (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
+ (WebCore::InlineFlowBox::computeLogicalBoxHeights):
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
+ (WebCore::InlineFlowBox::flipLinesInBlockDirection):
+ (WebCore::InlineFlowBox::computeOverflow):
+ (WebCore::InlineFlowBox::firstLeafChild):
+ (WebCore::InlineFlowBox::lastLeafChild):
+ (WebCore::InlineFlowBox::computeOverAnnotationAdjustment):
+ (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::positionForBox):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::createLineBoxes):
+ (WebCore::RenderBlock::constructLine):
+ (WebCore::setLogicalWidthForTextRun):
+ (WebCore::computeExpansionForJustifiedText):
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::localCaretRect):
+ (WebCore::RenderText::positionLineBox):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::ascentAndDescentForBox):
+ (WebCore::RootInlineBox::includeFontForBox):
+ (WebCore::RootInlineBox::includeGlyphsForBox):
+ Replaced the static_cast in those previous call sites with the new cast methods.
+
+2011-06-24 Alexis Menard <alexis.menard@openbossa.org>
+
+ Unreviewed build fix.
+
+ Build fix on Linux when using the GStreamer backend.
+
+ No new tests, just a build fix.
+
+ * platform/graphics/gstreamer/PlatformVideoWindowQt.cpp:
+ (FullScreenVideoWindow::keyPressEvent):
+
+2011-06-24 Nat Duca <nduca@chromium.org>
+
+ Unreviewed, rolling out r89694.
+ http://trac.webkit.org/changeset/89694
+ https://bugs.webkit.org/show_bug.cgi?id=58408
+
+ Test shell still not ready for animate changes.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::create):
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::setViewport):
+ (WebCore::LayerRendererChromium::updateAndDrawLayers):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
+ (WebCore::CCHeadsUpDisplay::setShowFPSCounter):
+ (WebCore::CCHeadsUpDisplay::setShowPlatformLayerTree):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp: Removed.
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h: Removed.
+ * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.cpp: Removed.
+ * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.h: Removed.
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp: Removed.
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h: Removed.
+ * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp: Removed.
+ * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.h: Removed.
+ * platform/graphics/chromium/cc/CCMainThreadTask.h:
+ * platform/graphics/chromium/cc/CCThread.cpp:
+ (WebCore::CCThread::runLoop):
+ * platform/graphics/chromium/cc/CCThreadTask.h:
+
+2011-06-24 Chris Rogers <crogers@google.com>
+
+ Unreviewed build fix.
+
+ Fix Chromium Linux Build
+ https://bugs.webkit.org/show_bug.cgi?id=63349
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-06-24 Henry Song <hsong@sisa.samsung.com>
+
+ Reviewed by Martin Robinson.
+
+ Correct _sharedTimer value in SharedTimerEfl.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=62380
+
+ SharedTimerEfl.cpp set _sharedTimer = 0 is incorrect in
+ timerEvent(), we have observed addNewTimer() can be triggered
+ by either inside timerFunction() or others that are not within
+ timerFunction(). We have observed the following case:
+ 1. add a new Timer within timerFunction()
+ 2. timerFunction returns, set _sharedTimer = 0
+ 3. addNewTimer() is triggered again within webkit, don't know
+ it triggers this.
+ 4. because at this moment, _sharedTimer == 0, the previous
+ registered timer (in step 1) did not get removed.
+ 5. Now in ecore_timer, there are two timers with same callbacks
+ 6. From now on, timerFunction() will be called twice back-to-back
+ in each ecore_timer loop.
+ To correct this, we should set _sharedTimer = 0 before
+ timerFunction() so that when addNewTimer() triggered within,
+ we have a valid timer object.
+
+ * platform/efl/SharedTimerEfl.cpp:
+ (WebCore::timerEvent):
+
+2011-05-17 Nat Duca <nduca@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Implement CCLayerTreeHost and CCLayerTreeHostImpl portions of threaded compositor
+ https://bugs.webkit.org/show_bug.cgi?id=58408
+
+ Create CCLayerTreeHost and CCLayerTreeHostImpl, which are the main
+ thread and compositor thread halves of a composited view. Communication
+ between the two is based on the design used in FileStreamProxy.
+
+ * WebCore.gypi:
+ * platform/chromium/TraceEvent.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::create):
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::setViewport):
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromiumImpl::create):
+ (WebCore::LayerRendererChromiumImpl::drawLayersAndPresent):
+ (WebCore::LayerRendererChromiumImpl::LayerRendererChromiumImpl):
+ (WebCore::LayerRendererChromiumImpl::drawLayersOnMainThread):
+ (WebCore::LayerRendererChromiumImplProxy::create):
+ (WebCore::LayerRendererChromiumImplProxy::createLayerTreeHostImpl):
+ (WebCore::LayerRendererChromiumImplProxy::LayerRendererChromiumImplProxy):
+ (WebCore::LayerRendererChromium::createLayerTreeHostImplProxy):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::setShowFPSCounter):
+ (WebCore::CCHeadsUpDisplay::setShowPlatformLayerTree):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
+ (WebCore::CCHeadsUpDisplay::currentFrameNumber):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::init):
+ (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::beginCommit):
+ (WebCore::CCLayerTreeHost::commitComplete):
+ (WebCore::CCLayerTreeHost::animateAndLayout):
+ (WebCore::CCLayerTreeHost::createLayerTreeHostCommitter):
+ (WebCore::CCLayerTreeHost::setNeedsCommitAndRedraw):
+ (WebCore::CCLayerTreeHost::setNeedsRedraw):
+ (WebCore::CCLayerTreeHost::updateLayers):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
+ (WebCore::CCLayerTreeHost::frameNumber):
+ * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
+ (WebCore::CCLayerTreeHostCommitter::create):
+ (WebCore::CCLayerTreeHostCommitter::commit):
+ * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
+ (WebCore::CCLayerTreeHostCommitter::CCLayerTreeHostCommitter):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp: Added.
+ (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
+ (WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
+ (WebCore::CCLayerTreeHostImpl::beginCommit):
+ (WebCore::CCLayerTreeHostImpl::commitComplete):
+ (WebCore::CCLayerTreeHostImpl::drawLayers):
+ (WebCore::CCLayerTreeHostImpl::setNeedsCommitAndRedraw):
+ (WebCore::CCLayerTreeHostImpl::setNeedsRedraw):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
+ (WebCore::CCLayerTreeHostImplClient::~CCLayerTreeHostImplClient):
+ (WebCore::CCLayerTreeHostImpl::frameNumber):
+ (WebCore::CCLayerTreeHostImpl::sourceFrameNumber):
+ (WebCore::CCLayerTreeHostImpl::setSourceFrameNumber):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp: Added.
+ (WebCore::CCLayerTreeHostImplProxy::CCLayerTreeHostImplProxy):
+ (WebCore::CCLayerTreeHostImplProxy::start):
+ (WebCore::CCLayerTreeHostImplProxy::~CCLayerTreeHostImplProxy):
+ (WebCore::CCLayerTreeHostImplProxy::isStarted):
+ (WebCore::CCLayerTreeHostImplProxy::setNeedsCommitAndRedraw):
+ (WebCore::CCLayerTreeHostImplProxy::setNeedsRedraw):
+ (WebCore::CCLayerTreeHostImplProxy::stop):
+ (WebCore::CCLayerTreeHostImplProxy::postDrawLayersTaskOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommitOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::isMainThread):
+ (WebCore::CCLayerTreeHostImplProxy::isCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommit):
+ (WebCore::CCLayerTreeHostImplProxy::commitOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::drawLayersOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::setNeedsCommitAndRedrawOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::setNeedsRedrawOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::initImplOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::layerTreeHostClosedOnCCThread):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.h: Added.
+ (WebCore::CCLayerTreeHostImplProxy::host):
+ * platform/graphics/chromium/cc/CCMainThreadTask.h:
+ * platform/graphics/chromium/cc/CCThread.cpp:
+ (WebCore::CCThread::runLoop):
+ * platform/graphics/chromium/cc/CCThreadTask.h:
+
+2011-06-24 Adrienne Walker <enne@google.com>
+
+ Unreviewed, remove assertion about root layers in RenderLayerBacking.
+ https://bugs.webkit.org/show_bug.cgi?id=60741
+
+ This was added in r89687, but somehow is not true on Safari Leopard.
+ However, as the tests that were added with that revision are passing
+ correctly, the assertion is most likely not correct.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
+
+2011-06-24 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ Refactor text iterator code respecting surrogate pairs from WidthIterator
+ https://bugs.webkit.org/show_bug.cgi?id=63319
+
+ WidthIterator contains a surrogate pair aware text iterator that is needed in other parts of WebCore.
+ Refactor the code into its own SurrogatePairAwareTextIterator class. It can be used like this:
+
+ UChar32 character = 0;
+ unsigned clusterLength = 0;
+
+ SurrogatePairAwareTextIterator textIterator(myString.characters(), 0, myString.length(), myString.length());
+ while (textIterator.consume(character, clusterLength)) {
+ // Either clusterLength is 1 and UChar32 fits into a single UChar.
+ // Or clusterLength is 2 and the UChar32 has been computed by combining the high & low surrogate pairs
+ ...
+
+ textIterator.advance(clusterLength);
+ }
+
+ SVGGlyphMap is the next candidate that wants to make use of SurrogatePairAwareTextIterator.
+ Doesn't affect any tests, just refactoring.
+
+ * CMakeLists.txt: Add SurrogatePairAwareTextIterator.* to build.
+ * GNUmakefile.list.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * platform/graphics/SurrogatePairAwareTextIterator.cpp: Copied from platform/graphics/WidthIterator.cpp.
+ * platform/graphics/SurrogatePairAwareTextIterator.h: Added.
+ (WebCore::SurrogatePairAwareTextIterator::currentCharacter):
+ * platform/graphics/WidthIterator.cpp:
+ (WebCore::WidthIterator::advance):
+ * platform/graphics/WidthIterator.h:
+
+2011-06-24 Adrienne Walker <enne@google.com>
+
+ Reviewed by Simon Fraser.
+
+ Incorrect RenderLayer transforms on overflow RTL pages
+ https://bugs.webkit.org/show_bug.cgi?id=60741
+
+ Fix positioning of the root graphics layer for RTL pages. The fact
+ that the left side of the page is negative for pages with overflow is
+ not taken into account when calculating the position. This negative
+ value ends up being double-counted for the root graphics layer (once
+ in the position and once in the offset) and it shifts child layers
+ into the wrong place.
+
+ Tests: compositing/rtl/rtl-absolute-overflow-scrolled.html
+ compositing/rtl/rtl-absolute-overflow.html
+ compositing/rtl/rtl-absolute.html
+ compositing/rtl/rtl-fixed-overflow-scrolled.html
+ compositing/rtl/rtl-fixed-overflow.html
+ compositing/rtl/rtl-fixed.html
+ compositing/rtl/rtl-iframe-absolute-overflow-scrolled.html
+ compositing/rtl/rtl-iframe-absolute-overflow.html
+ compositing/rtl/rtl-iframe-absolute.html
+ compositing/rtl/rtl-iframe-fixed-overflow-scrolled.html
+ compositing/rtl/rtl-iframe-fixed-overflow.html
+ compositing/rtl/rtl-iframe-fixed.html
+ compositing/rtl/rtl-iframe-relative.html
+ compositing/rtl/rtl-relative.html
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
+
+2011-06-24 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Enrica Casucci.
+
+ Add BeforeChildren and AfterChildren to the Position's anchor types
+ https://bugs.webkit.org/show_bug.cgi?id=63100
+
+ Added PositionIsBeforeChildren and PositionIsAfterChildren to Position::AnchorType and deployed them in
+ firstPositionInNode and lastPositionInNode.
+
+ These new types of positions will let us express the first and the last positions in a non-text node in O(1).
+
+ No new tests because there is no new behavior or feature exposed.
+
+ * dom/Position.cpp:
+ (WebCore::Position::Position): Assert that the anchor type is not BeforeChildren and AfterChildren for text nodes.
+ (WebCore::Position::containerNode): For BeforeChildren and AfterChildren, the anchor node is the container node.
+ (WebCore::Position::computeOffsetInContainerNode): The offset in the container node is 0 for BeforeChildren and
+ the offset in the anchor node for AfterChildren.
+ (WebCore::Position::offsetForPositionAfterAnchor): Called by deprecatedNode; the anchor type could be AfterChildren.
+ (WebCore::Position::parentAnchoredEquivalent): If the anchor node is before or after children, then do the trick
+ for table and ignored contents like before or after anchor.
+ (WebCore::Position::computeNodeBeforePosition): Returns null for BeforeChildren and returns the last child of
+ the anchor node for AfterChildren.
+ (WebCore::Position::computeNodeAfterPosition): Returns the first child of the anchor node for BeforeChildren
+ (WebCore::Position::atFirstEditingPositionForNode): A position is at the last editing position if the anchor type
+ is BeforeChildren, or the anchor type is AfterChildren or AfterAnchor and the anchor doesn't have any children.
+ (WebCore::Position::atLastEditingPositionForNode): A position is at the last editing position if the anchor type
+ is AfterChildren.
+ (WebCore::Position::showAnchorTypeAndOffset): Supports BeforeChildren and AfterChildren.
+ * dom/Position.h:
+ (WebCore::Position::deprecatedEditingOffset): Returns m_offset if the anchor type is BeforeChildren.
+ (WebCore::firstPositionInNode): Returns a position in offset for a text node. Otherwise returns BeforeChildren.
+ (WebCore::lastPositionInNode): Returns a position in offset for a text node. Otherwise returns AfterChildren.
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::positionOutsideTabSpan): Since the anchor node was a text node,
+ the anchor type shouldn't be BeforeChildren or AfterChildren.
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::updatePositionForNodeRemoval): Supports BeforeChildren and AfterChildren.
+ (WebCore::DeleteSelectionCommand::handleGeneralDelete): Calls updatePositionForNodeRemoval on m_downstremEnd
+ when its anchor node is removed instead of manually updating the offset; also avoid calling moveToOffset
+ on BeforeChildren or AfterChildren position.
+ * editing/FormatBlockCommand.cpp:
+ (WebCore::FormatBlockCommand::formatRange): Since lastParagraphInBlockNode is used to insert a placeholder
+ after paragraphs below the block is moved into, it needs to be the position after the current last child in
+ the block instead of after children in the block; otherwise the position will move to the end of block.
+ * editing/VisiblePosition.cpp:
+ (WebCore::VisiblePosition::characterAfter): Since the container node is never a text for position before/after
+ children or before/after anchor, just return null for these anchor types.
+
+2011-06-24 Dominic Cooney <dominicc@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Convert shadow DOM-related tests to use window.internals
+ https://bugs.webkit.org/show_bug.cgi?id=61671
+
+ * WebCore.exp.in: Exports for symbols used by WebCoreTestSupport.
+ * testing/Internals.cpp: The new home of shadowRoot and friends.
+ (WebCore::Internals::ensureShadowRoot):
+ (WebCore::Internals::shadowRoot):
+ (WebCore::Internals::removeShadowRoot):
+ (WebCore::Internals::shadowPseudoId):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2011-06-24 Tony Chang <tony@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Refactor creation of primitive values in CSSParser
+ https://bugs.webkit.org/show_bug.cgi?id=63270
+
+ Covered by existing tests.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::createPrimitiveNumericValue): Helper method for creating numeric values
+ to keep the cast in one place.
+ (WebCore::CSSParser::createPrimitiveStringValue): Helper method for creating string values.
+ (WebCore::CSSParser::parseValidPrimitive):
+ (WebCore::CSSParser::parseValue):
+ (WebCore::CSSParser::parseWCSSInputProperty):
+ (WebCore::CSSParser::parsePage):
+ (WebCore::CSSParser::parseSizeParameter):
+ (WebCore::CSSParser::parseContent):
+ (WebCore::CSSParser::parseFillPositionX):
+ (WebCore::CSSParser::parseFillPositionY):
+ (WebCore::CSSParser::parseFillPositionComponent):
+ (WebCore::CSSParser::parseFillSize):
+ (WebCore::CSSParser::parseAnimationDelay):
+ (WebCore::CSSParser::parseAnimationDuration):
+ (WebCore::CSSParser::parseAnimationIterationCount):
+ (WebCore::CSSParser::parseAnimationName):
+ (WebCore::CSSParser::parseTransformOriginShorthand):
+ (WebCore::CSSParser::parseDashboardRegions):
+ (WebCore::CSSParser::parseCounterContent):
+ (WebCore::CSSParser::parseShape):
+ (WebCore::CSSParser::parseFont):
+ (WebCore::CSSParser::parseReflect):
+ (WebCore::CSSParser::parseBorderRadius):
+ (WebCore::CSSParser::parseCounter):
+ (WebCore::CSSParser::parseDeprecatedGradient):
+ (WebCore::CSSParser::parseLinearGradient):
+ (WebCore::CSSParser::parseRadialGradient):
+ (WebCore::CSSParser::parseGradientColorStops):
+ (WebCore::CSSParser::parseTransform):
+ (WebCore::CSSParser::parseTransformOrigin):
+ (WebCore::CSSParser::parseTextEmphasisStyle):
+ * css/CSSParser.h:
+ * css/CSSPrimitiveValueCache.h:
+ (WebCore::CSSPrimitiveValueCache::createValue): pass String by const reference
+
+2011-06-24 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Fix runtime critical warnings in WebKit2
+ https://bugs.webkit.org/show_bug.cgi?id=63256
+
+ Check whether there's a view widget before trying to use it in
+ PlatformScreenGtk. If there isn't a view widget, which is the case
+ in WebKit2, try to use the default GdkScreen and monitor.
+
+ * platform/gtk/PlatformScreenGtk.cpp:
+ (WebCore::getToplevel): Helper function to get the toplevel
+ widget.
+ (WebCore::getVisual): Use getToplevel().
+ (WebCore::getScreen): Helper funtion to get the screen of a
+ widget.
+ (WebCore::screenRect): Use getToplevel() and getScreen().
+
+2011-06-24 Yuta Kitamura <yutak@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ WebSocket: Add run-time flag for new HyBi protocol
+ https://bugs.webkit.org/show_bug.cgi?id=60348
+
+ Add a flag in Setting so that WebSocket protocols can be switched
+ dynamically. The protocol we have implemented so far is based on
+ older Hixie-76 specification. A new protocol is being discussed in
+ IETF HyBi working group, and I'm planning to implement the new protocol
+ behind this Settings flag.
+
+ I will add a method to LayoutTestController which flips this flag in
+ a later patch. In this way, we can put tests for both protocols in
+ the same place and test implementation for both protocols at the same time.
+
+ This patch only adds a flag. The flag is not used yet, thus there is
+ no change in functionality. Therefore, no tests were added.
+
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+ * page/Settings.h:
+ (WebCore::Settings::setUseHixie76WebSocketProtocol):
+ (WebCore::Settings::useHixie76WebSocketProtocol):
+
+2011-06-23 Mikhail Naganov <mnaganov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Chromium] Shorten DOMWindow URLs in heap profiles.
+ https://bugs.webkit.org/show_bug.cgi?id=63238
+
+ * inspector/front-end/DetailedHeapshotGridNodes.js:
+ (WebInspector.HeapSnapshotGridNode.prototype.hasHoverMessage.false.hoverMessage):
+ (WebInspector.HeapSnapshotGenericObjectNode):
+ (WebInspector.HeapSnapshotGenericObjectNode.prototype.hoverMessage):
+ (WebInspector.HeapSnapshotGenericObjectNode.prototype._updateHasChildren):
+ (WebInspector.HeapSnapshotGenericObjectNode.prototype.isDOMWindow):
+ (WebInspector.HeapSnapshotGenericObjectNode.prototype.shortenWindowURL):
+ * inspector/front-end/DetailedHeapshotView.js:
+ (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext.pathFound):
+ (WebInspector.DetailedHeapshotView.prototype._getHoverAnchor):
+ (WebInspector.DetailedHeapshotView.prototype._showStringContentPopup.displayString):
+ (WebInspector.DetailedHeapshotView.prototype._showStringContentPopup):
+ * inspector/front-end/utilities.js:
+ ():
+
+2011-06-24 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: HTML preview should delete old iframe on show().
+ https://bugs.webkit.org/show_bug.cgi?id=63170
+
+ * inspector/front-end/ResourceHTMLView.js:
+ (WebInspector.ResourceHTMLView.prototype._createIFrame):
+ * inspector/front-end/ResourcePreviewView.js:
+ (WebInspector.ResourcePreviewView.prototype.contentLoaded):
+
+2011-06-24 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Convert AnimatedString to SVGAnimatorFactory concept
+ https://bugs.webkit.org/show_bug.cgi?id=63296
+
+ Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368
+ This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGString.
+
+ No new tests added. No change of functionality.
+
+ * CMakeLists.txt: Added new file to build system.
+ * GNUmakefile.list.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * svg/SVGAllInOne.cpp: Ditto.
+ * svg/SVGAnimateElement.cpp:
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateElement::calculateFromAndToValues):
+ (WebCore::SVGAnimateElement::calculateFromAndByValues):
+ (WebCore::SVGAnimateElement::resetToBaseValue):
+ (WebCore::SVGAnimateElement::applyResultsToTarget):
+ (WebCore::SVGAnimateElement::calculateDistance):
+ * svg/SVGAnimateElement.h:
+ * svg/SVGAnimatedString.cpp: Added. Animator for SVGString.
+ (WebCore::SVGAnimatedStringAnimator::SVGAnimatedStringAnimator):
+ (WebCore::SVGAnimatedStringAnimator::constructFromString):
+ (WebCore::SVGAnimatedStringAnimator::calculateFromAndToValues):
+ (WebCore::SVGAnimatedStringAnimator::calculateFromAndByValues):
+ (WebCore::SVGAnimatedStringAnimator::calculateAnimatedValue):
+ (WebCore::SVGAnimatedStringAnimator::calculateDistance):
+ * svg/SVGAnimatedString.h:
+ (WebCore::SVGAnimatedStringAnimator::~SVGAnimatedStringAnimator):
+ * svg/SVGAnimatedType.cpp:
+ (WebCore::SVGAnimatedType::~SVGAnimatedType):
+ (WebCore::SVGAnimatedType::createString):
+ (WebCore::SVGAnimatedType::string):
+ (WebCore::SVGAnimatedType::valueAsString):
+ (WebCore::SVGAnimatedType::setValueAsString):
+ * svg/SVGAnimatedType.h:
+ * svg/SVGAnimatorFactory.h:
+ (WebCore::SVGAnimatorFactory::create):
+
+2011-06-24 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Chris Fleizach.
+
+ [GTK] Consider rows being ignored when adding children to tables
+ https://bugs.webkit.org/show_bug.cgi?id=62718
+
+ Hide row objects in tables in GTK's accessibility wrapper.
+
+ This is a different approach in the way WebCore's accessible
+ rows are exposed to assistive technologies in the GTK port,
+ since from now on those objects are kept in WebCore (they do not
+ declare to ignore accessibility) and just bypassed in the mapping
+ to ATK, allowing to hide them in the ATK hierarchy while, at the
+ same time, keeping them internally to be able to provide enough
+ information to determine tables related information, such as rows
+ counting or finding an cell for specific coordinates.
+
+ * accessibility/gtk/AccessibilityObjectAtk.cpp:
+ (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
+ Do not ignore accessibility for table rows here.
+
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (webkit_accessible_get_parent): Bypass rows when needed.
+ (getNChildrenForTable): New, find the number of children for a
+ table, which will be the addition of all cells for its rows.
+ (webkit_accessible_get_n_children): Call to getNChildrenForTable
+ for accessibility tables if needed.
+ (getChildForTable): New, bypass rows when needed, retrieving
+ cells as if they were direct children for tables.
+ (webkit_accessible_ref_child): Call to refChildForTable if needed.
+ (getIndexInParentForCellInRow): New, get the index for a given
+ cell in its parent table, considering other rows' cells.
+ (webkit_accessible_get_index_in_parent): Call to
+ getIndexInParentForCellInRow if needed.
+
+2011-06-24 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: extension panel iframes do not span entire panel client area
+ https://bugs.webkit.org/show_bug.cgi?id=63165
+
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer.prototype._onCreatePanel):
+ (WebInspector.ExtensionServer.prototype.createClientIframe):
+ * inspector/front-end/inspector.css:
+ (iframe.extension):
+ (iframe.panel.extension):
+
+2011-06-24 David Grogan <dgrogan@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [REGRESSION r86838] line numbers do not scroll when script paused
+ https://bugs.webkit.org/show_bug.cgi?id=61653
+
+ roll out r86838
+
+ No new tests - refactoring.
+
+ * dom/Document.h:
+ * dom/EventQueue.cpp:
+ (WebCore::EventQueueTimer::EventQueueTimer):
+ (WebCore::EventQueueTimer::fired):
+ (WebCore::EventQueue::create):
+ (WebCore::EventQueue::EventQueue):
+ (WebCore::EventQueue::~EventQueue):
+ (WebCore::EventQueue::enqueueEvent):
+ (WebCore::EventQueue::cancelEvent):
+ (WebCore::EventQueue::cancelQueuedEvents):
+ (WebCore::EventQueue::pendingEventTimerFired):
+ (WebCore::EventQueue::dispatchEvent):
+ * dom/EventQueue.h:
+
+2011-06-24 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r89594.
+ http://trac.webkit.org/changeset/89594
+ https://bugs.webkit.org/show_bug.cgi?id=63316
+
+ It broke 5 tests on the Qt bot (Requested by Ossy_DC on
+ #webkit).
+
+ * WebCore.exp.in:
+ * icu/unicode/uscript.h:
+ * page/Settings.cpp:
+ (WebCore::Settings::setStandardFontFamily):
+ (WebCore::Settings::setFixedFontFamily):
+ (WebCore::Settings::setSerifFontFamily):
+ (WebCore::Settings::setSansSerifFontFamily):
+ (WebCore::Settings::setCursiveFontFamily):
+ (WebCore::Settings::setFantasyFontFamily):
+ * page/Settings.h:
+ (WebCore::Settings::standardFontFamily):
+ (WebCore::Settings::fixedFontFamily):
+ (WebCore::Settings::serifFontFamily):
+ (WebCore::Settings::sansSerifFontFamily):
+ (WebCore::Settings::cursiveFontFamily):
+ (WebCore::Settings::fantasyFontFamily):
+
+2011-06-23 Tony Chang <tony@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Pass Strings by const reference in bindings code
+ https://bugs.webkit.org/show_bug.cgi?id=63302
+
+ Note that since Strings hold a RefPtr to StringImpl, passing Strings
+ by value isn't horrible, but it does cause ref count churn and using
+ const references is more consistent with the rest of the code base.
+
+ * bindings/generic/BindingSecurity.h:
+ (WebCore::::allowSettingFrameSrcToJavascriptUrl):
+ (WebCore::::allowSettingSrcToJavascriptURL):
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneSerializer::serialize):
+ (WebCore::SerializedScriptValue::create):
+ * bindings/js/SerializedScriptValue.h:
+ * bindings/v8/SerializedScriptValue.cpp:
+ (WebCore::SerializedScriptValue::createFromWire):
+ (WebCore::SerializedScriptValue::create):
+ (WebCore::SerializedScriptValue::SerializedScriptValue):
+ * bindings/v8/SerializedScriptValue.h:
+ * bindings/v8/V8Binding.h:
+ (WebCore::V8ParameterBase::setString):
+
+2011-06-23 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ [Chromium] Web Inspector: provide context menu item for enabling native worker inspection
+ https://bugs.webkit.org/show_bug.cgi?id=63258
+
+ Added context menu checkbox item that allows to enable inspection of
+ native workers. The value will be persisted as other inspector settings
+ and will be restored after frontend/breowser reopening.
+
+ * inspector/Inspector.json:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::restoreInspectorStateFromCookie):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::didStartWorkerContext):
+ * inspector/InspectorWorkerAgent.cpp:
+ (WebCore::InspectorWorkerAgent::setFrontend):
+ (WebCore::InspectorWorkerAgent::restore):
+ (WebCore::InspectorWorkerAgent::setWorkerInspectionEnabled):
+ * inspector/InspectorWorkerAgent.h:
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ (WebInspector.ScriptsPanel.prototype._toggleFormatSourceFiles):
+ (WebInspector.ScriptsPanel.prototype._contextMenu.enableWorkerInspection):
+ (WebInspector.ScriptsPanel.prototype._contextMenu):
+ * inspector/front-end/Settings.js:
+ (WebInspector.Settings):
+ * inspector/front-end/inspector.js:
+ (WebInspector.didCreateWorker):
+ (WebInspector.didDestroyWorker):
+ * workers/Worker.cpp:
+ (WebCore::Worker::notifyFinished):
+
+2011-06-23 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Need to turn off default animations for anchorPointZ in PlatformCALayer
+ https://bugs.webkit.org/show_bug.cgi?id=63159
+
+ When the z-component of transform-origin changed, we ran an implicit
+ animation of anchorPointZ on the CALayer. Turn this off.
+
+ Test: transforms/3d/general/transform-origin-z-change.html
+
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ (nullActionsDictionary):
+
+2011-06-23 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Limit WebGL internal drawingBuffer size to 4k x 4k
+ https://bugs.webkit.org/show_bug.cgi?id=63304
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::reshape): Limit drawing buffer size to 4k x 4k.
+
+2011-06-20 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Dimitri Glazkov.
+
+ [ShadowContentElement] should layout child whitespace between span.
+ https://bugs.webkit.org/show_bug.cgi?id=62202
+
+ NodeRenderingContext::nextRenderer() and previousRenderer()
+ ignored forwarded content tree hierarchies and used render-object
+ hierarchies instead, that caused some wrong Text node rendering.
+
+ This change uses ShadowContentElement::m_inclusions for the lookup.
+ In this way, these methods can reflect hierarchies of forward light tree.
+
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRenderingContext::NodeRenderingContext):
+ (WebCore::nextRendererOf): Added. This traverses content element's children for searching neighboring renderer.
+ (WebCore::previousRendererOf): Added. This traverses content element's children for searching neighboring renderer.
+ (WebCore::NodeRenderingContext::nextRenderer):
+ (WebCore::NodeRenderingContext::previousRenderer):
+ * dom/NodeRenderingContext.h:
+ * dom/ShadowContentElement.h:
+ (ShadowContentElement::inclusionIndexOf): Added.
+ * dom/ShadowContentSelector.cpp:
+ (WebCore::ShadowContentSelector::activeElement):
+ * dom/ShadowContentSelector.h:
+ * dom/ShadowRoot.cpp:
+ (WebCore::ShadowRoot::activeContentElement):
+ * dom/ShadowRoot.h:
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::externalRepresentation): Fixed an apparent bug introduced at r89230.
+
+2011-05-25 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Fix ownership of PlatformImage for ImageLayerChromiums
+ https://bugs.webkit.org/show_bug.cgi?id=61099
+
+ For a composited image, both the ImageLayerChromium and its associated LayerTilerChromium need access to a
+ PlatformImage - the ImageLayerChromium has to update the PlatformImage's contents and the LayerTilerChromium has
+ to upload pixels from it. This patch makes the ImageLayerTextureUpdater have exclusive ownership of the
+ PlatformImage and moves ownership of the LayerTextureUpdater from the LayerTilerChromium to the owner of the
+ tiler. The updater is passed in as a parameter to the relevant tiler calls.
+
+ Patch also fixes a number of minor style issues (missing explicit keyword on constructor, etc).
+
+ Refactor only, no new tests.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerPainter::create):
+ (WebCore::ContentLayerPainter::ContentLayerPainter):
+ (WebCore::ContentLayerChromium::paintContentsIfDirty):
+ (WebCore::ContentLayerChromium::createTextureUpdaterIfNeeded):
+ (WebCore::ContentLayerChromium::draw):
+ (WebCore::ContentLayerChromium::createTilerIfNeeded):
+ (WebCore::ContentLayerChromium::updateCompositorResources):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerTextureUpdater::create):
+ (WebCore::ImageLayerTextureUpdater::updateFromImage):
+ (WebCore::ImageLayerTextureUpdater::imageSize):
+ (WebCore::ImageLayerTextureUpdater::ImageLayerTextureUpdater):
+ (WebCore::ImageLayerChromium::~ImageLayerChromium):
+ (WebCore::ImageLayerChromium::paintContentsIfDirty):
+ (WebCore::ImageLayerChromium::updateCompositorResources):
+ (WebCore::ImageLayerChromium::setLayerRenderer):
+ (WebCore::ImageLayerChromium::createTextureUpdaterIfNeeded):
+ (WebCore::ImageLayerChromium::layerBounds):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::updateRootLayerContents):
+ (WebCore::LayerRendererChromium::drawRootLayer):
+ (WebCore::LayerRendererChromium::updateLayers):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/LayerTextureUpdater.h:
+ (WebCore::LayerTextureUpdater::LayerTextureUpdater):
+ * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
+ (WebCore::LayerTextureUpdaterBitmap::create):
+ (WebCore::LayerTextureUpdaterSkPicture::create):
+ * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::create):
+ (WebCore::LayerTilerChromium::LayerTilerChromium):
+ (WebCore::LayerTilerChromium::prepareToUpdate):
+ (WebCore::LayerTilerChromium::updateRect):
+ (WebCore::LayerTilerChromium::draw):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+
+2011-06-23 Adrienne Walker <enne@google.com>
+
+ Unreviewed, rolling out r89632 and r89640.
+ http://trac.webkit.org/changeset/89632
+ http://trac.webkit.org/changeset/89640
+ https://bugs.webkit.org/show_bug.cgi?id=60741
+
+ Breaks ancestor-overflow-change unexpectedly
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
+
2011-06-23 John Bates <jbates@google.com>
Reviewed by James Robinson.
« no previous file with comments | « LayoutTests/platform/chromium/test_expectations.txt ('k') | Source/WebCore/css/html.css » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698