98bac6d8a72aecd76b63c475d919d1f93bfa0622
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-05-09  Robin Dunn  <robin@alldunn.com>
2
3         Reviewed by Kevin Ollivier.
4
5         [wx] Add invalid file handle check.
6         
7         https://bugs.webkit.org/show_bug.cgi?id=60483
8
9         * platform/wx/FileSystemWx.cpp:
10         (WebCore::closeFile):
11
12 2011-05-09  Robin Dunn  <robin@alldunn.com>
13
14         Reviewed by Kevin Ollivier.
15
16         [wx] Update the popup menu code to grab the native control and initialize the
17         event handler properly.
18         
19         https://bugs.webkit.org/show_bug.cgi?id=60482
20
21         * platform/wx/PopupMenuWx.cpp:
22         (WebCore::PopupMenuWx::PopupMenuWx):
23         (WebCore::PopupMenuWx::~PopupMenuWx):
24         (WebCore::PopupMenuWx::show):
25
26 2011-05-09  Robin Dunn  <robin@alldunn.com>
27
28         Reviewed by Kevin Ollivier.
29
30         [wx] Make sure other controls adjust the rect to handle transforms, and turn off the
31         adjustment in 2.9.2+ where it is handled internally by wx.
32         
33         Also add a couple drawing and focus handling fixes for text fields and menulist controls.
34         
35         https://bugs.webkit.org/show_bug.cgi?id=60481
36
37         * platform/wx/RenderThemeWx.cpp:
38         (WebCore::getAdjustedRect):
39         (WebCore::RenderThemeWx::supportsFocus):
40         (WebCore::RenderThemeWx::paintButton):
41         (WebCore::RenderThemeWx::adjustTextFieldStyle):
42         (WebCore::RenderThemeWx::paintTextField):
43         (WebCore::RenderThemeWx::adjustMenuListStyle):
44         (WebCore::RenderThemeWx::paintMenuList):
45         (WebCore::RenderThemeWx::paintMenuListButton):
46
47 2011-05-09  Tony Gentilcore  <tonyg@chromium.org>
48
49         Reviewed by Darin Adler.
50
51         Style fix: Function names must begin with lowercase letter and should not use "get".
52         https://bugs.webkit.org/show_bug.cgi?id=60475
53
54         * dom/Document.cpp:
55         (WebCore::Document::webkitVisibilityState):
56         * page/PageVisibilityState.cpp:
57         (WebCore::pageVisibilityStateString): Renamed.
58         * page/PageVisibilityState.h:
59
60 2011-05-09  Adam Barth  <abarth@webkit.org>
61
62         Reviewed by Tony Gentilcore.
63
64         Make Chromium build with strict PassOwnPtr
65         https://bugs.webkit.org/show_bug.cgi?id=60461
66
67         Fix many, many PassOwnPtr nits.
68
69         * bindings/v8/V8Proxy.cpp:
70         (WebCore::V8Proxy::precompileScript):
71         * bindings/v8/custom/V8DOMWindowCustom.cpp:
72         (WebCore::WindowSetTimeoutImpl):
73         * bindings/v8/custom/V8MessageEventCustom.cpp:
74         (WebCore::V8MessageEvent::initMessageEventCallback):
75         * bindings/v8/custom/V8WorkerContextCustom.cpp:
76         (WebCore::SetTimeoutOrInterval):
77         * dom/Document.cpp:
78         (WebCore::Document::removedLastRef):
79         (WebCore::Document::detach):
80         * fileapi/DOMFileSystem.h:
81         (WebCore::DOMFileSystem::scheduleCallback):
82         * fileapi/FileSystemCallbacks.cpp:
83         (WebCore::FileSystemCallbacks::didOpenFileSystem):
84         (WebCore::ResolveURICallbacks::didOpenFileSystem):
85         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
86         (WebCore::GraphicsLayer::create):
87         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
88         (WebCore::CCLayerImpl::createRenderSurface):
89         * platform/graphics/gpu/BicubicShader.cpp:
90         (WebCore::BicubicShader::create):
91         * platform/graphics/gpu/ConvolutionShader.cpp:
92         (WebCore::ConvolutionShader::create):
93         * platform/graphics/gpu/LoopBlinnSolidFillShader.cpp:
94         (WebCore::LoopBlinnSolidFillShader::create):
95         * platform/graphics/gpu/SolidFillShader.cpp:
96         (WebCore::SolidFillShader::create):
97         * platform/graphics/gpu/TexShader.cpp:
98         (WebCore::TexShader::create):
99         * platform/graphics/gpu/Texture.cpp:
100         (WebCore::Texture::create):
101         * storage/chromium/DatabaseTrackerChromium.cpp:
102         (WebCore::TrackerRemoveOpenDatabaseTask::create):
103         * storage/chromium/SQLTransactionClientChromium.cpp:
104         (WebCore::NotifyDatabaseChangedTask::create):
105
106 2011-05-07  Martin Robinson  <mrobinson@igalia.com>
107
108         Reviewed by Daniel Bates.
109
110         [Soup] Clean up error handling in ResourceHandleSoup
111         https://bugs.webkit.org/show_bug.cgi?id=60436
112
113         Instead of repeating the ResourceError creation twice, abstract
114         it into a helper method.
115
116         No new tests. This is a code cleanup.
117
118         * platform/network/soup/ResourceHandleSoup.cpp:
119         (WebCore::soupErrorShouldCauseLoadFailure): Added.
120         (WebCore::convertSoupErrorToResourceError): Added.
121         (WebCore::sendRequestCallback): Use the new helpers.
122         (WebCore::readCallback): Ditto.
123
124 2011-05-09  Abhishek Arya  <inferno@chromium.org>
125
126         Reviewed by Dave Hyatt.
127
128         Regression(r85869): Restore dirty line logic in RenderInline::destroy.
129         https://bugs.webkit.org/show_bug.cgi?id=60448
130
131         Test: fast/inline/inline-destroy-dirty-lines-crash.html
132
133         * rendering/RenderInline.cpp:
134         (WebCore::RenderInline::destroy):
135
136 2011-05-09  Alejandro G. Castro  <alex@igalia.com>
137
138         Reviewed by Martin Robinson.
139
140         [GTK] WidgetGtk setFocus can not access directly the widget in WK2
141         https://bugs.webkit.org/show_bug.cgi?id=60016
142
143         Added code to check the situation where we do not have direct
144         access to the widget. We use the page to grab the focus which
145         would send a request to the UIProcess in WK2.
146
147         * platform/gtk/WidgetGtk.cpp:
148         (WebCore::Widget::setFocus):
149
150 2011-05-09  Leandro Gracia Gil  <leandrogracia@chromium.org>
151
152         Reviewed by Tony Gentilcore.
153
154         Media Stream API: add exception raising to the getUserMedia method.
155         https://bugs.webkit.org/show_bug.cgi?id=60387
156
157         Perform the required changes to support rising exceptions in the
158         navigator.getUserMedia method. This is required by the latest changes in the spec:
159         http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#dom-navigator-getusermedia
160
161         Test: fast/dom/MediaStream/argument-types.html
162
163         * bindings/js/JSNavigatorCustom.cpp:
164         (WebCore::JSNavigator::webkitGetUserMedia):
165         * bindings/v8/custom/V8NavigatorCustom.cpp:
166         (WebCore::V8Navigator::webkitGetUserMediaCallback):
167         * page/Navigator.cpp:
168         (WebCore::Navigator::webkitGetUserMedia):
169         * page/Navigator.h:
170         * page/Navigator.idl:
171
172 2011-05-09  Csaba Osztrogonác  <ossy@webkit.org>
173
174         Unreviewed Qt 4.8 fix.
175
176         * WebCore.pro: 4.8 bots are updated with the full QRawFont APIs, so we can set HAVE_QRAWFONT now.
177
178 2011-05-09  Adam Roben  <aroben@apple.com>
179
180         Windows project file fix after r86047
181
182         * WebCore.vcproj/WebCore.vcproj: Added missing closing tags.
183
184 2011-05-06  Chris Marrin  <cmarrin@apple.com>
185
186         Reviewed by Darin Adler.
187
188         Fix layer names to say "tiled" and show CALayer addresses, not PlatformCALayer addresses
189         https://bugs.webkit.org/show_bug.cgi?id=60417
190
191         Layer name now has "Tiled" prepended if it is a TiledLayer. This is true on Mac where
192         the layer is a CATiledLayer and on Win where the layer is actually still a CACFLayer
193         but implements a tiled layer. I also now print the address of the CALayer or CACFLayer
194         instead of the PlatformCALayer everywhere.
195
196         * platform/graphics/ca/GraphicsLayerCA.cpp:
197         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
198
199 2011-05-09  Rob Buis  <rbuis@rim.com>
200
201         Reviewed by Dirk Schulze.
202
203         Elements should assert that the QualifiedName given to their constructor corresponds to the Element constructed
204         https://bugs.webkit.org/show_bug.cgi?id=22576
205
206         Add tag name ASSERTs in SVG Element constructors.
207
208         No new tests, since no change in behaviour.
209
210         * svg/SVGAElement.cpp:
211         (WebCore::SVGAElement::SVGAElement):
212         * svg/SVGAltGlyphElement.cpp:
213         (WebCore::SVGAltGlyphElement::SVGAltGlyphElement):
214         * svg/SVGAnimateColorElement.cpp:
215         (WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
216         * svg/SVGAnimateElement.cpp:
217         (WebCore::SVGAnimateElement::SVGAnimateElement):
218         * svg/SVGAnimateMotionElement.cpp:
219         (WebCore::SVGAnimateMotionElement::SVGAnimateMotionElement):
220         * svg/SVGAnimateTransformElement.cpp:
221         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
222         * svg/SVGCircleElement.cpp:
223         (WebCore::SVGCircleElement::SVGCircleElement):
224         * svg/SVGClipPathElement.cpp:
225         (WebCore::SVGClipPathElement::SVGClipPathElement):
226         * svg/SVGCursorElement.cpp:
227         (WebCore::SVGCursorElement::SVGCursorElement):
228         * svg/SVGDefsElement.cpp:
229         (WebCore::SVGDefsElement::SVGDefsElement):
230         * svg/SVGDescElement.cpp:
231         (WebCore::SVGDescElement::SVGDescElement):
232         * svg/SVGEllipseElement.cpp:
233         (WebCore::SVGEllipseElement::SVGEllipseElement):
234         * svg/SVGFEBlendElement.cpp:
235         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
236         * svg/SVGFEColorMatrixElement.cpp:
237         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
238         * svg/SVGFEComponentTransferElement.cpp:
239         (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
240         * svg/SVGFECompositeElement.cpp:
241         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
242         * svg/SVGFEConvolveMatrixElement.cpp:
243         (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement):
244         * svg/SVGFEDiffuseLightingElement.cpp:
245         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
246         * svg/SVGFEDisplacementMapElement.cpp:
247         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
248         * svg/SVGFEDistantLightElement.cpp:
249         (WebCore::SVGFEDistantLightElement::SVGFEDistantLightElement):
250         * svg/SVGFEDropShadowElement.cpp:
251         (WebCore::SVGFEDropShadowElement::SVGFEDropShadowElement):
252         * svg/SVGFEFloodElement.cpp:
253         (WebCore::SVGFEFloodElement::SVGFEFloodElement):
254         * svg/SVGFEFuncAElement.cpp:
255         (WebCore::SVGFEFuncAElement::SVGFEFuncAElement):
256         * svg/SVGFEFuncBElement.cpp:
257         (WebCore::SVGFEFuncBElement::SVGFEFuncBElement):
258         * svg/SVGFEFuncGElement.cpp:
259         (WebCore::SVGFEFuncGElement::SVGFEFuncGElement):
260         * svg/SVGFEFuncRElement.cpp:
261         (WebCore::SVGFEFuncRElement::SVGFEFuncRElement):
262         * svg/SVGFEGaussianBlurElement.cpp:
263         (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
264         * svg/SVGFEImageElement.cpp:
265         (WebCore::SVGFEImageElement::SVGFEImageElement):
266         * svg/SVGFEMergeElement.cpp:
267         (WebCore::SVGFEMergeElement::SVGFEMergeElement):
268         * svg/SVGFEMergeNodeElement.cpp:
269         (WebCore::SVGFEMergeNodeElement::SVGFEMergeNodeElement):
270         * svg/SVGFEMorphologyElement.cpp:
271         (WebCore::SVGFEMorphologyElement::SVGFEMorphologyElement):
272         * svg/SVGFEOffsetElement.cpp:
273         (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
274         * svg/SVGFEPointLightElement.cpp:
275         (WebCore::SVGFEPointLightElement::SVGFEPointLightElement):
276         * svg/SVGFESpecularLightingElement.cpp:
277         (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
278         * svg/SVGFESpotLightElement.cpp:
279         (WebCore::SVGFESpotLightElement::SVGFESpotLightElement):
280         * svg/SVGFETileElement.cpp:
281         (WebCore::SVGFETileElement::SVGFETileElement):
282         * svg/SVGFETurbulenceElement.cpp:
283         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
284         * svg/SVGFilterElement.cpp:
285         (WebCore::SVGFilterElement::SVGFilterElement):
286         * svg/SVGFontElement.cpp:
287         (WebCore::SVGFontElement::SVGFontElement):
288         * svg/SVGFontFaceElement.cpp:
289         (WebCore::SVGFontFaceElement::SVGFontFaceElement):
290         * svg/SVGFontFaceFormatElement.cpp:
291         (WebCore::SVGFontFaceFormatElement::SVGFontFaceFormatElement):
292         * svg/SVGFontFaceNameElement.cpp:
293         (WebCore::SVGFontFaceNameElement::SVGFontFaceNameElement):
294         * svg/SVGFontFaceSrcElement.cpp:
295         (WebCore::SVGFontFaceSrcElement::SVGFontFaceSrcElement):
296         * svg/SVGFontFaceUriElement.cpp:
297         (WebCore::SVGFontFaceUriElement::SVGFontFaceUriElement):
298         * svg/SVGForeignObjectElement.cpp:
299         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
300         * svg/SVGGElement.cpp:
301         (WebCore::SVGGElement::SVGGElement):
302         * svg/SVGGlyphElement.cpp:
303         (WebCore::SVGGlyphElement::SVGGlyphElement):
304         * svg/SVGHKernElement.cpp:
305         (WebCore::SVGHKernElement::SVGHKernElement):
306         * svg/SVGImageElement.cpp:
307         (WebCore::SVGImageElement::SVGImageElement):
308         * svg/SVGLineElement.cpp:
309         (WebCore::SVGLineElement::SVGLineElement):
310         * svg/SVGLinearGradientElement.cpp:
311         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
312         * svg/SVGMPathElement.cpp:
313         (WebCore::SVGMPathElement::SVGMPathElement):
314         * svg/SVGMarkerElement.cpp:
315         (WebCore::SVGMarkerElement::SVGMarkerElement):
316         * svg/SVGMaskElement.cpp:
317         (WebCore::SVGMaskElement::SVGMaskElement):
318         * svg/SVGMetadataElement.cpp:
319         (WebCore::SVGMetadataElement::SVGMetadataElement):
320         * svg/SVGMissingGlyphElement.cpp:
321         (WebCore::SVGMissingGlyphElement::SVGMissingGlyphElement):
322         * svg/SVGPathElement.cpp:
323         (WebCore::SVGPathElement::SVGPathElement):
324         * svg/SVGPatternElement.cpp:
325         (WebCore::SVGPatternElement::SVGPatternElement):
326         * svg/SVGPolygonElement.cpp:
327         (WebCore::SVGPolygonElement::SVGPolygonElement):
328         * svg/SVGPolylineElement.cpp:
329         (WebCore::SVGPolylineElement::SVGPolylineElement):
330         * svg/SVGRadialGradientElement.cpp:
331         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
332         * svg/SVGRectElement.cpp:
333         (WebCore::SVGRectElement::SVGRectElement):
334         * svg/SVGSVGElement.cpp:
335         (WebCore::SVGSVGElement::SVGSVGElement):
336         * svg/SVGScriptElement.cpp:
337         (WebCore::SVGScriptElement::SVGScriptElement):
338         * svg/SVGSetElement.cpp:
339         (WebCore::SVGSetElement::SVGSetElement):
340         * svg/SVGStopElement.cpp:
341         (WebCore::SVGStopElement::SVGStopElement):
342         * svg/SVGStyleElement.cpp:
343         (WebCore::SVGStyleElement::SVGStyleElement):
344         * svg/SVGSwitchElement.cpp:
345         (WebCore::SVGSwitchElement::SVGSwitchElement):
346         * svg/SVGSymbolElement.cpp:
347         (WebCore::SVGSymbolElement::SVGSymbolElement):
348         * svg/SVGTRefElement.cpp:
349         (WebCore::SVGTRefElement::SVGTRefElement):
350         * svg/SVGTSpanElement.cpp:
351         (WebCore::SVGTSpanElement::SVGTSpanElement):
352         * svg/SVGTextElement.cpp:
353         (WebCore::SVGTextElement::SVGTextElement):
354         * svg/SVGTextPathElement.cpp:
355         (WebCore::SVGTextPathElement::SVGTextPathElement):
356         * svg/SVGTitleElement.cpp:
357         (WebCore::SVGTitleElement::SVGTitleElement):
358         * svg/SVGUseElement.cpp:
359         (WebCore::SVGUseElement::SVGUseElement):
360         * svg/SVGVKernElement.cpp:
361         (WebCore::SVGVKernElement::SVGVKernElement):
362         * svg/SVGViewElement.cpp:
363         (WebCore::SVGViewElement::SVGViewElement):
364
365 2011-05-09  Shishir Agrawal  <shishir@chromium.org>
366
367         Reviewed by Tony Gentilcore.
368
369         Implement Page Visibility API.
370         https://bugs.webkit.org/show_bug.cgi?id=54181
371
372         Tests: fast/events/page-visibility-iframe-delete-test.html
373                fast/events/page-visibility-iframe-move-test.html
374                fast/events/page-visibility-iframe-propagation-test.html
375                fast/events/page-visibility-transition-test.html
376
377         * CMakeLists.txt:
378         * GNUmakefile.list.am:
379         * WebCore.gypi:
380         * WebCore.pro:
381         * WebCore.vcproj/WebCore.vcproj:
382         * WebCore.xcodeproj/project.pbxproj:
383         * dom/Document.cpp:
384         (WebCore::Document::visibilityState):
385         (WebCore::Document::webkitVisibilityState):
386         (WebCore::Document::webkitIsVisible):
387         (WebCore::Document::dispatchVisibilityStateChangeEvent):
388         * dom/Document.h:
389         * dom/Document.idl:
390         * dom/EventNames.h:
391         * page/Frame.cpp:
392         (WebCore::Frame::dispatchVisibilityStateChangeEvent):
393         * page/Frame.h:
394         * page/Page.cpp:
395         (WebCore::Page::Page):
396         (WebCore::Page::setVisibilityState):
397         (WebCore::Page::visibilityState):
398         * page/Page.h:
399         * page/PageVisibilityState.cpp: Added.
400         (WebCore::GetPageVisibilityStateString):
401         * page/PageVisibilityState.h: Added.
402
403 2011-05-09  Luke Macpherson   <macpherson@chromium.org>
404
405         Reviewed by Eric Seidel.
406
407         Implement expanding CSS border properties in CSSStyleApplyProperty.
408         https://bugs.webkit.org/show_bug.cgi?id=60456
409
410         No new tests added as no functionality changed.
411
412         * css/CSSStyleApplyProperty.cpp:
413         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
414         Create CSS border expanding property handlers.
415         * css/CSSStyleSelector.cpp:
416         (WebCore::CSSStyleSelector::applyProperty):
417         Remove property handlers that are no longer needed.
418
419 2011-05-08  Ryosuke Niwa  <rniwa@webkit.org>
420
421         Reviewed by Kent Tamura.
422
423         selectstart event does not fire when selection is made via select all
424         https://bugs.webkit.org/show_bug.cgi?id=60376
425
426         Fire selectstart event when a user selects all contents (i.e. document.execCommand('SelectAll')) in
427         document, editable region, or text control.
428
429         Tests: editing/selection/selectstart-on-selectall.html
430                editing/selection/selectstart-prevent-selectall.html
431
432         * dom/Node.h: Removed canSelectAll and selectAll as they are left over from WMLSelectElement.
433         * editing/FrameSelection.cpp:
434         (WebCore::FrameSelection::selectAll): Dispatch selectstart event on selectStartTarget, which is
435         input element or textarea element when the current selection is inside a shadow DOM, and the root
436         editable element if it's inside a non-shadow editable region, and the body element otherwise.
437         * html/HTMLSelectElement.h: Made canSelectAll and selectAll public since they are no longer
438         declared in Node.
439
440 2011-05-08  Luke Macpherson   <macpherson@chromium.org>
441
442         Reviewed by Eric Seidel.
443
444         Make RenderStyle::setColumnBreakInside() reject unsupported enum values.
445         https://bugs.webkit.org/show_bug.cgi?id=60249
446
447         No new tests added as no functionality changed.
448
449         * css/CSSStyleSelector.cpp:
450         (WebCore::CSSStyleSelector::applyProperty):
451         Remove special-case code and use appropriate macro.
452         * rendering/style/RenderStyle.h:
453         (WebCore::InheritedFlags::setColumnBreakInside):
454         Assert that supported values are used.
455
456 2011-05-08  Ryosuke Niwa  <rniwa@webkit.org>
457
458         Reviewed by Darin Adler.
459
460         Extract a DragCaretController from FrameSelection
461         https://bugs.webkit.org/show_bug.cgi?id=60273
462
463         Extracted CaretBase and DragCaretController from FrameSelection. CaretBase is a base class for
464         DragCaretController and FrameSelection and provides functions to paint caret.
465
466         Since DragCaretController doesn't need to store selection, it only holds one VisiblePosition.
467
468         * WebCore.exp.in:
469         * editing/FrameSelection.cpp:
470         (WebCore::CaretBase::CaretBase): Added.
471         (WebCore::DragCaretController::DragCaretController): Added; Set m_caretVisible true.
472         (WebCore::DragCaretController::isContentRichlyEditable): Added.
473         (WebCore::FrameSelection::FrameSelection): Several member variables are move to CaretBase.
474         (WebCore::DragCaretController::setCaretPosition): Extracted from FrameSelection::setSelection.
475         (WebCore::FrameSelection::setSelection): Removed an early exit for DragCaretController.
476         (WebCore::clearRenderViewSelection): Extracted from FrameSelection::respondToNodeModification.
477         (WebCore::DragCaretController::nodeWillBeRemoved): Extracted from FrameSelection::nodeWillBeRemoved
478         and respondToNodeModification. Note that the position DragCaretController holds is equivalent to
479         FrameSelection's base or start so when removingNodeRemovesPosition returns true for m_position,
480         we used to execute the first if clause and cleared render tree selection and DOM tree selection.
481         This is exactly what new DragCaretController::nodeWillBeRemoved does.
482         (WebCore::FrameSelection::nodeWillBeRemoved): Simplified early exist conditions.
483         (WebCore::FrameSelection::respondToNodeModification): Calls clearRenderViewSelection.
484         (WebCore::CaretBase::updateCaretRect): Takes document, caretPosition, selection type, and boolean isOrphaned.
485         Note that we can't obtain the document from caretPosition because VisiblePosition can be null even if
486         FrameSelection's start was not null.
487         (WebCore::caretRendersInsideNode): Moved; Made static local.
488         (WebCore::CaretBase::caretRenderer): Extracted from FrameSelection::caretRenderer.
489         (WebCore::FrameSelection::caretRenderer): Calls CaretBase::caretRenderer.
490         (WebCore::DragCaretController::caretRenderer): Ditto.
491         (WebCore::FrameSelection::localCaretRect): Calls updateCaretRect with extra arguments.
492         (WebCore::CaretBase::absoluteBoundsForLocalRect): Moved from FrameSelection; Takes Node*.
493         (WebCore::CaretBase::caretRepaintRect): Ditto.
494         (WebCore::FrameSelection::recomputeCaretRect): Calls absoluteBoundsForLocalRect, caretRepaintRect,
495         and shouldRepaintCaret with extra arguments.
496         (WebCore::CaretBase::shouldRepaintCaret): Takes a boolean isContentEditable.
497         (WebCore::FrameSelection::invalidateCaretRect): Calls CaretBase::invalidateCaretRect.
498         (WebCore::CaretBase::invalidateCaretRect): Extracted from FrameSelection::invalidateCaretRect.
499         (WebCore::FrameSelection::paintCaret): Calls CaretBase::paintCaret.
500         (WebCore::CaretBase::paintCaret): Extracted from FrameSelection::paintCaret.
501         (WebCore::FrameSelection::updateAppearance): Removed an assertion that this function is never called for
502         DragCaretController.
503         (WebCore::DragCaretController::paintDragCaret): Moved from FrameSelection::paintDragCaret.
504         * editing/FrameSelection.h:
505         (WebCore::CaretBase::localCaretRectForPainting): Added.
506         (WebCore::DragCaretController::isContentEditable): Added.
507         (WebCore::DragCaretController::hasCaret): Added.
508         (WebCore::DragCaretController::caretPosition): Added.
509         (WebCore::DragCaretController::clear): Added.
510         * page/DragController.cpp:
511         (WebCore::DragController::tryDocumentDrag): Uses DragCaretController.
512         (WebCore::DragController::dispatchTextInputEventFor): Ditto.
513         (WebCore::DragController::concludeEditDrag): Ditto.
514         (WebCore::DragController::placeDragCaret): Ditto.
515         * page/Page.cpp:
516         (WebCore::Page::Page): Instantiates DragCaretController instead of FrameSelection.
517         * page/Page.h:
518         (WebCore::Page::dragCaretController): Returns DragCaretController* instead of FrameSelection*.
519         * rendering/RenderBlock.cpp:
520         (WebCore::RenderBlock::paintCaret): Uses FrameSelection and DragCaretController.
521
522 2011-05-08  Dan Bernstein  <mitz@apple.com>
523
524         Reviewed by Darin Adler.
525
526         <rdar://problem/9401853> REGRESSION (r78846): Insufficient expansion for justification when there are multiple inline boxes
527         https://bugs.webkit.org/show_bug.cgi?id=60432
528
529         * rendering/InlineTextBox.h:
530         (WebCore::InlineTextBox::setExpansion): Changed back to take a int, since the m_expansion member
531         variable is a (truncated) int anyway.
532         * rendering/RenderBlockLineLayout.cpp:
533         (WebCore::computeExpansionForJustifiedText): Changed the expansion local variable into an int
534         so that the right amount is added to the total width. Also changed to use an early return.
535
536 2011-05-08  Pavel Feldman  <pfeldman@chromium.org>
537
538         Not reviewed: ignore 0 responses in the inspector network instrumentation.
539
540         * inspector/front-end/NetworkManager.js:
541
542 2011-05-08  Jarkko Sakkinen  <jarkko.j.sakkinen@gmail.com>
543
544         Reviewed by Kenneth Rohde Christiansen.
545
546         [Qt] GraphicsContext3D::getImageData() does not retrieve image data correctly
547         https://bugs.webkit.org/show_bug.cgi?id=58556
548
549         Tests: fast/canvas/webgl/gl-teximage.html
550
551         * platform/graphics/qt/GraphicsContext3DQt.cpp:
552         (WebCore::GraphicsContext3D::getImageData):
553
554 2011-05-07  Dan Bernstein  <mitz@apple.com>
555
556         Reviewed by Maciej Stachowiak.
557
558         <rdar://problem/9403055> REGRESSION (r85499): Inline images in iChat overflow their chat bubbles
559         https://bugs.webkit.org/show_bug.cgi?id=60443
560
561         Test: fast/replaced/table-percent-height-positioned.html
562
563         * rendering/RenderBox.cpp:
564         (WebCore::RenderBox::computeReplacedLogicalHeightUsing): Do not apply the logic to prevent precent-height
565         replaced elements from being squeezed by table cells when the replaced element is positioned (and thus
566         doesn’t affect the table cell’s height).
567
568 2011-05-07  Sheriff Bot  <webkit.review.bot@gmail.com>
569
570         Unreviewed, rolling out r86016.
571         http://trac.webkit.org/changeset/86016
572         https://bugs.webkit.org/show_bug.cgi?id=60445
573
574         caused crashes on the WK2 Windows bots (Requested by
575         jessieberlin on #webkit).
576
577         * platform/network/ResourceHandle.h:
578         * platform/network/cf/CookieStorageCFNet.cpp:
579         (WebCore::currentCookieStorage):
580         (WebCore::defaultCookieStorage):
581         * platform/network/cf/ResourceHandleCFNet.cpp:
582         (WebCore::willSendRequest):
583         (WebCore::makeFinalRequest):
584         (WebCore::ResourceHandle::willSendRequest):
585         * platform/network/cf/ResourceRequestCFNet.cpp:
586         (WebCore::ResourceRequest::doUpdatePlatformRequest):
587
588 2011-05-07  Sheriff Bot  <webkit.review.bot@gmail.com>
589
590         Unreviewed, rolling out r85974.
591         http://trac.webkit.org/changeset/85974
592         https://bugs.webkit.org/show_bug.cgi?id=60444
593
594         broke browser tests (Requested by inferno-sec on #webkit).
595
596         * platform/network/chromium/ResourceResponse.cpp:
597         (WebCore::ResourceResponse::doPlatformCopyData):
598         (WebCore::ResourceResponse::doPlatformAdopt):
599         * platform/network/chromium/ResourceResponse.h:
600         (WebCore::ResourceResponse::downloadFilePath):
601         (WebCore::ResourceResponse::setDownloadFilePath):
602
603 2011-05-07  Jessie Berlin  <jberlin@apple.com>
604
605         Reviewed by Steve Falkenburg.
606
607         [Windows WebKit2] Use cookies set in WebKit1
608         https://bugs.webkit.org/show_bug.cgi?id=60274
609
610         Share the default storage session between the UI and Web Processes.
611
612         * platform/network/cf/CookieStorageCFNet.cpp:
613         (WebCore::defaultSessionCookieStorage):
614         Keep track of the default storage session cookie storage.
615         (WebCore::currentCookieStorage):
616         Call defaultCookieStorage to get the default cookie storage.
617         (WebCore::defaultCookieStorage):
618         If there is a default storage session cookie storage, prefer that over getting the default
619         cookie storage. In the Web Process, asking CFNetwork for the default cookie storage directly
620         without specifying a storage session will not get the cookie storage being shared by the UI
621         and Web Processes.
622
623         * platform/network/ResourceHandle.h:
624         * platform/network/cf/ResourceHandleCFNet.cpp:
625         (WebCore::willSendRequest):
626         Make sure to set the current storage session on any requests used by the Web
627         Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
628         doing anything with the Web Process's default storage session (which is not the one shared
629         with the UI Process).
630         (WebCore::makeFinalRequest):
631         Ditto.
632         (WebCore::ResourceHandle::willSendRequest):
633         Ditto.
634         (WebCore::ResourceHandle::currentStorageSession):
635         If there is a Private Browsing storage session, return that.
636         If not, on Windows return the default storage session that is being shared with the UI
637         Process and on Mac return 0.
638         (WebCore::defaultCFURLStorageSession):
639         (WebCore::ResourceHandle::setDefaultStorageSession):
640         (WebCore::ResourceHandle::defaultStorageSession):
641
642         * platform/network/cf/ResourceRequestCFNet.cpp:
643         (WebCore::ResourceRequest::doUpdatePlatformRequest):
644         Make sure to set the current storage session on any requests used by the Web
645         Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
646         doing anything with the Web Process's default storage session (which is not the one shared
647         with the UI Process).
648
649 2011-05-07  Joe Mason  <jmason@rim.com>
650
651         Reviewed by Daniel Bates.
652
653         FrameLoader::isProcessingUserGesture is wrong in dispatchWillPerformClientRedirect
654         https://bugs.webkit.org/show_bug.cgi?id=52211
655
656         Create a UserGestureIndicator when calling the clientRedirected callback.
657
658         * loader/NavigationScheduler.cpp:
659         (WebCore::ScheduledURLNavigation::didStartTimer):
660         (WebCore::ScheduledURLNavigation::didStopTimer):
661         (WebCore::ScheduledFormSubmission::didStartTimer):
662         (WebCore::ScheduledFormSubmission::didStopTimer):
663
664 2011-05-06  Jon Lee  <jonlee@apple.com>
665
666         Reviewed by Alice Liu.
667
668         Crash when sending a wheel event to a node with no shadow ancestor node
669         https://bugs.webkit.org/show_bug.cgi?id=60429
670         <rdar://problem/9389619>
671
672         * page/EventHandler.cpp:
673         (WebCore::EventHandler::handleWheelEvent):add check to see if the shadow ancestor node of the node that was under the mouse exists before trying to dispatch the wheel event to it.
674
675 2011-05-06  Kent Tamura  <tkent@chromium.org>
676
677         Reviewed by Ryosuke Niwa.
678
679         Eliminate WebCore/dom/InputElement.{cpp,h}
680         https://bugs.webkit.org/show_bug.cgi?id=60262
681
682         - Fold in all of the code of InputElement.{cpp,h} into HTMLInputElement
683           and TextFieldInputType.
684         - Change the return type of Node::toInputElement():
685           InputElement* -> HTMLInputElement*
686
687         No new tests. This change should not change the existing behaviour.
688
689         * CMakeLists.txt: Remove InpuntElement.cpp and/or InputElement.h.
690         * GNUmakefile.list.am: ditto.
691         * WebCore.exp.in: Add symbols of functions exposed to WebKit.
692         * WebCore.gypi: Remove InpuntElement.cpp and/or InputElement.h.
693         * WebCore.pro: ditto.
694         * WebCore.vcproj/WebCore.vcproj: ditto.
695         * WebCore.xcodeproj/project.pbxproj: ditto.
696         * accessibility/AXObjectCache.cpp:
697         (WebCore::AXObjectCache::textMarkerDataForVisiblePosition):
698           Follow the return type change of Node::toInputElement().
699         * accessibility/AccessibilityRenderObject.cpp:
700         (WebCore::AccessibilityRenderObject::isPasswordField): ditto.
701         (WebCore::AccessibilityRenderObject::isIndeterminate): ditto.
702         (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio): ditto.
703         (WebCore::AccessibilityRenderObject::isChecked): ditto.
704         * css/CSSStyleSelector.cpp:
705         (WebCore::CSSStyleSelector::canShareStyleWithElement): ditto.
706         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ditto.
707         * dom/CheckedRadioButtons.cpp:
708         (WebCore::CheckedRadioButtons::removeButton): ditto.
709         * dom/DOMAllInOne.cpp: Remove InputElement.h.
710         * dom/InputElement.cpp: Removed.
711         * dom/InputElement.h: Removed.
712         * dom/Node.cpp:
713         (WebCore::Node::toInputElement):
714           Change the return type from InputElement* to HTMLInputElement*.
715         * dom/Node.h: ditto.
716         * html/HTMLInputElement.cpp:
717         (WebCore::HTMLInputElement::HTMLInputElement):
718         (WebCore::HTMLInputElement::formControlName):
719         (WebCore::HTMLInputElement::tooLong):
720         (WebCore::HTMLInputElement::updateFocusAppearance):
721         (WebCore::HTMLInputElement::aboutToUnload):
722         (WebCore::HTMLInputElement::handleFocusEvent):
723         (WebCore::HTMLInputElement::handleBlurEvent):
724         (WebCore::HTMLInputElement::updateType):
725         (WebCore::HTMLInputElement::parseMappedAttribute):
726         (WebCore::HTMLInputElement::size):
727         (WebCore::HTMLInputElement::copyNonAttributeProperties):
728         (WebCore::HTMLInputElement::value):
729         (WebCore::HTMLInputElement::suggestedValue):
730         (WebCore::HTMLInputElement::setSuggestedValue):
731         (WebCore::HTMLInputElement::setValue):
732         (WebCore::HTMLInputElement::setValueFromRenderer):
733         (WebCore::HTMLInputElement::setFileListFromRenderer):
734         (WebCore::HTMLInputElement::setDefaultName):
735         (WebCore::HTMLInputElement::maxLength):
736         (WebCore::HTMLInputElement::cacheSelection):
737         (WebCore::formatCodes): Moved from InputElement.
738         (WebCore::cursorPositionToMaskIndex): ditto.
739         (WebCore::HTMLInputElement::isConformToInputMask): ditto.
740         (WebCore::HTMLInputElement::validateInputMask): ditto.
741         (WebCore::HTMLInputElement::setWapInputFormat): ditto.
742         (WebCore::HTMLInputElement::notifyFormStateChanged): ditto.
743         (WebCore::HTMLInputElement::parseMaxLengthAttribute): ditto.
744         (WebCore::HTMLInputElement::updateValueIfNeeded):ditto.
745         * html/HTMLInputElement.h:
746           - Add data members which were defined in InputElementData.
747           - Make some functions public because the public interface InputElement is removed.
748           - Make some functions non-virtual because they don't override
749             corresponding virtual functions of InputElement anymore.
750         (WebCore::HTMLInputElement::toInputElement):
751           Follow the return type change of Node::toInputElement().
752         (WebCore::HTMLInputElement::isIndeterminate):
753         (WebCore::HTMLInputElement::isAutofilled):
754         (WebCore::HTMLInputElement::supportsMaxLength):
755         (WebCore::HTMLInputElement::cachedSelectionStart):
756         (WebCore::HTMLInputElement::cachedSelectionEnd):
757         * html/HTMLTextAreaElement.cpp: Remove unused InputElement.h.
758         * html/InputType.cpp:
759         (WebCore::InputType::handleBeforeTextInsertedEvent): Remove the code.
760         * html/InputType.h: Update for the above.
761         * html/TextFieldInputType.cpp:
762         (WebCore::replaceEOLAndLimitLength): Moved from InputElement.cpp.
763         (WebCore::TextFieldInputType::sanitizeValue): Implement with replaceEOLAndLimitLength().
764         (WebCore::TextFieldInputType::handleBeforeTextInsertedEvent):
765           Move the code from InputElement::handleBeforeTextInsertedEvent().
766         * html/TextFieldInputType.h: Update declarations.
767         * rendering/RenderTextControlSingleLine.cpp:
768           - Remove ASSERT(node()->isHTMLElement()) because it is checked in the constructor.
769           - Follow the return type change of inputElement().
770         (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
771           Make sure node() is an HTMLInputElement instance.
772         (WebCore::RenderTextControlSingleLine::addSearchResult):
773         (WebCore::RenderTextControlSingleLine::stopSearchEventTimer):
774         (WebCore::RenderTextControlSingleLine::showPopup):
775         (WebCore::RenderTextControlSingleLine::hidePopup):
776         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
777         (WebCore::RenderTextControlSingleLine::updateFromElement):
778         (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
779         (WebCore::RenderTextControlSingleLine::createResultsButtonStyle):
780         (WebCore::RenderTextControlSingleLine::createCancelButtonStyle):
781         (WebCore::RenderTextControlSingleLine::createInnerSpinButtonStyle):
782         (WebCore::RenderTextControlSingleLine::createOuterSpinButtonStyle):
783         (WebCore::RenderTextControlSingleLine::createSpeechButtonStyle):
784         (WebCore::RenderTextControlSingleLine::visibilityForCancelButton):
785         (WebCore::RenderTextControlSingleLine::startSearchEventTimer):
786         (WebCore::RenderTextControlSingleLine::searchEventTimerFired):
787         (WebCore::RenderTextControlSingleLine::valueChanged):
788         (WebCore::RenderTextControlSingleLine::setTextFromItem):
789         (WebCore::RenderTextControlSingleLine::inputElement):
790         * rendering/RenderTextControlSingleLine.h:
791           Change the return type of inputElement(): InputElement* -> HTMLInputElement*.
792         * rendering/RenderTheme.cpp:
793         (WebCore::RenderTheme::isChecked):
794           Follow the return type change of Node::toInputElement().
795         (WebCore::RenderTheme::isIndeterminate): ditto.
796         (WebCore::RenderTheme::shouldHaveSpinButton):
797           Change the parameter type: InputElement* -> HTMLInputElement*.
798         * rendering/RenderTheme.h: ditto.
799
800 2011-05-06  Adam Barth  <abarth@webkit.org>
801
802         Reviewed by Eric Seidel.
803
804         Implement "Report-Only" mode for CSP
805         https://bugs.webkit.org/show_bug.cgi?id=60402
806
807         This mode lets web sites try out CSP by getting violation reports (and
808         console spam) without actually changing the behavior of their web sites.
809
810         Test: http/tests/security/contentSecurityPolicy/report-only.html
811
812         * dom/Document.cpp:
813         (WebCore::Document::processHttpEquiv):
814         * loader/FrameLoader.cpp:
815         (WebCore::FrameLoader::didBeginDocument):
816         * page/ContentSecurityPolicy.cpp:
817         (WebCore::ContentSecurityPolicy::ContentSecurityPolicy):
818         (WebCore::ContentSecurityPolicy::didReceiveHeader):
819         (WebCore::ContentSecurityPolicy::reportViolation):
820         (WebCore::ContentSecurityPolicy::checkInlineAndReportViolation):
821         (WebCore::ContentSecurityPolicy::checkEvalAndReportViolation):
822         (WebCore::ContentSecurityPolicy::checkSourceAndReportViolation):
823         (WebCore::ContentSecurityPolicy::allowJavaScriptURLs):
824         * page/ContentSecurityPolicy.h:
825
826 2011-05-06  Beth Dakin  <bdakin@apple.com>
827
828         Reviewed by Darin Adler.
829
830         https://bugs.webkit.org/show_bug.cgi?id=60421
831         Custom scrollbars nested inside an overlay scrollbar overflow region end up 
832         painting twice
833         -and corresponding-
834         <rdar://problem/9389072>
835
836         Be sure not to paint custom css scrollbars during the special overlay-scrollbar 
837         painting pass.
838         * rendering/RenderLayer.cpp:
839         (WebCore::RenderLayer::paintOverflowControls):
840
841 2011-05-06  Cary Clark  <caryclark@google.com>
842
843         Reviewed by Eric Seidel.
844
845         Add utility for converting SkCanvas to CGContext
846         https://bugs.webkit.org/show_bug.cgi?id=59808
847
848         Skia on Mac uses Skia to render WebKit, and CG 
849         to render UI elements. The CG elements need a 
850         transcribed graphics context that preserves the 
851         canvas matrix, and the canvas clip. 
852
853         The BitLockerSkia utility class sets up a CGContext 
854         from the SkCanvas, locks the bitmap's bits, and 
855         releases the lock when the class goes out of scope. 
856
857         Each time the CGContext is retrieved, it is rebuilt. 
858         This permits the caller to modify the same canvas 
859         between calls. 
860
861         This change adds utilities but does not modify any 
862         existing code. For now, there are no callers to these 
863         utilities, so there is no functional change.
864
865         No new tests.
866
867         * platform/graphics/skia/BitLockerSkia.cpp: Added.
868         (WebCore::SkMatrixToCGAffineTransform): Conversion utility.
869         (WebCore::BitLockerSkia::BitLockerSkia): Takes SkCanvas.
870         (WebCore::BitLockerSkia::~BitLockerSkia): Unlocks, cleans up.
871         (WebCore::BitLockerSkia::release): Internal private helper.
872         (WebCore::BitLockerSkia::cgContext): Returns CGContextRef.
873         * platform/graphics/skia/BitLockerSkia.h: Added.
874
875 2011-05-06  Martin Robinson  <mrobinson@igalia.com>
876
877         Reviewed by Xan Lopez.
878
879         [GTK] [WebKit2] WebView::windowToScreen needs an implementation
880         https://bugs.webkit.org/show_bug.cgi?id=55960
881
882         Abstract coordinate system translation code from WebKit into WebCore.
883         This will allow the code to be shared between WebKit and WebKit2. The code
884         now lives in a new GtkUtilities.cpp helper file.
885
886         * GNUmakefile.list.am: Added GtkUtilities to the source list.
887         * platform/gtk/GtkUtilities.cpp: Added.
888         (WebCore::convertWidgetRectToScreenRect):
889         * platform/gtk/GtkUtilities.h: Added.
890
891 2011-05-06  Martin Robinson  <mrobinson@igalia.com>
892
893         Reviewed by Xan Lopez.
894
895         Remove some unnecessary static methods in ResourceHandleSoup.
896
897         No new tests. This is only a small cleanup.
898
899         * platform/network/soup/ResourceHandleSoup.cpp:
900         (WebCore::restartedCallback): Call ResourceResponse::updateFromSoupMessage directly.
901         (WebCore::gotHeadersCallback):Ditto.
902         (WebCore::contentSniffedCallback):Ditto.
903         (WebCore::sendRequestCallback):Ditto.
904         (WebCore::ResourceHandle::defaultSession): Create the soup session directly.
905
906 2011-05-06  Martin Robinson  <mrobinson@igalia.com>
907
908         Reviewed by Xan Lopez.
909
910         [Soup] ResourceHandles are leaked on 304 responses
911         https://bugs.webkit.org/show_bug.cgi?id=60413
912
913         Always call cleanupSoupRequestOperation, even when the request was not
914         canceled. Before the code would call didFinishLoading and then never clean up
915         the request.
916
917         No new tests. This simply fixes a memory leak.
918
919         * platform/network/soup/ResourceHandleSoup.cpp:
920         (WebCore::sendRequestCallback):
921
922 2011-05-06  Adam Barth  <abarth@webkit.org>
923
924         Reviewed by Eric Seidel.
925
926         Add disable-javascript-urls CSP directive
927         https://bugs.webkit.org/show_bug.cgi?id=60301
928
929         This CSP directive is not in the CSP spec.  This patch is somewhat of
930         an experiment to see whether this feature is useful.  Based on our
931         implementation experience, we will coordinate with folks via the W3C to
932         see if this makes sense to add to the spec.
933
934         Test: http/tests/security/contentSecurityPolicy/javascript-urls-blocked.html
935
936         * page/ContentSecurityPolicy.cpp:
937         (WebCore::ContentSecurityPolicy::ContentSecurityPolicy):
938         (WebCore::ContentSecurityPolicy::allowJavaScriptURLs):
939         (WebCore::ContentSecurityPolicy::addDirective):
940         * page/ContentSecurityPolicy.h:
941
942 2011-05-06  Brett Wilson  <brettw@chromium.org>
943
944         Reviewed by Adam Barth.
945
946         Use a File object to store the downloaded file reference rather than
947         just the path. This keeps the file and permissions in scope (using the
948         already-existing blob system) so the browser won't delete the file
949         when the load is complete. Instead, the file will be cleaned up when
950         the request objects are deleted.
951         https://bugs.webkit.org/show_bug.cgi?id=60281
952
953         * platform/network/chromium/ResourceResponse.cpp:
954         (WebCore::ResourceResponse::doPlatformCopyData):
955         (WebCore::ResourceResponse::doPlatformAdopt):
956         * platform/network/chromium/ResourceResponse.h:
957         (WebCore::ResourceResponse::downloadedFile):
958         (WebCore::ResourceResponse::setDownloadedFile):
959
960 2011-05-06  Alexis Menard  <alexis.menard@openbossa.org>
961
962         Reviewed by Darin Adler.
963
964         Fix two warnings of unused variables.
965         https://bugs.webkit.org/show_bug.cgi?id=60370
966
967         Remove two unused local variable from the code.
968
969         No new tests, the existing ones should cover.
970
971         * rendering/RenderFlexibleBox.cpp:
972         (WebCore::RenderFlexibleBox::layoutVerticalBox):
973         * svg/animation/SVGSMILElement.cpp:
974         (WebCore::SVGSMILElement::calculateNextProgressTime):
975
976 2011-05-06  Adam Barth  <abarth@webkit.org>
977
978         Reviewed by Eric Seidel.
979
980         Wire up CSP's eval blocking to V8's new API
981         https://bugs.webkit.org/show_bug.cgi?id=60384
982
983         * bindings/v8/ScriptController.cpp:
984         (WebCore::ScriptController::disableEval):
985
986 2011-05-06  David Hyatt  <hyatt@apple.com>
987
988         Reviewed by Dan Bernstein.
989
990         https://bugs.webkit.org/show_bug.cgi?id=60398 (<rdar://problem/9307696>)
991         REGRESSION (r81684?): cox.com sign in button is missing
992         
993         Fix a typo in r81684 where the ascent was used in a comparison instead of boxHeight.
994         This restores the original behavior before the refactoring messed it up.
995
996         Added fast/inline/nested-top-alignment.html
997
998         * rendering/InlineFlowBox.cpp:
999         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
1000
1001 2011-05-06  David Hyatt  <hyatt@apple.com>
1002
1003         Reviewed by Dan Bernstein.
1004
1005         https://bugs.webkit.org/show_bug.cgi?id=60390 (<rdar://problem/9364449>)
1006         REGRESSION (r81992): portions of ticketmaster site render blank
1007
1008         Make simplified layout skip from a positioned object out to its containing block.  There is no
1009         need to dirty the intermediate inlines, and in this case it's actively harmful, since the
1010         block responsible for the layout of the positioned object doesn't get m_posChildNeedsLayout set.
1011
1012         Added fast/block/positioning/hiding-inside-relpositioned-inline.html
1013
1014         * rendering/RenderObject.h:
1015         (WebCore::RenderObject::markContainingBlocksForLayout):
1016
1017 2011-05-06  Pavel Feldman  <pfeldman@chromium.org>
1018
1019         Not reviewed: move selection test into the text area branch.
1020
1021         * inspector/front-end/TextViewer.js:
1022         (WebInspector.TextViewer.prototype._contextMenu):
1023
1024 2011-05-04  Adrienne Walker  <enne@google.com>
1025
1026         Reviewed by James Robinson.
1027
1028         [chromium] Fix incorrect scissor rect for layers that render into a rendersurface
1029         https://bugs.webkit.org/show_bug.cgi?id=59020
1030
1031         Allow for empty scissor rects, which implies scissoring to the render
1032         surface. The previous code and previous patch on this bug both didn't
1033         take into account that the scissor rect should be the render surface
1034         and not the projection of the layer itself, because child layers
1035         aren't necessarily contained within the bounds of their superlayer.
1036
1037         Test: compositing/flat-with-transformed-child.html
1038
1039         * platform/graphics/chromium/LayerRendererChromium.cpp:
1040         (WebCore::LayerRendererChromium::paintLayerContents):
1041         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
1042         (WebCore::LayerRendererChromium::drawLayer):
1043         (WebCore::LayerRendererChromium::setScissorToRect):
1044
1045 2011-05-06  Simon Fraser  <simon.fraser@apple.com>
1046
1047         Reviewed by Sam Weinig.
1048
1049         Lazily allocate ScrollAnimator in ScrollableArea
1050         https://bugs.webkit.org/show_bug.cgi?id=60327
1051
1052         Avoid allocating the ScrollAnimator up-front, because we
1053         create lots of ScrollableAreas via RenderLayer, and we should
1054         only need the animator when scrolling.
1055
1056         * platform/ScrollableArea.cpp:
1057         (WebCore::ScrollableArea::ScrollableArea):
1058         (WebCore::ScrollableArea::scrollAnimator):
1059         (WebCore::ScrollableArea::scroll):
1060         (WebCore::ScrollableArea::scrollToOffsetWithoutAnimation):
1061         (WebCore::ScrollableArea::scrollToXOffsetWithoutAnimation):
1062         (WebCore::ScrollableArea::scrollToYOffsetWithoutAnimation):
1063         (WebCore::ScrollableArea::handleWheelEvent):
1064         (WebCore::ScrollableArea::handleGestureEvent):
1065         * platform/ScrollableArea.h:
1066
1067 2011-05-06  Eric Carlson  <eric.carlson@apple.com>
1068
1069         Reviewed by Darin Adler.
1070
1071         REGRESSION (r77954): HTTP Live Streams have incorrect controller UI
1072         https://bugs.webkit.org/show_bug.cgi?id=60304
1073         <rdar://problem/9392609>
1074
1075         Don't assume that the only time the media controls UI may need to change is on a 
1076         network state change, readyState changes can be significant as well.
1077
1078         Tested manually because we don't have any live streams to test in DRT.
1079
1080         * html/HTMLMediaElement.cpp:
1081         (WebCore::HTMLMediaElement::setNetworkState): changedNetworkState -> updateStatusDisplay.
1082         (WebCore::HTMLMediaElement::setReadyState): Call updateStatusDisplay.
1083
1084         * html/shadow/MediaControlRootElement.cpp:
1085         (WebCore::MediaControlRootElement::reset): changedNetworkState -> updateStatusDisplay.
1086         (WebCore::MediaControlRootElement::updateStatusDisplay): Ditto.
1087         * html/shadow/MediaControlRootElement.h:
1088
1089         * html/shadow/MediaControlRootElementChromium.cpp:
1090         (WebCore::MediaControlRootElementChromium::reset): Ditto.
1091         (WebCore::MediaControlRootElementChromium::updateStatusDisplay): Ditto.
1092         * html/shadow/MediaControlRootElementChromium.h:
1093         * html/shadow/MediaControls.h:
1094
1095 2011-05-06  Andreas Kling  <andreas.kling@nokia.com>
1096
1097         Unreviewed Qt 4.8 build fix.
1098
1099         * WebCore.pro: Don't set HAVE_QRAWFONT yet. Left a FIXME so we can
1100         enable it after the 4.8 bots are updated with the full QRawFont APIs.
1101
1102 2011-05-06  Alexander Pavlov  <apavlov@chromium.org>
1103
1104         Reviewed by Yury Semikhatsky.
1105
1106         Web Inspector: editing CSS in the Resources panel and not committing does not revert the change.
1107         https://bugs.webkit.org/show_bug.cgi?id=60319
1108
1109         * inspector/front-end/ResourceView.js:
1110         (WebInspector.ResourceSourceFrame.prototype.cancelEditing):
1111
1112 2011-05-06  Joe Mason  <jmason@rim.com>
1113
1114         Reviewed by Adam Barth.
1115
1116         WebSocket urls should always be encoded as UTF-8.
1117         https://bugs.webkit.org/show_bug.cgi?id=57138
1118
1119         Change WebSocket::connect to take the raw URL string and parse it
1120         internally using the simple KURL constructor, which expects an absolute
1121         UTF-8 encoded URL.  This ensures that all code that creates a WebSocket
1122         goes through this method instead of completeURL.
1123
1124         Test: http/tests/websocket/tests/url-with-nonascii-query.html
1125
1126         * bindings/js/JSWebSocketCustom.cpp:
1127         (WebCore::JSWebSocketConstructor::constructJSWebSocket): Pass String instead of KURL to WebSocket::connect().
1128         * websockets/WebSocket.cpp:
1129         (WebCore::WebSocket::connect): Now takes a String instead of a KURL and parses it using UTF-8.
1130         * websockets/WebSocket.h:
1131
1132 2011-05-06  Luke Macpherson   <macpherson@chromium.org>
1133
1134         Reviewed by Eric Seidel.
1135
1136         Make CSSStyleSelector::applyProperty() CSSPropertyWebkitColorCorrection case use appropriate macro.
1137         https://bugs.webkit.org/show_bug.cgi?id=60339
1138
1139         No tests added as no functionality changed.
1140
1141         * css/CSSStyleSelector.cpp:
1142         (WebCore::CSSStyleSelector::applyProperty):
1143         Use correct macro for CSSPropertySpeak.
1144         * rendering/style/RenderStyle.h:
1145         (WebCore::InheritedFlags::initialColorSpace):
1146         Add initialColorSpace() static method.
1147
1148 2011-05-06  Luke Macpherson   <macpherson@chromium.org>
1149
1150         Reviewed by Eric Seidel.
1151
1152         Make RenderStyle::setPageBreakInside() reject unsupported enum values.
1153         https://bugs.webkit.org/show_bug.cgi?id=60235
1154
1155         No tests added as no functionality changed.
1156
1157         * css/CSSStyleSelector.cpp:
1158         (WebCore::CSSStyleSelector::applyProperty):
1159         Remove special-case code and use appropriate macro.
1160         * rendering/style/RenderStyle.h:
1161         (WebCore::InheritedFlags::setPageBreakInside):
1162         Assert that only supported values are used.
1163
1164 2011-05-06  Luke Macpherson   <macpherson@chromium.org>
1165
1166         Reviewed by Eric Seidel.
1167
1168         Move burden of checking for BJustify box alignment into RenderStyle
1169         https://bugs.webkit.org/show_bug.cgi?id=60246
1170
1171         No new tests added as no functionality changed.
1172
1173         * css/CSSStyleSelector.cpp:
1174         (WebCore::CSSStyleSelector::applyProperty):
1175         Remove special-case logic checking for BJUSTIFY and use existing macro.
1176         * rendering/style/RenderStyle.h:
1177         (WebCore::InheritedFlags::setBoxAlign):
1178         Assert valid values are used.
1179
1180 2011-05-06  Luke Macpherson   <macpherson@chromium.org>
1181
1182         Reviewed by Eric Seidel.
1183
1184         Make CSSStyleSelector::applyProperty() CSSPropertyPointerEvents use the correct macro.
1185         https://bugs.webkit.org/show_bug.cgi?id=60338
1186
1187         No tests added as no functionality changed.
1188
1189         * css/CSSStyleSelector.cpp:
1190         (WebCore::CSSStyleSelector::applyProperty):
1191         Use correct macro for CSSPropertySpeak.
1192
1193 2011-05-06  Alexis Menard  <alexis.menard@openbossa.org>
1194
1195         Reviewed by Alexey Proskuryakov.
1196
1197         Build fix with gcc 4.6 and c++0x support.
1198         https://bugs.webkit.org/show_bug.cgi?id=60284
1199
1200         When enabling support of c++0x the compilation fails because of an
1201         ambiguous overload error. In this code when constructing the pair
1202         we use the new c++0x rvalue reference feature (&&). It means we are
1203         calling String(const WTF::AtomicString&) which becomes ambiguous because
1204         it has an overload WTF::String::String(const WTF::String&) and usually one
1205         with the native port string type (e.g. QString). In this code we want the
1206         String version because the pair store Strings.
1207
1208         No new tests, build fix.
1209
1210         * loader/FormSubmission.cpp:
1211         (WebCore::FormSubmission::create):
1212
1213 2011-05-06  Cris Neckar  <cdn@chromium.org>
1214
1215         Reviewed by Dirk Schulze.
1216
1217         Tests for crash when a transform is applied to certain filters.
1218         https://bugs.webkit.org/show_bug.cgi?id=59551
1219
1220         Test: svg/filters/filter-after-transform-crash.svg
1221
1222         * platform/graphics/filters/FEComposite.cpp:
1223         (WebCore::FEComposite::determineAbsolutePaintRect):
1224         * platform/graphics/filters/FEConvolveMatrix.h:
1225         (WebCore::FEConvolveMatrix::determineAbsolutePaintRect):
1226         * platform/graphics/filters/FEDisplacementMap.h:
1227         (WebCore::FEDisplacementMap::determineAbsolutePaintRect):
1228         * platform/graphics/filters/FEFlood.h:
1229         (WebCore::FEFlood::determineAbsolutePaintRect):
1230         * platform/graphics/filters/FELighting.h:
1231         (WebCore::FELighting::determineAbsolutePaintRect):
1232         * platform/graphics/filters/FETile.h:
1233         (WebCore::FETile::determineAbsolutePaintRect):
1234         * platform/graphics/filters/FETurbulence.h:
1235         (WebCore::FETurbulence::determineAbsolutePaintRect):
1236         * platform/graphics/filters/FilterEffect.cpp:
1237         (WebCore::isFilterSizeValid):
1238         (WebCore::FilterEffect::determineAbsolutePaintRect):
1239         (WebCore::FilterEffect::asUnmultipliedImage):
1240         (WebCore::FilterEffect::asPremultipliedImage):
1241         (WebCore::FilterEffect::copyUnmultipliedImage):
1242         (WebCore::FilterEffect::copyPremultipliedImage):
1243         (WebCore::FilterEffect::createUnmultipliedImageResult):
1244         (WebCore::FilterEffect::createPremultipliedImageResult):
1245         * platform/graphics/filters/FilterEffect.h:
1246         (WebCore::FilterEffect::maxEffectRect):
1247         (WebCore::FilterEffect::setMaxEffectRect):
1248         * rendering/svg/RenderSVGResourceFilter.cpp:
1249         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
1250         (WebCore::RenderSVGResourceFilterPrimitive::determineFilterPrimitiveSubregion):
1251
1252 2011-05-06  Luke Macpherson   <macpherson@chromium.org>
1253
1254         Reviewed by Eric Seidel.
1255
1256         Use cast to convert primitive value to FontSmoothingMode.
1257         https://bugs.webkit.org/show_bug.cgi?id=60242
1258
1259         No tests added as no functionality changed.
1260
1261         * css/CSSStyleSelector.cpp:
1262         (WebCore::CSSStyleSelector::applyProperty):
1263         Use cast to convert primitive value to FontSmoothingMode.
1264
1265 2011-05-05  Luke Macpherson   <macpherson@chromium.org>
1266
1267         Reviewed by Eric Seidel.
1268
1269         Make CSSPropertySpeak use the correct macro.
1270         https://bugs.webkit.org/show_bug.cgi?id=60335
1271
1272         No tests added as no functionality changed.
1273
1274         * css/CSSStyleSelector.cpp:
1275         (WebCore::CSSStyleSelector::applyProperty):
1276         Use correct macro for CSSPropertySpeak.
1277
1278 2011-05-05  Eric Carlson  <eric.carlson@apple.com>
1279
1280         Reviewed by Maciej Stachowiak.
1281
1282         <rdar://problem/9390864>
1283         https://bugs.webkit.org/show_bug.cgi?id=60343
1284         Crash on Recovery System when trying to load page that includes media element
1285
1286         Automated test not possible, tested manually.
1287
1288         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
1289         (WebCore::MediaPlayerPrivateAVFoundationObjC::isAvailable): Only return true if
1290             AVFoundation and CoreMedia are installed.
1291
1292         * platform/mac/SoftLinking.h: Define SOFT_LINK_FRAMEWORK_OPTIONAL, identical to 
1293             SOFT_LINK_FRAMEWORK except that it doesn't ASSERT if the framework doesn't exist.
1294
1295 2011-05-05  Eric Carlson  <eric.carlson@apple.com>
1296
1297         Reviewed by Darin Adler.
1298
1299         Live streams sometimes won't play with AVFoundation backend
1300         https://bugs.webkit.org/show_bug.cgi?id=58961
1301         rdar://problem/9284748
1302
1303         Tested manually because we don't have any live streams to test in DRT.
1304
1305         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1306         (WebCore::MediaPlayerPrivateAVFoundation::updateStates): Don't special case seeking, assume
1307             AVFoundation will notify us when internal states change.
1308
1309         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h: Make m_timeObserver
1310             a RetainPtr
1311         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
1312         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC): Ditto.
1313         (WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad): Ditto.
1314
1315 2011-05-05  Jay Civelli  <jcivelli@chromium.org>
1316
1317         Reviewed by Adam Barth.
1318
1319         Adding quoted-printable encoding/decoding capabilities.
1320         This is needed for MHTML support.
1321         https://bugs.webkit.org/show_bug.cgi?id=59834
1322
1323         * CMakeLists.txt:
1324         * GNUmakefile.list.am:
1325         * WebCore.gypi:
1326         * WebCore.pro:
1327         * WebCore.vcproj/WebCore.vcproj:
1328         * WebCore.xcodeproj/project.pbxproj:
1329         * platform/text/QuotedPrintable.cpp: Added.
1330         * platform/text/QuotedPrintable.h: Added.
1331
1332 2011-05-05  Andy Estes  <aestes@apple.com>
1333
1334         Reviewed by Eric Seidel.
1335
1336         Implement document.innerHTML
1337         https://bugs.webkit.org/show_bug.cgi?id=60316
1338
1339         ASSERT that contextElement is non-0 when constructing a HTMLTreeBuilder
1340         for fragment parsing. This assertion will become invalid when
1341         document.innerHTML is implemented, which is the only case where HTML5
1342         specifies that a fragment will not have a context element.
1343
1344         * html/parser/HTMLTreeBuilder.cpp:
1345         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
1346
1347 2011-05-05  Kevin Ollivier  <kevino@theolliviers.com>
1348
1349         [wx] Unreviewed build fix. Include ApplicationServices for wx port.
1350
1351         * platform/graphics/GlyphBuffer.h:
1352         * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
1353
1354 2011-05-05  Dan Bernstein  <mitz@apple.com>
1355
1356         Reviewed by Simon Fraser.
1357
1358         WebCore part of <rdar://problem/9155590> Broken animation in iAd producer
1359
1360         * WebCore.exp.in: Export wkExecutableWasLinkedOnOrBeforeSnowLeopard.
1361         * platform/graphics/ca/GraphicsLayerCA.cpp:
1362         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): Account for the binary-compatiblity
1363         check in Core Animation.
1364         * platform/mac/WebCoreSystemInterface.h: Added wkExecutableWasLinkedOnOrBeforeSnowLeopard.
1365         * platform/mac/WebCoreSystemInterface.mm: Ditto.
1366
1367 2011-05-05  Sam Weinig  <sam@webkit.org>
1368
1369         Reviewed by Anders Carlsson.
1370
1371         WebKit2 (Mac): Background tabs/windows can force themselves to the front
1372         <rdar://problem/9386346>
1373         https://bugs.webkit.org/show_bug.cgi?id=60315
1374
1375         * platform/mac/WidgetMac.mm:
1376         (WebCore::Widget::setFocus):
1377         It is incorrect for us to call Chrome::focus() here, which could bring a window/tab
1378         to the front. Calling focusNSView() was only necessary because in WebKit we must inform
1379         the platform widget that the focus has changed. WebKit2 Mac now matches other ports.
1380
1381 2011-05-05  Justin Novosad  <junov@chromium.org>
1382
1383         Reviewed by Kenneth Russell.
1384
1385         [Chromium] Change the --accelerated-2d-canvas flag to mean Ganesh, and stop using --enable-accelerated-drawing for that purpose
1386         https://bugs.webkit.org/show_bug.cgi?id=60173
1387
1388         * page/Page.cpp:
1389         (WebCore::Page::sharedGraphicsContext3D):
1390         Flipping the switch to make Skia the default for the accelerated 2d canvas
1391
1392 2011-05-05  Tony Gentilcore  <tonyg@chromium.org>
1393
1394         Reviewed by Adam Barth.
1395
1396         ASSERT(m_state == ParsingState) fires @ www.canalplus.fr
1397         https://bugs.webkit.org/show_bug.cgi?id=60101
1398
1399         Test: fast/parser/close-while-stopping.html
1400
1401         * dom/Document.cpp:
1402         (WebCore::Document::close): According to http://www.whatwg.org/specs/web-apps/current-work/#dom-document-close,
1403         the close() steps should be aborted if there is no script-created parser
1404         associated with the document. Our parser lives throughout
1405         http://www.whatwg.org/specs/web-apps/current-work/#the-end, but it seems
1406         the spec doesn't consider the parser active any more. So to properly
1407         respect this, we need to check that the parser is still parsing.
1408
1409 2011-04-28  Evan Martin  <evan@chromium.org>
1410
1411         Reviewed by Ojan Vafai.
1412
1413         REGRESSION: backspace should not go back on Linux
1414         https://bugs.webkit.org/show_bug.cgi?id=59731
1415
1416         Add a new EditingBehavior, shouldNavigateBackOnBackspace, which is false on
1417         Linux, and test for it in the default backspace handler.
1418
1419         * editing/EditingBehavior.h:
1420         (WebCore::EditingBehavior::shouldNavigateBackOnBackspace):
1421         * page/EventHandler.cpp:
1422         (WebCore::EventHandler::defaultBackspaceEventHandler):
1423
1424 2011-05-05  Igor Oliveira  <igor.oliveira@openbossa.org>
1425
1426         Reviewed by Kenneth Russell.
1427
1428         Framebuffer object is being created twice
1429         https://bugs.webkit.org/show_bug.cgi?id=60207
1430
1431         Does not create more than one opengl framebuffer
1432
1433         * platform/graphics/gpu/mac/DrawingBufferMac.mm:
1434         (WebCore::DrawingBuffer::DrawingBuffer):
1435         * platform/graphics/gpu/qt/DrawingBufferQt.cpp:
1436         (WebCore::DrawingBuffer::DrawingBuffer):
1437         * platform/graphics/gtk/DrawingBufferGtk.cpp:
1438         (WebCore::DrawingBuffer::DrawingBuffer):
1439
1440 2011-05-05  Simon Fraser  <simon.fraser@apple.com>
1441
1442         Reviewed by Beth Dakin.
1443
1444         Every RenderLayer registers itself as a ScrollableArea
1445         https://bugs.webkit.org/show_bug.cgi?id=59650
1446
1447         Rather than registering every RenderLayer as a ScrollableArea
1448         on layer creation, only register RenderLayers which are overflow-
1449         scrollable. Use the m_scrollableAreaPage pointer to keep track
1450         of whether we've registered to avoid excess work.
1451
1452         * rendering/RenderLayer.cpp:
1453         (WebCore::RenderLayer::RenderLayer):
1454         (WebCore::RenderLayer::scrollsOverflow):
1455         (WebCore::RenderLayer::styleChanged):
1456         * rendering/RenderLayer.h:
1457
1458 2011-05-05  Jer Noble  <jer.noble@apple.com>
1459
1460         Reviewed by Steve Falkenburg.
1461
1462         Workaround iTunes' incorrect registry entry for .m4a extensions.
1463         https://bugs.webkit.org/show_bug.cgi?id=60229
1464
1465         No new tests, as a test already exits for .m4a support (LayoutTests/media/audio-mpeg4-supported.html).
1466         The test failed to catch this regression because the build bots haven't installed iTunes.
1467         
1468         Add a hard-coded MIME type mapping for 'm4a' -> 'audio/x-m4a'.
1469
1470         * platform/win/MIMETypeRegistryWin.cpp:
1471         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1472
1473 2011-05-05  Abhishek Arya  <inferno@chromium.org>
1474
1475         Reviewed by Dave Hyatt.
1476
1477         When style changes for a RenderBlock and we lose our ability to intrude into
1478         floats in the next siblings block (e.g a position change), make sure to mark
1479         our childs with floats for layout and iterate through our next sibling block
1480         chain to see which ones contain the float that also exists in our floating
1481         objects list and clear those using markAllDescendantsWithFloatsForLayout.
1482         https://bugs.webkit.org/show_bug.cgi?id=56299
1483
1484         Tests: fast/block/float/float-not-removed-from-next-sibling-crash.html
1485                fast/block/float/float-not-removed-from-next-sibling.html
1486                fast/block/float/float-not-removed-from-next-sibling2.html
1487                fast/block/float/float-not-removed-from-next-sibling3.html
1488                fast/block/float/float-not-removed-from-next-sibling4.html
1489
1490         * rendering/RenderBlock.cpp:
1491         (WebCore::RenderBlock::styleWillChange):
1492         (WebCore::RenderBlock::styleDidChange):
1493         (WebCore::RenderBlock::markSiblingsWithFloatsForLayout):
1494         * rendering/RenderBlock.h:
1495
1496 2011-05-05  Brian Weinstein  <bweinstein@apple.com>
1497
1498         Reviewed by Timothy Hatcher.
1499
1500         WebKit2: Docking Web Inspector doesn't respect maximum inspector size
1501         https://bugs.webkit.org/show_bug.cgi?id=60294
1502         <rdar://problem/9388518>
1503
1504         Make a needed function public and export it.
1505
1506         * WebCore.exp.in: Export constrainedAttaechedWindowHeight.
1507         * inspector/InspectorFrontendClientLocal.h: Make constrainedAttaechedWindowHeight public.
1508
1509 2011-05-05  Tony Gentilcore  <tonyg@chromium.org>
1510
1511         Reviewed by Nate Chapin.
1512
1513         [Navigation Timing] navigationStart should always be available
1514         https://bugs.webkit.org/show_bug.cgi?id=59448
1515
1516         * page/PerformanceTiming.cpp:
1517         (WebCore::PerformanceTiming::navigationStart):
1518
1519 2011-05-05  Eric Carlson  <eric.carlson@apple.com>
1520
1521         Reviewed by Adam Roben.
1522
1523         Block callbacks delivered during destruction
1524         https://bugs.webkit.org/show_bug.cgi?id=60291
1525         <rdar://problem/9382942>
1526
1527         No new tests, tested by existing tests.
1528
1529         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1530         (WebCore::MediaPlayerPrivateAVFoundation::~MediaPlayerPrivateAVFoundation): Call 
1531             setIgnoreLoadStateChanges(true) to cancel all callbacks.
1532         (WebCore::MediaPlayerPrivateAVFoundation::updateStates): Return immediately if 
1533             m_ignoreLoadStateChanges is true.
1534         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification): loadStateChanged -> updateStates.
1535             Don't call updateStates after calling loadedTimeRangesChanged, it already does it.
1536         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
1537
1538 2011-05-05  David Hyatt  <hyatt@apple.com>
1539
1540         Reviewed by Darin Adler.
1541
1542         <rdar://problem/9354979> REGRESSION (r83070-r83126): Conversation takes 10 seconds to load and makes mail unresponsive
1543
1544         Culled inlines were triggering some pathological line box tree groveling that isn't even necessary.
1545         Removed the ancient code (that used to be in RenderFlow), since it made no sense in the RenderBlock case
1546         (it was running for inline blocks, which was definitely not even the intent) or in the RenderInline case
1547         (the object being removed has no effect on any lines).
1548         
1549         Also tweaked culledInlineFirstLineBox and culledInlineLastLineBox to avoid bailing if the first replaced object that
1550         is encountered has a null inlineBoxWrapper().  Just a slight speed optimization to avoid an extra null check.
1551         
1552         * rendering/RenderBlock.cpp:
1553         (WebCore::RenderBlock::destroy):
1554         * rendering/RenderInline.cpp:
1555         (WebCore::RenderInline::destroy):
1556         (WebCore::RenderInline::culledInlineFirstLineBox):
1557         (WebCore::RenderInline::culledInlineLastLineBox):
1558
1559 2011-05-05  Bharathwaaj Srinivasan  <bharathwaaj.s@gmail.com>
1560
1561         Reviewed by Holger Freyther.
1562
1563         Fix build-webkit --minimal.
1564         https://bugs.webkit.org/show_bug.cgi?id=60257
1565
1566         No new tests. This is just a build fix.
1567
1568         * bindings/js/JSDOMBinding.cpp:
1569
1570 2011-05-05  Eric Carlson  <eric.carlson@apple.com>
1571
1572         Reviewed by Adam Roben.
1573
1574         The preload attribute of the video tag is not completely implemented
1575         https://bugs.webkit.org/show_bug.cgi?id=43673
1576         <rdar://problem/9369746>
1577
1578         This change implements "preload=metadata" for the AVFoundation backend.
1579         Tested manually with manual-tests/media-elements/video-preload.html.
1580
1581         * html/HTMLMediaElement.cpp:
1582         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_havePreparedToPlay.
1583         (WebCore::HTMLMediaElement::prepareForLoad): Ditto.
1584         (WebCore::HTMLMediaElement::prepareToPlay): New, tell player to prepare to play.
1585         (WebCore::HTMLMediaElement::seek): Call prepareToPlay when preload is less than 'auto'
1586             because we need to have media data loaded to seek.
1587         (WebCore::HTMLMediaElement::updatePlayState): Call prepareToPlay.
1588         * html/HTMLMediaElement.h:
1589
1590         * manual-tests/media-elements/video-preload.html: Make changing urls work. 
1591
1592         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1593         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):  Remove 
1594             m_videoFrameHasDrawn and m_delayingLoad as they are no longer used.
1595         (WebCore::MediaPlayerPrivateAVFoundation::resumeLoad): Removed.
1596         (WebCore::MediaPlayerPrivateAVFoundation::load): Don't initialize m_videoFrameHasDrawn. 
1597             Move all preload logic to setPreload, call it from here.
1598         (WebCore::MediaPlayerPrivateAVFoundation::prepareToPlay): Move all preload logic to 
1599             setPreload, call it.
1600         (WebCore::MediaPlayerPrivateAVFoundation::duration): Don't cache duration = 0, it is
1601             unlikely to be correct and isn't worth caching. Use invalidTime() function.
1602         (WebCore::MediaPlayerPrivateAVFoundation::seeking): Use invalidTime() function.
1603         (WebCore::MediaPlayerPrivateAVFoundation::setNaturalSize): Add logging.
1604         (WebCore::MediaPlayerPrivateAVFoundation::updateStates): Update for name change AVAssetStatus
1605             to AssetStatus. Always create a AVPlayerItem for live streams because they can't be inspected
1606             without one. Set networkState to 'idle' when the playback buffer is full because that is
1607             a signal that AVFoundation won't do any more IO. Set readyState to 'HAVE_CURRENT_DATA' 
1608             when the first frame is available.
1609         (WebCore::MediaPlayerPrivateAVFoundation::metadataLoaded): Call tracksChanged so we cache
1610             width, height, hasVideo, etc.
1611         (WebCore::MediaPlayerPrivateAVFoundation::loadedTimeRangesChanged): Use invalidTime() function.
1612         (WebCore::MediaPlayerPrivateAVFoundation::timeChanged): Ditto.
1613         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted): Ditto.
1614         (WebCore::MediaPlayerPrivateAVFoundation::repaint): Don't set m_videoFrameHasDrawn, it is done
1615             in derived classes.
1616         (WebCore::MediaPlayerPrivateAVFoundation::setPreload): Centralize all logic about when to create
1617             AVAsset and AVPlayerItem here.
1618         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
1619
1620         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
1621         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
1622         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC): Initialize
1623             m_videoFrameHasDrawn.
1624         (WebCore::MediaPlayerPrivateAVFoundationObjC::hasAvailableVideoFrame): New, renamed from
1625             videoLayerIsReadyToDisplay. Return true if we have a layer with frames available or
1626             if we have painted a frame to the context.
1627         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): New, create the AVAsset
1628             if necessary.
1629         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForCacheResource): Ditto.
1630         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer): Restructure logic.
1631         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): New, create AVPlayerItem.
1632         (WebCore::MediaPlayerPrivateAVFoundationObjC::beginLoadingMetadata): Correct logging.
1633         (WebCore::MediaPlayerPrivateAVFoundationObjC::playerItemStatus): Return "buffer full" when
1634             the buffer is full.
1635         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration): Get the duration from the
1636             AVAsset when we haven't allocated the AVPlayerItem yet so that we can return duration
1637             when we only have metadata.
1638         (WebCore::MediaPlayerPrivateAVFoundationObjC::assetStatus): Update for name change.
1639         (WebCore::MediaPlayerPrivateAVFoundationObjC::paint): Set m_videoFrameHasDrawn.
1640         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Get attributes from AVAsset
1641             when when we haven't allocated the AVPlayerItem yet so that we can report attributes
1642             when we only have metadata.
1643         (WebCore::MediaPlayerPrivateAVFoundationObjC::sizeChanged): Guard against being called before
1644             we have allocated the AVPlayerItem.
1645
1646 2011-05-05  Ryosuke Niwa  <rniwa@webkit.org>
1647
1648         Reviewed by Eric Seidel.
1649
1650         Rename SelectionController to FrameSelection
1651         https://bugs.webkit.org/show_bug.cgi?id=60234
1652
1653         * CMakeLists.txt:
1654         * GNUmakefile.list.am:
1655         * WebCore.exp.in:
1656         * WebCore.gypi:
1657         * WebCore.pro:
1658         * WebCore.vcproj/WebCore.vcproj:
1659         * WebCore.xcodeproj/project.pbxproj:
1660         * accessibility/AccessibilityObject.cpp:
1661         * accessibility/AccessibilityRenderObject.cpp:
1662         (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
1663         * accessibility/mac/AccessibilityObjectWrapper.mm:
1664         * bindings/objc/ExceptionHandlers.h:
1665         * css/CSSStyleSelector.cpp:
1666         * dom/ContainerNode.cpp:
1667         (WebCore::ContainerNode::cloneChildNodes):
1668         * dom/Document.cpp:
1669         * dom/InputElement.cpp:
1670         * editing/DeleteButtonController.cpp:
1671         * editing/EditCommand.cpp:
1672         * editing/EditingAllInOne.cpp:
1673         * editing/EditingStyle.cpp:
1674         * editing/Editor.cpp:
1675         (WebCore::Editor::canCopy):
1676         (WebCore::Editor::canDelete):
1677         (WebCore::Editor::markMisspellingsAfterTypingToWord):
1678         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1679         (WebCore::Editor::changeSelectionAfterCommand):
1680         (WebCore::Editor::respondToChangedSelection):
1681         * editing/Editor.h:
1682         * editing/EditorCommand.cpp:
1683         (WebCore::executeDeleteToMark):
1684         (WebCore::executeMoveBackward):
1685         (WebCore::executeMoveBackwardAndModifySelection):
1686         (WebCore::executeMoveDown):
1687         (WebCore::executeMoveDownAndModifySelection):
1688         (WebCore::executeMoveForward):
1689         (WebCore::executeMoveForwardAndModifySelection):
1690         (WebCore::executeMoveLeft):
1691         (WebCore::executeMoveLeftAndModifySelection):
1692         (WebCore::executeMovePageDown):
1693         (WebCore::executeMovePageDownAndModifySelection):
1694         (WebCore::executeMovePageUp):
1695         (WebCore::executeMovePageUpAndModifySelection):
1696         (WebCore::executeMoveRight):
1697         (WebCore::executeMoveRightAndModifySelection):
1698         (WebCore::executeMoveToBeginningOfDocument):
1699         (WebCore::executeMoveToBeginningOfDocumentAndModifySelection):
1700         (WebCore::executeMoveToBeginningOfLine):
1701         (WebCore::executeMoveToBeginningOfLineAndModifySelection):
1702         (WebCore::executeMoveToBeginningOfParagraph):
1703         (WebCore::executeMoveToBeginningOfParagraphAndModifySelection):
1704         (WebCore::executeMoveToBeginningOfSentence):
1705         (WebCore::executeMoveToBeginningOfSentenceAndModifySelection):
1706         (WebCore::executeMoveToEndOfDocument):
1707         (WebCore::executeMoveToEndOfDocumentAndModifySelection):
1708         (WebCore::executeMoveToEndOfSentence):
1709         (WebCore::executeMoveToEndOfSentenceAndModifySelection):
1710         (WebCore::executeMoveToEndOfLine):
1711         (WebCore::executeMoveToEndOfLineAndModifySelection):
1712         (WebCore::executeMoveToEndOfParagraph):
1713         (WebCore::executeMoveToEndOfParagraphAndModifySelection):
1714         (WebCore::executeMoveParagraphBackwardAndModifySelection):
1715         (WebCore::executeMoveParagraphForwardAndModifySelection):
1716         (WebCore::executeMoveUp):
1717         (WebCore::executeMoveUpAndModifySelection):
1718         (WebCore::executeMoveWordBackward):
1719         (WebCore::executeMoveWordBackwardAndModifySelection):
1720         (WebCore::executeMoveWordForward):
1721         (WebCore::executeMoveWordForwardAndModifySelection):
1722         (WebCore::executeMoveWordLeft):
1723         (WebCore::executeMoveWordLeftAndModifySelection):
1724         (WebCore::executeMoveWordRight):
1725         (WebCore::executeMoveWordRightAndModifySelection):
1726         (WebCore::executeMoveToLeftEndOfLine):
1727         (WebCore::executeMoveToLeftEndOfLineAndModifySelection):
1728         (WebCore::executeMoveToRightEndOfLine):
1729         (WebCore::executeMoveToRightEndOfLineAndModifySelection):
1730         * editing/FrameSelection.cpp: Copied from Source/WebCore/editing/SelectionController.cpp.
1731         (WebCore::FrameSelection::FrameSelection):
1732         (WebCore::FrameSelection::moveTo):
1733         (WebCore::FrameSelection::setSelection):
1734         (WebCore::FrameSelection::nodeWillBeRemoved):
1735         (WebCore::FrameSelection::respondToNodeModification):
1736         (WebCore::FrameSelection::textWillBeReplaced):
1737         (WebCore::FrameSelection::setIsDirectional):
1738         (WebCore::FrameSelection::directionOfEnclosingBlock):
1739         (WebCore::FrameSelection::willBeModified):
1740         (WebCore::FrameSelection::positionForPlatform):
1741         (WebCore::FrameSelection::startForPlatform):
1742         (WebCore::FrameSelection::endForPlatform):
1743         (WebCore::FrameSelection::modifyExtendingRight):
1744         (WebCore::FrameSelection::modifyExtendingForward):
1745         (WebCore::FrameSelection::modifyMovingRight):
1746         (WebCore::FrameSelection::modifyMovingForward):
1747         (WebCore::FrameSelection::modifyExtendingLeft):
1748         (WebCore::FrameSelection::modifyExtendingBackward):
1749         (WebCore::FrameSelection::modifyMovingLeft):
1750         (WebCore::FrameSelection::modifyMovingBackward):
1751         (WebCore::FrameSelection::modify):
1752         (WebCore::FrameSelection::xPosForVerticalArrowNavigation):
1753         (WebCore::FrameSelection::clear):
1754         (WebCore::FrameSelection::setStart):
1755         (WebCore::FrameSelection::setEnd):
1756         (WebCore::FrameSelection::setBase):
1757         (WebCore::FrameSelection::setExtent):
1758         (WebCore::FrameSelection::setCaretRectNeedsUpdate):
1759         (WebCore::FrameSelection::updateCaretRect):
1760         (WebCore::FrameSelection::caretRenderer):
1761         (WebCore::FrameSelection::localCaretRect):
1762         (WebCore::FrameSelection::absoluteBoundsForLocalRect):
1763         (WebCore::FrameSelection::absoluteCaretBounds):
1764         (WebCore::FrameSelection::caretRepaintRect):
1765         (WebCore::FrameSelection::recomputeCaretRect):
1766         (WebCore::FrameSelection::shouldRepaintCaret):
1767         (WebCore::FrameSelection::invalidateCaretRect):
1768         (WebCore::FrameSelection::paintCaret):
1769         (WebCore::FrameSelection::debugRenderer):
1770         (WebCore::FrameSelection::contains):
1771         (WebCore::FrameSelection::selectFrameElementInParentIfFullySelected):
1772         (WebCore::FrameSelection::selectAll):
1773         (WebCore::FrameSelection::setSelectedRange):
1774         (WebCore::FrameSelection::isInPasswordField):
1775         (WebCore::FrameSelection::caretRendersInsideNode):
1776         (WebCore::FrameSelection::focusedOrActiveStateChanged):
1777         (WebCore::FrameSelection::pageActivationChanged):
1778         (WebCore::FrameSelection::updateSecureKeyboardEntryIfActive):
1779         (WebCore::FrameSelection::setUseSecureKeyboardEntry):
1780         (WebCore::FrameSelection::setFocused):
1781         (WebCore::FrameSelection::isFocusedAndActive):
1782         (WebCore::FrameSelection::updateAppearance):
1783         (WebCore::FrameSelection::setCaretVisible):
1784         (WebCore::FrameSelection::clearCaretRectIfNeeded):
1785         (WebCore::FrameSelection::caretBlinkTimerFired):
1786         (WebCore::FrameSelection::notifyRendererOfSelectionChange):
1787         (WebCore::FrameSelection::setFocusedNodeIfNeeded):
1788         (WebCore::FrameSelection::paintDragCaret):
1789         (WebCore::FrameSelection::copyTypingStyle):
1790         (WebCore::FrameSelection::shouldDeleteSelection):
1791         (WebCore::FrameSelection::bounds):
1792         (WebCore::FrameSelection::getClippedVisibleTextRectangles):
1793         (WebCore::FrameSelection::currentForm):
1794         (WebCore::FrameSelection::revealSelection):
1795         (WebCore::FrameSelection::setSelectionFromNone):
1796         (WebCore::FrameSelection::shouldChangeSelection):
1797         (WebCore::FrameSelection::formatForDebugger):
1798         (WebCore::FrameSelection::showTreeForThis):
1799         (showTree):
1800         * editing/FrameSelection.h: Copied from Source/WebCore/editing/SelectionController.h.
1801         (WebCore::FrameSelection::typingStyle):
1802         (WebCore::FrameSelection::clearTypingStyle):
1803         (WebCore::FrameSelection::setTypingStyle):
1804         (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
1805         * editing/ModifySelectionListLevel.cpp:
1806         * editing/RemoveFormatCommand.cpp:
1807         * editing/ReplaceSelectionCommand.cpp:
1808         * editing/SelectionController.cpp: Removed.
1809         * editing/SelectionController.h: Removed.
1810         * editing/SetSelectionCommand.cpp:
1811         (WebCore::SetSelectionCommand::SetSelectionCommand):
1812         (WebCore::SetSelectionCommand::doApply):
1813         (WebCore::SetSelectionCommand::doUnapply):
1814         * editing/SetSelectionCommand.h:
1815         (WebCore::SetSelectionCommand::create):
1816         * editing/SpellingCorrectionCommand.cpp:
1817         (WebCore::SpellingCorrectionCommand::doApply):
1818         * editing/SpellingCorrectionController.cpp:
1819         (WebCore::SpellingCorrectionController::respondToUnappliedSpellCorrection):
1820         * editing/TypingCommand.cpp:
1821         (WebCore::TypingCommand::deleteKeyPressed):
1822         (WebCore::TypingCommand::forwardDeleteKeyPressed):
1823         * editing/chromium/FrameSelectionChromium.cpp: Copied from Source/WebCore/editing/chromium/SelectionControllerChromium.cpp.
1824         (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
1825         * editing/chromium/SelectionControllerChromium.cpp: Removed.
1826         * editing/gtk/FrameSelectionGtk.cpp: Copied from Source/WebCore/editing/gtk/SelectionControllerGtk.cpp.
1827         (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
1828         * editing/gtk/SelectionControllerGtk.cpp: Removed.
1829         * editing/mac/EditorMac.mm:
1830         (WebCore::Editor::canCopyExcludingStandaloneImages):
1831         * editing/mac/FrameSelectionMac.mm: Copied from Source/WebCore/editing/mac/SelectionControllerMac.mm.
1832         (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
1833         * editing/mac/SelectionControllerMac.mm: Removed.
1834         * editing/qt/EditorQt.cpp:
1835         * loader/archive/cf/LegacyWebArchive.cpp:
1836         * page/ContextMenuController.cpp:
1837         (WebCore::ContextMenuController::populate):
1838         * page/DOMSelection.cpp:
1839         (WebCore::DOMSelection::type):
1840         (WebCore::DOMSelection::modify):
1841         (WebCore::DOMSelection::addRange):
1842         (WebCore::DOMSelection::deleteFromDocument):
1843         (WebCore::DOMSelection::containsNode):
1844         * page/DragController.cpp:
1845         (WebCore::DragController::dragIsMove):
1846         * page/DragController.h:
1847         * page/EventHandler.cpp:
1848         (WebCore::setSelectionIfNeeded):
1849         (WebCore::setNonDirectionalSelectionIfNeeded):
1850         (WebCore::EventHandler::sendContextMenuEventForKey):
1851         (WebCore::EventHandler::handleKeyboardSelectionMovement):
1852         * page/EventHandler.h:
1853         * page/FocusController.cpp:
1854         (WebCore::clearSelectionIfNeeded):
1855         * page/Frame.cpp:
1856         (WebCore::Frame::Frame):
1857         * page/Frame.h:
1858         (WebCore::Frame::selection):
1859         * page/Page.cpp:
1860         (WebCore::Page::Page):
1861         * page/Page.h:
1862         (WebCore::Page::dragCaretController):
1863         * page/chromium/DragControllerChromium.cpp:
1864         * page/chromium/EventHandlerChromium.cpp:
1865         * page/win/DragControllerWin.cpp:
1866         * page/win/EventHandlerWin.cpp:
1867         * rendering/HitTestResult.cpp:
1868         * rendering/RenderBlock.cpp:
1869         (WebCore::RenderBlock::destroy):
1870         (WebCore::RenderBlock::paintCaret):
1871         * rendering/RenderImage.cpp:
1872         * rendering/RenderInline.cpp:
1873         (WebCore::RenderInline::destroy):
1874         * rendering/RenderLayer.cpp:
1875         * rendering/RenderListBox.cpp:
1876         * rendering/RenderObjectChildList.cpp:
1877         (WebCore::RenderObjectChildList::removeChildNode):
1878         * rendering/RenderTextControl.cpp:
1879         * rendering/RenderTextControlSingleLine.cpp:
1880         * rendering/RenderTheme.cpp:
1881         * rendering/RenderTreeAsText.cpp:
1882         * svg/SVGSVGElement.cpp:
1883         * svg/SVGTextContentElement.cpp:
1884         (WebCore::SVGTextContentElement::selectSubString):
1885
1886 2011-05-05  Brent Fulgham  <bfulgham@webkit.org>
1887
1888         [WinCairo] unreviewed build correction.
1889
1890         * platform/network/curl/ResourceRequest.h:
1891         Stub out the new pipelined http logic for cURL.
1892
1893 2011-05-05  Pavel Feldman  <pfeldman@chromium.org>
1894
1895         Reviewed by Yury Semikhatsky.
1896
1897         Web Inspector: searching for node does not result in bringToFront call.
1898         https://bugs.webkit.org/show_bug.cgi?id=60222
1899
1900         * inspector/front-end/ElementsPanel.js:
1901         (WebInspector.ElementsPanel.prototype.updateFocusedNode):
1902
1903 2011-05-05  Andreas Kling  <andreas.kling@nokia.com>
1904
1905         Reviewed by Simon Hausmann.
1906
1907         [Qt] Implement the fast font path for Qt.
1908         https://bugs.webkit.org/show_bug.cgi?id=51106
1909
1910         Use the new QRawFont and QGlyphs APIs in Qt 4.8 to implement the fast paths for
1911         rendering and measurement of simple text.
1912
1913         Since this is still unreleased API, it's guarded by HAVE(QRAWFONT) until the new
1914         classes are fully integrated into the Qt 4.8 release branch.
1915
1916         * WebCore.pro: Add HAVE_QRAWFONT define (for Qt >= 4.8) and new files to build.
1917
1918         * platform/graphics/Font.cpp:
1919         (WebCore::Font::drawText): Disable fast font path for stroked text, and when
1920         painting text with a shadow. (Qt-only)
1921         (WebCore::Font::codePath): Try to use fast font path in more cases.
1922
1923         * platform/graphics/qt/FontCacheQt.cpp:
1924         (WebCore::rawFontForCharacters): Helper function, returns a suitable QRawFont
1925         to use for rendering a given string. Goes through QTextLayout to find the best
1926         font based on the original QFont query.
1927         (WebCore::FontCache::getFontDataForCharacters): Implemented using helper above.
1928
1929         * platform/graphics/qt/FontPlatformData.h:
1930         (WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate):
1931         (WebCore::FontPlatformData::FontPlatformData):
1932         (WebCore::FontPlatformData::rawFont):
1933         * platform/graphics/qt/FontPlatformDataQt.cpp:
1934         (WebCore::FontPlatformData::FontPlatformData): Add a QRawFont member to FontPlatformData.
1935
1936         * platform/graphics/qt/FontQt.cpp:
1937         (WebCore::fillPenForContext):
1938         (WebCore::strokePenForContext):
1939         (WebCore::drawTextCommon): Factored QPen creation out of drawTextCommon
1940         to share code between complex and simple font rendering paths.
1941         (WebCore::Font::drawGlyphs): Implemented using QPainter::drawGlyphs().
1942
1943         * platform/graphics/qt/GlyphPageTreeNodeQt.cpp:
1944         (WebCore::GlyphPage::fill): Implemented using QRawFont::glyphIndexesForString().
1945
1946         * platform/graphics/qt/SimpleFontDataQt.cpp:
1947         (WebCore::SimpleFontData::determinePitch): Return false when using QRawFont since we
1948         have no way of knowing the pitch.
1949         (WebCore::SimpleFontData::containsCharacters): Implemented using QRawFont::supportsCharacter().
1950         (WebCore::SimpleFontData::platformWidthForGlyph): Implemented using QRawFont::advancesForGlyphIndexes().
1951         (WebCore::SimpleFontData::scaledFontData): Added, based on other ports.
1952         (WebCore::SimpleFontData::smallCapsFontData): Ditto.
1953         (WebCore::SimpleFontData::emphasisMarkFontData): Ditto.
1954         (WebCore::SimpleFontData::platformBoundsForGlyph): Stub.
1955         (WebCore::SimpleFontData::platformInit): Use QRawFont APIs to retrieve font metrics.
1956         (WebCore::SimpleFontData::platformCharWidthInit): Ditto.
1957
1958 2011-05-05  Alexis Menard  <alexis.menard@openbossa.org>
1959
1960         Reviewed by Andreas Kling.
1961
1962         [Qt] RenderThemeQt and DumpRenderTreeSupportQt should use nullptr rather than 0.
1963         https://bugs.webkit.org/show_bug.cgi?id=60224
1964
1965         We should use nullptr rather than 0. nullptr will be added in the new C++ standard
1966         but WebKit already has a nullptr class if there is no c++0x support.
1967
1968         * platform/qt/RenderThemeQt.cpp:
1969         (WebCore::RenderThemeQt::adjustProgressBarStyle):
1970         (WebCore::RenderThemeQt::adjustSliderTrackStyle):
1971         (WebCore::RenderThemeQt::adjustSliderThumbStyle):
1972
1973 2011-05-05  Ilya Tikhonovsky  <loislo@chromium.org>
1974
1975         Reviewed by Yury Semikhatsky.
1976
1977         Web Inspector: rename BrowserDebugger to DOMDebugger.
1978
1979         https://bugs.webkit.org/show_bug.cgi?id=60256
1980         InspectorBrowserDebuggerAgent => InspectorDOMDebuggerAgent
1981         browserDebugger => domDebugger
1982
1983         * CMakeLists.txt:
1984         * GNUmakefile.list.am:
1985         * WebCore.gypi:
1986         * WebCore.pro:
1987         * WebCore.vcproj/WebCore.vcproj:
1988         * WebCore.xcodeproj/project.pbxproj:
1989         * inspector/CodeGeneratorInspector.pm:
1990         * inspector/InspectorAgent.cpp:
1991         (WebCore::InspectorAgent::InspectorAgent):
1992         (WebCore::InspectorAgent::inspectedPageDestroyed):
1993         (WebCore::InspectorAgent::disconnectFrontend):
1994         * inspector/InspectorAgent.h:
1995         (WebCore::InspectorAgent::DOMDebuggerAgent):
1996         * inspector/InspectorController.cpp:
1997         (WebCore::InspectorController::connectFrontend):
1998         * inspector/InspectorDOMDebuggerAgent.cpp: Renamed from Source/WebCore/inspector/InspectorBrowserDebuggerAgent.cpp.
1999         (WebCore::InspectorDOMDebuggerAgent::create):
2000         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
2001         (WebCore::InspectorDOMDebuggerAgent::~InspectorDOMDebuggerAgent):
2002         (WebCore::InspectorDOMDebuggerAgent::debuggerWasEnabled):
2003         (WebCore::InspectorDOMDebuggerAgent::debuggerWasDisabled):
2004         (WebCore::InspectorDOMDebuggerAgent::disable):
2005         (WebCore::InspectorDOMDebuggerAgent::clearFrontend):
2006         (WebCore::InspectorDOMDebuggerAgent::discardBindings):
2007         (WebCore::InspectorDOMDebuggerAgent::setEventListenerBreakpoint):
2008         (WebCore::InspectorDOMDebuggerAgent::removeEventListenerBreakpoint):
2009         (WebCore::InspectorDOMDebuggerAgent::didInsertDOMNode):
2010         (WebCore::InspectorDOMDebuggerAgent::didRemoveDOMNode):
2011         (WebCore::InspectorDOMDebuggerAgent::setDOMBreakpoint):
2012         (WebCore::InspectorDOMDebuggerAgent::removeDOMBreakpoint):
2013         (WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode):
2014         (WebCore::InspectorDOMDebuggerAgent::willRemoveDOMNode):
2015         (WebCore::InspectorDOMDebuggerAgent::willModifyDOMAttr):
2016         (WebCore::InspectorDOMDebuggerAgent::descriptionForDOMEvent):
2017         (WebCore::InspectorDOMDebuggerAgent::hasBreakpoint):
2018         (WebCore::InspectorDOMDebuggerAgent::updateSubtreeBreakpoints):
2019         (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
2020         (WebCore::InspectorDOMDebuggerAgent::setXHRBreakpoint):
2021         (WebCore::InspectorDOMDebuggerAgent::removeXHRBreakpoint):
2022         (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
2023         (WebCore::InspectorDOMDebuggerAgent::clear):
2024         * inspector/InspectorDOMDebuggerAgent.h: Renamed from Source/WebCore/inspector/InspectorBrowserDebuggerAgent.h.
2025         * inspector/InspectorInstrumentation.cpp:
2026         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
2027         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
2028         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
2029         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
2030         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
2031         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
2032         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
2033         * inspector/InstrumentingAgents.h:
2034         (WebCore::InstrumentingAgents::InstrumentingAgents):
2035         (WebCore::InstrumentingAgents::inspectorDOMDebuggerAgent):
2036         (WebCore::InstrumentingAgents::setInspectorDOMDebuggerAgent):
2037         * inspector/WorkerInspectorController.cpp:
2038         (WebCore::WorkerInspectorController::connectFrontend):
2039
2040 2011-05-04  Yury Semikhatsky  <yurys@chromium.org>
2041
2042         Reviewed by Pavel Feldman.
2043
2044         Web Inspector: show only Console and Scripts panels in worker inspector front-end
2045         https://bugs.webkit.org/show_bug.cgi?id=60159
2046
2047         * inspector/front-end/WorkerManager.js:
2048         (WebInspector.WorkerManager.isWorkerFrontend):
2049         * inspector/front-end/inspector.js: show only Scripts and Console panels in the worker inspector front-end.
2050
2051 2011-05-03  Hans Wennborg  <hans@chromium.org>
2052
2053         Reviewed by Steve Block.
2054
2055         IndexedDB: Unit tests for LevelDB key coding functions
2056         https://bugs.webkit.org/show_bug.cgi?id=59692
2057
2058         Fix some embarrassing bugs uncovered by unit tests.
2059
2060         No new functionality, but this is now covered by unit tests in the Chromium WebKit port.
2061
2062         * storage/IDBLevelDBCoding.cpp:
2063         (WebCore::IDBLevelDBCoding::decodeInt):
2064         (WebCore::IDBLevelDBCoding::decodeVarInt):
2065
2066 2011-05-05  Young Han Lee  <joybro@company100.net>
2067
2068         Reviewed by Csaba Osztrogonác.
2069
2070         [Texmap][Qt] Enable strict OwnPtr for Qt with texmap enabled.
2071         https://bugs.webkit.org/show_bug.cgi?id=60251
2072
2073         No new tests. Build fix.
2074
2075         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
2076         (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
2077
2078 2011-05-04  Jay Civelli  <jcivelli@chromium.org>
2079
2080         Reviewed by Adam Barth.
2081
2082         Adding a utility class to read a SharedBuffer line by line.
2083         https://bugs.webkit.org/show_bug.cgi?id=59946
2084
2085         * CMakeLists.txt:
2086         * GNUmakefile.list.am:
2087         * WebCore.gypi:
2088         * WebCore.pro:
2089         * WebCore.vcproj/WebCore.vcproj:
2090         * WebCore.xcodeproj/project.pbxproj:
2091         * platform/SharedBufferCRLFLineReader.cpp: Added.
2092         * platform/SharedBufferCRLFLineReader.h: Added.
2093
2094 2011-05-04  Sheriff Bot  <webkit.review.bot@gmail.com>
2095
2096         Unreviewed, rolling out r85788.
2097         http://trac.webkit.org/changeset/85788
2098         https://bugs.webkit.org/show_bug.cgi?id=60250
2099
2100         svg/text/text-block-child-crash.xhtml asserts (Requested by
2101         Ossy on #webkit).
2102
2103         * css/CSSStyleSelector.cpp:
2104         (WebCore::CSSStyleSelector::applyProperty):
2105
2106 2011-05-04  Ryosuke Niwa  <rniwa@webkit.org>
2107
2108         Reviewed by Eric Seidel.
2109
2110         Make more member functions in EventHandler private
2111         https://bugs.webkit.org/show_bug.cgi?id=60200
2112
2113         Reduced the number of public member functions in EventHandler.
2114
2115         * WebCore.exp.in:
2116         * page/EventHandler.cpp:
2117         (WebCore::EventHandler::handleAutoscroll):
2118         (WebCore::EventHandler::autoscrollTimerFired):
2119         (WebCore::EventHandler::stopAutoscrollTimer):
2120         (WebCore::EventHandler::handleMousePressEvent):
2121         (WebCore::EventHandler::handleMouseMoveEvent):
2122         (WebCore::EventHandler::keyEvent):
2123         (WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult):
2124         * page/EventHandler.h:
2125         (WebCore::EventHandler::mouseDownMayStartSelect):
2126
2127 2011-05-04  James Robinson  <jamesr@chromium.org>
2128
2129         Reviewed by Kenneth Russell.
2130
2131         [chromium] REGRESSION(85136): Composited content vanishes when transform-style changes from preserve-3d to flat
2132         https://bugs.webkit.org/show_bug.cgi?id=60202
2133
2134         In r85136 I accidentally transposed two lines in GraphicsLayerChromium when adding a null check.  This switches
2135         the order back and adds a regression test.
2136
2137         Test: compositing/repaint/transform-style-change.html
2138
2139         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2140         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
2141
2142 2011-05-04  Cris Neckar  <cdn@chromium.org>
2143
2144         Reviewed by Adam Barth.
2145
2146         Expose WebView directly through ChromeClient.
2147         https://bugs.webkit.org/show_bug.cgi?id=49902
2148
2149         Test: fast/media/media-svg-crash.html
2150
2151         * loader/EmptyClients.h:
2152         (WebCore::EmptyChromeClient::webView):
2153         * page/ChromeClient.h:
2154         * page/brew/ChromeClientBrew.h:
2155         (WebCore::ChromeClientBrew::webView):
2156
2157 2011-05-04  Joseph Pecoraro  <joepeck@webkit.org>
2158
2159         Reviewed by Darin Adler.
2160
2161         Unable to Paste After Deleting Text from Input due to -webkit-user-select
2162         https://bugs.webkit.org/show_bug.cgi?id=60219
2163
2164         When deleting all the text inside the input a placeholder <br>
2165         element was inserted for the selection point. However, when
2166         pasting, the test run computes the -webkit-user-select for the
2167         <br> element, instead of what would be the text inside the
2168         <input> and incorrectly disallows selection and prevented
2169         the paste.
2170
2171         Test: editing/pasteboard/paste-placeholder-input.html
2172
2173         * editing/ReplaceSelectionCommand.cpp:
2174         (WebCore::ReplacementFragment::insertFragmentForTestRendering): skip
2175         <br> elements above us as those are likely placeholder elements.
2176
2177 2011-05-04  Fridrich Strba  <fridrich.strba@bluewin.ch>
2178
2179         Reviewed by Martin Robinson.
2180
2181         Windows build of WebKit GTK needs to be able to find SystemInfo.h
2182         https://bugs.webkit.org/show_bug.cgi?id=60221
2183
2184         * GNUmakefile.am: add Source/WebCore/platform/win to the paths searched
2185         for headers, since Source/WebCore/platform/win/SystemInfo.h
2186         header is needed by Source/WebKit/gtk/webkit/webkitwebsettings.cpp
2187         on Windows.
2188
2189 2011-05-04  Vangelis Kokkevis  <vangelis@chromium.org>
2190
2191         Reviewed by Kenneth Russell.
2192
2193         [chromium] Improve sorting of layers in hierarchies that preserve-3d
2194         by testing for overlapping regions between layer pairs and doing a
2195         topological sort to determine the right order.
2196         https://bugs.webkit.org/show_bug.cgi?id=59255
2197
2198         Test: platform/chromium/compositing/perpendicular-layer-sorting.html
2199
2200         * WebCore.gypi:
2201         * platform/graphics/chromium/LayerRendererChromium.cpp:
2202         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
2203         * platform/graphics/chromium/LayerRendererChromium.h:
2204         * platform/graphics/chromium/cc/CCLayerImpl.h:
2205         (WebCore::CCLayerImpl::clearRenderSurface):
2206         * platform/graphics/chromium/cc/CCLayerSorter.cpp: Added.
2207         (WebCore::perpProduct):
2208         (WebCore::innerProduct):
2209         (WebCore::pointInColinearEdge):
2210         (WebCore::edgeEdgeTest):
2211         (WebCore::CCLayerSorter::LayerIntersector::LayerIntersector):
2212         (WebCore::CCLayerSorter::LayerIntersector::go):
2213         (WebCore::CCLayerSorter::LayerIntersector::edgeTriangleTest):
2214         (WebCore::CCLayerSorter::LayerIntersector::triangleTriangleTest):
2215         (WebCore::CCLayerSorter::LayerIntersector::checkZDiff):
2216         (WebCore::CCLayerSorter::LayerIntersector::layerZFromProjectedPoint):
2217         (WebCore::CCLayerSorter::CCLayerSorter):
2218         (WebCore::CCLayerSorter::checkOverlap):
2219         (WebCore::CCLayerSorter::createGraphNodes):
2220         (WebCore::CCLayerSorter::createGraphEdges):
2221         (WebCore::CCLayerSorter::removeEdgeFromList):
2222         (WebCore::CCLayerSorter::sort):
2223         * platform/graphics/chromium/cc/CCLayerSorter.h: Added.
2224         (WebCore::CCLayerSorter::GraphNode::GraphNode):
2225         (WebCore::CCLayerSorter::GraphEdge::GraphEdge):
2226
2227 2011-05-03  Jer Noble  <jer.noble@apple.com>
2228
2229         Reviewed by Antti Koivisto.
2230
2231         Safari: Video at apple.com cannot play at full screen mode with layout distortion
2232         https://bugs.webkit.org/show_bug.cgi?id=60140
2233
2234         Because a fullscreen element may be in a stacking context with a lower z-index than
2235         a sibling stacking context, those higher contexts would sometimes "pop" through the 
2236         full screen renderer. To facilitate eliminating all the stacking contexts aside from
2237         the full screen renderer, added a new pseudo-class specific to video or audio full
2238         screen elements. Then, added a new UA rule which resets the z-index and opacities of 
2239         all elements under said pseudo-class to auto and 1 respectively. To facilitate quick
2240         identity checking of HTMLMediaElements, added isMediaElement() virtual function to 
2241         Element and HTMLMediaElement. 
2242
2243         Test: fullscreen/full-screen-stacking-context.html
2244
2245         * css/CSSSelector.cpp:
2246         (WebCore::CSSSelector::pseudoId): Support PseudoFullScreenMediaDocument.
2247         (WebCore::nameToPseudoTypeMap): Support fullScreenMediaDocument.
2248         (WebCore::CSSSelector::extractPseudoType): Support PseudoFullScreenMediaDocument.
2249         * css/CSSSelector.h: Add PseudoFullScreenMediaDocument.
2250         * css/CSSStyleSelector.cpp:
2251         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Support PseudoFullScreenMediaDocument.
2252         * css/fullscreen.css:
2253         (:root:-webkit-full-screen-document:not(:-webkit-full-screen)): Corrected these names, 
2254             which were missing the -webkit prefix.
2255         (:root:-webkit-full-screen-media-document *:not(-webkit-full-screen)): Added.
2256         * dom/Element.h:
2257         (WebCore::Element::isMediaElement): Added, returns false.
2258         * html/HTMLMediaElement.h:
2259         (WebCore::HTMLMediaElement::isMediaElement): Added, returns true.
2260         * rendering/style/RenderStyleConstants.h: Added FULL_SCREEN_MEDIA_DOCUMENT.
2261
2262 2011-05-04  Levi Weintraub  <leviw@chromium.org>
2263
2264         Reviewed by Eric Seidel.
2265
2266         Split findNextLineBreak into a LineBreaker class
2267         https://bugs.webkit.org/show_bug.cgi?id=60209
2268
2269         Breaking findNextLineBreak into a new class inside RenderBlock. Currently it's tracking
2270         nearly no state, but subsequent patches will move some of the local variables used throughout
2271         the nextLineBreak function into member variables to simplify breaking off helper functions from
2272         the bloated function.
2273
2274         No new tests since this is just moving code around.
2275
2276         * WebCore.xcodeproj/project.pbxproj:
2277         * rendering/RenderBlock.h:
2278         (WebCore::RenderBlock::LineBreaker::LineBreaker):
2279         (WebCore::RenderBlock::LineBreaker::lineWasHyphenated): Accessor.
2280         (WebCore::RenderBlock::LineBreaker::positionedObjects): Ditto.
2281         (WebCore::RenderBlock::LineBreaker::clear): Ditto.
2282         * rendering/RenderBlockLineLayout.cpp:
2283         (WebCore::RenderBlock::layoutRunsAndFloats):
2284         (WebCore::RenderBlock::LineBreaker::skipTrailingWhitespace):
2285         (WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace):
2286         (WebCore::RenderBlock::LineBreaker::reset):
2287         (WebCore::RenderBlock::LineBreaker::nextLineBreak):
2288
2289 2011-05-04  Fridrich Strba  <fridrich.strba@bluewin.ch>
2290
2291         Reviewed by Adam Barth.
2292
2293         Add COMPILER(MINGW) to the compilers using the Microsoft C Runtime's vsnprintf.
2294         The vsnprintf is part of Microsoft C runtime used also by MinGW (GCC) toolchain.
2295         https://bugs.webkit.org/show_bug.cgi?id=58579
2296
2297         * dom/XMLDocumentParserLibxml2.cpp:
2298         (WebCore::XMLDocumentParser::error):
2299
2300 2011-05-04  Alexis Menard  <alexis.menard@openbossa.org>
2301
2302         Unreviewed warning fix.
2303
2304         The variable is just used in the ASSERT macro. Let's use ASSERT_UNUSED to avoid
2305         a warning in Release build.
2306
2307         * dom/Node.cpp:
2308         (WebCore::Node::removeEventListener):
2309         * platform/DateComponents.cpp:
2310         (WebCore::DateComponents::parseTime):
2311         * rendering/RenderLayer.cpp:
2312         (WebCore::RenderLayer::convertToLayerCoords):
2313         * storage/StorageMap.cpp:
2314         (WebCore::StorageMap::importItem):
2315         * svg/SVGUseElement.cpp:
2316         (WebCore::SVGUseElement::buildShadowTree):
2317         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
2318
2319 2011-05-04  Alexis Menard  <alexis.menard@openbossa.org>
2320
2321         Unreviewed warning fix.
2322
2323         The variable is just used in the ASSERT macro. Let's use ASSERT_UNUSED to avoid
2324         a warning in Release build.
2325
2326         * accessibility/AccessibilityRenderObject.cpp:
2327         (WebCore::lastChildConsideringContinuation):
2328
2329 2011-05-04  Dimitri Glazkov  <dglazkov@chromium.org>
2330
2331         Sort xcodeproj files.
2332
2333         The WebCore.xcodeproj got out of sorts again.
2334
2335         * WebCore.xcodeproj/project.pbxproj: Ran sort-XCode-project-file.
2336
2337 2011-05-04  Alexis Menard  <alexis.menard@openbossa.org>
2338
2339         Reviewed by Adam Barth.
2340
2341         Warning fix.
2342
2343         * bindings/js/DOMObjectHashTableMap.h:
2344         (WebCore::DOMObjectHashTableMap::~DOMObjectHashTableMap):
2345
2346 2011-05-04  Rob Buis  <rbuis@rim.com>
2347
2348         Reviewed by Darin Adler.
2349
2350         NULL deref when SVG elements have table styles 
2351         https://bugs.webkit.org/show_bug.cgi?id=45561
2352
2353         Restrict computed CSS values for SVG display property to block, inline or none.
2354
2355         Tests: svg/custom/display-table-caption-foreignObject.svg
2356                svg/custom/display-table-caption-inherit-foreignObject.xhtml
2357                svg/custom/display-table-caption-inherit-text.xhtml
2358                svg/custom/display-table-caption-text.svg
2359
2360         * css/CSSStyleSelector.cpp:
2361         (WebCore::CSSStyleSelector::applyProperty):
2362
2363 2011-05-04  Tao Bai  <michaelbai@chromium.org>
2364
2365         Reviewed by David Kilzer.
2366
2367         Populate touch-icon url to FrameLoaderClient
2368         https://bugs.webkit.org/show_bug.cgi?id=59143
2369         
2370         Parsed and populated apple-touch-icon url to FrameLoaderClient.
2371         Changed favicon to be a type of icon.
2372
2373         * CMakeLists.txt:
2374         * Configurations/FeatureDefines.xcconfig:
2375         * GNUmakefile.am:
2376         * GNUmakefile.list.am:
2377         * WebCore.gypi:
2378         * WebCore.vcproj/WebCore.vcproj:
2379         * WebCore.xcodeproj/project.pbxproj:
2380         * dom/Document.cpp:
2381         (WebCore::Document::iconURL):
2382         (WebCore::Document::setIconURL):
2383         * dom/Document.h:
2384         * dom/IconURL.cpp: Added.
2385         (WebCore::toIconIndex):
2386         * dom/IconURL.h: Added.
2387         (WebCore::IconURL::IconURL):
2388         * features.pri:
2389         * html/HTMLLinkElement.cpp:
2390         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
2391         (WebCore::HTMLLinkElement::process):
2392         (WebCore::HTMLLinkElement::addSubresourceAttributeURLs):
2393         * html/HTMLLinkElement.h:
2394         (WebCore::HTMLLinkElement::RelAttribute::RelAttribute):
2395         (WebCore::HTMLLinkElement::isEnabledViaScript):
2396         * html/parser/HTMLPreloadScanner.cpp:
2397         (WebCore::HTMLNames::PreloadTask::relAttributeIsStyleSheet):
2398         * loader/DocumentLoader.cpp:
2399         (WebCore::DocumentLoader::iconURL):
2400         (WebCore::DocumentLoader::setIconURL):
2401         * loader/DocumentLoader.h:
2402         * loader/EmptyClients.h:
2403         (WebCore::EmptyFrameLoaderClient::dispatchDidChangeIcons):
2404         * loader/FrameLoader.cpp:
2405         (WebCore::FrameLoader::iconURL):
2406         (WebCore::FrameLoader::iconURLs):
2407         (WebCore::FrameLoader::fillIconURL):
2408         (WebCore::FrameLoader::getDefaultIconURL):
2409         (WebCore::FrameLoader::setIconURL):
2410         (WebCore::FrameLoader::didChangeIcons):
2411         * loader/FrameLoader.h:
2412         * loader/FrameLoaderClient.h:
2413
2414 2011-05-04  Chris Marrin  <cmarrin@apple.com>
2415
2416         Reviewed by Simon Fraser.
2417
2418         Crash in PlatformCALayer ::replaceSublayer when layer has not superlayer
2419         https://bugs.webkit.org/show_bug.cgi?id=60191
2420
2421         Skip replaceSublayer when there is no superlayer rather than asserting.
2422         This is probably not a problem and happens when restructuring the layer
2423         tree. Avoiding this crash will allow us to get more testing.
2424
2425         * platform/graphics/ca/GraphicsLayerCA.cpp:
2426         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
2427
2428 2011-05-04  Martin Robinson  <mrobinson@igalia.com>
2429
2430         Reviewed by Gustavo Noronha Silva.
2431
2432         Fix the GTK+ 2.x build for Windows. Instead of making getStockIcon a RenderTheme
2433         method, just use extern declarations to avoid having to declare it in the header.
2434         This will prevent having to include glib.h in RenderThemeGtk.h, which is included
2435         in many C++ files.
2436
2437         No new tests. This is just a build fix.
2438
2439         * platform/gtk/RenderThemeGtk.cpp: Update getStockIcon calls to say getStockIconForWidgetType.
2440         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
2441         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
2442         (WebCore::RenderThemeGtk::paintCapsLockIndicator):
2443         (WebCore::RenderThemeGtk::paintMediaButton):
2444         * platform/gtk/RenderThemeGtk.h: Removed getStockIcon declaration. Make gtkContainer() and
2445         gtkEntry() public because they are now accessed externally from getStockIcon().
2446         * platform/gtk/RenderThemeGtk2.cpp: Update getStockIcon calls.
2447         (WebCore::getStockIconForWidgetType):
2448         * platform/gtk/RenderThemeGtk3.cpp: Ditto.
2449         (WebCore::getStockIconForWidgetType):
2450
2451 2011-05-04  Mark Pilgrim  <pilgrim@chromium.org>
2452
2453         Reviewed by Tony Chang.
2454
2455         IndexedDB open (database) should fail if name is null
2456         https://bugs.webkit.org/show_bug.cgi?id=60022
2457
2458         Test: storage/indexeddb/mozilla/open-database-null-name.html
2459
2460         Combination problem: Bug in IDL didn't pass null values to .cpp layer,
2461         then .cpp layer didn't check for null value anyway.
2462
2463         * storage/IDBFactory.cpp:
2464         (WebCore::IDBFactory::open): check for null name
2465         * storage/IDBFactory.idl: pass null name as null
2466
2467 2011-05-04  Jer Noble  <jer.noble@apple.com>
2468
2469         Reviewed by Darin Adler.
2470
2471         Entering full screen fails >= second time on Vimeo.com.
2472         https://bugs.webkit.org/show_bug.cgi?id=60143
2473
2474         Force the RenderFullScreen's layer backing to be recreated when setAnimating() is called.
2475         Previously, the RenderLayerCompositor would fail to reparent the RenderFullScreen's layer
2476         at the end of an animation, if it determined that the RenderFullScreen would still require
2477         a layer even when not animating.
2478
2479         * rendering/RenderFullScreen.cpp:
2480         (RenderFullScreen::setAnimating): Clear the renderer's layer.
2481
2482 2011-05-04  Simon Fraser  <simon.fraser@apple.com>
2483
2484         Reviewed by Darin Adler.
2485
2486         Avoid allocating a new image buffer in ~CanvasRenderingContext2D()
2487         https://bugs.webkit.org/show_bug.cgi?id=59849
2488
2489         When attempting to unwind the graphics state stack in the
2490         CanvasRenderingContext2D destructor, don't allow HTMLCanvasElement
2491         to create a new ImageBuffer.
2492
2493         * html/HTMLCanvasElement.cpp:
2494         (WebCore::HTMLCanvasElement::existingDrawingContext):
2495         * html/HTMLCanvasElement.h:
2496         * html/canvas/CanvasRenderingContext2D.cpp:
2497         (WebCore::CanvasRenderingContext2D::~CanvasRenderingContext2D):
2498
2499 2011-05-04  Andrey Kosyakov  <caseq@chromium.org>
2500
2501         Reviewed by Yury Semikhatsky.
2502
2503         Web Inspector: expose shadow DOM in the Elements panel
2504         https://bugs.webkit.org/show_bug.cgi?id=60160
2505
2506         Test: inspector/elements/shadow-dom.html
2507
2508         * dom/Element.cpp:
2509         (WebCore::Element::ensureShadowRoot):
2510         (WebCore::Element::removeShadowRoot):
2511         * inspector/Inspector.json:
2512         * inspector/InspectorDOMAgent.cpp:
2513         (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
2514         (WebCore::InspectorDOMAgent::buildObjectForNode):
2515         (WebCore::InspectorDOMAgent::didInsertDOMNode):
2516         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
2517         (WebCore::InspectorDOMAgent::isContainerNode):
2518         * inspector/InspectorDOMAgent.h:
2519         * inspector/front-end/DOMAgent.js:
2520         (WebInspector.DOMNode):
2521         (WebInspector.DOMNode.prototype.inShadowTree):
2522         (WebInspector.DOMNode.prototype._setShadowRootPayload):
2523         (WebInspector.DOMNode.prototype._renumber):
2524         (WebInspector.DOMAgent.prototype._bindNodes):
2525         (WebInspector.DOMAgent.prototype.querySelectorAll):
2526         (WebInspector.DOMAgent.prototype._shadowRootUpdated):
2527         (WebInspector.DOMDispatcher.prototype.searchResults):
2528         (WebInspector.DOMDispatcher.prototype.shadowRootUpdated):
2529         * inspector/front-end/ElementsPanel.js:
2530         (WebInspector.ElementsPanel):
2531         (WebInspector.ElementsPanel.prototype._nodeUpdated):
2532         (WebInspector.ElementsPanel.prototype._attributesUpdated):
2533         (WebInspector.ElementsPanel.prototype._nodeRemoved):
2534         (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
2535         (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
2536         * inspector/front-end/ElementsTreeOutline.js:
2537         (WebInspector.ElementsTreeElement):
2538         (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode):
2539         (WebInspector.ElementsTreeElement.prototype._updateChildren):
2540         ():
2541         * inspector/front-end/inspector.css:
2542         (#elements-content .dom-shadow-root):
2543         (.outline-disclosure li .webkit-html-tag.shadow):
2544         * inspector/front-end/utilities.js:
2545
2546 2011-05-03  Adam Roben  <aroben@apple.com>
2547
2548         Remove an unnecessary OwnPtr equality check in XSLT code
2549
2550         Fixes <http://webkit.org/b/60053> Testing OwnPtrs for equality should cause a compiler error
2551
2552         Reviewed by Anders Carlsson and Antti Koivisto.
2553
2554         * dom/Document.cpp:
2555         (WebCore::Document::setTransformSource): No need to check for equality. If the pointers are
2556         equal, we're screwed anyway. (And the caller always passes in a newly-allocated object, so
2557         we're safe.)
2558
2559 2011-05-04  Leandro Gracia Gil  <leandrogracia@chromium.org>
2560
2561         Reviewed by Tony Gentilcore.
2562
2563         Media Stream API: add the skeleton of the frame and page controllers and the embedder client.
2564         https://bugs.webkit.org/show_bug.cgi?id=56922
2565
2566         Add the basic outlines of the page controller, the per-frame controller and the embedder
2567         client interface for the Media Stream API. Provide methods to handle the situations
2568         where a frame is detached from the page or transferred between pages.
2569
2570         Tests for the Media Stream API will be provided by the bug 56587.
2571
2572         * CMakeLists.txt:
2573         * GNUmakefile.list.am:
2574         * WebCore.gypi:
2575         * WebCore.pro:
2576         * WebCore.vcproj/WebCore.vcproj:
2577         * WebCore.xcodeproj/project.pbxproj:
2578         * page/Frame.cpp:
2579         (WebCore::Frame::Frame):
2580         (WebCore::Frame::~Frame):
2581         (WebCore::Frame::pageDestroyed):
2582         (WebCore::Frame::transferChildFrameToNewDocument):
2583         * page/Frame.h:
2584         (WebCore::Frame::mediaStreamFrameController):
2585         * page/MediaStreamClient.h: Added.
2586         (WebCore::MediaStreamClient::~MediaStreamClient):
2587         * page/MediaStreamController.cpp: Added.
2588         (WebCore::MediaStreamController::Request::Request):
2589         (WebCore::MediaStreamController::Request::localId):
2590         (WebCore::MediaStreamController::Request::frameController):
2591         (WebCore::MediaStreamController::MediaStreamController):
2592         (WebCore::MediaStreamController::~MediaStreamController):
2593         (WebCore::MediaStreamController::unregisterFrameController):
2594         (WebCore::MediaStreamController::registerRequest):
2595         * page/MediaStreamController.h: Added.
2596         * page/MediaStreamFrameController.cpp: Added.
2597         (WebCore::MediaStreamFrameController::Request::Request):
2598         (WebCore::MediaStreamFrameController::Request::~Request):
2599         (WebCore::MediaStreamFrameController::Request::scriptExecutionContext):
2600         (WebCore::MediaStreamFrameController::Request::isGenerateStreamRequest):
2601         (WebCore::MediaStreamFrameController::Request::isRecordedDataRequest):
2602         (WebCore::MediaStreamFrameController::RequestMap::abort):
2603         (WebCore::MediaStreamFrameController::RequestMap::abortAll):
2604         (WebCore::MediaStreamFrameController::MediaStreamFrameController):
2605         (WebCore::MediaStreamFrameController::~MediaStreamFrameController):
2606         (WebCore::MediaStreamFrameController::securityOrigin):
2607         (WebCore::MediaStreamFrameController::scriptExecutionContext):
2608         (WebCore::MediaStreamFrameController::pageController):
2609         (WebCore::MediaStreamFrameController::enterDetachedState):
2610         (WebCore::MediaStreamFrameController::disconnectPage):
2611         (WebCore::MediaStreamFrameController::disconnectFrame):
2612         (WebCore::MediaStreamFrameController::transferToNewPage):
2613         * page/MediaStreamFrameController.h: Added.
2614         * page/Page.cpp:
2615         (WebCore::Page::Page):
2616         (WebCore::Page::PageClients::PageClients):
2617         * page/Page.h:
2618         (WebCore::Page::mediaStreamController):
2619
2620 2011-05-04  Alexander Pavlov  <apavlov@chromium.org>
2621
2622         Reviewed by Yury Semikhatsky.
2623
2624         Web Inspector: Double-click in a read-only style rule results in a non-editable blank property
2625         https://bugs.webkit.org/show_bug.cgi?id=60150
2626
2627         * inspector/front-end/StylesSidebarPane.js:
2628         (WebInspector.StylePropertiesSection.prototype._handleEmptySpaceDoubleClick):
2629
2630 2011-05-04  Dominic Battre  <battre@chromium.org>
2631
2632         Reviewed by Tony Gentilcore.
2633
2634         Fix missing header in case SVG is disabled
2635         https://bugs.webkit.org/show_bug.cgi?id=60153
2636
2637         * dom/EventDispatcher.cpp:
2638
2639 2011-05-04  Luke Macpherson   <macpherson@chromium.org>
2640
2641         Reviewed by Eric Seidel.
2642
2643         Rename CSSStyleApplyProperty::propertyValue and setPropertyValue.
2644         https://bugs.webkit.org/show_bug.cgi?id=60006
2645
2646         No new tests as no functionality added. Simple rename only.
2647
2648         * css/CSSStyleApplyProperty.cpp:
2649         Rename propertyValue propertyHandler and setPropertyValue setPropertyHandler.
2650         * css/CSSStyleApplyProperty.h:
2651         Rename propertyValue propertyHandler and setPropertyValue setPropertyHandler.
2652
2653 2011-05-04  Ryosuke Niwa  <rniwa@webkit.org>
2654
2655         Reviewed by Eric Seidel.
2656
2657         Cleanup conditionals in findNextLineBreak
2658         https://bugs.webkit.org/show_bug.cgi?id=60117
2659
2660         Simplified conditional statements in findNextLineBreak.
2661
2662         * rendering/RenderBlockLineLayout.cpp:
2663         (WebCore::RenderBlock::findNextLineBreak):
2664
2665 2011-05-04  Luke Macpherson   <macpherson@chromium.org>
2666
2667         Reviewed by Eric Seidel.
2668
2669         Make CSSStyleSelector::applyProperty() CSSPropertyWebkitHyphens case use appropriate macro.
2670         https://bugs.webkit.org/show_bug.cgi?id=60114
2671
2672         No new tests as no functionality changes.
2673
2674         * css/CSSStyleSelector.cpp:
2675         (WebCore::CSSStyleSelector::applyProperty):
2676         Use HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE macro to remove code duplication.
2677
2678 2011-05-04  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2679
2680         Reviewed by Andreas Kling.
2681
2682         [Qt] Fix QNetworkReplyWrapper to not depend on QNetworkReply::isFinished() method
2683         https://bugs.webkit.org/show_bug.cgi?id=59070
2684
2685         Applications using our API and our autotests subclass QNetworkReply as part of providing a
2686         custom QNetworkAccessManager. But there's an API limitation in Qt 4.7, that makes
2687         QNetworkReply::isFinished() always be false for these custom replies. This was fixed in Qt
2688         4.8, see http://bugreports.qt.nokia.com/browse/QTBUG-11737.
2689
2690         The consequence is that QtWebKit cannot rely on this function. So now QNetworkReplyWrapper
2691         watches for the finished() signal and set a dynamic property "_q_isFinished" on the reply
2692         indicating that it is finished. When there's no finished signal (synchronous) we set the
2693         dynamic property once we get the reply.
2694
2695         This fixes tst_QWebFrame::requestedUrl(), that was breaking because sniffer was not
2696         emitting its own finished() signal, causing QWebFrame::loadFinished() to not be emitted.
2697
2698         * platform/network/qt/QNetworkReplyHandler.cpp:
2699         (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
2700         Connect the finished signal to the new setFinished() slot.
2701
2702         (WebCore::QNetworkReplyWrapper::synchronousLoad):
2703         Since we don't get the finished signal for synchronous loads, set the dynamic property
2704         before processing it.
2705
2706         (WebCore::QNetworkReplyWrapper::resetConnections):
2707         Do not reset the connection to setFinished().
2708
2709         (WebCore::QNetworkReplyWrapper::setFinished):
2710         Set the dynamic property in the reply.
2711
2712         (WebCore::QNetworkReplyWrapper::emitMetaDataChanged):
2713         (WebCore::QNetworkReplyHandler::start):
2714         Change to use wrapper's isFinished() instead of asking the reply directly.
2715
2716         * platform/network/qt/QNetworkReplyHandler.h:
2717         (WebCore::QNetworkReplyWrapper::isFinished):
2718         Checks the dynamic property of the reply.
2719
2720         * platform/network/qt/QtMIMETypeSniffer.cpp:
2721         (QtMIMETypeSniffer::sniff):
2722         Use the dynamic property to check if the reply is finished.
2723
2724 2011-05-04  Eric Seidel  <eric@webkit.org>
2725
2726         Reviewed by Ryosuke Niwa.
2727
2728         Split createLineBoxesFromBidiRuns out from layoutRunsAndFloats
2729         https://bugs.webkit.org/show_bug.cgi?id=60080
2730
2731         No functional change, just moving code.
2732
2733         * rendering/RenderBlock.h:
2734         * rendering/RenderBlockLineLayout.cpp:
2735         (WebCore::RenderBlock::createLineBoxesFromBidiRuns):
2736         (WebCore::RenderBlock::layoutRunsAndFloats):
2737
2738 2011-05-04  Andreas Kling  <andreas.kling@nokia.com>
2739
2740         Reviewed by Kenneth Rohde Christiansen.
2741
2742         [Qt] Remove unused function FontPlatformData::pixelSize()
2743         https://bugs.webkit.org/show_bug.cgi?id=60156
2744
2745         * platform/graphics/qt/FontPlatformData.h:
2746         (WebCore::FontPlatformData::pixelSize): Removed.
2747
2748 2011-05-04  Luke Macpherson   <macpherson@chromium.org>
2749
2750         Reviewed by Darin Adler.
2751
2752         Remove redundant conversion from auto table layout to auto table layout in CSSStyleSelector::applyProperty()
2753         https://bugs.webkit.org/show_bug.cgi?id=60011
2754
2755         No new tests added as no functionality changed.
2756
2757         * css/CSSStyleSelector.cpp:
2758         (WebCore::CSSStyleSelector::applyProperty):
2759         Remove reundant check for auto table layout.
2760
2761 2011-05-04  Mihai Parparita  <mihaip@chromium.org>
2762
2763         Reviewed by Darin Adler.
2764
2765         Remove double-free checks for bug 56124
2766         https://bugs.webkit.org/show_bug.cgi?id=60037
2767
2768         Antti's speculative fix for bug 56124 (r84151) appears to have worked,
2769         these CRASH() calls are not triggering anymore.
2770
2771         * css/CSSSelector.h:
2772         (WebCore::CSSSelector::CSSSelector):
2773         (WebCore::CSSSelector::~CSSSelector):
2774         * css/CSSSelectorList.cpp:
2775         (WebCore::CSSSelectorList::deleteSelectors):
2776
2777 2011-05-04  Satish Sampath  <satish@chromium.org>
2778
2779         Reviewed by Tony Gentilcore.
2780
2781         Layout the speech input button to the left of outer spin button properly.
2782         https://bugs.webkit.org/show_bug.cgi?id=59742
2783
2784         * rendering/RenderTextControlSingleLine.cpp:
2785         (WebCore::RenderTextControlSingleLine::layout):
2786
2787 2011-05-04  Yury Semikhatsky  <yurys@chromium.org>
2788
2789         Unreviewed. Build fix.
2790
2791         * bindings/js/JSInjectedScriptHostCustom.cpp: fix includes declaration
2792
2793 2011-05-03  Yury Semikhatsky  <yurys@chromium.org>
2794
2795         Reviewed by Pavel Feldman.
2796
2797         Web Inspector: can't inspect element in an iframe when element originates from non-frame document
2798         https://bugs.webkit.org/show_bug.cgi?id=60031
2799         
2800         Inspected object type evaluation has moved into native bindings. This way it doesn't
2801         depend on the current JS context.
2802
2803         Test: inspector/elements/elements-inspect-iframe-from-different-domain.html
2804
2805         * bindings/js/JSInjectedScriptHostCustom.cpp:
2806         (WebCore::JSInjectedScriptHost::isHTMLAllCollection): this method helps distinguish
2807         real undefined values from HTMLAllCollection
2808         (WebCore::JSInjectedScriptHost::type): method that returns presice type of the passed
2809         value
2810         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2811         (WebCore::V8InjectedScriptHost::isHTMLAllCollectionCallback):
2812         (WebCore::V8InjectedScriptHost::typeCallback):
2813         * inspector/InjectedScriptHost.idl:
2814         * inspector/InjectedScriptSource.js:
2815         (.):
2816
2817 2011-05-03  Pratik Solanki  <psolanki@apple.com>
2818
2819         Reviewed by Antti Koivisto.
2820
2821         Part of WebCore should use CFNetwork-based loader on Mac
2822         https://bugs.webkit.org/show_bug.cgi?id=51836
2823
2824         Merge the conflicting definitions of WebCore::privateBrowsingCookieStorage() into one. Clean
2825         up some warnings and #if USE(CFNETWORK) around code.
2826
2827         * platform/mac/CookieJar.mm:
2828         * platform/network/CookieStorage.h:
2829         * platform/network/cf/CookieStorageCFNet.cpp:
2830         (WebCore::privateBrowsingCookieStorage):
2831         (WebCore::currentCookieStorage):
2832         (WebCore::setCurrentCookieStorage):
2833         (WebCore::setCookieStoragePrivateBrowsingEnabled):
2834         (WebCore::notifyCookiesChangedOnMainThread):
2835         (WebCore::notifyCookiesChanged):
2836         * platform/network/cf/CookieStorageCFNet.h:
2837         * platform/network/mac/CookieStorageMac.mm:
2838
2839 2011-05-03  Justin Novosad  <junov@chromium.org>
2840
2841         Reviewed by Kenneth Russell.
2842
2843         [Chromium] Make accelerated 2d canvas enabled by default with skia
2844         https://bugs.webkit.org/show_bug.cgi?id=59929
2845
2846         No new tests. Covered by existing layout tests
2847
2848         * html/canvas/CanvasRenderingContext2D.cpp:
2849         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
2850         Initialized for accelerated canvas if either the accelerated2dCanvas
2851         or the legacyAccelerated2dCanvas flags are enabled
2852         * page/Page.cpp:
2853         (WebCore::Page::sharedGraphicsContext3D):
2854         This is where the code goes to implement the functionality for the
2855         legacy vs current acceleration paths for the 2D canvas. Currently,
2856         this is a no-op, and always select the legacy path.  This is temporary
2857         until we are ready to sort the GPU layout tests (rebasline vs. bug)
2858         * page/Settings.cpp:  Added new flage for legacyAccelerated2dCanvas
2859         (WebCore::Settings::Settings):
2860         (WebCore::Settings::setLegacyAccelerated2dCanvasEnabled):
2861         * page/Settings.h:
2862         (WebCore::Settings::legacyAccelerated2dCanvasEnabled):
2863
2864 2011-04-29  Jer Noble  <jer.noble@apple.com>
2865
2866         Reviewed by Eric Seidel.
2867
2868         Implement FULLSCREEN_API on Windows, Part 4: Enable it
2869         https://bugs.webkit.org/show_bug.cgi?id=59798
2870
2871         * WebCore.vcproj/WebCore.vcproj: Add missing full screen related
2872             files to the project.
2873
2874 2011-05-03  Alpha Lam  <hclam@chromium.org>
2875
2876         Not reviewed. Build fix.
2877
2878         More places from 0 to nullptr.
2879
2880         * bindings/v8/V8Proxy.cpp:
2881         (WebCore::V8Proxy::precompileScript):
2882         * platform/graphics/chromium/LayerTilerChromium.cpp:
2883         (WebCore::LayerTilerChromium::create):
2884         * platform/graphics/gpu/BicubicShader.cpp:
2885         (WebCore::BicubicShader::create):
2886         * platform/graphics/gpu/ConvolutionShader.cpp:
2887         (WebCore::ConvolutionShader::create):
2888         * platform/graphics/gpu/LoopBlinnSolidFillShader.cpp:
2889         (WebCore::LoopBlinnSolidFillShader::create):
2890         * platform/graphics/gpu/SolidFillShader.cpp:
2891         (WebCore::SolidFillShader::create):
2892         * platform/graphics/gpu/TexShader.cpp:
2893         (WebCore::TexShader::create):
2894         * platform/graphics/skia/PlatformContextSkia.cpp:
2895         (WebCore::PlatformContextSkia::~PlatformContextSkia):
2896         * platform/leveldb/LevelDBDatabase.cpp:
2897         (WebCore::LevelDBDatabase::createIterator):
2898         * platform/text/LocalizedNumberICU.cpp:
2899         (WebCore::createFormatterForCurrentLocale):
2900
2901 2011-05-03  Alpha Lam  <hclam@chromium.org>
2902
2903         Not reviewed. Build fix.
2904
2905         Using nullptr instead of 0. This makes visual studio happy.
2906
2907         * storage/IDBTransactionBackendInterface.h:
2908
2909 2011-05-03  Luke Macpherson   <macpherson@chromium.org>
2910
2911         Reviewed by Dimitri Glazkov.
2912
2913         Add template parameter to ApplyPropertyColor to improve clarity by removing constructor parameter side effects.
2914         https://bugs.webkit.org/show_bug.cgi?id=59774
2915
2916         No new tests required as on new functionality.
2917
2918         * css/CSSStyleApplyProperty.cpp:
2919         (WebCore::ApplyPropertyColor::applyValue):
2920         Added template parameter "inheritColorFromParent = false".
2921         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2922         Use template parameter where appropriate.
2923
2924 2011-05-03  Dan Bernstein  <mitz@apple.com>
2925
2926         Reviewed by Darin Adler.
2927
2928         <rdar://problem/9313186> Make the fix for <rdar://problem/9190108> more robust.
2929
2930         Added a pointer from FloatingObject to its originating line, if there is one, and made sure to
2931         dirty the line when the float is removed, instead of relying on the float always intersecting
2932         its originating line.
2933
2934         * rendering/RenderBlock.cpp:
2935         (WebCore::RenderBlock::removeFloatingObject):
2936         (WebCore::RenderBlock::removeFloatingObjectsBelow):
2937         (WebCore::RenderBlock::clearFloats):
2938         * rendering/RenderBlock.h:
2939         (WebCore::RenderBlock::FloatingObject::FloatingObject):
2940         * rendering/RenderBlockLineLayout.cpp:
2941         (WebCore::RenderBlock::appendFloatingObjectToLastLine):
2942         (WebCore::RenderBlock::layoutRunsAndFloats):
2943         (WebCore::RenderBlock::determineStartPosition):
2944
2945 2011-05-02  Jer Noble  <jer.noble@apple.com>
2946
2947         Reviewed by Adam Roben.
2948
2949         Implement FULLSCREEN_API on Windows, Part 3: WebKit2
2950         https://bugs.webkit.org/show_bug.cgi?id=59845
2951
2952         Move WebFullScreenController into WebCore to facilitate code sharing between WebKit
2953         and WebKit2.  WebFullScreenController now uses a Client class to request work on its
2954         behalf by WebKit and WebKit2.  MediaPlayerPrivateFullscreenWindow now only creates a 
2955         CALayerHost once a root layer is set, as the CALayerHost was causing child window drawing
2956         problems, and because a CALayerHost is overkill if the window is only drawing black to
2957         its client area.
2958
2959         * WebCore.vcproj/WebCore.vcproj:
2960         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
2961         (WebCore::MediaPlayerPrivateFullscreenWindow::MediaPlayerPrivateFullscreenWindow): Do not create 
2962             m_layerHost in the constructor.
2963         (WebCore::MediaPlayerPrivateFullscreenWindow::createWindow): NULL check m_layerHost.
2964         (WebCore::MediaPlayerPrivateFullscreenWindow::setRootChildLayer): Lazily instantiate m_layerHost.
2965         (WebCore::MediaPlayerPrivateFullscreenWindow::wndProc): NULL check m_layerHost; if a root layer is
2966             not present, fill the window with black in WM_PAINT.
2967         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h:
2968         * platform/graphics/win/FullScreenController.cpp: Renamed from Source/WebKit/win/WebFullScreenController.cpp.
2969         * platform/graphics/win/FullScreenController.h: Renamed from Source/WebKit/win/WebFullScreenController.h.
2970         * platform/graphics/win/FullScreenControllerClient.h: Split out from FullScreenController.h
2971         (WebCore::FullScreenControllerClient::~FullScreenControllerClient):
2972
2973 2011-05-03  Brady Eidson  <beidson@apple.com>
2974
2975         Reviewed by Sam Weinig.
2976
2977         https://bugs.webkit.org/show_bug.cgi?id=60087 and <rdar://problem/9373182>
2978         WK2 Icon Database should provide access to all image representations in the icon.
2979
2980         Add an accessor for CG platforms to get a CFArrayRef of all the CGImageRefs represented:
2981         * platform/graphics/BitmapImage.h:
2982         * platform/graphics/Image.h:
2983         (WebCore::Image::getCGImageArray):
2984         * platform/graphics/cg/ImageCG.cpp:
2985         (WebCore::BitmapImage::getCGImageArray):
2986
2987 2011-05-03  Ryosuke Niwa  <rniwa@webkit.org>
2988
2989         Reviewed by Eric Seidel.
2990
2991         findNextLineBreak splits InlineIterator into 3 pieces
2992         https://bugs.webkit.org/show_bug.cgi?id=60082
2993
2994         Avoid splitting InlineIterator into 3 variables with inter-dependencies.
2995
2996         * rendering/InlineIterator.h:
2997         (WebCore::InlineIterator::fastIncrementInTextNode): Added.
2998         (WebCore::InlineIterator::previousInSameNode): Added.
2999         * rendering/RenderBlockLineLayout.cpp:
3000         (WebCore::RenderBlock::findNextLineBreak):
3001
3002 2011-05-03  Dean Jackson  <dino@apple.com>
3003
3004         Reviewed by Simon Fraser.
3005
3006         Interrupted transitions are not correctly removed
3007         https://bugs.webkit.org/show_bug.cgi?id=60062
3008
3009         CompositeAnimation was replacing any existing
3010         transition as a new one was created. However, it wasn't
3011         clearing the lists in AnimationControllerPrivate that
3012         signal when a hardware animation starts. Rather than
3013         simple removing the existing transition, we now tell
3014         AnimationControllerPrivate that is has gone.
3015
3016         Test: transitions/3d/interrupted-transition.html
3017
3018         * page/animation/CompositeAnimation.cpp:
3019         (WebCore::CompositeAnimation::updateTransitions):
3020
3021 2011-05-03  Enrica Casucci  <enrica@apple.com>
3022
3023         Reviewed by Ryosuke Niwa.
3024
3025         Crash in SpellingCorrectionController::respondToChangedSelection.
3026         https://bugs.webkit.org/show_bug.cgi?id=60071
3027         <rdar://problem/9358190>
3028
3029         Creating a Visible position could trigger a layout and there is no
3030         guarantee that the selection is still valid after that.
3031
3032         Tests: editing/selection/undo-crash.html
3033
3034         * editing/SpellingCorrectionController.cpp:
3035         (WebCore::SpellingCorrectionController::respondToChangedSelection):
3036
3037 2011-05-03  Levi Weintraub  <leviw@chromium.org>
3038
3039         Reviewed by Eric Seidel.
3040
3041         Refactor computeInlineDirectionPositionsForLine into smaller functions
3042         https://bugs.webkit.org/show_bug.cgi?id=60072
3043
3044         Split three functions off from computeInlineDirectionPositionsForLine
3045         to improve its readability.
3046
3047         No new tests since this is just moving code around.
3048
3049         * rendering/RenderBlock.h:
3050         * rendering/RenderBlockLineLayout.cpp:
3051         (WebCore::RenderBlock::setMarginsForRubyRun):
3052         (WebCore::setLogicalWidthForTextRun):
3053         (WebCore::computeExpansionForJustifiedText):
3054         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
3055
3056 2011-05-03  David Kilzer  <ddkilzer@apple.com>
3057
3058         <http://webkit.org/b/59838> Implement HTTP pipelining for CoreFoundation-based networking
3059
3060         Reviewed by Antti Koivisto.
3061
3062         * platform/network/cf/ResourceRequestCFNet.cpp:
3063         (WebCore::ResourceRequest::doUpdatePlatformRequest): Set the
3064         priority on the request if HTTP pipelining is enabled.
3065         (WebCore::ResourceRequest::doUpdateResourceRequest): Read the
3066         priority from the request if HTTP pipelining is enabled.
3067         (readBooleanPreference): Enable code when compiling with
3068         USE(CFNETWORK).
3069         (WebCore::initializeMaximumHTTPConnectionCountPerHost): Ditto.
3070         Comment out setting the minimum fast lane priority on Windows
3071         since it's not currently available.
3072
3073 2011-05-03  Simon Fraser  <simon.fraser@apple.com>
3074
3075         Reviewed by Dan Bernstein.
3076
3077         <rdar://problem/9278296> Flicker zooming on Google Maps satellite view with accelerated compositing turned on
3078
3079         Conditionalize compositing tiled layer size-constraining logic to older
3080         OSes.
3081
3082         * platform/graphics/ca/GraphicsLayerCA.cpp:
3083         (WebCore::GraphicsLayerCA::constrainedSize):
3084
3085 2011-05-03  Roland Steiner  <rolandsteiner@chromium.org>
3086
3087         Reviewed by Dimitri Glazkov.
3088
3089         Allow access keys to be used in shadow DOM
3090         https://bugs.webkit.org/show_bug.cgi?id=59979
3091
3092         Move access key methods and members back to Document from TreeScope.
3093         Also traverse into shadow trees when building the access key map.
3094
3095         No new tests. (refactoring)
3096
3097         * dom/Document.cpp:
3098         (WebCore::Document::Document):
3099         (WebCore::Document::getElementByAccessKey):
3100         (WebCore::Document::buildAccessKeyMap):
3101         (WebCore::Document::invalidateAccessKeyMap):
3102         * dom/Document.h:
3103         * dom/TreeScope.cpp:
3104         (WebCore::TreeScope::TreeScope):
3105         (WebCore::TreeScope::destroyTreeScopeData):
3106         * dom/TreeScope.h:
3107
3108 2011-05-03  Dan Bernstein  <mitz@apple.com>
3109
3110         Reviewed by Darin Adler.
3111
3112         <rdar://problem/8891395> -[DOMRange textRects] returns incorrect results for vertical or flipped text
3113         https://bugs.webkit.org/show_bug.cgi?id=60067
3114
3115         No test because this code path is only used by the Objective-C API, which is not testable from DumpRenderTree.
3116
3117         * rendering/RenderText.cpp:
3118         (WebCore::RenderText::absoluteRectsForRange): Use width/height instead of logicalWidth/logicalHeight here,
3119         and perform the local-to-absolute mapping on the rects rather than their origin, in order to get the right
3120         results for flipped writing modes.
3121
3122 2011-05-03  Anton Muhin  <antonm@chromium.org>
3123
3124         Reviewed by Yury Semikhatsky.
3125
3126         [v8] remove an ASSERT from grouping logic
3127         https://bugs.webkit.org/show_bug.cgi?id=60024
3128
3129         This ASSERT was exploratory.  Alas, right now I am aware of no easy way to
3130         repro it.  Removing for now for greener bots.
3131
3132         No new tests, only an ASSERT removal.
3133
3134         * bindings/v8/V8GCController.cpp:
3135         (WebCore::calculateGroupId):
3136
3137 2011-05-03  Ryosuke Niwa  <rniwa@webkit.org>
3138
3139         Reviewed by Darin Adler.
3140
3141         WebKit allows selection that crosses the shadow boundary of a readonly input element
3142         https://bugs.webkit.org/show_bug.cgi?id=60000
3143
3144         The bug was caused by VisibleSelection's not validating shadow DOM boundaries.
3145         Fixed the bug by adding an extra adjustment, adjustSelectionToAvoidCrossingShadowBoundaries,
3146         in its validation process.
3147
3148         Tests: editing/selection/select-across-readonly-input-1.html
3149                editing/selection/select-across-readonly-input-2.html
3150                editing/selection/select-across-readonly-input-3.html
3151                editing/selection/select-across-readonly-input-4.html
3152                editing/selection/select-across-readonly-input-5.html
3153
3154         * editing/VisibleSelection.cpp:
3155         (WebCore::VisibleSelection::validate): Calls adjustSelectionToAvoidCrossingShadowBoundaries.
3156         (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingShadowBoundaries): Added.
3157         * editing/VisibleSelection.h:
3158
3159 2011-05-03  Eric Seidel  <eric@webkit.org>
3160
3161         Reviewed by Ryosuke Niwa.
3162
3163         Split out layoutRunsAndFloats from layoutInlineChildren
3164         https://bugs.webkit.org/show_bug.cgi?id=60052
3165
3166         No new tests, just moving code here.  There should be
3167         no change in behavior.
3168
3169         * rendering/RenderBlock.h:
3170         * rendering/RenderBlockLineLayout.cpp:
3171         (WebCore::RenderBlock::layoutRunsAndFloats):
3172         (WebCore::RenderBlock::layoutInlineChildren):
3173
3174 2011-05-03  James Robinson  <jamesr@chromium.org>
3175
3176         Reviewed by Kenneth Russell.
3177
3178         [chromium] Resizing a 2d canvas to huge dimensions after compositing crashes with accelerated 2d canvas option enabled
3179         https://bugs.webkit.org/show_bug.cgi?id=59965
3180
3181         Fixes a few bugs leading to a crash if a canvas already being composited was resized to huge dimensions.
3182
3183         Test: fast/canvas/canvas-resize-after-paint.html
3184
3185         * html/canvas/CanvasRenderingContext2D.cpp:
3186         (WebCore::CanvasRenderingContext2D::reset):
3187             Mark the canvas's layer as needing a synthetic style recalculation when creating or destroying the backing
3188             DrawingBuffer so that we exit compositing mode properly if we can't handle the canvas dimensions.
3189         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
3190         (WebCore::Canvas2DLayerChromium::setLayerRenderer):
3191             Add a null check for m_drawingBuffer
3192         * platform/graphics/gpu/DrawingBuffer.cpp:
3193         (WebCore::DrawingBuffer::clear):
3194             Avoid clearing the m_context pointer in reset() - we destroy the DrawingBuffer whenever reset() fails, so
3195             this is unnecessary.
3196
3197 2011-05-03  Adam Roben  <aroben@apple.com>
3198
3199         Fix most strict PassOwnPtr violations on Windows
3200
3201         Fixes <http://webkit.org/b/60025> Windows should (almost) build with strict PassOwnPtr
3202         enabled
3203
3204         Reviewed by Anders Carlsson.
3205
3206         * loader/EmptyClients.h:
3207         * platform/GeolocationService.cpp:
3208         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
3209         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
3210         * platform/mock/GeolocationServiceMock.cpp:
3211         * rendering/RenderTheme.cpp:
3212         * rendering/RenderThemeSafari.cpp:
3213
3214 2011-05-03  Levi Weintraub  <leviw@chromium.org>
3215
3216         Reviewed by Eric Seidel.
3217
3218         Extract LineInfo class
3219         https://bugs.webkit.org/show_bug.cgi?id=60044
3220
3221         Created a LineInfo class in RenderBlockLineLayout.cpp that brings together the relevant
3222         layout information about a line. This simplifies function signatures and clears up initialization.
3223
3224         No new tests as this is refactoring.
3225
3226         * rendering/RenderBlock.h: Updated internal layout function signatures to use LineInfo.
3227         * rendering/RenderBlockLineLayout.cpp:
3228         (WebCore::LineInfo::LineInfo):
3229         (WebCore::LineInfo::isFirstLine):
3230         (WebCore::LineInfo::isLastLine):
3231         (WebCore::LineInfo::isEmpty):
3232         (WebCore::LineInfo::previousLineBrokeCleanly):
3233         (WebCore::LineInfo::setFirstLine):
3234         (WebCore::LineInfo::setLastLine):
3235         (WebCore::LineInfo::setEmpty):
3236         (WebCore::LineInfo::setPreviousLineBrokeCleanly):
3237         (WebCore::RenderBlock::createLineBoxes):
3238         (WebCore::RenderBlock::constructLine):
3239         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
3240         (WebCore::RenderBlock::layoutInlineChildren):
3241         (WebCore::RenderBlock::determineStartPosition):
3242         (WebCore::skipNonBreakingSpace):
3243         (WebCore::shouldCollapseWhiteSpace):
3244         (WebCore::requiresLineBox): Moved from RenderBlock.h and made it locally scoped to RenderBlockLineLayout.cpp
3245         (WebCore::RenderBlock::generatesLineBoxesForInlineChild):
3246         (WebCore::RenderBlock::skipTrailingWhitespace):
3247         (WebCore::RenderBlock::skipLeadingWhitespace):
3248         (WebCore::RenderBlock::findNextLineBreak):
3249
3250 2011-05-03  Roland Steiner  <rolandsteiner@chromium.org>
3251
3252         Reviewed by Dimitri Glazkov.
3253
3254         Update node list cache count on the containing TreeScope rather than the Document
3255         https://bugs.webkit.org/show_bug.cgi?id=59983
3256
3257         Change code to call add/removeNodeListCache() and hasNodeListCaches() on the proper tree scope.
3258         Move updating of the node list cache count from setDocument() to setTreeScopeRecursively().
3259         Make setDocument() and setDocumentRecursively() private.
3260
3261         No new tests. (refactoring)
3262
3263         * dom/ContainerNode.cpp:
3264         (WebCore::ContainerNode::childrenChanged):
3265         * dom/Node.cpp:
3266         (WebCore::Node::~Node):
3267         (WebCore::Node::setDocument):
3268         (WebCore::Node::setTreeScopeRecursively):
3269         (WebCore::Node::childNodes):
3270         (WebCore::Node::registerDynamicNodeList):
3271         (WebCore::Node::unregisterDynamicNodeList):
3272         (WebCore::Node::notifyLocalNodeListsAttributeChanged):
3273         (WebCore::Node::notifyLocalNodeListsChildrenChanged):
3274         (WebCore::Node::getElementsByTagName):
3275         (WebCore::Node::getElementsByTagNameNS):
3276         (WebCore::Node::getElementsByName):
3277         (WebCore::Node::getElementsByClassName):
3278         * dom/Node.h:
3279         * html/HTMLFormControlElement.cpp:
3280         (WebCore::HTMLFormControlElement::labels):
3281
3282 2011-05-03  Ryosuke Niwa  <rniwa@webkit.org>
3283
3284         Reviewed by Eric Seidel.
3285
3286         Bundle trailingSpaceObject and trailingPositionedBoxes in findNextLineBreak as a class
3287         https://bugs.webkit.org/show_bug.cgi?id=60046
3288
3289         Extracted TrailingObjects that encapsulates trailingSpaceObject and trailingPositionedBoxes.
3290
3291         * rendering/RenderBlockLineLayout.cpp:
3292         (WebCore::TrailingObjects::TrailingObjects):
3293         (WebCore::TrailingObjects::setTrailingWhitespace):
3294         (WebCore::TrailingObjects::clear):
3295         (WebCore::TrailingObjects::appendBoxIfNeeded):
3296         (WebCore::TrailingObjects::addMidpoints):
3297         (WebCore::RenderBlock::findNextLineBreak):
3298
3299 2011-05-03  Igor Oliveira  <igor.oliveira@openbossa.org>
3300
3301         Reviewed by Eric Seidel.
3302
3303         [Qt] Implement initial support to DataTransferItems
3304         https://bugs.webkit.org/show_bug.cgi?id=58448
3305
3306         Implement initial support to DataTransferItems. DataTransferItems are used to 
3307         hold data for drag and drop operations. DataTransferItems hold a list of 
3308         DataTransferItem objects each of which holds an item being dragged.
3309
3310         * WebCore.pro:
3311         * dom/DataTransferItems.idl:
3312         * editing/qt/EditorQt.cpp:
3313         (WebCore::Editor::newGeneralClipboard):
3314         * page/qt/EventHandlerQt.cpp:
3315         (WebCore::EventHandler::createDraggingClipboard):
3316         * platform/chromium/DataTransferItemsChromium.h:
3317         * platform/qt/ClipboardQt.cpp:
3318         (WebCore::Clipboard::create):
3319         (WebCore::ClipboardQt::ClipboardQt):
3320         (WebCore::ClipboardQt::items):
3321         * platform/qt/ClipboardQt.h:
3322         (WebCore::ClipboardQt::create):
3323         * platform/qt/DataTransferItemQt.cpp: Added.
3324         (WebCore::DataTransferItem::create):
3325         (WebCore::DataTransferItemQt::createFromPasteboard):
3326         (WebCore::DataTransferItemQt::create):
3327         (WebCore::DataTransferItemQt::DataTransferItemQt):
3328         (WebCore::DataTransferItemQt::getAsString):
3329         (WebCore::DataTransferItemQt::getAsFile):
3330         * platform/qt/DataTransferItemQt.h: Added.
3331         * platform/qt/DataTransferItemsQt.cpp: Copied from Source/WebCore/editing/qt/EditorQt.cpp.
3332         (WebCore::DataTransferItemsQt::create):
3333         (WebCore::DataTransferItemsQt::DataTransferItemsQt):
3334         (WebCore::DataTransferItemsQt::addPasteboardItem):
3335         * platform/qt/DataTransferItemsQt.h: Copied from Source/WebCore/editing/qt/EditorQt.cpp.
3336
3337 2011-05-03  Julien Chaffraix  <jchaffraix@codeaurora.org>
3338
3339         Reviewed by Dimitri Glazkov.
3340
3341         Element:shadowRoot & Element::ensureShadowRoot should return ShadowRoot*
3342         https://bugs.webkit.org/show_bug.cgi?id=58703
3343
3344         No new tests, refactoring only.
3345
3346         * dom/Element.cpp:
3347         (WebCore::Element::copyNonAttributeProperties):
3348         (WebCore::Element::insertedIntoDocument):
3349         (WebCore::Element::removedFromDocument):
3350         (WebCore::Element::insertedIntoTree):
3351         (WebCore::Element::removedFromTree):
3352         (WebCore::Element::attach):
3353         (WebCore::Element::detach):
3354         (WebCore::Element::recalcStyle):
3355         (WebCore::Element::shadowRoot):
3356         (WebCore::Element::ensureShadowRoot):
3357         (WebCore::Element::childrenChanged):
3358         * dom/Node.cpp:
3359         (WebCore::Node::setTreeScopeRecursively):
3360         (WebCore::shadowRoot):
3361         (WebCore::Node::setDocumentRecursively):
3362         (WebCore::NodeRendererFactory::findVisualParent):
3363         Updated all the call sites for shadowRoot and ensureShadowRoot in the 2
3364         previous classes.
3365
3366         * dom/Element.h: Updated 2 methods' signature to return a ShadowRoot*.
3367
3368         * dom/ShadowRoot.h: Removed toShadowRoot as it is not used anymore.
3369
3370         * html/HTMLDetailsElement.cpp:
3371         * html/HTMLSummaryElement.cpp:
3372         Added #include for ShadowRoot.h.
3373
3374 2011-05-03  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3375
3376         Reviewed by Kenneth Rohde Christiansen.
3377
3378         [EFL] Implement mediaSliderTrack
3379         https://bugs.webkit.org/show_bug.cgi?id=59998
3380
3381         Implement paintMediaSliderTrack.
3382
3383         * platform/efl/RenderThemeEfl.cpp:
3384         (WebCore::RenderThemeEfl::RenderThemeEfl):
3385         (WebCore::RenderThemeEfl::paintMediaSliderTrack):
3386         * platform/efl/RenderThemeEfl.h:
3387
3388 2011-05-03  Mikhail Naganov  <mnaganov@chromium.org>
3389
3390         Reviewed by Pavel Feldman.
3391
3392         WebInspector: [Chromium] Fix slowness of Summary view nodes expansion in detailed heap profiles.
3393         https://bugs.webkit.org/show_bug.cgi?id=60023
3394
3395         * inspector/front-end/DetailedHeapshotGridNodes.js:
3396         (WebInspector.HeapSnapshotConstructorNode):
3397         (WebInspector.HeapSnapshotConstructorNode.prototype._createNodesProvider):
3398         * inspector/front-end/HeapSnapshot.js:
3399         (WebInspector.HeapSnapshot.prototype.dispose):
3400         (WebInspector.HeapSnapshot.prototype.aggregates):
3401         (WebInspector.HeapSnapshot.prototype._buildAggregates):
3402         (WebInspector.HeapSnapshot.prototype._sortAggregateIndexes):
3403         (WebInspector.HeapSnapshot.prototype.createNodesProviderForClass):
3404         (WebInspector.HeapSnapshotFilteredOrderedIterator):
3405         (WebInspector.HeapSnapshotNodesProvider):
3406         * inspector/front-end/HeapSnapshotProxy.js:
3407         (WebInspector.HeapSnapshotProxy.prototype.aggregates):
3408         (WebInspector.HeapSnapshotProxy.prototype.createNodesProviderForClass):
3409
3410 2011-05-03  Mikhail Naganov  <mnaganov@chromium.org>
3411
3412         Reviewed by Pavel Feldman.
3413
3414         WebInspector: [Chromium] Hint user that to display retaining paths, an object entry must be clicked.
3415         https://bugs.webkit.org/show_bug.cgi?id=60029
3416
3417         * English.lproj/localizedStrings.js:
3418         * inspector/front-end/DetailedHeapshotView.js:
3419         (WebInspector.HeapSnapshotRetainingPathsList.prototype.reset):
3420         (WebInspector.DetailedHeapshotView.prototype._mouseClickInContainmentGrid):
3421
3422 2011-05-03  Beth Dakin  <bdakin@apple.com>
3423
3424         Reviewed by Dan Bernstein.
3425
3426         https://bugs.webkit.org/show_bug.cgi?id=60045
3427         Scrollbar thumb sometimes leaves artifacts in the track after scrolling
3428         -and corresponding-
3429         <rdar://problem/9015376>
3430
3431         When we're using WK_SCROLLBAR_PAINTER, the AppleScrollBarVariant default should 
3432         always be ignored.
3433         * platform/mac/ScrollbarThemeMac.mm:
3434         (WebCore::updateArrowPlacement):
3435
3436 2011-05-03  David Hyatt  <hyatt@apple.com>
3437
3438         Reviewed by Dan Bernstein.
3439
3440         https://bugs.webkit.org/show_bug.cgi?id=60040
3441         <rdar://problem/9261591>
3442
3443         Links broken at iplanwebsites.com. Make sure that culledInlineAbsoluteQuads still does
3444         a translation of a 0,0 point to absolute coordinates so that the top left position is
3445         accurate.
3446
3447         Added fast/inline/skipped-whitespace-client-rect.html
3448         
3449         * rendering/RenderInline.cpp:
3450         (WebCore::RenderInline::culledInlineAbsoluteQuads):
3451
3452 2011-05-03  Sam Weinig  <sam@webkit.org>
3453
3454         Fix chromium build.
3455
3456         * page/Settings.cpp:
3457
3458 2011-05-02  Roland Steiner  <rolandsteiner@chromium.org>
3459
3460         Reviewed by Dimitri Glazkov.
3461
3462         Bug 59974 - Update image map on the containing TreeScope rather than the Document
3463         https://bugs.webkit.org/show_bug.cgi?id=59974
3464
3465         No new tests. (reefactoring)
3466
3467         * html/HTMLMapElement.cpp:
3468         (WebCore::HTMLMapElement::parseMappedAttribute):
3469         (WebCore::HTMLMapElement::insertedIntoDocument):
3470         (WebCore::HTMLMapElement::removedFromDocument):
3471         * rendering/RenderImage.cpp:
3472         (WebCore::RenderImage::imageMap):
3473
3474 2011-05-03  Sam Weinig  <sam@webkit.org>
3475
3476         Fix chromium build.
3477
3478         * loader/HistoryController.cpp:
3479
3480 2011-05-02  Roland Steiner  <rolandsteiner@chromium.org>
3481
3482         Reviewed by Dimitri Glazkov.
3483
3484         Bug 59966 - Update ID hash on the containing TreeScope rather than the Document