8b36a53ac5c2682e5fd371ef19f2c24c5f25bc2a
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-06-10  James Simonsen  <simonjam@chromium.org>
2
3         Reviewed by Eric Seidel.
4
5         <script> inside <svg> should be executed
6         https://bugs.webkit.org/show_bug.cgi?id=62412
7
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
12
13         * html/parser/HTMLTreeBuilder.cpp:
14         (WebCore::HTMLTreeBuilder::processEndTag):
15
16 2011-06-10  Adam Barth  <abarth@webkit.org>
17
18         Reviewed by Darin Adler.
19
20         Script-created parsers should ignore data from the network
21         https://bugs.webkit.org/show_bug.cgi?id=62336
22
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.
26
27         This patch causes DocumentWriter to grab hold of the original parser
28         and direct all input to that parser.
29
30         Test: fast/parser/document-write-ignores-later-network-bytes.html
31
32         * dom/Document.cpp:
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:
40
41 2011-06-10  Simon Fraser  <simon.fraser@apple.com>
42
43         Reviewed by Dan Bernstein.
44
45         Keep overlap testing logic until real 3d transforms are being used
46         https://bugs.webkit.org/show_bug.cgi?id=49857
47         
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
50         elements into layers.
51         
52         Only turn off overlap testing if non-identity 3D transforms are used.
53
54         Tests: compositing/layer-creation/rotate3d-overlap.html
55                compositing/layer-creation/translatez-overlap.html
56
57         * rendering/RenderLayerCompositor.cpp:
58         (WebCore::RenderLayerCompositor::updateBacking):
59         (WebCore::RenderLayerCompositor::hasNonIdentity3DTransform):
60         * rendering/RenderLayerCompositor.h:
61
62 2011-06-10  David Levin  <levin@chromium.org>
63
64         Reviewed by Dmitry Titov.
65
66         Web Worker fails to fire error event when a resource fetch fails.
67         https://bugs.webkit.org/show_bug.cgi?id=62475
68
69         Test: http/tests/workers/worker-workerScriptNotThere.html
70
71         * workers/WorkerScriptLoader.cpp:
72         (WebCore::WorkerScriptLoader::didFinishLoading): Ensure that
73         the client is notified of the error when it happens during loading.
74
75 2011-06-10  David Levin  <levin@chromium.org>
76
77         Reviewed by Dmitry Titov.
78
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
81
82         Test: fast/workers/worker-crash-with-invalid-location.html
83
84         * workers/DefaultSharedWorkerRepository.cpp:
85         (WebCore::SharedWorkerScriptLoader::load): Changed to using the RefCounted version of WorkerScriptLoader.
86         * workers/Worker.cpp:
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
96         potential callback.
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):
101
102 2011-06-10  Alok Priyadarshi  <alokp@chromium.org>
103
104         Reviewed by James Robinson.
105
106         [chromium] Top portion of page is rendered messed up with accelerated drawing
107         https://bugs.webkit.org/show_bug.cgi?id=62484
108
109         Fixed the math in flipping the texture from bottom-up to top-down.
110         Test: compositing/repaint/shrink-layer.html (existing)
111
112         * platform/graphics/chromium/LayerTilerChromium.cpp:
113         (WebCore::LayerTilerChromium::draw):
114
115 2011-06-10  Tony Chang  <tony@chromium.org>
116
117         Reviewed by Ojan Vafai.
118
119         add a compile guard ENABLE(FLEXBOX)
120         https://bugs.webkit.org/show_bug.cgi?id=62049
121
122         * Configurations/FeatureDefines.xcconfig:
123
124 2011-06-10  Sam Weinig  <sam@webkit.org>
125
126         Roll out r88568. It is not the right fix for the problem.
127
128         * loader/appcache/ApplicationCacheHost.cpp:
129         (WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
130
131 2011-06-10  Mark Rowe  <mrowe@apple.com>
132
133         Reviewed by Dimitri Glazkov.
134
135         <rdar://problem/9562114> Fix DumpRenderTree build for production configuration.
136
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.
140
141         Install the library and its associated header file in a more appropriate location
142         for the production configuration.
143
144         * Configurations/WebCoreTestSupport.xcconfig:
145
146 2011-06-10  Simon Fraser  <simon.fraser@apple.com>
147
148         Reviewed by Dave Hyatt.
149
150         Add a scheduleSetNeedsStyleRecalc() method to ContainerNode for use by RenderLayerCompositor
151         https://bugs.webkit.org/show_bug.cgi?id=62471
152
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.
155         
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.
158
159         * dom/ContainerNode.cpp:
160         (WebCore::ContainerNode::queuePostAttachCallback):
161         (WebCore::ContainerNode::dispatchPostAttachCallbacks):
162         (WebCore::needsStyleRecalcCallback):
163         (WebCore::ContainerNode::scheduleSetNeedsStyleRecalc):
164         * dom/ContainerNode.h:
165         * dom/Node.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):
180
181 2011-06-10  Mark Pilgrim  <pilgrim@chromium.org>
182
183         Reviewed by Tony Chang.
184
185         IndexedDB: indexedDB.open() name argument is required
186         https://bugs.webkit.org/show_bug.cgi?id=62398
187
188         Test: storage/indexeddb/database-name-undefined.html
189
190         * storage/IDBFactory.idl: use appropriate IDL magic to force undefined values to null, so we handle missing arguments as well as null arguments
191
192 2011-06-10  Sam Weinig  <sam@webkit.org>
193
194         Reviewed by Beth Dakin.
195
196         Common crash in ApplicationCacheHost::isApplicationCacheEnabled
197         <rdar://problem/9328684>
198
199         * loader/appcache/ApplicationCacheHost.cpp:
200         (WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
201         Speculative fix for a null frame on ApplicationCacheHost's DocumentLoader.
202
203 2011-06-10  Adam Barth  <abarth@webkit.org>
204
205         Reviewed by Eric Seidel.
206
207         Remove Document::finishParsing
208         https://bugs.webkit.org/show_bug.cgi?id=62474
209
210         This function appears to exist only to confuse and befuddle us.  This
211         patch prepares for DocumentWriter to grab hold of the parser.
212
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.
216
217         * dom/Document.cpp:
218         * dom/Document.h:
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):
228
229 2011-06-10  Mark Pilgrim  <pilgrim@chromium.org>
230
231         Reviewed by Tony Chang.
232
233         IndexedDB: setVersion() version argument is required
234         https://bugs.webkit.org/show_bug.cgi?id=62401
235
236         Test: storage/indexeddb/setVersion-undefined.html
237
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
241
242 2011-06-10  Simon Fraser  <simon.fraser@apple.com>
243
244         Reviewed by Dan Bernstein.
245
246         Null-check the layer owner again when painting layers
247         https://bugs.webkit.org/show_bug.cgi?id=62473
248
249         Speculative fix for a crash that occurs when the layer's owner
250         gets destroyed during painting.
251
252         * platform/graphics/mac/WebLayer.mm:
253         (drawLayerContents):
254
255 2011-06-08  Robert Hogan  <robert@webkit.org>
256
257         Reviewed by Andreas Kling.
258
259         [Qt] Lighten the --no-svg build a little
260         https://bugs.webkit.org/show_bug.cgi?id=62314
261
262         Only generate source from SVG*.idl if the build is svg-enabled.
263
264         * CodeGenerators.pri:
265
266 2011-06-10  Nikolas Zimmermann  <nzimmermann@rim.com>
267
268         Reviewed by Rob Buis.
269
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
272
273         Add glyph table to SVGFontElement mapping between SVGGlyph <-> Glyph
274         https://bugs.webkit.org/show_bug.cgi?id=62441
275
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.
278
279         Doesn't affect any test so far.
280
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):
301         * svg/SVGGlyphMap.h:
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):
309
310 2011-06-10  Emil A Eklund  <eae@chromium.org>
311
312         Reviewed by Eric Seidel.
313
314         Regression r85573: Blank pages appear at the end of some wikipedia documents.
315         https://bugs.webkit.org/show_bug.cgi?id=62343
316
317         Fix regression caused by r85573. Cached document size not updated after layout.
318
319         Test: printing/page-count-relayout-shrink.html
320
321         * page/FrameView.cpp:
322         (WebCore::FrameView::forceLayoutForPagination):
323
324 2011-06-10  Rob Buis  <rbuis@rim.com>
325
326         Reviewed by Nikolas Zimmermann.
327
328         amation event handling broken: focusin
329         https://bugs.webkit.org/show_bug.cgi?id=12894
330
331         focusin, focusout, activate not implemented in SVG
332         https://bugs.webkit.org/show_bug.cgi?id=40545
333
334         Make elements that should support GraphicalEventAttribute handle focussing, since focusin, focusout is part of that:
335
336         http://www.w3.org/TR/SVG11/intro.html#TermGraphicalEventAttribute
337
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.
339
340         Tests: svg/custom/focus-event-handling-keyboard.xhtml
341                svg/custom/focus-event-handling.xhtml
342
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):
349         * svg/SVGGElement.h:
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):
375
376 2011-06-10  Luke Macpherson   <macpherson@chromium.org>
377
378         Reviewed by Eric Seidel.
379
380         Clean up CSSPrimitiveValue::computeLength*
381         https://bugs.webkit.org/show_bug.cgi?id=61612
382
383         No new tests as no functionality changed.
384
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.
402
403 2011-06-10  Simon Fraser  <simon.fraser@apple.com>
404
405         Reviewed by Beth Dakin.
406
407         Add utility to RenderLayer to determine if the layer is scrollable
408         https://bugs.webkit.org/show_bug.cgi?id=62467
409
410         New method that returns true if either scrollbar is present and enabled.
411         Not called anywhere yet.
412
413         * rendering/RenderLayer.cpp:
414         (WebCore::RenderLayer::allowsScrolling):
415         * rendering/RenderLayer.h:
416
417 2011-06-10  Dimitri Glazkov  <dglazkov@chromium.org>
418
419         Reviewed by Tony Chang.
420
421         REGRESSION (r88332): prototype-inheritance-2 ASSERTS attempting to enumerate spellCheckRanges
422         https://bugs.webkit.org/show_bug.cgi?id=62460
423
424         Test: fast/dom/prototype-inheritance-2.html
425
426         * dom/DocumentMarkerController.cpp:
427         (WebCore::DocumentMarkerController::userSpellingMarkersForNode): Added an extra 0-check.
428
429 2011-06-10  James Simonsen  <simonjam@chromium.org>
430
431         Reviewed by Tony Gentilcore.
432
433         Don't execute scripts in shadow SVG.
434         https://bugs.webkit.org/show_bug.cgi?id=62225
435
436         Test: svg/dom/use-style-recalc-script-execute-crash.html
437
438         * dom/ScriptElement.cpp:
439         (WebCore::ScriptElement::prepareScript):
440
441 2011-06-10  Konstantin Tokarev  <ktokarev@smartlabs.tv>
442
443         Reviewed by Joseph Pecoraro.
444
445         Fixed build with enabled workers and disabled inspector
446         https://bugs.webkit.org/show_bug.cgi?id=62461
447
448         * inspector/InspectorWorkerAgent.cpp: Added inspector guard
449
450 2011-06-10  Darin Adler  <darin@apple.com>
451
452         Reviewed by Eric Carlson.
453
454         REGRESSION: Fullscreen video controller can't be dragged
455         https://bugs.webkit.org/show_bug.cgi?id=62462
456
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.
459
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
472         done by setPosition.
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
477         as mentioned above.
478
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.
485
486 2011-06-10  Darin Adler  <darin@apple.com>
487
488         Reviewed by Eric Carlson.
489
490         REGRESSION: Full screen video HUD is positioned too low for standalone video documents
491         https://bugs.webkit.org/show_bug.cgi?id=62463
492
493         No test because we don't currently have machinery for testing fullscreen.
494
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.
501
502 2011-06-10  Sergio Villar Senin  <svillar@igalia.com>
503
504         Reviewed by Gustavo Noronha Silva.
505
506         [GTK] Add support for non-ASCII filenames in Content-Disposition header
507         https://bugs.webkit.org/show_bug.cgi?id=62454
508
509         Try latin1 as fallback for header parameter values as some servers
510         do not follow RFC 2045 for example with filename parameter in
511         Content-Disposition.
512
513         No new tests required as no functionality changed.
514
515         * platform/network/soup/ResourceResponseSoup.cpp:
516         (WebCore::ResourceResponse::updateFromSoupMessage):
517
518 2011-06-10  No'am Rosenthal  <noam.rosenthal@nokia.com> and Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
519
520         Reviewed by Kenneth Rohde Christiansen.
521
522         Add layer factory to GraphicsLayer for creating non-default layer type.
523         https://bugs.webkit.org/show_bug.cgi?id=61925
524
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.
527
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.
532
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.
535
536         No new functionality, so no new tests.
537
538         * platform/graphics/GraphicsLayer.cpp:
539         (WebCore::GraphicsLayer::setGraphicsLayerFactory):
540         * platform/graphics/GraphicsLayer.h:
541
542 2011-06-10  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
543
544         Reviewed by Kenneth Rohde Christiansen.
545
546         [CMAKE] Add generic support for building with WebGL
547         https://bugs.webkit.org/show_bug.cgi?id=62376
548
549         Set new THIRDPARTY_DIR variable to compile sources under ThirdParty.
550
551         No change in functionality so no new tests.
552
553         * CMakeLists.txt:
554
555 2011-06-10  Ryuan Choi  <ryuan.choi@samsung.com>
556
557         Reviewed by Andreas Kling.
558
559         [GTK][EFL] m_imageInterpolationQuality is not initialized in PlatformContextCairo::PlatformContextCairo.
560         https://bugs.webkit.org/show_bug.cgi?id=62435
561
562         No new tests required as just fixed warning.
563
564         * platform/graphics/cairo/PlatformContextCairo.cpp:
565         (WebCore::PlatformContextCairo::PlatformContextCairo):
566
567 2011-06-11-06-09  Ilya Tikhonovsky  <loislo@chromium.org>
568
569         Reviewed by Yury Semikhatsky.
570
571         Web Inspector: protocol: json: Whitespace can be inserted between any pair of tokens.
572         https://bugs.webkit.org/show_bug.cgi?id=62377
573
574         * inspector/InspectorValues.cpp:
575
576 2011-06-10  Sheriff Bot  <webkit.review.bot@gmail.com>
577
578         Unreviewed, rolling out r88530.
579         http://trac.webkit.org/changeset/88530
580         https://bugs.webkit.org/show_bug.cgi?id=62440
581
582         qt build was broken (Requested by loislo on #webkit).
583
584         * inspector/InspectorValues.cpp:
585
586 2011-06-09  Ilya Tikhonovsky  <loislo@chromium.org>
587
588         Reviewed by Yury Semikhatsky.
589
590         Web Inspector: protocol: json: Whitespace can be inserted between any pair of tokens.
591         https://bugs.webkit.org/show_bug.cgi?id=62377
592
593         * inspector/InspectorValues.cpp:
594
595 2011-06-09  Jer Noble  <jer.noble@apple.com>
596
597         Reviewed by Darin Adler.
598
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
601
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.
606
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.
611
612 2011-06-09  Luke Macpherson   <macpherson@chromium.org>
613
614         Reviewed by Eric Seidel.
615
616         Rename RenderStyle visuallyOrdered property and use an enum instead of a bool.
617         https://bugs.webkit.org/show_bug.cgi?id=61495
618
619         No new tests required as no functionality changed.
620
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.
628         * dom/Document.cpp:
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:
634         Define enum type.
635
636 2011-06-09  Luke Macpherson   <macpherson@chromium.org>
637
638         Reviewed by Eric Seidel.
639
640         Implement CSSPropertyOutlineStyle handler in CSSStyleApplyProperty
641         https://bugs.webkit.org/show_bug.cgi?id=61601
642
643         No new tests. No new functionality added / covered by existing tests.
644
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.
663
664 2011-06-09  Luke Macpherson   <macpherson@chromium.org>
665
666         Reviewed by Eric Seidel.
667
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
670
671         No new tests / cleanup only.
672
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.
690
691 2011-06-09  Hyowon Kim  <hw1008.kim@samsung.com>
692
693         Reviewed by Antonio Gomes.
694
695         [EFL] Make accelerated compositing build in Webkit-EFL
696         https://bugs.webkit.org/show_bug.cgi?id=62361
697
698         Add a new class, GraphicsLayerEfl - not yet implemented.
699         Add ACCELERATED_COMPOSITING related files to CMakeLists.
700
701         * CMakeLists.txt:
702         * CMakeListsEfl.txt:
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.
710
711 2011-06-09  Jian Li  <jianli@chromium.org>
712
713         Reviewed by David Levin.
714
715         Calling WebKitBlobBuilder.append with null argument should not crash
716         https://bugs.webkit.org/show_bug.cgi?id=62419
717
718         Test: fast/files/blob-builder-crash.html
719
720         * fileapi/WebKitBlobBuilder.cpp:
721         (WebCore::WebKitBlobBuilder::append):
722
723 2011-06-09  Jer Noble  <jer.noble@apple.com>
724
725         Reviewed by David Hyatt.
726
727         Roll out r88468, and fix bug #61911 without making Element::offset functions virtual.
728         https://bugs.webkit.org/show_bug.cgi?id=62400
729
730         No new tests; covered by existing fullscreen/full-screen-video-offset.html test.
731
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.
739
740 2011-06-09  James Robinson  <jamesr@chromium.org>
741
742         Reviewed by Kenneth Russell.
743
744         [chromium] Scissor rect not set for clipping layers set offscreen
745         https://bugs.webkit.org/show_bug.cgi?id=62339
746
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.
750
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.
754
755         Test: platform/chromium/compositing/scissor-out-of-viewport.html
756
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):
769
770 2011-06-09  Sheriff Bot  <webkit.review.bot@gmail.com>
771
772         Unreviewed, rolling out r88468.
773         http://trac.webkit.org/changeset/88468
774         https://bugs.webkit.org/show_bug.cgi?id=62408
775
776         It broke build if !ENABLE(FULLSCREEN_API) (Requested by Ossy
777         on #webkit).
778
779         * dom/Element.cpp:
780         (WebCore::adjustForLocalZoom):
781         * dom/Element.h:
782         * html/HTMLMediaElement.cpp:
783         * html/HTMLMediaElement.h:
784
785 2011-06-09  Kenneth Russell  <kbr@google.com>
786
787         Reviewed by Adam Barth.
788
789         Disallow use of cross-domain media (images, video) in WebGL
790         https://bugs.webkit.org/show_bug.cgi?id=62257
791
792         Updated WebGL implementation to track recent spec updates in this area.
793
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
797
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:
809
810 2011-06-09  Adam Barth  <abarth@webkit.org>
811
812         Reviewed by Eric Seidel.
813
814         Add an ASSERT to HTMLTreeBuilder
815         https://bugs.webkit.org/show_bug.cgi?id=62403
816
817         This ASSERT was useful in investigating a re-entrancy bug.  We should
818         keep it.
819
820         * html/parser/HTMLTreeBuilder.cpp:
821         (WebCore::HTMLTreeBuilder::processEndOfFile):
822
823 2011-06-09  Dan Bernstein  <mitz@apple.com>
824
825         Reviewed by Darin Adler.
826
827         Fix a regression from r88478.
828
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()
832         afterwards.
833
834 2011-06-09  Julien Chaffraix  <jchaffraix@codeaurora.org>
835
836         Reviewed by Antti Koivisto.
837
838         REGRESSION(84329): Stylesheets on some pages do not load
839         https://bugs.webkit.org/show_bug.cgi?id=61400
840
841         Test: fast/css/link-disabled-attr.html
842
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!
846
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.
851
852         * dom/Document.cpp:
853         (WebCore::Document::recalcStyleSelector): s/isDisabled/disabled.
854
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.
867
868 2011-06-09  Dan Bernstein  <mitz@apple.com>
869
870         Reviewed by Darin Adler.
871
872         Simplify ComplexTextController::collectComplexTextRuns()
873         https://bugs.webkit.org/show_bug.cgi?id=62387
874
875         No new test, since functionality is unchanged.
876
877         * platform/graphics/mac/ComplexTextController.cpp:
878         (WebCore::ComplexTextController::collectComplexTextRuns): Always iterate characters in logical order,
879         then reverse the run vector for RTL.
880
881 2011-06-09  Dimitri Glazkov  <dglazkov@chromium.org>
882
883         Reviewed by Kent Tamura.
884
885         Fold isShadowBoundary into isShadowRoot.
886         https://bugs.webkit.org/show_bug.cgi?id=62317
887
888         Since there are no longer cases where Node::isShadowBoundary() != Node::isShadowRoot, we can remove this function.
889
890         In one case where isShadowBoundary was also tested to find ShadowContentElemnt, added a new isContentElement function.
891
892         Refactoring, covered by existing tests.
893
894         * css/CSSStyleSelector.cpp:
895         (WebCore::isAtShadowBoundary): Changed to use isShadowRoot.
896         * dom/Element.cpp:
897         (WebCore::Element::isSpellCheckingEnabled): Ditto.
898         * dom/Node.cpp:
899         (WebCore::Node::nonBoundaryShadowTreeRootNode): Ditto.
900         (WebCore::Node::nonShadowBoundaryParentNode): Ditto.
901         * dom/Node.h:
902         (WebCore::Node::isContentElement): Added.
903         * dom/NodeRenderingContext.cpp:
904         (WebCore::NodeRenderingContext::NodeRenderingContext): Changed to use isShadowRoot.
905         * dom/Position.cpp:
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.
920
921 2011-06-09  Simon Fraser  <simon.fraser@apple.com>
922
923         Reviewed by Darin Adler.
924
925         Crashes in RenderLayerBacking::paintingGoesToWindow
926         https://bugs.webkit.org/show_bug.cgi?id=61159
927
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.
933
934         * rendering/RenderLayer.cpp:
935         (WebCore::RenderLayer::setBackingNeedsRepaintInRect):
936
937 2011-06-09  Julien Chaffraix  <jchaffraix@webkit.org>
938
939         Reviewed by Darin Adler.
940
941         WebCore::WebKitCSSKeyframesRuleInternal::nameAttrSetter() - crash
942         https://bugs.webkit.org/show_bug.cgi?id=62384
943
944         Test: fast/css/webkit-keyframes-crash.html
945
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.
949
950 2011-06-09  Julien Chaffraix  <jchaffraix@codeaurora.org>
951
952         Reviewed by David Hyatt.
953
954         chrome.dll!WebCore::RenderStyle::fontMetrics ReadAV@NULL (two crashes)
955         https://bugs.webkit.org/show_bug.cgi?id=57756
956
957         Tests: fast/css/fontMetric-border-radius-null-crash.html
958                fast/css/fontMetric-webkit-border-end-width-null-crash.html
959
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
963         style rules.
964
965 2011-06-09  Cary Clark  <caryclark@google.com>
966
967         Reviewed by Eric Seidel.
968
969         Create local CG context for Mac UI elements when Skia is renderer
970         https://bugs.webkit.org/show_bug.cgi?id=62213
971
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
975         rendering.
976
977         No new tests.  The define typo in question is
978         not yet enabled, so this change has no functional
979         impact.
980
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.
985
986         * platform/mac/LocalCurrentGraphicsContext.mm:
987         (WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
988         When building with Skia, create the CGContext before passing it on.
989
990         (WebCore::LocalCurrentGraphicsContext::cgContext):
991         Get the CGContext from the SkiaBitLocker, or the saved context,
992         as appropriate.
993
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.
998
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):
1019
1020 2011-06-02  Jer Noble  <jer.noble@apple.com>
1021
1022         Reviewed by Maciej Stachowiak.
1023
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>
1027
1028         Test: fullscreen/full-screen-video-offset.html
1029
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.
1034
1035         * dom/Element.cpp:
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:
1046
1047 2011-06-09  Dave Tapuska  <dtapuska@rim.com>
1048
1049         Reviewed by Daniel Bates.
1050
1051         PingLoader destructor could dereference 0 if the Resource
1052         Handle creation failed.
1053
1054         https://bugs.webkit.org/show_bug.cgi?id=62304
1055
1056         * loader/PingLoader.cpp:
1057         (WebCore::PingLoader::~PingLoader):
1058
1059 2011-06-08  Abhishek Arya  <inferno@chromium.org>
1060
1061         Reviewed by Ryosuke Niwa.
1062
1063         Make indexForVisiblePosition and isSelectableElement static.
1064         https://bugs.webkit.org/show_bug.cgi?id=62329
1065
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).
1069
1070         Test: fast/forms/text-control-selection-crash.html
1071
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:
1080
1081 2011-06-09  Ben Murdoch  <benm@google.com>
1082
1083         Reviewed by Yury Semikhatsky.
1084
1085         Build break in ScriptProfile.cpp and inspector disabled.
1086         https://bugs.webkit.org/show_bug.cgi?id=62373
1087
1088         No new tests - build fix only.
1089
1090         * bindings/v8/ScriptProfile.cpp: Add necessary guards.
1091         * bindings/v8/ScriptProfile.h: ditto.
1092
1093 2011-06-09  Vsevolod Vlasov  <vsevik@chromium.org>
1094
1095         Reviewed by Yury Semikhatsky.
1096
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
1099
1100         * inspector/front-end/ResourcePreviewView.js:
1101         (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown.callback):
1102         (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown):
1103
1104 2011-06-09  Csaba Osztrogonác  <ossy@webkit.org>
1105
1106         [Qt][Mac] Speculative buildfix after r88286.
1107
1108         * platform/graphics/IntPoint.h:
1109
1110 2011-06-09  Mike Lawther  <mikelawther@chromium.org>
1111
1112         Reviewed by Kent Tamura.
1113
1114         Parsing issue with -webkit-calc
1115         https://bugs.webkit.org/show_bug.cgi?id=62276
1116
1117         Set the CSSParserString for the calc functions.
1118
1119         Test: css3/calc/regression-62276.html
1120
1121         * css/CSSParser.cpp:
1122         (WebCore::CSSParser::lex):
1123
1124 2011-06-09  Robert Hogan  <robert@webkit.org>
1125
1126         Reviewed by Andreas Kling.
1127
1128         Teach Qt about window.internals
1129         https://bugs.webkit.org/show_bug.cgi?id=61074
1130
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.
1138
1139         * CodeGenerators.pri:
1140         * WebCore.pri:
1141         * WebCore.pro:
1142
1143 2011-06-08  Mikołaj Małecki  <m.malecki@samsung.com>
1144
1145         Reviewed by Pavel Feldman.
1146
1147         Web Inspector: Crash by buffer overrun crash when serializing inspector object tree.
1148         https://bugs.webkit.org/show_bug.cgi?id=52791
1149
1150         No new tests. The problem can be reproduced by trying to create InspectorValue
1151         from 1.0e-100 and call ->toJSONString() on this.
1152
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.
1157
1158 2011-06-09  Sheriff Bot  <webkit.review.bot@gmail.com>
1159
1160         Unreviewed, rolling out r88387.
1161         http://trac.webkit.org/changeset/88387
1162         https://bugs.webkit.org/show_bug.cgi?id=62368
1163
1164         New tests introduced in 88387 fail on Leopard,GTK,Qt bots
1165         (Requested by Ossy on #webkit).
1166
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:
1176
1177 2011-06-09  Adam Barth  <abarth@webkit.org>
1178
1179         Reviewed by Eric Seidel.
1180
1181         Running script from attach can remove elements from the stack of open elements
1182         https://bugs.webkit.org/show_bug.cgi?id=62160
1183
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.
1188
1189         Test: fast/parser/document-write-onload-clear.html
1190
1191         * html/parser/HTMLConstructionSite.cpp:
1192         (WebCore::HTMLConstructionSite::attach):
1193
1194 2011-06-08  Luke Macpherson   <macpherson@chromium.org>
1195
1196         Reviewed by Eric Seidel.
1197
1198         Make CSSPrimitiveValue support cast to EVerticalAlign.
1199         https://bugs.webkit.org/show_bug.cgi?id=62356
1200
1201         No new tests / refactoring only.
1202
1203         * css/CSSPrimitiveValueMappings.h:
1204         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1205         (WebCore::CSSPrimitiveValue::operator EVerticalAlign):
1206         * css/CSSStyleSelector.cpp:
1207         (WebCore::CSSStyleSelector::applyProperty):
1208
1209 2011-06-08  Justin Novosad  <junov@chromium.org>
1210
1211         Reviewed by James Robinson.
1212
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
1218         graphics context.
1219
1220         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
1221         (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D):
1222
1223 2011-06-08  James Robinson  <jamesr@chromium.org>
1224
1225         Reviewed by Darin Fisher.
1226
1227         REGRESSION(88260): 10-50% performance regression across many page cyclers
1228         https://bugs.webkit.org/show_bug.cgi?id=62349
1229
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.
1233
1234         This restores the previous inactive font size thresholds to their previous values, but retains the font cleanup
1235         logic.
1236
1237         * platform/graphics/FontCache.cpp:
1238
1239 2011-06-08  Hayato Ito  <hayato@chromium.org>
1240
1241         Reviewed by Dimitri Glazkov.
1242
1243         A forward/backward tab traversal now visits focusable elements in a shadow root.
1244         https://bugs.webkit.org/show_bug.cgi?id=61410
1245
1246         Test: fast/dom/shadow/tab-order-iframe-and-shadow.html
1247
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.
1251
1252         The patch doesn't affect HTMLInputElement and HTMLTextAreaElement,
1253         which uses a shadow root and do extra works in their focus()
1254         method.
1255
1256         A shadow root's <content> is not considered in this patch.
1257         That will be addressed in a following patch.
1258
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:
1270
1271 2011-06-08  Hayato Ito  <hayato@chromium.org>
1272
1273         Reviewed by Hajime Morita.
1274
1275         Makes sure that document.activeElement won't be an element in shadow root.
1276
1277         https://bugs.webkit.org/show_bug.cgi?id=61413
1278
1279         Test: fast/dom/shadow/activeelement-should-be-shadowhost.html
1280
1281         * html/HTMLDocument.cpp:
1282         (WebCore::focusedFrameOwnerElement):
1283         (WebCore::HTMLDocument::activeElement):
1284
1285 2011-06-08  Kent Tamura  <tkent@chromium.org>
1286
1287         Reviewed by Dimitri Glazkov.
1288
1289         Allow drawing a slider thumb for any nodes.
1290         https://bugs.webkit.org/show_bug.cgi?id=62196
1291
1292         RenderObject::node() should provide various information which is
1293         necessary for rendering. We don't need to refer the parent renderer.
1294
1295         * dom/Node.cpp:
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.
1347
1348 2011-06-08  Adam Barth  <abarth@webkit.org>
1349
1350         Reviewed by Eric Seidel.
1351
1352         constructTreeFromToken can re-enter parser, causing ASSERTs
1353         https://bugs.webkit.org/show_bug.cgi?id=62160
1354
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.
1357
1358         Tests: fast/parser/document-write-onload-nesting.html
1359                fast/parser/document-write-onload-ordering.html
1360
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):
1367
1368 2011-06-08  Kent Tamura  <tkent@chromium.org>
1369
1370         Fix Qt build for r88405.
1371         https://bugs.webkit.org/show_bug.cgi?id=62208
1372
1373         * platform/qt/RenderThemeQt.h:
1374
1375 2011-06-08  Kent Tamura  <tkent@chromium.org>
1376
1377         Reviewed by Dimitri Glazkov.
1378
1379         Change the argument of RenderTheme::adjustSliderThumbSize(): RenderObject* -> RenderStyle*
1380         https://bugs.webkit.org/show_bug.cgi?id=62208
1381
1382         Change the argument type of RenderTheme::adjustSliderThumbSize() and
1383         RenderMediaControls::adjustMediaSliderThumbSize() from RenderObject* to RenderStyle*.
1384
1385         Also, each of adjustSliderThumbStyle() overrides calls RenderTheme::
1386         adjustSliderThumbStyle() for future changes.
1387
1388         No new tests. This is a refactoring and should not change any behavior.
1389
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:
1444
1445 2011-06-08  Brian Salomon  <bsalomon@google.com>
1446
1447         Reviewed by James Robinson.
1448
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
1451
1452         Chromium-only crash
1453         Failures takes multiple seconds to occur, relying on JS garbage-collection to occur 
1454         http://www.hotbazooka.com/privatejoe-large
1455
1456         * platform/graphics/gpu/DrawingBuffer.cpp:
1457         (WebCore::DrawingBuffer::clear):
1458
1459 2011-06-08  Emil A Eklund  <eae@chromium.org>
1460
1461         Reviewed by Eric Seidel.
1462
1463         RenderEmbeddedObject::getReplacementTextGeometry
1464         https://bugs.webkit.org/show_bug.cgi?id=62313
1465
1466         Replace the last use of tx, ty with IntPoint.
1467
1468         Covered by existing tests.
1469
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:
1478
1479 2011-06-08  Tim Horton  <timothy_horton@apple.com>
1480
1481         Reviewed by Ryosuke Niwa.
1482
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
1486         of Leopard only.
1487         https://bugs.webkit.org/show_bug.cgi?id=62223
1488
1489         * platform/network/ResourceHandle.h:
1490         * platform/network/cf/ResourceRequest.h:
1491
1492 2011-06-08  Sailesh Agrawal  <sail@chromium.org>
1493
1494         Reviewed by Mihai Parparita.
1495
1496         Chromium Mac: Enable overlay scrollbars
1497         https://bugs.webkit.org/show_bug.cgi?id=59756
1498
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.
1500
1501         No new tests, since this code is only enabled on future versions of Mac OS X.
1502
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):
1547
1548 2011-06-06  Nate Chapin  <japhet@chromium.org>
1549
1550         Reviewed by Adam Barth.
1551
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.
1557
1558         https://bugs.webkit.org/show_bug.cgi?id=62308
1559
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:
1580
1581 2011-06-08  Mike Reed  <reed@google.com>
1582
1583         Reviewed by James Robinson.
1584
1585         [Skia] check for null-shader from gradient factory
1586         https://bugs.webkit.org/show_bug.cgi?id=62319
1587
1588         * platform/graphics/skia/GradientSkia.cpp:
1589         (WebCore::Gradient::platformDestroy):
1590         (WebCore::Gradient::platformGradient):
1591
1592 2011-06-08  Kenneth Russell  <kbr@google.com>
1593
1594         Reviewed by Adam Barth.
1595
1596         Disallow use of cross-domain media (images, video) in WebGL
1597         https://bugs.webkit.org/show_bug.cgi?id=62257
1598
1599         Updated WebGL implementation to track recent spec updates in this area.
1600
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
1604
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:
1616
1617 2011-06-08  John Bauman  <jbauman@chromium.org>
1618
1619         Reviewed by James Robinson.
1620
1621         Only draw portions of tiles in contentRect
1622         https://bugs.webkit.org/show_bug.cgi?id=62243
1623
1624         Old garbage data can remain in tiles, so make sure to draw only those
1625         portions that are supposed to be drawn.
1626
1627         Test: compositing/repaint/shrink-layer.html
1628
1629         * platform/graphics/chromium/LayerTilerChromium.cpp:
1630         (WebCore::LayerTilerChromium::draw):
1631
1632 2011-06-08  Emil A Eklund  <eae@chromium.org>
1633
1634         Reviewed by Eric Seidel.
1635
1636         Convert RenderBlock::isPointInOverflowControl to IntPoint
1637         https://bugs.webkit.org/show_bug.cgi?id=62312
1638
1639         Covered by existing tests.
1640
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:
1648
1649 2011-06-08  James Simonsen  <simonjam@chromium.org>
1650
1651         Reviewed by Tony Gentilcore.
1652
1653         Fix clang issue, virtual function const mismatch
1654         https://bugs.webkit.org/show_bug.cgi?id=62307
1655
1656         No new tests. Built with clang & ran layout tests.
1657
1658         * page/MediaStreamFrameController.h:
1659         (WebCore::MediaStreamFrameController::GenericClient::isGenericClient):
1660
1661 2011-06-08  Chris Rogers  <crogers@google.com>
1662
1663         Reviewed by Kenneth Russell.
1664
1665         Implement BiquadFilterNode for filter types: LOWPASS, HIGHPASS, BANDPASS, LOWSHELF, HIGHSHELF, PEAKING, NOTCH, ALLPASS
1666         https://bugs.webkit.org/show_bug.cgi?id=62078
1667
1668         No new tests since audio API is not yet implemented.
1669
1670         * DerivedSources.make:
1671         * WebCore.gypi:
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):
1716
1717 2011-06-08  No'am Rosenthal  <noam.rosenthal@nokia.com>
1718
1719         Reviewed by Kenneth Rohde Christiansen.
1720
1721         WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
1722         https://bugs.webkit.org/show_bug.cgi?id=61694
1723
1724         No new tests, code path is not activated yet.
1725
1726         * WebCore.xcodeproj/project.pbxproj: Changed the TransformOperation subclassed from "project" to "private"
1727
1728 2011-06-08  Tom Sepez  <tsepez@chromium.org>
1729
1730         Reviewed by Adam Barth.
1731
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
1738
1739         * loader/FrameLoader.cpp:
1740         (WebCore::FrameLoader::checkIfDisplayInsecureContent):
1741         (WebCore::FrameLoader::checkIfRunInsecureContent):
1742         * loader/FrameLoaderClient.h:
1743         (WebCore::FrameLoaderClient::allowDisplayingInsecureContent):
1744         (WebCore::FrameLoaderClient::allowRunningInsecureContent):
1745
1746 2011-06-08  Kevin Ollivier  <kevino@theolliviers.com>
1747
1748         [wx] Build fix after introduction of FontCache::ShouldRetain
1749
1750         * platform/graphics/wx/FontCacheWx.cpp:
1751         (WebCore::FontCache::getFontDataForCharacters):
1752
1753 2011-06-08  Sheriff Bot  <webkit.review.bot@gmail.com>
1754
1755         Unreviewed, rolling out r88365.
1756         http://trac.webkit.org/changeset/88365
1757         https://bugs.webkit.org/show_bug.cgi?id=62301
1758
1759         windows bots broken (Requested by loislo_ on #webkit).
1760
1761         * inspector/InspectorValues.cpp:
1762         (WebCore::InspectorBasicValue::writeJSON):
1763
1764 2011-06-08  Mikołaj Małecki  <m.malecki@samsung.com>
1765
1766         Reviewed by Pavel Feldman.
1767
1768         Web Inspector: Crash by buffer overrun crash when serializing inspector object tree.
1769         https://bugs.webkit.org/show_bug.cgi?id=52791
1770
1771         No new tests. The problem can be reproduced by trying to create InspectorValue
1772         from 1.0e-100 and call ->toJSONString() on this.
1773
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.
1778
1779 2011-06-08  Nico Weber  <thakis@chromium.org>
1780
1781         Reviewed by Darin Adler.
1782
1783         Fix a ?: precedence error in ScrollbarThemeMac and ScrollbarThemeChromium
1784         https://bugs.webkit.org/show_bug.cgi?id=62295
1785
1786         This was found by a new warning recently added to clang's -Wparentheses
1787
1788         * platform/chromium/ScrollbarThemeChromiumMac.mm:
1789         (WebCore::ScrollbarThemeChromiumMac::backButtonRect):
1790         * platform/mac/ScrollbarThemeMac.mm:
1791         (WebCore::ScrollbarThemeMac::backButtonRect):
1792
1793 2011-06-08  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1794
1795         Reviewed by Andreas Kling.
1796
1797         [Qt] Remove dead code from our JSC bridge
1798         https://bugs.webkit.org/show_bug.cgi?id=62287
1799
1800         The m_defaultMethod member is not used since r36848 and QtMethod
1801         was replaced by QtRuntimeMethod and subclasses in r29729.
1802
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:
1808
1809 2011-06-08  Ryan Sleevi  <rsleevi@chromium.org>
1810
1811         Reviewed by Tony Chang.
1812
1813         Suppress C++0x compat warnings when compiling Chromium port with GCC 4.6
1814
1815         Compiling Chromium port under GCC 4.6 produces warnings about nullptr
1816         https://bugs.webkit.org/show_bug.cgi?id=62242
1817
1818         * WebCore.gyp/WebCore.gyp:
1819
1820 2011-05-25  Xiaomei Ji  <xji@chromium.org>
1821
1822         Reviewed by Ryosuke Niwa.
1823
1824         --webkit-visual-word does not work well in words separated by multiple spaces
1825         https://bugs.webkit.org/show_bug.cgi?id=61324
1826
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.
1831
1832         Consider positionBeforeNextWord() for example, 
1833
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  |".
1843
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".
1847
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.
1850
1851         * editing/visible_units.cpp:
1852         (WebCore::leftWordPosition):
1853         (WebCore::rightWordPosition):
1854
1855 2011-06-08  Greg Simon  <gregsimon@chromium.org>
1856
1857         Reviewed by Dimitri Glazkov.
1858
1859         Control Indexeddb backends from LayoutTestController
1860         https://bugs.webkit.org/show_bug.cgi?id=61000
1861
1862         Test: storage/indexeddb/migrate-basics.html
1863
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):
1878
1879 2011-06-08  Dmitry Lomov  <dslomov@google.com>
1880
1881         Reviewed by Adam Barth.
1882
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.
1891
1892         * WebCore.gypi:
1893         * WebCore.pro:
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):
1924
1925 2011-06-08  Yael Aharon  <yael.aharon@nokia.com>
1926
1927         Reviewed by Andreas Kling.
1928
1929         [Qt] Build fix for building QtWebKit inside of Qt.
1930         https://bugs.webkit.org/show_bug.cgi?id=62280
1931
1932         Remove CONFIG=staticlib, because it causes the configure script to add -lwebcore
1933         into QtWebKit.prl.
1934
1935         No new tests, as this is just a build fix.
1936
1937         * WebCore.pri:
1938
1939 2011-06-08  Vsevolod Vlasov  <vsevik@chromium.org>
1940
1941         Reviewed by Pavel Feldman.
1942
1943         Web Inspector: Render non-document HTML resources as HTML
1944         https://bugs.webkit.org/show_bug.cgi?id=58886
1945
1946         * English.lproj/localizedStrings.js:
1947         * WebCore.gypi:
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:
1973
1974 2011-05-18  Pavel Podivilov  <podivilov@chromium.org>
1975
1976         Reviewed by Yury Semikhatsky.
1977
1978         Web Inspector: hide script location to ui location conversion details from ScriptsPanel.
1979         https://bugs.webkit.org/show_bug.cgi?id=61035
1980
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):
1988
1989 2011-06-08  Tommy Widenflycht  <tommyw@google.com>
1990
1991         Reviewed by Tony Gentilcore.
1992
1993         StreamEvent
1994
1995         Media Stream PeerConnection API: adding StreamEvent class
1996         https://bugs.webkit.org/show_bug.cgi?id=61537
1997
1998         Tests for the Media Stream API will be provided by the bug 56587.
1999
2000         * CMakeLists.txt:
2001         * CodeGenerators.pri:
2002         * DerivedSources.cpp:
2003         * DerivedSources.make:
2004         * GNUmakefile.list.am:
2005         * WebCore.gypi:
2006         * WebCore.pro:
2007         * WebCore.vcproj/WebCore.vcproj:
2008         * WebCore.xcodeproj/project.pbxproj:
2009         * bindings/js/JSEventCustom.cpp:
2010         (WebCore::toJS):
2011         * bindings/v8/custom/V8EventCustom.cpp:
2012         (WebCore::toV8):
2013         * dom/DOMAllInOne.cpp:
2014         * dom/Event.cpp:
2015         (WebCore::Event::isStreamEvent):
2016         * dom/Event.h:
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.
2026
2027 2011-06-08  Tommy Widenflycht  <tommyw@google.com>
2028
2029         Reviewed by Tony Gentilcore.
2030
2031         Media Stream API: integrate the Track List objects into the existing code.
2032         https://bugs.webkit.org/show_bug.cgi?id=60205
2033
2034         Tests for the Media Stream API will be provided by the bug 56587.
2035
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:
2054         * dom/Stream.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):
2061         * dom/TrackList.h:
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):
2087
2088 2011-06-08  Pavel Podivilov  <podivilov@chromium.org>
2089
2090         Reviewed by Yury Semikhatsky.
2091
2092         Web Inspector: [REGRESSION] breakpoints are not persisted.
2093         https://bugs.webkit.org/show_bug.cgi?id=62273
2094
2095         * inspector/front-end/Settings.js:
2096
2097 2011-06-08  Alexander Pavlov  <apavlov@chromium.org>
2098
2099         Reviewed by Yury Semikhatsky.
2100
2101         Web Inspector: node selection is slow in the Elements panel.
2102         https://bugs.webkit.org/show_bug.cgi?id=60813
2103
2104         Schedule full style updates rather than request all node styles from the backend immediately.
2105
2106         * inspector/front-end/StylesSidebarPane.js:
2107         (WebInspector.StylesSidebarPane.prototype.update.reloadAllStyles):
2108         (WebInspector.StylesSidebarPane.prototype.update):
2109
2110 2011-06-08  Andreas Kling  <andreas.kling@nokia.com>
2111
2112         Reviewed by Laszlo Gombos.
2113
2114         [Symbian] Float{32,64}Array and Int16Array fail to build.
2115         https://bugs.webkit.org/show_bug.cgi?id=62219
2116
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.
2120
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):
2127
2128 2011-06-08  Syed Idris Shah  <syed.idris-shah@nokia.com>
2129
2130         Reviewed by Andreas Kling.
2131
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
2134
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.
2137
2138         LayoutTests/fast/canvas/webgl/point-size.html
2139
2140         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2141         (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
2142
2143 2011-06-08  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2144
2145         Unreviewed. Fix style error.
2146
2147         * platform/efl/RenderThemeEfl.cpp:
2148         * platform/efl/RenderThemeEfl.h:
2149
2150 2011-06-08  Hironori Bono  <hbono@chromium.org>
2151
2152         Reviewed by Brent Fulgham.
2153
2154         Add SpellCheck API
2155         https://bugs.webkit.org/show_bug.cgi?id=59693
2156
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.
2160
2161         Tests: editing/spelling/spellcheck-api-pixel.html
2162                editing/spelling/spellcheck-api.html
2163
2164         * WebCore.gypi:
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):
2220
2221 2011-06-07  Andrey Kosyakov  <caseq@chromium.org>
2222
2223         Reviewed by Pavel Feldman.
2224
2225         Web Inspector: remove shadow dom inspection from Elements panel by default.
2226         https://bugs.webkit.org/show_bug.cgi?id=62188
2227
2228         This reverts r85751
2229
2230         * dom/Element.cpp:
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):
2258         ():
2259         * inspector/front-end/inspector.css:
2260         * inspector/front-end/utilities.js:
2261         (Element.prototype.query):
2262
2263 2011-06-08  Mark Rowe  <mrowe@apple.com>
2264
2265         Fix the build.
2266
2267         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2268         (WebCore::MediaPlayerPrivateAVFoundation::timeChanged):
2269         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
2270
2271 2011-06-07  Keishi Hattori  <keishi@webkit.org>
2272
2273         Reviewed by Kent Tamura.
2274
2275         Rename HTMLInputElement::m_value to m_valueIfDirty
2276         https://bugs.webkit.org/show_bug.cgi?id=61990
2277
2278         No new tests because no behavior change.
2279
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.
2291
2292 2011-06-07  Ian Henderson  <ianh@apple.com>
2293
2294         Reviewed by Dan Bernstein.
2295
2296         (CG) Sub-image drawing clips unnecessarily
2297         https://bugs.webkit.org/show_bug.cgi?id=62258
2298
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.
2302
2303         * platform/graphics/cg/ImageCG.cpp:
2304         (WebCore::BitmapImage::draw):
2305
2306 2011-06-07  Emil A Eklund  <eae@chromium.org>
2307
2308         Reviewed by Eric Seidel.
2309
2310         Convert nodeAtPoint to IntPoint
2311         https://bugs.webkit.org/show_bug.cgi?id=62145
2312
2313         Convert nodeAtPoint to take an IntPoint instead of a pair of ints for the
2314         accumulated offset.
2315
2316         Covered by existing tests.
2317
2318         * platform/graphics/FloatPoint.h:
2319         (WebCore::FloatPoint::moveBy):
2320         Add moveBy(IntPoint) method
2321         
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:
2395
2396 2011-06-07  Yi Shen  <yi.4.shen@nokia.com>
2397
2398         Reviewed by Simon Hausmann.
2399
2400         [Qt] Fix the error code for media resource failures when using QtMobility
2401         https://bugs.webkit.org/show_bug.cgi?id=55901
2402
2403         To indicate the media resource failures, set the network state to
2404         MediaPlayer::FormatError when receives QMediaPlayer::InvalidMedia or
2405         QMediaPlayer::ResourceError.
2406
2407         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2408         (WebCore::MediaPlayerPrivateQt::updateStates):
2409
2410 2011-06-07  Emil A Eklund  <eae@chromium.org>
2411
2412         Reviewed by Eric Seidel.
2413
2414         Change RenderBlock::hitTestFloats to IntPoint
2415         https://bugs.webkit.org/show_bug.cgi?id=62176
2416
2417         Covered by existing tests.
2418
2419         * rendering/RenderBlock.cpp:
2420         (WebCore::RenderBlock::nodeAtPoint):
2421         (WebCore::RenderBlock::hitTestFloats):
2422         (WebCore::RenderBlock::hitTestColumns):
2423         * rendering/RenderBlock.h:
2424
2425 2011-06-07  Tim Horton  <timothy_horton@apple.com>
2426
2427         Reviewed by Alexey Proskuryakov.
2428
2429         Use correct CFURLStorageSessionRef definition on Snow Leopard
2430         https://bugs.webkit.org/show_bug.cgi?id=62223
2431
2432         * platform/mac/WebCoreSystemInterface.h:
2433         * platform/network/ResourceHandle.h:
2434         * platform/network/cf/ResourceRequest.h:
2435
2436 2011-06-07  Emil A Eklund  <eae@chromium.org>
2437
2438         Reviewed by Eric Seidel.
2439
2440         Change RenderBlock::hitTestColumns to IntPoint
2441         https://bugs.webkit.org/show_bug.cgi?id=62172
2442
2443         Covered by existing tests.
2444
2445         * rendering/RenderBlock.cpp:
2446         (WebCore::RenderBlock::nodeAtPoint):
2447         (WebCore::RenderBlock::hitTestColumns):
2448         * rendering/RenderBlock.h:
2449
2450 2011-06-07  Simon Fraser  <simon.fraser@apple.com>
2451
2452         Reviewed by Darin Adler.
2453
2454         Opacity transition doesn't work while content property is set.
2455         https://bugs.webkit.org/show_bug.cgi?id=59301
2456         
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.
2460         
2461         Fix by making StyleRareNonInheritedData's copy ctor do the right thing.
2462
2463         Test: transitions/transition-on-element-with-content.html
2464
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:
2480
2481 2011-06-07  Robert Kroeger  <rjkroege@chromium.org>
2482
2483         Reviewed by Adam Barth.
2484
2485         [chromium] Add a basic gesture recognizer to the Chromium platform
2486         https://bugs.webkit.org/show_bug.cgi?id=54417
2487
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
2492         robustness.
2493
2494         Added an additional constructor to permit building a synthetic
2495         PlatformWheelEvent.
2496
2497         Small modifications to the PlatformGestureRecognizer as required to
2498         implement the simple Chromium platform gesture recognizer.
2499
2500         Tests: fast/events/touch/touch-gesture-click.html
2501
2502         * WebCore.gypi:
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):
2525         (WebCore::click):
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):
2538
2539 2011-06-07  No'am Rosenthal  <noam.rosenthal@nokia.com>
2540
2541         Reviewed by Andreas Kling.
2542
2543         [Texmap][Qt] Enable TextureMapper by default
2544         https://bugs.webkit.org/show_bug.cgi?id=61740
2545
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.
2548
2549         No new functionality so no new tests.
2550
2551         * WebCore.pri:
2552         * WebCore.pro:
2553         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2554         * platform/graphics/qt/TextureMapperQt.cpp:
2555         (WebCore::TextureMapper::create):
2556
2557 2011-06-07  Emil A Eklund  <eae@chromium.org>
2558
2559         Reviewed by Eric Seidel.
2560
2561         Convert RenderBox::absoluteRects to IntPoint
2562         https://bugs.webkit.org/show_bug.cgi?id=62130
2563
2564         Covered by existing tests.
2565
2566         * dom/Node.cpp:
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:
2595
2596 2011-06-07  Kent Tamura  <tkent@chromium.org>
2597
2598         Reviewed by Andreas Kling.
2599
2600         [Qt] RenderThemeQt::adjustSliderThumbSize() should not refer to the parent style.
2601         https://bugs.webkit.org/show_bug.cgi?id=62207
2602
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):
2610
2611 2011-06-07  Sailesh Agrawal  <sail@chromium.org>
2612
2613         Reviewed by Mihai Parparita.
2614
2615         Chromium Mac: Fork ScrollAnimatorMac to ScrollAnimatorChromiumMac for overlay scrollbar support
2616         https://bugs.webkit.org/show_bug.cgi?id=59753
2617
2618         No new tests. Just forking ScrollAnimatorMac to ScrollAnimatorChromiumMac.
2619
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.
2628         (abs):
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.
2713
2714 2011-06-07  Sam Weinig  <sam@webkit.org>
2715
2716         Reviewed by Anders Carlsson.
2717
2718         Remove repeated IPC traffic from SetRenderTreeSize message
2719         https://bugs.webkit.org/show_bug.cgi?id=62244
2720
2721         * WebCore.xcodeproj/project.pbxproj:
2722         Make RenderArena.h private so it can be called from WebKit2.
2723
2724         * loader/FrameLoaderClient.h:
2725         (WebCore::FrameLoaderClient::dispatchDidLayout):
2726         Added.
2727
2728         * page/ChromeClient.h:
2729         Remove setRenderTreeSize.
2730
2731         * page/FrameView.cpp:
2732         (WebCore::FrameView::performPostLayoutTasks):
2733         Call dispatchDidLayout for all frames instead of calling setRenderTreeSize
2734         for the main frame.
2735
2736 2011-06-07  Emil A Eklund  <eae@chromium.org>
2737
2738         Reviewed by Eric Seidel.
2739
2740         Change RenderBlock::hitTestContents to IntPoint
2741         https://bugs.webkit.org/show_bug.cgi?id=62170
2742
2743         Covered by existing tests.
2744
2745         * rendering/RenderBlock.cpp:
2746         (WebCore::RenderBlock::nodeAtPoint):
2747         (WebCore::RenderBlock::hitTestColumns):
2748         (WebCore::RenderBlock::hitTestContents):
2749         * rendering/RenderBlock.h:
2750
2751 2011-06-07  Jer Noble  <jer.noble@apple.com>
2752
2753         Reviewed by Eric Carlson.
2754
2755         Video with poster attribute will not display new frames when scrubbing.
2756         https://bugs.webkit.org/show_bug.cgi?id=62036
2757
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().
2761
2762         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2763         (WebCore::MediaPlayerPrivateAVFoundation::timeChanged): 
2764         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
2765
2766 2011-06-07  James Simonsen  <simonjam@chromium.org>
2767
2768         Unreviewed, build fix, missing files from r88274.
2769
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):
2781
2782 2011-06-07  Abhishek Arya  <inferno@chromium.org>
2783
2784         Reviewed by Dan Bernstein.
2785
2786         Replicate WidthIterator.cpp fix from r88139.
2787         https://bugs.webkit.org/show_bug.cgi?id=62238
2788
2789         No new tests. Covered by existing layout tests on XP debug bots.
2790
2791         * platform/graphics/win/UniscribeController.cpp:
2792         (WebCore::UniscribeController::advance):
2793
2794 2011-06-07  Sheriff Bot  <webkit.review.bot@gmail.com>
2795
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
2801
2802         assert failure on chromium linux debug (Requested by simonjam
2803         on #webkit).
2804
2805         * WebCore.gypi:
2806         * WebCore.pro:
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):
2843
2844 2011-06-07  Simon Fraser  <simon.fraser@apple.com>
2845
2846         Reviewed by Dave Hyatt.
2847
2848         Clean up ContentData
2849         https://bugs.webkit.org/show_bug.cgi?id=62185
2850
2851         ContentData did manual ref()/deref() and had a lot of awkward
2852         code from using a union to store data.
2853         
2854         Clean this up by adding ContentData subclasses for different
2855         content types, which are then able to use RefPtr and OwnPtr
2856         as appropriate.
2857
2858         * css/CSSComputedStyleDeclaration.cpp:
2859         (WebCore::contentToCSSValue): Cast to different ContentData types as
2860         appropriate.
2861
2862         * css/CSSStyleSelector.cpp: 
2863         (WebCore::CSSStyleSelector::loadPendingImages): Cast to ImageContentData, and do some
2864         const gyrations.
2865
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
2876         appropriate.
2877
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.
2908
2909         * rendering/style/ContentData.cpp:
2910         (WebCore::ContentData::create):
2911         (WebCore::operator==): Test for type equality, followed by comparing data.
2912         (WebCore::operator!=):
2913
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.
2927
2928 2011-06-07  Brian Weinstein  <bweinstein@apple.com>
2929
2930         Build fix after r88260.
2931
2932         * platform/graphics/win/FontCacheWin.cpp:
2933         (WebCore::FontCache::getFontDataForCharacters): Update to use enum instead of bool.
2934         * platform/graphics/wince/FontCacheWinCE.cpp:
2935
2936 2011-06-07  Rob Buis  <rbuis@rim.com>
2937
2938         Reviewed by Dirk Schulze.
2939
2940         stroke-dasharray does not handle "none"
2941         https://bugs.webkit.org/show_bug.cgi?id=62203
2942
2943         Use the initial strokeDashArray style for stroke-dasharray="none" to apply to SVGRenderStyle rather than bailing out.
2944
2945         Tests: svg/W3C-SVG-1.1-SE/styling-css-04-f.svg
2946                svg/custom/invalid-dasharray.svg
2947
2948         * css/SVGCSSStyleSelector.cpp:
2949         (WebCore::CSSStyleSelector::applySVGProperty):
2950
2951 2011-06-07  Sheriff Bot  <webkit.review.bot@gmail.com>
2952
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
2957
2958         broke builds (Requested by rniwa on #webkit).
2959
2960         * platform/mac/WebCoreSystemInterface.h:
2961         * platform/network/ResourceHandle.h:
2962         * platform/network/cf/ResourceRequest.h:
2963
2964 2011-06-07  Emil A Eklund  <eae@chromium.org>
2965
2966         Reviewed by Eric Seidel.
2967
2968         Switch ContainerNode to use IntPoint
2969         https://bugs.webkit.org/show_bug.cgi?id=61893
2970
2971         Covered by existing tests.
2972
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
2978         
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.
2984
2985 2011-06-07  Ryosuke Niwa  <rniwa@webkit.org>
2986
2987         Speculative build fix after r88259.
2988
2989         * platform/network/cf/ResourceRequest.h:
2990
2991 2011-06-07  Michael Saboff  <msaboff@apple.com>
2992
2993         Reviewed by Geoffrey Garen.
2994
2995         Need to enable font cache purging in MemoryPressureHandler
2996         https://bugs.webkit.org/show_bug.cgi?id=62060
2997
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.
3002
3003         No new tests as funtionality wasn't changed.
3004
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):
3011
3012 2011-06-07  Michael Saboff  <msaboff@apple.com>
3013
3014         Reviewed by Geoffrey Garen.
3015
3016         Fonts returned by FontCache::getFontDataForCharacters() are never released
3017         https://bugs.webkit.org/show_bug.cgi?id=61875
3018
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.
3026
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
3030         this change.
3031
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.
3044
3045         No new test as the functionality has not changed. Improved font life
3046         cycle management.
3047
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.
3054
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.
3060
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.
3071
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.
3080
3081         * platform/graphics/FontFastPath.cpp:
3082         (WebCore::Font::glyphDataForCharacter): Update level in 
3083         glyph page tree for system fallback fonts so pruning works.
3084
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.
3090
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.
3111
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.
3118
3119         * rendering/RenderImage.cpp:
3120         (WebCore::RenderImage::setImageSizeForAltText):
3121         Wrapped code accessing fallback fonts with local
3122         FontCachePurgePreventer in this method.
3123
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
3129
3130         * rendering/svg/SVGInlineTextBox.cpp:
3131         (WebCore::SVGInlineTextBox::selectionRectForTextFragment):
3132         Wrapped code accessing fallback fonts with local
3133         FontCachePurgePreventer in this method.
3134
3135 2011-06-07  Tim Horton  <timothy_horton@apple.com>
3136
3137         Reviewed by Alexey Proskuryakov.
3138
3139         Use correct CFURLStorageSessionRef definition on Snow Leopard
3140         https://bugs.webkit.org/show_bug.cgi?id=62223
3141
3142         * platform/mac/WebCoreSystemInterface.h:
3143         * platform/network/ResourceHandle.h:
3144         * platform/network/cf/ResourceRequest.h:
3145
3146 2011-06-07  Alok Priyadarshi  <alokp@chromium.org>
3147
3148         Reviewed by Stephen White.
3149
3150         [chromium] PlatformContextSkia leaks SkDeviceFactory
3151         https://bugs.webkit.org/show_bug.cgi?id=62163
3152
3153         Valgrind tests should have caught this.
3154
3155         * platform/graphics/skia/PlatformContextSkia.cpp:
3156         (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
3157
3158 2011-06-07  Emil A Eklund  <eae@chromium.org>
3159
3160         Reviewed by Eric Seidel.
3161
3162         Convert RenderTextControl::hitInnerTextElement to IntPoint
3163         https://bugs.webkit.org/show_bug.cgi?id=62167
3164
3165         Covered by existing tests.
3166
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):
3174
3175 2011-06-07  Levi Weintraub  <leviw@chromium.org>
3176
3177         Reviewed by Eric Seidel.
3178
3179         Switch paint to use IntPoint
3180         https://bugs.webkit.org/show_bug.cgi?id=62177
3181
3182         Flipping the switch on the remaining paint functions to have them all
3183         use IntPoint for the paint offset instead of tx/ty.
3184
3185         No new tests since this is just refactoring.
3186
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):
3308
3309 2011-06-07  Young Han Lee  <joybro@company100.net>
3310
3311         Reviewed by Kenneth Rohde Christiansen.
3312
3313         [Texmap][Qt] Accelerated animation is not paused properly.
3314         https://bugs.webkit.org/show_bug.cgi?id=61446
3315
3316         The transform matrix of an accelerated animation shouldn't be synced with the matrix of the GraphicsLayer when the animation is paused.
3317
3318         Test: animations/play-state-paused.html
3319
3320         * platform/graphics/texmap/TextureMapperNode.cpp:
3321         (WebCore::TextureMapperNode::syncCompositingStateSelf):
3322         (WebCore::TextureMapperNode::hasOpacityAnimation):
3323         (WebCore::TextureMapperNode::hasTransformAnimation):
3324         * platform/graphics/texmap/TextureMapperNode.h:
3325
3326 2011-06-07  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
3327
3328         Reviewed by Antonio Gomes.
3329
3330         [EFL] Remove Ecore_X bits from PlatformScreenEfl
3331         https://bugs.webkit.org/show_bug.cgi?id=61649
3332
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.
3335
3336         No new tests since the same functionality are done inside EFL now.
3337
3338         * platform/efl/PlatformScreenEfl.cpp:
3339         (WebCore::screenRect):
3340
3341 2011-06-07  Carlos Garcia Campos  <cgarcia@igalia.com>
3342
3343         Reviewed by Martin Robinson.
3344
3345         [GTK] Move moduleMixesGtkSymbols() from PluginPackage to PluginView
3346         https://bugs.webkit.org/show_bug.cgi?id=62200
3347
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.
3353
3354         * plugins/PluginPackage.h:
3355         (WebCore::PluginPackage::module): New method to return the
3356         platform module.
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.
3371
3372 2011-06-07  Sheriff Bot  <webkit.review.bot@gmail.com>
3373
3374         Unreviewed, rolling out r88238.
3375         http://trac.webkit.org/changeset/88238
3376         https://bugs.webkit.org/show_bug.cgi?id=62216
3377
3378         Broke a couple of inspector tests (Requested by apavlov on
3379         #webkit).
3380
3381         * inspector/front-end/StylesSidebarPane.js:
3382         (WebInspector.StylesSidebarPane.prototype.update):
3383
3384 2011-06-07  Dinu Jacob  <dinu.jacob@nokia.com>
3385
3386         Reviewed by Dimitri Glazkov.
3387
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
3390
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
3394
3395         * dom/Document.cpp:
3396         (WebCore::Document::detach):
3397         * history/CachedFrame.cpp:
3398         (WebCore::CachedFrame::CachedFrame):
3399         * loader/FrameLoader.cpp:
3400         (WebCore::FrameLoader::transitionToCommitted):
3401
3402 2011-06-07  Alexander Pavlov  <apavlov@chromium.org>
3403
3404         Reviewed by Yury Semikhatsky.
3405
3406         Web Inspector: node selection is slow in the Elements panel.
3407         https://bugs.webkit.org/show_bug.cgi?id=60813
3408
3409         Schedule full style updates rather than request all node styles from the backend immediately.
3410
3411         * inspector/front-end/StylesSidebarPane.js:
3412         (WebInspector.StylesSidebarPane.prototype.update.reloadAllStyles):
3413         (WebInspector.StylesSidebarPane.prototype.update):
3414
3415 2011-06-07  Yury Semikhatsky  <yurys@chromium.org>
3416
3417         Reviewed by Pavel Feldman.
3418
3419         Web Inspector: remove duplicate breakpoints from localStorage
3420         https://bugs.webkit.org/show_bug.cgi?id=62206
3421
3422         Perform one-time breakpoint storage cleanup to get rid of duplicate breakpoints in
3423         case when settings version is less than 1. 
3424
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):
3431
3432 2011-06-03  Yury Semikhatsky  <yurys@chromium.org>
3433
3434         Reviewed by Pavel Feldman.
3435
3436         [Chromium] Web Inspector: correctly handle disconnect from worker when script execution is paused
3437         https://bugs.webkit.org/show_bug.cgi?id=62019
3438
3439         Dispatch disconnecFrontend message in debugger task mode to make sure
3440         it is processed even if execution is paused.
3441
3442         * bindings/v8/WorkerScriptDebugServer.cpp:
3443         (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
3444         (WebCore::WorkerScriptDebugServer::quitMessageLoopOnPause):
3445         * bindings/v8/WorkerScriptDebugServer.h:
3446
3447 2011-06-07  Felician Marton  <marton.felician.zoltan@stud.u-szeged.hu>
3448
3449         Reviewed by Nikolas Zimmermann.
3450
3451         SVG animation beginElement() does not restart the animation after endElement().
3452         https://bugs.webkit.org/show_bug.cgi?id=43452
3453
3454         Test: svg/animations/animate-endElement-beginElement.html
3455
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.
3458
3459         * svg/animation/SVGSMILElement.cpp:
3460         (WebCore::SVGSMILElement::findInstanceTime):
3461
3462 2011-06-07  Naoki Takano  <takano.naoki@gmail.com>
3463
3464         Reviewed by Kent Tamura.
3465
3466         [Chromium] Click event is not fired for a menulist <select>
3467         https://bugs.webkit.org/show_bug.cgi?id=60563
3468
3469         Tests: SelectItemEventFire, SelectItemKeyEvent, SelectItemRemoveSelectOnChange and SelectItemRemoveSelectOnChange in webkit_unit_tests.
3470
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.
3475
3476 2011-06-07  Andras Becsi  <abecsi@webkit.org>
3477
3478         Reviewed by Yury Semikhatsky.
3479  
3480         REGRESSION(r88221): "Chromium debug compilation broken".
3481         https://bugs.webkit.org/show_bug.cgi?id=62197
3482
3483         No new tests needed.
3484
3485         * bindings/v8/V8GCController.cpp: Also rename call-sites.
3486         (WebCore::V8GCController::gcPrologue):
3487         (WebCore::V8GCController::gcEpilogue):
3488
3489 2011-06-07  MORITA Hajime  <morrita@google.com>
3490
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
3495
3496         Tests get timeout at Snow Leopard
3497
3498         * css/html.css:
3499         (html:focus, body:focus, input[readonly]:focus):
3500         * rendering/RenderWidget.cpp:
3501         (WebCore::RenderWidget::paint):
3502
3503 2011-06-07  Andras Becsi  <abecsi@webkit.org>
3504
3505         Rubber-stamped by Csaba Osztrogonác.
3506
3507         [Qt][V8] Fix the build after 88221.
3508
3509         No new tests needed.
3510
3511         * WebCore.pro: Remove non-existing files.
3512         * bindings/v8/V8DOMMap.cpp: 
3513         (WebCore::removeAllDOMObjects): Also rename the definition of the function.
3514
3515 2011-06-06  Dmitry Lomov  <dslomov@google.com>
3516
3517         Reviewed by Adam Barth.
3518
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.
3527
3528         * WebCore.gypi:
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):
3558
3559 2011-06-06  Nico Weber  <thakis@chromium.org>
3560
3561         Reviewed by Adam Barth.
3562
3563         [chromium] Make VideoFrameChromium's destructor virtual
3564         https://bugs.webkit.org/show_bug.cgi?id=62186
3565
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.)
3571
3572         * platform/graphics/chromium/VideoFrameChromium.cpp:
3573         (WebCore::VideoFrameChromium::~VideoFrameChromium):
3574         * platform/graphics/chromium/VideoFrameChromium.h:
3575
3576 2011-06-06  Simon Fraser  <simon.fraser@apple.com>
3577
3578         Reviewed by Sammy Weinig.
3579
3580         Remove some unnecessary includes from AnimationBase.cpp
3581         https://bugs.webkit.org/show_bug.cgi?id=62183
3582
3583         * page/animation/AnimationBase.cpp:
3584
3585 2011-06-06  Kent Tamura  <tkent@chromium.org>
3586
3587         Unreviewed, a crash fix by a roll out.
3588
3589         REGRESSION(r87980): Null pointer dereference in RenderTextControl::setInnerText()
3590         https://bugs.webkit.org/show_bug.cgi?id=62116
3591
3592         Roll out the WebCore part of r87980.
3593
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:
3614
3615 2011-06-06  No'am Rosenthal  <noam.rosenthal@nokia.com>
3616
3617         Reviewed by Simon Fraser.
3618
3619         Allow copying of KeyframeValueList.
3620         https://bugs.webkit.org/show_bug.cgi?id=62171
3621
3622         Make a deep copy of KeyframeValueList, copying each of the keyframes with a virtual clone() function.
3623
3624         No new functionality so no new tests.
3625
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):
3632
3633 2011-06-06  Simon Fraser  <simon.fraser@apple.com>
3634
3635         Reviewed by Dan Bernstein.
3636
3637         Incorrect rounding of color values during transitions
3638         https://bugs.webkit.org/show_bug.cgi?id=62141
3639         
3640         When blending integers, round to the nearest integer, instead of always rounding down.
3641
3642         Test: transitions/color-transition-rounding.html
3643
3644         * page/animation/AnimationBase.cpp:
3645         (WebCore::blendFunc):
3646
3647 2011-06-06  Sheriff Bot  <webkit.review.bot@gmail.com>
3648
3649         Unreviewed, rolling out r88202.
3650         http://trac.webkit.org/changeset/88202
3651         https://bugs.webkit.org/show_bug.cgi?id=62182
3652
3653         This broke the mac clang bot (Requested by koz__ on #webkit).
3654
3655         * dom/Node.cpp:
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:
3677
3678 2011-06-06  Noel Gordon  <noel.gordon@gmail.com>
3679
3680         Reviewed by Hajime Morita.
3681
3682         Draw CSS outline style for render widgets: iframe, embed, object, applet.
3683         https://bugs.webkit.org/show_bug.cgi?id=57439
3684
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.
3687
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
3694
3695         * css/html.css:
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.
3699
3700 2011-06-06  MORITA Hajime  <morrita@google.com>
3701
3702         Reviewed by Kent Tamura.
3703
3704         Assertion fails in TextCheckingHelper by right-clicking on <input type=search>
3705         https://bugs.webkit.org/show_bug.cgi?id=61991
3706
3707         Added a guard bofore TextCheckingHelper construction sites.
3708
3709         Test: editing/spelling/spellcheck-input-search-crash.html
3710
3711         * editing/Editor.cpp:
3712         (WebCore::Editor::isSelectionUngrammatical):
3713         (WebCore::Editor::guessesForUngrammaticalSelection):
3714         (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection):
3715
3716 2011-06-06  Emil A Eklund  <eae@chromium.org>
3717
3718         Reviewed by Eric Seidel.
3719
3720         Update RenderBlock::paint to use IntPoint internally
3721         https://bugs.webkit.org/show_bug.cgi?id=62140
3722
3723         Covered by existing tests.
3724
3725         * rendering/RenderBlock.cpp:
3726         (WebCore::RenderBlock::paint):
3727
3728 2011-06-06  Emil A Eklund  <eae@chromium.org>
3729
3730         Reviewed by Eric Seidel.
3731
3732         Convert RenderBox::absoluteRects to IntPoint
3733         https://bugs.webkit.org/show_bug.cgi?id=62130
3734
3735         Covered by existing tests.
3736
3737         * dom/Node.cpp:
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:
3758
3759 2011-06-06  Levi Weintraub  <leviw@chromium.org>
3760
3761         Reviewed by Eric Seidel.
3762
3763         Switch shouldPaint to use IntPoint
3764         https://bugs.webkit.org/show_bug.cgi?id=62158
3765
3766         Switching shouldPaint to take an IntPoint representing the paint offset instead
3767         of a pair of ints.
3768
3769         No new tests as this is simple refactoring.
3770
3771         * rendering/RenderReplaced.cpp:
3772         (WebCore::RenderReplaced::paint):
3773         (WebCore::RenderReplaced::shouldPaint):
3774         * rendering/RenderReplaced.h:
3775         * rendering/RenderWidget.cpp:
3776         (WebCore::RenderWidget::paint):
3777
3778 2011-06-06  James Simonsen  <simonjam@chromium.org>
3779
3780         Reviewed by James Robinson.
3781
3782         Add monotonicallyIncreasingTime() to get monotonically increasing time
3783         https://bugs.webkit.org/show_bug.cgi?id=37743
3784
3785         * platform/chromium/SystemTimeChromium.cpp:
3786         (WebCore::monotonicallyIncreasingTime): Add primitive monotonicallyIncreasingTime() which just wraps currentTime().
3787
3788 2011-06-06  Emil A Eklund  <eae@chromium.org>
3789
3790         Reviewed by Eric Seidel.
3791
3792         Convert RenderBox::pushContentsClip to IntPoint
3793         https://bugs.webkit.org/show_bug.cgi?id=62133
3794
3795         Covered by existing tests.
3796
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):
3806
3807 2011-06-06  Levi Weintraub  <leviw@chromium.org>
3808
3809         Reviewed by Eric Seidel.
3810
3811         Switch InlineFlowBox::paintMask to use IntPoint
3812         https://bugs.webkit.org/show_bug.cgi?id=62156
3813
3814         Switching InlineFlowBox::paintMask to take an IntPoint representing the paint
3815         offset instead of a pair of ints.
3816
3817         No new tests as this is simple refactoring.
3818
3819         * rendering/InlineFlowBox.cpp:
3820         (WebCore::InlineFlowBox::paint):
3821         (WebCore::InlineFlowBox::paintMask):
3822         * rendering/InlineFlowBox.h:
3823
3824 2011-06-06  Emil A Eklund  <eae@chromium.org>
3825
3826         Reviewed by Eric Seidel.
3827
3828         Convert hitTest to IntPoint
3829         https://bugs.webkit.org/show_bug.cgi?id=62144
3830
3831         Covered by existing tests.
3832
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:
3852
3853 2011-06-06  Levi Weintraub  <leviw@chromium.org>
3854
3855         Reviewed by Eric Seidel.
3856
3857         Switch paintScrollbar to use IntPoint
3858         https://bugs.webkit.org/show_bug.cgi?id=62151
3859
3860         Switching paintScrollbar to use IntPoint instead of a pair of ints.
3861
3862         No new tests since this is simple refactoring.
3863
3864         * rendering/RenderListBox.cpp:
3865         (WebCore::RenderListBox::paintObject):
3866         (WebCore::RenderListBox::paintScrollbar):
3867         * rendering/RenderListBox.h:
3868
3869 2011-06-06  Daniel Cheng  <dcheng@chromium.org>
3870
3871         Reviewed by Tony Chang.
3872
3873         [chromium] Delete dead clipboard code.
3874         https://bugs.webkit.org/show_bug.cgi?id=62113
3875
3876         No new tests since this change only deleted unused code.
3877
3878         * WebCore.gypi:
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.
3885
3886 2011-06-06  Levi Weintraub  <leviw@chromium.org>
3887
3888         Reviewed by Eric Seidel.
3889
3890         Switch paintOutline, paintContinuationOutlines, and paintOutlineForLine to use IntPoint
3891         https://bugs.webkit.org/show_bug.cgi?id=62137
3892
3893         Switching paintOutline, paintContinuationOutlines, and paintOutlineForLine to take an IntPoint
3894         representing the paint offset instead of a pair of ints.
3895
3896         No new tests as this is simple refactoring.
3897
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):
3908
3909 2011-06-06  Emil A Eklund  <eae@chromium.org>
3910
3911         Reviewed by Eric Seidel.
3912
3913         Convert RenderBox::popContentsClip to IntPoint
3914         https://bugs.webkit.org/show_bug.cgi?id=62132
3915
3916         Covered by existing tests.
3917
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):
3927
3928 2011-06-06  Levi Weintraub  <leviw@chromium.org>
3929
3930         Reviewed by Eric Seidel.
3931
3932         Remove tx/ty offset from selectionRect
3933         https://bugs.webkit.org/show_bug.cgi?id=62146
3934
3935         Removing unused offset parameters from selectionRect.
3936
3937         No new tests since this is just cleanup.
3938
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:
3955
3956 2011-06-06  Paul Kinlan  <paulkinlan@google.com>
3957
3958         Reviewed by Jeremy Orlow.
3959
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
3963
3964         * WebCore/dom/Document.cpp:
3965         * WebCore/dom/PopStateEvent.cpp:
3966         * WebCore/dom/PopStateEvent.h:
3967
3968 2011-06-03  Levi Weintraub  <leviw@chromium.org>
3969
3970         Reviewed by Eric Seidel.
3971
3972         Switch paintSelection to use IntPoint
3973         https://bugs.webkit.org/show_bug.cgi?id=62059
3974
3975         Switching paintSelection to use an IntPoint to represent the paint offset
3976         instead of a pair of ints.
3977
3978         No new tests since this is simple refactoring.
3979
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:
3988
3989 2011-06-06  Emil A Eklund  <eae@chromium.org>
3990
3991         Reviewed by Eric Seidel.
3992
3993         Convert RenderBox::clipRect to IntPoint
3994         https://bugs.webkit.org/show_bug.cgi?id=62045
3995
3996         Covered by existing tests.
3997
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:
4006         (WebCore::clipBox):
4007
4008 2011-06-06  Peter Kasting  <pkasting@google.com>
4009
4010         Reviewed by Antonio Gomes.
4011
4012         Remove unnecessary args from scroll functions.
4013         https://bugs.webkit.org/show_bug.cgi?id=61648
4014
4015         No behavior change, so no tests.
4016
4017         * WebCore.exp.in:
4018         * WebCore.order:
4019         * dom/Element.cpp:
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):
4040
4041 2011-06-06  Levi Weintraub  <leviw@chromium.org>
4042
4043         Reviewed by Eric Seidel.
4044
4045         Switch paintContents, paintColumnContents, paintColumnRules, and paintSelection to use IntPoint
4046         https://bugs.webkit.org/show_bug.cgi?id=62134
4047
4048         Switching paintContents, paintColumnContents, paintColumnRules, and paintSelection to take an
4049         IntPoint representing the paint offset instead of a pair of ints.
4050
4051         No new tests as this simple refactoring.
4052
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:
4060
4061 2011-06-06  Yael Aharon  <yael.aharon@nokia.com>
4062
4063         Reviewed by Eric Seidel.
4064
4065         Inline elements are wrapped prematurely with non-zero border, margin or padding.
4066         https://bugs.webkit.org/show_bug.cgi?id=60459
4067
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.
4071
4072         Test: fast/inline/inline-wrap-with-parent-padding.html
4073
4074         * rendering/RenderBlockLineLayout.cpp:
4075         (WebCore::RenderBlock::LineBreaker::nextLineBreak):
4076
4077 2011-06-06  Shishir Agrawal  <shishir@chromium.org>
4078
4079         Reviewed by Tony Gentilcore.
4080
4081         Add a "prerender" state for page visibility.
4082         https://bugs.webkit.org/show_bug.cgi?id=62062
4083
4084         * page/PageVisibilityState.cpp:
4085         (WebCore::pageVisibilityStateString):
4086         * page/PageVisibilityState.h:
4087
4088 2011-06-06  Cary Clark  <caryclark@google.com>
4089
4090         Reviewed by Eric Seidel.
4091
4092         Fix typo in CachedFont.cpp #define
4093         https://bugs.webkit.org/show_bug.cgi?id=62127
4094
4095         No new tests. The define typo in question is
4096         not yet enabled, so this change has no functional
4097         impact.
4098
4099         * loader/cache/CachedFont.cpp:
4100         change SKIA_MAC_ON_CHROME to SKIA_ON_MAC_CHROME
4101
4102 2011-06-03  Levi Weintraub  <leviw@chromium.org>
4103
4104         Reviewed by Eric Seidel.
4105
4106         Switch paintFloats, paintChildren, and paintEllipsisBoxes to use IntPoint
4107         https://bugs.webkit.org/show_bug.cgi?id=62058
4108
4109         Switching paintFloats, paintChildren, and paintEllipsisBoxes to take IntPoints representing
4110         their paint offsets instead of pairs of ints.
4111
4112         No new tests since this is simple refactoring.
4113
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:
4122
4123 2011-06-06  Steve Block  <steveblock@google.com>
4124
4125         Reviewed by Yury Semikhatsky.
4126
4127         Use of ENABLE(INSPECTOR) is inconsistent
4128         https://bugs.webkit.org/show_bug.cgi?id=62118
4129
4130         Correctly guard implementation of ScriptProfiler.
4131