1 2011-09-04 Robin Dunn <robin@alldunn.com>
3 [wx] Enable wxWebKit to run using the wxGC Cairo backend on platforms other than GTK.
4 https://bugs.webkit.org/show_bug.cgi?id=67577
6 Reviewed by Kevin Ollivier.
8 * platform/graphics/GlyphBuffer.h:
9 (WebCore::GlyphBuffer::glyphAt):
10 (WebCore::GlyphBuffer::add):
11 * platform/graphics/wx/GraphicsContextWx.cpp:
12 (WebCore::GraphicsContext::clipOut):
13 (WebCore::GraphicsContext::clipPath):
14 * platform/graphics/wx/PathWx.cpp:
15 (WebCore::Path::Path):
16 (WebCore::Path::clear):
17 * platform/graphics/wx/TransformationMatrixWx.cpp:
18 (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
19 (WebCore::AffineTransform::operator wxGraphicsMatrix):
20 * platform/image-decoders/wx/ImageDecoderWx.cpp:
21 (WebCore::ImageFrame::asNewNativeImage):
22 * platform/wx/ContextMenuWx.cpp:
23 (ContextMenu::ContextMenu):
24 * platform/wx/LocalDC.h: Added.
25 (WebCore::LocalDC::LocalDC):
26 (WebCore::LocalDC::context):
27 (WebCore::LocalDC::~LocalDC):
28 * platform/wx/RenderThemeWx.cpp:
29 (WebCore::RenderThemeWx::paintButton):
30 (WebCore::RenderThemeWx::paintTextField):
31 (WebCore::RenderThemeWx::paintMenuList):
32 (WebCore::RenderThemeWx::paintMenuListButton):
33 * platform/wx/ScrollbarThemeWx.cpp:
34 (WebCore::ScrollbarThemeWx::paint):
35 * platform/wx/wxcode/cairo: Added.
36 * platform/wx/wxcode/cairo/non-kerned-drawing.cpp: Added.
37 (WebCore::pangoFontMap):
38 (WebCore::createPangoFontForFont):
39 (WebCore::createScaledFontForFont):
40 (WebCore::pango_font_get_glyph):
41 (WebCore::drawTextWithSpacing):
42 * platform/wx/wxcode/gdiplus: Added.
43 * platform/wx/wxcode/gdiplus/non-kerned-drawing.cpp: Added.
48 (WebCore::drawTextWithSpacing):
49 * platform/wx/wxcode/gtk/non-kerned-drawing.cpp: Removed.
50 * platform/wx/wxcode/win/non-kerned-drawing.cpp: Removed.
51 * platform/wx/wxcode/win/scrollbar_render.cpp:
52 (GraphicsHDC::GraphicsHDC):
53 (GraphicsHDC::~GraphicsHDC):
54 (wxRenderer_DrawScrollbar):
56 2011-09-03 Laszlo Gombos <laszlo.1.gombos@nokia.com>
58 REGRESSION (r86268): Fix for qt_networkAccessAllowed()
59 https://bugs.webkit.org/show_bug.cgi?id=67570
61 Reviewed by Noam Rosenthal.
63 No new tests as this change only removes dead code.
64 Support for Qt 4.6 has been removed a while back.
69 * platform/network/NetworkStateNotifier.h:
70 * platform/network/qt/NetworkStateNotifierQt.cpp:
72 2011-09-03 Ryosuke Niwa <rniwa@webkit.org>
74 REGRESSION(r94274): selection-change-closes-typing.html fails
75 https://bugs.webkit.org/show_bug.cgi?id=67377
77 Reviewed by Kent Tamura.
79 The problem was that when the shadow DOM is updated by setInnerTextValue, WebKit layer detects the selection
80 change and calls confirmCompositionWithoutDisturbingSelection, which in turn modifies the shadow DOM by
83 Fixed the bug by not inserting text in confirmCompositionWithoutDisturbingSelection. It turned out that this
84 function is only used to cancel composition but never to confirming composition and restoring selection.
86 Test: platform/mac/editing/input/selection-change-closes-typing-2.html
89 (WebCore::Editor::confirmCompositionWithoutDisturbingSelection):
90 (WebCore::Editor::confirmComposition):
92 2011-09-03 Sam Weinig <sam@webkit.org>
94 Add missing Event constructors to DOMWindow.idl
95 https://bugs.webkit.org/show_bug.cgi?id=67449
97 Reviewed by Anders Carlsson.
99 Covered by existing tests.
101 * page/DOMWindow.idl:
103 2011-08-27 Robert Hogan <robert@webkit.org>
105 div align="center" rendering problem
106 https://bugs.webkit.org/show_bug.cgi?id=4860
108 Reviewed by David Hyatt.
110 When an inline element with absolute position was the sole or first child of a render block with
111 centred alignment, it wasn't obeying its parent's alignment. However it would obey the
112 alignment if it was preceded by some text. The problem was that the element's render object
113 was getting skipped as leading white space, so it was not included in a normal line block in
114 a bidi run. Instead, its position was getting set by RenderBlockLineLayout::setStaticPositions()
115 which does not pay attention to alignment. Preceding the element with some text allowed the object
116 to get included in a Bidi run and so get a linebox which would get properly aligned.
118 The fix is to get RenderBlockLineLayout::setStaticPositions() to obey the alignment specified by
119 the object's container. This allows WebKit to get the same result on the test as Firefox and IE.
120 Opera has the same bug as unpatched WebKit.
122 Tests: fast/css/bug4860-absolute-block-child-does-not-inherit-alignment.html
123 - Ensure positioned block elements inherit alignment.
124 fast/css/bug4860-absolute-inline-child-inherits-alignment.html
125 - Ensure positioned inline elements inherit alignment.
126 fast/inline/absolute-positioned-inline-in-centred-block.html
127 - Ensure positioned inline element that's the sole or first child of a rendered block
128 obeys parents alignment.
129 fast/inline/absolute-positioned-block-in-centred-block.html
130 - As above, but a positioned block should not inherit alignment.
132 * rendering/RenderBlock.h:
133 * rendering/RenderBlockLineLayout.cpp:
134 (WebCore::RenderBlock::updateLogicalWidthForAlignment):
135 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Move the alignment check to updateLogicalWidthForAlignment.
136 (WebCore::setStaticPositions): use startAlignedOffsetForLine and use startAlignedOffsetForBlock
137 (WebCore::RenderBlock::startAlignedOffsetForLine): New function, find the aligned offset using updateLogicalWidthForAlignment
139 2011-09-03 Andreas Kling <kling@webkit.org>
141 Remove two unused functions from Element.
142 https://bugs.webkit.org/show_bug.cgi?id=67492
144 Reviewed by Benjamin Poulain.
146 Removed openTagStartToString() and setCStringAttribute() as they are
147 not called from anywhere.
152 2011-09-03 Andrew Wason <rectalogic@rectalogic.com>
154 [Qt] Enable support for WebGL OES_standard_derivatives for Qt
155 https://bugs.webkit.org/show_bug.cgi?id=67430
157 Reviewed by Noam Rosenthal.
159 Tested using https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/extensions/oes-standard-derivatives.html
161 Enable existing support for OES_standard_derivatives for Qt.
163 * platform/graphics/opengl/Extensions3DOpenGL.cpp:
164 (WebCore::Extensions3DOpenGL::ensureEnabled):
165 (WebCore::Extensions3DOpenGL::isEnabled):
167 2011-09-03 Yuta Kitamura <yutak@chromium.org>
169 WebSocket: Send ArrayBuffer as WebSocket binary message
170 https://bugs.webkit.org/show_bug.cgi?id=67477
172 Reviewed by Kent Tamura.
174 Tests: http/tests/websocket/tests/hybi/send-arraybuffer.html
175 http/tests/websocket/tests/hybi/workers/send-arraybuffer.html
176 http/tests/websocket/tests/hybi/bufferedAmount-after-close.html (updated)
178 * bindings/js/JSWebSocketCustom.cpp:
179 (WebCore::JSWebSocket::send):
180 * bindings/v8/custom/V8WebSocketCustom.cpp:
181 (WebCore::V8WebSocket::sendCallback):
182 * websockets/ThreadableWebSocketChannel.h:
183 * websockets/ThreadableWebSocketChannelClientWrapper.cpp:
184 (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
185 (WebCore::ThreadableWebSocketChannelClientWrapper::sendRequestResult):
186 (WebCore::ThreadableWebSocketChannelClientWrapper::setSendRequestResult):
187 * websockets/ThreadableWebSocketChannelClientWrapper.h:
188 Rename "sent" to "sendRequestResult" to clarify the meaning. Messages from the script may not
189 be sent immediately, thus the return value of WebSocketChannel::send() indicates whether the
190 message has been queued successfully, rather than whether the message has been sent or not.
191 * websockets/WebSocket.cpp:
192 (WebCore::WebSocket::send):
193 Case of sending "[object ArrayBuffer]" is covered by an existing test
194 http/tests/websocket/tests/{hybi,hixie76}/send-object.html.
195 * websockets/WebSocket.h:
196 * websockets/WebSocket.idl:
197 * websockets/WebSocketChannel.cpp:
198 (WebCore::WebSocketChannel::send):
199 * websockets/WebSocketChannel.h:
200 * websockets/WorkerThreadableWebSocketChannel.cpp:
201 (WebCore::WorkerThreadableWebSocketChannel::send):
202 (WebCore::workerContextDidSend):
203 (WebCore::WorkerThreadableWebSocketChannel::Peer::send):
204 (WebCore::WorkerThreadableWebSocketChannel::mainThreadSendArrayBuffer):
205 Construct an ArrayBuffer from the data on Vector<char>.
206 (WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
207 Copy the content into temporary buffer of Vector<char>, and send it to the main thread.
208 * websockets/WorkerThreadableWebSocketChannel.h:
210 2011-09-02 Kentaro Hara <haraken@google.com>
212 Implement a CustomEvent constructor for V8
213 https://bugs.webkit.org/show_bug.cgi?id=67527
215 Reviewed by Sam Weinig.
217 Test: fast/events/constructors/custom-event-constructor.html
219 * bindings/v8/OptionsObject.h:
220 (WebCore::OptionsObject::getKeyValue): Returns ScriptValue corresponding to a given key.
221 * bindings/v8/custom/V8EventConstructors.cpp: Added the CustomEvent constructor.
222 * dom/CustomEvent.idl: Added a 'V8CustomConstructor' attribute.
224 2011-09-02 Adrienne Walker <enne@google.com>
226 [chromium] Move updateLayers from LayerRendererChromium to CCLayerTreeHost
227 https://bugs.webkit.org/show_bug.cgi?id=67438
229 Reviewed by James Robinson.
231 Covered by existing tests.
233 Move functionality used by both CCLayerTreeHost and
234 LayerRendererChromium into CCLayerTreeHostCommon. Move update, paint,
235 and updateCompositorResource functions into CClayerTreeHost.
238 * platform/graphics/chromium/LayerChromium.cpp:
239 (WebCore::sortLayers):
240 * platform/graphics/chromium/LayerChromium.h:
241 * platform/graphics/chromium/LayerRendererChromium.cpp:
242 (WebCore::LayerRendererChromium::textureMemoryReclaimLimit):
243 (WebCore::LayerRendererChromium::drawLayers):
244 (WebCore::LayerRendererChromium::drawLayersInternal):
245 * platform/graphics/chromium/LayerRendererChromium.h:
246 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
247 (WebCore::sortLayers):
248 * platform/graphics/chromium/cc/CCLayerImpl.h:
249 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
250 (WebCore::CCLayerTreeHost::commitTo):
251 (WebCore::CCLayerTreeHost::updateLayers):
252 (WebCore::paintContentsIfDirty):
253 (WebCore::CCLayerTreeHost::paintLayerContents):
254 (WebCore::CCLayerTreeHost::updateCompositorResources):
255 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
256 * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp: Added.
257 (WebCore::CCLayerTreeHostCommon::isScaleOrTranslation):
258 (WebCore::CCLayerTreeHostCommon::calculateVisibleRect):
259 (WebCore::CCLayerTreeHostCommon::calculateVisibleLayerRect):
260 * platform/graphics/chromium/cc/CCLayerTreeHostCommon.h: Added.
261 (WebCore::CCLayerTreeHostCommon::calculateDrawTransformsAndVisibility):
262 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
263 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
264 * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
265 (WebCore::CCSingleThreadProxy::commitIfNeeded):
267 2011-09-02 Chris Marrin <cmarrin@apple.com>
269 https://bugs.webkit.org/show_bug.cgi?id=67510
270 Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
272 Reviewed by Simon Fraser.
274 Do a null check in two places to avoid sending nulls to CACF ValueFunction API.
276 Test: animations/pause-crash.html
278 * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
279 (PlatformCAAnimation::valueFunction):
280 (PlatformCAAnimation::setValueFunction):
282 2011-09-02 Bill Budge <bbudge@chromium.org>
284 Add a 'didDownloadData' method to ResourceLoader, SubresourceLoader,
285 SubresourceLoaderClient, DocumentThreadableLoader, ResourceHandleClient,
286 and ThreadableLoaderClient for the Chromium port only, so we can pass
287 these notifications from our ResourceHandle implementation through the
288 WebCore loader framework.
289 https://bugs.webkit.org/show_bug.cgi?id=67229
291 Reviewed by Darin Fisher.
293 No new tests. Exposes no new functionality.
296 * loader/DocumentThreadableLoader.h:
297 * loader/ResourceLoader.h:
298 * loader/SubresourceLoader.h:
299 * loader/SubresourceLoaderClient.h:
300 (WebCore::SubresourceLoaderClient::didDownloadData):
301 * loader/ThreadableLoaderClient.h:
302 (WebCore::ThreadableLoaderClient::didDownloadData):
303 * loader/ThreadableLoaderClientWrapper.h:
304 (WebCore::ThreadableLoaderClientWrapper::didDownloadData):
305 * loader/chromium: Added.
306 * loader/chromium/DocumentThreadableLoaderChromium.cpp: Added.
307 (WebCore::DocumentThreadableLoader::didDownloadData):
308 * loader/chromium/ResourceLoaderChromium.cpp: Added.
309 (WebCore::ResourceLoader::didDownloadData):
310 * loader/chromium/SubresourceLoaderChromium.cpp: Added.
311 (WebCore::SubresourceLoader::didDownloadData):
312 * platform/network/ResourceHandleClient.h:
313 (WebCore::ResourceHandleClient::didDownloadData):
315 2011-09-02 Jeff Miller <jeffm@apple.com>
317 Assert that PlatformCALayerWinInternal::displayCallback() is only called on the main thread
318 https://bugs.webkit.org/show_bug.cgi?id=67541
320 Reviewed by Simon Fraser.
322 No new tests, covered by existing media tests.
324 * platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
325 (PlatformCALayerWinInternal::displayCallback): Assert that is function is only called on the main thread.
327 2011-09-02 Julien Chaffraix <jchaffraix@webkit.org>
329 Enable RenderLayer::updateLayerPosition's cachedOffset optimization for more cases
330 https://bugs.webkit.org/show_bug.cgi?id=66901
332 Reviewed by Simon Fraser.
334 Test: fast/layers/assert-RenderLayer-update-positions.html
335 Also covered by existing tests under the new ASSERT.
337 This change extends the range of callers making use of the cachedOffset optimization.
339 Most callers did not make use of cachedOffset as it did not work when called on a subtree.
340 This limitation is now gone thus we can enable it more widely.
342 The semantics of the optimization are changed a bit as we now return if it is enabled whereas
343 the old code would check if it was *disabled*. Also there were some renames done to match more
344 closely what was going on (s/cachedOffset/offsetFromRoot/ and s/cachedOffsetDisabled/hasLayerOffset/).
346 Note that this is an optimistic optimization: if cachedOffset is not used, then we have
347 done at least an extra traversal up to the root. I have found it to be a wash on file
348 cycler (alexa) but to be a nice improvement (~20%) on some table benchmarks (modifying
351 * page/FrameView.cpp:
352 (WebCore::FrameView::layout): Extended the use of cachedOffset to subtree layouts.
353 * rendering/RenderBoxModelObject.cpp:
354 (WebCore::RenderBoxModelObject::styleDidChange): Forbid the use cachedOffset in this
355 case as we have only a single layer to update.
357 * rendering/RenderLayer.cpp:
358 (WebCore::RenderLayer::computeOffsetFromRoot): Added this function to get the offset from the root
359 layer at a certain point in the RenderLayer's tree. It gets the root layer's checking if no layer
360 in between would prevent convertToLayerCoords to work and return the position relative to
363 (WebCore::RenderLayer::updateLayerPositions): Added a new ASSERT to make sure our cachedOffset
364 is always fine. Also added a comment about calling convertToLayerCoords.
366 (WebCore::RenderLayer::removeOnlyThisLayer): Added cachedOffset here too as we may have to
367 update several layers. We save the offset prior to being removed from the hierarchy for
370 (WebCore::RenderLayer::paintChildLayerIntoColumns): Added a comment here about calling convertToLayerCoords.
372 * rendering/RenderLayer.h: Swapped the argument in updateLayerPositions to make
373 cachedOffset a mandatory field. Patched all the callers.
375 (WebCore::RenderLayer::canUseConvertToLayerCoords): Added this helper method to know when a
376 renderer prevents convertToLayerCoords from working. Added some FIXME around suspicious use
377 of convertToLayerCoords.
379 2011-08-30 Matthew Delaney <mdelaney@apple.com>
381 Read out of bounds in sUnpremultiplyData_RGBA8888 / ImageBufferData::getData
382 https://bugs.webkit.org/show_bug.cgi?id=65352
384 Reviewed by Simon Fraser.
386 New test: fast/canvas/canvas-getImageData-large-crash.html
388 This patch prevents overflows from happening in getImageData, createImageData, and canvas creation
389 calls that specify widths and heights that end up overflowing the ints that we store those values in
390 as well as derived values such as area and maxX / maxY of the bounding rects involved. Overflow of integer
391 arithmetic is detected via the use of the new Checked type that was introduced in r94207.
393 * html/HTMLCanvasElement.cpp:
394 (WebCore::HTMLCanvasElement::convertLogicalToDevice): Removed dependency on ints, using FloatRects/Sizes instead.
395 (WebCore::HTMLCanvasElement::createImageBuffer): Moved the check for max canvas area and dimensions here.
396 Added in check that prevents us from having canvases of sizes that will cause overflows.
397 (WebCore::HTMLCanvasElement::baseTransform): Updated use of convertLogicalToDevice.
398 * html/HTMLCanvasElement.h: Updated method signatures.
399 * html/canvas/CanvasRenderingContext2D.cpp:
400 (WebCore::createEmptyImageData): Added in check to prevent creating ImageData objects that will cause overflow when computing their size.
401 (WebCore::CanvasRenderingContext2D::createImageData): Avoid creating ImageData objects of size that will overflow later.
402 (WebCore::CanvasRenderingContext2D::getImageData): Added in check to prevent trying to get ImageData objects that will cause overflow when computing their size.
403 * platform/graphics/FloatRect.cpp:
404 (WebCore::FloatRect::isExpressibleAsIntRect): New method that tests whether a FloatRect can become an IntRect without overflow or having to be clamped.
405 * platform/graphics/FloatRect.h:
406 * platform/graphics/FloatSize.cpp:
407 (WebCore::FloatSize::isExpressibleAsIntSize): Same as FloatRect, but for FloatSize->IntSize.
408 * platform/graphics/FloatSize.h:
409 * platform/graphics/cg/ImageBufferCG.cpp: Added check for overflow.
410 (WebCore::ImageBuffer::ImageBuffer):
412 2011-09-02 Dan Bernstein <mitz@apple.com>
414 <rdar://problem/9755843> anonymous RenderMathMLOperator sets itself as the renderer of its parent mfenced node
416 Reviewed by Darin Adler.
418 Test: mathml/operator-hijacks-fenced-node.xhtml
420 * rendering/mathml/RenderMathMLOperator.cpp:
421 (WebCore::RenderMathMLOperator::updateFromElement): Rather than unconditionally setting the
422 node’s renderer to this, just restore it to whatever it was before calling destroyLeftoverChildren().
424 2011-09-02 Mark Hahnenberg <mhahnenberg@apple.com>
426 Incorporate newer, faster dtoa library
427 https://bugs.webkit.org/show_bug.cgi?id=66346
429 Reviewed by Oliver Hunt.
433 Added new dtoa library at http://code.google.com/p/double-conversion/.
434 Replaced old call to dtoa. The new library is much faster than the old one.
435 We still use the old dtoa for some stuff in WebCore as well as the old strtod,
436 but we can phase these out eventually as well.
438 * ForwardingHeaders/wtf/dtoa/double-conversion.h: Added.
439 * WebCore.vcproj/copyForwardingHeaders.cmd:
440 * css/CSSPrimitiveValue.cpp:
441 (WebCore::formatNumber):
442 * html/parser/HTMLParserIdioms.cpp:
443 (WebCore::serializeForNumberType):
444 * inspector/InspectorValues.cpp:
445 (WebCore::InspectorBasicValue::writeJSON):
446 * platform/graphics/Color.cpp:
447 (WebCore::Color::serialized):
449 2011-09-02 Nat Duca <nduca@chromium.org>
451 [chromium] Check for null context when reinitializing compositor
452 https://bugs.webkit.org/show_bug.cgi?id=67507
454 Reviewed by James Robinson.
456 * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
457 (WebCore::CCSingleThreadProxy::recreateContextIfNeeded):
459 2011-09-02 Sam Weinig <sam@webkit.org>
461 Remove BeforeProcessEvent, it was never meant to be
462 https://bugs.webkit.org/show_bug.cgi?id=67493
464 Reviewed by Anders Carlsson.
466 BeforeProcessEvent was added, never hooked up, and never removed.
467 Now it is being removed.
469 * CodeGenerators.pri:
470 * DerivedSources.make:
471 * GNUmakefile.list.am:
474 * WebCore.vcproj/WebCore.vcproj:
475 * WebCore.xcodeproj/project.pbxproj:
476 * dom/BeforeProcessEvent.cpp: Removed.
477 * dom/BeforeProcessEvent.h: Removed.
478 * dom/BeforeProcessEvent.idl: Removed.
479 * dom/DOMAllInOne.cpp:
481 (WebCore::Document::addListenerTypeIfNeeded):
484 * html/HTMLAttributeNames.in:
485 * html/HTMLScriptElement.cpp:
486 (WebCore::HTMLScriptElement::parseMappedAttribute):
487 * html/HTMLStyleElement.cpp:
488 (WebCore::HTMLStyleElement::parseMappedAttribute):
490 2011-09-02 Adrienne Walker <enne@google.com>
492 [chromium] Remove LayerRendererChromium references from the LayerChromium tree
493 https://bugs.webkit.org/show_bug.cgi?id=66430
495 Reviewed by James Robinson.
497 Covered by existing tests.
499 Replace references to LayerRendererChromium in the LayerChromium tree
500 with references to LayerTreeHost. The LayerRendererChromium property
501 is no longer synced and instead is set recursively on the CCLayerImpl
504 WebGLLayerChromium's paintRenderedResultsToCanvas function is
505 temporarily turned off for threaded compositing because it needs
506 access to the compositor context.
508 Previously, changing the layer renderer on a layer called cleanup
509 resources on that layer. Now, call that explicitly clean up all
510 resources explicitly from the proxy when the layer renderer gets
511 created. This cleans up all of the ManagedTexture objects which may be
512 hanging onto stale GraphicsContext3D pointers.
514 * platform/graphics/chromium/LayerChromium.cpp:
515 (WebCore::LayerChromium::cleanupResourcesRecursive):
516 (WebCore::LayerChromium::setLayerTreeHost):
517 (WebCore::LayerChromium::pushPropertiesTo):
518 * platform/graphics/chromium/LayerChromium.h:
519 (WebCore::LayerChromium::layerTreeHost):
520 * platform/graphics/chromium/LayerRendererChromium.cpp:
521 (WebCore::LayerRendererChromium::drawLayers):
522 (WebCore::LayerRendererChromium::paintLayerContents):
523 * platform/graphics/chromium/RenderSurfaceChromium.cpp:
524 * platform/graphics/chromium/RenderSurfaceChromium.h:
525 * platform/graphics/chromium/TiledLayerChromium.cpp:
526 (WebCore::TiledLayerChromium::TiledLayerChromium):
527 (WebCore::TiledLayerChromium::updateTileSizeAndTilingOption):
528 (WebCore::TiledLayerChromium::setLayerTreeHost):
529 (WebCore::TiledLayerChromium::textureManager):
530 * platform/graphics/chromium/TiledLayerChromium.h:
531 * platform/graphics/chromium/VideoLayerChromium.cpp:
532 (WebCore::VideoLayerChromium::VideoLayerChromium):
533 (WebCore::VideoLayerChromium::cleanupResources):
534 (WebCore::VideoLayerChromium::setLayerTreeHost):
535 (WebCore::VideoLayerChromium::reserveTextures):
536 * platform/graphics/chromium/VideoLayerChromium.h:
537 * platform/graphics/chromium/WebGLLayerChromium.cpp:
538 (WebCore::WebGLLayerChromium::paintRenderedResultsToCanvas):
539 (WebCore::WebGLLayerChromium::setTextureUpdated):
540 (WebCore::WebGLLayerChromium::layerRendererContext):
541 * platform/graphics/chromium/WebGLLayerChromium.h:
542 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
543 (WebCore::CCLayerImpl::setLayerRendererRecursive):
544 * platform/graphics/chromium/cc/CCLayerImpl.h:
545 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
546 (WebCore::CCLayerTreeHost::commitTo):
547 (WebCore::CCLayerTreeHost::didRecreateGraphicsContext):
548 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
549 (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
551 2011-09-02 Alexey Proskuryakov <ap@apple.com>
555 * platform/network/mac/CookieStorageMac.mm: (WebCore::setCookieStoragePrivateBrowsingEnabled):
556 Can't use BUILDING_ON_SNOW_LEOPARD without defined() when not on Snow Leopard.
558 2011-09-02 Sheriff Bot <webkit.review.bot@gmail.com>
560 Unreviewed, rolling out r94421.
561 http://trac.webkit.org/changeset/94421
562 https://bugs.webkit.org/show_bug.cgi?id=67496
564 Broke a number of tests on Chromium builders (including the
565 "cr-linux" EWS bot) (Requested by apavlov on #webkit).
567 * accessibility/AXObjectCache.cpp:
568 (WebCore::nodeHasRole):
569 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
570 (webkit_accessible_get_name):
572 (WebCore::Document::buildAccessKeyMap):
573 (WebCore::Document::recalcStyleSelector):
575 (WebCore::Element::baseURI):
576 (WebCore::Element::formatForDebugger):
577 (WebCore::Element::spellcheckAttributeState):
578 * dom/NameNodeList.cpp:
579 (WebCore::NameNodeList::nodeMatches):
580 * editing/ApplyStyleCommand.cpp:
581 (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
582 * editing/SplitElementCommand.cpp:
583 (WebCore::SplitElementCommand::doUnapply):
584 * editing/markup.cpp:
585 (WebCore::shouldIncludeWrapperForFullySelectedRoot):
586 (WebCore::createMarkup):
587 * html/HTMLAnchorElement.cpp:
588 (WebCore::HTMLAnchorElement::draggable):
589 (WebCore::HTMLAnchorElement::href):
590 (WebCore::HTMLAnchorElement::name):
591 (WebCore::HTMLAnchorElement::target):
592 (WebCore::HTMLAnchorElement::sendPings):
593 (WebCore::HTMLAnchorElement::handleClick):
594 * html/HTMLAppletElement.cpp:
595 (WebCore::HTMLAppletElement::createRenderer):
596 * html/HTMLAreaElement.cpp:
597 (WebCore::HTMLAreaElement::target):
598 * html/HTMLBodyElement.cpp:
599 (WebCore::HTMLBodyElement::aLink):
600 (WebCore::HTMLBodyElement::bgColor):
601 (WebCore::HTMLBodyElement::link):
602 (WebCore::HTMLBodyElement::text):
603 (WebCore::HTMLBodyElement::vLink):
604 (WebCore::HTMLBodyElement::addSubresourceAttributeURLs):
605 * html/HTMLButtonElement.cpp:
606 (WebCore::HTMLButtonElement::value):
607 * html/HTMLCanvasElement.cpp:
608 (WebCore::HTMLCanvasElement::reset):
609 * html/HTMLCollection.cpp:
610 (WebCore::HTMLCollection::checkForNameMatch):
611 (WebCore::HTMLCollection::updateNameCache):
612 * html/HTMLDocument.cpp:
613 (WebCore::HTMLDocument::dir):
614 * html/HTMLElement.cpp:
615 (WebCore::HTMLElement::parseMappedAttribute):
616 (WebCore::HTMLElement::draggable):
617 (WebCore::HTMLElement::title):
618 (WebCore::setHasDirAutoFlagRecursively):
619 (WebCore::HTMLElement::directionalityIfhasDirAutoAttribute):
620 (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildAttributeChanged):
621 (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged):
622 * html/HTMLEmbedElement.cpp:
623 (WebCore::HTMLEmbedElement::updateWidget):
624 (WebCore::HTMLEmbedElement::insertedIntoDocument):
625 (WebCore::HTMLEmbedElement::addSubresourceAttributeURLs):
626 * html/HTMLFormCollection.cpp:
627 (WebCore::HTMLFormCollection::getNamedFormItem):
628 (WebCore::HTMLFormCollection::updateNameCache):
629 * html/HTMLFormControlElement.cpp:
630 (WebCore::HTMLFormControlElement::autofocus):
631 (WebCore::HTMLFormControlElement::updateVisibleValidationMessage):
632 * html/HTMLFormElement.cpp:
633 (WebCore::HTMLFormElement::name):
634 (WebCore::HTMLFormElement::action):
635 (WebCore::HTMLFormElement::method):
636 (WebCore::HTMLFormElement::target):
637 * html/HTMLFrameElement.cpp:
638 (WebCore::HTMLFrameElement::noResize):
639 * html/HTMLFrameElementBase.cpp:
640 (WebCore::HTMLFrameElementBase::setNameAndOpenURL):
641 (WebCore::HTMLFrameElementBase::location):
642 (WebCore::HTMLFrameElementBase::allowFullScreen):
643 * html/HTMLHtmlElement.cpp:
644 (WebCore::HTMLHtmlElement::insertedByParser):
645 * html/HTMLImageElement.cpp:
646 (WebCore::HTMLImageElement::altText):
647 (WebCore::HTMLImageElement::width):
648 (WebCore::HTMLImageElement::height):
649 (WebCore::HTMLImageElement::alt):
650 (WebCore::HTMLImageElement::draggable):
651 (WebCore::HTMLImageElement::src):
652 (WebCore::HTMLImageElement::addSubresourceAttributeURLs):
653 * html/HTMLInputElement.cpp:
654 (WebCore::HTMLInputElement::finishParsingChildren):
655 (WebCore::HTMLInputElement::altText):
656 (WebCore::HTMLInputElement::reset):
657 (WebCore::HTMLInputElement::searchEventsShouldBeDispatched):
658 (WebCore::HTMLInputElement::isSpeechEnabled):
659 * html/HTMLLabelElement.cpp:
660 (WebCore::HTMLLabelElement::control):
661 * html/HTMLLinkElement.cpp:
662 (WebCore::HTMLLinkElement::process):
663 (WebCore::HTMLLinkElement::href):
664 (WebCore::HTMLLinkElement::rel):
665 (WebCore::HTMLLinkElement::target):
666 (WebCore::HTMLLinkElement::type):
667 * html/HTMLMapElement.cpp:
668 (WebCore::HTMLMapElement::imageElement):
669 * html/HTMLMediaElement.cpp:
670 (WebCore::HTMLMediaElement::attributeChanged):
671 (WebCore::HTMLMediaElement::insertedIntoDocument):
672 * html/HTMLMetaElement.cpp:
673 (WebCore::HTMLMetaElement::content):
674 (WebCore::HTMLMetaElement::httpEquiv):
675 (WebCore::HTMLMetaElement::name):
676 * html/HTMLMeterElement.cpp:
677 (WebCore::HTMLMeterElement::min):
678 (WebCore::HTMLMeterElement::max):
679 (WebCore::HTMLMeterElement::value):
680 (WebCore::HTMLMeterElement::low):
681 (WebCore::HTMLMeterElement::high):
682 (WebCore::HTMLMeterElement::optimum):
683 * html/HTMLNameCollection.cpp:
684 (WebCore::HTMLNameCollection::itemAfter):
685 * html/HTMLObjectElement.cpp:
686 (WebCore::HTMLObjectElement::updateWidget):
687 (WebCore::HTMLObjectElement::containsJavaApplet):
688 (WebCore::HTMLObjectElement::addSubresourceAttributeURLs):
689 * html/HTMLOptGroupElement.cpp:
690 (WebCore::HTMLOptGroupElement::groupLabelText):
691 * html/HTMLProgressElement.cpp:
692 (WebCore::HTMLProgressElement::max):
693 * html/HTMLScriptElement.cpp:
694 (WebCore::HTMLScriptElement::sourceAttributeValue):
695 (WebCore::HTMLScriptElement::charsetAttributeValue):
696 (WebCore::HTMLScriptElement::typeAttributeValue):
697 (WebCore::HTMLScriptElement::languageAttributeValue):
698 (WebCore::HTMLScriptElement::forAttributeValue):
699 (WebCore::HTMLScriptElement::eventAttributeValue):
700 * html/HTMLSourceElement.cpp:
701 (WebCore::HTMLSourceElement::media):
702 (WebCore::HTMLSourceElement::type):
703 * html/HTMLStyleElement.cpp:
704 (WebCore::HTMLStyleElement::media):
705 (WebCore::HTMLStyleElement::type):
706 * html/HTMLTableCellElement.cpp:
707 (WebCore::HTMLTableCellElement::abbr):
708 (WebCore::HTMLTableCellElement::axis):
709 (WebCore::HTMLTableCellElement::headers):
710 (WebCore::HTMLTableCellElement::scope):
711 (WebCore::HTMLTableCellElement::addSubresourceAttributeURLs):
712 * html/HTMLTableColElement.cpp:
713 (WebCore::HTMLTableColElement::width):
714 * html/HTMLTableElement.cpp:
715 (WebCore::HTMLTableElement::rules):
716 (WebCore::HTMLTableElement::summary):
717 (WebCore::HTMLTableElement::addSubresourceAttributeURLs):
718 * html/HTMLTableSectionElement.cpp:
719 (WebCore::HTMLTableSectionElement::align):
720 (WebCore::HTMLTableSectionElement::ch):
721 (WebCore::HTMLTableSectionElement::chOff):
722 (WebCore::HTMLTableSectionElement::vAlign):
723 * html/HTMLTextAreaElement.cpp:
724 (WebCore::HTMLTextAreaElement::maxLength):
725 * html/HTMLTextFormControlElement.cpp:
726 (WebCore::HTMLTextFormControlElement::strippedPlaceholder):
727 (WebCore::HTMLTextFormControlElement::isPlaceholderEmpty):
728 * html/HTMLTrackElement.cpp:
729 (WebCore::HTMLTrackElement::src):
730 (WebCore::HTMLTrackElement::kind):
731 (WebCore::HTMLTrackElement::srclang):
732 (WebCore::HTMLTrackElement::label):
733 (WebCore::HTMLTrackElement::isDefault):
734 (WebCore::HTMLTrackElement::load):
735 * html/HTMLVideoElement.cpp:
736 (WebCore::HTMLVideoElement::width):
737 (WebCore::HTMLVideoElement::height):
738 * html/StepRange.cpp:
739 (WebCore::StepRange::StepRange):
740 * html/shadow/TextControlInnerElements.cpp:
741 (WebCore::InputFieldSpeechButtonElement::startSpeechInput):
742 * inspector/InspectorPageAgent.cpp:
743 (WebCore::InspectorPageAgent::buildObjectForFrame):
744 * loader/FormSubmission.cpp:
745 (WebCore::FormSubmission::create):
746 * loader/ImageLoader.cpp:
747 (WebCore::ImageLoader::updateFromElement):
749 (WebCore::Frame::matchLabelsAgainstElement):
750 * page/PageSerializer.cpp:
751 (WebCore::PageSerializer::serializeFrame):
752 * page/mac/FrameMac.mm:
753 (WebCore::Frame::matchLabelsAgainstElement):
754 * platform/chromium/ClipboardChromium.cpp:
755 (WebCore::writeImageToDataObject):
756 * platform/chromium/PasteboardChromium.cpp:
757 (WebCore::Pasteboard::writeImage):
758 * platform/gtk/PasteboardGtk.cpp:
759 (WebCore::getURLForImageNode):
760 * platform/mac/HTMLConverter.mm:
761 (fileWrapperForElement):
762 * platform/win/ClipboardWin.cpp:
763 (WebCore::writeImageToDataObject):
764 (WebCore::ClipboardWin::declareAndWriteDragImage):
765 * rendering/HitTestResult.cpp:
766 (WebCore::HitTestResult::altDisplayString):
767 (WebCore::HitTestResult::absoluteImageURL):
768 (WebCore::HitTestResult::absoluteLinkURL):
769 * rendering/RenderDetails.cpp:
770 (WebCore::RenderDetails::isOpen):
771 * rendering/RenderMenuList.cpp:
772 (WebCore::RenderMenuList::itemAccessibilityText):
773 * rendering/RenderObject.cpp:
774 (WebCore::RenderObject::addPDFURLRect):
775 * rendering/RenderTableCell.cpp:
776 (WebCore::RenderTableCell::computePreferredLogicalWidths):
777 * rendering/RenderTextControlSingleLine.cpp:
778 (WebCore::RenderTextControlSingleLine::autosaveName):
779 * rendering/RenderVideo.cpp:
780 (WebCore::RenderVideo::calculateIntrinsicSize):
781 * rendering/mathml/RenderMathMLFenced.cpp:
782 (WebCore::RenderMathMLFenced::updateFromElement):
783 * rendering/mathml/RenderMathMLFraction.cpp:
784 (WebCore::RenderMathMLFraction::updateFromElement):
785 * rendering/mathml/RenderMathMLOperator.cpp:
786 (WebCore::RenderMathMLOperator::updateFromElement):
787 * svg/SVGFontData.cpp:
788 (WebCore::SVGFontData::applySVGGlyphSelection):
790 2011-09-02 Alexey Proskuryakov <ap@apple.com>
792 REGRESSION (r94093): Private browsing doesn't start with a clean state on Snow Leopard
793 https://bugs.webkit.org/show_bug.cgi?id=67356
795 Reviewed by Darin Adler.
797 * platform/network/mac/CookieStorageMac.mm: (WebCore::setCookieStoragePrivateBrowsingEnabled):
798 Don't enable old-style private browsing when using sessions - it would take precedence over
799 session cookie storage on Snow Leopard.
801 2011-09-02 Mihnea Ovidenie <mihnea@adobe.com>
803 BORDER attribute percent with the input image tag not working.
804 https://bugs.webkit.org/show_bug.cgi?id=66467
806 Reviewed by Simon Fraser.
808 This patch fixes 2 issues regarding the border attribute of an input image element.
809 1. The border attribute, if specified, is now taken into account and the border of the input image element is displayed.
810 2. If the border attribute contains percent, the border is displayed.
811 The value of the border attribute for input image element is now parsed according to the rules for parsing non-negative integers.
812 This implies that when percent is specified in the border attribute, parsing takes place and the percent is ignored.
813 If after parsing, the value of the border is greater than zero, the border of the input image element is displayed.
815 * html/HTMLElement.cpp:
816 (WebCore::parseBorderWidthAttribute):
817 (WebCore::HTMLElement::applyBorderAttribute):
818 * html/HTMLElement.h:
819 * html/HTMLImageElement.cpp:
820 (WebCore::HTMLImageElement::parseMappedAttribute):
821 * html/HTMLInputElement.cpp:
822 (WebCore::HTMLInputElement::parseMappedAttribute):
823 * html/HTMLObjectElement.cpp:
824 (WebCore::HTMLObjectElement::parseMappedAttribute):
826 2011-09-02 Kentaro Hara <haraken@google.com>
828 Implement the Event constructor for V8.
829 https://bugs.webkit.org/show_bug.cgi?id=66756
831 Reviewed by Adam Barth.
833 The spec of the Event constructor is here:
834 http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#concept-event-constructor
835 This patch implements the Event constructor for V8 in V8EventConstructors.cpp,
836 similar to the implementation for JSC in JSEventConstructors.cpp.
838 * WebCore.gypi: Added V8EventConstructors.cpp.
839 * WebCore.pro: Ditto.
840 * bindings/scripts/CodeGeneratorV8.pm:
841 * bindings/v8/OptionsObject.cpp:
842 (WebCore::OptionsObject::getKeyDouble): Returns a value of type double corresponding to a given key.
843 * bindings/v8/OptionsObject.h:
844 (WebCore::OptionsObject::getKeyValue): Returns a value corresponding to a given key.
845 * bindings/v8/custom/V8EventConstructors.cpp: Added.
846 (WebCore::constructV8Event): AllowAllocation::current() means that a DOM object created by WebCore is going to be just wrapped into a V8 object. In this case, we skip the code of constructorCallback().
847 * dom/Event.idl: Added |V8CustomConstructor|.
849 2011-09-02 Anton Muhin <antonm@chromium.org>
851 [v8] Use size_t instead of unsigned when iterating over Vector in V8DOMStringMap
852 https://bugs.webkit.org/show_bug.cgi?id=67484
854 Reviewed by Yury Semikhatsky.
856 No new tests, minor cleanup.
858 * bindings/v8/custom/V8DOMStringMapCustom.cpp:
859 (WebCore::V8DOMStringMap::namedPropertyEnumerator):
861 2011-09-02 Sheriff Bot <webkit.review.bot@gmail.com>
863 Unreviewed, rolling out r94404.
864 http://trac.webkit.org/changeset/94404
865 https://bugs.webkit.org/show_bug.cgi?id=67490
867 "Patch is wrong, new API needs two reviewers, we are already
868 working on how to add notifications elsewhere" (Requested by
871 * bindings/gobject/GNUmakefile.am:
873 2011-09-02 Andreas Kling <kling@webkit.org>
875 Use fastGetAttribute() and fastHasAttribute() where appropriate.
876 https://bugs.webkit.org/show_bug.cgi?id=67394
878 Reviewed by Darin Adler.
880 Change call sites that don't check the "style" or SVG animatable
881 attributes to use fastGetAttribute()/fastHasAttribute() instead
882 of getAttribute()/hasAttribute().
884 No new tests, this is a minor performance optimization.
886 * accessibility/AXObjectCache.cpp:
887 (WebCore::nodeHasRole):
888 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
889 (webkit_accessible_get_name):
891 (WebCore::Document::buildAccessKeyMap):
892 (WebCore::Document::recalcStyleSelector):
894 (WebCore::Element::baseURI):
895 (WebCore::Element::formatForDebugger):
896 (WebCore::Element::spellcheckAttributeState):
897 * dom/NameNodeList.cpp:
898 (WebCore::NameNodeList::nodeMatches):
899 * editing/ApplyStyleCommand.cpp:
900 (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
901 * editing/SplitElementCommand.cpp:
902 (WebCore::SplitElementCommand::doUnapply):
903 * editing/markup.cpp:
904 (WebCore::shouldIncludeWrapperForFullySelectedRoot):
905 (WebCore::createMarkup):
906 * html/HTMLAnchorElement.cpp:
907 (WebCore::HTMLAnchorElement::draggable):
908 (WebCore::HTMLAnchorElement::href):
909 (WebCore::HTMLAnchorElement::name):
910 (WebCore::HTMLAnchorElement::target):
911 (WebCore::HTMLAnchorElement::sendPings):
912 (WebCore::HTMLAnchorElement::handleClick):
913 * html/HTMLAppletElement.cpp:
914 (WebCore::HTMLAppletElement::createRenderer):
915 * html/HTMLAreaElement.cpp:
916 (WebCore::HTMLAreaElement::target):
917 * html/HTMLBodyElement.cpp:
918 (WebCore::HTMLBodyElement::aLink):
919 (WebCore::HTMLBodyElement::bgColor):
920 (WebCore::HTMLBodyElement::link):
921 (WebCore::HTMLBodyElement::text):
922 (WebCore::HTMLBodyElement::vLink):
923 (WebCore::HTMLBodyElement::addSubresourceAttributeURLs):
924 * html/HTMLButtonElement.cpp:
925 (WebCore::HTMLButtonElement::value):
926 * html/HTMLCanvasElement.cpp:
927 (WebCore::HTMLCanvasElement::reset):
928 * html/HTMLCollection.cpp:
929 (WebCore::HTMLCollection::checkForNameMatch):
930 (WebCore::HTMLCollection::updateNameCache):
931 * html/HTMLDocument.cpp:
932 (WebCore::HTMLDocument::dir):
933 * html/HTMLElement.cpp:
934 (WebCore::HTMLElement::parseMappedAttribute):
935 (WebCore::HTMLElement::draggable):
936 (WebCore::HTMLElement::title):
937 (WebCore::setHasDirAutoFlagRecursively):
938 (WebCore::HTMLElement::directionalityIfhasDirAutoAttribute):
939 (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildAttributeChanged):
940 (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged):
941 * html/HTMLEmbedElement.cpp:
942 (WebCore::HTMLEmbedElement::updateWidget):
943 (WebCore::HTMLEmbedElement::insertedIntoDocument):
944 (WebCore::HTMLEmbedElement::addSubresourceAttributeURLs):
945 * html/HTMLFormCollection.cpp:
946 (WebCore::HTMLFormCollection::getNamedFormItem):
947 (WebCore::HTMLFormCollection::updateNameCache):
948 * html/HTMLFormControlElement.cpp:
949 (WebCore::HTMLFormControlElement::autofocus):
950 (WebCore::HTMLFormControlElement::updateVisibleValidationMessage):
951 * html/HTMLFormElement.cpp:
952 (WebCore::HTMLFormElement::name):
953 (WebCore::HTMLFormElement::action):
954 (WebCore::HTMLFormElement::method):
955 (WebCore::HTMLFormElement::target):
956 * html/HTMLFrameElement.cpp:
957 (WebCore::HTMLFrameElement::noResize):
958 * html/HTMLFrameElementBase.cpp:
959 (WebCore::HTMLFrameElementBase::setNameAndOpenURL):
960 (WebCore::HTMLFrameElementBase::location):
961 (WebCore::HTMLFrameElementBase::allowFullScreen):
962 * html/HTMLHtmlElement.cpp:
963 (WebCore::HTMLHtmlElement::insertedByParser):
964 * html/HTMLImageElement.cpp:
965 (WebCore::HTMLImageElement::altText):
966 (WebCore::HTMLImageElement::width):
967 (WebCore::HTMLImageElement::height):
968 (WebCore::HTMLImageElement::alt):
969 (WebCore::HTMLImageElement::draggable):
970 (WebCore::HTMLImageElement::src):
971 (WebCore::HTMLImageElement::addSubresourceAttributeURLs):
972 * html/HTMLInputElement.cpp:
973 (WebCore::HTMLInputElement::finishParsingChildren):
974 (WebCore::HTMLInputElement::altText):
975 (WebCore::HTMLInputElement::reset):
976 (WebCore::HTMLInputElement::searchEventsShouldBeDispatched):
977 (WebCore::HTMLInputElement::isSpeechEnabled):
978 * html/HTMLLabelElement.cpp:
979 (WebCore::HTMLLabelElement::control):
980 * html/HTMLLinkElement.cpp:
981 (WebCore::HTMLLinkElement::process):
982 (WebCore::HTMLLinkElement::href):
983 (WebCore::HTMLLinkElement::rel):
984 (WebCore::HTMLLinkElement::target):
985 (WebCore::HTMLLinkElement::type):
986 * html/HTMLMapElement.cpp:
987 (WebCore::HTMLMapElement::imageElement):
988 * html/HTMLMediaElement.cpp:
989 (WebCore::HTMLMediaElement::attributeChanged):
990 (WebCore::HTMLMediaElement::insertedIntoDocument):
991 * html/HTMLMetaElement.cpp:
992 (WebCore::HTMLMetaElement::content):
993 (WebCore::HTMLMetaElement::httpEquiv):
994 (WebCore::HTMLMetaElement::name):
995 * html/HTMLMeterElement.cpp:
996 (WebCore::HTMLMeterElement::min):
997 (WebCore::HTMLMeterElement::max):
998 (WebCore::HTMLMeterElement::value):
999 (WebCore::HTMLMeterElement::low):
1000 (WebCore::HTMLMeterElement::high):
1001 (WebCore::HTMLMeterElement::optimum):
1002 * html/HTMLNameCollection.cpp:
1003 (WebCore::HTMLNameCollection::itemAfter):
1004 * html/HTMLObjectElement.cpp:
1005 (WebCore::HTMLObjectElement::updateWidget):
1006 (WebCore::HTMLObjectElement::containsJavaApplet):
1007 (WebCore::HTMLObjectElement::addSubresourceAttributeURLs):
1008 * html/HTMLOptGroupElement.cpp:
1009 (WebCore::HTMLOptGroupElement::groupLabelText):
1010 * html/HTMLProgressElement.cpp:
1011 (WebCore::HTMLProgressElement::max):
1012 * html/HTMLScriptElement.cpp:
1013 (WebCore::HTMLScriptElement::sourceAttributeValue):
1014 (WebCore::HTMLScriptElement::charsetAttributeValue):
1015 (WebCore::HTMLScriptElement::typeAttributeValue):
1016 (WebCore::HTMLScriptElement::languageAttributeValue):
1017 (WebCore::HTMLScriptElement::forAttributeValue):
1018 (WebCore::HTMLScriptElement::eventAttributeValue):
1019 * html/HTMLSourceElement.cpp:
1020 (WebCore::HTMLSourceElement::media):
1021 (WebCore::HTMLSourceElement::type):
1022 * html/HTMLStyleElement.cpp:
1023 (WebCore::HTMLStyleElement::media):
1024 (WebCore::HTMLStyleElement::type):
1025 * html/HTMLTableCellElement.cpp:
1026 (WebCore::HTMLTableCellElement::abbr):
1027 (WebCore::HTMLTableCellElement::axis):
1028 (WebCore::HTMLTableCellElement::headers):
1029 (WebCore::HTMLTableCellElement::scope):
1030 (WebCore::HTMLTableCellElement::addSubresourceAttributeURLs):
1031 * html/HTMLTableColElement.cpp:
1032 (WebCore::HTMLTableColElement::width):
1033 * html/HTMLTableElement.cpp:
1034 (WebCore::HTMLTableElement::rules):
1035 (WebCore::HTMLTableElement::summary):
1036 (WebCore::HTMLTableElement::addSubresourceAttributeURLs):
1037 * html/HTMLTableSectionElement.cpp:
1038 (WebCore::HTMLTableSectionElement::align):
1039 (WebCore::HTMLTableSectionElement::ch):
1040 (WebCore::HTMLTableSectionElement::chOff):
1041 (WebCore::HTMLTableSectionElement::vAlign):
1042 * html/HTMLTextAreaElement.cpp:
1043 (WebCore::HTMLTextAreaElement::maxLength):
1044 * html/HTMLTextFormControlElement.cpp:
1045 (WebCore::HTMLTextFormControlElement::strippedPlaceholder):
1046 (WebCore::HTMLTextFormControlElement::isPlaceholderEmpty):
1047 * html/HTMLTrackElement.cpp:
1048 (WebCore::HTMLTrackElement::src):
1049 (WebCore::HTMLTrackElement::kind):
1050 (WebCore::HTMLTrackElement::srclang):
1051 (WebCore::HTMLTrackElement::label):
1052 (WebCore::HTMLTrackElement::isDefault):
1053 (WebCore::HTMLTrackElement::load):
1054 * html/HTMLVideoElement.cpp:
1055 (WebCore::HTMLVideoElement::width):
1056 (WebCore::HTMLVideoElement::height):
1057 * html/StepRange.cpp:
1058 (WebCore::StepRange::StepRange):
1059 * html/shadow/TextControlInnerElements.cpp:
1060 (WebCore::InputFieldSpeechButtonElement::startSpeechInput):
1061 * inspector/InspectorPageAgent.cpp:
1062 (WebCore::InspectorPageAgent::buildObjectForFrame):
1063 * loader/FormSubmission.cpp:
1064 (WebCore::FormSubmission::create):
1065 * loader/ImageLoader.cpp:
1066 (WebCore::ImageLoader::updateFromElement):
1068 (WebCore::Frame::matchLabelsAgainstElement):
1069 * page/PageSerializer.cpp:
1070 (WebCore::PageSerializer::serializeFrame):
1071 * page/mac/FrameMac.mm:
1072 (WebCore::Frame::matchLabelsAgainstElement):
1073 * platform/chromium/ClipboardChromium.cpp:
1074 (WebCore::writeImageToDataObject):
1075 * platform/chromium/PasteboardChromium.cpp:
1076 (WebCore::Pasteboard::writeImage):
1077 * platform/gtk/PasteboardGtk.cpp:
1078 (WebCore::getURLForImageNode):
1079 * platform/mac/HTMLConverter.mm:
1080 (fileWrapperForElement):
1081 * platform/win/ClipboardWin.cpp:
1082 (WebCore::writeImageToDataObject):
1083 (WebCore::ClipboardWin::declareAndWriteDragImage):
1084 * rendering/HitTestResult.cpp:
1085 (WebCore::HitTestResult::altDisplayString):
1086 (WebCore::HitTestResult::absoluteImageURL):
1087 (WebCore::HitTestResult::absoluteLinkURL):
1088 * rendering/RenderDetails.cpp:
1089 (WebCore::RenderDetails::isOpen):
1090 * rendering/RenderMenuList.cpp:
1091 (WebCore::RenderMenuList::itemAccessibilityText):
1092 * rendering/RenderObject.cpp:
1093 (WebCore::RenderObject::addPDFURLRect):
1094 * rendering/RenderTableCell.cpp:
1095 (WebCore::RenderTableCell::computePreferredLogicalWidths):
1096 * rendering/RenderTextControlSingleLine.cpp:
1097 (WebCore::RenderTextControlSingleLine::autosaveName):
1098 * rendering/RenderVideo.cpp:
1099 (WebCore::RenderVideo::calculateIntrinsicSize):
1100 * rendering/mathml/RenderMathMLFenced.cpp:
1101 (WebCore::RenderMathMLFenced::updateFromElement):
1102 * rendering/mathml/RenderMathMLFraction.cpp:
1103 (WebCore::RenderMathMLFraction::updateFromElement):
1104 * rendering/mathml/RenderMathMLOperator.cpp:
1105 (WebCore::RenderMathMLOperator::updateFromElement):
1106 * svg/SVGFontData.cpp:
1107 (WebCore::SVGFontData::applySVGGlyphSelection):
1109 2011-09-01 David Hyatt <hyatt@apple.com>
1111 https://bugs.webkit.org/show_bug.cgi?id=67431
1113 Implement border-image-repeat. Similar to how border-image-slice was implemented, the parsing of the two
1114 repeat values has been moved into separate functions. The value is represented as a Pair (similar to how we
1115 handle border radius).
1117 Reviewed by Beth Dakin.
1119 Added fast/borders/border-image-repeat.html.
1121 * css/CSSBorderImageValue.cpp:
1122 (WebCore::CSSBorderImageValue::CSSBorderImageValue):
1123 (WebCore::CSSBorderImageValue::cssText):
1124 * css/CSSBorderImageValue.h:
1125 (WebCore::CSSBorderImageValue::create):
1126 Modified the CSSBorderImageValue (you're living on borrowed time, my friend!) to have a CSSValue that
1129 * css/CSSComputedStyleDeclaration.cpp:
1130 (WebCore::valueForRepeatRule):
1131 (WebCore::valueForNinePieceImageRepeat):
1132 (WebCore::valueForNinePieceImage):
1133 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1134 Add support for the new properties. Break out the value retrieval for the image repeat rules into its
1135 own function, valueForNinePieceImageRepeat.
1137 * css/CSSParser.cpp:
1138 (WebCore::CSSParser::parseValue):
1139 (WebCore::BorderImageParseContext::BorderImageParseContext):
1140 (WebCore::BorderImageParseContext::allowRepeat):
1141 (WebCore::BorderImageParseContext::commitSlice):
1142 (WebCore::BorderImageParseContext::commitSlash):
1143 (WebCore::BorderImageParseContext::commitWidth):
1144 (WebCore::BorderImageParseContext::commitRepeat):
1145 (WebCore::BorderImageParseContext::commitBorderImage):
1146 (WebCore::CSSParser::parseBorderImage):
1147 Modified the parsing of border image to call into parseBorderImageRepeat for the repeat values.
1149 (WebCore::isBorderImageRepeatKeyword):
1150 (WebCore::CSSParser::parseBorderImageRepeat):
1151 The new parsing code for border-image-repeat is here. It will build up a CSSValue containing a Pair and
1155 * css/CSSPropertyNames.in:
1156 Add the new properties.
1158 * css/CSSStyleSelector.cpp:
1159 (WebCore::CSSStyleSelector::applyProperty):
1160 (WebCore::CSSStyleSelector::mapNinePieceImage):
1161 (WebCore::CSSStyleSelector::mapNinePieceImageRepeat):
1162 * css/CSSStyleSelector.h:
1163 The mapping into the front end is done the same way as border-image-slice. Factor out the image repeat rules
1164 portion into mapNinePieceImageRepeat.
1166 * platform/graphics/Image.cpp:
1167 (WebCore::Image::drawTiled):
1168 * platform/graphics/Image.h:
1169 Add the new 'space' value as a valid image tiling rule. It's not yet supported and, like the 'round' value,
1170 is just mapped to 'repeat' for now.
1172 * rendering/style/NinePieceImage.h:
1173 (WebCore::NinePieceImage::copyRepeatFrom):
1174 Helper for copying only the repeat rules from another NinePieceImage.
1176 2011-09-02 Jarred Nicholls <jarred@sencha.com>
1178 [Qt] number input not rendering spin buttons properly in RTL direction
1179 https://bugs.webkit.org/show_bug.cgi?id=67445
1181 Properly render Qt's number input with RTL direction, and fix Plastique styling.
1183 Reviewed by Andreas Kling.
1185 * platform/qt/RenderThemeQt.cpp:
1186 (WebCore::RenderThemeQt::paintInnerSpinButton):
1188 2011-09-02 Arko Saha <nghq36@motorola.com>
1190 Resetting media controls when the src is changed from a valid url to an
1192 https://bugs.webkit.org/show_bug.cgi?id=64880
1194 Reviewed by Eric Carlson.
1196 Test: media/media-controls-invalid-url.html
1198 * html/HTMLMediaElement.cpp:
1199 (WebCore::HTMLMediaElement::mediaLoadingFailed):
1201 2011-09-02 Vsevolod Vlasov <vsevik@chromium.org>
1203 Web Inspector: Make it more clear when requests are loaded from cache on network panel.
1204 https://bugs.webkit.org/show_bug.cgi?id=67396
1206 Reviewed by Pavel Feldman.
1208 * inspector/front-end/NetworkPanel.js:
1209 (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell):
1210 * inspector/front-end/ResourceHeadersView.js:
1211 (WebInspector.ResourceHeadersView.prototype._refreshHTTPInformation):
1212 * inspector/front-end/networkPanel.css:
1213 (.resource-headers-view .outline-disclosure li .status-from-cache):
1215 2011-09-02 Vsevolod Vlasov <vsevik@chromium.org>
1217 Web Inspector: Should remove resource highlight on sort/filter in network panel.
1218 https://bugs.webkit.org/show_bug.cgi?id=67411
1220 Reviewed by Pavel Feldman.
1222 * inspector/front-end/NetworkPanel.js:
1223 (WebInspector.NetworkLogView.prototype._sortItems):
1224 (WebInspector.NetworkLogView.prototype._sortByTimeline):
1225 (WebInspector.NetworkLogView.prototype._updateFilter):
1227 2011-09-02 Vsevolod Vlasov <vsevik@chromium.org>
1229 Web Inspector: Network: jump to initiator's record in case of redirect
1230 https://bugs.webkit.org/show_bug.cgi?id=67367
1232 Reviewed by Pavel Feldman.
1234 * English.lproj/localizedStrings.js:
1235 * inspector/front-end/NetworkManager.js:
1236 (WebInspector.NetworkDispatcher.prototype._appendRedirect):
1237 * inspector/front-end/NetworkPanel.js:
1238 (WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell):
1239 * inspector/front-end/Resource.js:
1240 (WebInspector.Resource.prototype.get redirectSource):
1241 (WebInspector.Resource.prototype.set redirectSource):
1243 2011-09-02 Antti Koivisto <antti@apple.com>
1245 De-virtualize recalcStyle()
1246 https://bugs.webkit.org/show_bug.cgi?id=67378
1248 Reviewed by Dimitri Glazkov.
1250 Element::recalcStyle() does not need to be virtual, there are very few legit overrides. This will
1251 also make it possible to de-recursify it later.
1253 Added willRecalcStyle()/didRecalcStyle() virtual function for subclasses that need custom style recalc.
1254 These are only invoked if hasCustomWillOrDidRecalcStyle() bit is set.
1257 (WebCore::Document::recalcStyle):
1260 (WebCore::Element::recalcStyle):
1262 (WebCore::Element::willRecalcStyle):
1263 (WebCore::Element::didRecalcStyle):
1265 (WebCore::Node::hasCustomWillOrDidRecalcStyle):
1266 (WebCore::Node::setHasCustomWillOrDidRecalcStyle):
1267 * dom/ShadowRoot.cpp:
1268 (WebCore::ShadowRoot::recalcShadowTreeStyle):
1271 (WebCore::Text::recalcTextStyle):
1273 * html/HTMLFormControlElement.cpp:
1274 (WebCore::HTMLFormControlElement::HTMLFormControlElement):
1275 (WebCore::HTMLFormControlElement::didRecalcStyle):
1276 * html/HTMLFormControlElement.h:
1277 * html/HTMLFrameSetElement.cpp:
1278 (WebCore::HTMLFrameSetElement::HTMLFrameSetElement):
1279 (WebCore::HTMLFrameSetElement::willRecalcStyle):
1280 * html/HTMLFrameSetElement.h:
1281 * html/HTMLMediaElement.cpp:
1282 (WebCore::HTMLMediaElement::HTMLMediaElement):
1283 (WebCore::HTMLMediaElement::didRecalcStyle):
1284 * html/HTMLMediaElement.h:
1285 * html/HTMLNoScriptElement.cpp:
1286 (WebCore::HTMLNoScriptElement::HTMLNoScriptElement):
1287 (WebCore::HTMLNoScriptElement::willRecalcStyle):
1288 * html/HTMLNoScriptElement.h:
1289 * html/HTMLPlugInImageElement.cpp:
1290 (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
1291 (WebCore::HTMLPlugInImageElement::willRecalcStyle):
1292 * html/HTMLPlugInImageElement.h:
1293 * html/HTMLSelectElement.cpp:
1294 * html/HTMLSelectElement.h:
1295 * svg/SVGTRefElement.cpp:
1296 (WebCore::SVGTRefElement::SVGTRefElement):
1297 (WebCore::SVGShadowText::willRecalcStyle):
1298 * svg/SVGUseElement.cpp:
1299 (WebCore::SVGUseElement::SVGUseElement):
1300 (WebCore::SVGUseElement::willRecalcStyle):
1301 (WebCore::SVGUseElement::didRecalcStyle):
1302 * svg/SVGUseElement.h:
1304 2011-09-02 Yuta Kitamura <yutak@chromium.org>
1306 WebSocket: Send Blob as WebSocket binary message
1307 https://bugs.webkit.org/show_bug.cgi?id=67465
1309 Reviewed by Kent Tamura.
1311 Re-lands r94399 with a fix for Leopard builds.
1313 * bindings/js/JSWebSocketCustom.cpp:
1314 (WebCore::JSWebSocket::send):
1315 * bindings/v8/custom/V8WebSocketCustom.cpp:
1316 (WebCore::V8WebSocket::sendCallback):
1317 * websockets/ThreadableWebSocketChannel.h:
1318 * websockets/WebSocket.cpp:
1319 (WebCore::WebSocket::send):
1320 * websockets/WebSocket.h:
1321 * websockets/WebSocket.idl:
1322 * websockets/WebSocketChannel.cpp:
1323 (WebCore::WebSocketChannel::send):
1324 * websockets/WebSocketChannel.h:
1325 * websockets/WorkerThreadableWebSocketChannel.cpp:
1326 (WebCore::WorkerThreadableWebSocketChannel::send):
1327 (WebCore::WorkerThreadableWebSocketChannel::Peer::send):
1328 (WebCore::WorkerThreadableWebSocketChannel::mainThreadSendBlob):
1329 (WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
1330 * websockets/WorkerThreadableWebSocketChannel.h:
1332 2011-09-02 Patrick Gansterer <paroga@webkit.org>
1334 [GTK] Generate gobject bindings for Notification and NotificationCenter
1335 https://bugs.webkit.org/show_bug.cgi?id=67380
1337 Reviewed by Philippe Normand.
1339 * bindings/gobject/GNUmakefile.am:
1341 2011-09-02 Kenichi Ishibashi <bashi@chromium.org>
1343 [chromium] editing/selection/regional-indicators.html timing out on Linux
1344 https://bugs.webkit.org/show_bug.cgi?id=66510
1346 Reviewed by Kent Tamura.
1348 Uses SurrogatePairAwareTextIerator in ComplexTextControllerLinux to handle surrogate pairs correctly.
1350 No new tests. editing/selection/regional-indicators.html should pass with this patch.
1352 * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
1353 (WebCore::ComplexTextController::nextScriptRun): Used SurrogatePairAwareTextIterator to split run.
1354 (WebCore::surrogatePairAwareFirstCharacter): Added.
1355 (WebCore::ComplexTextController::setupFontForScriptRun): Used surrogatePairAwareFirstCharacter() to get appropriate FontData.
1357 2011-09-02 Sheriff Bot <webkit.review.bot@gmail.com>
1359 Unreviewed, rolling out r94399.
1360 http://trac.webkit.org/changeset/94399
1361 https://bugs.webkit.org/show_bug.cgi?id=67471
1363 Broke Leopard build (Requested by yutak on #webkit).
1365 * bindings/js/JSWebSocketCustom.cpp:
1366 * bindings/v8/custom/V8WebSocketCustom.cpp:
1367 * websockets/ThreadableWebSocketChannel.h:
1368 * websockets/WebSocket.cpp:
1369 * websockets/WebSocket.h:
1370 * websockets/WebSocket.idl:
1371 * websockets/WebSocketChannel.cpp:
1372 (WebCore::WebSocketChannel::send):
1373 * websockets/WebSocketChannel.h:
1374 * websockets/WorkerThreadableWebSocketChannel.cpp:
1375 * websockets/WorkerThreadableWebSocketChannel.h:
1377 2011-09-02 Sheriff Bot <webkit.review.bot@gmail.com>
1379 Unreviewed, rolling out r94393.
1380 http://trac.webkit.org/changeset/94393
1381 https://bugs.webkit.org/show_bug.cgi?id=67470
1383 It broke Qt-SL build (Requested by ossy on #webkit).
1387 2011-09-02 Kenichi Ishibashi <bashi@chromium.org>
1389 [Chromium] Webfonts display bold in Windows
1390 https://bugs.webkit.org/show_bug.cgi?id=67387
1392 Uses font's default weight for webfonts by setting FW_DONTCARE.
1394 Reviewed by Kent Tamura.
1396 No new tests. We don't have fonts to test this change.
1398 * platform/graphics/skia/FontCustomPlatformData.cpp:
1399 (WebCore::FontCustomPlatformData::fontPlatformData): Sets FW_DONTCARE to use default font weight.
1401 2011-09-02 Yuta Kitamura <yutak@chromium.org>
1403 WebSocket: Send Blob as WebSocket binary message
1404 https://bugs.webkit.org/show_bug.cgi?id=67465
1406 Reviewed by Kent Tamura.
1408 Tests: http/tests/websocket/tests/hixie76/send-empty.html
1409 http/tests/websocket/tests/hixie76/send-object.html
1410 http/tests/websocket/tests/hybi/send-blob.html
1411 http/tests/websocket/tests/hybi/send-empty.html
1412 http/tests/websocket/tests/hybi/send-file-blob-fail.html
1413 http/tests/websocket/tests/hybi/send-file-blob.html
1414 http/tests/websocket/tests/hybi/workers/send-blob.html
1415 http/tests/websocket/tests/hybi/bufferedAmount-after-close.html (updated)
1417 * bindings/js/JSWebSocketCustom.cpp:
1418 (WebCore::JSWebSocket::send):
1419 * bindings/v8/custom/V8WebSocketCustom.cpp:
1420 (WebCore::V8WebSocket::sendCallback):
1421 * websockets/ThreadableWebSocketChannel.h:
1422 * websockets/WebSocket.cpp:
1423 (WebCore::WebSocket::send):
1424 * websockets/WebSocket.h:
1425 * websockets/WebSocket.idl:
1426 Fixing code generator did not sound easy, because there are some classes depending on
1427 broken behavior of current code generator (one such example is CanvasRenderingContext2D).
1428 As a temporary workaround, new custom handlers for send() are added.
1429 * websockets/WebSocketChannel.cpp:
1430 (WebCore::WebSocketChannel::send):
1431 * websockets/WebSocketChannel.h:
1432 * websockets/WorkerThreadableWebSocketChannel.cpp:
1433 (WebCore::WorkerThreadableWebSocketChannel::send):
1434 (WebCore::WorkerThreadableWebSocketChannel::Peer::send):
1435 (WebCore::WorkerThreadableWebSocketChannel::mainThreadSendBlob):
1436 A Blob can be deserialized from url, type and size.
1437 (WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
1438 KURL, String and long long (corresponding to url, type and size, respectively) can be passed
1439 safely across threads.
1440 * websockets/WorkerThreadableWebSocketChannel.h:
1442 2011-09-02 Philippe Normand <pnormand@igalia.com>
1444 [WebAudio] Undeclared dependency to VIDEO
1445 https://bugs.webkit.org/show_bug.cgi?id=66893
1447 Reviewed by Kenneth Russell.
1449 Build MediaAudioSourceNode only if VIDEO is enabled
1451 * webaudio/AudioContext.cpp:
1452 * webaudio/AudioContext.h:
1453 * webaudio/AudioContext.idl:
1454 * webaudio/MediaElementAudioSourceNode.cpp:
1455 * webaudio/MediaElementAudioSourceNode.h:
1456 * webaudio/MediaElementAudioSourceNode.idl:
1458 2011-09-02 Csaba Osztrogonác <ossy@webkit.org>
1460 [Qt][WK2] Unreviewed speculative buildfix.
1462 * WebCore.pro: Add platform/graphics/GlyphPageTreeNode.cpp to SOURCES.
1464 2011-09-02 Sheriff Bot <webkit.review.bot@gmail.com>
1466 Unreviewed, rolling out r94389.
1467 http://trac.webkit.org/changeset/94389
1468 https://bugs.webkit.org/show_bug.cgi?id=67468
1470 breaks mac build (Requested by philn-tp on #webkit).
1472 * webaudio/AudioContext.cpp:
1473 (WebCore::AudioContext::createMediaElementSource):
1474 * webaudio/AudioContext.h:
1475 * webaudio/AudioContext.idl:
1476 * webaudio/MediaElementAudioSourceNode.cpp:
1477 * webaudio/MediaElementAudioSourceNode.h:
1478 * webaudio/MediaElementAudioSourceNode.idl:
1480 2011-09-02 Kentaro Hara <haraken@google.com>
1482 Generate an EventSource constructor of V8 using the IDL 'Constructor' extended attribute
1483 https://bugs.webkit.org/show_bug.cgi?id=67459
1485 Reviewed by Adam Barth.
1487 Tests: fast/eventsource/eventsource-constructor.html
1488 fast/eventsource/eventsource-attribute-listeners.html
1490 * WebCore.gypi: Removed V8EventSourceConstructor.cpp.
1491 * WebCore.pro: Removed V8EventSourceConstructor.cpp.
1492 * bindings/v8/custom/V8EventSourceConstructor.cpp: Removed.
1493 * page/EventSource.idl: Added the 'Constructor' extended attribute.
1495 2011-09-02 Philippe Normand <pnormand@igalia.com>
1497 [WebAudio] Undeclared dependency to VIDEO
1498 https://bugs.webkit.org/show_bug.cgi?id=66893
1500 Reviewed by Kenneth Russell.
1502 Build MediaAudioSourceNode only if VIDEO is enabled
1504 * webaudio/AudioContext.cpp:
1505 * webaudio/AudioContext.h:
1506 * webaudio/AudioContext.idl:
1507 * webaudio/MediaElementAudioSourceNode.cpp:
1508 * webaudio/MediaElementAudioSourceNode.h:
1509 * webaudio/MediaElementAudioSourceNode.idl:
1511 2011-09-01 Takashi Toyoshima <toyoshim@chromium.org>
1513 [WebSocket] Implement WebSocket::close() code and reason handling.
1514 https://bugs.webkit.org/show_bug.cgi?id=66925
1516 Reviewed by Kent Tamura.
1518 Tests: http/tests/websocket/tests/hybi/close.html
1519 http/tests/websocket/tests/hybi/workers/close.html
1521 * bindings/js/JSWebSocketCustom.cpp:
1522 (WebCore::JSWebSocket::close):
1523 * bindings/v8/custom/V8WebSocketCustom.cpp:
1524 (WebCore::V8WebSocket::closeCallback):
1525 Add custom bridge for WebSocket::close().
1526 * websockets/ThreadableWebSocketChannel.h:
1527 * websockets/WebSocket.cpp:
1528 (WebCore::WebSocket::close):
1529 * websockets/WebSocket.h:
1530 * websockets/WebSocket.idl:
1531 * websockets/WebSocketChannel.cpp:
1532 (WebCore::WebSocketChannel::close):
1533 Add code and reason arguments handling.
1534 (WebCore::WebSocketChannel::startClosingHandshake):
1535 Send a close frame without code and reason on server initiated closing handshakes.
1536 (WebCore::WebSocketChannel::processFrame):
1537 (WebCore::WebSocketChannel::processFrameHixie76):
1538 * websockets/WebSocketChannel.h:
1539 * websockets/WorkerThreadableWebSocketChannel.cpp:
1540 (WebCore::WorkerThreadableWebSocketChannel::close):
1541 (WebCore::WorkerThreadableWebSocketChannel::Peer::close):
1542 (WebCore::WorkerThreadableWebSocketChannel::mainThreadClose):
1543 (WebCore::WorkerThreadableWebSocketChannel::Bridge::close):
1544 * websockets/WorkerThreadableWebSocketChannel.h:
1545 Add code and reason arguments handling.
1547 2011-09-01 Mark Rowe <mrowe@apple.com>
1549 Fix the build by adding some more missing return types.
1551 * page/mac/WebCoreViewFactory.m:
1552 (-[WebCoreViewFactory init]):
1554 2011-09-01 Michael Nordman <michaeln@google.com>
1556 [Chromium] Fix a crashing bug due to raciness around SQL database shutdown.
1557 https://bugs.webkit.org/show_bug.cgi?id=67457
1559 The removeOpenDatabase() method can get called multiple times.
1560 Subsequent calls to it should be harmeless instead of cause a crash.
1562 Reviewed by David Levin.
1564 * storage/chromium/DatabaseTrackerChromium.cpp:
1565 (WebCore::DatabaseTracker::removeOpenDatabase):
1567 2011-09-01 Kent Tamura <tkent@chromium.org>
1569 The filename text color of a file upload control should be inherited.
1570 https://bugs.webkit.org/show_bug.cgi?id=67368
1572 Reviewed by Darin Adler.
1575 (input[type="file"]):
1576 Add 'color: inherit'.
1577 The declaration for 'input' contains 'color: initial;'. So a file
1578 upload control has had black foreground color unless it has been
1579 specified 'color' property explicitly.
1580 Because a file upload control uses inherited background color, the
1581 foreground color also should be inherited.
1583 2011-09-01 Kentaro Hara <haraken@google.com>
1585 Generate a Worker constructor of V8 using the IDL 'Constructor' extended attribute
1586 https://bugs.webkit.org/show_bug.cgi?id=67447
1588 Reviewed by Dimitri Glazkov.
1590 Test: fast/workers/worker-constructor.html
1591 fast/workers/worker-event-listener.html
1593 * bindings/v8/custom/V8WorkerCustom.cpp: Removed constructorCallback().
1594 * workers/Worker.idl: Added the 'Constructor' extended attribute.
1596 2011-09-01 Kentaro Hara <haraken@google.com>
1598 Generate a FileReader constructor of V8 using the IDL 'Constructor' extended attribute
1599 https://bugs.webkit.org/show_bug.cgi?id=67412
1601 Reviewed by Adam Barth.
1603 Test: fast/files/blob-slice-test.html
1604 fast/files/file-reader-abort.html
1606 * bindings/v8/custom/V8FileReaderCustom.cpp: Removed constructorCallback().
1607 * fileapi/FileReader.idl: Added the 'Constructor' extended attribute.
1609 2011-09-01 Robert Kroeger <rjkroege@chromium.org>
1611 [chromium] Code cleanup FIXME in Chromium recognizer
1612 https://bugs.webkit.org/show_bug.cgi?id=67448
1614 Reviewed by Adam Barth.
1616 * page/EventHandler.cpp:
1617 (WebCore::EventHandler::handleGestureEvent):
1618 Fixed a bug noticed by a benjaminp while reviewing a different
1619 ndonned patch where global positions were not being set correctly
1620 on gesture-driven mouse wheel events.
1621 * platform/chromium/GestureRecognizerChromium.cpp:
1622 Changed static per-edge functions into methods and improves
1623 encapsulation. No new functionality is present.
1624 (WebCore::GestureRecognizerChromium::GestureRecognizerChromium):
1625 (WebCore::GestureRecognizerChromium::reset):
1626 (WebCore::GestureRecognizerChromium::~GestureRecognizerChromium):
1627 (WebCore::GestureRecognizerChromium::addEdgeFunction):
1628 (WebCore::GestureRecognizerChromium::isInClickTimeWindow):
1629 (WebCore::GestureRecognizerChromium::isInsideManhattanSquare):
1630 (WebCore::GestureRecognizerChromium::appendClickGestureEvent):
1631 (WebCore::GestureRecognizerChromium::processTouchEventForGestures):
1632 (WebCore::GestureRecognizerChromium::appendScrollGestureBegin):
1633 (WebCore::GestureRecognizerChromium::appendScrollGestureEnd):
1634 (WebCore::GestureRecognizerChromium::appendScrollGestureUpdate):
1635 (WebCore::GestureRecognizerChromium::updateValues):
1636 (WebCore::GestureRecognizerChromium::signature):
1637 (WebCore::GestureRecognizerChromium::touchDown):
1638 (WebCore::GestureRecognizerChromium::scrollEnd):
1639 (WebCore::GestureRecognizerChromium::noGesture):
1640 (WebCore::GestureRecognizerChromium::click):
1641 (WebCore::GestureRecognizerChromium::isClickOrScroll):
1642 (WebCore::GestureRecognizerChromium::inScroll):
1643 * platform/chromium/GestureRecognizerChromium.h:
1644 (WebCore::GestureRecognizerChromium::setState):
1646 2011-09-01 Julien Chaffraix <jchaffraix@webkit.org>
1648 Move LayoutRepainter to its own class
1649 https://bugs.webkit.org/show_bug.cgi?id=66255
1651 Reviewed by Hajime Morita.
1653 No new tests, code movement only.
1655 * rendering/RenderObject.h: Moved code from here ...
1656 * rendering/LayoutRepainter.cpp: Added.
1657 (WebCore::LayoutRepainter::LayoutRepainter):
1658 (WebCore::LayoutRepainter::repaintAfterLayout):
1659 * rendering/LayoutRepainter.h: Added.
1660 (WebCore::LayoutRepainter::checkForRepaint):
1661 ... to those 2 files.
1664 * GNUmakefile.list.am:
1667 * WebCore.vcproj/WebCore.vcproj:
1668 * WebCore.xcodeproj/project.pbxproj:
1669 Updated our build systems.
1671 * rendering/RenderingAllInOne.cpp:
1672 Needed for the Windows bot.
1674 * rendering/RenderBlock.cpp:
1675 * rendering/RenderDeprecatedFlexibleBox.cpp:
1676 * rendering/RenderReplaced.cpp:
1677 * rendering/RenderTable.cpp:
1678 * rendering/svg/RenderSVGContainer.cpp:
1679 * rendering/svg/RenderSVGForeignObject.cpp:
1680 * rendering/svg/RenderSVGImage.cpp:
1681 * rendering/svg/RenderSVGPath.cpp:
1682 * rendering/svg/RenderSVGRoot.cpp:
1683 * rendering/svg/RenderSVGText.cpp:
1684 Added #include "LayoutRepainter".
1686 2011-09-01 Ada Chan <adachan@apple.com>
1688 Cleanup refactoring for https://bugs.webkit.org/show_bug.cgi?id=67160
1690 Don't ifdef out the data member xslStyleSheets in MemoryCache::Statistics to cut down
1691 the ifdefs in getWebCoreMemoryCacheStatistics() in WebKit2/WebProcess/WebProcess.cpp.
1693 Reviewed by Darin Adler.
1695 No new tests required. Just small code refactoring.
1697 * loader/cache/MemoryCache.h:
1699 2011-09-01 Julien Chaffraix <jchaffraix@webkit.org>
1701 REGRESSION (r84327-r84329): CSS stylesheets fail to load on www.flagstar.com login page
1702 https://bugs.webkit.org/show_bug.cgi?id=65140
1704 Reviewed by Darin Adler.
1706 Tests: fast/css/stylesheet-enable-first-alternate-link.html
1707 fast/css/stylesheet-enable-first-alternate-on-load-link.html
1708 fast/css/stylesheet-enable-first-alternate-on-load-sheet.html
1709 fast/css/stylesheet-enable-second-alternate-link.html
1710 fast/css/stylesheet-enable-second-alternate-on-load-link.html
1711 fast/css/stylesheet-enable-second-alternate-on-load-sheet.html
1712 http/tests/css/link-css-disabled-value-with-slow-loading-sheet-in-error.html
1713 http/tests/css/link-css-disabled-value-with-slow-loading-sheet.html
1715 This patch basically reverts 88479 and 84329 while keeping the tests
1716 we developped during the implementation.
1718 Following discussion, it looks like HTML5 will need to be amended.
1719 In the meantime, we will just revert the changes so that we can come
1720 up with a better change.
1723 (WebCore::Document::recalcStyleSelector):
1724 * html/HTMLLinkElement.cpp:
1725 (WebCore::HTMLLinkElement::HTMLLinkElement):
1726 (WebCore::HTMLLinkElement::setDisabledState):
1727 (WebCore::HTMLLinkElement::parseMappedAttribute):
1728 (WebCore::HTMLLinkElement::process):
1729 Revert those method to their original content.
1731 * html/HTMLLinkElement.h:
1732 (WebCore::HTMLLinkElement::isDisabled):
1733 (WebCore::HTMLLinkElement::isEnabledViaScript):
1734 (WebCore::HTMLLinkElement::isAlternate):
1735 Re-introduced the DisabledState enum.
1737 * html/HTMLLinkElement.idl: |disabled| is Reflect'ed again.
1739 2011-09-01 Dan Bernstein <mitz@apple.com>
1741 Fix layout test regressions from r94352.
1743 Reviewed by Anders Carlsson.
1745 * platform/graphics/mac/FontCacheMac.mm:
1746 (WebCore::FontCache::getFontDataForCharacters): In the custom font case (that is, when there is
1747 not base NSFont) always get and use the best variation.
1749 2011-09-01 Ryosuke Niwa <rniwa@webkit.org>
1751 Revert r94355 because it caused bunch of builds to break.
1753 * page/DOMWindow.idl:
1755 2011-09-01 Mark Rowe <mrowe@apple.com>
1757 <rdar://problem/10063411> WebScriptObject.h declares an Objective-C method without a return type.
1759 Rubber-stamped by Anders Carlsson.
1761 * bridge/objc/WebScriptObject.h:
1763 2011-09-01 Mark Hahnenberg <mhahnenberg@apple.com>
1765 Unzip initialization lists and constructors in JSCell hierarchy (4/7)
1766 https://bugs.webkit.org/show_bug.cgi?id=67174
1768 Reviewed by Oliver Hunt.
1772 Completed the fourth level of the refactoring to add finishCreation()
1773 methods to all classes within the JSCell hierarchy with non-trivial
1776 This primarily consists of pushing the calls to finishCreation() down
1777 into the constructors of the subclasses of the second level of the hierarchy
1778 as well as pulling the finishCreation() calls out into the class's corresponding
1779 create() method if it has one. Doing both simultaneously allows us to
1780 maintain the invariant that the finishCreation() method chain is called exactly
1781 once during the creation of an object, since calling it any other number of
1782 times (0, 2, or more) will cause an assertion failure.
1784 * bindings/js/JSDOMWindowShell.cpp:
1785 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
1786 (WebCore::JSDOMWindowShell::create):
1787 * bindings/js/JSDOMWindowShell.h:
1788 * bindings/js/JSDOMWrapper.h:
1789 (WebCore::JSDOMWrapper::JSDOMWrapper):
1790 * bindings/js/ScriptController.cpp:
1791 (WebCore::ScriptController::createWindowShell):
1792 * bindings/scripts/CodeGeneratorJS.pm:
1794 * bindings/scripts/test/JS/JSTestInterface.h:
1795 (WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype):
1796 * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
1797 (WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype):
1798 * bindings/scripts/test/JS/JSTestObj.h:
1799 (WebCore::JSTestObjPrototype::JSTestObjPrototype):
1800 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
1801 (WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
1802 * bridge/objc/objc_runtime.h:
1803 * bridge/objc/objc_runtime.mm:
1804 (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
1805 (JSC::Bindings::ObjcFallbackObjectImp::finishCreation):
1806 * bridge/runtime_array.cpp:
1807 (JSC::RuntimeArray::RuntimeArray):
1808 (JSC::RuntimeArray::finishCreation):
1809 * bridge/runtime_array.h:
1810 * bridge/runtime_object.cpp:
1811 (JSC::Bindings::RuntimeObject::RuntimeObject):
1812 (JSC::Bindings::RuntimeObject::finishCreation):
1813 * bridge/runtime_object.h:
1815 2011-08-31 Adrienne Walker <enne@google.com>
1817 [chromium] Remove unsafe raw GraphicsContext3D pointer from ProgramBinding
1818 https://bugs.webkit.org/show_bug.cgi?id=67003
1820 Reviewed by James Robinson.
1822 ProgramBinding now takes an explicit cleanup call to destroy its
1823 resources. This will assert if it is not called and will leak no
1824 longer potentially dereference a dead pointer.
1826 * platform/graphics/chromium/LayerRendererChromium.cpp:
1827 (WebCore::LayerRendererChromium::borderProgram):
1828 (WebCore::LayerRendererChromium::headsUpDisplayProgram):
1829 (WebCore::LayerRendererChromium::renderSurfaceProgram):
1830 (WebCore::LayerRendererChromium::renderSurfaceMaskProgram):
1831 (WebCore::LayerRendererChromium::tilerProgram):
1832 (WebCore::LayerRendererChromium::tilerProgramSwizzle):
1833 (WebCore::LayerRendererChromium::tilerProgramAA):
1834 (WebCore::LayerRendererChromium::tilerProgramSwizzleAA):
1835 (WebCore::LayerRendererChromium::canvasLayerProgram):
1836 (WebCore::LayerRendererChromium::pluginLayerProgram):
1837 (WebCore::LayerRendererChromium::videoLayerRGBAProgram):
1838 (WebCore::LayerRendererChromium::videoLayerYUVProgram):
1839 (WebCore::LayerRendererChromium::cleanupSharedObjects):
1840 * platform/graphics/chromium/ProgramBinding.cpp:
1841 (WebCore::ProgramBindingBase::ProgramBindingBase):
1842 (WebCore::ProgramBindingBase::~ProgramBindingBase):
1843 (WebCore::ProgramBindingBase::init):
1844 (WebCore::ProgramBindingBase::cleanup):
1845 (WebCore::ProgramBindingBase::loadShader):
1846 (WebCore::ProgramBindingBase::createShaderProgram):
1847 * platform/graphics/chromium/ProgramBinding.h:
1848 (WebCore::ProgramBinding::ProgramBinding):
1849 (WebCore::ProgramBinding::initialize):
1851 2011-09-01 Patrick Gansterer <paroga@webkit.org>
1853 Don't include unnecessary headers in V8 bindings
1854 https://bugs.webkit.org/show_bug.cgi?id=67435
1856 Reviewed by Darin Adler.
1858 When an IDL attribue is Conditonal the corresponding headers
1859 need to be surrounded with the correct #if ENABLE().
1861 * bindings/scripts/CodeGeneratorV8.pm:
1862 * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
1863 * bindings/scripts/test/CPP/WebDOMTestObj.h:
1864 * bindings/scripts/test/JS/JSTestObj.cpp:
1865 * bindings/scripts/test/JS/JSTestObj.h:
1866 * bindings/scripts/test/ObjC/DOMTestObj.h:
1867 * bindings/scripts/test/ObjC/DOMTestObj.mm:
1868 * bindings/scripts/test/TestObj.idl:
1869 * bindings/scripts/test/V8/V8TestObj.cpp:
1871 2011-09-01 Pratik Solanki <psolanki@apple.com>
1873 Rename CFNETWORK_DATA_ARRAY_CALLBACK to NETWORK_CFDATA_ARRAY_CALLBACK
1874 https://bugs.webkit.org/show_bug.cgi?id=67348
1876 Reviewed by Alexey Proskuryakov.
1878 * loader/ResourceLoader.h:
1879 * loader/SubresourceLoader.h:
1880 * loader/cf/SubresourceLoaderCF.cpp:
1881 * loader/mac/ResourceLoaderMac.mm:
1882 * platform/SharedBuffer.cpp:
1883 (WebCore::SharedBuffer::clear):
1884 (WebCore::SharedBuffer::buffer):
1885 * platform/SharedBuffer.h:
1886 * platform/cf/SharedBufferCF.cpp:
1887 * platform/network/ResourceHandle.h:
1888 * platform/network/ResourceHandleClient.h:
1889 * platform/network/cf/ResourceHandleCFNet.cpp:
1890 (WebCore::ResourceHandle::createCFURLConnection):
1891 * platform/network/mac/ResourceHandleMac.mm:
1893 2011-09-01 Kentaro Hara <haraken@google.com>
1895 TypeError should be thrown when a constructor is called as a normal function.
1896 https://bugs.webkit.org/show_bug.cgi?id=67381
1898 Reviewed by Darin Adler.
1900 The spec is here: http://www.w3.org/TR/WebIDL/#es-interface-call
1901 For example, "Image()" or "XMLHttpRequest()" should throw TypeError.
1903 Test: fast/dom/call-a-constructor-as-a-function.html
1905 * bindings/v8/custom/V8ArrayBufferCustom.cpp:
1906 (WebCore::V8ArrayBuffer::constructorCallback): Throws TypeError if args.IsConstructCall() is false.
1907 * bindings/v8/custom/V8ArrayBufferViewCustom.h:
1908 (WebCore::constructWebGLArray): Ditto.
1909 * bindings/v8/custom/V8AudioContextCustom.cpp:
1910 (WebCore::V8AudioContext::constructorCallback): Ditto.
1911 * bindings/v8/custom/V8DOMFormDataCustom.cpp:
1912 (WebCore::V8DOMFormData::constructorCallback): Ditto.
1913 * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
1914 (WebCore::v8HTMLAudioElementConstructorCallback): Ditto.
1915 * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
1916 (WebCore::v8HTMLImageElementConstructorCallback): Ditto.
1917 * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp:
1918 (WebCore::v8HTMLOptionElementConstructorCallback): Ditto.
1919 * bindings/v8/custom/V8MessageChannelConstructor.cpp:
1920 (WebCore::V8MessageChannel::constructorCallback): Ditto.
1921 * bindings/v8/custom/V8SharedWorkerCustom.cpp:
1922 (WebCore::V8SharedWorker::constructorCallback): Ditto.
1923 * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp:
1924 (WebCore::V8WebKitCSSMatrix::constructorCallback): Ditto.
1925 * bindings/v8/custom/V8WebKitPointConstructor.cpp:
1926 (WebCore::V8WebKitPoint::constructorCallback): Ditto.
1927 * bindings/v8/custom/V8WebSocketCustom.cpp:
1928 (WebCore::V8WebSocket::constructorCallback): Ditto.
1929 * bindings/v8/custom/V8WorkerCustom.cpp:
1930 (WebCore::V8Worker::constructorCallback): Ditto.
1932 2011-08-31 Adrienne Walker <enne@google.com>
1934 [chromium] TextureManager overestimates the size of non-RGBA texture formats
1935 https://bugs.webkit.org/show_bug.cgi?id=66917
1937 Reviewed by James Robinson.
1939 Use GraphicsContext3D to determine the size of a given texture format.
1940 Also, make TextureManager use more GraphicsContext3D types.
1942 * platform/graphics/GraphicsContext3D.h:
1943 * platform/graphics/chromium/TextureManager.cpp:
1944 (WebCore::memoryUseBytes):
1945 * platform/graphics/chromium/TextureManager.h:
1947 2011-09-01 Sam Weinig <sam@webkit.org>
1949 Add missing Event constructors to DOMWindow.idl
1950 https://bugs.webkit.org/show_bug.cgi?id=67449
1952 Reviewed by Anders Carlsson.
1954 Covered by existing tests.
1956 * page/DOMWindow.idl:
1958 2011-09-01 Patrick Gansterer <paroga@webkit.org>
1960 Consider Conditional attribute in CodeGenerator for methods
1961 https://bugs.webkit.org/show_bug.cgi?id=67409
1963 Reviewed by Darin Adler.
1965 This change adds appropriate #if ENABLE() lines for the preprocessor around the
1966 generated functions depending on the Conditional attribute in the IDL file.
1968 * bindings/scripts/CodeGeneratorCPP.pm:
1969 (GenerateImplementation):
1970 * bindings/scripts/CodeGeneratorJS.pm:
1971 (GenerateImplementation):
1972 * bindings/scripts/CodeGeneratorObjC.pm:
1973 (GenerateImplementation):
1974 * bindings/scripts/CodeGeneratorV8.pm:
1975 (GenerateImplementation):
1976 * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
1977 * bindings/scripts/test/CPP/WebDOMTestObj.h:
1978 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
1979 * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
1980 * bindings/scripts/test/JS/JSTestObj.cpp:
1981 * bindings/scripts/test/JS/JSTestObj.h:
1982 * bindings/scripts/test/ObjC/DOMTestObj.h:
1983 * bindings/scripts/test/ObjC/DOMTestObj.mm:
1984 * bindings/scripts/test/TestObj.idl:
1985 * bindings/scripts/test/V8/V8TestObj.cpp:
1987 2011-08-29 Nat Duca <nduca@chromium.org>
1989 [chromium] Introduce CCSingleThreadProxy in order to move LayerRenderer to CCLayerTreeHostImpl
1990 https://bugs.webkit.org/show_bug.cgi?id=66807
1992 Reviewed by James Robinson.
1995 * platform/graphics/chromium/ContentLayerChromium.cpp:
1996 (WebCore::ContentLayerChromium::createTextureUpdater):
1997 * platform/graphics/chromium/ImageLayerChromium.cpp:
1998 (WebCore::ImageLayerChromium::createTextureUpdater):
1999 * platform/graphics/chromium/LayerChromium.cpp:
2000 (WebCore::LayerChromium::setLayerRendererRecursive):
2001 * platform/graphics/chromium/LayerChromium.h:
2002 * platform/graphics/chromium/LayerRendererChromium.cpp:
2003 (WebCore::LayerRendererChromium::create):
2004 (WebCore::LayerRendererChromium::LayerRendererChromium):
2005 (WebCore::LayerRendererChromium::initialize):
2006 (WebCore::LayerRendererChromium::close):
2007 (WebCore::LayerRendererChromium::updateLayers):
2008 (WebCore::LayerRendererChromium::drawLayers):
2009 (WebCore::LayerRendererChromium::drawLayersInternal):
2010 (WebCore::LayerRendererChromium::getOffscreenLayerTexture):
2011 (WebCore::LayerRendererChromium::isContextLost):
2012 * platform/graphics/chromium/LayerRendererChromium.h:
2013 (WebCore::LayerRendererChromium::capabilities):
2014 (WebCore::LayerRendererChromium::rootLayerImpl):
2015 (WebCore::LayerRendererChromium::contextSupportsMapSub):
2016 (WebCore::LayerRendererChromium::viewportSize):
2017 * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
2018 * platform/graphics/chromium/TiledLayerChromium.cpp:
2019 (WebCore::TiledLayerChromium::setLayerTreeHost):
2020 * platform/graphics/chromium/VideoLayerChromium.cpp:
2021 (WebCore::VideoLayerChromium::reserveTextures):
2022 * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
2023 (WebCore::CCCanvasLayerImpl::draw):
2024 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2025 (WebCore::CCLayerTreeHost::CCLayerTreeHost):
2026 (WebCore::CCLayerTreeHost::initialize):
2027 (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
2028 (WebCore::CCLayerTreeHost::animateAndLayout):
2029 (WebCore::CCLayerTreeHost::preCommit):
2030 (WebCore::CCLayerTreeHost::commitTo):
2031 (WebCore::CCLayerTreeHost::createCompositorThread):
2032 (WebCore::CCLayerTreeHost::createLayerTreeHostContext3D):
2033 (WebCore::CCLayerTreeHost::createLayerTreeHostImpl):
2034 (WebCore::CCLayerTreeHost::didRecreateGraphicsContext):
2035 (WebCore::CCLayerTreeHost::scheduleComposite):
2036 (WebCore::CCLayerTreeHost::context):
2037 (WebCore::CCLayerTreeHost::compositeAndReadback):
2038 (WebCore::CCLayerTreeHost::finishAllRendering):
2039 (WebCore::CCLayerTreeHost::layerRendererCapabilities):
2040 (WebCore::CCLayerTreeHost::setRootLayer):
2041 (WebCore::CCLayerTreeHost::skiaContext):
2042 (WebCore::CCLayerTreeHost::setViewport):
2043 (WebCore::CCLayerTreeHost::setVisible):
2044 (WebCore::CCLayerTreeHost::loseCompositorContext):
2045 (WebCore::CCLayerTreeHost::contentsTextureManager):
2046 (WebCore::CCLayerTreeHost::composite):
2047 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2048 (WebCore::CCSettings::CCSettings):
2049 (WebCore::LayerRendererCapabilities::LayerRendererCapabilities):
2050 * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.h: Removed.
2051 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
2052 (WebCore::CCLayerTreeHostImpl::create):
2053 (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
2054 (WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
2055 (WebCore::CCLayerTreeHostImpl::commitComplete):
2056 (WebCore::CCLayerTreeHostImpl::context):
2057 (WebCore::CCLayerTreeHostImpl::drawLayers):
2058 (WebCore::CCLayerTreeHostImpl::finishAllRendering):
2059 (WebCore::CCLayerTreeHostImpl::isContextLost):
2060 (WebCore::CCLayerTreeHostImpl::layerRendererCapabilities):
2061 (WebCore::CCLayerTreeHostImpl::present):
2062 (WebCore::CCLayerTreeHostImpl::readback):
2063 (WebCore::CCLayerTreeHostImpl::setRootLayer):
2064 (WebCore::CCLayerTreeHostImpl::setVisible):
2065 (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
2066 (WebCore::CCLayerTreeHostImpl::updateLayers):
2067 (WebCore::CCLayerTreeHostImpl::setViewport):
2068 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
2069 (WebCore::CCLayerTreeHostImpl::layerRenderer):
2070 (WebCore::CCLayerTreeHostImpl::rootLayer):
2071 (WebCore::CCLayerTreeHostImpl::viewportSize):
2072 * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp: Removed.
2073 * platform/graphics/chromium/cc/CCMainThreadTask.h:
2074 (WebCore::MainThreadTask4::create):
2075 (WebCore::MainThreadTask4::MainThreadTask4):
2076 (WebCore::MainThreadTask4::performTask):
2077 (WebCore::MainThreadTask5::create):
2078 (WebCore::MainThreadTask5::MainThreadTask5):
2079 (WebCore::MainThreadTask5::performTask):
2080 (WebCore::createMainThreadTask):
2081 * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
2082 (WebCore::CCPluginLayerImpl::draw):
2083 * platform/graphics/chromium/cc/CCProxy.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostCommitter.cpp.
2084 (WebCore::CCProxy::isMainThread):
2085 (WebCore::CCProxy::isImplThread):
2086 (WebCore::CCProxy::setImplThread):
2087 * platform/graphics/chromium/cc/CCProxy.h: Added.
2088 (WebCore::CCProxy::~CCProxy):
2089 (WebCore::CCProxy::CCProxy):
2090 * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp: Added.
2091 (WebCore::ScopedSetImplThread::ScopedSetImplThread):
2092 (WebCore::ScopedSetImplThread::~ScopedSetImplThread):
2093 (WebCore::CCSingleThreadProxy::create):
2094 (WebCore::CCSingleThreadProxy::CCSingleThreadProxy):
2095 (WebCore::CCSingleThreadProxy::start):
2096 (WebCore::CCSingleThreadProxy::~CCSingleThreadProxy):
2097 (WebCore::CCSingleThreadProxy::compositeAndReadback):
2098 (WebCore::CCSingleThreadProxy::context):
2099 (WebCore::CCSingleThreadProxy::finishAllRendering):
2100 (WebCore::CCSingleThreadProxy::isStarted):
2101 (WebCore::CCSingleThreadProxy::initializeLayerRenderer):
2102 (WebCore::CCSingleThreadProxy::layerRendererCapabilities):
2103 (WebCore::CCSingleThreadProxy::loseCompositorContext):
2104 (WebCore::CCSingleThreadProxy::setNeedsCommitAndRedraw):
2105 (WebCore::CCSingleThreadProxy::setNeedsRedraw):
2106 (WebCore::CCSingleThreadProxy::stop):
2107 (WebCore::CCSingleThreadProxy::skiaContext):
2108 (WebCore::CCSingleThreadProxy::contentsTextureManager):
2109 (WebCore::CCSingleThreadProxy::compositeImmediately):
2110 (WebCore::CCSingleThreadProxy::compositeIfNeeded):
2111 (WebCore::CCSingleThreadProxy::doComposite):
2112 * platform/graphics/chromium/cc/CCSingleThreadProxy.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.h.
2113 * platform/graphics/chromium/cc/CCThreadProxy.cpp: Added.
2114 (WebCore::CCThreadProxy::create):
2115 (WebCore::CCThreadProxy::CCThreadProxy):
2116 (WebCore::CCThreadProxy::~CCThreadProxy):
2117 (WebCore::CCThreadProxy::compositeAndReadback):
2118 (WebCore::CCThreadProxy::context):
2119 (WebCore::CCThreadProxy::finishAllRendering):
2120 (WebCore::CCThreadProxy::isStarted):
2121 (WebCore::CCThreadProxy::initializeLayerRenderer):
2122 (WebCore::CCThreadProxy::layerRendererCapabilities):
2123 (WebCore::CCThreadProxy::loseCompositorContext):
2124 (WebCore::CCThreadProxy::setNeedsCommitAndRedraw):
2125 (WebCore::CCThreadProxy::setNeedsRedraw):
2126 (WebCore::CCThreadProxy::start):
2127 (WebCore::CCThreadProxy::stop):
2128 (WebCore::CCThreadProxy::skiaContext):
2129 (WebCore::CCThreadProxy::contentsTextureManager):
2130 (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
2131 (WebCore::CCThreadProxy::beginFrameAndCommit):
2132 (WebCore::CCThreadProxy::commitOnCCThread):
2133 (WebCore::CCThreadProxy::drawLayersOnCCThread):
2134 (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
2135 (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
2136 (WebCore::CCThreadProxy::initializeImplOnCCThread):
2137 (WebCore::CCThreadProxy::initializeLayerRendererOnCCThread):
2138 (WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):
2139 * platform/graphics/chromium/cc/CCThreadProxy.h: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.h.
2140 * platform/graphics/chromium/cc/CCThreadTask.h:
2141 (WebCore::CCThreadTask5::create):
2142 (WebCore::CCThreadTask5::CCThreadTask5):
2143 (WebCore::CCThreadTask5::performTask):
2144 (WebCore::createCCThreadTask):
2145 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
2146 * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
2147 (WebCore::CCVideoLayerImpl::draw):
2149 2011-09-01 Dan Bernstein <mitz@apple.com>
2151 <rdar://problem/9528843> STIX glyphs not rendered on this stackoverflow answer
2152 https://bugs.webkit.org/show_bug.cgi?id=67444
2154 Reviewed by Darin Adler.
2156 Test: fast/text/fallback-traits-fixup.html
2158 After obtaining STIX Regular as a fallback font for some characters, getFontDataForCharacters()
2159 proceeded to ask for a font from the same family having the desired traits and weight (because
2160 wkGetFontInLanguageForRange() does not preserve traits and weight). The returned font was different
2161 and happened to not contain the desired character.
2163 * platform/graphics/mac/FontCacheMac.mm:
2164 (WebCore::FontCache::getFontDataForCharacters): Only ask for a family member with the desired
2165 traits and weight if the substitute font does not already have them, and only use the returned
2166 member if it actually contains the desired character.
2168 2011-09-01 Kentaro Hara <haraken@google.com>
2170 Generate an XSLTProcessor constructor of V8 using the IDL 'Constructor' extended attribute
2171 https://bugs.webkit.org/show_bug.cgi?id=67414
2173 Reviewed by Dimitri Glazkov.
2175 Test: fast/dom/Window/custom-constructors.html
2176 fast/xsl/default-html.html
2178 * bindings/v8/custom/V8XSLTProcessorCustom.cpp: Removed constructorCallback().
2179 * xml/XSLTProcessor.idl: Added the 'Constructor' extended attribute.
2181 2011-09-01 Eric Carlson <eric.carlson@apple.com>
2183 HTMLMediaElement should use fastHasAttribute instead of hasAttribute
2184 https://bugs.webkit.org/show_bug.cgi?id=67421
2186 Reviewed by Simon Fraser.
2188 Use fastHasAttribute instead of hasAttribute because it is faster, and HTMLMediaElement
2189 doesn't ever need to check style or SVG animated attributes.
2191 No new tests required, this is just an optimization.
2193 * html/HTMLMediaElement.cpp:
2194 (WebCore::HTMLMediaElement::selectMediaResource): hasAttribute -> fastHasAttribute.
2195 (WebCore::HTMLMediaElement::loadResource): Ditto.
2196 (WebCore::HTMLMediaElement::autoplay): Ditto.
2197 (WebCore::HTMLMediaElement::loop): Ditto.
2198 (WebCore::HTMLMediaElement::controls): Ditto.
2199 (WebCore::HTMLMediaElement::selectNextSourceChild): Ditto.
2200 (WebCore::HTMLMediaElement::sourceWasAdded): Ditto.
2202 2011-09-01 Dominic Mazzoni <dmazzoni@google.com>
2204 Add API functions to enable starting and stopping speech input,
2205 and checking the current speech input state.
2206 https://bugs.webkit.org/show_bug.cgi?id=60170
2208 Reviewed by Dimitri Glazkov.
2210 Test: fast/speech/input-text-speechstart.html
2212 * html/shadow/TextControlInnerElements.cpp:
2213 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
2214 (WebCore::InputFieldSpeechButtonElement::startSpeechInput):
2215 (WebCore::InputFieldSpeechButtonElement::stopSpeechInput):
2216 * html/shadow/TextControlInnerElements.h:
2217 * rendering/RenderTextControlSingleLine.cpp:
2218 (WebCore::RenderTextControlSingleLine::speechButtonElement):
2219 * rendering/RenderTextControlSingleLine.h:
2221 2011-09-01 Tim Horton <timothy_horton@apple.com>
2223 REGRESSION: Rendering artifacts on a rotated, pattern filled SVG shape
2224 https://bugs.webkit.org/show_bug.cgi?id=53055
2225 <rdar://problem/8910917>
2227 Reviewed by Simon Fraser.
2229 Make use of wkCGPatternCreateWithImageAndTransform
2230 when tiling patterns in both directions. This helps to avoid
2231 pixel-cracking along pattern tiling boundaries.
2233 Ignore 2D rotation when computing the size of a pattern's tile image,
2234 as it artificially inflates the size of the tile, which can cause
2237 Test: svg/custom/pattern-rotate-gaps.svg
2239 * platform/graphics/cg/PatternCG.cpp:
2240 (WebCore::Pattern::createPlatformPattern):
2241 * rendering/svg/RenderSVGResourcePattern.cpp:
2242 * rendering/svg/SVGImageBufferTools.cpp:
2243 (WebCore::SVGImageBufferTools::roundedImageBufferSize):
2244 * rendering/svg/SVGImageBufferTools.h:
2246 2011-09-01 Patrick Gansterer <paroga@webkit.org>
2248 Unreviewed, rolling out r94284.
2249 http://trac.webkit.org/changeset/94284
2250 https://bugs.webkit.org/show_bug.cgi?id=65050
2252 Broke building without SVG enabled on Chromium.
2254 * page/DOMWindow.idl:
2256 2011-09-01 Alexey Proskuryakov <ap@apple.com>
2258 REGRESSION (r93247): 2 http/tests/misc tests failing on SnowLeopard Intel Release (Tests)
2259 https://bugs.webkit.org/show_bug.cgi?id=67374
2261 Reviewed by Simon Fraser.
2263 * platform/network/cf/ResourceHandleCFNet.cpp:
2264 (WebCore::applyBasicAuthorizationHeader):
2265 * platform/network/mac/ResourceHandleMac.mm:
2266 (WebCore::applyBasicAuthorizationHeader):
2267 Some versions of CFNetwork carry along an Authorization header, some don't. We shouldn't
2268 repeat its value twice, this is not one of those headers that allow comma separated lists
2271 2011-09-01 Noel Gordon <noel.gordon@gmail.com>
2273 [chromium] Move ImageBuffer::platformLayer()
2274 https://bugs.webkit.org/show_bug.cgi?id=67372
2276 Reviewed by Kenneth Russell.
2278 No new tests: refactoring only, covered by existting tests.
2280 * platform/graphics/skia/ImageBufferSkia.cpp:
2281 (WebCore::ImageBuffer::platformLayer): Move it away from the toDataURL code.
2283 2011-09-01 Kulanthaivel Palanichamy <kulanthaivel@codeaurora.org>
2285 Focus ring is rendered incorrectly for a block with -webkit-writing-mode
2286 https://bugs.webkit.org/show_bug.cgi?id=62915
2288 Reviewed by Simon Fraser.
2290 RenderBlock::addFocusRingRects() should consider physical box position and
2291 dimension instead of logical values for focus ring rects calculation.
2293 Test: fast/css/focus-ring-multiline-writingmode-vertical.html
2295 * rendering/RenderBlock.cpp:
2296 (WebCore::RenderBlock::addFocusRingRects):
2298 2011-09-01 Philippe Normand <pnormand@igalia.com>
2300 Unreviewed, GTK build fix after r94299.
2302 * GNUmakefile.list.am:
2304 2011-09-01 Brian Salomon <bsalomon@google.com>
2306 [Chromium/Skia] Use GraphicsContext3D::grContext() to create GrContext for accelerated drawing
2307 https://bugs.webkit.org/show_bug.cgi?id=67419
2309 Reviewed by James Robinson.
2311 Accelerated drawing is not enabled in layout tests. However, once it is this change will be tested by every test.
2313 * platform/graphics/chromium/ContentLayerChromium.cpp:
2314 (WebCore::ContentLayerChromium::createTextureUpdater):
2315 * platform/graphics/chromium/LayerRendererChromium.cpp:
2316 (WebCore::contextSupportsAcceleratedPainting):
2317 (WebCore::LayerRendererChromium::initialize):
2318 * platform/graphics/chromium/LayerRendererChromium.h:
2319 * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
2320 (WebCore::LayerTextureUpdaterSkPicture::create):
2321 (WebCore::LayerTextureUpdaterSkPicture::LayerTextureUpdaterSkPicture):
2322 (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
2323 (WebCore::LayerTextureUpdaterSkPicture::createFrameBuffer):
2324 * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
2326 2011-09-01 Dominik Röttsches <dominik.rottsches@linux.intel.com>
2328 Rename GraphicsContext3DInternal to GraphicsContext3DPrivate and add a dummy version of this class for Mac
2329 https://bugs.webkit.org/show_bug.cgi?id=67172
2331 Build fix, completing rename for GTK file.
2333 Reviewed by Chris Marrin.
2335 * platform/graphics/gtk/GraphicsContext3DPrivate.cpp: Renamed from Source/WebCore/platform/graphics/gtk/GraphicsContext3DInternal.cpp.
2337 (WebCore::activeGraphicsContexts):
2338 (WebCore::GraphicsContext3DPrivate::addActiveGraphicsContext):
2339 (WebCore::GraphicsContext3DPrivate::removeActiveGraphicsContext):
2340 (WebCore::GraphicsContext3DPrivate::cleanupActiveContextsAtExit):
2341 (WebCore::GraphicsContext3DPrivate::create):
2342 (WebCore::GraphicsContext3DPrivate::createPbufferContext):
2343 (WebCore::GraphicsContext3DPrivate::createPixmapContext):
2344 (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
2345 (WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
2346 (WebCore::GraphicsContext3DPrivate::makeContextCurrent):
2348 2011-09-01 Simon Fraser <simon.fraser@apple.com>
2350 REGRESSION (r94259): Two tests doing hit testing were broken by this change.
2351 https://bugs.webkit.org/show_bug.cgi?id=67353
2353 Reviewed by Chris Marrin.
2355 Fix a regression from r94259; that change missed a fix in RenderView,
2356 which affects coordinate transforms in position:fixed elements.
2358 This fixes these tests:
2359 fast/events/document-elementFromPoint.html
2360 fast/events/offsetX-offsetY.html
2361 plugins/mouse-events-fixedpos.html
2363 * rendering/RenderView.cpp:
2364 (WebCore::RenderView::mapAbsoluteToLocalPoint):
2366 2011-09-01 Tony Gentilcore <tonyg@chromium.org>
2368 [chromium] Fonts returned by FontCache::getFontDataForCharacters() are never released
2369 https://bugs.webkit.org/show_bug.cgi?id=66673
2371 Reviewed by James Robinson.
2373 This was fixed for other ports in http://trac.webkit.org/changeset/88260.
2374 However, it was missed in FontCacheLinux likely due to similar param in the nested call to getCachedFontPlatformData().
2376 No new tests because no directly observable change in behavior.
2378 * platform/graphics/chromium/FontCacheLinux.cpp:
2379 (WebCore::FontCache::getFontDataForCharacters):
2381 2011-08-31 Mikhail Naganov <mnaganov@chromium.org>
2383 Web Inspector: [Chromium] Perform a more effective JS GC
2384 https://bugs.webkit.org/show_bug.cgi?id=67304
2386 Reviewed by Pavel Feldman.
2388 * bindings/v8/ScriptProfiler.cpp:
2389 (WebCore::ScriptProfiler::collectGarbage):
2391 2011-09-01 Sam Weinig <sam@webkit.org>
2393 WebGLContextEvent should have its own JS wrapper
2394 https://bugs.webkit.org/show_bug.cgi?id=67352
2396 Reviewed by Anders Carlsson.
2398 The WebGLContextEvent was missing a proper JS wrapper, and thus
2399 anyone using one in an EventListener was actually just getting
2400 a plain old Event. Rectify this by generating the wrapper and
2401 wrapping it on creating.
2403 Test: fast/canvas/webgl/WebGLContextEvent.html
2405 * CodeGenerators.pri:
2406 Add WebGLContextEvent.idl
2408 * DerivedSources.make:
2409 Add WebGLContextEvent and sort.
2411 * WebCore.xcodeproj/project.pbxproj:
2412 Add generated JSWebGLContextEvent.h/cpp.
2414 * bindings/js/JSEventCustom.cpp:
2416 Wrap WebGLContextEvents as JSWebGLContextEvents.
2419 (WebCore::Event::isWebGLContextEvent):
2421 * html/canvas/WebGLContextEvent.cpp:
2422 (WebCore::WebGLContextEvent::isWebGLContextEvent):
2423 * html/canvas/WebGLContextEvent.h:
2424 Add predicate for WebGLContextEvent.
2426 2011-09-01 Eric Carlson <eric.carlson@apple.com>
2428 Add 'muted' content attribute to HTMLMediaElement
2429 https://bugs.webkit.org/show_bug.cgi?id=58369
2431 Reviewed by Darin Adler.
2433 Test: media/video-defaultmuted.html
2435 * html/HTMLAttributeNames.in: Add muted.
2436 * html/HTMLMediaElement.cpp:
2437 (WebCore::HTMLMediaElement::loadResource): Deal with the 'muted' attribute.
2438 * html/HTMLMediaElement.idl: Add defaultMuted.
2440 2011-09-01 Tim Horton <timothy_horton@apple.com>
2442 REGRESSION: Rendering artifacts on a rotated, pattern filled shape
2443 https://bugs.webkit.org/show_bug.cgi?id=53055
2444 <rdar://problem/8910917>
2446 Reviewed by Simon Fraser.
2448 Introduce wkCGPatternCreateWithImageAndTransform.
2451 * platform/mac/WebCoreSystemInterface.h:
2452 * platform/mac/WebCoreSystemInterface.mm:
2454 2011-08-30 Adrienne Walker <enne@google.com>
2456 [chromium] Fix scissor rects on clipped nested iframes
2457 https://bugs.webkit.org/show_bug.cgi?id=67221
2459 Reviewed by James Robinson.
2461 Layers that mask to bounds (like iframes) weren't being properly
2462 clipped if their parent scissor rect was empty. This case happens
2463 when a parent iframe is clipped. Fixed by propagating the empty
2464 scissor rect to child layers rather than ignoring it.
2466 Test: compositing/iframes/nested-composited-iframe.html
2468 * platform/graphics/chromium/LayerRendererChromium.cpp:
2470 2011-08-31 Yury Semikhatsky <yurys@chromium.org>
2472 Web Inspector: close dedicated worker inspectors when page inspector is closing
2473 https://bugs.webkit.org/show_bug.cgi?id=67366
2475 Close all dedicated worker inspector windows when page inspector is closing.
2477 Reviewed by Pavel Feldman.
2479 * inspector/front-end/WorkerManager.js:
2480 (WebInspector.WorkerManager.prototype._openInspectorWindow):
2481 (WebInspector.WorkerManager.prototype._pageInspectorClosing):
2482 (WebInspector.WorkerManager.prototype._workerInspectorClosing):
2483 * inspector/front-end/inspector.js:
2484 (WebInspector.close):
2486 2011-08-31 Yury Semikhatsky <yurys@chromium.org>
2488 [Chromium] Web Inspector: dedicated worker inspection is broken
2489 https://bugs.webkit.org/show_bug.cgi?id=67279
2491 Provide transport for inspector messages between Page and DedicatedWorker inspectors
2492 in case of in-process workers.
2494 Reviewed by Pavel Feldman.
2496 * inspector/CodeGeneratorInspector.pm: sendMessageObjectToBackend should accept message
2497 object which is ready for sending to backend. This method is overriden in WorkerManager
2498 for dedicated workers and we don't want to replicate request id assignment there.
2499 * workers/WorkerMessagingProxy.cpp:
2500 (WebCore::PostMessageToPageInspectorTask::create):
2501 (WebCore::PostMessageToPageInspectorTask::PostMessageToPageInspectorTask):
2502 (WebCore::PostMessageToPageInspectorTask::performTask):
2503 (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
2504 (WebCore::connectToWorkerContextInspectorTask):
2505 (WebCore::WorkerMessagingProxy::connectToInspector):
2506 (WebCore::disconnectFromWorkerContextInspectorTask):
2507 (WebCore::WorkerMessagingProxy::disconnectFromInspector):
2508 (WebCore::dispatchOnInspectorBackendTask):
2509 (WebCore::WorkerMessagingProxy::sendMessageToInspector):
2510 (WebCore::WorkerMessagingProxy::postMessageToPageInspector):
2511 * workers/WorkerMessagingProxy.h:
2513 2011-09-01 Csaba Osztrogonác <ossy@webkit.org>
2515 [CSS3 Backgrounds and Borders] Implement border-image-slice
2516 https://bugs.webkit.org/show_bug.cgi?id=67321
2518 * WebCore.pro: Unreviewed buildfix after Dave "scattered" Hyatt (r94299).
2520 2011-09-01 Ned Holbrook <nholbrook@apple.com>
2522 Typesetting features need not force complex for single-character runs
2523 https://bugs.webkit.org/show_bug.cgi?id=66498
2525 Typesetting features have no effect on a solitary character, so they shouldn't enable complex layout
2526 unless multiple characters are present.
2528 Reviewed by Dan Bernstein.
2530 No new tests, this is merely a performance optimization.
2532 * platform/graphics/Font.cpp:
2533 (WebCore::Font::codePath): typesettingFeatures() only forces Complex for multiple-character runs.
2535 2011-08-31 Jeff Miller <jeffm@apple.com>
2537 Defer creating AVPlayer and AVPlayerItem in MediaPlayerPrivateAVFoundation::setPreload()
2538 https://bugs.webkit.org/show_bug.cgi?id=66253
2540 Reviewed by Jon Honeycutt.
2542 No new tests, should be covered by existing media tests.
2544 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2545 (WebCore::MediaPlayerPrivateAVFoundation::setPreload): Use the same code on Mac and Windows to only create the AVPlayer and AVPlayerItem when needed.
2547 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2548 (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer): Assign any existing AVPlayerItem to the new AVPlayer.
2549 (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): Allow creation of the AVPlayerItem before the AVPlayer.
2551 2011-08-31 David Hyatt <hyatt@apple.com>
2553 https://bugs.webkit.org/show_bug.cgi?id=67321
2555 Implement border-image-slice. This will eventually be a component of the new border-image shorthand
2556 property. It holds the cuts that you make into the border image along with a new optional "fill"
2557 keyword that indicates whether or not the center should be filled with the middle slice of the image.
2559 By default -webkit-border-image has always filled, but this does not match the specification. To preserve
2560 backwards compatibility, -webkit-border-image will continue to fill by default, but this does slightly affect
2561 computed style results, since the "fill" keyword will now be included in property dumps.
2563 Reviewed by Beth Dakin.
2565 Added fast/borders/border-image-slices.html.
2570 * WebCore.vcproj/WebCore.vcproj:
2571 * WebCore.xcodeproj/project.pbxproj:
2572 * css/CSSBorderImageSliceValue.cpp: Added.
2573 (WebCore::CSSBorderImageSliceValue::CSSBorderImageSliceValue):
2574 (WebCore::CSSBorderImageSliceValue::~CSSBorderImageSliceValue):
2575 (WebCore::CSSBorderImageSliceValue::cssText):
2576 * css/CSSBorderImageSliceValue.h: Added.
2577 (WebCore::CSSBorderImageSliceValue::create):
2578 (WebCore::CSSBorderImageSliceValue::isBorderImageSliceValue):
2579 Add a new CSSBorderImageSliceValue that holds both the four slices (as a CSS rect) and the
2580 fill keyword (as a boolean). Note that the cssText() dumping of the slices has been refined
2581 to be smarter, and it will no longer dump repeating values.
2583 * css/CSSBorderImageValue.cpp:
2584 (WebCore::CSSBorderImageValue::CSSBorderImageValue):
2585 (WebCore::CSSBorderImageValue::cssText):
2586 * css/CSSBorderImageValue.h:
2587 (WebCore::CSSBorderImageValue::create):
2588 CSSBorderImageValue now owns a CSSBorderImageSliceValue instead of just a CSS rect.
2590 * css/CSSComputedStyleDeclaration.cpp:
2591 (WebCore::valueForNinePieceImageSlice):
2592 (WebCore::valueForNinePieceImage):
2593 Add a new method, valueForNinePieceImageSlice, for getting the slices plus the fill value
2594 from the NinePieceImage and putting it into a CSSBorderImageSliceValue. This method is now used by
2595 valueForNinePieceImage to get the CSSBorderImageSliceValue that is part of the overall
2596 CSSBorderImageValue.
2598 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2599 Adding support for the new properties: border-image-slice and -webkit-mask-box-image-slice.
2601 * css/CSSParser.cpp:
2602 (WebCore::CSSParser::parseValue):
2603 (WebCore::BorderImageParseContext::BorderImageParseContext):
2604 (WebCore::BorderImageParseContext::allowBreak):
2605 (WebCore::BorderImageParseContext::commitImage):
2606 (WebCore::BorderImageParseContext::commitSlice):
2607 (WebCore::BorderImageParseContext::commitSlash):
2608 (WebCore::BorderImageParseContext::commitBorderImage):
2609 (WebCore::CSSParser::parseBorderImage):
2610 Modify parseBorderImage to no longer parse the slices itself. Instead it farms out the parsing
2611 to parseBorderImageSlice.
2613 (WebCore::BorderImageSliceParseContext::BorderImageSliceParseContext):
2614 (WebCore::BorderImageSliceParseContext::allowNumber):
2615 (WebCore::BorderImageSliceParseContext::allowFill):
2616 (WebCore::BorderImageSliceParseContext::allowFinalCommit):
2617 (WebCore::BorderImageSliceParseContext::top):
2618 (WebCore::BorderImageSliceParseContext::commitNumber):
2619 (WebCore::BorderImageSliceParseContext::commitFill):
2620 (WebCore::BorderImageSliceParseContext::setAllowFinalCommit):
2621 (WebCore::BorderImageSliceParseContext::setTop):
2622 (WebCore::BorderImageSliceParseContext::commitBorderImageSlice):
2623 (WebCore::CSSParser::parseBorderImageSlice):
2624 Slice parsing has now been broken out so that it can be parsed as a single property. In addition
2625 support for the "fill" keyword has been added to control image filling.
2628 Modified to add the new parseBorderImageSlice method.
2630 * css/CSSPropertyNames.in:
2631 Add the new properties: border-image-slice and -webkit-mask-box-image-slice.
2633 * css/CSSStyleSelector.cpp:
2634 (WebCore::CSSStyleSelector::applyProperty):
2635 (WebCore::CSSStyleSelector::mapNinePieceImage):
2636 Rework mapNinePieceImage to call mapNinePieceImageSlice so that the mapping can be done just for
2639 (WebCore::CSSStyleSelector::mapNinePieceImageSlice):
2640 A new method that handles mapping just the slices into the front-end NinePieceImage.
2642 (WebCore::CSSStyleSelector::loadPendingImages):
2643 Modified to ensure the fill value is preserved when box-reflect makes a new NinePieceImage.
2645 * css/CSSStyleSelector.h:
2646 Added the new mapNinePieceImageSlice method.
2649 (WebCore::CSSValue::isBorderImageSliceValue):
2650 Virtual function for identifying border image slice values.
2652 * rendering/RenderBoxModelObject.cpp:
2653 (WebCore::RenderBoxModelObject::paintNinePieceImage):
2654 The painting of the nine piece image has been modified to match the specification. The "fill"
2655 keyword controls whether or not the middle is painted.
2657 * rendering/style/NinePieceImage.cpp:
2658 (WebCore::NinePieceImage::operator==):
2659 The fill keyword has to be checked now for equality.
2661 * rendering/style/NinePieceImage.h:
2662 (WebCore::NinePieceImage::NinePieceImage):
2663 (WebCore::NinePieceImage::fill):
2664 (WebCore::NinePieceImage::setFill):
2665 Added the fill keyword to the front end NinePieceImage.
2667 (WebCore::NinePieceImage::copySlicesFrom):
2668 Added a helper to copy only the slices over from another NinePieceImage. Used when inheriting
2669 the border-image-slice property from a parent style.
2671 2011-09-01 Vsevolod Vlasov <vsevik@chromium.org>
2673 Web Inspector: Decode query/form parameters names as well as values.
2674 https://bugs.webkit.org/show_bug.cgi?id=67393
2676 Reviewed by Yury Semikhatsky.
2678 * inspector/front-end/ResourceHeadersView.js:
2679 (WebInspector.ResourceHeadersView.prototype._decodeURIComponent):
2680 (WebInspector.ResourceHeadersView.prototype._refreshParms):
2682 2011-08-31 Pavel Podivilov <podivilov@chromium.org>
2684 Web Inspector: remove PresentationBreakpoint class.
2685 https://bugs.webkit.org/show_bug.cgi?id=67275
2687 Reviewed by Yury Semikhatsky.
2689 * inspector/front-end/BreakpointsSidebarPane.js:
2690 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.addBreakpoint.didRequestContent):
2691 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.addBreakpoint):
2692 * inspector/front-end/DebuggerPresentationModel.js:
2693 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
2694 (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
2696 2011-08-31 Steve Block <steveblock@google.com>
2698 Clean up all mentions of Android in comments
2699 https://bugs.webkit.org/show_bug.cgi?id=67303
2701 Also removes some superfluous guards and methods added for Android.
2703 Reviewed by Darin Adler.
2705 No new tests, removing dead code only.
2708 Chromium uses this file only on Mac, so these Android guards are no
2710 * bindings/v8/NPV8Object.cpp:
2711 * bindings/v8/NPV8Object.h:
2712 Including npruntime.h for non-Chromium ports was added in
2713 http://trac.webkit.org/changeset/53634 for Android. However, this
2714 file is included in WebCore.pro, so leaving the guard in place.
2715 * bindings/v8/ScriptCachedFrameData.h:
2716 This code was added for Android in
2717 http://trac.webkit.org/changeset/56716 but is now also used by QT. The
2718 comment should have been removed in
2719 http://trac.webkit.org/changeset/93573.
2721 (WebCore::Document::Document):
2722 (WebCore::Document::isLayoutTimerActive):
2723 (WebCore::Document::minimumLayoutDelay):
2725 This method was added for Android in
2726 http://trac.webkit.org/changeset/52919 and modified in
2727 http://trac.webkit.org/changeset/79775. It is no longer needed.
2729 2011-09-01 Kristóf Kosztyó <kkristof@inf.u-szeged.hu>
2731 [Qt] Build dependency problems
2732 https://bugs.webkit.org/show_bug.cgi?id=38054
2734 Make clean build after the defines are changed.
2736 Reviewed by Csaba Osztrogonác.
2740 2011-09-01 Vsevolod Vlasov <vsevik@chromium.org>
2742 Web Inspector: Network error messages in console should link to the respective request in network panel if there is one.
2743 https://bugs.webkit.org/show_bug.cgi?id=65550
2745 Reviewed by Yury Semikhatsky.
2747 * inspector/front-end/ConsoleMessage.js:
2748 (WebInspector.ConsoleMessage.prototype._formatMessage):
2749 * inspector/front-end/NetworkPanel.js:
2750 (WebInspector.NetworkLogView.prototype.refresh):
2751 (WebInspector.NetworkLogView.prototype.switchToBriefView):
2752 (WebInspector.NetworkLogView.prototype.searchCanceled):
2753 (WebInspector.NetworkLogView.prototype.revealAndHighlightResource):
2754 (WebInspector.NetworkLogView.prototype._removeAllNodeHighlights):
2755 (WebInspector.NetworkLogView.prototype._highlightNode):
2756 (WebInspector.NetworkPanel.prototype._resourceByAnchor):
2757 (WebInspector.NetworkPanel.prototype.canShowAnchorLocation):
2758 (WebInspector.NetworkPanel.prototype.showAnchorLocation):
2759 * inspector/front-end/networkLogView.css:
2760 (.network-log-grid tr.highlighted-row):
2764 2011-09-01 Patrick Gansterer <paroga@webkit.org>
2766 Replace preprocessor statements in DOMWindow.idl with Conditional attribute
2767 https://bugs.webkit.org/show_bug.cgi?id=65050
2769 Reviewed by Brent Fulgham.
2771 Many attributes use the [Conditional=XXX] syntax already.
2772 Unify the declaration of conditional attributes of DOMWindow
2773 with the corresponding Conditional attribute.
2774 This reduces the need of the preprocessor which is the
2775 the source of much pain on native windows.
2777 * page/DOMWindow.idl:
2779 2011-09-01 Yuta Kitamura <yutak@chromium.org>
2781 WebSocket: Fix bufferedAmount after WebSocket is closed
2782 https://bugs.webkit.org/show_bug.cgi?id=67363
2784 Reviewed by Kent Tamura.
2786 Test: http/tests/websocket/tests/hybi/bufferedAmount-after-close.html (updated)
2788 * websockets/WebSocket.cpp:
2789 (WebCore::WebSocket::send):
2790 (WebCore::WebSocket::getFramingOverhead):
2791 * websockets/WebSocket.h:
2793 2011-09-01 Keishi Hattori <keishi@webkit.org>
2795 Rename colorSelected to didChooseColor
2796 https://bugs.webkit.org/show_bug.cgi?id=67271
2798 Reviewed by Kent Tamura.
2801 * html/ColorInputType.cpp:
2802 (WebCore::ColorInputType::didChooseColor): Renamed colorSelected to didChooseColor so it follows common naming practice.
2803 * html/ColorInputType.h:
2804 * platform/ColorChooser.cpp:
2805 (WebCore::ColorChooser::didChooseColor): Renamed.
2806 * platform/ColorChooser.h:
2808 2011-09-01 Adam Barth <abarth@webkit.org>
2810 Attempt to fix Windows build.
2812 * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
2814 2011-08-31 Adam Barth <abarth@webkit.org>
2816 [Chromium] Rename PlatformBridge to PlatformSupport
2817 https://bugs.webkit.org/show_bug.cgi?id=67349
2819 Reviewed by Darin Fisher.
2821 This matches the WebKitPlatformSupport embedder API.
2825 * bindings/v8/NPV8Object.cpp:
2827 * bindings/v8/ScriptController.cpp:
2828 (WebCore::ScriptController::createScriptInstanceForWidget):
2829 * bindings/v8/V8DOMWindowShell.cpp:
2830 (WebCore::reportFatalErrorInV8):
2831 * bindings/v8/V8GCController.cpp:
2832 * bindings/v8/V8Proxy.cpp:
2833 (WebCore::V8Proxy::handleOutOfMemory):
2834 (WebCore::V8Proxy::evaluate):
2835 * bindings/v8/V8Proxy.h:
2836 * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
2837 (WebCore::histogramEnumeration):
2838 * page/PageGroup.cpp:
2839 (WebCore::PageGroup::isLinkVisited):
2840 * platform/audio/chromium/AudioBusChromium.cpp:
2841 (WebCore::AudioBus::loadPlatformResource):
2842 (WebCore::createBusFromInMemoryAudioFile):
2843 * platform/chromium/ChromiumDataObject.cpp:
2844 (WebCore::ChromiumDataObject::types):
2845 (WebCore::ChromiumDataObject::getData):
2846 (WebCore::ChromiumDataObject::getSequenceNumber):
2847 (WebCore::ChromiumDataObject::containsFilenames):
2848 * platform/chromium/DataTransferItemChromium.cpp:
2849 (WebCore::DataTransferItemChromium::getAsString):
2850 (WebCore::DataTransferItemChromium::getAsFile):
2851 * platform/chromium/DragDataChromium.cpp:
2852 (WebCore::DragData::asURL):
2853 * platform/chromium/FileSystemChromium.cpp:
2854 (WebCore::deleteFile):
2855 (WebCore::deleteEmptyDirectory):
2856 (WebCore::getFileSize):
2857 (WebCore::getFileModificationTime):
2858 (WebCore::revealFolderInOS):
2859 (WebCore::directoryName):
2860 (WebCore::pathByAppendingComponent):
2861 (WebCore::makeAllDirectories):
2862 (WebCore::fileExists):
2863 (WebCore::openFile):
2864 (WebCore::closeFile):
2865 (WebCore::seekFile):
2866 (WebCore::truncateFile):
2867 (WebCore::readFromFile):
2868 (WebCore::writeToFile):
2869 * platform/chromium/LanguageChromium.cpp:
2870 (WebCore::platformDefaultLanguage):
2871 * platform/chromium/LinkHashChromium.cpp:
2872 (WebCore::visitedLinkHash):
2873 * platform/chromium/MIMETypeRegistryChromium.cpp:
2874 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
2875 (WebCore::MIMETypeRegistry::getWellKnownMIMETypeForExtension):
2876 (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
2877 (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
2878 (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
2879 (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
2880 * platform/chromium/PasteboardChromium.cpp:
2881 (WebCore::Pasteboard::writeSelection):
2882 (WebCore::Pasteboard::writePlainText):
2883 (WebCore::Pasteboard::writeURL):
2884 (WebCore::Pasteboard::writeImage):
2885 (WebCore::Pasteboard::canSmartReplace):
2886 (WebCore::Pasteboard::plainText):
2887 (WebCore::Pasteboard::documentFragment):
2888 * platform/chromium/PlatformBridge.h: Removed.
2889 * platform/chromium/PlatformScreenChromium.cpp:
2890 (WebCore::screenDepth):
2891 (WebCore::screenDepthPerComponent):
2892 (WebCore::screenIsMonochrome):
2893 (WebCore::screenRect):
2894 (WebCore::screenAvailableRect):
2895 * platform/chromium/PlatformSupport.h: Copied from Source/WebCore/platform/chromium/PlatformBridge.h.
2896 * platform/chromium/SSLKeyGeneratorChromium.cpp:
2897 (WebCore::signedPublicKeyAndChallengeString):
2898 * platform/chromium/ScrollbarThemeChromium.cpp:
2899 * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
2900 (WebCore::ScrollbarThemeChromiumLinux::scrollbarThickness):
2901 (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece):
2902 (WebCore::ScrollbarThemeChromiumLinux::paintButton):
2903 (WebCore::ScrollbarThemeChromiumLinux::paintThumb):
2904 (WebCore::ScrollbarThemeChromiumLinux::buttonSize):
2905 (WebCore::ScrollbarThemeChromiumLinux::minimumThumbLength):
2906 * platform/chromium/ScrollbarThemeChromiumMac.mm:
2907 (WebCore::scrollbarStateToThemeState):
2908 (WebCore::ScrollbarThemeChromiumMac::paint):
2909 * platform/chromium/ScrollbarThemeChromiumWin.cpp:
2910 (WebCore::ScrollbarThemeChromiumWin::scrollbarThickness):
2911 (WebCore::ScrollbarThemeChromiumWin::paintTrackPiece):
2912 (WebCore::ScrollbarThemeChromiumWin::paintButton):
2913 (WebCore::ScrollbarThemeChromiumWin::paintThumb):
2914 (WebCore::ScrollbarThemeChromiumWin::buttonSize):
2915 * platform/chromium/SharedTimerChromium.cpp:
2916 (WebCore::setSharedTimerFiredFunction):
2917 (WebCore::setSharedTimerFireInterval):
2918 (WebCore::stopSharedTimer):
2919 * platform/chromium/SuddenTerminationChromium.cpp:
2920 (WebCore::disableSuddenTermination):
2921 (WebCore::enableSuddenTermination):
2922 * platform/chromium/TraceEvent.h:
2923 (WebCore::internal::ScopeTracer::ScopeTracer):
2924 (WebCore::internal::ScopeTracer::~ScopeTracer):
2925 * platform/graphics/chromium/ContentLayerChromium.cpp:
2926 (WebCore::ContentLayerPainter::paint):
2927 * platform/graphics/chromium/CrossProcessFontLoading.mm:
2928 * platform/graphics/chromium/FontCacheChromiumWin.cpp:
2929 (WebCore::fontContainsCharacter):
2930 (WebCore::FillLogFont):
2931 * platform/graphics/chromium/FontCacheLinux.cpp:
2932 (WebCore::FontCache::getFontDataForCharacters):
2933 * platform/graphics/chromium/FontChromiumWin.cpp:
2934 (WebCore::drawGlyphsWin):
2935 * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
2936 (WebCore::FontPlatformData::scriptFontProperties):
2937 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
2938 (WebCore::FontPlatformData::querySystemForRenderStyle):
2939 * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
2940 (WebCore::fillBMPGlyphs):
2941 * platform/graphics/chromium/ImageChromium.cpp:
2942 (WebCore::Image::loadPlatformResource):
2943 * platform/graphics/chromium/ImageChromiumMac.mm:
2944 (WebCore::Image::loadPlatformResource):
2945 * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
2946 (WebCore::SimpleFontData::platformInit):
2947 (WebCore::SimpleFontData::determinePitch):
2948 (WebCore::SimpleFontData::platformWidthForGlyph):
2949 * platform/graphics/chromium/UniscribeHelperTextRun.cpp:
2950 (WebCore::UniscribeHelperTextRun::tryToPreloadFont):
2951 * platform/graphics/skia/FontCustomPlatformData.cpp:
2952 (WebCore::FontCustomPlatformData::fontPlatformData):
2953 * platform/network/chromium/CookieJarChromium.cpp:
2954 (WebCore::setCookies):
2956 (WebCore::cookieRequestHeaderFieldValue):
2957 (WebCore::cookiesEnabled):
2958 (WebCore::getRawCookies):
2959 (WebCore::deleteCookie):
2960 * platform/network/chromium/DNSChromium.cpp:
2961 (WebCore::prefetchDNS):
2962 * platform/qt/PlatformBridge.h: Removed.
2963 * platform/qt/PlatformBridgeQt.cpp: Removed.
2964 * platform/qt/PlatformSupport.h: Copied from Source/WebCore/platform/qt/PlatformBridge.h.
2965 * platform/qt/PlatformSupportQt.cpp: Copied from Source/WebCore/platform/qt/PlatformBridgeQt.cpp.
2966 (WebCore::PlatformSupport::popupsAllowed):
2967 (WebCore::PlatformSupport::pluginScriptableObject):
2968 * platform/sql/chromium/SQLiteFileSystemChromium.cpp:
2969 (WebCore::SQLiteFileSystem::deleteDatabaseFile):
2970 (WebCore::SQLiteFileSystem::getDatabaseFileSize):
2971 * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
2972 * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp:
2973 * plugins/chromium/PluginDataChromium.cpp:
2974 (WebCore::PluginCache::plugins):
2975 * rendering/RenderThemeChromiumLinux.cpp:
2976 (WebCore::getWebThemeState):
2977 (WebCore::RenderThemeChromiumLinux::adjustSliderThumbSize):
2978 (WebCore::RenderThemeChromiumLinux::paintCheckbox):
2979 (WebCore::RenderThemeChromiumLinux::setCheckboxSize):
2980 (WebCore::RenderThemeChromiumLinux::paintRadio):
2981 (WebCore::RenderThemeChromiumLinux::setRadioSize):
2982 (WebCore::RenderThemeChromiumLinux::paintButton):
2983 (WebCore::RenderThemeChromiumLinux::paintTextField):
2984 (WebCore::RenderThemeChromiumLinux::paintMenuList):
2985 (WebCore::RenderThemeChromiumLinux::paintSliderTrack):
2986 (WebCore::RenderThemeChromiumLinux::paintSliderThumb):
2987 (WebCore::RenderThemeChromiumLinux::adjustInnerSpinButtonStyle):
2988 (WebCore::RenderThemeChromiumLinux::paintInnerSpinButton):
2989 (WebCore::RenderThemeChromiumLinux::paintProgressBar):
2990 * rendering/RenderThemeChromiumMac.mm:
2991 (WebCore::RenderThemeChromiumMac::usesTestModeFocusRingColor):
2992 * rendering/RenderThemeChromiumSkia.cpp:
2993 (WebCore::RenderThemeChromiumSkia::caretBlinkInterval):
2994 * rendering/RenderThemeChromiumWin.cpp:
2995 (WebCore::RenderThemeChromiumWin::platformActiveSelectionBackgroundColor):
2996 (WebCore::RenderThemeChromiumWin::platformInactiveSelectionBackgroundColor):
2997 (WebCore::RenderThemeChromiumWin::platformActiveSelectionForegroundColor):
2998 (WebCore::RenderThemeChromiumWin::systemColor):
2999 (WebCore::RenderThemeChromiumWin::paintButton):
3000 (WebCore::RenderThemeChromiumWin::paintSliderTrack):
3001 (WebCore::menuListButtonWidth):
3002 (WebCore::RenderThemeChromiumWin::paintMenuList):
3003 (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
3004 (WebCore::RenderThemeChromiumWin::paintInnerSpinButton):
3005 (WebCore::RenderThemeChromiumWin::paintProgressBar):
3006 * storage/chromium/IDBFactoryBackendInterface.cpp:
3007 (WebCore::IDBFactoryBackendInterface::create):
3008 * storage/chromium/IDBKeyPathBackendImpl.cpp:
3009 (WebCore::IDBKeyPathBackendImpl::createIDBKeysFromSerializedValuesAndKeyPath):
3010 (WebCore::IDBKeyPathBackendImpl::injectIDBKeyIntoSerializedValue):
3011 * storage/chromium/QuotaTracker.cpp:
3012 (WebCore::QuotaTracker::getDatabaseSizeAndSpaceAvailableToOrigin):
3014 2011-08-31 Ryosuke Niwa <rniwa@webkit.org>
3016 Crash when inserting text with a trailing newline into a textarea via JS
3017 https://bugs.webkit.org/show_bug.cgi?id=66241
3019 Reviewed by Darin Adler and Kent Tamura.
3021 The crash was caused by updateFromElement biting on the editing code.
3023 When there is a style rule that applies on text nodes inside the shadow DOM, DOM modifications made
3024 by the editing code may trigger style recalculation on input or textarea elements in the midst of editing
3025 commands. In response to this style recalculation, HTMLInputElement::updateFromElement and
3026 HTMLTextAreaElement::updateFromElement call setInnerTextValue to re-create the text nodes in the
3027 shadow DOM. The editing code blows up because setInnerTextValue detaches old text nodes referenced by
3028 Positions and VisiblePositions held by the editing commands in progress.
3030 Fixed the crash by stop calling setInnerTextValue in updateFromElement. Instead, WebKit now creates
3031 the text nodes when attributes, descendent nodes, etc... of input or textarea element changes.
3033 Tests: fast/forms/update-from-element-during-editing-crash-1.html
3034 fast/forms/update-from-element-during-editing-crash-2.html
3036 * html/HTMLInputElement.cpp:
3037 (WebCore::HTMLInputElement::updateType): Force calling setInnerTextValue when input type changes.
3038 (WebCore::HTMLInputElement::updateInnerTextValue): Extracted from RenderTextControlSingleLine's
3040 (WebCore::HTMLInputElement::parseMappedAttribute): Calls updateInnerTextValue; force calling
3041 setInnerTextValue when -webkit-speech attribute changes. In the theory, we should be able to call it less
3042 frequently but there are too many cases to consider at the moment.
3043 (WebCore::HTMLInputElement::setValue): Calls updateInnerTextValue when the value actually changed.
3044 Note we need to call it before we set or restore selection.
3045 * html/HTMLInputElement.h:
3046 * html/HTMLTextAreaElement.cpp:
3047 (WebCore::HTMLTextAreaElement::childrenChanged): Calls updateInnerTextValue when textarea's descendants
3048 nodes are changed by parser or scripts.
3049 (WebCore::HTMLTextAreaElement::setValueCommon): Calls updateInnerTextValue when the value changes.
3050 * html/HTMLTextFormControlElement.h:
3051 * html/NumberInputType.cpp:
3052 (WebCore::NumberInputType::willBlur): Calls updateInnerTextValue because input[type=number] forces
3053 the value to be valid on blur.
3054 * rendering/RenderTextControlMultiLine.cpp: Removed RenderTextControlMultiLine::updateFromElement.
3055 * rendering/RenderTextControlMultiLine.h: Ditto.
3056 * rendering/RenderTextControlSingleLine.cpp:
3057 (WebCore::RenderTextControlSingleLine::updateFromElement):
3059 2011-08-31 Tom Zakrajsek <tomz@codeaurora.org>
3061 Fix snow-leopard regression caused by r93982
3062 https://bugs.webkit.org/show_bug.cgi?id=67301
3064 Reviewed by Kenneth Russell.
3066 Test: canvas/philip/tests/2d.path.stroke.prune.arc.html
3068 * html/canvas/CanvasRenderingContext2D.cpp:
3069 (WebCore::CanvasRenderingContext2D::arc):
3071 2011-08-31 Keishi Hattori <keishi@webkit.org>
3073 Rename closeColorChooser to cleanupColorChooser
3074 https://bugs.webkit.org/show_bug.cgi?id=67270
3076 Reviewed by Kent Tamura.
3078 * html/ColorInputType.cpp:
3079 (WebCore::ColorInputType::~ColorInputType):
3080 (WebCore::ColorInputType::detach):
3081 (WebCore::ColorInputType::cleanupColorChooserIfCurrentClient): NSColorPanel shouldn't be closed but the color
3082 chooser listeners need to be taken care of. Therefore closeColorChooser will be renamed to cleanupColorChooser.
3083 This will close the color chooser on platforms where appropriate.
3084 * html/ColorInputType.h:
3085 * loader/EmptyClients.h:
3086 (WebCore::EmptyChromeClient::cleanupColorChooser): Rename.
3088 (WebCore::Chrome::cleanupColorChooser): Rename.
3090 * page/ChromeClient.h:
3092 2011-08-31 Kent Tamura <tkent@chromium.org>
3094 REGRESSION(r88115): "Choose File" button doesn't respect font-size property for the <input>
3095 https://bugs.webkit.org/show_bug.cgi?id=67181
3097 Reviewed by Dimitri Glazkov.
3099 r88115 removed the code to make inherited style of the owner input
3100 element, and html.css contains "font: -webkit-small-control" for
3101 input element. So -webkit-file-upload-button always had
3102 -webkit-small-control font.
3104 Test: fast/forms/file/file-style-inheritance.html
3107 (input[type="file"]::-webkit-file-upload-button):
3108 Specify font-size:inherit explicitly.
3110 2011-08-31 Chris Rogers <crogers@google.com>
3112 Do more rigorous bounds checking in AudioBufferSourceNode::renderFromBuffer()
3113 https://bugs.webkit.org/show_bug.cgi?id=67351
3115 Reviewed by Dirk Pranke.
3117 No new tests since this does not change JavaScript API.
3119 * webaudio/AudioBufferSourceNode.cpp:
3120 (WebCore::AudioBufferSourceNode::renderFromBuffer):
3122 2011-08-31 Keishi Hattori <keishi@webkit.org>
3124 Remove closeColorChooser call from FrameLoader::transitionToCommitted
3125 https://bugs.webkit.org/show_bug.cgi?id=67267
3127 Reviewed by Darin Adler.
3129 * html/ColorInputType.cpp:
3130 (WebCore::ColorInputType::closeColorChooserIfCurrentClient): Moved order to match header.
3131 * html/ColorInputType.h:
3132 * loader/FrameLoader.cpp:
3133 (WebCore::FrameLoader::transitionToCommitted): Remove ColorInputType::closeColorChooserIfCurrentClient call.
3134 It wasn't the right place to directly manipulate the UI.
3136 2011-08-31 Chris Rogers <crogers@google.com>
3138 Add defensive bounds checking for AudioNode methods
3139 https://bugs.webkit.org/show_bug.cgi?id=67346
3141 Reviewed by Anders Carlsson.
3143 No new tests since this does not change JavaScript API.
3145 * webaudio/AudioNode.cpp:
3146 (WebCore::AudioNode::input):
3147 (WebCore::AudioNode::output):
3149 2011-08-31 Simon Fraser <simon.fraser@apple.com>
3151 TransformState.move() should be negated in the unapply code path
3152 https://bugs.webkit.org/show_bug.cgi?id=66246
3154 Reviewed by Chris Marrin.
3156 Code using TransformState was confused about when to negate the arguments
3157 to move() in the "UnapplyInverseTransform" direction (used by mapAbsoluteToLocal).
3159 Made the move() path equivalent to the applyTransform() path by not requiring
3160 the caller to negate, and instead negating inside move().
3162 Fixed the erroneous negation in TransformState::move() when accumulating;
3163 that negation will happen later via matrix inversion.
3167 * platform/graphics/ca/GraphicsLayerCA.cpp:
3168 (WebCore::GraphicsLayerCA::recursiveCommitChanges):
3169 * platform/graphics/transforms/TransformState.cpp:
3170 (WebCore::TransformState::move):
3171 * rendering/RenderBox.cpp:
3172 (WebCore::RenderBox::mapAbsoluteToLocalPoint):
3173 * rendering/RenderInline.cpp:
3174 (WebCore::RenderInline::mapAbsoluteToLocalPoint):
3176 2011-08-31 Pratik Solanki <psolanki@apple.com>
3178 Fix compile issues when enabling HAVE(CFNETWORK_DATA_ARRAY_CALLBACK)
3179 https://bugs.webkit.org/show_bug.cgi?id=67332
3181 Reviewed by Darin Adler.
3183 * loader/mac/ResourceLoaderMac.mm:
3184 (WebCore::ResourceLoader::didReceiveDataArray):
3185 * platform/network/cf/ResourceHandleCFNet.cpp:
3187 2011-08-31 Dan Bernstein <mitz@apple.com>
3189 Refined the heuristic introduced to fix <rdar://problem/10002140> Text gets clipped in
3190 multi-column layouts when overflow:auto is used.
3191 https://bugs.webkit.org/show_bug.cgi?id=67212
3193 Reviewed by Dave Hyatt.
3195 Test: fast/multicol/overflow-across-columns-percent-height.html
3197 * rendering/RenderBox.cpp:
3198 (WebCore::percentageLogicalHeightIsResolvable): Added. This follows logic similar to the one
3199 in computePercentageLogicalHeight() to determine whether percentage values for height properties
3200 are resolved or treated as "auto".
3201 (WebCore::RenderBox::hasUnsplittableScrollingOverflow): If min-height or max-height are specified
3202 as a percentage but actually resolve to "auto", don’t let that prevent splitting.
3204 2011-08-31 Ryosuke Niwa <rniwa@webkit.org>
3206 Move text() and textWithHardLineBreaks() from RenderTextControl to HTMLTextFormControlElement
3207 https://bugs.webkit.org/show_bug.cgi?id=67320
3209 Reviewed by Darin Adler.
3211 Moved and renamed RenderText::text and RenderText::textWithHardLineBreaks to
3212 HTMLTextFormControlElement::innerTextValue and HTMLTextFormControlElement::valueWithHardLineBreaks.
3214 * accessibility/AccessibilityRenderObject.cpp:
3215 (WebCore::AccessibilityRenderObject::text):
3216 * html/HTMLInputElement.cpp:
3217 (WebCore::HTMLInputElement::subtreeHasChanged):
3218 * html/HTMLTextAreaElement.cpp:
3219 (WebCore::HTMLTextAreaElement::appendFormData): Calls valueWithHardLineBreaks. It doesn't have to check
3220 the existence of renderer anymore because valueWithHardLineBreaks returns value() when renderer do not
3221 exist unlike RenderText::textWithHardLineBreaks returned emptyString() in such cases. This is the only place
3222 valueWithHardLineBreaks is ever called; but we can't move valueWithHardLineBreaks because it calls
3224 (WebCore::HTMLTextAreaElement::handleBeforeTextInsertedEvent):
3225 (WebCore::HTMLTextAreaElement::updateValue):
3226 * html/HTMLTextFormControlElement.cpp:
3227 (WebCore::HTMLTextFormControlElement::selectedText):
3228 (WebCore::HTMLTextFormControlElement::setInnerTextValue):
3229 (WebCore::finishText): Moved from RenderText.cpp
3230 (WebCore::HTMLTextFormControlElement::innerTextValue): Ditto.
3231 (WebCore::getNextSoftBreak): Ditto.
3232 (WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks): Ditto; this function returns value()
3233 when there are no renderers or root inline boxes instead of emptyString().
3234 * html/HTMLTextFormControlElement.h:
3235 * html/NumberInputType.cpp:
3236 (WebCore::NumberInputType::hasUnacceptableValue):
3237 * html/SearchInputType.cpp:
3238 (WebCore::SearchInputType::startSearchEventTimer):
3239 * html/TextFieldInputType.cpp:
3240 (WebCore::TextFieldInputType::handleBeforeTextInsertedEvent):
3241 * rendering/RenderTextControl.cpp:
3242 * rendering/RenderTextControl.h:
3244 2011-08-31 Jeff Miller <jeffm@apple.com>
3246 REGRESSION(92210): AVFoundation media engine is disabled on OS X
3247 https://bugs.webkit.org/show_bug.cgi?id=67316
3249 Move the definition of WTF_USE_AVFOUNDATION on the Mac back to JavaScriptCore/wtf/Platform.h,
3250 since WebKit2 doesn't have access to WebCore/config.h on this platform. This reverts the
3251 changes that were made in r92210.
3253 Reviewed by Darin Adler.
3255 No new tests, covered by existing media tests.
3257 * config.h: Removed definition of WTF_USE_AVFOUNDATION on the Mac, add a comment about fixing this on Windows in the future.
3259 2011-08-31 Sailesh Agrawal <sail@chromium.org>
3261 [Chromium] Switching between overlay and opaque scrollbars causes glitches
3262 https://bugs.webkit.org/show_bug.cgi?id=62686
3264 Reviewed by Beth Dakin.
3266 When switching from opaque scrollbars to overlay scrollbars the page content size wouldn't change leaving a empty region under the overlay scrollbar.
3268 The problem was that we were relying on ScrollView::updateScrollbars() to kick off a layout. Unfortunately this doesn't happen because updateScrollbars doesn't distinguish between overlay and opaque scrollbars.
3270 To fix this I'm explicitly invalidating the layout when ScrollView::scrollbarStyleChanged() is called.
3272 No tests because there are no Mac 10.7 chromium bots yet. Bug 66504 will track the work to add these tests once the bots are in place.
3274 * platform/ScrollView.cpp:
3275 (WebCore::ScrollView::scrollbarStyleChanged):
3277 2011-08-31 Alexey Proskuryakov <ap@apple.com>
3279 http/tests/eventsource/workers/eventsource-simple.html is a flaky crash because of
3280 eventsource-status-error-iframe-crash.html
3281 https://bugs.webkit.org/show_bug.cgi?id=61523
3283 Reviewed by Nate Chapin.
3285 The problem here was that canceling EventSource during frame removal erroneously resulted
3286 in event dispatch, and event handler re-entered frame destruction code.
3288 * page/EventSource.h: Renamed endRequest() to networkRequestEnded(), because this method
3289 doesn't end request. It implements "reestablish the connection" or "fail the connection"
3290 algotithms from the spec, depending on current state.
3291 Removed m_failSilently, since we can make this decision with existing data, and want to
3292 fail silently by default (e.g. when detaching a frame cancels all loads).
3294 * page/EventSource.cpp:
3295 (WebCore::EventSource::EventSource): Don't initialize m_failSilently.
3296 (WebCore::EventSource::~EventSource): Assert taht we are in a correct state.
3297 (WebCore::EventSource::connect): Ditto.
3298 (WebCore::EventSource::networkRequestEnded): Moved errorevent dispatch elsewhere.
3299 (WebCore::EventSource::scheduleReconnect): Error event should always be queued when
3300 reconnecting; firing it synchronously after starting m_reconnectTimer implements that.
3301 (WebCore::EventSource::reconnectTimerFired): Assert that state is correct (the timer is
3302 stopped if EventSource is stopped while waiting on the timer).
3303 (WebCore::EventSource::close): Don't set m_state before calling cancel() - it will indirectly
3304 call didFail(), which asserts that EventSource is not stopped yet.
3305 (WebCore::EventSource::didReceiveResponse): Explicitly dispatch an error event, since it
3306 is no longer dispatched when canceling, and canceling is the only way to stop a ThreadableLoader.
3307 Removed a special case for 2xx responses, since it's no longer in the spec.
3308 (WebCore::EventSource::didReceiveData): Assert that state is correct.
3309 (WebCore::EventSource::didFinishLoading): Don't set state to CONNECTING after parsing remaining
3310 response bytes - that may well result in dispatching an event whose handler calls close().
3311 (WebCore::EventSource::didFail): It's simple now - we always reconnect unless the request
3313 (WebCore::EventSource::didFailRedirectCheck): Dispatch error event explicitly, as we are
3314 not going to attempt reconnecting.
3316 2011-08-31 Sheriff Bot <webkit.review.bot@gmail.com>
3318 Unreviewed, rolling out r94116.
3319 http://trac.webkit.org/changeset/94116
3320 https://bugs.webkit.org/show_bug.cgi?id=67323
3322 caused a lot of tests failures (Requested by thorton on
3325 * platform/graphics/cg/PathCG.cpp:
3326 (WebCore::Path::boundingRect):
3328 2011-08-31 Alexei Svitkine <asvitkine@chromium.org>
3330 Chromium Mac: Tweak rubber banding overhang shadows. Add a drop shadow from the browser's toolbar.
3331 https://bugs.webkit.org/show_bug.cgi?id=67289
3333 Chromium bug: http://crbug.com/93228
3335 Reviewed by Dimitri Glazkov.
3337 No new tests, since this merely tweaks Chromium overhang area appearance.
3339 * platform/chromium/ScrollbarThemeChromiumMac.mm:
3340 (WebCore::ScrollbarThemeChromiumMac::paintGivenTickmarks):
3341 (WebCore::ScrollbarThemeChromiumMac::paintOverhangAreas):
3343 2011-08-31 Tony Chang <tony@chromium.org>
3345 Remove webcore_bindings (including DerivedSources##.cpp) from the critical path
3346 https://bugs.webkit.org/show_bug.cgi?id=67168
3348 Reviewed by Adam Barth.
3350 webcore_bindings_sources, debugger_script_source, injected_script_source, and
3351 inspector_protocol_sources generates various files (e.g., CSSPropertyNames,
3352 DerivedSources, HTMLNames, etc). webcore_bindings depends on *_sources and compiles
3353 these files. Previously, the other webcore libs (webcore_svg, webcore_html,
3354 webcore_remaining, etc) depended on webcore_bindings. This moves the *_sources
3355 dependencies from webcore_bindings to the other webcore libs so the build can
3356 parallelize the compile of webcore_bindings and the other webcore_* libs.
3358 Also copy over the include dirs that we used to get from webcore_bindings'
3359 direct_dependent_settings.
3361 No new tests, just changing the build dependencies.
3363 * WebCore.gyp/WebCore.gyp:
3365 2011-08-31 Tony Gentilcore <tonyg@chromium.org>
3367 Minor cleanup: remove inScriptExecution()
3368 https://bugs.webkit.org/show_bug.cgi?id=67276
3370 Reviewed by Adam Barth.
3372 At one point inScriptExecution() existed as a non-virtual duplicate of isExecutingScript()
3373 to avoid virtual method calls from a tight loop. Now we aren't calling it anywhere perf
3374 sensitive, so remove the duplication.
3376 No new tests because no change in functionality.
3378 * html/parser/HTMLDocumentParser.cpp:
3379 (WebCore::HTMLDocumentParser::isExecutingScript):
3380 (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
3381 (WebCore::HTMLDocumentParser::notifyFinished):
3382 * html/parser/HTMLDocumentParser.h:
3383 (WebCore::HTMLDocumentParser::shouldDelayEnd):
3385 2011-08-31 Tom Sepez <tsepez@chromium.org>
3387 Fix XSS filter bypass by multiply decoding both the URL and the body
3388 snippet until they are in the most minimal form before comparison.
3389 https://bugs.webkit.org/show_bug.cgi?id=66585
3391 Reviewed by Adam Barth.
3393 * html/parser/XSSAuditor.cpp:
3394 (WebCore::fullyDecodeString):
3395 (WebCore::XSSAuditor::init):
3396 (WebCore::XSSAuditor::filterToken):
3397 (WebCore::XSSAuditor::isContainedInRequest):
3399 2011-08-31 Simon Fraser <simon.fraser@apple.com>
3401 Crash with -webkit-radial-gradient(top) gradient
3402 https://bugs.webkit.org/show_bug.cgi?id=66686
3404 Reviewed by Darin Adler.
3406 Null-check the current value after calling parseFillPosition(),
3407 since it may be null for gradients with degenerate arguments.
3409 Test: fast/gradients/css3-radial-gradient-crash.html
3411 * css/CSSParser.cpp:
3412 (WebCore::CSSParser::parseRadialGradient):
3414 2011-08-31 Nico Weber <thakis@chromium.org>
3416 Make ScrollAnimator(Chromium)?Mac check scrollAnimatorEnabled()
3417 https://bugs.webkit.org/show_bug.cgi?id=67297
3419 Reviewed by Tony Chang.
3421 I need this to disable smooth scrolling in chromium tests. I'm making
3422 the change to ScrollAnimatorMac to make unforking the file easier. I
3423 changed scrollAnimatorEnabled() to default to true so that this change
3424 is a no-op for Safari; in chromium the flag is set explicitly to true
3427 * page/Settings.cpp:
3428 (WebCore::Settings::Settings):
3429 * platform/chromium/ScrollAnimatorChromiumMac.mm:
3430 (WebCore::ScrollAnimatorChromiumMac::scroll):
3431 * platform/mac/ScrollAnimatorMac.mm:
3432 (WebCore::ScrollAnimatorMac::scroll):
3434 2011-08-31 Nate Chapin <japhet@chromium.org>
3436 Don't load resources with empty urls, since this
3437 will resolve to the current document.
3438 https://bugs.webkit.org/show_bug.cgi?id=30303
3440 Reviewed by Darin Adler.
3442 Test: http/tests/loading/empty-urls.html
3444 * dom/ScriptElement.cpp:
3445 (WebCore::ScriptElement::requestScript): If src="", fail through
3446 to the error event case.
3447 * html/HTMLLinkElement.cpp:
3448 (WebCore::HTMLLinkElement::parseMappedAttribute): Ensure the url
3449 stays empty if we try to resolve an empty href.
3450 * loader/ImageLoader.cpp:
3451 (WebCore::ImageLoader::updateFromElement): Throw an error instead of
3452 loading if the src is empty in all cases, not just local files.
3454 2011-08-28 Robert Hogan <robert@webkit.org>