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 " 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. |