1 2010-11-18 Sheriff Bot <webkit.review.bot@gmail.com>
3 Unreviewed, rolling out r72292.
4 http://trac.webkit.org/changeset/72292
5 https://bugs.webkit.org/show_bug.cgi?id=49732
7 will break win build (Requested by loislo on #webkit).
9 * inspector/CodeGeneratorInspector.pm:
11 2010-11-18 Ilya Tikhonovsky <loislo@chromium.org>
13 Reviewed by Yury Semikhatsky.
15 Web Inspector: reduce the footprint of InspectorBackendDispatcher.
16 InspectorBackendDispatcher is a generated file.
17 Its content is not optimal and loc may be reduced by a quarter.
18 In each generated function we have a code for getting 'in' values from
19 the arguments properties object. I've extracted this code into separate getters.
20 The side effect is better readability of the generated code.
22 https://bugs.webkit.org/show_bug.cgi?id=49729
24 * inspector/CodeGeneratorInspector.pm:
26 2010-11-18 Alexander Pavlov <apavlov@chromium.org>
28 Reviewed by Pavel Feldman.
30 [v8] fast/css/getFloatValueForUnit.html fails since http://trac.webkit.org/changeset/72189
31 https://bugs.webkit.org/show_bug.cgi?id=49656
33 Explicitly specify indexerType for the generation of V8WebKitCSSTransformValue binding.
35 * bindings/scripts/CodeGeneratorV8.pm:
37 2010-11-18 Nikolas Zimmermann <nzimmermann@rim.com>
39 Reviewed by Dirk Schulze.
41 Convert SVGPathSeg/SVGPathSegList to the new SVGPropertyTearOff concept
42 https://bugs.webkit.org/show_bug.cgi?id=49580
44 SVGPathElement.cloneNode loses generated pathSegList
45 https://bugs.webkit.org/show_bug.cgi?id=43388
47 SVG Path elements are not correctly updated through pathSegList manipulation on relative values
48 https://bugs.webkit.org/show_bug.cgi?id=30219
50 Changing an SVGPathSeg does not update a following Smooth Cubic Curveto
51 https://bugs.webkit.org/show_bug.cgi?id=19741
53 SVGPathElement should only build SVGPathSeg* list on demand
54 https://bugs.webkit.org/show_bug.cgi?id=10827
56 Tests: svg/W3C-SVG-1.1-SE/paths-dom-02-f.svg
57 svg/dom/SVGPathSegList-appendItem.xhtml
58 svg/dom/SVGPathSegList-clear-and-initialize.xhtml
59 svg/dom/SVGPathSegList-cloning.html
60 svg/dom/SVGPathSegList-insertItemBefore.xhtml
61 svg/dom/SVGPathSegList-removeItem.xhtml
62 svg/dom/SVGPathSegList-replaceItem.xhtml
63 svg/dom/SVGPathSegList-xml-dom-synchronization.xhtml
64 svg/dom/SVGPathSegList-xml-dom-synchronization2.xhtml
65 svg/dom/SVGPathSegList-segment-modification.svg
67 Convert SVGPathSeg*/SVGPathSegList to the new SVG(Animated)PropertyTearOff concept.
68 Unlike all other SVG* types that use the SVGPropertyTearOff concept, SVGPathSegs are already refcounted,
69 and don't need to be wrapped in SVGPropertyTearOff objects. The consequence is that SVGPathSegs need to track
70 themselves to which list and path element they belong. Introduce new SVGAnimatedPathSegListPropertyTearOff
71 and SVGPathSegListPropertyTearOff classes, that encapsulate the special needed for SVGPathSegList.
73 Each SVGPathSeg now needs to store a RefPtr<SVGPathElement> - this makes it impossible to use SVGPathSegList
74 to represent the 'd' attribute internally in SVGPathElement. SVGPathSegList is now only used in the SVG DOM bindings
75 if someone explicitely requests 'pathElement.pathSegList' (eg. via JS). Switch to use SVGPathByteStream to store
76 the 'd' attribute data in SVGPathElement, which is much more compact, and less memory intensive.
77 Dirk already prepared SVGPathParserFactory some months ago, which allows easy conversion between
78 String/Path/SVGPathSegList/SVGPathByteStream in all directions, including normalizing the lists, when requested.
80 As consequence SVGPathSegList is now only built on demand, when explicitely requested. Using the SVGAnimatedProperty
81 concept gives us 'd' attribute <-> SVGPathSegList synchronization for free, fixing several bugs, listed above.
83 * Android.mk: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build.
84 * CMakeLists.txt: Ditto.
85 * DerivedSources.make: Remove SVGAnimatedPathData IDL generation.
86 * GNUmakefile.am: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build.
87 * WebCore.gyp/WebCore.gyp: Remove SVGAnimatedPathData IDL generation.
88 * WebCore.gypi: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build.
89 * WebCore.order: Remove no-longer existant SVGAnimatedPathData symbols.
90 * WebCore.pro: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp / JSSVGPathSegCustom.* from build.
91 * WebCore.vcproj/WebCore.vcproj: Ditto.
92 * WebCore.xcodeproj/project.pbxproj: Ditto.
93 * bindings/js/JSBindingsAllInOne.cpp: Remove JSSVGPathSegCustom.cpp from build.
94 * bindings/js/JSDOMBinding.cpp: Adapt to toJS() changes, remove context parameter.
95 (WebCore::setDOMException):
96 * bindings/js/JSDOMBinding.h: Remove obsolete CREATE_SVG_OBJECT_WRAPPER macro, the context parameter is not existant anymore.
97 * bindings/js/JSSVGPathSegCustom.cpp: Replace CREATE_SVG_OBJECT_WRAPPER by CREATE_DOM_OBJECT_WRAPPER. Remove context parameter/handling.
99 * bindings/js/JSSVGPathSegListCustom.cpp: Removed.
100 * bindings/scripts/CodeGenerator.pm: Map 'SVGPathSegList' IDL type to SVG 'SVGPathSegListPropertyTearOff' native type.
101 * bindings/scripts/CodeGeneratorJS.pm: Remove IsSVGTypeNeedingContextParameter() methods and usages. Handle SVGPathSegListPropertyTearOff.
102 * bindings/scripts/CodeGeneratorObjC.pm: Handle SVGPathSegListPropertyTearOff.
103 * bindings/scripts/CodeGeneratorV8.pm: Remove IsSVGTypeNeedingContextParameter() methods and usages.
104 * rendering/SVGRenderTreeAsText.cpp: Build path string from byte stream, not path segment list.
105 (WebCore::operator<<):
106 * svg/SVGAllInOne.cpp: Remove obsolete cpp files.
107 * svg/SVGAnimatedPathData.cpp: Removed.
108 * svg/SVGAnimatedPathData.h: Removed.
109 * svg/SVGAnimatedPathData.idl: Removed.
110 * svg/SVGPathElement.cpp: Build SVGPathList on demand. Use SVGPathByteStream to parse/store the 'd' attribute content.
111 (WebCore::SVGPathElement::SVGPathElement):
112 (WebCore::SVGPathElement::getPathSegAtLength): Use SVGPathByteStream, not SVGPathSegList to determine the getPathSegAtLength() information.
113 (WebCore::SVGPathElement::createSVGPathSegClosePath): Pass SVGPathElement to SVGPathSeg and a SVGPathSegRole parameter and store it to track the list origin.
114 (WebCore::SVGPathElement::createSVGPathSegMovetoAbs): Ditto.
115 (WebCore::SVGPathElement::createSVGPathSegMovetoRel): Ditto.
116 (WebCore::SVGPathElement::createSVGPathSegLinetoAbs): Ditto.
117 (WebCore::SVGPathElement::createSVGPathSegLinetoRel): Ditto.
118 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs): Ditto.
119 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel): Ditto.
120 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs): Ditto.
121 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel): Ditto.
122 (WebCore::SVGPathElement::createSVGPathSegArcAbs): Ditto.
123 (WebCore::SVGPathElement::createSVGPathSegArcRel): Ditto.
124 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs): Ditto.
125 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel): Ditto.
126 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs): Ditto.
127 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel): Ditto.
128 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs): Ditto.
129 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel): Ditto.
130 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs): Ditto.
131 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel): Ditto.
132 (WebCore::SVGPathElement::parseMappedAttribute): Build SVGPathByteStream from 'd' attribute, not a SVGPathSegList.
133 (WebCore::SVGPathElement::svgAttributeChanged): If a SVGPathSegList object has been built, synchronize it with the 'd' attribute.
134 (WebCore::SVGPathElement::synchronizeProperty): Synchronize 'd' attribute with the SVGPathSegList, if needed.
135 (WebCore::SVGPathElement::synchronizeD): Added.
136 (WebCore::SVGPathElement::pathSegList): Use same trick as in SVGPolyElement to expose the 'pathSegList' / 'animatedPathSegList' object to the SVG DOM bindings.
137 (WebCore::SVGPathElement::normalizedPathSegList): Ditto.
138 (WebCore::SVGPathElement::animatedPathSegList): Ditto.
139 (WebCore::SVGPathElement::animatedNormalizedPathSegList): Ditto.
140 (WebCore::SVGPathElement::toPathData): Build 'Path' object from SVGPathByteStream, not from SVGPathSegList.
141 (WebCore::SVGPathElement::pathSegListChanged): Used to synchronize the SVGPathSegLists and the d attribute, as well as any changes from any SVGPathSeg associated with this SVGPathElement.
142 * svg/SVGPathElement.h: Add new accessors...
143 (WebCore::SVGPathElement::pathByteStream): ... needed by SVGRenderTreeAsText.
144 (WebCore::SVGPathElement::animatablePathSegList): ... needed by SVGPathSegListPropertyTearOff.
145 * svg/SVGPathElement.idl: Merge SVGAnimatedPathData interface into SVGPathElement.
146 * svg/SVGPathParserFactory.cpp: Cleanup SVGPathParserFactory, remove obsolete methods, now that SVGPathElement switched to using SVGPathByteStream internally.
147 (WebCore::globalSVGPathSegListBuilder):
148 (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromSVGPathSegList):
149 (WebCore::SVGPathParserFactory::buildPathFromByteStream):
150 (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream):
151 (WebCore::SVGPathParserFactory::buildStringFromSVGPathSegList):
152 (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString):
153 (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream):
154 (WebCore::SVGPathParserFactory::getSVGPathSegAtLengthFromSVGPathByteStream):
155 * svg/SVGPathParserFactory.h:
156 * svg/SVGPathSeg.cpp: Removed.
157 * svg/SVGPathSeg.h: Add new SVGPathSegRole enum, identifying to which list a path segment belongs.
158 (WebCore::SVGPathSeg::SVGPathSeg):
159 * svg/SVGPathSeg.idl: Reindented.
160 * svg/SVGPathSegArc.cpp: Removed.
161 * svg/SVGPathSegArc.h: All setters now call the commitChange() method.
162 * svg/SVGPathSegArcAbs.idl: Enable StrictTypeChecking.
163 * svg/SVGPathSegArcRel.idl: Ditto.
164 * svg/SVGPathSegClosePath.cpp: Removed.
165 * svg/SVGPathSegClosePath.h:
166 * svg/SVGPathSegCurvetoCubic.cpp: Removed.
167 * svg/SVGPathSegCurvetoCubic.h: All setters now call the commitChange() method.
168 * svg/SVGPathSegCurvetoCubicAbs.idl: Enable StrictTypeChecking.
169 * svg/SVGPathSegCurvetoCubicRel.idl: Ditto.
170 * svg/SVGPathSegCurvetoCubicSmooth.cpp: Removed.
171 * svg/SVGPathSegCurvetoCubicSmooth.h: All setters now call the commitChange() method.
172 * svg/SVGPathSegCurvetoCubicSmoothAbs.idl: Enable StrictTypeChecking.
173 * svg/SVGPathSegCurvetoCubicSmoothRel.idl: Ditto.
174 * svg/SVGPathSegCurvetoQuadratic.cpp: Removed.
175 * svg/SVGPathSegCurvetoQuadratic.h: All setters now call the commitChange() method.
176 * svg/SVGPathSegCurvetoQuadraticAbs.idl: Enable StrictTypeChecking.
177 * svg/SVGPathSegCurvetoQuadraticRel.idl: Ditto.
178 * svg/SVGPathSegCurvetoQuadraticSmooth.cpp: Removed.
179 * svg/SVGPathSegCurvetoQuadraticSmooth.h: All setters now call the commitChange() method.
180 * svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: Enable StrictTypeChecking.
181 * svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: Ditto.
182 * svg/SVGPathSegLineto.cpp: Removed.
183 * svg/SVGPathSegLineto.h: All setters now call the commitChange() method.
184 * svg/SVGPathSegLinetoAbs.idl: Enable StrictTypeChecking.
185 * svg/SVGPathSegLinetoHorizontal.cpp: Removed.
186 * svg/SVGPathSegLinetoHorizontal.h: All setters now call the commitChange() method.
187 * svg/SVGPathSegLinetoHorizontalAbs.idl: Enable StrictTypeChecking.
188 * svg/SVGPathSegLinetoHorizontalRel.idl: Ditto.
189 * svg/SVGPathSegLinetoRel.idl: Enable StrictTypeChecking.
190 * svg/SVGPathSegLinetoVertical.cpp: Removed.
191 * svg/SVGPathSegLinetoVertical.h: All setters now call the commitChange() method.
192 * svg/SVGPathSegLinetoVerticalAbs.idl: Enable StrictTypeChecking.
193 * svg/SVGPathSegLinetoVerticalRel.idl: Ditto.
194 * svg/SVGPathSegList.cpp: Switch from SVGList<RefPtr<SVGPathSeg> > to a plain Vector<RefPtr<SVGPathSeg> >.
195 (WebCore::SVGPathSegList::valueAsString): Utilize SVGPathParserFactory to build a String from a SVGPathSegList.
196 (WebCore::SVGPathSegList::commitChange): Call SVGPathElement::pathSegListChanged().
197 * svg/SVGPathSegList.h:
198 (WebCore::SVGPathSegList::SVGPathSegList):
199 * svg/SVGPathSegList.idl: Remove [JSCCustom] flags, no longer needed.
200 * svg/SVGPathSegListBuilder.cpp: Adapt to SVGPathSegList API changes.
201 (WebCore::SVGPathSegListBuilder::SVGPathSegListBuilder):
202 (WebCore::SVGPathSegListBuilder::moveTo):
203 (WebCore::SVGPathSegListBuilder::lineTo):
204 (WebCore::SVGPathSegListBuilder::lineToHorizontal):
205 (WebCore::SVGPathSegListBuilder::lineToVertical):
206 (WebCore::SVGPathSegListBuilder::curveToCubic):
207 (WebCore::SVGPathSegListBuilder::curveToCubicSmooth):
208 (WebCore::SVGPathSegListBuilder::curveToQuadratic):
209 (WebCore::SVGPathSegListBuilder::curveToQuadraticSmooth):
210 (WebCore::SVGPathSegListBuilder::arcTo):
211 (WebCore::SVGPathSegListBuilder::closePath):
212 * svg/SVGPathSegListBuilder.h: Ditto.
213 (WebCore::SVGPathSegListBuilder::setCurrentSVGPathElement):
214 (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegList):
215 (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegRole):
216 (WebCore::SVGPathSegListBuilder::cleanup):
217 * svg/SVGPathSegListSource.cpp: Ditto.
218 (WebCore::SVGPathSegListSource::SVGPathSegListSource):
219 (WebCore::SVGPathSegListSource::parseSVGSegmentType):
220 (WebCore::SVGPathSegListSource::nextCommand):
221 (WebCore::SVGPathSegListSource::parseMoveToSegment):
222 (WebCore::SVGPathSegListSource::parseLineToSegment):
223 (WebCore::SVGPathSegListSource::parseCurveToQuadraticSmoothSegment):
224 * svg/SVGPathSegListSource.h: Ditto.
225 (WebCore::SVGPathSegListSource::create):
226 * svg/SVGPathSegMoveto.cpp: Removed.
227 * svg/SVGPathSegMoveto.h: All setters now call the commitChange() method.
228 * svg/SVGPathSegMovetoAbs.idl: Enable StrictTypeChecking.
229 * svg/SVGPathSegMovetoRel.idl: Ditto.
230 * svg/SVGPathSegWithContext.h: Added. This is the new base class for all SVGPathSeg derived types, that's associated with a SVGPathElement and a 'role' (normalized/unaltered segment list).
231 (WebCore::SVGPathSegWithContext::SVGPathSegWithContext):
232 (WebCore::SVGPathSegWithContext::animatedProperty):
233 (WebCore::SVGPathSegWithContext::setContextAndRole):
234 (WebCore::SVGPathSegWithContext::commitChange):
235 (WebCore::SVGPathSegSingleCoordinate::x):
236 (WebCore::SVGPathSegSingleCoordinate::setX):
237 (WebCore::SVGPathSegSingleCoordinate::y):
238 (WebCore::SVGPathSegSingleCoordinate::setY):
239 (WebCore::SVGPathSegSingleCoordinate::SVGPathSegSingleCoordinate):
240 * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h: Added.
241 (WebCore::SVGAnimatedPathSegListPropertyTearOff::baseVal):
242 (WebCore::SVGAnimatedPathSegListPropertyTearOff::animVal):
243 (WebCore::SVGAnimatedPathSegListPropertyTearOff::removeItemFromList):
244 (WebCore::SVGAnimatedPathSegListPropertyTearOff::create):
245 (WebCore::SVGAnimatedPathSegListPropertyTearOff::SVGAnimatedPathSegListPropertyTearOff):
246 * svg/properties/SVGPathSegListPropertyTearOff.cpp: Added.
247 (WebCore::SVGPathSegListPropertyTearOff::clear): Added in the cpp file, not in the header, as it needs access to SVGPathSegWithContext, which we can't include from the header.
248 (WebCore::SVGPathSegListPropertyTearOff::getItem): Ditto.
249 (WebCore::SVGPathSegListPropertyTearOff::removeItem): Ditto.
250 (WebCore::SVGPathSegListPropertyTearOff::contextElement): Needs access to SVGPathElement, that's why it lives in the cpp file.
251 (WebCore::SVGPathSegListPropertyTearOff::processIncomingListItemValue): Needs access to SVGPathSegWithContext.
252 * svg/properties/SVGPathSegListPropertyTearOff.h: Added.
253 (WebCore::SVGPathSegListPropertyTearOff::create):
254 (WebCore::SVGPathSegListPropertyTearOff::removeItemFromList):
255 (WebCore::SVGPathSegListPropertyTearOff::numberOfItems):
256 (WebCore::SVGPathSegListPropertyTearOff::initialize):
257 (WebCore::SVGPathSegListPropertyTearOff::insertItemBefore):
258 (WebCore::SVGPathSegListPropertyTearOff::replaceItem):
259 (WebCore::SVGPathSegListPropertyTearOff::appendItem):
260 (WebCore::SVGPathSegListPropertyTearOff::SVGPathSegListPropertyTearOff):
261 (WebCore::SVGPathSegListPropertyTearOff::commitChange):
262 (WebCore::SVGPathSegListPropertyTearOff::processIncomingListItemWrapper):
264 2010-11-18 Mario Sanchez Prada <msanchez@igalia.com>
266 Reviewed by Martin Robinson.
268 [Gtk] atk_text_get_selection returns the wrong offsets after a link
269 https://bugs.webkit.org/show_bug.cgi?id=49514
271 Consider possible embedded objects to calculate startOffset.
273 So far we were using offsetInContainerNode() to calculate the
274 value of startOffset when checking the offsets for the current
275 selection, which was wrong because that wouldn't work ok if any
276 embedded object was present in the paragraph before the
277 selection. Thus, we need to consider this fact when calculating
278 the startOffset from the point of view of the object this function
279 is called on, in order to return the right and actual values.
281 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
282 (getSelectionOffsetsForObject): Check range length from the first
283 position in the object the function is called on until the first
284 position of current selection, and use it as startOffset.
286 2010-11-12 Stephen White <senorblanco@chromium.org>
288 Reviewed by Simon Fraser.
290 Fix for multiple urls in a background-image causing repeated repaints.
291 https://bugs.webkit.org/show_bug.cgi?id=42390
293 Change the key of RenderBoxModelObject's LastPaintSizeMap to include
294 the layer of the element being drawn, so that the same URL used
295 repeated in the same background-image, or another element's
296 background-image, can be uniquely identified. The layer is a void
297 pointer, since it is only used as part of the key and using a
298 void pointer will discourage dereferencing it. This pointer is NULL
299 when called from RenderImage (<img> elements).
301 Covered by fast/backgrounds/size/contain-and-cover.html
303 * rendering/RenderBoxModelObject.cpp:
304 (WebCore::ImageQualityController::keyDestroyed):
305 The old objectDestroyed() is renamed to keyDestroyed().
306 (WebCore::ImageQualityController::objectDestroyed):
307 The new objectDestroyed() iterates over all outstanding resizes
308 to remove any resizes pertaining to this object.
309 (WebCore::ImageQualityController::highQualityRepaintTimerFired):
310 Retrieve the RenderBoxModelObject from the pair's "first" member.
311 (WebCore::ImageQualityController::shouldPaintAtLowQuality):
312 Create a key from the {object, layer} pair, and use it to access
313 the repaint size map.
314 (WebCore::RenderBoxModelObject::shouldPaintAtLowQuality):
315 Plumb the layer through to the image quality controller.
316 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
317 Pass the bgLayer when checking
318 * rendering/RenderBoxModelObject.h:
319 Add the void* layer parameter to shouldPaintAtLowQuality.
320 * rendering/RenderImage.cpp:
321 (WebCore::RenderImage::paintIntoRect):
322 Pass 0 (null) for the layer parameter in this case.
324 2010-11-18 Chris Rogers <crogers@google.com>
326 Reviewed by Dimitri Glazkov.
328 Add loadPlatformAudioResource() and decodeAudioFileData() to ChromiumBridge
329 https://bugs.webkit.org/show_bug.cgi?id=49557
331 No new tests since audio API is not yet implemented.
333 * platform/chromium/ChromiumBridge.h:
335 2010-11-17 Sheriff Bot <webkit.review.bot@gmail.com>
337 Unreviewed, rolling out r72228.
338 http://trac.webkit.org/changeset/72228
339 https://bugs.webkit.org/show_bug.cgi?id=49712
341 Caused many >10 regressions on Win and Linux gpu layout test
342 runs. (Requested by dave_levin on #webkit).
344 * html/canvas/WebGLFramebuffer.cpp:
345 (WebCore::WebGLFramebuffer::onAccess):
346 (WebCore::WebGLFramebuffer::initializeRenderbuffers):
347 * html/canvas/WebGLFramebuffer.h:
348 * html/canvas/WebGLRenderingContext.cpp:
349 (WebCore::WebGLRenderingContext::clear):
350 (WebCore::WebGLRenderingContext::copyTexImage2D):
351 (WebCore::WebGLRenderingContext::copyTexSubImage2D):
352 (WebCore::WebGLRenderingContext::drawArrays):
353 (WebCore::WebGLRenderingContext::drawElements):
354 (WebCore::WebGLRenderingContext::readPixels):
355 (WebCore::WebGLRenderingContext::texImage2DBase):
357 2010-11-17 Sheriff Bot <webkit.review.bot@gmail.com>
359 Unreviewed, rolling out r72243.
360 http://trac.webkit.org/changeset/72243
361 https://bugs.webkit.org/show_bug.cgi?id=49710
363 Seemed to cause a large set of Chromium layout test to start
364 failing. (Requested by dave_levin on #webkit).
366 * bindings/v8/V8NPUtils.cpp:
367 (WebCore::convertV8ObjectToNPVariant):
369 2010-11-17 Adam Roben <aroben@apple.com>
371 Fix Acid3 in Safari for Windows
373 Reviewed by Dave Hyatt.
375 * platform/graphics/win/SimpleFontDataWin.cpp:
376 (WebCore::SimpleFontData::initGDIFont): Initialize all our metrics to 0
377 if we have a font size of 0.
379 2010-11-17 Dimitri Glazkov <dglazkov@chromium.org>
381 Reviewed by Darin Adler.
383 Converge means of querying a parent node into one way, which is Node::parentNode.
384 https://bugs.webkit.org/show_bug.cgi?id=49686
386 No change in behavior, so no new tests.
388 * accessibility/AccessibilityObject.cpp:
389 (WebCore::renderListItemContainerForNode): Changed to use parentNode.
390 * accessibility/AccessibilityRenderObject.cpp:
391 (WebCore::AccessibilityRenderObject::mouseButtonListener): Ditto.
392 (WebCore::siblingWithAriaRole): Ditto.
393 (WebCore::AccessibilityRenderObject::getDocumentLinks): Ditto.
394 (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest): Ditto.
395 * accessibility/mac/AccessibilityObjectWrapper.mm: Ditto.
396 (blockquoteLevel): Ditto.
397 * bindings/v8/V8GCController.cpp:
398 (WebCore::ObjectGrouperVisitor::visitDOMWrapper): Ditto.
399 * dom/ContainerNode.cpp: Ditto.
400 (WebCore::ContainerNode::insertBefore): Ditto.
401 (WebCore::ContainerNode::insertBeforeCommon): Ditto.
402 (WebCore::ContainerNode::replaceChild): Ditto.
403 (WebCore::ContainerNode::removeChild): Ditto.
404 (WebCore::ContainerNode::appendChild): Ditto.
405 (WebCore::ContainerNode::parserAddChild): Ditto.
406 * dom/DocumentType.cpp:
407 (WebCore::DocumentType::insertedIntoDocument): Ditto.
409 (WebCore::Element::computeInheritedLanguage): Ditto.
410 * dom/MouseRelatedEvent.cpp:
411 (WebCore::MouseRelatedEvent::receivedTarget): Ditto.
413 (WebCore::Position::isCandidate): Changed to use parentNode.
414 * dom/PositionIterator.cpp:
415 (WebCore::PositionIterator::isCandidate): Ditto.
416 * editing/AppendNodeCommand.cpp:
417 (WebCore::AppendNodeCommand::AppendNodeCommand): Ditto.
418 * editing/ApplyStyleCommand.cpp:
419 (WebCore::dummySpanAncestorForNode): Ditto.
420 (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi): Ditto.
421 (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock): Ditto.
422 (WebCore::highestEmbeddingAncestor): Ditto.
423 (WebCore::ApplyStyleCommand::splitTextElementAtEnd): Ditto.
424 (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical): Ditto.
425 (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical): Ditto.
426 * editing/CompositeEditCommand.cpp:
427 (WebCore::CompositeEditCommand::splitTreeToNode): Ditto.
428 * editing/DeleteSelectionCommand.cpp:
429 (WebCore::updatePositionForNodeRemoval): Ditto.
430 * editing/Editor.cpp:
431 (WebCore::Editor::textDirectionForSelection): Ditto.
432 * editing/MergeIdenticalElementsCommand.cpp:
433 (WebCore::MergeIdenticalElementsCommand::doUnapply): Ditto.
434 * editing/htmlediting.cpp:
435 (WebCore::isEmptyTableCell): Ditto.
436 * editing/markup.cpp:
437 (WebCore::StyledMarkupAccumulator::serializeNodes): Ditto.
438 * editing/visible_units.cpp:
439 (WebCore::previousLinePosition): Ditto.
440 (WebCore::nextLinePosition): Ditto.
441 * html/HTMLAreaElement.cpp:
442 (WebCore::HTMLAreaElement::imageElement): Ditto.
443 * html/HTMLElement.cpp:
444 (WebCore::HTMLElement::setOuterHTML): Ditto.
445 (WebCore::HTMLElement::insertAdjacent): Ditto.
446 (WebCore::HTMLElement::supportsFocus): Ditto.
447 * html/HTMLEmbedElement.cpp:
448 (WebCore::HTMLEmbedElement::insertedIntoDocument): Ditto.
449 (WebCore::HTMLEmbedElement::attributeChanged): Ditto.
450 * html/HTMLTableElement.cpp:
451 (WebCore::HTMLTableElement::insertRow): Ditto.
452 * html/HTMLTableRowsCollection.cpp: Ditto.
453 (WebCore::isInHead): Ditto.
454 (WebCore::isInBody): Ditto.
455 (WebCore::isInFoot): Ditto.
456 (WebCore::HTMLTableRowsCollection::rowAfter): Ditto.
457 * html/HTMLViewSourceDocument.cpp:
458 (WebCore::HTMLViewSourceDocument::addRange): Ditto.
459 * html/MediaDocument.cpp:
460 (WebCore::MediaDocument::replaceMediaElementTimerFired): Ditto.
461 * html/parser/HTMLConstructionSite.cpp:
462 (WebCore::HTMLConstructionSite::attach): Ditto.
463 (WebCore::HTMLConstructionSite::findFosterSite): Ditto.
464 * html/parser/HTMLTreeBuilder.cpp:
465 * page/FocusController.cpp:
466 (WebCore::FocusController::findFocusableNodeInDirection): Ditto.
467 * rendering/MediaControlElements.cpp:
468 (WebCore::MediaControlElement::rendererIsNeeded): Ditto.
469 (WebCore::MediaControlElement::attach): Ditto.
470 (WebCore::MediaControlElement::updateStyle): Ditto.
471 (WebCore::MediaControlInputElement::rendererIsNeeded): Ditto.
472 (WebCore::MediaControlInputElement::attach): Ditto.
473 (WebCore::MediaControlInputElement::updateStyle): Ditto.
474 * rendering/RenderSVGGradientStop.cpp:
475 (WebCore::RenderSVGGradientStop::gradientElement): Ditto.
476 * svg/SVGAElement.cpp:
477 (WebCore::SVGAElement::createRenderer): Ditto.
478 (WebCore::SVGAElement::childShouldCreateRenderer): Ditto.
479 * svg/SVGFELightElement.cpp:
480 (WebCore::SVGFELightElement::svgAttributeChanged): Ditto.
481 (WebCore::SVGFELightElement::childrenChanged): Ditto.
482 * svg/SVGFEMergeNodeElement.cpp:
483 (WebCore::SVGFEMergeNodeElement::svgAttributeChanged): Ditto.
485 (WebCore::SVGLength::determineViewport): Ditto.
486 * svg/SVGStyledElement.cpp:
487 (WebCore::SVGStyledElement::updateRelativeLengthsInformation): Ditto.
488 * svg/SVGUseElement.cpp:
489 (WebCore::SVGUseElement::removeDisallowedElementsFromSubtree): Ditto.
490 * svg/animation/SVGSMILElement.cpp:
491 (WebCore::SVGSMILElement::insertedIntoDocument): Ditto.
492 * xml/XPathNodeSet.cpp:
493 (WebCore::XPath::NodeSet::sort): Ditto.
495 (WebCore::XPath::Step::nodesInAxis): Ditto.
496 * xml/XSLTProcessorLibxslt.cpp:
497 (WebCore::xsltStylesheetPointer): Ditto.
499 2010-11-17 Kenneth Rohde Christiansen <kenneth@webkit.org>
501 Reviewed by Andreas Kling.
503 ScrollView: Don't translate by scrollX/scrollY or clip when paintsEntireContents()
505 This makes paint() with paintEntireContents() do exactly what it's supposed to:
506 paint from 0,0 to contentsSize().
508 The clipping was a no-op anyway since visibleContentRect() will return the whole
509 rect in paintsEntireContents() mode.
511 * platform/ScrollView.cpp:
512 (WebCore::ScrollView::paint):
514 2010-11-17 Kenneth Rohde Christansen <kenneth@webkit.org>
516 Reviewed by Andreas Kling.
518 ScrollView: Update the actualVisibleContentRect after delegating a scroll.
520 This lets us avoid updating the actualVisibleContentRect from the client
521 after each scroll. We had to do this synchronously for WebKit2 to support
522 programmatic "animated scrolling" from JS.
524 * platform/ScrollView.cpp:
525 (WebCore::ScrollView::setScrollPosition):
527 2010-11-17 Andreas Kling <kling@webkit.org>
529 Reviewed by Kenneth Rohde Christiansen.
531 ScrollView: Decouple actualVisibleContentRect from visibleContentRect
533 Added actualVisibleContentRect() which will return the override provided
534 by setActualVisibleContentRect() or fall back to visibleContentRect()
535 if no override has been set.
537 This is similar to what the iPhone does.
539 * platform/ScrollView.cpp:
540 (WebCore::ScrollView::visibleContentRect):
541 * platform/ScrollView.h:
542 (WebCore::ScrollView::actualVisibleContentRect):
543 (WebCore::ScrollView::setActualVisibleContentRect): IntRect -> const IntRect&
545 2010-11-17 Tony Chang <tony@chromium.org>
547 Reviewed by Adam Barth.
549 [chromium] fix get-int-identifier-special-values.html using TestNetscapePlugIn
550 https://bugs.webkit.org/show_bug.cgi?id=49036
552 No new tests: Covered by plugins/npruntime/get-int-identifier-special-values.html
554 In http://codereview.chromium.org/11574, the forked chromium test
555 plugin changed how it testGetIntIdentifier to work around a change
556 caused by a silverlight specific plugin fix:
557 http://codereview.chromium.org/11569/diff/1/2
559 It's not clear to me that this change is needed anymore since
560 silverlight has had multiple releases, testing without this patch
561 works on a test windows build, and safari win seems to run silverlight
562 without this either. Since there's no test for this behavior, I'm
563 rolling it out so we can match the upstream test.
565 * bindings/v8/V8NPUtils.cpp:
566 (WebCore::convertV8ObjectToNPVariant):
568 2010-11-17 Andreas Kling <kling@webkit.org>
570 Reviewed by Kenneth Rohde Christiansen.
572 ScrollView: Let visibleContentRect() return the contentsSize() if paintsEntireContents()
574 * platform/ScrollView.cpp:
575 (WebCore::ScrollView::visibleContentRect):
577 2010-11-17 James Simonsen <simonjam@chromium.org>
579 Reviewed by Tony Chang.
581 [chromium] Fix negative letter spacing in complex text on linux
582 https://bugs.webkit.org/show_bug.cgi?id=49563
584 Test: fast/text/atsui-negative-spacing-features.html
586 * platform/graphics/chromium/FontLinux.cpp: Make spacing signed.
588 2010-11-17 Andreas Kling <kling@webkit.org>
590 Reviewed by Kenneth Rohde Christiansen.
592 ScrollView: Avoid unnecessary work in setScrollPosition() when scrolling is delegated.
594 * platform/ScrollView.cpp:
595 (WebCore::ScrollView::setScrollPosition): If delegatesScrolling(), we never use the
596 newScrollPosition, so move that calculation below the delegation path.
598 2010-11-17 Dave Hyatt <hyatt@apple.com>
600 Reviewed by Sam Weinig.
602 https://bugs.webkit.org/show_bug.cgi?id=48537
604 Fonts with no vertical metrics should synthesize baselines when they appear
605 on lines that do use fonts with vertical metrics. Basically we want to make
606 sure that English text behaves like vertical-align:middle, i.e., its baseline
607 should be treated as though it cuts through the middle of the ascent+descent.
609 The way this works is that each line in the line box tree is labeled as having
610 a baseline type that is either ideographic or alphabetic for the purposes of
611 vertical alignment. A line becomes ideographic if any font with vertical tables
612 is either explicitly specified as the primary font or in any of the used fonts
613 in the text on that line.
615 This baselineType is passed down to computeLogicalBoxHeights and placeBoxesInBlockDirection,
616 and passed to the ascent and descent methods of the fonts that are examined.
617 The underlying Font code selects an appropriate baseline given the type passed in.
619 This patch also rewrites vertical alignment to lop 4 bytes off all RenderInlines and
620 to instead carry around the cached vertical positions for RenderInlines in a new
621 VerticalPositionCache object. This cache only lives for a single layout
622 operation, but it does cache information across all the lines built and placed during the
625 This matches the old behavior, since every call to layoutInlineChildren invalidated
626 all of the vertical positions in all of the RenderInlines anyway.
628 The VerticalPositionCache consists of two HashMaps, and it caches vertical alignment
629 positions for both alphabetic and ideographic baseline types.
631 The vertical-align computation has now been moved out of RenderBoxModelObject and
632 RenderInline and just placed right into verticalPositionForBox in InlineFlowBox.
633 This function has been changed to no longer be recursive when checking parents,
634 and it now relies on the fact that the parent vertical alignment computation result
635 has already been stored in the logicalTop() of that parent's line box. By checking
636 the line box logicalTop() value instead of recurring, the performance of first lines
637 now significantly improves to no longer have O(n^2) behavior in the depth of the line
638 box tree on the first line.
640 All of the baselinePosition functions on the various RenderObjects have been amended
641 to take a FontBaseline as the first argument. This patch does not attempt to fix up
642 MathML or form controls yet and just hardcodes AlphabeticBaselines for those renderers.
644 The RenderTableCell baselinePosition virtual method has been made non-virtual and had
645 all arguments removed, since it actually had no real connection with the rest of the
646 baseline positioning system. Cell baseline positioning works by calling firstLineBoxBaseline,
647 and that method has been patched to use the cached baselineType for the first line box
648 when computing the baseline of that line.
650 Added fast/blockflow/vertical-baseline-alignment.html and fast/blockflow/vertical-align-table-baseline.html.
652 * WebCore.xcodeproj/project.pbxproj:
653 * mathml/RenderMathMLFraction.cpp:
654 (WebCore::RenderMathMLFraction::baselinePosition):
655 * mathml/RenderMathMLFraction.h:
656 * mathml/RenderMathMLOperator.cpp:
657 (WebCore::RenderMathMLOperator::baselinePosition):
658 * mathml/RenderMathMLOperator.h:
659 * mathml/RenderMathMLRow.cpp:
660 (WebCore::RenderMathMLRow::baselinePosition):
661 * mathml/RenderMathMLRow.h:
662 * mathml/RenderMathMLSubSup.cpp:
663 (WebCore::RenderMathMLSubSup::baselinePosition):
664 * mathml/RenderMathMLSubSup.h:
665 * mathml/RenderMathMLUnderOver.cpp:
666 (WebCore::RenderMathMLUnderOver::layout):
667 (WebCore::RenderMathMLUnderOver::baselinePosition):
668 * mathml/RenderMathMLUnderOver.h:
669 * platform/graphics/SimpleFontData.h:
670 * rendering/InlineBox.h:
671 (WebCore::InlineBox::baselinePosition):
672 * rendering/InlineFlowBox.cpp:
673 (WebCore::verticalPositionForBox):
674 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
675 (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
676 * rendering/InlineFlowBox.h:
677 * rendering/InlineTextBox.cpp:
678 (WebCore::InlineTextBox::baselinePosition):
679 * rendering/InlineTextBox.h:
680 * rendering/RenderBlock.cpp:
681 (WebCore::RenderBlock::baselinePosition):
682 (WebCore::RenderBlock::firstLineBoxBaseline):
683 (WebCore::RenderBlock::lastLineBoxBaseline):
684 * rendering/RenderBlock.h:
685 * rendering/RenderBlockLineLayout.cpp:
686 (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
687 (WebCore::RenderBlock::layoutInlineChildren):
688 * rendering/RenderBox.cpp:
689 (WebCore::RenderBox::baselinePosition):
690 * rendering/RenderBox.h:
691 * rendering/RenderBoxModelObject.cpp:
692 * rendering/RenderBoxModelObject.h:
693 * rendering/RenderFileUploadControl.cpp:
694 (WebCore::RenderFileUploadControl::paintObject):
695 * rendering/RenderInline.cpp:
696 (WebCore::RenderInline::RenderInline):
697 (WebCore::RenderInline::baselinePosition):
698 * rendering/RenderInline.h:
699 * rendering/RenderListBox.cpp:
700 (WebCore::RenderListBox::baselinePosition):
701 * rendering/RenderListBox.h:
702 * rendering/RenderListMarker.cpp:
703 (WebCore::RenderListMarker::baselinePosition):
704 * rendering/RenderListMarker.h:
705 * rendering/RenderSlider.cpp:
706 (WebCore::RenderSlider::baselinePosition):
707 * rendering/RenderSlider.h:
708 * rendering/RenderTableCell.cpp:
709 (WebCore::RenderTableCell::baselinePosition):
710 * rendering/RenderTableCell.h:
711 * rendering/RenderTextControlMultiLine.cpp:
712 (WebCore::RenderTextControlMultiLine::baselinePosition):
713 * rendering/RenderTextControlMultiLine.h:
714 * rendering/RootInlineBox.cpp:
715 (WebCore::RootInlineBox::alignBoxesInBlockDirection):
716 * rendering/RootInlineBox.h:
717 (WebCore::RootInlineBox::baselinePosition):
718 * rendering/VerticalPositionCache.h: Added.
719 (WebCore::VerticalPositionCache::VerticalPositionCache):
720 (WebCore::VerticalPositionCache::get):
721 (WebCore::VerticalPositionCache::set):
722 * rendering/svg/SVGInlineTextBox.cpp:
723 (WebCore::SVGInlineTextBox::calculateBoundaries):
725 2010-11-17 Sam Weinig <sam@webkit.org>
727 Reviewed by Anders Carlsson.
729 Add stubbed out ScrollAnimator for the Mac
730 https://bugs.webkit.org/show_bug.cgi?id=49678
732 * WebCore.xcodeproj/project.pbxproj:
733 Add ScrollAnimator.h/cpp.
735 * platform/mac/ScrollAnimatorMac.cpp: Added.
736 (WebCore::ScrollAnimator::create):
737 (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
738 (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
739 (WebCore::ScrollAnimatorMac::scroll):
740 (WebCore::ScrollAnimatorMac::setScrollPositionAndStopAnimation):
741 * platform/mac/ScrollAnimatorMac.h: Added.
742 ScrollAnimatorMac just calls through to the base class for now.
744 2010-11-17 Cris Neckar <cdn@chromium.org>
746 Reviewed by Adam Barth.
748 Modified codepath for object fallback content which has failed to load.
749 Refactored CachedResource error handling to use more granular statuses instead of a boolean value.
750 https://bugs.webkit.org/show_bug.cgi?id=46921
752 Test: fast/html/object-image-nested-fallback.html
754 * html/HTMLObjectElement.cpp:
755 (WebCore::HTMLObjectElement::renderFallbackContent):
756 * loader/cache/CachedCSSStyleSheet.cpp:
757 (WebCore::CachedCSSStyleSheet::error):
758 * loader/cache/CachedCSSStyleSheet.h:
759 * loader/cache/CachedFont.cpp:
760 (WebCore::CachedFont::ensureCustomFontData):
761 (WebCore::CachedFont::error):
762 * loader/cache/CachedFont.h:
763 * loader/cache/CachedImage.cpp:
764 (WebCore::CachedImage::data):
765 (WebCore::CachedImage::error):
766 * loader/cache/CachedImage.h:
767 * loader/cache/CachedResource.cpp:
768 (WebCore::CachedResource::CachedResource):
769 (WebCore::CachedResource::canUseCacheValidator):
770 (WebCore::CachedResource::mustRevalidate):
771 * loader/cache/CachedResource.h:
772 (WebCore::CachedResource::error):
773 (WebCore::CachedResource::httpStatusCodeError):
774 (WebCore::CachedResource::errorOccurred):
775 * loader/cache/CachedScript.cpp:
776 (WebCore::CachedScript::error):
777 * loader/cache/CachedScript.h:
778 * loader/cache/CachedXSLStyleSheet.cpp:
779 (WebCore::CachedXSLStyleSheet::error):
780 * loader/cache/CachedXSLStyleSheet.h:
782 (WebCore::Loader::load):
783 (WebCore::Loader::didFinishLoading):
784 (WebCore::Loader::didFail):
785 (WebCore::Loader::didReceiveData):
787 2010-11-16 Zhenyao Mo <zmo@google.com>
789 Reviewed by Kenneth Russell.
791 WebGLRenderingContext needs to zero textures and renderbuffers
792 https://bugs.webkit.org/show_bug.cgi?id=49355
794 Test: fast/canvas/webgl/uninitialized-test.html
796 * html/canvas/WebGLFramebuffer.cpp:
797 (WebCore::WebGLFramebuffer::onAccess): Use a parameter to decide if renderbuffer initialization is needed.
798 (WebCore::WebGLFramebuffer::initializeRenderbuffers): Don't return false if color buffer doesn't exist.
799 * html/canvas/WebGLFramebuffer.h: Modify onAccess function signature.
800 * html/canvas/WebGLRenderingContext.cpp:
801 (WebCore::WebGLRenderingContext::clear): Call onAccess with an added parameter.
802 (WebCore::WebGLRenderingContext::copyTexImage2D): Ditto.
803 (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
804 (WebCore::WebGLRenderingContext::drawArrays): Ditto.
805 (WebCore::WebGLRenderingContext::drawElements): Ditto.
806 (WebCore::WebGLRenderingContext::readPixels): Ditto.
807 (WebCore::WebGLRenderingContext::texImage2DBase): Create buffer data of 0s if input is null to initialize textures.
809 2010-11-17 Ryosuke Niwa <rniwa@webkit.org>
811 Reviewed by Darin Adler.
813 Merge ScriptElement and ScriptElementData
814 https://bugs.webkit.org/show_bug.cgi?id=49647
818 * dom/AsyncScriptRunner.cpp:
819 (WebCore::AsyncScriptRunner::executeScriptSoon): Takes ScriptElement* instead of ScriptElementData*.
820 (WebCore::AsyncScriptRunner::timerFired): Uses ScriptElement* instead of ScriptElementData*.
821 * dom/AsyncScriptRunner.h:
822 * dom/ScriptElement.cpp:
823 (WebCore::ScriptElement::ScriptElement): Merged with ScriptElementData::ScriptElementData.
824 (WebCore::ScriptElement::~ScriptElement): Merged with ScriptElementData::~ScriptElementData.
825 (WebCore::ScriptElement::insertedIntoDocument): Calls createdByParser, isAsynchronous, requestScript, and scriptContent.
826 (WebCore::ScriptElement::removedFromDocument): Calls stopLoadRequest.
827 (WebCore::ScriptElement::childrenChanged): Calls createdByParser and accesses m_element.
828 (WebCore::ScriptElement::finishParsingChildren): Calls scriptContent.
829 (WebCore::ScriptElement::handleSourceAttribute): Calls ignoresLoadRequest and requestScript.
830 (WebCore::ScriptElement::requestScript): Moved from ScriptElementData; calls dispatchErrorEvent.
831 (WebCore::ScriptElement::evaluateScript): Moved from ScriptElementData.
832 (WebCore::ScriptElement::executeScript): Ditto.
833 (WebCore::ScriptElement::stopLoadRequest): Ditto.
834 (WebCore::ScriptElement::execute): Moved from ScriptElementData; calls dispatchErrorEvent and dispatchLoadEvent.
835 (WebCore::ScriptElement::notifyFinished): Moved from ScriptElementData.
836 (WebCore::ScriptElement::ignoresLoadRequest): Ditto.
837 (WebCore::ScriptElement::shouldExecuteAsJavaScript): Moved from ScriptElementData; calls typeAttributeValue, languageAttributeValue,
838 forAttributeValue, and eventAttributeValue.
839 (WebCore::ScriptElement::scriptCharset): Moved from ScriptElementData.
840 (WebCore::ScriptElement::scriptContent): Ditto.
841 (WebCore::ScriptElement::isAsynchronous): Moved from ScriptElementData; calls sourceAttributeValue and asyncAttributeValue.
842 (WebCore::ScriptElement::isDeferred): Moved from ScriptElementData; calls sourceAttributeValue, asyncAttributeValue,
843 and deferAttributeValue.
844 * dom/ScriptElement.h:
845 (WebCore::ScriptElement::element):
846 (WebCore::ScriptElement::haveFiredLoadEvent):
847 (WebCore::ScriptElement::setHaveFiredLoadEvent):
848 (WebCore::ScriptElement::createdByParser):
849 (WebCore::ScriptElement::isEvaluated):
851 2010-11-17 Tenghui Zhu <ztenghui@google.com>
853 Reviewed by Jeremy Orlow.
855 profileCallback and profileEndCallback should be guarded with ENABLE_JAVASCRIPT_DEBUGGER
856 https://bugs.webkit.org/show_bug.cgi?id=49623
858 No new tests. Just a compiling error fix.
860 * bindings/v8/custom/V8ConsoleCustom.cpp:
861 Add the guard ENABLE_JAVA_SCRIPT_DEBUGGER to profileCallback and profileEndCallback
863 2010-11-17 John Knottenbelt <jknotten@chromium.org>
865 Reviewed by Jeremy Orlow.
867 Introduce GeoNotifierVector typedef for increased readability
868 https://bugs.webkit.org/show_bug.cgi?id=49597
870 * page/Geolocation.cpp:
871 (WebCore::Geolocation::Watchers::getNotifiersVector):
872 (WebCore::Geolocation::sendError):
873 (WebCore::Geolocation::sendPosition):
874 (WebCore::Geolocation::stopTimer):
875 (WebCore::Geolocation::stopTimersForOneShots):
876 (WebCore::Geolocation::stopTimersForWatchers):
877 (WebCore::Geolocation::cancelRequests):
878 (WebCore::Geolocation::cancelAllRequests):
879 (WebCore::Geolocation::handleError):
880 (WebCore::Geolocation::makeSuccessCallbacks):
881 * page/Geolocation.h:
883 2010-11-17 John Knottenbelt <jknotten@chromium.org>
885 Reviewed by Jeremy Orlow.
887 Convert correctly between GeolocationPosition and Geoposition
889 https://bugs.webkit.org/show_bug.cgi?id=48518
891 Test: fast/dom/Geolocation/timestamp.html
893 * page/Geolocation.cpp:
894 (WebCore::createGeoposition):
896 2010-11-17 Chang Shu <chang.shu@nokia.com>
898 Reviewed by Antonio Gomes.
900 [Mac] Suppress single select popup menu when spatial navigation is enabled on Mac.
901 This makes spatial navigation work properly for single select box.
903 Test: fast/events/spatial-navigation/snav-single-select.html
905 * dom/SelectElement.cpp:
906 (WebCore::nextValidIndex):
907 (WebCore::SelectElement::menuListDefaultEventHandler):
909 2010-11-17 Satish Sampath <satish@chromium.org>
911 Reviewed by Jeremy Orlow.
913 Clear the speech input mock explicitly before each test.
914 https://bugs.webkit.org/show_bug.cgi?id=49660
916 * platform/mock/SpeechInputClientMock.cpp:
917 (WebCore::SpeechInputClientMock::clearResults): Added clearResults method.
918 * platform/mock/SpeechInputClientMock.h:
920 2010-11-17 Alexander Pavlov <apavlov@chromium.org>
922 [Chromium] Unreviewed, fix Chromium-Mac build from r72189.
924 * css/CSSPrimitiveValue.cpp:
925 (WebCore::CSSPrimitiveValue::getDoubleValue):
927 2010-11-17 Hans Wennborg <hans@chromium.org>
929 Reviewed by Jeremy Orlow.
931 IndexedDB: IDBKey::whereSyntax should impose conditions on all columns
932 https://bugs.webkit.org/show_bug.cgi?id=49601
934 The WHERE clause should specifiy a condition for each key column to
935 make sure that the ObjectStoreData_composit index can be used when
936 querying the object store based on key. Not using the index causes
937 severe performance degradation for common IDB operations.
939 * storage/IDBKey.cpp:
940 (WebCore::IDBKey::whereSyntax):
942 2010-11-17 Eric Uhrhane <ericu@chromium.org>
944 Reviewed by David Levin.
946 [Chromium] implementation of async FileWriter for workers
947 https://bugs.webkit.org/show_bug.cgi?id=47681
949 Tests are in a separate changelist.
951 * platform/CrossThreadCopier.h: Changed CrossThreadCopier[Base] to support PassRefPtrs
953 2010-11-17 Alejandro G. Castro <alex@igalia.com>
955 Reviewed by Martin Robinson.
957 [gtk] r69119 modified just the gtk2 version of the
958 scrolled_window_paint function but not the gtk3 version
959 https://bugs.webkit.org/show_bug.cgi?id=49585
961 Use gtk_paint_shadow the same as the actual code from GTK+. Avoid
962 using state and use the same values we are using for gtk2 in the
965 * platform/gtk/ScrollbarThemeGtk.cpp:
966 (WebCore::ScrollbarThemeGtk::paintButton): Initialized the
967 depressed attribute of the state variable to avoid using it
968 without initialization.
969 * platform/gtk/gtk3drawing.c:
970 (moz_gtk_scrolled_window_paint):
972 2010-11-16 Alexander Pavlov <apavlov@chromium.org>
974 Reviewed by Simon Fraser.
976 CSSPrimitiveValue.getFloatValue does not convert sizes
977 https://bugs.webkit.org/show_bug.cgi?id=35770
979 Implemented all same-category unit conversions (length, angle, time, frequency) and retained
980 absolute-relative (cm, mm, in, pt, pc) length conversions intact.
981 Illegal unit conversion attempts will throw an INVALID_ACCESS_ERR DOMException.
983 * css/CSSPrimitiveValue.cpp:
984 (WebCore::unitCategory):
985 (WebCore::conversionToCanonicalUnitsScaleFactor):
986 (WebCore::CSSPrimitiveValue::getDoubleValue):
987 (WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory):
988 (WebCore::CSSPrimitiveValue::getDoubleValueInternal):
989 (WebCore::CSSPrimitiveValue::getIdent):
990 * css/CSSPrimitiveValue.h:
991 (WebCore::CSSPrimitiveValue::getFloatValue):
992 (WebCore::CSSPrimitiveValue::getIntValue):
994 2010-11-17 Ademar de Souza Reis Jr. <ademar.reis@openbossa.org>
996 Reviewed by Andreas Kling.
998 Document::nodesFromRect() has wrong source code documentation
999 https://bugs.webkit.org/show_bug.cgi?id=49610
1001 * dom/Document.h: fix nodesFromRect() documentation
1003 2010-11-17 Alexis Menard <alexis.menard@nokia.com>, Simon Hausmann <simon.hausmann@nokia.com>
1005 Reviewed by Kenneth Christiansen, Tor Arne Vestbø.
1007 [Qt] Add support for use GStreamer with the Qt build
1009 Make it possible to use gstreamer with the Qt build via the USE_GSTREAMER macro. The
1010 integration is rather basic at this point, allowing for software based rendering
1011 only at the moment. AC integration and fullscreen playback is still missing.
1013 * WebCore.pro: Added a bunch of gstreamer files to the build and guard it as a
1014 build option with the USE_GSTREAMER macro.
1015 * platform/graphics/MediaPlayer.cpp:
1016 (WebCore::installedMediaEngines): Don't use the generic media player registration
1017 when using GStreamer. These #ifdefs should be removed, but the gstreamer folks want
1018 to be able to build with gstreamer _and_ another backend simultaenously.
1019 * platform/graphics/gstreamer/ImageGStreamer.h:
1020 * platform/graphics/gstreamer/ImageGStreamerQt.cpp: Added.
1021 (ImageGStreamer::createImage):
1022 (ImageGStreamer::ImageGStreamer):
1023 (ImageGStreamer::~ImageGStreamer):
1024 * platform/graphics/gstreamer/PlatformVideoWindowPrivate.h: Added.
1025 * platform/graphics/gstreamer/PlatformVideoWindowQt.cpp: Added.
1026 (FullScreenVideoWindow::FullScreenVideoWindow):
1027 (FullScreenVideoWindow::keyPressEvent):
1028 (FullScreenVideoWindow::event):
1029 (PlatformVideoWindow::PlatformVideoWindow):
1030 (PlatformVideoWindow::~PlatformVideoWindow):
1031 (PlatformVideoWindow::prepareForOverlay):
1033 2010-11-17 Alexander Pavlov <apavlov@chromium.org>
1035 Reviewed by Pavel Feldman.
1037 Web Inspector: [REGRESSION] editing disabled styles breaks style bodies.
1038 https://bugs.webkit.org/show_bug.cgi?id=49602
1040 * inspector/InspectorStyleSheet.cpp:
1041 (WebCore::InspectorStyle::setPropertyText):
1042 * inspector/front-end/StylesSidebarPane.js:
1043 (WebInspector.StylePropertyTreeElement.prototype.get name):
1044 (WebInspector.StylePropertyTreeElement.prototype.get priority):
1045 (WebInspector.StylePropertyTreeElement.prototype.get value):
1047 2010-11-16 Adam Roben <aroben@apple.com>
1049 Move QTMovieWin's settings into a vsprops file
1051 Fixes <http://webkit.org/b/49644> QTMovieWin should use a vsprops file
1053 Reviewed by Steve Falkenburg.
1055 * WebCore.vcproj/QTMovieWin.vcproj:
1056 * WebCore.vcproj/QTMovieWinCommon.vsprops: Added.
1058 2010-11-16 Andy Estes <aestes@apple.com>
1060 Reviewed by Dave Hyatt.
1062 WebKit mishandles line boxes where the content height exceeds the
1063 specified line-height.
1064 https://bugs.webkit.org/show_bug.cgi?id=49410
1066 If a line height is explicitly specified on a text box and fallback
1067 fonts are in use, only the primary font should be considered when
1068 computing the box's ascent and descent. This prevents the inline box
1069 from being sized larger than the specified line height.
1071 This patch also fixes a math error when computing a used font's descent
1072 in the case where line height isn't explicitly set. This change results
1073 in a number of layout tests needing re-baselining.
1075 Test: fast/css/line-height-determined-by-primary-font.html
1077 * rendering/InlineFlowBox.cpp:
1078 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
1080 2010-11-15 Ryosuke Niwa <rniwa@webkit.org>
1082 Reviewed by Darin Adler.
1084 ScriptElementData should be a private member of ScriptElement
1085 https://bugs.webkit.org/show_bug.cgi?id=49578
1087 Privatized m_data of ScriptElement. Added haveFiredLoadEvent, setHaveFiredLoadEvent, createdByParser,
1088 and isEvaluated to ScriptElement to proxy calls from HTMLScriptElement and SVGScriptElement to ScriptElementData.
1090 No tests are added since this is a cleanup.
1092 * dom/ScriptElement.h:
1093 (WebCore::ScriptElement::haveFiredLoadEvent): Added.
1094 (WebCore::ScriptElement::setHaveFiredLoadEvent): Added.
1095 (WebCore::ScriptElement::createdByParser): Added.
1096 (WebCore::ScriptElement::isEvaluated): Added.
1097 * html/HTMLScriptElement.cpp:
1098 (WebCore::HTMLScriptElement::dispatchLoadEvent): Calls haveFiredLoadEvent and setHaveFiredLoadEvent.
1099 (WebCore::HTMLScriptElement::cloneElementWithoutAttributesAndChildren): Calls isEvaluated.
1100 * html/HTMLScriptElement.h:
1101 (WebCore::HTMLScriptElement::text): Calls scriptContent.
1102 (WebCore::HTMLScriptElement::haveFiredLoadEvent): Calls haveFiredLoadEvent.
1103 * svg/SVGScriptElement.cpp:
1104 (WebCore::SVGScriptElement::svgAttributeChanged): Calls haveFiredLoadEvent and createdByParser.
1105 (WebCore::SVGScriptElement::insertedIntoDocument): Calls createdByParser.
1106 (WebCore::SVGScriptElement::finishParsingChildren): Calls setHaveFiredLoadEvent.
1107 (WebCore::SVGScriptElement::haveLoadedRequiredResources): Ditto.
1108 (WebCore::SVGScriptElement::dispatchLoadEvent): Calls haveFiredLoadEvent.
1109 (WebCore::SVGScriptElement::cloneElementWithoutAttributesAndChildren): Calls createdByParser,
1110 haveFiredLoadEvent, and setHaveFiredLoadEvent.
1112 2010-11-16 Antti Koivisto <antti@apple.com>
1114 Reviewed by Darin Adler.
1116 https://bugs.webkit.org/show_bug.cgi?id=49320
1117 Minor ResourceLoadScheduler cleanups
1119 * loader/ResourceLoadScheduler.cpp:
1120 (WebCore::ResourceLoadScheduler::scheduleLoad):
1121 (WebCore::ResourceLoadScheduler::servePendingRequests):
1122 (WebCore::ResourceLoadScheduler::HostInformation::~HostInformation):
1123 (WebCore::ResourceLoadScheduler::HostInformation::remove):
1124 (WebCore::ResourceLoadScheduler::HostInformation::hasRequests):
1125 * loader/ResourceLoadScheduler.h:
1127 2010-11-16 Dave Hyatt <hyatt@apple.com>
1129 Reviewed by Sam Weinig.
1131 Add a baselineType member to RootInlineBox that caches whether the default baseline behavior for that
1132 line should be ideographic or alphabetic. Add a requiresIdeographicsBaseline recursive function to
1133 InlineFlowBox that scans for the use of any vertical fonts.
1135 * rendering/InlineFlowBox.cpp:
1136 (WebCore::InlineFlowBox::requiresIdeographicBaseline):
1137 * rendering/InlineFlowBox.h:
1138 * rendering/RootInlineBox.cpp:
1139 (WebCore::RootInlineBox::RootInlineBox):
1140 (WebCore::RootInlineBox::alignBoxesInBlockDirection):
1141 * rendering/RootInlineBox.h:
1142 (WebCore::RootInlineBox::baselineType):
1144 2010-11-16 Dave Hyatt <hyatt@apple.com>
1146 Reviewed by Sam Weinig.
1148 Add FontBaseline.h and make ascent and descent take a baseline parameter so that both an
1149 alphabetic and ideographic baseline can be requested.
1151 * WebCore.xcodeproj/project.pbxproj:
1152 * platform/graphics/Font.h:
1153 (WebCore::Font::ascent):
1154 (WebCore::Font::descent):
1155 * platform/graphics/FontBaseline.h: Added.
1156 * platform/graphics/SimpleFontData.h:
1157 (WebCore::SimpleFontData::ascent):
1158 (WebCore::SimpleFontData::descent):
1159 (WebCore::SimpleFontData::height):
1161 2010-11-16 Antti Koivisto <koivisto@iki.fi>
1163 Reviewed by Adam Barth.
1165 https://bugs.webkit.org/show_bug.cgi?id=31223
1166 Make primitive values immutable.
1168 Make CSSPrimitiveValue setFloatValue and setStringValue always throw NO_MODIFICATION_ALLOWED exception.
1171 - these setters never worked correctly, style was not invalidated so changing values would have no effect on rendering
1172 - computed style is immutable in all cases, and it wasn't
1173 - no other engine seems to support mutable primitives, as a result there is no content using these APIs
1174 - mutable primitive values are pointless, the usual way to change the value of a propertly is to replace it with a new value
1175 - allowing mutation of primitive values makes optimizations harder
1177 * css/CSSPrimitiveValue.cpp:
1178 (WebCore::CSSPrimitiveValue::setFloatValue):
1179 (WebCore::CSSPrimitiveValue::setStringValue):
1181 2010-11-16 Steve Falkenburg <sfalken@apple.com>
1183 Reviewed by Adam Roben.
1185 Disable LTCG for Windows Release builds. Add new Release_LTCG configuration.
1186 https://bugs.webkit.org/show_bug.cgi?id=49632
1188 * WebCore.vcproj/QTMovieWin.vcproj:
1189 * WebCore.vcproj/WebCore.make:
1190 * WebCore.vcproj/WebCore.sln:
1191 * WebCore.vcproj/WebCore.vcproj:
1193 2010-11-16 Anders Carlsson <andersca@apple.com>
1195 Reviewed by John Sullivan.
1197 Set the original URL for downloads
1198 https://bugs.webkit.org/show_bug.cgi?id=49628
1200 Export symbols needed by WebKit2.
1204 2010-11-16 Dave Hyatt <hyatt@apple.com>
1206 Reviewed by Dan Bernstein.
1208 https://bugs.webkit.org/show_bug.cgi?id=11004
1210 font-size:0 is ignored. Remove the minimum font size of 1 in CSSStyleSelector.
1211 Change the pref value for minimum font size from 1 to 0. Make sure to never use the NSFont's size,
1212 since it doesn't honor a size of 0. Instead pass the size in to the FontPlatformData(NSFont*) version
1213 of the constructor rather than using [NSFont pointSize].
1215 https://bugs.webkit.org/show_bug.cgi?id=49582
1217 Negative leading is not handled correctly. There are two bugs here. The first is that
1218 maxAscent and maxDescent can be negative, so we need a notion of whether or not we have
1219 set them before so that we can allow them to be < 0.
1221 The second issue is that we should understand where fonts will end up relative to
1222 our baseline (excluding line height), and only allow those boxes to impact ascent and
1223 descent if the actual font box (without factoring in line height) is above or below the
1224 root line box baseline.
1226 Added fast/css/negative-leading.html
1228 These two bug fixes have to land together to keep the Acid 3 test rendering correctly.
1231 * css/CSSStyleSelector.cpp:
1232 (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
1233 * platform/graphics/cocoa/FontPlatformData.h:
1234 * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
1235 (WebCore::FontPlatformData::FontPlatformData):
1236 * platform/graphics/mac/FontCacheMac.mm:
1237 (WebCore::FontCache::getFontDataForCharacters):
1238 (WebCore::FontCache::createFontPlatformData):
1239 * platform/graphics/mac/SimpleFontDataMac.mm:
1240 (WebCore::SimpleFontData::smallCapsFontData):
1241 * rendering/InlineFlowBox.cpp:
1242 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
1243 * rendering/InlineFlowBox.h:
1244 * rendering/RootInlineBox.cpp:
1245 (WebCore::RootInlineBox::alignBoxesInBlockDirection):
1247 2010-11-16 Darin Adler <darin@apple.com>
1249 https://bugs.webkit.org/show_bug.cgi?id=49611
1250 REGRESSION (r72115): 5 layout tests are broken
1252 * loader/FrameLoader.cpp:
1253 (WebCore::FrameLoader::loadFrameRequest): Roll change from
1254 https://bugs.webkit.org/show_bug.cgi?id=48603 out. I'll roll
1255 it back in after fixing the failing tests.
1257 2010-11-16 Dan Bernstein <mitz@apple.com>
1259 Reviewed by Simon Fraser.
1261 <rdar://problem/8672000> REGRESSION (r72040): Error image with alt text can cause style to be frozen in a subtree
1262 https://bugs.webkit.org/show_bug.cgi?id=49579
1264 r72040 introduced a call to setNeedsStyleRecalc() from RenderImage::imageChanged(). When imageChanged()
1265 got called beneath recalcStyle() on some ancestor element, the result was that the ancestor’s
1266 childNeedsStyleRecalc flag got cleared, but its descendants all the way down to the image did not.
1267 Thereafter, setNeedsStyleRecalc() would fail to propagate from that subtree up to the root. The fix
1268 is to avoid the newly-added setNeedsStyleRecalc() in most cases, including during reclacStyle(), and
1269 just keep it for when it is needed.
1271 Tests: fast/block/float/015.html
1272 fast/images/style-access-during-imageChanged-style-freeze.html
1275 (WebCore::Document::isPendingStyleRecalc): Added.
1277 * rendering/RenderImage.cpp:
1278 (WebCore::RenderImage::imageChanged): Only defer intrinsic size compoutation if a style recalc
1279 is coming (indicating that current style() is stale).
1281 2010-11-11 Zhenyao Mo <zmo@google.com>
1283 Reviewed by Kenneth Russell.
1285 Implement UNPACK_COLORSPACE_CONVERSION_WEBGL
1286 https://bugs.webkit.org/show_bug.cgi?id=47196
1288 * html/canvas/WebGLRenderingContext.cpp:
1289 (WebCore::WebGLRenderingContext::texImage2DImpl): Apply UNPACK_COLORSPACE_CONVERSION settings to image uploading.
1290 (WebCore::WebGLRenderingContext::texSubImage2DImpl): Ditto.
1291 * platform/graphics/GraphicsContext3D.cpp:
1292 (WebCore::GraphicsContext3D::extractImageData): Ditto.
1293 * platform/graphics/GraphicsContext3D.h:
1294 * platform/graphics/ImageSource.cpp:
1295 (WebCore::ImageSource::ImageSource): Add ignoreGammaColorProfile parameter.
1296 (WebCore::ImageSource::setData): Ditto.
1297 * platform/graphics/ImageSource.h:
1298 * platform/graphics/cg/GraphicsContext3DCG.cpp:
1299 (WebCore::GraphicsContext3D::getImageData): Ditto.
1300 * platform/graphics/cg/ImageSourceCG.cpp:
1301 (WebCore::ImageSource::ImageSource): Ditto.
1302 * platform/graphics/qt/GraphicsContext3DQt.cpp:
1303 (WebCore::GraphicsContext3D::getImageData): Ditto.
1304 * platform/graphics/qt/ImageDecoderQt.cpp:
1305 (WebCore::ImageDecoder::create): Ditto.
1306 (WebCore::ImageDecoderQt::ImageDecoderQt): Ditto.
1307 * platform/graphics/qt/ImageDecoderQt.h:
1308 * platform/graphics/skia/GraphicsContext3DSkia.cpp:
1309 (WebCore::GraphicsContext3D::getImageData): Ditto.
1310 * platform/image-decoders/ImageDecoder.cpp:
1311 (WebCore::ImageDecoder::create): Ditto.
1312 * platform/image-decoders/ImageDecoder.h:
1313 (WebCore::ImageDecoder::ImageDecoder): Ditto.
1314 * platform/image-decoders/bmp/BMPImageDecoder.cpp:
1315 (WebCore::BMPImageDecoder::BMPImageDecoder):
1316 * platform/image-decoders/bmp/BMPImageDecoder.h:
1317 * platform/image-decoders/gif/GIFImageDecoder.cpp:
1318 (WebCore::GIFImageDecoder::GIFImageDecoder): Ditto.
1319 * platform/image-decoders/gif/GIFImageDecoder.h:
1320 * platform/image-decoders/ico/ICOImageDecoder.cpp:
1321 (WebCore::ICOImageDecoder::ICOImageDecoder): Ditto.
1322 (WebCore::ICOImageDecoder::decodeAtIndex): Ditto.
1323 * platform/image-decoders/ico/ICOImageDecoder.h:
1324 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1325 (WebCore::JPEGImageDecoder::JPEGImageDecoder): Ditto.
1326 * platform/image-decoders/jpeg/JPEGImageDecoder.h:
1327 * platform/image-decoders/png/PNGImageDecoder.cpp:
1328 (WebCore::PNGImageDecoder::PNGImageDecoder): Ditto.
1329 (WebCore::PNGImageDecoder::headerAvailable): Ignore gamma settings if ignoreGammaAndColorProfile is true.
1330 * platform/image-decoders/png/PNGImageDecoder.h:
1331 * platform/image-decoders/webp/WEBPImageDecoder.cpp:
1332 (WebCore::WEBPImageDecoder::WEBPImageDecoder): Add ignoreGammaAndColorProfile parameter.
1333 * platform/image-decoders/webp/WEBPImageDecoder.h:
1335 2010-11-16 Eric Carlson <eric.carlson@apple.com>
1337 Unreviewed attempt to fix GTK build after http://trac.webkit.org/changeset/72117
1339 * platform/graphics/MediaPlayer.cpp:
1340 (WebCore::installedMediaEngines):
1342 2010-11-12 Zhenyao Mo <zmo@google.com>
1344 Reviewed by Kenneth Russell.
1346 Refactor GL backend flags
1347 https://bugs.webkit.org/show_bug.cgi?id=49460
1349 * html/canvas/WebGLRenderingContext.cpp:
1350 (WebCore::WebGLRenderingContext::WebGLRenderingContext): Call setupFlags().
1351 (WebCore::WebGLRenderingContext::initializeNewContext): Remove flag initialization to setupFlags().
1352 (WebCore::WebGLRenderingContext::setupFlags): Initialize GL flags.
1353 (WebCore::WebGLRenderingContext::getRenderbufferParameter): Use accessor function instead of member.
1354 (WebCore::WebGLRenderingContext::renderbufferStorage): Ditto.
1355 * html/canvas/WebGLRenderingContext.h: Use flags set in setupFlags instead of querying underlying GL implementation.
1356 (WebCore::WebGLRenderingContext::isGLES2Compliant):
1357 (WebCore::WebGLRenderingContext::isGLES2NPOTStrict):
1358 (WebCore::WebGLRenderingContext::isErrorGeneratedOnOutOfBoundsAccesses):
1359 (WebCore::WebGLRenderingContext::isResourceSafe):
1360 (WebCore::WebGLRenderingContext::isDepthStencilSupported):
1361 * platform/graphics/Extensions3D.h: Add NPOT extension.
1362 * platform/graphics/GraphicsContext3D.h: Remove GL flag queries at this level.
1363 * platform/graphics/chromium/Extensions3DChromium.h: Add resource_safe and strict_attribs extensions.
1364 * platform/graphics/mac/GraphicsContext3DMac.mm: Remove GL flag queries at this level.
1366 2010-11-16 Kenneth Russell <kbr@google.com>
1368 Reviewed by Dimitri Glazkov.
1370 WebIDL conversions from string to number and array to number should not generate TypeError
1371 https://bugs.webkit.org/show_bug.cgi?id=49218
1373 Recent SVG-related changes to the StrictTypeChecking extended attribute in
1374 CodeGeneratorJS.pm and CodeGeneratorV8.pm were not correct according to the Web IDL and
1375 ECMA-262 specifications. In particular, when an attribute or function argument is specified
1376 as a number type (floating-point or integer), passing in a String or object is not supposed
1377 to raise an exception.
1379 The original intent of the StrictTypeChecking extended attribute was to properly raise
1380 TypeError when an interface type is required, but the supplied object does not implement the
1381 interface type (http://dev.w3.org/2006/webapi/WebIDL/#es-interface). Historically WebKit has
1382 silently passed null to the C++ bindings in this case. The handling of strings in the
1383 original StrictTypeChecking implementation was also incorrect, raising exceptions when it
1386 The semantics of StrictTypeChecking have been changed to enforce only the restrictions on
1387 interface types. The V8 custom bindings for WebGL have been updated to match the behavior of
1388 the autogenerated code.
1390 Test: fast/canvas/webgl/type-conversion-test.html
1392 * bindings/scripts/CodeGeneratorJS.pm:
1393 * bindings/scripts/CodeGeneratorV8.pm:
1394 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1395 (WebCore::getObjectParameter):
1396 (WebCore::V8WebGLRenderingContext::getFramebufferAttachmentParameterCallback):
1397 (WebCore::V8WebGLRenderingContext::getParameterCallback):
1398 (WebCore::V8WebGLRenderingContext::getProgramParameterCallback):
1399 (WebCore::V8WebGLRenderingContext::getShaderParameterCallback):
1400 (WebCore::vertexAttribAndUniformHelperf):
1402 2010-11-16 Alexey Proskuryakov <ap@apple.com>
1406 * DerivedSources.cpp: Removing CSS Variables generated files.
1408 2010-11-16 Eric Carlson <eric.carlson@apple.com>
1410 Reviewed by John Sullivan.
1412 getMIMEType(s)ForExtension should consult system mapping
1413 https://bugs.webkit.org/show_bug.cgi?id=49497
1415 No new tests possible.
1417 * platform/MIMETypeRegistry.cpp:
1418 (WebCore::MIMETypeRegistry::getMediaMIMETypeForExtension): Add the type returned by getMIMETypeForExtension.
1419 Put the result of mediaMIMETypeMap().get() in a local variable and test instead of calling
1420 constains() and then get().
1421 (WebCore::MIMETypeRegistry::getMediaMIMETypesForExtension): Ditto.
1423 2010-11-16 Eric Carlson <eric.carlson@apple.com>
1425 Reviewed by Darin Adler.
1427 Rename QTKit based media engine class name
1428 https://bugs.webkit.org/show_bug.cgi?id=36663
1430 No new tests as this just renames a class and restructures existing code.
1432 * platform/graphics/MediaPlayer.cpp:
1433 (WebCore::installedMediaEngines): Use a macro with the platform media player class name to reduce the
1434 number of #ifs in the code.
1436 * platform/graphics/mac/MediaPlayerPrivateQTKit.h: Rename MediaPlayerPrivate to MediaPlayerPrivateQTKit.
1437 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1438 (WebCore::MediaPlayerPrivateQTKit::create):
1439 (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine):
1440 (WebCore::MediaPlayerPrivateQTKit::MediaPlayerPrivateQTKit):
1441 (WebCore::MediaPlayerPrivateQTKit::~MediaPlayerPrivateQTKit):
1442 (WebCore::MediaPlayerPrivateQTKit::createQTMovie):
1443 (WebCore::MediaPlayerPrivateQTKit::createQTMovieView):
1444 (WebCore::MediaPlayerPrivateQTKit::detachQTMovieView):
1445 (WebCore::MediaPlayerPrivateQTKit::createQTVideoRenderer):
1446 (WebCore::MediaPlayerPrivateQTKit::destroyQTVideoRenderer):
1447 (WebCore::MediaPlayerPrivateQTKit::createQTMovieLayer):
1448 (WebCore::MediaPlayerPrivateQTKit::destroyQTMovieLayer):
1449 (WebCore::MediaPlayerPrivateQTKit::currentRenderingMode):
1450 (WebCore::MediaPlayerPrivateQTKit::preferredRenderingMode):
1451 (WebCore::MediaPlayerPrivateQTKit::setUpVideoRendering):
1452 (WebCore::MediaPlayerPrivateQTKit::tearDownVideoRendering):
1453 (WebCore::MediaPlayerPrivateQTKit::hasSetUpVideoRendering):
1454 (WebCore::MediaPlayerPrivateQTKit::createQTTime):
1455 (WebCore::MediaPlayerPrivateQTKit::resumeLoad):
1456 (WebCore::MediaPlayerPrivateQTKit::load):
1457 (WebCore::MediaPlayerPrivateQTKit::loadInternal):
1458 (WebCore::MediaPlayerPrivateQTKit::prepareToPlay):
1459 (WebCore::MediaPlayerPrivateQTKit::platformMedia):
1460 (WebCore::MediaPlayerPrivateQTKit::platformLayer):
1461 (WebCore::MediaPlayerPrivateQTKit::play):
1462 (WebCore::MediaPlayerPrivateQTKit::pause):
1463 (WebCore::MediaPlayerPrivateQTKit::duration):
1464 (WebCore::MediaPlayerPrivateQTKit::currentTime):
1465 (WebCore::MediaPlayerPrivateQTKit::seek):
1466 (WebCore::MediaPlayerPrivateQTKit::doSeek):
1467 (WebCore::MediaPlayerPrivateQTKit::cancelSeek):
1468 (WebCore::MediaPlayerPrivateQTKit::seekTimerFired):
1469 (WebCore::MediaPlayerPrivateQTKit::paused):
1470 (WebCore::MediaPlayerPrivateQTKit::seeking):
1471 (WebCore::MediaPlayerPrivateQTKit::naturalSize):
1472 (WebCore::MediaPlayerPrivateQTKit::hasVideo):
1473 (WebCore::MediaPlayerPrivateQTKit::hasAudio):
1474 (WebCore::MediaPlayerPrivateQTKit::supportsFullscreen):
1475 (WebCore::MediaPlayerPrivateQTKit::setVolume):
1476 (WebCore::MediaPlayerPrivateQTKit::hasClosedCaptions):
1477 (WebCore::MediaPlayerPrivateQTKit::setClosedCaptionsVisible):
1478 (WebCore::MediaPlayerPrivateQTKit::setRate):
1479 (WebCore::MediaPlayerPrivateQTKit::setPreservesPitch):
1480 (WebCore::MediaPlayerPrivateQTKit::buffered):
1481 (WebCore::MediaPlayerPrivateQTKit::maxTimeSeekable):
1482 (WebCore::MediaPlayerPrivateQTKit::maxTimeLoaded):
1483 (WebCore::MediaPlayerPrivateQTKit::bytesLoaded):
1484 (WebCore::MediaPlayerPrivateQTKit::totalBytes):
1485 (WebCore::MediaPlayerPrivateQTKit::cancelLoad):
1486 (WebCore::MediaPlayerPrivateQTKit::cacheMovieScale):
1487 (WebCore::MediaPlayerPrivateQTKit::isReadyForVideoSetup):
1488 (WebCore::MediaPlayerPrivateQTKit::prepareForRendering):
1489 (WebCore::MediaPlayerPrivateQTKit::updateStates):
1490 (WebCore::MediaPlayerPrivateQTKit::loadStateChanged):
1491 (WebCore::MediaPlayerPrivateQTKit::rateChanged):
1492 (WebCore::MediaPlayerPrivateQTKit::sizeChanged):
1493 (WebCore::MediaPlayerPrivateQTKit::timeChanged):
1494 (WebCore::MediaPlayerPrivateQTKit::didEnd):
1495 (WebCore::MediaPlayerPrivateQTKit::setSize):
1496 (WebCore::MediaPlayerPrivateQTKit::setVisible):
1497 (WebCore::MediaPlayerPrivateQTKit::hasAvailableVideoFrame):
1498 (WebCore::MediaPlayerPrivateQTKit::repaint):
1499 (WebCore::MediaPlayerPrivateQTKit::paintCurrentFrameInContext):
1500 (WebCore::MediaPlayerPrivateQTKit::paint):
1501 (WebCore::MediaPlayerPrivateQTKit::getSupportedTypes):
1502 (WebCore::MediaPlayerPrivateQTKit::supportsType):
1503 (WebCore::MediaPlayerPrivateQTKit::isAvailable):
1504 (WebCore::MediaPlayerPrivateQTKit::disableUnsupportedTracks):
1505 (WebCore::MediaPlayerPrivateQTKit::sawUnsupportedTracks):
1506 (WebCore::MediaPlayerPrivateQTKit::supportsAcceleratedRendering):
1507 (WebCore::MediaPlayerPrivateQTKit::acceleratedRenderingStateChanged):
1508 (WebCore::MediaPlayerPrivateQTKit::hasSingleSecurityOrigin):
1509 (WebCore::MediaPlayerPrivateQTKit::movieLoadType):
1510 (WebCore::MediaPlayerPrivateQTKit::setPreload):
1511 (WebCore::MediaPlayerPrivateQTKit::mediaTimeForTimeValue):
1512 (-[WebCoreMovieObserver initWithCallback:]):
1514 2010-11-16 Alexey Proskuryakov <ap@apple.com>
1516 Reviewed by Dave Hyatt.
1518 https://bugs.webkit.org/show_bug.cgi?id=49483
1519 Remove CSS Variable support
1521 * Android.derived.jscbindings.mk:
1522 * Android.derived.v8bindings.mk:
1525 * DerivedSources.make:
1530 * WebCore.vcproj/WebCore.vcproj:
1531 * WebCore.xcodeproj/project.pbxproj:
1532 * bindings/js/JSCSSRuleCustom.cpp:
1534 * bindings/v8/custom/V8DOMWindowCustom.cpp
1535 * bindings/objc/DOMCSS.mm:
1537 * bindings/scripts/CodeGeneratorJS.pm:
1538 * css/CSSComputedStyleDeclaration.cpp:
1539 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1541 * css/CSSMutableStyleDeclaration.cpp:
1542 (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
1543 (WebCore::CSSMutableStyleDeclaration::removeProperty):
1544 (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
1545 (WebCore::CSSMutableStyleDeclaration::copy):
1546 * css/CSSMutableStyleDeclaration.h:
1547 (WebCore::CSSMutableStyleDeclaration::create):
1548 * css/CSSParser.cpp:
1549 (WebCore::CSSParser::CSSParser):
1550 (WebCore::CSSParser::~CSSParser):
1551 (WebCore::CSSParser::parseValue):
1552 (WebCore::CSSParser::lex):
1553 (WebCore::CSSParser::recheckAtKeyword):
1554 (WebCore::CSSParser::text):
1555 (WebCore::CSSParser::createMediaRule):
1556 (WebCore::CSSParser::createKeyframesRule):
1557 (WebCore::CSSParser::createStyleRule):
1558 (WebCore::CSSParser::createFontFaceRule):
1559 (WebCore::CSSParser::addNamespace):
1560 (WebCore::CSSParser::createPageRule):
1562 * css/CSSParserValues.cpp:
1563 (WebCore::CSSParserValueList::addValue):
1564 (WebCore::CSSParserValueList::deleteValueAt):
1565 (WebCore::CSSParserValue::createCSSValue):
1566 * css/CSSParserValues.h:
1567 (WebCore::CSSParserValueList::CSSParserValueList):
1568 * css/CSSPrimitiveValue.cpp:
1569 (WebCore::CSSPrimitiveValue::cleanup):
1570 (WebCore::CSSPrimitiveValue::getStringValue):
1571 (WebCore::CSSPrimitiveValue::cssText):
1572 (WebCore::CSSPrimitiveValue::parserValue):
1573 * css/CSSPrimitiveValue.h:
1574 * css/CSSProperty.cpp:
1575 (WebCore::CSSProperty::cssText):
1576 * css/CSSPropertyNames.in:
1579 * css/CSSStyleDeclaration.cpp:
1580 (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
1581 * css/CSSStyleSelector.cpp:
1582 (WebCore::CSSStyleSelector::addMatchedDeclaration):
1583 (WebCore::CSSRuleSet::addRulesFromSheet):
1584 (WebCore::CSSStyleSelector::applyProperty):
1585 * css/CSSStyleSelector.h:
1587 * css/CSSVariableDependentValue.cpp: Removed.
1588 * css/CSSVariableDependentValue.h: Removed.
1589 * css/CSSVariablesDeclaration.cpp: Removed.
1590 * css/CSSVariablesDeclaration.h: Removed.
1591 * css/CSSVariablesDeclaration.idl: Removed.
1592 * css/CSSVariablesRule.cpp: Removed.
1593 * css/CSSVariablesRule.h: Removed.
1594 * css/CSSVariablesRule.idl: Removed.
1596 (WebCore::StyleBase::isMediaRule):
1597 * css/tokenizer.flex:
1598 * page/DOMWindow.idl:
1600 2010-11-16 Darin Adler <darin@apple.com>
1602 Reviewed by Sam Weinig.
1604 https://bugs.webkit.org/show_bug.cgi?id=48603
1605 Boolean logic mistake in local file check
1607 * loader/FrameLoader.cpp:
1608 (WebCore::FrameLoader::loadFrameRequest): Fix logic so that both checks have to pass
1609 before accepting a local file load.
1611 2010-11-15 Darin Adler <darin@apple.com>
1613 Reviewed by Sam Weinig.
1615 Harden additional string functions against large lengths
1616 https://bugs.webkit.org/show_bug.cgi?id=49574
1618 * platform/text/TextCodecUTF16.cpp:
1619 (WebCore::TextCodecUTF16::encode): Check for length that is
1620 too large for size_t.
1622 * platform/text/TextStream.cpp:
1623 (WebCore::TextStream::operator<<): Check for length that is
1624 too large for size_t.
1626 2010-11-16 Pavel Feldman <pfeldman@chromium.org>
1628 Not reviewed. Touching inspector controller to make gtk / qt happier.
1630 * inspector/InspectorController.cpp:
1632 2010-11-16 Carlos Garcia Campos <cgarcia@igalia.com>
1634 Reviewed by Martin Robinson.
1636 [GTK] Use gdk_pixbuf_get_from_surface() when available
1637 https://bugs.webkit.org/show_bug.cgi?id=49532
1639 * platform/graphics/gtk/GdkCairoUtilities.cpp:
1640 (cairoImageSurfaceToGdkPixbuf):
1642 2010-11-16 Pavel Feldman <pfeldman@chromium.org>
1644 Reviewed by Yury Semikhatsky.
1646 Web Inspector: init front-end UI upon DOMContentLoaded, not load event.
1647 https://bugs.webkit.org/show_bug.cgi?id=49596
1649 * inspector/front-end/inspector.js:
1652 2010-11-15 Alexander Pavlov <apavlov@chromium.org>
1654 Reviewed by Pavel Feldman.
1656 Web Inspector: Migrate frontend to the new CSS editing/retrieval API
1657 https://bugs.webkit.org/show_bug.cgi?id=49492
1659 Test: inspector/styles-new-API.html
1661 * inspector/front-end/AuditRules.js:
1662 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
1663 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.routine):
1664 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback):
1665 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.styleSheetCallback):
1666 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.allStylesCallback):
1667 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
1668 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
1669 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.receivedImages):
1670 * inspector/front-end/CSSStyleModel.js:
1671 (WebInspector.CSSStyleModel.prototype.getStylesAsync):
1672 (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync):
1673 (WebInspector.CSSStyleModel.prototype.getInlineStyleAsync):
1674 (WebInspector.CSSStyleModel.prototype.setRuleSelector):
1675 (WebInspector.CSSStyleModel.prototype.setRuleSelector.callback):
1676 (WebInspector.CSSStyleModel.prototype.addRule):
1677 (WebInspector.CSSStyleModel.prototype.addRule.callback):
1678 (WebInspector.CSSStyleDeclaration):
1679 (WebInspector.CSSStyleDeclaration.prototype.propertyAt):
1680 (WebInspector.CSSStyleDeclaration.prototype.pastLastSourcePropertyIndex):
1681 (WebInspector.CSSStyleDeclaration.prototype.newBlankProperty):
1682 (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
1683 (WebInspector.CSSStyleDeclaration.prototype.appendProperty):
1684 (WebInspector.CSSRule):
1685 (WebInspector.CSSProperty.prototype.get propertyText):
1686 (WebInspector.CSSProperty.prototype.setText):
1687 (WebInspector.CSSProperty.prototype.setDisabled):
1688 (WebInspector.CSSStyleSheet):
1689 (WebInspector.CSSStyleSheet.createForId):
1690 (WebInspector.CSSStyleSheet.prototype.getText):
1691 (WebInspector.CSSStyleSheet.prototype.setText):
1692 * inspector/front-end/Settings.js:
1693 * inspector/front-end/StylesSidebarPane.js:
1694 (WebInspector.StylePropertiesSection.prototype.onpopulate):
1695 (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty):
1696 (WebInspector.StylePropertiesSection.prototype._debugShowStyle.removeStyleBox):
1697 (WebInspector.StylePropertiesSection.prototype._debugShowStyle):
1698 (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
1699 (WebInspector.StylePropertyTreeElement.prototype):
1700 (WebInspector.StylePropertyTreeElement.prototype.):
1701 * inspector/front-end/inspector.css:
1702 (.styles-section .properties li.not-parsed-ok):
1703 (.styles-section .properties li.not-parsed-ok::before):
1704 (.styles-section .properties .inactive):
1706 2010-11-16 Sheriff Bot <webkit.review.bot@gmail.com>
1708 Unreviewed, rolling out r72082.
1709 http://trac.webkit.org/changeset/72082
1710 https://bugs.webkit.org/show_bug.cgi?id=49594
1712 "broken SnowLeopard build" (Requested by apavlov on #webkit).
1714 * css/CSSPrimitiveValue.cpp:
1715 (WebCore::scaleFactorForConversion):
1716 (WebCore::CSSPrimitiveValue::getDoubleValue):
1717 (WebCore::CSSPrimitiveValue::getIdent):
1718 * css/CSSPrimitiveValue.h:
1719 (WebCore::CSSPrimitiveValue::getFloatValue):
1720 (WebCore::CSSPrimitiveValue::getIntValue):
1722 2010-11-16 Sheriff Bot <webkit.review.bot@gmail.com>
1724 Unreviewed, rolling out r72087.
1725 http://trac.webkit.org/changeset/72087
1726 https://bugs.webkit.org/show_bug.cgi?id=49593
1728 "broken build" (Requested by apavlov on #webkit).
1730 * css/CSSPrimitiveValue.cpp:
1731 (WebCore::unitCategory):
1733 2010-11-15 Pavel Feldman <pfeldman@chromium.org>
1735 Reviewed by Yury Semikhatsky.
1737 Web Inspector: rename StoragePanel to ResourcesPanel.
1738 https://bugs.webkit.org/show_bug.cgi?id=49534
1741 * WebCore.vcproj/WebCore.vcproj:
1742 * inspector/front-end/DatabaseQueryView.js:
1743 (WebInspector.DatabaseQueryView.prototype._queryFinished):
1744 * inspector/front-end/DatabaseTableView.js:
1745 (WebInspector.DatabaseTableView.prototype._queryFinished):
1746 * inspector/front-end/ExtensionServer.js:
1747 (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
1748 * inspector/front-end/Images/storageIcon.png: Removed.
1749 * inspector/front-end/ResourceManager.js:
1750 (WebInspector.ResourceManager.prototype.setOverrideContent):
1751 (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame):
1752 (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
1753 (WebInspector.ResourceTreeModel.prototype.frameDetachedFromParent):
1754 (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
1755 (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
1756 * inspector/front-end/StoragePanel.js: Removed.
1757 * inspector/front-end/WebKit.qrc:
1758 * inspector/front-end/inspector.css:
1759 (.resources.panel .sidebar):
1760 (.resources.panel .sidebar li):
1761 (.resources.panel .sidebar li.parent):
1762 (.resources.panel .sidebar li.selected):
1763 (.resources.panel .sidebar li.selected .selection):
1764 (.resources.panel .sidebar :focus li.selected .selection):
1765 (body.inactive .resources.panel .sidebar li.selected .selection):
1766 (.resources.panel .sidebar .icon):
1767 (.resources.panel .base-storage-tree-element-title):
1768 (.resources.panel .status):
1769 (.resources.panel li .status .bubble):
1770 * inspector/front-end/inspector.html:
1771 * inspector/front-end/inspector.js:
1772 (WebInspector._createPanels):
1773 (WebInspector.openResource):
1774 (WebInspector.showPanel):
1775 (WebInspector.selectDatabase):
1776 (WebInspector.selectDOMStorage):
1777 (WebInspector.addDatabase):
1778 (WebInspector.addDOMStorage):
1779 (WebInspector.updateDOMStorage):
1780 (WebInspector.updateApplicationCacheStatus):
1781 (WebInspector.didGetFileSystemPath):
1782 (WebInspector.didGetFileSystemError):
1783 (WebInspector.didGetFileSystemDisabled):
1784 (WebInspector.updateNetworkState):
1785 (WebInspector._choosePanelToShowSourceLine):
1787 2010-11-16 Alexander Pavlov <apavlov@chromium.org>
1789 Unreviewed SnowLeopard build fix.
1791 * css/CSSPrimitiveValue.cpp:
1792 (WebCore::unitCategory):
1794 2010-11-16 Kenneth Rohde Christiansen <kenneth@webkit.org>
1796 Reviewed by Andreas Kling.
1798 Viewport meta tag: Fix geometry computation
1800 Available width and height should also be divided by the device pixel ratio.
1802 * dom/ViewportArguments.cpp:
1803 (WebCore::computeViewportAttributes):
1804 * platform/network/qt/DnsPrefetchHelper.cpp:
1806 2010-11-12 Alexander Pavlov <apavlov@chromium.org>
1808 Reviewed by Simon Fraser.
1810 CSSPrimitiveValue.getFloatValue does not convert sizes
1811 https://bugs.webkit.org/show_bug.cgi?id=35770
1813 Implemented all same-category unit conversions (length, angle, time, frequency) and retained
1814 absolute-relative (cm, mm, in, pt, pc) length conversions intact.
1815 Illegal unit conversion attempts will throw an INVALID_ACCESS_ERR DOMException.
1817 * css/CSSPrimitiveValue.cpp:
1818 (WebCore::unitCategory):
1819 (WebCore::scaleFactorForConversion):
1820 (WebCore::CSSPrimitiveValue::getDoubleValue):
1821 (WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory):
1822 (WebCore::CSSPrimitiveValue::getDoubleValueInternal):
1823 * css/CSSPrimitiveValue.h:
1825 2010-11-15 Pavel Feldman <pfeldman@chromium.org>
1827 Reviewed by Yury Semikhatsky.
1829 Web Inspector: extract HTML title setter in treeoutline.js.
1830 https://bugs.webkit.org/show_bug.cgi?id=49540
1832 * inspector/front-end/ElementsTreeOutline.js:
1833 (WebInspector.ElementsTreeElement.prototype.adjustCollapsedRange):
1834 (WebInspector.ElementsTreeElement.prototype.updateTitle):
1835 * inspector/front-end/treeoutline.js:
1836 (TreeElement.prototype.get titleHTML):
1837 (TreeElement.prototype.set titleHTML):
1838 (TreeElement.prototype._setListItemNodeContent):
1840 2010-11-16 John Knottenbelt <jknotten@chromium.org>
1842 Reviewed by Jeremy Orlow.
1844 Assert that DeviceOrientationClientMock is used by only one controller.
1845 https://bugs.webkit.org/show_bug.cgi?id=48506
1847 This is a design constraint of the DeviceOrientationClientMock because the
1848 m_controller field can only store a pointer to a single instance of the
1849 corresponding DeviceOrientationController.
1851 * platform/mock/DeviceOrientationClientMock.cpp:
1852 (WebCore::DeviceOrientationClientMock::setController):
1854 2010-11-16 Mihai Parparita <mihaip@chromium.org>
1856 Reviewed by Adam Barth.
1858 fast/images/size-failure.html results in malloc of 2 Gb after switching to WebKit image decoders
1859 https://bugs.webkit.org/show_bug.cgi?id=48634
1861 Specify the capacity when calling CFDataCreateMutable, which can signal
1862 malloc failures (by returning NULL), unlike CFDataSetLength.
1864 * platform/image-decoders/cg/ImageDecoderCG.cpp:
1865 (WebCore::RGBA32Buffer::setSize):
1867 2010-11-15 Rob Buis <rwlbuis@gmail.com>
1869 Reviewed by Dirk Schulze and Darin Adler.
1871 requiredFeatures does not adapt to SVGStringList changes
1872 https://bugs.webkit.org/show_bug.cgi?id=40887
1874 Centralize the const_cast handling and only do it if needed.
1875 Remove the const_cast in all svgAttributeChanged functions and move
1876 it to SVGTest::handleAttributeChange. Add an early return to
1877 handleAttributeChange to avoid unnecessary const_casts.
1879 No tests necessary as functionality has not changed.
1881 * svg/SVGCircleElement.cpp:
1882 (WebCore::SVGCircleElement::svgAttributeChanged):
1883 * svg/SVGEllipseElement.cpp:
1884 (WebCore::SVGEllipseElement::svgAttributeChanged):
1885 * svg/SVGForeignObjectElement.cpp:
1886 (WebCore::SVGForeignObjectElement::svgAttributeChanged):
1887 * svg/SVGGElement.cpp:
1888 (WebCore::SVGGElement::svgAttributeChanged):
1889 * svg/SVGImageElement.cpp:
1890 (WebCore::SVGImageElement::svgAttributeChanged):
1891 * svg/SVGLineElement.cpp:
1892 (WebCore::SVGLineElement::svgAttributeChanged):
1893 * svg/SVGPathElement.cpp:
1894 (WebCore::SVGPathElement::svgAttributeChanged):
1895 * svg/SVGPolyElement.cpp:
1896 (WebCore::SVGPolyElement::svgAttributeChanged):
1897 * svg/SVGRectElement.cpp:
1898 (WebCore::SVGRectElement::svgAttributeChanged):
1899 * svg/SVGSVGElement.cpp:
1900 (WebCore::SVGSVGElement::svgAttributeChanged):
1902 (WebCore::SVGTests::handleAttributeChange):
1904 * svg/SVGTextContentElement.cpp:
1905 (WebCore::SVGTextContentElement::svgAttributeChanged):
1906 * svg/SVGUseElement.cpp:
1907 (WebCore::SVGUseElement::svgAttributeChanged):
1909 2010-11-15 Dimitri Glazkov <dglazkov@chromium.org>
1911 Reviewed by Darin Adler.
1913 REGRESSION(r71934): Removing an element with a shadow DOM from under a cursor causes a crash.
1914 https://bugs.webkit.org/show_bug.cgi?id=49569
1916 Test: fast/events/remove-shadow-host-crash.html
1918 * rendering/TextControlInnerElements.h:
1919 (WebCore::TextControlInnerElement::isShadowNode):
1920 (WebCore::TextControlInnerElement::shadowParentNode):
1922 2010-11-12 Ryosuke Niwa <rniwa@webkit.org>
1924 Reviewed by Darin Adler.
1926 ScriptElement rather than HTMLScriptElement and SVGScriptElement should have ScriptElementData
1927 https://bugs.webkit.org/show_bug.cgi?id=49469
1929 Moved m_data, scriptCharset, scriptContent, shouldExecuteAsJavaScript, and executeScript from
1930 HTMLScriptElement and SVGScriptElement to ScriptElementData.
1932 Also made insertedIntoDocument, removedFromDocument, childrenChanged, finishParsingChildren,
1933 and handleSourceAttribute of ScriptElement non-static.
1935 No new tests are added since this is a cleanup.
1937 * dom/ScriptElement.cpp:
1938 (WebCore::ScriptElement::scriptCharset): Added.
1939 (WebCore::ScriptElement::scriptContent): Added.
1940 (WebCore::ScriptElement::shouldExecuteAsJavaScript): Added.
1941 (WebCore::ScriptElement::executeScript): Added.
1942 (WebCore::ScriptElement::insertedIntoDocument): Made non-static. Accesses m_data.
1943 (WebCore::ScriptElement::removedFromDocument): Ditto.
1944 (WebCore::ScriptElement::childrenChanged): Ditto.
1945 (WebCore::ScriptElement::finishParsingChildren): Ditto.
1946 (WebCore::ScriptElement::handleSourceAttribute): Ditto.
1947 * dom/ScriptElement.h: Moved the declaration of ScriptElement after that of ScriptElementData
1948 because ScriptElement has to instantiate ScriptElementData.
1949 (WebCore::ScriptElement::ScriptElement): Initializes m_data.
1950 * html/HTMLScriptElement.cpp: Removed scriptCharset, scriptContent, shouldExecuteAsJavaScript, and executeScript.
1951 (WebCore::HTMLScriptElement::HTMLScriptElement): Initializes ScriptElement instead of ScriptElementData.
1952 (WebCore::HTMLScriptElement::childrenChanged): Calls ScriptElement::childrenChanged.
1953 (WebCore::HTMLScriptElement::parseMappedAttribute): Calls ScriptElement::handleSourceAttribute.
1954 (WebCore::HTMLScriptElement::finishParsingChildren): Calls ScriptElement::finishParsingChildren.
1955 (WebCore::HTMLScriptElement::insertedIntoDocument): Calls ScriptElement::insertedIntoDocument.
1956 (WebCore::HTMLScriptElement::removedFromDocument): Calls ScriptElement::removedFromDocument.
1957 * html/HTMLScriptElement.h:
1958 * svg/SVGScriptElement.cpp: Removed scriptCharset, scriptContent, shouldExecuteAsJavaScript, and executeScript.
1959 (WebCore::SVGScriptElement::SVGScriptElement): Initializes ScriptElement instead of ScriptElementData.
1960 (WebCore::SVGScriptElement::svgAttributeChanged): Calls ScriptElement::handleSourceAttribute.
1961 (WebCore::SVGScriptElement::insertedIntoDocument): Calls ScriptElement::insertedIntoDocument.
1962 (WebCore::SVGScriptElement::removedFromDocument): Calls ScriptElement::removedFromDocument.
1963 (WebCore::SVGScriptElement::childrenChanged): Calls ScriptElement::childrenChanged.
1964 (WebCore::SVGScriptElement::finishParsingChildren): Calls ScriptElement::finishParsingChildren.
1965 * svg/SVGScriptElement.h:
1967 2010-11-15 Kent Tamura <tkent@chromium.org>
1969 Reviewed by Darin Adler.
1971 Refactor HTMLInputElement: Move a part of HTMLInputElement::
1972 defaultEventHandler() to InputTypes.
1973 https://bugs.webkit.org/show_bug.cgi?id=48317
1975 Move out the followings to InputTypes:
1976 - click event processing,
1977 - the first keydown event processing, and
1978 - DOMActivate event processing.
1980 Move m_xPos and m_yPos from HTMLInputElement to ImageInputType as
1981 m_clickLocation. It's ok to move them because they should be valid only
1982 when HTMLInputElement::m_activeSubmit is true. For type=image,
1983 m_activeSubmit is true only in DOMActivate event handling. So we reset
1984 m_clickLocation in handleDOMActivateEvent() with Event::underlyingEvent().
1986 No new tests because this is just a refactoring.
1988 * html/BaseDateAndTimeInputType.cpp:
1989 (WebCore::BaseDateAndTimeInputType::handleKeydownEvent):
1990 * html/BaseDateAndTimeInputType.h:
1991 * html/FileInputType.cpp:
1992 (WebCore::FileInputType::handleDOMActivateEvent):
1993 * html/FileInputType.h:
1994 * html/HTMLInputElement.cpp:
1995 (WebCore::HTMLInputElement::HTMLInputElement):
1996 (WebCore::HTMLInputElement::defaultEventHandler):
1997 * html/HTMLInputElement.h:
1998 * html/ImageInputType.cpp:
1999 (WebCore::ImageInputType::appendFormData):
2000 (WebCore::ImageInputType::handleDOMActivateEvent):
2001 * html/ImageInputType.h:
2002 * html/InputType.cpp:
2003 (WebCore::InputType::handleClickEvent):
2004 (WebCore::InputType::handleDOMActivateEvent):
2005 (WebCore::InputType::handleKeydownEvent):
2007 * html/NumberInputType.cpp:
2008 (WebCore::NumberInputType::handleKeydownEvent):
2009 * html/NumberInputType.h:
2010 * html/RadioInputType.cpp:
2011 (WebCore::RadioInputType::handleClickEvent):
2012 * html/RadioInputType.h:
2013 * html/RangeInputType.cpp:
2014 (WebCore::RangeInputType::handleKeydownEvent):
2015 * html/RangeInputType.h:
2016 * html/ResetInputType.cpp:
2017 (WebCore::ResetInputType::handleDOMActivateEvent):
2018 * html/ResetInputType.h:
2019 * html/SubmitInputType.cpp:
2020 (WebCore::SubmitInputType::handleDOMActivateEvent):
2021 * html/SubmitInputType.h:
2022 * html/TextFieldInputType.cpp:
2023 (WebCore::TextFieldInputType::handleKeydownEvent):
2024 (WebCore::TextFieldInputType::handleKeydownEventForSpinButton):
2025 * html/TextFieldInputType.h:
2027 2010-11-15 Chris Rogers <crogers@google.com>
2029 Reviewed by Kenneth Russell.
2031 Add AudioNode custom bindings
2032 https://bugs.webkit.org/show_bug.cgi?id=49119
2034 No new tests since audio API is not yet implemented.
2036 * bindings/js/JSAudioNodeCustom.cpp: Added.
2037 (WebCore::JSAudioNode::connect):
2038 (WebCore::JSAudioNode::disconnect):
2039 * bindings/v8/custom/V8AudioNodeCustom.cpp: Added.
2040 (WebCore::V8AudioNode::connectCallback):
2041 (WebCore::V8AudioNode::disconnectCallback):
2042 * webaudio/AudioNode.idl:
2044 2010-11-15 Dave Hyatt <hyatt@apple.com>
2046 Reviewed by Dan Bernstein.
2048 https://bugs.webkit.org/show_bug.cgi?id=49570
2050 Put italics specialization check back in CSSFontSelector. I had to back it out, since it broke
2051 a layout test, and the issue was that local font fallback fonts should not be considered by the
2052 specialization check (since you never want to pick a fallback over an actual @font-face rule if
2053 the @font-face rule can handle it).
2055 * css/CSSFontFace.h:
2056 (WebCore::CSSFontFace::create):
2057 (WebCore::CSSFontFace::isLocalFallback):
2058 (WebCore::CSSFontFace::CSSFontFace):
2059 * css/CSSFontSelector.cpp:
2060 (WebCore::CSSFontSelector::addFontFaceRule):
2061 (WebCore::compareFontFaces):
2063 2010-11-15 Adele Peterson <adele@apple.com>
2065 Reviewed by Darin Adler.
2067 Fix for: https://bugs.webkit.org/show_bug.cgi?id=49452
2068 Placeholder should not be swapped in and out of the text control's inner text element
2070 There's no need to swap the placeholder text in and out of the inner text element. Instead, just paint the text.
2071 This reduces complexity and makes it easier to make independent decisions about the placeholder text and the text control value.
2073 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setValueFromRenderer):
2074 Since updatePlaceholderVisibility checks the value, set the value before calling updatePlaceholderVisibility.
2075 * rendering/RenderTextControl.cpp:
2076 (WebCore::RenderTextControl::updatePlaceholderVisibility): Remove code that set the inner text value with the placeholder text.
2077 (WebCore::RenderTextControl::paintObject): Paint the placeholder text during the background phase.
2078 * rendering/RenderTextControl.h:
2079 * rendering/RenderTextControlMultiLine.cpp:
2080 (WebCore::RenderTextControlMultiLine::nodeAtPoint): Remove custom hit testing that tried to avoid hitting the placeholder text at the wrong time.
2081 (WebCore::RenderTextControlMultiLine::updateFromElement): Remove code that set the inner text value with the placeholder text.
2082 (WebCore::RenderTextControlMultiLine::createInnerTextStyle): Remove code that created the inner text style based on the placeholder pseudoelement.
2083 (WebCore::RenderTextControlMultiLine::textBoxInsetLeft): Added.
2084 (WebCore::RenderTextControlMultiLine::textBoxInsetRight): Added.
2085 * rendering/RenderTextControlMultiLine.h:
2086 * rendering/RenderTextControlSingleLine.cpp:
2087 (WebCore::RenderTextControlSingleLine::updateFromElement): Remove code that set the inner text value with the placeholder text.
2088 (WebCore::RenderTextControlSingleLine::createInnerTextStyle): Remove code that created the inner text style based on the placeholder pseudoelement.
2089 (WebCore::RenderTextControlSingleLine::textBoxInsetLeft): Added.
2090 (WebCore::RenderTextControlSingleLine::textBoxInsetRight): Added.
2091 * rendering/RenderTextControlSingleLine.h:
2092 * rendering/TextControlInnerElements.cpp: Removed custom hit testing that tried to avoid hitting the placeholder text at the wrong time.
2094 2010-11-15 Andreas Kling <kling@webkit.org>
2096 Unreviewed buildfix (Qt WebKit2 minimal)
2098 * platform/qt/CookieJarQt.cpp: Add missing <QStringList> include.
2100 2010-11-15 Chris Rogers <crogers@google.com>
2102 Reviewed by Kenneth Russell.
2104 Add Event and EventListener hooks for JavaScriptAudioNode and AudioProcessingEvent
2105 https://bugs.webkit.org/show_bug.cgi?id=49357
2107 No new tests since audio API is not yet implemented.
2109 * bindings/js/JSEventCustom.cpp:
2111 * bindings/js/JSEventTarget.cpp:
2113 * bindings/v8/V8DOMWrapper.cpp:
2114 (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
2115 * bindings/v8/custom/V8EventCustom.cpp:
2118 (WebCore::Event::isAudioProcessingEvent):
2121 * dom/EventTarget.cpp:
2122 (WebCore::EventTarget::toJavaScriptAudioNode):
2123 * dom/EventTarget.h:
2125 2010-11-15 Alexey Proskuryakov <ap@apple.com>
2127 Reviewed by Darin Adler.
2129 A minor style fix in StyledElement.cpp.
2131 * dom/StyledElement.cpp:
2132 (WebCore::StyledElement::addCSSProperty):
2133 (WebCore::StyledElement::addCSSImageProperty):
2135 2010-11-15 Alexey Proskuryakov <ap@apple.com>
2137 Reviewed by Darin Adler.
2139 https://bugs.webkit.org/show_bug.cgi?id=49565
2140 Remove Attr.style accessor
2142 * dom/Attr.idl: Only keep the accessor for Objective C API. Inspector doesn't seem to need
2145 2010-11-15 Beth Dakin <bdakin@apple.com>
2147 Reviewed by Darin Adler.
2149 Fix for https://bugs.webkit.org/show_bug.cgi?id=49555
2150 Frame::scalePage() should treat the origin as an absolute
2153 <rdar://problem/8667138>
2156 (WebCore::Frame::scalePage):
2158 2010-11-15 Dan Bernstein <mitz@apple.com>
2160 Reviewed by Darin Adler.
2162 <rdar://problem/8662770> Error image has incorrect size when a custom font is used
2164 Test: fast/images/style-access-during-imageChanged-crash.html
2166 * rendering/RenderImage.cpp:
2167 (WebCore::RenderImage::RenderImage): Added initialization of m_needsToSetSizeForAltText.
2168 (WebCore::RenderImage::imageSizeForError): Factored the non-alt-text dependent size computation
2169 out of setImageSizeForAltText() into this function.
2170 (WebCore::RenderImage::setImageSizeForAltText): Changed to use imageSizeForError().
2171 (WebCore::RenderImage::styleDidChange): Added. If m_needsToSetSizeForAltText is true, sets the
2172 intrinsic size and calls imageDimensionsChanged() as needed to cause layout or invalidation.
2173 (WebCore::RenderImage::imageChanged): Moved some code from here...
2174 (WebCore::RenderImage::imageDimensionsChanged): ...to here.
2175 * rendering/RenderImage.h:
2177 2010-11-15 Anders Carlsson <andersca@apple.com>
2179 Reviewed by Dimitri Glazkov.
2181 ASSERTION (r72003): Assertion failure when running layout tests
2182 https://bugs.webkit.org/show_bug.cgi?id=49561
2184 r72003 added the 'formaction' URL attribute to HTMLButtonElement and HTMLInputElement,
2185 but did not add the attribute to the isURLAttribute which lead to assertion failures
2186 when running the layout tests with a debug build.
2188 * html/HTMLButtonElement.cpp:
2189 (WebCore::HTMLButtonElement::isURLAttribute):
2190 * html/HTMLButtonElement.h:
2191 * html/HTMLInputElement.cpp:
2192 (WebCore::HTMLInputElement::isURLAttribute):
2194 2010-11-15 Alexey Proskuryakov <ap@apple.com>
2196 Reviewed by Darin Adler.
2198 https://bugs.webkit.org/show_bug.cgi?id=49559
2199 DOMWindow.getComputedStyle pseudo element argument lacks ConvertUndefinedOrNullToNullString
2201 No observable change in behavior, so no tests.
2203 * page/DOMWindow.idl: Added ConvertUndefinedOrNullToNullString.
2205 2010-11-15 Andreas Kling <kling@webkit.org>
2207 Reviewed by Tor Arne Vestbø.
2209 [Qt] Make WTF_USE_MEEGOTOUCH available for WebKit2 as well
2211 Move this into WebCore/features.pri which is used by both WebCore and WebKit2.
2216 2010-11-15 Martin Robinson <mrobinson@igalia.com>
2220 * GNUmakefile.am: Add some missing generated files to the source list.
2222 2010-11-15 Kenneth Russell <kbr@google.com>
2224 Reviewed by James Robinson.
2226 [chromium] Avoid copying of SkBitmap in LayerRendererChromium
2227 https://bugs.webkit.org/show_bug.cgi?id=49560
2229 Ran CSS 3D content to test. No other new tests.
2231 * platform/graphics/chromium/LayerRendererChromium.cpp:
2232 (WebCore::LayerRendererChromium::updateRootLayerTextureRect):
2234 2010-11-15 Vangelis Kokkevis <vangelis@chromium.org>
2236 Reviewed by Kenneth Russell.
2238 [chromium] Fixes layer opacity implementation of composited layers
2239 https://bugs.webkit.org/show_bug.cgi?id=49233
2241 This introduces a fairly drastic change in how LayerRendererChromium draws
2242 composited layers. Layers that have non-zero opacity as well as layers that
2243 clip their descendants (and have non-trivial transforms) are now first
2244 rendered onto off-screen surfaces (RenderSurfaceChromium's). The compositing
2245 operation now consists of two distinct phases: First a hierarchical traversal
2246 of the layer tree to compute the layer transforms, determine what the necessary
2247 RenderSurfaces are and sort layer that preserve-3d based on their z-value. A second
2248 pass goes through all the RenderSurfaces discovered by the first pass and updates
2250 Additional significant side-effects of this change are:
2251 1. Depth buffer and depth testing is no longer used. Drawing relies on a painter's
2252 algorithm to render layers with the preserves-3d property from back to front using
2253 the Z coordinate of their center. This will further be improved in the future with
2254 the intoduction of a BSP tree to properly deal with intersecting layers.
2255 2. Compositor no longer uses the stencil buffer to do clipping. Clipping is now performed
2256 by rendering layer subtrees into an offscreen buffer and setting the appropriate
2257 scissor and viewport transformation.
2259 Tests: abs-position-inside-opacity.html (for the opacity implementation)
2260 and the rest of the compositing layout tests to verify that
2261 everything still works.
2264 * platform/graphics/chromium/ContentLayerChromium.cpp:
2265 (WebCore::ContentLayerChromium::cleanupResources):
2266 (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
2267 (WebCore::ContentLayerChromium::calculateClippedUpdateRect):
2268 (WebCore::ContentLayerChromium::updateContents):
2269 * platform/graphics/chromium/LayerChromium.cpp:
2270 (WebCore::LayerChromium::LayerChromium):
2271 (WebCore::LayerChromium::cleanupResources):
2272 (WebCore::LayerChromium::createRenderSurface):
2273 (WebCore::LayerChromium::descendantsDrawContent):
2274 (WebCore::LayerChromium::descendantsDrawContentRecursive):
2275 * platform/graphics/chromium/LayerChromium.h:
2276 (WebCore::LayerChromium::drawTransform):
2277 (WebCore::LayerChromium::layerRenderer):
2278 * platform/graphics/chromium/LayerRendererChromium.cpp:
2279 (WebCore::orthoMatrix):
2280 (WebCore::isScaleOrTranslation):
2281 (WebCore::LayerRendererChromium::compareLayerZ):
2282 (WebCore::LayerRendererChromium::LayerRendererChromium):
2283 (WebCore::LayerRendererChromium::prepareToDrawLayers):
2284 (WebCore::LayerRendererChromium::drawLayers):
2285 (WebCore::LayerRendererChromium::updateLayersRecursive):
2286 (WebCore::LayerRendererChromium::useRenderSurface):
2287 (WebCore::LayerRendererChromium::drawLayer):
2288 (WebCore::LayerRendererChromium::setScissorToRect):
2289 (WebCore::LayerRendererChromium::setDrawViewportRect):
2290 (WebCore::LayerRendererChromium::initializeSharedObjects):
2291 (WebCore::LayerRendererChromium::cleanupSharedObjects):
2292 * platform/graphics/chromium/LayerRendererChromium.h:
2293 * platform/graphics/chromium/RenderSurfaceChromium.cpp: Added.
2294 (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
2295 (WebCore::RenderSurfaceChromium::~RenderSurfaceChromium):
2296 (WebCore::RenderSurfaceChromium::cleanupResources):
2297 (WebCore::RenderSurfaceChromium::layerRenderer):
2298 (WebCore::RenderSurfaceChromium::prepareContentsTexture):
2299 * platform/graphics/chromium/RenderSurfaceChromium.h: Added.
2300 (WebCore::RenderSurfaceChromium::contentRectCenter):
2301 (WebCore::RenderSurfaceChromium::contentRect):
2302 * platform/graphics/chromium/VideoLayerChromium.cpp:
2303 (WebCore::VideoLayerChromium::cleanupResources):
2305 2010-11-15 Martin Robinson <mrobinson@igalia.com>
2307 Reviewed by Andreas Kling.
2309 [GTK] gdk_pixbuf_get_from_surface from GtkVersioning.h is broken on GTK+ 2 builds
2310 https://bugs.webkit.org/show_bug.cgi?id=49549
2312 No new tests. This can be verified by loading any existing vertical text test
2313 in GtkLauncher and noticing the lack of CRITICAL GLib exceptions. There's currently
2314 no automatic way of verifying custom cursors.
2316 * platform/gtk/GtkVersioning.c:
2317 (gdk_pixbuf_get_from_surface): Reverse a sanity check in this method to be correct.
2319 2010-11-12 Jer Noble <jer.noble@apple.com>
2321 Reviewed by Brady Eidson.
2323 Can't view HTML5 video when running Safari with an authenticated proxy server
2324 <rdar://problem/8351926>
2326 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2327 (WebCore::MediaPlayerPrivate::createQTMovie):
2329 2010-11-14 Abhishek Arya <inferno@chromium.org>
2331 Reviewed by Dimitri Glazkov.
2333 Event dispatch call can blow away the node's renderer initialized
2334 before the call in updateSelectionForMouseDrag function. We need
2335 to initialize it after the call.
2336 https://bugs.webkit.org/show_bug.cgi?id=49524
2338 * page/EventHandler.cpp:
2339 (WebCore::EventHandler::updateSelectionForMouseDrag):
2341 2010-11-15 Patrick Gansterer <paroga@webkit.org>
2343 Reviewed by Martin Robinson.
2345 Make ContextShadow compile on all platforms
2346 https://bugs.webkit.org/show_bug.cgi?id=49535
2348 Add a void* typedef for PlatformImage and PlatformContext for unsupported platforms
2349 and move them into the WebCore namespace like all other Platform* typedefs.
2351 * platform/graphics/ContextShadow.h:
2353 2010-11-15 Renata Hodovan <reni@webkit.org>
2355 Reviewed by Andreas Kling.
2357 SVGFEImageElement doesn't support dynamic invalidation
2358 https://bugs.webkit.org/show_bug.cgi?id=49536
2360 The dynamic changes are captured by the svgAttributeChanged function. Invalidate the filter primitive if necessary.
2362 Tests: svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr.html
2363 svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop.html
2365 * svg/SVGFEImageElement.cpp:
2366 (WebCore::SVGFEImageElement::svgAttributeChanged):
2367 * svg/SVGFEImageElement.h:
2369 2010-11-15 Yael Aharon <yael.aharon@nokia.com>
2371 Reviewed by Antonio Gomes.
2373 [Qt] Focus ring does not show on focused links.
2374 https://bugs.webkit.org/show_bug.cgi?id=49515
2376 After http://trac.webkit.org/changeset/69766 the focus ring on links is no longer
2378 The reason is that Qt always returned true in RenderTheme::supportsFocusRing(),
2379 but until r69766, we did not check that for links. Qt draws its own focus ring
2380 for controls that it draws, but not for links.
2381 Change the return value to false if the style's appearance is not something that Qt
2382 draws by itself or does not support.
2383 Added a Qt specific test result for the new test added in r69766.
2385 * platform/qt/RenderThemeQt.cpp:
2386 (WebCore::RenderThemeQt::supportsFocusRing):
2388 2010-11-15 Dai Mikurube <dmikurube@google.com>
2390 Reviewed by Kent Tamura.
2392 Implement formaction, formenctype, formmethod and formtarget attributes for input and button tags
2393 https://bugs.webkit.org/show_bug.cgi?id=49240
2395 Tests: fast/forms/formaction-attribute.html
2396 fast/forms/formmethod-attribute-button-html.html
2397 fast/forms/formmethod-attribute-input-html.html
2398 fast/forms/formtarget-attribute-button-html.html
2399 fast/forms/formtarget-attribute-input-html.html
2400 fast/forms/mailto/formenctype-attribute-button-html.html
2401 fast/forms/mailto/formenctype-attribute-input-html.html
2402 fast/forms/submit-form-attributes.html
2404 * html/HTMLAttributeNames.in: Added formaction, formmethod, formtarget and formenctype attributes
2405 * html/HTMLButtonElement.idl:
2406 * html/HTMLInputElement.idl:
2407 * loader/FormSubmission.cpp: Modified to check the pressed button and its attributes
2408 (WebCore::FormSubmission::Attributes::copyFrom):
2409 (WebCore::FormSubmission::create):
2410 * loader/FormSubmission.h:
2412 2010-11-15 Pavel Feldman <pfeldman@chromium.org>
2414 Reviewed by Yury Semikhatsky.
2416 Web Inspector: Do not hide default Ctrl+A behavior on non-Mac.
2417 https://bugs.webkit.org/show_bug.cgi?id=49527
2419 * inspector/front-end/TextPrompt.js:
2420 (WebInspector.TextPrompt.prototype._onKeyDown):
2422 2010-11-15 Ilya Sherman <isherman@chromium.org>
2424 Reviewed by Kent Tamura.
2426 Add capability for displaying warnings to autofill popup
2427 Warnings are displayed in dark gray italic.
2428 https://bugs.webkit.org/show_bug.cgi?id=49291
2429 http://code.google.com/p/chromium/issues/detail?id=58509
2431 * platform/chromium/PopupMenuChromium.cpp:
2432 (WebCore::PopupListBox::getRowFont):
2433 Use item-specific font, not just the generic menu font.
2434 (WebCore::PopupListBox::selectIndex):
2435 Updated to clear the selection when hovering over a non-selectable item.
2436 * platform/chromium/PopupMenuChromium.h: Minor cleanup
2438 2010-11-14 David Hyatt <hyatt@apple.com>
2440 Back out the italics portion of the previous patch until I can figure out why it
2443 * css/CSSFontSelector.cpp:
2444 (WebCore::compareFontFaces):
2446 2010-11-14 Kent Tamura <tkent@chromium.org>
2448 Reviewed by Dimitri Glazkov.
2450 Improve API for form validation message strings
2451 https://bugs.webkit.org/show_bug.cgi?id=34945
2453 This change introduces three new functions;
2454 validationMessageTypeMismatchFor*Text(). The implementation for each
2455 platform is just a call to validationMessageTypeMismatchText().
2457 Some validationMessage*() functions have new parameters. The parameters
2458 are ignored in all platforms for now.
2460 This change doesn't change any behavior. However a platform can add
2461 additional information to validation messages. e.g. Changing "type
2462 mismatch" to "Please specify an e-mail address" for <input type=email>.
2464 * html/EmailInputType.cpp:
2465 (WebCore::EmailInputType::typeMismatchText): Call validationMessageTypeMismatchForEmailText()
2466 or validationMessageTypeMismatchForMultipleEmailText().
2467 * html/EmailInputType.h:
2468 * html/HTMLFormControlElement.h: Add maxLength() and value() to access them from ValidityState.
2469 * html/HTMLInputElement.cpp: Add the following functions to pass extra
2470 information to validation message string functions.
2471 (WebCore::HTMLInputElement::minimumString):
2472 (WebCore::HTMLInputElement::maximumString):
2473 (WebCore::HTMLInputElement::stepBaseString):
2474 (WebCore::HTMLInputElement::stepString):
2475 (WebCore::HTMLInputElement::typeMismatchText):
2476 * html/HTMLInputElement.h:
2477 * html/HTMLTextAreaElement.h:
2478 * html/InputType.cpp:
2479 (WebCore::InputType::typeMismatchText): Call validationMessageTypeMismatchText().
2481 * html/URLInputType.cpp:
2482 (WebCore::URLInputType::typeMismatchText): Call validationMessageTypeMismatchForURLText().
2483 * html/URLInputType.h:
2484 * html/ValidityState.cpp:
2485 (WebCore::ValidityState::validationMessage):
2486 * platform/LocalizedStrings.cpp:
2487 (WebCore::validationMessageTypeMismatchForEmailText):
2488 (WebCore::validationMessageTypeMismatchForMultipleEmailText):
2489 (WebCore::validationMessageTypeMismatchForURLText):
2490 (WebCore::validationMessageTooLongText):
2491 (WebCore::validationMessageRangeUnderflowText):
2492 (WebCore::validationMessageRangeOverflowText):
2493 (WebCore::validationMessageStepMismatchText):
2494 * platform/LocalizedStrings.h:
2495 - Add validationMessageTypeMismatchForEmailText(),
2496 validationMessageTypeMismatchForMultipleEmailText() and
2497 validationMessageTypeMismatchForURLText()
2498 - Add length parameters to validationMessageTooLongText().
2499 - Add the minimum value parameter to validationMessageRangeUnderflowText()
2500 - Add the maximum value parameter to validationMessageRangeOverflowText()
2501 - Add parameters of the base value and the step value to validationMessageStepMismatchText()
2502 * platform/android/LocalizedStringsAndroid.cpp:
2503 (WebCore::validationMessageTypeMismatchForEmailText):
2504 (WebCore::validationMessageTypeMismatchForMultipleEmailText):
2505 (WebCore::validationMessageTypeMismatchForURLText):
2506 (WebCore::validationMessageTooLongText):
2507 (WebCore::validationMessageRangeUnderflowText):
2508 (WebCore::validationMessageRangeOverflowText):
2509 (WebCore::validationMessageStepMismatchText):
2510 * platform/brew/LocalizedStringsBrew.cpp:
2511 (WebCore::validationMessageTypeMismatchForEmailText):
2512 (WebCore::validationMessageTypeMismatchForMultipleEmailText):
2513 (WebCore::validationMessageTypeMismatchForURLText):
2514 (WebCore::validationMessageTooLongText):
2515 (WebCore::validationMessageRangeUnderflowText):
2516 (WebCore::validationMessageRangeOverflowText):
2517 (WebCore::validationMessageStepMismatchText):
2518 * platform/efl/LocalizedStringsEfl.cpp:
2519 (WebCore::validationMessageRangeOverflowText):
2520 (WebCore::validationMessageRangeUnderflowText):
2521 (WebCore::validationMessageStepMismatchText):
2522 (WebCore::validationMessageTooLongText):
2523 (WebCore::validationMessageTypeMismatchForEmailText):
2524 (WebCore::validationMessageTypeMismatchForMultipleEmailText):
2525 (WebCore::validationMessageTypeMismatchForURLText):
2526 * platform/gtk/LocalizedStringsGtk.cpp:
2527 (WebCore::validationMessageTypeMismatchForEmailText):
2528 (WebCore::validationMessageTypeMismatchForMultipleEmailText):
2529 (WebCore::validationMessageTypeMismatchForURLText):
2530 (WebCore::validationMessageTooLongText):
2531 (WebCore::validationMessageRangeUnderflowText):
2532 (WebCore::validationMessageRangeOverflowText):
2533 (WebCore::validationMessageStepMismatchText):
2534 * platform/haiku/LocalizedStringsHaiku.cpp:
2535 (WebCore::validationMessageTypeMismatchForEmailText):
2536 (WebCore::validationMessageTypeMismatchForMultipleEmailText):
2537 (WebCore::validationMessageTypeMismatchForURLText):
2538 (WebCore::validationMessageTooLongText):
2539 (WebCore::validationMessageRangeUnderflowText):
2540 (WebCore::validationMessageRangeOverflowText):
2541 (WebCore::validationMessageStepMismatchText):
2542 * platform/wx/LocalizedStringsWx.cpp:
2543 (WebCore::validationMessageTypeMismatchForEmailText):
2544 (WebCore::validationMessageTypeMismatchForMultipleEmailText):
2545 (WebCore::validationMessageTypeMismatchForURLText):
2546 (WebCore::validationMessageTooLongText):
2547 (WebCore::validationMessageRangeUnderflowText):
2548 (WebCore::validationMessageRangeOverflowText):
2549 (WebCore::validationMessageStepMismatchText):
2551 2010-11-14 Kent Tamura <tkent@chromium.org>
2553 Reviewed by Andreas Kling.
2555 KeyboardEvent::keyIdentifier() should return "const String&"
2556 https://bugs.webkit.org/show_bug.cgi?id=49426
2558 No new tests. This shouldn't change the current behavior.
2560 * dom/KeyboardEvent.h:
2561 (WebCore::KeyboardEvent::keyIdentifier): Change the return type; String -> const String&
2562 * dom/SelectElement.cpp:
2563 (WebCore::SelectElement::menuListDefaultEventHandler):
2564 Change the type of a variable to have keyIdentifier(); String -> const String&
2565 (WebCore::SelectElement::listBoxDefaultEventHandler): ditto.
2566 * html/HTMLInputElement.cpp:
2567 (WebCore::HTMLInputElement::defaultEventHandler): ditto.
2568 (WebCore::HTMLInputElement::handleKeyEventForRange): ditto.
2569 * page/EventHandler.cpp:
2570 (WebCore::EventHandler::handleKeyboardSelectionMovement): ditto.
2572 2010-11-14 Kenichi Ishibashi <bashi@google.com>
2574 Reviewed by Kent Tamura.
2576 [HTML5] "form" attribute support for form control elements
2577 https://bugs.webkit.org/show_bug.cgi?id=47813
2579 Adds a list of form-associated elements with form attribute into
2580 the Document class to support form attribute.
2581 Adds a function to determine the right place to locate
2582 form-associated elements with form attribute into
2583 m_associatedElements of HTMLFormElement class.
2585 Tests: fast/forms/form-attribute-elements-order.html
2586 fast/forms/form-attribute-elements-order2.html
2587 fast/forms/form-attribute-elements.html
2588 fast/forms/form-attribute.html
2591 (WebCore::Document::registerFormElementWithFormAttribute): Added.
2592 (WebCore::Document::unregisterFormElementWithFormAttribute): Added.
2593 (WebCore::Document::resetFormElementsOwner): Added.
2594 * dom/Document.h: Added the list for elements with form attribute.
2595 * html/HTMLAttributeNames.in: Added form attribute.
2596 * html/HTMLFormControlElement.cpp:
2597 (WebCore::HTMLFormControlElement::insertedIntoTree): Modified to handle
2599 (WebCore::HTMLFormControlElement::removedFromTree): Ditto.
2600 (WebCore::HTMLFormControlElement::resetFormOwner): Added.
2601 (WebCore::HTMLFormControlElement::attributeChanged): Added.
2602 * html/HTMLFormControlElement.h:
2603 * html/HTMLFormElement.cpp:
2604 (WebCore::HTMLFormElement::HTMLFormElement): Modified to initialize
2605 newly-added variables.
2606 (WebCore::HTMLFormElement::insertedIntoDocument): Modified to reset
2607 form owner of form-associated elements.
2608 (WebCore::HTMLFormElement::removedFromDocument): Ditto.
2609 (WebCore::HTMLFormElement::formElementIndexWithFormAttribute): Added.
2610 (WebCore::HTMLFormElement::formElementIndex): Modified to treat
2611 form-associated elements with form attribute separately.
2612 (WebCore::HTMLFormElement::removeFormElement): Modified to handle
2613 form-associated elements with form attribute.
2614 * html/HTMLFormElement.h: Added three variables to handle form attribute.
2615 * html/HTMLOutputElement.cpp: Removed "FIXME" comment.
2616 (WebCore::HTMLOutputElement::parseMappedAttribute):
2617 * html/HTMLOutputElement.h: Removed setForm().
2619 2010-11-14 David Hyatt <hyatt@apple.com>
2621 Reviewed by Dan Bernstein.
2623 https://bugs.webkit.org/show_bug.cgi?id=49521
2625 REGRESSION svg/W3C-SVG-1.1/fonts-desc-02-t.svg broken by r71979.
2627 Refine the font selection function for @font-face to be smarter about what fonts it prefers. If
2628 a font is labeled as only supporting small-caps, then prefer it to one that claims to support both
2629 normal and small-caps. The specialized font is more likely to be true small-caps and to not rely
2632 Added the same logic for italic as well. Prefer the font that is specifically restricted to
2633 italic to one that claims it can support anything.
2635 * css/CSSFontSelector.cpp:
2636 (WebCore::compareFontFaces):
2638 2010-11-14 Ryuan Choi <ryuan.choi@samsung.com>
2640 Reviewed by Martin Robinson.
2642 [EFL] add pango support
2643 https://bugs.webkit.org/show_bug.cgi?id=46029
2645 Include pango related files.
2646 No new tests; functionality is unchanged.
2648 * CMakeListsEfl.txt:
2650 2010-11-12 Tenghui Zhu <ztenghui@google.com>
2652 Reviewed by Andreas Kling.
2654 [V8] Code generation script error in generating the SVGStaticListPropertyTearOff
2655 https://bugs.webkit.org/show_bug.cgi?id=49463
2657 * bindings/scripts/CodeGeneratorV8.pm: The svgNativeType is the one containing
2658 the SVGStaticListPropertyTearOff string, not the svgListPropertyType.
2660 2010-11-14 Patrick Gansterer <paroga@webkit.org>
2662 Reviewed by Andreas Kling.
2665 https://bugs.webkit.org/show_bug.cgi?id=49507
2669 2010-11-13 Patrick Gansterer <paroga@webkit.org>
2671 Reviewed by Yury Semikhatsky.
2673 Buildfix for !ENABLE(INSPECTOR)
2674 https://bugs.webkit.org/show_bug.cgi?id=49500
2676 Also unify the position of the condition in the cpp files.
2678 * inspector/ConsoleMessage.cpp:
2679 * inspector/InspectorResourceAgent.cpp:
2680 * inspector/InspectorState.cpp:
2681 * inspector/ScriptCallFrame.cpp:
2682 * inspector/ScriptCallStack.cpp:
2684 2010-11-13 David Hyatt <hyatt@apple.com>
2686 Reviewed by Anders Carlsson.
2688 https://bugs.webkit.org/show_bug.cgi?id=49506
2690 Repaint is broken across writing mode boundaries. It's not enough to add in flipped offsets. You have
2691 to flip the rect itself.
2693 Added fast/repaint/repaint-across-writing-mode-boundary.html
2695 * rendering/RenderBox.cpp:
2696 (WebCore::RenderBox::computeRectForRepaint):
2698 2010-11-13 David Hyatt <hyatt@apple.com>
2700 Reviewed by Dan Bernstein.
2702 https://bugs.webkit.org/show_bug.cgi?id=49505
2704 REGRESSION: @font-face doesn't work with the small-caps variant. This was broken by the addition of SVG fonts
2705 support long ago. This patch fixes the SVG code so that it doesn't break non-SVG fonts.
2707 Added fast/blockflow/broken-ideograph-small-caps.html
2709 * css/CSSFontFace.cpp:
2710 (WebCore::CSSFontFace::hasSVGFontFaceSource):
2711 * css/CSSFontFace.h:
2712 * css/CSSFontFaceSource.cpp:
2713 (WebCore::CSSFontFaceSource::getFontData):
2714 * css/CSSFontFaceSource.h:
2715 * css/CSSFontSelector.cpp:
2716 (WebCore::CSSFontSelector::addFontFaceRule):
2717 (WebCore::CSSFontSelector::getFontData):
2719 2010-11-13 Dan Bernstein <mitz@apple.com>
2721 Reviewed by Dave Hyatt.
2723 fast/text/hyphen* tests have different results on Leopard
2724 https://bugs.webkit.org/show_bug.cgi?id=43296
2726 * platform/text/mac/TextBreakIteratorInternalICUMac.mm:
2727 (WebCore::topLanguagePreference): Changed to look up the value of the AppleLanguages default
2728 through the normal NSUserDefaults search order rather than skipping the application domain.
2729 This makes this function respect DumpRenderTree’s setting of the default in the application
2732 2010-11-13 David Hyatt <hyatt@apple.com>
2734 Reviewed by Dan Bernstein.
2736 https://bugs.webkit.org/show_bug.cgi?id=49499
2738 broken-ideographic-font.html causes layout test flakiness in release builds. The reason for this is
2739 that the custom font data for m_brokenIdeographFontData was never getting pruned out of the tree.
2740 The same problem exists for custom small caps fonts, so I made sure that the small caps fonts get
2741 pruned as well. In addition, custom small caps fonts were never getting deleted either.
2743 I also made allowsLigatures in FontPlatformData orientation-independent, and the callers check it
2746 Unskip fast/blockflow/broken-ideographic-font.html
2748 * platform/graphics/SimpleFontData.cpp:
2749 (WebCore::SimpleFontData::~SimpleFontData):
2750 * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
2751 (WebCore::SimpleFontData::platformDestroy):
2752 (WebCore::SimpleFontData::smallCapsFontData):
2753 * platform/graphics/chromium/SimpleFontDataLinux.cpp:
2754 (WebCore::SimpleFontData::platformDestroy):
2755 (WebCore::SimpleFontData::smallCapsFontData):
2756 * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
2757 (WebCore::FontPlatformData::allowsLigatures):
2758 * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
2759 (WebCore::SimpleFontData::platformDestroy):
2760 (WebCore::SimpleFontData::smallCapsFontData):
2761 * platform/graphics/haiku/SimpleFontDataHaiku.cpp:
2762 (WebCore::SimpleFontData::platformDestroy):
2763 (WebCore::SimpleFontData::smallCapsFontData):
2764 * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
2765 (WebCore::disableLigatures):
2766 * platform/graphics/mac/SimpleFontDataCoreText.cpp:
2767 (WebCore::SimpleFontData::getCFStringAttributes):
2768 * platform/graphics/mac/SimpleFontDataMac.mm:
2769 (WebCore::SimpleFontData::platformDestroy):
2770 * platform/graphics/win/SimpleFontDataWin.cpp:
2771 (WebCore::SimpleFontData::platformDestroy):
2772 (WebCore::SimpleFontData::smallCapsFontData):
2773 * platform/graphics/wx/SimpleFontDataWx.cpp:
2774 (WebCore::SimpleFontData::platformDestroy):
2775 (WebCore::SimpleFontData::smallCapsFontData):
2777 2010-11-13 David Hyatt <hyatt@apple.com>
2779 https://bugs.webkit.org/show_bug.cgi?id=49496
2781 Fix broken-ideographic-font.html. I had the font installed locally on my machine, and this covered up
2782 the fact that CoreText was implicitly using it as fallback in the vertical case only. The bots don't have
2783 the font installed locally, and so they showed the bug.
2785 Make sure the GlyphPage is filled with horizontal glyphs for a broken ideograph font, so that CoreText is
2788 * platform/graphics/mac/SimpleFontDataCoreText.cpp:
2789 (WebCore::SimpleFontData::getCFStringAttributes):
2791 2010-11-13 David Hyatt <hyatt@apple.com>
2793 Reviewed by Dan Bernstein.
2795 https://bugs.webkit.org/show_bug.cgi?id=49464
2797 Fix bugs with the orientation of fonts when the font is brought in via fallback, when the font contains no
2798 vertical tables, or when the font is loaded via font-face in both horizontal and vertical forms.
2800 (1) Include orientation as part of the @font-face hashtables so that the fonts are treated as
2801 distinct when used in horizontal and vertical forms.
2803 (2) Let the orientation member of FontPlatformData represent the desired orientation rather than
2804 the supported one. Add an orientation member to SimpleFontData that represents the actual
2805 supported orientation of the font.
2807 (3) For fonts with no vertical tables, add a brokenIdeographicsFont accessor that is invoked when
2808 CJK ideographs are encountered. This is essentially identical to the small caps fallback mechanism
2809 but invoked only for ideographs. The special ideograph font locks the orientation to vertical and
2810 renders the glyphs upright even when the font has no vertical tables. Punctuation and such will
2811 still look funny, and really this is a bug in the font, but at least this way it will be apparent
2812 that the font is to blame.
2814 Added fast/blockflow/broken-ideographic-font.html and fast/blockflow/vertical-font-fallback.html.
2816 * css/CSSFontFaceSource.cpp:
2817 (WebCore::CSSFontFaceSource::getFontData):
2818 * css/CSSSegmentedFontFace.cpp:
2819 (WebCore::CSSSegmentedFontFace::getFontData):
2820 * platform/graphics/Font.cpp:
2821 (WebCore::Font::isCJKIdeograph):
2822 * platform/graphics/Font.h:
2823 * platform/graphics/FontFastPath.cpp:
2824 (WebCore::Font::glyphDataForCharacter):
2825 * platform/graphics/SimpleFontData.cpp:
2826 (WebCore::SimpleFontData::SimpleFontData):
2827 (WebCore::SimpleFontData::~SimpleFontData):
2828 (WebCore::SimpleFontData::brokenIdeographFontData):
2829 * platform/graphics/SimpleFontData.h:
2830 (WebCore::SimpleFontData::orientation):
2831 * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
2832 (WebCore::FontPlatformData::FontPlatformData):
2833 * platform/graphics/mac/FontMac.mm:
2834 (WebCore::showGlyphsWithAdvances):
2835 * platform/graphics/mac/SimpleFontDataMac.mm:
2836 (WebCore::SimpleFontData::platformInit):
2837 (WebCore::SimpleFontData::platformBoundsForGlyph):
2838 (WebCore::SimpleFontData::platformWidthForGlyph):
2840 2010-11-13 Rob Buis <rwlbuis@gmail.com>
2842 Reviewed by Dirk Schulze.
2844 requiredFeatures does not adapt to SVGStringList changes
2845 https://bugs.webkit.org/show_bug.cgi?id=40887
2847 Centralize logic of handling of SVGElement validity changes.
2848 The logic is to detach the SVGElement when changing from valid
2849 to invalid, and to attach when changing from invalid to valid.
2851 Tests: svg/dynamic-updates/SVGCircleElement-dom-requiredFeatures.html
2852 svg/dynamic-updates/SVGCircleElement-svgdom-requiredFeatures.html
2853 svg/dynamic-updates/SVGEllipseElement-dom-requiredFeatures.html
2854 svg/dynamic-updates/SVGEllipseElement-svgdom-requiredFeatures.html
2855 svg/dynamic-updates/SVGForeignObjectElement-dom-requiredFeatures.html
2856 svg/dynamic-updates/SVGForeignObjectElement-svgdom-requiredFeatures.html
2857 svg/dynamic-updates/SVGGElement-dom-requiredFeatures.html
2858 svg/dynamic-updates/SVGGElement-svgdom-requiredFeatures.html
2859 svg/dynamic-updates/SVGImageElement-dom-requiredFeatures.html
2860 svg/dynamic-updates/SVGImageElement-svgdom-requiredFeatures.html
2861 svg/dynamic-updates/SVGLineElement-dom-requiredFeatures.html
2862 svg/dynamic-updates/SVGLineElement-svgdom-requiredFeatures.html
2863 svg/dynamic-updates/SVGPathElement-dom-requiredFeatures.html
2864 svg/dynamic-updates/SVGPathElement-svgdom-requiredFeatures.html
2865 svg/dynamic-updates/SVGPolygonElement-dom-requiredFeatures.html
2866 svg/dynamic-updates/SVGPolygonElement-svgdom-requiredFeatures.html
2867 svg/dynamic-updates/SVGPolylineElement-dom-requiredFeatures.html
2868 svg/dynamic-updates/SVGPolylineElement-svgdom-requiredFeatures.html
2869 svg/dynamic-updates/SVGRectElement-dom-requiredFeatures.html
2870 svg/dynamic-updates/SVGRectElement-svgdom-requiredFeatures.html
2871 svg/dynamic-updates/SVGSVGElement-dom-requiredFeatures.html
2872 svg/dynamic-updates/SVGSVGElement-svgdom-requiredFeatures.html
2873 svg/dynamic-updates/SVGTextElement-dom-requiredFeatures.html
2874 svg/dynamic-updates/SVGTextElement-svgdom-requiredFeatures.html
2875 svg/dynamic-updates/SVGUseElement-dom-requiredFeatures.html
2876 svg/dynamic-updates/SVGUseElement-svgdom-requiredFeatures.html
2878 * svg/SVGCircleElement.cpp:
2879 (WebCore::SVGCircleElement::svgAttributeChanged):
2880 * svg/SVGEllipseElement.cpp:
2881 (WebCore::SVGEllipseElement::svgAttributeChanged):
2882 * svg/SVGForeignObjectElement.cpp:
2883 (WebCore::SVGForeignObjectElement::svgAttributeChanged):
2884 * svg/SVGGElement.cpp:
2885 (WebCore::SVGGElement::svgAttributeChanged):
2886 * svg/SVGImageElement.cpp:
2887 (WebCore::SVGImageElement::svgAttributeChanged):
2888 * svg/SVGLineElement.cpp:
2889 (WebCore::SVGLineElement::svgAttributeChanged):
2890 * svg/SVGPathElement.cpp:
2891 (WebCore::SVGPathElement::svgAttributeChanged):
2892 * svg/SVGPolyElement.cpp:
2893 (WebCore::SVGPolyElement::svgAttributeChanged):
2894 * svg/SVGRectElement.cpp:
2895 (WebCore::SVGRectElement::svgAttributeChanged):
2896 * svg/SVGSVGElement.cpp:
2897 (WebCore::SVGSVGElement::svgAttributeChanged):
2899 (WebCore::knownAttribute):
2900 (WebCore::SVGTests::isKnownAttribute):
2901 (WebCore::SVGTests::handleAttributeChange): Centralized handling of SVGElement validity changes.
2903 * svg/SVGTextContentElement.cpp:
2904 (WebCore::SVGTextContentElement::svgAttributeChanged):
2905 (WebCore::SVGTextContentElement::isKnownAttribute):
2906 * svg/SVGTextContentElement.h:
2907 * svg/SVGUseElement.cpp:
2908 (WebCore::SVGUseElement::svgAttributeChanged):
2910 2010-11-13 Andrey Kosyakov <caseq@chromium.org>
2912 Reviewed by Pavel Feldman.
2914 Web Inspector: [refactoring] support Views in TabbedPane and streamline tab selection in resource view
2915 https://bugs.webkit.org/show_bug.cgi?id=49493
2917 * inspector/front-end/NetworkPanel.js:
2918 (WebInspector.NetworkPanel.prototype._showResource):
2919 * inspector/front-end/ResourceView.js:
2920 (WebInspector.ResourceView):
2921 (WebInspector.ResourceView.prototype.selectContentTab):
2922 (WebInspector.ResourceView.prototype._selectTab):
2923 (WebInspector.ResourceView.prototype._refreshCookies):
2924 (WebInspector.ResourceCookiesTab.prototype.show):
2925 * inspector/front-end/StoragePanel.js:
2926 (WebInspector.StoragePanel.prototype.showResource):
2927 * inspector/front-end/TabbedPane.js:
2928 (WebInspector.TabbedPane.prototype.appendTab):
2929 (WebInspector.TabbedPane.prototype.hasTab):
2930 (WebInspector.TabbedPane.prototype.selectTabById):
2931 (WebInspector.TabbedPane.prototype._hideTab):
2932 (WebInspector.TabbedPane.prototype._showTab):
2933 * inspector/front-end/inspector.css:
2934 (.resource-view-cookies):
2935 (.resource-view-cookies.visible):
2937 2010-11-13 Yury Semikhatsky <yurys@chromium.org>
2939 Reviewed by Pavel Feldman.
2941 REGRESSION(71515): Web Inspector: Safari crash calling console.log when Log JavaScript Exceptions to Console is checked
2942 https://bugs.webkit.org/show_bug.cgi?id=49362
2945 (WebCore::Console::addMessage): avoid accessing ScriptArguments and ScriptCallStack after their ownership
2946 has been passed to the inspector.
2948 2010-11-13 Yury Semikhatsky <yurys@chromium.org>
2950 Reviewed by Pavel Feldman.
2952 Web Inspector: DOM event listener name is cropped in Elements panel
2953 https://bugs.webkit.org/show_bug.cgi?id=49387
2955 * inspector/front-end/inspector.css:
2956 (.event-bar): use margin-left instead of left to fit child node into its parent
2958 2010-11-13 Ilya Sherman <isherman@chromium.org>
2960 Reviewed by Shinichiro Hamaji.
2962 Fixes regression from previous patch -- computes y offsets for elements
2963 that are scrolled out of the window.
2964 https://bugs.webkit.org/show_bug.cgi?id=49306
2966 * manual-tests/select-scroll.html: Added.
2967 * platform/chromium/PopupMenuChromium.cpp:
2968 (WebCore::PopupListBox::layout):
2970 2010-11-12 Daniel Bates <dbates@rim.com>
2972 Reviewed by Adam Barth.
2974 Transferred <iframe>s may not have a unique internal name
2975 https://bugs.webkit.org/show_bug.cgi?id=48768
2977 Fixes an issue where an <iframe> that is transferred from
2978 document A to document B, where A != B, may not have a
2979 unique internal name in B.
2981 Test: fast/frames/iframe-reparenting-unique-name.html
2983 * html/HTMLFrameElementBase.cpp:
2984 (WebCore::HTMLFrameElementBase::setNameAndOpenURL): Inlined code from
2985 HTMLFrameElementBase::setName() so that we can remove setName(), which
2986 was only called being called by HTMLFrameElementBase::setNameAndOpenURL().
2987 * html/HTMLFrameElementBase.h: Removed HTMLFrameElementBase::setName().
2988 * html/HTMLFrameOwnerElement.h: Removed HTMLFrameOwnerElement::setName().
2990 (WebCore::Frame::transferChildFrameToNewDocument): Modified to call FrameTree::transferChild().
2991 * page/FrameTree.cpp:
2992 (WebCore::FrameTree::transferChild): Added.
2993 (WebCore::FrameTree::appendChild): Moved the majority of the code into FrameTree::actuallyAppendChild().
2994 (WebCore::FrameTree::actuallyAppendChild): Added.
2997 2010-11-12 Joseph Pecoraro <joepeck@webkit.org>
2999 Reviewed by Alexey Proskuryakov.
3001 Some FrameLoader.h Cleanup
3002 https://bugs.webkit.org/show_bug.cgi?id=49484
3004 Removed function signatures without any implementation. The functions
3005 used to exist, and were nicely refactored into PageCache in r60688 and
3006 the signatures were left behind.
3008 Removed function signature setLoadType. Added in r17238 back when the
3009 file was named WebFrameLoader, and the implementation was lost during
3010 the transition from its mm implementation.
3012 Removed function signature updateHistoryAfterClientRedirect. Implementation
3013 and call points were removed in r18541 but the signature was left behind,
3016 Removed unused debug variable m_didDispatchDidCommitLoad. It was added
3017 and used in Assertions in r28399. It was removed soon after, in r28464
3018 because they were, "firing like crazy. Not sure why yet." It was
3021 Added const qualifier and moved interruptionForPolicyChangeError to
3022 be more like its buddies.
3024 * loader/FrameLoader.cpp:
3025 (WebCore::FrameLoader::FrameLoader):
3026 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
3027 (WebCore::FrameLoader::interruptionForPolicyChangeError):
3028 (WebCore::FrameLoader::dispatchDidCommitLoad):
3029 * loader/FrameLoader.h:
3031 2010-11-12 Yael Aharon <yael.aharon@nokia.com>
3033 Reviewed by David Hyatt.
3035 Spatial Navigation: Cannot focus on some ContainerNode
3036 https://bugs.webkit.org/show_bug.cgi?id=48393
3038 ContainerNode::getLowerRightCorner() assumes that the lowest right corner of its last child
3039 is its own lowest right corner. If that child is an empty text node after an image, it does
3040 not have size and position information, so we should go to the previous child.
3042 Tests: fast/events/spatial-navigation/snav-container-only-white-space.html
3043 fast/events/spatial-navigation/snav-container-white-space.html
3045 * dom/ContainerNode.cpp:
3046 (WebCore::ContainerNode::getLowerRightCorner):
3048 2010-11-12 James Simonsen <simonjam@chromium.org>
3050 Reviewed by Darin Fisher.
3052 [Web Timing] Rename interfaces:
3053 - Navigation -> PerformanceNavigation
3054 - Timing -> PerformanceTiming
3055 https://bugs.webkit.org/show_bug.cgi?id=48919
3057 * DerivedSources.cpp:
3058 * DerivedSources.make:
3061 * WebCore.vcproj/WebCore.vcproj:
3062 * WebCore.xcodeproj/project.pbxproj:
3063 * page/Performance.cpp:
3064 (WebCore::Performance::navigation):
3065 (WebCore::Performance::timing):
3066 * page/Performance.h:
3067 * page/Performance.idl:
3068 * page/PerformanceNavigation.cpp: Renamed from WebCore/page/Navigation.cpp.
3069 (WebCore::PerformanceNavigation::PerformanceNavigation):
3070 (WebCore::PerformanceNavigation::frame):
3071 (WebCore::PerformanceNavigation::disconnectFrame):
3072 (WebCore::PerformanceNavigation::type):
3073 (WebCore::PerformanceNavigation::redirectCount):
3074 * page/PerformanceNavigation.h: Renamed from WebCore/page/Navigation.h.
3075 (WebCore::PerformanceNavigation::create):
3076 * page/PerformanceNavigation.idl: Renamed from WebCore/page/Navigation.idl.
3077 * page/PerformanceTiming.cpp: Renamed from WebCore/page/Timing.cpp.
3078 (WebCore::toIntegerMilliseconds):
3079 (WebCore::getPossiblySkewedTimeInKnownRange):
3080 (WebCore::PerformanceTiming::PerformanceTiming):
3081 (WebCore::PerformanceTiming::frame):
3082 (WebCore::PerformanceTiming::disconnectFrame):
3083 (WebCore::PerformanceTiming::navigationStart):
3084 (WebCore::PerformanceTiming::unloadEventEnd):
3085 (WebCore::PerformanceTiming::redirectStart):
3086 (WebCore::PerformanceTiming::redirectEnd):
3087 (WebCore::PerformanceTiming::fetchStart):
3088 (WebCore::PerformanceTiming::domainLookupStart):
3089 (WebCore::PerformanceTiming::domainLookupEnd):
3090 (WebCore::PerformanceTiming::connectStart):
3091 (WebCore::PerformanceTiming::connectEnd):
3092 (WebCore::PerformanceTiming::requestStart):
3093 (WebCore::PerformanceTiming::requestEnd):
3094 (WebCore::PerformanceTiming::responseStart):
3095 (WebCore::PerformanceTiming::responseEnd):
3096 (WebCore::PerformanceTiming::domLoading):
3097 (WebCore::PerformanceTiming::domInteractive):
3098 (WebCore::PerformanceTiming::domContentLoaded):
3099 (WebCore::PerformanceTiming::domComplete):
3100 (WebCore::PerformanceTiming::loadEventStart):
3101 (WebCore::PerformanceTiming::loadEventEnd):
3102 (WebCore::PerformanceTiming::documentLoader):
3103 (WebCore::PerformanceTiming::documentTiming):
3104 (WebCore::PerformanceTiming::documentLoadTiming):
3105 (WebCore::PerformanceTiming::resourceLoadTiming):
3106 (WebCore::PerformanceTiming::resourceLoadTimeRelativeToAbsolute):
3107 * page/PerformanceTiming.h: Renamed from WebCore/page/Timing.h.
3108 (WebCore::PerformanceTiming::create):
3109 * page/PerformanceTiming.idl: Renamed from WebCore/page/Timing.idl.
3111 2010-11-12 Eric Carlson <eric.carlson@apple.com>
3113 Reviewed by Simon Fraser.
3115 Remove unused code from HTMLMediaElement
3116 https://bugs.webkit.org/show_bug.cgi?id=49451
3118 Just removing code, so no new tests.
3120 * html/HTMLMediaElement.cpp: Removed unused functions.
3121 * html/HTMLMediaElement.h:
3123 2010-11-12 Ryosuke Niwa <rniwa@webkit.org>
3125 Unreviewed Xcode project fix.
3127 * WebCore.xcodeproj/project.pbxproj:
3129 2010-11-12 Alexey Proskuryakov <ap@apple.com>
3131 Reviewed by Simon Fraser.
3133 https://bugs.webkit.org/show_bug.cgi?id=49473
3134 WebKitCSSMatrix shouldn't inherit from StyleBase
3136 No change in behavior, so no tests.
3138 * css/WebKitCSSMatrix.cpp:
3139 (WebCore::WebKitCSSMatrix::WebKitCSSMatrix): We don't inherit from StyleBase any more, so
3140 no need to initialize always-null parent.
3141 (WebCore::WebKitCSSMatrix::setMatrixValue): Since there was never a parent, useStrictParsing()
3144 * css/WebKitCSSMatrix.h: Just inherit from RefCounted<WebKitCSSMatrix>. Removed unused default
3145 constructor and copy constructor.
3147 * html/canvas/WebGLRenderingContext.h: Removed an unnneded forward declaration.
3149 2010-11-12 Helder Correia <helder@sencha.com>
3151 Reviewed by Andreas Kling.
3153 [Qt] Path::addArc() does not set right angle direction on full arcs
3154 https://bugs.webkit.org/show_bug.cgi?id=49138
3156 Ensure correctness of nonzero winding rule for full arc paths.
3157 Invert the sign of the span if the direction is counterclockwise.
3159 Test: fast/canvas/canvas-arc-360-winding.html
3161 * platform/graphics/qt/PathQt.cpp:
3162 (WebCore::Path::addArc):
3164 2010-11-05 Dimitri Glazkov <dglazkov@chromium.org>
3166 Reviewed by Darin Adler.
3168 Implement shadow DOM-aware event targeting and introduce EventContext to track the context of each event dispatch.
3169 https://bugs.webkit.org/show_bug.cgi?id=46015
3171 Test: fast/events/shadow-boundary-crossing-2.html
3173 This patch adds the notion of EventContext (and a very similar-acting WindowEventContext, specifically
3174 for DOMWindow), an abstraction that carries information around dispatching an event for any given Node.
3176 This abstraction is necessary to ensure that events, fired from shadow DOM nodes are properly retargeted to
3177 appear as if they are coming from their host, thus never exposing the shadow DOM nodes to the world outside.
3179 * Android.mk: Added EventContext, WindowEventContext files.
3180 * CMakeLists.txt: Ditto.
3181 * GNUmakefile.am: Ditto.
3182 * WebCore.gypi: Ditto.
3183 * WebCore.pro: Ditto.
3184 * WebCore.xcodeproj/project.pbxproj: Ditto.
3185 * WebCore.vcproj/WebCore.vcproj: Ditto.
3186 * dom/ContainerNode.cpp:
3187 (WebCore::notifyChildInserted): Changed to be shadow DOM-aware.
3188 * dom/EventContext.cpp: Added.
3189 * dom/EventContext.h: Added.
3191 (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Changed to be shadow DOM-aware.
3192 (WebCore::Node::createRendererIfNeeded): Ditto.
3193 (WebCore::Node::parentOrHostNode): Added new helper method.
3194 (WebCore::Node::enclosingLinkEventParentOrSelf): Changed to be shadow DOM-aware.
3195 (WebCore::eventTargetRespectingSVGTargetRules): Collapsed two helper methods into one.
3196 (WebCore::Node::getEventAncestors): Renamed and refactored to collect a vector of EventContexts.
3197 (WebCore::Node::topEventContext): Added.
3198 (WebCore::eventHasListeners): Changed to use EventContexts.
3199 (WebCore::Node::dispatchGenericEvent): Ditto.
3200 * dom/Node.h: Removed eventParentNode that's no longer needed, added parentOrHostNode decl,
3201 and changed signature of eventAncestors to use EventContexts.
3203 (WebCore::Text::createRenderer): Changed to be shadow DOM-aware.
3204 * dom/WindowEventContext.cpp: Added.
3205 * dom/WindowEventContext.h: Added.
3206 * inspector/InspectorDOMAgent.cpp:
3207 (WebCore::InspectorDOMAgent::getEventListenersForNode): Changed to use EventContexts.
3208 * page/EventHandler.cpp:
3209 (WebCore::EventHandler::updateMouseEventTargetNode): Removed code that's no longer necessary.
3210 * rendering/RenderTextControlMultiLine.cpp:
3211 (WebCore::RenderTextControlMultiLine::subtreeHasChanged): Removed event invocation that's
3212 no longer necessary.
3213 * rendering/ShadowElement.h: Made m_shadowParent a RefPtr to avoid stale references when parent
3215 * rendering/TextControlInnerElements.cpp:
3216 (WebCore::TextControlInnerTextElement::defaultEventHandler): Flipped the condition back
3217 from where it was prior to r60418.
3218 * svg/SVGElement.cpp: Removed eventParentNode that's no longer needed.
3219 * svg/SVGElement.h: Ditto.
3221 2010-11-12 Ryuan Choi <ryuan.choi@samsung.com>
3223 Reviewed by Martin Robinson.
3225 [GTK] Remove unnecessary header for FontPlatformDataPango.cpp
3226 https://bugs.webkit.org/show_bug.cgi?id=46029
3228 Remove unnecessary header includes.
3229 No new tests, as there's no functionality.
3231 * platform/graphics/pango/FontPlatformDataPango.cpp:
3233 2010-11-11 Abhishek Arya <inferno@chromium.org>
3235 Reviewed by Adam Barth.
3237 Not allow drag and drop across different origins.
3238 https://bugs.webkit.org/show_bug.cgi?id=49098
3240 Test: http/tests/security/drag-drop-different-origin.html
3242 * page/DragController.cpp:
3243 (WebCore::DragController::tryDocumentDrag):
3244 * page/SecurityOrigin.cpp:
3245 (WebCore::SecurityOrigin::canDropOnTarget):
3246 * page/SecurityOrigin.h:
3248 2010-11-11 Alexander Pavlov <apavlov@chromium.org>
3250 Reviewed by Yury Semikhatsky.
3252 Web Inspector: Inspect element tooltip obscures element metrics
3253 https://bugs.webkit.org/show_bug.cgi?id=47822
3255 * inspector/InspectorController.cpp:
3256 (WebCore::InspectorController::drawNodeHighlight):
3257 (WebCore::InspectorController::drawElementTitle):
3259 2010-11-12 Luiz Agostini <luiz.agostini@openbossa.org>
3261 Reviewed by Kenneth Rohde Christiansen.
3263 [Qt] Button's background style from default Qt Mobile Theme is overriding facebook's button style
3264 https://bugs.webkit.org/show_bug.cgi?id=48198
3266 Instead of creating gradients that goes from white to grey and cover the whole element the gradients
3267 are created by varying the alpha channel of a dark color. This way the effect will not override the
3268 background color of the elements.
3270 * css/themeQtMobile.css:
3272 2010-11-12 Justin Schuh <jschuh@chromium.org>
3274 Reviewed by Adam Barth.
3276 Use a RefPtr inside ContainerNode::willRemove loop
3277 https://bugs.webkit.org/show_bug.cgi?id=49237
3279 Test: fast/innerHTML/innerHTML-iframe.html
3281 * dom/ContainerNode.cpp:
3282 (WebCore::ContainerNode::willRemove):
3284 2010-11-12 Pavel Feldman <pfeldman@chromium.org>
3286 Reviewed by Yury Semikhatsky.
3288 Web Inspector: add more event listener breakpoint types, add support for regular breakpoint hit state, beautify hit rendering.
3289 https://bugs.webkit.org/show_bug.cgi?id=49130
3291 * English.lproj/localizedStrings.js:
3292 * inspector/front-end/BreakpointManager.js:
3293 (WebInspector.BreakpointManager.prototype.debuggerPaused):
3294 (WebInspector.Breakpoint.jsBreakpointId):
3295 (WebInspector.Breakpoint.prototype.get id):
3296 * inspector/front-end/BreakpointsSidebarPane.js:
3297 (WebInspector.EventListenerBreakpointsSidebarPane):
3298 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCategory):
3299 * inspector/front-end/CallStackSidebarPane.js:
3300 (WebInspector.CallStackSidebarPane.prototype._breakpointHit): don't call populateStatusMessage for JS breakpoints
3301 since there is no specific message in that case.
3302 * inspector/front-end/ScriptsPanel.js:
3303 (WebInspector.ScriptsPanel):
3304 (WebInspector.ScriptsPanel.prototype.reset):
3305 * inspector/front-end/inspector.css:
3306 (#elements-sidebar):
3309 (li.breakpoint-hit .breakpoint-hit-marker):
3311 2010-11-12 Andrey Kosyakov <caseq@chromium.org>
3313 Reviewed by Yury Semikhatsky.
3315 Web Inspector: [Extensions API] [refactoring] generate public API interfaces automatically
3316 https://bugs.webkit.org/show_bug.cgi?id=49441
3318 * inspector/front-end/ExtensionAPI.js:
3319 (WebInspector.injectedExtensionAPI.PanelImpl):
3320 (WebInspector.injectedExtensionAPI):
3321 (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPane):
3322 (WebInspector.injectedExtensionAPI.AuditCategoryImpl):
3323 (WebInspector.injectedExtensionAPI.AuditResultImpl):
3324 (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.get Severity):
3325 (WebInspector.injectedExtensionAPI.):
3327 2010-11-12 Renata Hodovan <reni@webkit.org>
3329 Reviewed by Nikolas Zimmermann.
3331 SVGFEDisplacementMapElement doesn't support dynamic invalidation
3332 https://bugs.webkit.org/show_bug.cgi?id=49430
3334 The dynamic changes are captured by the svgAttributeChanged function. Invalidate the filter primitive if necessary.
3336 Tests: svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr.html
3337 svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr.html
3338 svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr.html
3339 svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr.html
3340 svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr.html
3341 svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop.html
3342 svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop.html
3343 svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop.html
3344 svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop.html
3345 svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop.html
3347 * svg/SVGFEDisplacementMapElement.cpp:
3348 (WebCore::SVGFEDisplacementMapElement::svgAttributeChanged):
3349 * svg/SVGFEDisplacementMapElement.h:
3351 2010-11-12 Andrey Kosyakov <caseq@chromium.org>
3353 Reviewed by Yury Semikhatsky.
3355 Web Inspector: [refactoring] do not use absolute positioning for tabbed panes
3356 https://bugs.webkit.org/show_bug.cgi?id=49439
3358 * inspector/front-end/TabbedPane.js:
3359 (WebInspector.TabbedPane):
3360 (WebInspector.TabbedPane.prototype.appendTab):
3361 * inspector/front-end/inspector.css:
3362 (.resource-view.visible):
3363 (.resource-view .tabbed-pane-header):
3364 (.resource-view-cookies):
3366 (.tabbed-pane-content):
3367 * inspector/front-end/networkPanel.css:
3369 2010-11-12 John Knottenbelt <jknotten@chromium.org>
3371 Reviewed by Steve Block.
3373 Rename GeolocationControllerClient to GeolocationClient.
3374 https://bugs.webkit.org/show_bug.cgi?id=49259
3376 No new tests, renaming only.
3381 * WebCore.vcproj/WebCore.vcproj:
3382 * WebCore.xcodeproj/project.pbxproj:
3383 * page/GeolocationClient.h: Renamed from WebCore/page/GeolocationControllerClient.h.
3384 (WebCore::GeolocationClient::~GeolocationClient):
3385 * page/GeolocationController.cpp:
3386 (WebCore::GeolocationController::GeolocationController):
3387 * page/GeolocationController.h:
3390 2010-11-12 Ilya Sherman <isherman@chromium.org>
3392 Reviewed by Eric Seidel.
3394 Remove some trailing whitespace
3395 https://bugs.webkit.org/show_bug.cgi?id=49433
3397 * platform/PopupMenuClient.h:
3398 * platform/chromium/PopupMenuChromium.cpp:
3399 (WebCore::PopupContainer::show):
3400 (WebCore::PopupListBox::paintRow):
3401 (WebCore::PopupListBox::scrollToRevealRow):
3402 * platform/chromium/PopupMenuChromium.h:
3403 * platform/chromium/SearchPopupMenuChromium.cpp:
3404 * rendering/RenderMenuList.h:
3405 (WebCore::RenderMenuList::toRenderMenuList):
3406 * rendering/RenderTextControlSingleLine.h:
3407 (WebCore::toRenderTextControlSingleLine):
3409 2010-11-12 Ryosuke Niwa <rniwa@webkit.org>
3411 Reviewed by Csaba Osztrogonác.
3413 [qt] script-clone tests added in r71895 fails on qt platform
3414 https://bugs.webkit.org/show_bug.cgi?id=49429
3416 Fixed parseEndElement to call ScriptElement's executeScript as supposed to that of ScriptController.
3418 * dom/XMLDocumentParserQt.cpp:
3419 (WebCore::XMLDocumentParser::parseEndElement):
3421 2010-11-05 MORITA Hajime <morrita@google.com>
3423 Reviewed by Kent Tamura.
3425 Refactoring: Return values of TextCheckingHelper::paragraphAlignedRange should form a class.
3426 https://bugs.webkit.org/show_bug.cgi?id=49053
3428 Replaced paragraphAlignedRange() function call into
3429 TextCheckingParagraph class. The class encapsulates a range of a
3430 paragraph, and its relation within associated checking range.
3431 Instance variables of the class are computed lazily. So we can save unnecessary
3432 memory allocation and DOM tree traversal.
3434 No new tests, no behavior change.
3436 * editing/Editor.cpp:
3437 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Replaced paragraphAlignedRange() call.
3438 (WebCore::Editor::changeBackToReplacedString): Replaced paragraphAlignedRange() call.
3439 * editing/TextCheckingHelper.cpp:
3440 (WebCore::expandToParagraphBoundary):
3441 (WebCore::TextCheckingParagraph::TextCheckingParagraph):
3442 (WebCore::TextCheckingParagraph::~TextCheckingParagraph):
3443 (WebCore::TextCheckingParagraph::expandRangeToNextEnd):
3444 (WebCore::TextCheckingParagraph::invalidateParagraphRangeValues):
3445 (WebCore::TextCheckingParagraph::rangeLength):
3446 (WebCore::TextCheckingParagraph::paragraphRange):
3447 (WebCore::TextCheckingParagraph::subrange):
3448 (WebCore::TextCheckingParagraph::offsetTo):
3449 (WebCore::TextCheckingParagraph::isEmpty):
3450 (WebCore::TextCheckingParagraph::offsetAsRange):
3451 (WebCore::TextCheckingParagraph::text):
3452 (WebCore::TextCheckingParagraph::checkingStart):
3453 (WebCore::TextCheckingParagraph::checkingEnd):
3454 (WebCore::TextCheckingParagraph::checkingLength):
3455 (WebCore::TextCheckingHelper::findFirstBadGrammar): Replaced paragraphAlignedRange() call.
3456 (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): Replaced paragraphAlignedRange() call.
3457 * editing/TextCheckingHelper.h:
3458 (WebCore::TextCheckingParagraph::textLength):
3459 (WebCore::TextCheckingParagraph::textSubstring):
3460 (WebCore::TextCheckingParagraph::textCharacters):
3461 (WebCore::TextCheckingParagraph::textCharAt):
3462 (WebCore::TextCheckingParagraph::checkingSubstring):
3463 (WebCore::TextCheckingParagraph::checkingRangeMatches):
3464 (WebCore::TextCheckingParagraph::isCheckingRangeCoveredBy):
3465 (WebCore::TextCheckingParagraph::checkingRangeCovers):
3466 (WebCore::TextCheckingParagraph::checkingRange):
3467 (WebCore::TextCheckingParagraph::isTextEmpty):
3468 (WebCore::TextCheckingParagraph::isRangeEmpty):
3470 2010-11-11 Ryosuke Niwa <rniwa@webkit.org>
3472 Reviewed by Darin Adler.
3474 Script runs more than once after a clone
3475 https://bugs.webkit.org/show_bug.cgi?id=48966
3477 The bug was caused by cloneElementWithoutChildren's not propagating isEvaluated flag,
3478 which indicates whether or not the script has already started, and the fact
3479 neither HTMLScriptRunner nor XMLDocumentParser was setting isEvaluated flag to true.
3481 Fixed the bug by making cloneElementWithoutChildren call a virtual cloneElementWithoutAttributesAndChildren,
3482 and override it in HTMLScriptElement and SVGScriptElement to propagate isEvaluated flag,
3483 and replacing direct access to ScriptController by a call to new ScriptElementData::executeScript,
3484 which updates the isEvaluated flag properly.
3486 See also: http://www.whatwg.org/specs/web-apps/current-work/#already-started
3488 Tests: fast/dom/script-clone-rerun-self.html
3489 fast/dom/script-clone-rerun.html
3490 svg/dom/SVGScriptElement/script-clone-rerun-self.svg
3491 svg/dom/SVGScriptElement/script-clone-rerun.svg