ee179381476ee3cec0981a0585b3c933a40ee7ef
[WebKit.git] / Source / WebCore / ChangeLog
1 2011-02-10  Bill Budge  <bbudge@chromium.org>
2
3         Reviewed by David Levin.
4
5         Add fields to ResourceRequest and ResourceResponse in preparation for adding CORS support to AssociatedURLLoader.
6         https://bugs.webkit.org/show_bug.cgi?id=53925
7
8         * platform/network/chromium/ResourceRequest.cpp:
9         (WebCore::ResourceRequest::doPlatformCopyData):
10         (WebCore::ResourceRequest::doPlatformAdopt):
11         * platform/network/chromium/ResourceRequest.h:
12         (WebCore::ResourceRequest::ResourceRequest):
13         (WebCore::ResourceRequest::downloadToFile):
14         (WebCore::ResourceRequest::setDownloadToFile):
15         * platform/network/chromium/ResourceResponse.cpp:
16         (WebCore::ResourceResponse::doPlatformCopyData):
17         (WebCore::ResourceResponse::doPlatformAdopt):
18         * platform/network/chromium/ResourceResponse.h:
19         (WebCore::ResourceResponse::downloadFilePath):
20         (WebCore::ResourceResponse::setDownloadFilePath):
21
22 2011-02-10  Dirk Schulze  <krit@webkit.org>
23
24         Reviewed by Nikolas Zimmermann.
25
26         SVGAnimateElement needs information about the animated attribute type
27         https://bugs.webkit.org/show_bug.cgi?id=53442
28
29         For animations, we need to know the SVG property type for a XML attribute. A global static mapping between
30         attribute name and a type is not possible, since one attribute name can be bound to different property types:
31         x can be a SVGNumberList, a SVGNumber or a SVGLength. So we have to ask every target element, if it supports
32         the animated attribute and of which type it is. Just for CSS properties we can share an explicit mapping between
33         the name and the type. This is done in a static map in SVGStyledElement. All other mappings are stored in local static
34         HashMaps for all SVG elements with animated properties. These maps get filled once with the fillAttributeToPropertyTypeMap function
35         that needs to be included in every SVG element. The function is not virtual in base classes for performance reasons.
36
37         No change of functionality, so no new test cases.
38
39         * svg/SVGAElement.cpp:
40         (WebCore::SVGAElement::attributeToPropertyTypeMap):
41         (WebCore::SVGAElement::fillAttributeToPropertyTypeMap):
42         * svg/SVGAElement.h:
43         * svg/SVGAltGlyphElement.cpp:
44         (WebCore::SVGAltGlyphElement::attributeToPropertyTypeMap):
45         (WebCore::SVGAltGlyphElement::fillAttributeToPropertyTypeMap):
46         * svg/SVGAltGlyphElement.h:
47         * svg/SVGAnimateElement.cpp:
48         (WebCore::SVGAnimateElement::determinePropertyType):
49         * svg/SVGCircleElement.cpp:
50         (WebCore::SVGCircleElement::attributeToPropertyTypeMap):
51         (WebCore::SVGCircleElement::fillAttributeToPropertyTypeMap):
52         * svg/SVGCircleElement.h:
53         * svg/SVGClipPathElement.cpp:
54         (WebCore::SVGClipPathElement::attributeToPropertyTypeMap):
55         (WebCore::SVGClipPathElement::fillAttributeToPropertyTypeMap):
56         * svg/SVGClipPathElement.h:
57         * svg/SVGComponentTransferFunctionElement.cpp:
58         (WebCore::SVGComponentTransferFunctionElement::attributeToPropertyTypeMap):
59         (WebCore::SVGComponentTransferFunctionElement::fillAttributeToPropertyTypeMap):
60         * svg/SVGComponentTransferFunctionElement.h:
61         * svg/SVGCursorElement.cpp:
62         (WebCore::SVGCursorElement::attributeToPropertyTypeMap):
63         (WebCore::SVGCursorElement::fillAttributeToPropertyTypeMap):
64         * svg/SVGCursorElement.h:
65         * svg/SVGElement.cpp:
66         (WebCore::SVGElement::attributeToPropertyTypeMap):
67         (WebCore::SVGElement::animatedPropertyTypeForAttribute):
68         * svg/SVGElement.h:
69         (WebCore::SVGElement::fillAttributeToPropertyTypeMap):
70         * svg/SVGEllipseElement.cpp:
71         (WebCore::SVGEllipseElement::attributeToPropertyTypeMap):
72         (WebCore::SVGEllipseElement::fillAttributeToPropertyTypeMap):
73         * svg/SVGEllipseElement.h:
74         * svg/SVGFEBlendElement.cpp:
75         (WebCore::SVGFEBlendElement::attributeToPropertyTypeMap):
76         (WebCore::SVGFEBlendElement::fillAttributeToPropertyTypeMap):
77         * svg/SVGFEBlendElement.h:
78         * svg/SVGFEColorMatrixElement.cpp:
79         (WebCore::SVGFEColorMatrixElement::attributeToPropertyTypeMap):
80         (WebCore::SVGFEColorMatrixElement::fillAttributeToPropertyTypeMap):
81         * svg/SVGFEColorMatrixElement.h:
82         * svg/SVGFEComponentTransferElement.cpp:
83         (WebCore::SVGFEComponentTransferElement::attributeToPropertyTypeMap):
84         (WebCore::SVGFEComponentTransferElement::fillAttributeToPropertyTypeMap):
85         * svg/SVGFEComponentTransferElement.h:
86         * svg/SVGFECompositeElement.cpp:
87         (WebCore::SVGFECompositeElement::attributeToPropertyTypeMap):
88         (WebCore::SVGFECompositeElement::fillAttributeToPropertyTypeMap):
89         * svg/SVGFECompositeElement.h:
90         * svg/SVGFEConvolveMatrixElement.cpp:
91         (WebCore::SVGFEConvolveMatrixElement::attributeToPropertyTypeMap):
92         (WebCore::SVGFEConvolveMatrixElement::fillAttributeToPropertyTypeMap):
93         * svg/SVGFEConvolveMatrixElement.h:
94         * svg/SVGFEDiffuseLightingElement.cpp:
95         (WebCore::SVGFEDiffuseLightingElement::attributeToPropertyTypeMap):
96         (WebCore::SVGFEDiffuseLightingElement::fillAttributeToPropertyTypeMap):
97         * svg/SVGFEDiffuseLightingElement.h:
98         * svg/SVGFEDisplacementMapElement.cpp:
99         (WebCore::SVGFEDisplacementMapElement::attributeToPropertyTypeMap):
100         (WebCore::SVGFEDisplacementMapElement::fillAttributeToPropertyTypeMap):
101         * svg/SVGFEDisplacementMapElement.h:
102         * svg/SVGFEFloodElement.cpp:
103         (WebCore::SVGFEFloodElement::attributeToPropertyTypeMap):
104         (WebCore::SVGFEFloodElement::fillAttributeToPropertyTypeMap):
105         * svg/SVGFEFloodElement.h:
106         * svg/SVGFEGaussianBlurElement.cpp:
107         (WebCore::SVGFEGaussianBlurElement::attributeToPropertyTypeMap):
108         (WebCore::SVGFEGaussianBlurElement::fillAttributeToPropertyTypeMap):
109         * svg/SVGFEGaussianBlurElement.h:
110         * svg/SVGFEImageElement.cpp:
111         (WebCore::SVGFEImageElement::attributeToPropertyTypeMap):
112         (WebCore::SVGFEImageElement::fillAttributeToPropertyTypeMap):
113         * svg/SVGFEImageElement.h:
114         * svg/SVGFELightElement.cpp:
115         (WebCore::SVGFELightElement::attributeToPropertyTypeMap):
116         (WebCore::SVGFELightElement::fillAttributeToPropertyTypeMap):
117         * svg/SVGFELightElement.h:
118         * svg/SVGFEMergeElement.cpp:
119         (WebCore::SVGFEMergeElement::attributeToPropertyTypeMap):
120         (WebCore::SVGFEMergeElement::fillAttributeToPropertyTypeMap):
121         * svg/SVGFEMergeElement.h:
122         * svg/SVGFEMergeNodeElement.cpp:
123         (WebCore::SVGFEMergeNodeElement::attributeToPropertyTypeMap):
124         (WebCore::SVGFEMergeNodeElement::fillAttributeToPropertyTypeMap):
125         * svg/SVGFEMergeNodeElement.h:
126         * svg/SVGFEMorphologyElement.cpp:
127         (WebCore::SVGFEMorphologyElement::attributeToPropertyTypeMap):
128         (WebCore::SVGFEMorphologyElement::fillAttributeToPropertyTypeMap):
129         * svg/SVGFEMorphologyElement.h:
130         * svg/SVGFEOffsetElement.cpp:
131         (WebCore::SVGFEOffsetElement::attributeToPropertyTypeMap):
132         (WebCore::SVGFEOffsetElement::fillAttributeToPropertyTypeMap):
133         * svg/SVGFEOffsetElement.h:
134         * svg/SVGFESpecularLightingElement.cpp:
135         (WebCore::SVGFESpecularLightingElement::attributeToPropertyTypeMap):
136         (WebCore::SVGFESpecularLightingElement::fillAttributeToPropertyTypeMap):
137         * svg/SVGFESpecularLightingElement.h:
138         * svg/SVGFETileElement.cpp:
139         (WebCore::SVGFETileElement::attributeToPropertyTypeMap):
140         (WebCore::SVGFETileElement::fillAttributeToPropertyTypeMap):
141         * svg/SVGFETileElement.h:
142         * svg/SVGFETurbulenceElement.cpp:
143         (WebCore::SVGFETurbulenceElement::attributeToPropertyTypeMap):
144         (WebCore::SVGFETurbulenceElement::fillAttributeToPropertyTypeMap):
145         * svg/SVGFETurbulenceElement.h:
146         * svg/SVGFilterElement.cpp:
147         (WebCore::SVGFilterElement::attributeToPropertyTypeMap):
148         (WebCore::SVGFilterElement::fillAttributeToPropertyTypeMap):
149         * svg/SVGFilterElement.h:
150         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
151         (WebCore::SVGFilterPrimitiveStandardAttributes::fillAttributeToPropertyTypeMap):
152         * svg/SVGFilterPrimitiveStandardAttributes.h:
153         * svg/SVGFontElement.cpp:
154         (WebCore::SVGFontElement::attributeToPropertyTypeMap):
155         (WebCore::SVGFontElement::fillAttributeToPropertyTypeMap):
156         * svg/SVGFontElement.h:
157         (WebCore::SVGFontElement::rendererIsNeeded):
158         * svg/SVGForeignObjectElement.cpp:
159         (WebCore::SVGForeignObjectElement::attributeToPropertyTypeMap):
160         (WebCore::SVGForeignObjectElement::fillAttributeToPropertyTypeMap):
161         * svg/SVGForeignObjectElement.h:
162         * svg/SVGGlyphElement.cpp:
163         (WebCore::SVGGlyphElement::attributeToPropertyTypeMap):
164         (WebCore::SVGGlyphElement::fillAttributeToPropertyTypeMap):
165         * svg/SVGGlyphElement.h:
166         * svg/SVGGradientElement.cpp:
167         (WebCore::SVGGradientElement::fillAttributeToPropertyTypeMap):
168         * svg/SVGGradientElement.h:
169         * svg/SVGImageElement.cpp:
170         (WebCore::SVGImageElement::attributeToPropertyTypeMap):
171         (WebCore::SVGImageElement::fillAttributeToPropertyTypeMap):
172         * svg/SVGImageElement.h:
173         * svg/SVGLineElement.cpp:
174         (WebCore::SVGLineElement::attributeToPropertyTypeMap):
175         (WebCore::SVGLineElement::fillAttributeToPropertyTypeMap):
176         * svg/SVGLineElement.h:
177         * svg/SVGLinearGradientElement.cpp:
178         (WebCore::SVGLinearGradientElement::attributeToPropertyTypeMap):
179         (WebCore::SVGLinearGradientElement::fillAttributeToPropertyTypeMap):
180         * svg/SVGLinearGradientElement.h:
181         * svg/SVGMPathElement.cpp:
182         (WebCore::SVGMPathElement::attributeToPropertyTypeMap):
183         (WebCore::SVGMPathElement::fillAttributeToPropertyTypeMap):
184         * svg/SVGMPathElement.h:
185         * svg/SVGMarkerElement.cpp:
186         (WebCore::SVGMarkerElement::attributeToPropertyTypeMap):
187         (WebCore::SVGMarkerElement::fillAttributeToPropertyTypeMap):
188         * svg/SVGMarkerElement.h:
189         * svg/SVGMaskElement.cpp:
190         (WebCore::SVGMaskElement::attributeToPropertyTypeMap):
191         (WebCore::SVGMaskElement::fillAttributeToPropertyTypeMap):
192         * svg/SVGMaskElement.h:
193         * svg/SVGMissingGlyphElement.cpp:
194         (WebCore::SVGMissingGlyphElement::attributeToPropertyTypeMap):
195         (WebCore::SVGMissingGlyphElement::fillAttributeToPropertyTypeMap):
196         * svg/SVGMissingGlyphElement.h:
197         * svg/SVGPathElement.cpp:
198         (WebCore::SVGPathElement::attributeToPropertyTypeMap):
199         (WebCore::SVGPathElement::fillAttributeToPropertyTypeMap):
200         * svg/SVGPathElement.h:
201         * svg/SVGPatternElement.cpp:
202         (WebCore::SVGPatternElement::attributeToPropertyTypeMap):
203         (WebCore::SVGPatternElement::fillAttributeToPropertyTypeMap):
204         * svg/SVGPatternElement.h:
205         * svg/SVGPolyElement.cpp:
206         (WebCore::SVGPolyElement::attributeToPropertyTypeMap):
207         (WebCore::SVGPolyElement::fillAttributeToPropertyTypeMap):
208         * svg/SVGPolyElement.h:
209         * svg/SVGRadialGradientElement.cpp:
210         (WebCore::SVGRadialGradientElement::attributeToPropertyTypeMap):
211         (WebCore::SVGRadialGradientElement::fillAttributeToPropertyTypeMap):
212         * svg/SVGRadialGradientElement.h:
213         * svg/SVGRectElement.cpp:
214         (WebCore::SVGRectElement::attributeToPropertyTypeMap):
215         (WebCore::SVGRectElement::fillAttributeToPropertyTypeMap):
216         * svg/SVGRectElement.h:
217         * svg/SVGSVGElement.cpp:
218         (WebCore::SVGSVGElement::attributeToPropertyTypeMap):
219         (WebCore::SVGSVGElement::fillAttributeToPropertyTypeMap):
220         * svg/SVGSVGElement.h:
221         * svg/SVGScriptElement.cpp:
222         (WebCore::SVGScriptElement::attributeToPropertyTypeMap):
223         (WebCore::SVGScriptElement::fillAttributeToPropertyTypeMap):
224         * svg/SVGScriptElement.h:
225         * svg/SVGStopElement.cpp:
226         (WebCore::SVGStopElement::attributeToPropertyTypeMap):
227         (WebCore::SVGStopElement::fillAttributeToPropertyTypeMap):
228         * svg/SVGStopElement.h:
229         * svg/SVGStyledElement.cpp:
230         (WebCore::cssPropertyToTypeMap):
231         (WebCore::SVGStyledElement::animatedPropertyTypeForCSSProperty):
232         (WebCore::SVGStyledElement::fillAttributeToPropertyTypeMap):
233         * svg/SVGStyledElement.h:
234         * svg/SVGStyledTransformableElement.cpp:
235         (WebCore::SVGStyledTransformableElement::fillAttributeToPropertyTypeMap):
236         * svg/SVGStyledTransformableElement.h:
237         * svg/SVGSwitchElement.cpp:
238         (WebCore::SVGSwitchElement::attributeToPropertyTypeMap):
239         (WebCore::SVGSwitchElement::fillAttributeToPropertyTypeMap):
240         * svg/SVGSwitchElement.h:
241         * svg/SVGSymbolElement.cpp:
242         (WebCore::SVGSymbolElement::attributeToPropertyTypeMap):
243         (WebCore::SVGSymbolElement::fillAttributeToPropertyTypeMap):
244         * svg/SVGSymbolElement.h:
245         * svg/SVGTRefElement.cpp:
246         (WebCore::SVGTRefElement::attributeToPropertyTypeMap):
247         (WebCore::SVGTRefElement::fillAttributeToPropertyTypeMap):
248         * svg/SVGTRefElement.h:
249         * svg/SVGTSpanElement.cpp:
250         (WebCore::SVGTSpanElement::attributeToPropertyTypeMap):
251         (WebCore::SVGTSpanElement::fillAttributeToPropertyTypeMap):
252         * svg/SVGTSpanElement.h:
253         * svg/SVGTextContentElement.cpp:
254         (WebCore::SVGTextContentElement::fillAttributeToPropertyTypeMap):
255         * svg/SVGTextContentElement.h:
256         * svg/SVGTextElement.cpp:
257         (WebCore::SVGTextElement::attributeToPropertyTypeMap):
258         (WebCore::SVGTextElement::fillAttributeToPropertyTypeMap):
259         * svg/SVGTextElement.h:
260         * svg/SVGTextPathElement.cpp:
261         (WebCore::SVGTextPathElement::attributeToPropertyTypeMap):
262         (WebCore::SVGTextPathElement::fillAttributeToPropertyTypeMap):
263         * svg/SVGTextPathElement.h:
264         * svg/SVGTextPositioningElement.cpp:
265         (WebCore::SVGTextPositioningElement::fillAttributeToPropertyTypeMap):
266         * svg/SVGTextPositioningElement.h:
267         * svg/SVGTitleElement.cpp:
268         (WebCore::SVGTitleElement::attributeToPropertyTypeMap):
269         (WebCore::SVGTitleElement::fillAttributeToPropertyTypeMap):
270         * svg/SVGTitleElement.h:
271         * svg/SVGUseElement.cpp:
272         (WebCore::SVGUseElement::attributeToPropertyTypeMap):
273         (WebCore::SVGUseElement::fillAttributeToPropertyTypeMap):
274         * svg/SVGUseElement.h:
275         * svg/SVGViewElement.cpp:
276         (WebCore::SVGViewElement::attributeToPropertyTypeMap):
277         (WebCore::SVGViewElement::fillAttributeToPropertyTypeMap):
278         * svg/SVGViewElement.h:
279
280 2011-02-10  Alexis Menard  <alexis.menard@nokia.com>
281
282         Reviewed by Andreas Kling.
283
284         Fix a Warning after removing FileSystem support for the inspector.
285
286         * WebCore.pro:
287
288 2011-02-10  Chris Fleizach  <cfleizach@apple.com>
289
290         Reviewed by Anders Carlsson.
291
292         AX: AX needs to stop using WebCoreViewFactory
293         https://bugs.webkit.org/show_bug.cgi?id=54153
294
295         WebKit2 no longer uses WebCoreViewFactory, which means that accessibility code needs
296         to get off of it and use WebCoreSystemInterface, like other clients.
297
298         * WebCore.exp.in:
299         * accessibility/AXObjectCache.h:
300         * accessibility/mac/AXObjectCacheMac.mm:
301         (WebCore::AXObjectCache::handleFocusedUIElementChanged):
302         * accessibility/mac/AccessibilityObjectWrapper.h:
303         * accessibility/mac/AccessibilityObjectWrapper.mm:
304         (-[AccessibilityObjectWrapper unregisterUniqueIdForUIElement]):
305         (CFAutoreleaseHelper):
306         (AXObjectIsTextMarker):
307         (AXObjectIsTextMarkerRange):
308         (AXTextMarkerRange):
309         (AXTextMarkerRangeStart):
310         (AXTextMarkerRangeEnd):
311         (textMarkerForVisiblePosition):
312         (-[AccessibilityObjectWrapper textMarkerForVisiblePosition:]):
313         (visiblePositionForTextMarker):
314         (-[AccessibilityObjectWrapper visiblePositionForTextMarker:]):
315         (visiblePositionForStartOfTextMarkerRange):
316         (visiblePositionForEndOfTextMarkerRange):
317         (textMarkerRangeFromMarkers):
318         (AXAttributeStringSetElement):
319         (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
320         (textMarkerRangeFromVisiblePositions):
321         (-[AccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]):
322         (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]):
323         (-[AccessibilityObjectWrapper textMarkerRangeForSelection]):
324         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
325         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
326         * editing/mac/SelectionControllerMac.mm:
327         (WebCore::accessibilityConvertScreenRect):
328         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
329         * platform/mac/WebCoreSystemInterface.h:
330         * platform/mac/WebCoreSystemInterface.mm:
331
332 2011-02-10  Alexis Menard  <alexis.menard@nokia.com>
333
334         Reviewed by Andreas Kling.
335
336         [Qt] In trunk with Qt Multimedia the full screen mode doesn't work.
337         https://bugs.webkit.org/show_bug.cgi?id=54201
338
339         Add files for the fullscreen video playback handling. It also fix
340         a missing header.
341
342         * WebCore.pro:
343
344 2011-02-09  Pavel Feldman  <pfeldman@chromium.org>
345
346         Reviewed by Yury Semikhatsky.
347
348         Web Inspector: Remove FileSystem support from the inspector.
349         https://bugs.webkit.org/show_bug.cgi?id=50695
350
351         * CMakeLists.txt:
352         * GNUmakefile.am:
353         * WebCore.gypi:
354         * WebCore.pro:
355         * WebCore.vcproj/WebCore.vcproj:
356         * WebCore.xcodeproj/project.pbxproj:
357         * inspector/Inspector.idl:
358         * inspector/InspectorApplicationCacheAgent.cpp:
359         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
360         (WebCore::InspectorApplicationCacheAgent::getApplicationCaches):
361         * inspector/InspectorApplicationCacheAgent.h:
362         * inspector/InspectorFileSystemAgent.cpp: Removed.
363         * inspector/InspectorFileSystemAgent.h: Removed.
364         * inspector/InspectorInstrumentation.cpp:
365         (WebCore::InspectorInstrumentation::identifierForInitialRequestImpl):
366         (WebCore::InspectorInstrumentation::willSendRequestImpl):
367         (WebCore::InspectorInstrumentation::markResourceAsCachedImpl):
368         (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
369         (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
370         (WebCore::InspectorInstrumentation::didReceiveContentLengthImpl):
371         (WebCore::InspectorInstrumentation::didFinishLoadingImpl):
372         (WebCore::InspectorInstrumentation::didFailLoadingImpl):
373         (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
374         (WebCore::InspectorInstrumentation::scriptImportedImpl):
375         (WebCore::InspectorInstrumentation::networkStateChangedImpl):
376         (WebCore::InspectorInstrumentation::updateApplicationCacheStatusImpl):
377         (WebCore::InspectorInstrumentation::retrieveResourceAgent):
378         * inspector/front-end/FileSystemView.js: Removed.
379         * inspector/front-end/WebKit.qrc:
380         * inspector/front-end/inspector.html:
381
382 2011-02-10  Sheriff Bot  <webkit.review.bot@gmail.com>
383
384         Unreviewed, rolling out r78219.
385         http://trac.webkit.org/changeset/78219
386         https://bugs.webkit.org/show_bug.cgi?id=54215
387
388         breaks editing/style/iframe-onload-crash.html on GTK 64-bit
389         Debug (Requested by philn-tp on #webkit).
390
391         * dom/Document.h:
392         * dom/DocumentFragment.h:
393         * dom/Element.h:
394         * dom/Node.h:
395         * dom/Text.h:
396         * editing/htmlediting.cpp:
397         (WebCore::editingIgnoresContent):
398         (WebCore::canHaveChildrenForEditing):
399         * editing/htmlediting.h:
400         * html/HTMLBRElement.h:
401         * html/HTMLButtonElement.h:
402         * html/HTMLDataGridElement.h:
403         * html/HTMLFormControlElement.h:
404         * html/HTMLFrameElementBase.h:
405         * html/HTMLHRElement.h:
406         * html/HTMLImageElement.h:
407         * html/HTMLMeterElement.h:
408         * html/HTMLOutputElement.h:
409         * html/HTMLPlugInElement.h:
410         * html/HTMLProgressElement.h:
411         * wml/WMLBRElement.h:
412         * wml/WMLDoElement.h:
413         * wml/WMLImageElement.h:
414         * wml/WMLInputElement.h:
415         * wml/WMLSelectElement.h:
416
417 2011-02-10  Andras Becsi  <abecsi@webkit.org>
418
419         Rubber-stamped by Csaba Osztrogonác.
420
421         [Qt][V8] Fix the build.
422
423         No new tests needed.
424
425         * bindings/v8/WorkerContextExecutionProxy.cpp: add missing CString header.
426         * loader/cache/CachedScript.h: do not use extra qualification for base class enum.
427
428 2011-02-10  Alexander Pavlov  <apavlov@chromium.org>
429
430         Reviewed by Yury Semikhatsky.
431
432         Web Inspector: [STYLES] Suggest CSS property values once Up/Down is pressed with an empty input
433         https://bugs.webkit.org/show_bug.cgi?id=54205
434
435         * inspector/front-end/CSSCompletions.js:
436         (WebInspector.CSSCompletions):
437         (WebInspector.CSSCompletions.prototype._firstIndexOfPrefix):
438         * inspector/front-end/CSSKeywordCompletions.js:
439         (WebInspector.CSSKeywordCompletions.forProperty):
440         * inspector/front-end/StylesSidebarPane.js:
441         ():
442         * inspector/front-end/TextPrompt.js:
443         (WebInspector.TextPrompt.prototype.complete):
444
445 2011-02-10  Renata Hodovan  <reni@webkit.org>
446
447         Reviewed by Dirk Schulze.
448
449         SVGFESpecularLightingElement doesn't support dynamic invalidation, when attributes change.
450         https://bugs.webkit.org/show_bug.cgi?id=54186
451
452         The dynamic changes are captured by the svgAttributeChange function, and invalidate the filter primitive if necessary.
453
454         Tests: svg/dynamic-updates/SVGFESpecularLightingElement-dom-in-attr.html
455                svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularConstant-attr.html
456                svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularExponent-attr.html
457                svg/dynamic-updates/SVGFESpecularLightingElement-dom-suraceScale-attr.html
458                svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-in-prop.html
459                svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularConstant-prop.html
460                svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularExponent-prop.html
461                svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-suraceScale-prop.html
462
463         * svg/SVGFESpecularLightingElement.cpp:
464         (WebCore::SVGFESpecularLightingElement::svgAttributeChanged):
465         * svg/SVGFESpecularLightingElement.h:
466
467 2011-02-10  Andrey Adaikin  <aandrey@google.com>
468
469         Reviewed by Pavel Feldman.
470
471         Web Inspector: Error messages are not displayed for the last line in a script
472         https://bugs.webkit.org/show_bug.cgi?id=54204
473
474         * inspector/front-end/SourceFrame.js:
475         (WebInspector.SourceFrame.prototype.addMessage):
476         (WebInspector.SourceFrame.prototype._addMessageToSource):
477         (WebInspector.SourceFrame.prototype._createConditionElement):
478
479 2011-02-10  Ryosuke Niwa  <rniwa@webkit.org>
480
481         Reviewed by Eric Seidel.
482
483         Make canHaveChildrenForEditing more efficient
484         https://bugs.webkit.org/show_bug.cgi?id=53564
485
486         Improved the performance (1-2% in release and 20% in debug) by adding virtual member function
487         canContainRangeEndPoint to Node. It returns true whenever the associated node can have be a container
488         node for a position.
489
490         As of this revision, canContainRangeEndPoint returns true on Document, DocumentFragment, Text nodes
491         and any elements except:
492
493         HTML: applet, br, button, datagrid, embed, frame, frameset, hr, img, input,
494               meter, object, output, progress, and select.
495
496         WML: br, do, img, input, and select.
497
498         No new tests are added since this change cannot be tested directly.
499
500         * dom/Document.h:
501         (WebCore::Document::canContainRangeEndPoint): Added; returns false.
502         * dom/DocumentFragment.h:
503         (WebCore::DocumentFragment::canContainRangeEndPoint): Added; returns true.
504         * dom/Element.h:
505         (WebCore::Element::canContainRangeEndPoint): Ditto.
506         * dom/Node.h:
507         (WebCore::Node::canContainRangeEndPoint): Added; returns false.
508         * dom/Text.h:
509         (WebCore::Text::canContainRangeEndPoint): Added; returns true.
510         * editing/htmlediting.cpp: Removed editingIgnoresContent and canHaveChildrenForEditing.
511         * editing/htmlediting.h:
512         (WebCore::editingIgnoresContent): Moved from htmlediting.cpp; made it inline.
513         (WebCore::canHaveChildrenForEditing): Ditto.
514         * html/HTMLBRElement.h:
515         (WebCore::HTMLBRElement::canContainRangeEndPoint): Added; returns false.
516         * html/HTMLButtonElement.h:
517         (WebCore::HTMLButtonElement::canContainRangeEndPoint): Ditto.
518         * html/HTMLDataGridElement.h:
519         (WebCore::HTMLDataGridElement::canContainRangeEndPoint): Ditto.
520         * html/HTMLFormControlElement.h:
521         (WebCore::HTMLFormControlElementWithState::canContainRangeEndPoint): Ditto.
522         * html/HTMLFrameElementBase.h:
523         (WebCore::HTMLFrameElementBase::canContainRangeEndPoint): Ditto.
524         * html/HTMLHRElement.h:
525         (WebCore::HTMLHRElement::canContainRangeEndPoint): Ditto.
526         * html/HTMLImageElement.h:
527         (WebCore::HTMLImageElement::canContainRangeEndPoint): Ditto.
528         * html/HTMLMeterElement.h:
529         (WebCore::HTMLMeterElement::canContainRangeEndPoint): Ditto.
530         * html/HTMLOutputElement.h:
531         (WebCore::HTMLOutputElement::canContainRangeEndPoint): Ditto.
532         * html/HTMLPlugInElement.h:
533         (WebCore::HTMLPlugInElement::canContainRangeEndPoint): Ditto.
534         * html/HTMLProgressElement.h:
535         (WebCore::HTMLProgressElement::canContainRangeEndPoint): Ditto.
536         * wml/WMLBRElement.h:
537         (WebCore::WMLBRElement::canContainRangeEndPoint): Ditto.
538         * wml/WMLDoElement.h:
539         (WebCore::WMLDoElement::canContainRangeEndPoint): Ditto.
540         * wml/WMLImageElement.h:
541         (WebCore::WMLImageElement::canContainRangeEndPoint): Ditto.
542         * wml/WMLInputElement.h:
543         (WebCore::WMLInputElement::canContainRangeEndPoint): Ditto.
544         * wml/WMLSelectElement.h:
545         (WebCore::WMLSelectElement::canContainRangeEndPoint): Ditto.
546
547 2011-02-10  Pavel Feldman  <pfeldman@chromium.org>
548
549         Reviewed by Yury Semikhatsky.
550
551         Web Inspector: define interface per domain in Inspector.idl.
552         https://bugs.webkit.org/show_bug.cgi?id=54135
553
554         * inspector/CodeGeneratorInspector.pm:
555         * inspector/Inspector.idl:
556
557 2011-02-10  Andrey Adaikin  <aandrey@google.com>
558
559         Reviewed by Pavel Feldman.
560
561         Web Inspector: [regression] Fix syncing heights of the gutter and main panel lines, and add 2px padding-left
562         https://bugs.webkit.org/show_bug.cgi?id=54098
563
564         * inspector/front-end/TextViewer.js:
565         (WebInspector.TextViewer):
566         (WebInspector.TextViewer.prototype._updatePanelOffsets):
567         (WebInspector.TextViewer.prototype._syncScroll):
568         (WebInspector.TextViewer.prototype._syncDecorationsForLine):
569         (WebInspector.TextEditorChunkedPanel.prototype._totalHeight):
570         (WebInspector.TextEditorChunkedPanel.prototype.resize):
571         (WebInspector.TextEditorGutterPanel):
572         (WebInspector.TextEditorGutterChunk.prototype.set expanded):
573         (WebInspector.TextEditorGutterChunk.prototype.get height):
574         (WebInspector.TextEditorMainChunk.prototype.get height):
575         * inspector/front-end/textViewer.css:
576         (.webkit-line-content):
577
578 2011-02-10  takano takumi  <takano@apple.com>
579
580         Reviewed by Dan Bernstein.
581
582         A full-width character rotated leftward 90 degrees in text-combine
583         https://bugs.webkit.org/show_bug.cgi?id=54169
584
585         * rendering/RenderCombineText.cpp:
586         (WebCore::RenderCombineText::combineText):
587         - Fixed by resetting font's orientation to horizontal when we decided to make combined text.
588         Otherwise the text will be unexpectedly rotated in showGlyphsWithAdvances() in FontMac.mm.
589
590 2011-02-10  Alexey Proskuryakov  <ap@apple.com>
591
592         Reviewed by Darin Adler.
593
594         https://bugs.webkit.org/show_bug.cgi?id=50306
595         <rdar://problem/8976152> REGRESSION: WebChromeClient::shouldReplaceWithGeneratedFileForUpload()
596         uses an initialized result value (breaks form submission with clang-built WebKit)
597
598         No new test, because I can't reproduce the observable effect with my gcc build.
599
600         * platform/network/FormData.cpp: (WebCore::FormData::appendKeyValuePairItems): Restore an
601         empty path check - an empty path was causing an exception in Foundation.
602
603 2011-02-09  Andrey Kosyakov  <caseq@chromium.org>
604
605         Reviewed by Pavel Feldman.
606
607         Web Inspector: Network & Resource panels make multiple requests for images with no content
608         https://bugs.webkit.org/show_bug.cgi?id=54085
609
610         - Added success parameter to resourceContent
611         - NetworkManager.requestContent() now returns empty for zero-length resources, null for errors
612
613         * inspector/Inspector.idl:
614         * inspector/InspectorResourceAgent.cpp:
615         (WebCore::InspectorResourceAgent::resourceData):
616         (WebCore::InspectorResourceAgent::resourceContent):
617         * inspector/InspectorResourceAgent.h:
618         * inspector/front-end/NetworkManager.js:
619         (WebInspector.NetworkManager.prototype.requestContent):
620         * inspector/front-end/Resource.js:
621         (WebInspector.Resource.prototype.requestContent):
622         (WebInspector.Resource.prototype._contentURL):
623
624 2011-02-10  Renata Hodovan  <reni@webkit.org>
625
626         Reviewed by Dirk Schulze.
627
628         Move the light source implementations into their own files.
629         https://bugs.webkit.org/show_bug.cgi?id=53996
630
631         Splitting LightSource.cpp into 3 files.
632
633         No new tests are added since this is a refactoring.
634
635         * Android.mk:
636         * CMakeLists.txt:
637         * GNUmakefile.am:
638         * WebCore.gypi:
639         * WebCore.pro:
640         * WebCore.vcproj/WebCore.vcproj:
641         * WebCore.xcodeproj/project.pbxproj:
642         * platform/graphics/filters/DistantLightSource.cpp: Added.
643         (WebCore::DistantLightSource::initPaintingData):
644         (WebCore::DistantLightSource::updatePaintingData):
645         (WebCore::DistantLightSource::setAzimuth):
646         (WebCore::DistantLightSource::setElevation):
647         (WebCore::DistantLightSource::externalRepresentation):
648         * platform/graphics/filters/LightSource.cpp:
649         * platform/graphics/filters/PointLightSource.cpp: Added.
650         (WebCore::PointLightSource::initPaintingData):
651         (WebCore::PointLightSource::updatePaintingData):
652         (WebCore::PointLightSource::setX):
653         (WebCore::PointLightSource::setY):
654         (WebCore::PointLightSource::setZ):
655         (WebCore::operator<<):
656         (WebCore::PointLightSource::externalRepresentation):
657         * platform/graphics/filters/SpotLightSource.cpp: Added.
658         (WebCore::SpotLightSource::initPaintingData):
659         (WebCore::SpotLightSource::updatePaintingData):
660         (WebCore::SpotLightSource::setX):
661         (WebCore::SpotLightSource::setY):
662         (WebCore::SpotLightSource::setZ):
663         (WebCore::SpotLightSource::setPointsAtX):
664         (WebCore::SpotLightSource::setPointsAtY):
665         (WebCore::SpotLightSource::setPointsAtZ):
666         (WebCore::SpotLightSource::setSpecularExponent):
667         (WebCore::SpotLightSource::setLimitingConeAngle):
668         (WebCore::operator<<):
669         (WebCore::SpotLightSource::externalRepresentation):
670
671 2011-02-10  Avi Drissman  <avi@google.com>
672
673         Reviewed by Darin Fisher.
674
675         <option> should implement the dir attribute. Mac Chromium version, followup to r76983, r77654.
676         https://bugs.webkit.org/show_bug.cgi?id=50969
677
678         Use manual test Source/WebCore/manual-tests/pop-up-alignment-and-direction.html added in r76983.
679
680         * platform/chromium/PopupMenuChromium.cpp:
681         (WebCore::PopupListBox::updateFromElement):
682         * platform/chromium/PopupMenuChromium.h:
683
684 2011-02-10  Hans Wennborg  <hans@chromium.org>
685
686         Reviewed by Jeremy Orlow.
687
688         IndexedDB: Update the semantics of put()
689         https://bugs.webkit.org/show_bug.cgi?id=54102
690
691         Update the semantics of put: For object stores with auto increment,
692         it should be allowed to provide an explicit key, or an in-line key,
693         overriding the key generator mechanism.
694
695         This reflects the spec changes suggested here:
696         http://www.w3.org/Bugs/Public/show_bug.cgi?id=11976
697
698         Extracting key-selection logic into its own function
699         to make it a bit easier on the eyes.
700
701         * storage/IDBObjectStoreBackendImpl.cpp:
702         (WebCore::IDBObjectStoreBackendImpl::selectKeyForPut):
703         (WebCore::IDBObjectStoreBackendImpl::putInternal):
704         * storage/IDBObjectStoreBackendImpl.h:
705         (WebCore::IDBObjectStoreBackendImpl::resetAutoIncrementKeyCache):
706
707 2011-02-09  Antti Koivisto  <antti@apple.com>
708
709         Reviewed by Darin Adler.
710
711         https://bugs.webkit.org/show_bug.cgi?id=54103
712         Implement fast path for matching simple selectors
713         
714         Implement a fast path for single and descendant selectors consisting
715         of id, class and tag selectors only.
716         
717         Selectors like this are marked on style selector initialization. When 
718         encountered during style matching they are resolved using a fast path.
719         
720         Since selectors like this are very common this speeds up style matching
721         quite a bit (up to 50% on some sites according to Shark).
722
723         * css/CSSStyleSelector.cpp:
724         (WebCore::RuleData::hasFastCheckableSelector):
725         (WebCore::RuleData::hasMultipartSelector):
726         (WebCore::RuleData::hasTopSelectorMatchingHTMLBasedOnRuleHash):
727         (WebCore::CSSStyleSelector::matchRulesForList):
728         (WebCore::CSSStyleSelector::checkSelector):
729         (WebCore::selectorTagMatches):
730         (WebCore::isFastCheckableSelector):
731         (WebCore::CSSStyleSelector::SelectorChecker::fastCheckSelector):
732         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
733         (WebCore::isSelectorMatchingHTMLBasedOnRuleHash):
734         (WebCore::RuleData::RuleData):
735         * css/CSSStyleSelector.h:
736
737 2011-02-09  Simon Fraser  <simon.fraser@apple.com>
738
739         Reviewed by Dan Bernstein.
740
741         REGRESSION (r77101) box-shadow sometimes renders incorrectly
742         https://bugs.webkit.org/show_bug.cgi?id=54160
743         
744         Fix an issue when ShadowBlur had a cached image buffer
745         that was larger than that of the current shadow being drawn,
746         and the current shadow was partially clipped out.
747         
748         In that situation endShadowLayer() would clip to the image
749         buffer, using the size of the buffer (as it must), but failed
750         to take into account the fact that we'd only cleared and painted
751         into a smaller section of the buffer. So we need to additionally
752         constrain the clip to cover only the valid part of the buffer.
753
754         Test: fast/box-shadow/shadow-buffer-partial.html
755
756         * platform/graphics/ShadowBlur.cpp:
757         (WebCore::ShadowBlur::endShadowLayer):
758
759 2011-02-09  Beth Dakin  <bdakin@apple.com>
760
761         Reviewed by Maciej Stachowiak.
762
763         Fix for <rdar://problem/8977051> CrashTracer: 8 crashes 
764         in WebProcess at com.apple.WebCore: 
765         -[ScrollbarPartAnimation setCurrentProgress:] + 364
766
767         The ScrollbarPartAnimation must be sent by reference!
768         * platform/mac/ScrollAnimatorMac.mm:
769         (-[ScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
770
771 2011-02-09  Ryosuke Niwa  <rniwa@webkit.org>
772
773         Reviewed by Darin Adler.
774
775         REGRESSION(r76107): Crash in VisibleSelection::toNormalizedRange
776         https://bugs.webkit.org/show_bug.cgi?id=54053
777
778         The bug was caused by RenderBlock::positionForPoint's improperly returning a shadow node inside
779         RenderFileUploadControl for hit testing and VisibleSelection::toNormalizedRange's always assuming
780         the position variable "s" is not null.
781
782         Fixed the bug by always returning a null position from RenderFileUploadControl::positionForPoint,
783         and also exiting early when either "s" or "e" is null in VisibleSelection::toNormalizedRange.
784
785         Test: fast/forms/file-input-hit-test.html
786
787         * editing/VisibleSelection.cpp:
788         (WebCore::VisibleSelection::toNormalizedRange):
789         * rendering/RenderFileUploadControl.cpp:
790         (WebCore::RenderFileUploadControl::positionForPoint):
791         * rendering/RenderFileUploadControl.h:
792
793 2011-02-09  Sam Weinig  <sam@webkit.org>
794
795         Reviewed by Beth Dakin.
796
797         Overlay scrollbars crash used with a RenderListBox.
798
799         * rendering/RenderListBox.cpp:
800         (WebCore::RenderListBox::layout):
801         (WebCore::RenderListBox::contentsSize):
802         (WebCore::RenderListBox::currentMousePosition):
803         (WebCore::RenderListBox::setHasVerticalScrollbar):
804         * rendering/RenderListBox.h:
805         Implement enough of the ScrollableArea interface to get things generally
806         working.
807
808 2011-02-09  Beth Dakin  <bdakin@apple.com>
809
810         Reviewed by Simon Fraser.
811
812         Fix for <rdar://problem/8966868> ScrollbarPainterDelegate 
813         must return a layer if layer-backed to avoid crashing
814
815         New virtual function scrollbarWillRenderIntoCompositingLayer()
816         on ScrollableArea.
817         * page/FrameView.h:
818         * platform/ScrollableArea.h:
819         (WebCore::ScrollableArea::scrollbarWillRenderIntoCompositingLayer):
820         * rendering/RenderLayer.h:
821         (WebCore::RenderLayer::scrollbarWillRenderIntoCompositingLayer):
822         * rendering/RenderListBox.cpp:
823         (WebCore::RenderListBox::scrollbarWillRenderIntoCompositingLayer):
824         * rendering/RenderListBox.h:
825
826         Clean up unnecessary method declarations and call 
827         scrollbarWillRenderIntoCompositingLayer() to deterine if 
828         we need to return a layer.
829         * platform/mac/ScrollAnimatorMac.mm:
830         (-[ScrollbarPainterDelegate layer]):
831
832 2011-02-09  Yael Aharon  <yael.aharon@nokia.com>
833
834         Reviewed by Darin Adler.
835
836         Replace static_cast<HTMLElement*> with toHTMLElement
837         https://bugs.webkit.org/show_bug.cgi?id=54117
838
839         No new tests since no new functionality was introduced.
840
841         * accessibility/AccessibilityListBox.cpp:
842         (WebCore::AccessibilityListBox::addChildren):
843         * accessibility/AccessibilityMenuListPopup.cpp:
844         (WebCore::AccessibilityMenuListPopup::addChildren):
845         * accessibility/AccessibilityRenderObject.cpp:
846         (WebCore::accessibleNameForNode):
847         (WebCore::AccessibilityRenderObject::accessibilityDescription):
848         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
849         (webkit_accessible_get_name):
850         (webkit_accessible_get_description):
851         * bindings/gobject/WebKitDOMBinding.cpp:
852         (WebKit::createWrapper):
853         (WebKit::kit):
854         * bindings/js/JSElementCustom.cpp:
855         (WebCore::toJSNewlyCreated):
856         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
857         (WebCore::JSHTMLFrameSetElement::nameGetter):
858         * bindings/js/JSNodeCustom.cpp:
859         (WebCore::createWrapperInline):
860         * bindings/v8/custom/V8ElementCustom.cpp:
861         (WebCore::toV8):
862         * dom/Document.cpp:
863         (WebCore::Document::body):
864         * dom/Element.cpp:
865         (WebCore::Element::deprecatedCreateContextualFragment):
866         * dom/Range.cpp:
867         (WebCore::Range::createContextualFragment):
868         * editing/ApplyStyleCommand.cpp:
869         (WebCore::ApplyStyleCommand::applyBlockStyle):
870         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
871         (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
872         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
873         (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle):
874         (WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle):
875         (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
876         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode):
877         (WebCore::ApplyStyleCommand::removeInlineStyle):
878         (WebCore::ApplyStyleCommand::shouldSplitTextElement):
879         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
880         * editing/DeleteButtonController.cpp:
881         (WebCore::enclosingDeletableElement):
882         (WebCore::DeleteButtonController::show):
883         * editing/Editor.cpp:
884         (WebCore::Editor::setBaseWritingDirection):
885         * editing/InsertListCommand.cpp:
886         (WebCore::InsertListCommand::mergeWithNeighboringLists):
887         * editing/ReplaceSelectionCommand.cpp:
888         (WebCore::ReplaceSelectionCommand::negateStyleRulesThatAffectAppearance):
889         (WebCore::ReplaceSelectionCommand::handleStyleSpans):
890         (WebCore::ReplaceSelectionCommand::copyStyleToChildren):
891         * editing/SelectionController.cpp:
892         (WebCore::scanForForm):
893         (WebCore::SelectionController::currentForm):
894         * editing/htmlediting.cpp:
895         (WebCore::enclosingList):
896         (WebCore::enclosingListChild):
897         (WebCore::embeddedSublist):
898         (WebCore::appendedSublist):
899         * editing/markup.cpp:
900         (WebCore::StyledMarkupAccumulator::appendElement):
901         * html/HTMLCollection.cpp:
902         (WebCore::HTMLCollection::checkForNameMatch):
903         (WebCore::HTMLCollection::updateNameCache):
904         * html/HTMLElement.cpp:
905         (WebCore::HTMLElement::setOuterHTML):
906         (WebCore::HTMLElement::shadowAncestorOwnerForm):
907         * html/HTMLFormElement.cpp:
908         (WebCore::HTMLFormElement::formElementIndex):
909         * html/HTMLSelectElement.cpp:
910         (WebCore::HTMLSelectElement::setOption):
911         (WebCore::HTMLSelectElement::setLength):
912         * inspector/InspectorDOMAgent.cpp:
913         (WebCore::InspectorDOMAgent::getOuterHTML):
914         (WebCore::InspectorDOMAgent::setOuterHTML):
915         * page/EventHandler.cpp:
916         (WebCore::EventHandler::handleMouseMoveEvent):
917         * rendering/RenderMeter.cpp:
918         (WebCore::RenderMeter::createPart):
919         * rendering/RenderTextControl.cpp:
920         (WebCore::RenderTextControl::createSubtreeIfNeeded):
921         * rendering/RenderTextControlSingleLine.cpp:
922         (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
923
924 2011-02-09  Mike Reed  <reed@google.com>
925
926         Reviewed by Kenneth Russell.
927
928         Use Skia's device->readPixels() when its bitmap claims to have no pixels, as this
929         handles the case when the device is backed by the GPU.
930         Patch developed by bsalomon@google.com
931
932         No new tests. Existing canvas tests suffice
933         e.g. LayoutTests/canvas/philip/... 
934
935         * platform/graphics/skia/ImageBufferSkia.cpp:
936         (WebCore::getImageData):
937         (WebCore::ImageBuffer::getUnmultipliedImageData):
938         (WebCore::ImageBuffer::getPremultipliedImageData):
939         (WebCore::putImageData):
940         (WebCore::ImageBuffer::putUnmultipliedImageData):
941         (WebCore::ImageBuffer::putPremultipliedImageData):
942
943 2011-02-09  Adam Barth  <abarth@webkit.org>
944
945         Reviewed by Eric Seidel.
946
947         document.close shouldn't affect non-script-created parsers
948         https://bugs.webkit.org/show_bug.cgi?id=53689
949
950         Tests: fast/frames/document-write-in-iframe-onload-3.html
951                fast/parser/iframe-onload-document-close-with-external-script-2.html
952                fast/parser/iframe-onload-document-close-with-external-script-3.html
953                fast/parser/iframe-onload-document-close-with-external-script.html
954                fast/parser/setTimeout-open.html
955
956         Move our implementation of document.close closer to the spec by
957         introducing the notion of a script-created parser.  This area of our
958         code is somewhat hairy.  It might take a few more iterations before we
959         fully come up to spec.
960
961         * dom/Document.cpp:
962         (WebCore::Document::setContent):
963         (WebCore::Document::open):
964         (WebCore::Document::cancelParsing):
965         (WebCore::Document::close):
966             - Over time, this method should converge to the spec.
967         (WebCore::Document::explicitClose):
968             - I'm not in love with this name.  Somehow we want to differentiate
969               between Document closing itself and the document.close DOM
970               method.
971         (WebCore::Document::removePendingSheet):
972         * dom/Document.h:
973         * dom/ScriptableDocumentParser.cpp:
974         (WebCore::ScriptableDocumentParser::ScriptableDocumentParser):
975         * dom/ScriptableDocumentParser.h:
976         (WebCore::ScriptableDocumentParser::setWasCreatedByScript):
977         (WebCore::ScriptableDocumentParser::wasCreatedByScript):
978             - General nonsense to keep track of whether the parser was created
979               by script.
980         * html/parser/HTMLDocumentParser.cpp:
981         (WebCore::HTMLDocumentParser::hasInsertionPoint):
982             - I'm not sure whether this part of the change is 100% correct.  I
983               think our notion of the EOF character might be subtly different
984               from the notion in the spec.
985         * html/parser/HTMLInputStream.h:
986         (WebCore::HTMLInputStream::hasInsertionPoint):
987             - Remove FIXME because we're fixing that!
988
989 2011-02-09  Abhishek Arya  <inferno@chromium.org>
990
991         Reviewed by James Robinson.
992
993         [Chromium] Issue 72387: Integer bounds crash in LayerTilerChromium::resizeLayer
994         https://bugs.webkit.org/show_bug.cgi?id=54132
995  
996         * platform/graphics/chromium/LayerTilerChromium.cpp:
997         (WebCore::LayerTilerChromium::resizeLayer):
998
999 2011-02-09  Xiyuan Xia  <xiyuan@chromium.org>
1000
1001         Reviewed by Tony Chang.
1002
1003         [Chromium] Use #f7f7f7 for select popup background on chromium/linux
1004         https://bugs.webkit.org/show_bug.cgi?id=54115
1005
1006         No new tests since no behavior change.
1007
1008         * css/themeChromiumLinux.css:
1009         (select[size="1"] option):
1010
1011 2011-02-09  Adam Barth  <abarth@webkit.org>
1012
1013         Reviewed by Eric Seidel.
1014
1015         REGRESSION(HTML 5): HTMLDocumentParser does not report html parse errors to the console
1016         https://bugs.webkit.org/show_bug.cgi?id=41187
1017
1018         Wire up a basic HTML parse error message.  There's a lot of room for
1019         improvement in this area, but this is a start.
1020
1021         No tests!  See https://bugs.webkit.org/show_bug.cgi?id=54134
1022
1023         * html/parser/HTMLDocumentParser.h:
1024         * html/parser/HTMLTreeBuilder.cpp:
1025         (WebCore::HTMLTreeBuilder::parseError):
1026         * html/parser/HTMLTreeBuilder.h:
1027
1028 2011-02-09  Naoki Takano  <takano.naoki@gmail.com>
1029
1030         Reviewed by Kenneth Russell.
1031
1032         [Chromium] Issue 58536: Fix Layout Test canvas/philip/tests/2d.imageData.put.alpha.html with --accelerated-2d-canvas.
1033         https://bugs.webkit.org/show_bug.cgi?id=53757
1034
1035           This fix is for 2d.imageData.put.alpha.html with --accelerated-2d-canvas. No new tests.
1036
1037         * platform/graphics/skia/ImageBufferSkia.cpp:
1038         (WebCore::ImageBuffer::putUnmultipliedImageData): needs to call syncSoftwareCanvas() to sync between hardware and software.
1039         (WebCore::ImageBuffer::putPremultipliedImageData): needs to call syncSoftwareCanvas() to sync between hardware and software.
1040
1041
1042 2011-02-09  Chris Rogers  <crogers@google.com>
1043
1044         Reviewed by Kenneth Russell.
1045
1046         Fix scaling and thread safety of FFTFrameFFTW
1047         https://bugs.webkit.org/show_bug.cgi?id=54045
1048
1049         No new tests since audio API is not yet implemented.
1050
1051         * platform/audio/FFTFrame.h:
1052         * platform/audio/fftw/FFTFrameFFTW.cpp:
1053         (WebCore::FFTFrame::FFTFrame):
1054         (WebCore::FFTFrame::doFFT):
1055         (WebCore::FFTFrame::doInverseFFT):
1056         (WebCore::FFTFrame::initialize):
1057         (WebCore::FFTFrame::cleanup):
1058         (WebCore::FFTFrame::realData):
1059         (WebCore::FFTFrame::imagData):
1060         (WebCore::FFTFrame::fftwPlanForSize):
1061         * platform/audio/mac/FFTFrameMac.cpp:
1062         (WebCore::FFTFrame::initialize):
1063         * platform/audio/mkl/FFTFrameMKL.cpp:
1064         (WebCore::FFTFrame::initialize):
1065         * webaudio/AudioContext.cpp:
1066         (WebCore::AudioContext::AudioContext):
1067
1068 2011-02-09  Chris Fleizach  <cfleizach@apple.com>
1069
1070         Reviewed by Darin Adler.
1071
1072         AX: accessibilityShouldUseUniqueId doesn't need to be in the core AX object
1073         https://bugs.webkit.org/show_bug.cgi?id=54126
1074
1075         This is a Mac-only accessibility API concept and doesn't belong in the core AX object.
1076
1077         * accessibility/AccessibilityObject.h:
1078         (WebCore::AccessibilityObject::node):
1079         * accessibility/mac/AccessibilityObjectWrapper.mm:
1080         (-[AccessibilityObjectWrapper accessibilityShouldUseUniqueId]):
1081
1082 2011-02-09  Nebojsa Ciric  <cira@chromium.org>
1083
1084         Reviewed by Darin Fisher.
1085
1086         Implements Locale object of JavaScript internationalization API proposal, as an
1087         v8 extension. Extension code is hosted in v8 project (src/extensions/experimental/i18n-extension.{cc,h})
1088         and in this patch we just provide flags, tests and build rules for chromium port.
1089         https://bugs.webkit.org/show_bug.cgi?id=49414
1090
1091         Test: fast/js/i18n-bindings-locale.html
1092
1093         * WebCore.gyp/WebCore.gyp:
1094         * bindings/generic/RuntimeEnabledFeatures.cpp:
1095         (WebCore::RuntimeEnabledFeatures::experimentalI18NAPIEnabled):
1096         * bindings/generic/RuntimeEnabledFeatures.h:
1097         (WebCore::RuntimeEnabledFeatures::setExperimentalI18NAPIEnabled):
1098         * bindings/v8/V8DOMWindowShell.cpp:
1099         (WebCore::V8DOMWindowShell::createNewContext):
1100
1101 2011-02-08  Dimitri Glazkov  <dglazkov@chromium.org>
1102
1103         Reviewed by Darin Adler.
1104
1105         REGRESSION(r71934): Shadow DOM nodes leak via relatedTarget
1106         https://bugs.webkit.org/show_bug.cgi?id=52065
1107
1108         * dom/Node.cpp:
1109         (WebCore::pullOutOfShadow): Added a helper to move a node to the outermost
1110             boundary of shadow DOM.
1111         (WebCore::Node::dispatchMouseEvent): Changed to use pullOutOfShadow.
1112
1113 2011-02-09  Yael Aharon  <yael.aharon@nokia.com>
1114
1115         Reviewed by Darin Adler.
1116
1117         Add convenience method toHTMLElement(Node*)
1118         https://bugs.webkit.org/show_bug.cgi?id=54105
1119
1120         No new tests since no new functionality introduced.
1121
1122         * html/HTMLElement.h:
1123         (WebCore::toHTMLElement):
1124
1125 2011-02-09  Sam Weinig  <sam@webkit.org>
1126
1127         Reviewed by Dan Bernstein.
1128
1129         Fixed positioned elements at very top or bottom of page remain fixed but clip during rubber-banding
1130         <rdar://problem/7615997>
1131         https://bugs.webkit.org/show_bug.cgi?id=54054
1132
1133         Take the overhang into account when calculating position for elements with position: fixed.
1134
1135         * platform/ScrollView.cpp:
1136         (WebCore::ScrollView::scrollXForFixedPosition):
1137         (WebCore::ScrollView::scrollYForFixedPosition):
1138         (WebCore::ScrollView::scrollOffsetForFixedPosition):
1139         * platform/ScrollView.h:
1140         * rendering/RenderView.cpp:
1141         (WebCore::RenderView::mapLocalToContainer):
1142         (WebCore::RenderView::mapAbsoluteToLocalPoint):
1143         (WebCore::RenderView::computeRectForRepaint):
1144
1145 2011-02-09  Simon Fraser  <simon.fraser@apple.com>
1146
1147         Reviewed by Dirk Schulze.
1148
1149         Enhance ShadowBlur to tile inset box shadows
1150         https://bugs.webkit.org/show_bug.cgi?id=51567
1151         
1152         Add a tiling code path to ShadowBlur for rendering inset
1153         box-shadows.
1154
1155         Test: fast/box-shadow/inset-box-shadows.html
1156         
1157         * platform/graphics/ShadowBlur.cpp:
1158         (WebCore::computeSliceSizesFromRadii): Compute the slice sizes
1159         for the eight-piece shadow template.
1160         (WebCore::ShadowBlur::templateSize): Compute the size of the template,
1161         given the slice sizes.
1162         (WebCore::ShadowBlur::drawRectShadow): Bail early if layerRect is empty
1163         (which probably means we're clipped out). Call templateSize() and use
1164         the result to decide whether to tile.
1165         (WebCore::ShadowBlur::drawInsetShadow): New method for inset shadows.
1166         (WebCore::ShadowBlur::drawRectShadowWithoutTiling): Code moved.
1167         (WebCore::ShadowBlur::drawInsetShadowWithoutTiling): The non-tiling code
1168         path for inset shadows.
1169         (WebCore::ShadowBlur::drawInsetShadowWithTiling): Fill the shadow template
1170         buffer, paint the non-blurred area of the destination, and then call drawLayerPieces()
1171         to paint the eight-piece template image.
1172         (WebCore::ShadowBlur::drawRectShadowWithTiling): Refactored code, now
1173         shares the blurring code via blurAndColorShadowBuffer(), and the tiled template
1174         drawing via drawLayerPieces().
1175         (WebCore::ShadowBlur::drawLayerPieces): Draw an eight-piece image from the
1176         shadow template to the destination.
1177         (WebCore::ShadowBlur::blurAndColorShadowBuffer): Blur the pixels in the image
1178         buffer, and colorize them using the CompositeSourceIn operation.
1179         * platform/graphics/ShadowBlur.h:
1180
1181 2011-02-09  Jochen Eisinger  <jochen@chromium.org>
1182
1183         Reviewed by Adam Barth.
1184
1185         Disable script elements when a CSP header is present
1186         https://bugs.webkit.org/show_bug.cgi?id=53867
1187
1188         Tests: http/tests/security/contentSecurityPolicy/no-policy.html
1189                http/tests/security/contentSecurityPolicy/script-src-in-iframe.html
1190                http/tests/security/contentSecurityPolicy/script-src-none.html
1191                http/tests/security/contentSecurityPolicy/script-src-redirect.html
1192
1193         * html/parser/HTMLDocumentParser.cpp:
1194         (WebCore::HTMLDocumentParser::shouldLoadExternalScriptFromSrc):
1195         * html/parser/HTMLScriptRunner.cpp:
1196         (WebCore::HTMLScriptRunner::requestPendingScript):
1197         * loader/FrameLoader.cpp:
1198         (WebCore::FrameLoader::didBeginDocument):
1199         * loader/MainResourceLoader.cpp:
1200         (WebCore::MainResourceLoader::didReceiveResponse):
1201         * page/ContentSecurityPolicy.cpp:
1202         (WebCore::ContentSecurityPolicy::ContentSecurityPolicy):
1203         (WebCore::ContentSecurityPolicy::didReceiveHeader):
1204         (WebCore::ContentSecurityPolicy::canLoadExternalScriptFromSrc):
1205         * page/ContentSecurityPolicy.h:
1206
1207 2011-02-09  Patrick Gansterer  <paroga@webkit.org>
1208
1209         Unreviewed WinCE build fix for r78047.
1210
1211         ContextMenu.cpp and ContextMenuItem.cpp have a USE(CROSS_PLATFORM_CONTEXT_MENUS),
1212         so they shouldn't cause problems with correct preprocessor defines.
1213
1214         * CMakeLists.txt:
1215
1216 2011-02-09  Ilya Tikhonovsky  <loislo@chromium.org>
1217
1218         Reviewed by Pavel Feldman.
1219
1220         Web Inspector: InspectorAgent should know nothing about InspectorController instance.
1221
1222         https://bugs.webkit.org/show_bug.cgi?id=54100
1223
1224         * inspector/InspectorAgent.cpp:
1225         (WebCore::InspectorAgent::InspectorAgent):
1226         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
1227         (WebCore::InspectorAgent::disconnectFrontend):
1228         * inspector/InspectorAgent.h:
1229         * inspector/InspectorController.cpp:
1230         (WebCore::InspectorController::InspectorController):
1231         (WebCore::InspectorController::disconnectFrontend):
1232         (WebCore::InspectorController::restoreInspectorStateFromCookie):
1233
1234 2011-02-09  Pavel Podivilov  <podivilov@chromium.org>
1235
1236         Reviewed by Pavel Feldman.
1237
1238         Web Inspector: source frame scroll position is not restored.
1239         https://bugs.webkit.org/show_bug.cgi?id=54101
1240
1241         * inspector/front-end/ScriptsPanel.js:
1242         (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
1243         * inspector/front-end/SourceFrame.js:
1244         (WebInspector.SourceFrame.prototype.show):
1245         (WebInspector.SourceFrame.prototype.hide):
1246         (WebInspector.SourceFrame.prototype.get scrollTop):
1247         (WebInspector.SourceFrame.prototype.set scrollTop):
1248         * inspector/front-end/TextViewer.js:
1249         (WebInspector.TextViewer.prototype.get scrollTop):
1250         (WebInspector.TextViewer.prototype.set scrollTop):
1251         (WebInspector.TextViewer.prototype.get scrollLeft):
1252         (WebInspector.TextViewer.prototype.set scrollLeft):
1253
1254 2011-02-09  Pavel Feldman  <pfeldman@chromium.org>
1255
1256         Reviewed by Yury Semikhatsky.
1257
1258         Web Inspector: follow up on InspectorAgent split -
1259         removing unnecessary methods from InspectorController.
1260         https://bugs.webkit.org/show_bug.cgi?id=54093
1261
1262         * WebCore.exp.in:
1263         * inspector/InspectorAgent.cpp:
1264         (WebCore::InspectorAgent::stopUserInitiatedProfiling):
1265         (WebCore::InspectorAgent::showAndEnableDebugger):
1266         (WebCore::InspectorAgent::enabled):
1267         (WebCore::InspectorAgent::showConsole):
1268         * inspector/InspectorAgent.h:
1269         * inspector/InspectorController.cpp:
1270         (WebCore::InspectorController::InspectorController):
1271         (WebCore::InspectorController::didClearWindowObjectInWorld):
1272         (WebCore::InspectorController::showConsole):
1273         (WebCore::InspectorController::enabled):
1274         (WebCore::InspectorController::inspectedPage):
1275         * inspector/InspectorController.h:
1276         * inspector/InspectorFrontendClientLocal.cpp:
1277
1278 2011-02-07  Chris Marrin  <cmarrin@apple.com>
1279
1280         Reviewed by Simon Fraser.
1281
1282         LayoutTests/animations/play-state.html has wrong behavior with accelerated compositing
1283         https://bugs.webkit.org/show_bug.cgi?id=53513
1284
1285         The PlatformCAAnimation::create() function which took a pointer to another
1286         PlatformCAAnimation was supposed to make a copy of that passed object.
1287         But it was doing completely the wrong thing on Mac and was leaking an object
1288         to boot. And the notion of copying an object using a static creation function
1289         is wrong in the first place. So I changed it to a member copy() function
1290         which would create a new PlatformCAAnimation which was a copy of 'this' and
1291         return it. I changed the implementation on both Mac and Win to match.
1292
1293         This problem was not caught by DRT, even there is a specific test for it.
1294         That test just verifies that the higher level logic is working 
1295         properly, which it is. There's no practical way to find out if the
1296         layer is currently animating. There is no logic which probes that
1297         deeply into the layer mechanics.
1298         
1299         * platform/graphics/ca/GraphicsLayerCA.cpp:
1300         * platform/graphics/ca/PlatformCAAnimation.h:
1301         * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
1302         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
1303
1304 2011-02-09  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
1305
1306         Unreviewed build fix.
1307
1308         [EFL] Remove double definition of ContextMenu.
1309         https://bugs.webkit.org/show_bug.cgi?id=50762
1310
1311         When building with SHARED_CORE enabled, the symbols of ContextMenu
1312         were both in webkit and webcore. This removes them from webcore and
1313         shall be put back once the CROSS_PLATFORM_CONTEXT_MENUS is implemented
1314         in EFL port.
1315
1316         No new tests because no new functionality.
1317
1318         * CMakeLists.txt:
1319
1320 2011-02-09  Adam Roben  <aroben@apple.com>
1321
1322         Windows Production build fix
1323
1324         * WebCore.vcproj/QTMovieWinCommon.vsprops: Link against
1325         WebKitSystemInterface$(WebKitConfigSuffix).lib, not just WebKitSystemInterface.lib, so we
1326         pick up the _debug variant when appropriate.
1327
1328 2011-02-09  Eric Seidel  <eric@webkit.org>
1329
1330         Reviewed by Adam Barth.
1331
1332         Hostnames should cannonicalize to lowercase (to match every other browser)
1333         https://bugs.webkit.org/show_bug.cgi?id=54084
1334
1335         * platform/KURL.cpp:
1336         (WebCore::KURL::parse):
1337
1338 2011-02-09  Peter Varga  <pvarga@webkit.org>
1339
1340
1341         Reviewed by Gavin Barraclough.
1342
1343         Replace PCRE with Yarr in WebCore
1344         https://bugs.webkit.org/show_bug.cgi?id=53496
1345
1346         No new tests needed.
1347
1348         * Android.jscbindings.mk:
1349         * CMakeLists.txt:
1350         * ForwardingHeaders/pcre/pcre.h: Removed.
1351         * ForwardingHeaders/yarr/Yarr.h: Added.
1352         * ForwardingHeaders/yarr/YarrInterpreter.h: Added.
1353         * ForwardingHeaders/yarr/YarrPattern.h: Added.
1354         * WebCore.gyp/WebCore.gyp:
1355         * WebCore.pro:
1356         * WebCore.vcproj/WebCore.vcproj:
1357         * WebCore.vcproj/copyForwardingHeaders.cmd:
1358         * platform/text/RegularExpression.cpp:
1359         (WebCore::RegularExpression::Private::create):
1360         (WebCore::RegularExpression::Private::Private):
1361         (WebCore::RegularExpression::Private::compile):
1362         (WebCore::RegularExpression::match):
1363
1364 2011-02-09  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1365
1366         Reviewed by Eric Seidel.
1367
1368         [EFL] Add dummy functions for HTML5 Video's control UI
1369         https://bugs.webkit.org/show_bug.cgi?id=53906
1370
1371         In WebKit EFL, there are no implementations for HTML5 control UI.
1372         First, dummy functions are added.
1373
1374         * platform/efl/RenderThemeEfl.cpp:
1375         (WebCore::RenderThemeEfl::extraMediaControlsStyleSheet):
1376         (WebCore::RenderThemeEfl::formatMediaControlsCurrentTime):
1377         (WebCore::RenderThemeEfl::paintMediaFullscreenButton):
1378         (WebCore::RenderThemeEfl::paintMediaMuteButton):
1379         (WebCore::RenderThemeEfl::paintMediaPlayButton):
1380         (WebCore::RenderThemeEfl::paintMediaSeekBackButton):
1381         (WebCore::RenderThemeEfl::paintMediaSeekForwardButton):
1382         (WebCore::RenderThemeEfl::paintMediaSliderTrack):
1383         (WebCore::RenderThemeEfl::paintMediaSliderThumb):
1384         (WebCore::RenderThemeEfl::paintMediaVolumeSliderContainer):
1385         (WebCore::RenderThemeEfl::paintMediaVolumeSliderTrack):
1386         (WebCore::RenderThemeEfl::paintMediaVolumeSliderThumb):
1387         (WebCore::RenderThemeEfl::paintMediaCurrentTime):
1388         * platform/efl/RenderThemeEfl.h:
1389
1390 2011-02-09  Eric Seidel  <eric@webkit.org>
1391
1392         Reviewed by Adam Barth.
1393
1394         Make WebKit's fragment cannonicalization match other browsers
1395         https://bugs.webkit.org/show_bug.cgi?id=53850
1396
1397         This doesn't make us match perfectly, but it brings us closer.
1398
1399         * platform/KURL.cpp:
1400         (WebCore::appendEscapingBadChars):
1401         (WebCore::escapeAndAppendFragment):
1402         (WebCore::KURL::parse):
1403
1404 2011-02-09  Hans Wennborg  <hans@chromium.org>
1405
1406         Reviewed by Jeremy Orlow.
1407
1408         IndexedDB: Cursors should skip deleted entries
1409         https://bugs.webkit.org/show_bug.cgi?id=53690
1410
1411         Add test to check that the cursor skips deleted entries.
1412
1413         Test: storage/indexeddb/cursor-skip-deleted.html
1414
1415         * storage/IDBCursorBackendImpl.cpp:
1416         (WebCore::IDBCursorBackendImpl::currentRowExists):
1417         (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
1418         * storage/IDBCursorBackendImpl.h:
1419
1420 2011-02-08  Pavel Podivilov  <podivilov@chromium.org>
1421
1422         Reviewed by Yury Semikhatsky.
1423
1424         Web Inspector: script formatter should not create a worker for each script.
1425         https://bugs.webkit.org/show_bug.cgi?id=54010
1426
1427         * inspector/front-end/ScriptFormatter.js:
1428         (WebInspector.ScriptFormatter):
1429         (WebInspector.ScriptFormatter.prototype._formatScript):
1430         (WebInspector.ScriptFormatter.prototype._handleMessage):
1431         (WebInspector.ScriptFormatter.prototype._handleError):
1432
1433 2011-02-08  Pavel Podivilov  <podivilov@chromium.org>
1434
1435         Reviewed by Pavel Feldman.
1436
1437         Web Inspector: sync uglifyjs parser files.
1438         https://bugs.webkit.org/show_bug.cgi?id=54003
1439
1440         * inspector/front-end/UglifyJS/parse-js.js:
1441         * inspector/front-end/UglifyJS/process.js:
1442
1443 2011-02-08  Ryosuke Niwa  <rniwa@webkit.org>
1444
1445         Reviewed by Darin Adler.
1446
1447         REGRESSION(71556,68059): queryCommandValue screws up background color at collapsed cursor
1448         https://bugs.webkit.org/show_bug.cgi?id=53196
1449
1450         The bug was caused by Editor::selectionComputedStyle's modifying typing style without making a copy,
1451         and its removing non-inheritable properties from the typing style. Fixed the bug by making a copy
1452         before making the modification and not removing non-inheritable properties.
1453
1454         Also fixed a bug in selectionStartCSSPropertyValue that it doesn't handle xx-small to -webkit-xxx-large
1455         by extracting a function from StyleChange::extractTextStyles and calling it in both extractTextStyles
1456         and selectionStartCSSPropertyValue.
1457
1458         Test: editing/style/query-typing-style.html
1459
1460         * editing/ApplyStyleCommand.cpp:
1461         (WebCore::legacyFontSizeFromCSSValue): Extracted from StyleChange::extractTextStyles.
1462         (WebCore::StyleChange::extractTextStyles): Calls legacyFontSizeFromCSSValue; this fixes the bug that
1463         CSS values from xx-small through -webkit-xxx-large are not accounted.
1464         * editing/ApplyStyleCommand.h:
1465         * editing/Editor.cpp:
1466         (WebCore::Editor::selectionStartCSSPropertyValue): Calls legacyFontSizeFromCSSValue.
1467         (WebCore::Editor::selectionComputedStyle): Makes a copy before modifying typing style.
1468         No longer calls removeNonEditingProperties on the copied typing style so that background-color property
1469         is included when merged into the style.
1470
1471 2011-02-08  Sam Weinig  <sam@webkit.org>
1472
1473         Reviewed by Maciej Stachowiak.
1474
1475         REGRESSION (r76831): Subframes are printed blank
1476         <rdar://problem/8945867>
1477
1478         * page/FrameView.cpp:
1479         (WebCore::FrameView::paintOverhangAreas):
1480         Don't paint overhangs when printing.
1481
1482 2011-02-07  Jeremy Orlow  <jorlow@chromium.org>
1483
1484         Reviewed by Nate Chapin.
1485
1486         Events should propagate through IDBDatabase (for IDBRequest and IDBTransaction)
1487         https://bugs.webkit.org/show_bug.cgi?id=53975
1488
1489         The third change in the series of overhauling IndexedDB's event model to match
1490         the spec (at least the version in our heads and bugs).
1491
1492         Test: storage/indexeddb/transaction-event-propagation.html
1493
1494         * bindings/v8/V8DOMWrapper.cpp:
1495         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1496         * dom/Event.cpp:
1497         (WebCore::Event::isIDBAbortEvent):
1498         (WebCore::Event::isIDBCompleteEvent):
1499         * dom/Event.h:
1500         * dom/EventTarget.cpp:
1501         (WebCore::EventTarget::toIDBDatabase):
1502         * dom/EventTarget.h:
1503         * storage/IDBDatabase.cpp:
1504         (WebCore::IDBDatabase::create):
1505         (WebCore::IDBDatabase::IDBDatabase):
1506         (WebCore::IDBDatabase::scriptExecutionContext):
1507         (WebCore::IDBDatabase::eventTargetData):
1508         (WebCore::IDBDatabase::ensureEventTargetData):
1509         * storage/IDBDatabase.h:
1510         (WebCore::IDBDatabase::toIDBDatabase):
1511         (WebCore::IDBDatabase::refEventTarget):
1512         (WebCore::IDBDatabase::derefEventTarget):
1513         * storage/IDBDatabase.idl:
1514         * storage/IDBRequest.cpp:
1515         (WebCore::IDBRequest::onSuccess):
1516         (WebCore::IDBRequest::dispatchEvent):
1517         * storage/IDBTransaction.cpp:
1518         (WebCore::IDBTransaction::backend):
1519         (WebCore::IDBTransaction::db):
1520         (WebCore::IDBTransaction::objectStore):
1521         (WebCore::IDBTransaction::scriptExecutionContext):
1522         (WebCore::IDBTransaction::dispatchEvent):
1523         (WebCore::IDBTransaction::enqueueEvent):
1524         * storage/IDBTransaction.h:
1525         (WebCore::IDBTransaction::dispatchEvent):
1526
1527 2011-02-08  Kenneth Russell  <kbr@google.com>
1528
1529         Reviewed by James Robinson.
1530
1531         Add cache for GPU-accelerated path processing results
1532         https://bugs.webkit.org/show_bug.cgi?id=45519
1533
1534         Adding a cache which holds the results of processing a path into
1535         interior and exterior triangle meshes, according to the path
1536         rendering algorithm from GPU Gems 3. No tests yet; will be tested
1537         in conjunction with later code.
1538
1539         * platform/graphics/gpu/LoopBlinnPathCache.cpp: Added.
1540         (WebCore::LoopBlinnPathCache::LoopBlinnPathCache):
1541         (WebCore::LoopBlinnPathCache::~LoopBlinnPathCache):
1542         (WebCore::LoopBlinnPathCache::addVertex):
1543         (WebCore::LoopBlinnPathCache::clear):
1544         (WebCore::LoopBlinnPathCache::addInteriorVertex):
1545         (WebCore::LoopBlinnPathCache::numberOfInteriorEdgeVertices):
1546         (WebCore::LoopBlinnPathCache::interiorEdgeVertices):
1547         (WebCore::LoopBlinnPathCache::addInteriorEdgeVertex):
1548         * platform/graphics/gpu/LoopBlinnPathCache.h: Added.
1549         (WebCore::LoopBlinnPathCache::numberOfVertices):
1550         (WebCore::LoopBlinnPathCache::vertices):
1551         (WebCore::LoopBlinnPathCache::texcoords):
1552         (WebCore::LoopBlinnPathCache::numberOfInteriorVertices):
1553         (WebCore::LoopBlinnPathCache::interiorVertices):
1554
1555 2011-02-08  Zhenyao Mo  <zmo@google.com>
1556
1557         Reviewed by Kenneth Russell.
1558
1559         Rename GraphicsContext3D::WebGLEnumType
1560         https://bugs.webkit.org/show_bug.cgi?id=45708
1561
1562         * html/canvas/WebGLProgram.cpp:
1563         (WebCore::WebGLProgram::getAttachedShader):
1564         * html/canvas/WebGLProgram.h:
1565         * platform/graphics/GraphicsContext3D.h:
1566
1567 2011-02-08  Sheriff Bot  <webkit.review.bot@gmail.com>
1568
1569         Unreviewed, rolling out r77980.
1570         http://trac.webkit.org/changeset/77980
1571         https://bugs.webkit.org/show_bug.cgi?id=54043
1572
1573         "Crashes on Windows and Linux..." (Requested by leviw on
1574         #webkit).
1575
1576         * WebCore.exp.in:
1577         * accessibility/AXObjectCache.cpp:
1578         (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
1579         * accessibility/AccessibilityObject.cpp:
1580         (WebCore::startOfStyleRange):
1581         (WebCore::endOfStyleRange):
1582         * accessibility/AccessibilityRenderObject.cpp:
1583         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
1584         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1585         (objectAndOffsetUnignored):
1586         * dom/Position.cpp:
1587         (WebCore::Position::upstream):
1588         (WebCore::Position::downstream):
1589         * dom/Range.cpp:
1590         (WebCore::Range::editingStartPosition):
1591         * editing/Editor.cpp:
1592         (WebCore::Editor::canDeleteRange):
1593         * editing/ReplaceSelectionCommand.cpp:
1594         (WebCore::ReplaceSelectionCommand::doApply):
1595         * editing/SelectionController.cpp:
1596         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
1597         (WebCore::SelectionController::setSelectedRange):
1598         * editing/TextIterator.cpp:
1599         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
1600         * editing/TypingCommand.cpp:
1601         (WebCore::TypingCommand::deleteKeyPressed):
1602         * editing/VisiblePosition.cpp:
1603         (WebCore::VisiblePosition::VisiblePosition):
1604         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
1605         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
1606         (WebCore::VisiblePosition::canonicalPosition):
1607         (WebCore::VisiblePosition::characterAfter):
1608         (WebCore::VisiblePosition::localCaretRect):
1609         (WebCore::makeRange):
1610         (WebCore::startVisiblePosition):
1611         (WebCore::endVisiblePosition):
1612         (WebCore::setStart):
1613         (WebCore::setEnd):
1614         (WebCore::isFirstVisiblePositionInNode):
1615         (WebCore::isLastVisiblePositionInNode):
1616         * editing/VisiblePosition.h:
1617         * editing/htmlediting.cpp:
1618         (WebCore::firstInSpecialElement):
1619         (WebCore::lastInSpecialElement):
1620         (WebCore::visiblePositionBeforeNode):
1621         (WebCore::visiblePositionAfterNode):
1622         * editing/visible_units.cpp:
1623         (WebCore::startPositionForLine):
1624         (WebCore::endPositionForLine):
1625         (WebCore::previousLinePosition):
1626         (WebCore::nextLinePosition):
1627         (WebCore::startOfParagraph):
1628         (WebCore::endOfParagraph):
1629         (WebCore::endOfBlock):
1630         (WebCore::startOfDocument):
1631         (WebCore::endOfDocument):
1632         (WebCore::logicalStartPositionForLine):
1633         (WebCore::logicalEndPositionForLine):
1634         * page/DOMSelection.cpp:
1635         (WebCore::DOMSelection::collapse):
1636         (WebCore::DOMSelection::setBaseAndExtent):
1637         (WebCore::DOMSelection::setPosition):
1638         (WebCore::DOMSelection::extend):
1639         * page/EventHandler.cpp:
1640         (WebCore::EventHandler::handleMousePressEventSingleClick):
1641         * rendering/RenderObject.cpp:
1642         (WebCore::RenderObject::createVisiblePosition):
1643         * rendering/RenderTextControl.cpp:
1644         (WebCore::RenderTextControl::visiblePositionForIndex):
1645         * svg/SVGTextContentElement.cpp:
1646         (WebCore::SVGTextContentElement::selectSubString):
1647
1648 2011-02-08  Jia Pu  <jpu@apple.com>
1649
1650         Reviewed by Darin Adler.
1651
1652         VisibleSelection::setWithoutValidation() should allow caret selection.
1653         https://bugs.webkit.org/show_bug.cgi?id=53943
1654
1655         Test: editing/undo/undo-paste-when-caret-is-not-in-range.html
1656
1657         * editing/VisibleSelection.cpp:
1658         (WebCore::VisibleSelection::setWithoutValidation):
1659
1660 2011-02-08  Martin Robinson  <mrobinson@igalia.com>
1661
1662         Reviewed by Xan Lopez.
1663
1664         [GTK] Remove the last remnants of the Mozilla theme drawing code
1665         https://bugs.webkit.org/show_bug.cgi?id=54035
1666
1667         Remove all Mozilla theme drawing code.
1668
1669         No new tests. This change only removes dead code.
1670
1671         * GNUmakefile.am: Remove Mozilla files from the source list.
1672         * platform/gtk/RenderThemeGtk.h: Remove Mozilla-theme-drawing-related methods
1673         and add m_colormap to hold the current colormap of the widgets.
1674         * platform/gtk/RenderThemeGtk2.cpp: Remove Mozilla code.
1675         (WebCore::RenderThemeGtk::platformInit): Ditto.
1676         (WebCore::RenderThemeGtk::~RenderThemeGtk): Ditto.
1677         (WebCore::RenderThemeGtk::gtkContainer): Ditto.
1678         * platform/gtk/ScrollbarThemeGtk2.cpp: Ditto.
1679         * platform/gtk/WidgetRenderingContext.cpp: Ditto.
1680         (WebCore::WidgetRenderingContext::WidgetRenderingContext): Ditto.
1681         * platform/gtk/WidgetRenderingContext.h: Ditto.
1682         * platform/gtk/gtk2drawing.c: Removed.
1683         * platform/gtk/gtkdrawing.h: Removed.
1684
1685 2011-02-08  Yael Aharon  <yael.aharon@nokia.com>
1686
1687         Reviewed by Antti Koivisto.
1688
1689         Crash when logging into gmail.com with frame flattening turned on.
1690         https://bugs.webkit.org/show_bug.cgi?id=52449
1691
1692         Frame flattening algorithm requires that layout always starts from the main frame, since layout of
1693         subframes impacts the layout of their parents. 
1694         There are places in the code that call view->layout() not on the main frame.
1695         Instead of changing all the callsites, I changed FrameView::layout()
1696         to force layout from the main frame if frame flattening is enabled.
1697         In addition, postLayoutTasks can trigger relayout, so make it use the timer even more.
1698         Move the call to SelectionController::updateAppearance() to performPostLayoutTasks(), 
1699         because calling the from layout() leads to a crash in pages that have a selection in an iframe.
1700
1701         Tests: fast/frames/flattening/iframe-flattening-crash.html
1702                fast/frames/flattening/iframe-flattening-selection-crash.html
1703
1704         * page/FrameView.cpp:
1705         (WebCore::FrameView::layout):
1706         (WebCore::FrameView::performPostLayoutTasks):
1707
1708 2011-02-08  Andy Estes  <aestes@apple.com>
1709
1710         Reviewed by Darin Adler.
1711
1712         <rdar://problem/8913952> REGRESSION (r76301): 'plaintext-only' must be
1713         a supported contentEditable mode.
1714         https://bugs.webkit.org/show_bug.cgi?id=54041
1715
1716         * html/HTMLElement.cpp:
1717         (WebCore::HTMLElement::setContentEditable): Setting the contentEditable
1718         attribute to 'plaintext-only' should not throw an exception.
1719
1720 2011-02-08  Dan Bernstein  <mitz@apple.com>
1721
1722         Reviewed by Simon Fraser.
1723
1724         RenderRubyRun::m_beingDestroyed is redundant
1725         https://bugs.webkit.org/show_bug.cgi?id=54042
1726
1727         * rendering/RenderRubyRun.cpp:
1728         (WebCore::RenderRubyRun::RenderRubyRun): Removed intialization of m_beingDestroyed.
1729         (WebCore::RenderRubyRun::removeChild): Use the base class beingDestroyed(). 
1730         * rendering/RenderRubyRun.h:
1731
1732 2011-02-08  Levi Weintraub  <leviw@chromium.org>
1733
1734         Reviewed by Ryosuke Niwa.
1735
1736         Stop instantiating legacy editing Positions in VisiblePosition
1737         https://bugs.webkit.org/show_bug.cgi?id=52919
1738
1739         Changing VisiblePosition completely away from legacy positions.
1740
1741         No new tests since this is functionaly equivalent.
1742
1743         * WebCore.exp.in: Removing the legacy VisiblePosition constructor and
1744         adding the PositionIsOffsetInAnchor symbol. If we must create VisiblePositions
1745         outside of WebCore, they should be parent anchored.
1746         * accessibility/AXObjectCache.cpp:
1747         (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
1748         * accessibility/AccessibilityObject.cpp:
1749         (WebCore::startOfStyleRange):
1750         (WebCore::endOfStyleRange):
1751         * accessibility/AccessibilityRenderObject.cpp:
1752         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
1753         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1754         (objectAndOffsetUnignored):
1755         * dom/Position.cpp:
1756         (WebCore::Position::upstream): Fixed to correctly respect PositionIsAfterAnchor
1757         (WebCore::Position::downstream): ditto
1758         * dom/Range.cpp:
1759         (WebCore::Range::editingStartPosition):
1760         * editing/Editor.cpp:
1761         (WebCore::Editor::canDeleteRange):
1762         * editing/ReplaceSelectionCommand.cpp:
1763         (WebCore::ReplaceSelectionCommand::doApply):
1764         * editing/SelectionController.cpp:
1765         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
1766         (WebCore::SelectionController::setSelectedRange):
1767         * editing/TextIterator.cpp:
1768         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
1769         * editing/TypingCommand.cpp:
1770         (WebCore::TypingCommand::deleteKeyPressed):
1771         * editing/VisiblePosition.cpp:
1772         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
1773         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
1774         (WebCore::VisiblePosition::canonicalPosition):
1775         (WebCore::VisiblePosition::characterAfter):
1776         (WebCore::VisiblePosition::localCaretRect):
1777         (WebCore::makeRange):
1778         (WebCore::startVisiblePosition):
1779         (WebCore::endVisiblePosition):
1780         (WebCore::setStart):
1781         (WebCore::setEnd):
1782         (WebCore::isFirstVisiblePositionInNode):
1783         (WebCore::isLastVisiblePositionInNode):
1784         * editing/VisiblePosition.h:
1785         (WebCore::VisiblePosition::VisiblePosition):
1786         * editing/htmlediting.cpp:
1787         (WebCore::firstInSpecialElement):
1788         (WebCore::lastInSpecialElement):
1789         (WebCore::visiblePositionBeforeNode):
1790         (WebCore::visiblePositionAfterNode):
1791         * editing/visible_units.cpp:
1792         (WebCore::startPositionForLine):
1793         (WebCore::endPositionForLine):
1794         (WebCore::previousLinePosition):
1795         (WebCore::nextLinePosition):
1796         (WebCore::startOfParagraph):
1797         (WebCore::endOfParagraph):
1798         (WebCore::endOfBlock):
1799         (WebCore::startOfDocument):
1800         (WebCore::endOfDocument):
1801         (WebCore::logicalStartPositionForLine):
1802         (WebCore::logicalEndPositionForLine):
1803         * page/DOMSelection.cpp:
1804         (WebCore::DOMSelection::collapse):
1805         (WebCore::DOMSelection::setBaseAndExtent):
1806         (WebCore::DOMSelection::setPosition):
1807         (WebCore::DOMSelection::extend):
1808         * page/EventHandler.cpp:
1809         (WebCore::EventHandler::handleMousePressEventSingleClick):
1810         * rendering/RenderObject.cpp:
1811         (WebCore::RenderObject::createVisiblePosition):
1812         * rendering/RenderTextControl.cpp:
1813         (WebCore::RenderTextControl::visiblePositionForIndex):
1814         * svg/SVGTextContentElement.cpp:
1815         (WebCore::SVGTextContentElement::selectSubString):
1816
1817 2011-02-08  Michael Saboff  <msaboff@apple.com>
1818
1819         JSC::Bindings m_rootObject->isValid() assert fails when running layout tests
1820         https://bugs.webkit.org/show_bug.cgi?id=53716
1821
1822         Changed ASSERT to be an if for the case where the RuntimeObject was
1823         GC'ed before RootObject::invalidate is called.  In that case there is 
1824         no need to remove the RuntimeObject from the RootObject.  The isValid()
1825         call will be false in this case, but the RuntimeObject has already
1826         been removed from the RootObject.  Added similar defensive code
1827         in RootObject::removeRuntimeObject().
1828
1829         * bridge/jsc/BridgeJSC.cpp:
1830         (JSC::Bindings::Instance::willDestroyRuntimeObject):
1831         * bridge/runtime_root.cpp:
1832         (JSC::Bindings::RootObject::removeRuntimeObject):
1833
1834 2011-02-08  Beth Dakin  <bdakin@apple.com>
1835
1836         Reviewed by Darin Adler.
1837
1838         Fix for <rdar://problem/8953365> CrashTracer: 14 
1839         crashes in WebProcess at com.apple.WebCore: 
1840         -[ScrollKnobAnimation setCurrentProgress:] + 258
1841
1842         This crash seems to happen when the animation is running
1843         and a window is closed. If the ScrollAnimator is destroyed,
1844         delegate calls for the animation can still run, so we have 
1845         to make sure we inform the delegates when the ScrollAnimator 
1846         is gone, and then we have to null-check it before we do 
1847         anything with it.
1848
1849         Remove scrollbarPainterDelegate() since it's not used anymore.
1850         * platform/mac/ScrollAnimatorMac.h:
1851         * platform/mac/ScrollAnimatorMac.mm:
1852         
1853         Add null-checks for _animator
1854         (-[ScrollbarPartAnimation setCurrentProgress:]):
1855         (-[ScrollbarPartAnimation scrollAnimatorDestroyed]):
1856         (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
1857         (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
1858         (-[ScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]):
1859         
1860         New function to inform the delegates that the ScrollAnimator
1861         is being destroyed.
1862         (-[ScrollbarPainterDelegate scrollAnimatorDestroyed]):
1863         (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
1864
1865 2011-02-08  Adam Barth  <abarth@webkit.org>
1866
1867         Reviewed by Eric Seidel.
1868
1869         Remove orphan code from old parser
1870         https://bugs.webkit.org/show_bug.cgi?id=53984
1871
1872         This code appears to be unused.
1873
1874         * html/HTMLParserErrorCodes.cpp:
1875         * html/HTMLParserErrorCodes.h:
1876         * html/HTMLParserQuirks.h:
1877         * loader/EmptyClients.h:
1878         * page/ChromeClient.h:
1879
1880 2011-02-08  Martin Robinson  <mrobinson@igalia.com>
1881
1882         Reviewed by Gustavo Noronha Silva.
1883
1884         [GTK] Move scrollbar rendering out of gtk2drawing.c
1885         https://bugs.webkit.org/show_bug.cgi?id=52836
1886
1887         Replace gtk2drawing.c scrollbar rendering with our own version. This
1888         is the last use of the Mozilla theme drawing code.
1889
1890         No new tests. This should not change the rendering of the default
1891         theme.
1892
1893         * platform/gtk/GtkVersioning.h: Add some more backported allocation setters.
1894         * platform/gtk/RenderThemeGtk.h: Add a getter for the scrollbar widgets.
1895         * platform/gtk/RenderThemeGtk2.cpp:  Initialize and add getters for scrollbar widgets.
1896         (WebCore::RenderThemeGtk::platformInit): Ditto.
1897         (WebCore::RenderThemeGtk::gtkHScrollbar): Ditto.
1898         (WebCore::RenderThemeGtk::gtkVScrollbar): Ditto.
1899         * platform/gtk/ScrollbarThemeGtk.cpp: 
1900         (WebCore::ScrollbarThemeGtk::paint): We only repaint the scrolled
1901         window background if we are repainting a button or the thumb. In that
1902         case also repaint the track rect.
1903         * platform/gtk/ScrollbarThemeGtk2.cpp: Port to WidgetRenderingContext.
1904         (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk): Ditto.
1905         (WebCore::ScrollbarThemeGtk::updateThemeProperties): Ditto.
1906         (WebCore::getWidgetForScrollbar): Ditto.
1907         (WebCore::ScrollbarThemeGtk::paintTrackBackground): Ditto.
1908         (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Ditto.
1909         (WebCore::ScrollbarThemeGtk::paintThumb): Ditto.
1910         (WebCore::ScrollbarThemeGtk::paintButton): Ditto.
1911         * platform/gtk/WidgetRenderingContext.cpp: Ditto.
1912         (WebCore::WidgetRenderingContext::gtkPaintBox): Added an option which
1913         also adjusts a widget allocation according to the paint rect. This is
1914         necessary to properly draw scrollbar buttons.
1915         * platform/gtk/WidgetRenderingContext.h: Ditto.
1916
1917 2011-02-08  Simon Fraser  <simon.fraser@apple.com>
1918
1919         Reviewed by Dan Bernstein.
1920
1921         Inset shadow with large offset renders incorrectly
1922         https://bugs.webkit.org/show_bug.cgi?id=53882
1923         
1924         Fix an issue with inset shadows, when the shadow offset
1925         was larger than the box size. In this case we'd fail to
1926         fill the box with the shadow color.
1927
1928         Test: fast/box-shadow/inset-shadow-large-offset.html
1929
1930         * rendering/RenderBoxModelObject.cpp:
1931         (WebCore::areaCastingShadowInHole): Return a rect that covers the area
1932         which contributes to the inset shadow.
1933         
1934         (WebCore::RenderBoxModelObject::paintBoxShadow): Use areaCastingShadowInHole()
1935         to compute the outerRect.
1936
1937 2011-02-08  Zhenyao Mo  <zmo@google.com>
1938
1939         Reviewed by Kenneth Russell.
1940
1941         drawElements should check if a buffer is bound to ELEMENT_ARRAY_BUFFER
1942         https://bugs.webkit.org/show_bug.cgi?id=54017
1943
1944         * html/canvas/WebGLRenderingContext.cpp:
1945         (WebCore::WebGLRenderingContext::drawElements):
1946
1947 2011-01-28  Dimitri Glazkov  <dglazkov@chromium.org>
1948
1949         Reviewed by Darin Adler.
1950
1951         Change the rest of HTMLMediaElement shadow DOM parts to use shadowPseudoId.
1952         https://bugs.webkit.org/show_bug.cgi?id=53190
1953
1954         This is the second part of refactoring the HTMLMediaElement to use new
1955         shadow DOM. The changes are mainly mechanical, except for needing to
1956         add a new method to RenderTheme, which indicates whether or not status
1957         display is being used by it. Previously, we relied on existence of a cached
1958         pseudo style.
1959
1960         Refactoring, covered by existing tests.
1961
1962         * css/CSSSelector.cpp:
1963         (WebCore::CSSSelector::pseudoId): Removed now-unused enum values.
1964         (WebCore::nameToPseudoTypeMap): Ditto.
1965         (WebCore::CSSSelector::extractPseudoType): Ditto.
1966         * css/CSSSelector.h: Ditto.
1967         * html/shadow/MediaControls.cpp:
1968         (WebCore::MediaControls::createPanel): Changed to use the newly-added MediaControlPanelElement.
1969         (WebCore::MediaControls::createCurrentTimeDisplay): Changed to use the newly-added
1970             MediaControlCurrentTimeDisplayElement.
1971         (WebCore::MediaControls::createTimeRemainingDisplay): Changed to use the newly-added
1972                 MediaControlTimeRemainingDisplayElement.
1973         * rendering/MediaControlElements.cpp:
1974         (WebCore::MediaControlShadowRootElement::updateStyle): Changed to use the
1975             standard style resolution.
1976         (WebCore::MediaControlShadowRootElement::shadowPseudoId): Added.
1977         (WebCore::MediaControlElement::MediaControlElement): Removed the switch statement
1978             that is no longer necessary.
1979         (WebCore::MediaControlElement::styleForElement): Changed to use the standard
1980             style resolution.
1981         (WebCore::MediaControlPanelElement::MediaControlPanelElement): Added.
1982         (WebCore::MediaControlPanelElement::create): Added.
1983         (WebCore::MediaControlPanelElement::displayType): Added.
1984         (WebCore::MediaControlPanelElement::shadowPseudoId): Added.
1985         (WebCore::MediaControlTimelineContainerElement::MediaControlTimelineContainerElement):
1986             Removed PseudoId constructor arg.
1987         (WebCore::MediaControlTimelineContainerElement::rendererIsNeeded):
1988             Changed to use the newly-plumbed usesMediaControlStatusDisplay helper.
1989         (WebCore::MediaControlTimelineContainerElement::displayType): Added.
1990         (WebCore::MediaControlTimelineContainerElement::shadowPseudoId): Added.
1991         (WebCore::MediaControlVolumeSliderContainerElement::MediaControlVolumeSliderContainerElement):
1992             Removed PseudoId constructor arg.
1993         (WebCore::MediaControlVolumeSliderContainerElement::displayType): Added.
1994         (WebCore::MediaControlVolumeSliderContainerElement::shadowPseudoId): Added.
1995         (WebCore::MediaControlStatusDisplayElement::MediaControlStatusDisplayElement):
1996             Removed PseudoId constructor arg.
1997         (WebCore::MediaControlStatusDisplayElement::rendererIsNeeded): Changed to
1998             use the newly-plumbed usesMediaControlStatusDisplay helper.
1999         (WebCore::MediaControlStatusDisplayElement::displayType): Added.
2000         (WebCore::MediaControlStatusDisplayElement::shadowPseudoId): Added.
2001         (WebCore::MediaControlTimeDisplayElement::MediaControlTimeDisplayElement):
2002             Removed PseudoId constructor arg.
2003         (WebCore::MediaControlTimeRemainingDisplayElement::create): Added.
2004         (WebCore::MediaControlTimeRemainingDisplayElement::MediaControlTimeRemainingDisplayElement): Added.
2005         (WebCore::MediaControlTimeRemainingDisplayElement::displayType): Added.
2006         (WebCore::MediaControlTimeRemainingDisplayElement::shadowPseudoId): Added.
2007         (WebCore::MediaControlCurrentTimeDisplayElement::create): Added.
2008         (WebCore::MediaControlCurrentTimeDisplayElement::MediaControlCurrentTimeDisplayElement): Added.
2009         (WebCore::MediaControlCurrentTimeDisplayElement::displayType): Added.
2010         (WebCore::MediaControlCurrentTimeDisplayElement::shadowPseudoId): Added.
2011         * rendering/MediaControlElements.h: Added/changed defs accordingly.
2012         * rendering/RenderTheme.h:
2013         (WebCore::RenderTheme::usesMediaControlStatusDisplay): Added.
2014         * rendering/RenderThemeMac.h: Added def.
2015         * rendering/RenderThemeMac.mm:
2016         (WebCore::RenderThemeMac::usesMediaControlStatusDisplay): Added.
2017         * rendering/style/RenderStyleConstants.h: Removed now-unused enum values.
2018
2019 2011-02-08  Xiaomei Ji  <xji@chromium.org>
2020
2021         Reviewed by Dan Bernstein.
2022
2023         Fix pop-up button text not rendered correctly according to its direction
2024         in <option>.
2025         https://bugs.webkit.org/show_bug.cgi?id=53642
2026  
2027         In adjustInnerStyle(), if m_innerBlock's direction or unicode-bidi 
2028         changes, set it needs layout.
2029
2030         Test: fast/text/international/pop-up-button-text-alignment-and-direction.html
2031
2032         * rendering/RenderMenuList.cpp:
2033         (WebCore::RenderMenuList::adjustInnerStyle):
2034
2035 2011-02-08  Ilya Tikhonovsky  <loislo@chromium.org>
2036
2037         Unreviewed build fix for Qt-minimal.
2038
2039         * inspector/InspectorInstrumentation.h:
2040         (WebCore::InspectorInstrumentation::hasFrontend):
2041
2042 2011-02-02  Ilya Tikhonovsky  <loislo@chromium.org>
2043
2044         Reviewed by Yury Semikhatsky.
2045
2046         Web Inspector: move InspectorController's methods from InspectorAgent to InspectorController.
2047
2048         https://bugs.webkit.org/show_bug.cgi?id=53169
2049
2050         All the Inspector API for WebCore has two parts.
2051         The first one is InspectorInstrumentation for WebCore.
2052         The second is InspectorController for WebKit.
2053         InspectorAgent was produced by renaming original InspectorController.
2054         This patch extracts WebKit related methods from InspectorAgent to InspectorController.
2055
2056         * WebCore.exp.in:
2057         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
2058         * html/HTMLDocument.cpp:
2059         (WebCore::HTMLDocument::createParser):
2060         * inspector/InspectorAgent.cpp:
2061         (WebCore::InspectorAgent::InspectorAgent):
2062         (WebCore::InspectorAgent::~InspectorAgent):
2063         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
2064         (WebCore::InspectorAgent::inspect):
2065         (WebCore::InspectorAgent::handleMousePress):
2066         (WebCore::InspectorAgent::didClearWindowObjectInWorld):
2067         (WebCore::InspectorAgent::setFrontend):
2068         (WebCore::InspectorAgent::disconnectFrontend):
2069         (WebCore::InspectorAgent::resourceAgent):
2070         (WebCore::InspectorAgent::createFrontendLifetimeAgents):
2071         (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
2072         (WebCore::InspectorAgent::populateScriptObjects):
2073         (WebCore::InspectorAgent::pushDataCollectedOffline):
2074         (WebCore::InspectorAgent::restoreProfiler):
2075         (WebCore::InspectorAgent::startTimelineProfiler):
2076         (WebCore::PostWorkerNotificationToFrontendTask::performTask):
2077         (WebCore::InspectorAgent::didOpenDatabase):
2078         (WebCore::InspectorAgent::didUseDOMStorage):
2079         (WebCore::InspectorAgent::showAndEnableDebugger):
2080         (WebCore::InspectorAgent::enableDebugger):
2081         (WebCore::InspectorAgent::enabled):
2082         * inspector/InspectorAgent.h:
2083         (WebCore::InspectorAgent::frontend):
2084         * inspector/InspectorController.cpp:
2085         (WebCore::InspectorController::InspectorController):
2086         (WebCore::InspectorController::~InspectorController):
2087         (WebCore::InspectorController::setInspectorFrontendClient):
2088         (WebCore::InspectorController::hasInspectorFrontendClient):
2089         (WebCore::InspectorController::didClearWindowObjectInWorld):
2090         (WebCore::InspectorController::startTimelineProfiler):
2091         (WebCore::InspectorController::stopTimelineProfiler):
2092         (WebCore::InspectorController::connectFrontend):
2093         (WebCore::InspectorController::disconnectFrontend):
2094         (WebCore::InspectorController::disconnectFrontendImpl):
2095         (WebCore::InspectorController::show):
2096         (WebCore::InspectorController::close):
2097         (WebCore::InspectorController::restoreInspectorStateFromCookie):
2098         (WebCore::InspectorController::evaluateForTestInFrontend):
2099         (WebCore::InspectorController::drawNodeHighlight):
2100         (WebCore::InspectorController::inspect):
2101         (WebCore::InspectorController::enabled):
2102         (WebCore::InspectorController::showPanel):
2103         (WebCore::InspectorController::frontendLoaded):
2104         (WebCore::InspectorController::timelineProfilerEnabled):
2105         (WebCore::InspectorController::enableProfiler):
2106         (WebCore::InspectorController::disableProfiler):
2107         (WebCore::InspectorController::profilerEnabled):
2108         (WebCore::InspectorController::debuggerEnabled):
2109         (WebCore::InspectorController::showAndEnableDebugger):
2110         (WebCore::InspectorController::disableDebugger):
2111         (WebCore::InspectorController::startUserInitiatedProfiling):
2112         (WebCore::InspectorController::stopUserInitiatedProfiling):
2113         (WebCore::InspectorController::isRecordingUserInitiatedProfile):
2114         (WebCore::InspectorController::setInspectorExtensionAPI):
2115         (WebCore::InspectorController::resume):
2116         (WebCore::InspectorController::hideHighlight):
2117         (WebCore::InspectorController::dispatchMessageFromFrontend):
2118         * inspector/InspectorController.h:
2119         (WebCore::InspectorController::inspectorClient):
2120         (WebCore::InspectorController::inspectedPage):
2121         (WebCore::InspectorController::hasFrontend):
2122         * inspector/InspectorFrontendClientLocal.cpp:
2123         (WebCore::InspectorFrontendClientLocal::sendMessageToBackend):
2124         * inspector/InspectorFrontendHost.cpp:
2125         (WebCore::InspectorFrontendHost::setExtensionAPI):
2126         * inspector/InspectorInstrumentation.cpp:
2127         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
2128         (WebCore::InspectorInstrumentation::profilerEnabledImpl):
2129         * inspector/InspectorInstrumentation.h:
2130         (WebCore::InspectorInstrumentation::hasFrontend):
2131         * loader/FrameLoader.cpp:
2132         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
2133
2134 2011-02-08  George Wright  <gwright@rim.com>
2135
2136         Reviewed by Adam Barth.
2137
2138         https://bugs.webkit.org/show_bug.cgi?id=53949
2139
2140         Ensure that we pack the colour byte order correctly for Skia using
2141         Skia's SkPackARGB32 function.
2142
2143         * platform/image-decoders/ImageDecoder.h:
2144         (WebCore::ImageFrame::setRGBA):
2145
2146 2011-02-08  George Wright  <gwright@rim.com>
2147
2148         Reviewed by Darin Adler.
2149
2150         https://bugs.webkit.org/show_bug.cgi?id=53951
2151
2152         Ensure we do not pass (-1, -1) sized rects to ImageBuffer but instead
2153         pass the full image dimensions.
2154
2155         * platform/graphics/GraphicsContext.cpp:
2156         (WebCore::GraphicsContext::drawImageBuffer):
2157
2158 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
2159
2160         Reviewed by Adam Roben.
2161
2162         [WIN] Add missing includes and forward declarations for DownloadBundle
2163         https://bugs.webkit.org/show_bug.cgi?id=53881
2164
2165         * platform/network/cf/DownloadBundle.h:
2166         * platform/network/win/DownloadBundleWin.cpp:
2167         (WebCore::DownloadBundle::appendResumeData):
2168
2169 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
2170
2171         Reviewed by Adam Roben.
2172
2173         [WIN] Add missing include in WKCAImageQueue
2174         https://bugs.webkit.org/show_bug.cgi?id=53890
2175
2176         * platform/graphics/win/WKCAImageQueue.cpp:
2177
2178 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
2179
2180         Reviewed by Adam Roben.
2181
2182         [WIN] Add missing includes and forward declarations for CFNetwork
2183         https://bugs.webkit.org/show_bug.cgi?id=53883
2184
2185         * platform/network/cf/DNSCFNet.cpp:
2186         * platform/network/cf/LoaderRunLoopCF.cpp:
2187         * platform/network/cf/LoaderRunLoopCF.h:
2188         * platform/network/cf/ProxyServerCFNet.cpp:
2189         * platform/network/cf/SocketStreamHandle.h:
2190         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2191
2192 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
2193
2194         Unreviewed WinCE build fix for r77870.
2195
2196         * platform/DragImage.cpp: Enable createDragImageForLink for WinCE.
2197
2198 2011-02-08  Pavel Feldman  <pfeldman@chromium.org>
2199
2200         Reviewed by Yury Semikhatsky.
2201
2202         Web Inspector: open network resource url in new tab upon double click.
2203         https://bugs.webkit.org/show_bug.cgi?id=53930
2204
2205         * inspector/front-end/NetworkPanel.js:
2206         (WebInspector.NetworkDataGridNode.prototype.createCells):
2207         (WebInspector.NetworkDataGridNode.prototype._openInNewTab):
2208
2209 2011-02-08  Yonathan Randolph  <yonathan@gmail.com>
2210
2211         Reviewed by Pavel Feldman.
2212
2213         Web Inspector: $x: any node should work in optional context parameter.
2214         https://bugs.webkit.org/show_bug.cgi?id=50138
2215
2216         * inspector/InjectedScriptSource.js:
2217
2218 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
2219
2220         Unreviewed WinCE build fix for r77870.
2221
2222         Remove the global namespace prefix from GlobalLock/GlobalUnlock.
2223
2224         * platform/win/ClipboardUtilitiesWin.cpp:
2225
2226 2011-02-08  Pavel Feldman  <pfeldman@chromium.org>
2227
2228         Not reviewed: re-apply r77924.
2229
2230         Test: inspector/console-api-on-call-frame.html
2231
2232         * inspector/InjectedScriptSource.js:
2233         * inspector/front-end/ExtensionServer.js:
2234         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
2235
2236 2011-02-08  Andreas Kling  <kling@webkit.org>
2237
2238         Reviewed by Tor Arne Vestbø.
2239
2240         REGRESSION(r77312): Unbreak TiledBackingStore.
2241
2242         Due to an off-by-one error, we were no longer rendering the
2243         rightmost column and bottom row of tiles.
2244
2245         Covered by tst_QGraphicsWebView::widgetsRenderingThroughCache().
2246
2247         * platform/graphics/TiledBackingStore.cpp:
2248         (WebCore::TiledBackingStore::invalidate):
2249         (WebCore::TiledBackingStore::updateTileBuffers):
2250         (WebCore::TiledBackingStore::paint):
2251         (WebCore::TiledBackingStore::createTiles):
2252
2253 2011-02-08  Sheriff Bot  <webkit.review.bot@gmail.com>
2254
2255         Unreviewed, rolling out r77924.
2256         http://trac.webkit.org/changeset/77924
2257         https://bugs.webkit.org/show_bug.cgi?id=53997
2258
2259         Breaks inspector tests. (Requested by pfeldman on #webkit).
2260
2261         * inspector/InjectedScriptSource.js:
2262         (.):
2263         ():
2264
2265 2011-02-08  Andrey Kosyakov  <caseq@chromium.org>
2266
2267         Reviewed by Pavel Feldman.
2268
2269         Web Inspector: [refacotring] merge InspectorAgent::willSendRequest() into InspectorResourceAgent
2270         https://bugs.webkit.org/show_bug.cgi?id=53789
2271          - perform UserAgent override via InspectorInstrumentation
2272          - move adding extra request headers to InspectorResourceAgent
2273          - simplified things in InspectorState
2274
2275         * inspector/Inspector.idl:
2276         * inspector/InspectorAgent.cpp:
2277         (WebCore::InspectorAgent::disconnectFrontend):
2278         (WebCore::InspectorAgent::applyUserAgentOverride):
2279         * inspector/InspectorAgent.h:
2280         * inspector/InspectorInstrumentation.cpp:
2281         (WebCore::InspectorInstrumentation::applyUserAgentOverrideImpl):
2282         (WebCore::InspectorInstrumentation::willSendRequestImpl):
2283         * inspector/InspectorInstrumentation.h:
2284         (WebCore::InspectorInstrumentation::applyUserAgentOverride):
2285         * inspector/InspectorResourceAgent.cpp:
2286         (WebCore::InspectorResourceAgent::setExtraHeaders):
2287         (WebCore::InspectorResourceAgent::willSendRequest):
2288         * inspector/InspectorResourceAgent.h:
2289         * inspector/InspectorState.cpp:
2290         (WebCore::InspectorState::InspectorState):
2291         (WebCore::InspectorState::restoreFromInspectorCookie):
2292         (WebCore::InspectorState::updateCookie):
2293         (WebCore::InspectorState::setValue):
2294         (WebCore::InspectorState::getBoolean):
2295         (WebCore::InspectorState::getString):
2296         (WebCore::InspectorState::getLong):
2297         (WebCore::InspectorState::getObject):
2298         * inspector/InspectorState.h:
2299         (WebCore::InspectorState::setObject):
2300         * loader/FrameLoader.cpp:
2301         (WebCore::FrameLoader::userAgent):
2302
2303 2011-02-08  Pavel Feldman  <pfeldman@chromium.org>
2304
2305         Reviewed by Yury Semikhatsky.
2306
2307         Web Inspector: do not hide scope variables with command line api.
2308         https://bugs.webkit.org/show_bug.cgi?id=53497
2309
2310         Test: inspector/console-api-on-call-frame.html
2311
2312         * inspector/InjectedScriptSource.js:
2313
2314 2011-02-08  Pavel Feldman  <pfeldman@chromium.org>
2315
2316         Reviewed by Yury Semikhatsky.
2317
2318         Web Inspector: ignore cache upon reload via Ctrl(Cmd)+Shift+R.
2319         https://bugs.webkit.org/show_bug.cgi?id=53914
2320
2321         * inspector/Inspector.idl:
2322         * inspector/InspectorAgent.cpp:
2323         (WebCore::InspectorAgent::reloadPage):
2324         * inspector/InspectorAgent.h:
2325         * inspector/front-end/AuditsPanel.js:
2326         (WebInspector.AuditsPanel.prototype._reloadResources):
2327         * inspector/front-end/ExtensionServer.js:
2328         (WebInspector.ExtensionServer.prototype._onReload):
2329         * inspector/front-end/inspector.js:
2330         (WebInspector.documentKeyDown):
2331
2332 2011-02-08  Antti Koivisto  <antti@apple.com>
2333
2334         Reviewed by Cameron Zwarich.
2335
2336         Skip over sibling selectors when collecting descendant selector hashes 
2337         https://bugs.webkit.org/show_bug.cgi?id=53987
2338         
2339         Skip instead of bailing out. This will allow optimizing some sibling selector cases.
2340
2341         * css/CSSStyleSelector.cpp:
2342         (WebCore::RuleData::RuleData):
2343         (WebCore::RuleData::collectIdentifierHashes):
2344         (WebCore::RuleData::collectDescendantSelectorIdentifierHashes):
2345         * css/CSSStyleSelector.h:
2346
2347 2011-02-07  Cris Neckar  <cdn@chromium.org>
2348
2349         Reviewed by Jian Li.
2350
2351         Fix null deref in DOMURL
2352         https://bugs.webkit.org/show_bug.cgi?id=53811
2353
2354         Test: fast/files/domurl-script-execution-context-crash.html
2355
2356         * html/DOMURL.cpp:
2357         (WebCore::DOMURL::DOMURL):
2358
2359 2011-02-07  Mark Rowe  <mrowe@apple.com>
2360
2361         Fix the 32-bit build.
2362
2363         * platform/mac/ScrollAnimatorMac.mm:
2364         (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar): Remove some extraneous characters.
2365         (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar): Ditto.
2366
2367 2011-02-07  Xiyuan Xia  <xiyuan@chromium.org>
2368
2369         Reviewed by Tony Chang.
2370
2371         [Chromium] Select popup box does not align with select button when appearance is not "menulist".
2372         https://bugs.webkit.org/show_bug.cgi?id=53942
2373
2374         Added manual test select_webkit_appearance_off_popup_alignment.html.
2375
2376         * manual-tests/select_webkit_appearance_off_popup_alignment.html: Added.
2377         * platform/chromium/PopupMenuChromium.cpp:
2378         (WebCore::PopupListBox::layout):
2379
2380 2011-02-07  Aparna Nandyal  <aparna.nand@wipro.com>
2381
2382         Reviewed by Andreas Kling.
2383
2384         [Qt] - Context menu needs "Copy" as well when the selected text is a link.
2385         https://bugs.webkit.org/show_bug.cgi?id=40983
2386
2387         Added copy option for Qt platform if selection is a link. 
2388         Added a test in tst_qwebpage.cpp. 
2389
2390         * page/ContextMenuController.cpp:
2391         (WebCore::ContextMenuController::populate):
2392
2393 2011-02-07  Mike Reed  <reed@google.com>
2394
2395         Reviewed by Kenneth Russell.
2396
2397         Add compile-time flag ENABLE(SKIA_GPU) to use Skia's gpu backend
2398         when drawing <canvas>. Disabled by default.
2399
2400         No new tests. existing canvas layouttests apply
2401
2402         * platform/graphics/chromium/DrawingBufferChromium.cpp:
2403         (WebCore::DrawingBuffer::publishToPlatformLayer):
2404         * platform/graphics/skia/PlatformContextSkia.cpp:
2405         (WebCore::GetGlobalGrContext):
2406         (WebCore::PlatformContextSkia::isPrinting):
2407         (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
2408         (WebCore::PlatformContextSkia::syncSoftwareCanvas):
2409
2410 2011-02-07  Jay Civelli  <jcivelli@chromium.org>
2411
2412         Reviewed by Darin Fisher.
2413
2414         Removing unused code from PopupMenuChromium.
2415         https://bugs.webkit.org/show_bug.cgi?id=53866
2416
2417        * platform/chromium/PopupMenuChromium.cpp:
2418         (WebCore::PopupListBox::layout):
2419         (WebCore::PopupMenuChromium::show):
2420         * platform/chromium/PopupMenuChromium.h:
2421
2422 2011-02-07  Kenichi Ishibashi  <bashi@chromium.org>
2423
2424         Reviewed by Andreas Kling.
2425
2426         HTMLOutputElement::childrenChanged() should call its base class childrenChanged()
2427         https://bugs.webkit.org/show_bug.cgi?id=53791
2428
2429         Calls HTMLFormControlElement::childrenChanged() in HTMLOutputElement::childrenChanged().
2430
2431         Test: fast/dom/HTMLOutputElement/htmloutputelement-children-removed.html
2432
2433         * html/HTMLOutputElement.cpp:
2434         (WebCore::HTMLOutputElement::childrenChanged): Calls super class's
2435         childrenChanged().
2436
2437 2011-02-07  Benjamin Poulain  <ikipou@gmail.com>
2438
2439         Reviewed by Kenneth Rohde Christiansen.
2440
2441         [Qt] cookiesEnabled could create the cookieJar on the wrong thread.
2442         https://bugs.webkit.org/show_bug.cgi?id=52289
2443
2444         Use the QtNAMThreadSafeProxy to make sure the cookie jar is created
2445         in the same thread as the QNetworkAccessManager.
2446
2447         * platform/network/qt/QtNAMThreadSafeProxy.cpp:
2448         (WebCore::QtNAMThreadSafeProxy::QtNAMThreadSafeProxy):
2449         (WebCore::QtNAMThreadSafeProxy::hasCookieJar):
2450         * platform/network/qt/QtNAMThreadSafeProxy.h:
2451         * platform/qt/CookieJarQt.cpp:
2452         (WebCore::cookiesEnabled):
2453
2454 2011-02-07  Alexey Marinichev  <amarinichev@chromium.org>
2455
2456         Reviewed by Kenneth Russell.
2457
2458         Hook up WebGraphicsContext3D::setContextLostCallback.
2459         https://bugs.webkit.org/show_bug.cgi?id=53722
2460
2461         Test: fast/canvas/webgl/context-lost.html, comment out the line with
2462         extension.loseContext() and kill the GPU process "Lose context"
2463         message shows up.
2464
2465         * html/canvas/WebGLRenderingContext.cpp:
2466         (WebCore::WebGLRenderingContextLostCallback::WebGLRenderingContextLostCallback):
2467         (WebCore::WebGLRenderingContextLostCallback::onContextLost):
2468         (WebCore::WebGLRenderingContextLostCallback::~WebGLRenderingContextLostCallback):
2469         (WebCore::WebGLRenderingContext::initializeNewContext):
2470         (WebCore::WebGLRenderingContext::~WebGLRenderingContext):
2471         * platform/graphics/GraphicsContext3D.h:
2472         (WebCore::GraphicsContext3D::ContextLostCallback::~ContextLostCallback):
2473         * platform/graphics/mac/GraphicsContext3DMac.mm:
2474         (WebCore::GraphicsContext3D::setContextLostCallback): stub
2475         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2476         (WebCore::GraphicsContext3D::setContextLostCallback): stub
2477
2478 2011-02-07  Patrick Gansterer  <paroga@webkit.org>
2479
2480         Reviewed by Eric Seidel.
2481
2482         Add missing PaintInfo include in RenderThemeWin.cpp
2483         https://bugs.webkit.org/show_bug.cgi?id=53885
2484
2485         * rendering/RenderThemeWin.cpp:
2486
2487 2011-02-07  Qi Zhang  <qi.2.zhang@nokia.com>
2488
2489         Reviewed by Andreas Kling.
2490
2491         [Qt] enum QWebPage::WebAction doesn't have value QWebPage::CopyImageUrl
2492         https://bugs.webkit.org/show_bug.cgi?id=52974
2493
2494         Add ContextMenuItemTagCopyImageUrlToClipboard into standard action but Qt platform specific.
2495
2496         * page/ContextMenuController.cpp:
2497         (WebCore::ContextMenuController::contextMenuItemSelected):
2498         (WebCore::ContextMenuController::populate):
2499         (WebCore::ContextMenuController::checkOrEnableIfNeeded):
2500         * platform/ContextMenuItem.h:
2501         * platform/LocalizationStrategy.h:
2502         * platform/LocalizedStrings.cpp:
2503         (WebCore::contextMenuItemTagCopyImageUrlToClipboard):
2504         * platform/LocalizedStrings.h:
2505
2506 2011-02-07  Kenichi Ishibashi  <bashi@chromium.org>
2507
2508         Reviewed by Kent Tamura.
2509
2510         HTMLFormElement::formElementIndex() returns a bad index into a vector of form associated elements
2511         https://bugs.webkit.org/show_bug.cgi?id=53970
2512
2513         Adds HTMLObjectElement::virtualForm() to make HTMLObjectElement::form()
2514         return the right value.
2515
2516         Test: fast/dom/HTMLObjectElement/form/nested-form-element.html
2517
2518         * html/HTMLObjectElement.cpp:
2519         (WebCore::HTMLObjectElement::virtualForm): Added.
2520         * html/HTMLObjectElement.h: Added virtualForm().
2521
2522 2011-02-07  Ryosuke Niwa  <rniwa@webkit.org>
2523
2524         Unreviewed Leopard build fix.
2525
2526         * WebCore.xcodeproj/project.pbxproj: let XCode have developmentRegion.
2527         * platform/mac/DragImageMac.mm:
2528         (WebCore::webkit_CGCeiling): Cast the return value of ceil to CGFloat.
2529
2530 2011-02-07  Enrica Casucci  <enrica@apple.com>
2531
2532         Reviewed by Sam Weinig.
2533
2534         Fixing a build break on Mac caused by http://trac.webkit.org/changeset/77874
2535
2536         When moving code from WebKit to WebCore we needed to move some additional
2537         functions previously in NSStringExtras.
2538         
2539         * WebCore.xcodeproj/project.pbxproj:
2540         * platform/mac/DragImageMac.mm:
2541         (WebCore::fontFromNSFont):
2542         (WebCore::canUseFastRenderer):
2543         (WebCore::widthWithFont):
2544         (WebCore::webkit_CGCeiling):
2545         (WebCore::drawAtPoint):
2546         (WebCore::drawDoubledAtPoint):
2547         (WebCore::createDragImageForLink):
2548
2549 2011-02-07  Lucas Forschler  <lforschler@apple.com>
2550
2551         Reviewed by Geoff Garen.
2552
2553         Tr #2, Fix the Leopard 32bit debug build.
2554         
2555         No new tests required.
2556
2557         * WebCore.xcodeproj/project.pbxproj:
2558         * accessibility/AccessibilityAllInOne.cpp:
2559
2560 2011-02-07  Beth Dakin  <bdakin@apple.com>
2561
2562         Reviewed by Sam Weinig.
2563
2564         Fix for <rdar://problem/8946961> Fix repaint problems
2565         with WKScrollbarPainter scrollers while resizing the window
2566
2567         Remove setPainterForPainterController() and 
2568         removePainterFromPainterController() since they aren't
2569         used anymore.
2570         * platform/mac/ScrollAnimatorMac.h:
2571         
2572         Return early if they alpha hasn't changed.
2573         * platform/mac/ScrollAnimatorMac.mm:
2574         (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
2575         (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
2576         
2577         If we're in a live resize, restore alpha to 1.
2578         (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
2579         (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
2580
2581 2011-02-07  Beth Dakin  <bdakin@apple.com>
2582
2583         Reviewed by Eric Seidel.
2584
2585         Fix for https://bugs.webkit.org/show_bug.cgi?id=53950
2586         USE_WK_SCROLLBAR_PAINTER in ScrollbarThemeMac should be in
2587         Platform.h instead
2588
2589         Use hot new USE(WK_SCROLLBAR_PAINTER) from Platform.h rather
2590         than the silly, old in-file #define.
2591
2592         * platform/mac/ScrollbarThemeMac.mm:
2593         (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
2594         (WebCore::updateArrowPlacement):
2595         (WebCore::ScrollbarThemeMac::registerScrollbar):
2596         (WebCore::ScrollbarThemeMac::scrollbarThickness):
2597         (WebCore::ScrollbarThemeMac::usesOverlayScrollbars):
2598         (WebCore::ScrollbarThemeMac::hasThumb):
2599         (WebCore::ScrollbarThemeMac::minimumThumbLength):
2600         (WebCore::ScrollbarThemeMac::paint):
2601
2602 2011-02-07  Enrica Casucci  <enrica@apple.com>
2603
2604         Reviewed Adam Roben and Darin Adler.
2605
2606         WebKit2: drag and drop support on Windows.
2607         https://bugs.webkit.org/show_bug.cgi?id=52775
2608         <rdar://problem/8514409>
2609
2610         * loader/EmptyClients.h: Removed createDragImageFromLink.
2611         * page/DragClient.h: Ditto.
2612         * page/DragController.cpp:
2613         (WebCore::DragController::startDrag): changed call to createDragImageFromLink.
2614         * platform/DragImage.h:
2615         * platform/mac/DragImageMac.mm:
2616         (WebCore::createDragImageForLink): Moved from DragClient.
2617         * platform/win/ClipboardUtilitiesWin.cpp: Added a series of functions
2618         to de-serialize the drag data from the map into an IDataObject.
2619         (WebCore::getWebLocData):
2620         (WebCore::texthtmlFormat):
2621         (WebCore::createGlobalData):
2622         (WebCore::getFullCFHTML):
2623         (WebCore::urlWFormat):
2624         (WebCore::urlFormat):
2625         (WebCore::filenameWFormat):
2626         (WebCore::filenameFormat):
2627         (WebCore::htmlFormat):
2628         (WebCore::smartPasteFormat):
2629         (WebCore::getURL):
2630         (WebCore::getPlainText):
2631         (WebCore::getTextHTML):
2632         (WebCore::ClipboardDataItem::ClipboardDataItem):
2633         (WebCore::getStringData):
2634         (WebCore::getUtf8Data):
2635         (WebCore::getCFData):
2636         (WebCore::setUCharData):
2637         (WebCore::setCharData):
2638         (WebCore::setCFData):
2639         (WebCore::getClipboardMap):
2640         (WebCore::getClipboardData):
2641         (WebCore::setClipboardData):
2642         * platform/win/ClipboardUtilitiesWin.h:
2643         * platform/win/DragImageWin.cpp: Moved createDragImageForLink from DragClient
2644         to a platform specific file in WebCore. It makes a lot more sense here, since
2645         the drag image is always created in WebCore for all the other content types
2646         except for links.
2647         (WebCore::dragLabelFont):
2648         (WebCore::createDragImageForLink):
2649         * platform/win/WCDataObject.cpp: Added new way to
2650         construct a WCDataObject from a DragDataMap.
2651         (WebCore::WCDataObject::createInstance):
2652         (WebCore::WCDataObject::clearData):
2653         * platform/win/WCDataObject.h:
2654
2655 2011-02-07  Sheriff Bot  <webkit.review.bot@gmail.com>
2656
2657         Unreviewed, rolling out r77848.
2658         http://trac.webkit.org/changeset/77848
2659         https://bugs.webkit.org/show_bug.cgi?id=53963
2660
2661         caused 6 test failures (Requested by othermaciej on #webkit).
2662
2663         * rendering/RenderBlockLineLayout.cpp:
2664         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
2665
2666 2011-02-04  Kenneth Russell  <kbr@google.com>
2667
2668         Reviewed by James Robinson.
2669
2670         Add shaders for GPU accelerated path rendering
2671         https://bugs.webkit.org/show_bug.cgi?id=45520
2672
2673         Refactored SolidFillShader and TexShader to call new
2674         generateVertex() and generateFragment() methods on base Shader
2675         class, and added support for the Loop/Blinn shaders. Refactored
2676         Loop/Blinn shader classes to derive from Shader.
2677
2678         Tested these changes with several of the IE9 Testdrive demos with
2679         accelerated 2D canvas enabled, as well as a full layout test run
2680         with --platform chromium-gpu.
2681
2682         * platform/graphics/gpu/LoopBlinnShader.cpp: Added.
2683         (WebCore::LoopBlinnShader::LoopBlinnShader):
2684         (WebCore::LoopBlinnShader::use):
2685         * platform/graphics/gpu/LoopBlinnShader.h: Added.
2686         * platform/graphics/gpu/LoopBlinnSolidFillShader.cpp: Added.
2687         (WebCore::LoopBlinnSolidFillShader::create):
2688         (WebCore::LoopBlinnSolidFillShader::LoopBlinnSolidFillShader):
2689         (WebCore::LoopBlinnSolidFillShader::use):
2690         * platform/graphics/gpu/LoopBlinnSolidFillShader.h: Added.
2691         * platform/graphics/gpu/Shader.cpp:
2692         (WebCore::Shader::affineTo4x4):
2693         (WebCore::Shader::loadShader):
2694         (WebCore::Shader::loadProgram):
2695         (WebCore::Shader::generateVertex):
2696         (WebCore::Shader::generateFragment):
2697         * platform/graphics/gpu/Shader.h:
2698         * platform/graphics/gpu/SolidFillShader.cpp:
2699         (WebCore::SolidFillShader::create):
2700         * platform/graphics/gpu/TexShader.cpp:
2701         (WebCore::TexShader::TexShader):
2702         (WebCore::TexShader::create):
2703
2704 2011-02-07  Dan Bernstein  <mitz@apple.com>
2705
2706         Reviewed by Oliver Hunt.
2707
2708         <rdar://problem/8946023> REGRESSION (r76674): SVG + BiDi text broken (text-intro-05-t.svg)
2709         https://bugs.webkit.org/show_bug.cgi?id=53480
2710
2711         * WebCore.xcodeproj/project.pbxproj:
2712         * platform/graphics/mac/ComplexTextController.cpp:
2713         (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): m_indexEnd should be an
2714         offset into m_characters, not into the run’s characters.
2715         * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
2716         (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Ditto.
2717
2718 2011-02-07  Sam Weinig  <sam@webkit.org>
2719
2720         Reviewed by Anders Carlsson.
2721
2722         Add bundle API to get the background color of a frame
2723         <rdar://problem/8962670>
2724         https://bugs.webkit.org/show_bug.cgi?id=53952
2725
2726         * WebCore.exp.in: Add export.
2727
2728 2011-02-07  Geoffrey Garen  <ggaren@apple.com>
2729
2730         Reviewed by Darin Adler.
2731
2732         Assertion failure in ~JSGlobalObject when loading apple.com HTML5
2733         transitions demo page
2734         https://bugs.webkit.org/show_bug.cgi?id=53853
2735
2736         This was a long-standing bookkeeping bug uncovered by some heap refactoring.
2737
2738         * html/HTMLCanvasElement.cpp:
2739         (WebCore::HTMLCanvasElement::createImageBuffer):
2740         * html/HTMLImageLoader.cpp:
2741         (WebCore::HTMLImageLoader::notifyFinished):
2742         * xml/XMLHttpRequest.cpp:
2743         (WebCore::XMLHttpRequest::dropProtection): Take the JSLock before
2744         reporting extra cost to the JavaScriptCore heap, since all use of
2745         JavaScriptCore is supposed to be guarded by JSLock.
2746
2747 2011-02-07  Jian Li  <jianli@chromium.org>
2748
2749         Reviewed by David Levin.
2750
2751         Intermittent crash in fast/files/read-blob-async.html on the GTK+ debug
2752         bots
2753         https://bugs.webkit.org/show_bug.cgi?id=53104
2754
2755         Covered by the existing tests.
2756
2757         * fileapi/FileStreamProxy.cpp:
2758         (WebCore::FileStreamProxy::startOnFileThread):
2759         * platform/network/BlobRegistryImpl.cpp:
2760         (WebCore::BlobRegistryImpl::createResourceHandle):
2761         * platform/network/BlobResourceHandle.cpp:
2762         (WebCore::BlobResourceHandle::BlobResourceHandle):
2763         (WebCore::BlobResourceHandle::cancel):
2764         (WebCore::delayedStartBlobResourceHandle):
2765         (WebCore::BlobResourceHandle::start): Keep BlobResourceHandle alive
2766         till the delay function is called.
2767         (WebCore::BlobResourceHandle::doStart):
2768         (WebCore::doNotifyFinish):
2769         (WebCore::BlobResourceHandle::notifyFinish): Notify the client via the
2770         standalone function to prevent the handle from being disposed immediately
2771         by the client which will make the calls in the stack that're still bound
2772         to the handle suffer.
2773         * platform/network/BlobResourceHandle.h:
2774         * platform/network/ResourceHandle.h: Change cancel() to virtual so that
2775         BlobResourceHandle::cancel will be called when we abort a FileReader.
2776
2777 2011-02-07  Sheriff Bot  <webkit.review.bot@gmail.com>
2778
2779         Unreviewed, rolling out r77845.
2780         http://trac.webkit.org/changeset/77845
2781         https://bugs.webkit.org/show_bug.cgi?id=53946
2782
2783         build failure (Requested by lforschler_ on #webkit).
2784
2785         * WebCore.xcodeproj/project.pbxproj:
2786         * accessibility/AccessibilityAllInOne.cpp:
2787
2788 2011-02-07  Darin Adler  <darin@apple.com>
2789
2790         https://bugs.webkit.org/show_bug.cgi?id=53939
2791         fast/css/text-overflow-ellipsis.html failure after r77818/77819
2792
2793         * platform/text/TextCodecICU.cpp:
2794         (WebCore::TextCodecICU::registerExtendedEncodingNames):
2795         Add back the "utf8" synonym for "UTF-8".
2796
2797 2011-02-07  David Hyatt  <hyatt@apple.com>
2798
2799         Reviewed by Dan Bernstein.
2800
2801         Remove an unnecessary extra computeLogicalWidth() from line layout.
2802
2803         * rendering/RenderBlockLineLayout.cpp:
2804         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
2805
2806 2011-02-07  Lucas Forschler  <lforschler@apple.com>
2807
2808         Reviewed by Geoffrey Garen.
2809
2810         Fix Leopard Intel Debug Build.
2811         <rdar://problem/8953606> REGRESSION: Can't link WebCore on 32-bit Leopard (53681)
2812         This could potentially break windows, since I had to change #include <filename> to #include "filename"
2813         
2814         * WebCore.xcodeproj/project.pbxproj:
2815         * accessibility/AccessibilityAllInOne.cpp:
2816
2817 2011-02-07  Sam Weinig  <sam@webkit.org>
2818
2819         Fix build.
2820
2821         * platform/mac/ScrollAnimatorMac.mm:
2822         (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
2823         (WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
2824         (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
2825         (WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
2826
2827 2011-02-07  Sam Weinig  <sam@webkit.org>
2828
2829         Reviewed by Beth Dakin.
2830
2831         Add mechanism to inform the ScrollAnimator when Scrollbars are added 
2832         and removed.
2833
2834         * platform/ScrollAnimator.h:
2835         (WebCore::ScrollAnimator::didAddVerticalScrollbar):
2836         (WebCore::ScrollAnimator::willRemoveVerticalScrollbar):
2837         (WebCore::ScrollAnimator::didAddHorizontalScrollbar):
2838         (WebCore::ScrollAnimator::willRemoveHorizontalScrollbar):
2839         Make virtual to allow platform specific overrides.
2840
2841         * platform/ScrollView.cpp:
2842         (WebCore::ScrollView::setHasHorizontalScrollbar):
2843         (WebCore::ScrollView::setHasVerticalScrollbar):
2844         Call new ScrollableArea functions.
2845
2846         * platform/ScrollableArea.cpp:
2847         (WebCore::ScrollableArea::didAddVerticalScrollbar):
2848         (WebCore::ScrollableArea::willRemoveVerticalScrollbar):
2849         (WebCore::ScrollableArea::didAddHorizontalScrollbar):
2850         (WebCore::ScrollableArea::willRemoveHorizontalScrollbar):
2851         * platform/ScrollableArea.h:
2852         Pipe to ScrollAnimator.
2853
2854         * platform/mac/ScrollAnimatorMac.h:
2855         * platform/mac/ScrollAnimatorMac.mm:
2856         (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
2857         (WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
2858         (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
2859         (WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
2860         * platform/mac/ScrollbarThemeMac.h:
2861         * platform/mac/ScrollbarThemeMac.mm:
2862         (WebCore::ScrollbarThemeMac::registerScrollbar):
2863         (WebCore::ScrollbarThemeMac::unregisterScrollbar):
2864         (WebCore::ScrollbarThemeMac::painterForScrollbar):
2865         Move painter delegate registration to the new didAdd/willRemove functions.
2866
2867 2011-02-07  Anders Carlsson  <andersca@apple.com>
2868
2869         Reviewed by Dan Bernstein.
2870
2871         Missing text match markers with accelerated content
2872         https://bugs.webkit.org/show_bug.cgi?id=53934
2873
2874         When doing the fake paint that recomputes the text match rects, we need to
2875         flatten compositing layers, otherwise the rects won't be updated until the next paint call.
2876
2877         (This worked by accident in WebKit1 because Safari calls -[NSWindow displayIfNeeded] on the containing
2878         window before asking for the text match rects).
2879
2880         * editing/Editor.cpp:
2881         (WebCore::Editor::countMatchesForText):
2882
2883 2011-02-07  Antti Koivisto  <antti@apple.com>
2884
2885         Reviewed by Andreas Kling.
2886
2887         REGRESSION(r77740): CSSStyleSelector accessing deleted memory for svg/dom/use-transform.svg
2888         https://bugs.webkit.org/show_bug.cgi?id=53900
2889         
2890         Ignore link elements in shadow trees.
2891
2892         * dom/Element.cpp:
2893         (WebCore::StyleSelectorParentPusher::StyleSelectorParentPusher):
2894         (WebCore::StyleSelectorParentPusher::~StyleSelectorParentPusher):
2895                 
2896             Some asserts to catch cases like this.
2897
2898         (WebCore::Element::attach):
2899         (WebCore::Element::recalcStyle):
2900         * html/HTMLLinkElement.cpp:
2901         (WebCore::HTMLLinkElement::HTMLLinkElement):
2902         (WebCore::HTMLLinkElement::process):
2903         (WebCore::HTMLLinkElement::insertedIntoDocument):
2904         (WebCore::HTMLLinkElement::removedFromDocument):
2905         * html/HTMLLinkElement.h:
2906
2907 2011-02-07  Darin Adler  <darin@apple.com>
2908
2909         Turn UTF-8 decoder off for now so we can look into failing tests
2910         without leaving the tree red.
2911
2912         * platform/text/TextCodecICU.cpp:
2913         (WebCore::TextCodecICU::registerBaseEncodingNames): Reverting
2914         earlier change so this can handle UTF-8.
2915         (WebCore::TextCodecICU::registerBaseCodecs): Ditto.
2916         (WebCore::TextCodecICU::registerExtendedEncodingNames): Ditto.
2917         (WebCore::TextCodecICU::registerExtendedCodecs): Ditto.
2918         * platform/text/TextCodecICU.h: Ditto.
2919         * platform/text/TextEncodingRegistry.cpp:
2920         (WebCore::buildBaseTextCodecMaps): Ditto.
2921         (WebCore::extendTextCodecMaps): Ditto.
2922         * platform/text/brew/TextCodecBrew.cpp:
2923         (WebCore::TextCodecBrew::registerBaseEncodingNames): Ditto.
2924         (WebCore::TextCodecBrew::registerBaseCodecs): Ditto.
2925         (WebCore::TextCodecBrew::registerExtendedEncodingNames): Ditto.
2926         (WebCore::TextCodecBrew::registerExtendedCodecs): Ditto.
2927         * platform/text/brew/TextCodecBrew.h: Ditto.
2928         * platform/text/gtk/TextCodecGtk.cpp:
2929         (WebCore::TextCodecGtk::registerBaseEncodingNames): Ditto.
2930         (WebCore::TextCodecGtk::registerBaseCodecs): Ditto.
2931         * platform/text/wince/TextCodecWinCE.cpp:
2932         (WebCore::TextCodecWinCE::registerBaseEncodingNames): Ditto.
2933         (WebCore::TextCodecWinCE::registerBaseCodecs): Ditto.
2934         (WebCore::TextCodecWinCE::registerExtendedEncodingNames): Ditto.
2935         (WebCore::TextCodecWinCE::registerExtendedCodecs): Ditto.
2936         * platform/text/wince/TextCodecWinCE.h: Ditto.
2937
2938 2011-02-07  Anders Carlsson  <andersca@apple.com>
2939
2940         Reviewed by Maciej Stachowiak.
2941
2942         Don't exclude overlay scrollers from the page overlay bounds
2943         https://bugs.webkit.org/show_bug.cgi?id=53924
2944
2945         Export ScrollbarTheme::nativeTheme.
2946
2947         * WebCore.exp.in:
2948
2949 2011-02-07  Zhenyao Mo  <zmo@google.com>
2950
2951         Reviewed by Kenneth Russell.
2952
2953         Crash in glDrawArrays with NaCl crystal model
2954         https://bugs.webkit.org/show_bug.cgi?id=52831
2955
2956         * html/canvas/WebGLRenderingContext.cpp: Allocate large enough buffer for atttrib0 if it's enabled and not used.
2957         (WebCore::WebGLRenderingContext::initVertexAttrib0):
2958         (WebCore::WebGLRenderingContext::simulateVertexAttrib0):
2959         * html/canvas/WebGLRenderingContext.h:
2960
2961 2011-02-07  Chris Fleizach  <cfleizach@apple.com>
2962
2963         Reviewed by Darin Adler.
2964
2965         WAI-ARIA @aria-sort not exposed on rowheader and columnheader roles.
2966         https://bugs.webkit.org/show_bug.cgi?id=53842
2967
2968         Test: platform/mac/accessibility/aria-sort.html
2969
2970         * accessibility/AccessibilityObject.cpp:
2971         (WebCore::AccessibilityObject::sortDirection):
2972         * accessibility/AccessibilityObject.h:
2973         * accessibility/mac/AccessibilityObjectWrapper.mm:
2974         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
2975         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2976         * html/HTMLAttributeNames.in:
2977
2978 2011-02-07  Darin Adler  <darin@apple.com>
2979
2980         Reviewed by Antti Koivisto.
2981
2982         Add built-in decoder for UTF-8 for improved performance
2983         https://bugs.webkit.org/show_bug.cgi?id=53898
2984
2985         Correct behavior is covered by existing tests.
2986
2987         * Android.mk: Added TextCodecUTF8.
2988         * CMakeLists.txt: Ditto.
2989         * GNUmakefile.am: Ditto.
2990         * WebCore.gypi: Ditto.
2991         * WebCore.pro: Ditto.
2992         * WebCore.vcproj/WebCore.vcproj: Ditto.
2993         * WebCore.xcodeproj/project.pbxproj: Ditto.
2994
2995         * platform/text/TextCodecICU.cpp: Removed registration of UTF-8
2996         since that's now handled by the built-in UTF-8 codec.
2997         (WebCore::TextCodecICU::registerEncodingNames): Renamed to remove
2998         the word "extended" since all codecs from ICU are now extended.
2999         (WebCore::TextCodecICU::registerCodecs): Ditto.
3000         * platform/text/TextCodecICU.h: Ditto.
3001
3002         * platform/text/TextCodecUTF16.cpp:
3003         (WebCore::TextCodecUTF16::decode): Added a FIXME about missing
3004         error handling.
3005
3006         * platform/text/TextCodecUTF8.cpp: Added.
3007         * platform/text/TextCodecUTF8.h: Added.
3008
3009         * platform/text/TextEncodingRegistry.cpp:
3010         (WebCore::buildBaseTextCodecMaps): Added TextCodecUTF8, and
3011         removed TextCodecICU, TextCodecBrew, and TextCodecWinCE.
3012         (WebCore::extendTextCodecMaps): Updated names for
3013         TextCodecICU and TextCodecWinCE.
3014
3015         * platform/text/brew/TextCodecBrew.cpp:
3016         (WebCore::TextCodecBrew::registerEncodingNames): Renamed to remove
3017         the word "extended" since all codecs from Brew are now extended.
3018         (WebCore::TextCodecBrew::registerCodecs): Ditto.
3019         * platform/text/brew/TextCodecBrew.h: Ditto.
3020
3021         * platform/text/gtk/TextCodecGtk.cpp:
3022         (WebCore::TextCodecGtk::registerBaseEncodingNames): Removed
3023         registration of UTF-8. It's questionable whether the other codecs
3024         here are really basic. If we think they qualify, then we should
3025         register them on other platforms, not just GTK.
3026         (WebCore::TextCodecGtk::registerBaseCodecs): Ditto.
3027
3028         * platform/text/wince/TextCodecWinCE.cpp:
3029         (WebCore::getCodePage): Removed special case for UTF-8 since we
3030         no longer use this codec for UTF-8.
3031         (WebCore::TextCodecWinCE::registerEncodingNames): Renamed to remove
3032         the word "extended" since all codecs from WinCE are now extended.
3033         (WebCore::TextCodecWinCE::registerCodecs): Ditto.
3034         * platform/text/wince/TextCodecWinCE.h: Ditto.
3035
3036 2011-02-07  Mario Sanchez Prada  <msanchez@igalia.com>
3037
3038         Reviewed by Xan Lopez.
3039
3040         [Gtk] atk_text_get_caret_offset fails for list items
3041         https://bugs.webkit.org/show_bug.cgi?id=53436
3042
3043         Consider list item markers when calculating the offset.
3044
3045         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3046         (webkit_accessible_text_get_caret_offset): Adjust the offset
3047         with the item marker's length for list items.
3048         (webkit_accessible_text_set_caret_offset): Replace usage of
3049         g_utf8_strlen() by calling to markerText.length().
3050
3051 2011-02-07  Yi Shen  <yi.4.shen@nokia.com>
3052
3053         Reviewed by Tor Arne Vestbø.
3054
3055         [Qt] Fix LayoutTests/media/restore-from-page-cache.html
3056         https://bugs.webkit.org/show_bug.cgi?id=53621
3057
3058         Changed the networkState to MediaPlayer::Loaded when 
3059         MediaPlayerPrivateQt has enough data.
3060
3061         Test: media/restore-from-page-cache.html
3062
3063         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
3064         (WebCore::MediaPlayerPrivateQt::updateStates):
3065
3066 2011-01-31  Pavel Podivilov  <podivilov@chromium.org>
3067
3068         Reviewed by Yury Semikhatsky.
3069
3070         Web Inspector: implement beautification of scripts inlined in html documents.
3071         https://bugs.webkit.org/show_bug.cgi?id=52706
3072
3073         To beautify scripts inlined in html, we need to cut individual scripts, beautify them using UglifyJS library, and
3074         finally paste them back to html.
3075
3076         * WebCore.gypi:
3077         * WebCore.vcproj/WebCore.vcproj:
3078         * inspector/front-end/ScriptFormatter.js:
3079         (WebInspector.ScriptFormatter): Implement formatting of scripts inlined in html.
3080         (WebInspector.ScriptFormatter.prototype.formatContent.didFormatChunks):
3081         (WebInspector.ScriptFormatter.prototype.formatContent):
3082         (WebInspector.ScriptFormatter.prototype._splitContentIntoChunks):
3083         (WebInspector.ScriptFormatter.prototype._formatChunks.didFormat):
3084         (WebInspector.ScriptFormatter.prototype._formatChunks):
3085         (WebInspector.ScriptFormatter.prototype._buildContentFromChunks):
3086         (WebInspector.ScriptFormatter.prototype._formatScript.messageHandler):
3087         (WebInspector.ScriptFormatter.prototype._formatScript):
3088         * inspector/front-end/ScriptFormatterWorker.js:
3089         (onmessage):
3090         (buildMapping):
3091         * inspector/front-end/SourceFrame.js:
3092         (WebInspector.SourceFrameContent): Use SourceFrameContent and FormattedSourceFrameContent to perform operations with line numbers.
3093         * inspector/front-end/SourceFrameContent.js: Added.
3094         (WebInspector.SourceFrameContent): Helper class, holds resource text and scripts layout
3095         (WebInspector.SourceFrameContent.prototype.get scriptRanges):
3096         (WebInspector.SourceFrameContent.prototype.locationToPosition):
3097         (WebInspector.SourceFrameContent.prototype.positionToLocation):
3098         (WebInspector.SourceFrameContent.prototype.scriptLocationForLineNumber):
3099         (WebInspector.SourceFrameContent.prototype.scriptLocationForRange):
3100         (WebInspector.SourceFrameContent.prototype.lineNumberToRange):
3101         (WebInspector.SourceFrameContent.prototype._intersectingScriptRange):
3102         (WebInspector):
3103         (WebInspector.FormattedSourceFrameContent): Helper class, holds original and formatted versions of resource and mapping between them.
3104         (WebInspector.FormattedSourceFrameContent.prototype.get text):
3105         (WebInspector.FormattedSourceFrameContent.prototype.originalLocationToFormattedLocation):
3106         (WebInspector.FormattedSourceFrameContent.prototype.scriptLocationForFormattedLineNumber):
3107         (WebInspector.FormattedSourceFrameContent.prototype._convertPosition):
3108         * inspector/front-end/WebKit.qrc:
3109         * inspector/front-end/inspector.html:
3110
3111 2011-02-07  Pavel Feldman  <pfeldman@chromium.org>
3112
3113         Reviewed by Yury Semikhatsky.
3114
3115         Web Inspector: "Reveal in elements panel" does not always work.
3116         https://bugs.webkit.org/show_bug.cgi?id=53775
3117
3118         * inspector/front-end/ConsoleView.js:
3119         (WebInspector.ConsoleView):
3120         * inspector/front-end/ContextMenu.js:
3121         (WebInspector.ContextMenu.prototype.show):
3122         * inspector/front-end/ElementsPanel.js:
3123         (WebInspector.ElementsPanel.prototype.switchToAndFocus):
3124         * inspector/front-end/ElementsTreeOutline.js:
3125         (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement):
3126         (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):
3127         * inspector/front-end/ObjectPropertiesSection.js:
3128         (WebInspector.ObjectPropertyTreeElement.prototype.update):
3129         (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired):
3130         * inspector/front-end/inspector.js:
3131         (WebInspector.cancelSearch):
3132
3133 2011-02-07  Adam Barth  <abarth@webkit.org>
3134
3135         Reviewed by Eric Seidel.
3136
3137         Relative .. in URL paths shouldn't skip adjacent / characters
3138         https://bugs.webkit.org/show_bug.cgi?id=53907
3139
3140         Our new behavior matches Firefox, Chrome, and IE.
3141
3142         * platform/KURL.cpp:
3143         (WebCore::copyPathRemovingDots):
3144
3145 2011-02-07  Maciej Stachowiak  <mjs@apple.com>
3146
3147         Reviewed by Antti Koivisto.
3148
3149         WebKitTestRunner does not block remote resources or complain about them
3150         https://bugs.webkit.org/show_bug.cgi?id=42139
3151         <rdar://problem/8183942>
3152
3153         * Configurations/WebCore.xcconfig: Allow WebKitTestRunner to link
3154         WebCore.
3155         * WebCore.exp.in: Export a handful of KURL symbols.
3156
3157 2011-02-06  Ryosuke Niwa  <rniwa@webkit.org>
3158
3159         Reviewed by Darin Adler.
3160
3161         OwnArraryPtr.h uses deleteOwnedPtr but doesn’t include OwnPtrCommon.h
3162         https://bugs.webkit.org/show_bug.cgi?id=52867
3163
3164         * ForwardingHeaders/wtf/OwnArrayPtrCommon.h: Removed.
3165         * bindings/v8/NPV8Object.cpp:
3166         (WebCore::createValueListFromVariantArgs): Returns PassOwnArrayPtr<v8::Handle<v8::Value>> instead of
3167         v8::Handle<v8::Value>*.
3168         (_NPN_Invoke): Calls createValueListFromVariantArgs.
3169         (_NPN_InvokeDefault): createValueListFromVariantArgs.
3170         (_NPN_Construct): createValueListFromVariantArgs.
3171         * bindings/v8/ScriptFunctionCall.cpp:
3172         (WebCore::ScriptFunctionCall::call): Calls adoptArrayPtr.
3173         (WebCore::ScriptFunctionCall::construct): Ditto.
3174         (WebCore::ScriptCallback::call):
3175         * bindings/v8/V8DOMWindowShell.cpp:
3176         (WebCore::V8DOMWindowShell::createNewContext): Ditto.
3177         * bindings/v8/V8NPObject.cpp:
3178         (WebCore::npObjectInvokeImpl): Ditto
3179         * bindings/v8/V8NodeFilterCondition.cpp:
3180         (WebCore::V8NodeFilterCondition::acceptNode): Ditto,
3181         * html/HTMLAreaElement.cpp:
3182         (WebCore::HTMLAreaElement::parseMappedAttribute): Calls newCoordsArray.
3183         * html/HTMLFrameSetElement.cpp:
3184         (WebCore::HTMLFrameSetElement::parseMappedAttribute): Calls newLengthArray.
3185         * html/canvas/WebGLRenderingContext.cpp:
3186         (WebCore::WebGLRenderingContext::getAttachedShaders): Calls adoptArraYptr.
3187         (WebCore::WebGLRenderingContext::simulateVertexAttrib0): Ditto.
3188         (WebCore::WebGLRenderingContext::LRUImageBufferCache::LRUImageBufferCache): Dito.
3189         * platform/Length.cpp:
3190         (WebCore::newCoordsArray): Returns PassOwnArrayPtr<Length> instead of Length*.
3191         (WebCore::newLengthArray): Returns PassOwnArrayPtr<Length> instead of Length*.
3192         * platform/Length.h: Prototype changes.
3193         * platform/graphics/ANGLEWebKitBridge.cpp:
3194         (WebCore::ANGLEWebKitBridge::validateShaderSource): Calls adoptArrayPtr.
3195         * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
3196         (WebCore::getDirtyRects): Ditto.
3197         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
3198         (WebCore::ComplexTextController::getNormalizedTextRun): Ditto.
3199         * platform/graphics/chromium/HarfbuzzSkia.cpp:
3200         (WebCore::glyphsToAdvances): Ditto.
3201         (WebCore::canRender): Ditto.
3202         * platform/graphics/gpu/Texture.cpp:
3203         (WebCore::Texture::updateSubRect): Ditto.
3204         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
3205         (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): Ditto.
3206         * platform/graphics/skia/PlatformContextSkia.cpp:
3207         (WebCore::PlatformContextSkia::readbackHardwareToSoftware): Ditto.
3208         * platform/graphics/wince/SharedBitmap.cpp:
3209         (WebCore::SharedBitmap::to16bit): Ditto.
3210         * platform/win/ContextMenuWin.cpp:
3211         (WebCore::ContextMenu::getContextMenuItems): Ditto.
3212         * platform/win/LoggingWin.cpp:
3213         (WebCore::initializeWithUserDefault): Ditto.
3214         * plugins/win/PluginPackageWin.cpp:
3215         (WebCore::PluginPackage::fetchInfo): Ditto.
3216
3217 2011-02-06  Kent Tamura  <tkent@chromium.org>
3218
3219         Unreviewed.
3220
3221         * WebCore.xcodeproj/project.pbxproj: Run sort-xcode-project-file.
3222
3223 2011-02-03  Dominic Cooney  <dominicc@google.com>
3224
3225         Reviewed by Dimitri Glazkov.
3226
3227         Convert <keygen> option elements to a shadow DOM
3228         https://bugs.webkit.org/show_bug.cgi?id=51379
3229
3230         Covered by existing tests e.g. fast/html/keygen.html,
3231         html5lib/runner.html, etc.
3232
3233         * css/html.css:
3234         (form): Cleanup.
3235         (keygen, select): Border radii should match so focus ring looks good.
3236         (keygen::-webkit-keygen-select): No margin on the shadow element.
3237         (select): Hoisting border radius to keygen, select rule.
3238         * dom/SelectElement.cpp:
3239         (WebCore::toSelectElement): keygen is no longer a select element.
3240         * html/HTMLKeygenElement.cpp: Implements keygen shadow.
3241         (WebCore::KeygenSelectElement::create):
3242         (WebCore::KeygenSelectElement::shadowPseudoId):
3243         (WebCore::KeygenSelectElement::KeygenSelectElement):
3244         (WebCore::HTMLKeygenElement::HTMLKeygenElement):
3245         (WebCore::HTMLKeygenElement::parseMappedAttribute):
3246         (WebCore::HTMLKeygenElement::appendFormData):
3247         (WebCore::HTMLKeygenElement::formControlType):
3248         (WebCore::HTMLKeygenElement::reset):
3249         (WebCore::HTMLKeygenElement::selectShadow):
3250         * html/HTMLKeygenElement.h: keygen is no longer a select on C++ side.
3251         (WebCore::HTMLKeygenElement::canStartSelection):
3252         (WebCore::HTMLKeygenElement::isEnumeratable):
3253         (WebCore::HTMLKeygenElement::isResettable):
3254         * html/HTMLOptionElement.cpp:
3255         (WebCore::HTMLOptionElement::ownerSelectElement): Only owned by selects.
3256         * html/HTMLSelectElement.cpp:
3257         (WebCore::HTMLSelectElement::HTMLSelectElement): Only 'select' tag name.
3258
3259 2011-02-06  Benjamin Poulain  <ikipou@gmail.com>
3260
3261         Reviewed by Kenneth Rohde Christiansen.
3262
3263         [Qt] Fix coding style errors in ClipboardQt.h
3264         https://bugs.webkit.org/show_bug.cgi?id=43520
3265
3266         Fix coding style: order of header and indentation.
3267
3268         * platform/qt/ClipboardQt.h:
3269         (WebCore::ClipboardQt::create):
3270         (WebCore::ClipboardQt::clipboardData):
3271         (WebCore::ClipboardQt::invalidateWritableData):
3272
3273 2011-02-06  Antti Koivisto  <antti@apple.com>
3274
3275         Reviewed by Maciej Stachowiak.
3276
3277         Use bloom filter for descendant selector filtering
3278         https://bugs.webkit.org/show_bug.cgi?id=53880
3279         
3280         Bloom filter is faster than a hash set in this kind of use.
3281         
3282         Shark thinks this speeds up style matching by ~30% on sites
3283         with lots of descendant selectors.
3284
3285         * ForwardingHeaders/wtf/BloomFilter.h: Added.
3286         * css/CSSStyleSelector.cpp:
3287         (WebCore::collectElementIdentifierHashes):
3288         (WebCore::CSSStyleSelector::pushParent):
3289         (WebCore::CSSStyleSelector::popParent):
3290         (WebCore::CSSStyleSelector::fastRejectSelector):
3291         (WebCore::RuleData::collectDescendantSelectorIdentifierHashes):
3292         * css/CSSStyleSelector.h:
3293
3294 2011-02-06  Maciej Stachowiak  <mjs@apple.com>
3295
3296         Reviewed by Antti Koivisto.
3297
3298         media/video-document-types.html sometimes crashes the WebProcess
3299         https://bugs.webkit.org/show_bug.cgi?id=53884
3300
3301         No new tests. Already covered by media/video-document-types.html
3302
3303         * html/HTMLMediaElement.cpp:
3304         (WebCore::HTMLMediaElement::userCancelledLoad): Stop the load timer
3305         when cancelling the load.
3306
3307 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
3308
3309         Reviewed by Adam Roben.
3310
3311         [WIN] Use WCHAR instead of TCHAR
3312         https://bugs.webkit.org/show_bug.cgi?id=53863
3313
3314         We always use the UNICODE versions of windows functions, so
3315         the usage of TCHAR makes no sense and mixing them is bad style.
3316
3317         * platform/graphics/win/IconWin.cpp:
3318         (WebCore::Icon::createIconForFiles):
3319         * platform/graphics/win/QTMovie.cpp:
3320         * platform/graphics/win/QTMovieGWorld.cpp:
3321         (QTMovieGWorld::fullscreenWndProc):
3322         (QTMovieGWorld::enterFullscreen):
3323         * platform/graphics/win/SimpleFontDataCGWin.cpp:
3324         (WebCore::SimpleFontData::platformInit):
3325         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
3326         * platform/graphics/win/SimpleFontDataWin.cpp:
3327         * platform/graphics/wince/SimpleFontDataWinCE.cpp:
3328         * platform/win/BString.cpp:
3329         * platform/win/ClipboardWin.cpp:
3330         (WebCore::filesystemPathFromUrlOrTitle):
3331         (WebCore::createGlobalHDropContent):
3332         (WebCore::createGlobalImageFileDescriptor):
3333         * platform/win/ContextMenuWin.cpp:
3334         * platform/win/CursorWin.cpp:
3335         (WebCore::loadSharedCursor):
3336         * platform/win/FileChooserWin.cpp:
3337         (WebCore::FileChooser::basenameForWidth):
3338         * platform/win/PopupMenuWin.cpp:
3339         (WebCore::PopupMenuWin::popupClassName):
3340         (WebCore::PopupMenuWin::show):
3341         * platform/win/PopupMenuWin.h:
3342
3343 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
3344
3345         Reviewed by Andreas Kling.
3346
3347         Replace FLT_MAX with std::numeric_limits
3348         https://bugs.webkit.org/show_bug.cgi?id=53861
3349
3350         Also move EFL's userIdleTime from TemporaryLinkStubs into SystemTimeEfl.
3351
3352         * html/NumberInputType.cpp:
3353         * html/parser/HTMLParserIdioms.cpp:
3354         (WebCore::parseToDoubleForNumberType):
3355         * platform/brew/SystemTimeBrew.cpp:
3356         (WebCore::userIdleTime):
3357         * platform/efl/SystemTimeEfl.cpp:
3358         (WebCore::userIdleTime):
3359         * platform/efl/TemporaryLinkStubs.cpp:
3360         * platform/graphics/ca/GraphicsLayerCA.cpp:
3361         (WebCore::GraphicsLayerCA::setupAnimation):
3362         * platform/win/SystemTimeWin.cpp:
3363         (WebCore::userIdleTime):
3364         * platform/wx/SystemTimeWx.cpp:
3365         (WebCore::userIdleTime):
3366
3367 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
3368
3369         Reviewed by Andreas Kling.
3370
3371         [CMake] Add dependencies for Visual Studio projects
3372         https://bugs.webkit.org/show_bug.cgi?id=53773
3373
3374         Add a JavaScriptCore dependecy to WebCore, so CMake can 
3375         generate the correct build order for the solution.
3376
3377         * CMakeLists.txt:
3378
3379 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
3380
3381         Reviewed by Andreas Kling.
3382
3383         [CMake] Unify ENABLE_SVG sections
3384         https://bugs.webkit.org/show_bug.cgi?id=53778
3385
3386         * CMakeLists.txt:
3387
3388 2011-02-06  Andreas Kling  <kling@webkit.org>
3389
3390         Reviewed by Dirk Schulze.
3391
3392         Refactor Font::normalizeSpaces() to avoid an extra String copy.
3393         https://bugs.webkit.org/show_bug.cgi?id=53871
3394
3395         Have normalizeSpaces() take UChar*,length arguments instead of a
3396         String, since all call sites were creating temporaries from these
3397         components anyway.
3398
3399         Font::normalizeSpaces() now always makes 1 String copy,
3400         instead of 1 in the best case and 2 in the worst case.
3401
3402         * platform/graphics/Font.cpp:
3403         (WebCore::Font::normalizeSpaces):
3404         * platform/graphics/Font.h:
3405         * platform/graphics/qt/FontQt.cpp:
3406         (WebCore::drawTextCommon):
3407         (WebCore::Font::floatWidthForSimpleText):
3408         (WebCore::Font::floatWidthForComplexText):
3409         (WebCore::Font::offsetForPositionForSimpleText):
3410         (WebCore::Font::offsetForPositionForComplexText):
3411         (WebCore::Font::selectionRectForSimpleText):
3412         (WebCore::Font::selectionRectForComplexText):
3413         * svg/SVGFont.cpp:
3414         (WebCore::SVGTextRunWalker::walk):
3415
3416 2011-02-06  Andreas Kling  <kling@webkit.org>
3417
3418         Reviewed by Dirk Schulze.
3419
3420         Fix potential buffer overrun in SVGTextRunWalker::walk()
3421         https://bugs.webkit.org/show_bug.cgi?id=53870
3422
3423         A new String was created from a UChar* with a 'length' argument
3424         that could be greater than the number of UChars available.
3425
3426         * svg/SVGFont.cpp:
3427         (WebCore::SVGTextRunWalker::walk):
3428
3429 2011-02-05  Adam Barth  <abarth@webkit.org>
3430
3431         Reviewed by Eric Seidel.
3432
3433         Remove unused parameter related to XSSAuditor
3434         https://bugs.webkit.org/show_bug.cgi?id=53862
3435
3436         * WebCore.exp.in:
3437         * bindings/ScriptControllerBase.cpp:
3438         (WebCore::ScriptController::executeScript):
3439         (WebCore::ScriptController::executeIfJavaScriptURL):
3440         * bindings/ScriptControllerBase.h:
3441         * bindings/js/ScriptController.cpp:
3442         (WebCore::ScriptController::evaluateInWorld):
3443         (WebCore::ScriptController::evaluate):
3444         (WebCore::ScriptController::executeScriptInWorld):
3445         * bindings/js/ScriptController.h:
3446         * bindings/v8/ScriptController.cpp:
3447         (WebCore::ScriptController::evaluate):
3448         * bindings/v8/ScriptController.h:
3449
3450 2011-02-05  Adam Barth  <abarth@webkit.org>
3451
3452         Fix Qt build.
3453
3454         * WebCore.pro:
3455
3456 2011-02-05  Adam Barth  <abarth@webkit.org>
3457
3458         Reviewed by Eric Seidel.
3459
3460         Delete XSSAuditor
3461         https://bugs.webkit.org/show_bug.cgi?id=53859
3462
3463         The job of the XSSAuditor is now done by the XSSFilter.  In the future,
3464         we might rename XSSFilter to XSSAuditor.
3465
3466         * Android.mk:
3467         * CMakeLists.txt:
3468         * GNUmakefile.am:
3469         * WebCore.gypi:
3470         * WebCore.vcproj/WebCore.vcproj:
3471         * WebCore.xcodeproj/project.pbxproj:
3472         * bindings/ScriptControllerBase.cpp:
3473         (WebCore::ScriptController::executeIfJavaScriptURL):
3474         * bindings/ScriptControllerBase.h:
3475         * bindings/js/ScriptController.cpp:
3476         (WebCore::ScriptController::ScriptController):
3477         (WebCore::ScriptController::evaluateInWorld):
3478         * bindings/js/ScriptController.h:
3479         * bindings/js/ScriptEventListener.cpp:
3480         (WebCore::createAttributeEventListener):
3481         * bindings/v8/ScriptController.cpp:
3482         (WebCore::ScriptController::ScriptController):
3483         (WebCore::ScriptController::evaluate):
3484         * bindings/v8/ScriptController.h:
3485         * bindings/v8/ScriptEventListener.cpp:
3486         (WebCore::createAttributeEventListener):
3487         * dom/Document.cpp:
3488         (WebCore::Document::implicitOpen):
3489         (WebCore::Document::processBaseElement):
3490         * dom/ScriptableDocumentParser.cpp:
3491         (WebCore::ScriptableDocumentParser::ScriptableDocumentParser):
3492         * dom/ScriptableDocumentParser.h:
3493         * html/parser/HTMLDocumentParser.cpp:
3494         (WebCore::HTMLDocumentParser::shouldLoadExternalScriptFromSrc):
3495         * loader/SubframeLoader.cpp:
3496         (WebCore::SubframeLoader::requestObject):
3497         (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
3498         * page/XSSAuditor.cpp: Removed.
3499         * page/XSSAuditor.h: Removed.
3500
3501 2011-02-05  Anders Carlsson  <andersca@apple.com>
3502
3503         Reviewed by Darin Adler.
3504
3505         Need a way to resize and scroll the page at the same time
3506         https://bugs.webkit.org/show_bug.cgi?id=53814
3507         <rdar://problem/8498008>
3508
3509         Export a function needed by WebKit2.
3510
3511         * WebCore.exp.in:
3512
3513 2011-02-05  Patrick Gansterer  <paroga@webkit.org>
3514
3515         Reviewed by Alexey Proskuryakov.
3516
3517         Use Document::encoding() instead of DocumentWriter::encoding()
3518         https://bugs.webkit.org/show_bug.cgi?id=53398
3519
3520         This change makes the code more readable, when a subresource
3521         inherits the character encoding of the document.
3522
3523         * dom/ProcessingInstruction.cpp:
3524         (WebCore::ProcessingInstruction::checkStyleSheet):
3525         * dom/ScriptElement.cpp:
3526         (WebCore::ScriptElement::scriptCharset):
3527         * html/HTMLLinkElement.cpp:
3528         (WebCore::HTMLLinkElement::process):
3529         * loader/cache/CachedResourceLoader.cpp:
3530         (WebCore::CachedResourceLoader::requestPreload):
3531         * platform/network/FormDataBuilder.cpp:
3532         (WebCore::FormDataBuilder::encodingFromAcceptCharset):
3533
3534 2011-02-05  Adam Barth  <abarth@webkit.org>
3535
3536         Reviewed by Eric Seidel.
3537
3538         Introduce URLString to represent a canonicalized URL represented by a string
3539         https://bugs.webkit.org/show_bug.cgi?id=53847
3540
3541         Instead of using String all over the codebase to represent a URL,
3542         instead we should have a type to represent a canonicalized URL in the
3543         form of a string.  This patch introduces that type.
3544
3545         * GNUmakefile.am:
3546         * WebCore.gypi:
3547         * WebCore.xcodeproj/project.pbxproj:
3548         * platform/KURL.cpp:
3549         (WebCore::KURL::KURL):
3550         * platform/KURL.h:
3551         (WebCore::KURL::urlString):
3552
3553 2011-02-05  Robert Hogan  <robert@webkit.org>
3554
3555         Reviewed by Antonio Gomes.
3556
3557         [Qt] Style widgets not rendering
3558         https://bugs.webkit.org/show_bug.cgi?id=53849
3559
3560         * html/HTMLObjectElement.cpp:
3561         (WebCore::HTMLObjectElement::hasValidClassId): x-qt-styled-widget is a valid class id too
3562
3563 2011-02-05  Jochen Eisinger  <jochen@chromium.org>
3564
3565         Reviewed by Adam Barth.
3566
3567         Add ContentSecurityPolicy object to Document and pass the X-WebKit-CSP header from the MainResourceLoader.
3568         https://bugs.webkit.org/show_bug.cgi?id=53685
3569
3570         * WebCore.xcodeproj/project.pbxproj:
3571         * dom/Document.h:
3572         (WebCore::Document::contentSecurityPolicy):
3573         * loader/MainResourceLoader.cpp:
3574         (WebCore::MainResourceLoader::didReceiveResponse):
3575         * page/ContentSecurityPolicy.cpp:
3576         (WebCore::ContentSecurityPolicy::didReceiveHeader):
3577         * page/ContentSecurityPolicy.h:
3578
3579 2011-02-05  Eric Seidel  <eric@webkit.org>
3580
3581         Reviewed by Adam Barth.
3582
3583         Safari should lowercase schemes in cannonicalized urls to match every other browser
3584         https://bugs.webkit.org/show_bug.cgi?id=53848
3585
3586         We're clearly the odd man out here.  See results from every browser at:
3587         https://github.com/abarth/url-spec/blob/master/tests/gurl-results/by-browser.txt
3588
3589         * platform/KURL.cpp:
3590         (WebCore::KURL::parse):
3591          - Just lowercase the scheme when copying.
3592
3593 2011-02-05  Antti Koivisto  <antti@apple.com>
3594
3595         Reviewed by Dave Hyatt.
3596
3597         Optimize matching of descendant selectors
3598         https://bugs.webkit.org/show_bug.cgi?id=49876
3599         <rdar://problem/8772822>
3600         
3601         During style recalculation, maintain a filter of tags, ids and classes seen in ancestor elements.
3602         Use the filter to quickly reject descendant and child selectors when doing style matching.
3603
3604         This speeds up style recalculations 3-6x on many major web sites.
3605
3606         * css/CSSStyleSelector.cpp:
3607         (WebCore::RuleData::RuleData):
3608         (WebCore::RuleData::descendantSelectorIdentifierHashes):
3609         (WebCore::collectElementIdentifiers):
3610         (WebCore::CSSStyleSelector::pushParent):
3611         (WebCore::CSSStyleSelector::popParent):
3612         (WebCore::CSSStyleSelector::fastRejectSelector):
3613         (WebCore::CSSStyleSelector::matchRulesForList):
3614         (WebCore::RuleData::collectDescendantSelectorIdentifierHashes):
3615         * css/CSSStyleSelector.h:
3616         (WebCore::CSSStyleSelector::ParentStackFrame::ParentStackFrame):
3617         * dom/Element.cpp:
3618         (WebCore::StyleSelectorParentPusher::StyleSelectorParentPusher):
3619         (WebCore::StyleSelectorParentPusher::push):
3620         (WebCore::StyleSelectorParentPusher::~StyleSelectorParentPusher):
3621         (WebCore::Element::attach):
3622         (WebCore::Element::recalcStyle):
3623
3624 2011-02-05  Nate Chapin  <japhet@chromium.org>
3625
3626         Reviewed by Adam Barth.
3627
3628         Refactor: NotificationCenter shouldn't hold its own copy of the ScriptExecutionContext*
3629         when it inherits one from ActiveDOMObject.
3630         https://bugs.webkit.org/show_bug.cgi?id=53815
3631
3632         * bindings/js/JSDesktopNotificationsCustom.cpp:
3633         (WebCore::JSNotificationCenter::requestPermission):
3634         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
3635         (WebCore::V8NotificationCenter::requestPermissionCallback):
3636         * notifications/NotificationCenter.cpp:
3637         (WebCore::NotificationCenter::NotificationCenter):
3638         (WebCore::NotificationCenter::checkPermission):
3639         (WebCore::NotificationCenter::requestPermission):
3640         (WebCore::NotificationCenter::disconnectFrame):
3641         * notifications/NotificationCenter.h:
3642         (WebCore::NotificationCenter::createHTMLNotification):
3643         (WebCore::NotificationCenter::createNotification):
3644
3645 2011-02-04  Adam Barth  <abarth@webkit.org>
3646
3647         Reviewed by Maciej Stachowiak.
3648
3649         Crash in WebCore::TextEncoding::decode below XSSFilter::init
3650         https://bugs.webkit.org/show_bug.cgi?id=53837
3651
3652         Add missing null check.
3653
3654         Test: http/tests/security/xssAuditor/non-block-javascript-url-frame.html
3655
3656         * html/parser/XSSFilter.cpp:
3657         (WebCore::XSSFilter::init):
3658
3659 2011-02-04  Simon Fraser  <simon.fraser@apple.com>
3660
3661         Reviewed by Dan Bernstein.
3662
3663         Crashes in ShadowBlur via WebKit2 FindController
3664         https://bugs.webkit.org/show_bug.cgi?id=53830
3665         
3666         Fix a crash cause by re-entering ShadowBlur, and add assertions to
3667         detect when it happens.
3668         
3669         The re-entrancy occurred when drawRectShadowWithTiling() filled
3670         the interior of the shadow with fillRect() on the context
3671         which still had the shadow state set. This would make another ShadowBlur
3672         on the stack and call into the code again, potentially blowing away
3673         the image buffer.
3674         
3675         Fix by turning off shadows in the destination context while we're
3676         drawing the tiled shadow. The non-tiled code path already did this.
3677
3678         Not testable because CSS shadows clip out the inside of the rect
3679         being shadowed, and SVG uses fillPath, even for rects.
3680
3681         * platform/graphics/ShadowBlur.cpp:
3682         (WebCore::ScratchBuffer::ScratchBuffer):
3683         (WebCore::ScratchBuffer::getScratchBuffer):
3684         (WebCore::ScratchBuffer::scheduleScratchBufferPurge):
3685         (WebCore::ShadowBlur::ShadowBlur):
3686         (WebCore::ShadowBlur::drawRectShadowWithTiling):
3687
3688 2011-02-04  Carlos Garcia Campos  <cgarcia@igalia.com>
3689
3690         Reviewed by Martin Robinson.
3691
3692         [GTK] Don't use a fixed size for search field icons
3693         https://bugs.webkit.org/show_bug.cgi?id=50624
3694
3695         Use the parent input content box to make sure the icon fits in the
3696         search field, scaling it down when needed.
3697
3698         * platform/gtk/RenderThemeGtk.cpp:
3699         (WebCore::paintGdkPixbuf):
3700         (WebCore::getIconSizeForPixelSize):
3701         (WebCore::adjustSearchFieldIconStyle):
3702         (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
3703         (WebCore::centerRectVerticallyInParentInputElement):
3704         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
3705         (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
3706         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
3707         (WebCore::RenderThemeGtk::paintCapsLockIndicator):
3708         (WebCore::RenderThemeGtk::paintMediaButton):
3709
3710 2011-02-04  Hironori Bono  <hbono@chromium.org>
3711
3712         Reviewed by Adam Barth.
3713
3714         [chromium] JPEG corruption
3715         https://bugs.webkit.org/show_bug.cgi?id=53250
3716
3717         Same as gray-scale JPEGs, we convert the colors of CMYK JPEGs with color
3718         profiles from CMYK to RGB twice and it causes color corruption. This
3719         change suppresses the color profiles for CMYK JPEGs same as gray-scale
3720         ones.
3721
3722         Test: fast/images/cmyk-jpeg-with-color-profile.html
3723
3724         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
3725         (WebCore::JPEGImageReader::decode):
3726
3727 2011-02-04  Xiyuan Xia  <xiyuan@chromium.org>
3728
3729         Reviewed by Tony Chang.
3730
3731         [Chromium] Option text in select popup does not align with menulist button text
3732         https://bugs.webkit.org/show_bug.cgi?id=53632
3733
3734         This makes clientPaddingLeft and  clientPaddingRight return
3735         the additional m_innerBlock's padding so that the popup item text
3736         aligns with the menulist button text.
3737
3738         * rendering/RenderMenuList.cpp:
3739         (WebCore::RenderMenuList::clientPaddingLeft):
3740         (WebCore::RenderMenuList::clientPaddingRight):
3741
3742 2011-02-04  Anders Carlsson  <andersca@apple.com>
3743
3744         Reviewed by Sam Weinig and Beth Dakin.
3745
3746         REGRESSION: Horizontal scrollbar thumbs leave artifacts over page content when scrolling vertically
3747         <rdar://problem/8962457>
3748
3749         * platform/ScrollView.cpp:
3750         (WebCore::ScrollView::scrollContents):
3751         Subtract scrollbars from the scroll view rect if overlay scrollers are enabled.
3752         
3753         * platform/ScrollableArea.cpp:
3754         (WebCore::ScrollableArea::setScrollOffsetFromAnimation):
3755         Make sure to invalidate both scrollbars if overlay scrollers are enabled.
3756
3757 2011-02-04  Adam Barth  <abarth@webkit.org>
3758
3759         Reviewed by Eric Seidel.
3760
3761         PluginDocuments don't create widgets for plugins on back/forward
3762         https://bugs.webkit.org/show_bug.cgi?id=53474
3763
3764         Long ago, PluginDocument always caused the HTMLEmbedElement to create
3765         its widget synchronously during a post-layout task.  Recently, however,
3766         some changes to the HistroyController caused layout on back/forward to
3767         become slightly more complicated (and added an extra level of recursion
3768         to layout).  This extra level of recursion triggered the "I've recursed
3769         too many times" condition in the post-layout task queue, causing the
3770         FrameView to run the remainder of the tasks asynchronously.
3771         Unfortunately, that broke PluginDocument because it needs its the
3772         HTMLEmbedElement's updateWidget task to run synchronously.
3773
3774         This patch adds a mechanism for "kicking off" the pending post-layout
3775         tasks synchronously (instead of waiting for the timer to fire).
3776         PluginDocument then uses that facility to ensure that the
3777         HTMLEmbedElement's updateWidget task happens.
3778
3779         Test: plugins/plugin-document-back-forward.html
3780
3781         * html/PluginDocument.cpp:
3782         (WebCore::PluginDocumentParser::appendBytes):
3783         * page/FrameView.cpp:
3784         (WebCore::FrameView::flushAnyPendingPostLayoutTasks):
3785         * page/FrameView.h:
3786
3787 2011-02-04  Charlie Reis  <creis@chromium.org>
3788
3789         Reviewed by Mihai Parparita.
3790
3791         Crash in WebCore::HistoryController::itemsAreClones
3792         https://bugs.webkit.org/show_bug.cgi?id=52819
3793
3794         Avoids deleting the current HistoryItem while it is still in use.
3795         Ensures that provisional items are committed for same document navigations.
3796         Ensures that error pages are committed on back/forward navigations.
3797         Also removes unneeded sanity checks used for diagnosing the problem.
3798
3799         * loader/HistoryController.cpp:
3800         * loader/HistoryController.h:
3801
3802 2011-02-04  Carol Szabo  <carol.szabo@nokia.com>
3803
3804         Reviewed by David Hyatt.
3805
3806         Code Changes.
3807
3808         CSS 2.1 failure: content-*
3809         https://bugs.webkit.org/show_bug.cgi?id=52126
3810
3811         Test: fast/css/counters/content-021.html
3812
3813         * rendering/CounterNode.cpp:
3814         (showCounterTree):
3815         Made parameter const because it is supposed to be so.
3816         * rendering/RenderCounter.cpp:
3817         (WebCore::previousInPreOrder):
3818         (WebCore::previousSiblingOrParent):
3819         (WebCore::parentElement):
3820         (WebCore::areRenderersElementsSiblings):
3821         (WebCore::nextInPreOrder):
3822         Added these local helper functions to help navigate the DOM tree
3823         enriched with :before and :after pseudo elements.
3824         (WebCore::planCounter):
3825         Fixed bug that would create a repeat counter for second and
3826         subsequent renderers associated with the same DOM element.
3827         (WebCore::findPlaceForCounter):
3828         (WebCore::makeCounterNode):
3829         Changed to use the new tree navigation functions described above
3830         instead of the Renderer Tree navigation functions.
3831         (WebCore::RenderCounter::rendererSubtreeAttached):
3832         (WebCore::RenderCounter::rendererStyleChanged):
3833         Optimized to not bother about counters until the renderers are
3834         finally attached.
3835         (showRendererTree):
3836         (showNodeTree):
3837         Debug helper functions used to debug Counter bugs.
3838
3839 2011-02-04  Dan Bernstein  <mitz@apple.com>
3840
3841         Typo fix.
3842
3843         * html/parser/XSSFilter.cpp:
3844         (WebCore::HTMLNames::containsJavaScriptURL):
3845
3846 2011-02-04  Dan Bernstein  <mitz@apple.com>
3847
3848         Reviewed by Anders Carlsson.
3849
3850         Make an infinite loop introduced in r77454 finite.
3851
3852         * html/parser/XSSFilter.cpp:
3853         (WebCore::HTMLNames::containsJavaScriptURL):
3854
3855 2011-02-04  Jer Noble  <jer.noble@apple.com>
3856
3857         Reviewed by Eric Carlson.
3858
3859         Frame accurate seeking isn't always accurate
3860         https://bugs.webkit.org/show_bug.cgi?id=52697
3861
3862         Test: media/video-frame-accurate-seek.html
3863
3864         Make seeking slightly more accurate by rounding instead of truncating
3865         when converting from seconds-in-float to time/timeScale.
3866
3867         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3868         (WebCore::MediaPlayerPrivateQTKit::createQTTime):
3869         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
3870         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::mediaTimeForTimeValue):
3871         * platform/graphics/win/QTMovie.cpp:
3872         (QTMovie::setCurrentTime):
3873
3874 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
3875
3876         Reviewed by Nate Chapin.
3877
3878         Second IndexedDB events overhaul patch
3879         https://bugs.webkit.org/show_bug.cgi?id=53813
3880
3881         If an IDBRequest has a IDBTransaction, it should propogate
3882         events through it. In order to do this, IDBRequest needs to
3883         hold a transaction frontend object rather than a backend one.
3884
3885         Test: storage/indexeddb/request-event-propagation.html
3886
3887         * storage/IDBCursor.cpp:
3888         (WebCore::IDBCursor::IDBCursor):
3889         * storage/IDBCursor.h:
3890         (WebCore::IDBCursor::create):
3891         * storage/IDBDatabase.cpp:
3892         (WebCore::IDBDatabase::setSetVersionTransaction):
3893         (WebCore::IDBDatabase::createObjectStore):
3894         (WebCore::IDBDatabase::deleteObjectStore):
3895         * storage/IDBDatabase.h:
3896         * storage/IDBIndex.cpp:
3897         (WebCore::IDBIndex::IDBIndex):
3898         (WebCore::IDBIndex::openCursor):
3899         (WebCore::IDBIndex::openKeyCursor):
3900         (WebCore::IDBIndex::get):
3901         (WebCore::IDBIndex::getKey):
3902         * storage/IDBIndex.h:
3903         (WebCore::IDBIndex::create):
3904         * storage/IDBObjectStore.cpp:
3905         (WebCore::IDBObjectStore::IDBObjectStore):
3906         (WebCore::IDBObjectStore::get):
3907         (WebCore::IDBObjectStore::add):
3908         (WebCore::IDBObjectStore::put):
3909         (WebCore::IDBObjectStore::deleteFunction):
3910         (WebCore::IDBObjectStore::createIndex):
3911         (WebCore::IDBObjectStore::deleteIndex):
3912         (WebCore::IDBObjectStore::openCursor):
3913         * storage/IDBObjectStore.h:
3914         (WebCore::IDBObjectStore::create):
3915         * storage/IDBRequest.cpp:
3916         (WebCore::IDBRequest::create):
3917         (WebCore::IDBRequest::IDBRequest):
3918         (WebCore::IDBRequest::resetReadyState):
3919         (WebCore::IDBRequest::onSuccess):
3920         (WebCore::IDBRequest::dispatchEvent):
3921         * storage/IDBRequest.h:
3922         * storage/IDBTransaction.cpp:
3923         (WebCore::IDBTransaction::IDBTransaction):
3924         (WebCore::IDBTransaction::objectStore):
3925         (WebCore::IDBTransaction::contextDestroyed):
3926         (WebCore::IDBTransaction::enqueueEvent):
3927         * storage/IDBTransaction.h:
3928         * storage/IDBTransaction.idl:
3929
3930 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
3931
3932         Reviewed by Nate Chapin.
3933
3934         First step towards event propogation within IndexedDB
3935         https://bugs.webkit.org/show_bug.cgi?id=53795
3936
3937         This is the first step towards implementing
3938         http://www.w3.org/Bugs/Public/show_bug.cgi?id=11348
3939         within IndexedDB. I've created a method that knows how
3940         to capture and bubble (based on Node's dispatchGenericEvent).
3941         I've then changed IDBRequest to use it.
3942
3943         The only functional change is that preventDefault now must
3944         be called in error events to prevent the transaction from
3945         being aborted. The tests reflect this change and there's one
3946         specific test to look at this behavior.
3947
3948         Test: storage/indexeddb/error-causes-abort-by-default.html
3949
3950         * storage/IDBAbortEvent.cpp:
3951         (WebCore::IDBAbortEvent::create):
3952         (WebCore::IDBAbortEvent::IDBAbortEvent):
3953         * storage/IDBAbortEvent.h:
3954         * storage/IDBCompleteEvent.cpp:
3955         (WebCore::IDBCompleteEvent::create):
3956         (WebCore::IDBCompleteEvent::IDBCompleteEvent):
3957         * storage/IDBCompleteEvent.h:
3958         * storage/IDBErrorEvent.cpp:
3959         (WebCore::IDBErrorEvent::IDBErrorEvent):
3960         * storage/IDBEvent.cpp:
3961         (WebCore::IDBEvent::IDBEvent):
3962         (WebCore::IDBEvent::dispatch):
3963         * storage/IDBEvent.h:
3964         * storage/IDBRequest.cpp:
3965         (WebCore::IDBRequest::dispatchEvent):
3966         * storage/IDBRequest.h:
3967         * storage/IDBSuccessEvent.cpp:
3968         (WebCore::IDBSuccessEvent::IDBSuccessEvent):
3969         * storage/IDBTransaction.cpp:
3970         (WebCore::IDBTransaction::onAbort):
3971         (WebCore::IDBTransaction::onComplete):
3972         * storage/IDBTransaction.h:
3973         (WebCore::IDBTransaction::backend):
3974         * storage/IDBTransactionBackendImpl.cpp:
3975         (WebCore::IDBTransactionBackendImpl::taskTimerFired):
3976
3977 2011-02-04  Daniel Cheng  <dcheng@chromium.org>
3978
3979         Reviewed by Dmitry Titov.
3980
3981         Clone WebClipboard to be frame-specific.
3982         https://bugs.webkit.org/show_bug.cgi?id=53727
3983
3984         For drop operations, Chrome currently snapshots the data and copies it
3985         into the renderer process. As we add more supported drag data types, the
3986         copy will become increasingly expensive. Instead, we'd like to snapshot
3987         data in the browser to reduce the amount of data copied and to support
3988         Blob in DataTransferItem. In order to allow this, we associated
3989         WebClipboard with a frame so it can correctly route its IPCs to the
3990         corresponding Chromium host.
3991
3992         No new tests because no new functionality.
3993
3994         * platform/chromium/ChromiumDataObject.cpp:
3995         (WebCore::ChromiumDataObject::createReadable):
3996         * platform/chromium/ChromiumDataObject.h:
3997         * platform/chromium/ClipboardChromium.cpp:
3998         (WebCore::ClipboardChromium::create):
3999         * platform/chromium/PlatformBridge.h:
4000         * platform/chromium/ReadableDataObject.cpp:
4001         (WebCore::ReadableDataObject::create):
4002         (WebCore::ReadableDataObject::ReadableDataObject):
4003         (WebCore::ReadableDataObject::getData):
4004         (WebCore::ReadableDataObject::urlTitle):
4005         (WebCore::ReadableDataObject::htmlBaseUrl):
4006         (WebCore::ReadableDataObject::filenames):
4007         (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
4008         * platform/chromium/ReadableDataObject.h:
4009
4010 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
4011
4012         Revert https://bugs.webkit.org/show_bug.cgi?id=53795
4013
4014         * storage/IDBAbortEvent.cpp:
4015         (WebCore::IDBAbortEvent::create):
4016         (WebCore::IDBAbortEvent::IDBAbortEvent):
4017         * storage/IDBAbortEvent.h:
4018         * storage/IDBCompleteEvent.cpp:
4019         (WebCore::IDBCompleteEvent::create):
4020         (WebCore::IDBCompleteEvent::IDBCompleteEvent):
4021         * storage/IDBCompleteEvent.h:
4022         * storage/IDBErrorEvent.cpp:
4023         (WebCore::IDBErrorEvent::IDBErrorEvent):
4024         * storage/IDBEvent.cpp:
4025         (WebCore::IDBEvent::IDBEvent):
4026         * storage/IDBEvent.h:
4027         * storage/IDBRequest.cpp:
4028         (WebCore::IDBRequest::dispatchEvent):
4029         * storage/IDBRequest.h:
4030         * storage/IDBSuccessEvent.cpp:
4031         (WebCore::IDBSuccessEvent::IDBSuccessEvent):
4032         * storage/IDBTransaction.cpp:
4033         (WebCore::IDBTransaction::onAbort):
4034         (WebCore::IDBTransaction::onComplete):
4035         * storage/IDBTransaction.h:
4036         * storage/IDBTransactionBackendImpl.cpp:
4037         (WebCore::IDBTransactionBackendImpl::taskTimerFired):
4038
4039 2011-02-04  Martin Galpin  <martin@66laps.com>
4040
4041         Reviewed by David Levin.
4042
4043         CORS origin header not set on GET when a preflight request is required.
4044         https://bugs.webkit.org/show_bug.cgi?id=50773
4045         
4046         Test: http/tests/xmlhttprequest/cross-origin-preflight-get.html
4047
4048         * loader/DocumentThreadableLoader.cpp:
4049         (WebCore::DocumentThreadableLoader::preflightSuccess): 
4050         Explicitly set the request origin after a preflight request succeeds.
4051
4052 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
4053
4054         Reviewed by Nate Chapin.
4055
4056         First step towards event propogation within IndexedDB
4057         https://bugs.webkit.org/show_bug.cgi?id=53795
4058
4059         This is the first step towards implementing
4060         http://www.w3.org/Bugs/Public/show_bug.cgi?id=11348
4061         within IndexedDB. I've created a method that knows how
4062         to capture and bubble (based on Node's dispatchGenericEvent).
4063         I've then changed IDBRequest to use it.
4064
4065         The only functional change is that preventDefault now must
4066         be called in error events to prevent the transaction from
4067         being aborted. The tests reflect this change and there's one
4068         specific test to look at this behavior.
4069
4070         Test: storage/indexeddb/error-causes-abort-by-default.html
4071
4072         * storage/IDBAbortEvent.cpp:
4073         (WebCore::IDBAbortEvent::create):
4074         (WebCore::IDBAbortEvent::IDBAbortEvent):
4075         * storage/IDBAbortEvent.h:
4076         * storage/IDBCompleteEvent.cpp:
4077         (WebCore::IDBCompleteEvent::create):
4078         (WebCore::IDBCompleteEvent::IDBCompleteEvent):
4079         * storage/IDBCompleteEvent.h:
4080         * storage/IDBErrorEvent.cpp:
4081         (WebCore::IDBErrorEvent::IDBErrorEvent):
4082         * storage/IDBEvent.cpp:
4083         (WebCore::IDBEvent::IDBEvent):
4084         (WebCore::IDBEvent::dispatch):
4085         * storage/IDBEvent.h:
4086         * storage/IDBRequest.cpp:
4087         (WebCore::IDBRequest::dispatchEvent):
4088         * storage/IDBRequest.h:
4089         * storage/IDBSuccessEvent.cpp:
4090         (WebCore::IDBSuccessEvent::IDBSuccessEvent):
4091         * storage/IDBTransaction.cpp:
4092         (WebCore::IDBTransaction::onAbort):
4093         (WebCore::IDBTransaction::onComplete):
4094         * storage/IDBTransaction.h:
4095         (WebCore::IDBTransaction::backend):
4096         * storage/IDBTransactionBackendImpl.cpp:
4097         (WebCore::IDBTransactionBackendImpl::taskTimerFired):
4098
4099 2011-02-04  Dimitri Glazkov  <dglazkov@chromium.org>
4100
4101         Reviewed by Csaba Osztrogonác.
4102
4103         [Qt]REGRESSION(r76951): media/controls-without-preload.html fails
4104         https://bugs.webkit.org/show_bug.cgi?id=53674
4105
4106         * css/mediaControlsQt.css:
4107
4108 2011-02-04  Dan Bernstein  <mitz@apple.com>
4109
4110         Reviewed by Darin Adler and Dave Hyatt.
4111
4112         <rdar://problem/8902704> Make ruby text size 50% by default
4113         https://bugs.webkit.org/show_bug.cgi?id=53723
4114
4115         * css/html.css:
4116         (ruby > rt): Changed the font-size from 60% to 50%.
4117
4118 2011-02-04  Antti Koivisto  <antti@apple.com>
4119
4120         Reviewed by Dimitri Glazkov.
4121
4122         https://bugs.webkit.org/show_bug.cgi?id=53610
4123         Regression: adjacent sibling selector not working as expected
4124         <rdar://problem/8960033>
4125         
4126         https://bugs.webkit.org/show_bug.cgi?id=53574
4127         REGRESSION (r76012): :last-child:after not working as expected
4128         <rdar://problem/8948643>
4129         
4130         Test for additional conditions in parent style that prevent sharing.
4131
4132         Tests: fast/selectors/style-sharing-adjacent-selector.html
4133                fast/selectors/style-sharing-last-child.html
4134
4135         * css/CSSStyleSelector.cpp:
4136         (WebCore::parentStylePreventsSharing):
4137         (WebCore::CSSStyleSelector::locateSharedStyle):
4138
4139 2011-02-04  Mark Mentovai  <mark@chromium.org>
4140
4141         Reviewed by Dimitri Glazkov.
4142
4143         Chromium GYP build fix.
4144
4145         When various settings were moved to webcore_prerequisites in r66364,
4146         things that should have been direct_dependent_settings were not marked
4147         as such. GYP 'defines', for example, make no sense on a 'none'-type
4148         target such as webcore_prerequisites. It appears that it was intended
4149         for these settings to be pushed to direct dependents, which would make
4150         direct_dependent_settings correct.
4151
4152         Losing the ChromiumWebCoreObjC defines on the Mac, for example, caused
4153         http://crbug.com/71537, which at best causes Mac console log spew, and
4154         at worst may result in Chromium's copy of WebCore using system
4155         definitions of certain Objective-C classes at runtime, or vice-versa.
4156
4157         The build now includes a postbuild step to prevent
4158         http://crbug.com/71537 from regressing again. The build will fail upon
4159         regression.
4160
4161         https://bugs.webkit.org/show_bug.cgi?id=53630
4162
4163         * WebCore.gyp/WebCore.gyp: Move things in webcore_prerequisites into
4164           direct_dependent_settings as needed, add the check_objc_rename
4165           postbuild step.
4166         * WebCore.gyp/mac/check_objc_rename.sh: Added.
4167
4168 2011-02-04  Robert Hogan  <robert@webkit.org>
4169
4170         Reviewed by Darin Fisher.
4171
4172         Move chromium iframe shim code to cross-platform file
4173         https://bugs.webkit.org/show_bug.cgi?id=52594
4174
4175         Move Chromium code for identifying and cutting out
4176         iframe shims from plugins to cross-platform utility file
4177         IFrameShimSupport.cpp.
4178         Amend PluginViewQt to use this code to handle shims correctly.
4179
4180         * WebCore.gypi: Add Chromium support for IFrameShimSupport.cpp
4181         * WebCore.pro: Add Qt support for IFrameShimSupport.cpp
4182         * plugins/IFrameShimSupport.cpp: Added.
4183         (WebCore::getObjectStack):
4184         (WebCore::iframeIsAbovePlugin):
4185         (WebCore::getPluginOcclusions):
4186         * plugins/IFframeShimSupport.h: Added.
4187         * plugins/qt/PluginViewQt.cpp:
4188         (WebCore::PluginView::setNPWindowIfNeeded):
4189
4190 2011-02-04  Xiaomei Ji  <xji@chromium.org>
4191
4192         Reviewed by David Levin.
4193
4194         Implement "<option> should implement the dir attribute" for chromium port after r76983.
4195         https://bugs.webkit.org/show_bug.cgi?id=50969
4196
4197         Use manual test Source/WebCore/manual-tests/pop-up-alignment-and-direction.html
4198         added in r76983.
4199
4200         * platform/chromium/PopupMenuChromium.cpp: Remove directionality hint from
4201         <select> drop-down setting.
4202         (WebCore::PopupListBox::paintRow): Use <option>'s directionality to paint
4203         items in drop-down and pass-in bidi override flag when creating text run.
4204         * platform/chromium/PopupMenuChromium.h: Remove directionalityHint from
4205         PopupContainerSettings.
4206
4207 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
4208
4209         Build fix from merge mistake.
4210
4211         * storage/IDBTransaction.cpp:
4212         (WebCore::IDBTransaction::ensureEventTargetData):
4213
4214 2011-02-04  Levi Weintraub  <leviw@chromium.org>
4215
4216         Reviewed by Darin Adler.
4217
4218         Remove unneeded function declarations in comments in EditorClient.h
4219         https://bugs.webkit.org/show_bug.cgi?id=53745
4220
4221         Removing unused commented out function declarations. No tests since this is just cleanup.