1 2011-06-10 David Levin <levin@chromium.org>
3 Reviewed by Dmitry Titov.
5 Fetching a Worker with url that isn't allowed from a file based test causes DRT to crash.
6 https://bugs.webkit.org/show_bug.cgi?id=62469
8 Test: fast/workers/worker-crash-with-invalid-location.html
10 * workers/DefaultSharedWorkerRepository.cpp:
11 (WebCore::SharedWorkerScriptLoader::load): Changed to using the RefCounted version of WorkerScriptLoader.
13 (WebCore::Worker::create): Ditto.
14 * workers/Worker.h: Ditto.
15 * workers/WorkerContext.cpp:
16 (WebCore::WorkerContext::importScripts): Ditto.
17 * workers/WorkerScriptLoader.cpp:
18 (WebCore::WorkerScriptLoader::~WorkerScriptLoader): Created to
19 allow removing some header includes in WorkerScriptLoader.h.
20 (WebCore::WorkerScriptLoader::loadAsynchronously): Fix the ordering
21 of setPendingActivity and keep WorkerScriptLoader alive during a
23 * workers/WorkerScriptLoader.h: Made this RefCounted to allow for
24 keeping it alive during callbacks. Also, removed unnecessary header
25 inclusions (and added a destructor to facilitate that).
26 (WebCore::WorkerScriptLoader::create):
28 2011-06-10 Alok Priyadarshi <alokp@chromium.org>
30 Reviewed by James Robinson.
32 [chromium] Top portion of page is rendered messed up with accelerated drawing
33 https://bugs.webkit.org/show_bug.cgi?id=62484
35 Fixed the math in flipping the texture from bottom-up to top-down.
36 Test: compositing/repaint/shrink-layer.html (existing)
38 * platform/graphics/chromium/LayerTilerChromium.cpp:
39 (WebCore::LayerTilerChromium::draw):
41 2011-06-10 Tony Chang <tony@chromium.org>
43 Reviewed by Ojan Vafai.
45 add a compile guard ENABLE(FLEXBOX)
46 https://bugs.webkit.org/show_bug.cgi?id=62049
48 * Configurations/FeatureDefines.xcconfig:
50 2011-06-10 Sam Weinig <sam@webkit.org>
52 Roll out r88568. It is not the right fix for the problem.
54 * loader/appcache/ApplicationCacheHost.cpp:
55 (WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
57 2011-06-10 Mark Rowe <mrowe@apple.com>
59 Reviewed by Dimitri Glazkov.
61 <rdar://problem/9562114> Fix DumpRenderTree build for production configuration.
63 Rename the built WebCoreTestSupport dylib to libWebCoreTestSupport.dylib so
64 that it can be found via the library search path rather than requiring an
65 absolute path be passed to the linker.
67 Install the library and its associated header file in a more appropriate location
68 for the production configuration.
70 * Configurations/WebCoreTestSupport.xcconfig:
72 2011-06-10 Simon Fraser <simon.fraser@apple.com>
74 Reviewed by Dave Hyatt.
76 Add a scheduleSetNeedsStyleRecalc() method to ContainerNode for use by RenderLayerCompositor
77 https://bugs.webkit.org/show_bug.cgi?id=62471
79 RenderLayerCompositor had some code that did a setNeedsStyleRecalc(), but
80 in a way that was safe to call during existing style recalc or layout.
82 Move this code to ContainerElement so it can be called elsewhere.
83 Also add a param to the node callback so we can pass the style change type.
85 * dom/ContainerNode.cpp:
86 (WebCore::ContainerNode::queuePostAttachCallback):
87 (WebCore::ContainerNode::dispatchPostAttachCallbacks):
88 (WebCore::needsStyleRecalcCallback):
89 (WebCore::ContainerNode::scheduleSetNeedsStyleRecalc):
90 * dom/ContainerNode.h:
92 (WebCore::Node::scheduleSetNeedsStyleRecalc):
93 * html/HTMLFormControlElement.cpp:
94 (WebCore::focusPostAttach):
95 (WebCore::updateFromElementCallback):
96 * html/HTMLPlugInImageElement.cpp:
97 (WebCore::HTMLPlugInImageElement::updateWidgetCallback):
98 * html/HTMLPlugInImageElement.h:
99 * rendering/RenderLayerCompositor.cpp:
100 (WebCore::RenderLayerCompositor::attachRootPlatformLayer):
101 (WebCore::RenderLayerCompositor::detachRootPlatformLayer):
102 (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange):
103 * rendering/RenderLayerCompositor.h:
104 * svg/SVGUseElement.cpp:
105 (WebCore::updateFromElementCallback):
107 2011-06-10 Mark Pilgrim <pilgrim@chromium.org>
109 Reviewed by Tony Chang.
111 IndexedDB: indexedDB.open() name argument is required
112 https://bugs.webkit.org/show_bug.cgi?id=62398
114 Test: storage/indexeddb/database-name-undefined.html
116 * storage/IDBFactory.idl: use appropriate IDL magic to force undefined values to null, so we handle missing arguments as well as null arguments
118 2011-06-10 Sam Weinig <sam@webkit.org>
120 Reviewed by Beth Dakin.
122 Common crash in ApplicationCacheHost::isApplicationCacheEnabled
123 <rdar://problem/9328684>
125 * loader/appcache/ApplicationCacheHost.cpp:
126 (WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
127 Speculative fix for a null frame on ApplicationCacheHost's DocumentLoader.
129 2011-06-10 Adam Barth <abarth@webkit.org>
131 Reviewed by Eric Seidel.
133 Remove Document::finishParsing
134 https://bugs.webkit.org/show_bug.cgi?id=62474
136 This function appears to exist only to confuse and befuddle us. This
137 patch prepares for DocumentWriter to grab hold of the parser.
139 This patch removes one of the print statements from
140 INSTRUMENT_LAYOUT_SCHEDULING, but I'm not sure
141 INSTRUMENT_LAYOUT_SCHEDULING works anymore anyway.
145 * dom/XMLDocumentParser.cpp:
146 (WebCore::XMLDocumentParser::finish):
147 * html/parser/HTMLDocumentParser.cpp:
148 (WebCore::HTMLDocumentParser::finish):
149 * loader/DocumentWriter.cpp:
150 (WebCore::DocumentWriter::addData):
151 (WebCore::DocumentWriter::endIfNotLoadingMainResource):
152 * loader/FrameLoader.cpp:
153 (WebCore::FrameLoader::stop):
155 2011-06-10 Mark Pilgrim <pilgrim@chromium.org>
157 Reviewed by Tony Chang.
159 IndexedDB: setVersion() version argument is required
160 https://bugs.webkit.org/show_bug.cgi?id=62401
162 Test: storage/indexeddb/setVersion-undefined.html
164 * storage/IDBDatabase.cpp:
165 (WebCore::IDBDatabase::setVersion): check for null version
166 * storage/IDBDatabase.idl: add IDL magic to force undefined to null so we can handle both missing and null arguments
168 2011-06-10 Simon Fraser <simon.fraser@apple.com>
170 Reviewed by Dan Bernstein.
172 Null-check the layer owner again when painting layers
173 https://bugs.webkit.org/show_bug.cgi?id=62473
175 Speculative fix for a crash that occurs when the layer's owner
176 gets destroyed during painting.
178 * platform/graphics/mac/WebLayer.mm:
181 2011-06-08 Robert Hogan <robert@webkit.org>
183 Reviewed by Andreas Kling.
185 [Qt] Lighten the --no-svg build a little
186 https://bugs.webkit.org/show_bug.cgi?id=62314
188 Only generate source from SVG*.idl if the build is svg-enabled.
190 * CodeGenerators.pri:
192 2011-06-10 Nikolas Zimmermann <nzimmermann@rim.com>
194 Reviewed by Rob Buis.
196 Integrate SVG Fonts within GlyphPage concept, removing the special SVG code paths from Font, making it possible to reuse the simple text code path for SVG Fonts
197 https://bugs.webkit.org/show_bug.cgi?id=59085
199 Add glyph table to SVGFontElement mapping between SVGGlyph <-> Glyph
200 https://bugs.webkit.org/show_bug.cgi?id=62441
202 Preparation patch 1: Introduce the internal glyph table in SVGGlyphMap that will be used to identify each
203 SVGGlyph identifier with a Glyph (which is just an ushort). It will be used by follow-up patches.
205 Doesn't affect any test so far.
207 * platform/graphics/SVGGlyph.h:
208 (WebCore::SVGGlyph::SVGGlyph):
209 (WebCore::SVGGlyph::operator==):
210 * rendering/svg/SVGTextRunRenderingContext.cpp:
211 (WebCore::SVGTextRunWalker::walk):
212 * svg/SVGFontData.cpp:
213 (WebCore::SVGFontData::initializeFontData):
214 * svg/SVGFontElement.cpp:
215 (WebCore::SVGFontElement::SVGFontElement):
216 (WebCore::SVGFontElement::registerLigaturesInGlyphCache):
217 (WebCore::SVGFontElement::ensureGlyphCache):
218 (WebCore::kerningForPairOfStringsAndGlyphs):
219 (WebCore::SVGFontElement::horizontalKerningForPairOfStringsAndGlyphs):
220 (WebCore::SVGFontElement::verticalKerningForPairOfStringsAndGlyphs):
221 (WebCore::SVGFontElement::collectGlyphsForString):
222 (WebCore::SVGFontElement::collectGlyphsForGlyphName):
223 (WebCore::SVGFontElement::svgGlyphForGlyph):
224 (WebCore::SVGFontElement::missingGlyph):
225 * svg/SVGFontElement.h:
226 (WebCore::SVGKerningPair::SVGKerningPair):
228 (WebCore::SVGGlyphMap::addGlyphByUnicodeString):
229 (WebCore::SVGGlyphMap::addGlyphByName):
230 (WebCore::SVGGlyphMap::appendToGlyphTable):
231 (WebCore::SVGGlyphMap::collectGlyphsForString):
232 (WebCore::SVGGlyphMap::clear):
233 (WebCore::SVGGlyphMap::svgGlyphForGlyph):
234 (WebCore::SVGGlyphMap::glyphIdentifierForGlyphName):
236 2011-06-10 Emil A Eklund <eae@chromium.org>
238 Reviewed by Eric Seidel.
240 Regression r85573: Blank pages appear at the end of some wikipedia documents.
241 https://bugs.webkit.org/show_bug.cgi?id=62343
243 Fix regression caused by r85573. Cached document size not updated after layout.
245 Test: printing/page-count-relayout-shrink.html
247 * page/FrameView.cpp:
248 (WebCore::FrameView::forceLayoutForPagination):
250 2011-06-10 Rob Buis <rbuis@rim.com>
252 Reviewed by Nikolas Zimmermann.
254 amation event handling broken: focusin
255 https://bugs.webkit.org/show_bug.cgi?id=12894
257 focusin, focusout, activate not implemented in SVG
258 https://bugs.webkit.org/show_bug.cgi?id=40545
260 Make elements that should support GraphicalEventAttribute handle focussing, since focusin, focusout is part of that:
262 http://www.w3.org/TR/SVG11/intro.html#TermGraphicalEventAttribute
264 Match Opera behaviour ; elements that support GraphicalEventAttribute can receive visual mouse focus when having either a focusin or focusout event handler. Elements that support GraphicalEventAttribute can receive visual keyboard focus when having either a focusin or focusout event handler. Keyboard focus does not advance to SVG elements that are not focusable at the time.
266 Tests: svg/custom/focus-event-handling-keyboard.xhtml
267 svg/custom/focus-event-handling.xhtml
269 * rendering/svg/SVGRenderSupport.cpp:
270 (WebCore::SVGRenderSupport::computeRectForRepaint):
271 * svg/SVGCircleElement.h:
272 (WebCore::SVGCircleElement::supportsFocus):
273 * svg/SVGEllipseElement.h:
274 (WebCore::SVGEllipseElement::supportsFocus):
276 (WebCore::SVGGElement::supportsFocus):
277 * svg/SVGImageElement.h:
278 (WebCore::SVGImageElement::supportsFocus):
279 * svg/SVGLineElement.h:
280 (WebCore::SVGLineElement::supportsFocus):
281 * svg/SVGPathElement.h:
282 (WebCore::SVGPathElement::supportsFocus):
283 * svg/SVGPolyElement.h:
284 (WebCore::SVGPolyElement::supportsFocus):
285 * svg/SVGRectElement.h:
286 (WebCore::SVGRectElement::supportsFocus):
287 * svg/SVGSVGElement.h:
288 (WebCore::SVGSVGElement::supportsFocus):
289 * svg/SVGStyledElement.cpp:
290 (WebCore::SVGStyledElement::isMouseFocusable):
291 (WebCore::SVGStyledElement::isKeyboardFocusable):
292 * svg/SVGStyledElement.h:
293 * svg/SVGSwitchElement.h:
294 (WebCore::SVGSwitchElement::supportsFocus):
295 * svg/SVGSymbolElement.h:
296 (WebCore::SVGSymbolElement::supportsFocus):
297 * svg/SVGTextElement.h:
298 (WebCore::SVGTextElement::supportsFocus):
299 * svg/SVGUseElement.h:
300 (WebCore::SVGUseElement::supportsFocus):
302 2011-06-10 Luke Macpherson <macpherson@chromium.org>
304 Reviewed by Eric Seidel.
306 Clean up CSSPrimitiveValue::computeLength*
307 https://bugs.webkit.org/show_bug.cgi?id=61612
309 No new tests as no functionality changed.
311 * css/CSSGradientValue.cpp:
312 Use new computeLength functions.
313 * css/CSSPrimitiveValue.cpp:
314 (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
315 Reduce to a single function using default parameter values.
316 (WebCore::CSSPrimitiveValue::computeLength):
317 Redefine existing functions with separate names as a single function using templated function specialization.
318 * css/CSSPrimitiveValue.h:
319 Prototypes for computeLengthIntForLength and computeLength.
320 * css/CSSStyleApplyProperty.cpp:
321 Use new computeLength functions.
322 * css/CSSStyleSelector.cpp:
323 Use new computeLength functions.
324 * css/MediaQueryEvaluator.cpp:
325 Use new computeLength functions.
326 * css/SVGCSSStyleSelector.cpp:
327 Use new computeLength functions.
329 2011-06-10 Simon Fraser <simon.fraser@apple.com>
331 Reviewed by Beth Dakin.
333 Add utility to RenderLayer to determine if the layer is scrollable
334 https://bugs.webkit.org/show_bug.cgi?id=62467
336 New method that returns true if either scrollbar is present and enabled.
337 Not called anywhere yet.
339 * rendering/RenderLayer.cpp:
340 (WebCore::RenderLayer::allowsScrolling):
341 * rendering/RenderLayer.h:
343 2011-06-10 Dimitri Glazkov <dglazkov@chromium.org>
345 Reviewed by Tony Chang.
347 REGRESSION (r88332): prototype-inheritance-2 ASSERTS attempting to enumerate spellCheckRanges
348 https://bugs.webkit.org/show_bug.cgi?id=62460
350 Test: fast/dom/prototype-inheritance-2.html
352 * dom/DocumentMarkerController.cpp:
353 (WebCore::DocumentMarkerController::userSpellingMarkersForNode): Added an extra 0-check.
355 2011-06-10 James Simonsen <simonjam@chromium.org>
357 Reviewed by Tony Gentilcore.
359 Don't execute scripts in shadow SVG.
360 https://bugs.webkit.org/show_bug.cgi?id=62225
362 Test: svg/dom/use-style-recalc-script-execute-crash.html
364 * dom/ScriptElement.cpp:
365 (WebCore::ScriptElement::prepareScript):
367 2011-06-10 Konstantin Tokarev <ktokarev@smartlabs.tv>
369 Reviewed by Joseph Pecoraro.
371 Fixed build with enabled workers and disabled inspector
372 https://bugs.webkit.org/show_bug.cgi?id=62461
374 * inspector/InspectorWorkerAgent.cpp: Added inspector guard
376 2011-06-10 Darin Adler <darin@apple.com>
378 Reviewed by Eric Carlson.
380 REGRESSION: Fullscreen video controller can't be dragged
381 https://bugs.webkit.org/show_bug.cgi?id=62462
383 No regression test because we don't have machinery for testing the fullscreen
384 mode. We may find a way to add this in the future.
386 * html/shadow/MediaControlElements.cpp:
387 (WebCore::MediaControlPanelElement::MediaControlPanelElement): Initialize new
388 booleans related to dragging.
389 (WebCore::MediaControlPanelElement::startDrag): Added. Starts drag if dragging
390 is allowed and a drag isn't already in progress.
391 (WebCore::MediaControlPanelElement::continueDrag): Added. Moves the window if
392 dragging is already in progress.
393 (WebCore::MediaControlPanelElement::endDrag): Added. Ends the capture that is
394 done during the dragging process.
395 (WebCore::MediaControlPanelElement::setPosition): Added. Positions the panel
396 using explicit top/left.
397 (WebCore::MediaControlPanelElement::resetPosition): Added. Removes the positioning
399 (WebCore::MediaControlPanelElement::defaultEventHandler): Added. Calls startDrag,
400 continueDrag, and endDrag in response to mouse events.
401 (WebCore::MediaControlPanelElement::setCanBeDragged): Added.
402 * html/shadow/MediaControlElements.h: Added new function and data members
405 * html/shadow/MediaControlRootElement.cpp:
406 (WebCore::MediaControlRootElement::enteredFullscreen): Call setCanBeDragged(true)
407 so you can drag the panel while in fullscreen.
408 (WebCore::MediaControlRootElement::exitedFullscreen): Call setCanBeDragged(false)
409 so you can't drag the panel while not in fullscreen. Also call resetPosition so
410 position changes from dragging don't affect the panel in other contexts.
412 2011-06-10 Darin Adler <darin@apple.com>
414 Reviewed by Eric Carlson.
416 REGRESSION: Full screen video HUD is positioned too low for standalone video documents
417 https://bugs.webkit.org/show_bug.cgi?id=62463
419 No test because we don't currently have machinery for testing fullscreen.
421 * css/fullscreen.css: Removed rule that said bottom: 0px for the control panel
422 for full page media in full screen mode. This is not needed because the control
423 panel for full screen mode already has style rules to set its vertical position.
424 (:-webkit-full-screen-ancestor:not(iframe)): Fixed typo where it said
425 -webkit-tranform. This will fix a potential problem where fullscreen would
426 malfunction on a page that had a media element inside a transform.
428 2011-06-10 Sergio Villar Senin <svillar@igalia.com>
430 Reviewed by Gustavo Noronha Silva.
432 [GTK] Add support for non-ASCII filenames in Content-Disposition header
433 https://bugs.webkit.org/show_bug.cgi?id=62454
435 Try latin1 as fallback for header parameter values as some servers
436 do not follow RFC 2045 for example with filename parameter in
439 No new tests required as no functionality changed.
441 * platform/network/soup/ResourceResponseSoup.cpp:
442 (WebCore::ResourceResponse::updateFromSoupMessage):
444 2011-06-10 No'am Rosenthal <noam.rosenthal@nokia.com> and Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
446 Reviewed by Kenneth Rohde Christiansen.
448 Add layer factory to GraphicsLayer for creating non-default layer type.
449 https://bugs.webkit.org/show_bug.cgi?id=61925
451 Added a static factory protected member to GraphicsLayer, which should be accessed from
452 a port-specific implementation of GraphicsLayer::create. For now this is enabled for Qt only.
454 This is needed for accelerated compositing across processes in WebKit2, since WebCore
455 doesn't know in compile time whether it's in WebKit or WebKit2, which makes having two
456 different implementations of GraphicsLayer coexist impossible without some runtime
457 factory that can be overridden by the web process.
459 Note that the use of the factory would be optional, and the port-specific GraphicsLayer::create
460 would have to explicitly call it, in order to be unintrusive with current implementations.
462 No new functionality, so no new tests.
464 * platform/graphics/GraphicsLayer.cpp:
465 (WebCore::GraphicsLayer::setGraphicsLayerFactory):
466 * platform/graphics/GraphicsLayer.h:
468 2011-06-10 Lucas De Marchi <lucas.demarchi@profusion.mobi>
470 Reviewed by Kenneth Rohde Christiansen.
472 [CMAKE] Add generic support for building with WebGL
473 https://bugs.webkit.org/show_bug.cgi?id=62376
475 Set new THIRDPARTY_DIR variable to compile sources under ThirdParty.
477 No change in functionality so no new tests.
481 2011-06-10 Ryuan Choi <ryuan.choi@samsung.com>
483 Reviewed by Andreas Kling.
485 [GTK][EFL] m_imageInterpolationQuality is not initialized in PlatformContextCairo::PlatformContextCairo.
486 https://bugs.webkit.org/show_bug.cgi?id=62435
488 No new tests required as just fixed warning.
490 * platform/graphics/cairo/PlatformContextCairo.cpp:
491 (WebCore::PlatformContextCairo::PlatformContextCairo):
493 2011-06-11-06-09 Ilya Tikhonovsky <loislo@chromium.org>
495 Reviewed by Yury Semikhatsky.
497 Web Inspector: protocol: json: Whitespace can be inserted between any pair of tokens.
498 https://bugs.webkit.org/show_bug.cgi?id=62377
500 * inspector/InspectorValues.cpp:
502 2011-06-10 Sheriff Bot <webkit.review.bot@gmail.com>
504 Unreviewed, rolling out r88530.
505 http://trac.webkit.org/changeset/88530
506 https://bugs.webkit.org/show_bug.cgi?id=62440
508 qt build was broken (Requested by loislo on #webkit).
510 * inspector/InspectorValues.cpp:
512 2011-06-09 Ilya Tikhonovsky <loislo@chromium.org>
514 Reviewed by Yury Semikhatsky.
516 Web Inspector: protocol: json: Whitespace can be inserted between any pair of tokens.
517 https://bugs.webkit.org/show_bug.cgi?id=62377
519 * inspector/InspectorValues.cpp:
521 2011-06-09 Jer Noble <jer.noble@apple.com>
523 Reviewed by Darin Adler.
525 REGRESSION: Vertical scroll bar appears when taking videos into full screen at jerryseinfeld.com
526 https://bugs.webkit.org/show_bug.cgi?id=62402
528 Sites are able to override the "overflow:hidden" rule for root full-screen nodes
529 simply by adding a "html {}" rule. Make this rule !important, and also make it apply
530 to root nodes who are merely ancestors of full-screen elements, to cover the case of
531 a root node containing an <iframe> whose contents have gone full-screen.
533 * css/fullscreen.css:
534 (:root:-webkit-full-screen-document:not(:-webkit-full-screen),
535 :root:-webkit-full-screen-ancestor): Apply the overflow rule to root elements
536 who are full-screen ancestors, and make them !important.
538 2011-06-09 Luke Macpherson <macpherson@chromium.org>
540 Reviewed by Eric Seidel.
542 Rename RenderStyle visuallyOrdered property and use an enum instead of a bool.
543 https://bugs.webkit.org/show_bug.cgi?id=61495
545 No new tests required as no functionality changed.
547 * css/CSSPrimitiveValueMappings.h:
548 Support cast to/from Order
549 * css/CSSStyleSelector.cpp:
550 (WebCore::CSSStyleSelector::styleForDocument):
551 Convert from bool to enum type.
552 (WebCore::CSSStyleSelector::applyProperty):
553 Convert to macro that uses the cast defined in CSSPrimitiveValueMappings.
555 (WebCore::Document::setVisuallyOrdered):
556 Change call to RenderStyle::setRTLOrdering using enum parameter.
557 * rendering/style/RenderStyle.h:
558 rename visuallyOrdered proerties rtlOrdering and use appropriate enum types.
559 * rendering/style/RenderStyleConstants.h:
562 2011-06-09 Luke Macpherson <macpherson@chromium.org>
564 Reviewed by Eric Seidel.
566 Implement CSSPropertyOutlineStyle handler in CSSStyleApplyProperty
567 https://bugs.webkit.org/show_bug.cgi?id=61601
569 No new tests. No new functionality added / covered by existing tests.
571 * css/CSSPrimitiveValueMappings.h:
572 (WebCore::CSSPrimitiveValue::operator EBorderStyle):
573 Support CSSValueAuto as required by outline-style property.
574 (WebCore::CSSPrimitiveValue::operator OutlineIsAuto):
575 Add cast to new OutlineIsAuto enum.
576 * css/CSSStyleApplyProperty.cpp:
577 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
578 Initialize handler for CSSPropertyOutlineStyle.
579 * css/CSSStyleSelector.cpp:
580 (WebCore::CSSStyleSelector::applyProperty):
581 Remove old handler for CSSPropertyOutlineStyle.
582 * rendering/style/OutlineValue.h:
583 Use new OutlineIsAuto enum instead of bool.
584 * rendering/style/RenderStyle.h:
585 Split existing two-parameter setter setOutlineStyle into separate setters for style and auto properties.
586 Use new OutlineIsAuto enum type.
587 * rendering/style/RenderStyleConstants.h:
588 Define new enum OutlineIsAuto.
590 2011-06-09 Luke Macpherson <macpherson@chromium.org>
592 Reviewed by Eric Seidel.
594 Code cleanup - add wrappers for function pointer dereferences to improve readability in ApplyPropertyDefaultBase and derived classes.
595 https://bugs.webkit.org/show_bug.cgi?id=62418
597 No new tests / cleanup only.
599 * css/CSSStyleApplyProperty.cpp:
600 (WebCore::ApplyPropertyDefaultBase::applyInheritValue):
601 Use new wrapper functions.
602 (WebCore::ApplyPropertyDefaultBase::applyInitialValue):
603 Use new wrapper functions.
604 (WebCore::ApplyPropertyDefaultBase::setValue):
605 Wrapper for calling m_setter function pointer.
606 (WebCore::ApplyPropertyDefaultBase::value):
607 Wrapper for calling m_getter function pointer.
608 (WebCore::ApplyPropertyDefaultBase::initial):
609 Wrapper for calling m_initial function pointer.
610 (WebCore::ApplyPropertyDefault::applyValue):
611 Use new setValue function.
612 (WebCore::ApplyPropertyLength::applyValue):
613 Use new setValue function.
614 (WebCore::ApplyPropertyWidth::applyValue):
615 Use new setValue function.
617 2011-06-09 Hyowon Kim <hw1008.kim@samsung.com>
619 Reviewed by Antonio Gomes.
621 [EFL] Make accelerated compositing build in Webkit-EFL
622 https://bugs.webkit.org/show_bug.cgi?id=62361
624 Add a new class, GraphicsLayerEfl - not yet implemented.
625 Add ACCELERATED_COMPOSITING related files to CMakeLists.
629 * platform/graphics/efl/GraphicsLayerEfl.cpp: Added.
630 (WebCore::GraphicsLayer::create):
631 (WebCore::GraphicsLayerEfl::GraphicsLayerEfl):
632 (WebCore::GraphicsLayerEfl::~GraphicsLayerEfl):
633 (WebCore::GraphicsLayerEfl::setNeedsDisplay):
634 (WebCore::GraphicsLayerEfl::setNeedsDisplayInRect):
635 * platform/graphics/efl/GraphicsLayerEfl.h: Added.
637 2011-06-09 Jian Li <jianli@chromium.org>
639 Reviewed by David Levin.
641 Calling WebKitBlobBuilder.append with null argument should not crash
642 https://bugs.webkit.org/show_bug.cgi?id=62419
644 Test: fast/files/blob-builder-crash.html
646 * fileapi/WebKitBlobBuilder.cpp:
647 (WebCore::WebKitBlobBuilder::append):
649 2011-06-09 Jer Noble <jer.noble@apple.com>
651 Reviewed by David Hyatt.
653 Roll out r88468, and fix bug #61911 without making Element::offset functions virtual.
654 https://bugs.webkit.org/show_bug.cgi?id=62400
656 No new tests; covered by existing fullscreen/full-screen-video-offset.html test.
658 * rendering/RenderVideo.cpp:
659 (WebCore::rendererPlaceholder): Added; returns the placeholder block, if it exists.
660 (WebCore::RenderVideo::offsetLeft): Pass the offset request to the placeholder block.
661 (WebCore::RenderVideo::offsetTop): Ditto.
662 (WebCore::RenderVideo::offsetWidth): Ditto.
663 (WebCore::RenderVideo::offsetHeight): Ditto.
664 * rendering/RenderVideo.h: Added virtual overrides for the offset functions.
666 2011-06-09 James Robinson <jamesr@chromium.org>
668 Reviewed by Kenneth Russell.
670 [chromium] Scissor rect not set for clipping layers set offscreen
671 https://bugs.webkit.org/show_bug.cgi?id=62339
673 We set a scissorRect on each layer, but only layers with masksToBounds and their descendants should actually set
674 a scissor. Layers that didn't need to scissor had empty scissorRects. Unfortunately layers with masksToBounds
675 and their descendants that are scrolled offscreen also end up with an empty clipped scissor rect.
677 This patch sets an explicit bit on each layer that should scissor and then checks that bit instead of checking
678 for an empty scissor rect at draw time. RenderSurfaceChromiums have different requirements for
679 setScissorToRect, so the old behavior is still available with a flag. This can probably be cleaned up more.
681 Test: platform/chromium/compositing/scissor-out-of-viewport.html
683 * platform/graphics/chromium/LayerRendererChromium.cpp:
684 (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
685 (WebCore::LayerRendererChromium::drawLayer):
686 (WebCore::LayerRendererChromium::setScissorToRect):
687 * platform/graphics/chromium/LayerRendererChromium.h:
688 * platform/graphics/chromium/RenderSurfaceChromium.cpp:
689 (WebCore::RenderSurfaceChromium::draw):
690 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
691 (WebCore::CCLayerImpl::CCLayerImpl):
692 * platform/graphics/chromium/cc/CCLayerImpl.h:
693 (WebCore::CCLayerImpl::setUsesLayerScissor):
694 (WebCore::CCLayerImpl::usesLayerScissor):
696 2011-06-09 Sheriff Bot <webkit.review.bot@gmail.com>
698 Unreviewed, rolling out r88468.
699 http://trac.webkit.org/changeset/88468
700 https://bugs.webkit.org/show_bug.cgi?id=62408
702 It broke build if !ENABLE(FULLSCREEN_API) (Requested by Ossy
706 (WebCore::adjustForLocalZoom):
708 * html/HTMLMediaElement.cpp:
709 * html/HTMLMediaElement.h:
711 2011-06-09 Kenneth Russell <kbr@google.com>
713 Reviewed by Adam Barth.
715 Disallow use of cross-domain media (images, video) in WebGL
716 https://bugs.webkit.org/show_bug.cgi?id=62257
718 Updated WebGL implementation to track recent spec updates in this area.
720 Tests: http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html
721 http/tests/security/webgl-remote-read-remote-image-allowed.html
722 http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html
724 * html/canvas/CanvasRenderingContext.cpp:
725 (WebCore::CanvasRenderingContext::wouldTaintOrigin):
726 (WebCore::CanvasRenderingContext::checkOrigin):
727 * html/canvas/CanvasRenderingContext.h:
728 (WebCore::CanvasRenderingContext::checkOrigin):
729 * html/canvas/WebGLRenderingContext.cpp:
730 (WebCore::WebGLRenderingContext::readPixels):
731 (WebCore::WebGLRenderingContext::texImage2D):
732 (WebCore::WebGLRenderingContext::videoFrameToImage):
733 (WebCore::WebGLRenderingContext::texSubImage2D):
734 * html/canvas/WebGLRenderingContext.h:
736 2011-06-09 Adam Barth <abarth@webkit.org>
738 Reviewed by Eric Seidel.
740 Add an ASSERT to HTMLTreeBuilder
741 https://bugs.webkit.org/show_bug.cgi?id=62403
743 This ASSERT was useful in investigating a re-entrancy bug. We should
746 * html/parser/HTMLTreeBuilder.cpp:
747 (WebCore::HTMLTreeBuilder::processEndOfFile):
749 2011-06-09 Dan Bernstein <mitz@apple.com>
751 Reviewed by Darin Adler.
753 Fix a regression from r88478.
755 * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
756 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Add the runs
757 in reverse order in the RTL case here, since the whole vector is reversed by collectComplexTextRuns()
760 2011-06-09 Julien Chaffraix <jchaffraix@codeaurora.org>
762 Reviewed by Antti Koivisto.
764 REGRESSION(84329): Stylesheets on some pages do not load
765 https://bugs.webkit.org/show_bug.cgi?id=61400
767 Test: fast/css/link-disabled-attr.html
769 Fixed r84329: the change did not take into account the fact
770 that HTMLLinkElement did already contain the disabled information
771 and the 2 information were not linked as they should have!
773 The new logic pushes the information to the stylesheet as this
774 is what the spec mandates and what FF is doing. Also it keeps
775 one bit of information (that JS enabled the stylesheet) as it
776 is needed for the recalcStyleSelector logic.
779 (WebCore::Document::recalcStyleSelector): s/isDisabled/disabled.
781 * html/HTMLLinkElement.cpp:
782 (WebCore::HTMLLinkElement::HTMLLinkElement): Removed m_disabledState,
783 replaced by m_isEnabledViaScript.
784 (WebCore::HTMLLinkElement::setDisabled): Updated the logic after
785 m_disabledState removal. It also matches the spec by forwarding
786 the disabled state to our stylesheet if we have one.
787 (WebCore::HTMLLinkElement::parseMappedAttribute): Removed harmful
788 handling of the disabledAttr.
789 (WebCore::HTMLLinkElement::process): Updated after m_disabledState removal.
790 * html/HTMLLinkElement.h:
791 (WebCore::HTMLLinkElement::isEnabledViaScript): Ditto.
792 (WebCore::HTMLLinkElement::isAlternate): Ditto.
794 2011-06-09 Dan Bernstein <mitz@apple.com>
796 Reviewed by Darin Adler.
798 Simplify ComplexTextController::collectComplexTextRuns()
799 https://bugs.webkit.org/show_bug.cgi?id=62387
801 No new test, since functionality is unchanged.
803 * platform/graphics/mac/ComplexTextController.cpp:
804 (WebCore::ComplexTextController::collectComplexTextRuns): Always iterate characters in logical order,
805 then reverse the run vector for RTL.
807 2011-06-09 Dimitri Glazkov <dglazkov@chromium.org>
809 Reviewed by Kent Tamura.
811 Fold isShadowBoundary into isShadowRoot.
812 https://bugs.webkit.org/show_bug.cgi?id=62317
814 Since there are no longer cases where Node::isShadowBoundary() != Node::isShadowRoot, we can remove this function.
816 In one case where isShadowBoundary was also tested to find ShadowContentElemnt, added a new isContentElement function.
818 Refactoring, covered by existing tests.
820 * css/CSSStyleSelector.cpp:
821 (WebCore::isAtShadowBoundary): Changed to use isShadowRoot.
823 (WebCore::Element::isSpellCheckingEnabled): Ditto.
825 (WebCore::Node::nonBoundaryShadowTreeRootNode): Ditto.
826 (WebCore::Node::nonShadowBoundaryParentNode): Ditto.
828 (WebCore::Node::isContentElement): Added.
829 * dom/NodeRenderingContext.cpp:
830 (WebCore::NodeRenderingContext::NodeRenderingContext): Changed to use isShadowRoot.
832 (WebCore::Position::Position): Ditto.
833 * dom/ShadowContentElement.h:
834 (WebCore::ShadowContentElement::isContentElement): Added.
835 * dom/ShadowRoot.cpp:
836 (WebCore::ShadowRoot::hasContentElement): Changed to use isContentElement.
837 * editing/CompositeEditCommand.cpp:
838 (WebCore::CompositeEditCommand::insertNodeAfter): Changed to use isShadowRoot.
839 * editing/htmlediting.cpp:
840 (WebCore::visiblePositionBeforeNode): Ditto.
841 (WebCore::visiblePositionAfterNode): Ditto.
842 * page/DragController.cpp:
843 (WebCore::asFileInput): Ditto.
844 * rendering/RenderTreeAsText.cpp:
845 (WebCore::nodePosition): Ditto.
847 2011-06-09 Simon Fraser <simon.fraser@apple.com>
849 Reviewed by Darin Adler.
851 Crashes in RenderLayerBacking::paintingGoesToWindow
852 https://bugs.webkit.org/show_bug.cgi?id=61159
854 Speculative fix for unreproducible crash that can occur when RenderObject::repaintUsingContainer()
855 finds a repaintContainer that is not the RenderView, but that is also not
856 composited (for unknown reasons), by checking to see if the layer is
857 compositing before using backing(). An assertion remains to try to catch
858 this in debug builds.
860 * rendering/RenderLayer.cpp:
861 (WebCore::RenderLayer::setBackingNeedsRepaintInRect):
863 2011-06-09 Julien Chaffraix <jchaffraix@webkit.org>
865 Reviewed by Darin Adler.
867 WebCore::WebKitCSSKeyframesRuleInternal::nameAttrSetter() - crash
868 https://bugs.webkit.org/show_bug.cgi?id=62384
870 Test: fast/css/webkit-keyframes-crash.html
872 * css/WebKitCSSKeyframesRule.cpp:
873 (WebCore::WebKitCSSKeyframesRule::setName): stylesheet() is never garanteed
874 to return a non-null pointer. Thus null-check here like the rest of the code.
876 2011-06-09 Julien Chaffraix <jchaffraix@codeaurora.org>
878 Reviewed by David Hyatt.
880 chrome.dll!WebCore::RenderStyle::fontMetrics ReadAV@NULL (two crashes)
881 https://bugs.webkit.org/show_bug.cgi?id=57756
883 Tests: fast/css/fontMetric-border-radius-null-crash.html
884 fast/css/fontMetric-webkit-border-end-width-null-crash.html
886 * css/CSSStyleSelector.cpp:
887 (WebCore::CSSStyleSelector::styleForElement): Added a call to Font::update
888 so that our FontFallbackList is allocated if we ever need it when applying our
891 2011-06-09 Cary Clark <caryclark@google.com>
893 Reviewed by Eric Seidel.
895 Create local CG context for Mac UI elements when Skia is renderer
896 https://bugs.webkit.org/show_bug.cgi?id=62213
898 When building Mac Chrome using Skia as the WebKit renderer,
899 add state to LocalCurrentGraphicsContext to convert the SkCanvas
900 context passed by WebKit into the CGContext needed by UI
903 No new tests. The define typo in question is
904 not yet enabled, so this change has no functional
907 * platform/mac/LocalCurrentGraphicsContext.h:
908 Add SkiaBitLocker to create and release the converted CGContext.
909 Add ContextContainer, a class for Skia to create and release
910 the converted CGContext. If Skia is not used, the class has no effect.
912 * platform/mac/LocalCurrentGraphicsContext.mm:
913 (WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
914 When building with Skia, create the CGContext before passing it on.
916 (WebCore::LocalCurrentGraphicsContext::cgContext):
917 Get the CGContext from the SkiaBitLocker, or the saved context,
920 * rendering/RenderThemeMac.mm:
921 Get the CGContext from Skia conversion or native, as appropriate.
922 Use the LocalCurrentGraphicsContext if there is one. Otherwise,
923 add a ContextContainer to house the SkCanvas to CGContext conversion.
925 (WebCore::RenderThemeMac::paintCapsLockIndicator):
926 (WebCore::RenderThemeMac::paintProgressBar):
927 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
928 (WebCore::RenderThemeMac::paintSliderTrack):
929 (WebCore::RenderThemeMac::paintMediaFullscreenButton):
930 (WebCore::RenderThemeMac::paintMediaMuteButton):
931 (WebCore::RenderThemeMac::paintMediaPlayButton):
932 (WebCore::RenderThemeMac::paintMediaSeekBackButton):
933 (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
934 (WebCore::RenderThemeMac::paintMediaSliderTrack):
935 (WebCore::RenderThemeMac::paintMediaSliderThumb):
936 (WebCore::RenderThemeMac::paintMediaRewindButton):
937 (WebCore::RenderThemeMac::paintMediaReturnToRealtimeButton):
938 (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton):
939 (WebCore::RenderThemeMac::paintMediaControlsBackground):
940 (WebCore::RenderThemeMac::paintMediaCurrentTime):
941 (WebCore::RenderThemeMac::paintMediaTimeRemaining):
942 (WebCore::RenderThemeMac::paintMediaVolumeSliderContainer):
943 (WebCore::RenderThemeMac::paintMediaVolumeSliderTrack):
944 (WebCore::RenderThemeMac::paintMediaVolumeSliderThumb):
946 2011-06-02 Jer Noble <jer.noble@apple.com>
948 Reviewed by Maciej Stachowiak.
950 REGRESSION: Page layout messed up after exiting full screen after video ends at jerryseinfeld.com
951 https://bugs.webkit.org/show_bug.cgi?id=61911
952 <rdar://problem/9523017>
954 Test: fullscreen/full-screen-video-offset.html
956 When the video element is taken full-screen in the new element full-screen API, return the
957 offset width and height of the placeholder renderer which is filling in for the full-screen
958 element. To do so, override offsetWidth, Height, Left, and Top from Element. These are
959 non-virtual functions, so make them virtual.
962 (WebCore::Element::adjustForLocalZoom): Made into a class-static function.
963 * dom/Element.h: Made offset functions virtual.
964 * html/HTMLMediaElement.cpp:
965 (WebCore::elementPlaceholder): Added; utility function.
966 (WebCore::HTMLMediaElement::offsetLeft): Added; virtual override of the
967 Element function. Will be called directly via javascript.
968 (WebCore::HTMLMediaElement::offsetTop): Ditto.
969 (WebCore::HTMLMediaElement::offsetWidth): Ditto.
970 (WebCore::HTMLMediaElement::offsetHeight): Ditto.
971 * html/HTMLMediaElement.h:
973 2011-06-09 Dave Tapuska <dtapuska@rim.com>
975 Reviewed by Daniel Bates.
977 PingLoader destructor could dereference 0 if the Resource
978 Handle creation failed.
980 https://bugs.webkit.org/show_bug.cgi?id=62304
982 * loader/PingLoader.cpp:
983 (WebCore::PingLoader::~PingLoader):
985 2011-06-08 Abhishek Arya <inferno@chromium.org>
987 Reviewed by Ryosuke Niwa.
989 Make indexForVisiblePosition and isSelectableElement static.
990 https://bugs.webkit.org/show_bug.cgi?id=62329
992 This protects us when converting frame->selection->start() or end()
993 to VisiblePosition which blows away the RenderTextControl from
994 underneath (due to layout update).
996 Test: fast/forms/text-control-selection-crash.html
998 * accessibility/AccessibilityRenderObject.cpp:
999 (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
1000 * rendering/RenderTextControl.cpp:
1001 (WebCore::RenderTextControl::selectionStart):
1002 (WebCore::RenderTextControl::selectionEnd):
1003 (WebCore::RenderTextControl::isSelectableElement):
1004 (WebCore::RenderTextControl::indexForVisiblePosition):
1005 * rendering/RenderTextControl.h:
1007 2011-06-09 Ben Murdoch <benm@google.com>
1009 Reviewed by Yury Semikhatsky.
1011 Build break in ScriptProfile.cpp and inspector disabled.
1012 https://bugs.webkit.org/show_bug.cgi?id=62373
1014 No new tests - build fix only.
1016 * bindings/v8/ScriptProfile.cpp: Add necessary guards.
1017 * bindings/v8/ScriptProfile.h: ditto.
1019 2011-06-09 Vsevolod Vlasov <vsevik@chromium.org>
1021 Reviewed by Yury Semikhatsky.
1023 Web Inspector: Network panel preview tab does not reattach SourceFrame when switching between preview and response tabs.
1024 https://bugs.webkit.org/show_bug.cgi?id=62298
1026 * inspector/front-end/ResourcePreviewView.js:
1027 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown.callback):
1028 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown):
1030 2011-06-09 Csaba Osztrogonác <ossy@webkit.org>
1032 [Qt][Mac] Speculative buildfix after r88286.
1034 * platform/graphics/IntPoint.h:
1036 2011-06-09 Mike Lawther <mikelawther@chromium.org>
1038 Reviewed by Kent Tamura.
1040 Parsing issue with -webkit-calc
1041 https://bugs.webkit.org/show_bug.cgi?id=62276
1043 Set the CSSParserString for the calc functions.
1045 Test: css3/calc/regression-62276.html
1047 * css/CSSParser.cpp:
1048 (WebCore::CSSParser::lex):
1050 2011-06-09 Robert Hogan <robert@webkit.org>
1052 Reviewed by Andreas Kling.
1054 Teach Qt about window.internals
1055 https://bugs.webkit.org/show_bug.cgi?id=61074
1057 A weakness of the Qt DRT setup is that things like JSContextRef are abstracted
1058 away from the QtWebKit API so we need DumpRenderTreeSupportQt to access WebCore internals.
1059 Since the window.internals object requires JSContextRef we need to implement it in DumpRenderTreeSupportQt
1060 where we can access it. DumpRenderTreeSupportQt cannot be compiled outside Qt's WebCore and as it
1061 is our only possible route into the WebCoreTestSupport class neither can the new window.internals plumbing.
1062 Likewise we can't put the accessor in WebCoreTestSupport because it would then need to know about QWebFrame
1063 and others. The only alternative seems like a compile time guard which we would have to teach the bots about.
1065 * CodeGenerators.pri:
1069 2011-06-08 Mikołaj Małecki <m.malecki@samsung.com>
1071 Reviewed by Pavel Feldman.
1073 Web Inspector: Crash by buffer overrun crash when serializing inspector object tree.
1074 https://bugs.webkit.org/show_bug.cgi?id=52791
1076 No new tests. The problem can be reproduced by trying to create InspectorValue
1077 from 1.0e-100 and call ->toJSONString() on this.
1079 * inspector/InspectorValues.cpp:
1080 (WebCore::InspectorBasicValue::writeJSON):
1081 Added checking the predicted buffer size and choosing exponential format, or
1082 eventually "NaN" if the buffer is too small for decimal format.
1084 2011-06-09 Sheriff Bot <webkit.review.bot@gmail.com>
1086 Unreviewed, rolling out r88387.
1087 http://trac.webkit.org/changeset/88387
1088 https://bugs.webkit.org/show_bug.cgi?id=62368
1090 New tests introduced in 88387 fail on Leopard,GTK,Qt bots
1091 (Requested by Ossy on #webkit).
1093 * html/canvas/CanvasRenderingContext.cpp:
1094 (WebCore::CanvasRenderingContext::checkOrigin):
1095 * html/canvas/CanvasRenderingContext.h:
1096 * html/canvas/WebGLRenderingContext.cpp:
1097 (WebCore::WebGLRenderingContext::readPixels):
1098 (WebCore::WebGLRenderingContext::texImage2D):
1099 (WebCore::WebGLRenderingContext::videoFrameToImage):
1100 (WebCore::WebGLRenderingContext::texSubImage2D):
1101 * html/canvas/WebGLRenderingContext.h:
1103 2011-06-09 Adam Barth <abarth@webkit.org>
1105 Reviewed by Eric Seidel.
1107 Running script from attach can remove elements from the stack of open elements
1108 https://bugs.webkit.org/show_bug.cgi?id=62160
1110 When the tree build runs script synchronously, that script can remove
1111 arbitrary elements from the stack of open elements. We need to hold a
1112 reference to |parent| in attach instead of rely upon the reference in
1113 the stack of open elements.
1115 Test: fast/parser/document-write-onload-clear.html
1117 * html/parser/HTMLConstructionSite.cpp:
1118 (WebCore::HTMLConstructionSite::attach):
1120 2011-06-08 Luke Macpherson <macpherson@chromium.org>
1122 Reviewed by Eric Seidel.
1124 Make CSSPrimitiveValue support cast to EVerticalAlign.
1125 https://bugs.webkit.org/show_bug.cgi?id=62356
1127 No new tests / refactoring only.
1129 * css/CSSPrimitiveValueMappings.h:
1130 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1131 (WebCore::CSSPrimitiveValue::operator EVerticalAlign):
1132 * css/CSSStyleSelector.cpp:
1133 (WebCore::CSSStyleSelector::applyProperty):
1135 2011-06-08 Justin Novosad <junov@chromium.org>
1137 Reviewed by James Robinson.
1139 [Chromium] Crash when closing a tab with accelerated 2d canvas
1140 https://bugs.webkit.org/show_bug.cgi?id=62324
1141 Upon graphics context destruction, it is important to signal skia
1142 to abandon all of its resource handles. This prevents a crash caused
1143 by skia attempting to release resources that were in the destroyed
1146 * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
1147 (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D):
1149 2011-06-08 James Robinson <jamesr@chromium.org>
1151 Reviewed by Darin Fisher.
1153 REGRESSION(88260): 10-50% performance regression across many page cyclers
1154 https://bugs.webkit.org/show_bug.cgi?id=62349
1156 r88260 fixed a font cache resource leak and lowered the inactive font cache threshold. The latter caused a
1157 significant performance regression across many chromium page cyclers, for example
1158 http://build.chromium.org/f/chromium/perf/linux-release-webkit-latest/moz/report.html?history=50&rev=88279.
1160 This restores the previous inactive font size thresholds to their previous values, but retains the font cleanup
1163 * platform/graphics/FontCache.cpp:
1165 2011-06-08 Hayato Ito <hayato@chromium.org>
1167 Reviewed by Dimitri Glazkov.
1169 A forward/backward tab traversal now visits focusable elements in a shadow root.
1170 https://bugs.webkit.org/show_bug.cgi?id=61410
1172 Test: fast/dom/shadow/tab-order-iframe-and-shadow.html
1174 Like a iframe element, a shadow host becomes a scope of
1175 tabindex. That means all descendant elements in a shadow root are
1176 skipped if the host node of the shadow root is not focusable.
1178 The patch doesn't affect HTMLInputElement and HTMLTextAreaElement,
1179 which uses a shadow root and do extra works in their focus()
1182 A shadow root's <content> is not considered in this patch.
1183 That will be addressed in a following patch.
1185 * page/FocusController.cpp:
1186 (WebCore::shadowRoot):
1187 (WebCore::isTreeScopeOwner):
1188 (WebCore::FocusController::deepFocusableNode):
1189 (WebCore::FocusController::advanceFocusInDocumentOrder):
1190 (WebCore::FocusController::findFocusableNodeAcrossTreeScope):
1191 (WebCore::FocusController::findFocusableNode):
1192 (WebCore::FocusController::nextFocusableNode):
1193 (WebCore::FocusController::previousFocusableNode):
1194 (WebCore::FocusController::ownerOfTreeScope):
1195 * page/FocusController.h:
1197 2011-06-08 Hayato Ito <hayato@chromium.org>
1199 Reviewed by Hajime Morita.
1201 Makes sure that document.activeElement won't be an element in shadow root.
1203 https://bugs.webkit.org/show_bug.cgi?id=61413
1205 Test: fast/dom/shadow/activeelement-should-be-shadowhost.html
1207 * html/HTMLDocument.cpp:
1208 (WebCore::focusedFrameOwnerElement):
1209 (WebCore::HTMLDocument::activeElement):
1211 2011-06-08 Kent Tamura <tkent@chromium.org>
1213 Reviewed by Dimitri Glazkov.
1215 Allow drawing a slider thumb for any nodes.
1216 https://bugs.webkit.org/show_bug.cgi?id=62196
1218 RenderObject::node() should provide various information which is
1219 necessary for rendering. We don't need to refer the parent renderer.
1222 (WebCore::Node::focusDe1egate): Added.
1223 * dom/Node.h: Added a declaration.
1224 * html/shadow/MediaControlElements.cpp:
1225 (WebCore::toParentMediaElement):
1226 Added an overload of toParentMediaElement() with Node* parameter.
1227 * html/shadow/MediaControlElements.h:
1228 (WebCore::toParentMediaElement): ditto.
1229 * html/shadow/SliderThumbElement.cpp:
1230 (WebCore::SliderThumbElement::isEnabledFormControl):
1231 Returns the status of the host node.
1232 (WebCore::SliderThumbElement::isReadOnlyFormControl): ditto.
1233 (WebCore::SliderThumbElement::focusDe1egate):
1234 Returns the host node so that RenderTheme::isFocused() returns true.
1235 (WebCore::SliderThumbElement::detach): Style nit.
1236 (WebCore::SliderThumbElement::hostInput):
1237 Make it const because it is called by const functions.
1238 * html/shadow/SliderThumbElement.h:
1239 - Remove inDragMode()
1240 - Update declarations
1241 * platform/qt/RenderThemeQt.cpp:
1242 (WebCore::RenderThemeQt::paintMediaSliderThumb):
1243 Use Node::shadowAncestorNode() instead of RenderObject::parent() to
1244 support deeper thumb nodes.
1245 * rendering/RenderMediaControlsChromium.cpp:
1246 (WebCore::paintMediaSliderThumb): ditto.
1247 (WebCore::paintMediaVolumeSliderThumb): Remove isSlider() check.
1248 * rendering/RenderSlider.cpp:
1249 (WebCore::RenderSlider::inDragMode):
1250 SliderThumbElement::inDragMode() was removed, and Node::active() has
1251 the same information.
1252 * rendering/RenderTheme.cpp:
1253 (WebCore::RenderTheme::paint): Remove isSlider() checks.
1254 (WebCore::RenderTheme::isFocused): Apply Node::focusDelegate().
1255 * rendering/RenderThemeChromiumLinux.cpp:
1256 (WebCore::RenderThemeChromiumLinux::paintSliderThumb):
1257 isPressed() is enough.
1258 * rendering/RenderThemeChromiumWin.cpp:
1259 isEnabled(), isFocused(), and isPressed() are enough.
1260 (WebCore::RenderThemeChromiumWin::determineSliderThumbState):
1261 (WebCore::RenderThemeChromiumWin::determineClassicState):
1262 * rendering/RenderThemeMac.mm:
1263 (WebCore::RenderThemeMac::paintSliderThumb):
1264 - Remove isSlider() check.
1265 - Passing 'o' to udpateFooState functions is enough.
1266 - isPressed() is enough.
1267 * rendering/RenderThemeSafari.cpp:
1268 (WebCore::RenderThemeSafari::paintSliderThumb):
1269 We don't need special handling anymore.
1270 * rendering/RenderThemeWin.cpp:
1271 (WebCore::RenderThemeWin::determineSliderThumbState):
1272 isEnabled(), isFocused(), and isPressed() are enough.
1274 2011-06-08 Adam Barth <abarth@webkit.org>
1276 Reviewed by Eric Seidel.
1278 constructTreeFromToken can re-enter parser, causing ASSERTs
1279 https://bugs.webkit.org/show_bug.cgi?id=62160
1281 This patch clears the HTMLToken before constructing the tree from the
1282 token, putting the HTMLDocumentParser in a good state to be re-entered.
1284 Tests: fast/parser/document-write-onload-nesting.html
1285 fast/parser/document-write-onload-ordering.html
1287 * html/parser/HTMLDocumentParser.cpp:
1288 (WebCore::HTMLDocumentParser::pumpTokenizer):
1289 * html/parser/HTMLToken.h:
1290 (WebCore::HTMLToken::isUninitialized):
1291 * html/parser/HTMLTreeBuilder.cpp:
1292 (WebCore::HTMLTreeBuilder::constructTreeFromToken):
1294 2011-06-08 Kent Tamura <tkent@chromium.org>
1296 Fix Qt build for r88405.
1297 https://bugs.webkit.org/show_bug.cgi?id=62208
1299 * platform/qt/RenderThemeQt.h:
1301 2011-06-08 Kent Tamura <tkent@chromium.org>
1303 Reviewed by Dimitri Glazkov.
1305 Change the argument of RenderTheme::adjustSliderThumbSize(): RenderObject* -> RenderStyle*
1306 https://bugs.webkit.org/show_bug.cgi?id=62208
1308 Change the argument type of RenderTheme::adjustSliderThumbSize() and
1309 RenderMediaControls::adjustMediaSliderThumbSize() from RenderObject* to RenderStyle*.
1311 Also, each of adjustSliderThumbStyle() overrides calls RenderTheme::
1312 adjustSliderThumbStyle() for future changes.
1314 No new tests. This is a refactoring and should not change any behavior.
1316 * html/shadow/SliderThumbElement.cpp:
1317 (WebCore::RenderSliderThumb::layout): Passing RenderStyle* and remove a FIXME comment.
1318 * platform/efl/RenderThemeEfl.cpp:
1319 (WebCore::RenderThemeEfl::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
1320 * platform/gtk/RenderThemeGtk.cpp:
1321 (WebCore::RenderThemeGtk::adjustSliderThumbStyle): ditto.
1322 (WebCore::RenderThemeGtk::adjustMediaSliderThumbSize):
1323 * platform/gtk/RenderThemeGtk.h:
1324 * platform/gtk/RenderThemeGtk2.cpp:
1325 (WebCore::RenderThemeGtk::adjustSliderThumbSize):
1326 * platform/gtk/RenderThemeGtk3.cpp:
1327 (WebCore::RenderThemeGtk::adjustSliderThumbSize):
1328 * platform/qt/RenderThemeQt.cpp:
1329 (WebCore::RenderThemeQt::adjustSliderThumbStyle): ditto.
1330 (WebCore::RenderThemeQt::adjustSliderThumbSize):
1331 * rendering/RenderMediaControls.cpp:
1332 (WebCore::RenderMediaControls::adjustMediaSliderThumbSize):
1333 * rendering/RenderMediaControls.h:
1334 * rendering/RenderMediaControlsChromium.cpp:
1335 (WebCore::RenderMediaControlsChromium::adjustMediaSliderThumbSize):
1336 * rendering/RenderMediaControlsChromium.h:
1337 * rendering/RenderSlider.cpp:
1338 (WebCore::RenderSlider::layout): Passing RenderStyle* and remove a FIXME comment.
1339 * rendering/RenderTheme.cpp:
1340 (WebCore::RenderTheme::adjustSliderThumbStyle): Add a comment.
1341 (WebCore::RenderTheme::adjustSliderThumbSize):
1342 * rendering/RenderTheme.h:
1343 * rendering/RenderThemeChromiumLinux.cpp:
1344 (WebCore::RenderThemeChromiumLinux::adjustSliderThumbSize):
1345 * rendering/RenderThemeChromiumLinux.h:
1346 * rendering/RenderThemeChromiumMac.h:
1347 * rendering/RenderThemeChromiumMac.mm:
1348 (WebCore::RenderThemeChromiumMac::adjustMediaSliderThumbSize):
1349 * rendering/RenderThemeChromiumSkia.cpp:
1350 (WebCore::RenderThemeChromiumSkia::adjustSliderThumbSize):
1351 * rendering/RenderThemeChromiumSkia.h:
1352 * rendering/RenderThemeChromiumWin.cpp:
1353 (WebCore::RenderThemeChromiumWin::adjustSliderThumbSize):
1354 * rendering/RenderThemeChromiumWin.h:
1355 * rendering/RenderThemeMac.h:
1356 * rendering/RenderThemeMac.mm:
1357 (WebCore::RenderThemeMac::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
1358 (WebCore::RenderThemeMac::adjustSliderThumbSize):
1359 (WebCore::RenderThemeMac::adjustMediaSliderThumbSize):
1360 * rendering/RenderThemeSafari.cpp:
1361 (WebCore::RenderThemeSafari::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
1362 (WebCore::RenderThemeSafari::adjustSliderThumbSize):
1363 * rendering/RenderThemeSafari.h:
1364 * rendering/RenderThemeWin.cpp:
1365 (WebCore::RenderThemeWin::adjustSliderThumbSize):
1366 * rendering/RenderThemeWin.h:
1367 * rendering/RenderThemeWinCE.cpp:
1368 (WebCore::RenderThemeWinCE::adjustSliderThumbSize):
1369 * rendering/RenderThemeWinCE.h:
1371 2011-06-08 Brian Salomon <bsalomon@google.com>
1373 Reviewed by James Robinson.
1375 Avoid always binding FBO 0 implicitly when deleting FBO in DrawingBuffer code because it invalidates Ganesh's cache of the current FBO.
1376 https://bugs.webkit.org/show_bug.cgi?id=62318
1379 Failures takes multiple seconds to occur, relying on JS garbage-collection to occur
1380 http://www.hotbazooka.com/privatejoe-large
1382 * platform/graphics/gpu/DrawingBuffer.cpp:
1383 (WebCore::DrawingBuffer::clear):
1385 2011-06-08 Emil A Eklund <eae@chromium.org>
1387 Reviewed by Eric Seidel.
1389 RenderEmbeddedObject::getReplacementTextGeometry
1390 https://bugs.webkit.org/show_bug.cgi?id=62313
1392 Replace the last use of tx, ty with IntPoint.
1394 Covered by existing tests.
1396 * platform/graphics/FloatRect.h:
1397 (WebCore::FloatRect::move):
1398 (WebCore::FloatRect::moveBy):
1399 * rendering/RenderEmbeddedObject.cpp:
1400 (WebCore::RenderEmbeddedObject::paintReplaced):
1401 (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
1402 (WebCore::RenderEmbeddedObject::isInMissingPluginIndicator):
1403 * rendering/RenderEmbeddedObject.h:
1405 2011-06-08 Tim Horton <timothy_horton@apple.com>
1407 Reviewed by Ryosuke Niwa.
1409 Use correct CFURLStorageSessionRef definition on Leopard, as
1410 we created an inconsistency in const-ness between
1411 WebCoreSystemInterface.h and these two files in the case
1413 https://bugs.webkit.org/show_bug.cgi?id=62223
1415 * platform/network/ResourceHandle.h:
1416 * platform/network/cf/ResourceRequest.h:
1418 2011-06-08 Sailesh Agrawal <sail@chromium.org>
1420 Reviewed by Mihai Parparita.
1422 Chromium Mac: Enable overlay scrollbars
1423 https://bugs.webkit.org/show_bug.cgi?id=59756
1425 Sync ScrollbarThemeChromiumMac.mm/.h with ScrollbarThemeMac.mm to pick up support for overlay scrollbars. The only changes are renaming ScrollbarThemeMac to ScrollbarThemeChromiumMac and using runtime checks instead of #ifdef's.
1427 No new tests, since this code is only enabled on future versions of Mac OS X.
1429 * platform/chromium/ScrollAnimatorChromiumMac.mm: All changes to this file except in scroll() were to swap #if USE(WK_SCROLLBAR_PAINTER) with runtime checks.
1430 (WebCore::ScrollAnimatorChromiumMac::ScrollAnimatorChromiumMac):
1431 (WebCore::ScrollAnimatorChromiumMac::~ScrollAnimatorChromiumMac):
1432 (WebCore::ScrollAnimatorChromiumMac::notityPositionChanged):
1433 (WebCore::ScrollAnimatorChromiumMac::contentAreaWillPaint):
1434 (WebCore::ScrollAnimatorChromiumMac::mouseEnteredContentArea):
1435 (WebCore::ScrollAnimatorChromiumMac::mouseExitedContentArea):
1436 (WebCore::ScrollAnimatorChromiumMac::mouseMovedInContentArea):
1437 (WebCore::ScrollAnimatorChromiumMac::willStartLiveResize):
1438 (WebCore::ScrollAnimatorChromiumMac::contentsResized):
1439 (WebCore::ScrollAnimatorChromiumMac::willEndLiveResize):
1440 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidShow):
1441 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidHide):
1442 (WebCore::ScrollAnimatorChromiumMac::didBeginScrollGesture):
1443 (WebCore::ScrollAnimatorChromiumMac::didEndScrollGesture):
1444 (WebCore::ScrollAnimatorChromiumMac::didAddVerticalScrollbar):
1445 (WebCore::ScrollAnimatorChromiumMac::willRemoveVerticalScrollbar):
1446 (WebCore::ScrollAnimatorChromiumMac::didAddHorizontalScrollbar):
1447 (WebCore::ScrollAnimatorChromiumMac::willRemoveHorizontalScrollbar):
1448 (WebCore::ScrollAnimatorChromiumMac::cancelAnimations):
1449 * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.mm:
1450 (preferredScrollerStyle): Disabled overlay scrollbar styles due to trailing artifacts.
1451 (wkScrollbarPainterPaint): Fixed a problem where the scrollbar track wasn't being drawn.
1452 (wkScrollbarPainterKnobRect): Implemented a previously unimplemented function.
1453 (wkSetScrollbarPainterKnobStyle): Implemented a function that's now supported by the latest Mac OS X seeds.
1454 (isScrollbarOverlayAPIAvailable): Enabled new scrollbar code.
1455 * platform/chromium/ScrollbarThemeChromiumMac.h:
1456 * platform/chromium/ScrollbarThemeChromiumMac.mm: Sync with ScrollbarThemeMac.mm.
1457 (WebCore::scrollbarMap):
1458 (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
1459 (WebCore::updateArrowPlacement):
1460 (WebCore::ScrollbarThemeChromiumMac::registerScrollbar):
1461 (WebCore::ScrollbarThemeChromiumMac::unregisterScrollbar):
1462 (WebCore::ScrollbarThemeChromiumMac::setNewPainterForScrollbar):
1463 (WebCore::ScrollbarThemeChromiumMac::painterForScrollbar):
1464 (WebCore::ScrollbarThemeChromiumMac::scrollbarThickness):
1465 (WebCore::ScrollbarThemeChromiumMac::usesOverlayScrollbars):
1466 (WebCore::ScrollbarThemeChromiumMac::hasButtons):
1467 (WebCore::ScrollbarThemeChromiumMac::hasThumb):
1468 (WebCore::buttonRepaintRect):
1469 (WebCore::ScrollbarThemeChromiumMac::minimumThumbLength):
1470 (WebCore::ScrollbarThemeChromiumMac::shouldDragDocumentInsteadOfThumb):
1471 (WebCore::toScrollbarPainterKnobStyle):
1472 (WebCore::ScrollbarThemeChromiumMac::paint):
1474 2011-06-06 Nate Chapin <japhet@chromium.org>
1476 Reviewed by Adam Barth.
1478 Remove all knowledge of CachedResourceRequests from
1479 CachedResourceLoader. This puts the full burden of
1480 canceling these requests on DocumentLoader (via
1481 SubresourceLoader), and makes a CachedResourceRequest
1482 an OwnPtr in CachedResource.
1484 https://bugs.webkit.org/show_bug.cgi?id=62308
1486 * loader/FrameLoader.cpp:
1487 (WebCore::FrameLoader::stopLoading):
1488 * loader/cache/CachedResource.cpp:
1489 (WebCore::CachedResource::CachedResource):
1490 (WebCore::CachedResource::load):
1491 (WebCore::CachedResource::stopLoading):
1492 * loader/cache/CachedResource.h:
1493 * loader/cache/CachedResourceLoader.cpp:
1494 (WebCore::CachedResourceLoader::~CachedResourceLoader):
1495 (WebCore::CachedResourceLoader::loadDone):
1496 * loader/cache/CachedResourceLoader.h:
1497 * loader/cache/CachedResourceRequest.cpp:
1498 (WebCore::CachedResourceRequest::CachedResourceRequest):
1499 (WebCore::CachedResourceRequest::~CachedResourceRequest):
1500 (WebCore::CachedResourceRequest::load):
1501 (WebCore::CachedResourceRequest::didFinishLoading):
1502 (WebCore::CachedResourceRequest::didFail):
1503 (WebCore::CachedResourceRequest::didReceiveResponse):
1504 (WebCore::CachedResourceRequest::end):
1505 * loader/cache/CachedResourceRequest.h:
1507 2011-06-08 Mike Reed <reed@google.com>
1509 Reviewed by James Robinson.
1511 [Skia] check for null-shader from gradient factory
1512 https://bugs.webkit.org/show_bug.cgi?id=62319
1514 * platform/graphics/skia/GradientSkia.cpp:
1515 (WebCore::Gradient::platformDestroy):
1516 (WebCore::Gradient::platformGradient):
1518 2011-06-08 Kenneth Russell <kbr@google.com>
1520 Reviewed by Adam Barth.
1522 Disallow use of cross-domain media (images, video) in WebGL
1523 https://bugs.webkit.org/show_bug.cgi?id=62257
1525 Updated WebGL implementation to track recent spec updates in this area.
1527 Tests: http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html
1528 http/tests/security/webgl-remote-read-remote-image-allowed.html
1529 http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html
1531 * html/canvas/CanvasRenderingContext.cpp:
1532 (WebCore::CanvasRenderingContext::wouldTaintOrigin):
1533 (WebCore::CanvasRenderingContext::checkOrigin):
1534 * html/canvas/CanvasRenderingContext.h:
1535 (WebCore::CanvasRenderingContext::checkOrigin):
1536 * html/canvas/WebGLRenderingContext.cpp:
1537 (WebCore::WebGLRenderingContext::readPixels):
1538 (WebCore::WebGLRenderingContext::texImage2D):
1539 (WebCore::WebGLRenderingContext::videoFrameToImage):
1540 (WebCore::WebGLRenderingContext::texSubImage2D):
1541 * html/canvas/WebGLRenderingContext.h:
1543 2011-06-08 John Bauman <jbauman@chromium.org>
1545 Reviewed by James Robinson.
1547 Only draw portions of tiles in contentRect
1548 https://bugs.webkit.org/show_bug.cgi?id=62243
1550 Old garbage data can remain in tiles, so make sure to draw only those
1551 portions that are supposed to be drawn.
1553 Test: compositing/repaint/shrink-layer.html
1555 * platform/graphics/chromium/LayerTilerChromium.cpp:
1556 (WebCore::LayerTilerChromium::draw):
1558 2011-06-08 Emil A Eklund <eae@chromium.org>
1560 Reviewed by Eric Seidel.
1562 Convert RenderBlock::isPointInOverflowControl to IntPoint
1563 https://bugs.webkit.org/show_bug.cgi?id=62312
1565 Covered by existing tests.
1567 * rendering/RenderBlock.cpp:
1568 (WebCore::RenderBlock::isPointInOverflowControl):
1569 (WebCore::RenderBlock::nodeAtPoint):
1570 * rendering/RenderBlock.h:
1571 * rendering/RenderListBox.cpp:
1572 (WebCore::RenderListBox::isPointInOverflowControl):
1573 * rendering/RenderListBox.h:
1575 2011-06-08 James Simonsen <simonjam@chromium.org>
1577 Reviewed by Tony Gentilcore.
1579 Fix clang issue, virtual function const mismatch
1580 https://bugs.webkit.org/show_bug.cgi?id=62307
1582 No new tests. Built with clang & ran layout tests.
1584 * page/MediaStreamFrameController.h:
1585 (WebCore::MediaStreamFrameController::GenericClient::isGenericClient):
1587 2011-06-08 Chris Rogers <crogers@google.com>
1589 Reviewed by Kenneth Russell.
1591 Implement BiquadFilterNode for filter types: LOWPASS, HIGHPASS, BANDPASS, LOWSHELF, HIGHSHELF, PEAKING, NOTCH, ALLPASS
1592 https://bugs.webkit.org/show_bug.cgi?id=62078
1594 No new tests since audio API is not yet implemented.
1596 * DerivedSources.make:
1598 * WebCore.xcodeproj/project.pbxproj:
1599 * platform/audio/Biquad.cpp:
1600 (WebCore::Biquad::Biquad):
1601 (WebCore::Biquad::reset):
1602 (WebCore::Biquad::setLowpassParams):
1603 (WebCore::Biquad::setHighpassParams):
1604 (WebCore::Biquad::setNormalizedCoefficients):
1605 (WebCore::Biquad::setLowShelfParams):
1606 (WebCore::Biquad::setHighShelfParams):
1607 (WebCore::Biquad::setPeakingParams):
1608 (WebCore::Biquad::setAllpassParams):
1609 (WebCore::Biquad::setNotchParams):
1610 (WebCore::Biquad::setBandpassParams):
1611 (WebCore::Biquad::setZeroPolePairs):
1612 (WebCore::Biquad::setAllpassPole):
1613 * platform/audio/Biquad.h:
1614 * webaudio/AudioContext.cpp:
1615 (WebCore::AudioContext::createBiquadFilter):
1616 (WebCore::AudioContext::createLowPass2Filter):
1617 (WebCore::AudioContext::createHighPass2Filter):
1618 * webaudio/AudioContext.h:
1619 * webaudio/AudioContext.idl:
1620 * webaudio/AudioNode.h:
1621 * webaudio/BiquadDSPKernel.cpp:
1622 (WebCore::BiquadDSPKernel::process):
1623 * webaudio/BiquadFilterNode.cpp: Added.
1624 (WebCore::BiquadFilterNode::BiquadFilterNode):
1625 * webaudio/BiquadFilterNode.h: Added.
1626 (WebCore::BiquadFilterNode::create):
1627 (WebCore::BiquadFilterNode::type):
1628 (WebCore::BiquadFilterNode::setType):
1629 (WebCore::BiquadFilterNode::frequency):
1630 (WebCore::BiquadFilterNode::q):
1631 (WebCore::BiquadFilterNode::gain):
1632 (WebCore::BiquadFilterNode::biquadProcessor):
1633 * webaudio/BiquadFilterNode.idl: Added.
1634 * webaudio/BiquadProcessor.cpp:
1635 (WebCore::BiquadProcessor::BiquadProcessor):
1636 * webaudio/BiquadProcessor.h:
1637 (WebCore::BiquadProcessor::setType):
1638 * webaudio/HighPass2FilterNode.cpp:
1639 (WebCore::HighPass2FilterNode::HighPass2FilterNode):
1640 * webaudio/LowPass2FilterNode.cpp:
1641 (WebCore::LowPass2FilterNode::LowPass2FilterNode):
1643 2011-06-08 No'am Rosenthal <noam.rosenthal@nokia.com>
1645 Reviewed by Kenneth Rohde Christiansen.
1647 WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
1648 https://bugs.webkit.org/show_bug.cgi?id=61694
1650 No new tests, code path is not activated yet.
1652 * WebCore.xcodeproj/project.pbxproj: Changed the TransformOperation subclassed from "project" to "private"
1654 2011-06-08 Tom Sepez <tsepez@chromium.org>
1656 Reviewed by Adam Barth.
1658 Cause checks for insecure content blocking policy to callback to client.
1659 https://bugs.webkit.org/show_bug.cgi?id=61946
1660 Tests: platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-allowed.html
1661 platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-blocked.html
1662 platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-allowed.html
1663 platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-blocked.html
1665 * loader/FrameLoader.cpp:
1666 (WebCore::FrameLoader::checkIfDisplayInsecureContent):
1667 (WebCore::FrameLoader::checkIfRunInsecureContent):
1668 * loader/FrameLoaderClient.h:
1669 (WebCore::FrameLoaderClient::allowDisplayingInsecureContent):
1670 (WebCore::FrameLoaderClient::allowRunningInsecureContent):
1672 2011-06-08 Kevin Ollivier <kevino@theolliviers.com>
1674 [wx] Build fix after introduction of FontCache::ShouldRetain
1676 * platform/graphics/wx/FontCacheWx.cpp:
1677 (WebCore::FontCache::getFontDataForCharacters):
1679 2011-06-08 Sheriff Bot <webkit.review.bot@gmail.com>
1681 Unreviewed, rolling out r88365.
1682 http://trac.webkit.org/changeset/88365
1683 https://bugs.webkit.org/show_bug.cgi?id=62301
1685 windows bots broken (Requested by loislo_ on #webkit).
1687 * inspector/InspectorValues.cpp:
1688 (WebCore::InspectorBasicValue::writeJSON):
1690 2011-06-08 Mikołaj Małecki <m.malecki@samsung.com>
1692 Reviewed by Pavel Feldman.
1694 Web Inspector: Crash by buffer overrun crash when serializing inspector object tree.
1695 https://bugs.webkit.org/show_bug.cgi?id=52791
1697 No new tests. The problem can be reproduced by trying to create InspectorValue
1698 from 1.0e-100 and call ->toJSONString() on this.
1700 * inspector/InspectorValues.cpp:
1701 (WebCore::InspectorBasicValue::writeJSON):
1702 Added checking the predicted buffer size and choosing exponential format, or
1703 eventually "NaN" if the buffer is too small for decimal format.
1705 2011-06-08 Nico Weber <thakis@chromium.org>
1707 Reviewed by Darin Adler.
1709 Fix a ?: precedence error in ScrollbarThemeMac and ScrollbarThemeChromium
1710 https://bugs.webkit.org/show_bug.cgi?id=62295
1712 This was found by a new warning recently added to clang's -Wparentheses
1714 * platform/chromium/ScrollbarThemeChromiumMac.mm:
1715 (WebCore::ScrollbarThemeChromiumMac::backButtonRect):
1716 * platform/mac/ScrollbarThemeMac.mm:
1717 (WebCore::ScrollbarThemeMac::backButtonRect):
1719 2011-06-08 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
1721 Reviewed by Andreas Kling.
1723 [Qt] Remove dead code from our JSC bridge
1724 https://bugs.webkit.org/show_bug.cgi?id=62287
1726 The m_defaultMethod member is not used since r36848 and QtMethod
1727 was replaced by QtRuntimeMethod and subclasses in r29729.
1729 * bridge/qt/qt_instance.cpp:
1730 (JSC::Bindings::QtInstance::removeCachedMethod):
1731 (JSC::Bindings::QtInstance::visitAggregate):
1732 * bridge/qt/qt_instance.h:
1733 * bridge/qt/qt_runtime.h:
1735 2011-06-08 Ryan Sleevi <rsleevi@chromium.org>
1737 Reviewed by Tony Chang.
1739 Suppress C++0x compat warnings when compiling Chromium port with GCC 4.6
1741 Compiling Chromium port under GCC 4.6 produces warnings about nullptr
1742 https://bugs.webkit.org/show_bug.cgi?id=62242
1744 * WebCore.gyp/WebCore.gyp:
1746 2011-05-25 Xiaomei Ji <xji@chromium.org>
1748 Reviewed by Ryosuke Niwa.
1750 --webkit-visual-word does not work well in words separated by multiple spaces
1751 https://bugs.webkit.org/show_bug.cgi?id=61324
1753 Remove positionBeforeNextWord and positionAfterPreviousWord short-cuts. They try to find the
1754 right word boundary (before the space or after the space) by using previousWordPosition and
1755 nextWordPosition. But they assume words are separated by single space and are not correct
1756 for words separated by multiple spaces and words not separated by space.
1758 Consider positionBeforeNextWord() for example,
1760 First, it checks whether the current position is after the current word by checking current
1761 position's previousWordPosition's nextWordPosition is the same as current position, which is
1762 wrong for words separated by multiple spaces. For example, given words A and B separated by
1763 3 continuous spaces "A B", position "A|", "A |", and "A |" should all be considered as
1764 position after current word. But for position "A |", its previousWordPosition's
1765 nextWordPosition is position "A|", which is different from its current position, so the
1766 current position is not considered as a position after current word, consequently,
1767 instead of returning the right position as "A |B", positionBeforeNextWord returns the
1768 position before next next word, as "A B |C". Similar happens for position "A |".
1770 Second, given 3 Chinese words "ABC" that are not segmented by space, when cursor is at
1771 "A|BC", positionBeforeNextWord() returns the same position after calling current position's
1772 nextWordPosition's previousWordPosition. It should returns position "AB|C".
1774 For those cases, we will have to collect all the word breaks inside the box and look for
1775 the one at left or right of current position.
1777 * editing/visible_units.cpp:
1778 (WebCore::leftWordPosition):
1779 (WebCore::rightWordPosition):
1781 2011-06-08 Greg Simon <gregsimon@chromium.org>
1783 Reviewed by Dimitri Glazkov.
1785 Control Indexeddb backends from LayoutTestController
1786 https://bugs.webkit.org/show_bug.cgi?id=61000
1788 Test: storage/indexeddb/migrate-basics.html
1790 * storage/IDBBackingStore.h:
1791 * storage/IDBFactoryBackendImpl.cpp:
1792 (WebCore::IDBFactoryBackendImpl::open):
1793 (WebCore::IDBFactoryBackendImpl::migrate):
1794 * storage/IDBFactoryBackendImpl.h:
1795 * storage/IDBFactoryBackendInterface.h:
1796 * storage/IDBLevelDBBackingStore.cpp:
1797 (WebCore::IDBLevelDBBackingStore::backingStoreExists):
1798 * storage/IDBLevelDBBackingStore.h:
1799 (WebCore::IDBLevelDBBackingStore::backingStoreType):
1800 * storage/IDBSQLiteBackingStore.cpp:
1801 (WebCore::IDBSQLiteBackingStore::backingStoreExists):
1802 * storage/IDBSQLiteBackingStore.h:
1803 (WebCore::IDBSQLiteBackingStore::backingStoreType):
1805 2011-06-08 Dmitry Lomov <dslomov@google.com>
1807 Reviewed by Adam Barth.
1809 https://bugs.webkit.org/show_bug.cgi?id=62164
1810 Remove "multi-threaded" logic in V8 DOMData, DOMDataStore and friends
1811 This functionality is untested and unused:
1812 This is an old code from Lockers-based implementation of WebWorkers in
1813 V8 bindings, to make sure that DOM objects are released on the right thread
1814 even though GC could have happened on any thread. It is currently unused (since
1815 current model is one worker per process) and is being removed because new implementation
1816 of WebWorkers will be using V8 isolates.
1820 * bindings/v8/ChildThreadDOMData.cpp: Removed.
1821 * bindings/v8/ChildThreadDOMData.h: Removed.
1822 * bindings/v8/DOMData.cpp:
1823 (WebCore::DOMData::DOMData):
1824 (WebCore::DOMData::getCurrent):
1825 (WebCore::DOMData::getMainThreadStore):
1826 * bindings/v8/DOMData.h:
1827 (WebCore::DOMData::getStore):
1828 (WebCore::DOMData::getCurrentMainThreadStore):
1829 (WebCore::DOMData::handleWeakObject):
1830 * bindings/v8/DOMDataStore.cpp:
1831 (WebCore::DOMDataStore::DOMDataStore):
1832 (WebCore::DOMDataStore::~DOMDataStore):
1833 (WebCore::DOMDataStore::weakNodeCallback):
1834 * bindings/v8/DOMDataStore.h:
1835 * bindings/v8/MainThreadDOMData.cpp: Removed.
1836 * bindings/v8/MainThreadDOMData.h: Removed.
1837 * bindings/v8/V8DOMMap.cpp:
1838 (WebCore::getDOMDataStore):
1839 (WebCore::removeAllDOMObjects):
1840 (WebCore::visitDOMNodes):
1841 (WebCore::visitDOMObjects):
1842 (WebCore::visitActiveDOMObjects):
1843 (WebCore::visitDOMSVGElementInstances):
1844 * bindings/v8/V8DOMMap.h:
1845 * bindings/v8/V8GCController.cpp:
1846 (WebCore::V8GCController::gcPrologue):
1847 (WebCore::V8GCController::gcEpilogue):
1848 * bindings/v8/WorkerScriptController.cpp:
1849 (WebCore::WorkerScriptController::~WorkerScriptController):
1851 2011-06-08 Yael Aharon <yael.aharon@nokia.com>
1853 Reviewed by Andreas Kling.
1855 [Qt] Build fix for building QtWebKit inside of Qt.
1856 https://bugs.webkit.org/show_bug.cgi?id=62280
1858 Remove CONFIG=staticlib, because it causes the configure script to add -lwebcore
1861 No new tests, as this is just a build fix.
1865 2011-06-08 Vsevolod Vlasov <vsevik@chromium.org>
1867 Reviewed by Pavel Feldman.
1869 Web Inspector: Render non-document HTML resources as HTML
1870 https://bugs.webkit.org/show_bug.cgi?id=58886
1872 * English.lproj/localizedStrings.js:
1874 * WebCore.vcproj/WebCore.vcproj:
1875 * inspector/front-end/NetworkItemView.js:
1876 (WebInspector.NetworkItemView):
1877 * inspector/front-end/Resource.js:
1878 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
1879 (WebInspector.Resource.prototype.hasErrorStatusCode):
1880 * inspector/front-end/ResourceHTMLView.js: Added.
1881 (WebInspector.ResourceHTMLView):
1882 (WebInspector.ResourceHTMLView.prototype.hasContent):
1883 (WebInspector.ResourceHTMLView.prototype.show):
1884 (WebInspector.ResourceHTMLView.prototype.hide):
1885 (WebInspector.ResourceHTMLView.prototype._createIFrame):
1886 * inspector/front-end/ResourcePreviewView.js: Added.
1887 (WebInspector.ResourcePreviewView):
1888 (WebInspector.ResourcePreviewView.prototype.hasContent):
1889 (WebInspector.ResourcePreviewView.prototype.show):
1890 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown.callback):
1891 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown):
1892 (WebInspector.ResourcePreviewView.prototype._createInnerView):
1893 * inspector/front-end/Settings.js:
1894 (WebInspector.Settings):
1895 * inspector/front-end/WebKit.qrc:
1896 * inspector/front-end/inspector.css:
1897 (.resource-view.html iframe):
1898 * inspector/front-end/inspector.html:
1900 2011-05-18 Pavel Podivilov <podivilov@chromium.org>
1902 Reviewed by Yury Semikhatsky.
1904 Web Inspector: hide script location to ui location conversion details from ScriptsPanel.
1905 https://bugs.webkit.org/show_bug.cgi?id=61035
1907 * inspector/front-end/DebuggerPresentationModel.js:
1908 (WebInspector.DebuggerPresentationModel.prototype.sourceFileForScriptURL):
1909 (WebInspector.DebuggerPresentationModel.prototype.scriptLocationToUILocation.didRequestSourceMapping):
1910 (WebInspector.DebuggerPresentationModel.prototype.scriptLocationToUILocation):
1911 * inspector/front-end/ScriptsPanel.js:
1912 (WebInspector.ScriptsPanel.prototype.showAnchorLocation.didGetUILocation):
1913 (WebInspector.ScriptsPanel.prototype.showAnchorLocation):
1915 2011-06-08 Tommy Widenflycht <tommyw@google.com>
1917 Reviewed by Tony Gentilcore.
1921 Media Stream PeerConnection API: adding StreamEvent class
1922 https://bugs.webkit.org/show_bug.cgi?id=61537
1924 Tests for the Media Stream API will be provided by the bug 56587.
1927 * CodeGenerators.pri:
1928 * DerivedSources.cpp:
1929 * DerivedSources.make:
1930 * GNUmakefile.list.am:
1933 * WebCore.vcproj/WebCore.vcproj:
1934 * WebCore.xcodeproj/project.pbxproj:
1935 * bindings/js/JSEventCustom.cpp:
1937 * bindings/v8/custom/V8EventCustom.cpp:
1939 * dom/DOMAllInOne.cpp:
1941 (WebCore::Event::isStreamEvent):
1943 * dom/StreamEvent.cpp: Added.
1944 (WebCore::StreamEvent::create):
1945 (WebCore::StreamEvent::StreamEvent):
1946 (WebCore::StreamEvent::~StreamEvent):
1947 (WebCore::StreamEvent::initStreamEvent):
1948 (WebCore::StreamEvent::stream):
1949 * dom/StreamEvent.h: Added.
1950 (WebCore::StreamEvent::isStreamEvent):
1951 * dom/StreamEvent.idl: Added.
1953 2011-06-08 Tommy Widenflycht <tommyw@google.com>
1955 Reviewed by Tony Gentilcore.
1957 Media Stream API: integrate the Track List objects into the existing code.
1958 https://bugs.webkit.org/show_bug.cgi?id=60205
1960 Tests for the Media Stream API will be provided by the bug 56587.
1962 * dom/ExclusiveTrackList.cpp:
1963 (WebCore::ExclusiveTrackList::select):
1964 (WebCore::ExclusiveTrackList::trackFailed):
1965 * dom/ExclusiveTrackList.h:
1966 * dom/GeneratedStream.cpp:
1967 (WebCore::GeneratedStream::create):
1968 (WebCore::GeneratedStream::GeneratedStream):
1969 (WebCore::GeneratedStream::streamEnded):
1970 (WebCore::GeneratedStream::audioTracks):
1971 (WebCore::GeneratedStream::videoTracks):
1972 (WebCore::GeneratedStream::stop):
1973 * dom/GeneratedStream.h:
1974 * dom/GeneratedStream.idl:
1975 * dom/MultipleTrackList.cpp:
1976 (WebCore::MultipleTrackList::trackFailed):
1977 (WebCore::MultipleTrackList::enable):
1978 (WebCore::MultipleTrackList::disable):
1979 * dom/MultipleTrackList.h:
1981 * dom/TrackList.cpp:
1982 (WebCore::TrackList::clear):
1983 (WebCore::TrackList::associateStream):
1984 (WebCore::TrackList::associatedStreamLabel):
1985 (WebCore::TrackList::trackFailed):
1986 (WebCore::TrackList::scriptExecutionContext):
1988 * page/MediaStreamClient.h:
1989 * page/MediaStreamController.cpp:
1990 (WebCore::MediaStreamController::enableAudioTrack):
1991 (WebCore::MediaStreamController::disableAudioTrack):
1992 (WebCore::MediaStreamController::selectVideoTrack):
1993 (WebCore::MediaStreamController::streamGenerated):
1994 (WebCore::MediaStreamController::audioTrackFailed):
1995 (WebCore::MediaStreamController::videoTrackFailed):
1996 * page/MediaStreamController.h:
1997 * page/MediaStreamFrameController.cpp:
1998 (WebCore::MediaStreamFrameController::unregister):
1999 (WebCore::MediaStreamFrameController::enterDetachedState):
2000 (WebCore::MediaStreamFrameController::disconnectFrame):
2001 (WebCore::MediaStreamFrameController::enableAudioTrack):
2002 (WebCore::MediaStreamFrameController::disableAudioTrack):
2003 (WebCore::MediaStreamFrameController::selectVideoTrack):
2004 (WebCore::MediaStreamFrameController::streamGenerated):
2005 (WebCore::MediaStreamFrameController::audioTrackFailed):
2006 (WebCore::MediaStreamFrameController::videoTrackFailed):
2007 * page/MediaStreamFrameController.h:
2008 (WebCore::MediaStreamFrameController::ClientBase::isGenericClient):
2009 (WebCore::MediaStreamFrameController::GenericClient::GenericClient):
2010 (WebCore::MediaStreamFrameController::GenericClient::~GenericClient):
2011 (WebCore::MediaStreamFrameController::GenericClient::isGenericClient):
2012 (WebCore::MediaStreamFrameController::GenericClient::unregister):
2014 2011-06-08 Pavel Podivilov <podivilov@chromium.org>
2016 Reviewed by Yury Semikhatsky.
2018 Web Inspector: [REGRESSION] breakpoints are not persisted.
2019 https://bugs.webkit.org/show_bug.cgi?id=62273
2021 * inspector/front-end/Settings.js:
2023 2011-06-08 Alexander Pavlov <apavlov@chromium.org>
2025 Reviewed by Yury Semikhatsky.
2027 Web Inspector: node selection is slow in the Elements panel.
2028 https://bugs.webkit.org/show_bug.cgi?id=60813
2030 Schedule full style updates rather than request all node styles from the backend immediately.
2032 * inspector/front-end/StylesSidebarPane.js:
2033 (WebInspector.StylesSidebarPane.prototype.update.reloadAllStyles):
2034 (WebInspector.StylesSidebarPane.prototype.update):
2036 2011-06-08 Andreas Kling <andreas.kling@nokia.com>
2038 Reviewed by Laszlo Gombos.
2040 [Symbian] Float{32,64}Array and Int16Array fail to build.
2041 https://bugs.webkit.org/show_bug.cgi?id=62219
2043 For some reason, RVCT 2.x is moaning about "class member designated by
2044 a using-declaration must be visible in a direct base class".
2045 Apply same fix as r69122 and r76592.
2047 * html/canvas/Float32Array.h:
2048 (WebCore::Float32Array::set):
2049 * html/canvas/Float64Array.h:
2050 (WebCore::Float64Array::set):
2051 * html/canvas/Int16Array.h:
2052 (WebCore::Int16Array::set):
2054 2011-06-08 Syed Idris Shah <syed.idris-shah@nokia.com>
2056 Reviewed by Andreas Kling.
2058 [Qt] GL_POINT_SPRITE and GL_VERTEX_PROGRAM_POINT_SIZE should be enabled for desktop WebGL
2059 https://bugs.webkit.org/show_bug.cgi?id=61945
2061 For OpenGL ES we do not need these features.
2062 These features are available via shaders in OpenGL ES. But for desktop WebGL using QtWebKit they should be enabled.
2064 LayoutTests/fast/canvas/webgl/point-size.html
2066 * platform/graphics/qt/GraphicsContext3DQt.cpp:
2067 (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
2069 2011-06-08 Gyuyoung Kim <gyuyoung.kim@samsung.com>
2071 Unreviewed. Fix style error.
2073 * platform/efl/RenderThemeEfl.cpp:
2074 * platform/efl/RenderThemeEfl.h:
2076 2011-06-08 Hironori Bono <hbono@chromium.org>
2078 Reviewed by Brent Fulgham.
2081 https://bugs.webkit.org/show_bug.cgi?id=59693
2083 This change adds two SpellCheck API functions (addSpellcheckRange and
2084 removeSpellcheckRange) and one attribute (spellcheckRange) discussed in
2085 the public-webapps ML. This change is currently available only on Chromium.
2087 Tests: editing/spelling/spellcheck-api-pixel.html
2088 editing/spelling/spellcheck-api.html
2091 * bindings/generic/RuntimeEnabledFeatures.cpp:
2092 * bindings/generic/RuntimeEnabledFeatures.h:
2093 (WebCore::RuntimeEnabledFeatures::spellCheckAPIEnabled):
2094 (WebCore::RuntimeEnabledFeatures::setSpellCheckAPIEnabled):
2095 * dom/DocumentMarker.h:
2096 (WebCore::DocumentMarker::length):
2097 * dom/DocumentMarkerController.cpp:
2098 (WebCore::DocumentMarkerController::userSpellingMarkersForNode):
2099 (WebCore::DocumentMarkerController::addUserSpellingMarker):
2100 (WebCore::DocumentMarkerController::removeUserSpellingMarker):
2101 (WebCore::DocumentMarkerController::userSpellingNode):
2102 * dom/DocumentMarkerController.h:
2103 * html/HTMLDivElement.cpp:
2104 (WebCore::HTMLDivElement::spellcheckRanges):
2105 (WebCore::HTMLDivElement::addSpellcheckRange):
2106 (WebCore::HTMLDivElement::removeSpellcheckRange):
2107 * html/HTMLDivElement.h:
2108 * html/HTMLDivElement.idl:
2109 * html/HTMLInputElement.cpp:
2110 (WebCore::HTMLInputElement::spellcheckRanges):
2111 (WebCore::HTMLInputElement::addSpellcheckRange):
2112 (WebCore::HTMLInputElement::removeSpellcheckRange):
2113 * html/HTMLInputElement.h:
2114 * html/HTMLInputElement.idl:
2115 * html/HTMLTextAreaElement.cpp:
2116 (WebCore::HTMLTextAreaElement::spellcheckRanges):
2117 (WebCore::HTMLTextAreaElement::addSpellcheckRange):
2118 (WebCore::HTMLTextAreaElement::removeSpellcheckRange):
2119 * html/HTMLTextAreaElement.h:
2120 * html/HTMLTextAreaElement.idl:
2121 * html/SpellcheckRange.cpp: Added.
2122 (WebCore::SpellcheckRange::SpellcheckRange):
2123 (WebCore::SpellcheckRange::~SpellcheckRange):
2124 * html/SpellcheckRange.h: Added.
2125 (WebCore::SpellcheckRange::create):
2126 (WebCore::SpellcheckRange::start):
2127 (WebCore::SpellcheckRange::length):
2128 (WebCore::SpellcheckRange::suggestions):
2129 (WebCore::SpellcheckRange::options):
2130 * html/SpellcheckRange.idl: Added.
2131 * html/SpellcheckRangeList.cpp: Added.
2132 (WebCore::SpellcheckRangeList::SpellcheckRangeList):
2133 (WebCore::SpellcheckRangeList::~SpellcheckRangeList):
2134 (WebCore::SpellcheckRangeList::item):
2135 * html/SpellcheckRangeList.h: Added.
2136 (WebCore::SpellcheckRangeList::create):
2137 (WebCore::SpellcheckRangeList::isEmpty):
2138 (WebCore::SpellcheckRangeList::clear):
2139 (WebCore::SpellcheckRangeList::append):
2140 (WebCore::SpellcheckRangeList::remove):
2141 (WebCore::SpellcheckRangeList::length):
2142 * html/SpellcheckRangeList.idl: Added.
2143 * rendering/InlineTextBox.cpp:
2144 (WebCore::textCheckingLineStyleForMarkerType):
2145 (WebCore::InlineTextBox::paintDocumentMarkers):
2147 2011-06-07 Andrey Kosyakov <caseq@chromium.org>
2149 Reviewed by Pavel Feldman.
2151 Web Inspector: remove shadow dom inspection from Elements panel by default.
2152 https://bugs.webkit.org/show_bug.cgi?id=62188
2157 (WebCore::Element::ensureShadowRoot):
2158 (WebCore::Element::removeShadowRoot):
2159 * inspector/Inspector.json:
2160 * inspector/InspectorDOMAgent.cpp:
2161 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
2162 (WebCore::InspectorDOMAgent::buildObjectForNode):
2163 (WebCore::InspectorDOMAgent::didInsertDOMNode):
2164 (WebCore::InspectorDOMAgent::didRemoveDOMNode):
2165 * inspector/InspectorDOMAgent.h:
2166 * inspector/front-end/DOMAgent.js:
2167 (WebInspector.DOMNode):
2168 (WebInspector.DOMNode.prototype._renumber):
2169 (WebInspector.DOMAgent.prototype._bindNodes):
2170 (WebInspector.DOMAgent.prototype.querySelectorAll):
2171 (WebInspector.DOMDispatcher.prototype.searchResults):
2172 * inspector/front-end/ElementsPanel.js:
2173 (WebInspector.ElementsPanel):
2174 (WebInspector.ElementsPanel.prototype._attributesUpdated):
2175 (WebInspector.ElementsPanel.prototype._characterDataModified):
2176 (WebInspector.ElementsPanel.prototype._nodeInserted):
2177 (WebInspector.ElementsPanel.prototype._nodeRemoved):
2178 (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
2179 (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
2180 * inspector/front-end/ElementsTreeOutline.js:
2181 (WebInspector.ElementsTreeElement):
2182 (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode):
2183 (WebInspector.ElementsTreeElement.prototype._updateChildren):
2185 * inspector/front-end/inspector.css:
2186 * inspector/front-end/utilities.js:
2187 (Element.prototype.query):
2189 2011-06-08 Mark Rowe <mrowe@apple.com>
2193 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2194 (WebCore::MediaPlayerPrivateAVFoundation::timeChanged):
2195 (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
2197 2011-06-07 Keishi Hattori <keishi@webkit.org>
2199 Reviewed by Kent Tamura.
2201 Rename HTMLInputElement::m_value to m_valueIfDirty
2202 https://bugs.webkit.org/show_bug.cgi?id=61990
2204 No new tests because no behavior change.
2206 * html/HTMLInputElement.cpp: Replaced m_value with m_valueIfDirty.
2207 (WebCore::HTMLInputElement::tooLong):
2208 (WebCore::HTMLInputElement::updateType):
2209 (WebCore::HTMLInputElement::parseMappedAttribute):
2210 (WebCore::HTMLInputElement::copyNonAttributeProperties):
2211 (WebCore::HTMLInputElement::value):
2212 (WebCore::HTMLInputElement::setValue):
2213 (WebCore::HTMLInputElement::setValueFromRenderer):
2214 (WebCore::HTMLInputElement::updateValueIfNeeded):
2215 * html/HTMLInputElement.h: Renamed m_value to m_valueIfDirty.
2216 (WebCore::HTMLInputElement::hasDirtyValue): Added. Returns the dirty value flag.
2218 2011-06-07 Ian Henderson <ianh@apple.com>
2220 Reviewed by Dan Bernstein.
2222 (CG) Sub-image drawing clips unnecessarily
2223 https://bugs.webkit.org/show_bug.cgi?id=62258
2225 If destRect completely encompasses the adjustedDestRect into which we
2226 draw, clipping to destRect will do nothing. Skip the call to
2227 CGContextClipToRect in this case.
2229 * platform/graphics/cg/ImageCG.cpp:
2230 (WebCore::BitmapImage::draw):
2232 2011-06-07 Emil A Eklund <eae@chromium.org>
2234 Reviewed by Eric Seidel.
2236 Convert nodeAtPoint to IntPoint
2237 https://bugs.webkit.org/show_bug.cgi?id=62145
2239 Convert nodeAtPoint to take an IntPoint instead of a pair of ints for the
2242 Covered by existing tests.
2244 * platform/graphics/FloatPoint.h:
2245 (WebCore::FloatPoint::moveBy):
2246 Add moveBy(IntPoint) method
2248 * rendering/EllipsisBox.cpp:
2249 (WebCore::EllipsisBox::nodeAtPoint):
2250 * rendering/EllipsisBox.h:
2251 * rendering/InlineBox.cpp:
2252 (WebCore::InlineBox::nodeAtPoint):
2253 * rendering/InlineBox.h:
2254 * rendering/InlineFlowBox.cpp:
2255 (WebCore::InlineFlowBox::nodeAtPoint):
2256 * rendering/InlineFlowBox.h:
2257 * rendering/InlineTextBox.cpp:
2258 (WebCore::InlineTextBox::nodeAtPoint):
2259 * rendering/InlineTextBox.h:
2260 * rendering/RenderBlock.cpp:
2261 (WebCore::RenderBlock::nodeAtPoint):
2262 (WebCore::RenderBlock::hitTestContents):
2263 * rendering/RenderBlock.h:
2264 * rendering/RenderBox.cpp:
2265 (WebCore::RenderBox::nodeAtPoint):
2266 * rendering/RenderBox.h:
2267 * rendering/RenderFrameSet.cpp:
2268 (WebCore::RenderFrameSet::nodeAtPoint):
2269 * rendering/RenderFrameSet.h:
2270 * rendering/RenderImage.cpp:
2271 (WebCore::RenderImage::nodeAtPoint):
2272 * rendering/RenderImage.h:
2273 * rendering/RenderInline.cpp:
2274 (WebCore::RenderInline::nodeAtPoint):
2275 * rendering/RenderInline.h:
2276 * rendering/RenderLineBoxList.cpp:
2277 (WebCore::RenderLineBoxList::hitTest):
2278 * rendering/RenderListBox.cpp:
2279 (WebCore::RenderListBox::nodeAtPoint):
2280 * rendering/RenderListBox.h:
2281 * rendering/RenderObject.cpp:
2282 (WebCore::RenderObject::hitTest):
2283 * rendering/RenderObject.h:
2284 * rendering/RenderTable.cpp:
2285 (WebCore::RenderTable::nodeAtPoint):
2286 * rendering/RenderTable.h:
2287 * rendering/RenderTableRow.cpp:
2288 (WebCore::RenderTableRow::nodeAtPoint):
2289 * rendering/RenderTableRow.h:
2290 * rendering/RenderTableSection.cpp:
2291 (WebCore::RenderTableSection::nodeAtPoint):
2292 * rendering/RenderTableSection.h:
2293 * rendering/RenderText.h:
2294 (WebCore::RenderText::nodeAtPoint):
2295 * rendering/RenderTextControlMultiLine.cpp:
2296 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
2297 * rendering/RenderTextControlMultiLine.h:
2298 * rendering/RenderTextControlSingleLine.cpp:
2299 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
2300 * rendering/RenderTextControlSingleLine.h:
2301 * rendering/RenderWidget.cpp:
2302 (WebCore::RenderWidget::nodeAtPoint):
2303 * rendering/RenderWidget.h:
2304 * rendering/RootInlineBox.cpp:
2305 (WebCore::RootInlineBox::nodeAtPoint):
2306 * rendering/RootInlineBox.h:
2307 * rendering/svg/RenderSVGForeignObject.cpp:
2308 (WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
2309 (WebCore::RenderSVGForeignObject::nodeAtPoint):
2310 * rendering/svg/RenderSVGForeignObject.h:
2311 * rendering/svg/RenderSVGModelObject.cpp:
2312 (WebCore::RenderSVGModelObject::nodeAtPoint):
2313 * rendering/svg/RenderSVGModelObject.h:
2314 * rendering/svg/RenderSVGRoot.cpp:
2315 (WebCore::RenderSVGRoot::nodeAtPoint):
2316 * rendering/svg/RenderSVGRoot.h:
2317 * rendering/svg/RenderSVGText.cpp:
2318 (WebCore::RenderSVGText::nodeAtFloatPoint):
2319 (WebCore::RenderSVGText::nodeAtPoint):
2320 * rendering/svg/RenderSVGText.h:
2322 2011-06-07 Yi Shen <yi.4.shen@nokia.com>
2324 Reviewed by Simon Hausmann.
2326 [Qt] Fix the error code for media resource failures when using QtMobility
2327 https://bugs.webkit.org/show_bug.cgi?id=55901
2329 To indicate the media resource failures, set the network state to
2330 MediaPlayer::FormatError when receives QMediaPlayer::InvalidMedia or
2331 QMediaPlayer::ResourceError.
2333 * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2334 (WebCore::MediaPlayerPrivateQt::updateStates):
2336 2011-06-07 Emil A Eklund <eae@chromium.org>
2338 Reviewed by Eric Seidel.
2340 Change RenderBlock::hitTestFloats to IntPoint
2341 https://bugs.webkit.org/show_bug.cgi?id=62176
2343 Covered by existing tests.
2345 * rendering/RenderBlock.cpp:
2346 (WebCore::RenderBlock::nodeAtPoint):
2347 (WebCore::RenderBlock::hitTestFloats):
2348 (WebCore::RenderBlock::hitTestColumns):
2349 * rendering/RenderBlock.h:
2351 2011-06-07 Tim Horton <timothy_horton@apple.com>
2353 Reviewed by Alexey Proskuryakov.
2355 Use correct CFURLStorageSessionRef definition on Snow Leopard
2356 https://bugs.webkit.org/show_bug.cgi?id=62223
2358 * platform/mac/WebCoreSystemInterface.h:
2359 * platform/network/ResourceHandle.h:
2360 * platform/network/cf/ResourceRequest.h:
2362 2011-06-07 Emil A Eklund <eae@chromium.org>
2364 Reviewed by Eric Seidel.
2366 Change RenderBlock::hitTestColumns to IntPoint
2367 https://bugs.webkit.org/show_bug.cgi?id=62172
2369 Covered by existing tests.
2371 * rendering/RenderBlock.cpp:
2372 (WebCore::RenderBlock::nodeAtPoint):
2373 (WebCore::RenderBlock::hitTestColumns):
2374 * rendering/RenderBlock.h:
2376 2011-06-07 Simon Fraser <simon.fraser@apple.com>
2378 Reviewed by Darin Adler.
2380 Opacity transition doesn't work while content property is set.
2381 https://bugs.webkit.org/show_bug.cgi?id=59301
2383 StyleRareNonInheritedData's copy constructor omitted to copy
2384 the m_content data, which caused us to detach and re-attach the renderer
2385 at the start of the transition, thereby killing the transition.
2387 Fix by making StyleRareNonInheritedData's copy ctor do the right thing.
2389 Test: transitions/transition-on-element-with-content.html
2391 * rendering/style/ContentData.h:
2392 * rendering/style/ContentData.cpp:
2393 (WebCore::ContentData::clone): New method to do a deep clone. (Can't use a copy
2394 ctor because of the subclasses.)
2395 * rendering/style/CounterDirectives.h: Pack the data members to save space.
2396 Add a clone() function for the HashMap.
2397 * rendering/style/CounterDirectives.cpp:
2398 (WebCore::clone): Make a new HashMap and copy the contents over.
2399 * rendering/style/StyleRareNonInheritedData.cpp:
2400 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): Copy
2401 the content and counter directives over.
2402 (WebCore::StyleRareNonInheritedData::operator==): Rather than just comparing
2403 for pointer equality, do a correct check for m_counterDirectives equality.
2404 (WebCore::StyleRareNonInheritedData::counterDataEquivalent):
2405 * rendering/style/StyleRareNonInheritedData.h:
2407 2011-06-07 Robert Kroeger <rjkroege@chromium.org>
2409 Reviewed by Adam Barth.
2411 [chromium] Add a basic gesture recognizer to the Chromium platform
2412 https://bugs.webkit.org/show_bug.cgi?id=54417
2414 Adds a basic gesture recognizer to the Chromium platform. Adds an entry
2415 point to the GestureRecognizer to reset any internal state on a page reset.
2416 Resetting the gesture recognizer on page load is necesary for reliable
2417 layout test execution and improves gesture recognizer operational
2420 Added an additional constructor to permit building a synthetic
2423 Small modifications to the PlatformGestureRecognizer as required to
2424 implement the simple Chromium platform gesture recognizer.
2426 Tests: fast/events/touch/touch-gesture-click.html
2429 * page/EventHandler.cpp:
2430 (WebCore::EventHandler::resetGestureRecognizer):
2431 * page/EventHandler.h:
2432 * page/FrameView.cpp:
2433 (WebCore::FrameView::reset):
2434 * platform/PlatformGestureRecognizer.h:
2435 * platform/PlatformWheelEvent.h:
2436 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2437 * platform/chromium/GestureRecognizerChromium.cpp: Added.
2438 (WebCore::InnerGestureRecognizer::InnerGestureRecognizer):
2439 (WebCore::InnerGestureRecognizer::reset):
2440 (WebCore::InnerGestureRecognizer::~InnerGestureRecognizer):
2441 (WebCore::InnerGestureRecognizer::addEdgeFunction):
2442 (WebCore::InnerGestureRecognizer::isInClickTimeWindow):
2443 (WebCore::InnerGestureRecognizer::isInsideManhattanSquare):
2444 (WebCore::InnerGestureRecognizer::dispatchSyntheticClick):
2445 (WebCore::InnerGestureRecognizer::processTouchEventForGesture):
2446 (WebCore::InnerGestureRecognizer::scrollViaTouchMotion):
2447 (WebCore::InnerGestureRecognizer::updateValues):
2448 (WebCore::InnerGestureRecognizer::signature):
2449 (WebCore::touchDown):
2450 (WebCore::noGesture):
2452 (WebCore::isClickOrScroll):
2453 (WebCore::inScroll):
2454 (WebCore::PlatformGestureRecognizer::create):
2455 (WebCore::PlatformGestureRecognizer::PlatformGestureRecognizer):
2456 (WebCore::PlatformGestureRecognizer::~PlatformGestureRecognizer):
2457 (WebCore::GestureRecognizerChromium::GestureRecognizerChromium):
2458 (WebCore::GestureRecognizerChromium::~GestureRecognizerChromium):
2459 * platform/chromium/GestureRecognizerChromium.h: Added.
2460 (WebCore::InnerGestureRecognizer::setState):
2461 (WebCore::InnerGestureRecognizer::state):
2462 (WebCore::GestureRecognizerChromium::reset):
2463 (WebCore::GestureRecognizerChromium::processTouchEventForGesture):
2465 2011-06-07 No'am Rosenthal <noam.rosenthal@nokia.com>
2467 Reviewed by Andreas Kling.
2469 [Texmap][Qt] Enable TextureMapper by default
2470 https://bugs.webkit.org/show_bug.cgi?id=61740
2472 Enable TextureMapper on Windows+Symbian, disabling the direct OpenGL path. This would mean that
2473 for now QtWebKit on Windows/Symbian would use the Qt backend for TextureMapper.
2475 No new functionality so no new tests.
2479 * platform/graphics/qt/GraphicsContext3DQt.cpp:
2480 * platform/graphics/qt/TextureMapperQt.cpp:
2481 (WebCore::TextureMapper::create):
2483 2011-06-07 Emil A Eklund <eae@chromium.org>
2485 Reviewed by Eric Seidel.
2487 Convert RenderBox::absoluteRects to IntPoint
2488 https://bugs.webkit.org/show_bug.cgi?id=62130
2490 Covered by existing tests.
2493 (WebCore::Node::hasNonEmptyBoundingBox):
2494 * rendering/InlineBox.h:
2495 (WebCore::InlineBox::size):
2496 * rendering/RenderBlock.cpp:
2497 (WebCore::RenderBlock::absoluteRects):
2498 * rendering/RenderBlock.h:
2499 * rendering/RenderBox.cpp:
2500 (WebCore::RenderBox::absoluteRects):
2501 * rendering/RenderBox.h:
2502 * rendering/RenderInline.cpp:
2503 (WebCore::RenderInline::absoluteRects):
2504 * rendering/RenderInline.h:
2505 * rendering/RenderObject.cpp:
2506 (WebCore::RenderObject::absoluteBoundingBoxRect):
2507 * rendering/RenderObject.h:
2508 (WebCore::RenderObject::absoluteRects):
2509 * rendering/RenderText.cpp:
2510 (WebCore::RenderText::absoluteRects):
2511 * rendering/RenderText.h:
2512 * rendering/RenderView.cpp:
2513 (WebCore::RenderView::absoluteRects):
2514 * rendering/RenderView.h:
2515 * rendering/svg/RenderSVGBlock.cpp:
2516 (WebCore::RenderSVGBlock::absoluteRects):
2517 * rendering/svg/RenderSVGBlock.h:
2518 * rendering/svg/RenderSVGModelObject.cpp:
2519 (WebCore::RenderSVGModelObject::absoluteRects):
2520 * rendering/svg/RenderSVGModelObject.h:
2522 2011-06-07 Kent Tamura <tkent@chromium.org>
2524 Reviewed by Andreas Kling.
2526 [Qt] RenderThemeQt::adjustSliderThumbSize() should not refer to the parent style.
2527 https://bugs.webkit.org/show_bug.cgi?id=62207
2529 * css/mediaControlsQt.css: Add comments.
2530 (audio::-webkit-media-controls-timeline):
2531 (video::-webkit-media-controls-timeline):
2532 (audio::-webkit-media-controls-volume-slider):
2533 (video::-webkit-media-controls-volume-slider):
2534 * platform/qt/RenderThemeQt.cpp: Use fixed values to avoid referring to o->parent().
2535 (WebCore::RenderThemeQt::adjustSliderThumbSize):
2537 2011-06-07 Sailesh Agrawal <sail@chromium.org>
2539 Reviewed by Mihai Parparita.
2541 Chromium Mac: Fork ScrollAnimatorMac to ScrollAnimatorChromiumMac for overlay scrollbar support
2542 https://bugs.webkit.org/show_bug.cgi?id=59753
2544 No new tests. Just forking ScrollAnimatorMac to ScrollAnimatorChromiumMac.
2546 * WebCore.gyp/WebCore.gyp: Added IntPointMac.mm. This is used by some functions in ScrollAnimatorChromiumMac. Also added filters for conflicting class names in ScrollAnimatorChromiumMac.
2547 * WebCore.gypi: Added ScrollAnimatorChromiumMac.h/mm.
2548 * platform/ScrollAnimator.cpp: Extended the #ifdef around ScrollAnimator::create() so that the chromium version will be created.
2549 * platform/chromium/ScrollAnimatorChromiumMac.h: Added.
2550 (WebCore::ScrollAnimatorChromiumMac::setIsDrawingIntoLayer):
2551 (WebCore::ScrollAnimatorChromiumMac::isDrawingIntoLayer):
2552 (WebCore::ScrollAnimatorChromiumMac::haveScrolledSincePageLoad):
2553 * platform/chromium/ScrollAnimatorChromiumMac.mm: Added. Forked from ScrollAnimatorMac and replaced all instances of ScrollAnimatorMac with ScrollAnimatorChromiumMac and ScrollbarThemeMac with ScrollbarThemeChromiumMac. Removed the ENABLE(SMOOTH_SCROLLING) around the file. Stubbed out ScrollAnimatorChromiumMac::scroll() if smooth scrolling is disabled.
2555 (-[ScrollAnimationHelperDelegate initWithScrollAnimator:WebCore::]):
2556 (-[ScrollAnimationHelperDelegate scrollAnimatorDestroyed]):
2557 (-[ScrollAnimationHelperDelegate bounds]):
2558 (-[ScrollAnimationHelperDelegate _immediateScrollToPoint:]):
2559 (-[ScrollAnimationHelperDelegate _pixelAlignProposedScrollPosition:]):
2560 (-[ScrollAnimationHelperDelegate convertSizeToBase:]):
2561 (-[ScrollAnimationHelperDelegate convertSizeFromBase:]):
2562 (-[ScrollAnimationHelperDelegate convertSizeToBacking:]):
2563 (-[ScrollAnimationHelperDelegate convertSizeFromBacking:]):
2564 (-[ScrollAnimationHelperDelegate superview]):
2565 (-[ScrollAnimationHelperDelegate documentView]):
2566 (-[ScrollAnimationHelperDelegate window]):
2567 (-[ScrollAnimationHelperDelegate _recursiveRecomputeToolTips]):
2568 (-[ScrollbarPainterControllerDelegate initWithScrollAnimator:WebCore::]):
2569 (-[ScrollbarPainterControllerDelegate scrollAnimatorDestroyed]):
2570 (-[ScrollbarPainterControllerDelegate contentAreaRectForScrollerImpPair:]):
2571 (-[ScrollbarPainterControllerDelegate inLiveResizeForScrollerImpPair:]):
2572 (-[ScrollbarPainterControllerDelegate mouseLocationInContentAreaForScrollerImpPair:]):
2573 (-[ScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
2574 (-[ScrollbarPainterControllerDelegate scrollerImpPair:setContentAreaNeedsDisplayInRect:]):
2575 (-[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
2576 (-[ScrollbarPartAnimation initWithScrollbarPainter:part:WebCore::scrollAnimator:WebCore::animateAlphaTo:duration:]):
2577 (-[ScrollbarPartAnimation setCurrentProgress:]):
2578 (-[ScrollbarPartAnimation scrollAnimatorDestroyed]):
2579 (-[ScrollbarPainterDelegate initWithScrollAnimator:WebCore::]):
2580 (-[ScrollbarPainterDelegate cancelAnimations]):
2581 (-[ScrollbarPainterDelegate convertRectToBacking:]):
2582 (-[ScrollbarPainterDelegate convertRectFromBacking:]):
2583 (-[ScrollbarPainterDelegate layer]):
2584 (-[ScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
2585 (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
2586 (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
2587 (-[ScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]):
2588 (-[ScrollbarPainterDelegate scrollAnimatorDestroyed]):
2589 (WebCore::ScrollAnimator::create):
2590 (WebCore::ScrollAnimatorChromiumMac::ScrollAnimatorChromiumMac):
2591 (WebCore::ScrollAnimatorChromiumMac::~ScrollAnimatorChromiumMac):
2592 (WebCore::ScrollAnimatorChromiumMac::scroll):
2593 (WebCore::ScrollAnimatorChromiumMac::scrollToOffsetWithoutAnimation):
2594 (WebCore::ScrollAnimatorChromiumMac::adjustScrollXPositionIfNecessary):
2595 (WebCore::ScrollAnimatorChromiumMac::adjustScrollYPositionIfNecessary):
2596 (WebCore::ScrollAnimatorChromiumMac::adjustScrollPositionIfNecessary):
2597 (WebCore::ScrollAnimatorChromiumMac::immediateScrollToPoint):
2598 (WebCore::ScrollAnimatorChromiumMac::immediateScrollByDeltaX):
2599 (WebCore::ScrollAnimatorChromiumMac::immediateScrollByDeltaY):
2600 (WebCore::ScrollAnimatorChromiumMac::notityPositionChanged):
2601 (WebCore::ScrollAnimatorChromiumMac::contentAreaWillPaint):
2602 (WebCore::ScrollAnimatorChromiumMac::mouseEnteredContentArea):
2603 (WebCore::ScrollAnimatorChromiumMac::mouseExitedContentArea):
2604 (WebCore::ScrollAnimatorChromiumMac::mouseMovedInContentArea):
2605 (WebCore::ScrollAnimatorChromiumMac::willStartLiveResize):
2606 (WebCore::ScrollAnimatorChromiumMac::contentsResized):
2607 (WebCore::ScrollAnimatorChromiumMac::willEndLiveResize):
2608 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidShow):
2609 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidHide):
2610 (WebCore::ScrollAnimatorChromiumMac::didBeginScrollGesture):
2611 (WebCore::ScrollAnimatorChromiumMac::didEndScrollGesture):
2612 (WebCore::ScrollAnimatorChromiumMac::didAddVerticalScrollbar):
2613 (WebCore::ScrollAnimatorChromiumMac::willRemoveVerticalScrollbar):
2614 (WebCore::ScrollAnimatorChromiumMac::didAddHorizontalScrollbar):
2615 (WebCore::ScrollAnimatorChromiumMac::willRemoveHorizontalScrollbar):
2616 (WebCore::ScrollAnimatorChromiumMac::cancelAnimations):
2617 (WebCore::elasticDeltaForTimeDelta):
2618 (WebCore::elasticDeltaForReboundDelta):
2619 (WebCore::reboundDeltaForElasticDelta):
2620 (WebCore::scrollWheelMultiplier):
2621 (WebCore::ScrollAnimatorChromiumMac::handleWheelEvent):
2622 (WebCore::ScrollAnimatorChromiumMac::handleGestureEvent):
2623 (WebCore::ScrollAnimatorChromiumMac::pinnedInDirection):
2624 (WebCore::ScrollAnimatorChromiumMac::allowsVerticalStretching):
2625 (WebCore::ScrollAnimatorChromiumMac::allowsHorizontalStretching):
2626 (WebCore::ScrollAnimatorChromiumMac::smoothScrollWithEvent):
2627 (WebCore::ScrollAnimatorChromiumMac::beginScrollGesture):
2628 (WebCore::ScrollAnimatorChromiumMac::endScrollGesture):
2629 (WebCore::ScrollAnimatorChromiumMac::snapRubberBand):
2630 (WebCore::roundTowardZero):
2631 (WebCore::roundToDevicePixelTowardZero):
2632 (WebCore::ScrollAnimatorChromiumMac::snapRubberBandTimerFired):
2633 (WebCore::ScrollAnimatorChromiumMac::startScrollbarPaintTimer):
2634 (WebCore::ScrollAnimatorChromiumMac::scrollbarPaintTimerIsActive):
2635 (WebCore::ScrollAnimatorChromiumMac::stopScrollbarPaintTimer):
2636 (WebCore::ScrollAnimatorChromiumMac::initialScrollbarPaintTimerFired):
2637 (WebCore::ScrollAnimatorChromiumMac::setVisibleScrollerThumbRect):
2638 * platform/graphics/IntPoint.h: Exposed NSPoint conversion routines to chromium mac.
2640 2011-06-07 Sam Weinig <sam@webkit.org>
2642 Reviewed by Anders Carlsson.
2644 Remove repeated IPC traffic from SetRenderTreeSize message
2645 https://bugs.webkit.org/show_bug.cgi?id=62244
2647 * WebCore.xcodeproj/project.pbxproj:
2648 Make RenderArena.h private so it can be called from WebKit2.
2650 * loader/FrameLoaderClient.h:
2651 (WebCore::FrameLoaderClient::dispatchDidLayout):
2654 * page/ChromeClient.h:
2655 Remove setRenderTreeSize.
2657 * page/FrameView.cpp:
2658 (WebCore::FrameView::performPostLayoutTasks):
2659 Call dispatchDidLayout for all frames instead of calling setRenderTreeSize
2662 2011-06-07 Emil A Eklund <eae@chromium.org>
2664 Reviewed by Eric Seidel.
2666 Change RenderBlock::hitTestContents to IntPoint
2667 https://bugs.webkit.org/show_bug.cgi?id=62170
2669 Covered by existing tests.
2671 * rendering/RenderBlock.cpp:
2672 (WebCore::RenderBlock::nodeAtPoint):
2673 (WebCore::RenderBlock::hitTestColumns):
2674 (WebCore::RenderBlock::hitTestContents):
2675 * rendering/RenderBlock.h:
2677 2011-06-07 Jer Noble <jer.noble@apple.com>
2679 Reviewed by Eric Carlson.
2681 Video with poster attribute will not display new frames when scrubbing.
2682 https://bugs.webkit.org/show_bug.cgi?id=62036
2684 Remove our "detection" about the end of a scrub now that there is an explicit seek completion
2685 handler available in AVFoundation. Move what we used to do upon detection in timeChanged()
2686 into seekCompleted().
2688 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2689 (WebCore::MediaPlayerPrivateAVFoundation::timeChanged):
2690 (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
2692 2011-06-07 James Simonsen <simonjam@chromium.org>
2694 Unreviewed, build fix, missing files from r88274.
2696 * bindings/v8/ChildThreadDOMData.cpp: Added.
2697 (WebCore::ChildThreadDOMData::ChildThreadDOMData):
2698 (WebCore::ChildThreadDOMData::getStore):
2699 * bindings/v8/ChildThreadDOMData.h: Added.
2700 * bindings/v8/MainThreadDOMData.cpp: Added.
2701 (WebCore::MainThreadDOMData::MainThreadDOMData):
2702 (WebCore::MainThreadDOMData::getCurrent):
2703 (WebCore::MainThreadDOMData::getMainThreadStore):
2704 (WebCore::MainThreadDOMData::getCurrentMainThreadStore):
2705 * bindings/v8/MainThreadDOMData.h: Added.
2706 (WebCore::MainThreadDOMData::getStore):
2708 2011-06-07 Abhishek Arya <inferno@chromium.org>
2710 Reviewed by Dan Bernstein.
2712 Replicate WidthIterator.cpp fix from r88139.
2713 https://bugs.webkit.org/show_bug.cgi?id=62238
2715 No new tests. Covered by existing layout tests on XP debug bots.
2717 * platform/graphics/win/UniscribeController.cpp:
2718 (WebCore::UniscribeController::advance):
2720 2011-06-07 Sheriff Bot <webkit.review.bot@gmail.com>
2722 Unreviewed, rolling out r88221, r88224, and r88231.
2723 http://trac.webkit.org/changeset/88221
2724 http://trac.webkit.org/changeset/88224
2725 http://trac.webkit.org/changeset/88231
2726 https://bugs.webkit.org/show_bug.cgi?id=62233
2728 assert failure on chromium linux debug (Requested by simonjam
2733 * bindings/v8/ChildThreadDOMData.cpp: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
2734 (WebCore::ChildThreadDOMData::ChildThreadDOMData):
2735 (WebCore::ChildThreadDOMData::getStore):
2736 * bindings/v8/ChildThreadDOMData.h: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
2737 * bindings/v8/DOMData.cpp:
2738 (WebCore::DOMData::DOMData):
2739 (WebCore::DOMData::getCurrent):
2740 * bindings/v8/DOMData.h:
2741 (WebCore::DOMData::owningThread):
2742 (WebCore::DOMData::handleWeakObject):
2743 * bindings/v8/DOMDataStore.cpp:
2744 (WebCore::DOMDataStore::DOMDataStore):
2745 (WebCore::DOMDataStore::~DOMDataStore):
2746 (WebCore::DOMDataStore::allStoresMutex):
2747 (WebCore::DOMDataStore::weakNodeCallback):
2748 * bindings/v8/DOMDataStore.h:
2749 * bindings/v8/MainThreadDOMData.cpp: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
2750 (WebCore::MainThreadDOMData::MainThreadDOMData):
2751 (WebCore::MainThreadDOMData::getCurrent):
2752 (WebCore::MainThreadDOMData::getMainThreadStore):
2753 (WebCore::MainThreadDOMData::getCurrentMainThreadStore):
2754 * bindings/v8/MainThreadDOMData.h: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
2755 (WebCore::MainThreadDOMData::getStore):
2756 * bindings/v8/V8DOMMap.cpp:
2757 (WebCore::getDOMDataStore):
2758 (WebCore::removeAllDOMObjectsInCurrentThread):
2759 (WebCore::visitDOMNodesInCurrentThread):
2760 (WebCore::visitDOMObjectsInCurrentThread):
2761 (WebCore::visitActiveDOMObjectsInCurrentThread):
2762 (WebCore::visitDOMSVGElementInstancesInCurrentThread):
2763 * bindings/v8/V8DOMMap.h:
2764 * bindings/v8/V8GCController.cpp:
2765 (WebCore::V8GCController::gcPrologue):
2766 (WebCore::V8GCController::gcEpilogue):
2767 * bindings/v8/WorkerScriptController.cpp:
2768 (WebCore::WorkerScriptController::~WorkerScriptController):
2770 2011-06-07 Simon Fraser <simon.fraser@apple.com>
2772 Reviewed by Dave Hyatt.
2774 Clean up ContentData
2775 https://bugs.webkit.org/show_bug.cgi?id=62185
2777 ContentData did manual ref()/deref() and had a lot of awkward
2778 code from using a union to store data.
2780 Clean this up by adding ContentData subclasses for different
2781 content types, which are then able to use RefPtr and OwnPtr
2784 * css/CSSComputedStyleDeclaration.cpp:
2785 (WebCore::contentToCSSValue): Cast to different ContentData types as
2788 * css/CSSStyleSelector.cpp:
2789 (WebCore::CSSStyleSelector::loadPendingImages): Cast to ImageContentData, and do some
2792 * html/HTMLBRElement.cpp:
2793 (WebCore::HTMLBRElement::createRenderer): Use hasContent().
2794 * html/HTMLFrameSetElement.cpp:
2795 (WebCore::HTMLFrameSetElement::createRenderer): Ditto
2796 * html/HTMLImageElement.cpp:
2797 (WebCore::HTMLImageElement::createRenderer): Ditto
2798 * rendering/RenderObject.cpp:
2799 (WebCore::RenderObject::createObject): Cast to ImageContentData.
2800 * rendering/RenderObjectChildList.cpp:
2801 (WebCore::RenderObjectChildList::updateBeforeAfterContent): Cast to different ContentData types as
2804 * rendering/style/ContentData.h:
2805 (WebCore::ContentData::~ContentData):
2806 (WebCore::ContentData::isCounter):
2807 (WebCore::ContentData::isImage):
2808 (WebCore::ContentData::isQuote):
2809 (WebCore::ContentData::isText):
2810 (WebCore::ContentData::next):
2811 (WebCore::ContentData::setNext):
2812 (WebCore::ImageContentData::image):
2813 (WebCore::ImageContentData::setImage):
2814 (WebCore::ImageContentData::ImageContentData):
2815 (WebCore::ImageContentData::type):
2816 (WebCore::ImageContentData::isImage):
2817 (WebCore::TextContentData::text):
2818 (WebCore::TextContentData::setText):
2819 (WebCore::TextContentData::TextContentData):
2820 (WebCore::TextContentData::type):
2821 (WebCore::TextContentData::isText):
2822 (WebCore::CounterContentData::counter):
2823 (WebCore::CounterContentData::setCounter):
2824 (WebCore::CounterContentData::CounterContentData):
2825 (WebCore::CounterContentData::type):
2826 (WebCore::CounterContentData::isCounter):
2827 (WebCore::QuoteContentData::quote):
2828 (WebCore::QuoteContentData::setQuote):
2829 (WebCore::QuoteContentData::QuoteContentData):
2830 (WebCore::QuoteContentData::type):
2831 (WebCore::QuoteContentData::isQuote):
2832 Add subclasses for different content types, which are created
2833 via overloaded create() methods on the base class.
2835 * rendering/style/ContentData.cpp:
2836 (WebCore::ContentData::create):
2837 (WebCore::operator==): Test for type equality, followed by comparing data.
2838 (WebCore::operator!=):
2840 * rendering/style/RenderStyle.cpp:
2841 (WebCore::RenderStyle::clearContent):
2842 (WebCore::RenderStyle::appendContent):
2843 (WebCore::RenderStyle::setContent): Replace the overly complex prepareToSetContent()
2844 code with code that either appends, or replaces the content.
2845 This loses an optimization where the existing ContentData object could get reused,
2846 but this seems to be rarely hit in practice.
2847 * rendering/style/RenderStyle.h:
2848 (WebCore::InheritedFlags::hasContent): Convenience method.
2849 * rendering/style/StyleRareNonInheritedData.cpp:
2850 (WebCore::StyleRareNonInheritedData::contentDataEquivalent): Test
2851 that the pointers are non-null, then use the != operator.
2852 * rendering/style/StyleRareNonInheritedData.h: ContentData is a class now.
2854 2011-06-07 Brian Weinstein <bweinstein@apple.com>
2856 Build fix after r88260.
2858 * platform/graphics/win/FontCacheWin.cpp:
2859 (WebCore::FontCache::getFontDataForCharacters): Update to use enum instead of bool.
2860 * platform/graphics/wince/FontCacheWinCE.cpp:
2862 2011-06-07 Rob Buis <rbuis@rim.com>
2864 Reviewed by Dirk Schulze.
2866 stroke-dasharray does not handle "none"
2867 https://bugs.webkit.org/show_bug.cgi?id=62203
2869 Use the initial strokeDashArray style for stroke-dasharray="none" to apply to SVGRenderStyle rather than bailing out.
2871 Tests: svg/W3C-SVG-1.1-SE/styling-css-04-f.svg
2872 svg/custom/invalid-dasharray.svg
2874 * css/SVGCSSStyleSelector.cpp:
2875 (WebCore::CSSStyleSelector::applySVGProperty):
2877 2011-06-07 Sheriff Bot <webkit.review.bot@gmail.com>
2879 Unreviewed, rolling out r88259 and r88263.
2880 http://trac.webkit.org/changeset/88259
2881 http://trac.webkit.org/changeset/88263
2882 https://bugs.webkit.org/show_bug.cgi?id=62228
2884 broke builds (Requested by rniwa on #webkit).
2886 * platform/mac/WebCoreSystemInterface.h:
2887 * platform/network/ResourceHandle.h:
2888 * platform/network/cf/ResourceRequest.h:
2890 2011-06-07 Emil A Eklund <eae@chromium.org>
2892 Reviewed by Eric Seidel.
2894 Switch ContainerNode to use IntPoint
2895 https://bugs.webkit.org/show_bug.cgi?id=61893
2897 Covered by existing tests.
2899 * dom/ContainerNode.cpp:
2900 (WebCore::ContainerNode::getUpperLeftCorner):
2901 (WebCore::ContainerNode::getLowerRightCorner):
2902 (WebCore::ContainerNode::getRect):
2903 Change to use maxX/maxY instead of x+width/y+height
2905 * platform/graphics/FloatPoint.h:
2906 (WebCore::FloatPoint::move):
2907 (WebCore::FloatPoint::moveBy):
2908 (WebCore::FloatPoint::expandedTo):
2909 Add move, moveBy and expandedTo mirroring the IntPoint implementation of the same.
2911 2011-06-07 Ryosuke Niwa <rniwa@webkit.org>
2913 Speculative build fix after r88259.
2915 * platform/network/cf/ResourceRequest.h:
2917 2011-06-07 Michael Saboff <msaboff@apple.com>
2919 Reviewed by Geoffrey Garen.
2921 Need to enable font cache purging in MemoryPressureHandler
2922 https://bugs.webkit.org/show_bug.cgi?id=62060
2924 Improve memory usage under pressure.
2925 Added call to fontCache()->purgeInactiveFontData() in
2926 MemoryPressureHandler::respondToMemoryPressure(). Added protection to
2927 MemoryPressureHandler::install() being called multiple times.
2929 No new tests as funtionality wasn't changed.
2931 * platform/MemoryPressureHandler.cpp:
2932 (WebCore::MemoryPressureHandler::MemoryPressureHandler):
2933 * platform/MemoryPressureHandler.h:
2934 * platform/mac/MemoryPressureHandlerMac.mm:
2935 (WebCore::MemoryPressureHandler::install):
2936 (WebCore::MemoryPressureHandler::respondToMemoryPressure):
2938 2011-06-07 Michael Saboff <msaboff@apple.com>
2940 Reviewed by Geoffrey Garen.
2942 Fonts returned by FontCache::getFontDataForCharacters() are never released
2943 https://bugs.webkit.org/show_bug.cgi?id=61875
2945 This change allows fonts allocated as system fallback fonts to be
2946 released. Previously, the reference counts for these fonts grew
2947 without bound. This is implemented as an auto release class that wraps
2948 accesses to the cache for system fallback fonts. All such accesses are
2949 via the method FontCache::getFontDataForCharacters. The new class is
2950 called FontCachePurgePreventer. When such an object exists, it protects
2951 these fonts from deletion.
2953 Most accesses to the font cache still use the reference counting
2954 implemented by FontCache::getCacheFontData() and
2955 FontCache::releaseFontData() and that operation is not affected by
2958 Added local scoped instance of FontCachePurgePreventer to wrap code
2959 that directly or indirectly accesses fonts via getFontDataForCharacters.
2960 Did a few other miscellaneous bug fixes and changes to allow system
2961 fallback fonts to be pruned from the GlyphPageTree. Changed the
2962 calls to getFontData in the platform specific versions of
2963 Fontcache::getFontDataForCharacters to not increment the reference
2964 count. Moved the purge font check
2965 outside of FontCache::getCachedFontData() into a separate method,
2966 purgeInactiveFontDataIfNeeded() since almost all calls to
2967 getCachedFontData() now happen when purging is not allowed.
2968 purgeInactiveFontDataIfNeeded is invoked in enablePurging() when
2969 m_purgePreventCount is 0.
2971 No new test as the functionality has not changed. Improved font life
2974 * WebCore.exp.in: Added FontCache::purgeInactiveFontDataIfNeeded().
2975 * html/canvas/CanvasRenderingContext2D.cpp:
2976 (WebCore::CanvasRenderingContext2D::measureText):
2977 (WebCore::CanvasRenderingContext2D::drawTextInternal):
2978 Wrapped code accessing fallback fonts with local
2979 FontCachePurgePreventer in these methods.
2981 * page/FrameView.cpp:
2982 (WebCore::FrameView::layout):
2983 (WebCore::FrameView::paintContents):
2984 Wrapped code accessing fallback fonts with local
2985 FontCachePurgePreventer in these methods.
2987 * platform/graphics/FontCache.cpp:
2988 (WebCore::FontCache::FontCache):
2989 (WebCore::FontCache::getCachedFontData):
2990 Moved purge check to new method since it likely can't happen here.
2991 (WebCore::FontCache::releaseFontData):
2992 (WebCore::FontCache::purgeInactiveFontDataIfNeeded):
2993 (WebCore::FontCache::purgeInactiveFontData):
2994 Made purging conditional on m_purgePreventCount. Now some fonts
2995 in the cache are reference counted while other can be purged
2996 outside of code wrapped by in scope FontCachePurgePreventer objects.
2998 * platform/graphics/FontCache.h:
2999 (WebCore::FontCache::disablePurging):
3000 (WebCore::FontCache::enablePurging):
3001 (WebCore::FontCachePurgePreventer::FontCachePurgePreventer):
3002 (WebCore::FontCachePurgePreventer::~FontCachePurgePreventer):
3003 Added new simple purge prevention wrapper class and methods
3004 that it calls in FontCache actually prevent purging. The
3005 simple methods inlined to reduce overhead.
3007 * platform/graphics/FontFastPath.cpp:
3008 (WebCore::Font::glyphDataForCharacter): Update level in
3009 glyph page tree for system fallback fonts so pruning works.
3011 * platform/graphics/GlyphPage.h:
3012 (WebCore::GlyphPage::clearForFontData): New method used for pruning
3013 * platform/graphics/GlyphPageTreeNode.cpp:
3014 (WebCore::GlyphPageTreeNode::pruneFontData):
3015 Now we prune system fallback fonts.
3017 * platform/graphics/chromium/FontCacheChromiumWin.cpp:
3018 (WebCore::FontCache::getFontDataForCharacters):
3019 * platform/graphics/freetype/FontCacheFreeType.cpp:
3020 (WebCore::FontCache::getFontDataForCharacters):
3021 * platform/graphics/haiku/FontCacheHaiku.cpp:
3022 (WebCore::FontCache::getFontDataForCharacters):
3023 * platform/graphics/mac/FontCacheMac.mm:
3024 (WebCore::FontCache::getFontDataForCharacters):
3025 * platform/graphics/qt/FontCacheQt.cpp:
3026 (WebCore::FontCache::getFontDataForCharacters):
3027 * platform/graphics/win/FontCacheWin.cpp:
3028 (WebCore::FontCache::getFontDataForCharacters):
3029 * platform/graphics/wince/FontCacheWinCE.cpp:
3030 * platform/graphics/wx/FontCacheWx.cpp:
3031 (WebCore::FontCache::getFontDataForCharacters):
3032 Changed the calls to getFontData() to not increment the reference
3033 count. The caller of this getFontDataForCharacters() (currently only
3034 Font::glyphDataForCharacter() in fontFastPath.cpp) and it's callers
3035 don't attempt to release the returned fonts so we use the purge
3036 protection described above.
3038 * rendering/InlineTextBox.cpp:
3039 (WebCore::InlineTextBox::selectionRect):
3040 (WebCore::InlineTextBox::offsetForPosition):
3041 (WebCore::InlineTextBox::positionForOffset):
3042 Wrapped code accessing fallback fonts with local
3043 FontCachePurgePreventer in these methods.
3045 * rendering/RenderImage.cpp:
3046 (WebCore::RenderImage::setImageSizeForAltText):
3047 Wrapped code accessing fallback fonts with local
3048 FontCachePurgePreventer in this method.
3050 * rendering/RenderListBox.cpp:
3051 (WebCore::RenderListBox::updateFromElement):
3052 (WebCore::RenderListBox::paintItemForeground):
3053 Wrapped code accessing fallback fonts with local
3054 FontCachePurgePreventer in these methods
3056 * rendering/svg/SVGInlineTextBox.cpp:
3057 (WebCore::SVGInlineTextBox::selectionRectForTextFragment):
3058 Wrapped code accessing fallback fonts with local
3059 FontCachePurgePreventer in this method.
3061 2011-06-07 Tim Horton <timothy_horton@apple.com>
3063 Reviewed by Alexey Proskuryakov.
3065 Use correct CFURLStorageSessionRef definition on Snow Leopard
3066 https://bugs.webkit.org/show_bug.cgi?id=62223
3068 * platform/mac/WebCoreSystemInterface.h:
3069 * platform/network/ResourceHandle.h:
3070 * platform/network/cf/ResourceRequest.h:
3072 2011-06-07 Alok Priyadarshi <alokp@chromium.org>
3074 Reviewed by Stephen White.
3076 [chromium] PlatformContextSkia leaks SkDeviceFactory
3077 https://bugs.webkit.org/show_bug.cgi?id=62163
3079 Valgrind tests should have caught this.
3081 * platform/graphics/skia/PlatformContextSkia.cpp:
3082 (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
3084 2011-06-07 Emil A Eklund <eae@chromium.org>
3086 Reviewed by Eric Seidel.
3088 Convert RenderTextControl::hitInnerTextElement to IntPoint
3089 https://bugs.webkit.org/show_bug.cgi?id=62167
3091 Covered by existing tests.
3093 * rendering/RenderTextControl.cpp:
3094 (WebCore::RenderTextControl::hitInnerTextElement):
3095 * rendering/RenderTextControl.h:
3096 * rendering/RenderTextControlMultiLine.cpp:
3097 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
3098 * rendering/RenderTextControlSingleLine.cpp:
3099 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
3101 2011-06-07 Levi Weintraub <leviw@chromium.org>
3103 Reviewed by Eric Seidel.
3105 Switch paint to use IntPoint
3106 https://bugs.webkit.org/show_bug.cgi?id=62177
3108 Flipping the switch on the remaining paint functions to have them all
3109 use IntPoint for the paint offset instead of tx/ty.
3111 No new tests since this is just refactoring.
3113 * page/FrameView.cpp:
3114 (WebCore::FrameView::paintScrollCorner):
3115 * rendering/InlineBox.cpp:
3116 (WebCore::InlineBox::paint):
3117 * rendering/RenderBlock.cpp:
3118 (WebCore::RenderBlock::paint):
3119 (WebCore::RenderBlock::paintContents):
3120 (WebCore::RenderBlock::paintChildren):
3121 (WebCore::RenderBlock::paintFloats):
3122 * rendering/RenderBlock.h:
3123 * rendering/RenderBox.cpp:
3124 (WebCore::RenderBox::paint):
3125 * rendering/RenderBox.h:
3126 * rendering/RenderBoxModelObject.cpp:
3127 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3128 * rendering/RenderDetailsMarker.cpp:
3129 (WebCore::RenderDetailsMarker::paint):
3130 * rendering/RenderDetailsMarker.h:
3131 * rendering/RenderEmbeddedObject.cpp:
3132 (WebCore::RenderEmbeddedObject::paint):
3133 * rendering/RenderEmbeddedObject.h:
3134 * rendering/RenderFrameSet.cpp:
3135 (WebCore::RenderFrameSet::paint):
3136 * rendering/RenderFrameSet.h:
3137 * rendering/RenderImage.cpp:
3138 (WebCore::RenderImage::paint):
3139 * rendering/RenderImage.h:
3140 * rendering/RenderInline.cpp:
3141 (WebCore::RenderInline::paint):
3142 * rendering/RenderInline.h:
3143 * rendering/RenderLayer.cpp:
3144 (WebCore::RenderLayer::paintScrollCorner):
3145 (WebCore::RenderLayer::paintResizer):
3146 (WebCore::RenderLayer::paintLayer):
3147 * rendering/RenderLayerBacking.cpp:
3148 (WebCore::RenderLayerBacking::paintIntoLayer):
3149 * rendering/RenderLineBoxList.cpp:
3150 (WebCore::RenderLineBoxList::paint):
3151 * rendering/RenderLineBoxList.h:
3152 * rendering/RenderListItem.cpp:
3153 (WebCore::RenderListItem::paint):
3154 * rendering/RenderListItem.h:
3155 * rendering/RenderListMarker.cpp:
3156 (WebCore::RenderListMarker::paint):
3157 * rendering/RenderListMarker.h:
3158 * rendering/RenderObject.cpp:
3159 (WebCore::RenderObject::paint):
3160 * rendering/RenderObject.h:
3161 * rendering/RenderReplaced.cpp:
3162 (WebCore::RenderReplaced::paint):
3163 * rendering/RenderReplaced.h:
3164 * rendering/RenderReplica.cpp:
3165 (WebCore::RenderReplica::paint):
3166 * rendering/RenderReplica.h:
3167 * rendering/RenderScrollbar.cpp:
3168 (WebCore::RenderScrollbar::paintPart):
3169 * rendering/RenderScrollbarPart.cpp:
3170 (WebCore::RenderScrollbarPart::paintIntoRect):
3171 * rendering/RenderScrollbarPart.h:
3172 * rendering/RenderTable.cpp:
3173 (WebCore::RenderTable::paint):
3174 (WebCore::RenderTable::paintObject):
3175 * rendering/RenderTable.h:
3176 * rendering/RenderTableCell.cpp:
3177 (WebCore::RenderTableCell::paint):
3178 * rendering/RenderTableCell.h:
3179 * rendering/RenderTableRow.cpp:
3180 (WebCore::RenderTableRow::paint):
3181 * rendering/RenderTableRow.h:
3182 * rendering/RenderTableSection.cpp:
3183 (WebCore::RenderTableSection::paint):
3184 (WebCore::RenderTableSection::paintCell):
3185 * rendering/RenderTableSection.h:
3186 * rendering/RenderText.h:
3187 (WebCore::RenderText::paint):
3188 * rendering/RenderTextControlSingleLine.cpp:
3189 (WebCore::RenderTextControlSingleLine::paint):
3190 * rendering/RenderTextControlSingleLine.h:
3191 * rendering/RenderView.cpp:
3192 (WebCore::RenderView::paint):
3193 * rendering/RenderView.h:
3194 * rendering/RenderWidget.cpp:
3195 (WebCore::RenderWidget::paint):
3196 * rendering/RenderWidget.h:
3197 * rendering/mathml/RenderMathMLBlock.cpp:
3198 (WebCore::RenderMathMLBlock::paint):
3199 * rendering/mathml/RenderMathMLBlock.h:
3200 * rendering/mathml/RenderMathMLFraction.cpp:
3201 (WebCore::RenderMathMLFraction::paint):
3202 * rendering/mathml/RenderMathMLFraction.h:
3203 * rendering/mathml/RenderMathMLRoot.cpp:
3204 (WebCore::RenderMathMLRoot::paint):
3205 * rendering/mathml/RenderMathMLRoot.h:
3206 * rendering/mathml/RenderMathMLSquareRoot.cpp:
3207 (WebCore::RenderMathMLSquareRoot::paint):
3208 * rendering/mathml/RenderMathMLSquareRoot.h:
3209 * rendering/svg/RenderSVGContainer.cpp:
3210 (WebCore::RenderSVGContainer::paint):
3211 * rendering/svg/RenderSVGContainer.h:
3212 * rendering/svg/RenderSVGForeignObject.cpp:
3213 (WebCore::RenderSVGForeignObject::paint):
3214 * rendering/svg/RenderSVGForeignObject.h:
3215 * rendering/svg/RenderSVGHiddenContainer.cpp:
3216 (WebCore::RenderSVGHiddenContainer::paint):
3217 * rendering/svg/RenderSVGHiddenContainer.h:
3218 * rendering/svg/RenderSVGImage.cpp:
3219 (WebCore::RenderSVGImage::paint):
3220 * rendering/svg/RenderSVGImage.h:
3221 * rendering/svg/RenderSVGPath.cpp:
3222 (WebCore::RenderSVGPath::paint):
3223 * rendering/svg/RenderSVGPath.h:
3224 * rendering/svg/RenderSVGResourceMarker.cpp:
3225 (WebCore::RenderSVGResourceMarker::draw):
3226 * rendering/svg/RenderSVGRoot.cpp:
3227 (WebCore::RenderSVGRoot::paint):
3228 * rendering/svg/RenderSVGRoot.h:
3229 * rendering/svg/RenderSVGText.cpp:
3230 (WebCore::RenderSVGText::paint):
3231 * rendering/svg/RenderSVGText.h:
3232 * rendering/svg/SVGImageBufferTools.cpp:
3233 (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer):
3235 2011-06-07 Young Han Lee <joybro@company100.net>
3237 Reviewed by Kenneth Rohde Christiansen.
3239 [Texmap][Qt] Accelerated animation is not paused properly.
3240 https://bugs.webkit.org/show_bug.cgi?id=61446
3242 The transform matrix of an accelerated animation shouldn't be synced with the matrix of the GraphicsLayer when the animation is paused.
3244 Test: animations/play-state-paused.html
3246 * platform/graphics/texmap/TextureMapperNode.cpp:
3247 (WebCore::TextureMapperNode::syncCompositingStateSelf):
3248 (WebCore::TextureMapperNode::hasOpacityAnimation):
3249 (WebCore::TextureMapperNode::hasTransformAnimation):
3250 * platform/graphics/texmap/TextureMapperNode.h:
3252 2011-06-07 Lucas De Marchi <lucas.demarchi@profusion.mobi>
3254 Reviewed by Antonio Gomes.
3256 [EFL] Remove Ecore_X bits from PlatformScreenEfl
3257 https://bugs.webkit.org/show_bug.cgi?id=61649
3259 Remove the need for Ecore_X and some X calls by always using
3260 new functions available in EFL to get the screen size.
3262 No new tests since the same functionality are done inside EFL now.
3264 * platform/efl/PlatformScreenEfl.cpp:
3265 (WebCore::screenRect):
3267 2011-06-07 Carlos Garcia Campos <cgarcia@igalia.com>
3269 Reviewed by Martin Robinson.
3271 [GTK] Move moduleMixesGtkSymbols() from PluginPackage to PluginView
3272 https://bugs.webkit.org/show_bug.cgi?id=62200
3274 In WebKit2 PluginPackage is used by the UI process to load plugins
3275 in order to get information about them, but it doesn't use any GTK
3276 symbol. So the UI process should be able to load plugins even when
3277 building with GTK3, but we should not allow the plugin view to use
3278 the plugin if it mixes GTK2 and GTK3 symbols.
3280 * plugins/PluginPackage.h:
3281 (WebCore::PluginPackage::module): New method to return the
3283 * plugins/gtk/PluginPackageGtk.cpp:
3284 (WebCore::PluginPackage::load): Remove moduleMixesGtkSymbols().
3285 * plugins/gtk/PluginViewGtk.cpp:
3286 (WebCore::PluginView::updatePluginWidget): Check whether plugin
3287 was successfully loaded before trying to create the drawable.
3288 (WebCore::PluginView::paint): Return early if plugin didn't start
3289 or was not successfully loaded.
3290 (WebCore::PluginView::handleKeyboardEvent): Ditto.
3291 (WebCore::PluginView::handleMouseEvent): Ditto.
3292 (WebCore::PluginView::handleFocusInEvent): Ditto.
3293 (WebCore::PluginView::handleFocusOutEvent): Ditto.
3294 (WebCore::moduleMixesGtkSymbols):
3295 (WebCore::PluginView::platformStart): Check whether module is
3296 mixing GTK+ 2 and GTK+ 3 symbols.
3298 2011-06-07 Sheriff Bot <webkit.review.bot@gmail.com>
3300 Unreviewed, rolling out r88238.
3301 http://trac.webkit.org/changeset/88238
3302 https://bugs.webkit.org/show_bug.cgi?id=62216
3304 Broke a couple of inspector tests (Requested by apavlov on
3307 * inspector/front-end/StylesSidebarPane.js:
3308 (WebInspector.StylesSidebarPane.prototype.update):
3310 2011-06-07 Dinu Jacob <dinu.jacob@nokia.com>
3312 Reviewed by Dimitri Glazkov.
3314 Inform ChromeClient touch events are not needed by the webpage when navigating away from the page instead of in both Document:detach/CachedFrame
3315 https://bugs.webkit.org/show_bug.cgi?id=61543
3317 Inform chrome client that touch events are not needed by the webpage
3318 when navigating away from the page only once to avoid the flag being
3319 overwritten later if a page is removed from the page cache
3322 (WebCore::Document::detach):
3323 * history/CachedFrame.cpp:
3324 (WebCore::CachedFrame::CachedFrame):
3325 * loader/FrameLoader.cpp:
3326 (WebCore::FrameLoader::transitionToCommitted):
3328 2011-06-07 Alexander Pavlov <apavlov@chromium.org>
3330 Reviewed by Yury Semikhatsky.
3332 Web Inspector: node selection is slow in the Elements panel.
3333 https://bugs.webkit.org/show_bug.cgi?id=60813
3335 Schedule full style updates rather than request all node styles from the backend immediately.
3337 * inspector/front-end/StylesSidebarPane.js:
3338 (WebInspector.StylesSidebarPane.prototype.update.reloadAllStyles):
3339 (WebInspector.StylesSidebarPane.prototype.update):
3341 2011-06-07 Yury Semikhatsky <yurys@chromium.org>
3343 Reviewed by Pavel Feldman.
3345 Web Inspector: remove duplicate breakpoints from localStorage
3346 https://bugs.webkit.org/show_bug.cgi?id=62206
3348 Perform one-time breakpoint storage cleanup to get rid of duplicate breakpoints in
3349 case when settings version is less than 1.
3351 * inspector/front-end/Settings.js:
3352 (WebInspector.Settings):
3353 (WebInspector.Settings.prototype._set):
3354 (WebInspector.Settings.prototype._migrateSettings.splitObjects):
3355 (WebInspector.Settings.prototype._migrateSettings.removeDuplicateObjects):
3356 (WebInspector.Settings.prototype._migrateSettings):
3358 2011-06-03 Yury Semikhatsky <yurys@chromium.org>
3360 Reviewed by Pavel Feldman.
3362 [Chromium] Web Inspector: correctly handle disconnect from worker when script execution is paused
3363 https://bugs.webkit.org/show_bug.cgi?id=62019
3365 Dispatch disconnecFrontend message in debugger task mode to make sure
3366 it is processed even if execution is paused.
3368 * bindings/v8/WorkerScriptDebugServer.cpp:
3369 (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
3370 (WebCore::WorkerScriptDebugServer::quitMessageLoopOnPause):
3371 * bindings/v8/WorkerScriptDebugServer.h:
3373 2011-06-07 Felician Marton <marton.felician.zoltan@stud.u-szeged.hu>
3375 Reviewed by Nikolas Zimmermann.
3377 SVG animation beginElement() does not restart the animation after endElement().
3378 https://bugs.webkit.org/show_bug.cgi?id=43452
3380 Test: svg/animations/animate-endElement-beginElement.html
3382 Calling beginElement() after calling endElement() previously does not restarted the animation when animation
3383 element's end attribute doesn't contains a bigger value than the current animation time.
3385 * svg/animation/SVGSMILElement.cpp:
3386 (WebCore::SVGSMILElement::findInstanceTime):
3388 2011-06-07 Naoki Takano <takano.naoki@gmail.com>
3390 Reviewed by Kent Tamura.
3392 [Chromium] Click event is not fired for a menulist <select>
3393 https://bugs.webkit.org/show_bug.cgi?id=60563
3395 Tests: SelectItemEventFire, SelectItemKeyEvent, SelectItemRemoveSelectOnChange and SelectItemRemoveSelectOnChange in webkit_unit_tests.
3397 * platform/chromium/PopupMenuChromium.cpp:
3398 (WebCore::PopupContainer::showPopup): Set m_focusedNode from m_frameView.
3399 (WebCore::PopupListBox::handleMouseReleaseEvent): Call dispatchMouseEvent to forward the event only if select popup.
3400 (WebCore::PopupListBox::acceptIndex): Change to return accepted or not.
3402 2011-06-07 Andras Becsi <abecsi@webkit.org>
3404 Reviewed by Yury Semikhatsky.
3406 REGRESSION(r88221): "Chromium debug compilation broken".
3407 https://bugs.webkit.org/show_bug.cgi?id=62197
3409 No new tests needed.
3411 * bindings/v8/V8GCController.cpp: Also rename call-sites.
3412 (WebCore::V8GCController::gcPrologue):
3413 (WebCore::V8GCController::gcEpilogue):
3415 2011-06-07 MORITA Hajime <morrita@google.com>
3417 Unreviewed, rolling out r88212 and r88219.
3418 http://trac.webkit.org/changeset/88212
3419 http://trac.webkit.org/changeset/88219
3420 https://bugs.webkit.org/show_bug.cgi?id=57439
3422 Tests get timeout at Snow Leopard
3425 (html:focus, body:focus, input[readonly]:focus):
3426 * rendering/RenderWidget.cpp:
3427 (WebCore::RenderWidget::paint):
3429 2011-06-07 Andras Becsi <abecsi@webkit.org>
3431 Rubber-stamped by Csaba Osztrogonác.
3433 [Qt][V8] Fix the build after 88221.
3435 No new tests needed.
3437 * WebCore.pro: Remove non-existing files.
3438 * bindings/v8/V8DOMMap.cpp:
3439 (WebCore::removeAllDOMObjects): Also rename the definition of the function.
3441 2011-06-06 Dmitry Lomov <dslomov@google.com>
3443 Reviewed by Adam Barth.
3445 https://bugs.webkit.org/show_bug.cgi?id=62164
3446 Remove "multi-threaded" logic in V8 DOMData, DOMDataStore and friends
3447 This functionality is untested and unused:
3448 This is an old code from Lockers-based implementation of WebWorkers in
3449 V8 bindings, to make sure that DOM objects are released on the right thread
3450 even though GC could have happened on any thread. It is currently unused (since
3451 current model is one worker per process) and is being removed because new implementation
3452 of WebWorkers will be using V8 isolates.
3455 * bindings/v8/ChildThreadDOMData.cpp: Removed.
3456 * bindings/v8/ChildThreadDOMData.h: Removed.
3457 * bindings/v8/DOMData.cpp:
3458 (WebCore::DOMData::DOMData):
3459 (WebCore::DOMData::getCurrent):
3460 (WebCore::DOMData::getMainThreadStore):
3461 * bindings/v8/DOMData.h:
3462 (WebCore::DOMData::getStore):
3463 (WebCore::DOMData::getCurrentMainThreadStore):
3464 (WebCore::DOMData::handleWeakObject):
3465 * bindings/v8/DOMDataStore.cpp:
3466 (WebCore::DOMDataStore::DOMDataStore):
3467 (WebCore::DOMDataStore::~DOMDataStore):
3468 (WebCore::DOMDataStore::weakNodeCallback):
3469 * bindings/v8/DOMDataStore.h:
3470 * bindings/v8/MainThreadDOMData.cpp: Removed.
3471 * bindings/v8/MainThreadDOMData.h: Removed.
3472 * bindings/v8/V8DOMMap.cpp:
3473 (WebCore::getDOMDataStore):
3474 (WebCore::visitDOMNodes):
3475 (WebCore::visitDOMObjects):
3476 (WebCore::visitActiveDOMObjects):
3477 (WebCore::visitDOMSVGElementInstances):
3478 * bindings/v8/V8DOMMap.h:
3479 * bindings/v8/V8GCController.cpp:
3480 (WebCore::V8GCController::gcPrologue):
3481 (WebCore::V8GCController::gcEpilogue):
3482 * bindings/v8/WorkerScriptController.cpp:
3483 (WebCore::WorkerScriptController::~WorkerScriptController):
3485 2011-06-06 Nico Weber <thakis@chromium.org>
3487 Reviewed by Adam Barth.
3489 [chromium] Make VideoFrameChromium's destructor virtual
3490 https://bugs.webkit.org/show_bug.cgi?id=62186
3492 This fixes a real bug, since WebMediaPlayerClientImpl::putCurrentFrame
3493 deletes a VideoFrameChromium subclass type through this interface
3494 class, causing ~VideoFrameChromiumImpl's destructor not to run.
3495 (VideoFrameChroimumImpl happens to not have a destructor or any