b20888e4b6439dc706586536407cc65b5187a5aa
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-06-09  Julien Chaffraix  <jchaffraix@codeaurora.org>
2
3         Reviewed by Antti Koivisto.
4
5         REGRESSION(84329): Stylesheets on some pages do not load
6         https://bugs.webkit.org/show_bug.cgi?id=61400
7
8         Test: fast/css/link-disabled-attr.html
9
10         Fixed r84329: the change did not take into account the fact
11         that HTMLLinkElement did already contain the disabled information
12         and the 2 information were not linked as they should have!
13
14         The new logic pushes the information to the stylesheet as this
15         is what the spec mandates and what FF is doing. Also it keeps
16         one bit of information (that JS enabled the stylesheet) as it
17         is needed for the recalcStyleSelector logic.
18
19         * dom/Document.cpp:
20         (WebCore::Document::recalcStyleSelector): s/isDisabled/disabled.
21
22         * html/HTMLLinkElement.cpp:
23         (WebCore::HTMLLinkElement::HTMLLinkElement): Removed m_disabledState,
24         replaced by m_isEnabledViaScript.
25         (WebCore::HTMLLinkElement::setDisabled): Updated the logic after
26         m_disabledState removal. It also matches the spec by forwarding
27         the disabled state to our stylesheet if we have one.
28         (WebCore::HTMLLinkElement::parseMappedAttribute): Removed harmful
29         handling of the disabledAttr.
30         (WebCore::HTMLLinkElement::process): Updated after m_disabledState removal.
31         * html/HTMLLinkElement.h:
32         (WebCore::HTMLLinkElement::isEnabledViaScript): Ditto.
33         (WebCore::HTMLLinkElement::isAlternate): Ditto.
34
35 2011-06-09  Dan Bernstein  <mitz@apple.com>
36
37         Reviewed by Darin Adler.
38
39         Simplify ComplexTextController::collectComplexTextRuns()
40         https://bugs.webkit.org/show_bug.cgi?id=62387
41
42         No new test, since functionality is unchanged.
43
44         * platform/graphics/mac/ComplexTextController.cpp:
45         (WebCore::ComplexTextController::collectComplexTextRuns): Always iterate characters in logical order,
46         then reverse the run vector for RTL.
47
48 2011-06-09  Dimitri Glazkov  <dglazkov@chromium.org>
49
50         Reviewed by Kent Tamura.
51
52         Fold isShadowBoundary into isShadowRoot.
53         https://bugs.webkit.org/show_bug.cgi?id=62317
54
55         Since there are no longer cases where Node::isShadowBoundary() != Node::isShadowRoot, we can remove this function.
56
57         In one case where isShadowBoundary was also tested to find ShadowContentElemnt, added a new isContentElement function.
58
59         Refactoring, covered by existing tests.
60
61         * css/CSSStyleSelector.cpp:
62         (WebCore::isAtShadowBoundary): Changed to use isShadowRoot.
63         * dom/Element.cpp:
64         (WebCore::Element::isSpellCheckingEnabled): Ditto.
65         * dom/Node.cpp:
66         (WebCore::Node::nonBoundaryShadowTreeRootNode): Ditto.
67         (WebCore::Node::nonShadowBoundaryParentNode): Ditto.
68         * dom/Node.h:
69         (WebCore::Node::isContentElement): Added.
70         * dom/NodeRenderingContext.cpp:
71         (WebCore::NodeRenderingContext::NodeRenderingContext): Changed to use isShadowRoot.
72         * dom/Position.cpp:
73         (WebCore::Position::Position): Ditto.
74         * dom/ShadowContentElement.h:
75         (WebCore::ShadowContentElement::isContentElement): Added.
76         * dom/ShadowRoot.cpp:
77         (WebCore::ShadowRoot::hasContentElement): Changed to use isContentElement.
78         * editing/CompositeEditCommand.cpp:
79         (WebCore::CompositeEditCommand::insertNodeAfter): Changed to use isShadowRoot.
80         * editing/htmlediting.cpp:
81         (WebCore::visiblePositionBeforeNode): Ditto.
82         (WebCore::visiblePositionAfterNode): Ditto.
83         * page/DragController.cpp:
84         (WebCore::asFileInput): Ditto.
85         * rendering/RenderTreeAsText.cpp:
86         (WebCore::nodePosition): Ditto.
87
88 2011-06-09  Simon Fraser  <simon.fraser@apple.com>
89
90         Reviewed by Darin Adler.
91
92         Crashes in RenderLayerBacking::paintingGoesToWindow
93         https://bugs.webkit.org/show_bug.cgi?id=61159
94
95         Speculative fix for unreproducible crash that can occur when RenderObject::repaintUsingContainer()
96         finds a repaintContainer that is not the RenderView, but that is also not
97         composited (for unknown reasons), by checking to see if the layer is
98         compositing before using backing(). An assertion remains to try to catch
99         this in debug builds.
100
101         * rendering/RenderLayer.cpp:
102         (WebCore::RenderLayer::setBackingNeedsRepaintInRect):
103
104 2011-06-09  Julien Chaffraix  <jchaffraix@webkit.org>
105
106         Reviewed by Darin Adler.
107
108         WebCore::WebKitCSSKeyframesRuleInternal::nameAttrSetter() - crash
109         https://bugs.webkit.org/show_bug.cgi?id=62384
110
111         Test: fast/css/webkit-keyframes-crash.html
112
113         * css/WebKitCSSKeyframesRule.cpp:
114         (WebCore::WebKitCSSKeyframesRule::setName): stylesheet() is never garanteed
115         to return a non-null pointer. Thus null-check here like the rest of the code.
116
117 2011-06-09  Julien Chaffraix  <jchaffraix@codeaurora.org>
118
119         Reviewed by David Hyatt.
120
121         chrome.dll!WebCore::RenderStyle::fontMetrics ReadAV@NULL (two crashes)
122         https://bugs.webkit.org/show_bug.cgi?id=57756
123
124         Tests: fast/css/fontMetric-border-radius-null-crash.html
125                fast/css/fontMetric-webkit-border-end-width-null-crash.html
126
127         * css/CSSStyleSelector.cpp:
128         (WebCore::CSSStyleSelector::styleForElement): Added a call to Font::update
129         so that our FontFallbackList is allocated if we ever need it when applying our
130         style rules.
131
132 2011-06-09  Cary Clark  <caryclark@google.com>
133
134         Reviewed by Eric Seidel.
135
136         Create local CG context for Mac UI elements when Skia is renderer
137         https://bugs.webkit.org/show_bug.cgi?id=62213
138
139         When building Mac Chrome using Skia as the WebKit renderer,
140         add state to LocalCurrentGraphicsContext to convert the SkCanvas
141         context passed by WebKit into the CGContext needed by UI
142         rendering.
143
144         No new tests.  The define typo in question is
145         not yet enabled, so this change has no functional
146         impact.
147
148         * platform/mac/LocalCurrentGraphicsContext.h:
149         Add SkiaBitLocker to create and release the converted CGContext.
150         Add ContextContainer, a class for Skia to create and release
151         the converted CGContext. If Skia is not used, the class has no effect.
152
153         * platform/mac/LocalCurrentGraphicsContext.mm:
154         (WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
155         When building with Skia, create the CGContext before passing it on.
156
157         (WebCore::LocalCurrentGraphicsContext::cgContext):
158         Get the CGContext from the SkiaBitLocker, or the saved context,
159         as appropriate.
160
161         * rendering/RenderThemeMac.mm:
162         Get the CGContext from Skia conversion or native, as appropriate.
163         Use the LocalCurrentGraphicsContext if there is one. Otherwise,
164         add a ContextContainer to house the SkCanvas to CGContext conversion.
165
166         (WebCore::RenderThemeMac::paintCapsLockIndicator):
167         (WebCore::RenderThemeMac::paintProgressBar):
168         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
169         (WebCore::RenderThemeMac::paintSliderTrack):
170         (WebCore::RenderThemeMac::paintMediaFullscreenButton):
171         (WebCore::RenderThemeMac::paintMediaMuteButton):
172         (WebCore::RenderThemeMac::paintMediaPlayButton):
173         (WebCore::RenderThemeMac::paintMediaSeekBackButton):
174         (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
175         (WebCore::RenderThemeMac::paintMediaSliderTrack):
176         (WebCore::RenderThemeMac::paintMediaSliderThumb):
177         (WebCore::RenderThemeMac::paintMediaRewindButton):
178         (WebCore::RenderThemeMac::paintMediaReturnToRealtimeButton):
179         (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton):
180         (WebCore::RenderThemeMac::paintMediaControlsBackground):
181         (WebCore::RenderThemeMac::paintMediaCurrentTime):
182         (WebCore::RenderThemeMac::paintMediaTimeRemaining):
183         (WebCore::RenderThemeMac::paintMediaVolumeSliderContainer):
184         (WebCore::RenderThemeMac::paintMediaVolumeSliderTrack):
185         (WebCore::RenderThemeMac::paintMediaVolumeSliderThumb):
186
187 2011-06-02  Jer Noble  <jer.noble@apple.com>
188
189         Reviewed by Maciej Stachowiak.
190
191         REGRESSION: Page layout messed up after exiting full screen after video ends at jerryseinfeld.com
192         https://bugs.webkit.org/show_bug.cgi?id=61911
193         <rdar://problem/9523017>
194
195         Test: fullscreen/full-screen-video-offset.html
196
197         When the video element is taken full-screen in the new element full-screen API, return the
198         offset width and height of the placeholder renderer which is filling in for the full-screen
199         element.  To do so, override offsetWidth, Height, Left, and Top from Element.  These are
200         non-virtual functions, so make them virtual.
201
202         * dom/Element.cpp:
203         (WebCore::Element::adjustForLocalZoom): Made into a class-static function.
204         * dom/Element.h: Made offset functions virtual.
205         * html/HTMLMediaElement.cpp:
206         (WebCore::elementPlaceholder): Added; utility function.
207         (WebCore::HTMLMediaElement::offsetLeft): Added; virtual override of the 
208             Element function. Will be called directly via javascript.
209         (WebCore::HTMLMediaElement::offsetTop): Ditto.
210         (WebCore::HTMLMediaElement::offsetWidth): Ditto.
211         (WebCore::HTMLMediaElement::offsetHeight): Ditto.
212         * html/HTMLMediaElement.h:
213
214 2011-06-09  Dave Tapuska  <dtapuska@rim.com>
215
216         Reviewed by Daniel Bates.
217
218         PingLoader destructor could dereference 0 if the Resource
219         Handle creation failed.
220
221         https://bugs.webkit.org/show_bug.cgi?id=62304
222
223         * loader/PingLoader.cpp:
224         (WebCore::PingLoader::~PingLoader):
225
226 2011-06-08  Abhishek Arya  <inferno@chromium.org>
227
228         Reviewed by Ryosuke Niwa.
229
230         Make indexForVisiblePosition and isSelectableElement static.
231         https://bugs.webkit.org/show_bug.cgi?id=62329
232
233         This protects us when converting frame->selection->start() or end()
234         to VisiblePosition which blows away the RenderTextControl from
235         underneath (due to layout update).
236
237         Test: fast/forms/text-control-selection-crash.html
238
239         * accessibility/AccessibilityRenderObject.cpp:
240         (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
241         * rendering/RenderTextControl.cpp:
242         (WebCore::RenderTextControl::selectionStart):
243         (WebCore::RenderTextControl::selectionEnd):
244         (WebCore::RenderTextControl::isSelectableElement):
245         (WebCore::RenderTextControl::indexForVisiblePosition):
246         * rendering/RenderTextControl.h:
247
248 2011-06-09  Ben Murdoch  <benm@google.com>
249
250         Reviewed by Yury Semikhatsky.
251
252         Build break in ScriptProfile.cpp and inspector disabled.
253         https://bugs.webkit.org/show_bug.cgi?id=62373
254
255         No new tests - build fix only.
256
257         * bindings/v8/ScriptProfile.cpp: Add necessary guards.
258         * bindings/v8/ScriptProfile.h: ditto.
259
260 2011-06-09  Vsevolod Vlasov  <vsevik@chromium.org>
261
262         Reviewed by Yury Semikhatsky.
263
264         Web Inspector: Network panel preview tab does not reattach SourceFrame when switching between preview and response tabs.
265         https://bugs.webkit.org/show_bug.cgi?id=62298
266
267         * inspector/front-end/ResourcePreviewView.js:
268         (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown.callback):
269         (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown):
270
271 2011-06-09  Csaba Osztrogonác  <ossy@webkit.org>
272
273         [Qt][Mac] Speculative buildfix after r88286.
274
275         * platform/graphics/IntPoint.h:
276
277 2011-06-09  Mike Lawther  <mikelawther@chromium.org>
278
279         Reviewed by Kent Tamura.
280
281         Parsing issue with -webkit-calc
282         https://bugs.webkit.org/show_bug.cgi?id=62276
283
284         Set the CSSParserString for the calc functions.
285
286         Test: css3/calc/regression-62276.html
287
288         * css/CSSParser.cpp:
289         (WebCore::CSSParser::lex):
290
291 2011-06-09  Robert Hogan  <robert@webkit.org>
292
293         Reviewed by Andreas Kling.
294
295         Teach Qt about window.internals
296         https://bugs.webkit.org/show_bug.cgi?id=61074
297
298         A weakness of the Qt DRT setup is that things like JSContextRef are abstracted
299         away from the QtWebKit API so we need DumpRenderTreeSupportQt to access WebCore internals.
300         Since the window.internals object requires JSContextRef we need to implement it in DumpRenderTreeSupportQt
301         where we can access it. DumpRenderTreeSupportQt cannot be compiled outside Qt's WebCore and as it
302         is our only possible route into the WebCoreTestSupport class neither can the new window.internals plumbing.
303         Likewise we can't put the accessor in WebCoreTestSupport because it would then need to know about QWebFrame
304         and others. The only alternative seems like a compile time guard which we would have to teach the bots about.
305
306         * CodeGenerators.pri:
307         * WebCore.pri:
308         * WebCore.pro:
309
310 2011-06-08  Mikołaj Małecki  <m.malecki@samsung.com>
311
312         Reviewed by Pavel Feldman.
313
314         Web Inspector: Crash by buffer overrun crash when serializing inspector object tree.
315         https://bugs.webkit.org/show_bug.cgi?id=52791
316
317         No new tests. The problem can be reproduced by trying to create InspectorValue
318         from 1.0e-100 and call ->toJSONString() on this.
319
320         * inspector/InspectorValues.cpp:
321         (WebCore::InspectorBasicValue::writeJSON):
322         Added checking the predicted buffer size and choosing exponential format, or
323         eventually "NaN" if the buffer is too small for decimal format.
324
325 2011-06-09  Sheriff Bot  <webkit.review.bot@gmail.com>
326
327         Unreviewed, rolling out r88387.
328         http://trac.webkit.org/changeset/88387
329         https://bugs.webkit.org/show_bug.cgi?id=62368
330
331         New tests introduced in 88387 fail on Leopard,GTK,Qt bots
332         (Requested by Ossy on #webkit).
333
334         * html/canvas/CanvasRenderingContext.cpp:
335         (WebCore::CanvasRenderingContext::checkOrigin):
336         * html/canvas/CanvasRenderingContext.h:
337         * html/canvas/WebGLRenderingContext.cpp:
338         (WebCore::WebGLRenderingContext::readPixels):
339         (WebCore::WebGLRenderingContext::texImage2D):
340         (WebCore::WebGLRenderingContext::videoFrameToImage):
341         (WebCore::WebGLRenderingContext::texSubImage2D):
342         * html/canvas/WebGLRenderingContext.h:
343
344 2011-06-09  Adam Barth  <abarth@webkit.org>
345
346         Reviewed by Eric Seidel.
347
348         Running script from attach can remove elements from the stack of open elements
349         https://bugs.webkit.org/show_bug.cgi?id=62160
350
351         When the tree build runs script synchronously, that script can remove
352         arbitrary elements from the stack of open elements.  We need to hold a
353         reference to |parent| in attach instead of rely upon the reference in
354         the stack of open elements.
355
356         Test: fast/parser/document-write-onload-clear.html
357
358         * html/parser/HTMLConstructionSite.cpp:
359         (WebCore::HTMLConstructionSite::attach):
360
361 2011-06-08  Luke Macpherson   <macpherson@chromium.org>
362
363         Reviewed by Eric Seidel.
364
365         Make CSSPrimitiveValue support cast to EVerticalAlign.
366         https://bugs.webkit.org/show_bug.cgi?id=62356
367
368         No new tests / refactoring only.
369
370         * css/CSSPrimitiveValueMappings.h:
371         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
372         (WebCore::CSSPrimitiveValue::operator EVerticalAlign):
373         * css/CSSStyleSelector.cpp:
374         (WebCore::CSSStyleSelector::applyProperty):
375
376 2011-06-08  Justin Novosad  <junov@chromium.org>
377
378         Reviewed by James Robinson.
379
380         [Chromium] Crash when closing a tab with accelerated 2d canvas
381         https://bugs.webkit.org/show_bug.cgi?id=62324
382         Upon graphics context destruction, it is important to signal skia
383         to abandon all of its resource handles.  This prevents a crash caused
384         by skia attempting to release resources that were in the destroyed
385         graphics context.
386
387         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
388         (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D):
389
390 2011-06-08  James Robinson  <jamesr@chromium.org>
391
392         Reviewed by Darin Fisher.
393
394         REGRESSION(88260): 10-50% performance regression across many page cyclers
395         https://bugs.webkit.org/show_bug.cgi?id=62349
396
397         r88260 fixed a font cache resource leak and lowered the inactive font cache threshold.  The latter caused a
398         significant performance regression across many chromium page cyclers, for example
399         http://build.chromium.org/f/chromium/perf/linux-release-webkit-latest/moz/report.html?history=50&rev=88279.
400
401         This restores the previous inactive font size thresholds to their previous values, but retains the font cleanup
402         logic.
403
404         * platform/graphics/FontCache.cpp:
405
406 2011-06-08  Hayato Ito  <hayato@chromium.org>
407
408         Reviewed by Dimitri Glazkov.
409
410         A forward/backward tab traversal now visits focusable elements in a shadow root.
411         https://bugs.webkit.org/show_bug.cgi?id=61410
412
413         Test: fast/dom/shadow/tab-order-iframe-and-shadow.html
414
415         Like a iframe element, a shadow host becomes a scope of
416         tabindex. That means all descendant elements in a shadow root are
417         skipped if the host node of the shadow root is not focusable.
418
419         The patch doesn't affect HTMLInputElement and HTMLTextAreaElement,
420         which uses a shadow root and do extra works in their focus()
421         method.
422
423         A shadow root's <content> is not considered in this patch.
424         That will be addressed in a following patch.
425
426         * page/FocusController.cpp:
427         (WebCore::shadowRoot):
428         (WebCore::isTreeScopeOwner):
429         (WebCore::FocusController::deepFocusableNode):
430         (WebCore::FocusController::advanceFocusInDocumentOrder):
431         (WebCore::FocusController::findFocusableNodeAcrossTreeScope):
432         (WebCore::FocusController::findFocusableNode):
433         (WebCore::FocusController::nextFocusableNode):
434         (WebCore::FocusController::previousFocusableNode):
435         (WebCore::FocusController::ownerOfTreeScope):
436         * page/FocusController.h:
437
438 2011-06-08  Hayato Ito  <hayato@chromium.org>
439
440         Reviewed by Hajime Morita.
441
442         Makes sure that document.activeElement won't be an element in shadow root.
443
444         https://bugs.webkit.org/show_bug.cgi?id=61413
445
446         Test: fast/dom/shadow/activeelement-should-be-shadowhost.html
447
448         * html/HTMLDocument.cpp:
449         (WebCore::focusedFrameOwnerElement):
450         (WebCore::HTMLDocument::activeElement):
451
452 2011-06-08  Kent Tamura  <tkent@chromium.org>
453
454         Reviewed by Dimitri Glazkov.
455
456         Allow drawing a slider thumb for any nodes.
457         https://bugs.webkit.org/show_bug.cgi?id=62196
458
459         RenderObject::node() should provide various information which is
460         necessary for rendering. We don't need to refer the parent renderer.
461
462         * dom/Node.cpp:
463         (WebCore::Node::focusDe1egate): Added.
464         * dom/Node.h: Added a declaration.
465         * html/shadow/MediaControlElements.cpp:
466         (WebCore::toParentMediaElement):
467           Added an overload of toParentMediaElement() with Node* parameter.
468         * html/shadow/MediaControlElements.h:
469         (WebCore::toParentMediaElement): ditto.
470         * html/shadow/SliderThumbElement.cpp:
471         (WebCore::SliderThumbElement::isEnabledFormControl):
472           Returns the status of the host node.
473         (WebCore::SliderThumbElement::isReadOnlyFormControl): ditto.
474         (WebCore::SliderThumbElement::focusDe1egate):
475           Returns the host node so that RenderTheme::isFocused() returns true.
476         (WebCore::SliderThumbElement::detach): Style nit.
477         (WebCore::SliderThumbElement::hostInput):
478           Make it const because it is called by const functions.
479         * html/shadow/SliderThumbElement.h:
480           - Remove inDragMode()
481           - Update declarations
482         * platform/qt/RenderThemeQt.cpp:
483         (WebCore::RenderThemeQt::paintMediaSliderThumb):
484           Use Node::shadowAncestorNode() instead of RenderObject::parent() to
485           support deeper thumb nodes.
486         * rendering/RenderMediaControlsChromium.cpp:
487         (WebCore::paintMediaSliderThumb): ditto.
488         (WebCore::paintMediaVolumeSliderThumb): Remove isSlider() check.
489         * rendering/RenderSlider.cpp:
490         (WebCore::RenderSlider::inDragMode):
491           SliderThumbElement::inDragMode() was removed, and Node::active() has
492           the same information.
493         * rendering/RenderTheme.cpp:
494         (WebCore::RenderTheme::paint): Remove isSlider() checks.
495         (WebCore::RenderTheme::isFocused): Apply Node::focusDelegate().
496         * rendering/RenderThemeChromiumLinux.cpp:
497         (WebCore::RenderThemeChromiumLinux::paintSliderThumb):
498           isPressed() is enough.
499         * rendering/RenderThemeChromiumWin.cpp:
500           isEnabled(), isFocused(), and isPressed() are enough.
501         (WebCore::RenderThemeChromiumWin::determineSliderThumbState):
502         (WebCore::RenderThemeChromiumWin::determineClassicState):
503         * rendering/RenderThemeMac.mm:
504         (WebCore::RenderThemeMac::paintSliderThumb):
505           - Remove isSlider() check.
506           - Passing 'o' to udpateFooState functions is enough.
507           - isPressed() is enough.
508         * rendering/RenderThemeSafari.cpp:
509         (WebCore::RenderThemeSafari::paintSliderThumb):
510           We don't need special handling anymore.
511         * rendering/RenderThemeWin.cpp:
512         (WebCore::RenderThemeWin::determineSliderThumbState):
513           isEnabled(), isFocused(), and isPressed() are enough.
514
515 2011-06-08  Adam Barth  <abarth@webkit.org>
516
517         Reviewed by Eric Seidel.
518
519         constructTreeFromToken can re-enter parser, causing ASSERTs
520         https://bugs.webkit.org/show_bug.cgi?id=62160
521
522         This patch clears the HTMLToken before constructing the tree from the
523         token, putting the HTMLDocumentParser in a good state to be re-entered.
524
525         Tests: fast/parser/document-write-onload-nesting.html
526                fast/parser/document-write-onload-ordering.html
527
528         * html/parser/HTMLDocumentParser.cpp:
529         (WebCore::HTMLDocumentParser::pumpTokenizer):
530         * html/parser/HTMLToken.h:
531         (WebCore::HTMLToken::isUninitialized):
532         * html/parser/HTMLTreeBuilder.cpp:
533         (WebCore::HTMLTreeBuilder::constructTreeFromToken):
534
535 2011-06-08  Kent Tamura  <tkent@chromium.org>
536
537         Fix Qt build for r88405.
538         https://bugs.webkit.org/show_bug.cgi?id=62208
539
540         * platform/qt/RenderThemeQt.h:
541
542 2011-06-08  Kent Tamura  <tkent@chromium.org>
543
544         Reviewed by Dimitri Glazkov.
545
546         Change the argument of RenderTheme::adjustSliderThumbSize(): RenderObject* -> RenderStyle*
547         https://bugs.webkit.org/show_bug.cgi?id=62208
548
549         Change the argument type of RenderTheme::adjustSliderThumbSize() and
550         RenderMediaControls::adjustMediaSliderThumbSize() from RenderObject* to RenderStyle*.
551
552         Also, each of adjustSliderThumbStyle() overrides calls RenderTheme::
553         adjustSliderThumbStyle() for future changes.
554
555         No new tests. This is a refactoring and should not change any behavior.
556
557         * html/shadow/SliderThumbElement.cpp:
558         (WebCore::RenderSliderThumb::layout): Passing RenderStyle* and remove a FIXME comment.
559         * platform/efl/RenderThemeEfl.cpp:
560         (WebCore::RenderThemeEfl::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
561         * platform/gtk/RenderThemeGtk.cpp:
562         (WebCore::RenderThemeGtk::adjustSliderThumbStyle): ditto.
563         (WebCore::RenderThemeGtk::adjustMediaSliderThumbSize):
564         * platform/gtk/RenderThemeGtk.h:
565         * platform/gtk/RenderThemeGtk2.cpp:
566         (WebCore::RenderThemeGtk::adjustSliderThumbSize):
567         * platform/gtk/RenderThemeGtk3.cpp:
568         (WebCore::RenderThemeGtk::adjustSliderThumbSize):
569         * platform/qt/RenderThemeQt.cpp:
570         (WebCore::RenderThemeQt::adjustSliderThumbStyle): ditto.
571         (WebCore::RenderThemeQt::adjustSliderThumbSize):
572         * rendering/RenderMediaControls.cpp:
573         (WebCore::RenderMediaControls::adjustMediaSliderThumbSize):
574         * rendering/RenderMediaControls.h:
575         * rendering/RenderMediaControlsChromium.cpp:
576         (WebCore::RenderMediaControlsChromium::adjustMediaSliderThumbSize):
577         * rendering/RenderMediaControlsChromium.h:
578         * rendering/RenderSlider.cpp:
579         (WebCore::RenderSlider::layout): Passing RenderStyle* and remove a FIXME comment.
580         * rendering/RenderTheme.cpp:
581         (WebCore::RenderTheme::adjustSliderThumbStyle): Add a comment.
582         (WebCore::RenderTheme::adjustSliderThumbSize):
583         * rendering/RenderTheme.h:
584         * rendering/RenderThemeChromiumLinux.cpp:
585         (WebCore::RenderThemeChromiumLinux::adjustSliderThumbSize):
586         * rendering/RenderThemeChromiumLinux.h:
587         * rendering/RenderThemeChromiumMac.h:
588         * rendering/RenderThemeChromiumMac.mm:
589         (WebCore::RenderThemeChromiumMac::adjustMediaSliderThumbSize):
590         * rendering/RenderThemeChromiumSkia.cpp:
591         (WebCore::RenderThemeChromiumSkia::adjustSliderThumbSize):
592         * rendering/RenderThemeChromiumSkia.h:
593         * rendering/RenderThemeChromiumWin.cpp:
594         (WebCore::RenderThemeChromiumWin::adjustSliderThumbSize):
595         * rendering/RenderThemeChromiumWin.h:
596         * rendering/RenderThemeMac.h:
597         * rendering/RenderThemeMac.mm:
598         (WebCore::RenderThemeMac::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
599         (WebCore::RenderThemeMac::adjustSliderThumbSize):
600         (WebCore::RenderThemeMac::adjustMediaSliderThumbSize):
601         * rendering/RenderThemeSafari.cpp:
602         (WebCore::RenderThemeSafari::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
603         (WebCore::RenderThemeSafari::adjustSliderThumbSize):
604         * rendering/RenderThemeSafari.h:
605         * rendering/RenderThemeWin.cpp:
606         (WebCore::RenderThemeWin::adjustSliderThumbSize):
607         * rendering/RenderThemeWin.h:
608         * rendering/RenderThemeWinCE.cpp:
609         (WebCore::RenderThemeWinCE::adjustSliderThumbSize):
610         * rendering/RenderThemeWinCE.h:
611
612 2011-06-08  Brian Salomon  <bsalomon@google.com>
613
614         Reviewed by James Robinson.
615
616         Avoid always binding FBO 0 implicitly when deleting FBO in DrawingBuffer code because it invalidates Ganesh's cache of the current FBO.
617         https://bugs.webkit.org/show_bug.cgi?id=62318
618
619         Chromium-only crash
620         Failures takes multiple seconds to occur, relying on JS garbage-collection to occur 
621         http://www.hotbazooka.com/privatejoe-large
622
623         * platform/graphics/gpu/DrawingBuffer.cpp:
624         (WebCore::DrawingBuffer::clear):
625
626 2011-06-08  Emil A Eklund  <eae@chromium.org>
627
628         Reviewed by Eric Seidel.
629
630         RenderEmbeddedObject::getReplacementTextGeometry
631         https://bugs.webkit.org/show_bug.cgi?id=62313
632
633         Replace the last use of tx, ty with IntPoint.
634
635         Covered by existing tests.
636
637         * platform/graphics/FloatRect.h:
638         (WebCore::FloatRect::move):
639         (WebCore::FloatRect::moveBy):
640         * rendering/RenderEmbeddedObject.cpp:
641         (WebCore::RenderEmbeddedObject::paintReplaced):
642         (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
643         (WebCore::RenderEmbeddedObject::isInMissingPluginIndicator):
644         * rendering/RenderEmbeddedObject.h:
645
646 2011-06-08  Tim Horton  <timothy_horton@apple.com>
647
648         Reviewed by Ryosuke Niwa.
649
650         Use correct CFURLStorageSessionRef definition on Leopard, as
651         we created an inconsistency in const-ness between
652         WebCoreSystemInterface.h and these two files in the case
653         of Leopard only.
654         https://bugs.webkit.org/show_bug.cgi?id=62223
655
656         * platform/network/ResourceHandle.h:
657         * platform/network/cf/ResourceRequest.h:
658
659 2011-06-08  Sailesh Agrawal  <sail@chromium.org>
660
661         Reviewed by Mihai Parparita.
662
663         Chromium Mac: Enable overlay scrollbars
664         https://bugs.webkit.org/show_bug.cgi?id=59756
665
666         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.
667
668         No new tests, since this code is only enabled on future versions of Mac OS X.
669
670         * platform/chromium/ScrollAnimatorChromiumMac.mm: All changes to this file except in scroll() were to swap #if USE(WK_SCROLLBAR_PAINTER) with runtime checks.
671         (WebCore::ScrollAnimatorChromiumMac::ScrollAnimatorChromiumMac):
672         (WebCore::ScrollAnimatorChromiumMac::~ScrollAnimatorChromiumMac):
673         (WebCore::ScrollAnimatorChromiumMac::notityPositionChanged):
674         (WebCore::ScrollAnimatorChromiumMac::contentAreaWillPaint):
675         (WebCore::ScrollAnimatorChromiumMac::mouseEnteredContentArea):
676         (WebCore::ScrollAnimatorChromiumMac::mouseExitedContentArea):
677         (WebCore::ScrollAnimatorChromiumMac::mouseMovedInContentArea):
678         (WebCore::ScrollAnimatorChromiumMac::willStartLiveResize):
679         (WebCore::ScrollAnimatorChromiumMac::contentsResized):
680         (WebCore::ScrollAnimatorChromiumMac::willEndLiveResize):
681         (WebCore::ScrollAnimatorChromiumMac::contentAreaDidShow):
682         (WebCore::ScrollAnimatorChromiumMac::contentAreaDidHide):
683         (WebCore::ScrollAnimatorChromiumMac::didBeginScrollGesture):
684         (WebCore::ScrollAnimatorChromiumMac::didEndScrollGesture):
685         (WebCore::ScrollAnimatorChromiumMac::didAddVerticalScrollbar):
686         (WebCore::ScrollAnimatorChromiumMac::willRemoveVerticalScrollbar):
687         (WebCore::ScrollAnimatorChromiumMac::didAddHorizontalScrollbar):
688         (WebCore::ScrollAnimatorChromiumMac::willRemoveHorizontalScrollbar):
689         (WebCore::ScrollAnimatorChromiumMac::cancelAnimations):
690         * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.mm:
691         (preferredScrollerStyle): Disabled overlay scrollbar styles due to trailing artifacts.
692         (wkScrollbarPainterPaint): Fixed a problem where the scrollbar track wasn't being drawn.
693         (wkScrollbarPainterKnobRect): Implemented a previously unimplemented function.
694         (wkSetScrollbarPainterKnobStyle): Implemented a function that's now supported by the latest Mac OS X seeds.
695         (isScrollbarOverlayAPIAvailable): Enabled new scrollbar code.
696         * platform/chromium/ScrollbarThemeChromiumMac.h:
697         * platform/chromium/ScrollbarThemeChromiumMac.mm: Sync with ScrollbarThemeMac.mm.
698         (WebCore::scrollbarMap):
699         (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
700         (WebCore::updateArrowPlacement):
701         (WebCore::ScrollbarThemeChromiumMac::registerScrollbar):
702         (WebCore::ScrollbarThemeChromiumMac::unregisterScrollbar):
703         (WebCore::ScrollbarThemeChromiumMac::setNewPainterForScrollbar):
704         (WebCore::ScrollbarThemeChromiumMac::painterForScrollbar):
705         (WebCore::ScrollbarThemeChromiumMac::scrollbarThickness):
706         (WebCore::ScrollbarThemeChromiumMac::usesOverlayScrollbars):
707         (WebCore::ScrollbarThemeChromiumMac::hasButtons):
708         (WebCore::ScrollbarThemeChromiumMac::hasThumb):
709         (WebCore::buttonRepaintRect):
710         (WebCore::ScrollbarThemeChromiumMac::minimumThumbLength):
711         (WebCore::ScrollbarThemeChromiumMac::shouldDragDocumentInsteadOfThumb):
712         (WebCore::toScrollbarPainterKnobStyle):
713         (WebCore::ScrollbarThemeChromiumMac::paint):
714
715 2011-06-06  Nate Chapin  <japhet@chromium.org>
716
717         Reviewed by Adam Barth.
718
719         Remove all knowledge of CachedResourceRequests from
720         CachedResourceLoader. This puts the full burden of
721         canceling these requests on DocumentLoader (via
722         SubresourceLoader), and makes a CachedResourceRequest
723         an OwnPtr in CachedResource.
724
725         https://bugs.webkit.org/show_bug.cgi?id=62308
726
727         * loader/FrameLoader.cpp:
728         (WebCore::FrameLoader::stopLoading):
729         * loader/cache/CachedResource.cpp:
730         (WebCore::CachedResource::CachedResource):
731         (WebCore::CachedResource::load):
732         (WebCore::CachedResource::stopLoading):
733         * loader/cache/CachedResource.h:
734         * loader/cache/CachedResourceLoader.cpp:
735         (WebCore::CachedResourceLoader::~CachedResourceLoader):
736         (WebCore::CachedResourceLoader::loadDone):
737         * loader/cache/CachedResourceLoader.h:
738         * loader/cache/CachedResourceRequest.cpp:
739         (WebCore::CachedResourceRequest::CachedResourceRequest):
740         (WebCore::CachedResourceRequest::~CachedResourceRequest):
741         (WebCore::CachedResourceRequest::load):
742         (WebCore::CachedResourceRequest::didFinishLoading):
743         (WebCore::CachedResourceRequest::didFail):
744         (WebCore::CachedResourceRequest::didReceiveResponse):
745         (WebCore::CachedResourceRequest::end):
746         * loader/cache/CachedResourceRequest.h:
747
748 2011-06-08  Mike Reed  <reed@google.com>
749
750         Reviewed by James Robinson.
751
752         [Skia] check for null-shader from gradient factory
753         https://bugs.webkit.org/show_bug.cgi?id=62319
754
755         * platform/graphics/skia/GradientSkia.cpp:
756         (WebCore::Gradient::platformDestroy):
757         (WebCore::Gradient::platformGradient):
758
759 2011-06-08  Kenneth Russell  <kbr@google.com>
760
761         Reviewed by Adam Barth.
762
763         Disallow use of cross-domain media (images, video) in WebGL
764         https://bugs.webkit.org/show_bug.cgi?id=62257
765
766         Updated WebGL implementation to track recent spec updates in this area.
767
768         Tests: http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html
769                http/tests/security/webgl-remote-read-remote-image-allowed.html
770                http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html
771
772         * html/canvas/CanvasRenderingContext.cpp:
773         (WebCore::CanvasRenderingContext::wouldTaintOrigin):
774         (WebCore::CanvasRenderingContext::checkOrigin):
775         * html/canvas/CanvasRenderingContext.h:
776         (WebCore::CanvasRenderingContext::checkOrigin):
777         * html/canvas/WebGLRenderingContext.cpp:
778         (WebCore::WebGLRenderingContext::readPixels):
779         (WebCore::WebGLRenderingContext::texImage2D):
780         (WebCore::WebGLRenderingContext::videoFrameToImage):
781         (WebCore::WebGLRenderingContext::texSubImage2D):
782         * html/canvas/WebGLRenderingContext.h:
783
784 2011-06-08  John Bauman  <jbauman@chromium.org>
785
786         Reviewed by James Robinson.
787
788         Only draw portions of tiles in contentRect
789         https://bugs.webkit.org/show_bug.cgi?id=62243
790
791         Old garbage data can remain in tiles, so make sure to draw only those
792         portions that are supposed to be drawn.
793
794         Test: compositing/repaint/shrink-layer.html
795
796         * platform/graphics/chromium/LayerTilerChromium.cpp:
797         (WebCore::LayerTilerChromium::draw):
798
799 2011-06-08  Emil A Eklund  <eae@chromium.org>
800
801         Reviewed by Eric Seidel.
802
803         Convert RenderBlock::isPointInOverflowControl to IntPoint
804         https://bugs.webkit.org/show_bug.cgi?id=62312
805
806         Covered by existing tests.
807
808         * rendering/RenderBlock.cpp:
809         (WebCore::RenderBlock::isPointInOverflowControl):
810         (WebCore::RenderBlock::nodeAtPoint):
811         * rendering/RenderBlock.h:
812         * rendering/RenderListBox.cpp:
813         (WebCore::RenderListBox::isPointInOverflowControl):
814         * rendering/RenderListBox.h:
815
816 2011-06-08  James Simonsen  <simonjam@chromium.org>
817
818         Reviewed by Tony Gentilcore.
819
820         Fix clang issue, virtual function const mismatch
821         https://bugs.webkit.org/show_bug.cgi?id=62307
822
823         No new tests. Built with clang & ran layout tests.
824
825         * page/MediaStreamFrameController.h:
826         (WebCore::MediaStreamFrameController::GenericClient::isGenericClient):
827
828 2011-06-08  Chris Rogers  <crogers@google.com>
829
830         Reviewed by Kenneth Russell.
831
832         Implement BiquadFilterNode for filter types: LOWPASS, HIGHPASS, BANDPASS, LOWSHELF, HIGHSHELF, PEAKING, NOTCH, ALLPASS
833         https://bugs.webkit.org/show_bug.cgi?id=62078
834
835         No new tests since audio API is not yet implemented.
836
837         * DerivedSources.make:
838         * WebCore.gypi:
839         * WebCore.xcodeproj/project.pbxproj:
840         * platform/audio/Biquad.cpp:
841         (WebCore::Biquad::Biquad):
842         (WebCore::Biquad::reset):
843         (WebCore::Biquad::setLowpassParams):
844         (WebCore::Biquad::setHighpassParams):
845         (WebCore::Biquad::setNormalizedCoefficients):
846         (WebCore::Biquad::setLowShelfParams):
847         (WebCore::Biquad::setHighShelfParams):
848         (WebCore::Biquad::setPeakingParams):
849         (WebCore::Biquad::setAllpassParams):
850         (WebCore::Biquad::setNotchParams):
851         (WebCore::Biquad::setBandpassParams):
852         (WebCore::Biquad::setZeroPolePairs):
853         (WebCore::Biquad::setAllpassPole):
854         * platform/audio/Biquad.h:
855         * webaudio/AudioContext.cpp:
856         (WebCore::AudioContext::createBiquadFilter):
857         (WebCore::AudioContext::createLowPass2Filter):
858         (WebCore::AudioContext::createHighPass2Filter):
859         * webaudio/AudioContext.h:
860         * webaudio/AudioContext.idl:
861         * webaudio/AudioNode.h:
862         * webaudio/BiquadDSPKernel.cpp:
863         (WebCore::BiquadDSPKernel::process):
864         * webaudio/BiquadFilterNode.cpp: Added.
865         (WebCore::BiquadFilterNode::BiquadFilterNode):
866         * webaudio/BiquadFilterNode.h: Added.
867         (WebCore::BiquadFilterNode::create):
868         (WebCore::BiquadFilterNode::type):
869         (WebCore::BiquadFilterNode::setType):
870         (WebCore::BiquadFilterNode::frequency):
871         (WebCore::BiquadFilterNode::q):
872         (WebCore::BiquadFilterNode::gain):
873         (WebCore::BiquadFilterNode::biquadProcessor):
874         * webaudio/BiquadFilterNode.idl: Added.
875         * webaudio/BiquadProcessor.cpp:
876         (WebCore::BiquadProcessor::BiquadProcessor):
877         * webaudio/BiquadProcessor.h:
878         (WebCore::BiquadProcessor::setType):
879         * webaudio/HighPass2FilterNode.cpp:
880         (WebCore::HighPass2FilterNode::HighPass2FilterNode):
881         * webaudio/LowPass2FilterNode.cpp:
882         (WebCore::LowPass2FilterNode::LowPass2FilterNode):
883
884 2011-06-08  No'am Rosenthal  <noam.rosenthal@nokia.com>
885
886         Reviewed by Kenneth Rohde Christiansen.
887
888         WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
889         https://bugs.webkit.org/show_bug.cgi?id=61694
890
891         No new tests, code path is not activated yet.
892
893         * WebCore.xcodeproj/project.pbxproj: Changed the TransformOperation subclassed from "project" to "private"
894
895 2011-06-08  Tom Sepez  <tsepez@chromium.org>
896
897         Reviewed by Adam Barth.
898
899         Cause checks for insecure content blocking policy to callback to client.
900         https://bugs.webkit.org/show_bug.cgi?id=61946
901         Tests: platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-allowed.html
902                platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-blocked.html
903                platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-allowed.html
904                platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-blocked.html
905
906         * loader/FrameLoader.cpp:
907         (WebCore::FrameLoader::checkIfDisplayInsecureContent):
908         (WebCore::FrameLoader::checkIfRunInsecureContent):
909         * loader/FrameLoaderClient.h:
910         (WebCore::FrameLoaderClient::allowDisplayingInsecureContent):
911         (WebCore::FrameLoaderClient::allowRunningInsecureContent):
912
913 2011-06-08  Kevin Ollivier  <kevino@theolliviers.com>
914
915         [wx] Build fix after introduction of FontCache::ShouldRetain
916
917         * platform/graphics/wx/FontCacheWx.cpp:
918         (WebCore::FontCache::getFontDataForCharacters):
919
920 2011-06-08  Sheriff Bot  <webkit.review.bot@gmail.com>
921
922         Unreviewed, rolling out r88365.
923         http://trac.webkit.org/changeset/88365
924         https://bugs.webkit.org/show_bug.cgi?id=62301
925
926         windows bots broken (Requested by loislo_ on #webkit).
927
928         * inspector/InspectorValues.cpp:
929         (WebCore::InspectorBasicValue::writeJSON):
930
931 2011-06-08  Mikołaj Małecki  <m.malecki@samsung.com>
932
933         Reviewed by Pavel Feldman.
934
935         Web Inspector: Crash by buffer overrun crash when serializing inspector object tree.
936         https://bugs.webkit.org/show_bug.cgi?id=52791
937
938         No new tests. The problem can be reproduced by trying to create InspectorValue
939         from 1.0e-100 and call ->toJSONString() on this.
940
941         * inspector/InspectorValues.cpp:
942         (WebCore::InspectorBasicValue::writeJSON):
943         Added checking the predicted buffer size and choosing exponential format, or
944         eventually "NaN" if the buffer is too small for decimal format.
945
946 2011-06-08  Nico Weber  <thakis@chromium.org>
947
948         Reviewed by Darin Adler.
949
950         Fix a ?: precedence error in ScrollbarThemeMac and ScrollbarThemeChromium
951         https://bugs.webkit.org/show_bug.cgi?id=62295
952
953         This was found by a new warning recently added to clang's -Wparentheses
954
955         * platform/chromium/ScrollbarThemeChromiumMac.mm:
956         (WebCore::ScrollbarThemeChromiumMac::backButtonRect):
957         * platform/mac/ScrollbarThemeMac.mm:
958         (WebCore::ScrollbarThemeMac::backButtonRect):
959
960 2011-06-08  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
961
962         Reviewed by Andreas Kling.
963
964         [Qt] Remove dead code from our JSC bridge
965         https://bugs.webkit.org/show_bug.cgi?id=62287
966
967         The m_defaultMethod member is not used since r36848 and QtMethod
968         was replaced by QtRuntimeMethod and subclasses in r29729.
969
970         * bridge/qt/qt_instance.cpp:
971         (JSC::Bindings::QtInstance::removeCachedMethod):
972         (JSC::Bindings::QtInstance::visitAggregate):
973         * bridge/qt/qt_instance.h:
974         * bridge/qt/qt_runtime.h:
975
976 2011-06-08  Ryan Sleevi  <rsleevi@chromium.org>
977
978         Reviewed by Tony Chang.
979
980         Suppress C++0x compat warnings when compiling Chromium port with GCC 4.6
981
982         Compiling Chromium port under GCC 4.6 produces warnings about nullptr
983         https://bugs.webkit.org/show_bug.cgi?id=62242
984
985         * WebCore.gyp/WebCore.gyp:
986
987 2011-05-25  Xiaomei Ji  <xji@chromium.org>
988
989         Reviewed by Ryosuke Niwa.
990
991         --webkit-visual-word does not work well in words separated by multiple spaces
992         https://bugs.webkit.org/show_bug.cgi?id=61324
993
994         Remove positionBeforeNextWord and positionAfterPreviousWord short-cuts. They try to find the
995         right word boundary (before the space or after the space) by using previousWordPosition and
996         nextWordPosition. But they assume words are separated by single space and are not correct 
997         for words separated by multiple spaces and words not separated by space.
998
999         Consider positionBeforeNextWord() for example, 
1000
1001         First, it checks whether the current position is after the current word by checking current
1002         position's previousWordPosition's nextWordPosition is the same as current position, which is
1003         wrong for words separated by multiple spaces. For example, given words A and B separated by 
1004         3 continuous spaces "A   B", position "A|", "A |", and "A  |" should all be considered as 
1005         position after current word. But for position "A |", its previousWordPosition's 
1006         nextWordPosition is position "A|", which is different from its current position, so the
1007         current position is not considered as a position after current word, consequently,
1008         instead of returning the right position as "A   |B", positionBeforeNextWord returns the
1009         position before next next word, as "A   B |C". Similar happens for position "A  |".
1010
1011         Second, given 3 Chinese words "ABC" that are not segmented by space, when cursor is at 
1012         "A|BC", positionBeforeNextWord() returns the same position after calling current position's
1013         nextWordPosition's previousWordPosition. It should returns position "AB|C".
1014
1015         For those cases, we will have to collect all the word breaks inside the box and look for
1016         the one at left or right of current position.
1017
1018         * editing/visible_units.cpp:
1019         (WebCore::leftWordPosition):
1020         (WebCore::rightWordPosition):
1021
1022 2011-06-08  Greg Simon  <gregsimon@chromium.org>
1023
1024         Reviewed by Dimitri Glazkov.
1025
1026         Control Indexeddb backends from LayoutTestController
1027         https://bugs.webkit.org/show_bug.cgi?id=61000
1028
1029         Test: storage/indexeddb/migrate-basics.html
1030
1031         * storage/IDBBackingStore.h:
1032         * storage/IDBFactoryBackendImpl.cpp:
1033         (WebCore::IDBFactoryBackendImpl::open):
1034         (WebCore::IDBFactoryBackendImpl::migrate):
1035         * storage/IDBFactoryBackendImpl.h:
1036         * storage/IDBFactoryBackendInterface.h:
1037         * storage/IDBLevelDBBackingStore.cpp:
1038         (WebCore::IDBLevelDBBackingStore::backingStoreExists):
1039         * storage/IDBLevelDBBackingStore.h:
1040         (WebCore::IDBLevelDBBackingStore::backingStoreType):
1041         * storage/IDBSQLiteBackingStore.cpp:
1042         (WebCore::IDBSQLiteBackingStore::backingStoreExists):
1043         * storage/IDBSQLiteBackingStore.h:
1044         (WebCore::IDBSQLiteBackingStore::backingStoreType):
1045
1046 2011-06-08  Dmitry Lomov  <dslomov@google.com>
1047
1048         Reviewed by Adam Barth.
1049
1050         https://bugs.webkit.org/show_bug.cgi?id=62164
1051         Remove "multi-threaded" logic in V8 DOMData, DOMDataStore and friends
1052         This functionality is untested and unused:
1053         This is an old code from Lockers-based implementation of WebWorkers in
1054         V8 bindings, to make sure that DOM objects are released on the right thread
1055         even though GC could have happened on any thread. It is currently unused (since
1056         current model is one worker per process) and is being removed because new implementation
1057         of WebWorkers will be using V8 isolates.
1058
1059         * WebCore.gypi:
1060         * WebCore.pro:
1061         * bindings/v8/ChildThreadDOMData.cpp: Removed.
1062         * bindings/v8/ChildThreadDOMData.h: Removed.
1063         * bindings/v8/DOMData.cpp:
1064         (WebCore::DOMData::DOMData):
1065         (WebCore::DOMData::getCurrent):
1066         (WebCore::DOMData::getMainThreadStore):
1067         * bindings/v8/DOMData.h:
1068         (WebCore::DOMData::getStore):
1069         (WebCore::DOMData::getCurrentMainThreadStore):
1070         (WebCore::DOMData::handleWeakObject):
1071         * bindings/v8/DOMDataStore.cpp:
1072         (WebCore::DOMDataStore::DOMDataStore):
1073         (WebCore::DOMDataStore::~DOMDataStore):
1074         (WebCore::DOMDataStore::weakNodeCallback):
1075         * bindings/v8/DOMDataStore.h:
1076         * bindings/v8/MainThreadDOMData.cpp: Removed.
1077         * bindings/v8/MainThreadDOMData.h: Removed.
1078         * bindings/v8/V8DOMMap.cpp:
1079         (WebCore::getDOMDataStore):
1080         (WebCore::removeAllDOMObjects):
1081         (WebCore::visitDOMNodes):
1082         (WebCore::visitDOMObjects):
1083         (WebCore::visitActiveDOMObjects):
1084         (WebCore::visitDOMSVGElementInstances):
1085         * bindings/v8/V8DOMMap.h:
1086         * bindings/v8/V8GCController.cpp:
1087         (WebCore::V8GCController::gcPrologue):
1088         (WebCore::V8GCController::gcEpilogue):
1089         * bindings/v8/WorkerScriptController.cpp:
1090         (WebCore::WorkerScriptController::~WorkerScriptController):
1091
1092 2011-06-08  Yael Aharon  <yael.aharon@nokia.com>
1093
1094         Reviewed by Andreas Kling.
1095
1096         [Qt] Build fix for building QtWebKit inside of Qt.
1097         https://bugs.webkit.org/show_bug.cgi?id=62280
1098
1099         Remove CONFIG=staticlib, because it causes the configure script to add -lwebcore
1100         into QtWebKit.prl.
1101
1102         No new tests, as this is just a build fix.
1103
1104         * WebCore.pri:
1105
1106 2011-06-08  Vsevolod Vlasov  <vsevik@chromium.org>
1107
1108         Reviewed by Pavel Feldman.
1109
1110         Web Inspector: Render non-document HTML resources as HTML
1111         https://bugs.webkit.org/show_bug.cgi?id=58886
1112
1113         * English.lproj/localizedStrings.js:
1114         * WebCore.gypi:
1115         * WebCore.vcproj/WebCore.vcproj:
1116         * inspector/front-end/NetworkItemView.js:
1117         (WebInspector.NetworkItemView):
1118         * inspector/front-end/Resource.js:
1119         (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
1120         (WebInspector.Resource.prototype.hasErrorStatusCode):
1121         * inspector/front-end/ResourceHTMLView.js: Added.
1122         (WebInspector.ResourceHTMLView):
1123         (WebInspector.ResourceHTMLView.prototype.hasContent):
1124         (WebInspector.ResourceHTMLView.prototype.show):
1125         (WebInspector.ResourceHTMLView.prototype.hide):
1126         (WebInspector.ResourceHTMLView.prototype._createIFrame):
1127         * inspector/front-end/ResourcePreviewView.js: Added.
1128         (WebInspector.ResourcePreviewView):
1129         (WebInspector.ResourcePreviewView.prototype.hasContent):
1130         (WebInspector.ResourcePreviewView.prototype.show):
1131         (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown.callback):
1132         (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown):
1133         (WebInspector.ResourcePreviewView.prototype._createInnerView):
1134         * inspector/front-end/Settings.js:
1135         (WebInspector.Settings):
1136         * inspector/front-end/WebKit.qrc:
1137         * inspector/front-end/inspector.css:
1138         (.resource-view.html iframe):
1139         * inspector/front-end/inspector.html:
1140
1141 2011-05-18  Pavel Podivilov  <podivilov@chromium.org>
1142
1143         Reviewed by Yury Semikhatsky.
1144
1145         Web Inspector: hide script location to ui location conversion details from ScriptsPanel.
1146         https://bugs.webkit.org/show_bug.cgi?id=61035
1147
1148         * inspector/front-end/DebuggerPresentationModel.js:
1149         (WebInspector.DebuggerPresentationModel.prototype.sourceFileForScriptURL):
1150         (WebInspector.DebuggerPresentationModel.prototype.scriptLocationToUILocation.didRequestSourceMapping):
1151         (WebInspector.DebuggerPresentationModel.prototype.scriptLocationToUILocation):
1152         * inspector/front-end/ScriptsPanel.js:
1153         (WebInspector.ScriptsPanel.prototype.showAnchorLocation.didGetUILocation):
1154         (WebInspector.ScriptsPanel.prototype.showAnchorLocation):
1155
1156 2011-06-08  Tommy Widenflycht  <tommyw@google.com>
1157
1158         Reviewed by Tony Gentilcore.
1159
1160         StreamEvent
1161
1162         Media Stream PeerConnection API: adding StreamEvent class
1163         https://bugs.webkit.org/show_bug.cgi?id=61537
1164
1165         Tests for the Media Stream API will be provided by the bug 56587.
1166
1167         * CMakeLists.txt:
1168         * CodeGenerators.pri:
1169         * DerivedSources.cpp:
1170         * DerivedSources.make:
1171         * GNUmakefile.list.am:
1172         * WebCore.gypi:
1173         * WebCore.pro:
1174         * WebCore.vcproj/WebCore.vcproj:
1175         * WebCore.xcodeproj/project.pbxproj:
1176         * bindings/js/JSEventCustom.cpp:
1177         (WebCore::toJS):
1178         * bindings/v8/custom/V8EventCustom.cpp:
1179         (WebCore::toV8):
1180         * dom/DOMAllInOne.cpp:
1181         * dom/Event.cpp:
1182         (WebCore::Event::isStreamEvent):
1183         * dom/Event.h:
1184         * dom/StreamEvent.cpp: Added.
1185         (WebCore::StreamEvent::create):
1186         (WebCore::StreamEvent::StreamEvent):
1187         (WebCore::StreamEvent::~StreamEvent):
1188         (WebCore::StreamEvent::initStreamEvent):
1189         (WebCore::StreamEvent::stream):
1190         * dom/StreamEvent.h: Added.
1191         (WebCore::StreamEvent::isStreamEvent):
1192         * dom/StreamEvent.idl: Added.
1193
1194 2011-06-08  Tommy Widenflycht  <tommyw@google.com>
1195
1196         Reviewed by Tony Gentilcore.
1197
1198         Media Stream API: integrate the Track List objects into the existing code.
1199         https://bugs.webkit.org/show_bug.cgi?id=60205
1200
1201         Tests for the Media Stream API will be provided by the bug 56587.
1202
1203         * dom/ExclusiveTrackList.cpp:
1204         (WebCore::ExclusiveTrackList::select):
1205         (WebCore::ExclusiveTrackList::trackFailed):
1206         * dom/ExclusiveTrackList.h:
1207         * dom/GeneratedStream.cpp:
1208         (WebCore::GeneratedStream::create):
1209         (WebCore::GeneratedStream::GeneratedStream):
1210         (WebCore::GeneratedStream::streamEnded):
1211         (WebCore::GeneratedStream::audioTracks):
1212         (WebCore::GeneratedStream::videoTracks):
1213         (WebCore::GeneratedStream::stop):
1214         * dom/GeneratedStream.h:
1215         * dom/GeneratedStream.idl:
1216         * dom/MultipleTrackList.cpp:
1217         (WebCore::MultipleTrackList::trackFailed):
1218         (WebCore::MultipleTrackList::enable):
1219         (WebCore::MultipleTrackList::disable):
1220         * dom/MultipleTrackList.h:
1221         * dom/Stream.h:
1222         * dom/TrackList.cpp:
1223         (WebCore::TrackList::clear):
1224         (WebCore::TrackList::associateStream):
1225         (WebCore::TrackList::associatedStreamLabel):
1226         (WebCore::TrackList::trackFailed):
1227         (WebCore::TrackList::scriptExecutionContext):
1228         * dom/TrackList.h:
1229         * page/MediaStreamClient.h:
1230         * page/MediaStreamController.cpp:
1231         (WebCore::MediaStreamController::enableAudioTrack):
1232         (WebCore::MediaStreamController::disableAudioTrack):
1233         (WebCore::MediaStreamController::selectVideoTrack):
1234         (WebCore::MediaStreamController::streamGenerated):
1235         (WebCore::MediaStreamController::audioTrackFailed):
1236         (WebCore::MediaStreamController::videoTrackFailed):
1237         * page/MediaStreamController.h:
1238         * page/MediaStreamFrameController.cpp:
1239         (WebCore::MediaStreamFrameController::unregister):
1240         (WebCore::MediaStreamFrameController::enterDetachedState):
1241         (WebCore::MediaStreamFrameController::disconnectFrame):
1242         (WebCore::MediaStreamFrameController::enableAudioTrack):
1243         (WebCore::MediaStreamFrameController::disableAudioTrack):
1244         (WebCore::MediaStreamFrameController::selectVideoTrack):
1245         (WebCore::MediaStreamFrameController::streamGenerated):
1246         (WebCore::MediaStreamFrameController::audioTrackFailed):
1247         (WebCore::MediaStreamFrameController::videoTrackFailed):
1248         * page/MediaStreamFrameController.h:
1249         (WebCore::MediaStreamFrameController::ClientBase::isGenericClient):
1250         (WebCore::MediaStreamFrameController::GenericClient::GenericClient):
1251         (WebCore::MediaStreamFrameController::GenericClient::~GenericClient):
1252         (WebCore::MediaStreamFrameController::GenericClient::isGenericClient):
1253         (WebCore::MediaStreamFrameController::GenericClient::unregister):
1254
1255 2011-06-08  Pavel Podivilov  <podivilov@chromium.org>
1256
1257         Reviewed by Yury Semikhatsky.
1258
1259         Web Inspector: [REGRESSION] breakpoints are not persisted.
1260         https://bugs.webkit.org/show_bug.cgi?id=62273
1261
1262         * inspector/front-end/Settings.js:
1263
1264 2011-06-08  Alexander Pavlov  <apavlov@chromium.org>
1265
1266         Reviewed by Yury Semikhatsky.
1267
1268         Web Inspector: node selection is slow in the Elements panel.
1269         https://bugs.webkit.org/show_bug.cgi?id=60813
1270
1271         Schedule full style updates rather than request all node styles from the backend immediately.
1272
1273         * inspector/front-end/StylesSidebarPane.js:
1274         (WebInspector.StylesSidebarPane.prototype.update.reloadAllStyles):
1275         (WebInspector.StylesSidebarPane.prototype.update):
1276
1277 2011-06-08  Andreas Kling  <andreas.kling@nokia.com>
1278
1279         Reviewed by Laszlo Gombos.
1280
1281         [Symbian] Float{32,64}Array and Int16Array fail to build.
1282         https://bugs.webkit.org/show_bug.cgi?id=62219
1283
1284         For some reason, RVCT 2.x is moaning about "class member designated by
1285         a using-declaration must be visible in a direct base class".
1286         Apply same fix as r69122 and r76592.
1287
1288         * html/canvas/Float32Array.h:
1289         (WebCore::Float32Array::set):
1290         * html/canvas/Float64Array.h:
1291         (WebCore::Float64Array::set):
1292         * html/canvas/Int16Array.h:
1293         (WebCore::Int16Array::set):
1294
1295 2011-06-08  Syed Idris Shah  <syed.idris-shah@nokia.com>
1296
1297         Reviewed by Andreas Kling.
1298
1299         [Qt] GL_POINT_SPRITE and GL_VERTEX_PROGRAM_POINT_SIZE should be enabled for desktop WebGL
1300         https://bugs.webkit.org/show_bug.cgi?id=61945
1301
1302         For OpenGL ES we do not need these features. 
1303         These features are available via shaders in OpenGL ES. But for desktop WebGL using QtWebKit they should be enabled.
1304
1305         LayoutTests/fast/canvas/webgl/point-size.html
1306
1307         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1308         (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
1309
1310 2011-06-08  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1311
1312         Unreviewed. Fix style error.
1313
1314         * platform/efl/RenderThemeEfl.cpp:
1315         * platform/efl/RenderThemeEfl.h:
1316
1317 2011-06-08  Hironori Bono  <hbono@chromium.org>
1318
1319         Reviewed by Brent Fulgham.
1320
1321         Add SpellCheck API
1322         https://bugs.webkit.org/show_bug.cgi?id=59693
1323
1324         This change adds two SpellCheck API functions (addSpellcheckRange and
1325         removeSpellcheckRange) and one attribute (spellcheckRange) discussed in
1326         the public-webapps ML. This change is currently available only on Chromium.
1327
1328         Tests: editing/spelling/spellcheck-api-pixel.html
1329                editing/spelling/spellcheck-api.html
1330
1331         * WebCore.gypi:
1332         * bindings/generic/RuntimeEnabledFeatures.cpp:
1333         * bindings/generic/RuntimeEnabledFeatures.h:
1334         (WebCore::RuntimeEnabledFeatures::spellCheckAPIEnabled):
1335         (WebCore::RuntimeEnabledFeatures::setSpellCheckAPIEnabled):
1336         * dom/DocumentMarker.h:
1337         (WebCore::DocumentMarker::length):
1338         * dom/DocumentMarkerController.cpp:
1339         (WebCore::DocumentMarkerController::userSpellingMarkersForNode):
1340         (WebCore::DocumentMarkerController::addUserSpellingMarker):
1341         (WebCore::DocumentMarkerController::removeUserSpellingMarker):
1342         (WebCore::DocumentMarkerController::userSpellingNode):
1343         * dom/DocumentMarkerController.h:
1344         * html/HTMLDivElement.cpp:
1345         (WebCore::HTMLDivElement::spellcheckRanges):
1346         (WebCore::HTMLDivElement::addSpellcheckRange):
1347         (WebCore::HTMLDivElement::removeSpellcheckRange):
1348         * html/HTMLDivElement.h:
1349         * html/HTMLDivElement.idl:
1350         * html/HTMLInputElement.cpp:
1351         (WebCore::HTMLInputElement::spellcheckRanges):
1352         (WebCore::HTMLInputElement::addSpellcheckRange):
1353         (WebCore::HTMLInputElement::removeSpellcheckRange):
1354         * html/HTMLInputElement.h:
1355         * html/HTMLInputElement.idl:
1356         * html/HTMLTextAreaElement.cpp:
1357         (WebCore::HTMLTextAreaElement::spellcheckRanges):
1358         (WebCore::HTMLTextAreaElement::addSpellcheckRange):
1359         (WebCore::HTMLTextAreaElement::removeSpellcheckRange):
1360         * html/HTMLTextAreaElement.h:
1361         * html/HTMLTextAreaElement.idl:
1362         * html/SpellcheckRange.cpp: Added.
1363         (WebCore::SpellcheckRange::SpellcheckRange):
1364         (WebCore::SpellcheckRange::~SpellcheckRange):
1365         * html/SpellcheckRange.h: Added.
1366         (WebCore::SpellcheckRange::create):
1367         (WebCore::SpellcheckRange::start):
1368         (WebCore::SpellcheckRange::length):
1369         (WebCore::SpellcheckRange::suggestions):
1370         (WebCore::SpellcheckRange::options):
1371         * html/SpellcheckRange.idl: Added.
1372         * html/SpellcheckRangeList.cpp: Added.
1373         (WebCore::SpellcheckRangeList::SpellcheckRangeList):
1374         (WebCore::SpellcheckRangeList::~SpellcheckRangeList):
1375         (WebCore::SpellcheckRangeList::item):
1376         * html/SpellcheckRangeList.h: Added.
1377         (WebCore::SpellcheckRangeList::create):
1378         (WebCore::SpellcheckRangeList::isEmpty):
1379         (WebCore::SpellcheckRangeList::clear):
1380         (WebCore::SpellcheckRangeList::append):
1381         (WebCore::SpellcheckRangeList::remove):
1382         (WebCore::SpellcheckRangeList::length):
1383         * html/SpellcheckRangeList.idl: Added.
1384         * rendering/InlineTextBox.cpp:
1385         (WebCore::textCheckingLineStyleForMarkerType):
1386         (WebCore::InlineTextBox::paintDocumentMarkers):
1387
1388 2011-06-07  Andrey Kosyakov  <caseq@chromium.org>
1389
1390         Reviewed by Pavel Feldman.
1391
1392         Web Inspector: remove shadow dom inspection from Elements panel by default.
1393         https://bugs.webkit.org/show_bug.cgi?id=62188
1394
1395         This reverts r85751
1396
1397         * dom/Element.cpp:
1398         (WebCore::Element::ensureShadowRoot):
1399         (WebCore::Element::removeShadowRoot):
1400         * inspector/Inspector.json:
1401         * inspector/InspectorDOMAgent.cpp:
1402         (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
1403         (WebCore::InspectorDOMAgent::buildObjectForNode):
1404         (WebCore::InspectorDOMAgent::didInsertDOMNode):
1405         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
1406         * inspector/InspectorDOMAgent.h:
1407         * inspector/front-end/DOMAgent.js:
1408         (WebInspector.DOMNode):
1409         (WebInspector.DOMNode.prototype._renumber):
1410         (WebInspector.DOMAgent.prototype._bindNodes):
1411         (WebInspector.DOMAgent.prototype.querySelectorAll):
1412         (WebInspector.DOMDispatcher.prototype.searchResults):
1413         * inspector/front-end/ElementsPanel.js:
1414         (WebInspector.ElementsPanel):
1415         (WebInspector.ElementsPanel.prototype._attributesUpdated):
1416         (WebInspector.ElementsPanel.prototype._characterDataModified):
1417         (WebInspector.ElementsPanel.prototype._nodeInserted):
1418         (WebInspector.ElementsPanel.prototype._nodeRemoved):
1419         (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
1420         (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
1421         * inspector/front-end/ElementsTreeOutline.js:
1422         (WebInspector.ElementsTreeElement):
1423         (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode):
1424         (WebInspector.ElementsTreeElement.prototype._updateChildren):
1425         ():
1426         * inspector/front-end/inspector.css:
1427         * inspector/front-end/utilities.js:
1428         (Element.prototype.query):
1429
1430 2011-06-08  Mark Rowe  <mrowe@apple.com>
1431
1432         Fix the build.
1433
1434         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1435         (WebCore::MediaPlayerPrivateAVFoundation::timeChanged):
1436         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
1437
1438 2011-06-07  Keishi Hattori  <keishi@webkit.org>
1439
1440         Reviewed by Kent Tamura.
1441
1442         Rename HTMLInputElement::m_value to m_valueIfDirty
1443         https://bugs.webkit.org/show_bug.cgi?id=61990
1444
1445         No new tests because no behavior change.
1446
1447         * html/HTMLInputElement.cpp: Replaced m_value with m_valueIfDirty.
1448         (WebCore::HTMLInputElement::tooLong):
1449         (WebCore::HTMLInputElement::updateType):
1450         (WebCore::HTMLInputElement::parseMappedAttribute):
1451         (WebCore::HTMLInputElement::copyNonAttributeProperties):
1452         (WebCore::HTMLInputElement::value):
1453         (WebCore::HTMLInputElement::setValue):
1454         (WebCore::HTMLInputElement::setValueFromRenderer):
1455         (WebCore::HTMLInputElement::updateValueIfNeeded):
1456         * html/HTMLInputElement.h: Renamed m_value to m_valueIfDirty.
1457         (WebCore::HTMLInputElement::hasDirtyValue): Added. Returns the dirty value flag.
1458
1459 2011-06-07  Ian Henderson  <ianh@apple.com>
1460
1461         Reviewed by Dan Bernstein.
1462
1463         (CG) Sub-image drawing clips unnecessarily
1464         https://bugs.webkit.org/show_bug.cgi?id=62258
1465
1466         If destRect completely encompasses the adjustedDestRect into which we
1467         draw, clipping to destRect will do nothing.  Skip the call to
1468         CGContextClipToRect in this case.
1469
1470         * platform/graphics/cg/ImageCG.cpp:
1471         (WebCore::BitmapImage::draw):
1472
1473 2011-06-07  Emil A Eklund  <eae@chromium.org>
1474
1475         Reviewed by Eric Seidel.
1476
1477         Convert nodeAtPoint to IntPoint
1478         https://bugs.webkit.org/show_bug.cgi?id=62145
1479
1480         Convert nodeAtPoint to take an IntPoint instead of a pair of ints for the
1481         accumulated offset.
1482
1483         Covered by existing tests.
1484
1485         * platform/graphics/FloatPoint.h:
1486         (WebCore::FloatPoint::moveBy):
1487         Add moveBy(IntPoint) method
1488         
1489         * rendering/EllipsisBox.cpp:
1490         (WebCore::EllipsisBox::nodeAtPoint):
1491         * rendering/EllipsisBox.h:
1492         * rendering/InlineBox.cpp:
1493         (WebCore::InlineBox::nodeAtPoint):
1494         * rendering/InlineBox.h:
1495         * rendering/InlineFlowBox.cpp:
1496         (WebCore::InlineFlowBox::nodeAtPoint):
1497         * rendering/InlineFlowBox.h:
1498         * rendering/InlineTextBox.cpp:
1499         (WebCore::InlineTextBox::nodeAtPoint):
1500         * rendering/InlineTextBox.h:
1501         * rendering/RenderBlock.cpp:
1502         (WebCore::RenderBlock::nodeAtPoint):
1503         (WebCore::RenderBlock::hitTestContents):
1504         * rendering/RenderBlock.h:
1505         * rendering/RenderBox.cpp:
1506         (WebCore::RenderBox::nodeAtPoint):
1507         * rendering/RenderBox.h:
1508         * rendering/RenderFrameSet.cpp:
1509         (WebCore::RenderFrameSet::nodeAtPoint):
1510         * rendering/RenderFrameSet.h:
1511         * rendering/RenderImage.cpp:
1512         (WebCore::RenderImage::nodeAtPoint):
1513         * rendering/RenderImage.h:
1514         * rendering/RenderInline.cpp:
1515         (WebCore::RenderInline::nodeAtPoint):
1516         * rendering/RenderInline.h:
1517         * rendering/RenderLineBoxList.cpp:
1518         (WebCore::RenderLineBoxList::hitTest):
1519         * rendering/RenderListBox.cpp:
1520         (WebCore::RenderListBox::nodeAtPoint):
1521         * rendering/RenderListBox.h:
1522         * rendering/RenderObject.cpp:
1523         (WebCore::RenderObject::hitTest):
1524         * rendering/RenderObject.h:
1525         * rendering/RenderTable.cpp:
1526         (WebCore::RenderTable::nodeAtPoint):
1527         * rendering/RenderTable.h:
1528         * rendering/RenderTableRow.cpp:
1529         (WebCore::RenderTableRow::nodeAtPoint):
1530         * rendering/RenderTableRow.h:
1531         * rendering/RenderTableSection.cpp:
1532         (WebCore::RenderTableSection::nodeAtPoint):
1533         * rendering/RenderTableSection.h:
1534         * rendering/RenderText.h:
1535         (WebCore::RenderText::nodeAtPoint):
1536         * rendering/RenderTextControlMultiLine.cpp:
1537         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
1538         * rendering/RenderTextControlMultiLine.h:
1539         * rendering/RenderTextControlSingleLine.cpp:
1540         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
1541         * rendering/RenderTextControlSingleLine.h:
1542         * rendering/RenderWidget.cpp:
1543         (WebCore::RenderWidget::nodeAtPoint):
1544         * rendering/RenderWidget.h:
1545         * rendering/RootInlineBox.cpp:
1546         (WebCore::RootInlineBox::nodeAtPoint):
1547         * rendering/RootInlineBox.h:
1548         * rendering/svg/RenderSVGForeignObject.cpp:
1549         (WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
1550         (WebCore::RenderSVGForeignObject::nodeAtPoint):
1551         * rendering/svg/RenderSVGForeignObject.h:
1552         * rendering/svg/RenderSVGModelObject.cpp:
1553         (WebCore::RenderSVGModelObject::nodeAtPoint):
1554         * rendering/svg/RenderSVGModelObject.h:
1555         * rendering/svg/RenderSVGRoot.cpp:
1556         (WebCore::RenderSVGRoot::nodeAtPoint):
1557         * rendering/svg/RenderSVGRoot.h:
1558         * rendering/svg/RenderSVGText.cpp:
1559         (WebCore::RenderSVGText::nodeAtFloatPoint):
1560         (WebCore::RenderSVGText::nodeAtPoint):
1561         * rendering/svg/RenderSVGText.h:
1562
1563 2011-06-07  Yi Shen  <yi.4.shen@nokia.com>
1564
1565         Reviewed by Simon Hausmann.
1566
1567         [Qt] Fix the error code for media resource failures when using QtMobility
1568         https://bugs.webkit.org/show_bug.cgi?id=55901
1569
1570         To indicate the media resource failures, set the network state to
1571         MediaPlayer::FormatError when receives QMediaPlayer::InvalidMedia or
1572         QMediaPlayer::ResourceError.
1573
1574         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1575         (WebCore::MediaPlayerPrivateQt::updateStates):
1576
1577 2011-06-07  Emil A Eklund  <eae@chromium.org>
1578
1579         Reviewed by Eric Seidel.
1580
1581         Change RenderBlock::hitTestFloats to IntPoint
1582         https://bugs.webkit.org/show_bug.cgi?id=62176
1583
1584         Covered by existing tests.
1585
1586         * rendering/RenderBlock.cpp:
1587         (WebCore::RenderBlock::nodeAtPoint):
1588         (WebCore::RenderBlock::hitTestFloats):
1589         (WebCore::RenderBlock::hitTestColumns):
1590         * rendering/RenderBlock.h:
1591
1592 2011-06-07  Tim Horton  <timothy_horton@apple.com>
1593
1594         Reviewed by Alexey Proskuryakov.
1595
1596         Use correct CFURLStorageSessionRef definition on Snow Leopard
1597         https://bugs.webkit.org/show_bug.cgi?id=62223
1598
1599         * platform/mac/WebCoreSystemInterface.h:
1600         * platform/network/ResourceHandle.h:
1601         * platform/network/cf/ResourceRequest.h:
1602
1603 2011-06-07  Emil A Eklund  <eae@chromium.org>
1604
1605         Reviewed by Eric Seidel.
1606
1607         Change RenderBlock::hitTestColumns to IntPoint
1608         https://bugs.webkit.org/show_bug.cgi?id=62172
1609
1610         Covered by existing tests.
1611
1612         * rendering/RenderBlock.cpp:
1613         (WebCore::RenderBlock::nodeAtPoint):
1614         (WebCore::RenderBlock::hitTestColumns):
1615         * rendering/RenderBlock.h:
1616
1617 2011-06-07  Simon Fraser  <simon.fraser@apple.com>
1618
1619         Reviewed by Darin Adler.
1620
1621         Opacity transition doesn't work while content property is set.
1622         https://bugs.webkit.org/show_bug.cgi?id=59301
1623         
1624         StyleRareNonInheritedData's copy constructor omitted to copy
1625         the m_content data, which caused us to detach and re-attach the renderer
1626         at the start of the transition, thereby killing the transition.
1627         
1628         Fix by making StyleRareNonInheritedData's copy ctor do the right thing.
1629
1630         Test: transitions/transition-on-element-with-content.html
1631
1632         * rendering/style/ContentData.h:
1633         * rendering/style/ContentData.cpp:
1634         (WebCore::ContentData::clone): New method to do a deep clone. (Can't use a copy
1635         ctor because of the subclasses.)
1636         * rendering/style/CounterDirectives.h: Pack the data members to save space.
1637         Add a clone() function for the HashMap.
1638         * rendering/style/CounterDirectives.cpp:
1639         (WebCore::clone): Make a new HashMap and copy the contents over.
1640         * rendering/style/StyleRareNonInheritedData.cpp:
1641         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): Copy
1642         the content and counter directives over.
1643         (WebCore::StyleRareNonInheritedData::operator==): Rather than just comparing
1644         for pointer equality, do a correct check for m_counterDirectives equality.
1645         (WebCore::StyleRareNonInheritedData::counterDataEquivalent):
1646         * rendering/style/StyleRareNonInheritedData.h:
1647
1648 2011-06-07  Robert Kroeger  <rjkroege@chromium.org>
1649
1650         Reviewed by Adam Barth.
1651
1652         [chromium] Add a basic gesture recognizer to the Chromium platform
1653         https://bugs.webkit.org/show_bug.cgi?id=54417
1654
1655         Adds a basic gesture recognizer to the Chromium platform. Adds an entry
1656         point to the GestureRecognizer to reset any internal state on a page reset.
1657         Resetting the gesture recognizer on page load is necesary for reliable
1658         layout test execution and improves gesture recognizer operational
1659         robustness.
1660
1661         Added an additional constructor to permit building a synthetic
1662         PlatformWheelEvent.
1663
1664         Small modifications to the PlatformGestureRecognizer as required to
1665         implement the simple Chromium platform gesture recognizer.
1666
1667         Tests: fast/events/touch/touch-gesture-click.html
1668
1669         * WebCore.gypi:
1670         * page/EventHandler.cpp:
1671         (WebCore::EventHandler::resetGestureRecognizer):
1672         * page/EventHandler.h:
1673         * page/FrameView.cpp:
1674         (WebCore::FrameView::reset):
1675         * platform/PlatformGestureRecognizer.h:
1676         * platform/PlatformWheelEvent.h:
1677         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1678         * platform/chromium/GestureRecognizerChromium.cpp: Added.
1679         (WebCore::InnerGestureRecognizer::InnerGestureRecognizer):
1680         (WebCore::InnerGestureRecognizer::reset):
1681         (WebCore::InnerGestureRecognizer::~InnerGestureRecognizer):
1682         (WebCore::InnerGestureRecognizer::addEdgeFunction):
1683         (WebCore::InnerGestureRecognizer::isInClickTimeWindow):
1684         (WebCore::InnerGestureRecognizer::isInsideManhattanSquare):
1685         (WebCore::InnerGestureRecognizer::dispatchSyntheticClick):
1686         (WebCore::InnerGestureRecognizer::processTouchEventForGesture):
1687         (WebCore::InnerGestureRecognizer::scrollViaTouchMotion):
1688         (WebCore::InnerGestureRecognizer::updateValues):
1689         (WebCore::InnerGestureRecognizer::signature):
1690         (WebCore::touchDown):
1691         (WebCore::noGesture):
1692         (WebCore::click):
1693         (WebCore::isClickOrScroll):
1694         (WebCore::inScroll):
1695         (WebCore::PlatformGestureRecognizer::create):
1696         (WebCore::PlatformGestureRecognizer::PlatformGestureRecognizer):
1697         (WebCore::PlatformGestureRecognizer::~PlatformGestureRecognizer):
1698         (WebCore::GestureRecognizerChromium::GestureRecognizerChromium):
1699         (WebCore::GestureRecognizerChromium::~GestureRecognizerChromium):
1700         * platform/chromium/GestureRecognizerChromium.h: Added.
1701         (WebCore::InnerGestureRecognizer::setState):
1702         (WebCore::InnerGestureRecognizer::state):
1703         (WebCore::GestureRecognizerChromium::reset):
1704         (WebCore::GestureRecognizerChromium::processTouchEventForGesture):
1705
1706 2011-06-07  No'am Rosenthal  <noam.rosenthal@nokia.com>
1707
1708         Reviewed by Andreas Kling.
1709
1710         [Texmap][Qt] Enable TextureMapper by default
1711         https://bugs.webkit.org/show_bug.cgi?id=61740
1712
1713         Enable TextureMapper on Windows+Symbian, disabling the direct OpenGL path. This would mean that
1714         for now QtWebKit on Windows/Symbian would use the Qt backend for TextureMapper.
1715
1716         No new functionality so no new tests.
1717
1718         * WebCore.pri:
1719         * WebCore.pro:
1720         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1721         * platform/graphics/qt/TextureMapperQt.cpp:
1722         (WebCore::TextureMapper::create):
1723
1724 2011-06-07  Emil A Eklund  <eae@chromium.org>
1725
1726         Reviewed by Eric Seidel.
1727
1728         Convert RenderBox::absoluteRects to IntPoint
1729         https://bugs.webkit.org/show_bug.cgi?id=62130
1730
1731         Covered by existing tests.
1732
1733         * dom/Node.cpp:
1734         (WebCore::Node::hasNonEmptyBoundingBox):
1735         * rendering/InlineBox.h:
1736         (WebCore::InlineBox::size):
1737         * rendering/RenderBlock.cpp:
1738         (WebCore::RenderBlock::absoluteRects):
1739         * rendering/RenderBlock.h:
1740         * rendering/RenderBox.cpp:
1741         (WebCore::RenderBox::absoluteRects):
1742         * rendering/RenderBox.h:
1743         * rendering/RenderInline.cpp:
1744         (WebCore::RenderInline::absoluteRects):
1745         * rendering/RenderInline.h:
1746         * rendering/RenderObject.cpp:
1747         (WebCore::RenderObject::absoluteBoundingBoxRect):
1748         * rendering/RenderObject.h:
1749         (WebCore::RenderObject::absoluteRects):
1750         * rendering/RenderText.cpp:
1751         (WebCore::RenderText::absoluteRects):
1752         * rendering/RenderText.h:
1753         * rendering/RenderView.cpp:
1754         (WebCore::RenderView::absoluteRects):
1755         * rendering/RenderView.h:
1756         * rendering/svg/RenderSVGBlock.cpp:
1757         (WebCore::RenderSVGBlock::absoluteRects):
1758         * rendering/svg/RenderSVGBlock.h:
1759         * rendering/svg/RenderSVGModelObject.cpp:
1760         (WebCore::RenderSVGModelObject::absoluteRects):
1761         * rendering/svg/RenderSVGModelObject.h:
1762
1763 2011-06-07  Kent Tamura  <tkent@chromium.org>
1764
1765         Reviewed by Andreas Kling.
1766
1767         [Qt] RenderThemeQt::adjustSliderThumbSize() should not refer to the parent style.
1768         https://bugs.webkit.org/show_bug.cgi?id=62207
1769
1770         * css/mediaControlsQt.css: Add comments.
1771         (audio::-webkit-media-controls-timeline):
1772         (video::-webkit-media-controls-timeline):
1773         (audio::-webkit-media-controls-volume-slider):
1774         (video::-webkit-media-controls-volume-slider):
1775         * platform/qt/RenderThemeQt.cpp: Use fixed values to avoid referring to o->parent().
1776         (WebCore::RenderThemeQt::adjustSliderThumbSize):
1777
1778 2011-06-07  Sailesh Agrawal  <sail@chromium.org>
1779
1780         Reviewed by Mihai Parparita.
1781
1782         Chromium Mac: Fork ScrollAnimatorMac to ScrollAnimatorChromiumMac for overlay scrollbar support
1783         https://bugs.webkit.org/show_bug.cgi?id=59753
1784
1785         No new tests. Just forking ScrollAnimatorMac to ScrollAnimatorChromiumMac.
1786
1787         * WebCore.gyp/WebCore.gyp: Added IntPointMac.mm. This is used by some functions in ScrollAnimatorChromiumMac. Also added filters for conflicting class names in ScrollAnimatorChromiumMac.
1788         * WebCore.gypi: Added ScrollAnimatorChromiumMac.h/mm.
1789         * platform/ScrollAnimator.cpp: Extended the #ifdef around ScrollAnimator::create() so that the chromium version will be created.
1790         * platform/chromium/ScrollAnimatorChromiumMac.h: Added.
1791         (WebCore::ScrollAnimatorChromiumMac::setIsDrawingIntoLayer):
1792         (WebCore::ScrollAnimatorChromiumMac::isDrawingIntoLayer):
1793         (WebCore::ScrollAnimatorChromiumMac::haveScrolledSincePageLoad):
1794         * 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.
1795         (abs):
1796         (-[ScrollAnimationHelperDelegate initWithScrollAnimator:WebCore::]):
1797         (-[ScrollAnimationHelperDelegate scrollAnimatorDestroyed]):
1798         (-[ScrollAnimationHelperDelegate bounds]):
1799         (-[ScrollAnimationHelperDelegate _immediateScrollToPoint:]):
1800         (-[ScrollAnimationHelperDelegate _pixelAlignProposedScrollPosition:]):
1801         (-[ScrollAnimationHelperDelegate convertSizeToBase:]):
1802         (-[ScrollAnimationHelperDelegate convertSizeFromBase:]):
1803         (-[ScrollAnimationHelperDelegate convertSizeToBacking:]):
1804         (-[ScrollAnimationHelperDelegate convertSizeFromBacking:]):
1805         (-[ScrollAnimationHelperDelegate superview]):
1806         (-[ScrollAnimationHelperDelegate documentView]):
1807         (-[ScrollAnimationHelperDelegate window]):
1808         (-[ScrollAnimationHelperDelegate _recursiveRecomputeToolTips]):
1809         (-[ScrollbarPainterControllerDelegate initWithScrollAnimator:WebCore::]):
1810         (-[ScrollbarPainterControllerDelegate scrollAnimatorDestroyed]):
1811         (-[ScrollbarPainterControllerDelegate contentAreaRectForScrollerImpPair:]):
1812         (-[ScrollbarPainterControllerDelegate inLiveResizeForScrollerImpPair:]):
1813         (-[ScrollbarPainterControllerDelegate mouseLocationInContentAreaForScrollerImpPair:]):
1814         (-[ScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
1815         (-[ScrollbarPainterControllerDelegate scrollerImpPair:setContentAreaNeedsDisplayInRect:]):
1816         (-[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
1817         (-[ScrollbarPartAnimation initWithScrollbarPainter:part:WebCore::scrollAnimator:WebCore::animateAlphaTo:duration:]):
1818         (-[ScrollbarPartAnimation setCurrentProgress:]):
1819         (-[ScrollbarPartAnimation scrollAnimatorDestroyed]):
1820         (-[ScrollbarPainterDelegate initWithScrollAnimator:WebCore::]):
1821         (-[ScrollbarPainterDelegate cancelAnimations]):
1822         (-[ScrollbarPainterDelegate convertRectToBacking:]):
1823         (-[ScrollbarPainterDelegate convertRectFromBacking:]):
1824         (-[ScrollbarPainterDelegate layer]):
1825         (-[ScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
1826         (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
1827         (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
1828         (-[ScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]):
1829         (-[ScrollbarPainterDelegate scrollAnimatorDestroyed]):
1830         (WebCore::ScrollAnimator::create):
1831         (WebCore::ScrollAnimatorChromiumMac::ScrollAnimatorChromiumMac):
1832         (WebCore::ScrollAnimatorChromiumMac::~ScrollAnimatorChromiumMac):
1833         (WebCore::ScrollAnimatorChromiumMac::scroll):
1834         (WebCore::ScrollAnimatorChromiumMac::scrollToOffsetWithoutAnimation):
1835         (WebCore::ScrollAnimatorChromiumMac::adjustScrollXPositionIfNecessary):
1836         (WebCore::ScrollAnimatorChromiumMac::adjustScrollYPositionIfNecessary):
1837         (WebCore::ScrollAnimatorChromiumMac::adjustScrollPositionIfNecessary):
1838         (WebCore::ScrollAnimatorChromiumMac::immediateScrollToPoint):
1839         (WebCore::ScrollAnimatorChromiumMac::immediateScrollByDeltaX):
1840         (WebCore::ScrollAnimatorChromiumMac::immediateScrollByDeltaY):
1841         (WebCore::ScrollAnimatorChromiumMac::notityPositionChanged):
1842         (WebCore::ScrollAnimatorChromiumMac::contentAreaWillPaint):
1843         (WebCore::ScrollAnimatorChromiumMac::mouseEnteredContentArea):
1844         (WebCore::ScrollAnimatorChromiumMac::mouseExitedContentArea):
1845         (WebCore::ScrollAnimatorChromiumMac::mouseMovedInContentArea):
1846         (WebCore::ScrollAnimatorChromiumMac::willStartLiveResize):
1847         (WebCore::ScrollAnimatorChromiumMac::contentsResized):
1848         (WebCore::ScrollAnimatorChromiumMac::willEndLiveResize):
1849         (WebCore::ScrollAnimatorChromiumMac::contentAreaDidShow):
1850         (WebCore::ScrollAnimatorChromiumMac::contentAreaDidHide):
1851         (WebCore::ScrollAnimatorChromiumMac::didBeginScrollGesture):
1852         (WebCore::ScrollAnimatorChromiumMac::didEndScrollGesture):
1853         (WebCore::ScrollAnimatorChromiumMac::didAddVerticalScrollbar):
1854         (WebCore::ScrollAnimatorChromiumMac::willRemoveVerticalScrollbar):
1855         (WebCore::ScrollAnimatorChromiumMac::didAddHorizontalScrollbar):
1856         (WebCore::ScrollAnimatorChromiumMac::willRemoveHorizontalScrollbar):
1857         (WebCore::ScrollAnimatorChromiumMac::cancelAnimations):
1858         (WebCore::elasticDeltaForTimeDelta):
1859         (WebCore::elasticDeltaForReboundDelta):
1860         (WebCore::reboundDeltaForElasticDelta):
1861         (WebCore::scrollWheelMultiplier):
1862         (WebCore::ScrollAnimatorChromiumMac::handleWheelEvent):
1863         (WebCore::ScrollAnimatorChromiumMac::handleGestureEvent):
1864         (WebCore::ScrollAnimatorChromiumMac::pinnedInDirection):
1865         (WebCore::ScrollAnimatorChromiumMac::allowsVerticalStretching):
1866         (WebCore::ScrollAnimatorChromiumMac::allowsHorizontalStretching):
1867         (WebCore::ScrollAnimatorChromiumMac::smoothScrollWithEvent):
1868         (WebCore::ScrollAnimatorChromiumMac::beginScrollGesture):
1869         (WebCore::ScrollAnimatorChromiumMac::endScrollGesture):
1870         (WebCore::ScrollAnimatorChromiumMac::snapRubberBand):
1871         (WebCore::roundTowardZero):
1872         (WebCore::roundToDevicePixelTowardZero):
1873         (WebCore::ScrollAnimatorChromiumMac::snapRubberBandTimerFired):
1874         (WebCore::ScrollAnimatorChromiumMac::startScrollbarPaintTimer):
1875         (WebCore::ScrollAnimatorChromiumMac::scrollbarPaintTimerIsActive):
1876         (WebCore::ScrollAnimatorChromiumMac::stopScrollbarPaintTimer):
1877         (WebCore::ScrollAnimatorChromiumMac::initialScrollbarPaintTimerFired):
1878         (WebCore::ScrollAnimatorChromiumMac::setVisibleScrollerThumbRect):
1879         * platform/graphics/IntPoint.h: Exposed NSPoint conversion routines to chromium mac.
1880
1881 2011-06-07  Sam Weinig  <sam@webkit.org>
1882
1883         Reviewed by Anders Carlsson.
1884
1885         Remove repeated IPC traffic from SetRenderTreeSize message
1886         https://bugs.webkit.org/show_bug.cgi?id=62244
1887
1888         * WebCore.xcodeproj/project.pbxproj:
1889         Make RenderArena.h private so it can be called from WebKit2.
1890
1891         * loader/FrameLoaderClient.h:
1892         (WebCore::FrameLoaderClient::dispatchDidLayout):
1893         Added.
1894
1895         * page/ChromeClient.h:
1896         Remove setRenderTreeSize.
1897
1898         * page/FrameView.cpp:
1899         (WebCore::FrameView::performPostLayoutTasks):
1900         Call dispatchDidLayout for all frames instead of calling setRenderTreeSize
1901         for the main frame.
1902
1903 2011-06-07  Emil A Eklund  <eae@chromium.org>
1904
1905         Reviewed by Eric Seidel.
1906
1907         Change RenderBlock::hitTestContents to IntPoint
1908         https://bugs.webkit.org/show_bug.cgi?id=62170
1909
1910         Covered by existing tests.
1911
1912         * rendering/RenderBlock.cpp:
1913         (WebCore::RenderBlock::nodeAtPoint):
1914         (WebCore::RenderBlock::hitTestColumns):
1915         (WebCore::RenderBlock::hitTestContents):
1916         * rendering/RenderBlock.h:
1917
1918 2011-06-07  Jer Noble  <jer.noble@apple.com>
1919
1920         Reviewed by Eric Carlson.
1921
1922         Video with poster attribute will not display new frames when scrubbing.
1923         https://bugs.webkit.org/show_bug.cgi?id=62036
1924
1925         Remove our "detection" about the end of a scrub now that there is an explicit seek completion
1926         handler available in AVFoundation.  Move what we used to do upon detection in timeChanged()
1927         into seekCompleted().
1928
1929         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1930         (WebCore::MediaPlayerPrivateAVFoundation::timeChanged): 
1931         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
1932
1933 2011-06-07  James Simonsen  <simonjam@chromium.org>
1934
1935         Unreviewed, build fix, missing files from r88274.
1936
1937         * bindings/v8/ChildThreadDOMData.cpp: Added.
1938         (WebCore::ChildThreadDOMData::ChildThreadDOMData):
1939         (WebCore::ChildThreadDOMData::getStore):
1940         * bindings/v8/ChildThreadDOMData.h: Added.
1941         * bindings/v8/MainThreadDOMData.cpp: Added.
1942         (WebCore::MainThreadDOMData::MainThreadDOMData):
1943         (WebCore::MainThreadDOMData::getCurrent):
1944         (WebCore::MainThreadDOMData::getMainThreadStore):
1945         (WebCore::MainThreadDOMData::getCurrentMainThreadStore):
1946         * bindings/v8/MainThreadDOMData.h: Added.
1947         (WebCore::MainThreadDOMData::getStore):
1948
1949 2011-06-07  Abhishek Arya  <inferno@chromium.org>
1950
1951         Reviewed by Dan Bernstein.
1952
1953         Replicate WidthIterator.cpp fix from r88139.
1954         https://bugs.webkit.org/show_bug.cgi?id=62238
1955
1956         No new tests. Covered by existing layout tests on XP debug bots.
1957
1958         * platform/graphics/win/UniscribeController.cpp:
1959         (WebCore::UniscribeController::advance):
1960
1961 2011-06-07  Sheriff Bot  <webkit.review.bot@gmail.com>
1962
1963         Unreviewed, rolling out r88221, r88224, and r88231.
1964         http://trac.webkit.org/changeset/88221
1965         http://trac.webkit.org/changeset/88224
1966         http://trac.webkit.org/changeset/88231
1967         https://bugs.webkit.org/show_bug.cgi?id=62233
1968
1969         assert failure on chromium linux debug (Requested by simonjam
1970         on #webkit).
1971
1972         * WebCore.gypi:
1973         * WebCore.pro:
1974         * bindings/v8/ChildThreadDOMData.cpp: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
1975         (WebCore::ChildThreadDOMData::ChildThreadDOMData):
1976         (WebCore::ChildThreadDOMData::getStore):
1977         * bindings/v8/ChildThreadDOMData.h: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
1978         * bindings/v8/DOMData.cpp:
1979         (WebCore::DOMData::DOMData):
1980         (WebCore::DOMData::getCurrent):
1981         * bindings/v8/DOMData.h:
1982         (WebCore::DOMData::owningThread):
1983         (WebCore::DOMData::handleWeakObject):
1984         * bindings/v8/DOMDataStore.cpp:
1985         (WebCore::DOMDataStore::DOMDataStore):
1986         (WebCore::DOMDataStore::~DOMDataStore):
1987         (WebCore::DOMDataStore::allStoresMutex):
1988         (WebCore::DOMDataStore::weakNodeCallback):
1989         * bindings/v8/DOMDataStore.h:
1990         * bindings/v8/MainThreadDOMData.cpp: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
1991         (WebCore::MainThreadDOMData::MainThreadDOMData):
1992         (WebCore::MainThreadDOMData::getCurrent):
1993         (WebCore::MainThreadDOMData::getMainThreadStore):
1994         (WebCore::MainThreadDOMData::getCurrentMainThreadStore):
1995         * bindings/v8/MainThreadDOMData.h: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
1996         (WebCore::MainThreadDOMData::getStore):
1997         * bindings/v8/V8DOMMap.cpp:
1998         (WebCore::getDOMDataStore):
1999         (WebCore::removeAllDOMObjectsInCurrentThread):
2000         (WebCore::visitDOMNodesInCurrentThread):
2001         (WebCore::visitDOMObjectsInCurrentThread):
2002         (WebCore::visitActiveDOMObjectsInCurrentThread):
2003         (WebCore::visitDOMSVGElementInstancesInCurrentThread):
2004         * bindings/v8/V8DOMMap.h:
2005         * bindings/v8/V8GCController.cpp:
2006         (WebCore::V8GCController::gcPrologue):
2007         (WebCore::V8GCController::gcEpilogue):
2008         * bindings/v8/WorkerScriptController.cpp:
2009         (WebCore::WorkerScriptController::~WorkerScriptController):
2010
2011 2011-06-07  Simon Fraser  <simon.fraser@apple.com>
2012
2013         Reviewed by Dave Hyatt.
2014
2015         Clean up ContentData
2016         https://bugs.webkit.org/show_bug.cgi?id=62185
2017
2018         ContentData did manual ref()/deref() and had a lot of awkward
2019         code from using a union to store data.
2020         
2021         Clean this up by adding ContentData subclasses for different
2022         content types, which are then able to use RefPtr and OwnPtr
2023         as appropriate.
2024
2025         * css/CSSComputedStyleDeclaration.cpp:
2026         (WebCore::contentToCSSValue): Cast to different ContentData types as
2027         appropriate.
2028
2029         * css/CSSStyleSelector.cpp: 
2030         (WebCore::CSSStyleSelector::loadPendingImages): Cast to ImageContentData, and do some
2031         const gyrations.
2032
2033         * html/HTMLBRElement.cpp:
2034         (WebCore::HTMLBRElement::createRenderer): Use hasContent().
2035         * html/HTMLFrameSetElement.cpp:
2036         (WebCore::HTMLFrameSetElement::createRenderer): Ditto
2037         * html/HTMLImageElement.cpp:
2038         (WebCore::HTMLImageElement::createRenderer): Ditto
2039         * rendering/RenderObject.cpp:
2040         (WebCore::RenderObject::createObject): Cast to ImageContentData.
2041         * rendering/RenderObjectChildList.cpp:
2042         (WebCore::RenderObjectChildList::updateBeforeAfterContent): Cast to different ContentData types as
2043         appropriate.
2044
2045         * rendering/style/ContentData.h:
2046         (WebCore::ContentData::~ContentData):
2047         (WebCore::ContentData::isCounter):
2048         (WebCore::ContentData::isImage):
2049         (WebCore::ContentData::isQuote):
2050         (WebCore::ContentData::isText):
2051         (WebCore::ContentData::next):
2052         (WebCore::ContentData::setNext):
2053         (WebCore::ImageContentData::image):
2054         (WebCore::ImageContentData::setImage):
2055         (WebCore::ImageContentData::ImageContentData):
2056         (WebCore::ImageContentData::type):
2057         (WebCore::ImageContentData::isImage):
2058         (WebCore::TextContentData::text):
2059         (WebCore::TextContentData::setText):
2060         (WebCore::TextContentData::TextContentData):
2061         (WebCore::TextContentData::type):
2062         (WebCore::TextContentData::isText):
2063         (WebCore::CounterContentData::counter):
2064         (WebCore::CounterContentData::setCounter):
2065         (WebCore::CounterContentData::CounterContentData):
2066         (WebCore::CounterContentData::type):
2067         (WebCore::CounterContentData::isCounter):
2068         (WebCore::QuoteContentData::quote):
2069         (WebCore::QuoteContentData::setQuote):
2070         (WebCore::QuoteContentData::QuoteContentData):
2071         (WebCore::QuoteContentData::type):
2072         (WebCore::QuoteContentData::isQuote):
2073         Add subclasses for different content types, which are created
2074         via overloaded create() methods on the base class.
2075
2076         * rendering/style/ContentData.cpp:
2077         (WebCore::ContentData::create):
2078         (WebCore::operator==): Test for type equality, followed by comparing data.
2079         (WebCore::operator!=):
2080
2081         * rendering/style/RenderStyle.cpp:
2082         (WebCore::RenderStyle::clearContent):
2083         (WebCore::RenderStyle::appendContent): 
2084         (WebCore::RenderStyle::setContent): Replace the overly complex prepareToSetContent()
2085         code with code that either appends, or replaces the content.
2086         This loses an optimization where the existing ContentData object could get reused,
2087         but this seems to be rarely hit in practice.
2088         * rendering/style/RenderStyle.h:
2089         (WebCore::InheritedFlags::hasContent): Convenience method.
2090         * rendering/style/StyleRareNonInheritedData.cpp:
2091         (WebCore::StyleRareNonInheritedData::contentDataEquivalent): Test
2092         that the pointers are non-null, then use the != operator.
2093         * rendering/style/StyleRareNonInheritedData.h: ContentData is a class now.
2094
2095 2011-06-07  Brian Weinstein  <bweinstein@apple.com>
2096
2097         Build fix after r88260.
2098
2099         * platform/graphics/win/FontCacheWin.cpp:
2100         (WebCore::FontCache::getFontDataForCharacters): Update to use enum instead of bool.
2101         * platform/graphics/wince/FontCacheWinCE.cpp:
2102
2103 2011-06-07  Rob Buis  <rbuis@rim.com>
2104
2105         Reviewed by Dirk Schulze.
2106
2107         stroke-dasharray does not handle "none"
2108         https://bugs.webkit.org/show_bug.cgi?id=62203
2109
2110         Use the initial strokeDashArray style for stroke-dasharray="none" to apply to SVGRenderStyle rather than bailing out.
2111
2112         Tests: svg/W3C-SVG-1.1-SE/styling-css-04-f.svg
2113                svg/custom/invalid-dasharray.svg
2114
2115         * css/SVGCSSStyleSelector.cpp:
2116         (WebCore::CSSStyleSelector::applySVGProperty):
2117
2118 2011-06-07  Sheriff Bot  <webkit.review.bot@gmail.com>
2119
2120         Unreviewed, rolling out r88259 and r88263.
2121         http://trac.webkit.org/changeset/88259
2122         http://trac.webkit.org/changeset/88263
2123         https://bugs.webkit.org/show_bug.cgi?id=62228
2124
2125         broke builds (Requested by rniwa on #webkit).
2126
2127         * platform/mac/WebCoreSystemInterface.h:
2128         * platform/network/ResourceHandle.h:
2129         * platform/network/cf/ResourceRequest.h:
2130
2131 2011-06-07  Emil A Eklund  <eae@chromium.org>
2132
2133         Reviewed by Eric Seidel.
2134
2135         Switch ContainerNode to use IntPoint
2136         https://bugs.webkit.org/show_bug.cgi?id=61893
2137
2138         Covered by existing tests.
2139
2140         * dom/ContainerNode.cpp:
2141         (WebCore::ContainerNode::getUpperLeftCorner):
2142         (WebCore::ContainerNode::getLowerRightCorner):
2143         (WebCore::ContainerNode::getRect):
2144         Change to use maxX/maxY instead of x+width/y+height
2145         
2146         * platform/graphics/FloatPoint.h:
2147         (WebCore::FloatPoint::move):
2148         (WebCore::FloatPoint::moveBy):
2149         (WebCore::FloatPoint::expandedTo):
2150         Add move, moveBy and expandedTo mirroring the IntPoint implementation of the same.
2151
2152 2011-06-07  Ryosuke Niwa  <rniwa@webkit.org>
2153
2154         Speculative build fix after r88259.
2155
2156         * platform/network/cf/ResourceRequest.h:
2157
2158 2011-06-07  Michael Saboff  <msaboff@apple.com>
2159
2160         Reviewed by Geoffrey Garen.
2161
2162         Need to enable font cache purging in MemoryPressureHandler
2163         https://bugs.webkit.org/show_bug.cgi?id=62060
2164
2165         Improve memory usage under pressure.
2166         Added call to fontCache()->purgeInactiveFontData() in 
2167         MemoryPressureHandler::respondToMemoryPressure().  Added protection to 
2168         MemoryPressureHandler::install() being called multiple times.
2169
2170         No new tests as funtionality wasn't changed.
2171
2172         * platform/MemoryPressureHandler.cpp:
2173         (WebCore::MemoryPressureHandler::MemoryPressureHandler):
2174         * platform/MemoryPressureHandler.h:
2175         * platform/mac/MemoryPressureHandlerMac.mm:
2176         (WebCore::MemoryPressureHandler::install):
2177         (WebCore::MemoryPressureHandler::respondToMemoryPressure):
2178
2179 2011-06-07  Michael Saboff  <msaboff@apple.com>
2180
2181         Reviewed by Geoffrey Garen.
2182
2183         Fonts returned by FontCache::getFontDataForCharacters() are never released
2184         https://bugs.webkit.org/show_bug.cgi?id=61875
2185
2186         This change allows fonts allocated as system fallback fonts to be 
2187         released.  Previously, the reference counts for these fonts grew 
2188         without bound.  This is implemented as an auto release class that wraps
2189         accesses to the cache for system fallback fonts. All such accesses are
2190         via the method FontCache::getFontDataForCharacters. The new class is
2191         called FontCachePurgePreventer. When such an object exists, it protects
2192         these fonts from deletion.
2193
2194         Most accesses to the font cache still use the reference counting
2195         implemented by FontCache::getCacheFontData() and 
2196         FontCache::releaseFontData() and that operation is not affected by
2197         this change.
2198
2199         Added local scoped instance of FontCachePurgePreventer to wrap code
2200         that directly or indirectly accesses fonts via getFontDataForCharacters.
2201         Did a few other miscellaneous bug fixes and changes to allow system
2202         fallback fonts to be pruned from the GlyphPageTree. Changed the
2203         calls to getFontData in the platform specific versions of
2204         Fontcache::getFontDataForCharacters to not increment the reference
2205         count.  Moved the purge font check
2206         outside of FontCache::getCachedFontData() into a separate method, 
2207         purgeInactiveFontDataIfNeeded() since almost all calls to 
2208         getCachedFontData() now happen when purging is not allowed.
2209         purgeInactiveFontDataIfNeeded is invoked in enablePurging() when
2210         m_purgePreventCount is 0.
2211
2212         No new test as the functionality has not changed. Improved font life
2213         cycle management.
2214
2215         * WebCore.exp.in: Added FontCache::purgeInactiveFontDataIfNeeded().
2216         * html/canvas/CanvasRenderingContext2D.cpp:
2217         (WebCore::CanvasRenderingContext2D::measureText):
2218         (WebCore::CanvasRenderingContext2D::drawTextInternal):
2219         Wrapped code accessing fallback fonts with local 
2220         FontCachePurgePreventer in these methods.
2221
2222         * page/FrameView.cpp:
2223         (WebCore::FrameView::layout):
2224         (WebCore::FrameView::paintContents):
2225         Wrapped code accessing fallback fonts with local 
2226         FontCachePurgePreventer in these methods.
2227
2228         * platform/graphics/FontCache.cpp:
2229         (WebCore::FontCache::FontCache):
2230         (WebCore::FontCache::getCachedFontData):
2231         Moved purge check to new method since it likely can't happen here.
2232         (WebCore::FontCache::releaseFontData):
2233         (WebCore::FontCache::purgeInactiveFontDataIfNeeded):
2234         (WebCore::FontCache::purgeInactiveFontData):
2235         Made purging conditional on m_purgePreventCount.  Now some fonts
2236         in the cache are reference counted while other can be purged 
2237         outside of code wrapped by in scope FontCachePurgePreventer objects.
2238
2239         * platform/graphics/FontCache.h:
2240         (WebCore::FontCache::disablePurging):
2241         (WebCore::FontCache::enablePurging):
2242         (WebCore::FontCachePurgePreventer::FontCachePurgePreventer):
2243         (WebCore::FontCachePurgePreventer::~FontCachePurgePreventer):
2244         Added new simple purge prevention wrapper class and methods
2245         that it calls in FontCache actually prevent purging.  The
2246         simple methods inlined to reduce overhead.
2247
2248         * platform/graphics/FontFastPath.cpp:
2249         (WebCore::Font::glyphDataForCharacter): Update level in 
2250         glyph page tree for system fallback fonts so pruning works.
2251
2252         * platform/graphics/GlyphPage.h:
2253         (WebCore::GlyphPage::clearForFontData): New method used for pruning
2254         * platform/graphics/GlyphPageTreeNode.cpp:
2255         (WebCore::GlyphPageTreeNode::pruneFontData):
2256         Now we prune system fallback fonts.
2257
2258         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
2259         (WebCore::FontCache::getFontDataForCharacters):
2260         * platform/graphics/freetype/FontCacheFreeType.cpp:
2261         (WebCore::FontCache::getFontDataForCharacters):
2262         * platform/graphics/haiku/FontCacheHaiku.cpp:
2263         (WebCore::FontCache::getFontDataForCharacters):
2264         * platform/graphics/mac/FontCacheMac.mm:
2265         (WebCore::FontCache::getFontDataForCharacters):
2266         * platform/graphics/qt/FontCacheQt.cpp:
2267         (WebCore::FontCache::getFontDataForCharacters):
2268         * platform/graphics/win/FontCacheWin.cpp:
2269         (WebCore::FontCache::getFontDataForCharacters):
2270         * platform/graphics/wince/FontCacheWinCE.cpp:
2271         * platform/graphics/wx/FontCacheWx.cpp:
2272         (WebCore::FontCache::getFontDataForCharacters):
2273         Changed the calls to getFontData() to not increment the reference
2274         count. The caller of this getFontDataForCharacters() (currently only
2275         Font::glyphDataForCharacter() in fontFastPath.cpp) and it's callers
2276         don't attempt to release the returned fonts so we use the purge
2277         protection described above.
2278
2279         * rendering/InlineTextBox.cpp:
2280         (WebCore::InlineTextBox::selectionRect):
2281         (WebCore::InlineTextBox::offsetForPosition):
2282         (WebCore::InlineTextBox::positionForOffset):
2283         Wrapped code accessing fallback fonts with local
2284         FontCachePurgePreventer in these methods.
2285
2286         * rendering/RenderImage.cpp:
2287         (WebCore::RenderImage::setImageSizeForAltText):
2288         Wrapped code accessing fallback fonts with local
2289         FontCachePurgePreventer in this method.
2290
2291         * rendering/RenderListBox.cpp:
2292         (WebCore::RenderListBox::updateFromElement):
2293         (WebCore::RenderListBox::paintItemForeground):
2294         Wrapped code accessing fallback fonts with local
2295         FontCachePurgePreventer in these methods
2296
2297         * rendering/svg/SVGInlineTextBox.cpp:
2298         (WebCore::SVGInlineTextBox::selectionRectForTextFragment):
2299         Wrapped code accessing fallback fonts with local
2300         FontCachePurgePreventer in this method.
2301
2302 2011-06-07  Tim Horton  <timothy_horton@apple.com>
2303
2304         Reviewed by Alexey Proskuryakov.
2305
2306         Use correct CFURLStorageSessionRef definition on Snow Leopard
2307         https://bugs.webkit.org/show_bug.cgi?id=62223
2308
2309         * platform/mac/WebCoreSystemInterface.h:
2310         * platform/network/ResourceHandle.h:
2311         * platform/network/cf/ResourceRequest.h:
2312
2313 2011-06-07  Alok Priyadarshi  <alokp@chromium.org>
2314
2315         Reviewed by Stephen White.
2316
2317         [chromium] PlatformContextSkia leaks SkDeviceFactory
2318         https://bugs.webkit.org/show_bug.cgi?id=62163
2319
2320         Valgrind tests should have caught this.
2321
2322         * platform/graphics/skia/PlatformContextSkia.cpp:
2323         (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
2324
2325 2011-06-07  Emil A Eklund  <eae@chromium.org>
2326
2327         Reviewed by Eric Seidel.
2328
2329         Convert RenderTextControl::hitInnerTextElement to IntPoint
2330         https://bugs.webkit.org/show_bug.cgi?id=62167
2331
2332         Covered by existing tests.
2333
2334         * rendering/RenderTextControl.cpp:
2335         (WebCore::RenderTextControl::hitInnerTextElement):
2336         * rendering/RenderTextControl.h:
2337         * rendering/RenderTextControlMultiLine.cpp:
2338         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
2339         * rendering/RenderTextControlSingleLine.cpp:
2340         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
2341
2342 2011-06-07  Levi Weintraub  <leviw@chromium.org>
2343
2344         Reviewed by Eric Seidel.
2345
2346         Switch paint to use IntPoint
2347         https://bugs.webkit.org/show_bug.cgi?id=62177
2348
2349         Flipping the switch on the remaining paint functions to have them all
2350         use IntPoint for the paint offset instead of tx/ty.
2351
2352         No new tests since this is just refactoring.
2353
2354         * page/FrameView.cpp:
2355         (WebCore::FrameView::paintScrollCorner):
2356         * rendering/InlineBox.cpp:
2357         (WebCore::InlineBox::paint):
2358         * rendering/RenderBlock.cpp:
2359         (WebCore::RenderBlock::paint):
2360         (WebCore::RenderBlock::paintContents):
2361         (WebCore::RenderBlock::paintChildren):
2362         (WebCore::RenderBlock::paintFloats):
2363         * rendering/RenderBlock.h:
2364         * rendering/RenderBox.cpp:
2365         (WebCore::RenderBox::paint):
2366         * rendering/RenderBox.h:
2367         * rendering/RenderBoxModelObject.cpp:
2368         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2369         * rendering/RenderDetailsMarker.cpp:
2370         (WebCore::RenderDetailsMarker::paint):
2371         * rendering/RenderDetailsMarker.h:
2372         * rendering/RenderEmbeddedObject.cpp:
2373         (WebCore::RenderEmbeddedObject::paint):
2374         * rendering/RenderEmbeddedObject.h:
2375         * rendering/RenderFrameSet.cpp:
2376         (WebCore::RenderFrameSet::paint):
2377         * rendering/RenderFrameSet.h:
2378         * rendering/RenderImage.cpp:
2379         (WebCore::RenderImage::paint):
2380         * rendering/RenderImage.h:
2381         * rendering/RenderInline.cpp:
2382         (WebCore::RenderInline::paint):
2383         * rendering/RenderInline.h:
2384         * rendering/RenderLayer.cpp:
2385         (WebCore::RenderLayer::paintScrollCorner):
2386         (WebCore::RenderLayer::paintResizer):
2387         (WebCore::RenderLayer::paintLayer):
2388         * rendering/RenderLayerBacking.cpp:
2389         (WebCore::RenderLayerBacking::paintIntoLayer):
2390         * rendering/RenderLineBoxList.cpp:
2391         (WebCore::RenderLineBoxList::paint):
2392         * rendering/RenderLineBoxList.h:
2393         * rendering/RenderListItem.cpp:
2394         (WebCore::RenderListItem::paint):
2395         * rendering/RenderListItem.h:
2396         * rendering/RenderListMarker.cpp:
2397         (WebCore::RenderListMarker::paint):
2398         * rendering/RenderListMarker.h:
2399         * rendering/RenderObject.cpp:
2400         (WebCore::RenderObject::paint):
2401         * rendering/RenderObject.h:
2402         * rendering/RenderReplaced.cpp:
2403         (WebCore::RenderReplaced::paint):
2404         * rendering/RenderReplaced.h:
2405         * rendering/RenderReplica.cpp:
2406         (WebCore::RenderReplica::paint):
2407         * rendering/RenderReplica.h:
2408         * rendering/RenderScrollbar.cpp:
2409         (WebCore::RenderScrollbar::paintPart):
2410         * rendering/RenderScrollbarPart.cpp:
2411         (WebCore::RenderScrollbarPart::paintIntoRect):
2412         * rendering/RenderScrollbarPart.h:
2413         * rendering/RenderTable.cpp:
2414         (WebCore::RenderTable::paint):
2415         (WebCore::RenderTable::paintObject):
2416         * rendering/RenderTable.h:
2417         * rendering/RenderTableCell.cpp:
2418         (WebCore::RenderTableCell::paint):
2419         * rendering/RenderTableCell.h:
2420         * rendering/RenderTableRow.cpp:
2421         (WebCore::RenderTableRow::paint):
2422         * rendering/RenderTableRow.h:
2423         * rendering/RenderTableSection.cpp:
2424         (WebCore::RenderTableSection::paint):
2425         (WebCore::RenderTableSection::paintCell):
2426         * rendering/RenderTableSection.h:
2427         * rendering/RenderText.h:
2428         (WebCore::RenderText::paint):
2429         * rendering/RenderTextControlSingleLine.cpp:
2430         (WebCore::RenderTextControlSingleLine::paint):
2431         * rendering/RenderTextControlSingleLine.h:
2432         * rendering/RenderView.cpp:
2433         (WebCore::RenderView::paint):
2434         * rendering/RenderView.h:
2435         * rendering/RenderWidget.cpp:
2436         (WebCore::RenderWidget::paint):
2437         * rendering/RenderWidget.h:
2438         * rendering/mathml/RenderMathMLBlock.cpp:
2439         (WebCore::RenderMathMLBlock::paint):
2440         * rendering/mathml/RenderMathMLBlock.h:
2441         * rendering/mathml/RenderMathMLFraction.cpp:
2442         (WebCore::RenderMathMLFraction::paint):
2443         * rendering/mathml/RenderMathMLFraction.h:
2444         * rendering/mathml/RenderMathMLRoot.cpp:
2445         (WebCore::RenderMathMLRoot::paint):
2446         * rendering/mathml/RenderMathMLRoot.h:
2447         * rendering/mathml/RenderMathMLSquareRoot.cpp:
2448         (WebCore::RenderMathMLSquareRoot::paint):
2449         * rendering/mathml/RenderMathMLSquareRoot.h:
2450         * rendering/svg/RenderSVGContainer.cpp:
2451         (WebCore::RenderSVGContainer::paint):
2452         * rendering/svg/RenderSVGContainer.h:
2453         * rendering/svg/RenderSVGForeignObject.cpp:
2454         (WebCore::RenderSVGForeignObject::paint):
2455         * rendering/svg/RenderSVGForeignObject.h:
2456         * rendering/svg/RenderSVGHiddenContainer.cpp:
2457         (WebCore::RenderSVGHiddenContainer::paint):
2458         * rendering/svg/RenderSVGHiddenContainer.h:
2459         * rendering/svg/RenderSVGImage.cpp:
2460         (WebCore::RenderSVGImage::paint):
2461         * rendering/svg/RenderSVGImage.h:
2462         * rendering/svg/RenderSVGPath.cpp:
2463         (WebCore::RenderSVGPath::paint):
2464         * rendering/svg/RenderSVGPath.h:
2465         * rendering/svg/RenderSVGResourceMarker.cpp:
2466         (WebCore::RenderSVGResourceMarker::draw):
2467         * rendering/svg/RenderSVGRoot.cpp:
2468         (WebCore::RenderSVGRoot::paint):
2469         * rendering/svg/RenderSVGRoot.h:
2470         * rendering/svg/RenderSVGText.cpp:
2471         (WebCore::RenderSVGText::paint):
2472         * rendering/svg/RenderSVGText.h:
2473         * rendering/svg/SVGImageBufferTools.cpp:
2474         (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer):
2475
2476 2011-06-07  Young Han Lee  <joybro@company100.net>
2477
2478         Reviewed by Kenneth Rohde Christiansen.
2479
2480         [Texmap][Qt] Accelerated animation is not paused properly.
2481         https://bugs.webkit.org/show_bug.cgi?id=61446
2482
2483         The transform matrix of an accelerated animation shouldn't be synced with the matrix of the GraphicsLayer when the animation is paused.
2484
2485         Test: animations/play-state-paused.html
2486
2487         * platform/graphics/texmap/TextureMapperNode.cpp:
2488         (WebCore::TextureMapperNode::syncCompositingStateSelf):
2489         (WebCore::TextureMapperNode::hasOpacityAnimation):
2490         (WebCore::TextureMapperNode::hasTransformAnimation):
2491         * platform/graphics/texmap/TextureMapperNode.h:
2492
2493 2011-06-07  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
2494
2495         Reviewed by Antonio Gomes.
2496
2497         [EFL] Remove Ecore_X bits from PlatformScreenEfl
2498         https://bugs.webkit.org/show_bug.cgi?id=61649
2499
2500         Remove the need for Ecore_X and some X calls by always using
2501         new functions available in EFL to get the screen size.
2502
2503         No new tests since the same functionality are done inside EFL now.
2504
2505         * platform/efl/PlatformScreenEfl.cpp:
2506         (WebCore::screenRect):
2507
2508 2011-06-07  Carlos Garcia Campos  <cgarcia@igalia.com>
2509
2510         Reviewed by Martin Robinson.
2511
2512         [GTK] Move moduleMixesGtkSymbols() from PluginPackage to PluginView
2513         https://bugs.webkit.org/show_bug.cgi?id=62200
2514
2515         In WebKit2 PluginPackage is used by the UI process to load plugins
2516         in order to get information about them, but it doesn't use any GTK
2517         symbol. So the UI process should be able to load plugins even when
2518         building with GTK3, but we should not allow the plugin view to use
2519         the plugin if it mixes GTK2 and GTK3 symbols.
2520
2521         * plugins/PluginPackage.h:
2522         (WebCore::PluginPackage::module): New method to return the
2523         platform module.
2524         * plugins/gtk/PluginPackageGtk.cpp:
2525         (WebCore::PluginPackage::load): Remove moduleMixesGtkSymbols().
2526         * plugins/gtk/PluginViewGtk.cpp:
2527         (WebCore::PluginView::updatePluginWidget): Check whether plugin
2528         was successfully loaded before trying to create the drawable.
2529         (WebCore::PluginView::paint): Return early if plugin didn't start
2530         or was not successfully loaded.
2531         (WebCore::PluginView::handleKeyboardEvent): Ditto.
2532         (WebCore::PluginView::handleMouseEvent): Ditto.
2533         (WebCore::PluginView::handleFocusInEvent): Ditto.
2534         (WebCore::PluginView::handleFocusOutEvent): Ditto.
2535         (WebCore::moduleMixesGtkSymbols):
2536         (WebCore::PluginView::platformStart): Check whether module is
2537         mixing GTK+ 2 and GTK+ 3 symbols.
2538
2539 2011-06-07  Sheriff Bot  <webkit.review.bot@gmail.com>
2540
2541         Unreviewed, rolling out r88238.
2542         http://trac.webkit.org/changeset/88238
2543         https://bugs.webkit.org/show_bug.cgi?id=62216
2544
2545         Broke a couple of inspector tests (Requested by apavlov on
2546         #webkit).
2547
2548         * inspector/front-end/StylesSidebarPane.js:
2549         (WebInspector.StylesSidebarPane.prototype.update):
2550
2551 2011-06-07  Dinu Jacob  <dinu.jacob@nokia.com>
2552
2553         Reviewed by Dimitri Glazkov.
2554
2555         Inform ChromeClient touch events are not needed by the webpage when navigating away from the page instead of in both Document:detach/CachedFrame
2556         https://bugs.webkit.org/show_bug.cgi?id=61543
2557
2558         Inform chrome client that touch events are not needed by the webpage 
2559         when navigating away from the page only once to avoid the flag being 
2560         overwritten later if a page is removed from the page cache
2561
2562         * dom/Document.cpp:
2563         (WebCore::Document::detach):
2564         * history/CachedFrame.cpp:
2565         (WebCore::CachedFrame::CachedFrame):
2566         * loader/FrameLoader.cpp:
2567         (WebCore::FrameLoader::transitionToCommitted):
2568
2569 2011-06-07  Alexander Pavlov  <apavlov@chromium.org>
2570
2571         Reviewed by Yury Semikhatsky.
2572
2573         Web Inspector: node selection is slow in the Elements panel.
2574         https://bugs.webkit.org/show_bug.cgi?id=60813
2575
2576         Schedule full style updates rather than request all node styles from the backend immediately.
2577
2578         * inspector/front-end/StylesSidebarPane.js:
2579         (WebInspector.StylesSidebarPane.prototype.update.reloadAllStyles):
2580         (WebInspector.StylesSidebarPane.prototype.update):
2581
2582 2011-06-07  Yury Semikhatsky  <yurys@chromium.org>
2583
2584         Reviewed by Pavel Feldman.
2585
2586         Web Inspector: remove duplicate breakpoints from localStorage
2587         https://bugs.webkit.org/show_bug.cgi?id=62206
2588
2589         Perform one-time breakpoint storage cleanup to get rid of duplicate breakpoints in
2590         case when settings version is less than 1. 
2591
2592         * inspector/front-end/Settings.js:
2593         (WebInspector.Settings):
2594         (WebInspector.Settings.prototype._set):
2595         (WebInspector.Settings.prototype._migrateSettings.splitObjects):
2596         (WebInspector.Settings.prototype._migrateSettings.removeDuplicateObjects):
2597         (WebInspector.Settings.prototype._migrateSettings):
2598
2599 2011-06-03  Yury Semikhatsky  <yurys@chromium.org>
2600
2601         Reviewed by Pavel Feldman.
2602
2603         [Chromium] Web Inspector: correctly handle disconnect from worker when script execution is paused
2604         https://bugs.webkit.org/show_bug.cgi?id=62019
2605
2606         Dispatch disconnecFrontend message in debugger task mode to make sure
2607         it is processed even if execution is paused.
2608
2609         * bindings/v8/WorkerScriptDebugServer.cpp:
2610         (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
2611         (WebCore::WorkerScriptDebugServer::quitMessageLoopOnPause):
2612         * bindings/v8/WorkerScriptDebugServer.h:
2613
2614 2011-06-07  Felician Marton  <marton.felician.zoltan@stud.u-szeged.hu>
2615
2616         Reviewed by Nikolas Zimmermann.
2617
2618         SVG animation beginElement() does not restart the animation after endElement().
2619         https://bugs.webkit.org/show_bug.cgi?id=43452
2620
2621         Test: svg/animations/animate-endElement-beginElement.html
2622
2623         Calling beginElement() after calling endElement() previously does not restarted the animation when animation
2624         element's end attribute doesn't contains a bigger value than the current animation time.
2625
2626         * svg/animation/SVGSMILElement.cpp:
2627         (WebCore::SVGSMILElement::findInstanceTime):
2628
2629 2011-06-07  Naoki Takano  <takano.naoki@gmail.com>
2630
2631         Reviewed by Kent Tamura.
2632
2633         [Chromium] Click event is not fired for a menulist <select>
2634         https://bugs.webkit.org/show_bug.cgi?id=60563
2635
2636         Tests: SelectItemEventFire, SelectItemKeyEvent, SelectItemRemoveSelectOnChange and SelectItemRemoveSelectOnChange in webkit_unit_tests.
2637
2638         * platform/chromium/PopupMenuChromium.cpp:
2639         (WebCore::PopupContainer::showPopup): Set m_focusedNode from m_frameView.
2640         (WebCore::PopupListBox::handleMouseReleaseEvent): Call dispatchMouseEvent to forward the event only if select popup.
2641         (WebCore::PopupListBox::acceptIndex): Change to return accepted or not.
2642
2643 2011-06-07  Andras Becsi  <abecsi@webkit.org>
2644
2645         Reviewed by Yury Semikhatsky.
2646  
2647         REGRESSION(r88221): "Chromium debug compilation broken".
2648         https://bugs.webkit.org/show_bug.cgi?id=62197
2649
2650         No new tests needed.
2651
2652         * bindings/v8/V8GCController.cpp: Also rename call-sites.
2653         (WebCore::V8GCController::gcPrologue):
2654         (WebCore::V8GCController::gcEpilogue):
2655
2656 2011-06-07  MORITA Hajime  <morrita@google.com>
2657
2658         Unreviewed, rolling out r88212 and r88219.
2659         http://trac.webkit.org/changeset/88212
2660         http://trac.webkit.org/changeset/88219
2661         https://bugs.webkit.org/show_bug.cgi?id=57439
2662
2663         Tests get timeout at Snow Leopard
2664
2665         * css/html.css:
2666         (html:focus, body:focus, input[readonly]:focus):
2667         * rendering/RenderWidget.cpp:
2668         (WebCore::RenderWidget::paint):
2669
2670 2011-06-07  Andras Becsi  <abecsi@webkit.org>
2671
2672         Rubber-stamped by Csaba Osztrogonác.
2673
2674         [Qt][V8] Fix the build after 88221.
2675
2676         No new tests needed.
2677
2678         * WebCore.pro: Remove non-existing files.
2679         * bindings/v8/V8DOMMap.cpp: 
2680         (WebCore::removeAllDOMObjects): Also rename the definition of the function.
2681
2682 2011-06-06  Dmitry Lomov  <dslomov@google.com>
2683
2684         Reviewed by Adam Barth.
2685
2686         https://bugs.webkit.org/show_bug.cgi?id=62164
2687         Remove "multi-threaded" logic in V8 DOMData, DOMDataStore and friends
2688         This functionality is untested and unused:
2689         This is an old code from Lockers-based implementation of WebWorkers in
2690         V8 bindings, to make sure that DOM objects are released on the right thread
2691         even though GC could have happened on any thread. It is currently unused (since
2692         current model is one worker per process) and is being removed because new implementation
2693         of WebWorkers will be using V8 isolates.
2694
2695         * WebCore.gypi:
2696         * bindings/v8/ChildThreadDOMData.cpp: Removed.
2697         * bindings/v8/ChildThreadDOMData.h: Removed.
2698         * bindings/v8/DOMData.cpp:
2699         (WebCore::DOMData::DOMData):
2700         (WebCore::DOMData::getCurrent):
2701         (WebCore::DOMData::getMainThreadStore):
2702         * bindings/v8/DOMData.h:
2703         (WebCore::DOMData::getStore):
2704         (WebCore::DOMData::getCurrentMainThreadStore):
2705         (WebCore::DOMData::handleWeakObject):
2706         * bindings/v8/DOMDataStore.cpp:
2707         (WebCore::DOMDataStore::DOMDataStore):
2708         (WebCore::DOMDataStore::~DOMDataStore):
2709         (WebCore::DOMDataStore::weakNodeCallback):
2710         * bindings/v8/DOMDataStore.h:
2711         * bindings/v8/MainThreadDOMData.cpp: Removed.
2712         * bindings/v8/MainThreadDOMData.h: Removed.
2713         * bindings/v8/V8DOMMap.cpp:
2714         (WebCore::getDOMDataStore):
2715         (WebCore::visitDOMNodes):
2716         (WebCore::visitDOMObjects):
2717         (WebCore::visitActiveDOMObjects):
2718         (WebCore::visitDOMSVGElementInstances):
2719         * bindings/v8/V8DOMMap.h:
2720         * bindings/v8/V8GCController.cpp:
2721         (WebCore::V8GCController::gcPrologue):
2722         (WebCore::V8GCController::gcEpilogue):
2723         * bindings/v8/WorkerScriptController.cpp:
2724         (WebCore::WorkerScriptController::~WorkerScriptController):
2725
2726 2011-06-06  Nico Weber  <thakis@chromium.org>
2727
2728         Reviewed by Adam Barth.
2729
2730         [chromium] Make VideoFrameChromium's destructor virtual
2731         https://bugs.webkit.org/show_bug.cgi?id=62186
2732
2733         This fixes a real bug, since WebMediaPlayerClientImpl::putCurrentFrame
2734         deletes a VideoFrameChromium subclass type through this interface
2735         class, causing ~VideoFrameChromiumImpl's destructor not to run.
2736         (VideoFrameChroimumImpl happens to not have a destructor or any
2737         non-POD member variables, so it's more a latent bug.)
2738
2739         * platform/graphics/chromium/VideoFrameChromium.cpp:
2740         (WebCore::VideoFrameChromium::~VideoFrameChromium):
2741         * platform/graphics/chromium/VideoFrameChromium.h:
2742
2743 2011-06-06  Simon Fraser  <simon.fraser@apple.com>
2744
2745         Reviewed by Sammy Weinig.
2746
2747         Remove some unnecessary includes from AnimationBase.cpp
2748         https://bugs.webkit.org/show_bug.cgi?id=62183
2749
2750         * page/animation/AnimationBase.cpp:
2751
2752 2011-06-06  Kent Tamura  <tkent@chromium.org>
2753
2754         Unreviewed, a crash fix by a roll out.
2755
2756         REGRESSION(r87980): Null pointer dereference in RenderTextControl::setInnerText()
2757         https://bugs.webkit.org/show_bug.cgi?id=62116
2758
2759         Roll out the WebCore part of r87980.
2760
2761         * html/SearchInputType.cpp:
2762         (WebCore::SearchInputType::SearchInputType):
2763         (WebCore::SearchInputType::createShadowSubtree):
2764         (WebCore::SearchInputType::destroyShadowSubtree):
2765         * html/SearchInputType.h:
2766         (WebCore::SearchInputType::innerBlockElement):
2767         (WebCore::SearchInputType::resultsButtonElement):
2768         (WebCore::SearchInputType::cancelButtonElement):
2769         * html/TextFieldInputType.cpp:
2770         (WebCore::TextFieldInputType::TextFieldInputType):
2771         (WebCore::TextFieldInputType::createShadowSubtree):
2772         (WebCore::TextFieldInputType::destroyShadowSubtree):
2773         * html/TextFieldInputType.h:
2774         (WebCore::TextFieldInputType::innerTextElement):
2775         (WebCore::TextFieldInputType::innerSpinButtonElement):
2776         (WebCore::TextFieldInputType::speechButtonElement):
2777         (WebCore::TextFieldInputType::setInnerTextElement):
2778         (WebCore::TextFieldInputType::setSpeechButtonElement):
2779         * html/shadow/TextControlInnerElements.cpp:
2780         * html/shadow/TextControlInnerElements.h:
2781
2782 2011-06-06  No'am Rosenthal  <noam.rosenthal@nokia.com>
2783
2784         Reviewed by Simon Fraser.
2785
2786         Allow copying of KeyframeValueList.
2787         https://bugs.webkit.org/show_bug.cgi?id=62171
2788
2789         Make a deep copy of KeyframeValueList, copying each of the keyframes with a virtual clone() function.
2790
2791         No new functionality so no new tests.
2792
2793         * platform/graphics/GraphicsLayer.h:
2794         (WebCore::FloatAnimationValue::clone):
2795         (WebCore::TransformAnimationValue::TransformAnimationValue):
2796         (WebCore::TransformAnimationValue::clone):
2797         (WebCore::TransformAnimationValue::value):
2798         (WebCore::KeyframeValueList::KeyframeValueList):
2799
2800 2011-06-06  Simon Fraser  <simon.fraser@apple.com>
2801
2802         Reviewed by Dan Bernstein.
2803
2804         Incorrect rounding of color values during transitions
2805         https://bugs.webkit.org/show_bug.cgi?id=62141
2806         
2807         When blending integers, round to the nearest integer, instead of always rounding down.
2808
2809         Test: transitions/color-transition-rounding.html
2810
2811         * page/animation/AnimationBase.cpp:
2812         (WebCore::blendFunc):
2813
2814 2011-06-06  Sheriff Bot  <webkit.review.bot@gmail.com>
2815
2816         Unreviewed, rolling out r88202.
2817         http://trac.webkit.org/changeset/88202
2818         https://bugs.webkit.org/show_bug.cgi?id=62182
2819
2820         This broke the mac clang bot (Requested by koz__ on #webkit).
2821
2822         * dom/Node.cpp:
2823         (WebCore::Node::hasNonEmptyBoundingBox):
2824         * rendering/InlineBox.h:
2825         * rendering/RenderBlock.cpp:
2826         (WebCore::RenderBlock::absoluteRects):
2827         * rendering/RenderBlock.h:
2828         * rendering/RenderBox.cpp:
2829         (WebCore::RenderBox::absoluteRects):
2830         * rendering/RenderBox.h:
2831         * rendering/RenderInline.cpp:
2832         (WebCore::RenderInline::absoluteRects):
2833         * rendering/RenderInline.h:
2834         * rendering/RenderObject.cpp:
2835         (WebCore::RenderObject::absoluteBoundingBoxRect):
2836         * rendering/RenderObject.h:
2837         (WebCore::RenderObject::absoluteRects):
2838         * rendering/RenderText.cpp:
2839         (WebCore::RenderText::absoluteRects):
2840         * rendering/RenderText.h:
2841         * rendering/RenderView.cpp:
2842         (WebCore::RenderView::absoluteRects):
2843         * rendering/RenderView.h:
2844
2845 2011-06-06  Noel Gordon  <noel.gordon@gmail.com>
2846
2847         Reviewed by Hajime Morita.
2848
2849         Draw CSS outline style for render widgets: iframe, embed, object, applet.
2850         https://bugs.webkit.org/show_bug.cgi?id=57439
2851
2852         Draw CSS outlines for render widgets: iframe, embed, object, applet. These elements can
2853         be focused (via clicks or tabIndex) but should not have a visible focus ring by default.
2854
2855         Tests: fast/replaced/no-focus-ring-embed-1.html
2856                fast/replaced/no-focus-ring-embed-2.html
2857                fast/replaced/no-focus-ring-iframe.html
2858                fast/replaced/no-focus-ring-object-1.html
2859                fast/replaced/no-focus-ring-object-2.html
2860                fast/replaced/outline-replaced-elements.html
2861
2862         * css/html.css:
2863         (applet:focus, embed:focus, iframe:focus, object:focus):  Default to no focus ring.
2864         * rendering/RenderWidget.cpp:
2865         (WebCore::RenderWidget::paint): Paint the render widget CSS outline style.
2866
2867 2011-06-06  MORITA Hajime  <morrita@google.com>
2868
2869         Reviewed by Kent Tamura.
2870
2871         Assertion fails in TextCheckingHelper by right-clicking on <input type=search>
2872         https://bugs.webkit.org/show_bug.cgi?id=61991
2873
2874         Added a guard bofore TextCheckingHelper construction sites.
2875
2876         Test: editing/spelling/spellcheck-input-search-crash.html
2877
2878         * editing/Editor.cpp:
2879         (WebCore::Editor::isSelectionUngrammatical):
2880         (WebCore::Editor::guessesForUngrammaticalSelection):
2881         (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection):
2882
2883 2011-06-06  Emil A Eklund  <eae@chromium.org>
2884
2885         Reviewed by Eric Seidel.
2886
2887         Update RenderBlock::paint to use IntPoint internally
2888         https://bugs.webkit.org/show_bug.cgi?id=62140
2889
2890         Covered by existing tests.
2891
2892         * rendering/RenderBlock.cpp:
2893         (WebCore::RenderBlock::paint):
2894
2895 2011-06-06  Emil A Eklund  <eae@chromium.org>
2896
2897         Reviewed by Eric Seidel.
2898
2899         Convert RenderBox::absoluteRects to IntPoint
2900         https://bugs.webkit.org/show_bug.cgi?id=62130
2901
2902         Covered by existing tests.
2903
2904         * dom/Node.cpp:
2905         (WebCore::Node::hasNonEmptyBoundingBox):
2906         * rendering/RenderBlock.cpp:
2907         (WebCore::RenderBlock::absoluteRects):
2908         * rendering/RenderBlock.h:
2909         * rendering/RenderBox.cpp:
2910         (WebCore::RenderBox::absoluteRects):
2911         * rendering/RenderBox.h:
2912         * rendering/RenderInline.cpp:
2913         (WebCore::RenderInline::absoluteRects):
2914         * rendering/RenderInline.h:
2915         * rendering/RenderObject.cpp:
2916         (WebCore::RenderObject::absoluteBoundingBoxRect):
2917         * rendering/RenderObject.h:
2918         (WebCore::RenderObject::absoluteRects):
2919         * rendering/RenderText.cpp:
2920         (WebCore::RenderText::absoluteRects):
2921         * rendering/RenderText.h:
2922         * rendering/RenderView.cpp:
2923         (WebCore::RenderView::absoluteRects):
2924         * rendering/RenderView.h:
2925
2926 2011-06-06  Levi Weintraub  <leviw@chromium.org>
2927
2928         Reviewed by Eric Seidel.
2929
2930         Switch shouldPaint to use IntPoint
2931         https://bugs.webkit.org/show_bug.cgi?id=62158
2932
2933         Switching shouldPaint to take an IntPoint representing the paint offset instead
2934         of a pair of ints.
2935
2936         No new tests as this is simple refactoring.
2937
2938         * rendering/RenderReplaced.cpp:
2939         (WebCore::RenderReplaced::paint):
2940         (WebCore::RenderReplaced::shouldPaint):
2941         * rendering/RenderReplaced.h:
2942         * rendering/RenderWidget.cpp:
2943         (WebCore::RenderWidget::paint):
2944
2945 2011-06-06  James Simonsen  <simonjam@chromium.org>
2946
2947         Reviewed by James Robinson.
2948
2949         Add monotonicallyIncreasingTime() to get monotonically increasing time
2950         https://bugs.webkit.org/show_bug.cgi?id=37743
2951
2952         * platform/chromium/SystemTimeChromium.cpp:
2953         (WebCore::monotonicallyIncreasingTime): Add primitive monotonicallyIncreasingTime() which just wraps currentTime().
2954
2955 2011-06-06  Emil A Eklund  <eae@chromium.org>
2956
2957         Reviewed by Eric Seidel.
2958
2959         Convert RenderBox::pushContentsClip to IntPoint
2960         https://bugs.webkit.org/show_bug.cgi?id=62133
2961
2962         Covered by existing tests.
2963
2964         * rendering/RenderBlock.cpp:
2965         (WebCore::Covered by existing tests.RenderBlock::paint):
2966         * rendering/RenderBox.cpp:
2967         (WebCore::RenderBox::pushContentsClip):
2968         * rendering/RenderBox.h:
2969         * rendering/RenderTable.cpp:
2970         (WebCore::RenderTable::paint):
2971         * rendering/RenderTableSection.cpp:
2972         (WebCore::RenderTableSection::paint):
2973
2974 2011-06-06  Levi Weintraub  <leviw@chromium.org>
2975
2976         Reviewed by Eric Seidel.
2977
2978         Switch InlineFlowBox::paintMask to use IntPoint
2979         https://bugs.webkit.org/show_bug.cgi?id=62156
2980
2981         Switching InlineFlowBox::paintMask to take an IntPoint representing the paint
2982         offset instead of a pair of ints.
2983
2984         No new tests as this is simple refactoring.
2985
2986         * rendering/InlineFlowBox.cpp:
2987         (WebCore::InlineFlowBox::paint):
2988         (WebCore::InlineFlowBox::paintMask):
2989         * rendering/InlineFlowBox.h:
2990
2991 2011-06-06  Emil A Eklund  <eae@chromium.org>
2992
2993         Reviewed by Eric Seidel.
2994
2995         Convert hitTest to IntPoint
2996         https://bugs.webkit.org/show_bug.cgi?id=62144
2997
2998         Covered by existing tests.
2999
3000         * rendering/InlineBox.cpp:
3001         (WebCore::InlineBox::nodeAtPoint):
3002         * rendering/RenderBlock.cpp:
3003         (WebCore::RenderBlock::hitTestFloats):
3004         (WebCore::RenderBlock::hitTestContents):
3005         * rendering/RenderInline.cpp:
3006         (WebCore::RenderInline::nodeAtPoint):
3007         * rendering/RenderLayer.cpp:
3008         (WebCore::RenderLayer::hitTestContents):
3009         * rendering/RenderLayer.h:
3010         (WebCore::RenderLayer::renderBoxLocation):
3011         (WebCore::RenderLayer::renderBoxX):
3012         (WebCore::RenderLayer::renderBoxY):
3013         * rendering/RenderLineBoxList.cpp:
3014         (WebCore::RenderLineBoxList::hitTest):
3015         * rendering/RenderLineBoxList.h:
3016         * rendering/RenderObject.cpp:
3017         (WebCore::RenderObject::hitTest):
3018         * rendering/RenderObject.h:
3019
3020 2011-06-06  Levi Weintraub  <leviw@chromium.org>
3021
3022         Reviewed by Eric Seidel.
3023
3024         Switch paintScrollbar to use IntPoint
3025         https://bugs.webkit.org/show_bug.cgi?id=62151
3026
3027         Switching paintScrollbar to use IntPoint instead of a pair of ints.
3028
3029         No new tests since this is simple refactoring.
3030
3031         * rendering/RenderListBox.cpp:
3032         (WebCore::RenderListBox::paintObject):
3033         (WebCore::RenderListBox::paintScrollbar):
3034         * rendering/RenderListBox.h:
3035
3036 2011-06-06  Daniel Cheng  <dcheng@chromium.org>
3037
3038         Reviewed by Tony Chang.
3039
3040         [chromium] Delete dead clipboard code.
3041         https://bugs.webkit.org/show_bug.cgi?id=62113
3042
3043         No new tests since this change only deleted unused code.
3044
3045         * WebCore.gypi:
3046         * platform/chromium/ChromiumDataObjectLegacy.cpp: Removed.
3047         * platform/chromium/ChromiumDataObjectLegacy.h: Removed.
3048         * platform/chromium/ReadableDataObject.cpp: Removed.
3049         * platform/chromium/ReadableDataObject.h: Removed.
3050         * platform/chromium/WritableDataObject.cpp: Removed.
3051         * platform/chromium/WritableDataObject.h: Removed.
3052
3053 2011-06-06  Levi Weintraub  <leviw@chromium.org>
3054
3055         Reviewed by Eric Seidel.
3056
3057         Switch paintOutline, paintContinuationOutlines, and paintOutlineForLine to use IntPoint
3058         https://bugs.webkit.org/show_bug.cgi?id=62137
3059
3060         Switching paintOutline, paintContinuationOutlines, and paintOutlineForLine to take an IntPoint
3061         representing the paint offset instead of a pair of ints.
3062
3063         No new tests as this is simple refactoring.
3064
3065         * rendering/RenderBlock.cpp:
3066         (WebCore::RenderBlock::paintObject):
3067         (WebCore::RenderBlock::paintContinuationOutlines):
3068         * rendering/RenderBlock.h:
3069         * rendering/RenderInline.cpp:
3070         (WebCore::RenderInline::paintOutline):
3071         (WebCore::RenderInline::paintOutlineForLine):
3072         * rendering/RenderInline.h:
3073         * rendering/RenderLineBoxList.cpp:
3074         (WebCore::RenderLineBoxList::paint):
3075
3076 2011-06-06  Emil A Eklund  <eae@chromium.org>
3077
3078         Reviewed by Eric Seidel.
3079
3080         Convert RenderBox::popContentsClip to IntPoint
3081         https://bugs.webkit.org/show_bug.cgi?id=62132
3082
3083         Covered by existing tests.
3084
3085         * rendering/RenderBlock.cpp:
3086         (WebCore::RenderBlock::paint):
3087         * rendering/RenderBox.cpp:
3088         (WebCore::RenderBox::popContentsClip):
3089         * rendering/RenderBox.h:
3090         * rendering/RenderTable.cpp:
3091         (WebCore::RenderTable::paint):
3092         * rendering/RenderTableSection.cpp:
3093         (WebCore::RenderTableSection::paint):
3094
3095 2011-06-06  Levi Weintraub  <leviw@chromium.org>
3096
3097         Reviewed by Eric Seidel.
3098
3099         Remove tx/ty offset from selectionRect
3100         https://bugs.webkit.org/show_bug.cgi?id=62146
3101
3102         Removing unused offset parameters from selectionRect.
3103
3104         No new tests since this is just cleanup.
3105
3106         * rendering/EllipsisBox.cpp:
3107         (WebCore::EllipsisBox::selectionRect):
3108         * rendering/EllipsisBox.h:
3109         * rendering/InlineTextBox.cpp:
3110         (WebCore::InlineTextBox::selectionRect):
3111         * rendering/InlineTextBox.h:
3112         * rendering/RenderText.cpp:
3113         (WebCore::RenderText::absoluteRectsForRange):
3114         (WebCore::ellipsisRectForBox):
3115         (WebCore::RenderText::absoluteQuadsForRange):
3116         (WebCore::RenderText::selectionRectForRepaint):
3117         * rendering/svg/RenderSVGInlineText.cpp:
3118         (WebCore::RenderSVGInlineText::localCaretRect):
3119         * rendering/svg/SVGInlineTextBox.cpp:
3120         (WebCore::SVGInlineTextBox::selectionRect):
3121         * rendering/svg/SVGInlineTextBox.h:
3122
3123 2011-06-06  Paul Kinlan  <paulkinlan@google.com>
3124
3125         Reviewed by Jeremy Orlow.
3126
3127         Let developers call createEvent("PopStateEvent"), previously it wasn't
3128         exposed and threw an exeception. 
3129         https://bugs.webkit.org/show_bug.cgi?id=62099
3130
3131         * WebCore/dom/Document.cpp:
3132         * WebCore/dom/PopStateEvent.cpp:
3133         * WebCore/dom/PopStateEvent.h:
3134
3135 2011-06-03  Levi Weintraub  <leviw@chromium.org>
3136
3137         Reviewed by Eric Seidel.
3138
3139         Switch paintSelection to use IntPoint
3140         https://bugs.webkit.org/show_bug.cgi?id=62059
3141
3142         Switching paintSelection to use an IntPoint to represent the paint offset
3143         instead of a pair of ints.
3144
3145         No new tests since this is simple refactoring.
3146
3147         * rendering/EllipsisBox.cpp:
3148         (WebCore::EllipsisBox::paint):
3149         (WebCore::EllipsisBox::paintSelection):
3150         * rendering/EllipsisBox.h:
3151         * rendering/RenderBlock.cpp:
3152         (WebCore::RenderBlock::paintObject):
3153         (WebCore::RenderBlock::paintSelection):
3154         * rendering/RenderBlock.h:
3155
3156 2011-06-06  Emil A Eklund  <eae@chromium.org>
3157
3158         Reviewed by Eric Seidel.
3159
3160         Convert RenderBox::clipRect to IntPoint
3161         https://bugs.webkit.org/show_bug.cgi?id=62045
3162
3163         Covered by existing tests.
3164
3165         * rendering/RenderBox.cpp:
3166         (WebCore::RenderBox::clipRect):
3167         * rendering/RenderBox.h:
3168         * rendering/RenderLayer.cpp:
3169         (WebCore::RenderLayer::calculateClipRects):
3170         (WebCore::RenderLayer::calculateRects):
3171         (WebCore::RenderLayer::repaintBlockSelectionGaps):
3172         * rendering/RenderLayerBacking.cpp:
3173         (WebCore::clipBox):
3174
3175 2011-06-06  Peter Kasting  <pkasting@google.com>
3176
3177         Reviewed by Antonio Gomes.
3178
3179         Remove unnecessary args from scroll functions.
3180         https://bugs.webkit.org/show_bug.cgi?id=61648
3181
3182         No behavior change, so no tests.
3183
3184         * WebCore.exp.in:
3185         * WebCore.order:
3186         * dom/Element.cpp:
3187         (WebCore::Element::scrollIntoView):
3188         (WebCore::Element::scrollIntoViewIfNeeded):
3189         * editing/FrameSelection.cpp:
3190         (WebCore::FrameSelection::revealSelection):
3191         * page/EventHandler.cpp:
3192         (WebCore::EventHandler::handleMousePressEvent):
3193         * page/FrameView.cpp:
3194         (WebCore::FrameView::scrollToAnchor):
3195         * rendering/RenderBox.cpp:
3196         (WebCore::RenderBox::canBeScrolledAndHasScrollableArea):
3197         (WebCore::RenderBox::canBeProgramaticallyScrolled):
3198         * rendering/RenderBox.h:
3199         * rendering/RenderLayer.cpp:
3200         (WebCore::RenderLayer::scrollRectToVisible):
3201         (WebCore::RenderLayer::autoscroll):
3202         * rendering/RenderLayer.h:
3203         * rendering/RenderListBox.h:
3204         (WebCore::RenderListBox::canBeProgramaticallyScrolled):
3205         * rendering/RenderTextControl.h:
3206         (WebCore::RenderTextControl::canBeProgramaticallyScrolled):
3207
3208 2011-06-06  Levi Weintraub  <leviw@chromium.org>
3209
3210         Reviewed by Eric Seidel.
3211
3212         Switch paintContents, paintColumnContents, paintColumnRules, and paintSelection to use IntPoint
3213         https://bugs.webkit.org/show_bug.cgi?id=62134
3214
3215         Switching paintContents, paintColumnContents, paintColumnRules, and paintSelection to take an
3216         IntPoint representing the paint offset instead of a pair of ints.
3217
3218         No new tests as this simple refactoring.
3219
3220         * rendering/RenderBlock.cpp:
3221         (WebCore::RenderBlock::paintColumnRules):
3222         (WebCore::RenderBlock::paintColumnContents):
3223         (WebCore::RenderBlock::paintContents):
3224         (WebCore::RenderBlock::paintObject):
3225         (WebCore::RenderBlock::paintSelection):
3226         * rendering/RenderBlock.h:
3227
3228 2011-06-06  Yael Aharon  <yael.aharon@nokia.com>
3229
3230         Reviewed by Eric Seidel.
3231
3232         Inline elements are wrapped prematurely with non-zero border, margin or padding.
3233         https://bugs.webkit.org/show_bug.cgi?id=60459
3234
3235         When an inline element has a right border/margin/padding and it has more than one descendant with no siblings,
3236         the width of the right border/margin/padding should be included in line breaking calculation only once,
3237         and not for each descendant.
3238
3239         Test: fast/inline/inline-wrap-with-parent-padding.html
3240
3241         * rendering/RenderBlockLineLayout.cpp:
3242         (WebCore::RenderBlock::LineBreaker::nextLineBreak):
3243
3244 2011-06-06  Shishir Agrawal  <shishir@chromium.org>
3245
3246         Reviewed by Tony Gentilcore.
3247
3248         Add a "prerender" state for page visibility.
3249         https://bugs.webkit.org/show_bug.cgi?id=62062
3250
3251         * page/PageVisibilityState.cpp:
3252         (WebCore::pageVisibilityStateString):
3253         * page/PageVisibilityState.h:
3254
3255 2011-06-06  Cary Clark  <caryclark@google.com>
3256
3257         Reviewed by Eric Seidel.
3258
3259         Fix typo in CachedFont.cpp #define
3260         https://bugs.webkit.org/show_bug.cgi?id=62127
3261
3262         No new tests. The define typo in question is
3263         not yet enabled, so this change has no functional
3264         impact.
3265
3266         * loader/cache/CachedFont.cpp:
3267         change SKIA_MAC_ON_CHROME to SKIA_ON_MAC_CHROME
3268
3269 2011-06-03  Levi Weintraub  <leviw@chromium.org>
3270
3271         Reviewed by Eric Seidel.
3272
3273         Switch paintFloats, paintChildren, and paintEllipsisBoxes to use IntPoint
3274         https://bugs.webkit.org/show_bug.cgi?id=62058
3275
3276         Switching paintFloats, paintChildren, and paintEllipsisBoxes to take IntPoints representing
3277         their paint offsets instead of pairs of ints.
3278
3279         No new tests since this is simple refactoring.
3280
3281         * rendering/RenderBlock.cpp:
3282         (WebCore::RenderBlock::paintColumnContents):
3283         (WebCore::RenderBlock::paintContents):
3284         (WebCore::RenderBlock::paintChildren):
3285         (WebCore::RenderBlock::paintObject):
3286         (WebCore::RenderBlock::paintFloats):
3287         (WebCore::RenderBlock::paintEllipsisBoxes):
3288         * rendering/RenderBlock.h:
3289
3290 2011-06-06  Steve Block  <steveblock@google.com>
3291
3292         Reviewed by Yury Semikhatsky.
3293
3294         Use of ENABLE(INSPECTOR) is inconsistent
3295         https://bugs.webkit.org/show_bug.cgi?id=62118
3296
3297         Correctly guard implementation of ScriptProfiler.
3298
3299         No new tests, build fix only.
3300
3301         * bindings/v8/ScriptProfiler.cpp:
3302         (WebCore::ScriptProfiler::initialize):
3303
3304 2011-06-04  Dominic Cooney  <dominicc@chromium.org>
3305
3306         Reviewed by Dimitri Glazkov.
3307
3308         Add WebCoreTestSupport project.
3309         https://bugs.webkit.org/show_bug.cgi?id=61076
3310
3311         * WebCore.vcproj/WebCoreCommon.vsprops:
3312         * WebCore.vcproj/WebCoreTestSupport.vcproj: Added.
3313         * WebCore.vcproj/copyForwardingHeaders.cmd: Copy WebCoreTestSupport.h.
3314
3315 2011-06-06  Alexandru Chiculita  <achicu@adobe.com>
3316
3317         Reviewed by Kent Tamura.
3318
3319         Add ENABLE_CSS_EXCLUSIONS support for build-webkit script
3320         https://bugs.webkit.org/show_bug.cgi?id=61628
3321
3322         This patch modifies only the build system. Therefore,
3323         there are no new tests.
3324
3325         * Configurations/FeatureDefines.xcconfig:
3326
3327 2011-06-06  Mihnea Ovidenie  <mihnea@adobe.com>
3328
3329         Reviewed by Kent Tamura.
3330
3331         Add ENABLE(CSS_REGIONS) guard for CSS Regions support
3332         https://bugs.webkit.org/show_bug.cgi?id=61631
3333         
3334         This patch modifies only the build system. Therefore,
3335         there are no new tests.
3336
3337         * Configurations/FeatureDefines.xcconfig:
3338
3339 2011-06-03  Hans Wennborg  <hans@chromium.org>
3340
3341         Reviewed by Tony Gentilcore.
3342
3343         IndexedDB: Clean-up function prototypes in IDBLevelDBBackingStore.cpp
3344         https://bugs.webkit.org/show_bug.cgi?id=62013
3345
3346         Clean up the prototypes for cursor open functions by introducing the
3347         CursorOptions struct.
3348
3349         Just clean-up, no new functionality so no new tests.
3350
3351         * storage/IDBLevelDBBackingStore.cpp:
3352         (WebCore::CursorOptions::CursorImplCommon::CursorImplCommon):
3353         (WebCore::CursorOptions::CursorImplCommon::firstSeek):
3354         (WebCore::CursorOptions::CursorImplCommon::continueFunction):
3355         (WebCore::CursorOptions::ObjectStoreCursorImpl::create):
3356         (WebCore::CursorOptions::ObjectStoreCursorImpl::ObjectStoreCursorImpl):
3357         (WebCore::CursorOptions::IndexKeyCursorImpl::create):
3358         (WebCore::CursorOptions::IndexKeyCursorImpl::IndexKeyCursorImpl):
3359         (WebCore::CursorOptions::IndexCursorImpl::create):
3360         (WebCore::CursorOptions::IndexCursorImpl::IndexCursorImpl):
3361         (WebCore::IDBLevelDBBackingStore::openObjectStoreCursor):
3362         (WebCore::IDBLevelDBBackingStore::openIndexKeyCursor):
3363         (WebCore::IDBLevelDBBackingStore::openIndexCursor):
3364
3365 2011-06-06  Mustafizur Rahaman  <mustaf.here@gmail.com>
3366
3367         Reviewed by Darin Adler.
3368
3369         Fix LayoutTests/canvas/philip/tests/2d.composite.operation.highlight.html
3370         https://bugs.webkit.org/show_bug.cgi?id=48290
3371         
3372         "highlight" is not a valid globalComposite operation
3373         as per http://www.w3.org/TR/2011/WD-2dcontext-20110525/#compositing
3374         Therefore, removed the option from the source code.
3375         
3376         Tests: No new tests required.
3377         LayoutTests\canvas\philip\tests\2d.composite.operation.highlight.html can be used for testing.
3378
3379         * css/CSSPrimitiveValueMappings.h:
3380         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
3381         (WebCore::CSSPrimitiveValue::operator CompositeOperator):
3382         * platform/graphics/GraphicsTypes.cpp:
3383         * platform/graphics/GraphicsTypes.h:
3384         * platform/graphics/cairo/CairoUtilities.cpp:
3385         (WebCore::toCairoOperator):
3386         * platform/graphics/cg/GraphicsContextCG.cpp:
3387         (WebCore::GraphicsContext::setPlatformCompositeOperation):
3388         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
3389         (WebCore::SharedGraphicsContext3D::applyCompositeOperator):
3390         * platform/graphics/openvg/PainterOpenVG.cpp:
3391         (WebCore::PlatformPainterState::applyBlending):
3392         * platform/graphics/qt/GraphicsContextQt.cpp:
3393         (WebCore::toQtCompositionMode):
3394         * platform/graphics/skia/SkiaUtils.cpp:
3395
3396 2011-06-04  Abhishek Arya  <inferno@chromium.org>
3397
3398         Reviewed by Kent Tamura.
3399
3400         Add some asserts for array boundary checks in TextRun. Fix
3401         an integer issue in linux text controller code.
3402         https://bugs.webkit.org/show_bug.cgi?id=62085
3403
3404         Testing ComplexTextControllerLinux change requires a testcase
3405         > 32 kb which is not feasible. All other changes are tested by
3406         existing layouttests.
3407
3408         * platform/graphics/TextRun.h:
3409         (WebCore::TextRun::operator[]): add assert.
3410         (WebCore::TextRun::data): add assert.
3411         * platform/graphics/WidthIterator.cpp:
3412         (WebCore::WidthIterator::advance): bail early and prevent access
3413         to one byte across the text run boundary.
3414         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
3415         (WebCore::ComplexTextController::getNormalizedTextRun): wrong
3416         int16 vs int comparison.
3417         * rendering/svg/SVGTextRunRenderingContext.cpp:
3418         (WebCore::SVGTextRunWalker::walk): bail early when from and to
3419         is outside the text run boundary. this hit easily after adding
3420         the assert when from = to = end and read in run.data(from). 
3421
3422 2011-06-05  Kent Tamura  <tkent@chromium.org>
3423
3424         Reviewed by Dimitri Glazkov.
3425
3426         Rolling out r84528.
3427         http://trac.webkit.org/changeset/84528
3428         https://bugs.webkit.org/show_bug.cgi?id=62100
3429
3430         It made several problems on elements with new shadow DOM.
3431
3432         * dom/Element.cpp:
3433         (WebCore::Element::copyNonAttributeProperties):
3434
3435 2011-06-05  Igor Oliveira  <igor.oliveira@openbossa.org>
3436
3437         Reviewed by Kenneth Rohde Christiansen.
3438
3439         fast/viewport/viewport-45.html fails in GTK+/Qt
3440         https://bugs.webkit.org/show_bug.cgi?id=47481
3441
3442         computeViewportAttributes does many math operations with float point arithmetic
3443         and in some cases there is loss of precision making tests have incorrect values.
3444
3445         * dom/ViewportArguments.cpp:
3446         (WebCore::computeViewportAttributes):
3447
3448 == Rolled over to ChangeLog-2011-06-04 ==