1 2011-06-10 James Simonsen <simonjam@chromium.org>
3 Reviewed by Eric Seidel.
5 <script> inside <svg> should be executed
6 https://bugs.webkit.org/show_bug.cgi?id=62412
8 Tests: svg/in-html/script-external.html
9 svg/in-html/script-nested.html
10 svg/in-html/script-write.html
11 svg/in-html/script.html
13 * html/parser/HTMLTreeBuilder.cpp:
14 (WebCore::HTMLTreeBuilder::processEndTag):
16 2011-06-10 Adam Barth <abarth@webkit.org>
18 Reviewed by Darin Adler.
20 Script-created parsers should ignore data from the network
21 https://bugs.webkit.org/show_bug.cgi?id=62336
23 If the network packet boundaries line up just right, we can end up
24 feeding network data to a parser created by document.write (or
25 document.open). That's incorrect.
27 This patch causes DocumentWriter to grab hold of the original parser
28 and direct all input to that parser.
30 Test: fast/parser/document-write-ignores-later-network-bytes.html
33 (WebCore::Document::explicitClose):
34 * loader/DocumentWriter.cpp:
35 (WebCore::DocumentWriter::begin):
36 (WebCore::DocumentWriter::addData):
37 (WebCore::DocumentWriter::endIfNotLoadingMainResource):
38 (WebCore::DocumentWriter::setDocumentWasLoadedAsPartOfNavigation):
39 * loader/DocumentWriter.h:
41 2011-06-10 Simon Fraser <simon.fraser@apple.com>
43 Reviewed by Dan Bernstein.
45 Keep overlap testing logic until real 3d transforms are being used
46 https://bugs.webkit.org/show_bug.cgi?id=49857
48 For pages that use the translateZ(0) hack to force compositing layers, it's
49 advantageous to keep overlap testing, to avoid putting too many other
52 Only turn off overlap testing if non-identity 3D transforms are used.
54 Tests: compositing/layer-creation/rotate3d-overlap.html
55 compositing/layer-creation/translatez-overlap.html
57 * rendering/RenderLayerCompositor.cpp:
58 (WebCore::RenderLayerCompositor::updateBacking):
59 (WebCore::RenderLayerCompositor::hasNonIdentity3DTransform):
60 * rendering/RenderLayerCompositor.h:
62 2011-06-10 David Levin <levin@chromium.org>
64 Reviewed by Dmitry Titov.
66 Web Worker fails to fire error event when a resource fetch fails.
67 https://bugs.webkit.org/show_bug.cgi?id=62475
69 Test: http/tests/workers/worker-workerScriptNotThere.html
71 * workers/WorkerScriptLoader.cpp:
72 (WebCore::WorkerScriptLoader::didFinishLoading): Ensure that
73 the client is notified of the error when it happens during loading.
75 2011-06-10 David Levin <levin@chromium.org>
77 Reviewed by Dmitry Titov.
79 Fetching a Worker with url that isn't allowed from a file based test causes DRT to crash.
80 https://bugs.webkit.org/show_bug.cgi?id=62469
82 Test: fast/workers/worker-crash-with-invalid-location.html
84 * workers/DefaultSharedWorkerRepository.cpp:
85 (WebCore::SharedWorkerScriptLoader::load): Changed to using the RefCounted version of WorkerScriptLoader.
87 (WebCore::Worker::create): Ditto.
88 * workers/Worker.h: Ditto.
89 * workers/WorkerContext.cpp:
90 (WebCore::WorkerContext::importScripts): Ditto.
91 * workers/WorkerScriptLoader.cpp:
92 (WebCore::WorkerScriptLoader::~WorkerScriptLoader): Created to
93 allow removing some header includes in WorkerScriptLoader.h.
94 (WebCore::WorkerScriptLoader::loadAsynchronously): Fix the ordering
95 of setPendingActivity and keep WorkerScriptLoader alive during a
97 * workers/WorkerScriptLoader.h: Made this RefCounted to allow for
98 keeping it alive during callbacks. Also, removed unnecessary header
99 inclusions (and added a destructor to facilitate that).
100 (WebCore::WorkerScriptLoader::create):
102 2011-06-10 Alok Priyadarshi <alokp@chromium.org>
104 Reviewed by James Robinson.
106 [chromium] Top portion of page is rendered messed up with accelerated drawing
107 https://bugs.webkit.org/show_bug.cgi?id=62484
109 Fixed the math in flipping the texture from bottom-up to top-down.
110 Test: compositing/repaint/shrink-layer.html (existing)
112 * platform/graphics/chromium/LayerTilerChromium.cpp:
113 (WebCore::LayerTilerChromium::draw):
115 2011-06-10 Tony Chang <tony@chromium.org>
117 Reviewed by Ojan Vafai.
119 add a compile guard ENABLE(FLEXBOX)
120 https://bugs.webkit.org/show_bug.cgi?id=62049
122 * Configurations/FeatureDefines.xcconfig:
124 2011-06-10 Sam Weinig <sam@webkit.org>
126 Roll out r88568. It is not the right fix for the problem.
128 * loader/appcache/ApplicationCacheHost.cpp:
129 (WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
131 2011-06-10 Mark Rowe <mrowe@apple.com>
133 Reviewed by Dimitri Glazkov.
135 <rdar://problem/9562114> Fix DumpRenderTree build for production configuration.
137 Rename the built WebCoreTestSupport dylib to libWebCoreTestSupport.dylib so
138 that it can be found via the library search path rather than requiring an
139 absolute path be passed to the linker.
141 Install the library and its associated header file in a more appropriate location
142 for the production configuration.
144 * Configurations/WebCoreTestSupport.xcconfig:
146 2011-06-10 Simon Fraser <simon.fraser@apple.com>
148 Reviewed by Dave Hyatt.
150 Add a scheduleSetNeedsStyleRecalc() method to ContainerNode for use by RenderLayerCompositor
151 https://bugs.webkit.org/show_bug.cgi?id=62471
153 RenderLayerCompositor had some code that did a setNeedsStyleRecalc(), but
154 in a way that was safe to call during existing style recalc or layout.
156 Move this code to ContainerElement so it can be called elsewhere.
157 Also add a param to the node callback so we can pass the style change type.
159 * dom/ContainerNode.cpp:
160 (WebCore::ContainerNode::queuePostAttachCallback):
161 (WebCore::ContainerNode::dispatchPostAttachCallbacks):
162 (WebCore::needsStyleRecalcCallback):
163 (WebCore::ContainerNode::scheduleSetNeedsStyleRecalc):
164 * dom/ContainerNode.h:
166 (WebCore::Node::scheduleSetNeedsStyleRecalc):
167 * html/HTMLFormControlElement.cpp:
168 (WebCore::focusPostAttach):
169 (WebCore::updateFromElementCallback):
170 * html/HTMLPlugInImageElement.cpp:
171 (WebCore::HTMLPlugInImageElement::updateWidgetCallback):
172 * html/HTMLPlugInImageElement.h:
173 * rendering/RenderLayerCompositor.cpp:
174 (WebCore::RenderLayerCompositor::attachRootPlatformLayer):
175 (WebCore::RenderLayerCompositor::detachRootPlatformLayer):
176 (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange):
177 * rendering/RenderLayerCompositor.h:
178 * svg/SVGUseElement.cpp:
179 (WebCore::updateFromElementCallback):
181 2011-06-10 Mark Pilgrim <pilgrim@chromium.org>
183 Reviewed by Tony Chang.
185 IndexedDB: indexedDB.open() name argument is required
186 https://bugs.webkit.org/show_bug.cgi?id=62398
188 Test: storage/indexeddb/database-name-undefined.html
190 * storage/IDBFactory.idl: use appropriate IDL magic to force undefined values to null, so we handle missing arguments as well as null arguments
192 2011-06-10 Sam Weinig <sam@webkit.org>
194 Reviewed by Beth Dakin.
196 Common crash in ApplicationCacheHost::isApplicationCacheEnabled
197 <rdar://problem/9328684>
199 * loader/appcache/ApplicationCacheHost.cpp:
200 (WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
201 Speculative fix for a null frame on ApplicationCacheHost's DocumentLoader.
203 2011-06-10 Adam Barth <abarth@webkit.org>
205 Reviewed by Eric Seidel.
207 Remove Document::finishParsing
208 https://bugs.webkit.org/show_bug.cgi?id=62474
210 This function appears to exist only to confuse and befuddle us. This
211 patch prepares for DocumentWriter to grab hold of the parser.
213 This patch removes one of the print statements from
214 INSTRUMENT_LAYOUT_SCHEDULING, but I'm not sure
215 INSTRUMENT_LAYOUT_SCHEDULING works anymore anyway.
219 * dom/XMLDocumentParser.cpp:
220 (WebCore::XMLDocumentParser::finish):
221 * html/parser/HTMLDocumentParser.cpp:
222 (WebCore::HTMLDocumentParser::finish):
223 * loader/DocumentWriter.cpp:
224 (WebCore::DocumentWriter::addData):
225 (WebCore::DocumentWriter::endIfNotLoadingMainResource):
226 * loader/FrameLoader.cpp:
227 (WebCore::FrameLoader::stop):
229 2011-06-10 Mark Pilgrim <pilgrim@chromium.org>
231 Reviewed by Tony Chang.
233 IndexedDB: setVersion() version argument is required
234 https://bugs.webkit.org/show_bug.cgi?id=62401
236 Test: storage/indexeddb/setVersion-undefined.html
238 * storage/IDBDatabase.cpp:
239 (WebCore::IDBDatabase::setVersion): check for null version
240 * storage/IDBDatabase.idl: add IDL magic to force undefined to null so we can handle both missing and null arguments
242 2011-06-10 Simon Fraser <simon.fraser@apple.com>
244 Reviewed by Dan Bernstein.
246 Null-check the layer owner again when painting layers
247 https://bugs.webkit.org/show_bug.cgi?id=62473
249 Speculative fix for a crash that occurs when the layer's owner
250 gets destroyed during painting.
252 * platform/graphics/mac/WebLayer.mm:
255 2011-06-08 Robert Hogan <robert@webkit.org>
257 Reviewed by Andreas Kling.
259 [Qt] Lighten the --no-svg build a little
260 https://bugs.webkit.org/show_bug.cgi?id=62314
262 Only generate source from SVG*.idl if the build is svg-enabled.
264 * CodeGenerators.pri:
266 2011-06-10 Nikolas Zimmermann <nzimmermann@rim.com>
268 Reviewed by Rob Buis.
270 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
271 https://bugs.webkit.org/show_bug.cgi?id=59085
273 Add glyph table to SVGFontElement mapping between SVGGlyph <-> Glyph
274 https://bugs.webkit.org/show_bug.cgi?id=62441
276 Preparation patch 1: Introduce the internal glyph table in SVGGlyphMap that will be used to identify each
277 SVGGlyph identifier with a Glyph (which is just an ushort). It will be used by follow-up patches.
279 Doesn't affect any test so far.
281 * platform/graphics/SVGGlyph.h:
282 (WebCore::SVGGlyph::SVGGlyph):
283 (WebCore::SVGGlyph::operator==):
284 * rendering/svg/SVGTextRunRenderingContext.cpp:
285 (WebCore::SVGTextRunWalker::walk):
286 * svg/SVGFontData.cpp:
287 (WebCore::SVGFontData::initializeFontData):
288 * svg/SVGFontElement.cpp:
289 (WebCore::SVGFontElement::SVGFontElement):
290 (WebCore::SVGFontElement::registerLigaturesInGlyphCache):
291 (WebCore::SVGFontElement::ensureGlyphCache):
292 (WebCore::kerningForPairOfStringsAndGlyphs):
293 (WebCore::SVGFontElement::horizontalKerningForPairOfStringsAndGlyphs):
294 (WebCore::SVGFontElement::verticalKerningForPairOfStringsAndGlyphs):
295 (WebCore::SVGFontElement::collectGlyphsForString):
296 (WebCore::SVGFontElement::collectGlyphsForGlyphName):
297 (WebCore::SVGFontElement::svgGlyphForGlyph):
298 (WebCore::SVGFontElement::missingGlyph):
299 * svg/SVGFontElement.h:
300 (WebCore::SVGKerningPair::SVGKerningPair):
302 (WebCore::SVGGlyphMap::addGlyphByUnicodeString):
303 (WebCore::SVGGlyphMap::addGlyphByName):
304 (WebCore::SVGGlyphMap::appendToGlyphTable):
305 (WebCore::SVGGlyphMap::collectGlyphsForString):
306 (WebCore::SVGGlyphMap::clear):
307 (WebCore::SVGGlyphMap::svgGlyphForGlyph):
308 (WebCore::SVGGlyphMap::glyphIdentifierForGlyphName):
310 2011-06-10 Emil A Eklund <eae@chromium.org>
312 Reviewed by Eric Seidel.
314 Regression r85573: Blank pages appear at the end of some wikipedia documents.
315 https://bugs.webkit.org/show_bug.cgi?id=62343
317 Fix regression caused by r85573. Cached document size not updated after layout.
319 Test: printing/page-count-relayout-shrink.html
321 * page/FrameView.cpp:
322 (WebCore::FrameView::forceLayoutForPagination):
324 2011-06-10 Rob Buis <rbuis@rim.com>
326 Reviewed by Nikolas Zimmermann.
328 amation event handling broken: focusin
329 https://bugs.webkit.org/show_bug.cgi?id=12894
331 focusin, focusout, activate not implemented in SVG
332 https://bugs.webkit.org/show_bug.cgi?id=40545
334 Make elements that should support GraphicalEventAttribute handle focussing, since focusin, focusout is part of that:
336 http://www.w3.org/TR/SVG11/intro.html#TermGraphicalEventAttribute
338 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.
340 Tests: svg/custom/focus-event-handling-keyboard.xhtml
341 svg/custom/focus-event-handling.xhtml
343 * rendering/svg/SVGRenderSupport.cpp:
344 (WebCore::SVGRenderSupport::computeRectForRepaint):
345 * svg/SVGCircleElement.h:
346 (WebCore::SVGCircleElement::supportsFocus):
347 * svg/SVGEllipseElement.h:
348 (WebCore::SVGEllipseElement::supportsFocus):
350 (WebCore::SVGGElement::supportsFocus):
351 * svg/SVGImageElement.h:
352 (WebCore::SVGImageElement::supportsFocus):
353 * svg/SVGLineElement.h:
354 (WebCore::SVGLineElement::supportsFocus):
355 * svg/SVGPathElement.h:
356 (WebCore::SVGPathElement::supportsFocus):
357 * svg/SVGPolyElement.h:
358 (WebCore::SVGPolyElement::supportsFocus):
359 * svg/SVGRectElement.h:
360 (WebCore::SVGRectElement::supportsFocus):
361 * svg/SVGSVGElement.h:
362 (WebCore::SVGSVGElement::supportsFocus):
363 * svg/SVGStyledElement.cpp:
364 (WebCore::SVGStyledElement::isMouseFocusable):
365 (WebCore::SVGStyledElement::isKeyboardFocusable):
366 * svg/SVGStyledElement.h:
367 * svg/SVGSwitchElement.h:
368 (WebCore::SVGSwitchElement::supportsFocus):
369 * svg/SVGSymbolElement.h:
370 (WebCore::SVGSymbolElement::supportsFocus):
371 * svg/SVGTextElement.h:
372 (WebCore::SVGTextElement::supportsFocus):
373 * svg/SVGUseElement.h:
374 (WebCore::SVGUseElement::supportsFocus):
376 2011-06-10 Luke Macpherson <macpherson@chromium.org>
378 Reviewed by Eric Seidel.
380 Clean up CSSPrimitiveValue::computeLength*
381 https://bugs.webkit.org/show_bug.cgi?id=61612
383 No new tests as no functionality changed.
385 * css/CSSGradientValue.cpp:
386 Use new computeLength functions.
387 * css/CSSPrimitiveValue.cpp:
388 (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
389 Reduce to a single function using default parameter values.
390 (WebCore::CSSPrimitiveValue::computeLength):
391 Redefine existing functions with separate names as a single function using templated function specialization.
392 * css/CSSPrimitiveValue.h:
393 Prototypes for computeLengthIntForLength and computeLength.
394 * css/CSSStyleApplyProperty.cpp:
395 Use new computeLength functions.
396 * css/CSSStyleSelector.cpp:
397 Use new computeLength functions.
398 * css/MediaQueryEvaluator.cpp:
399 Use new computeLength functions.
400 * css/SVGCSSStyleSelector.cpp:
401 Use new computeLength functions.
403 2011-06-10 Simon Fraser <simon.fraser@apple.com>
405 Reviewed by Beth Dakin.
407 Add utility to RenderLayer to determine if the layer is scrollable
408 https://bugs.webkit.org/show_bug.cgi?id=62467
410 New method that returns true if either scrollbar is present and enabled.
411 Not called anywhere yet.
413 * rendering/RenderLayer.cpp:
414 (WebCore::RenderLayer::allowsScrolling):
415 * rendering/RenderLayer.h:
417 2011-06-10 Dimitri Glazkov <dglazkov@chromium.org>
419 Reviewed by Tony Chang.
421 REGRESSION (r88332): prototype-inheritance-2 ASSERTS attempting to enumerate spellCheckRanges
422 https://bugs.webkit.org/show_bug.cgi?id=62460
424 Test: fast/dom/prototype-inheritance-2.html
426 * dom/DocumentMarkerController.cpp:
427 (WebCore::DocumentMarkerController::userSpellingMarkersForNode): Added an extra 0-check.
429 2011-06-10 James Simonsen <simonjam@chromium.org>
431 Reviewed by Tony Gentilcore.
433 Don't execute scripts in shadow SVG.
434 https://bugs.webkit.org/show_bug.cgi?id=62225
436 Test: svg/dom/use-style-recalc-script-execute-crash.html
438 * dom/ScriptElement.cpp:
439 (WebCore::ScriptElement::prepareScript):
441 2011-06-10 Konstantin Tokarev <ktokarev@smartlabs.tv>
443 Reviewed by Joseph Pecoraro.
445 Fixed build with enabled workers and disabled inspector
446 https://bugs.webkit.org/show_bug.cgi?id=62461
448 * inspector/InspectorWorkerAgent.cpp: Added inspector guard
450 2011-06-10 Darin Adler <darin@apple.com>
452 Reviewed by Eric Carlson.
454 REGRESSION: Fullscreen video controller can't be dragged
455 https://bugs.webkit.org/show_bug.cgi?id=62462
457 No regression test because we don't have machinery for testing the fullscreen
458 mode. We may find a way to add this in the future.
460 * html/shadow/MediaControlElements.cpp:
461 (WebCore::MediaControlPanelElement::MediaControlPanelElement): Initialize new
462 booleans related to dragging.
463 (WebCore::MediaControlPanelElement::startDrag): Added. Starts drag if dragging
464 is allowed and a drag isn't already in progress.
465 (WebCore::MediaControlPanelElement::continueDrag): Added. Moves the window if
466 dragging is already in progress.
467 (WebCore::MediaControlPanelElement::endDrag): Added. Ends the capture that is
468 done during the dragging process.
469 (WebCore::MediaControlPanelElement::setPosition): Added. Positions the panel
470 using explicit top/left.
471 (WebCore::MediaControlPanelElement::resetPosition): Added. Removes the positioning
473 (WebCore::MediaControlPanelElement::defaultEventHandler): Added. Calls startDrag,
474 continueDrag, and endDrag in response to mouse events.
475 (WebCore::MediaControlPanelElement::setCanBeDragged): Added.
476 * html/shadow/MediaControlElements.h: Added new function and data members
479 * html/shadow/MediaControlRootElement.cpp:
480 (WebCore::MediaControlRootElement::enteredFullscreen): Call setCanBeDragged(true)
481 so you can drag the panel while in fullscreen.
482 (WebCore::MediaControlRootElement::exitedFullscreen): Call setCanBeDragged(false)
483 so you can't drag the panel while not in fullscreen. Also call resetPosition so
484 position changes from dragging don't affect the panel in other contexts.
486 2011-06-10 Darin Adler <darin@apple.com>
488 Reviewed by Eric Carlson.
490 REGRESSION: Full screen video HUD is positioned too low for standalone video documents
491 https://bugs.webkit.org/show_bug.cgi?id=62463
493 No test because we don't currently have machinery for testing fullscreen.
495 * css/fullscreen.css: Removed rule that said bottom: 0px for the control panel
496 for full page media in full screen mode. This is not needed because the control
497 panel for full screen mode already has style rules to set its vertical position.
498 (:-webkit-full-screen-ancestor:not(iframe)): Fixed typo where it said
499 -webkit-tranform. This will fix a potential problem where fullscreen would
500 malfunction on a page that had a media element inside a transform.
502 2011-06-10 Sergio Villar Senin <svillar@igalia.com>
504 Reviewed by Gustavo Noronha Silva.
506 [GTK] Add support for non-ASCII filenames in Content-Disposition header
507 https://bugs.webkit.org/show_bug.cgi?id=62454
509 Try latin1 as fallback for header parameter values as some servers
510 do not follow RFC 2045 for example with filename parameter in
513 No new tests required as no functionality changed.
515 * platform/network/soup/ResourceResponseSoup.cpp:
516 (WebCore::ResourceResponse::updateFromSoupMessage):
518 2011-06-10 No'am Rosenthal <noam.rosenthal@nokia.com> and Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
520 Reviewed by Kenneth Rohde Christiansen.
522 Add layer factory to GraphicsLayer for creating non-default layer type.
523 https://bugs.webkit.org/show_bug.cgi?id=61925
525 Added a static factory protected member to GraphicsLayer, which should be accessed from
526 a port-specific implementation of GraphicsLayer::create. For now this is enabled for Qt only.
528 This is needed for accelerated compositing across processes in WebKit2, since WebCore
529 doesn't know in compile time whether it's in WebKit or WebKit2, which makes having two
530 different implementations of GraphicsLayer coexist impossible without some runtime
531 factory that can be overridden by the web process.
533 Note that the use of the factory would be optional, and the port-specific GraphicsLayer::create
534 would have to explicitly call it, in order to be unintrusive with current implementations.
536 No new functionality, so no new tests.
538 * platform/graphics/GraphicsLayer.cpp:
539 (WebCore::GraphicsLayer::setGraphicsLayerFactory):
540 * platform/graphics/GraphicsLayer.h:
542 2011-06-10 Lucas De Marchi <lucas.demarchi@profusion.mobi>
544 Reviewed by Kenneth Rohde Christiansen.
546 [CMAKE] Add generic support for building with WebGL
547 https://bugs.webkit.org/show_bug.cgi?id=62376
549 Set new THIRDPARTY_DIR variable to compile sources under ThirdParty.
551 No change in functionality so no new tests.
555 2011-06-10 Ryuan Choi <ryuan.choi@samsung.com>
557 Reviewed by Andreas Kling.
559 [GTK][EFL] m_imageInterpolationQuality is not initialized in PlatformContextCairo::PlatformContextCairo.
560 https://bugs.webkit.org/show_bug.cgi?id=62435
562 No new tests required as just fixed warning.
564 * platform/graphics/cairo/PlatformContextCairo.cpp:
565 (WebCore::PlatformContextCairo::PlatformContextCairo):
567 2011-06-11-06-09 Ilya Tikhonovsky <loislo@chromium.org>
569 Reviewed by Yury Semikhatsky.
571 Web Inspector: protocol: json: Whitespace can be inserted between any pair of tokens.
572 https://bugs.webkit.org/show_bug.cgi?id=62377
574 * inspector/InspectorValues.cpp:
576 2011-06-10 Sheriff Bot <webkit.review.bot@gmail.com>
578 Unreviewed, rolling out r88530.
579 http://trac.webkit.org/changeset/88530
580 https://bugs.webkit.org/show_bug.cgi?id=62440
582 qt build was broken (Requested by loislo on #webkit).
584 * inspector/InspectorValues.cpp:
586 2011-06-09 Ilya Tikhonovsky <loislo@chromium.org>
588 Reviewed by Yury Semikhatsky.
590 Web Inspector: protocol: json: Whitespace can be inserted between any pair of tokens.
591 https://bugs.webkit.org/show_bug.cgi?id=62377
593 * inspector/InspectorValues.cpp:
595 2011-06-09 Jer Noble <jer.noble@apple.com>
597 Reviewed by Darin Adler.
599 REGRESSION: Vertical scroll bar appears when taking videos into full screen at jerryseinfeld.com
600 https://bugs.webkit.org/show_bug.cgi?id=62402
602 Sites are able to override the "overflow:hidden" rule for root full-screen nodes
603 simply by adding a "html {}" rule. Make this rule !important, and also make it apply
604 to root nodes who are merely ancestors of full-screen elements, to cover the case of
605 a root node containing an <iframe> whose contents have gone full-screen.
607 * css/fullscreen.css:
608 (:root:-webkit-full-screen-document:not(:-webkit-full-screen),
609 :root:-webkit-full-screen-ancestor): Apply the overflow rule to root elements
610 who are full-screen ancestors, and make them !important.
612 2011-06-09 Luke Macpherson <macpherson@chromium.org>
614 Reviewed by Eric Seidel.
616 Rename RenderStyle visuallyOrdered property and use an enum instead of a bool.
617 https://bugs.webkit.org/show_bug.cgi?id=61495
619 No new tests required as no functionality changed.
621 * css/CSSPrimitiveValueMappings.h:
622 Support cast to/from Order
623 * css/CSSStyleSelector.cpp:
624 (WebCore::CSSStyleSelector::styleForDocument):
625 Convert from bool to enum type.
626 (WebCore::CSSStyleSelector::applyProperty):
627 Convert to macro that uses the cast defined in CSSPrimitiveValueMappings.
629 (WebCore::Document::setVisuallyOrdered):
630 Change call to RenderStyle::setRTLOrdering using enum parameter.
631 * rendering/style/RenderStyle.h:
632 rename visuallyOrdered proerties rtlOrdering and use appropriate enum types.
633 * rendering/style/RenderStyleConstants.h:
636 2011-06-09 Luke Macpherson <macpherson@chromium.org>
638 Reviewed by Eric Seidel.
640 Implement CSSPropertyOutlineStyle handler in CSSStyleApplyProperty
641 https://bugs.webkit.org/show_bug.cgi?id=61601
643 No new tests. No new functionality added / covered by existing tests.
645 * css/CSSPrimitiveValueMappings.h:
646 (WebCore::CSSPrimitiveValue::operator EBorderStyle):
647 Support CSSValueAuto as required by outline-style property.
648 (WebCore::CSSPrimitiveValue::operator OutlineIsAuto):
649 Add cast to new OutlineIsAuto enum.
650 * css/CSSStyleApplyProperty.cpp:
651 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
652 Initialize handler for CSSPropertyOutlineStyle.
653 * css/CSSStyleSelector.cpp:
654 (WebCore::CSSStyleSelector::applyProperty):
655 Remove old handler for CSSPropertyOutlineStyle.
656 * rendering/style/OutlineValue.h:
657 Use new OutlineIsAuto enum instead of bool.
658 * rendering/style/RenderStyle.h:
659 Split existing two-parameter setter setOutlineStyle into separate setters for style and auto properties.
660 Use new OutlineIsAuto enum type.
661 * rendering/style/RenderStyleConstants.h:
662 Define new enum OutlineIsAuto.
664 2011-06-09 Luke Macpherson <macpherson@chromium.org>
666 Reviewed by Eric Seidel.
668 Code cleanup - add wrappers for function pointer dereferences to improve readability in ApplyPropertyDefaultBase and derived classes.
669 https://bugs.webkit.org/show_bug.cgi?id=62418
671 No new tests / cleanup only.
673 * css/CSSStyleApplyProperty.cpp:
674 (WebCore::ApplyPropertyDefaultBase::applyInheritValue):
675 Use new wrapper functions.
676 (WebCore::ApplyPropertyDefaultBase::applyInitialValue):
677 Use new wrapper functions.
678 (WebCore::ApplyPropertyDefaultBase::setValue):
679 Wrapper for calling m_setter function pointer.
680 (WebCore::ApplyPropertyDefaultBase::value):
681 Wrapper for calling m_getter function pointer.
682 (WebCore::ApplyPropertyDefaultBase::initial):
683 Wrapper for calling m_initial function pointer.
684 (WebCore::ApplyPropertyDefault::applyValue):
685 Use new setValue function.
686 (WebCore::ApplyPropertyLength::applyValue):
687 Use new setValue function.
688 (WebCore::ApplyPropertyWidth::applyValue):
689 Use new setValue function.
691 2011-06-09 Hyowon Kim <hw1008.kim@samsung.com>
693 Reviewed by Antonio Gomes.
695 [EFL] Make accelerated compositing build in Webkit-EFL
696 https://bugs.webkit.org/show_bug.cgi?id=62361
698 Add a new class, GraphicsLayerEfl - not yet implemented.
699 Add ACCELERATED_COMPOSITING related files to CMakeLists.
703 * platform/graphics/efl/GraphicsLayerEfl.cpp: Added.
704 (WebCore::GraphicsLayer::create):
705 (WebCore::GraphicsLayerEfl::GraphicsLayerEfl):
706 (WebCore::GraphicsLayerEfl::~GraphicsLayerEfl):
707 (WebCore::GraphicsLayerEfl::setNeedsDisplay):
708 (WebCore::GraphicsLayerEfl::setNeedsDisplayInRect):
709 * platform/graphics/efl/GraphicsLayerEfl.h: Added.
711 2011-06-09 Jian Li <jianli@chromium.org>
713 Reviewed by David Levin.
715 Calling WebKitBlobBuilder.append with null argument should not crash
716 https://bugs.webkit.org/show_bug.cgi?id=62419
718 Test: fast/files/blob-builder-crash.html
720 * fileapi/WebKitBlobBuilder.cpp:
721 (WebCore::WebKitBlobBuilder::append):
723 2011-06-09 Jer Noble <jer.noble@apple.com>
725 Reviewed by David Hyatt.
727 Roll out r88468, and fix bug #61911 without making Element::offset functions virtual.
728 https://bugs.webkit.org/show_bug.cgi?id=62400
730 No new tests; covered by existing fullscreen/full-screen-video-offset.html test.
732 * rendering/RenderVideo.cpp:
733 (WebCore::rendererPlaceholder): Added; returns the placeholder block, if it exists.
734 (WebCore::RenderVideo::offsetLeft): Pass the offset request to the placeholder block.
735 (WebCore::RenderVideo::offsetTop): Ditto.
736 (WebCore::RenderVideo::offsetWidth): Ditto.
737 (WebCore::RenderVideo::offsetHeight): Ditto.
738 * rendering/RenderVideo.h: Added virtual overrides for the offset functions.
740 2011-06-09 James Robinson <jamesr@chromium.org>
742 Reviewed by Kenneth Russell.
744 [chromium] Scissor rect not set for clipping layers set offscreen
745 https://bugs.webkit.org/show_bug.cgi?id=62339
747 We set a scissorRect on each layer, but only layers with masksToBounds and their descendants should actually set
748 a scissor. Layers that didn't need to scissor had empty scissorRects. Unfortunately layers with masksToBounds
749 and their descendants that are scrolled offscreen also end up with an empty clipped scissor rect.
751 This patch sets an explicit bit on each layer that should scissor and then checks that bit instead of checking
752 for an empty scissor rect at draw time. RenderSurfaceChromiums have different requirements for
753 setScissorToRect, so the old behavior is still available with a flag. This can probably be cleaned up more.
755 Test: platform/chromium/compositing/scissor-out-of-viewport.html
757 * platform/graphics/chromium/LayerRendererChromium.cpp:
758 (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
759 (WebCore::LayerRendererChromium::drawLayer):
760 (WebCore::LayerRendererChromium::setScissorToRect):
761 * platform/graphics/chromium/LayerRendererChromium.h:
762 * platform/graphics/chromium/RenderSurfaceChromium.cpp:
763 (WebCore::RenderSurfaceChromium::draw):
764 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
765 (WebCore::CCLayerImpl::CCLayerImpl):
766 * platform/graphics/chromium/cc/CCLayerImpl.h:
767 (WebCore::CCLayerImpl::setUsesLayerScissor):
768 (WebCore::CCLayerImpl::usesLayerScissor):
770 2011-06-09 Sheriff Bot <webkit.review.bot@gmail.com>
772 Unreviewed, rolling out r88468.
773 http://trac.webkit.org/changeset/88468
774 https://bugs.webkit.org/show_bug.cgi?id=62408
776 It broke build if !ENABLE(FULLSCREEN_API) (Requested by Ossy
780 (WebCore::adjustForLocalZoom):
782 * html/HTMLMediaElement.cpp:
783 * html/HTMLMediaElement.h:
785 2011-06-09 Kenneth Russell <kbr@google.com>
787 Reviewed by Adam Barth.
789 Disallow use of cross-domain media (images, video) in WebGL
790 https://bugs.webkit.org/show_bug.cgi?id=62257
792 Updated WebGL implementation to track recent spec updates in this area.
794 Tests: http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html
795 http/tests/security/webgl-remote-read-remote-image-allowed.html
796 http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html
798 * html/canvas/CanvasRenderingContext.cpp:
799 (WebCore::CanvasRenderingContext::wouldTaintOrigin):
800 (WebCore::CanvasRenderingContext::checkOrigin):
801 * html/canvas/CanvasRenderingContext.h:
802 (WebCore::CanvasRenderingContext::checkOrigin):
803 * html/canvas/WebGLRenderingContext.cpp:
804 (WebCore::WebGLRenderingContext::readPixels):
805 (WebCore::WebGLRenderingContext::texImage2D):
806 (WebCore::WebGLRenderingContext::videoFrameToImage):
807 (WebCore::WebGLRenderingContext::texSubImage2D):
808 * html/canvas/WebGLRenderingContext.h:
810 2011-06-09 Adam Barth <abarth@webkit.org>
812 Reviewed by Eric Seidel.
814 Add an ASSERT to HTMLTreeBuilder
815 https://bugs.webkit.org/show_bug.cgi?id=62403
817 This ASSERT was useful in investigating a re-entrancy bug. We should
820 * html/parser/HTMLTreeBuilder.cpp:
821 (WebCore::HTMLTreeBuilder::processEndOfFile):
823 2011-06-09 Dan Bernstein <mitz@apple.com>
825 Reviewed by Darin Adler.
827 Fix a regression from r88478.
829 * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
830 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Add the runs
831 in reverse order in the RTL case here, since the whole vector is reversed by collectComplexTextRuns()
834 2011-06-09 Julien Chaffraix <jchaffraix@codeaurora.org>
836 Reviewed by Antti Koivisto.
838 REGRESSION(84329): Stylesheets on some pages do not load
839 https://bugs.webkit.org/show_bug.cgi?id=61400
841 Test: fast/css/link-disabled-attr.html
843 Fixed r84329: the change did not take into account the fact
844 that HTMLLinkElement did already contain the disabled information
845 and the 2 information were not linked as they should have!
847 The new logic pushes the information to the stylesheet as this
848 is what the spec mandates and what FF is doing. Also it keeps
849 one bit of information (that JS enabled the stylesheet) as it
850 is needed for the recalcStyleSelector logic.
853 (WebCore::Document::recalcStyleSelector): s/isDisabled/disabled.
855 * html/HTMLLinkElement.cpp:
856 (WebCore::HTMLLinkElement::HTMLLinkElement): Removed m_disabledState,
857 replaced by m_isEnabledViaScript.
858 (WebCore::HTMLLinkElement::setDisabled): Updated the logic after
859 m_disabledState removal. It also matches the spec by forwarding
860 the disabled state to our stylesheet if we have one.
861 (WebCore::HTMLLinkElement::parseMappedAttribute): Removed harmful
862 handling of the disabledAttr.
863 (WebCore::HTMLLinkElement::process): Updated after m_disabledState removal.
864 * html/HTMLLinkElement.h:
865 (WebCore::HTMLLinkElement::isEnabledViaScript): Ditto.
866 (WebCore::HTMLLinkElement::isAlternate): Ditto.
868 2011-06-09 Dan Bernstein <mitz@apple.com>
870 Reviewed by Darin Adler.
872 Simplify ComplexTextController::collectComplexTextRuns()
873 https://bugs.webkit.org/show_bug.cgi?id=62387
875 No new test, since functionality is unchanged.
877 * platform/graphics/mac/ComplexTextController.cpp:
878 (WebCore::ComplexTextController::collectComplexTextRuns): Always iterate characters in logical order,
879 then reverse the run vector for RTL.
881 2011-06-09 Dimitri Glazkov <dglazkov@chromium.org>
883 Reviewed by Kent Tamura.
885 Fold isShadowBoundary into isShadowRoot.
886 https://bugs.webkit.org/show_bug.cgi?id=62317
888 Since there are no longer cases where Node::isShadowBoundary() != Node::isShadowRoot, we can remove this function.
890 In one case where isShadowBoundary was also tested to find ShadowContentElemnt, added a new isContentElement function.
892 Refactoring, covered by existing tests.
894 * css/CSSStyleSelector.cpp:
895 (WebCore::isAtShadowBoundary): Changed to use isShadowRoot.
897 (WebCore::Element::isSpellCheckingEnabled): Ditto.
899 (WebCore::Node::nonBoundaryShadowTreeRootNode): Ditto.
900 (WebCore::Node::nonShadowBoundaryParentNode): Ditto.
902 (WebCore::Node::isContentElement): Added.
903 * dom/NodeRenderingContext.cpp:
904 (WebCore::NodeRenderingContext::NodeRenderingContext): Changed to use isShadowRoot.
906 (WebCore::Position::Position): Ditto.
907 * dom/ShadowContentElement.h:
908 (WebCore::ShadowContentElement::isContentElement): Added.
909 * dom/ShadowRoot.cpp:
910 (WebCore::ShadowRoot::hasContentElement): Changed to use isContentElement.
911 * editing/CompositeEditCommand.cpp:
912 (WebCore::CompositeEditCommand::insertNodeAfter): Changed to use isShadowRoot.
913 * editing/htmlediting.cpp:
914 (WebCore::visiblePositionBeforeNode): Ditto.
915 (WebCore::visiblePositionAfterNode): Ditto.
916 * page/DragController.cpp:
917 (WebCore::asFileInput): Ditto.
918 * rendering/RenderTreeAsText.cpp:
919 (WebCore::nodePosition): Ditto.
921 2011-06-09 Simon Fraser <simon.fraser@apple.com>
923 Reviewed by Darin Adler.
925 Crashes in RenderLayerBacking::paintingGoesToWindow
926 https://bugs.webkit.org/show_bug.cgi?id=61159
928 Speculative fix for unreproducible crash that can occur when RenderObject::repaintUsingContainer()
929 finds a repaintContainer that is not the RenderView, but that is also not
930 composited (for unknown reasons), by checking to see if the layer is
931 compositing before using backing(). An assertion remains to try to catch
932 this in debug builds.
934 * rendering/RenderLayer.cpp:
935 (WebCore::RenderLayer::setBackingNeedsRepaintInRect):
937 2011-06-09 Julien Chaffraix <jchaffraix@webkit.org>
939 Reviewed by Darin Adler.
941 WebCore::WebKitCSSKeyframesRuleInternal::nameAttrSetter() - crash
942 https://bugs.webkit.org/show_bug.cgi?id=62384
944 Test: fast/css/webkit-keyframes-crash.html
946 * css/WebKitCSSKeyframesRule.cpp:
947 (WebCore::WebKitCSSKeyframesRule::setName): stylesheet() is never garanteed
948 to return a non-null pointer. Thus null-check here like the rest of the code.
950 2011-06-09 Julien Chaffraix <jchaffraix@codeaurora.org>
952 Reviewed by David Hyatt.
954 chrome.dll!WebCore::RenderStyle::fontMetrics ReadAV@NULL (two crashes)
955 https://bugs.webkit.org/show_bug.cgi?id=57756
957 Tests: fast/css/fontMetric-border-radius-null-crash.html
958 fast/css/fontMetric-webkit-border-end-width-null-crash.html
960 * css/CSSStyleSelector.cpp:
961 (WebCore::CSSStyleSelector::styleForElement): Added a call to Font::update
962 so that our FontFallbackList is allocated if we ever need it when applying our
965 2011-06-09 Cary Clark <caryclark@google.com>
967 Reviewed by Eric Seidel.
969 Create local CG context for Mac UI elements when Skia is renderer
970 https://bugs.webkit.org/show_bug.cgi?id=62213
972 When building Mac Chrome using Skia as the WebKit renderer,
973 add state to LocalCurrentGraphicsContext to convert the SkCanvas
974 context passed by WebKit into the CGContext needed by UI
977 No new tests. The define typo in question is
978 not yet enabled, so this change has no functional
981 * platform/mac/LocalCurrentGraphicsContext.h:
982 Add SkiaBitLocker to create and release the converted CGContext.
983 Add ContextContainer, a class for Skia to create and release
984 the converted CGContext. If Skia is not used, the class has no effect.
986 * platform/mac/LocalCurrentGraphicsContext.mm:
987 (WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
988 When building with Skia, create the CGContext before passing it on.
990 (WebCore::LocalCurrentGraphicsContext::cgContext):
991 Get the CGContext from the SkiaBitLocker, or the saved context,
994 * rendering/RenderThemeMac.mm:
995 Get the CGContext from Skia conversion or native, as appropriate.
996 Use the LocalCurrentGraphicsContext if there is one. Otherwise,
997 add a ContextContainer to house the SkCanvas to CGContext conversion.
999 (WebCore::RenderThemeMac::paintCapsLockIndicator):
1000 (WebCore::RenderThemeMac::paintProgressBar):
1001 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
1002 (WebCore::RenderThemeMac::paintSliderTrack):
1003 (WebCore::RenderThemeMac::paintMediaFullscreenButton):
1004 (WebCore::RenderThemeMac::paintMediaMuteButton):
1005 (WebCore::RenderThemeMac::paintMediaPlayButton):
1006 (WebCore::RenderThemeMac::paintMediaSeekBackButton):
1007 (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
1008 (WebCore::RenderThemeMac::paintMediaSliderTrack):
1009 (WebCore::RenderThemeMac::paintMediaSliderThumb):
1010 (WebCore::RenderThemeMac::paintMediaRewindButton):
1011 (WebCore::RenderThemeMac::paintMediaReturnToRealtimeButton):
1012 (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton):
1013 (WebCore::RenderThemeMac::paintMediaControlsBackground):
1014 (WebCore::RenderThemeMac::paintMediaCurrentTime):
1015 (WebCore::RenderThemeMac::paintMediaTimeRemaining):
1016 (WebCore::RenderThemeMac::paintMediaVolumeSliderContainer):
1017 (WebCore::RenderThemeMac::paintMediaVolumeSliderTrack):
1018 (WebCore::RenderThemeMac::paintMediaVolumeSliderThumb):
1020 2011-06-02 Jer Noble <jer.noble@apple.com>
1022 Reviewed by Maciej Stachowiak.
1024 REGRESSION: Page layout messed up after exiting full screen after video ends at jerryseinfeld.com
1025 https://bugs.webkit.org/show_bug.cgi?id=61911
1026 <rdar://problem/9523017>
1028 Test: fullscreen/full-screen-video-offset.html
1030 When the video element is taken full-screen in the new element full-screen API, return the
1031 offset width and height of the placeholder renderer which is filling in for the full-screen
1032 element. To do so, override offsetWidth, Height, Left, and Top from Element. These are
1033 non-virtual functions, so make them virtual.
1036 (WebCore::Element::adjustForLocalZoom): Made into a class-static function.
1037 * dom/Element.h: Made offset functions virtual.
1038 * html/HTMLMediaElement.cpp:
1039 (WebCore::elementPlaceholder): Added; utility function.
1040 (WebCore::HTMLMediaElement::offsetLeft): Added; virtual override of the
1041 Element function. Will be called directly via javascript.
1042 (WebCore::HTMLMediaElement::offsetTop): Ditto.
1043 (WebCore::HTMLMediaElement::offsetWidth): Ditto.
1044 (WebCore::HTMLMediaElement::offsetHeight): Ditto.
1045 * html/HTMLMediaElement.h:
1047 2011-06-09 Dave Tapuska <dtapuska@rim.com>
1049 Reviewed by Daniel Bates.
1051 PingLoader destructor could dereference 0 if the Resource
1052 Handle creation failed.
1054 https://bugs.webkit.org/show_bug.cgi?id=62304
1056 * loader/PingLoader.cpp:
1057 (WebCore::PingLoader::~PingLoader):
1059 2011-06-08 Abhishek Arya <inferno@chromium.org>
1061 Reviewed by Ryosuke Niwa.
1063 Make indexForVisiblePosition and isSelectableElement static.
1064 https://bugs.webkit.org/show_bug.cgi?id=62329
1066 This protects us when converting frame->selection->start() or end()
1067 to VisiblePosition which blows away the RenderTextControl from
1068 underneath (due to layout update).
1070 Test: fast/forms/text-control-selection-crash.html
1072 * accessibility/AccessibilityRenderObject.cpp:
1073 (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
1074 * rendering/RenderTextControl.cpp:
1075 (WebCore::RenderTextControl::selectionStart):
1076 (WebCore::RenderTextControl::selectionEnd):
1077 (WebCore::RenderTextControl::isSelectableElement):
1078 (WebCore::RenderTextControl::indexForVisiblePosition):
1079 * rendering/RenderTextControl.h:
1081 2011-06-09 Ben Murdoch <benm@google.com>
1083 Reviewed by Yury Semikhatsky.
1085 Build break in ScriptProfile.cpp and inspector disabled.
1086 https://bugs.webkit.org/show_bug.cgi?id=62373
1088 No new tests - build fix only.
1090 * bindings/v8/ScriptProfile.cpp: Add necessary guards.
1091 * bindings/v8/ScriptProfile.h: ditto.
1093 2011-06-09 Vsevolod Vlasov <vsevik@chromium.org>
1095 Reviewed by Yury Semikhatsky.
1097 Web Inspector: Network panel preview tab does not reattach SourceFrame when switching between preview and response tabs.
1098 https://bugs.webkit.org/show_bug.cgi?id=62298
1100 * inspector/front-end/ResourcePreviewView.js:
1101 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown.callback):
1102 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown):
1104 2011-06-09 Csaba Osztrogonác <ossy@webkit.org>
1106 [Qt][Mac] Speculative buildfix after r88286.
1108 * platform/graphics/IntPoint.h:
1110 2011-06-09 Mike Lawther <mikelawther@chromium.org>
1112 Reviewed by Kent Tamura.
1114 Parsing issue with -webkit-calc
1115 https://bugs.webkit.org/show_bug.cgi?id=62276
1117 Set the CSSParserString for the calc functions.
1119 Test: css3/calc/regression-62276.html
1121 * css/CSSParser.cpp:
1122 (WebCore::CSSParser::lex):
1124 2011-06-09 Robert Hogan <robert@webkit.org>
1126 Reviewed by Andreas Kling.
1128 Teach Qt about window.internals
1129 https://bugs.webkit.org/show_bug.cgi?id=61074
1131 A weakness of the Qt DRT setup is that things like JSContextRef are abstracted
1132 away from the QtWebKit API so we need DumpRenderTreeSupportQt to access WebCore internals.
1133 Since the window.internals object requires JSContextRef we need to implement it in DumpRenderTreeSupportQt
1134 where we can access it. DumpRenderTreeSupportQt cannot be compiled outside Qt's WebCore and as it
1135 is our only possible route into the WebCoreTestSupport class neither can the new window.internals plumbing.
1136 Likewise we can't put the accessor in WebCoreTestSupport because it would then need to know about QWebFrame
1137 and others. The only alternative seems like a compile time guard which we would have to teach the bots about.
1139 * CodeGenerators.pri:
1143 2011-06-08 Mikołaj Małecki <m.malecki@samsung.com>
1145 Reviewed by Pavel Feldman.
1147 Web Inspector: Crash by buffer overrun crash when serializing inspector object tree.
1148 https://bugs.webkit.org/show_bug.cgi?id=52791
1150 No new tests. The problem can be reproduced by trying to create InspectorValue
1151 from 1.0e-100 and call ->toJSONString() on this.
1153 * inspector/InspectorValues.cpp:
1154 (WebCore::InspectorBasicValue::writeJSON):
1155 Added checking the predicted buffer size and choosing exponential format, or
1156 eventually "NaN" if the buffer is too small for decimal format.
1158 2011-06-09 Sheriff Bot <webkit.review.bot@gmail.com>
1160 Unreviewed, rolling out r88387.
1161 http://trac.webkit.org/changeset/88387
1162 https://bugs.webkit.org/show_bug.cgi?id=62368
1164 New tests introduced in 88387 fail on Leopard,GTK,Qt bots
1165 (Requested by Ossy on #webkit).
1167 * html/canvas/CanvasRenderingContext.cpp:
1168 (WebCore::CanvasRenderingContext::checkOrigin):
1169 * html/canvas/CanvasRenderingContext.h:
1170 * html/canvas/WebGLRenderingContext.cpp:
1171 (WebCore::WebGLRenderingContext::readPixels):
1172 (WebCore::WebGLRenderingContext::texImage2D):
1173 (WebCore::WebGLRenderingContext::videoFrameToImage):
1174 (WebCore::WebGLRenderingContext::texSubImage2D):
1175 * html/canvas/WebGLRenderingContext.h:
1177 2011-06-09 Adam Barth <abarth@webkit.org>
1179 Reviewed by Eric Seidel.
1181 Running script from attach can remove elements from the stack of open elements
1182 https://bugs.webkit.org/show_bug.cgi?id=62160
1184 When the tree build runs script synchronously, that script can remove
1185 arbitrary elements from the stack of open elements. We need to hold a
1186 reference to |parent| in attach instead of rely upon the reference in
1187 the stack of open elements.
1189 Test: fast/parser/document-write-onload-clear.html
1191 * html/parser/HTMLConstructionSite.cpp:
1192 (WebCore::HTMLConstructionSite::attach):
1194 2011-06-08 Luke Macpherson <macpherson@chromium.org>
1196 Reviewed by Eric Seidel.
1198 Make CSSPrimitiveValue support cast to EVerticalAlign.
1199 https://bugs.webkit.org/show_bug.cgi?id=62356
1201 No new tests / refactoring only.
1203 * css/CSSPrimitiveValueMappings.h:
1204 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1205 (WebCore::CSSPrimitiveValue::operator EVerticalAlign):
1206 * css/CSSStyleSelector.cpp:
1207 (WebCore::CSSStyleSelector::applyProperty):
1209 2011-06-08 Justin Novosad <junov@chromium.org>
1211 Reviewed by James Robinson.
1213 [Chromium] Crash when closing a tab with accelerated 2d canvas
1214 https://bugs.webkit.org/show_bug.cgi?id=62324
1215 Upon graphics context destruction, it is important to signal skia
1216 to abandon all of its resource handles. This prevents a crash caused
1217 by skia attempting to release resources that were in the destroyed
1220 * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
1221 (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D):
1223 2011-06-08 James Robinson <jamesr@chromium.org>
1225 Reviewed by Darin Fisher.
1227 REGRESSION(88260): 10-50% performance regression across many page cyclers
1228 https://bugs.webkit.org/show_bug.cgi?id=62349
1230 r88260 fixed a font cache resource leak and lowered the inactive font cache threshold. The latter caused a
1231 significant performance regression across many chromium page cyclers, for example
1232 http://build.chromium.org/f/chromium/perf/linux-release-webkit-latest/moz/report.html?history=50&rev=88279.
1234 This restores the previous inactive font size thresholds to their previous values, but retains the font cleanup
1237 * platform/graphics/FontCache.cpp:
1239 2011-06-08 Hayato Ito <hayato@chromium.org>
1241 Reviewed by Dimitri Glazkov.
1243 A forward/backward tab traversal now visits focusable elements in a shadow root.
1244 https://bugs.webkit.org/show_bug.cgi?id=61410
1246 Test: fast/dom/shadow/tab-order-iframe-and-shadow.html
1248 Like a iframe element, a shadow host becomes a scope of
1249 tabindex. That means all descendant elements in a shadow root are
1250 skipped if the host node of the shadow root is not focusable.
1252 The patch doesn't affect HTMLInputElement and HTMLTextAreaElement,
1253 which uses a shadow root and do extra works in their focus()
1256 A shadow root's <content> is not considered in this patch.
1257 That will be addressed in a following patch.
1259 * page/FocusController.cpp:
1260 (WebCore::shadowRoot):
1261 (WebCore::isTreeScopeOwner):
1262 (WebCore::FocusController::deepFocusableNode):
1263 (WebCore::FocusController::advanceFocusInDocumentOrder):
1264 (WebCore::FocusController::findFocusableNodeAcrossTreeScope):
1265 (WebCore::FocusController::findFocusableNode):
1266 (WebCore::FocusController::nextFocusableNode):
1267 (WebCore::FocusController::previousFocusableNode):
1268 (WebCore::FocusController::ownerOfTreeScope):
1269 * page/FocusController.h:
1271 2011-06-08 Hayato Ito <hayato@chromium.org>
1273 Reviewed by Hajime Morita.
1275 Makes sure that document.activeElement won't be an element in shadow root.
1277 https://bugs.webkit.org/show_bug.cgi?id=61413
1279 Test: fast/dom/shadow/activeelement-should-be-shadowhost.html
1281 * html/HTMLDocument.cpp:
1282 (WebCore::focusedFrameOwnerElement):
1283 (WebCore::HTMLDocument::activeElement):
1285 2011-06-08 Kent Tamura <tkent@chromium.org>
1287 Reviewed by Dimitri Glazkov.
1289 Allow drawing a slider thumb for any nodes.
1290 https://bugs.webkit.org/show_bug.cgi?id=62196
1292 RenderObject::node() should provide various information which is
1293 necessary for rendering. We don't need to refer the parent renderer.
1296 (WebCore::Node::focusDe1egate): Added.
1297 * dom/Node.h: Added a declaration.
1298 * html/shadow/MediaControlElements.cpp:
1299 (WebCore::toParentMediaElement):
1300 Added an overload of toParentMediaElement() with Node* parameter.
1301 * html/shadow/MediaControlElements.h:
1302 (WebCore::toParentMediaElement): ditto.
1303 * html/shadow/SliderThumbElement.cpp:
1304 (WebCore::SliderThumbElement::isEnabledFormControl):
1305 Returns the status of the host node.
1306 (WebCore::SliderThumbElement::isReadOnlyFormControl): ditto.
1307 (WebCore::SliderThumbElement::focusDe1egate):
1308 Returns the host node so that RenderTheme::isFocused() returns true.
1309 (WebCore::SliderThumbElement::detach): Style nit.
1310 (WebCore::SliderThumbElement::hostInput):
1311 Make it const because it is called by const functions.
1312 * html/shadow/SliderThumbElement.h:
1313 - Remove inDragMode()
1314 - Update declarations
1315 * platform/qt/RenderThemeQt.cpp:
1316 (WebCore::RenderThemeQt::paintMediaSliderThumb):
1317 Use Node::shadowAncestorNode() instead of RenderObject::parent() to
1318 support deeper thumb nodes.
1319 * rendering/RenderMediaControlsChromium.cpp:
1320 (WebCore::paintMediaSliderThumb): ditto.
1321 (WebCore::paintMediaVolumeSliderThumb): Remove isSlider() check.
1322 * rendering/RenderSlider.cpp:
1323 (WebCore::RenderSlider::inDragMode):
1324 SliderThumbElement::inDragMode() was removed, and Node::active() has
1325 the same information.
1326 * rendering/RenderTheme.cpp:
1327 (WebCore::RenderTheme::paint): Remove isSlider() checks.
1328 (WebCore::RenderTheme::isFocused): Apply Node::focusDelegate().
1329 * rendering/RenderThemeChromiumLinux.cpp:
1330 (WebCore::RenderThemeChromiumLinux::paintSliderThumb):
1331 isPressed() is enough.
1332 * rendering/RenderThemeChromiumWin.cpp:
1333 isEnabled(), isFocused(), and isPressed() are enough.
1334 (WebCore::RenderThemeChromiumWin::determineSliderThumbState):
1335 (WebCore::RenderThemeChromiumWin::determineClassicState):
1336 * rendering/RenderThemeMac.mm:
1337 (WebCore::RenderThemeMac::paintSliderThumb):
1338 - Remove isSlider() check.
1339 - Passing 'o' to udpateFooState functions is enough.
1340 - isPressed() is enough.
1341 * rendering/RenderThemeSafari.cpp:
1342 (WebCore::RenderThemeSafari::paintSliderThumb):
1343 We don't need special handling anymore.
1344 * rendering/RenderThemeWin.cpp:
1345 (WebCore::RenderThemeWin::determineSliderThumbState):
1346 isEnabled(), isFocused(), and isPressed() are enough.
1348 2011-06-08 Adam Barth <abarth@webkit.org>
1350 Reviewed by Eric Seidel.
1352 constructTreeFromToken can re-enter parser, causing ASSERTs
1353 https://bugs.webkit.org/show_bug.cgi?id=62160
1355 This patch clears the HTMLToken before constructing the tree from the
1356 token, putting the HTMLDocumentParser in a good state to be re-entered.
1358 Tests: fast/parser/document-write-onload-nesting.html
1359 fast/parser/document-write-onload-ordering.html
1361 * html/parser/HTMLDocumentParser.cpp:
1362 (WebCore::HTMLDocumentParser::pumpTokenizer):
1363 * html/parser/HTMLToken.h:
1364 (WebCore::HTMLToken::isUninitialized):
1365 * html/parser/HTMLTreeBuilder.cpp:
1366 (WebCore::HTMLTreeBuilder::constructTreeFromToken):
1368 2011-06-08 Kent Tamura <tkent@chromium.org>
1370 Fix Qt build for r88405.
1371 https://bugs.webkit.org/show_bug.cgi?id=62208
1373 * platform/qt/RenderThemeQt.h:
1375 2011-06-08 Kent Tamura <tkent@chromium.org>
1377 Reviewed by Dimitri Glazkov.
1379 Change the argument of RenderTheme::adjustSliderThumbSize(): RenderObject* -> RenderStyle*
1380 https://bugs.webkit.org/show_bug.cgi?id=62208
1382 Change the argument type of RenderTheme::adjustSliderThumbSize() and
1383 RenderMediaControls::adjustMediaSliderThumbSize() from RenderObject* to RenderStyle*.
1385 Also, each of adjustSliderThumbStyle() overrides calls RenderTheme::
1386 adjustSliderThumbStyle() for future changes.
1388 No new tests. This is a refactoring and should not change any behavior.
1390 * html/shadow/SliderThumbElement.cpp:
1391 (WebCore::RenderSliderThumb::layout): Passing RenderStyle* and remove a FIXME comment.
1392 * platform/efl/RenderThemeEfl.cpp:
1393 (WebCore::RenderThemeEfl::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
1394 * platform/gtk/RenderThemeGtk.cpp:
1395 (WebCore::RenderThemeGtk::adjustSliderThumbStyle): ditto.
1396 (WebCore::RenderThemeGtk::adjustMediaSliderThumbSize):
1397 * platform/gtk/RenderThemeGtk.h:
1398 * platform/gtk/RenderThemeGtk2.cpp:
1399 (WebCore::RenderThemeGtk::adjustSliderThumbSize):
1400 * platform/gtk/RenderThemeGtk3.cpp:
1401 (WebCore::RenderThemeGtk::adjustSliderThumbSize):
1402 * platform/qt/RenderThemeQt.cpp:
1403 (WebCore::RenderThemeQt::adjustSliderThumbStyle): ditto.
1404 (WebCore::RenderThemeQt::adjustSliderThumbSize):
1405 * rendering/RenderMediaControls.cpp:
1406 (WebCore::RenderMediaControls::adjustMediaSliderThumbSize):
1407 * rendering/RenderMediaControls.h:
1408 * rendering/RenderMediaControlsChromium.cpp:
1409 (WebCore::RenderMediaControlsChromium::adjustMediaSliderThumbSize):
1410 * rendering/RenderMediaControlsChromium.h:
1411 * rendering/RenderSlider.cpp:
1412 (WebCore::RenderSlider::layout): Passing RenderStyle* and remove a FIXME comment.
1413 * rendering/RenderTheme.cpp:
1414 (WebCore::RenderTheme::adjustSliderThumbStyle): Add a comment.
1415 (WebCore::RenderTheme::adjustSliderThumbSize):
1416 * rendering/RenderTheme.h:
1417 * rendering/RenderThemeChromiumLinux.cpp:
1418 (WebCore::RenderThemeChromiumLinux::adjustSliderThumbSize):
1419 * rendering/RenderThemeChromiumLinux.h:
1420 * rendering/RenderThemeChromiumMac.h:
1421 * rendering/RenderThemeChromiumMac.mm:
1422 (WebCore::RenderThemeChromiumMac::adjustMediaSliderThumbSize):
1423 * rendering/RenderThemeChromiumSkia.cpp:
1424 (WebCore::RenderThemeChromiumSkia::adjustSliderThumbSize):
1425 * rendering/RenderThemeChromiumSkia.h:
1426 * rendering/RenderThemeChromiumWin.cpp:
1427 (WebCore::RenderThemeChromiumWin::adjustSliderThumbSize):
1428 * rendering/RenderThemeChromiumWin.h:
1429 * rendering/RenderThemeMac.h:
1430 * rendering/RenderThemeMac.mm:
1431 (WebCore::RenderThemeMac::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
1432 (WebCore::RenderThemeMac::adjustSliderThumbSize):
1433 (WebCore::RenderThemeMac::adjustMediaSliderThumbSize):
1434 * rendering/RenderThemeSafari.cpp:
1435 (WebCore::RenderThemeSafari::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
1436 (WebCore::RenderThemeSafari::adjustSliderThumbSize):
1437 * rendering/RenderThemeSafari.h:
1438 * rendering/RenderThemeWin.cpp:
1439 (WebCore::RenderThemeWin::adjustSliderThumbSize):
1440 * rendering/RenderThemeWin.h:
1441 * rendering/RenderThemeWinCE.cpp:
1442 (WebCore::RenderThemeWinCE::adjustSliderThumbSize):
1443 * rendering/RenderThemeWinCE.h:
1445 2011-06-08 Brian Salomon <bsalomon@google.com>
1447 Reviewed by James Robinson.
1449 Avoid always binding FBO 0 implicitly when deleting FBO in DrawingBuffer code because it invalidates Ganesh's cache of the current FBO.
1450 https://bugs.webkit.org/show_bug.cgi?id=62318
1453 Failures takes multiple seconds to occur, relying on JS garbage-collection to occur
1454 http://www.hotbazooka.com/privatejoe-large
1456 * platform/graphics/gpu/DrawingBuffer.cpp:
1457 (WebCore::DrawingBuffer::clear):
1459 2011-06-08 Emil A Eklund <eae@chromium.org>
1461 Reviewed by Eric Seidel.
1463 RenderEmbeddedObject::getReplacementTextGeometry
1464 https://bugs.webkit.org/show_bug.cgi?id=62313
1466 Replace the last use of tx, ty with IntPoint.
1468 Covered by existing tests.
1470 * platform/graphics/FloatRect.h:
1471 (WebCore::FloatRect::move):
1472 (WebCore::FloatRect::moveBy):
1473 * rendering/RenderEmbeddedObject.cpp:
1474 (WebCore::RenderEmbeddedObject::paintReplaced):
1475 (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
1476 (WebCore::RenderEmbeddedObject::isInMissingPluginIndicator):
1477 * rendering/RenderEmbeddedObject.h:
1479 2011-06-08 Tim Horton <timothy_horton@apple.com>
1481 Reviewed by Ryosuke Niwa.
1483 Use correct CFURLStorageSessionRef definition on Leopard, as
1484 we created an inconsistency in const-ness between
1485 WebCoreSystemInterface.h and these two files in the case
1487 https://bugs.webkit.org/show_bug.cgi?id=62223
1489 * platform/network/ResourceHandle.h:
1490 * platform/network/cf/ResourceRequest.h:
1492 2011-06-08 Sailesh Agrawal <sail@chromium.org>
1494 Reviewed by Mihai Parparita.
1496 Chromium Mac: Enable overlay scrollbars
1497 https://bugs.webkit.org/show_bug.cgi?id=59756
1499 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.
1501 No new tests, since this code is only enabled on future versions of Mac OS X.
1503 * platform/chromium/ScrollAnimatorChromiumMac.mm: All changes to this file except in scroll() were to swap #if USE(WK_SCROLLBAR_PAINTER) with runtime checks.
1504 (WebCore::ScrollAnimatorChromiumMac::ScrollAnimatorChromiumMac):
1505 (WebCore::ScrollAnimatorChromiumMac::~ScrollAnimatorChromiumMac):
1506 (WebCore::ScrollAnimatorChromiumMac::notityPositionChanged):
1507 (WebCore::ScrollAnimatorChromiumMac::contentAreaWillPaint):
1508 (WebCore::ScrollAnimatorChromiumMac::mouseEnteredContentArea):
1509 (WebCore::ScrollAnimatorChromiumMac::mouseExitedContentArea):
1510 (WebCore::ScrollAnimatorChromiumMac::mouseMovedInContentArea):
1511 (WebCore::ScrollAnimatorChromiumMac::willStartLiveResize):
1512 (WebCore::ScrollAnimatorChromiumMac::contentsResized):
1513 (WebCore::ScrollAnimatorChromiumMac::willEndLiveResize):
1514 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidShow):
1515 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidHide):
1516 (WebCore::ScrollAnimatorChromiumMac::didBeginScrollGesture):
1517 (WebCore::ScrollAnimatorChromiumMac::didEndScrollGesture):
1518 (WebCore::ScrollAnimatorChromiumMac::didAddVerticalScrollbar):
1519 (WebCore::ScrollAnimatorChromiumMac::willRemoveVerticalScrollbar):
1520 (WebCore::ScrollAnimatorChromiumMac::didAddHorizontalScrollbar):
1521 (WebCore::ScrollAnimatorChromiumMac::willRemoveHorizontalScrollbar):
1522 (WebCore::ScrollAnimatorChromiumMac::cancelAnimations):
1523 * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.mm:
1524 (preferredScrollerStyle): Disabled overlay scrollbar styles due to trailing artifacts.
1525 (wkScrollbarPainterPaint): Fixed a problem where the scrollbar track wasn't being drawn.
1526 (wkScrollbarPainterKnobRect): Implemented a previously unimplemented function.
1527 (wkSetScrollbarPainterKnobStyle): Implemented a function that's now supported by the latest Mac OS X seeds.
1528 (isScrollbarOverlayAPIAvailable): Enabled new scrollbar code.
1529 * platform/chromium/ScrollbarThemeChromiumMac.h:
1530 * platform/chromium/ScrollbarThemeChromiumMac.mm: Sync with ScrollbarThemeMac.mm.
1531 (WebCore::scrollbarMap):
1532 (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
1533 (WebCore::updateArrowPlacement):
1534 (WebCore::ScrollbarThemeChromiumMac::registerScrollbar):
1535 (WebCore::ScrollbarThemeChromiumMac::unregisterScrollbar):
1536 (WebCore::ScrollbarThemeChromiumMac::setNewPainterForScrollbar):
1537 (WebCore::ScrollbarThemeChromiumMac::painterForScrollbar):
1538 (WebCore::ScrollbarThemeChromiumMac::scrollbarThickness):
1539 (WebCore::ScrollbarThemeChromiumMac::usesOverlayScrollbars):
1540 (WebCore::ScrollbarThemeChromiumMac::hasButtons):
1541 (WebCore::ScrollbarThemeChromiumMac::hasThumb):
1542 (WebCore::buttonRepaintRect):
1543 (WebCore::ScrollbarThemeChromiumMac::minimumThumbLength):
1544 (WebCore::ScrollbarThemeChromiumMac::shouldDragDocumentInsteadOfThumb):
1545 (WebCore::toScrollbarPainterKnobStyle):
1546 (WebCore::ScrollbarThemeChromiumMac::paint):
1548 2011-06-06 Nate Chapin <japhet@chromium.org>
1550 Reviewed by Adam Barth.
1552 Remove all knowledge of CachedResourceRequests from
1553 CachedResourceLoader. This puts the full burden of
1554 canceling these requests on DocumentLoader (via
1555 SubresourceLoader), and makes a CachedResourceRequest
1556 an OwnPtr in CachedResource.
1558 https://bugs.webkit.org/show_bug.cgi?id=62308
1560 * loader/FrameLoader.cpp:
1561 (WebCore::FrameLoader::stopLoading):
1562 * loader/cache/CachedResource.cpp:
1563 (WebCore::CachedResource::CachedResource):
1564 (WebCore::CachedResource::load):
1565 (WebCore::CachedResource::stopLoading):
1566 * loader/cache/CachedResource.h:
1567 * loader/cache/CachedResourceLoader.cpp:
1568 (WebCore::CachedResourceLoader::~CachedResourceLoader):
1569 (WebCore::CachedResourceLoader::loadDone):
1570 * loader/cache/CachedResourceLoader.h:
1571 * loader/cache/CachedResourceRequest.cpp:
1572 (WebCore::CachedResourceRequest::CachedResourceRequest):
1573 (WebCore::CachedResourceRequest::~CachedResourceRequest):
1574 (WebCore::CachedResourceRequest::load):
1575 (WebCore::CachedResourceRequest::didFinishLoading):
1576 (WebCore::CachedResourceRequest::didFail):
1577 (WebCore::CachedResourceRequest::didReceiveResponse):
1578 (WebCore::CachedResourceRequest::end):
1579 * loader/cache/CachedResourceRequest.h:
1581 2011-06-08 Mike Reed <reed@google.com>
1583 Reviewed by James Robinson.
1585 [Skia] check for null-shader from gradient factory
1586 https://bugs.webkit.org/show_bug.cgi?id=62319
1588 * platform/graphics/skia/GradientSkia.cpp:
1589 (WebCore::Gradient::platformDestroy):
1590 (WebCore::Gradient::platformGradient):
1592 2011-06-08 Kenneth Russell <kbr@google.com>
1594 Reviewed by Adam Barth.
1596 Disallow use of cross-domain media (images, video) in WebGL
1597 https://bugs.webkit.org/show_bug.cgi?id=62257
1599 Updated WebGL implementation to track recent spec updates in this area.
1601 Tests: http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html
1602 http/tests/security/webgl-remote-read-remote-image-allowed.html
1603 http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html
1605 * html/canvas/CanvasRenderingContext.cpp:
1606 (WebCore::CanvasRenderingContext::wouldTaintOrigin):
1607 (WebCore::CanvasRenderingContext::checkOrigin):
1608 * html/canvas/CanvasRenderingContext.h:
1609 (WebCore::CanvasRenderingContext::checkOrigin):
1610 * html/canvas/WebGLRenderingContext.cpp:
1611 (WebCore::WebGLRenderingContext::readPixels):
1612 (WebCore::WebGLRenderingContext::texImage2D):
1613 (WebCore::WebGLRenderingContext::videoFrameToImage):
1614 (WebCore::WebGLRenderingContext::texSubImage2D):
1615 * html/canvas/WebGLRenderingContext.h:
1617 2011-06-08 John Bauman <jbauman@chromium.org>
1619 Reviewed by James Robinson.
1621 Only draw portions of tiles in contentRect
1622 https://bugs.webkit.org/show_bug.cgi?id=62243
1624 Old garbage data can remain in tiles, so make sure to draw only those
1625 portions that are supposed to be drawn.
1627 Test: compositing/repaint/shrink-layer.html
1629 * platform/graphics/chromium/LayerTilerChromium.cpp:
1630 (WebCore::LayerTilerChromium::draw):
1632 2011-06-08 Emil A Eklund <eae@chromium.org>
1634 Reviewed by Eric Seidel.
1636 Convert RenderBlock::isPointInOverflowControl to IntPoint
1637 https://bugs.webkit.org/show_bug.cgi?id=62312
1639 Covered by existing tests.
1641 * rendering/RenderBlock.cpp:
1642 (WebCore::RenderBlock::isPointInOverflowControl):
1643 (WebCore::RenderBlock::nodeAtPoint):
1644 * rendering/RenderBlock.h:
1645 * rendering/RenderListBox.cpp:
1646 (WebCore::RenderListBox::isPointInOverflowControl):
1647 * rendering/RenderListBox.h:
1649 2011-06-08 James Simonsen <simonjam@chromium.org>
1651 Reviewed by Tony Gentilcore.
1653 Fix clang issue, virtual function const mismatch
1654 https://bugs.webkit.org/show_bug.cgi?id=62307
1656 No new tests. Built with clang & ran layout tests.
1658 * page/MediaStreamFrameController.h:
1659 (WebCore::MediaStreamFrameController::GenericClient::isGenericClient):
1661 2011-06-08 Chris Rogers <crogers@google.com>
1663 Reviewed by Kenneth Russell.
1665 Implement BiquadFilterNode for filter types: LOWPASS, HIGHPASS, BANDPASS, LOWSHELF, HIGHSHELF, PEAKING, NOTCH, ALLPASS
1666 https://bugs.webkit.org/show_bug.cgi?id=62078
1668 No new tests since audio API is not yet implemented.
1670 * DerivedSources.make:
1672 * WebCore.xcodeproj/project.pbxproj:
1673 * platform/audio/Biquad.cpp:
1674 (WebCore::Biquad::Biquad):
1675 (WebCore::Biquad::reset):
1676 (WebCore::Biquad::setLowpassParams):
1677 (WebCore::Biquad::setHighpassParams):
1678 (WebCore::Biquad::setNormalizedCoefficients):
1679 (WebCore::Biquad::setLowShelfParams):
1680 (WebCore::Biquad::setHighShelfParams):
1681 (WebCore::Biquad::setPeakingParams):
1682 (WebCore::Biquad::setAllpassParams):
1683 (WebCore::Biquad::setNotchParams):
1684 (WebCore::Biquad::setBandpassParams):
1685 (WebCore::Biquad::setZeroPolePairs):
1686 (WebCore::Biquad::setAllpassPole):
1687 * platform/audio/Biquad.h:
1688 * webaudio/AudioContext.cpp:
1689 (WebCore::AudioContext::createBiquadFilter):
1690 (WebCore::AudioContext::createLowPass2Filter):
1691 (WebCore::AudioContext::createHighPass2Filter):
1692 * webaudio/AudioContext.h:
1693 * webaudio/AudioContext.idl:
1694 * webaudio/AudioNode.h:
1695 * webaudio/BiquadDSPKernel.cpp:
1696 (WebCore::BiquadDSPKernel::process):
1697 * webaudio/BiquadFilterNode.cpp: Added.
1698 (WebCore::BiquadFilterNode::BiquadFilterNode):
1699 * webaudio/BiquadFilterNode.h: Added.
1700 (WebCore::BiquadFilterNode::create):
1701 (WebCore::BiquadFilterNode::type):
1702 (WebCore::BiquadFilterNode::setType):
1703 (WebCore::BiquadFilterNode::frequency):
1704 (WebCore::BiquadFilterNode::q):
1705 (WebCore::BiquadFilterNode::gain):
1706 (WebCore::BiquadFilterNode::biquadProcessor):
1707 * webaudio/BiquadFilterNode.idl: Added.
1708 * webaudio/BiquadProcessor.cpp:
1709 (WebCore::BiquadProcessor::BiquadProcessor):
1710 * webaudio/BiquadProcessor.h:
1711 (WebCore::BiquadProcessor::setType):
1712 * webaudio/HighPass2FilterNode.cpp:
1713 (WebCore::HighPass2FilterNode::HighPass2FilterNode):
1714 * webaudio/LowPass2FilterNode.cpp:
1715 (WebCore::LowPass2FilterNode::LowPass2FilterNode):
1717 2011-06-08 No'am Rosenthal <noam.rosenthal@nokia.com>
1719 Reviewed by Kenneth Rohde Christiansen.
1721 WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
1722 https://bugs.webkit.org/show_bug.cgi?id=61694
1724 No new tests, code path is not activated yet.
1726 * WebCore.xcodeproj/project.pbxproj: Changed the TransformOperation subclassed from "project" to "private"
1728 2011-06-08 Tom Sepez <tsepez@chromium.org>
1730 Reviewed by Adam Barth.
1732 Cause checks for insecure content blocking policy to callback to client.
1733 https://bugs.webkit.org/show_bug.cgi?id=61946
1734 Tests: platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-allowed.html
1735 platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-blocked.html
1736 platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-allowed.html
1737 platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-blocked.html
1739 * loader/FrameLoader.cpp:
1740 (WebCore::FrameLoader::checkIfDisplayInsecureContent):
1741 (WebCore::FrameLoader::checkIfRunInsecureContent):
1742 * loader/FrameLoaderClient.h:
1743 (WebCore::FrameLoaderClient::allowDisplayingInsecureContent):
1744 (WebCore::FrameLoaderClient::allowRunningInsecureContent):
1746 2011-06-08 Kevin Ollivier <kevino@theolliviers.com>
1748 [wx] Build fix after introduction of FontCache::ShouldRetain
1750 * platform/graphics/wx/FontCacheWx.cpp:
1751 (WebCore::FontCache::getFontDataForCharacters):
1753 2011-06-08 Sheriff Bot <webkit.review.bot@gmail.com>
1755 Unreviewed, rolling out r88365.
1756 http://trac.webkit.org/changeset/88365
1757 https://bugs.webkit.org/show_bug.cgi?id=62301
1759 windows bots broken (Requested by loislo_ on #webkit).
1761 * inspector/InspectorValues.cpp:
1762 (WebCore::InspectorBasicValue::writeJSON):
1764 2011-06-08 Mikołaj Małecki <m.malecki@samsung.com>
1766 Reviewed by Pavel Feldman.
1768 Web Inspector: Crash by buffer overrun crash when serializing inspector object tree.
1769 https://bugs.webkit.org/show_bug.cgi?id=52791
1771 No new tests. The problem can be reproduced by trying to create InspectorValue
1772 from 1.0e-100 and call ->toJSONString() on this.
1774 * inspector/InspectorValues.cpp:
1775 (WebCore::InspectorBasicValue::writeJSON):
1776 Added checking the predicted buffer size and choosing exponential format, or
1777 eventually "NaN" if the buffer is too small for decimal format.
1779 2011-06-08 Nico Weber <thakis@chromium.org>
1781 Reviewed by Darin Adler.
1783 Fix a ?: precedence error in ScrollbarThemeMac and ScrollbarThemeChromium
1784 https://bugs.webkit.org/show_bug.cgi?id=62295
1786 This was found by a new warning recently added to clang's -Wparentheses
1788 * platform/chromium/ScrollbarThemeChromiumMac.mm:
1789 (WebCore::ScrollbarThemeChromiumMac::backButtonRect):
1790 * platform/mac/ScrollbarThemeMac.mm:
1791 (WebCore::ScrollbarThemeMac::backButtonRect):
1793 2011-06-08 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
1795 Reviewed by Andreas Kling.
1797 [Qt] Remove dead code from our JSC bridge
1798 https://bugs.webkit.org/show_bug.cgi?id=62287
1800 The m_defaultMethod member is not used since r36848 and QtMethod
1801 was replaced by QtRuntimeMethod and subclasses in r29729.
1803 * bridge/qt/qt_instance.cpp:
1804 (JSC::Bindings::QtInstance::removeCachedMethod):
1805 (JSC::Bindings::QtInstance::visitAggregate):
1806 * bridge/qt/qt_instance.h:
1807 * bridge/qt/qt_runtime.h:
1809 2011-06-08 Ryan Sleevi <rsleevi@chromium.org>
1811 Reviewed by Tony Chang.
1813 Suppress C++0x compat warnings when compiling Chromium port with GCC 4.6
1815 Compiling Chromium port under GCC 4.6 produces warnings about nullptr
1816 https://bugs.webkit.org/show_bug.cgi?id=62242
1818 * WebCore.gyp/WebCore.gyp:
1820 2011-05-25 Xiaomei Ji <xji@chromium.org>
1822 Reviewed by Ryosuke Niwa.
1824 --webkit-visual-word does not work well in words separated by multiple spaces
1825 https://bugs.webkit.org/show_bug.cgi?id=61324
1827 Remove positionBeforeNextWord and positionAfterPreviousWord short-cuts. They try to find the
1828 right word boundary (before the space or after the space) by using previousWordPosition and
1829 nextWordPosition. But they assume words are separated by single space and are not correct
1830 for words separated by multiple spaces and words not separated by space.
1832 Consider positionBeforeNextWord() for example,
1834 First, it checks whether the current position is after the current word by checking current
1835 position's previousWordPosition's nextWordPosition is the same as current position, which is
1836 wrong for words separated by multiple spaces. For example, given words A and B separated by
1837 3 continuous spaces "A B", position "A|", "A |", and "A |" should all be considered as
1838 position after current word. But for position "A |", its previousWordPosition's
1839 nextWordPosition is position "A|", which is different from its current position, so the
1840 current position is not considered as a position after current word, consequently,
1841 instead of returning the right position as "A |B", positionBeforeNextWord returns the
1842 position before next next word, as "A B |C". Similar happens for position "A |".
1844 Second, given 3 Chinese words "ABC" that are not segmented by space, when cursor is at
1845 "A|BC", positionBeforeNextWord() returns the same position after calling current position's
1846 nextWordPosition's previousWordPosition. It should returns position "AB|C".
1848 For those cases, we will have to collect all the word breaks inside the box and look for
1849 the one at left or right of current position.
1851 * editing/visible_units.cpp:
1852 (WebCore::leftWordPosition):
1853 (WebCore::rightWordPosition):
1855 2011-06-08 Greg Simon <gregsimon@chromium.org>
1857 Reviewed by Dimitri Glazkov.
1859 Control Indexeddb backends from LayoutTestController
1860 https://bugs.webkit.org/show_bug.cgi?id=61000
1862 Test: storage/indexeddb/migrate-basics.html
1864 * storage/IDBBackingStore.h:
1865 * storage/IDBFactoryBackendImpl.cpp:
1866 (WebCore::IDBFactoryBackendImpl::open):
1867 (WebCore::IDBFactoryBackendImpl::migrate):
1868 * storage/IDBFactoryBackendImpl.h:
1869 * storage/IDBFactoryBackendInterface.h:
1870 * storage/IDBLevelDBBackingStore.cpp:
1871 (WebCore::IDBLevelDBBackingStore::backingStoreExists):
1872 * storage/IDBLevelDBBackingStore.h:
1873 (WebCore::IDBLevelDBBackingStore::backingStoreType):
1874 * storage/IDBSQLiteBackingStore.cpp:
1875 (WebCore::IDBSQLiteBackingStore::backingStoreExists):
1876 * storage/IDBSQLiteBackingStore.h:
1877 (WebCore::IDBSQLiteBackingStore::backingStoreType):
1879 2011-06-08 Dmitry Lomov <dslomov@google.com>
1881 Reviewed by Adam Barth.
1883 https://bugs.webkit.org/show_bug.cgi?id=62164
1884 Remove "multi-threaded" logic in V8 DOMData, DOMDataStore and friends
1885 This functionality is untested and unused:
1886 This is an old code from Lockers-based implementation of WebWorkers in
1887 V8 bindings, to make sure that DOM objects are released on the right thread
1888 even though GC could have happened on any thread. It is currently unused (since
1889 current model is one worker per process) and is being removed because new implementation
1890 of WebWorkers will be using V8 isolates.
1894 * bindings/v8/ChildThreadDOMData.cpp: Removed.
1895 * bindings/v8/ChildThreadDOMData.h: Removed.
1896 * bindings/v8/DOMData.cpp:
1897 (WebCore::DOMData::DOMData):
1898 (WebCore::DOMData::getCurrent):
1899 (WebCore::DOMData::getMainThreadStore):
1900 * bindings/v8/DOMData.h:
1901 (WebCore::DOMData::getStore):
1902 (WebCore::DOMData::getCurrentMainThreadStore):
1903 (WebCore::DOMData::handleWeakObject):
1904 * bindings/v8/DOMDataStore.cpp:
1905 (WebCore::DOMDataStore::DOMDataStore):
1906 (WebCore::DOMDataStore::~DOMDataStore):
1907 (WebCore::DOMDataStore::weakNodeCallback):
1908 * bindings/v8/DOMDataStore.h:
1909 * bindings/v8/MainThreadDOMData.cpp: Removed.
1910 * bindings/v8/MainThreadDOMData.h: Removed.
1911 * bindings/v8/V8DOMMap.cpp:
1912 (WebCore::getDOMDataStore):
1913 (WebCore::removeAllDOMObjects):
1914 (WebCore::visitDOMNodes):
1915 (WebCore::visitDOMObjects):
1916 (WebCore::visitActiveDOMObjects):
1917 (WebCore::visitDOMSVGElementInstances):
1918 * bindings/v8/V8DOMMap.h:
1919 * bindings/v8/V8GCController.cpp:
1920 (WebCore::V8GCController::gcPrologue):
1921 (WebCore::V8GCController::gcEpilogue):
1922 * bindings/v8/WorkerScriptController.cpp:
1923 (WebCore::WorkerScriptController::~WorkerScriptController):
1925 2011-06-08 Yael Aharon <yael.aharon@nokia.com>
1927 Reviewed by Andreas Kling.
1929 [Qt] Build fix for building QtWebKit inside of Qt.
1930 https://bugs.webkit.org/show_bug.cgi?id=62280
1932 Remove CONFIG=staticlib, because it causes the configure script to add -lwebcore
1935 No new tests, as this is just a build fix.
1939 2011-06-08 Vsevolod Vlasov <vsevik@chromium.org>
1941 Reviewed by Pavel Feldman.
1943 Web Inspector: Render non-document HTML resources as HTML
1944 https://bugs.webkit.org/show_bug.cgi?id=58886
1946 * English.lproj/localizedStrings.js:
1948 * WebCore.vcproj/WebCore.vcproj:
1949 * inspector/front-end/NetworkItemView.js:
1950 (WebInspector.NetworkItemView):
1951 * inspector/front-end/Resource.js:
1952 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
1953 (WebInspector.Resource.prototype.hasErrorStatusCode):
1954 * inspector/front-end/ResourceHTMLView.js: Added.
1955 (WebInspector.ResourceHTMLView):
1956 (WebInspector.ResourceHTMLView.prototype.hasContent):
1957 (WebInspector.ResourceHTMLView.prototype.show):
1958 (WebInspector.ResourceHTMLView.prototype.hide):
1959 (WebInspector.ResourceHTMLView.prototype._createIFrame):
1960 * inspector/front-end/ResourcePreviewView.js: Added.
1961 (WebInspector.ResourcePreviewView):
1962 (WebInspector.ResourcePreviewView.prototype.hasContent):
1963 (WebInspector.ResourcePreviewView.prototype.show):
1964 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown.callback):
1965 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown):
1966 (WebInspector.ResourcePreviewView.prototype._createInnerView):
1967 * inspector/front-end/Settings.js:
1968 (WebInspector.Settings):
1969 * inspector/front-end/WebKit.qrc:
1970 * inspector/front-end/inspector.css:
1971 (.resource-view.html iframe):
1972 * inspector/front-end/inspector.html:
1974 2011-05-18 Pavel Podivilov <podivilov@chromium.org>
1976 Reviewed by Yury Semikhatsky.
1978 Web Inspector: hide script location to ui location conversion details from ScriptsPanel.
1979 https://bugs.webkit.org/show_bug.cgi?id=61035
1981 * inspector/front-end/DebuggerPresentationModel.js:
1982 (WebInspector.DebuggerPresentationModel.prototype.sourceFileForScriptURL):
1983 (WebInspector.DebuggerPresentationModel.prototype.scriptLocationToUILocation.didRequestSourceMapping):
1984 (WebInspector.DebuggerPresentationModel.prototype.scriptLocationToUILocation):
1985 * inspector/front-end/ScriptsPanel.js:
1986 (WebInspector.ScriptsPanel.prototype.showAnchorLocation.didGetUILocation):
1987 (WebInspector.ScriptsPanel.prototype.showAnchorLocation):
1989 2011-06-08 Tommy Widenflycht <tommyw@google.com>
1991 Reviewed by Tony Gentilcore.
1995 Media Stream PeerConnection API: adding StreamEvent class
1996 https://bugs.webkit.org/show_bug.cgi?id=61537
1998 Tests for the Media Stream API will be provided by the bug 56587.
2001 * CodeGenerators.pri:
2002 * DerivedSources.cpp:
2003 * DerivedSources.make:
2004 * GNUmakefile.list.am:
2007 * WebCore.vcproj/WebCore.vcproj:
2008 * WebCore.xcodeproj/project.pbxproj:
2009 * bindings/js/JSEventCustom.cpp:
2011 * bindings/v8/custom/V8EventCustom.cpp:
2013 * dom/DOMAllInOne.cpp:
2015 (WebCore::Event::isStreamEvent):
2017 * dom/StreamEvent.cpp: Added.
2018 (WebCore::StreamEvent::create):
2019 (WebCore::StreamEvent::StreamEvent):
2020 (WebCore::StreamEvent::~StreamEvent):
2021 (WebCore::StreamEvent::initStreamEvent):
2022 (WebCore::StreamEvent::stream):
2023 * dom/StreamEvent.h: Added.
2024 (WebCore::StreamEvent::isStreamEvent):
2025 * dom/StreamEvent.idl: Added.
2027 2011-06-08 Tommy Widenflycht <tommyw@google.com>
2029 Reviewed by Tony Gentilcore.
2031 Media Stream API: integrate the Track List objects into the existing code.
2032 https://bugs.webkit.org/show_bug.cgi?id=60205
2034 Tests for the Media Stream API will be provided by the bug 56587.
2036 * dom/ExclusiveTrackList.cpp:
2037 (WebCore::ExclusiveTrackList::select):
2038 (WebCore::ExclusiveTrackList::trackFailed):
2039 * dom/ExclusiveTrackList.h:
2040 * dom/GeneratedStream.cpp:
2041 (WebCore::GeneratedStream::create):
2042 (WebCore::GeneratedStream::GeneratedStream):
2043 (WebCore::GeneratedStream::streamEnded):
2044 (WebCore::GeneratedStream::audioTracks):
2045 (WebCore::GeneratedStream::videoTracks):
2046 (WebCore::GeneratedStream::stop):
2047 * dom/GeneratedStream.h:
2048 * dom/GeneratedStream.idl:
2049 * dom/MultipleTrackList.cpp:
2050 (WebCore::MultipleTrackList::trackFailed):
2051 (WebCore::MultipleTrackList::enable):
2052 (WebCore::MultipleTrackList::disable):
2053 * dom/MultipleTrackList.h:
2055 * dom/TrackList.cpp:
2056 (WebCore::TrackList::clear):
2057 (WebCore::TrackList::associateStream):
2058 (WebCore::TrackList::associatedStreamLabel):
2059 (WebCore::TrackList::trackFailed):
2060 (WebCore::TrackList::scriptExecutionContext):
2062 * page/MediaStreamClient.h:
2063 * page/MediaStreamController.cpp:
2064 (WebCore::MediaStreamController::enableAudioTrack):
2065 (WebCore::MediaStreamController::disableAudioTrack):
2066 (WebCore::MediaStreamController::selectVideoTrack):
2067 (WebCore::MediaStreamController::streamGenerated):
2068 (WebCore::MediaStreamController::audioTrackFailed):
2069 (WebCore::MediaStreamController::videoTrackFailed):
2070 * page/MediaStreamController.h:
2071 * page/MediaStreamFrameController.cpp:
2072 (WebCore::MediaStreamFrameController::unregister):
2073 (WebCore::MediaStreamFrameController::enterDetachedState):
2074 (WebCore::MediaStreamFrameController::disconnectFrame):
2075 (WebCore::MediaStreamFrameController::enableAudioTrack):
2076 (WebCore::MediaStreamFrameController::disableAudioTrack):
2077 (WebCore::MediaStreamFrameController::selectVideoTrack):
2078 (WebCore::MediaStreamFrameController::streamGenerated):
2079 (WebCore::MediaStreamFrameController::audioTrackFailed):
2080 (WebCore::MediaStreamFrameController::videoTrackFailed):
2081 * page/MediaStreamFrameController.h:
2082 (WebCore::MediaStreamFrameController::ClientBase::isGenericClient):
2083 (WebCore::MediaStreamFrameController::GenericClient::GenericClient):
2084 (WebCore::MediaStreamFrameController::GenericClient::~GenericClient):
2085 (WebCore::MediaStreamFrameController::GenericClient::isGenericClient):
2086 (WebCore::MediaStreamFrameController::GenericClient::unregister):
2088 2011-06-08 Pavel Podivilov <podivilov@chromium.org>
2090 Reviewed by Yury Semikhatsky.
2092 Web Inspector: [REGRESSION] breakpoints are not persisted.
2093 https://bugs.webkit.org/show_bug.cgi?id=62273
2095 * inspector/front-end/Settings.js:
2097 2011-06-08 Alexander Pavlov <apavlov@chromium.org>
2099 Reviewed by Yury Semikhatsky.
2101 Web Inspector: node selection is slow in the Elements panel.
2102 https://bugs.webkit.org/show_bug.cgi?id=60813
2104 Schedule full style updates rather than request all node styles from the backend immediately.
2106 * inspector/front-end/StylesSidebarPane.js:
2107 (WebInspector.StylesSidebarPane.prototype.update.reloadAllStyles):
2108 (WebInspector.StylesSidebarPane.prototype.update):
2110 2011-06-08 Andreas Kling <andreas.kling@nokia.com>
2112 Reviewed by Laszlo Gombos.
2114 [Symbian] Float{32,64}Array and Int16Array fail to build.
2115 https://bugs.webkit.org/show_bug.cgi?id=62219
2117 For some reason, RVCT 2.x is moaning about "class member designated by
2118 a using-declaration must be visible in a direct base class".
2119 Apply same fix as r69122 and r76592.
2121 * html/canvas/Float32Array.h:
2122 (WebCore::Float32Array::set):
2123 * html/canvas/Float64Array.h:
2124 (WebCore::Float64Array::set):
2125 * html/canvas/Int16Array.h:
2126 (WebCore::Int16Array::set):
2128 2011-06-08 Syed Idris Shah <syed.idris-shah@nokia.com>
2130 Reviewed by Andreas Kling.
2132 [Qt] GL_POINT_SPRITE and GL_VERTEX_PROGRAM_POINT_SIZE should be enabled for desktop WebGL
2133 https://bugs.webkit.org/show_bug.cgi?id=61945
2135 For OpenGL ES we do not need these features.
2136 These features are available via shaders in OpenGL ES. But for desktop WebGL using QtWebKit they should be enabled.
2138 LayoutTests/fast/canvas/webgl/point-size.html
2140 * platform/graphics/qt/GraphicsContext3DQt.cpp:
2141 (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
2143 2011-06-08 Gyuyoung Kim <gyuyoung.kim@samsung.com>
2145 Unreviewed. Fix style error.
2147 * platform/efl/RenderThemeEfl.cpp:
2148 * platform/efl/RenderThemeEfl.h:
2150 2011-06-08 Hironori Bono <hbono@chromium.org>
2152 Reviewed by Brent Fulgham.
2155 https://bugs.webkit.org/show_bug.cgi?id=59693
2157 This change adds two SpellCheck API functions (addSpellcheckRange and
2158 removeSpellcheckRange) and one attribute (spellcheckRange) discussed in
2159 the public-webapps ML. This change is currently available only on Chromium.
2161 Tests: editing/spelling/spellcheck-api-pixel.html
2162 editing/spelling/spellcheck-api.html
2165 * bindings/generic/RuntimeEnabledFeatures.cpp:
2166 * bindings/generic/RuntimeEnabledFeatures.h:
2167 (WebCore::RuntimeEnabledFeatures::spellCheckAPIEnabled):
2168 (WebCore::RuntimeEnabledFeatures::setSpellCheckAPIEnabled):
2169 * dom/DocumentMarker.h:
2170 (WebCore::DocumentMarker::length):
2171 * dom/DocumentMarkerController.cpp:
2172 (WebCore::DocumentMarkerController::userSpellingMarkersForNode):
2173 (WebCore::DocumentMarkerController::addUserSpellingMarker):
2174 (WebCore::DocumentMarkerController::removeUserSpellingMarker):
2175 (WebCore::DocumentMarkerController::userSpellingNode):
2176 * dom/DocumentMarkerController.h:
2177 * html/HTMLDivElement.cpp:
2178 (WebCore::HTMLDivElement::spellcheckRanges):
2179 (WebCore::HTMLDivElement::addSpellcheckRange):
2180 (WebCore::HTMLDivElement::removeSpellcheckRange):
2181 * html/HTMLDivElement.h:
2182 * html/HTMLDivElement.idl:
2183 * html/HTMLInputElement.cpp:
2184 (WebCore::HTMLInputElement::spellcheckRanges):
2185 (WebCore::HTMLInputElement::addSpellcheckRange):
2186 (WebCore::HTMLInputElement::removeSpellcheckRange):
2187 * html/HTMLInputElement.h:
2188 * html/HTMLInputElement.idl:
2189 * html/HTMLTextAreaElement.cpp:
2190 (WebCore::HTMLTextAreaElement::spellcheckRanges):
2191 (WebCore::HTMLTextAreaElement::addSpellcheckRange):
2192 (WebCore::HTMLTextAreaElement::removeSpellcheckRange):
2193 * html/HTMLTextAreaElement.h:
2194 * html/HTMLTextAreaElement.idl:
2195 * html/SpellcheckRange.cpp: Added.
2196 (WebCore::SpellcheckRange::SpellcheckRange):
2197 (WebCore::SpellcheckRange::~SpellcheckRange):
2198 * html/SpellcheckRange.h: Added.
2199 (WebCore::SpellcheckRange::create):
2200 (WebCore::SpellcheckRange::start):
2201 (WebCore::SpellcheckRange::length):
2202 (WebCore::SpellcheckRange::suggestions):
2203 (WebCore::SpellcheckRange::options):
2204 * html/SpellcheckRange.idl: Added.
2205 * html/SpellcheckRangeList.cpp: Added.
2206 (WebCore::SpellcheckRangeList::SpellcheckRangeList):
2207 (WebCore::SpellcheckRangeList::~SpellcheckRangeList):
2208 (WebCore::SpellcheckRangeList::item):
2209 * html/SpellcheckRangeList.h: Added.
2210 (WebCore::SpellcheckRangeList::create):
2211 (WebCore::SpellcheckRangeList::isEmpty):
2212 (WebCore::SpellcheckRangeList::clear):
2213 (WebCore::SpellcheckRangeList::append):
2214 (WebCore::SpellcheckRangeList::remove):
2215 (WebCore::SpellcheckRangeList::length):
2216 * html/SpellcheckRangeList.idl: Added.
2217 * rendering/InlineTextBox.cpp:
2218 (WebCore::textCheckingLineStyleForMarkerType):
2219 (WebCore::InlineTextBox::paintDocumentMarkers):
2221 2011-06-07 Andrey Kosyakov <caseq@chromium.org>
2223 Reviewed by Pavel Feldman.
2225 Web Inspector: remove shadow dom inspection from Elements panel by default.
2226 https://bugs.webkit.org/show_bug.cgi?id=62188
2231 (WebCore::Element::ensureShadowRoot):
2232 (WebCore::Element::removeShadowRoot):
2233 * inspector/Inspector.json:
2234 * inspector/InspectorDOMAgent.cpp:
2235 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
2236 (WebCore::InspectorDOMAgent::buildObjectForNode):
2237 (WebCore::InspectorDOMAgent::didInsertDOMNode):
2238 (WebCore::InspectorDOMAgent::didRemoveDOMNode):
2239 * inspector/InspectorDOMAgent.h:
2240 * inspector/front-end/DOMAgent.js:
2241 (WebInspector.DOMNode):
2242 (WebInspector.DOMNode.prototype._renumber):
2243 (WebInspector.DOMAgent.prototype._bindNodes):
2244 (WebInspector.DOMAgent.prototype.querySelectorAll):
2245 (WebInspector.DOMDispatcher.prototype.searchResults):
2246 * inspector/front-end/ElementsPanel.js:
2247 (WebInspector.ElementsPanel):
2248 (WebInspector.ElementsPanel.prototype._attributesUpdated):
2249 (WebInspector.ElementsPanel.prototype._characterDataModified):
2250 (WebInspector.ElementsPanel.prototype._nodeInserted):
2251 (WebInspector.ElementsPanel.prototype._nodeRemoved):
2252 (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
2253 (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
2254 * inspector/front-end/ElementsTreeOutline.js:
2255 (WebInspector.ElementsTreeElement):
2256 (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode):
2257 (WebInspector.ElementsTreeElement.prototype._updateChildren):
2259 * inspector/front-end/inspector.css:
2260 * inspector/front-end/utilities.js:
2261 (Element.prototype.query):
2263 2011-06-08 Mark Rowe <mrowe@apple.com>
2267 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2268 (WebCore::MediaPlayerPrivateAVFoundation::timeChanged):
2269 (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
2271 2011-06-07 Keishi Hattori <keishi@webkit.org>
2273 Reviewed by Kent Tamura.
2275 Rename HTMLInputElement::m_value to m_valueIfDirty
2276 https://bugs.webkit.org/show_bug.cgi?id=61990
2278 No new tests because no behavior change.
2280 * html/HTMLInputElement.cpp: Replaced m_value with m_valueIfDirty.
2281 (WebCore::HTMLInputElement::tooLong):
2282 (WebCore::HTMLInputElement::updateType):
2283 (WebCore::HTMLInputElement::parseMappedAttribute):
2284 (WebCore::HTMLInputElement::copyNonAttributeProperties):
2285 (WebCore::HTMLInputElement::value):
2286 (WebCore::HTMLInputElement::setValue):
2287 (WebCore::HTMLInputElement::setValueFromRenderer):
2288 (WebCore::HTMLInputElement::updateValueIfNeeded):
2289 * html/HTMLInputElement.h: Renamed m_value to m_valueIfDirty.
2290 (WebCore::HTMLInputElement::hasDirtyValue): Added. Returns the dirty value flag.
2292 2011-06-07 Ian Henderson <ianh@apple.com>
2294 Reviewed by Dan Bernstein.
2296 (CG) Sub-image drawing clips unnecessarily
2297 https://bugs.webkit.org/show_bug.cgi?id=62258
2299 If destRect completely encompasses the adjustedDestRect into which we
2300 draw, clipping to destRect will do nothing. Skip the call to
2301 CGContextClipToRect in this case.
2303 * platform/graphics/cg/ImageCG.cpp:
2304 (WebCore::BitmapImage::draw):
2306 2011-06-07 Emil A Eklund <eae@chromium.org>
2308 Reviewed by Eric Seidel.
2310 Convert nodeAtPoint to IntPoint
2311 https://bugs.webkit.org/show_bug.cgi?id=62145
2313 Convert nodeAtPoint to take an IntPoint instead of a pair of ints for the
2316 Covered by existing tests.
2318 * platform/graphics/FloatPoint.h:
2319 (WebCore::FloatPoint::moveBy):
2320 Add moveBy(IntPoint) method
2322 * rendering/EllipsisBox.cpp:
2323 (WebCore::EllipsisBox::nodeAtPoint):
2324 * rendering/EllipsisBox.h:
2325 * rendering/InlineBox.cpp:
2326 (WebCore::InlineBox::nodeAtPoint):
2327 * rendering/InlineBox.h:
2328 * rendering/InlineFlowBox.cpp:
2329 (WebCore::InlineFlowBox::nodeAtPoint):
2330 * rendering/InlineFlowBox.h:
2331 * rendering/InlineTextBox.cpp:
2332 (WebCore::InlineTextBox::nodeAtPoint):
2333 * rendering/InlineTextBox.h:
2334 * rendering/RenderBlock.cpp:
2335 (WebCore::RenderBlock::nodeAtPoint):
2336 (WebCore::RenderBlock::hitTestContents):
2337 * rendering/RenderBlock.h:
2338 * rendering/RenderBox.cpp:
2339 (WebCore::RenderBox::nodeAtPoint):
2340 * rendering/RenderBox.h:
2341 * rendering/RenderFrameSet.cpp:
2342 (WebCore::RenderFrameSet::nodeAtPoint):
2343 * rendering/RenderFrameSet.h:
2344 * rendering/RenderImage.cpp:
2345 (WebCore::RenderImage::nodeAtPoint):
2346 * rendering/RenderImage.h:
2347 * rendering/RenderInline.cpp:
2348 (WebCore::RenderInline::nodeAtPoint):
2349 * rendering/RenderInline.h:
2350 * rendering/RenderLineBoxList.cpp:
2351 (WebCore::RenderLineBoxList::hitTest):
2352 * rendering/RenderListBox.cpp:
2353 (WebCore::RenderListBox::nodeAtPoint):
2354 * rendering/RenderListBox.h:
2355 * rendering/RenderObject.cpp:
2356 (WebCore::RenderObject::hitTest):
2357 * rendering/RenderObject.h:
2358 * rendering/RenderTable.cpp:
2359 (WebCore::RenderTable::nodeAtPoint):
2360 * rendering/RenderTable.h:
2361 * rendering/RenderTableRow.cpp:
2362 (WebCore::RenderTableRow::nodeAtPoint):
2363 * rendering/RenderTableRow.h:
2364 * rendering/RenderTableSection.cpp:
2365 (WebCore::RenderTableSection::nodeAtPoint):
2366 * rendering/RenderTableSection.h:
2367 * rendering/RenderText.h:
2368 (WebCore::RenderText::nodeAtPoint):
2369 * rendering/RenderTextControlMultiLine.cpp:
2370 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
2371 * rendering/RenderTextControlMultiLine.h:
2372 * rendering/RenderTextControlSingleLine.cpp:
2373 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
2374 * rendering/RenderTextControlSingleLine.h:
2375 * rendering/RenderWidget.cpp:
2376 (WebCore::RenderWidget::nodeAtPoint):
2377 * rendering/RenderWidget.h:
2378 * rendering/RootInlineBox.cpp:
2379 (WebCore::RootInlineBox::nodeAtPoint):
2380 * rendering/RootInlineBox.h:
2381 * rendering/svg/RenderSVGForeignObject.cpp:
2382 (WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
2383 (WebCore::RenderSVGForeignObject::nodeAtPoint):
2384 * rendering/svg/RenderSVGForeignObject.h:
2385 * rendering/svg/RenderSVGModelObject.cpp:
2386 (WebCore::RenderSVGModelObject::nodeAtPoint):
2387 * rendering/svg/RenderSVGModelObject.h:
2388 * rendering/svg/RenderSVGRoot.cpp:
2389 (WebCore::RenderSVGRoot::nodeAtPoint):
2390 * rendering/svg/RenderSVGRoot.h:
2391 * rendering/svg/RenderSVGText.cpp:
2392 (WebCore::RenderSVGText::nodeAtFloatPoint):
2393 (WebCore::RenderSVGText::nodeAtPoint):
2394 * rendering/svg/RenderSVGText.h:
2396 2011-06-07 Yi Shen <yi.4.shen@nokia.com>
2398 Reviewed by Simon Hausmann.
2400 [Qt] Fix the error code for media resource failures when using QtMobility
2401 https://bugs.webkit.org/show_bug.cgi?id=55901
2403 To indicate the media resource failures, set the network state to
2404 MediaPlayer::FormatError when receives QMediaPlayer::InvalidMedia or
2405 QMediaPlayer::ResourceError.
2407 * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2408 (WebCore::MediaPlayerPrivateQt::updateStates):
2410 2011-06-07 Emil A Eklund <eae@chromium.org>
2412 Reviewed by Eric Seidel.
2414 Change RenderBlock::hitTestFloats to IntPoint
2415 https://bugs.webkit.org/show_bug.cgi?id=62176
2417 Covered by existing tests.
2419 * rendering/RenderBlock.cpp:
2420 (WebCore::RenderBlock::nodeAtPoint):
2421 (WebCore::RenderBlock::hitTestFloats):
2422 (WebCore::RenderBlock::hitTestColumns):
2423 * rendering/RenderBlock.h:
2425 2011-06-07 Tim Horton <timothy_horton@apple.com>
2427 Reviewed by Alexey Proskuryakov.
2429 Use correct CFURLStorageSessionRef definition on Snow Leopard
2430 https://bugs.webkit.org/show_bug.cgi?id=62223
2432 * platform/mac/WebCoreSystemInterface.h:
2433 * platform/network/ResourceHandle.h:
2434 * platform/network/cf/ResourceRequest.h:
2436 2011-06-07 Emil A Eklund <eae@chromium.org>
2438 Reviewed by Eric Seidel.
2440 Change RenderBlock::hitTestColumns to IntPoint
2441 https://bugs.webkit.org/show_bug.cgi?id=62172
2443 Covered by existing tests.
2445 * rendering/RenderBlock.cpp:
2446 (WebCore::RenderBlock::nodeAtPoint):
2447 (WebCore::RenderBlock::hitTestColumns):
2448 * rendering/RenderBlock.h:
2450 2011-06-07 Simon Fraser <simon.fraser@apple.com>
2452 Reviewed by Darin Adler.
2454 Opacity transition doesn't work while content property is set.
2455 https://bugs.webkit.org/show_bug.cgi?id=59301
2457 StyleRareNonInheritedData's copy constructor omitted to copy
2458 the m_content data, which caused us to detach and re-attach the renderer
2459 at the start of the transition, thereby killing the transition.
2461 Fix by making StyleRareNonInheritedData's copy ctor do the right thing.
2463 Test: transitions/transition-on-element-with-content.html
2465 * rendering/style/ContentData.h:
2466 * rendering/style/ContentData.cpp:
2467 (WebCore::ContentData::clone): New method to do a deep clone. (Can't use a copy
2468 ctor because of the subclasses.)
2469 * rendering/style/CounterDirectives.h: Pack the data members to save space.
2470 Add a clone() function for the HashMap.
2471 * rendering/style/CounterDirectives.cpp:
2472 (WebCore::clone): Make a new HashMap and copy the contents over.
2473 * rendering/style/StyleRareNonInheritedData.cpp:
2474 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): Copy
2475 the content and counter directives over.
2476 (WebCore::StyleRareNonInheritedData::operator==): Rather than just comparing
2477 for pointer equality, do a correct check for m_counterDirectives equality.
2478 (WebCore::StyleRareNonInheritedData::counterDataEquivalent):
2479 * rendering/style/StyleRareNonInheritedData.h:
2481 2011-06-07 Robert Kroeger <rjkroege@chromium.org>
2483 Reviewed by Adam Barth.
2485 [chromium] Add a basic gesture recognizer to the Chromium platform
2486 https://bugs.webkit.org/show_bug.cgi?id=54417
2488 Adds a basic gesture recognizer to the Chromium platform. Adds an entry
2489 point to the GestureRecognizer to reset any internal state on a page reset.
2490 Resetting the gesture recognizer on page load is necesary for reliable
2491 layout test execution and improves gesture recognizer operational
2494 Added an additional constructor to permit building a synthetic
2497 Small modifications to the PlatformGestureRecognizer as required to
2498 implement the simple Chromium platform gesture recognizer.
2500 Tests: fast/events/touch/touch-gesture-click.html
2503 * page/EventHandler.cpp:
2504 (WebCore::EventHandler::resetGestureRecognizer):
2505 * page/EventHandler.h:
2506 * page/FrameView.cpp:
2507 (WebCore::FrameView::reset):
2508 * platform/PlatformGestureRecognizer.h:
2509 * platform/PlatformWheelEvent.h:
2510 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2511 * platform/chromium/GestureRecognizerChromium.cpp: Added.
2512 (WebCore::InnerGestureRecognizer::InnerGestureRecognizer):
2513 (WebCore::InnerGestureRecognizer::reset):
2514 (WebCore::InnerGestureRecognizer::~InnerGestureRecognizer):
2515 (WebCore::InnerGestureRecognizer::addEdgeFunction):
2516 (WebCore::InnerGestureRecognizer::isInClickTimeWindow):
2517 (WebCore::InnerGestureRecognizer::isInsideManhattanSquare):
2518 (WebCore::InnerGestureRecognizer::dispatchSyntheticClick):
2519 (WebCore::InnerGestureRecognizer::processTouchEventForGesture):
2520 (WebCore::InnerGestureRecognizer::scrollViaTouchMotion):
2521 (WebCore::InnerGestureRecognizer::updateValues):
2522 (WebCore::InnerGestureRecognizer::signature):
2523 (WebCore::touchDown):
2524 (WebCore::noGesture):
2526 (WebCore::isClickOrScroll):
2527 (WebCore::inScroll):
2528 (WebCore::PlatformGestureRecognizer::create):
2529 (WebCore::PlatformGestureRecognizer::PlatformGestureRecognizer):
2530 (WebCore::PlatformGestureRecognizer::~PlatformGestureRecognizer):
2531 (WebCore::GestureRecognizerChromium::GestureRecognizerChromium):
2532 (WebCore::GestureRecognizerChromium::~GestureRecognizerChromium):
2533 * platform/chromium/GestureRecognizerChromium.h: Added.
2534 (WebCore::InnerGestureRecognizer::setState):
2535 (WebCore::InnerGestureRecognizer::state):
2536 (WebCore::GestureRecognizerChromium::reset):
2537 (WebCore::GestureRecognizerChromium::processTouchEventForGesture):
2539 2011-06-07 No'am Rosenthal <noam.rosenthal@nokia.com>
2541 Reviewed by Andreas Kling.
2543 [Texmap][Qt] Enable TextureMapper by default
2544 https://bugs.webkit.org/show_bug.cgi?id=61740
2546 Enable TextureMapper on Windows+Symbian, disabling the direct OpenGL path. This would mean that
2547 for now QtWebKit on Windows/Symbian would use the Qt backend for TextureMapper.
2549 No new functionality so no new tests.
2553 * platform/graphics/qt/GraphicsContext3DQt.cpp:
2554 * platform/graphics/qt/TextureMapperQt.cpp:
2555 (WebCore::TextureMapper::create):
2557 2011-06-07 Emil A Eklund <eae@chromium.org>
2559 Reviewed by Eric Seidel.
2561 Convert RenderBox::absoluteRects to IntPoint
2562 https://bugs.webkit.org/show_bug.cgi?id=62130
2564 Covered by existing tests.
2567 (WebCore::Node::hasNonEmptyBoundingBox):
2568 * rendering/InlineBox.h:
2569 (WebCore::InlineBox::size):
2570 * rendering/RenderBlock.cpp:
2571 (WebCore::RenderBlock::absoluteRects):
2572 * rendering/RenderBlock.h:
2573 * rendering/RenderBox.cpp:
2574 (WebCore::RenderBox::absoluteRects):
2575 * rendering/RenderBox.h:
2576 * rendering/RenderInline.cpp:
2577 (WebCore::RenderInline::absoluteRects):
2578 * rendering/RenderInline.h:
2579 * rendering/RenderObject.cpp:
2580 (WebCore::RenderObject::absoluteBoundingBoxRect):
2581 * rendering/RenderObject.h:
2582 (WebCore::RenderObject::absoluteRects):
2583 * rendering/RenderText.cpp:
2584 (WebCore::RenderText::absoluteRects):
2585 * rendering/RenderText.h:
2586 * rendering/RenderView.cpp:
2587 (WebCore::RenderView::absoluteRects):
2588 * rendering/RenderView.h:
2589 * rendering/svg/RenderSVGBlock.cpp:
2590 (WebCore::RenderSVGBlock::absoluteRects):
2591 * rendering/svg/RenderSVGBlock.h:
2592 * rendering/svg/RenderSVGModelObject.cpp:
2593 (WebCore::RenderSVGModelObject::absoluteRects):
2594 * rendering/svg/RenderSVGModelObject.h:
2596 2011-06-07 Kent Tamura <tkent@chromium.org>
2598 Reviewed by Andreas Kling.
2600 [Qt] RenderThemeQt::adjustSliderThumbSize() should not refer to the parent style.
2601 https://bugs.webkit.org/show_bug.cgi?id=62207
2603 * css/mediaControlsQt.css: Add comments.
2604 (audio::-webkit-media-controls-timeline):
2605 (video::-webkit-media-controls-timeline):
2606 (audio::-webkit-media-controls-volume-slider):
2607 (video::-webkit-media-controls-volume-slider):
2608 * platform/qt/RenderThemeQt.cpp: Use fixed values to avoid referring to o->parent().
2609 (WebCore::RenderThemeQt::adjustSliderThumbSize):
2611 2011-06-07 Sailesh Agrawal <sail@chromium.org>
2613 Reviewed by Mihai Parparita.
2615 Chromium Mac: Fork ScrollAnimatorMac to ScrollAnimatorChromiumMac for overlay scrollbar support
2616 https://bugs.webkit.org/show_bug.cgi?id=59753
2618 No new tests. Just forking ScrollAnimatorMac to ScrollAnimatorChromiumMac.
2620 * WebCore.gyp/WebCore.gyp: Added IntPointMac.mm. This is used by some functions in ScrollAnimatorChromiumMac. Also added filters for conflicting class names in ScrollAnimatorChromiumMac.
2621 * WebCore.gypi: Added ScrollAnimatorChromiumMac.h/mm.
2622 * platform/ScrollAnimator.cpp: Extended the #ifdef around ScrollAnimator::create() so that the chromium version will be created.
2623 * platform/chromium/ScrollAnimatorChromiumMac.h: Added.
2624 (WebCore::ScrollAnimatorChromiumMac::setIsDrawingIntoLayer):
2625 (WebCore::ScrollAnimatorChromiumMac::isDrawingIntoLayer):
2626 (WebCore::ScrollAnimatorChromiumMac::haveScrolledSincePageLoad):
2627 * 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.
2629 (-[ScrollAnimationHelperDelegate initWithScrollAnimator:WebCore::]):
2630 (-[ScrollAnimationHelperDelegate scrollAnimatorDestroyed]):
2631 (-[ScrollAnimationHelperDelegate bounds]):
2632 (-[ScrollAnimationHelperDelegate _immediateScrollToPoint:]):
2633 (-[ScrollAnimationHelperDelegate _pixelAlignProposedScrollPosition:]):
2634 (-[ScrollAnimationHelperDelegate convertSizeToBase:]):
2635 (-[ScrollAnimationHelperDelegate convertSizeFromBase:]):
2636 (-[ScrollAnimationHelperDelegate convertSizeToBacking:]):
2637 (-[ScrollAnimationHelperDelegate convertSizeFromBacking:]):
2638 (-[ScrollAnimationHelperDelegate superview]):
2639 (-[ScrollAnimationHelperDelegate documentView]):
2640 (-[ScrollAnimationHelperDelegate window]):
2641 (-[ScrollAnimationHelperDelegate _recursiveRecomputeToolTips]):
2642 (-[ScrollbarPainterControllerDelegate initWithScrollAnimator:WebCore::]):
2643 (-[ScrollbarPainterControllerDelegate scrollAnimatorDestroyed]):
2644 (-[ScrollbarPainterControllerDelegate contentAreaRectForScrollerImpPair:]):
2645 (-[ScrollbarPainterControllerDelegate inLiveResizeForScrollerImpPair:]):
2646 (-[ScrollbarPainterControllerDelegate mouseLocationInContentAreaForScrollerImpPair:]):
2647 (-[ScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
2648 (-[ScrollbarPainterControllerDelegate scrollerImpPair:setContentAreaNeedsDisplayInRect:]):
2649 (-[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
2650 (-[ScrollbarPartAnimation initWithScrollbarPainter:part:WebCore::scrollAnimator:WebCore::animateAlphaTo:duration:]):
2651 (-[ScrollbarPartAnimation setCurrentProgress:]):
2652 (-[ScrollbarPartAnimation scrollAnimatorDestroyed]):
2653 (-[ScrollbarPainterDelegate initWithScrollAnimator:WebCore::]):
2654 (-[ScrollbarPainterDelegate cancelAnimations]):
2655 (-[ScrollbarPainterDelegate convertRectToBacking:]):
2656 (-[ScrollbarPainterDelegate convertRectFromBacking:]):
2657 (-[ScrollbarPainterDelegate layer]):
2658 (-[ScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
2659 (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
2660 (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
2661 (-[ScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]):
2662 (-[ScrollbarPainterDelegate scrollAnimatorDestroyed]):
2663 (WebCore::ScrollAnimator::create):
2664 (WebCore::ScrollAnimatorChromiumMac::ScrollAnimatorChromiumMac):
2665 (WebCore::ScrollAnimatorChromiumMac::~ScrollAnimatorChromiumMac):
2666 (WebCore::ScrollAnimatorChromiumMac::scroll):
2667 (WebCore::ScrollAnimatorChromiumMac::scrollToOffsetWithoutAnimation):
2668 (WebCore::ScrollAnimatorChromiumMac::adjustScrollXPositionIfNecessary):
2669 (WebCore::ScrollAnimatorChromiumMac::adjustScrollYPositionIfNecessary):
2670 (WebCore::ScrollAnimatorChromiumMac::adjustScrollPositionIfNecessary):
2671 (WebCore::ScrollAnimatorChromiumMac::immediateScrollToPoint):
2672 (WebCore::ScrollAnimatorChromiumMac::immediateScrollByDeltaX):
2673 (WebCore::ScrollAnimatorChromiumMac::immediateScrollByDeltaY):
2674 (WebCore::ScrollAnimatorChromiumMac::notityPositionChanged):
2675 (WebCore::ScrollAnimatorChromiumMac::contentAreaWillPaint):
2676 (WebCore::ScrollAnimatorChromiumMac::mouseEnteredContentArea):
2677 (WebCore::ScrollAnimatorChromiumMac::mouseExitedContentArea):
2678 (WebCore::ScrollAnimatorChromiumMac::mouseMovedInContentArea):
2679 (WebCore::ScrollAnimatorChromiumMac::willStartLiveResize):
2680 (WebCore::ScrollAnimatorChromiumMac::contentsResized):
2681 (WebCore::ScrollAnimatorChromiumMac::willEndLiveResize):
2682 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidShow):
2683 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidHide):
2684 (WebCore::ScrollAnimatorChromiumMac::didBeginScrollGesture):
2685 (WebCore::ScrollAnimatorChromiumMac::didEndScrollGesture):
2686 (WebCore::ScrollAnimatorChromiumMac::didAddVerticalScrollbar):
2687 (WebCore::ScrollAnimatorChromiumMac::willRemoveVerticalScrollbar):
2688 (WebCore::ScrollAnimatorChromiumMac::didAddHorizontalScrollbar):
2689 (WebCore::ScrollAnimatorChromiumMac::willRemoveHorizontalScrollbar):
2690 (WebCore::ScrollAnimatorChromiumMac::cancelAnimations):
2691 (WebCore::elasticDeltaForTimeDelta):
2692 (WebCore::elasticDeltaForReboundDelta):
2693 (WebCore::reboundDeltaForElasticDelta):
2694 (WebCore::scrollWheelMultiplier):
2695 (WebCore::ScrollAnimatorChromiumMac::handleWheelEvent):
2696 (WebCore::ScrollAnimatorChromiumMac::handleGestureEvent):
2697 (WebCore::ScrollAnimatorChromiumMac::pinnedInDirection):
2698 (WebCore::ScrollAnimatorChromiumMac::allowsVerticalStretching):
2699 (WebCore::ScrollAnimatorChromiumMac::allowsHorizontalStretching):
2700 (WebCore::ScrollAnimatorChromiumMac::smoothScrollWithEvent):
2701 (WebCore::ScrollAnimatorChromiumMac::beginScrollGesture):
2702 (WebCore::ScrollAnimatorChromiumMac::endScrollGesture):
2703 (WebCore::ScrollAnimatorChromiumMac::snapRubberBand):
2704 (WebCore::roundTowardZero):
2705 (WebCore::roundToDevicePixelTowardZero):
2706 (WebCore::ScrollAnimatorChromiumMac::snapRubberBandTimerFired):
2707 (WebCore::ScrollAnimatorChromiumMac::startScrollbarPaintTimer):
2708 (WebCore::ScrollAnimatorChromiumMac::scrollbarPaintTimerIsActive):
2709 (WebCore::ScrollAnimatorChromiumMac::stopScrollbarPaintTimer):
2710 (WebCore::ScrollAnimatorChromiumMac::initialScrollbarPaintTimerFired):
2711 (WebCore::ScrollAnimatorChromiumMac::setVisibleScrollerThumbRect):
2712 * platform/graphics/IntPoint.h: Exposed NSPoint conversion routines to chromium mac.
2714 2011-06-07 Sam Weinig <sam@webkit.org>
2716 Reviewed by Anders Carlsson.
2718 Remove repeated IPC traffic from SetRenderTreeSize message
2719 https://bugs.webkit.org/show_bug.cgi?id=62244
2721 * WebCore.xcodeproj/project.pbxproj:
2722 Make RenderArena.h private so it can be called from WebKit2.
2724 * loader/FrameLoaderClient.h:
2725 (WebCore::FrameLoaderClient::dispatchDidLayout):
2728 * page/ChromeClient.h:
2729 Remove setRenderTreeSize.
2731 * page/FrameView.cpp:
2732 (WebCore::FrameView::performPostLayoutTasks):
2733 Call dispatchDidLayout for all frames instead of calling setRenderTreeSize
2736 2011-06-07 Emil A Eklund <eae@chromium.org>
2738 Reviewed by Eric Seidel.
2740 Change RenderBlock::hitTestContents to IntPoint
2741 https://bugs.webkit.org/show_bug.cgi?id=62170
2743 Covered by existing tests.
2745 * rendering/RenderBlock.cpp:
2746 (WebCore::RenderBlock::nodeAtPoint):
2747 (WebCore::RenderBlock::hitTestColumns):
2748 (WebCore::RenderBlock::hitTestContents):
2749 * rendering/RenderBlock.h:
2751 2011-06-07 Jer Noble <jer.noble@apple.com>
2753 Reviewed by Eric Carlson.
2755 Video with poster attribute will not display new frames when scrubbing.
2756 https://bugs.webkit.org/show_bug.cgi?id=62036
2758 Remove our "detection" about the end of a scrub now that there is an explicit seek completion
2759 handler available in AVFoundation. Move what we used to do upon detection in timeChanged()
2760 into seekCompleted().
2762 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2763 (WebCore::MediaPlayerPrivateAVFoundation::timeChanged):
2764 (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
2766 2011-06-07 James Simonsen <simonjam@chromium.org>
2768 Unreviewed, build fix, missing files from r88274.
2770 * bindings/v8/ChildThreadDOMData.cpp: Added.
2771 (WebCore::ChildThreadDOMData::ChildThreadDOMData):
2772 (WebCore::ChildThreadDOMData::getStore):
2773 * bindings/v8/ChildThreadDOMData.h: Added.
2774 * bindings/v8/MainThreadDOMData.cpp: Added.
2775 (WebCore::MainThreadDOMData::MainThreadDOMData):
2776 (WebCore::MainThreadDOMData::getCurrent):
2777 (WebCore::MainThreadDOMData::getMainThreadStore):
2778 (WebCore::MainThreadDOMData::getCurrentMainThreadStore):
2779 * bindings/v8/MainThreadDOMData.h: Added.
2780 (WebCore::MainThreadDOMData::getStore):
2782 2011-06-07 Abhishek Arya <inferno@chromium.org>
2784 Reviewed by Dan Bernstein.
2786 Replicate WidthIterator.cpp fix from r88139.
2787 https://bugs.webkit.org/show_bug.cgi?id=62238
2789 No new tests. Covered by existing layout tests on XP debug bots.
2791 * platform/graphics/win/UniscribeController.cpp:
2792 (WebCore::UniscribeController::advance):
2794 2011-06-07 Sheriff Bot <webkit.review.bot@gmail.com>
2796 Unreviewed, rolling out r88221, r88224, and r88231.
2797 http://trac.webkit.org/changeset/88221
2798 http://trac.webkit.org/changeset/88224
2799 http://trac.webkit.org/changeset/88231
2800 https://bugs.webkit.org/show_bug.cgi?id=62233
2802 assert failure on chromium linux debug (Requested by simonjam
2807 * bindings/v8/ChildThreadDOMData.cpp: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
2808 (WebCore::ChildThreadDOMData::ChildThreadDOMData):
2809 (WebCore::ChildThreadDOMData::getStore):
2810 * bindings/v8/ChildThreadDOMData.h: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
2811 * bindings/v8/DOMData.cpp:
2812 (WebCore::DOMData::DOMData):
2813 (WebCore::DOMData::getCurrent):
2814 * bindings/v8/DOMData.h:
2815 (WebCore::DOMData::owningThread):
2816 (WebCore::DOMData::handleWeakObject):
2817 * bindings/v8/DOMDataStore.cpp:
2818 (WebCore::DOMDataStore::DOMDataStore):
2819 (WebCore::DOMDataStore::~DOMDataStore):
2820 (WebCore::DOMDataStore::allStoresMutex):
2821 (WebCore::DOMDataStore::weakNodeCallback):
2822 * bindings/v8/DOMDataStore.h:
2823 * bindings/v8/MainThreadDOMData.cpp: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
2824 (WebCore::MainThreadDOMData::MainThreadDOMData):
2825 (WebCore::MainThreadDOMData::getCurrent):
2826 (WebCore::MainThreadDOMData::getMainThreadStore):
2827 (WebCore::MainThreadDOMData::getCurrentMainThreadStore):
2828 * bindings/v8/MainThreadDOMData.h: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
2829 (WebCore::MainThreadDOMData::getStore):
2830 * bindings/v8/V8DOMMap.cpp:
2831 (WebCore::getDOMDataStore):
2832 (WebCore::removeAllDOMObjectsInCurrentThread):
2833 (WebCore::visitDOMNodesInCurrentThread):
2834 (WebCore::visitDOMObjectsInCurrentThread):
2835 (WebCore::visitActiveDOMObjectsInCurrentThread):
2836 (WebCore::visitDOMSVGElementInstancesInCurrentThread):
2837 * bindings/v8/V8DOMMap.h:
2838 * bindings/v8/V8GCController.cpp:
2839 (WebCore::V8GCController::gcPrologue):
2840 (WebCore::V8GCController::gcEpilogue):
2841 * bindings/v8/WorkerScriptController.cpp:
2842 (WebCore::WorkerScriptController::~WorkerScriptController):
2844 2011-06-07 Simon Fraser <simon.fraser@apple.com>
2846 Reviewed by Dave Hyatt.
2848 Clean up ContentData
2849 https://bugs.webkit.org/show_bug.cgi?id=62185
2851 ContentData did manual ref()/deref() and had a lot of awkward
2852 code from using a union to store data.
2854 Clean this up by adding ContentData subclasses for different
2855 content types, which are then able to use RefPtr and OwnPtr
2858 * css/CSSComputedStyleDeclaration.cpp:
2859 (WebCore::contentToCSSValue): Cast to different ContentData types as
2862 * css/CSSStyleSelector.cpp:
2863 (WebCore::CSSStyleSelector::loadPendingImages): Cast to ImageContentData, and do some
2866 * html/HTMLBRElement.cpp:
2867 (WebCore::HTMLBRElement::createRenderer): Use hasContent().
2868 * html/HTMLFrameSetElement.cpp:
2869 (WebCore::HTMLFrameSetElement::createRenderer): Ditto
2870 * html/HTMLImageElement.cpp:
2871 (WebCore::HTMLImageElement::createRenderer): Ditto
2872 * rendering/RenderObject.cpp:
2873 (WebCore::RenderObject::createObject): Cast to ImageContentData.
2874 * rendering/RenderObjectChildList.cpp:
2875 (WebCore::RenderObjectChildList::updateBeforeAfterContent): Cast to different ContentData types as
2878 * rendering/style/ContentData.h:
2879 (WebCore::ContentData::~ContentData):
2880 (WebCore::ContentData::isCounter):
2881 (WebCore::ContentData::isImage):
2882 (WebCore::ContentData::isQuote):
2883 (WebCore::ContentData::isText):
2884 (WebCore::ContentData::next):
2885 (WebCore::ContentData::setNext):
2886 (WebCore::ImageContentData::image):
2887 (WebCore::ImageContentData::setImage):
2888 (WebCore::ImageContentData::ImageContentData):
2889 (WebCore::ImageContentData::type):
2890 (WebCore::ImageContentData::isImage):
2891 (WebCore::TextContentData::text):
2892 (WebCore::TextContentData::setText):
2893 (WebCore::TextContentData::TextContentData):
2894 (WebCore::TextContentData::type):
2895 (WebCore::TextContentData::isText):
2896 (WebCore::CounterContentData::counter):
2897 (WebCore::CounterContentData::setCounter):
2898 (WebCore::CounterContentData::CounterContentData):
2899 (WebCore::CounterContentData::type):
2900 (WebCore::CounterContentData::isCounter):
2901 (WebCore::QuoteContentData::quote):
2902 (WebCore::QuoteContentData::setQuote):
2903 (WebCore::QuoteContentData::QuoteContentData):
2904 (WebCore::QuoteContentData::type):
2905 (WebCore::QuoteContentData::isQuote):
2906 Add subclasses for different content types, which are created
2907 via overloaded create() methods on the base class.
2909 * rendering/style/ContentData.cpp:
2910 (WebCore::ContentData::create):
2911 (WebCore::operator==): Test for type equality, followed by comparing data.
2912 (WebCore::operator!=):
2914 * rendering/style/RenderStyle.cpp:
2915 (WebCore::RenderStyle::clearContent):
2916 (WebCore::RenderStyle::appendContent):
2917 (WebCore::RenderStyle::setContent): Replace the overly complex prepareToSetContent()
2918 code with code that either appends, or replaces the content.
2919 This loses an optimization where the existing ContentData object could get reused,
2920 but this seems to be rarely hit in practice.
2921 * rendering/style/RenderStyle.h:
2922 (WebCore::InheritedFlags::hasContent): Convenience method.
2923 * rendering/style/StyleRareNonInheritedData.cpp:
2924 (WebCore::StyleRareNonInheritedData::contentDataEquivalent): Test
2925 that the pointers are non-null, then use the != operator.
2926 * rendering/style/StyleRareNonInheritedData.h: ContentData is a class now.
2928 2011-06-07 Brian Weinstein <bweinstein@apple.com>
2930 Build fix after r88260.
2932 * platform/graphics/win/FontCacheWin.cpp:
2933 (WebCore::FontCache::getFontDataForCharacters): Update to use enum instead of bool.
2934 * platform/graphics/wince/FontCacheWinCE.cpp:
2936 2011-06-07 Rob Buis <rbuis@rim.com>
2938 Reviewed by Dirk Schulze.
2940 stroke-dasharray does not handle "none"
2941 https://bugs.webkit.org/show_bug.cgi?id=62203
2943 Use the initial strokeDashArray style for stroke-dasharray="none" to apply to SVGRenderStyle rather than bailing out.
2945 Tests: svg/W3C-SVG-1.1-SE/styling-css-04-f.svg
2946 svg/custom/invalid-dasharray.svg
2948 * css/SVGCSSStyleSelector.cpp:
2949 (WebCore::CSSStyleSelector::applySVGProperty):
2951 2011-06-07 Sheriff Bot <webkit.review.bot@gmail.com>
2953 Unreviewed, rolling out r88259 and r88263.
2954 http://trac.webkit.org/changeset/88259
2955 http://trac.webkit.org/changeset/88263
2956 https://bugs.webkit.org/show_bug.cgi?id=62228
2958 broke builds (Requested by rniwa on #webkit).
2960 * platform/mac/WebCoreSystemInterface.h:
2961 * platform/network/ResourceHandle.h:
2962 * platform/network/cf/ResourceRequest.h:
2964 2011-06-07 Emil A Eklund <eae@chromium.org>
2966 Reviewed by Eric Seidel.
2968 Switch ContainerNode to use IntPoint
2969 https://bugs.webkit.org/show_bug.cgi?id=61893
2971 Covered by existing tests.
2973 * dom/ContainerNode.cpp:
2974 (WebCore::ContainerNode::getUpperLeftCorner):
2975 (WebCore::ContainerNode::getLowerRightCorner):
2976 (WebCore::ContainerNode::getRect):
2977 Change to use maxX/maxY instead of x+width/y+height
2979 * platform/graphics/FloatPoint.h:
2980 (WebCore::FloatPoint::move):
2981 (WebCore::FloatPoint::moveBy):
2982 (WebCore::FloatPoint::expandedTo):
2983 Add move, moveBy and expandedTo mirroring the IntPoint implementation of the same.
2985 2011-06-07 Ryosuke Niwa <rniwa@webkit.org>
2987 Speculative build fix after r88259.
2989 * platform/network/cf/ResourceRequest.h:
2991 2011-06-07 Michael Saboff <msaboff@apple.com>
2993 Reviewed by Geoffrey Garen.
2995 Need to enable font cache purging in MemoryPressureHandler
2996 https://bugs.webkit.org/show_bug.cgi?id=62060
2998 Improve memory usage under pressure.
2999 Added call to fontCache()->purgeInactiveFontData() in
3000 MemoryPressureHandler::respondToMemoryPressure(). Added protection to
3001 MemoryPressureHandler::install() being called multiple times.
3003 No new tests as funtionality wasn't changed.
3005 * platform/MemoryPressureHandler.cpp:
3006 (WebCore::MemoryPressureHandler::MemoryPressureHandler):
3007 * platform/MemoryPressureHandler.h:
3008 * platform/mac/MemoryPressureHandlerMac.mm:
3009 (WebCore::MemoryPressureHandler::install):
3010 (WebCore::MemoryPressureHandler::respondToMemoryPressure):
3012 2011-06-07 Michael Saboff <msaboff@apple.com>
3014 Reviewed by Geoffrey Garen.
3016 Fonts returned by FontCache::getFontDataForCharacters() are never released
3017 https://bugs.webkit.org/show_bug.cgi?id=61875
3019 This change allows fonts allocated as system fallback fonts to be
3020 released. Previously, the reference counts for these fonts grew
3021 without bound. This is implemented as an auto release class that wraps
3022 accesses to the cache for system fallback fonts. All such accesses are
3023 via the method FontCache::getFontDataForCharacters. The new class is
3024 called FontCachePurgePreventer. When such an object exists, it protects
3025 these fonts from deletion.
3027 Most accesses to the font cache still use the reference counting
3028 implemented by FontCache::getCacheFontData() and
3029 FontCache::releaseFontData() and that operation is not affected by
3032 Added local scoped instance of FontCachePurgePreventer to wrap code
3033 that directly or indirectly accesses fonts via getFontDataForCharacters.
3034 Did a few other miscellaneous bug fixes and changes to allow system
3035 fallback fonts to be pruned from the GlyphPageTree. Changed the
3036 calls to getFontData in the platform specific versions of
3037 Fontcache::getFontDataForCharacters to not increment the reference
3038 count. Moved the purge font check
3039 outside of FontCache::getCachedFontData() into a separate method,
3040 purgeInactiveFontDataIfNeeded() since almost all calls to
3041 getCachedFontData() now happen when purging is not allowed.
3042 purgeInactiveFontDataIfNeeded is invoked in enablePurging() when
3043 m_purgePreventCount is 0.
3045 No new test as the functionality has not changed. Improved font life
3048 * WebCore.exp.in: Added FontCache::purgeInactiveFontDataIfNeeded().
3049 * html/canvas/CanvasRenderingContext2D.cpp:
3050 (WebCore::CanvasRenderingContext2D::measureText):
3051 (WebCore::CanvasRenderingContext2D::drawTextInternal):
3052 Wrapped code accessing fallback fonts with local
3053 FontCachePurgePreventer in these methods.
3055 * page/FrameView.cpp:
3056 (WebCore::FrameView::layout):
3057 (WebCore::FrameView::paintContents):
3058 Wrapped code accessing fallback fonts with local
3059 FontCachePurgePreventer in these methods.
3061 * platform/graphics/FontCache.cpp:
3062 (WebCore::FontCache::FontCache):
3063 (WebCore::FontCache::getCachedFontData):
3064 Moved purge check to new method since it likely can't happen here.
3065 (WebCore::FontCache::releaseFontData):
3066 (WebCore::FontCache::purgeInactiveFontDataIfNeeded):
3067 (WebCore::FontCache::purgeInactiveFontData):
3068 Made purging conditional on m_purgePreventCount. Now some fonts
3069 in the cache are reference counted while other can be purged
3070 outside of code wrapped by in scope FontCachePurgePreventer objects.
3072 * platform/graphics/FontCache.h:
3073 (WebCore::FontCache::disablePurging):
3074 (WebCore::FontCache::enablePurging):
3075 (WebCore::FontCachePurgePreventer::FontCachePurgePreventer):
3076 (WebCore::FontCachePurgePreventer::~FontCachePurgePreventer):
3077 Added new simple purge prevention wrapper class and methods
3078 that it calls in FontCache actually prevent purging. The
3079 simple methods inlined to reduce overhead.
3081 * platform/graphics/FontFastPath.cpp:
3082 (WebCore::Font::glyphDataForCharacter): Update level in
3083 glyph page tree for system fallback fonts so pruning works.
3085 * platform/graphics/GlyphPage.h:
3086 (WebCore::GlyphPage::clearForFontData): New method used for pruning
3087 * platform/graphics/GlyphPageTreeNode.cpp:
3088 (WebCore::GlyphPageTreeNode::pruneFontData):
3089 Now we prune system fallback fonts.
3091 * platform/graphics/chromium/FontCacheChromiumWin.cpp:
3092 (WebCore::FontCache::getFontDataForCharacters):
3093 * platform/graphics/freetype/FontCacheFreeType.cpp:
3094 (WebCore::FontCache::getFontDataForCharacters):
3095 * platform/graphics/haiku/FontCacheHaiku.cpp:
3096 (WebCore::FontCache::getFontDataForCharacters):
3097 * platform/graphics/mac/FontCacheMac.mm:
3098 (WebCore::FontCache::getFontDataForCharacters):
3099 * platform/graphics/qt/FontCacheQt.cpp:
3100 (WebCore::FontCache::getFontDataForCharacters):
3101 * platform/graphics/win/FontCacheWin.cpp:
3102 (WebCore::FontCache::getFontDataForCharacters):
3103 * platform/graphics/wince/FontCacheWinCE.cpp:
3104 * platform/graphics/wx/FontCacheWx.cpp:
3105 (WebCore::FontCache::getFontDataForCharacters):
3106 Changed the calls to getFontData() to not increment the reference
3107 count. The caller of this getFontDataForCharacters() (currently only
3108 Font::glyphDataForCharacter() in fontFastPath.cpp) and it's callers
3109 don't attempt to release the returned fonts so we use the purge
3110 protection described above.
3112 * rendering/InlineTextBox.cpp:
3113 (WebCore::InlineTextBox::selectionRect):
3114 (WebCore::InlineTextBox::offsetForPosition):
3115 (WebCore::InlineTextBox::positionForOffset):
3116 Wrapped code accessing fallback fonts with local
3117 FontCachePurgePreventer in these methods.
3119 * rendering/RenderImage.cpp:
3120 (WebCore::RenderImage::setImageSizeForAltText):
3121 Wrapped code accessing fallback fonts with local
3122 FontCachePurgePreventer in this method.
3124 * rendering/RenderListBox.cpp:
3125 (WebCore::RenderListBox::updateFromElement):
3126 (WebCore::RenderListBox::paintItemForeground):
3127 Wrapped code accessing fallback fonts with local
3128 FontCachePurgePreventer in these methods
3130 * rendering/svg/SVGInlineTextBox.cpp:
3131 (WebCore::SVGInlineTextBox::selectionRectForTextFragment):
3132 Wrapped code accessing fallback fonts with local
3133 FontCachePurgePreventer in this method.
3135 2011-06-07 Tim Horton <timothy_horton@apple.com>
3137 Reviewed by Alexey Proskuryakov.
3139 Use correct CFURLStorageSessionRef definition on Snow Leopard
3140 https://bugs.webkit.org/show_bug.cgi?id=62223
3142 * platform/mac/WebCoreSystemInterface.h:
3143 * platform/network/ResourceHandle.h:
3144 * platform/network/cf/ResourceRequest.h:
3146 2011-06-07 Alok Priyadarshi <alokp@chromium.org>
3148 Reviewed by Stephen White.
3150 [chromium] PlatformContextSkia leaks SkDeviceFactory
3151 https://bugs.webkit.org/show_bug.cgi?id=62163
3153 Valgrind tests should have caught this.
3155 * platform/graphics/skia/PlatformContextSkia.cpp:
3156 (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
3158 2011-06-07 Emil A Eklund <eae@chromium.org>
3160 Reviewed by Eric Seidel.
3162 Convert RenderTextControl::hitInnerTextElement to IntPoint
3163 https://bugs.webkit.org/show_bug.cgi?id=62167
3165 Covered by existing tests.
3167 * rendering/RenderTextControl.cpp:
3168 (WebCore::RenderTextControl::hitInnerTextElement):
3169 * rendering/RenderTextControl.h:
3170 * rendering/RenderTextControlMultiLine.cpp:
3171 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
3172 * rendering/RenderTextControlSingleLine.cpp:
3173 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
3175 2011-06-07 Levi Weintraub <leviw@chromium.org>
3177 Reviewed by Eric Seidel.
3179 Switch paint to use IntPoint
3180 https://bugs.webkit.org/show_bug.cgi?id=62177
3182 Flipping the switch on the remaining paint functions to have them all
3183 use IntPoint for the paint offset instead of tx/ty.
3185 No new tests since this is just refactoring.
3187 * page/FrameView.cpp:
3188 (WebCore::FrameView::paintScrollCorner):
3189 * rendering/InlineBox.cpp:
3190 (WebCore::InlineBox::paint):
3191 * rendering/RenderBlock.cpp:
3192 (WebCore::RenderBlock::paint):
3193 (WebCore::RenderBlock::paintContents):
3194 (WebCore::RenderBlock::paintChildren):
3195 (WebCore::RenderBlock::paintFloats):
3196 * rendering/RenderBlock.h:
3197 * rendering/RenderBox.cpp:
3198 (WebCore::RenderBox::paint):
3199 * rendering/RenderBox.h:
3200 * rendering/RenderBoxModelObject.cpp:
3201 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3202 * rendering/RenderDetailsMarker.cpp:
3203 (WebCore::RenderDetailsMarker::paint):
3204 * rendering/RenderDetailsMarker.h:
3205 * rendering/RenderEmbeddedObject.cpp:
3206 (WebCore::RenderEmbeddedObject::paint):
3207 * rendering/RenderEmbeddedObject.h:
3208 * rendering/RenderFrameSet.cpp:
3209 (WebCore::RenderFrameSet::paint):
3210 * rendering/RenderFrameSet.h:
3211 * rendering/RenderImage.cpp:
3212 (WebCore::RenderImage::paint):
3213 * rendering/RenderImage.h:
3214 * rendering/RenderInline.cpp:
3215 (WebCore::RenderInline::paint):
3216 * rendering/RenderInline.h:
3217 * rendering/RenderLayer.cpp:
3218 (WebCore::RenderLayer::paintScrollCorner):
3219 (WebCore::RenderLayer::paintResizer):
3220 (WebCore::RenderLayer::paintLayer):
3221 * rendering/RenderLayerBacking.cpp:
3222 (WebCore::RenderLayerBacking::paintIntoLayer):
3223 * rendering/RenderLineBoxList.cpp:
3224 (WebCore::RenderLineBoxList::paint):
3225 * rendering/RenderLineBoxList.h:
3226 * rendering/RenderListItem.cpp:
3227 (WebCore::RenderListItem::paint):
3228 * rendering/RenderListItem.h:
3229 * rendering/RenderListMarker.cpp:
3230 (WebCore::RenderListMarker::paint):
3231 * rendering/RenderListMarker.h:
3232 * rendering/RenderObject.cpp:
3233 (WebCore::RenderObject::paint):
3234 * rendering/RenderObject.h:
3235 * rendering/RenderReplaced.cpp:
3236 (WebCore::RenderReplaced::paint):
3237 * rendering/RenderReplaced.h:
3238 * rendering/RenderReplica.cpp:
3239 (WebCore::RenderReplica::paint):
3240 * rendering/RenderReplica.h:
3241 * rendering/RenderScrollbar.cpp:
3242 (WebCore::RenderScrollbar::paintPart):
3243 * rendering/RenderScrollbarPart.cpp:
3244 (WebCore::RenderScrollbarPart::paintIntoRect):
3245 * rendering/RenderScrollbarPart.h:
3246 * rendering/RenderTable.cpp:
3247 (WebCore::RenderTable::paint):
3248 (WebCore::RenderTable::paintObject):
3249 * rendering/RenderTable.h:
3250 * rendering/RenderTableCell.cpp:
3251 (WebCore::RenderTableCell::paint):
3252 * rendering/RenderTableCell.h:
3253 * rendering/RenderTableRow.cpp:
3254 (WebCore::RenderTableRow::paint):
3255 * rendering/RenderTableRow.h:
3256 * rendering/RenderTableSection.cpp:
3257 (WebCore::RenderTableSection::paint):
3258 (WebCore::RenderTableSection::paintCell):
3259 * rendering/RenderTableSection.h:
3260 * rendering/RenderText.h:
3261 (WebCore::RenderText::paint):
3262 * rendering/RenderTextControlSingleLine.cpp:
3263 (WebCore::RenderTextControlSingleLine::paint):
3264 * rendering/RenderTextControlSingleLine.h:
3265 * rendering/RenderView.cpp:
3266 (WebCore::RenderView::paint):
3267 * rendering/RenderView.h:
3268 * rendering/RenderWidget.cpp:
3269 (WebCore::RenderWidget::paint):
3270 * rendering/RenderWidget.h:
3271 * rendering/mathml/RenderMathMLBlock.cpp:
3272 (WebCore::RenderMathMLBlock::paint):
3273 * rendering/mathml/RenderMathMLBlock.h:
3274 * rendering/mathml/RenderMathMLFraction.cpp:
3275 (WebCore::RenderMathMLFraction::paint):
3276 * rendering/mathml/RenderMathMLFraction.h:
3277 * rendering/mathml/RenderMathMLRoot.cpp:
3278 (WebCore::RenderMathMLRoot::paint):
3279 * rendering/mathml/RenderMathMLRoot.h:
3280 * rendering/mathml/RenderMathMLSquareRoot.cpp:
3281 (WebCore::RenderMathMLSquareRoot::paint):
3282 * rendering/mathml/RenderMathMLSquareRoot.h:
3283 * rendering/svg/RenderSVGContainer.cpp:
3284 (WebCore::RenderSVGContainer::paint):
3285 * rendering/svg/RenderSVGContainer.h:
3286 * rendering/svg/RenderSVGForeignObject.cpp:
3287 (WebCore::RenderSVGForeignObject::paint):
3288 * rendering/svg/RenderSVGForeignObject.h:
3289 * rendering/svg/RenderSVGHiddenContainer.cpp:
3290 (WebCore::RenderSVGHiddenContainer::paint):
3291 * rendering/svg/RenderSVGHiddenContainer.h:
3292 * rendering/svg/RenderSVGImage.cpp:
3293 (WebCore::RenderSVGImage::paint):
3294 * rendering/svg/RenderSVGImage.h:
3295 * rendering/svg/RenderSVGPath.cpp:
3296 (WebCore::RenderSVGPath::paint):
3297 * rendering/svg/RenderSVGPath.h:
3298 * rendering/svg/RenderSVGResourceMarker.cpp:
3299 (WebCore::RenderSVGResourceMarker::draw):
3300 * rendering/svg/RenderSVGRoot.cpp:
3301 (WebCore::RenderSVGRoot::paint):
3302 * rendering/svg/RenderSVGRoot.h:
3303 * rendering/svg/RenderSVGText.cpp:
3304 (WebCore::RenderSVGText::paint):
3305 * rendering/svg/RenderSVGText.h:
3306 * rendering/svg/SVGImageBufferTools.cpp:
3307 (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer):
3309 2011-06-07 Young Han Lee <joybro@company100.net>
3311 Reviewed by Kenneth Rohde Christiansen.
3313 [Texmap][Qt] Accelerated animation is not paused properly.
3314 https://bugs.webkit.org/show_bug.cgi?id=61446
3316 The transform matrix of an accelerated animation shouldn't be synced with the matrix of the GraphicsLayer when the animation is paused.
3318 Test: animations/play-state-paused.html
3320 * platform/graphics/texmap/TextureMapperNode.cpp:
3321 (WebCore::TextureMapperNode::syncCompositingStateSelf):
3322 (WebCore::TextureMapperNode::hasOpacityAnimation):
3323 (WebCore::TextureMapperNode::hasTransformAnimation):
3324 * platform/graphics/texmap/TextureMapperNode.h:
3326 2011-06-07 Lucas De Marchi <lucas.demarchi@profusion.mobi>
3328 Reviewed by Antonio Gomes.
3330 [EFL] Remove Ecore_X bits from PlatformScreenEfl
3331 https://bugs.webkit.org/show_bug.cgi?id=61649
3333 Remove the need for Ecore_X and some X calls by always using
3334 new functions available in EFL to get the screen size.
3336 No new tests since the same functionality are done inside EFL now.
3338 * platform/efl/PlatformScreenEfl.cpp:
3339 (WebCore::screenRect):
3341 2011-06-07 Carlos Garcia Campos <cgarcia@igalia.com>
3343 Reviewed by Martin Robinson.
3345 [GTK] Move moduleMixesGtkSymbols() from PluginPackage to PluginView
3346 https://bugs.webkit.org/show_bug.cgi?id=62200
3348 In WebKit2 PluginPackage is used by the UI process to load plugins
3349 in order to get information about them, but it doesn't use any GTK
3350 symbol. So the UI process should be able to load plugins even when
3351 building with GTK3, but we should not allow the plugin view to use
3352 the plugin if it mixes GTK2 and GTK3 symbols.
3354 * plugins/PluginPackage.h:
3355 (WebCore::PluginPackage::module): New method to return the
3357 * plugins/gtk/PluginPackageGtk.cpp:
3358 (WebCore::PluginPackage::load): Remove moduleMixesGtkSymbols().
3359 * plugins/gtk/PluginViewGtk.cpp:
3360 (WebCore::PluginView::updatePluginWidget): Check whether plugin
3361 was successfully loaded before trying to create the drawable.
3362 (WebCore::PluginView::paint): Return early if plugin didn't start
3363 or was not successfully loaded.
3364 (WebCore::PluginView::handleKeyboardEvent): Ditto.
3365 (WebCore::PluginView::handleMouseEvent): Ditto.
3366 (WebCore::PluginView::handleFocusInEvent): Ditto.
3367 (WebCore::PluginView::handleFocusOutEvent): Ditto.
3368 (WebCore::moduleMixesGtkSymbols):
3369 (WebCore::PluginView::platformStart): Check whether module is
3370 mixing GTK+ 2 and GTK+ 3 symbols.
3372 2011-06-07 Sheriff Bot <webkit.review.bot@gmail.com>
3374 Unreviewed, rolling out r88238.
3375 http://trac.webkit.org/changeset/88238
3376 https://bugs.webkit.org/show_bug.cgi?id=62216
3378 Broke a couple of inspector tests (Requested by apavlov on
3381 * inspector/front-end/StylesSidebarPane.js:
3382 (WebInspector.StylesSidebarPane.prototype.update):
3384 2011-06-07 Dinu Jacob <dinu.jacob@nokia.com>
3386 Reviewed by Dimitri Glazkov.
3388 Inform ChromeClient touch events are not needed by the webpage when navigating away from the page instead of in both Document:detach/CachedFrame
3389 https://bugs.webkit.org/show_bug.cgi?id=61543
3391 Inform chrome client that touch events are not needed by the webpage
3392 when navigating away from the page only once to avoid the flag being
3393 overwritten later if a page is removed from the page cache
3396 (WebCore::Document::detach):
3397 * history/CachedFrame.cpp:
3398 (WebCore::CachedFrame::CachedFrame):
3399 * loader/FrameLoader.cpp:
3400 (WebCore::FrameLoader::transitionToCommitted):
3402 2011-06-07 Alexander Pavlov <apavlov@chromium.org>
3404 Reviewed by Yury Semikhatsky.
3406 Web Inspector: node selection is slow in the Elements panel.
3407 https://bugs.webkit.org/show_bug.cgi?id=60813
3409 Schedule full style updates rather than request all node styles from the backend immediately.
3411 * inspector/front-end/StylesSidebarPane.js:
3412 (WebInspector.StylesSidebarPane.prototype.update.reloadAllStyles):
3413 (WebInspector.StylesSidebarPane.prototype.update):
3415 2011-06-07 Yury Semikhatsky <yurys@chromium.org>
3417 Reviewed by Pavel Feldman.
3419 Web Inspector: remove duplicate breakpoints from localStorage
3420 https://bugs.webkit.org/show_bug.cgi?id=62206
3422 Perform one-time breakpoint storage cleanup to get rid of duplicate breakpoints in
3423 case when settings version is less than 1.
3425 * inspector/front-end/Settings.js:
3426 (WebInspector.Settings):
3427 (WebInspector.Settings.prototype._set):
3428 (WebInspector.Settings.prototype._migrateSettings.splitObjects):
3429 (WebInspector.Settings.prototype._migrateSettings.removeDuplicateObjects):
3430 (WebInspector.Settings.prototype._migrateSettings):
3432 2011-06-03 Yury Semikhatsky <yurys@chromium.org>
3434 Reviewed by Pavel Feldman.
3436 [Chromium] Web Inspector: correctly handle disconnect from worker when script execution is paused
3437 https://bugs.webkit.org/show_bug.cgi?id=62019
3439 Dispatch disconnecFrontend message in debugger task mode to make sure
3440 it is processed even if execution is paused.
3442 * bindings/v8/WorkerScriptDebugServer.cpp:
3443 (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
3444 (WebCore::WorkerScriptDebugServer::quitMessageLoopOnPause):
3445 * bindings/v8/WorkerScriptDebugServer.h:
3447 2011-06-07 Felician Marton <marton.felician.zoltan@stud.u-szeged.hu>
3449 Reviewed by Nikolas Zimmermann.
3451 SVG animation beginElement() does not restart the animation after endElement().
3452 https://bugs.webkit.org/show_bug.cgi?id=43452
3454 Test: svg/animations/animate-endElement-beginElement.html
3456 Calling beginElement() after calling endElement() previously does not restarted the animation when animation
3457 element's end attribute doesn't contains a bigger value than the current animation time.
3459 * svg/animation/SVGSMILElement.cpp:
3460 (WebCore::SVGSMILElement::findInstanceTime):
3462 2011-06-07 Naoki Takano <takano.naoki@gmail.com>
3464 Reviewed by Kent Tamura.
3466 [Chromium] Click event is not fired for a menulist <select>
3467 https://bugs.webkit.org/show_bug.cgi?id=60563
3469 Tests: SelectItemEventFire, SelectItemKeyEvent, SelectItemRemoveSelectOnChange and SelectItemRemoveSelectOnChange in webkit_unit_tests.
3471 * platform/chromium/PopupMenuChromium.cpp:
3472 (WebCore::PopupContainer::showPopup): Set m_focusedNode from m_frameView.
3473 (WebCore::PopupListBox::handleMouseReleaseEvent): Call dispatchMouseEvent to forward the event only if select popup.
3474 (WebCore::PopupListBox::acceptIndex): Change to return accepted or not.
3476 2011-06-07 Andras Becsi <abecsi@webkit.org>
3478 Reviewed by Yury Semikhatsky.
3480 REGRESSION(r88221): "Chromium debug compilation broken".
3481 https://bugs.webkit.org/show_bug.cgi?id=62197
3483 No new tests needed.
3485 * bindings/v8/V8GCController.cpp: Also rename call-sites.
3486 (WebCore::V8GCController::gcPrologue):
3487 (WebCore::V8GCController::gcEpilogue):
3489 2011-06-07 MORITA Hajime <morrita@google.com>
3491 Unreviewed, rolling out r88212 and r88219.
3492 http://trac.webkit.org/changeset/88212
3493 http://trac.webkit.org/changeset/88219
3494 https://bugs.webkit.org/show_bug.cgi?id=57439
3496 Tests get timeout at Snow Leopard
3499 (html:focus, body:focus, input[readonly]:focus):
3500 * rendering/RenderWidget.cpp:
3501 (WebCore::RenderWidget::paint):
3503 2011-06-07 Andras Becsi <abecsi@webkit.org>
3505 Rubber-stamped by Csaba Osztrogonác.
3507 [Qt][V8] Fix the build after 88221.
3509 No new tests needed.
3511 * WebCore.pro: Remove non-existing files.
3512 * bindings/v8/V8DOMMap.cpp:
3513 (WebCore::removeAllDOMObjects): Also rename the definition of the function.
3515 2011-06-06 Dmitry Lomov <dslomov@google.com>
3517 Reviewed by Adam Barth.
3519 https://bugs.webkit.org/show_bug.cgi?id=62164
3520 Remove "multi-threaded" logic in V8 DOMData, DOMDataStore and friends
3521 This functionality is untested and unused:
3522 This is an old code from Lockers-based implementation of WebWorkers in
3523 V8 bindings, to make sure that DOM objects are released on the right thread
3524 even though GC could have happened on any thread. It is currently unused (since
3525 current model is one worker per process) and is being removed because new implementation
3526 of WebWorkers will be using V8 isolates.
3529 * bindings/v8/ChildThreadDOMData.cpp: Removed.
3530 * bindings/v8/ChildThreadDOMData.h: Removed.
3531 * bindings/v8/DOMData.cpp:
3532 (WebCore::DOMData::DOMData):
3533 (WebCore::DOMData::getCurrent):
3534 (WebCore::DOMData::getMainThreadStore):
3535 * bindings/v8/DOMData.h:
3536 (WebCore::DOMData::getStore):
3537 (WebCore::DOMData::getCurrentMainThreadStore):
3538 (WebCore::DOMData::handleWeakObject):
3539 * bindings/v8/DOMDataStore.cpp:
3540 (WebCore::DOMDataStore::DOMDataStore):
3541 (WebCore::DOMDataStore::~DOMDataStore):
3542 (WebCore::DOMDataStore::weakNodeCallback):
3543 * bindings/v8/DOMDataStore.h:
3544 * bindings/v8/MainThreadDOMData.cpp: Removed.
3545 * bindings/v8/MainThreadDOMData.h: Removed.
3546 * bindings/v8/V8DOMMap.cpp:
3547 (WebCore::getDOMDataStore):
3548 (WebCore::visitDOMNodes):
3549 (WebCore::visitDOMObjects):
3550 (WebCore::visitActiveDOMObjects):
3551 (WebCore::visitDOMSVGElementInstances):
3552 * bindings/v8/V8DOMMap.h:
3553 * bindings/v8/V8GCController.cpp:
3554 (WebCore::V8GCController::gcPrologue):
3555 (WebCore::V8GCController::gcEpilogue):
3556 * bindings/v8/WorkerScriptController.cpp:
3557 (WebCore::WorkerScriptController::~WorkerScriptController):
3559 2011-06-06 Nico Weber <thakis@chromium.org>
3561 Reviewed by Adam Barth.
3563 [chromium] Make VideoFrameChromium's destructor virtual
3564 https://bugs.webkit.org/show_bug.cgi?id=62186
3566 This fixes a real bug, since WebMediaPlayerClientImpl::putCurrentFrame
3567 deletes a VideoFrameChromium subclass type through this interface
3568 class, causing ~VideoFrameChromiumImpl's destructor not to run.
3569 (VideoFrameChroimumImpl happens to not have a destructor or any
3570 non-POD member variables, so it's more a latent bug.)
3572 * platform/graphics/chromium/VideoFrameChromium.cpp:
3573 (WebCore::VideoFrameChromium::~VideoFrameChromium):
3574 * platform/graphics/chromium/VideoFrameChromium.h:
3576 2011-06-06 Simon Fraser <simon.fraser@apple.com>
3578 Reviewed by Sammy Weinig.
3580 Remove some unnecessary includes from AnimationBase.cpp
3581 https://bugs.webkit.org/show_bug.cgi?id=62183
3583 * page/animation/AnimationBase.cpp:
3585 2011-06-06 Kent Tamura <tkent@chromium.org>
3587 Unreviewed, a crash fix by a roll out.
3589 REGRESSION(r87980): Null pointer dereference in RenderTextControl::setInnerText()
3590 https://bugs.webkit.org/show_bug.cgi?id=62116
3592 Roll out the WebCore part of r87980.
3594 * html/SearchInputType.cpp:
3595 (WebCore::SearchInputType::SearchInputType):
3596 (WebCore::SearchInputType::createShadowSubtree):
3597 (WebCore::SearchInputType::destroyShadowSubtree):
3598 * html/SearchInputType.h:
3599 (WebCore::SearchInputType::innerBlockElement):
3600 (WebCore::SearchInputType::resultsButtonElement):
3601 (WebCore::SearchInputType::cancelButtonElement):
3602 * html/TextFieldInputType.cpp:
3603 (WebCore::TextFieldInputType::TextFieldInputType):
3604 (WebCore::TextFieldInputType::createShadowSubtree):
3605 (WebCore::TextFieldInputType::destroyShadowSubtree):
3606 * html/TextFieldInputType.h:
3607 (WebCore::TextFieldInputType::innerTextElement):
3608 (WebCore::TextFieldInputType::innerSpinButtonElement):
3609 (WebCore::TextFieldInputType::speechButtonElement):
3610 (WebCore::TextFieldInputType::setInnerTextElement):
3611 (WebCore::TextFieldInputType::setSpeechButtonElement):
3612 * html/shadow/TextControlInnerElements.cpp:
3613 * html/shadow/TextControlInnerElements.h:
3615 2011-06-06 No'am Rosenthal <noam.rosenthal@nokia.com>
3617 Reviewed by Simon Fraser.
3619 Allow copying of KeyframeValueList.
3620 https://bugs.webkit.org/show_bug.cgi?id=62171
3622 Make a deep copy of KeyframeValueList, copying each of the keyframes with a virtual clone() function.
3624 No new functionality so no new tests.
3626 * platform/graphics/GraphicsLayer.h:
3627 (WebCore::FloatAnimationValue::clone):
3628 (WebCore::TransformAnimationValue::TransformAnimationValue):
3629 (WebCore::TransformAnimationValue::clone):
3630 (WebCore::TransformAnimationValue::value):
3631 (WebCore::KeyframeValueList::KeyframeValueList):
3633 2011-06-06 Simon Fraser <simon.fraser@apple.com>
3635 Reviewed by Dan Bernstein.
3637 Incorrect rounding of color values during transitions
3638 https://bugs.webkit.org/show_bug.cgi?id=62141
3640 When blending integers, round to the nearest integer, instead of always rounding down.
3642 Test: transitions/color-transition-rounding.html
3644 * page/animation/AnimationBase.cpp:
3645 (WebCore::blendFunc):
3647 2011-06-06 Sheriff Bot <webkit.review.bot@gmail.com>
3649 Unreviewed, rolling out r88202.
3650 http://trac.webkit.org/changeset/88202
3651 https://bugs.webkit.org/show_bug.cgi?id=62182
3653 This broke the mac clang bot (Requested by koz__ on #webkit).
3656 (WebCore::Node::hasNonEmptyBoundingBox):
3657 * rendering/InlineBox.h:
3658 * rendering/RenderBlock.cpp:
3659 (WebCore::RenderBlock::absoluteRects):
3660 * rendering/RenderBlock.h:
3661 * rendering/RenderBox.cpp:
3662 (WebCore::RenderBox::absoluteRects):
3663 * rendering/RenderBox.h:
3664 * rendering/RenderInline.cpp:
3665 (WebCore::RenderInline::absoluteRects):
3666 * rendering/RenderInline.h:
3667 * rendering/RenderObject.cpp:
3668 (WebCore::RenderObject::absoluteBoundingBoxRect):
3669 * rendering/RenderObject.h:
3670 (WebCore::RenderObject::absoluteRects):
3671 * rendering/RenderText.cpp:
3672 (WebCore::RenderText::absoluteRects):
3673 * rendering/RenderText.h:
3674 * rendering/RenderView.cpp:
3675 (WebCore::RenderView::absoluteRects):
3676 * rendering/RenderView.h:
3678 2011-06-06 Noel Gordon <noel.gordon@gmail.com>
3680 Reviewed by Hajime Morita.
3682 Draw CSS outline style for render widgets: iframe, embed, object, applet.
3683 https://bugs.webkit.org/show_bug.cgi?id=57439
3685 Draw CSS outlines for render widgets: iframe, embed, object, applet. These elements can
3686 be focused (via clicks or tabIndex) but should not have a visible focus ring by default.
3688 Tests: fast/replaced/no-focus-ring-embed-1.html
3689 fast/replaced/no-focus-ring-embed-2.html
3690 fast/replaced/no-focus-ring-iframe.html
3691 fast/replaced/no-focus-ring-object-1.html
3692 fast/replaced/no-focus-ring-object-2.html
3693 fast/replaced/outline-replaced-elements.html
3696 (applet:focus, embed:focus, iframe:focus, object:focus): Default to no focus ring.
3697 * rendering/RenderWidget.cpp:
3698 (WebCore::RenderWidget::paint): Paint the render widget CSS outline style.
3700 2011-06-06 MORITA Hajime <morrita@google.com>
3702 Reviewed by Kent Tamura.
3704 Assertion fails in TextCheckingHelper by right-clicking on <input type=search>
3705 https://bugs.webkit.org/show_bug.cgi?id=61991
3707 Added a guard bofore TextCheckingHelper construction sites.
3709 Test: editing/spelling/spellcheck-input-search-crash.html
3711 * editing/Editor.cpp:
3712 (WebCore::Editor::isSelectionUngrammatical):
3713 (WebCore::Editor::guessesForUngrammaticalSelection):
3714 (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection):
3716 2011-06-06 Emil A Eklund <eae@chromium.org>
3718 Reviewed by Eric Seidel.
3720 Update RenderBlock::paint to use IntPoint internally
3721 https://bugs.webkit.org/show_bug.cgi?id=62140
3723 Covered by existing tests.
3725 * rendering/RenderBlock.cpp:
3726 (WebCore::RenderBlock::paint):
3728 2011-06-06 Emil A Eklund <eae@chromium.org>
3730 Reviewed by Eric Seidel.
3732 Convert RenderBox::absoluteRects to IntPoint
3733 https://bugs.webkit.org/show_bug.cgi?id=62130
3735 Covered by existing tests.
3738 (WebCore::Node::hasNonEmptyBoundingBox):
3739 * rendering/RenderBlock.cpp:
3740 (WebCore::RenderBlock::absoluteRects):
3741 * rendering/RenderBlock.h:
3742 * rendering/RenderBox.cpp:
3743 (WebCore::RenderBox::absoluteRects):
3744 * rendering/RenderBox.h:
3745 * rendering/RenderInline.cpp:
3746 (WebCore::RenderInline::absoluteRects):
3747 * rendering/RenderInline.h:
3748 * rendering/RenderObject.cpp:
3749 (WebCore::RenderObject::absoluteBoundingBoxRect):
3750 * rendering/RenderObject.h:
3751 (WebCore::RenderObject::absoluteRects):
3752 * rendering/RenderText.cpp:
3753 (WebCore::RenderText::absoluteRects):
3754 * rendering/RenderText.h:
3755 * rendering/RenderView.cpp:
3756 (WebCore::RenderView::absoluteRects):
3757 * rendering/RenderView.h:
3759 2011-06-06 Levi Weintraub <leviw@chromium.org>
3761 Reviewed by Eric Seidel.
3763 Switch shouldPaint to use IntPoint
3764 https://bugs.webkit.org/show_bug.cgi?id=62158
3766 Switching shouldPaint to take an IntPoint representing the paint offset instead
3769 No new tests as this is simple refactoring.
3771 * rendering/RenderReplaced.cpp:
3772 (WebCore::RenderReplaced::paint):
3773 (WebCore::RenderReplaced::shouldPaint):
3774 * rendering/RenderReplaced.h:
3775 * rendering/RenderWidget.cpp:
3776 (WebCore::RenderWidget::paint):
3778 2011-06-06 James Simonsen <simonjam@chromium.org>
3780 Reviewed by James Robinson.
3782 Add monotonicallyIncreasingTime() to get monotonically increasing time
3783 https://bugs.webkit.org/show_bug.cgi?id=37743
3785 * platform/chromium/SystemTimeChromium.cpp:
3786 (WebCore::monotonicallyIncreasingTime): Add primitive monotonicallyIncreasingTime() which just wraps currentTime().
3788 2011-06-06 Emil A Eklund <eae@chromium.org>
3790 Reviewed by Eric Seidel.
3792 Convert RenderBox::pushContentsClip to IntPoint
3793 https://bugs.webkit.org/show_bug.cgi?id=62133
3795 Covered by existing tests.
3797 * rendering/RenderBlock.cpp:
3798 (WebCore::Covered by existing tests.RenderBlock::paint):
3799 * rendering/RenderBox.cpp:
3800 (WebCore::RenderBox::pushContentsClip):
3801 * rendering/RenderBox.h:
3802 * rendering/RenderTable.cpp:
3803 (WebCore::RenderTable::paint):
3804 * rendering/RenderTableSection.cpp:
3805 (WebCore::RenderTableSection::paint):
3807 2011-06-06 Levi Weintraub <leviw@chromium.org>
3809 Reviewed by Eric Seidel.
3811 Switch InlineFlowBox::paintMask to use IntPoint
3812 https://bugs.webkit.org/show_bug.cgi?id=62156
3814 Switching InlineFlowBox::paintMask to take an IntPoint representing the paint
3815 offset instead of a pair of ints.
3817 No new tests as this is simple refactoring.
3819 * rendering/InlineFlowBox.cpp:
3820 (WebCore::InlineFlowBox::paint):
3821 (WebCore::InlineFlowBox::paintMask):
3822 * rendering/InlineFlowBox.h:
3824 2011-06-06 Emil A Eklund <eae@chromium.org>
3826 Reviewed by Eric Seidel.
3828 Convert hitTest to IntPoint
3829 https://bugs.webkit.org/show_bug.cgi?id=62144
3831 Covered by existing tests.
3833 * rendering/InlineBox.cpp:
3834 (WebCore::InlineBox::nodeAtPoint):
3835 * rendering/RenderBlock.cpp:
3836 (WebCore::RenderBlock::hitTestFloats):
3837 (WebCore::RenderBlock::hitTestContents):
3838 * rendering/RenderInline.cpp:
3839 (WebCore::RenderInline::nodeAtPoint):
3840 * rendering/RenderLayer.cpp:
3841 (WebCore::RenderLayer::hitTestContents):
3842 * rendering/RenderLayer.h:
3843 (WebCore::RenderLayer::renderBoxLocation):
3844 (WebCore::RenderLayer::renderBoxX):
3845 (WebCore::RenderLayer::renderBoxY):
3846 * rendering/RenderLineBoxList.cpp:
3847 (WebCore::RenderLineBoxList::hitTest):
3848 * rendering/RenderLineBoxList.h:
3849 * rendering/RenderObject.cpp:
3850 (WebCore::RenderObject::hitTest):
3851 * rendering/RenderObject.h:
3853 2011-06-06 Levi Weintraub <leviw@chromium.org>
3855 Reviewed by Eric Seidel.
3857 Switch paintScrollbar to use IntPoint
3858 https://bugs.webkit.org/show_bug.cgi?id=62151
3860 Switching paintScrollbar to use IntPoint instead of a pair of ints.
3862 No new tests since this is simple refactoring.
3864 * rendering/RenderListBox.cpp:
3865 (WebCore::RenderListBox::paintObject):
3866 (WebCore::RenderListBox::paintScrollbar):
3867 * rendering/RenderListBox.h:
3869 2011-06-06 Daniel Cheng <dcheng@chromium.org>
3871 Reviewed by Tony Chang.
3873 [chromium] Delete dead clipboard code.
3874 https://bugs.webkit.org/show_bug.cgi?id=62113
3876 No new tests since this change only deleted unused code.
3879 * platform/chromium/ChromiumDataObjectLegacy.cpp: Removed.
3880 * platform/chromium/ChromiumDataObjectLegacy.h: Removed.
3881 * platform/chromium/ReadableDataObject.cpp: Removed.
3882 * platform/chromium/ReadableDataObject.h: Removed.
3883 * platform/chromium/WritableDataObject.cpp: Removed.
3884 * platform/chromium/WritableDataObject.h: Removed.
3886 2011-06-06 Levi Weintraub <leviw@chromium.org>
3888 Reviewed by Eric Seidel.
3890 Switch paintOutline, paintContinuationOutlines, and paintOutlineForLine to use IntPoint
3891 https://bugs.webkit.org/show_bug.cgi?id=62137
3893 Switching paintOutline, paintContinuationOutlines, and paintOutlineForLine to take an IntPoint
3894 representing the paint offset instead of a pair of ints.
3896 No new tests as this is simple refactoring.
3898 * rendering/RenderBlock.cpp:
3899 (WebCore::RenderBlock::paintObject):
3900 (WebCore::RenderBlock::paintContinuationOutlines):
3901 * rendering/RenderBlock.h:
3902 * rendering/RenderInline.cpp:
3903 (WebCore::RenderInline::paintOutline):
3904 (WebCore::RenderInline::paintOutlineForLine):
3905 * rendering/RenderInline.h:
3906 * rendering/RenderLineBoxList.cpp:
3907 (WebCore::RenderLineBoxList::paint):
3909 2011-06-06 Emil A Eklund <eae@chromium.org>
3911 Reviewed by Eric Seidel.
3913 Convert RenderBox::popContentsClip to IntPoint
3914 https://bugs.webkit.org/show_bug.cgi?id=62132
3916 Covered by existing tests.
3918 * rendering/RenderBlock.cpp:
3919 (WebCore::RenderBlock::paint):
3920 * rendering/RenderBox.cpp:
3921 (WebCore::RenderBox::popContentsClip):
3922 * rendering/RenderBox.h:
3923 * rendering/RenderTable.cpp:
3924 (WebCore::RenderTable::paint):
3925 * rendering/RenderTableSection.cpp:
3926 (WebCore::RenderTableSection::paint):
3928 2011-06-06 Levi Weintraub <leviw@chromium.org>
3930 Reviewed by Eric Seidel.
3932 Remove tx/ty offset from selectionRect
3933 https://bugs.webkit.org/show_bug.cgi?id=62146
3935 Removing unused offset parameters from selectionRect.
3937 No new tests since this is just cleanup.
3939 * rendering/EllipsisBox.cpp:
3940 (WebCore::EllipsisBox::selectionRect):
3941 * rendering/EllipsisBox.h:
3942 * rendering/InlineTextBox.cpp:
3943 (WebCore::InlineTextBox::selectionRect):
3944 * rendering/InlineTextBox.h:
3945 * rendering/RenderText.cpp:
3946 (WebCore::RenderText::absoluteRectsForRange):
3947 (WebCore::ellipsisRectForBox):
3948 (WebCore::RenderText::absoluteQuadsForRange):
3949 (WebCore::RenderText::selectionRectForRepaint):
3950 * rendering/svg/RenderSVGInlineText.cpp:
3951 (WebCore::RenderSVGInlineText::localCaretRect):
3952 * rendering/svg/SVGInlineTextBox.cpp:
3953 (WebCore::SVGInlineTextBox::selectionRect):
3954 * rendering/svg/SVGInlineTextBox.h:
3956 2011-06-06 Paul Kinlan <paulkinlan@google.com>
3958 Reviewed by Jeremy Orlow.
3960 Let developers call createEvent("PopStateEvent"), previously it wasn't
3961 exposed and threw an exeception.
3962 https://bugs.webkit.org/show_bug.cgi?id=62099
3964 * WebCore/dom/Document.cpp:
3965 * WebCore/dom/PopStateEvent.cpp:
3966 * WebCore/dom/PopStateEvent.h:
3968 2011-06-03 Levi Weintraub <leviw@chromium.org>
3970 Reviewed by Eric Seidel.
3972 Switch paintSelection to use IntPoint
3973 https://bugs.webkit.org/show_bug.cgi?id=62059
3975 Switching paintSelection to use an IntPoint to represent the paint offset
3976 instead of a pair of ints.
3978 No new tests since this is simple refactoring.
3980 * rendering/EllipsisBox.cpp:
3981 (WebCore::EllipsisBox::paint):
3982 (WebCore::EllipsisBox::paintSelection):
3983 * rendering/EllipsisBox.h:
3984 * rendering/RenderBlock.cpp:
3985 (WebCore::RenderBlock::paintObject):
3986 (WebCore::RenderBlock::paintSelection):
3987 * rendering/RenderBlock.h:
3989 2011-06-06 Emil A Eklund <eae@chromium.org>
3991 Reviewed by Eric Seidel.
3993 Convert RenderBox::clipRect to IntPoint
3994 https://bugs.webkit.org/show_bug.cgi?id=62045
3996 Covered by existing tests.
3998 * rendering/RenderBox.cpp:
3999 (WebCore::RenderBox::clipRect):
4000 * rendering/RenderBox.h:
4001 * rendering/RenderLayer.cpp:
4002 (WebCore::RenderLayer::calculateClipRects):
4003 (WebCore::RenderLayer::calculateRects):
4004 (WebCore::RenderLayer::repaintBlockSelectionGaps):
4005 * rendering/RenderLayerBacking.cpp:
4008 2011-06-06 Peter Kasting <pkasting@google.com>
4010 Reviewed by Antonio Gomes.
4012 Remove unnecessary args from scroll functions.
4013 https://bugs.webkit.org/show_bug.cgi?id=61648
4015 No behavior change, so no tests.
4020 (WebCore::Element::scrollIntoView):
4021 (WebCore::Element::scrollIntoViewIfNeeded):
4022 * editing/FrameSelection.cpp:
4023 (WebCore::FrameSelection::revealSelection):
4024 * page/EventHandler.cpp:
4025 (WebCore::EventHandler::handleMousePressEvent):
4026 * page/FrameView.cpp:
4027 (WebCore::FrameView::scrollToAnchor):
4028 * rendering/RenderBox.cpp:
4029 (WebCore::RenderBox::canBeScrolledAndHasScrollableArea):
4030 (WebCore::RenderBox::canBeProgramaticallyScrolled):
4031 * rendering/RenderBox.h:
4032 * rendering/RenderLayer.cpp:
4033 (WebCore::RenderLayer::scrollRectToVisible):
4034 (WebCore::RenderLayer::autoscroll):
4035 * rendering/RenderLayer.h:
4036 * rendering/RenderListBox.h:
4037 (WebCore::RenderListBox::canBeProgramaticallyScrolled):
4038 * rendering/RenderTextControl.h:
4039 (WebCore::RenderTextControl::canBeProgramaticallyScrolled):
4041 2011-06-06 Levi Weintraub <leviw@chromium.org>
4043 Reviewed by Eric Seidel.
4045 Switch paintContents, paintColumnContents, paintColumnRules, and paintSelection to use IntPoint
4046 https://bugs.webkit.org/show_bug.cgi?id=62134
4048 Switching paintContents, paintColumnContents, paintColumnRules, and paintSelection to take an
4049 IntPoint representing the paint offset instead of a pair of ints.
4051 No new tests as this simple refactoring.
4053 * rendering/RenderBlock.cpp:
4054 (WebCore::RenderBlock::paintColumnRules):
4055 (WebCore::RenderBlock::paintColumnContents):
4056 (WebCore::RenderBlock::paintContents):
4057 (WebCore::RenderBlock::paintObject):
4058 (WebCore::RenderBlock::paintSelection):
4059 * rendering/RenderBlock.h:
4061 2011-06-06 Yael Aharon <yael.aharon@nokia.com>
4063 Reviewed by Eric Seidel.
4065 Inline elements are wrapped prematurely with non-zero border, margin or padding.
4066 https://bugs.webkit.org/show_bug.cgi?id=60459
4068 When an inline element has a right border/margin/padding and it has more than one descendant with no siblings,
4069 the width of the right border/margin/padding should be included in line breaking calculation only once,
4070 and not for each descendant.
4072 Test: fast/inline/inline-wrap-with-parent-padding.html
4074 * rendering/RenderBlockLineLayout.cpp:
4075 (WebCore::RenderBlock::LineBreaker::nextLineBreak):
4077 2011-06-06 Shishir Agrawal <shishir@chromium.org>
4079 Reviewed by Tony Gentilcore.
4081 Add a "prerender" state for page visibility.
4082 https://bugs.webkit.org/show_bug.cgi?id=62062
4084 * page/PageVisibilityState.cpp:
4085 (WebCore::pageVisibilityStateString):
4086 * page/PageVisibilityState.h:
4088 2011-06-06 Cary Clark <caryclark@google.com>
4090 Reviewed by Eric Seidel.
4092 Fix typo in CachedFont.cpp #define
4093 https://bugs.webkit.org/show_bug.cgi?id=62127
4095 No new tests. The define typo in question is
4096 not yet enabled, so this change has no functional
4099 * loader/cache/CachedFont.cpp:
4100 change SKIA_MAC_ON_CHROME to SKIA_ON_MAC_CHROME
4102 2011-06-03 Levi Weintraub <leviw@chromium.org>
4104 Reviewed by Eric Seidel.
4106 Switch paintFloats, paintChildren, and paintEllipsisBoxes to use IntPoint
4107 https://bugs.webkit.org/show_bug.cgi?id=62058
4109 Switching paintFloats, paintChildren, and paintEllipsisBoxes to take IntPoints representing
4110 their paint offsets instead of pairs of ints.
4112 No new tests since this is simple refactoring.
4114 * rendering/RenderBlock.cpp:
4115 (WebCore::RenderBlock::paintColumnContents):
4116 (WebCore::RenderBlock::paintContents):
4117 (WebCore::RenderBlock::paintChildren):
4118 (WebCore::RenderBlock::paintObject):
4119 (WebCore::RenderBlock::paintFloats):
4120 (WebCore::RenderBlock::paintEllipsisBoxes):
4121 * rendering/RenderBlock.h:
4123 2011-06-06 Steve Block <steveblock@google.com>
4125 Reviewed by Yury Semikhatsky.
4127 Use of ENABLE(INSPECTOR) is inconsistent
4128 https://bugs.webkit.org/show_bug.cgi?id=62118
4130 Correctly guard implementation of ScriptProfiler.