Fix the build.
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-07-10  Mark Rowe  <mrowe@apple.com>
2
3         Fix the build.
4
5         * svg/properties/SVGAttributeToPropertyMap.h: Forward-declare SVGPropertyInfo as a struct
6         since that's what it is.
7
8 2011-07-09  Patrick Gansterer  <paroga@webkit.org>
9
10         Unreviewed WinCE build fix for r90680.
11
12         Repeat the change done in r90681 for all other SVGAnimated*PropertyTearOff.h files.
13
14         * svg/properties/SVGAnimatedEnumerationPropertyTearOff.h: Make create public and remove friendship with SVGAnimatedProperty.
15         * svg/properties/SVGAnimatedListPropertyTearOff.h: Ditto.
16         * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h: Ditto.
17         * svg/properties/SVGAnimatedPropertyTearOff.h: Ditto.
18         * svg/properties/SVGAnimatedTransformListPropertyTearOff.h: Ditto.
19
20 2011-07-09  Nikolas Zimmermann  <nzimmermann@rim.com>
21
22         Add a possibility to retrieve the associated SVGAnimatedProperty object for a certain XML attribute
23         https://bugs.webkit.org/show_bug.cgi?id=63797
24
25         Fix WinCE build. Funny none other platform complained.
26
27         * svg/properties/SVGAnimatedStaticPropertyTearOff.h: Make create public, SVGAnimatedProperty needs it - remove friendship with it.
28
29 2011-07-09  Nikolas Zimmermann  <nzimmermann@rim.com>
30
31         Add a possibility to retrieve the associated SVGAnimatedProperty object for a certain XML attribute
32         https://bugs.webkit.org/show_bug.cgi?id=63797
33
34         Reviewed by Dirk Schulze.
35
36         In order to prepare animVal support we need a way to map a given SVG DOM attribute to a SVGAnimatedProperty.
37         eg. SVGNames::xAttr -> SVGRectElement::xAnimated(), etc. This will be needed to update the animVal of the
38         SVGAnimatedProperty, if an animation is running. It would required adding a new method to all SVG* classes
39         that define animated properties. Unfortunately we already have lots of repeated code in methods like
40         synchronizeProperty / fillAttributeToPropertyTypeMap. Look at SVGRectElement for example:
41
42         void SVGRectElement::synchronizeProperty(const QualifiedName& attrName)
43         {
44             if (attrName == anyQName()) {
45                 synchronizeX();
46                 synchronizeY();
47                  ...
48               }
49
50             if (attrName == SVGNames::xAttr) {
51                 synchronizeX();
52                 return;
53             }
54
55             if (attrName == SVGNames::yAttr) {
56                 synchronizeY();
57                 return;
58             }
59             ...
60         }
61
62         or
63
64         void SVGRectElement::fillAttributeToPropertyTypeMap()
65         {
66             AttributeToPropertyTypeMap& attributeToPropertyTypeMap = this->attributeToPropertyTypeMap();
67         
68             SVGStyledTransformableElement::fillPassedAttributeToPropertyTypeMap(attributeToPropertyTypeMap);
69             attributeToPropertyTypeMap.set(SVGNames::xAttr, AnimatedLength);
70             attributeToPropertyTypeMap.set(SVGNames::yAttr, AnimatedLength);
71             ...
72         }
73
74         These lookups are all performed dynamically. Each synchronizeProperty() call does a lot of comparisons.
75         fillAttributeToPropertyTypeMap() isn't that bad as the result is cached in a static HashMap per-SVGRectElement.
76         There's no reason to do these things dynamically!
77
78         Inspired by JSC, I'm adding a "static const SVGPropertyInfo s_fooPropertyInfo" object for each animated SVG property.
79         For example, for SVGRectElements SVGAnimatedLength x property we're storing:
80         - "AnimatedPropertyType type" (AnimatedLength -- note the enum was named AnimatedAttributeType, I renamed it to AnimatedPropertyType for clarity)
81         - "const QualifiedName& attributeName" (SVGNames::xAttr)
82         - "const AtomicString& propertyIdentifier" (SVGNames::xAttr.localName() -- only different if N-wrappers map to a single XML DOM attribute, eg. orientAttr)
83         - "SynchronizeProperty synchronizeProperty" (callback to SVGRectElement::synchronizeX)
84         - "LookupOrCreateWrapperForAnimatedProperty lookupOrCreateWrapperForAnimatedProperty" (callback to SVGRectElement::xAnimated)
85
86         Using this information, we can replace all the various synchronizeProperty/fillAttributeToPropertyMap implementations, with a single one in SVGElement.
87         All these are auto-generated, using the standard macros used to define/declare SVG animated properties. This required several changes to the macros.
88         Here's a summary:
89     
90         #1) In all headers, wrap DECLARE_ANIMATED_* calls, in BEGIN_DECLARE_ANIMATED_PROPERTIES(ClassName) / END_DECLARE_ANIMATED_PROPERTIES blocks.
91         
92             Sample change for SVGRectElement:
93             -    DECLARE_ANIMATED_LENGTH(X, x)
94             -    DECLARE_ANIMATED_LENGTH(Y, y)
95             -    ...
96
97             +    BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGRectElement)
98             +        DECLARE_ANIMATED_LENGTH(X, x)
99             +        DECLARE_ANIMATED_LENGTH(Y, y)
100             +         ...
101             +    END_DECLARE_ANIMATED_PROPERTIES
102
103         #2) In all cpp files, add a new section wrapped in BEGIN_REGISTER_ANIMATED_PROPERTIES(ClassName / END_REGISTER_ANIMATED_PROPERTIES blocks:
104
105             Sample change for SVGRectElement:
106             +BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGRectElement)
107             +    REGISTER_LOCAL_ANIMATED_PROPERTY(x)
108             +    REGISTER_LOCAL_ANIMATED_PROPERTY(y)
109             +    ...
110             +    REGISTER_PARENT_ANIMATED_PROPERTIES(SVGStyledTransformableElement)
111             +    REGISTER_PARENT_ANIMATED_PROPERTIES(SVGTests)
112             +END_REGISTER_ANIMATED_PROPERTIES
113
114             This is the main piece of the logic that replaces the manual synchronizeProperty/fillAttributeToPropertyMap implementation. It expands to following:
115
116             SVGAttributeToPropertyMap& SVGRectElement::attributeToPropertyMap()
117             {
118                 DEFINE_STATIC_LOCAL(SVGAttributeToPropertyMap, s_attributeToPropertyMap, ());
119             }
120
121             static void registerAnimatedPropertiesForSVGRectElement()
122             {
123                 SVGAttributeToPropertyMap& map = SVGRectElement::attributeToPropertyMap();
124                 if (!map.isEmpty())
125                     return;
126                 map.addProperty(SVGRectElement::xPropertyInfo());
127                 map.addProperty(SVGRectElement::yPropertyInfo());
128                 ...
129                 map.addProperties(SVGStyledTransformableElement::attributeToPropertyMap());
130                 map.addProperties(SVGTests::attributeToPropertyMap());
131             }
132
133             A single-instance of SVGAttributeToPropertyMap is created for each SVG*Element. The constructor of SVGRectElement is supposed to call
134             registerAnimatedPropertiesForSVGRectElement(), which collects all properties of SVGRectElement and all its parent classes and stores them
135             in a Vector<const SVGPropertyInfo*>. This Vector is stored in a HashMap<QualifiedName, Vector<const SVGPropertyInfo*> > where the key
136             is the attribute name (eg. SVGNames::xAttr -> SVGRectElement::xPropertyInfo). This is only done _once_ per SVGRectElement.
137
138             SVGElement contains a "virtual SVGAttributeToPropertyMap& localAttributeToPropertyMap()" method, and SVGRectElement overrides it
139             and returns SVGRectElement::attributeToPropertyMap() (which is static!) -- this is hidden again in the macros, no need to write any code.
140
141             SVGAttributeToPropertyMap provides following API:
142             - bool synchronizeProperty(SVGElement* contextElement, const QualifiedName& attributeName)
143             - void synchronizeProperties(SVGElement* contextElement)
144             
145                 A generic way to synchronize a SVGAnimatedProperty with its XML DOM attribute. Any SVG DOM change to eg. <rect>s x property will now trigger
146                 contextElement->localAttributeToPropertyMap().synchronizeProperty(this, SVGNames::xAttr)
147                 The SVGAttributeToPropertyMap will ask its HashMap for the Vector containing the properties for SVGNames::xAttr (in that case, just one xAnimated()).
148
149             - void animatedPropertyTypeForAttribute(const QualifiedName& attributeName, Vector<AnimatedPropertyType>& propertyTypes)
150
151                 This method replaces the fillAttributeToPropertyMap implementations everywhere.
152         
153             - void animatedPropertiesForAttribute(SVGElement* contextElement, const QualifiedName& attributeName, Vector<RefPtr<SVGAnimatedProperty> >& properties);
154
155                 This method is not used yet, but allows us to collect all SVGAnimatedProperties for a QualifiedName -- the initial goal for this patch.
156
157         #3) In all cpp files, add a call to "registerAnimatedPropertiesForClassName()" in the constructor. Forgetting this will result in a compile error.
158
159         Doesn't affect any tests.
160
161         * CMakeLists.txt:
162         * GNUmakefile.list.am:
163         * WebCore.gypi:
164         * WebCore.pro:
165         * WebCore.vcproj/WebCore.vcproj:
166         * WebCore.xcodeproj/project.pbxproj:
167         * bindings/scripts/CodeGeneratorJS.pm:
168         (NativeToJSValue):
169         * bindings/scripts/CodeGeneratorObjC.pm:
170         (GenerateImplementation):
171         * bindings/scripts/CodeGeneratorV8.pm:
172         (GenerateNormalAttrGetter):
173         * svg/SVGAElement.cpp:
174         (WebCore::SVGAElement::SVGAElement):
175         * svg/SVGAElement.h:
176         (WebCore::SVGAElement::synchronizeRequiredFeatures):
177         (WebCore::SVGAElement::synchronizeRequiredExtensions):
178         (WebCore::SVGAElement::synchronizeSystemLanguage):
179         * svg/SVGAltGlyphElement.cpp:
180         (WebCore::SVGAltGlyphElement::SVGAltGlyphElement):
181         * svg/SVGAltGlyphElement.h:
182         * svg/SVGAnimateElement.cpp:
183         (WebCore::SVGAnimateElement::SVGAnimateElement):
184         (WebCore::SVGAnimateElement::hasValidAttributeType):
185         (WebCore::SVGAnimateElement::determineAnimatedPropertyType):
186         (WebCore::SVGAnimateElement::determinePropertyValueTypes):
187         (WebCore::SVGAnimateElement::calculateAnimatedValue):
188         (WebCore::SVGAnimateElement::calculateFromAndToValues):
189         (WebCore::SVGAnimateElement::calculateFromAndByValues):
190         (WebCore::SVGAnimateElement::resetToBaseValue):
191         (WebCore::SVGAnimateElement::applyResultsToTarget):
192         (WebCore::SVGAnimateElement::calculateDistance):
193         (WebCore::SVGAnimateElement::ensureAnimator):
194         * svg/SVGAnimateElement.h:
195         * svg/SVGAnimateTransformElement.cpp:
196         (WebCore::SVGAnimateTransformElement::hasValidAttributeType):
197         (WebCore::SVGAnimateTransformElement::determineAnimatedPropertyType):
198         (WebCore::SVGAnimateTransformElement::resetToBaseValue):
199         (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
200         (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
201         * svg/SVGAnimateTransformElement.h:
202         * svg/SVGAnimatedAngle.h:
203         * svg/SVGAnimatedBoolean.h:
204         * svg/SVGAnimatedEnumeration.h:
205         * svg/SVGAnimatedInteger.h:
206         * svg/SVGAnimatedLength.h:
207         * svg/SVGAnimatedLengthList.h:
208         * svg/SVGAnimatedNumber.h:
209         * svg/SVGAnimatedNumberList.h:
210         * svg/SVGAnimatedPreserveAspectRatio.h:
211         * svg/SVGAnimatedRect.h:
212         * svg/SVGAnimatedString.h:
213         * svg/SVGAnimatedTransformList.h:
214         * svg/SVGAnimatedType.cpp:
215         (WebCore::SVGAnimatedType::SVGAnimatedType):
216         * svg/SVGAnimatedType.h:
217         (WebCore::SVGAnimatedType::type):
218         * svg/SVGAnimatedTypeAnimator.h:
219         (WebCore::SVGAnimatedTypeAnimator::SVGAnimatedTypeAnimator):
220         * svg/SVGAnimationElement.cpp:
221         (WebCore::SVGAnimationElement::SVGAnimationElement):
222         (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
223         * svg/SVGAnimationElement.h:
224         (WebCore::SVGAnimationElement::synchronizeRequiredFeatures):
225         (WebCore::SVGAnimationElement::synchronizeRequiredExtensions):
226         (WebCore::SVGAnimationElement::synchronizeSystemLanguage):
227         * svg/SVGAnimatorFactory.h:
228         (WebCore::SVGAnimatorFactory::create):
229         * svg/SVGCircleElement.cpp:
230         (WebCore::SVGCircleElement::SVGCircleElement):
231         * svg/SVGCircleElement.h:
232         (WebCore::SVGCircleElement::synchronizeRequiredFeatures):
233         (WebCore::SVGCircleElement::synchronizeRequiredExtensions):
234         (WebCore::SVGCircleElement::synchronizeSystemLanguage):
235         * svg/SVGClipPathElement.cpp:
236         (WebCore::SVGClipPathElement::SVGClipPathElement):
237         * svg/SVGClipPathElement.h:
238         (WebCore::SVGClipPathElement::synchronizeRequiredFeatures):
239         (WebCore::SVGClipPathElement::synchronizeRequiredExtensions):
240         (WebCore::SVGClipPathElement::synchronizeSystemLanguage):
241         * svg/SVGComponentTransferFunctionElement.cpp:
242         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
243         * svg/SVGComponentTransferFunctionElement.h:
244         * svg/SVGCursorElement.cpp:
245         (WebCore::SVGCursorElement::SVGCursorElement):
246         * svg/SVGCursorElement.h:
247         (WebCore::SVGCursorElement::synchronizeRequiredFeatures):
248         (WebCore::SVGCursorElement::synchronizeRequiredExtensions):
249         (WebCore::SVGCursorElement::synchronizeSystemLanguage):
250         * svg/SVGDefsElement.cpp:
251         (WebCore::SVGDefsElement::SVGDefsElement):
252         * svg/SVGDefsElement.h:
253         (WebCore::SVGDefsElement::synchronizeRequiredFeatures):
254         (WebCore::SVGDefsElement::synchronizeRequiredExtensions):
255         (WebCore::SVGDefsElement::synchronizeSystemLanguage):
256         * svg/SVGElement.cpp:
257         (WebCore::SVGElement::animatedPropertyTypeForAttribute):
258         (WebCore::SVGElement::updateAnimatedSVGAttribute):
259         (WebCore::SVGElement::localAttributeToPropertyMap):
260         (WebCore::SVGElement::synchronizeRequiredFeatures):
261         (WebCore::SVGElement::synchronizeRequiredExtensions):
262         (WebCore::SVGElement::synchronizeSystemLanguage):
263         * svg/SVGElement.h:
264         (WebCore::SVGElement::svgAttributeChanged):
265         (WebCore::SVGElement::synchronizeRequiredFeatures):
266         (WebCore::SVGElement::synchronizeRequiredExtensions):
267         (WebCore::SVGElement::synchronizeSystemLanguage):
268         * svg/SVGEllipseElement.cpp:
269         (WebCore::SVGEllipseElement::SVGEllipseElement):
270         * svg/SVGEllipseElement.h:
271         (WebCore::SVGEllipseElement::synchronizeRequiredFeatures):
272         (WebCore::SVGEllipseElement::synchronizeRequiredExtensions):
273         (WebCore::SVGEllipseElement::synchronizeSystemLanguage):
274         * svg/SVGFEBlendElement.cpp:
275         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
276         * svg/SVGFEBlendElement.h:
277         * svg/SVGFEColorMatrixElement.cpp:
278         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
279         * svg/SVGFEColorMatrixElement.h:
280         * svg/SVGFEComponentTransferElement.cpp:
281         (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
282         * svg/SVGFEComponentTransferElement.h:
283         * svg/SVGFECompositeElement.cpp:
284         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
285         * svg/SVGFECompositeElement.h:
286         * svg/SVGFEConvolveMatrixElement.cpp:
287         (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement):
288         * svg/SVGFEConvolveMatrixElement.h:
289         * svg/SVGFEDiffuseLightingElement.cpp:
290         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
291         * svg/SVGFEDiffuseLightingElement.h:
292         * svg/SVGFEDisplacementMapElement.cpp:
293         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
294         * svg/SVGFEDisplacementMapElement.h:
295         * svg/SVGFEDropShadowElement.cpp:
296         (WebCore::SVGFEDropShadowElement::SVGFEDropShadowElement):
297         * svg/SVGFEDropShadowElement.h:
298         * svg/SVGFEFloodElement.cpp:
299         * svg/SVGFEFloodElement.h:
300         * svg/SVGFEGaussianBlurElement.cpp:
301         (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
302         * svg/SVGFEGaussianBlurElement.h:
303         * svg/SVGFEImageElement.cpp:
304         (WebCore::SVGFEImageElement::SVGFEImageElement):
305         * svg/SVGFEImageElement.h:
306         * svg/SVGFELightElement.cpp:
307         (WebCore::SVGFELightElement::SVGFELightElement):
308         * svg/SVGFELightElement.h:
309         * svg/SVGFEMergeElement.cpp:
310         * svg/SVGFEMergeElement.h:
311         * svg/SVGFEMergeNodeElement.cpp:
312         (WebCore::SVGFEMergeNodeElement::SVGFEMergeNodeElement):
313         * svg/SVGFEMergeNodeElement.h:
314         * svg/SVGFEMorphologyElement.cpp:
315         (WebCore::SVGFEMorphologyElement::SVGFEMorphologyElement):
316         * svg/SVGFEMorphologyElement.h:
317         * svg/SVGFEOffsetElement.cpp:
318         (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
319         * svg/SVGFEOffsetElement.h:
320         * svg/SVGFESpecularLightingElement.cpp:
321         (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
322         * svg/SVGFESpecularLightingElement.h:
323         * svg/SVGFETileElement.cpp:
324         (WebCore::SVGFETileElement::SVGFETileElement):
325         * svg/SVGFETileElement.h:
326         * svg/SVGFETurbulenceElement.cpp:
327         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
328         * svg/SVGFETurbulenceElement.h:
329         * svg/SVGFilterElement.cpp:
330         (WebCore::SVGFilterElement::SVGFilterElement):
331         * svg/SVGFilterElement.h:
332         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
333         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
334         * svg/SVGFilterPrimitiveStandardAttributes.h:
335         * svg/SVGFitToViewBox.cpp:
336         * svg/SVGFitToViewBox.h:
337         * svg/SVGFontElement.cpp:
338         (WebCore::SVGFontElement::SVGFontElement):
339         * svg/SVGFontElement.h:
340         (WebCore::SVGFontElement::rendererIsNeeded):
341         * svg/SVGForeignObjectElement.cpp:
342         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
343         * svg/SVGForeignObjectElement.h:
344         (WebCore::SVGForeignObjectElement::synchronizeRequiredFeatures):
345         (WebCore::SVGForeignObjectElement::synchronizeRequiredExtensions):
346         (WebCore::SVGForeignObjectElement::synchronizeSystemLanguage):
347         * svg/SVGGElement.cpp:
348         (WebCore::SVGGElement::SVGGElement):
349         * svg/SVGGElement.h:
350         (WebCore::SVGGElement::synchronizeRequiredFeatures):
351         (WebCore::SVGGElement::synchronizeRequiredExtensions):
352         (WebCore::SVGGElement::synchronizeSystemLanguage):
353         * svg/SVGGlyphElement.cpp:
354         * svg/SVGGlyphElement.h:
355         * svg/SVGGradientElement.cpp:
356         (WebCore::SVGGradientElement::SVGGradientElement):
357         (WebCore::SVGGradientElement::svgAttributeChanged):
358         * svg/SVGGradientElement.h:
359         * svg/SVGImageElement.cpp:
360         (WebCore::SVGImageElement::SVGImageElement):
361         * svg/SVGImageElement.h:
362         (WebCore::SVGImageElement::synchronizeRequiredFeatures):
363         (WebCore::SVGImageElement::synchronizeRequiredExtensions):
364         (WebCore::SVGImageElement::synchronizeSystemLanguage):
365         * svg/SVGLineElement.cpp:
366         (WebCore::SVGLineElement::SVGLineElement):
367         * svg/SVGLineElement.h:
368         (WebCore::SVGLineElement::synchronizeRequiredFeatures):
369         (WebCore::SVGLineElement::synchronizeRequiredExtensions):
370         (WebCore::SVGLineElement::synchronizeSystemLanguage):
371         * svg/SVGLinearGradientElement.cpp:
372         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
373         * svg/SVGLinearGradientElement.h:
374         * svg/SVGMPathElement.cpp:
375         (WebCore::SVGMPathElement::SVGMPathElement):
376         * svg/SVGMPathElement.h:
377         * svg/SVGMarkerElement.cpp:
378         (WebCore::SVGMarkerElement::orientTypePropertyInfo):
379         (WebCore::SVGMarkerElement::SVGMarkerElement):
380         (WebCore::SVGMarkerElement::setOrientToAuto):
381         (WebCore::SVGMarkerElement::setOrientToAngle):
382         (WebCore::SVGMarkerElement::synchronizeOrientType):
383         (WebCore::SVGMarkerElement::lookupOrCreateOrientTypeWrapper):
384         (WebCore::SVGMarkerElement::orientTypeAnimated):
385         * svg/SVGMarkerElement.h:
386         * svg/SVGMaskElement.cpp:
387         (WebCore::SVGMaskElement::SVGMaskElement):
388         * svg/SVGMaskElement.h:
389         (WebCore::SVGMaskElement::synchronizeRequiredFeatures):
390         (WebCore::SVGMaskElement::synchronizeRequiredExtensions):
391         (WebCore::SVGMaskElement::synchronizeSystemLanguage):
392         * svg/SVGMissingGlyphElement.cpp:
393         * svg/SVGMissingGlyphElement.h:
394         * svg/SVGPathElement.cpp:
395         (WebCore::SVGPathElement::dPropertyInfo):
396         (WebCore::SVGPathElement::SVGPathElement):
397         (WebCore::SVGPathElement::svgAttributeChanged):
398         (WebCore::SVGPathElement::lookupOrCreateDWrapper):
399         (WebCore::SVGPathElement::synchronizeD):
400         (WebCore::SVGPathElement::pathSegList):
401         (WebCore::SVGPathElement::animatedPathSegList):
402         * svg/SVGPathElement.h:
403         (WebCore::SVGPathElement::pathByteStream):
404         (WebCore::SVGPathElement::synchronizeRequiredFeatures):
405         (WebCore::SVGPathElement::synchronizeRequiredExtensions):
406         (WebCore::SVGPathElement::synchronizeSystemLanguage):
407         * svg/SVGPathSegWithContext.h:
408         (WebCore::SVGPathSegWithContext::animatedProperty):
409         * svg/SVGPatternElement.cpp:
410         (WebCore::SVGPatternElement::SVGPatternElement):
411         * svg/SVGPatternElement.h:
412         (WebCore::SVGPatternElement::synchronizeRequiredFeatures):
413         (WebCore::SVGPatternElement::synchronizeRequiredExtensions):
414         (WebCore::SVGPatternElement::synchronizeSystemLanguage):
415         * svg/SVGPolyElement.cpp:
416         (WebCore::SVGPolyElement::pointsPropertyInfo):
417         (WebCore::SVGPolyElement::SVGPolyElement):
418         (WebCore::SVGPolyElement::parseMappedAttribute):
419         (WebCore::SVGPolyElement::synchronizePoints):
420         (WebCore::SVGPolyElement::lookupOrCreatePointsWrapper):
421         (WebCore::SVGPolyElement::points):
422         (WebCore::SVGPolyElement::animatedPoints):
423         * svg/SVGPolyElement.h:
424         (WebCore::SVGPolyElement::synchronizeRequiredFeatures):
425         (WebCore::SVGPolyElement::synchronizeRequiredExtensions):
426         (WebCore::SVGPolyElement::synchronizeSystemLanguage):
427         * svg/SVGRadialGradientElement.cpp:
428         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
429         * svg/SVGRadialGradientElement.h:
430         * svg/SVGRectElement.cpp:
431         (WebCore::SVGRectElement::SVGRectElement):
432         * svg/SVGRectElement.h:
433         (WebCore::SVGRectElement::synchronizeRequiredFeatures):
434         (WebCore::SVGRectElement::synchronizeRequiredExtensions):
435         (WebCore::SVGRectElement::synchronizeSystemLanguage):
436         * svg/SVGSVGElement.cpp:
437         (WebCore::SVGSVGElement::SVGSVGElement):
438         * svg/SVGSVGElement.h:
439         (WebCore::SVGSVGElement::synchronizeRequiredFeatures):
440         (WebCore::SVGSVGElement::synchronizeRequiredExtensions):
441         (WebCore::SVGSVGElement::synchronizeSystemLanguage):
442         * svg/SVGScriptElement.cpp:
443         (WebCore::SVGScriptElement::SVGScriptElement):
444         * svg/SVGScriptElement.h:
445         * svg/SVGStopElement.cpp:
446         (WebCore::SVGStopElement::SVGStopElement):
447         * svg/SVGStopElement.h:
448         * svg/SVGStyledElement.cpp:
449         (WebCore::SVGStyledElement::SVGStyledElement):
450         (WebCore::cssPropertyToTypeMap):
451         (WebCore::SVGStyledElement::animatedPropertyTypeForAttribute):
452         * svg/SVGStyledElement.h:
453         * svg/SVGStyledTransformableElement.cpp:
454         (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
455         * svg/SVGStyledTransformableElement.h:
456         * svg/SVGSwitchElement.cpp:
457         (WebCore::SVGSwitchElement::SVGSwitchElement):
458         * svg/SVGSwitchElement.h:
459         (WebCore::SVGSwitchElement::synchronizeRequiredFeatures):
460         (WebCore::SVGSwitchElement::synchronizeRequiredExtensions):
461         (WebCore::SVGSwitchElement::synchronizeSystemLanguage):
462         * svg/SVGSymbolElement.cpp:
463         (WebCore::SVGSymbolElement::SVGSymbolElement):
464         * svg/SVGSymbolElement.h:
465         * svg/SVGTRefElement.cpp:
466         (WebCore::SVGTRefElement::SVGTRefElement):
467         * svg/SVGTRefElement.h:
468         * svg/SVGTSpanElement.cpp:
469         * svg/SVGTSpanElement.h:
470         * svg/SVGTests.cpp:
471         (WebCore::SVGTests::requiredFeaturesPropertyInfo):
472         (WebCore::SVGTests::requiredExtensionsPropertyInfo):
473         (WebCore::SVGTests::systemLanguagePropertyInfo):
474         (WebCore::SVGTests::attributeToPropertyMap):
475         (WebCore::SVGTests::synchronizeRequiredFeatures):
476         (WebCore::SVGTests::synchronizeRequiredExtensions):
477         (WebCore::SVGTests::synchronizeSystemLanguage):
478         * svg/SVGTests.h:
479         * svg/SVGTextContentElement.cpp:
480         (WebCore::SVGTextContentElement::textLengthPropertyInfo):
481         (WebCore::SVGTextContentElement::SVGTextContentElement):
482         (WebCore::SVGTextContentElement::synchronizeTextLength):
483         (WebCore::SVGTextContentElement::lookupOrCreateTextLengthWrapper):
484         (WebCore::SVGTextContentElement::textLengthAnimated):
485         * svg/SVGTextContentElement.h:
486         (WebCore::SVGTextContentElement::synchronizeRequiredFeatures):
487         (WebCore::SVGTextContentElement::synchronizeRequiredExtensions):
488         (WebCore::SVGTextContentElement::synchronizeSystemLanguage):
489         * svg/SVGTextElement.cpp:
490         (WebCore::SVGTextElement::SVGTextElement):
491         * svg/SVGTextElement.h:
492         * svg/SVGTextPathElement.cpp:
493         (WebCore::SVGTextPathElement::SVGTextPathElement):
494         * svg/SVGTextPathElement.h:
495         * svg/SVGTextPositioningElement.cpp:
496         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
497         * svg/SVGTextPositioningElement.h:
498         * svg/SVGTitleElement.cpp:
499         * svg/SVGTitleElement.h:
500         (WebCore::SVGTitleElement::rendererIsNeeded):
501         * svg/SVGUseElement.cpp:
502         (WebCore::SVGUseElement::SVGUseElement):
503         * svg/SVGUseElement.h:
504         (WebCore::SVGUseElement::synchronizeRequiredFeatures):
505         (WebCore::SVGUseElement::synchronizeRequiredExtensions):
506         (WebCore::SVGUseElement::synchronizeSystemLanguage):
507         * svg/SVGViewElement.cpp:
508         (WebCore::SVGViewElement::SVGViewElement):
509         * svg/SVGViewElement.h:
510         * svg/SVGViewSpec.cpp:
511         (WebCore::SVGViewSpec::SVGViewSpec):
512         * svg/SVGViewSpec.h:
513         * svg/properties/SVGAnimatedProperty.h:
514         (WebCore::SVGAnimatedProperty::lookupOrCreateWrapper):
515         (WebCore::SVGAnimatedProperty::lookupWrapper):
516         * svg/properties/SVGAnimatedPropertyMacros.h:
517         * svg/properties/SVGAnimatedPropertySynchronizer.h:
518         * svg/properties/SVGAttributeToPropertyMap.cpp: Added.
519         (WebCore::SVGAttributeToPropertyMap::addProperties):
520         (WebCore::SVGAttributeToPropertyMap::addProperty):
521         (WebCore::SVGAttributeToPropertyMap::animatedPropertiesForAttribute):
522         (WebCore::SVGAttributeToPropertyMap::animatedPropertyTypeForAttribute):
523         (WebCore::SVGAttributeToPropertyMap::synchronizeProperties):
524         (WebCore::SVGAttributeToPropertyMap::synchronizeProperty):
525         (WebCore::SVGAttributeToPropertyMap::animatedProperty):
526         * svg/properties/SVGAttributeToPropertyMap.h: Added.
527         (WebCore::SVGAttributeToPropertyMap::SVGAttributeToPropertyMap):
528         (WebCore::SVGAttributeToPropertyMap::~SVGAttributeToPropertyMap):
529         (WebCore::SVGAttributeToPropertyMap::isEmpty):
530         * svg/properties/SVGPropertyInfo.h: Added.
531         (WebCore::SVGPropertyInfo::SVGPropertyInfo):
532
533 2011-07-09  Patrick Gansterer  <paroga@webkit.org>
534
535         Unreviewed build fix after r90676.
536
537         * platform/graphics/ImageBuffer.cpp:
538
539 2011-07-08  Dirk Schulze  <krit@webkit.org>
540
541         Refactoring luminance code in RenderSVGResourceMasker
542         https://bugs.webkit.org/show_bug.cgi?id=64146
543
544         Reviewed by Simon Fraser.
545
546         Moved luminance calculcation code to ImageBuffer. The code is doing pixel manipulations and can now get replaced
547         by platform specific algorithms in the ImmageBuffer*.cpp files.
548
549         No change of functionality. No new tests.
550
551         * WebCore.xcodeproj/project.pbxproj:
552         * platform/graphics/ImageBuffer.cpp:
553         (WebCore::ImageBuffer::transformColorSpace):
554         (WebCore::ImageBuffer::genericConvertToLuminanceMask):
555         (WebCore::ImageBuffer::convertToLuminanceMask):
556         * platform/graphics/ImageBuffer.h:
557         * rendering/svg/RenderSVGResourceMasker.cpp:
558         (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
559
560 2011-07-08  Simon Fraser  <simon.fraser@apple.com>
561
562         Clean up RenderWidget::destroy() to share more code
563         https://bugs.webkit.org/show_bug.cgi?id=64138
564
565         Reviewed by James Robinson.
566
567         RenderWidget::destroy() copied code from various other
568         destroy() methods, which made code maintenance in this
569         area very risky.
570         
571         Fix by adding a virtual willBeDestroyed() method, which
572         replaces most instances of destroy(). Now, only RenderWidget
573         and RenderObject implement destroy(), and each just calls
574         willBeDestroyed(). Code duplication is averted.
575         
576         No behavior change, so no tests.
577
578         * rendering/RenderBlock.cpp:
579         (WebCore::RenderBlock::willBeDestroyed):
580         * rendering/RenderBlock.h:
581         * rendering/RenderBox.cpp:
582         (WebCore::RenderBox::willBeDestroyed):
583         * rendering/RenderBox.h:
584         * rendering/RenderBoxModelObject.cpp:
585         (WebCore::RenderBoxModelObject::willBeDestroyed):
586         * rendering/RenderBoxModelObject.h:
587         * rendering/RenderFullScreen.cpp:
588         (RenderFullScreenPlaceholder::willBeDestroyed):
589         (RenderFullScreen::willBeDestroyed):
590         * rendering/RenderFullScreen.h:
591         * rendering/RenderInline.cpp:
592         (WebCore::RenderInline::willBeDestroyed):
593         * rendering/RenderInline.h:
594         * rendering/RenderListItem.cpp:
595         (WebCore::RenderListItem::willBeDestroyed):
596         * rendering/RenderListItem.h:
597         * rendering/RenderObject.cpp:
598         (WebCore::RenderObject::willBeDestroyed):
599         (WebCore::RenderObject::destroy):
600         * rendering/RenderObject.h:
601         * rendering/RenderReplaced.cpp:
602         (WebCore::RenderReplaced::willBeDestroyed):
603         * rendering/RenderReplaced.h:
604         * rendering/RenderTableCell.cpp:
605         (WebCore::RenderTableCell::willBeDestroyed):
606         * rendering/RenderTableCell.h:
607         * rendering/RenderTableRow.cpp:
608         (WebCore::RenderTableRow::willBeDestroyed):
609         * rendering/RenderTableRow.h:
610         * rendering/RenderTableSection.cpp:
611         (WebCore::RenderTableSection::willBeDestroyed):
612         * rendering/RenderTableSection.h:
613         * rendering/RenderText.cpp:
614         (WebCore::RenderText::willBeDestroyed):
615         * rendering/RenderText.h:
616         * rendering/RenderTextFragment.cpp:
617         (WebCore::RenderTextFragment::willBeDestroyed):
618         * rendering/RenderTextFragment.h:
619         * rendering/RenderWidget.cpp:
620         (WebCore::RenderWidget::willBeDestroyed):
621         (WebCore::RenderWidget::destroy):
622         * rendering/RenderWidget.h:
623         * rendering/svg/RenderSVGBlock.cpp:
624         (WebCore::RenderSVGBlock::willBeDestroyed):
625         * rendering/svg/RenderSVGBlock.h:
626         * rendering/svg/RenderSVGInline.cpp:
627         (WebCore::RenderSVGInline::willBeDestroyed):
628         * rendering/svg/RenderSVGInline.h:
629         * rendering/svg/RenderSVGInlineText.cpp:
630         (WebCore::RenderSVGInlineText::willBeDestroyed):
631         * rendering/svg/RenderSVGInlineText.h:
632         * rendering/svg/RenderSVGModelObject.cpp:
633         (WebCore::RenderSVGModelObject::willBeDestroyed):
634         * rendering/svg/RenderSVGModelObject.h:
635         * rendering/svg/RenderSVGResourceContainer.cpp:
636         (WebCore::RenderSVGResourceContainer::willBeDestroyed):
637         * rendering/svg/RenderSVGResourceContainer.h:
638         * rendering/svg/RenderSVGRoot.cpp:
639         (WebCore::RenderSVGRoot::willBeDestroyed):
640         * rendering/svg/RenderSVGRoot.h:
641         * rendering/svg/SVGResourcesCache.h:
642
643 2011-07-08  Adam Barth  <abarth@webkit.org>
644
645         Unreviewed, rolling out r90662.
646         http://trac.webkit.org/changeset/90662
647         https://bugs.webkit.org/show_bug.cgi?id=64210
648
649         Introduced regressions in Chromium browser tests (Requested by
650         rniwa on #webkit).
651
652         * accessibility/AccessibilityRenderObject.cpp:
653         (WebCore::AccessibilityRenderObject::selectedText):
654         (WebCore::AccessibilityRenderObject::selectedTextRange):
655         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
656         * html/HTMLFormControlElement.cpp:
657         (WebCore::HTMLTextFormControlElement::setSelectionRange):
658         (WebCore::HTMLTextFormControlElement::selectionStart):
659         (WebCore::HTMLTextFormControlElement::selectionEnd):
660         (WebCore::HTMLTextFormControlElement::selection):
661         (WebCore::HTMLTextFormControlElement::restoreCachedSelection):
662         (WebCore::HTMLTextFormControlElement::selectionChanged):
663         * html/HTMLFormControlElement.h:
664         * html/HTMLInputElement.cpp:
665         (WebCore::HTMLInputElement::setValue):
666         * rendering/RenderTextControl.cpp:
667         (WebCore::RenderTextControl::selectionStart):
668         (WebCore::RenderTextControl::selectionEnd):
669         (WebCore::RenderTextControl::hasVisibleTextArea):
670         (WebCore::setSelectionRange):
671         (WebCore::setContainerAndOffsetForRange):
672         (WebCore::RenderTextControl::selection):
673         * rendering/RenderTextControl.h:
674
675 2011-07-08  Brian Salomon  <bsalomon@google.com>
676
677         Make GL context current before updating layer texture using skia-gpu
678         https://bugs.webkit.org/show_bug.cgi?id=64206
679
680         Reviewed by James Robinson.
681
682         Covered by existing tests (when accelerated drawing and compositing are on).
683
684         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
685         (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
686
687 2011-07-08  Tony Chang  <tony@chromium.org>
688
689         Refactor override size to be a size rather than just an int
690         https://bugs.webkit.org/show_bug.cgi?id=64195
691
692         Reviewed by David Hyatt.
693
694         Also convert to LayoutSize and LayoutUnit.
695
696         Covered by existing tests.
697
698         * rendering/RenderBox.cpp:
699         (WebCore::RenderBox::overrideSize): Pass in a LayoutSize.
700         (WebCore::RenderBox::setOverrideSize):
701         (WebCore::RenderBox::clearOverrideSize): New method for clearing the
702             override size (previous we would pass in -1)
703         (WebCore::RenderBox::overrideWidth):
704         (WebCore::RenderBox::overrideHeight):
705         (WebCore::RenderBox::computeLogicalWidth):
706         (WebCore::RenderBox::computeLogicalHeight):
707         (WebCore::RenderBox::computePercentageLogicalHeight):
708         (WebCore::RenderBox::availableLogicalHeightUsing):
709         * rendering/RenderBox.h:
710         * rendering/RenderDeprecatedFlexibleBox.cpp:
711         (WebCore::gatherFlexChildrenInfo):
712         (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
713         (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
714         (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
715         * rendering/RenderTableCell.cpp:
716         (WebCore::RenderTableCell::setOverrideSizeFromRowHeight):
717         * rendering/RenderTableCell.h: Remove setOverrideSize since it was
718             only called in one place to clear the override size.  Inline this
719             logic instead.
720         * rendering/RenderTableSection.cpp:
721         (WebCore::RenderTableSection::calcRowLogicalHeight):
722         * rendering/RenderWidget.cpp:
723         (WebCore::RenderWidget::destroy):
724
725 2011-07-08  Emil A Eklund  <eae@chromium.org>
726
727         Switch pointInContainer and accumulatedOffset to to new layout types
728         https://bugs.webkit.org/show_bug.cgi?id=64112
729
730         Reviewed by Eric Seidel.
731
732         Convert remaining IntPoint versions of the pointInContainer and
733         accumulatedOffset arguments to the new layout abstraction.
734
735         No new tests, no functionality changes.
736
737         * rendering/HitTestResult.cpp:
738         (WebCore::HitTestResult::addNodeToRectBasedTestResult):
739         * rendering/HitTestResult.h:
740         * rendering/RenderBlock.cpp:
741         (WebCore::RenderBlock::isPointInOverflowControl):
742         * rendering/RenderBlock.h:
743         * rendering/RenderBox.cpp:
744         (WebCore::RenderBox::pushContentsClip):
745         (WebCore::RenderBox::popContentsClip):
746         * rendering/RenderBox.h:
747         * rendering/RenderEmbeddedObject.cpp:
748         (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
749         * rendering/RenderEmbeddedObject.h:
750         * rendering/RenderLineBoxList.cpp:
751         (WebCore::RenderLineBoxList::hitTest):
752         * rendering/RenderLineBoxList.h:
753         * rendering/RenderListBox.cpp:
754         (WebCore::RenderListBox::isPointInOverflowControl):
755         * rendering/RenderListBox.h:
756         * rendering/RenderObject.cpp:
757         (WebCore::RenderObject::hitTest):
758         * rendering/RenderObject.h:
759         * rendering/RenderTextControl.cpp:
760         (WebCore::RenderTextControl::hitInnerTextElement):
761         * rendering/RenderTextControl.h:
762         * rendering/RenderTextControlSingleLine.cpp:
763         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
764
765 2011-07-07  Ryosuke Niwa  <rniwa@webkit.org>
766
767         Move selection related code from RenderTextControl to HTMLTextFormControlElement
768         https://bugs.webkit.org/show_bug.cgi?id=64133
769
770         Reviewed by Dimitri Glazkov.
771
772         Moved selectionStart, selectionEnd, hasVisibleTextArea, setSelectionRange, setContainerAndOffsetForRange
773         and selection from RenderTextControl.cpp to HTMLFormControlElement.cpp.
774
775         This refactoring removes RenderTextControl's dependency on FrameSelection.
776
777         * accessibility/AccessibilityRenderObject.cpp:
778         (WebCore::AccessibilityRenderObject::selectedText): Calls HTMLTextFromControl::selectedText.
779         (WebCore::AccessibilityRenderObject::selectedTextRange): Calls selectionStart and selectionEnd.
780         (WebCore::AccessibilityRenderObject::setSelectedTextRange): Ditto.
781         * html/HTMLFormControlElement.cpp:
782         (WebCore::HTMLTextFormControlElement::selectedText): Extracted from AccessibilityRenderObject::selectedText.
783         (WebCore::hasVisibleTextArea):
784         (WebCore::HTMLTextFormControlElement::setSelectionRange): Merged with the function of the same name in
785         RenderTextControl.
786         (WebCore::HTMLTextFormControlElement::selectionStart): Ditto.
787         (WebCore::HTMLTextFormControlElement::selectionEnd): Ditto.
788         (WebCore::setContainerAndOffsetForRange): Moved from RenderTextControl.cpp
789         (WebCore::HTMLTextFormControlElement::selection): Merged with the function of the same name in RenderTextControl.
790         (WebCore::HTMLTextFormControlElement::selectionChanged): Calls selectionStart and selectionEnd.
791         * html/HTMLFormControlElement.h:
792         (WebCore::HTMLTextFormControlElement::restoreCachedSelection): Moved from HTMLFormControlElement.cpp now that
793         all functions are self-contained in HTMLTextFormControlElement.
794         * html/HTMLInputElement.cpp:
795         (WebCore::HTMLInputElement::setValue): Calls setSelectionRange.
796         * rendering/RenderTextControl.cpp:
797         (WebCore::RenderTextControl::textFormControlElement): Added.
798         * rendering/RenderTextControl.h:
799
800 2011-07-08  Mike Reed  <reed@google.com>
801
802         remove (empty) indirection between GraphicsContextPlatformPrivate and PlatformContextSkia
803         https://bugs.webkit.org/show_bug.cgi?id=64178
804
805         Reviewed by Stephen White.
806
807         No new tests. no functionality change, other than removing an indirection that is not needed
808
809         * platform/graphics/GraphicsContext.h:
810         * platform/graphics/skia/GraphicsContextPlatformPrivate.h: Removed.
811         * platform/graphics/skia/GraphicsContextSkia.cpp:
812         (WebCore::GraphicsContext::platformInit):
813         (WebCore::GraphicsContext::platformDestroy):
814         (WebCore::GraphicsContext::platformContext):
815
816 2011-07-08  Jeffrey Pfau  <jpfau@apple.com>
817
818         Add framework for a new/dummy XMLDocumentParser
819         https://bugs.webkit.org/show_bug.cgi?id=63955
820
821         Reviewed by Adam Barth.
822
823         Added a dummy framework NewXMLDocumentParser
824
825         * WebCore.xcodeproj/project.pbxproj:
826         * dom/Document.cpp:
827         (WebCore::Document::createParser):
828         * xml/parser/NewXMLDocumentParser.cpp: Added.
829         (WebCore::NewXMLDocumentParser::NewXMLDocumentParser):
830         (WebCore::NewXMLDocumentParser::textPosition):
831         (WebCore::NewXMLDocumentParser::lineNumber):
832         (WebCore::NewXMLDocumentParser::insert):
833         (WebCore::NewXMLDocumentParser::append):
834         (WebCore::NewXMLDocumentParser::finish):
835         (WebCore::NewXMLDocumentParser::detach):
836         (WebCore::NewXMLDocumentParser::hasInsertionPoint):
837         (WebCore::NewXMLDocumentParser::finishWasCalled):
838         (WebCore::NewXMLDocumentParser::processingData):
839         (WebCore::NewXMLDocumentParser::prepareToStopParsing):
840         (WebCore::NewXMLDocumentParser::stopParsing):
841         (WebCore::NewXMLDocumentParser::isWaitingForScripts):
842         (WebCore::NewXMLDocumentParser::isExecutingScript):
843         (WebCore::NewXMLDocumentParser::executeScriptsWaitingForStylesheets):
844         * xml/parser/NewXMLDocumentParser.h: Added.
845         (WebCore::NewXMLDocumentParser::create):
846
847 2011-07-08  David Reveman  <reveman@chromium.org>
848
849         Remove unused function parameters.
850
851         Reviewed by Ryosuke Niwa.
852
853         * platform/graphics/gpu/TilingData.cpp:
854         (WebCore::TilingData::textureOffset):
855
856 2011-07-08  David Reveman  <reveman@chromium.org>
857
858         Reviewed by Stephen White.
859
860         [Chromium] Edge anti-aliasing for composited layers.
861         https://bugs.webkit.org/show_bug.cgi?id=61388
862
863         Add transparent outer border to tiled layers and adjust vertex
864         coordinates so that use of a bilinear filter creates a smooth
865         layer edge.
866
867         Tests: platform/chromium/compositing/tiny-layer-rotated.html
868                platform/chromium/compositing/huge-layer-rotated.html (existing)
869                TilingDataTest in webkit_unit_tests
870
871         * platform/graphics/chromium/ContentLayerChromium.cpp:
872         Change maxUntiledSize to 510 to ensure that tiles are not greater
873         than 512 with outer borders.
874         (WebCore::ContentLayerChromium::updateLayerSize): We can't use the
875         layer size as tile size when we want to avoid tiling as this will
876         not be enough space to include possible outer borders. We instead use
877         an empty size, which allows the tiler to automatically adjust the
878         tile size to be large enough for the layer to fit in one tile.
879         (WebCore::ContentLayerChromium::createTilerIfNeeded):
880         (WebCore::ContentLayerChromium::setIsMask): Don't use border texels
881         for layer used as mask.
882
883         * platform/graphics/chromium/ContentLayerChromium.h:
884         (WebCore::ContentLayerChromium::m_borderTexels) Added.
885
886         * platform/graphics/chromium/LayerTilerChromium.cpp:
887         (WebCore::LayerTilerChromium::tileTexRect): Added.
888         (WebCore::LayerTilerChromium::tileLayerRect): m_tileSize is no
889         longer the correct layer size. Size of bounds with border should
890         be the correct layer size.
891         (WebCore::LayerTilerChromium::growLayerToContain): Adjust texture
892         size to include outer borders and handle empty m_tileSize.
893         (WebCore::LayerTilerChromium::invalidateRect): Use size of rectangle
894         returned by tileTexRect instead of m_tileSize for texture size.
895         (WebCore::LayerTilerChromium::prepareToUpdate): Ditto.
896         (WebCore::LayerTilerChromium::draw): Compute and intersect tile edges
897         instead of using tile coordinates directly. Edges are adjusted to
898         include outer borders and make sure all partially covered pixels are
899         processed.
900         (WebCore::LayerTilerChromium::drawTexturedQuad): Pass quad to
901         shader using point uniform.
902         (WebCore::LayerTilerChromium::invalidateRect): Invalidate old layer
903         area to clear any contents left from previous layer size.
904
905         * platform/graphics/chromium/LayerTilerChromium.h:
906         (WebCore::LayerTilerChromium::tileTexRect) Added.
907         (WebCore::LayerTilerChromium::drawTexturedQuad): Add quad parameter.
908
909         * platform/graphics/chromium/ShaderChromium.cpp:
910         (WebCore::VertexShaderPosTexTransform::getShaderString) Get X/Y vertex
911         components from point uniform.
912         (WebCore::VertexShaderPosTexTransform::VertexShaderPosTexTransform)
913         Added point uniform.
914         (WebCore::VertexShaderPosTexTransform::init) Ditto.
915         (WebCore::VertexShaderPosTexTransform::pointLocation) Added.
916
917         * platform/graphics/chromium/ShaderChromium.h:
918         (WebCore::VertexShaderPosTexTransform::pointLocation) Added.
919
920         * platform/graphics/gpu/TilingData.cpp:
921         (WebCore::TilingData::tileBoundsWithOuterBorder): Added.
922         (WebCore::TilingData::computeNumTiles): Adjust for outer border.
923         (WebCore::TilingData::tileXIndexFromSrcCoord): Ditto.
924         (WebCore::TilingData::tileYIndexFromSrcCoord): Ditto.
925         (WebCore::TilingData::tileSizeX): Ditto.
926         (WebCore::TilingData::tileSizeY): Ditto.
927         (WebCore::TilingData::intersectDrawQuad): Ditto.
928         (WebCore::TilingData::textureOffset): Ditto.
929
930         * platform/graphics/gpu/TilingData.h:
931         (WebCore::TilingData::tileBoundsWithOuterBorder): Added.
932
933 2011-07-08  Mike Reed  <reed@google.com>
934
935         [skia] don't rely on lockPixels failure to detect gpu-backed device (in prep for skia roll)
936         https://bugs.webkit.org/show_bug.cgi?id=64162
937
938         Reviewed by Stephen White.
939
940         No new tests. preparing for skia roll, where lockPixels always succeeds (but slowly for gpu-backed)
941
942         * platform/graphics/skia/ImageBufferSkia.cpp:
943         (WebCore::putImageData):
944
945 2011-07-08  Chang Shu  <cshu@webkit.org>
946
947         Update calling sites after function renamed.
948         https://bugs.webkit.org/show_bug.cgi?id=59114
949
950         Reviewed by Alexey Proskuryakov.
951
952         No new tests, just refactoring.
953
954         * editing/visible_units.cpp:
955         (WebCore::previousBoundary):
956         (WebCore::nextBoundary):
957         * rendering/RenderText.cpp:
958         (WebCore::RenderText::setTextInternal):
959
960 2011-07-08  Mihnea Ovidenie  <mihnea@adobe.com>
961
962         [CSSRegions]Parse content: -webkit-from-flow
963         https://bugs.webkit.org/show_bug.cgi?id=63133
964
965         Reviewed by David Hyatt.
966
967         Test: fast/regions/content-webkit-from-flow-parsing.html
968
969         * css/CSSComputedStyleDeclaration.cpp:
970         (WebCore::contentToCSSValue):
971         * css/CSSParser.cpp:
972         (WebCore::CSSParser::parseContent):
973         (WebCore::CSSParser::parseFromFlowContent):
974         * css/CSSParser.h:
975         * css/CSSPrimitiveValue.cpp:
976         (WebCore::CSSPrimitiveValue::cleanup):
977         (WebCore::CSSPrimitiveValue::getStringValue):
978         (WebCore::CSSPrimitiveValue::cssText):
979         * css/CSSPrimitiveValue.h:
980         * css/CSSStyleSelector.cpp:
981         (WebCore::CSSStyleSelector::applyProperty):
982         * rendering/style/RenderStyle.cpp:
983         (WebCore::RenderStyle::diff):
984         * rendering/style/RenderStyle.h:
985         (WebCore::InheritedFlags::regionThread):
986         (WebCore::InheritedFlags::setRegionThread):
987         (WebCore::InheritedFlags::initialRegionThread):
988         * rendering/style/StyleRareNonInheritedData.cpp:
989         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
990         (WebCore::StyleRareNonInheritedData::operator==):
991         * rendering/style/StyleRareNonInheritedData.h:
992
993 2011-07-08  Ilya Tikhonovsky  <loislo@chromium.org>
994
995         Web Inspector: NetworkPanel search failed if the matched sting is in the query part of url
996         https://bugs.webkit.org/show_bug.cgi?id=64167
997
998         Reviewed by Yury Semikhatsky.
999
1000         * inspector/front-end/NetworkPanel.js:
1001         (WebInspector.NetworkPanel.prototype._matchResource):
1002         (WebInspector.NetworkPanel.prototype._highlightNthMatchedResource):
1003         (WebInspector.NetworkDataGridNode.prototype._refreshNameCell):
1004         * inspector/front-end/Resource.js:
1005         (WebInspector.Resource.prototype.get folder):
1006
1007 2011-07-08  Benjamin Poulain  <benjamin@webkit.org>
1008
1009         [Qt] Enable HTTP Pipelining by default
1010         https://bugs.webkit.org/show_bug.cgi?id=64169
1011
1012         Reviewed by Andreas Kling.
1013
1014         QNetworkAccessManager disables HTTP pipelining by default. We enable it by
1015         setting an attribute on the request.
1016
1017         * platform/network/qt/ResourceRequestQt.cpp:
1018         (WebCore::ResourceRequest::toNetworkRequest):
1019
1020 2011-07-08  Alexander Pavlov  <apavlov@chromium.org>
1021
1022         Web Inspector: CSS inspector gets confused about specificity of !important properties
1023         https://bugs.webkit.org/show_bug.cgi?id=64074
1024
1025         Reviewed by Yury Semikhatsky.
1026
1027         * inspector/front-end/StylesSidebarPane.js:
1028         (WebInspector.StylesSidebarPane.prototype._markUsedProperties):
1029
1030 2011-07-08  Alexander Pavlov  <apavlov@chromium.org>
1031
1032         [Chromium] Unreviewed, clang build fix.
1033
1034         * inspector/InspectorStyleTextEditor.h:
1035
1036 2011-07-08  Pavel Feldman  <pfeldman@google.com>
1037
1038         Web Inspector: add support for drag'n'drop of non-elements (comments, text, etc.)
1039         https://bugs.webkit.org/show_bug.cgi?id=64163
1040
1041         Reviewed by Yury Semikhatsky.
1042
1043         * inspector/Inspector.json:
1044         * inspector/InspectorDOMAgent.cpp:
1045         (WebCore::InspectorDOMAgent::moveTo):
1046         * inspector/front-end/ElementsTreeOutline.js:
1047         (WebInspector.ElementsTreeOutline.prototype._isValidDragSourceOrTarget):
1048
1049 2011-07-08  Andrey Kosyakov  <caseq@chromium.org>
1050
1051         Web Inspector: secure access to extensions API
1052         https://bugs.webkit.org/show_bug.cgi?id=64080
1053
1054         Reviewed by Pavel Feldman.
1055
1056         * inspector/front-end/ExtensionAPI.js:
1057         (WebInspector.injectedExtensionAPI.Panels.prototype.create):
1058         (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setPage):
1059         * inspector/front-end/ExtensionPanel.js:
1060         (WebInspector.ExtensionPanel):
1061         * inspector/front-end/ExtensionServer.js:
1062         (WebInspector.ExtensionServer):
1063         (WebInspector.ExtensionServer.prototype._onCreatePanel):
1064         (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
1065         (WebInspector.ExtensionServer.prototype._addExtensions):
1066         (WebInspector.ExtensionServer.prototype._onWindowMessage):
1067         (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
1068         (WebInspector.ExtensionServer.prototype._expandResourcePath):
1069         (WebInspector.ExtensionServer.prototype._normalizePath):
1070
1071 2011-07-08  Adam Barth  <abarth@webkit.org>
1072
1073         Unreviewed, rolling out r90615.
1074         http://trac.webkit.org/changeset/90615
1075         https://bugs.webkit.org/show_bug.cgi?id=64158
1076
1077         broke inspector/extensions/extensions.html (Requested by caseq
1078         on #webkit).
1079
1080         * inspector/front-end/ExtensionAPI.js:
1081         (WebInspector.injectedExtensionAPI.Panels.prototype.create):
1082         (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setPage):
1083         (WebInspector.injectedExtensionAPI.expandURL):
1084         * inspector/front-end/ExtensionPanel.js:
1085         (WebInspector.ExtensionPanel):
1086         * inspector/front-end/ExtensionServer.js:
1087         (WebInspector.ExtensionServer):
1088         (WebInspector.ExtensionServer.prototype._onCreatePanel):
1089         (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
1090         (WebInspector.ExtensionServer.prototype._addExtensions):
1091         (WebInspector.ExtensionServer.prototype._onWindowMessage):
1092         (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
1093
1094 2011-07-07  Alexander Pavlov  <apavlov@chromium.org>
1095
1096         Web Inspector: Adding CSS properties results in messy style rules
1097         https://bugs.webkit.org/show_bug.cgi?id=63622
1098
1099         Reviewed by Pavel Feldman.
1100
1101         Test: inspector/styles/styles-formatting.html
1102
1103         * CMakeLists.txt:
1104         * GNUmakefile.list.am:
1105         * WebCore.gypi:
1106         * WebCore.pro:
1107         * WebCore.vcproj/WebCore.vcproj:
1108         * WebCore.xcodeproj/project.pbxproj:
1109         * css/CSSPropertySourceData.cpp:
1110         (WebCore::SourceRange::length):
1111         * css/CSSPropertySourceData.h:
1112         * inspector/InspectorStyleSheet.cpp:
1113         (WebCore::InspectorStyle::InspectorStyle):
1114         (WebCore::InspectorStyle::setPropertyText):
1115         (WebCore::InspectorStyle::toggleProperty):
1116         (WebCore::InspectorStyle::applyStyleText):
1117         (WebCore::InspectorStyle::newLineAndWhitespaceDelimiters):
1118         * inspector/InspectorStyleSheet.h:
1119         * inspector/InspectorStyleTextEditor.cpp: Added.
1120         (WebCore::InspectorStyleTextEditor::InspectorStyleTextEditor):
1121         (WebCore::InspectorStyleTextEditor::insertProperty):
1122         (WebCore::InspectorStyleTextEditor::replaceProperty):
1123         (WebCore::InspectorStyleTextEditor::removeProperty):
1124         (WebCore::InspectorStyleTextEditor::enableProperty):
1125         (WebCore::InspectorStyleTextEditor::disableProperty):
1126         (WebCore::InspectorStyleTextEditor::disabledIndexByOrdinal):
1127         (WebCore::InspectorStyleTextEditor::shiftDisabledProperties):
1128         (WebCore::InspectorStyleTextEditor::internalReplaceProperty):
1129         * inspector/InspectorStyleTextEditor.h: Added.
1130         (WebCore::InspectorStyleTextEditor::styleText):
1131
1132 2011-07-08  Alexander Pavlov  <apavlov@chromium.org>
1133
1134         Web Inspector: Quotes are rendered as &quot; in the DOM tree
1135         https://bugs.webkit.org/show_bug.cgi?id=64154
1136
1137         Reviewed by Yury Semikhatsky.
1138
1139         Since we currently rely on setting textContent rather than innerHTML for the DOM tree elements,
1140         escapeHTML() calls unnecessarily HTML-escape certain characters in the DOM tree contents.
1141
1142         * inspector/front-end/ElementsTreeOutline.js:
1143         (WebInspector.ElementsTreeElement.prototype._buildAttributeDOM):
1144         ():
1145
1146 2011-07-08  Vsevolod Vlasov  <vsevik@chromium.org>
1147
1148         Web Inspector: Remove unused code from InspectorAgent.h.
1149         https://bugs.webkit.org/show_bug.cgi?id=64120
1150
1151         Reviewed by Joseph Pecoraro.
1152
1153         * inspector/InspectorAgent.h:
1154
1155 2011-07-08  Andrey Kosyakov  <caseq@chromium.org>
1156
1157         Web Inspector: secure access to extensions API
1158         https://bugs.webkit.org/show_bug.cgi?id=64080
1159
1160         Reviewed by Pavel Feldman.
1161
1162         * inspector/front-end/ExtensionAPI.js:
1163         (WebInspector.injectedExtensionAPI.Panels.prototype.create):
1164         (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setPage):
1165         * inspector/front-end/ExtensionPanel.js:
1166         (WebInspector.ExtensionPanel):
1167         * inspector/front-end/ExtensionServer.js:
1168         (WebInspector.ExtensionServer):
1169         (WebInspector.ExtensionServer.prototype._onCreatePanel):
1170         (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
1171         (WebInspector.ExtensionServer.prototype._addExtensions):
1172         (WebInspector.ExtensionServer.prototype._onWindowMessage):
1173         (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
1174         (WebInspector.ExtensionServer.prototype._expandResourcePath):
1175         (WebInspector.ExtensionServer.prototype._normalizePath):
1176
1177 2011-07-08  Yury Semikhatsky  <yurys@chromium.org>
1178
1179         Web Inspector: typing undefined = 1 in console crashes browser
1180         https://bugs.webkit.org/show_bug.cgi?id=64155
1181
1182         Do not access undefined value directly when producing JSON objects as undefined
1183         may be overriden by the inspected page.
1184
1185         Reviewed by Pavel Feldman.
1186
1187         Test: inspector/console/console-eval-undefined-override.html
1188
1189         * inspector/InjectedScriptSource.js:
1190         (.):
1191         ():
1192
1193 2011-07-07  Emil A Eklund  <eae@chromium.org>
1194
1195         Switch HitTestResult to to new layout types
1196         https://bugs.webkit.org/show_bug.cgi?id=64131
1197
1198         Reviewed by Eric Seidel.
1199
1200         No new tests, no functionality changes.
1201
1202         * page/MouseEventWithHitTestResults.cpp:
1203         (WebCore::MouseEventWithHitTestResults::localPoint):
1204         * page/MouseEventWithHitTestResults.h:
1205         * rendering/HitTestResult.cpp:
1206         (WebCore::HitTestResult::HitTestResult):
1207         (WebCore::HitTestResult::addNodeToRectBasedTestResult):
1208         (WebCore::HitTestResult::rectForPoint):
1209         * rendering/HitTestResult.h:
1210         (WebCore::HitTestResult::point):
1211         (WebCore::HitTestResult::localPoint):
1212         (WebCore::HitTestResult::setPoint):
1213         (WebCore::HitTestResult::setLocalPoint):
1214         (WebCore::HitTestResult::rectForPoint):
1215
1216 2011-07-07  Levi Weintraub  <leviw@chromium.org>
1217
1218         Switch remaining paint functions to new layout types
1219         https://bugs.webkit.org/show_bug.cgi?id=64116
1220
1221         Reviewed by Eric Seidel.
1222
1223         Switching all functions with IntPoint paintOffsets to the new Layout types.
1224
1225         No new tests, no functionality changes.
1226
1227         * rendering/EllipsisBox.cpp:
1228         (WebCore::EllipsisBox::paint):
1229         (WebCore::EllipsisBox::paintSelection):
1230         * rendering/EllipsisBox.h:
1231         * rendering/InlineBox.cpp:
1232         (WebCore::InlineBox::paint):
1233         * rendering/InlineBox.h:
1234         * rendering/InlineFlowBox.cpp:
1235         (WebCore::InlineFlowBox::paint):
1236         * rendering/InlineFlowBox.h:
1237         * rendering/InlineTextBox.cpp:
1238         (WebCore::InlineTextBox::paint):
1239         (WebCore::InlineTextBox::paintCustomHighlight):
1240         * rendering/InlineTextBox.h:
1241         * rendering/LayoutTypes.h:
1242         * rendering/RenderBlock.cpp:
1243         (WebCore::RenderBlock::paintColumnRules):
1244         (WebCore::RenderBlock::paintColumnContents):
1245         (WebCore::RenderBlock::paintContents):
1246         (WebCore::RenderBlock::paintChildren):
1247         (WebCore::RenderBlock::paintCaret):
1248         (WebCore::RenderBlock::paintObject):
1249         (WebCore::RenderBlock::paintFloats):
1250         (WebCore::RenderBlock::paintEllipsisBoxes):
1251         (WebCore::RenderBlock::paintContinuationOutlines):
1252         (WebCore::RenderBlock::paintSelection):
1253         * rendering/RenderBlock.h:
1254         * rendering/RenderBox.cpp:
1255         (WebCore::RenderBox::paintCustomHighlight):
1256         * rendering/RenderBox.h:
1257         * rendering/RenderInline.cpp:
1258         (WebCore::RenderInline::paintOutline):
1259         (WebCore::RenderInline::paintOutlineForLine):
1260         * rendering/RenderInline.h:
1261         * rendering/RenderLayer.cpp:
1262         (WebCore::RenderLayer::paintOverflowControls):
1263         (WebCore::RenderLayer::paintScrollCorner):
1264         (WebCore::RenderLayer::paintResizer):
1265         * rendering/RenderLayer.h:
1266         * rendering/RenderLineBoxList.cpp:
1267         (WebCore::RenderLineBoxList::paint):
1268         * rendering/RenderListBox.cpp:
1269         (WebCore::RenderListBox::paintScrollbar):
1270         (WebCore::RenderListBox::paintItemForeground):
1271         (WebCore::RenderListBox::paintItemBackground):
1272         * rendering/RenderListBox.h:
1273         * rendering/RenderObject.cpp:
1274         (WebCore::RenderObject::paintFocusRing):
1275         (WebCore::RenderObject::paintOutline):
1276         * rendering/RenderObject.h:
1277         * rendering/RenderReplaced.cpp:
1278         (WebCore::RenderReplaced::shouldPaint):
1279         * rendering/RenderReplaced.h:
1280         * rendering/RenderScrollbarPart.cpp:
1281         (WebCore::RenderScrollbarPart::paintIntoRect):
1282         * rendering/RenderScrollbarPart.h:
1283         * rendering/RenderTableCell.cpp:
1284         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
1285         * rendering/RenderTableSection.cpp:
1286         (WebCore::RenderTableSection::paintCell):
1287         * rendering/RenderTableSection.h:
1288         * rendering/RenderTextControl.cpp:
1289         (WebCore::RenderTextControl::paintPlaceholder):
1290         * rendering/RootInlineBox.cpp:
1291         (WebCore::RootInlineBox::paintEllipsisBox):
1292         (WebCore::RootInlineBox::paintCustomHighlight):
1293         (WebCore::RootInlineBox::paint):
1294         * rendering/RootInlineBox.h:
1295         * rendering/mathml/RenderMathMLBlock.cpp:
1296         (WebCore::RenderMathMLBlock::paint):
1297         * rendering/mathml/RenderMathMLFraction.cpp:
1298         (WebCore::RenderMathMLFraction::paint):
1299         * rendering/mathml/RenderMathMLRoot.cpp:
1300         (WebCore::RenderMathMLRoot::paint):
1301         * rendering/mathml/RenderMathMLSquareRoot.cpp:
1302         (WebCore::RenderMathMLSquareRoot::paint):
1303
1304 2011-07-07  Steve VanDeBogart  <vandebo@chromium.org>
1305
1306         Work around Skia PDF's lack of inverted path support.
1307         https://bugs.webkit.org/show_bug.cgi?id=64032
1308
1309         Reviewed by James Robinson.
1310
1311         The trick used in http://neugierig.org/software/chromium/notes/2010/07/clipping.html
1312         to support antialiased clips doesn't work when printing to Skia's PDF backend because
1313         the backend does not support inverted paths. This manifests as rounded buttons not being
1314         drawn when printing, tracked as Chrome bug 79519.
1315         
1316         However, when the output is a vector device, like PDF, we don't need antialiased clips.
1317         It's up to the PDF rendering engine to do that.  So we can simply disable the antialiased
1318         clip code if the output is a vector device.
1319         
1320         I think the fix isn't testable because it requires examining the printed output.
1321
1322         * platform/graphics/skia/PlatformContextSkia.cpp:
1323         (WebCore::PlatformContextSkia::clipPathAntiAliased):
1324
1325 2011-07-07  Emil A Eklund  <eae@chromium.org>
1326
1327         Switch rendering tree selection code to to new layout types
1328         https://bugs.webkit.org/show_bug.cgi?id=63762
1329
1330         Reviewed by Eric Seidel.
1331
1332         Switch selection getters and selection gap calculation methods over to
1333         new layout abstraction.
1334
1335         No new tests, no functionality changes.
1336
1337         * rendering/InlineTextBox.cpp:
1338         (WebCore::InlineTextBox::selectionTop):
1339         (WebCore::InlineTextBox::selectionBottom):
1340         (WebCore::InlineTextBox::selectionHeight):
1341         (WebCore::InlineTextBox::isSelected):
1342         * rendering/InlineTextBox.h:
1343         * rendering/RenderBR.h:
1344         (WebCore::RenderBR::selectionRectForRepaint):
1345         * rendering/RenderBlock.cpp:
1346         (WebCore::RenderBlock::selectionGapRectsForRepaint):
1347         (WebCore::RenderBlock::selectionGaps):
1348         (WebCore::RenderBlock::inlineSelectionGaps):
1349         (WebCore::RenderBlock::blockSelectionGaps):
1350         (WebCore::RenderBlock::blockSelectionGap):
1351         (WebCore::RenderBlock::logicalLeftSelectionGap):
1352         (WebCore::RenderBlock::logicalRightSelectionGap):
1353         (WebCore::RenderBlock::logicalLeftSelectionOffset):
1354         (WebCore::RenderBlock::logicalRightSelectionOffset):
1355         (WebCore::RenderBlock::positionForPointWithInlineChildren):
1356         (WebCore::RenderBlock::desiredColumnWidth):
1357         * rendering/RenderBlock.h:
1358         (WebCore::RenderBlock::selectionRectForRepaint):
1359         * rendering/RenderListMarker.cpp:
1360         (WebCore::RenderListMarker::selectionRectForRepaint):
1361         * rendering/RenderListMarker.h:
1362         * rendering/RenderObject.h:
1363         (WebCore::RenderObject::selectionRect):
1364         (WebCore::RenderObject::selectionRectForRepaint):
1365         * rendering/RenderReplaced.cpp:
1366         (WebCore::RenderReplaced::selectionRectForRepaint):
1367         * rendering/RenderReplaced.h:
1368         * rendering/RenderSelectionInfo.h:
1369         (WebCore::RenderSelectionInfo::RenderSelectionInfo):
1370         * rendering/RenderText.cpp:
1371         (WebCore::RenderText::selectionRectForRepaint):
1372         * rendering/RenderText.h:
1373         * rendering/RootInlineBox.cpp:
1374         (WebCore::RootInlineBox::selectionTop):
1375         (WebCore::RootInlineBox::selectionBottom):
1376         * rendering/RootInlineBox.h:
1377         (WebCore::RootInlineBox::selectionHeight):
1378
1379 2011-07-07  Gavin Peters  <gavinp@chromium.org>
1380
1381         Reviewed by Alexey Proskuryakov.
1382
1383         fast/dom/HTMLLinkElement/link-and-subresource-test.html is flaky on chromium debug bots
1384         https://bugs.webkit.org/show_bug.cgi?id=60097
1385
1386         The culprit was that CachedResource:stopLoading() was using *this
1387         after a call to checkNotify(), which isn't kosher.  This patch
1388         uses a CachedResourceHandle to keep the CachedResource alive.
1389
1390         The test is a very close copy of the eponymous
1391         link-and-subresource-test.html, only substituting invalid
1392         resources for the valid ones in that test.  The reproduction is
1393         timing related, and happens much more consistantly with an invalid
1394         resource for whatever reason.
1395         Test: fast/dom/HTMLLinkElement/link-and-subresource-test-nonexistent.html
1396
1397         * loader/cache/CachedResource.cpp:
1398         (WebCore::CachedResource::stopLoading):
1399
1400 2011-07-07  James Robinson  <jamesr@chromium.org>
1401
1402         Reviewed by Kenneth Russell.
1403
1404         Use v8::AdjustAmountOfExternalAllocatedMemory for ArrayBuffers
1405         https://bugs.webkit.org/show_bug.cgi?id=42912
1406
1407         This calls v8's AdjustAmountOfExternalAllocatedMemory when ArrayBuffers are allocated/deallocated so that V8's
1408         garbage collection heuristics can account for the memory held by these objects.  On the new test page, this
1409         reduces the peak memory use from 5BG+ (or a crash in 32-bit systems) to <300MB.
1410
1411         Test: WebCore/manual-tests/array-buffer-memory.html
1412
1413         * html/canvas/ArrayBuffer.cpp:
1414         (WebCore::ArrayBuffer::~ArrayBuffer):
1415         (WebCore::ArrayBuffer::tryAllocate):
1416
1417 2011-07-07  Ryosuke Niwa  <rniwa@webkit.org>
1418
1419         Move all code related to cachedSelection to HTMLTextFormControlElement
1420         https://bugs.webkit.org/show_bug.cgi?id=64118
1421
1422         Reviewed by Alexey Proskuryakov.
1423
1424         Moved m_cachedSelectionStart and m_cachedSelectionEnd from HTMLInputElement
1425         and HTMLTextAreaElement to HTMLTextFormControlElement
1426
1427         Also removed cached selection related functions from RenderTextControl,
1428         RenderTextControlSingleLine, and RenderTextControlMultiLine because they were
1429         merely providing wrapper functions to enable polymorphism between
1430         input and textarea elements and their WML equivalents.
1431
1432         * editing/FrameSelection.cpp:
1433         (WebCore::FrameSelection::notifyRendererOfSelectionChange): Calls HTMLTextFormControlElement's
1434         selectionChanged instead of RenderTextControl's.
1435         * html/HTMLFormControlElement.cpp:
1436         (WebCore::HTMLTextFormControlElement::HTMLTextFormControlElement): Initialize
1437         m_cachedSelectionStart and m_cachedSelectionEnd.
1438         (WebCore::HTMLTextFormControlElement::selectionStart):
1439         (WebCore::HTMLTextFormControlElement::selectionEnd):
1440         (WebCore::HTMLTextFormControlElement::selection):
1441         (WebCore::HTMLTextFormControlElement::restoreCachedSelection): Added.
1442         (WebCore::HTMLTextFormControlElement::selectionChanged): Extracted from
1443         RenderTextControl::selectionChanged.
1444         * html/HTMLFormControlElement.h:
1445         (WebCore::HTMLTextFormControlElement::cacheSelection): Extracted from HTMLInputElement
1446         and HTMLTextAreaElement.
1447         (WebCore::HTMLTextFormControlElement::hasCachedSelectionStart): Added.
1448         (WebCore::HTMLTextFormControlElement::hasCachedSelectionEnd): Added.
1449         * html/HTMLInputElement.cpp:
1450         (WebCore::HTMLInputElement::HTMLInputElement):
1451         (WebCore::HTMLInputElement::updateFocusAppearance):
1452         * html/HTMLInputElement.h:
1453         * html/HTMLTextAreaElement.cpp:
1454         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
1455         (WebCore::HTMLTextAreaElement::updateFocusAppearance):
1456         * html/HTMLTextAreaElement.h:
1457         (WebCore::HTMLTextAreaElement::isEmptyValue):
1458         * rendering/RenderTextControl.cpp:
1459         (WebCore::setSelectionRange):
1460         * rendering/RenderTextControl.h:
1461         * rendering/RenderTextControlMultiLine.cpp:
1462         * rendering/RenderTextControlMultiLine.h:
1463         * rendering/RenderTextControlSingleLine.cpp:
1464         * rendering/RenderTextControlSingleLine.h:
1465
1466 2011-07-07  Emil A Eklund  <eae@chromium.org>
1467
1468         Switch addFocusRingRects to to new layout types
1469         https://bugs.webkit.org/show_bug.cgi?id=64114
1470
1471         Reviewed by Eric Seidel.
1472
1473         No new tests, no functionality changes.
1474
1475         * rendering/LayoutTypes.h:
1476         (WebCore::flooredLayoutPoint):
1477         * rendering/RenderBlock.cpp:
1478         (WebCore::RenderBlock::addFocusRingRects):
1479         * rendering/RenderBlock.h:
1480         * rendering/RenderBox.cpp:
1481         (WebCore::RenderBox::addFocusRingRects):
1482         * rendering/RenderBox.h:
1483         * rendering/RenderInline.cpp:
1484         (WebCore::RenderInline::addFocusRingRects):
1485         * rendering/RenderInline.h:
1486         * rendering/RenderListBox.cpp:
1487         (WebCore::RenderListBox::addFocusRingRects):
1488         * rendering/RenderListBox.h:
1489         * rendering/RenderObject.h:
1490         (WebCore::RenderObject::addFocusRingRects):
1491         * rendering/RenderTextControl.cpp:
1492         (WebCore::RenderTextControl::addFocusRingRects):
1493         * rendering/RenderTextControl.h:
1494         * rendering/svg/RenderSVGContainer.cpp:
1495         (WebCore::RenderSVGContainer::addFocusRingRects):
1496         * rendering/svg/RenderSVGContainer.h:
1497         * rendering/svg/RenderSVGImage.cpp:
1498         (WebCore::RenderSVGImage::addFocusRingRects):
1499         * rendering/svg/RenderSVGImage.h:
1500         * rendering/svg/RenderSVGPath.cpp:
1501         (WebCore::RenderSVGPath::addFocusRingRects):
1502         * rendering/svg/RenderSVGPath.h:
1503
1504 2011-07-06  Adrienne Walker  <enne@google.com>
1505
1506         [chromium] Reduce compositor texture memory by skipping layers and clipping surfaces
1507         https://bugs.webkit.org/show_bug.cgi?id=64052
1508
1509         Reviewed by James Robinson.
1510
1511         Layers and surfaces that are entirely transparent are now skipped.
1512         Parent scissor rects are now applied to the content rect of surfaces
1513         so that offscreen surfaces can be skipped.
1514
1515         Landing this for vangelis@chromium.org.
1516
1517         Covered by existing tests.
1518
1519         * platform/graphics/chromium/LayerRendererChromium.cpp:
1520         (WebCore::calculateVisibleRect):
1521         (WebCore::calculateVisibleLayerRect):
1522         (WebCore::LayerRendererChromium::paintLayerContents):
1523         (WebCore::LayerRendererChromium::drawLayers):
1524         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
1525         (WebCore::LayerRendererChromium::updateCompositorResources):
1526         (WebCore::LayerRendererChromium::drawLayer):
1527         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
1528         (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
1529
1530 2011-07-07  Adam Barth  <abarth@webkit.org>
1531
1532         Unreviewed, rolling out r90581.
1533         http://trac.webkit.org/changeset/90581
1534         https://bugs.webkit.org/show_bug.cgi?id=64124
1535
1536         Broke a bunch of inspector tests (Requested by ojan on
1537         #webkit).
1538
1539         * inspector/front-end/ExtensionAPI.js:
1540         (WebInspector.injectedExtensionAPI.Panels.prototype.create):
1541         (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setPage):
1542         (WebInspector.injectedExtensionAPI.expandURL):
1543         * inspector/front-end/ExtensionPanel.js:
1544         (WebInspector.ExtensionPanel):
1545         * inspector/front-end/ExtensionServer.js:
1546         (WebInspector.ExtensionServer):
1547         (WebInspector.ExtensionServer.prototype._onCreatePanel):
1548         (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
1549         (WebInspector.ExtensionServer.prototype._addExtensions):
1550         (WebInspector.ExtensionServer.prototype._onWindowMessage):
1551         (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
1552
1553 2011-07-07  Adrienne Walker  <enne@google.com>
1554
1555         [chromium] Fix crash when compositing gets disabled mid-paint
1556         https://bugs.webkit.org/show_bug.cgi?id=64119
1557
1558         Reviewed by James Robinson.
1559
1560         WebKit paint can disable compositing and call setRootLayer(0). Adding
1561         a check for this in drawLayers prevents a null pointer deref.
1562
1563         * platform/graphics/chromium/LayerRendererChromium.cpp:
1564         (WebCore::LayerRendererChromium::drawLayers):
1565
1566 2011-07-07  Dirk Schulze  <krit@webkit.org>
1567
1568         SVGAnimateTransform does not support calcMode=discrete
1569         https://bugs.webkit.org/show_bug.cgi?id=63914
1570
1571         Reviewed by Rob Buis.
1572
1573         CalcMode discrete specifies that the animation function will jump from one value to the next without any interpolation.
1574         Implemented calcMode discrete by checking current progress of animation. If we are in the first half of the animation,
1575         we use the start value of the aniamtion, end value for the second half of the animation. The key time at 50% is used on
1576         all other animations as well as on other SVG viewers.
1577
1578         Added a manual test. DRT crashes on an automated test with the SVG animation API. Opened a new bug report: 64104.
1579
1580         * manual-tests/svg-animateTransform-calcMode-discrete.svg: Added.
1581         * svg/SVGAnimateTransformElement.cpp:
1582         (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
1583
1584 2011-07-07  Dirk Schulze  <krit@webkit.org>
1585
1586         Reviewed by Rob Buis.
1587
1588         SVGAnimatedPath needs fallback for 'by' animation
1589         https://bugs.webkit.org/show_bug.cgi?id=63865
1590         
1591         Added fallback to 'to' animation for 'by' animated SVGAnimatedPathAnimator.
1592         
1593         Clenup of SVGAnimateElement. Removed all switches since we support all AnimatedTypes
1594         with the exception of AnimatedEnumeration. AnimatedEnumeration gets animated as AnimatedString at the moment. 
1595
1596         Test: svg/animations/svgpath-animation-1.html
1597
1598         * svg/SVGAnimateElement.cpp:
1599         (WebCore::getPropertyValue):
1600         (WebCore::inheritsFromProperty):
1601         (WebCore::attributeValueIsCurrentColor):
1602         (WebCore::SVGAnimateElement::adjustForCurrentColor):
1603         (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
1604         (WebCore::SVGAnimateElement::calculateAnimatedValue):
1605         (WebCore::SVGAnimateElement::calculateFromAndToValues):
1606         (WebCore::SVGAnimateElement::calculateFromAndByValues):
1607         (WebCore::SVGAnimateElement::resetToBaseValue):
1608         (WebCore::SVGAnimateElement::applyResultsToTarget):
1609         (WebCore::SVGAnimateElement::calculateDistance):
1610         * svg/SVGAnimatedPath.cpp:
1611         (WebCore::SVGAnimatedPathAnimator::calculateFromAndByValues):
1612
1613 2011-07-07  Andrey Kosyakov  <caseq@chromium.org>
1614
1615         Web Inspector: secure access to extensions API
1616         https://bugs.webkit.org/show_bug.cgi?id=64080
1617
1618         Reviewed by Pavel Feldman.
1619
1620         * inspector/front-end/ExtensionAPI.js:
1621         (WebInspector.injectedExtensionAPI.Panels.prototype.create):
1622         (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setPage):
1623         * inspector/front-end/ExtensionPanel.js:
1624         (WebInspector.ExtensionPanel):
1625         * inspector/front-end/ExtensionServer.js:
1626         (WebInspector.ExtensionServer):
1627         (WebInspector.ExtensionServer.prototype._onCreatePanel):
1628         (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
1629         (WebInspector.ExtensionServer.prototype._addExtensions):
1630         (WebInspector.ExtensionServer.prototype._onWindowMessage):
1631         (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
1632         (WebInspector.ExtensionServer.prototype._expandResourcePath):
1633
1634 2011-07-07  Kyusun Kim  <maniagoon@company100.net>
1635
1636         The return value of SharedBuffer::createWithContentsOfFile must have valid m_size.
1637         https://bugs.webkit.org/show_bug.cgi?id=63313
1638
1639         Reviewed by Eric Seidel.
1640
1641         * platform/posix/SharedBufferPOSIX.cpp:
1642         (WebCore::SharedBuffer::createWithContentsOfFile):
1643
1644 2011-07-07  Dan Bernstein  <mitz@apple.com>
1645
1646         <rdar://problem/9737435> Re-enable -webkit-column-break-inside: avoid
1647         https://bugs.webkit.org/show_bug.cgi?id=64102
1648
1649         Reviewed by Simon Fraser.
1650
1651         -webkit-column-break-inside: avoid was disabled in r62632 along with page-break-inside: avoid.
1652         The latter remains disabled.
1653
1654         * rendering/RenderBlock.cpp:
1655         (WebCore::RenderBlock::adjustForUnsplittableChild): Treat the child as unsplittable if
1656         '-webkit-column-break-inside: avoid' was specified.
1657
1658 2011-07-07  Andrey Kosyakov  <caseq@chromium.org>
1659
1660         Web Inspector: visual regressions in network panel
1661         https://bugs.webkit.org/show_bug.cgi?id=64089
1662
1663         Reviewed by Pavel Feldman.
1664
1665         * inspector/front-end/networkPanel.css:
1666         (.data-grid.network-log-grid tr.filler td):
1667         (.network.panel .sidebar):
1668
1669 2011-07-07  Julien Chaffraix  <jchaffraix@webkit.org>
1670
1671         Reviewed by David Hyatt.
1672
1673         Partial layout when a flex-box has visibility: collapse
1674         https://bugs.webkit.org/show_bug.cgi?id=63776
1675
1676         Tests: fast/flexbox/crash-button-input-autofocus.html
1677                fast/flexbox/crash-button-keygen.html
1678                fast/flexbox/crash-button-relayout.html
1679
1680         The issue is that FlexBoxIterator would skip any child if it has visibility: collapsed.
1681         However if one of the child is anonymous, it may wrap some other child that would be skipped.
1682         Now FlexBoxIterator is called during the layout phase and thus some nodes would not relayouted
1683         as expected.
1684
1685         * rendering/RenderDeprecatedFlexibleBox.cpp:
1686         (WebCore::FlexBoxIterator::next): When iterating, don't skip anonymous content as there may
1687         be real content hiding below.
1688
1689 2011-07-07  Vsevolod Vlasov  <vsevik@chromium.org>
1690
1691         Web Inspector: URL links in styles open new tab instead of showing resources panel.
1692         https://bugs.webkit.org/show_bug.cgi?id=64090
1693
1694         Reviewed by Pavel Feldman.
1695
1696         * inspector/front-end/StylesSidebarPane.js:
1697         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
1698
1699 2011-07-07  Andrey Kosyakov  <caseq@chromium.org>
1700
1701         Web Inspector: active panel does not receive resize event when drawer is resized
1702         https://bugs.webkit.org/show_bug.cgi?id=64094
1703
1704         Reviewed by Pavel Feldman.
1705
1706         * inspector/front-end/Drawer.js:
1707         (WebInspector.Drawer.prototype._statusBarDragging):
1708
1709 2011-07-07  Pavel Feldman  <pfeldman@chromium.org>
1710
1711         Web Inspector: prevent default action during drag'n'drop in the Elements panel.
1712         https://bugs.webkit.org/show_bug.cgi?id=64081
1713
1714         Reviewed by Yury Semikhatsky.
1715
1716         * inspector/front-end/ElementsTreeOutline.js:
1717         (WebInspector.ElementsTreeOutline):
1718         (WebInspector.ElementsTreeOutline.prototype._ondragstart):
1719         (WebInspector.ElementsTreeOutline.prototype._ondragover):
1720         (WebInspector.ElementsTreeOutline.prototype._ondragend):
1721         * inspector/front-end/treeoutline.js:
1722         (TreeOutline.prototype.treeElementFromPoint):
1723
1724 2011-07-07  Nikolas Zimmermann  <nzimmermann@rim.com>
1725
1726         Move remaining enums out of SVG*Element classes
1727         https://bugs.webkit.org/show_bug.cgi?id=64075
1728
1729         Reviewed by Dirk Schulze.
1730
1731         Move remaining enums out of SVG*Element classes. This is a preparation patch for bug 63797.
1732         Also move the SVGPropertyTraits template specializations for enum types before the class
1733         definition in the header, otherwhise we can't use SVGPropertyTraits<FooType>::fromString/toString
1734         in the DECLARE_ANIMATED* macros, which is needed soon.
1735
1736         No new tests, just refactoring.
1737
1738         * rendering/svg/RenderSVGResourceGradient.cpp:
1739         (WebCore::RenderSVGResourceGradient::applyResource):
1740         * rendering/svg/RenderSVGResourceGradient.h:
1741         * rendering/svg/RenderSVGResourceMarker.cpp:
1742         (WebCore::RenderSVGResourceMarker::angle):
1743         (WebCore::RenderSVGResourceMarker::markerTransformation):
1744         * rendering/svg/RenderSVGResourceMarker.h:
1745         (WebCore::RenderSVGResourceMarker::markerUnits):
1746         * rendering/svg/RenderSVGTextPath.cpp:
1747         (WebCore::RenderSVGTextPath::RenderSVGTextPath):
1748         (WebCore::RenderSVGTextPath::exactAlignment):
1749         (WebCore::RenderSVGTextPath::stretchMethod):
1750         * rendering/svg/SVGRenderTreeAsText.cpp:
1751         (WebCore::operator<<):
1752         (WebCore::writeCommonGradientProperties):
1753         * rendering/svg/SVGTextChunkBuilder.cpp:
1754         (WebCore::SVGTextChunkBuilder::addTextChunk):
1755         * rendering/svg/SVGTextLayoutEngine.cpp:
1756         (WebCore::SVGTextLayoutEngine::parentDefinesTextLength):
1757         (WebCore::SVGTextLayoutEngine::beginTextPathLayout):
1758         * svg/GradientAttributes.h:
1759         (WebCore::GradientAttributes::GradientAttributes):
1760         (WebCore::GradientAttributes::spreadMethod):
1761         (WebCore::GradientAttributes::setSpreadMethod):
1762         * svg/SVGComponentTransferFunctionElement.h:
1763         * svg/SVGFEBlendElement.h:
1764         * svg/SVGFEColorMatrixElement.h:
1765         * svg/SVGFECompositeElement.h:
1766         * svg/SVGFEConvolveMatrixElement.h:
1767         * svg/SVGFEDisplacementMapElement.h:
1768         * svg/SVGFEMorphologyElement.h:
1769         * svg/SVGFETurbulenceElement.h:
1770         * svg/SVGGradientElement.cpp:
1771         (WebCore::SVGGradientElement::SVGGradientElement):
1772         * svg/SVGGradientElement.h:
1773         * svg/SVGMarkerElement.cpp:
1774         (WebCore::SVGMarkerElement::SVGMarkerElement):
1775         (WebCore::SVGMarkerElement::parseMappedAttribute):
1776         (WebCore::SVGMarkerElement::setOrientToAuto):
1777         (WebCore::SVGMarkerElement::setOrientToAngle):
1778         (WebCore::SVGMarkerElement::synchronizeOrientType):
1779         (WebCore::SVGMarkerElement::orientTypeAnimated):
1780         * svg/SVGMarkerElement.h:
1781         * svg/SVGTextContentElement.cpp:
1782         (WebCore::SVGTextContentElement::SVGTextContentElement):
1783         * svg/SVGTextContentElement.h:
1784         * svg/SVGTextPathElement.cpp:
1785         (WebCore::SVGTextPathElement::SVGTextPathElement):
1786         * svg/SVGTextPathElement.h:
1787
1788 2011-07-07  Ilya Tikhonovsky  <loislo@chromium.org>
1789
1790         Web Inspector: Protocol: pointers to optional "in" parameters passing to the
1791         backend methods should be NULL if they are not specified in the message.
1792         https://bugs.webkit.org/show_bug.cgi?id=64083
1793
1794         Reviewed by Pavel Feldman.
1795
1796         * inspector/CodeGeneratorInspector.pm:
1797         (generateBackendFunction):
1798         (generateArgumentGetters):
1799         * inspector/InspectorCSSAgent.cpp:
1800         (WebCore::InspectorCSSAgent::getStylesForNode):
1801
1802 2011-07-07  Ilya Tikhonovsky  <loislo@chromium.org>
1803
1804         Web Inspector: Searching on the Network panel doesn't do anything?
1805         https://bugs.webkit.org/show_bug.cgi?id=55489
1806
1807         This is initial implementation of search in Network panel.
1808         It is pretty simple search only for names and paths.
1809
1810         Reviewed by Pavel Feldman.
1811
1812         * inspector/front-end/NetworkPanel.js:
1813         (WebInspector.NetworkPanel.prototype.refresh):
1814         (WebInspector.NetworkPanel.prototype._reset):
1815         (WebInspector.NetworkPanel.prototype._updateOffscreenRows):
1816         (WebInspector.NetworkPanel.prototype._matchResource):
1817         (WebInspector.NetworkPanel.prototype._clearSearchMatchedList):
1818         (WebInspector.NetworkPanel.prototype._highlightNthMatchedResource):
1819         (WebInspector.NetworkPanel.prototype.performSearch):
1820         (WebInspector.NetworkDataGridNode.prototype.createCells):
1821         * inspector/front-end/utilities.js:
1822         (String.prototype.escapeHTML):
1823         ():
1824
1825 2011-07-07  Vsevolod Vlasov  <vsevik@chromium.org>
1826
1827         Web Inspector: Resources panel shows only one resource when multiple resources have the same url.
1828         https://bugs.webkit.org/show_bug.cgi?id=63936
1829
1830         Reviewed by Pavel Feldman.
1831
1832         Test: http/tests/inspector/resource-tree/resource-tree-non-unique-url.html
1833
1834         * inspector/front-end/ResourcesPanel.js:
1835         (WebInspector.FrameTreeElement.prototype.appendResource):
1836
1837 2011-07-07  Vsevolod Vlasov  <vsevik@chromium.org>
1838
1839         Web Inspector: Add support for clearing cache and cookies from network panel.
1840         https://bugs.webkit.org/show_bug.cgi?id=63999
1841
1842         Reviewed by Pavel Feldman.
1843
1844         * English.lproj/localizedStrings.js:
1845         * inspector/Inspector.json:
1846         * inspector/InspectorClient.h:
1847         (WebCore::InspectorClient::clearBrowserCache):
1848         (WebCore::InspectorClient::clearBrowserCookies):
1849         * inspector/InspectorController.cpp:
1850         (WebCore::InspectorController::InspectorController):
1851         * inspector/InspectorResourceAgent.cpp:
1852         (WebCore::InspectorResourceAgent::clearBrowserCache):
1853         (WebCore::InspectorResourceAgent::clearBrowserCookies):
1854         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
1855         * inspector/InspectorResourceAgent.h:
1856         (WebCore::InspectorResourceAgent::create):
1857         * inspector/front-end/NetworkPanel.js:
1858         (WebInspector.NetworkPanel.prototype._contextMenu):
1859         (WebInspector.NetworkPanel.prototype._clearBrowserCache):
1860         (WebInspector.NetworkPanel.prototype._clearBrowserCookies):
1861         * inspector/front-end/Settings.js:
1862
1863 2011-07-07  Shinya Kawanaka  <shinyak@google.com>
1864
1865         Added more key bindings for input[type=range].
1866         https://bugs.webkit.org/show_bug.cgi?id=52262
1867
1868         Added PageUp/PageDown/Home/End key bindings for input[type=range].
1869         PageUp/PageDown change value by about 10%.
1870         Home/End change value to minimum/maximum.
1871
1872         Reviewed by Kent Tamura.
1873
1874         * html/RangeInputType.cpp:
1875         (WebCore::RangeInputType::handleKeydownEvent):
1876           Added key bindings.
1877
1878 2011-07-07  Oleg Romashin  <romaxa@gmail.com>
1879
1880         Fix InspectorInstrumentation compilation.
1881         https://bugs.webkit.org/show_bug.cgi?id=64033
1882
1883         Reviewed by Yury Semikhatsky.
1884
1885         No new tests. just compile fix.
1886
1887         * inspector/InspectorInstrumentation.cpp:
1888         (WebCore::InspectorInstrumentation::didInvalidateStyleAttrImpl):
1889
1890 2011-07-06  Mihnea Ovidenie  <mihnea@adobe.com>
1891
1892         Reviewed by David Hyatt.
1893
1894         [CSSRegions] Parse flow property
1895         https://bugs.webkit.org/show_bug.cgi?id=61730
1896
1897         Test: fast/regions/webkit-flow-parsing.html
1898
1899         * css/CSSComputedStyleDeclaration.cpp:
1900         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1901         * css/CSSParser.cpp:
1902         (WebCore::CSSParser::parseValue):
1903         (WebCore::CSSParser::parseFlowThread):
1904         * css/CSSParser.h:
1905         * css/CSSPropertyNames.in:
1906         * css/CSSStyleSelector.cpp:
1907         (WebCore::CSSStyleSelector::applyProperty):
1908         * rendering/style/RenderStyle.cpp:
1909         (WebCore::RenderStyle::diff):
1910         * rendering/style/RenderStyle.h:
1911         (WebCore::InheritedFlags::flowThread):
1912         (WebCore::InheritedFlags::setFlowThread):
1913         (WebCore::InheritedFlags::initialFlowThread):
1914         * rendering/style/StyleRareNonInheritedData.cpp:
1915         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1916         (WebCore::StyleRareNonInheritedData::operator==):
1917         * rendering/style/StyleRareNonInheritedData.h:
1918
1919 2011-07-06  MORITA Hajime  <morrita@google.com>
1920
1921         [ShadowContentElement] Redundant RenderText objects are created on the content boundaries.
1922         https://bugs.webkit.org/show_bug.cgi?id=63977
1923
1924         Reviewed by Dimitri Glazkov.
1925
1926         NodeRenderingContext::nextRenderer() and previousRenderer() didn't work well
1927         when it crosses content elements:
1928         - It doesn't step into forwarded children of ShadowContentElement.
1929         - It doesn't step out from traversing forwarded children to
1930           neighbors of the content element of that forwarded chidren.
1931         
1932         This change makes it to step into and out from content element.
1933         
1934         Test: fast/dom/shadow/content-element-renderers.html
1935
1936         * dom/NodeRenderingContext.cpp:
1937         (WebCore::firstRendererOf): Added
1938         (WebCore::lastRendererOf): Added
1939         (WebCore::NodeRenderingContext::nextRenderer):
1940         (WebCore::NodeRenderingContext::previousRenderer):
1941
1942 2011-07-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1943
1944         [EFL] Add Fullscreen API feature
1945         https://bugs.webkit.org/show_bug.cgi?id=63975
1946
1947         Add needed files for enabling ENABLE_FULLSCREEN_API feature.
1948
1949         Reviewed by Adam Barth.
1950
1951         * CMakeLists.txt: Add RenderFullScreen.cpp, fullscreen.css
1952
1953 2011-07-06  Emil A Eklund  <eae@chromium.org>
1954
1955         Switch absoluteRects to to new layout types
1956         https://bugs.webkit.org/show_bug.cgi?id=64035
1957
1958         Reviewed by Eric Seidel.
1959
1960         Move absoluteRects over to new layout unit abstraction.
1961         Add flooredLayoutPoint, mapped to flooredIntPoint.
1962
1963         No new tests, no functionality changes.
1964
1965         * rendering/LayoutTypes.h:
1966         (WebCore::flooredLayoutPoint):
1967         * rendering/RenderBlock.cpp:
1968         (WebCore::RenderBlock::absoluteRects):
1969         * rendering/RenderBlock.h:
1970         * rendering/RenderBox.cpp:
1971         (WebCore::RenderBox::absoluteRects):
1972         * rendering/RenderInline.cpp:
1973         (WebCore::RenderInline::absoluteRects):
1974         * rendering/RenderInline.h:
1975         * rendering/RenderObject.cpp:
1976         (WebCore::RenderObject::absoluteBoundingBoxRect):
1977         * rendering/RenderObject.h:
1978         (WebCore::RenderObject::absoluteRects):
1979         * rendering/RenderText.cpp:
1980         (WebCore::RenderText::absoluteRects):
1981         * rendering/RenderText.h:
1982         * rendering/RenderView.cpp:
1983         (WebCore::RenderView::absoluteRects):
1984         * rendering/RenderView.h:
1985         * rendering/svg/RenderSVGBlock.cpp:
1986         (WebCore::RenderSVGBlock::absoluteRects):
1987         * rendering/svg/RenderSVGBlock.h:
1988         * rendering/svg/RenderSVGModelObject.cpp:
1989         (WebCore::RenderSVGModelObject::absoluteRects):
1990         * rendering/svg/RenderSVGModelObject.h:
1991
1992 2011-07-06  Emil A Eklund  <eae@chromium.org>
1993
1994         Reviewed by Eric Seidel.
1995
1996         Switch offsetFromContainer and related to to new layout types
1997         https://bugs.webkit.org/show_bug.cgi?id=63659
1998
1999         Switch offsetFromContainer and related mapping methods to new layout unit
2000         abstraction.
2001
2002         No new tests, no functionality changes.
2003
2004         * rendering/LayoutTypes.h:
2005         (WebCore::enclosingLayoutRect):
2006         (WebCore::roundedLayoutPoint):
2007         (WebCore::roundedLayoutUnit):
2008         Add LayoutUnit versions of enclosingIntRect, roundedIntPoint and lroundf.
2009         For now these map to their int counterpart but once we switch to float or
2010         fixed point they'll be no-ops and eventually will be removed. 
2011         
2012         * rendering/RenderBox.cpp:
2013         (WebCore::RenderBox::mapLocalToContainer):
2014         (WebCore::RenderBox::mapAbsoluteToLocalPoint):
2015         (WebCore::RenderBox::offsetFromContainer):
2016         * rendering/RenderBox.h:
2017         * rendering/RenderInline.cpp:
2018         (WebCore::RenderInline::linesBoundingBox):
2019         (WebCore::RenderInline::offsetFromContainer):
2020         (WebCore::RenderInline::mapLocalToContainer):
2021         (WebCore::RenderInline::mapAbsoluteToLocalPoint):
2022         (WebCore::RenderInline::relativePositionedInlineOffset):
2023         * rendering/RenderInline.h:
2024         * rendering/RenderObject.cpp:
2025         (WebCore::RenderObject::offsetFromContainer):
2026         (WebCore::RenderObject::offsetFromAncestorContainer):
2027         * rendering/RenderObject.h:
2028         * rendering/RenderTableCell.cpp:
2029         (WebCore::RenderTableCell::offsetFromContainer):
2030         * rendering/RenderTableCell.h:
2031         * rendering/RenderThemeMac.mm:
2032         (WebCore::RenderThemeMac::convertToPaintingRect):
2033
2034 2011-07-06  Levi Weintraub  <leviw@chromium.org>
2035
2036         Switch FrameSelection to new Layout Types
2037         https://bugs.webkit.org/show_bug.cgi?id=64043
2038
2039         Reviewed by Eric Seidel.
2040
2041         Switching the selection classes to the new layout types. Changing
2042         NoXPosForVerticalArrowNavigation to a static inline since as it stood it violated
2043         our global initializer rule when converted to numeric_limits from INT_MIN.
2044
2045         No new tests, no functionality changes.
2046
2047         * editing/FrameSelection.cpp:
2048         (WebCore::FrameSelection::modify):
2049         (WebCore::absoluteCaretY):
2050         (WebCore::FrameSelection::lineDirectionPointForBlockDirectionNavigation):
2051         (WebCore::CaretBase::clearCaretRect):
2052         (WebCore::CaretBase::updateCaretRect):
2053         (WebCore::FrameSelection::localCaretRect):
2054         (WebCore::CaretBase::absoluteBoundsForLocalRect):
2055         (WebCore::FrameSelection::absoluteCaretBounds):
2056         (WebCore::repaintRectForCaret):
2057         (WebCore::CaretBase::caretRepaintRect):
2058         (WebCore::FrameSelection::recomputeCaretRect):
2059         (WebCore::FrameSelection::paintCaret):
2060         (WebCore::CaretBase::paintCaret):
2061         (WebCore::FrameSelection::contains):
2062         (WebCore::DragCaretController::paintDragCaret):
2063         (WebCore::FrameSelection::bounds):
2064         (WebCore::FrameSelection::revealSelection):
2065         * editing/FrameSelection.h:
2066         (WebCore::CaretBase::localCaretRectWithoutUpdate):
2067
2068 2011-07-06  Levi Weintraub  <leviw@chromium.org>
2069
2070         Switch Overflow and FrameRect methods in InlineBox to Layout Units
2071         https://bugs.webkit.org/show_bug.cgi?id=64034
2072
2073         Reviewed by Eric Seidel.
2074
2075         Switching Overflow and FrameRect methods on InlineBox to new Layout Unit abstraction and
2076         cleaning up some compilation errors that crop up when building with floating point layout units.
2077
2078         No new tests, no functionality changes.
2079
2080         * css/CSSComputedStyleDeclaration.cpp:
2081         (WebCore::sizingBox):
2082         * dom/Document.h:
2083         * editing/DeleteButtonController.cpp:
2084         (WebCore::isDeletableElement):
2085         * inspector/DOMNodeHighlighter.cpp:
2086         (WebCore::DOMNodeHighlighter::drawNodeHighlight):
2087         * page/animation/AnimationBase.cpp:
2088         (WebCore::blendFunc):
2089         * platform/ScrollView.h:
2090         (WebCore::ScrollView::visibleWidth):
2091         (WebCore::ScrollView::visibleHeight):
2092         * platform/ScrollableArea.h:
2093         (WebCore::ScrollableArea::visibleHeight):
2094         (WebCore::ScrollableArea::visibleWidth):
2095         * platform/graphics/FloatPoint.h: Adding FloatPoint and FloatSize move[By] functions
2096         (WebCore::FloatPoint::move):
2097         (WebCore::FloatPoint::moveBy):
2098         * rendering/AutoTableLayout.cpp:
2099         (WebCore::AutoTableLayout::computePreferredLogicalWidths):
2100         (WebCore::AutoTableLayout::layout):
2101         * rendering/InlineFlowBox.h:
2102         (WebCore::InlineFlowBox::layoutOverflowRect):
2103         (WebCore::InlineFlowBox::logicalLeftLayoutOverflow):
2104         (WebCore::InlineFlowBox::logicalRightLayoutOverflow):
2105         (WebCore::InlineFlowBox::logicalTopLayoutOverflow):
2106         (WebCore::InlineFlowBox::logicalBottomLayoutOverflow):
2107         (WebCore::InlineFlowBox::logicalLayoutOverflowRect):
2108         (WebCore::InlineFlowBox::visualOverflowRect):
2109         (WebCore::InlineFlowBox::logicalLeftVisualOverflow):
2110         (WebCore::InlineFlowBox::logicalRightVisualOverflow):
2111         (WebCore::InlineFlowBox::logicalTopVisualOverflow):
2112         (WebCore::InlineFlowBox::logicalBottomVisualOverflow):
2113         (WebCore::InlineFlowBox::logicalVisualOverflowRect):
2114         (WebCore::InlineFlowBox::frameRectIncludingLineHeight):
2115         (WebCore::InlineFlowBox::logicalFrameRectIncludingLineHeight):
2116         * rendering/RenderBlock.h:
2117         (WebCore::RenderBlock::RenderBlockRareData::positiveMarginBeforeDefault):
2118         (WebCore::RenderBlock::RenderBlockRareData::negativeMarginBeforeDefault):
2119         (WebCore::RenderBlock::RenderBlockRareData::positiveMarginAfterDefault):
2120         (WebCore::RenderBlock::RenderBlockRareData::negativeMarginAfterDefault):
2121
2122 2011-07-06  Emil A Eklund  <eae@chromium.org>
2123
2124         Reviewed by Eric Seidel.
2125         
2126         Switch nodeAtPoint to to new layout types
2127         https://bugs.webkit.org/show_bug.cgi?id=63663
2128
2129         No new tests, no functionality changes.
2130
2131         * rendering/EllipsisBox.cpp:
2132         (WebCore::EllipsisBox::nodeAtPoint):
2133         * rendering/EllipsisBox.h:
2134         * rendering/InlineBox.cpp:
2135         (WebCore::InlineBox::nodeAtPoint):
2136         * rendering/InlineBox.h:
2137         * rendering/InlineFlowBox.cpp:
2138         (WebCore::InlineFlowBox::nodeAtPoint):
2139         * rendering/InlineFlowBox.h:
2140         * rendering/InlineTextBox.cpp:
2141         (WebCore::InlineTextBox::nodeAtPoint):
2142         * rendering/InlineTextBox.h:
2143         * rendering/LayoutTypes.h:
2144         (WebCore::toLayoutSize):
2145         (WebCore::toLayoutPoint):
2146         (WebCore::roundedLayoutPoint):
2147         (WebCore::roundedLayoutUnit):
2148         * rendering/RenderBlock.cpp:
2149         (WebCore::RenderBlock::nodeAtPoint):
2150         * rendering/RenderBlock.h:
2151         * rendering/RenderBox.cpp:
2152         (WebCore::RenderBox::nodeAtPoint):
2153         * rendering/RenderBox.h:
2154         * rendering/RenderFrameSet.cpp:
2155         (WebCore::RenderFrameSet::nodeAtPoint):
2156         * rendering/RenderFrameSet.h:
2157         * rendering/RenderImage.cpp:
2158         (WebCore::RenderImage::nodeAtPoint):
2159         * rendering/RenderImage.h:
2160         * rendering/RenderInline.cpp:
2161         (WebCore::RenderInline::nodeAtPoint):
2162         * rendering/RenderInline.h:
2163         * rendering/RenderListBox.cpp:
2164         (WebCore::RenderListBox::nodeAtPoint):
2165         * rendering/RenderListBox.h:
2166         * rendering/RenderObject.cpp:
2167         (WebCore::RenderObject::nodeAtPoint):
2168         * rendering/RenderObject.h:
2169         * rendering/RenderTable.cpp:
2170         (WebCore::RenderTable::nodeAtPoint):
2171         * rendering/RenderTable.h:
2172         * rendering/RenderTableRow.cpp:
2173         (WebCore::RenderTableRow::nodeAtPoint):
2174         * rendering/RenderTableRow.h:
2175         * rendering/RenderTableSection.cpp:
2176         (WebCore::RenderTableSection::nodeAtPoint):
2177         * rendering/RenderTableSection.h:
2178         * rendering/RenderText.h:
2179         (WebCore::RenderText::nodeAtPoint):
2180         * rendering/RenderTextControlMultiLine.cpp:
2181         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
2182         * rendering/RenderTextControlMultiLine.h:
2183         * rendering/RenderTextControlSingleLine.cpp:
2184         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
2185         * rendering/RenderTextControlSingleLine.h:
2186         * rendering/RenderWidget.cpp:
2187         (WebCore::RenderWidget::nodeAtPoint):
2188         * rendering/RenderWidget.h:
2189         * rendering/RootInlineBox.cpp:
2190         (WebCore::RootInlineBox::nodeAtPoint):
2191         * rendering/RootInlineBox.h:
2192         * rendering/svg/RenderSVGForeignObject.cpp:
2193         (WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
2194         (WebCore::RenderSVGForeignObject::nodeAtPoint):
2195         * rendering/svg/RenderSVGForeignObject.h:
2196         * rendering/svg/RenderSVGModelObject.cpp:
2197         (WebCore::RenderSVGModelObject::nodeAtPoint):
2198         * rendering/svg/RenderSVGModelObject.h:
2199         * rendering/svg/RenderSVGRoot.cpp:
2200         (WebCore::RenderSVGRoot::nodeAtPoint):
2201         * rendering/svg/RenderSVGRoot.h:
2202         * rendering/svg/RenderSVGText.cpp:
2203         (WebCore::RenderSVGText::nodeAtPoint):
2204         * rendering/svg/RenderSVGText.h:
2205         * rendering/svg/SVGInlineTextBox.cpp:
2206         (WebCore::SVGInlineTextBox::nodeAtPoint):
2207         * rendering/svg/SVGInlineTextBox.h:
2208
2209 2011-07-06  Adrienne Walker  <enne@google.com>
2210
2211         [chromium] Add compositor texture manager soft limits and lost focus reclaiming
2212         https://bugs.webkit.org/show_bug.cgi?id=64009
2213
2214         Reviewed by James Robinson.
2215
2216         Add a soft limit for texture memory. Unprotected textures will get
2217         reclaimed when above this limit. Increase the hard limit for maximum
2218         texture memory as well, now that there is a better heuristic and
2219         textures are reclaimed from tabs without focus.
2220
2221         Landing this for vangelis@chromium.org.
2222
2223         * platform/graphics/chromium/LayerRendererChromium.cpp:
2224         (WebCore::LayerRendererChromium::releaseTextures):
2225         (WebCore::LayerRendererChromium::initializeSharedObjects):
2226         * platform/graphics/chromium/LayerRendererChromium.h:
2227         * platform/graphics/chromium/LayerTilerChromium.cpp:
2228         (WebCore::LayerTilerChromium::protectTileTextures):
2229         * platform/graphics/chromium/LayerTilerChromium.h:
2230         * platform/graphics/chromium/TextureManager.cpp:
2231         (WebCore::TextureManager::TextureManager):
2232         (WebCore::TextureManager::requestTexture):
2233         * platform/graphics/chromium/TextureManager.h:
2234         (WebCore::TextureManager::create):
2235
2236 2011-07-06  Pavel Feldman  <pfeldman@chromium.org>
2237
2238         Not reviewed: Web Inspector: fixing typo introduced in the r90397.
2239
2240         * inspector/front-end/StylesSidebarPane.js:
2241
2242 2011-07-06  Mike Reed  <reed@google.com>
2243
2244         [skia] don't include deprecated header
2245         https://bugs.webkit.org/show_bug.cgi?id=64025
2246
2247         Reviewed by James Robinson.
2248
2249         No new tests. Just removing #include of an unused header that will be gone soon
2250
2251         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
2252         * platform/graphics/skia/PlatformContextSkia.cpp:
2253
2254 2011-06-30  Cris Neckar  <cdn@chromium.org>
2255
2256         Reviewed by Darin Fisher.
2257
2258         Add versioning to Chromium clipboard and prevent polling from inside events.
2259         https://bugs.webkit.org/show_bug.cgi?id=63738
2260
2261         * platform/chromium/ChromiumDataObject.cpp:
2262         (WebCore::ChromiumDataObject::getSequenceNumber):
2263         * platform/chromium/ChromiumDataObject.h:
2264         * platform/chromium/ClipboardChromium.cpp:
2265         (WebCore::ClipboardChromium::ClipboardChromium):
2266         (WebCore::ClipboardChromium::getData):
2267         (WebCore::ClipboardChromium::platformClipboardChanged):
2268         * platform/chromium/ClipboardChromium.h:
2269         * platform/chromium/DataTransferItemChromium.cpp:
2270         (WebCore::DataTransferItemChromium::getAsString):
2271         (WebCore::DataTransferItemChromium::getAsFile):
2272         * platform/chromium/PlatformBridge.h:
2273         * svg/SVGAnimationElement.cpp:
2274         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
2275
2276 2011-07-01  James Robinson  <jamesr@chromium.org>
2277
2278         Reviewed by Stephen White.
2279
2280         [chromium] Externalize layer visibility calculation
2281         https://bugs.webkit.org/show_bug.cgi?id=63847
2282
2283         This moves the layer visibility calculation from the layer itself out to LayerRendererChromium, like the other
2284         calculated properties.  Previously, we were doing this calculating at paint time and again at draw time and
2285         relying on the fact that this produced the same value.  This avoids the redundant calculation.
2286
2287         Covered by existing compositing/ layout tests.
2288
2289         * platform/graphics/chromium/ContentLayerChromium.cpp:
2290         (WebCore::ContentLayerChromium::ContentLayerChromium):
2291         (WebCore::ContentLayerChromium::paintContentsIfDirty):
2292         (WebCore::ContentLayerChromium::tilingTransform):
2293         (WebCore::ContentLayerChromium::contentBounds):
2294         (WebCore::ContentLayerChromium::updateLayerSize):
2295         (WebCore::ContentLayerChromium::draw):
2296         (WebCore::ContentLayerChromium::setTilingOption):
2297         (WebCore::ContentLayerChromium::setIsMask):
2298         * platform/graphics/chromium/ContentLayerChromium.h:
2299         * platform/graphics/chromium/ImageLayerChromium.cpp:
2300         (WebCore::ImageLayerChromium::paintContentsIfDirty):
2301         (WebCore::ImageLayerChromium::contentBounds):
2302         * platform/graphics/chromium/ImageLayerChromium.h:
2303         * platform/graphics/chromium/LayerChromium.cpp:
2304         (WebCore::LayerChromium::pushPropertiesTo):
2305         * platform/graphics/chromium/LayerChromium.h:
2306         (WebCore::LayerChromium::contentBounds):
2307         (WebCore::LayerChromium::visibleLayerRect):
2308         (WebCore::LayerChromium::setVisibleLayerRect):
2309         (WebCore::LayerChromium::draw):
2310         * platform/graphics/chromium/LayerRendererChromium.cpp:
2311         (WebCore::calculateVisibleLayerRect):
2312         (WebCore::LayerRendererChromium::paintLayerContents):
2313         (WebCore::LayerRendererChromium::drawLayer):
2314         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
2315         (WebCore::RenderSurfaceChromium::draw):
2316         * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
2317         (WebCore::CCCanvasLayerImpl::draw):
2318         * platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
2319         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2320         (WebCore::CCLayerImpl::draw):
2321         * platform/graphics/chromium/cc/CCLayerImpl.h:
2322         (WebCore::CCLayerImpl::contentBounds):
2323         (WebCore::CCLayerImpl::setContentBounds):
2324         (WebCore::CCLayerImpl::visibleLayerRect):
2325         (WebCore::CCLayerImpl::setVisibleLayerRect):
2326         (WebCore::CCLayerImpl::doubleSided):
2327         (WebCore::CCLayerImpl::setDoubleSided):
2328         * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
2329         (WebCore::CCPluginLayerImpl::draw):
2330         * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
2331         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
2332         (WebCore::CCVideoLayerImpl::draw):
2333         * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
2334
2335 2011-07-06  John Sullivan  <sullivan@apple.com>
2336
2337         IconDatabase::synchronousIconForPageURL() has inconsistent API when no custom icon is available
2338         <https://bugs.webkit.org/show_bug.cgi?id=64015>
2339         <rdar://problem/9706277>
2340
2341         For some URLs it would return a particular size of default icon; for other
2342         URLs it would return 0.
2343
2344         Reviewed by Ada Chan.
2345
2346         * loader/icon/IconDatabase.cpp:
2347         (WebCore::IconDatabase::synchronousIconForPageURL):
2348         Return 0 in all cases where there is no custom icon.
2349
2350 2011-07-06  Emil A Eklund  <eae@chromium.org>
2351
2352         Reviewed by Eric Seidel.
2353
2354         Switch RenderLayer::hitTest* to to new layout types
2355         https://bugs.webkit.org/show_bug.cgi?id=63640
2356
2357         Switch hit testing and supporting methods for RenderLayer over to the new
2358         layout unit abstraction.
2359         
2360         No new tests, no functionality changes.
2361
2362         * rendering/LayoutTypes.h:
2363         (WebCore::roundedLayoutPoint):
2364         Add roundedLayoutPoint abstraction, calls roundedIntPoint now but will be a
2365         no-op (and eventually go away) once we switch to float or fixed point.
2366         
2367         * rendering/RenderLayer.cpp:
2368         (WebCore::RenderLayer::createLocalTransformState):
2369         (WebCore::RenderLayer::hitTestLayer):
2370         (WebCore::RenderLayer::hitTestList):
2371         (WebCore::RenderLayer::hitTestPaginatedChildLayer):
2372         (WebCore::RenderLayer::hitTestChildLayerColumns):
2373         (WebCore::RenderLayer::calculateRects):
2374         * rendering/RenderLayer.h:
2375
2376 2011-07-06  Simon Fraser  <simon.fraser@apple.com>
2377
2378         Have RenderLayerCompositor take care of clearing backing store when entering the page cache
2379         https://bugs.webkit.org/show_bug.cgi?id=64018
2380
2381         Reviewed by Joseph Pecoraro.
2382
2383         Move responsibility for tearing down all RenderLayer backing stores from
2384         RenderLayer itself to RenderLayerCompositor, since RenderLayerCompositor 
2385         manages backing store creation and destruction in general.
2386
2387         * page/FrameView.cpp:
2388         (WebCore::FrameView::clearBackingStores):
2389         * rendering/RenderLayer.cpp:
2390         * rendering/RenderLayer.h:
2391         * rendering/RenderLayerCompositor.cpp:
2392         (WebCore::RenderLayerCompositor::clearBackingForLayerIncludingDescendants):
2393         (WebCore::RenderLayerCompositor::clearBackingForAllLayers):
2394         * rendering/RenderLayerCompositor.h:
2395
2396 2011-07-06  Ryuan Choi  <ryuan.choi@samsung.com>
2397
2398         [Performance] Only call sendContentResizeNotification when the scrollbar actually did change
2399         https://bugs.webkit.org/show_bug.cgi?id=47320
2400
2401         Reviewed by Eric Seidel.
2402
2403         Move avoidScrollbarCreation checking code from setHasHorizontalScrollbar
2404         and setHasVerticalScrollbar to their caller in order to keep sendContentResizedNotification
2405         false in case scrollbar is not really changed.
2406         As a result, it will remove unnecessary relayout in the above case.
2407
2408         No new tests as this is very hard to write tests for. The bug only
2409         occured when scrolling the sites which contain frame in browser with
2410         frameFlattening. This should not change functionality in other case.
2411
2412         * platform/ScrollView.cpp:
2413         (WebCore::ScrollView::setHasHorizontalScrollbar):
2414         (WebCore::ScrollView::setHasVerticalScrollbar):
2415         (WebCore::ScrollView::updateScrollbars):
2416
2417 2011-07-06  Nate Chapin  <japhet@chromium.org>
2418
2419         Don't let all subresources keep isLoadingInAPISense() from
2420         returning false, only requests that affect
2421         CachedResourceRequest::requestCount().
2422         https://bugs.webkit.org/show_bug.cgi?id=62066
2423
2424         Reviewed by Adam Barth.
2425
2426         * dom/Document.cpp:
2427         (WebCore::Document::Document):
2428         (WebCore::Document::dispatchWindowLoadEvent):
2429         * dom/Document.h:
2430         (WebCore::Document::loadEventFinished):
2431         * loader/DocumentLoader.cpp:
2432         (WebCore::DocumentLoader::isLoadingInAPISense):
2433
2434 2011-07-06  Pavel Feldman  <pfeldman@google.com>
2435
2436         Web Inspector: implement drag'n'drop in the elements panel for reordering nodes.
2437         https://bugs.webkit.org/show_bug.cgi?id=63990
2438
2439         Reviewed by Yury Semikhatsky.
2440
2441         * inspector/Inspector.json:
2442         * inspector/InspectorDOMAgent.cpp:
2443         (WebCore::InspectorDOMAgent::moveTo):
2444         * inspector/InspectorDOMAgent.h:
2445         * inspector/front-end/DOMAgent.js:
2446         (WebInspector.DOMNode.prototype._removeChild):
2447         (WebInspector.DOMNode.prototype.ownerDocumentElement):
2448         (WebInspector.DOMNode.prototype.moveTo):
2449         (WebInspector.DOMAgent.prototype._childNodeRemoved):
2450         * inspector/front-end/ElementsTreeOutline.js:
2451         (WebInspector.ElementsTreeOutline):
2452         (WebInspector.ElementsTreeOutline.prototype._ondragstart):
2453         (WebInspector.ElementsTreeOutline.prototype._ondragover):
2454         (WebInspector.ElementsTreeOutline.prototype._ondragleave):
2455         (WebInspector.ElementsTreeOutline.prototype._isValidDragSourceOrTarget):
2456         (WebInspector.ElementsTreeOutline.prototype._ondragend.callback):
2457         (WebInspector.ElementsTreeOutline.prototype._ondragend):
2458         (WebInspector.ElementsTreeOutline.prototype._clearDragOverTreeElementMarker):
2459         (WebInspector.ElementsTreeOutline.prototype.populateContextMenu.focusElement):
2460         (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
2461         (WebInspector.ElementsTreeElement.prototype.onattach):
2462         * inspector/front-end/inspector.css:
2463         (.outline-disclosure li.elements-drag-over .selection):
2464         * inspector/front-end/treeoutline.js:
2465         (TreeOutline.prototype.treeElementFromEvent):
2466
2467 2011-07-06  Andras Becsi  <abecsi@webkit.org>
2468
2469         Fix "warning: a `;' might be needed at the end of action code"
2470
2471         Unreviewed gardening.
2472
2473         No new tests needed.
2474
2475         * css/CSSGrammar.y: Future versions of Bison will not add the ';' so add it.
2476
2477 2011-07-06  Andras Becsi  <abecsi@webkit.org>
2478
2479         [Qt] Revome unused but set shadowBlur variable after r90406.
2480
2481         Unreviewed build fix.
2482
2483         No new tests needed.
2484
2485         * platform/graphics/qt/GraphicsContextQt.cpp:
2486         (WebCore::GraphicsContext::fillPath): Use the GraphicsContext brush.
2487
2488 2011-07-06  Andras Becsi  <abecsi@webkit.org>
2489
2490         [Qt] Remove duplicate entries of ShadowBlur sources from project file.
2491
2492         Rubber-stamped by Csaba Osztrogon√°c.
2493
2494         No new tests needed.
2495
2496         * WebCore.pro: These files were already added in r84410.
2497
2498 2011-07-05  Kentaro Hara  <haraken@google.com>
2499
2500         Trigger a 'change' event whenever selected files are changed
2501         https://bugs.webkit.org/show_bug.cgi?id=63929
2502
2503         Reviewed by Kent Tamura.
2504
2505         Record previously selected files and then compare them with newly selected files.
2506         If the previously selected files and their order are not equal to those of
2507         the newly selected files, we trigger the 'change' event.
2508
2509         Test: fast/forms/file-input-change-event.html
2510
2511         * html/FileInputType.cpp:
2512         (WebCore::FileInputType::filesChosen): Calls dispathChangeEvent() only when the previously selected files are different from the newly selected files
2513
2514 2011-06-29  Kent Tamura  <tkent@chromium.org>
2515
2516         Reviewed by Alexey Proskuryakov.
2517
2518         [Mac] REGRESSION (r88415): Range slider doesn't have focus appearance.
2519         https://bugs.webkit.org/show_bug.cgi?id=63573
2520
2521         * rendering/RenderThemeMac.mm:
2522         (WebCore::RenderThemeMac::paintSliderThumb):
2523         Need to pass the RenderObject of the owner <input> because
2524         updateFocusedState() checks the outline style of the specified
2525         renderer, and we'd like to make a slider thumb reflect the owner
2526         focus style.
2527
2528 2011-07-05  Hans Wennborg  <hans@chromium.org>
2529
2530         [V8][Chromium] Remove use of OwnHandle from V8LocalContext
2531         https://bugs.webkit.org/show_bug.cgi?id=63925
2532
2533         Reviewed by Adam Barth.
2534
2535         Replace the OwnHandle<> member in V8LocalContext with
2536         v8::Persistent<v8::Context>.
2537         The code that used OwnHandle<> would not correctly Dispose
2538         of the Context, which would cause the memory to fill up when creating
2539         and destructing many V8LocalContext objects, such as in the case
2540         of IndexedDB.
2541
2542         * bindings/v8/V8Utilities.cpp:
2543         (WebCore::V8LocalContext::V8LocalContext):
2544         (WebCore::V8LocalContext::~V8LocalContext):
2545         * bindings/v8/V8Utilities.h:
2546
2547 2011-07-05  Igor Oliveira  <igor.oliveira@openbossa.org>
2548
2549         [Qt] Add ShadowBlur support
2550         https://bugs.webkit.org/show_bug.cgi?id=62997
2551
2552         Use ShadowBlur instead of ContextShadow to handle canvas and css shadows. ShadowBlur is
2553         a newer and platform independent shadow implementation.
2554         Qt QPainter does not have support for shadows so is necessary to create a layer support
2555         to draw complex shapes and fonts. The beginShadowLayer creates a temporary shadow buffer
2556         where the canvas can draw onto and endShadowLayer applies the blur filter, colors the
2557         shadow buffer and draw the final shadow to the graphics context.
2558
2559         Reviewed by Andreas Kling.
2560
2561         * WebCore.pro:
2562         * platform/graphics/GraphicsContext.cpp:
2563         * platform/graphics/GraphicsContext.h:
2564         * platform/graphics/ShadowBlur.cpp:
2565         (WebCore::ShadowBlur::ShadowBlur):
2566         (WebCore::ShadowBlur::setShadowValues):
2567         (WebCore::ShadowBlur::updateShadowBlurValues):
2568         (WebCore::ShadowBlur::clear):
2569         (WebCore::ShadowBlur::blurAndColorShadowBuffer):
2570         (WebCore::ShadowBlur::beginShadowLayer):
2571         (WebCore::ShadowBlur::endShadowLayer):
2572         * platform/graphics/ShadowBlur.h:
2573         (WebCore::ShadowBlur::type):
2574         * platform/graphics/qt/ContextShadowQt.cpp: Removed.
2575         * platform/graphics/qt/FontQt.cpp:
2576         (WebCore::drawTextCommon):
2577         (WebCore::Font::drawGlyphs):
2578         * platform/graphics/qt/GraphicsContextQt.cpp:
2579         (WebCore::GraphicsContextPlatformPrivate::mustUseShadowBlur):
2580         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2581         (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
2582         (WebCore::GraphicsContext::savePlatformState):
2583         (WebCore::GraphicsContext::restorePlatformState):
2584         (WebCore::GraphicsContext::fillPath):
2585         (WebCore::GraphicsContext::strokePath):
2586         (WebCore::GraphicsContext::fillRect):
2587         (WebCore::GraphicsContext::fillRoundedRect):
2588         (WebCore::GraphicsContext::shadowBlur):
2589         (WebCore::GraphicsContext::clipBounds):
2590         (WebCore::GraphicsContext::setPlatformShadow):
2591         (WebCore::GraphicsContext::clearPlatformShadow):
2592         * platform/graphics/qt/ImageQt.cpp:
2593         (WebCore::BitmapImage::draw):
2594         * platform/graphics/qt/StillImageQt.cpp:
2595         (WebCore::StillImage::draw):
2596
2597 2011-07-05  Sam Weinig  <sam@webkit.org>
2598
2599         Null deref accessing CustomEvent.detail
2600         <rdar://problem/9724577>
2601         https://bugs.webkit.org/show_bug.cgi?id=63885
2602
2603         Reviewed by Anders Carlsson.
2604
2605         Test: fast/events/custom-event-uninitialized.html
2606
2607         * bindings/scripts/CodeGeneratorJS.pm:
2608         Guard against uninitialized script value.
2609
2610 2011-07-05  Pratik Solanki  <psolanki@apple.com>
2611
2612         Reviewed by Dan Bernstein.
2613
2614         Coalesce data array into one NSData before calling didReceiveData
2615         https://bugs.webkit.org/show_bug.cgi?id=63916
2616         <rdar://problem/9715181>
2617
2618         Instead of calling didReceiveData multiple times with smaller chunks of data, we merge the
2619         data buffers into one and call it once.
2620
2621         No new tests because the flag isn't enabled yet.
2622
2623         * platform/network/mac/ResourceHandleMac.mm:
2624         (-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]):
2625
2626 2011-07-05  Tamas Czene  <Czene.Tamas@stud.u-szeged.hu>
2627
2628         Reviewed by Simon Fraser.
2629
2630         Remove virtual functions from StyleImage.
2631         https://bugs.webkit.org/show_bug.cgi?id=63909
2632
2633         We can remove the virtual "isChachedImage, isPendingImage, isGeneratedImage" functions to speed up the StyleImage.
2634         Some profile data shows this part is significant, especially in small CSS-based sites.
2635         Removing the virtual functions - removing the calls - makes a small performance progression on this part.
2636
2637         * rendering/style/StyleCachedImage.h:
2638         (WebCore::StyleCachedImage::StyleCachedImage):
2639         * rendering/style/StyleGeneratedImage.h:
2640         (WebCore::StyleGeneratedImage::StyleGeneratedImage):
2641         * rendering/style/StyleImage.h:
2642         (WebCore::StyleImage::isCachedImage):
2643         (WebCore::StyleImage::isPendingImage):
2644         (WebCore::StyleImage::isGeneratedImage):
2645         (WebCore::StyleImage::StyleImage):
2646         * rendering/style/StylePendingImage.h:
2647         (WebCore::StylePendingImage::StylePendingImage):
2648
2649 2011-07-05  Pavel Feldman  <pfeldman@google.com>
2650
2651         Web Inspector: add "element state" setting to the styles section title.
2652         https://bugs.webkit.org/show_bug.cgi?id=63932
2653
2654         Reviewed by Yury Semikhatsky.
2655
2656         * English.lproj/localizedStrings.js:
2657         * WebCore.gypi:
2658         * inspector/front-end/Images/paneElementStateButtons.png: Added.
2659         * inspector/front-end/StylesSidebarPane.js:
2660         (WebInspector.StylesSidebarPane.muteEventListener):
2661         (WebInspector.StylesSidebarPane):
2662         (WebInspector.StylesSidebarPane.prototype.update):
2663         (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
2664         (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
2665         (WebInspector.StylesSidebarPane.prototype.addBlankSection):
2666         (WebInspector.StylesSidebarPane.prototype.registerShortcuts):
2667         (WebInspector.StylesSidebarPane.prototype._toggleElementStatePane):
2668         (WebInspector.StylesSidebarPane.prototype._createElementStatePane.clickListener):
2669         (WebInspector.StylesSidebarPane.prototype._createElementStatePane.createCheckbox):
2670         (WebInspector.StylesSidebarPane.prototype._createElementStatePane):
2671         * inspector/front-end/WebKit.qrc:
2672         * inspector/front-end/inspector.css:
2673         (.pane > .title > .pane-title-button:active, .pane > .title > .pane-title-button.toggled):
2674         (.pane > .title > .pane-title-button.element-state):
2675         (.styles-element-state-pane):
2676         (.styles-element-state-pane.expanded):
2677         (.styles-element-state-pane > table):
2678         (.styles-element-state-pane input):
2679
2680 2011-06-22  Pavel Podivilov  <podivilov@chromium.org>
2681
2682         Reviewed by Yury Semikhatsky.
2683
2684         Web Inspector: extract duplicated code that deals with source mappings.
2685         https://bugs.webkit.org/show_bug.cgi?id=63139
2686
2687         * inspector/front-end/ConsoleView.js:
2688         (WebInspector.ConsoleMessage.prototype.isEqual):
2689         (WebInspector.ConsoleMessage.prototype.get stackTrace):
2690         * inspector/front-end/DebuggerPresentationModel.js:
2691         (WebInspector.DebuggerPresentationModel.prototype._uiLocationToScriptLocation):
2692         (WebInspector.DebuggerPresentationModel.prototype._updateAnchor):
2693         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage.didGetUILocation):
2694         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage):
2695         (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
2696         (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger.didGetScriptLocation):
2697         (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger):
2698         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.updateSourceFileBreakpointsAndDispatchEvent):
2699         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.didGetUILocation):
2700         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
2701         (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
2702         (WebInspector.DebuggerPresentationModel.prototype._sourceFileForScript):
2703         (WebInspector.PresenationCallFrame):
2704         (WebInspector.PresenationCallFrame.prototype.sourceLine):
2705
2706 2011-07-05  Ilya Tikhonovsky  <loislo@chromium.org>
2707
2708         Web Inspector: WebInspector frontend reports a protocol error in remote debugging mode.
2709         https://bugs.webkit.org/show_bug.cgi?id=63935
2710
2711         it was error generated for obsolete message "loaded" which was sent from frontend to backend.
2712
2713         Reviewed by Yury Semikhatsky.
2714
2715         * inspector/CodeGeneratorInspector.pm:
2716         * inspector/front-end/inspector.js:
2717         (WebInspector.loaded.WebInspector.socket.onopen):
2718         (WebInspector.loaded):
2719
2720 2011-07-05  Andrey Kosyakov  <caseq@chromium.org>
2721
2722         Web Inspector: [refactoring] remove network-sidebar style, add network-log-grid
2723         https://bugs.webkit.org/show_bug.cgi?id=63913
2724
2725         Reviewed by Yury Semikhatsky.
2726
2727         * inspector/front-end/NetworkPanel.js:
2728         (WebInspector.NetworkPanel):
2729         (WebInspector.NetworkPanel.prototype._createTable):
2730         * inspector/front-end/networkPanel.css:
2731         (.network-log-grid):
2732         (.network-log-grid table.data):
2733         (.network-log-grid.small table.data):
2734         (.network-log-grid td):
2735         (.network-log-grid.small td):
2736         (.network-log-grid th):
2737         (.network-log-grid.small th):
2738         (.network-log-grid th, .network.panel .data-grid th.sort-descending, .network.panel .data-grid th.sort-ascending):
2739         (.network-log-grid .data-container):
2740         (.network-log-grid.small .data-container):
2741         (.network-log-grid select):
2742         (.network-log-grid.small tr.offscreen):
2743         (.network-log-grid tr.offscreen):
2744         (.network-log-grid tr.offscreen td):
2745         (.network-log-grid tr.filler):
2746         (.network-log-grid tr:not(.filler) td.name-column):
2747         (.network.panel:not(.viewing-resource) .network-log-grid td.name-column:hover):
2748         (.network-log-grid td.time-column):
2749         (.network-log-grid.small .network-graph-side):
2750         (.network-log-grid th.sortable:active):
2751         (.network-log-grid tr.selected .network-cell-subtitle):
2752         (.network-log-grid .icon):
2753         (.network-log-grid.small .icon):
2754         (.network-log-grid .network-category-scripts .icon):
2755         (.network-log-grid.small .network-category-scripts .icon):
2756         (.network-log-grid .network-category-documents .icon):
2757         (.network-log-grid.small .network-category-documents .icon):
2758         (.network-log-grid .network-category-stylesheets .icon):
2759         (.network-log-grid.small .network-category-stylesheets .icon):
2760         (.network-log-grid .network-category-images .icon):
2761         (.network-log-grid.small .network-category-images .icon):
2762         (.network-log-grid .image-network-icon-preview):
2763         (.network-log-grid.small .image-network-icon-preview):
2764         (.network-timeline-grid.small .network-event-divider):
2765         (.network-log-grid .resources-dividers):
2766         (.network-log-grid .resources-dividers-label-bar):
2767         (.network-timeline-grid.small .resources-dividers-label-bar):
2768         (.network-timeline-grid .resources-divider-label):
2769         (.network-timeline-grid .resources-dividers-label-bar .resources-divider):
2770         (.network-timeline-grid.small .resources-dividers-label-bar .resources-divider):
2771         (.network-timeline-grid .resources-divider.first .resources-divider-label):
2772         (.network-timeline-grid .resources-dividers-label-bar .resources-divider.first):
2773         (.network-timeline-grid tr.filler td):
2774         (.network-summary-bar td):
2775         (.network.panel.viewing-resource .network-log-grid th):
2776         (.network-log-grid.full-grid-mode .viewer-column):
2777         (.network-log-grid.brief-grid-mode .time-column):
2778         (.network-log-grid.viewing-resource-mode .timeline-column):
2779         (.network.panel .sidebar):
2780         (.network.panel.viewing-resource .network-log-grid .data-grid-resizer):
2781
2782 2011-07-05  Alexandru Chiculita  <achicu@adobe.com>
2783
2784         Reviewed by Simon Hausmann.
2785
2786         [Qt] "cat" is not available when building.
2787         https://bugs.webkit.org/show_bug.cgi?id=63924
2788
2789         Changed 'cat' to 'perl -ne \"print $1\"' because 'cat' is not available on Windows with
2790         MSVC toolchain. It passed the Qt buildbots, because they run with cygwin.
2791
2792         Project file change. No tests needed.
2793
2794         * CodeGenerators.pri:
2795 2011-07-05  Vsevolod Vlasov  <vsevik@chromium.org>
2796
2797         Unreviewed; Qt Linux Release minimal compile fix.
2798
2799         * testing/Internals.h:
2800         (WebCore::Internals::setInspectorResourcesDataSizeLimits):
2801         * testing/Internals.idl:
2802
2803 2011-07-05  Vsevolod Vlasov  <vsevik@chromium.org>
2804
2805         Web Inspector: Show content for plugin requests in network panel.
2806         https://bugs.webkit.org/show_bug.cgi?id=30080
2807
2808         Now the data from didReceiveData callback is passed to inspector.
2809         It is then saved in NetworkResourcesData structure for plugin requests.
2810         Added window.internals.setInspectorResourcesDataSizeLimits() method
2811         for testing replacement logic.
2812
2813         Reviewed by Pavel Feldman.
2814
2815         Tests: http/tests/inspector/network/network-content-replacement-embed.html
2816                http/tests/inspector/network/network-content-replacement-xhr.html
2817                http/tests/inspector/network/network-embed.html
2818
2819         * WebCore.exp.in:
2820         * inspector/InspectorController.cpp:
2821         (WebCore::InspectorController::setResourcesDataSizeLimitsFromInternals):
2822         * inspector/InspectorController.h:
2823         * inspector/InspectorInstrumentation.cpp:
2824         (WebCore::InspectorInstrumentation::didReceiveDataImpl):
2825         * inspector/InspectorInstrumentation.h:
2826         (WebCore::InspectorInstrumentation::didReceiveData):
2827         * inspector/InspectorResourceAgent.cpp:
2828         (WebCore::InspectorResourceAgent::didReceiveResponse):
2829         (WebCore::InspectorResourceAgent::didReceiveData):
2830         (WebCore::InspectorResourceAgent::didFinishLoading):
2831         (WebCore::InspectorResourceAgent::setInitialXHRContent):
2832         (WebCore::InspectorResourceAgent::setResourcesDataSizeLimitsFromInternals):
2833         (WebCore::InspectorResourceAgent::getResourceContent):
2834         * inspector/InspectorResourceAgent.h:
2835         * inspector/NetworkResourcesData.cpp:
2836         (WebCore::NetworkResourcesData::ResourceData::ResourceData):
2837         (WebCore::NetworkResourcesData::ResourceData::setContent):
2838         (WebCore::NetworkResourcesData::ResourceData::purgeContent):
2839         (WebCore::NetworkResourcesData::ResourceData::createDecoder):
2840         (WebCore::NetworkResourcesData::ResourceData::dataLength):
2841         (WebCore::NetworkResourcesData::ResourceData::appendData):
2842         (WebCore::NetworkResourcesData::ResourceData::decodeDataToContent):
2843         (WebCore::NetworkResourcesData::NetworkResourcesData):
2844         (WebCore::NetworkResourcesData::responseReceived):
2845         (WebCore::NetworkResourcesData::setResourceContent):
2846         (WebCore::NetworkResourcesData::maybeAddResourceData):
2847         (WebCore::NetworkResourcesData::maybeDecodeDataToContent):
2848         (WebCore::NetworkResourcesData::data):
2849         (WebCore::NetworkResourcesData::clear):
2850         (WebCore::NetworkResourcesData::setResourcesDataSizeLimits):
2851         (WebCore::NetworkResourcesData::ensureNoDataForIdentifier):
2852         (WebCore::NetworkResourcesData::ensureFreeSpace):
2853         * inspector/NetworkResourcesData.h:
2854         (WebCore::NetworkResourcesData::ResourceData::hasContent):
2855         (WebCore::NetworkResourcesData::ResourceData::content):
2856         (WebCore::NetworkResourcesData::ResourceData::decoder):
2857         (WebCore::NetworkResourcesData::ResourceData::buffer):
2858         (WebCore::NetworkResourcesData::ResourceData::setBuffer):
2859         (WebCore::NetworkResourcesData::ResourceData::hasData):
2860         * inspector/front-end/Resource.js:
2861         (WebInspector.Resource.prototype.get contentEncoded):
2862         * inspector/front-end/ResourcePreviewView.js:
2863         (WebInspector.ResourcePreviewView.prototype.contentLoaded):
2864         (WebInspector.ResourcePreviewView.prototype._createEmptyView):
2865         (WebInspector.ResourcePreviewView.prototype._createPreviewView):
2866         * inspector/front-end/ResourceView.js:
2867         (WebInspector.ResourceView.hasTextContent):
2868         * loader/DocumentThreadableLoader.cpp:
2869         (WebCore::DocumentThreadableLoader::didReceiveData):
2870         * loader/FrameLoader.cpp:
2871         (WebCore::FrameLoader::willLoadMediaElementURL):
2872         (WebCore::FrameLoader::commitProvisionalLoad):
2873         (WebCore::FrameLoader::loadResourceSynchronously):
2874         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
2875         * loader/ResourceLoadNotifier.cpp:
2876         (WebCore::ResourceLoadNotifier::didReceiveData):
2877         (WebCore::ResourceLoadNotifier::dispatchDidReceiveData):
2878         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
2879         * loader/ResourceLoadNotifier.h:
2880         * loader/appcache/ApplicationCacheGroup.cpp:
2881         (WebCore::ApplicationCacheGroup::didReceiveData):
2882         * testing/Internals.cpp:
2883         (WebCore::Internals::setInspectorResourcesDataSizeLimits):
2884         * testing/Internals.h:
2885         * testing/Internals.idl:
2886
2887 2011-07-05  Kent Tamura  <tkent@chromium.org>
2888
2889         Add an assertion that percent height box is unregistered correctly.
2890         https://bugs.webkit.org/show_bug.cgi?id=62792
2891
2892         Reviewed by Hajime Morita.
2893
2894         No new tests. This won't change behavior.
2895
2896         * rendering/RenderBlock.cpp:
2897         (WebCore::RenderBlock::hasPercentHeightDescendant): Added.
2898         * rendering/RenderBlock.h: Declare hasPercentHeightDescendant().
2899         * rendering/RenderBox.cpp:
2900         (WebCore::RenderBox::destroy): Assert !hasPercentHeightDescendant().
2901
2902 2011-07-04  Pavel Feldman  <pfeldman@google.com>
2903
2904         Web Inspector: Enable settings screen with settings for console and elements panels.
2905         https://bugs.webkit.org/show_bug.cgi?id=62853
2906
2907         Reviewed by Yury Semikhatsky.
2908
2909         * English.lproj/localizedStrings.js:
2910         * inspector/front-end/HelpScreen.js:
2911         (WebInspector.HelpScreen.prototype.hide):
2912         * inspector/front-end/SettingsScreen.js:
2913         (WebInspector.SettingsScreen):
2914         (WebInspector.SettingsScreen.prototype._createRadioSetting.clickListener):
2915         (WebInspector.SettingsScreen.prototype._createRadioSetting.get for):
2916         * inspector/front-end/ShortcutsScreen.js:
2917         (WebInspector.ShortcutsScreen.prototype.hide):
2918         * inspector/front-end/StylesSidebarPane.js:
2919         (WebInspector.StylesSidebarPane.prototype._colorFormatSettingChanged):
2920         (WebInspector.StylesSidebarPane.prototype._updateColorFormatFilter.get var):
2921         (WebInspector.StylesSidebarPane.prototype._updateColorFormatFilter):
2922         (WebInspector.StylesSidebarPane.prototype._changeSetting):
2923         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.):
2924         * inspector/front-end/inspector.css:
2925         (#counters):
2926         * inspector/front-end/inspector.js:
2927         (WebInspector._createGlobalStatusBarItems):
2928         (WebInspector._toggleSettings):
2929         (WebInspector._showShortcutsScreen):
2930         (WebInspector._hideShortcutsScreen):
2931         (WebInspector._showSettingsScreen.onhide):
2932         (WebInspector._showSettingsScreen):
2933         (WebInspector._hideSettingsScreen):
2934         (WebInspector.documentKeyDown):
2935
2936 2011-07-05  Shinya Kawanaka  <shinyak@google.com>
2937
2938         Reviewed by Kent Tamura.
2939
2940         The default step is used when attribute step of input[type='number'] is "any".
2941         https://bugs.webkit.org/show_bug.cgi?id=57723
2942
2943         When step is "any", 0 was chosen as step, but this is not intuitive.
2944         So changed to use the default step.
2945
2946         * html/HTMLInputElement.cpp:
2947         (WebCore::HTMLInputElement::getAllowedValueStep):
2948           Calls getAllowedValueStepWithDecimalPlaces with RejectAny.
2949         (WebCore::HTMLInputElement::getAllowedValueStepWithDecimalPlaces):
2950           Takes a new arugument AnyStepHandling. If it is AnyIsDefaultStep, this method
2951           allows "step" attribute to take a value "any" to use the default step as step value.
2952           Otherwise, INVALID_STATE_ERR will be returned if "step" is "any".
2953         (WebCore::HTMLInputElement::applyStep): ditto.
2954         (WebCore::HTMLInputElement::stepUp):
2955           Calls applyStep with RejectAny.
2956         (WebCore::HTMLInputElement::stepDown): ditto.
2957         (WebCore::HTMLInputElement::stepUpFromRenderer):
2958           Removes a check that step is "any". It is checked in getAllowedValueStepWithDecimalPlaces.
2959         * html/HTMLInputElement.h:
2960
2961 2011-07-04  Dominic Cooney   <dominicc@chromium.org>
2962
2963         Simplify <progress> element's isDeterminate logic.
2964         https://bugs.webkit.org/show_bug.cgi?id=63889
2965
2966         Reviewed by Hajime Morita.
2967
2968         Covered by existing tests
2969         fast/dom/HTMLProgressElement/indeterminate-progress-*.html
2970
2971         * html/HTMLProgressElement.cpp:
2972         (WebCore::HTMLProgressElement::position): don't duplicate isDeterminate
2973         (WebCore::HTMLProgressElement::isDeterminate): remove redundant tests
2974         (WebCore::HTMLProgressElement::didElementStateChange): fix formatting
2975         * html/HTMLProgressElement.h:
2976
2977 2011-07-04  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2978
2979         Reviewed by Kent Tamura.
2980
2981         [EFL] Add hasOwnDisabledStateHandlingFor() to RenderThemeEfl
2982         https://bugs.webkit.org/show_bug.cgi?id=63884
2983
2984         As MediaControlRootElement decides whether it will display timeline
2985         according to the return value of RenderTheme's hasOwnDisabledStateHandlingFor(),
2986         RenderThemeEfl has to implement this function.
2987
2988         Existing tests cover the visibility of the controls.
2989
2990         * platform/efl/RenderThemeEfl.h:
2991         (WebCore::RenderThemeEfl::hasOwnDisabledStateHandlingFor):
2992
2993 2011-07-04  Kent Tamura  <tkent@chromium.org>
2994
2995         REGRESSION (r87067): Text overflows from short height text field.
2996         https://bugs.webkit.org/show_bug.cgi?id=61768
2997
2998         Reviewed by Dimitri Glazkov.
2999
3000         Since r87067, the RenderStyle for the inner text element is reset
3001         by the value update, but the renderer for the inner text element
3002         keeps to have metrics calculated by the previous style. So
3003         RenderTextControlSingleLine::layout() didn't set a desired height
3004         to the renderer for the inner text element.
3005
3006         This patch changes the style creation code so that it has the
3007         desired height initially.
3008
3009         Test: fast/forms/textfield-overflow-by-value-update.html
3010
3011         * rendering/RenderTextControlSingleLine.cpp:
3012         (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
3013         Initialize m_desiredInnerTextHeight.
3014         (WebCore::RenderTextControlSingleLine::layout):
3015         Update m_desiredInnerTextHeight.
3016         (WebCore::RenderTextControlSingleLine::styleDidChange):
3017         Reset m_desiredInnerTextHeight.
3018         (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
3019         Sets the height if m_desiredInnerTextHeight has a concrete value.
3020         * rendering/RenderTextControlSingleLine.h:
3021         Declare m_desiredInnerTextHeight.
3022
3023 2011-07-04  MORITA Hajime  <morrita@google.com>
3024
3025         Accessing ShadowRoot.nodeList causes an assertion failure.
3026         http://webkit.org/b/63798
3027         
3028         The TreeScope destructor did clear the reference to TreeScope, 
3029         then the Node destructor accessing treeScope(), which results 
3030         an inconsistent state during the NodeList cache cleanup.
3031
3032         This change clears NodeList cache during the TreeScope destructor.
3033         The Node destructor no longer does problematic NodeList cache
3034         manipulation.
3035
3036         Test: fast/dom/shadow/shadow-root-node-list.html
3037
3038         Reviewed by Dimitri Glazkov.
3039         
3040         * dom/Node.cpp:
3041         (WebCore::Node::~Node):
3042         (WebCore::Node::clearRareData):
3043         * dom/Node.h:
3044         * dom/TreeScope.cpp:
3045         (WebCore::TreeScope::~TreeScope):
3046
3047 2011-07-04  Vsevolod Vlasov  <vsevik@chromium.org>
3048
3049         ResourceLoadNotifier::dispatchWillSendRequest should not compare StringImpl directly
3050         https://bugs.webkit.org/show_bug.cgi?id=63873
3051
3052         Reviewed by Alexey Proskuryakov.
3053
3054         * loader/ResourceLoadNotifier.cpp:
3055         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
3056
3057 2011-07-04  Sheriff Bot  <webkit.review.bot@gmail.com>
3058
3059         Unreviewed, rolling out r90373.
3060         http://trac.webkit.org/changeset/90373
3061         https://bugs.webkit.org/show_bug.cgi?id=63917
3062
3063         Breaks Qt Linux Release minimal (Requested by vsevik on
3064         #webkit).
3065
3066         * WebCore.exp.in:
3067         * inspector/InspectorController.cpp:
3068         * inspector/InspectorController.h:
3069         * inspector/InspectorInstrumentation.cpp:
3070         (WebCore::InspectorInstrumentation::didReceiveContentLengthImpl):
3071         * inspector/InspectorInstrumentation.h:
3072         (WebCore::InspectorInstrumentation::didReceiveContentLength):
3073         * inspector/InspectorResourceAgent.cpp:
3074         (WebCore::InspectorResourceAgent::didReceiveResponse):
3075         (WebCore::InspectorResourceAgent::didReceiveContentLength):
3076         (WebCore::InspectorResourceAgent::didFinishLoading):
3077         (WebCore::InspectorResourceAgent::setInitialXHRContent):
3078         (WebCore::InspectorResourceAgent::getResourceContent):
3079         * inspector/InspectorResourceAgent.h:
3080         * inspector/NetworkResourcesData.cpp:
3081         (WebCore::NetworkResourcesData::ResourceData::ResourceData):
3082         (WebCore::NetworkResourcesData::ResourceData::content):
3083         (WebCore::NetworkResourcesData::ResourceData::appendContent):
3084         (WebCore::NetworkResourcesData::ResourceData::purgeContent):
3085         (WebCore::NetworkResourcesData::NetworkResourcesData):
3086         (WebCore::NetworkResourcesData::responseReceived):
3087         (WebCore::NetworkResourcesData::addResourceContent):
3088         (WebCore::NetworkResourcesData::data):
3089         (WebCore::NetworkResourcesData::clear):
3090         (WebCore::NetworkResourcesData::ensureNoDataForIdentifier):
3091         (WebCore::NetworkResourcesData::ensureFreeSpace):
3092         * inspector/NetworkResourcesData.h:
3093         (WebCore::NetworkResourcesData::ResourceData::hasContent):
3094         (WebCore::NetworkResourcesData::ResourceData::setIsContentPurged):
3095         (WebCore::NetworkResourcesData::ResourceData::textEncodingName):
3096         (WebCore::NetworkResourcesData::ResourceData::setTextEncodingName):
3097         * inspector/front-end/Resource.js:
3098         * inspector/front-end/ResourcePreviewView.js:
3099         (WebInspector.ResourcePreviewView.prototype.contentLoaded):
3100         (WebInspector.ResourcePreviewView.prototype._createInnerView):
3101         * inspector/front-end/ResourceView.js:
3102         (WebInspector.ResourceView.hasTextContent):
3103         * loader/DocumentThreadableLoader.cpp:
3104         (WebCore::DocumentThreadableLoader::didReceiveData):
3105         * loader/FrameLoader.cpp:
3106         (WebCore::FrameLoader::willLoadMediaElementURL):
3107         (WebCore::FrameLoader::commitProvisionalLoad):
3108         (WebCore::FrameLoader::loadResourceSynchronously):
3109         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
3110         * loader/ResourceLoadNotifier.cpp:
3111         (WebCore::ResourceLoadNotifier::didReceiveData):
3112         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
3113         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
3114         * loader/ResourceLoadNotifier.h:
3115         * loader/appcache/ApplicationCacheGroup.cpp:
3116         (WebCore::ApplicationCacheGroup::didReceiveData):
3117         * testing/Internals.cpp:
3118         * testing/Internals.h:
3119         * testing/Internals.idl:
3120
3121 2011-07-04  Vsevolod Vlasov  <vsevik@chromium.org>
3122
3123         Web Inspector: Show content for plugin requests in network panel.
3124         https://bugs.webkit.org/show_bug.cgi?id=30080
3125
3126         Reviewed by Pavel Feldman.
3127
3128         Tests: http/tests/inspector/network/network-content-replacement-embed.html
3129                http/tests/inspector/network/network-content-replacement-xhr.html
3130                http/tests/inspector/network/network-embed.html
3131
3132         * WebCore.exp.in:
3133         * inspector/InspectorController.cpp:
3134         (WebCore::InspectorController::setResourcesDataSizeLimitsFromInternals):
3135         * inspector/InspectorController.h:
3136         * inspector/InspectorInstrumentation.cpp:
3137         (WebCore::InspectorInstrumentation::didReceiveDataImpl):
3138         * inspector/InspectorInstrumentation.h:
3139         (WebCore::InspectorInstrumentation::didReceiveData):
3140         * inspector/InspectorResourceAgent.cpp:
3141         (WebCore::InspectorResourceAgent::didReceiveResponse):
3142         (WebCore::InspectorResourceAgent::didReceiveData):
3143         (WebCore::InspectorResourceAgent::didFinishLoading):
3144         (WebCore::InspectorResourceAgent::setInitialXHRContent):
3145         (WebCore::InspectorResourceAgent::setResourcesDataSizeLimitsFromInternals):
3146         (WebCore::InspectorResourceAgent::getResourceContent):
3147         * inspector/InspectorResourceAgent.h:
3148         * inspector/NetworkResourcesData.cpp:
3149         (WebCore::NetworkResourcesData::ResourceData::ResourceData):
3150         (WebCore::NetworkResourcesData::ResourceData::setContent):
3151         (WebCore::NetworkResourcesData::ResourceData::purgeContent):
3152         (WebCore::NetworkResourcesData::ResourceData::createDecoder):
3153         (WebCore::NetworkResourcesData::ResourceData::dataLength):
3154         (WebCore::NetworkResourcesData::ResourceData::appendData):
3155         (WebCore::NetworkResourcesData::ResourceData::decodeDataToContent):
3156         (WebCore::NetworkResourcesData::NetworkResourcesData):
3157         (WebCore::NetworkResourcesData::responseReceived):
3158         (WebCore::NetworkResourcesData::setResourceContent):
3159         (WebCore::NetworkResourcesData::maybeAddResourceData):
3160         (WebCore::NetworkResourcesData::maybeDecodeDataToContent):
3161         (WebCore::NetworkResourcesData::data):
3162         (WebCore::NetworkResourcesData::clear):
3163         (WebCore::NetworkResourcesData::setResourcesDataSizeLimits):
3164         (WebCore::NetworkResourcesData::ensureNoDataForIdentifier):
3165         (WebCore::NetworkResourcesData::ensureFreeSpace):
3166         * inspector/NetworkResourcesData.h:
3167         (WebCore::NetworkResourcesData::ResourceData::hasContent):
3168         (WebCore::NetworkResourcesData::ResourceData::content):
3169         (WebCore::NetworkResourcesData::ResourceData::decoder):
3170         (WebCore::NetworkResourcesData::ResourceData::buffer):
3171         (WebCore::NetworkResourcesData::ResourceData::setBuffer):
3172         (WebCore::NetworkResourcesData::ResourceData::hasData):
3173         * inspector/front-end/Resource.js:
3174         (WebInspector.Resource.prototype.get contentEncoded):
3175         * inspector/front-end/ResourcePreviewView.js:
3176         (WebInspector.ResourcePreviewView.prototype.contentLoaded):
3177         (WebInspector.ResourcePreviewView.prototype._createEmptyView):
3178         (WebInspector.ResourcePreviewView.prototype._createPreviewView):
3179         * inspector/front-end/ResourceView.js:
3180         (WebInspector.ResourceView.hasTextContent):
3181         * loader/DocumentThreadableLoader.cpp:
3182         (WebCore::DocumentThreadableLoader::didReceiveData):
3183         * loader/FrameLoader.cpp:
3184         (WebCore::FrameLoader::willLoadMediaElementURL):
3185         (WebCore::FrameLoader::commitProvisionalLoad):
3186         (WebCore::FrameLoader::loadResourceSynchronously):
3187         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
3188         * loader/ResourceLoadNotifier.cpp:
3189         (WebCore::ResourceLoadNotifier::didReceiveData):
3190         (WebCore::ResourceLoadNotifier::dispatchDidReceiveData):
3191         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
3192         * loader/ResourceLoadNotifier.h:
3193         * loader/appcache/ApplicationCacheGroup.cpp:
3194         (WebCore::ApplicationCacheGroup::didReceiveData):
3195         * testing/Internals.cpp:
3196         (WebCore::Internals::setInspectorResourcesDataSizeLimits):
3197         * testing/Internals.h:
3198         * testing/Internals.idl:
3199
3200 2011-07-04  Jeff Timanus  <twiz@chromium.org>
3201
3202         Reviewed by Stephen White.
3203
3204         Prevent calls to GrapicsContext3D::deleteTexture with id 0 in DrawingBuffer::clear().
3205         https://bugs.webkit.org/show_bug.cgi?id=63756
3206
3207         * platform/graphics/gpu/DrawingBuffer.cpp:
3208         (WebCore::DrawingBuffer::clear):
3209
3210 2011-07-04  Martin Robinson  <mrobinson@igalia.com>
3211
3212         Reviewed by Andreas Kling.
3213
3214         [GTK] r90148 did not apply to X11 platforms in WebKit1
3215         https://bugs.webkit.org/show_bug.cgi?id=63862
3216
3217         Correct the guard for an X11 specific piece of code. TARGET(X11) not
3218         defined for the GTK+ port.
3219
3220         No new tests. This is covered by an existing test.
3221
3222         * plugins/npapi.cpp: Correct the X11 guard.
3223         (NPN_InvalidateRect):
3224
3225 2011-07-04  Pavel Feldman  <pfeldman@google.com>
3226
3227         Web Inspector: implement settings panel.
3228         https://bugs.webkit.org/show_bug.cgi?id=63907
3229
3230         Reviewed by Yury Semikhatsky.
3231
3232         * English.lproj/localizedStrings.js:
3233         * WebCore.gypi:
3234         * WebCore.vcproj/WebCore.vcproj:
3235         * inspector/front-end/BreakpointsSidebarPane.js:
3236         (WebInspector.XHRBreakpointsSidebarPane.prototype._saveBreakpoints):
3237         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._saveBreakpoints):
3238         * inspector/front-end/ConsoleView.js:
3239         (WebInspector.ConsoleView):
3240         (WebInspector.ConsoleView.prototype._handleContextMenuEvent.monitoringXHRItemAction):
3241         (WebInspector.ConsoleView.prototype._handleContextMenuEvent.get preserveLogItemAction):
3242         (WebInspector.ConsoleView.prototype._monitoringXHREnabledSettingChanged):
3243         (WebInspector.ConsoleView.prototype._registerShortcuts):
3244         * inspector/front-end/DOMBreakpointsSidebarPane.js:
3245         (WebInspector.DOMBreakpointsSidebarPane.prototype._saveBreakpoints):
3246         * inspector/front-end/DebuggerPresentationModel.js:
3247         (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
3248         * inspector/front-end/ElementsPanel.js:
3249         (WebInspector.ElementsPanel.prototype._contextMenuEventFired):
3250         (WebInspector.ElementsPanel.prototype._domWordWrapSettingChanged):
3251         (WebInspector.ElementsPanel.prototype._registerShortcuts):
3252         * inspector/front-end/EventListenersSidebarPane.js:
3253         (WebInspector.EventListenersSidebarPane.prototype):
3254         ():
3255         * inspector/front-end/HelpScreen.js:
3256         (WebInspector.HelpScreen):
3257         (WebInspector.HelpScreen.prototype.show):
3258         (WebInspector.HelpScreen.prototype.hide):
3259         (WebInspector.HelpScreen.prototype._onKeyDown):
3260         * inspector/front-end/NetworkItemView.js:
3261         * inspector/front-end/NetworkPanel.js:
3262         * inspector/front-end/Panel.js:
3263         (WebInspector.Panel.prototype.saveSidebarWidth):
3264         * inspector/front-end/ProfilesPanel.js:
3265         * inspector/front-end/ResourcesPanel.js:
3266         (WebInspector.BaseStorageTreeElement.prototype.onselect):
3267         (WebInspector.StorageCategoryTreeElement.prototype.onexpand):
3268         (WebInspector.StorageCategoryTreeElement.prototype.set oncollapse):
3269         * inspector/front-end/ScriptsPanel.js:
3270         (WebInspector.ScriptsPanel.prototype._sourceFileAdded.get if):
3271         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions.callback):
3272         (WebInspector.ScriptsPanel.prototype._createSidebarButtonAndRegisterShortcuts):
3273         * inspector/front-end/Settings.js:
3274         (WebInspector.Settings):
3275         (WebInspector.Settings.prototype.installApplicationSetting):
3276         (WebInspector.Setting):
3277         (WebInspector.Setting.prototype.addChangeListener):
3278         (WebInspector.Setting.prototype.removeChangeListener):
3279         (WebInspector.Setting.prototype.get var):
3280         (WebInspector.Setting.prototype):
3281         (WebInspector.Setting.prototype.set if):
3282         * inspector/front-end/SettingsScreen.js: Added.
3283         (WebInspector.SettingsScreen):
3284         (WebInspector.SettingsScreen.prototype._appendSection):
3285         (WebInspector.SettingsScreen.prototype._columnElement):
3286         (WebInspector.SettingsScreen.prototype._createCheckboxSetting.get listener):
3287         (WebInspector.SettingsScreen.prototype._createRadioSetting):
3288         * inspector/front-end/ShortcutsScreen.js: Renamed from Source/WebCore/inspector/front-end/ShortcutsHelp.js.
3289         (WebInspector.ShortcutsScreen):
3290         * inspector/front-end/StylesSidebarPane.js:
3291         (WebInspector.StylesSidebarPane.prototype.registerShortcuts):
3292         * inspector/front-end/WatchExpressionsSidebarPane.js:
3293         * inspector/front-end/WebKit.qrc:
3294         * inspector/front-end/helpScreen.css:
3295         (.help-window-main):
3296         (body.attached .help-window-main):
3297         (.help-window-caption):
3298         (body.attached .help-window-caption):
3299         (.help-content):
3300         (.help-close-button):
3301         (body.attached .help-close-button):
3302         (body.attached .help-content):
3303         (.help-table):
3304         (body.platform-mac .help-key):
3305         (.help-combine-keys):
3306         (.help-content p):
3307         (.help-content fieldset):
3308         (.help-content fieldset p):
3309         (.help-content p.help-section):
3310         (.help-section-title):
3311         (.help-content input[type=checkbox]):
3312         * inspector/front-end/inspector.css:
3313         (button.settings-status-bar-item):
3314         (.settings-status-bar-item .glyph):
3315         * inspector/front-end/inspector.html:
3316         * inspector/front-end/inspector.js:
3317         (WebInspector._createGlobalStatusBarItems):
3318         (WebInspector._toggleAttach):
3319         (WebInspector._toggleSettings):
3320         (WebInspector._registerShortcuts):
3321         (WebInspector.documentKeyDown):
3322
3323 2011-07-04  Vsevolod Vlasov  <vsevik@chromium.org>
3324
3325         Web Inspector: Resources loaded to Resources Panel from InspectorPageAgent do not have mime type set.
3326         https://bugs.webkit.org/show_bug.cgi?id=63701
3327
3328         Pass cachedResource/documentLoader mimeType from InspectorPageAgent to frontend.
3329
3330         Reviewed by Yury Semikhatsky.
3331
3332         Test: http/tests/inspector/resource-tree/resource-tree-mimetype.html
3333
3334         * inspector/Inspector.json:
3335         * inspector/InspectorPageAgent.cpp:
3336         (WebCore::InspectorPageAgent::buildObjectForFrame):
3337         (WebCore::InspectorPageAgent::buildObjectForFrameTree):
3338         * inspector/front-end/ResourceTreeModel.js:
3339         (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
3340         (WebInspector.ResourceTreeModel.prototype._createResource):
3341
3342 2011-07-04  Yury Semikhatsky  <yurys@chromium.org>
3343
3344         Web Inspector: repeated message counter should be aligned with other message icons
3345         https://bugs.webkit.org/show_bug.cgi?id=63901
3346
3347         Reviewed by Pavel Feldman.
3348
3349         * inspector/front-end/inspector.css:
3350         (.console-message .bubble):
3351
3352 2011-07-04  Alexander Pavlov  <apavlov@chromium.org>
3353
3354         Reviewed by Pavel Feldman.
3355
3356         Web Inspector: Adding new CSS rules should be more discoverable in the UI
3357         https://bugs.webkit.org/show_bug.cgi?id=63803
3358
3359         * inspector/front-end/StylesSidebarPane.js:
3360         (WebInspector.StylesSidebarPane.prototype._createNewRule):
3361
3362 2011-07-04  Danilo Cesar Lemes de Paula  <danilo.cesar@collabora.co.uk>
3363
3364         [Qt] Fixing build with --media-stream flag enabled
3365         https://bugs.webkit.org/show_bug.cgi?id=63831
3366
3367         Reviewed by Benjamin Poulain.
3368
3369         * features.pri: Adding support to ENABLE_MEDIA_STREAM flag.
3370
3371 2011-07-04  Vsevolod Vlasov  <vsevik@chromium.org>
3372
3373         Reviewed by Yury Semikhatsky.
3374
3375         Web Inspector: Update network resource url from response data.
3376         https://bugs.webkit.org/show_bug.cgi?id=63736
3377
3378         * inspector/Inspector.json:
3379         * inspector/InspectorResourceAgent.cpp:
3380         (WebCore::buildObjectForResourceResponse):
3381         * inspector/front-end/NetworkManager.js:
3382         (WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
3383
3384 2011-07-04  Andrey Kosyakov  <caseq@chromium.org>
3385
3386         Reviewed by Yury Semikhatsky.
3387
3388         Web Inspector: [Extensions API] audit formatter names should begin with create
3389         https://bugs.webkit.org/show_bug.cgi?id=63802
3390
3391         * inspector/front-end/ExtensionAPI.js:
3392         (WebInspector.injectedExtensionAPI.AuditResultImpl):
3393
3394 2011-07-03  Dominic Cooney  <dominicc@chromium.org>
3395
3396         The value property of an indeterminate progress element should be zero
3397         https://bugs.webkit.org/show_bug.cgi?id=63861
3398
3399         Reviewed by Kent Tamura.
3400
3401         Test: fast/dom/HTMLProgressElement/set-progress-properties.html
3402
3403         * html/HTMLProgressElement.cpp:
3404         (WebCore::HTMLProgressElement::value):
3405
3406 2011-07-03  Robert Hogan  <robert@webkit.org>
3407
3408         Restore scroll position on page reloads scheduled by <meta http-equiv="refresh" content="XX"/>
3409         https://bugs.webkit.org/show_bug.cgi?id=62482
3410
3411         If a <meta http-equiv="refresh"> directive schedules a page reload rather than
3412         a redirect restore the scroll position after the reload. Do the same on location.reload().
3413
3414         Reviewed by Adam Barth.
3415
3416         Tests: http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-2.html
3417                http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier.html
3418                http/tests/navigation/scrollstate-after-http-equiv-refresh.html
3419                http/tests/navigation/scrollstate-after-location-reload.html
3420
3421         * loader/FrameLoader.cpp:
3422         (WebCore::FrameLoader::loadURL):
3423         Only make the load FrameLoadTypeSame if it has not already been set as FrameLoadTypeReload*.
3424         FrameLoadTypeReload* loads are set through http-equiv refreshes, manual reloads, or location.reload()
3425         and honour the user's scroll position in the frame. A FrameLoadTypeSame is for when the frame is loading
3426         the same page again, e.g. by clicking a link.
3427
3428         * loader/NavigationScheduler.cpp:
3429         (WebCore::ScheduledRedirect::fire): Tell FrameLoader::changeLocation() if this is a reload.
3430
3431 2011-07-03  Dirk Schulze  <krit@webkit.org>
3432
3433         SVGAnimateTransform accumulate=sum restarts on every repeat
3434         https://bugs.webkit.org/show_bug.cgi?id=63876
3435
3436         Reviewed by Nikolas Zimmermann.
3437         
3438         We applied transforms from previous animation repeats to a transform list. The problem is, that we calculated the current
3439         transform based on the percentage of the current repeat count. This causes an animation starting from scale level 0
3440         on every repeat. Now I add the repeat count to the current percentage, so that the distance calculation starts from 100% on
3441         the first repeat, from 200% on the second and so on.
3442
3443         Test: svg/animations/svgtransform-animation-1.html
3444
3445         * svg/SVGAnimateTransformElement.cpp:
3446         (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
3447
3448 2011-07-03  Sheriff Bot  <webkit.review.bot@gmail.com>
3449
3450         Unreviewed, rolling out r90342.
3451         http://trac.webkit.org/changeset/90342
3452         https://bugs.webkit.org/show_bug.cgi?id=63875
3453
3454         Newly added tests fail on Mac, GTK, and Win7 (Requested by
3455         abarth on #webkit).
3456
3457         * loader/FrameLoader.cpp:
3458         (WebCore::FrameLoader::loadURL):
3459         * loader/NavigationScheduler.cpp:
3460
3461 2011-07-03  Robert Hogan  <robert@webkit.org>
3462