bb1ae98ad5b01d7632589678070c565987ec0224
[WebKit-https.git] / WebCore / ChangeLog
1 2010-11-03  Pavel Feldman  <pfeldman@chromium.org>
2
3         Reviewed by Jeremy Orlow.
4
5         Web Inspector: brush up breakpoints UI and UX.
6         https://bugs.webkit.org/show_bug.cgi?id=48901
7
8         * inspector/front-end/BreakpointManager.js:
9         (WebInspector.DOMBreakpoint.prototype.populateLabelElement):
10         (WebInspector.XHRBreakpoint.prototype.populateLabelElement):
11         * inspector/front-end/BreakpointsSidebarPane.js:
12         (WebInspector.BreakpointsSidebarPane.prototype.addBreakpointItem):
13         (WebInspector.XHRBreakpointsSidebarPane.prototype.addBreakpointItem):
14         (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog):
15         (WebInspector.BreakpointItem):
16         * inspector/front-end/ElementsTreeOutline.js:
17         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu.handlerFunction):
18         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
19         * inspector/front-end/PropertiesSection.js:
20         (WebInspector.PropertiesSection):
21         * inspector/front-end/inspector.css:
22         (.monospace):
23         (body.platform-mac.platform-mac-snowleopard .source-code):
24         (body.platform-windows .monospace, body.platform-windows .source-code):
25         (body.platform-linux .monospace, body.platform-linux .source-code):
26         (.source-code):
27         (.section .header):
28         (.section .header::before):
29         (.section .header .title, .event-bar .header .title):
30         (.section .header .subtitle, .event-bar .header .subtitle):
31         (.section.expanded .properties, .event-bar.expanded .event-properties):
32         (.event-listener-breakpoints .event-category):
33         (.event-listener-breakpoints.properties-tree .children li):
34         (.event-listener-breakpoints .checkbox-elem):
35         (.event-bar):
36         (.event-bars .event-bar .header .title):
37         (.event-bars .event-bar .header::before):
38         (.pane > .body .info):
39         (.pane > .body .placard + .info):
40         (ol.breakpoint-list):
41         (.breakpoint-list li):
42         (.pane .breakpoint-hit):
43         (.cursor-pointer):
44         (.cursor-auto):
45
46 2010-11-03  Nikolas Zimmermann  <nzimmermann@rim.com>
47
48         Not reviewed.
49
50         Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept
51         https://bugs.webkit.org/show_bug.cgi?id=48898
52
53         Fix Chromium/V8 build for real, verified using a local ToT Chromium build.
54
55         * bindings/scripts/CodeGeneratorV8.pm:
56
57 2010-11-03  Nikolas Zimmermann  <nzimmermann@rim.com>
58
59         Not reviewed.
60
61         Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept
62         https://bugs.webkit.org/show_bug.cgi?id=48898
63
64         Next attempt to fix the Chromium/V8 builds - a class forward in the headers was still missing.
65
66         * bindings/scripts/CodeGeneratorV8.pm: Add SVGStringListPropertyTearOff in the V8SVGStringList header.
67
68 2010-11-03  Nikolas Zimmermann  <nzimmermann@rim.com>
69
70         Not reviewed.
71
72         Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept
73         https://bugs.webkit.org/show_bug.cgi?id=48898
74
75         Attempt to fix the Chromium/V8 builds.
76
77         * bindings/scripts/CodeGeneratorV8.pm: Add missing "SVGStringListPropertyTearOff.h" include, also replaces some commas by semicolons (no idea why it worked before, Perl is not strict...)
78
79 2010-11-03  Nikolas Zimmermann  <nzimmermann@rim.com>
80
81         Reviewed by Dirk Schulze.
82
83         Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept
84         https://bugs.webkit.org/show_bug.cgi?id=48898
85
86         Convert SVGAnimatedString/SVGStringList to the new svg animated type concept.
87         SVGStringList is special compared to all other SVG*Lists, as it returns non-live elements.
88         That means myStringList.getItem(0) = 'foobar' doesn't take effect.
89
90         When appending an item to a SVGStringList, that has been taken from another list, it's not removed from the list origin.
91         That demanded a new SVGStringListPropertyTearOff which does just that.
92
93         Tests: svg/W3C-SVG-1.1-SE/types-dom-06-f.svg
94                svg/dom/SVGStringList.html
95
96         * GNUmakefile.am: Add SVGAnimatedString.h / SVGStringListPropertyTearOff.h to build.
97         * WebCore.gypi: Ditto.
98         * WebCore.pro: Ditto.
99         * WebCore.vcproj/WebCore.vcproj: Ditto.
100         * WebCore.xcodeproj/project.pbxproj: Ditto.
101         * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedString as new style svg animated type. Map SVGStringList to SVGStringListPropertyTearOff.
102         * bindings/scripts/CodeGeneratorJS.pm: Handle SVGStringListPropertyTearOff in GetSVGPropertyTypes.
103         * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
104         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
105         * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedString handling.
106         * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
107         * svg/SVGAElement.cpp: Renamed target to svgTarget() to avoid clashes with Element::target(), adjust the bindings to call svgTarget() instead of target(), when processing SVGAElement.
108         (WebCore::SVGAElement::parseMappedAttribute):
109         (WebCore::SVGAElement::synchronizeProperty):
110         * svg/SVGAElement.h:
111         * svg/SVGAltGlyphElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/
112         * svg/SVGAnimatedString.h: Added.
113         * svg/SVGCursorElement.h: Ditto.
114         * svg/SVGFEBlendElement.h: Ditto.
115         * svg/SVGFEColorMatrixElement.h: Ditto.
116         * svg/SVGFEComponentTransferElement.h: Ditto.
117         * svg/SVGFECompositeElement.h: Ditto.
118         * svg/SVGFEConvolveMatrixElement.h: Ditto.
119         * svg/SVGFEDiffuseLightingElement.h: Ditto.
120         * svg/SVGFEDisplacementMapElement.h: Ditto.
121         * svg/SVGFEGaussianBlurElement.h: Ditto.
122         * svg/SVGFEImageElement.h: Ditto.
123         * svg/SVGFEMergeNodeElement.h: Ditto.
124         * svg/SVGFEMorphologyElement.h: Ditto.
125         * svg/SVGFEOffsetElement.h: Ditto.
126         * svg/SVGFESpecularLightingElement.h: Ditto.
127         * svg/SVGFETileElement.h: Ditto.
128         * svg/SVGFilterElement.h: Ditto.
129         * svg/SVGFilterPrimitiveStandardAttributes.h: Ditto.
130         * svg/SVGForeignObjectElement.h: Ditto.
131         * svg/SVGGradientElement.h: Ditto.
132         * svg/SVGImageElement.h: Ditto. 
133         * svg/SVGLengthList.idl: Remove leftover SVGListProperty marker.
134         * svg/SVGMPathElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/
135         * svg/SVGPatternElement.h: Ditto.
136         * svg/SVGScriptElement.h: Ditto.
137         * svg/SVGStringList.cpp: Make SVGStringList a plain Vector<String>.
138         (WebCore::SVGStringList::commitChange): React to SVGStringList changes.
139         (WebCore::SVGStringList::reset):
140         (WebCore::SVGStringList::parse):
141         * svg/SVGStringList.h:
142         (WebCore::SVGStringList::SVGStringList):
143         * svg/SVGStyledElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/
144         * svg/SVGTRefElement.h: Ditto.
145         * svg/SVGTests.cpp: Adapt to SVGStringList API changes.
146         (WebCore::SVGTests::SVGTests):
147         (WebCore::SVGTests::hasExtension):
148         (WebCore::SVGTests::isValid):
149         (WebCore::SVGTests::parseMappedAttribute):
150         (WebCore::SVGTests::isKnownAttribute):
151         * svg/SVGTests.h: Ditto.
152         (WebCore::SVGTests::requiredFeatures):
153         (WebCore::SVGTests::requiredExtensions):
154         (WebCore::SVGTests::systemLanguage):
155         * svg/SVGTextPathElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/
156         * svg/SVGURIReference.h: Adapt to SVGStringList API changes.
157         (WebCore::SVGURIReference::~SVGURIReference):
158         * svg/SVGUseElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/
159         * svg/SVGViewElement.cpp: Adapt to SVGStringList API changes.
160         (WebCore::SVGViewElement::SVGViewElement):
161         (WebCore::SVGViewElement::parseMappedAttribute):
162         * svg/SVGViewElement.h: Ditto.
163         (WebCore::SVGViewElement::viewTarget):
164         * svg/properties/SVGAnimatedPropertyMacros.h: Moved GetOwnerElementForType heleprs from SVGAnimatedPropertySynchronizer into this file.
165         * svg/properties/SVGAnimatedPropertySynchronizer.h: 
166         * svg/properties/SVGPropertyTraits.h: Handle SVGStringList.
167         * svg/properties/SVGStringListPropertyTearOff.h: Added. This is a simplified version of SVGListPropertyTearOff, tied to SVGStringList and its special demands.
168         (WebCore::SVGStringListPropertyTearOff::create):
169         (WebCore::SVGStringListPropertyTearOff::clear):
170         (WebCore::SVGStringListPropertyTearOff::numberOfItems):
171         (WebCore::SVGStringListPropertyTearOff::initialize):
172         (WebCore::SVGStringListPropertyTearOff::getItem):
173         (WebCore::SVGStringListPropertyTearOff::insertItemBefore):
174         (WebCore::SVGStringListPropertyTearOff::replaceItem):
175         (WebCore::SVGStringListPropertyTearOff::removeItem):
176         (WebCore::SVGStringListPropertyTearOff::appendItem):
177         (WebCore::SVGStringListPropertyTearOff::SVGStringListPropertyTearOff):
178
179 2010-11-03  Zoltan Herczeg  <zherczeg@webkit.org>
180
181         Reviewed by Dirk Schulze.
182
183         SVG FELighting performance issues
184         https://bugs.webkit.org/show_bug.cgi?id=48212
185
186         This patch speeds-up FELighting filter painting by 40%
187         It reduces the number of floating point operations and
188         empolys faster pixel manipulation (both for read and
189         write). Furthermore the length() member of FloatPoint3D
190         is made inline to speed up vector length calculations.
191
192         The lighting filter pixels tests are cover this patch.
193
194         * platform/graphics/FloatPoint3D.cpp:
195         * platform/graphics/FloatPoint3D.h:
196         (WebCore::FloatPoint3D::length):
197         * platform/graphics/filters/FELighting.cpp:
198         (WebCore::FELighting::LightingData::topLeft):
199         (WebCore::FELighting::LightingData::topRow):
200         (WebCore::FELighting::LightingData::topRight):
201         (WebCore::FELighting::LightingData::leftColumn):
202         (WebCore::FELighting::LightingData::interior):
203         (WebCore::FELighting::LightingData::rightColumn):
204         (WebCore::FELighting::LightingData::bottomLeft):
205         (WebCore::FELighting::LightingData::bottomRow):
206         (WebCore::FELighting::LightingData::bottomRight):
207         (WebCore::FELighting::inlineSetPixel):
208         (WebCore::FELighting::setPixel):
209         (WebCore::FELighting::drawLighting):
210         (WebCore::FELighting::apply):
211         * platform/graphics/filters/FELighting.h:
212         * platform/graphics/filters/LightSource.cpp:
213         (WebCore::PointLightSource::updatePaintingData):
214         (WebCore::SpotLightSource::updatePaintingData):
215         (WebCore::DistantLightSource::initPaintingData):
216         * platform/graphics/filters/LightSource.h:
217
218 2010-11-03  Daniel Bates  <dbates@rim.com>
219
220         Reviewed by Adam Barth.
221
222         For unnamed frames, window.name returns a generated name
223         https://bugs.webkit.org/show_bug.cgi?id=6751
224
225         Part 2 of 2.
226
227         Fixes an issue where the window.name of an unnamed frame returns
228         a unique generated name that is used internally to identify the
229         frame. Instead, we should return an empty string as implied by
230         section 5.1.6 of the HTML5 spec. (http://www.w3.org/TR/html5/browsers.html#browsing-context-names).
231         This section describes that a browsing context can have no name or be
232         the empty string.
233
234         * html/HTMLFrameElementBase.cpp:
235         (WebCore::HTMLFrameElementBase::openURL): Removed ASSERT for empty
236         frame name since this is valid as per the HTML5 spec.
237         (WebCore::HTMLFrameElementBase::setName): Removed the call to FrameTree::uniqueChildName()
238         since the loader code no longer depends on the frame name being unique.
239         * page/DOMWindow.cpp:
240         (WebCore::DOMWindow::name): Modified to call FrameTree::name().
241         * page/FrameTree.cpp:
242         (WebCore::FrameTree::setName):
243         (WebCore::FrameTree::clearName):
244         * page/FrameTree.h:
245         (WebCore::FrameTree::name): Re-added; returns the DOM-specified name of the
246         frame. Previously, this method returned the internal frame name.
247
248 2010-11-03  takano takumi  <takano1@asia.apple.com>
249
250         Reviewed by Dan Bernstein.
251
252         Add text-combine property to our property list. Reflect the setting to a RenderStyle object.
253         https://bugs.webkit.org/show_bug.cgi?id=48608
254
255         Test: fast/text/international/text-combine-parser-test.html
256
257         * css/CSSComputedStyleDeclaration.cpp: Added text-combine property support.
258         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
259         * css/CSSParser.cpp: Added text-combine property support.
260         (WebCore::CSSParser::parseValue):
261         * css/CSSPrimitiveValueMappings.h: Added a primitive value mapper for text-combine
262         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
263         (WebCore::CSSPrimitiveValue::operator TextCombine):
264         * css/CSSPropertyNames.in: Added "text-combine".
265         * css/CSSStyleSelector.cpp: Added text-combine property support.
266         (WebCore::CSSStyleSelector::applyProperty):
267         * css/CSSValueKeywords.in: Added values for text-combine.
268         * rendering/style/RenderStyle.cpp:
269         (WebCore::RenderStyle::diff): Added check of text-combine value.
270         * rendering/style/RenderStyle.h: Added accessors for text-combine.
271         (WebCore::InheritedFlags::textCombine):
272         (WebCore::InheritedFlags::setTextCombine):
273         (WebCore::InheritedFlags::initialTextCombine):
274         * rendering/style/RenderStyleConstants.h:
275         * rendering/style/StyleRareNonInheritedData.cpp: Added text-combine property support.
276         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
277         (WebCore::StyleRareNonInheritedData::operator==):
278         * rendering/style/StyleRareNonInheritedData.h: Added text-combine entry for RenderStyle object here.
279
280 2010-11-02  Daniel Bates  <dbates@rim.com>
281
282         Reviewed by Adam Barth.
283
284         For unnamed frames, window.name returns a generated name
285         https://bugs.webkit.org/show_bug.cgi?id=6751
286
287         Part 1 of 2.
288
289         Towards fixing bug #6751, rename FrameTree::name() to FrameTree::uniqueName(),
290         which is more descriptive of its purpose. A follow up patch will re-add
291         FrameTree::name() which will return the DOM-specified name of the frame.
292
293         We will also take this opportunity to verify that we have found all the
294         call sites of FrameTree::name().
295
296         * loader/DocumentLoader.cpp:
297         (WebCore::DocumentLoader::mainResource): Use FrameTree::uniqueName().
298         * loader/FrameLoader.cpp:
299         (WebCore::FrameLoader::loadURLIntoChildFrame): Ditto.
300         (WebCore::FrameLoader::commitProvisionalLoad): Ditto.
301         * loader/HistoryController.cpp:
302         (WebCore::HistoryController::saveDocumentState): Ditto.
303         (WebCore::HistoryController::restoreDocumentState): Ditto.
304         (WebCore::HistoryController::createItem): Ditto.
305         (WebCore::HistoryController::currentFramesMatchItem): Ditto.
306         * loader/ProgressTracker.cpp:
307         (WebCore::ProgressTracker::progressStarted): Ditto.
308         (WebCore::ProgressTracker::progressCompleted): Ditto.
309         * loader/archive/cf/LegacyWebArchive.cpp:
310         (WebCore::LegacyWebArchive::create): Ditto.
311         * page/DOMWindow.cpp:
312         (WebCore::DOMWindow::name): Ditto.
313         * page/FrameTree.cpp:
314         (WebCore::FrameTree::setName): Ditto.
315         (WebCore::FrameTree::clearName): Ditto.
316         (WebCore::FrameTree::uniqueChildName): Ditto.
317         (WebCore::FrameTree::child): Ditto.
318         (WebCore::FrameTree::find): Ditto.
319         * page/FrameTree.h:
320         (WebCore::FrameTree::uniqueName): Renamed (formerly FrameTree::name()).
321
322 2010-11-02  Chris Rogers  <crogers@google.com>
323
324         Reviewed by James Robinson.
325
326         Add AudioProcessingEvent files
327         https://bugs.webkit.org/show_bug.cgi?id=48884
328
329         No new tests since audio API is not yet implemented.
330
331         * webaudio/AudioProcessingEvent.cpp: Added.
332         (WebCore::AudioProcessingEvent::create):
333         (WebCore::AudioProcessingEvent::AudioProcessingEvent):
334         (WebCore::AudioProcessingEvent::~AudioProcessingEvent):
335         (WebCore::AudioProcessingEvent::isAudioProcessingEvent):
336         * webaudio/AudioProcessingEvent.h: Added.
337         (WebCore::AudioProcessingEvent::inputBuffer):
338         (WebCore::AudioProcessingEvent::outputBuffer):
339         * webaudio/AudioProcessingEvent.idl: Added.
340
341 2010-11-02  Al Patrick  <apatrick@chromium.org>
342
343         Reviewed by Kenneth Russell.
344
345         Added PluginLayerChromium, which composites plugin instances that have an associated OpenGL backing texture.
346
347         https://bugs.webkit.org/show_bug.cgi?id=48032
348
349         * WebCore.gypi:
350         * loader/SubframeLoader.cpp
351         (WebCore::SubframeLoader::loadPlugin):
352         * platform/graphics/chromium/LayerChromium.cpp:
353         (WebCore::LayerChromium::setNeedsDisplay):
354         * platform/graphics/chromium/LayerRendererChromium.cpp:
355         (WebCore::LayerRendererChromium::initializeSharedObjects):
356         (WebCore::LayerRendererChromium::cleanupSharedObjects):
357         * platform/graphics/chromium/LayerRendererChromium.h:
358         (WebCore::LayerRendererChromium::pluginLayerSharedValues):
359         * platform/graphics/chromium/PluginLayerChromium.cpp: Added.
360         (WebCore::PluginLayerChromium::SharedValues::SharedValues):
361         (WebCore::PluginLayerChromium::SharedValues::~SharedValues):
362         (WebCore::PluginLayerChromium::create):
363         (WebCore::PluginLayerChromium::PluginLayerChromium):
364         (WebCore::PluginLayerChromium::updateContents):
365         (WebCore::PluginLayerChromium::draw):
366         * platform/graphics/chromium/PluginLayerChromium.h: Added.
367         (WebCore::PluginLayerChromium::drawsContent):
368         (WebCore::PluginLayerChromium::setTextureId):
369         (WebCore::PluginLayerChromium::SharedValues::shaderProgram):
370         (WebCore::PluginLayerChromium::SharedValues::shaderSamplerLocation):
371         (WebCore::PluginLayerChromium::SharedValues::shaderMatrixLocation):
372         (WebCore::PluginLayerChromium::SharedValues::shaderAlphaLocation):
373         (WebCore::PluginLayerChromium::SharedValues::initialized):
374
375 2010-11-02  James Simonsen  <simonjam@chromium.org>
376
377         Reviewed by Adam Barth.
378
379         mathml in html sometimes incorrectly parsed
380         https://bugs.webkit.org/show_bug.cgi?id=48105
381
382         * html/parser/HTMLTreeBuilder.cpp:
383         (WebCore::HTMLTreeBuilder::processEndTag): Fixed to match HTML5 spec.
384
385 2010-11-02  Chris Guillory  <chris.guillory@google.com>
386
387         Reviewed by Dmitry Titov.
388
389         Null check obj in AXObjectCache::postPlatformNotification.
390         https://bugs.webkit.org/show_bug.cgi?id=48896
391
392         * accessibility/chromium/AXObjectCacheChromium.cpp:
393         (WebCore::AXObjectCache::postPlatformNotification):
394
395 2010-11-02  Kavita Kanetkar  <kkanetkar@chromium.org>
396
397         Reviewed by Dumitru Daniliuc.
398
399         [FileSystem] Support not creating directories when queried by inspector.
400         https://bugs.webkit.org/show_bug.cgi?id=48169
401
402         * fileapi/LocalFileSystem.cpp:
403         (WebCore::openFileSystem):
404         (WebCore::LocalFileSystem::readFileSystem):
405         (WebCore::LocalFileSystem::requestFileSystem):
406         * fileapi/LocalFileSystem.h:
407         * platform/AsyncFileSystem.cpp:
408         (WebCore::AsyncFileSystem::openFileSystem):
409         * platform/AsyncFileSystem.h:
410
411 2010-11-02  Chris Rogers  <crogers@google.com>
412
413         Reviewed by Kenneth Russell.
414
415         Add AudioBufferSourceNode files
416         https://bugs.webkit.org/show_bug.cgi?id=48012
417
418         No new tests since audio API is not yet implemented.
419
420         * webaudio/AudioBufferSourceNode.cpp: Added.
421         (WebCore::AudioBufferSourceNode::create):
422         (WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
423         (WebCore::AudioBufferSourceNode::~AudioBufferSourceNode):
424         (WebCore::AudioBufferSourceNode::process):
425         (WebCore::AudioBufferSourceNode::provideInput):
426         (WebCore::AudioBufferSourceNode::readFromBuffer):
427         (WebCore::AudioBufferSourceNode::readFromBufferWithGrainEnvelope):
428         (WebCore::AudioBufferSourceNode::reset):
429         (WebCore::AudioBufferSourceNode::setBuffer):
430         (WebCore::AudioBufferSourceNode::numberOfChannels):
431         (WebCore::AudioBufferSourceNode::noteOn):
432         (WebCore::AudioBufferSourceNode::noteGrainOn):
433         (WebCore::AudioBufferSourceNode::noteOff):
434         (WebCore::AudioBufferSourceNode::totalPitchRate):
435         * webaudio/AudioBufferSourceNode.h: Added.
436         (WebCore::AudioBufferSourceNode::buffer):
437         (WebCore::AudioBufferSourceNode::looping):
438         (WebCore::AudioBufferSourceNode::setLooping):
439         (WebCore::AudioBufferSourceNode::gain):
440         (WebCore::AudioBufferSourceNode::playbackRate):
441         (WebCore::AudioBufferSourceNode::setPannerNode):
442         * webaudio/AudioBufferSourceNode.idl: Added.
443
444 2010-11-02  Martin Robinson  <mrobinson@igalia.com>
445
446         Reviewed by Adam Barth.
447
448         [Cairo] Remove PlatformRefPtrCairo
449         https://bugs.webkit.org/show_bug.cgi?id=48192
450
451         Replace PlatformRefPtrCairo with a RefPtr specialization for Cairo and
452         Fontconfig types. This is the first step toward removing PlatformRefPtr,
453         whose job is better handled by RefPtr.
454
455         * CMakeListsEfl.txt: Update the sources list to include RefPtrCairo
456         instead of PlatformRefPtrCairo.
457         * GNUmakefile.am: Ditto.
458         * WebCore.vcproj/WebCore.vcproj: Ditto.
459         * platform/graphics/GraphicsContext.h: Replace PlatformRefPtrCairo with
460         RefPtrCairo.
461         * platform/graphics/cairo/CairoUtilities.cpp: Ditto.
462         (WebCore::drawPatternToCairoContext): Ditto.
463         * platform/graphics/cairo/FontCacheFreeType.cpp: Ditto.
464         (WebCore::FontCache::getFontDataForCharacters): Ditto.
465         (WebCore::FontCache::createFontPlatformData): Ditto.
466         * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Ditto.
467         (WebCore::FontPlatformData::FontPlatformData): Ditto.
468         (WebCore::FontPlatformData::initializeWithFontFace): Ditto.
469         * platform/graphics/cairo/FontPlatformDataFreeType.h: Ditto.
470         * platform/graphics/cairo/GraphicsContextCairo.cpp: Ditto.
471         * platform/graphics/cairo/ImageCairo.cpp: Ditto.
472         * platform/graphics/cairo/RefPtrCairo.cpp: Renamed from WebCore/platform/graphics/cairo/PlatformRefPtrCairo.cpp.
473         (WTF::refIfNotNull): Added.
474         (WTF::derefIfNotNull): Added.
475         * platform/graphics/cairo/RefPtrCairo.h: Renamed from WebCore/platform/graphics/cairo/PlatformRefPtrCairo.h.
476         * platform/gtk/CursorGtk.cpp: Replace PlatformRefPtrCairo with
477         RefPtrCairo.
478         (WebCore::createNamedCursor): Ditto.
479         * platform/gtk/DragImageGtk.cpp: Ditto.
480         (WebCore::scaleDragImage): Ditto.
481         (WebCore::dissolveDragImageToFraction): Ditto.
482         * plugins/gtk/PluginViewGtk.cpp: Ditto.
483         (WebCore::PluginView::paint): Ditto.
484
485 2010-11-02  Chris Rogers  <crogers@google.com>
486
487         Reviewed by Kenneth Russell.
488
489         Simple followup changes to files affected by AudioNodeInput thread safety
490         https://bugs.webkit.org/show_bug.cgi?id=48661
491
492         No new tests since audio API is not yet implemented.
493
494         * webaudio/AudioBasicProcessorNode.cpp:
495         (WebCore::AudioBasicProcessorNode::checkNumberOfChannelsForInput):
496         * webaudio/AudioChannelSplitter.cpp:
497         (WebCore::AudioChannelSplitter::process):
498         * webaudio/AudioDestinationNode.cpp:
499         (WebCore::AudioDestinationNode::initialize):
500         (WebCore::AudioDestinationNode::uninitialize):
501         (WebCore::AudioDestinationNode::provideInput):
502         * webaudio/AudioGainNode.cpp:
503         (WebCore::AudioGainNode::checkNumberOfChannelsForInput):
504         * webaudio/AudioPannerNode.cpp:
505         (WebCore::AudioPannerNode::notifyAudioSourcesConnectedToNode):
506
507 2010-11-02  Chris Guillory  <chris.guillory@google.com>
508
509         Reviewed by Chris Fleizach.
510
511         Chromium: Propagate a document value changed notification on scroll.
512         https://bugs.webkit.org/show_bug.cgi?id=48817
513
514         * accessibility/AccessibilityObject.h:
515         (WebCore::AccessibilityObject::isAccessibilityScrollbar):
516         * accessibility/AccessibilityScrollbar.h:
517         (WebCore::AccessibilityScrollbar::scrollbar):
518         (WebCore::AccessibilityScrollbar::isAccessibilityScrollbar):
519         * accessibility/chromium/AXObjectCacheChromium.cpp:
520         (WebCore::AXObjectCache::postPlatformNotification):
521
522 2010-11-02  Chris Rogers  <crogers@google.com>
523
524         Reviewed by Kenneth Russell.
525
526         Add ConvolverNode files
527         https://bugs.webkit.org/show_bug.cgi?id=47941
528
529         No new tests since audio API is not yet implemented.
530
531         * webaudio/ConvolverNode.cpp: Added.
532         (WebCore::ConvolverNode::ConvolverNode):
533         (WebCore::ConvolverNode::~ConvolverNode):
534         (WebCore::ConvolverNode::process):
535         (WebCore::ConvolverNode::reset):
536         (WebCore::ConvolverNode::initialize):
537         (WebCore::ConvolverNode::uninitialize):
538         (WebCore::ConvolverNode::setBuffer):
539         (WebCore::ConvolverNode::buffer):
540         * webaudio/ConvolverNode.h: Added.
541         (WebCore::ConvolverNode::create):
542         * webaudio/ConvolverNode.idl: Added.
543
544 2010-11-02  Chris Rogers  <crogers@google.com>
545
546         Reviewed by Kenneth Russell.
547
548         Add RealtimeAnalyser files
549         https://bugs.webkit.org/show_bug.cgi?id=48810
550
551         No new tests since audio API is not yet implemented.
552
553         * webaudio/RealtimeAnalyser.cpp: Added.
554         (WebCore::RealtimeAnalyser::RealtimeAnalyser):
555         (WebCore::RealtimeAnalyser::~RealtimeAnalyser):
556         (WebCore::RealtimeAnalyser::reset):
557         (WebCore::RealtimeAnalyser::setFftSize):
558         (WebCore::RealtimeAnalyser::writeInput):
559         (WebCore::RealtimeAnalyser::doFFTAnalysis):
560         (WebCore::RealtimeAnalyser::getFloatFrequencyData):
561         (WebCore::RealtimeAnalyser::getByteFrequencyData):
562         (WebCore::RealtimeAnalyser::getByteTimeDomainData):
563         * webaudio/RealtimeAnalyser.h: Added.
564         (WebCore::RealtimeAnalyser::fftSize):
565         (WebCore::RealtimeAnalyser::frequencyBinCount):
566         (WebCore::RealtimeAnalyser::setMinDecibels):
567         (WebCore::RealtimeAnalyser::minDecibels):
568         (WebCore::RealtimeAnalyser::setMaxDecibels):
569         (WebCore::RealtimeAnalyser::maxDecibels):
570         (WebCore::RealtimeAnalyser::setSmoothingTimeConstant):
571         (WebCore::RealtimeAnalyser::smoothingTimeConstant):
572         (WebCore::RealtimeAnalyser::magnitudeBuffer):
573
574 2010-11-02  Ilya Sherman  <isherman@chromium.org>
575
576         Reviewed by Kent Tamura.
577
578         Avoid overlapping label text in autofill popup with icon.
579         Updates the menu width computation to take the icon width into account.
580         https://bugs.webkit.org/show_bug.cgi?id=48497
581
582         * platform/chromium/PopupMenuChromium.cpp:
583         (WebCore::PopupListBox::paintRow):
584         (WebCore::PopupListBox::layout):
585
586 2010-10-28  Zhenyao Mo  <zmo@google.com>
587
588         Reviewed by Kenneth Russell.
589
590         Perform framebuffer attachment checking upon draw call rather than attachment
591         https://bugs.webkit.org/show_bug.cgi?id=46318
592
593         * html/canvas/WebGLFramebuffer.cpp:
594         (WebCore::getInternalFormat): Helper function to get an attachment's internal format.
595         (WebCore::isUninitialized): Helper function to decide if an attachment is initialized or not.
596         (WebCore::setInitialized): Helper funtion to set an attachment as being initialized.
597         (WebCore::WebGLFramebuffer::setAttachment): No longer perform buffer initialization at this point.
598         (WebCore::WebGLFramebuffer::removeAttachment): Ditto.
599         (WebCore::WebGLFramebuffer::getColorBufferFormat): Make it const.
600         (WebCore::WebGLFramebuffer::isIncomplete): Attachments conflict check.
601         (WebCore::WebGLFramebuffer::onAccess): Check atatchment conflicts and buffer initialization if necessary.
602         (WebCore::WebGLFramebuffer::initializeRenderbuffers): Return a boolean whether the framebuffer is complete or not.
603         * html/canvas/WebGLFramebuffer.h: Add new function declaration and remove some outdated functions.
604         (WebCore::WebGLFramebuffer::isColorAttached):
605         (WebCore::WebGLFramebuffer::isDepthAttached): Make this private.
606         (WebCore::WebGLFramebuffer::isStencilAttached): Ditto.
607         (WebCore::WebGLFramebuffer::isDepthStencilAttached): Ditto.
608         * html/canvas/WebGLRenderbuffer.h:
609         (WebCore::WebGLRenderbuffer::setInternalFormat): Also set the renderbuffer as uninitialized.
610         * html/canvas/WebGLRenderingContext.cpp:
611         (WebCore::WebGLRenderingContext::bindFramebuffer): No longer perform framebuffer initialization at this point.
612         (WebCore::WebGLRenderingContext::checkFramebufferStatus): Check WebGL specific attachment conflicts.
613         (WebCore::WebGLRenderingContext::clear): Call WebGLFramebuffer::onAccess.
614         (WebCore::WebGLRenderingContext::copyTexImage2D): Ditto.
615         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
616         (WebCore::WebGLRenderingContext::drawArrays): Ditto.
617         (WebCore::WebGLRenderingContext::drawElements): Ditto.
618         (WebCore::WebGLRenderingContext::framebufferRenderbuffer): No longer perform framebuffer initialization at this point.
619         (WebCore::WebGLRenderingContext::readPixels): Call WebGLFramebuffer::onAccess.
620         (WebCore::WebGLRenderingContext::renderbufferStorage): No longer perform framebuffer initialization at this point.
621         (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
622
623 2010-11-01  Zhenyao Mo  <zmo@google.com>
624
625         Reviewed by Kenneth Russell.
626
627         blendFunc should generate INVALID_OPERATION if constant color and constant alpha are together as source and destination factors
628         https://bugs.webkit.org/show_bug.cgi?id=48674
629
630         Test: fast/canvas/webgl/webgl-specific.html
631
632         * html/canvas/WebGLRenderingContext.cpp:
633         (WebCore::WebGLRenderingContext::blendFunc):
634         (WebCore::WebGLRenderingContext::blendFuncSeparate):
635         * html/canvas/WebGLRenderingContext.h:
636         (WebCore::WebGLRenderingContext::validateBlendFuncFactors): Helper function to do the checking.
637
638 2010-11-02  Simon Fraser  <simon.fraser@apple.com>
639
640         Reviewed by Dan Bernstein.
641
642         Overlapped nested iframes show smearing when scrolled
643         https://bugs.webkit.org/show_bug.cgi?id=48873
644
645         A FrameView goes into slow scrolling mode (not blitting) when told that it is
646         overlapped. However, a nested iframe could still try to use fast scrolling
647         when its parent is overlapped, which could result in bad rendering.
648         
649         Fixed by making useSlowRepaints() and useSlowRepaintsIfNotOverlapped()
650         walk up their parent chain, asking if their parents also use slow
651         repaints.
652         
653         All the places that call setCanBlitOnScroll() now call
654         updateCanBlitOnScrollRecursively() to ensure that the canBlitOnScroll
655         flag is updated correctly on subframes.
656         
657         Repaint tests do not work on nested iframes, so added manual test.
658
659         * manual-tests/frames/nested-iframe-blit-on-scroll.html: Added.
660         * manual-tests/frames/resources/blit-on-scroll-subframe.html: Added.
661         * manual-tests/frames/resources/blit-on-scroll-subsubframe.html: Added.
662         * page/FrameView.cpp:
663         (WebCore::FrameView::layout):
664         (WebCore::FrameView::useSlowRepaints):
665         (WebCore::FrameView::useSlowRepaintsIfNotOverlapped):
666         (WebCore::FrameView::updateCanBlitOnScrollRecursively):
667         (WebCore::FrameView::setUseSlowRepaints):
668         (WebCore::FrameView::addSlowRepaintObject):
669         (WebCore::FrameView::removeSlowRepaintObject):
670         (WebCore::FrameView::addFixedObject):
671         (WebCore::FrameView::removeFixedObject):
672         (WebCore::FrameView::setIsOverlapped):
673         (WebCore::FrameView::setContentIsOpaque):
674         * page/FrameView.h:
675
676 2010-11-02  Simon Fraser  <simon.fraser@apple.com>
677
678         Reviewed by Dan Bernstein.
679
680         Iframes nested inside a compositing layer don't repaint correctly
681         https://bugs.webkit.org/show_bug.cgi?id=48880
682         <rdar://problem/8194698>
683         
684         The isEnclosedInCompositingLayer() is used to modify the behavior of
685         -[WebClipView visibleRect:] in WebKit, so that scrolling-related repaints
686         are correct in composited iframes. Previously it only asked whether the
687         frame's renderer was in a compositing layer, but we actually need to
688         consult all ancestors.
689         
690         Test: compositing/iframes/nested-iframe-scrolling.html
691
692         * page/FrameView.cpp:
693         (WebCore::FrameView::isEnclosedInCompositingLayer):
694
695 2010-11-02  David Hyatt  <hyatt@apple.com>
696
697         Reviewed by Dan Bernstein.
698
699         https://bugs.webkit.org/show_bug.cgi?id=48672
700         
701         Make vertical glyph offset hit testing work with inline boxes.  This allows selection to paint
702         properly for vertical text (although gap-filling is still broken).
703         
704         Refactored and cleaned up the writing mode flipping functions, and also did some cleanup to
705         better share code between hit testing and painting.
706
707         * rendering/InlineBox.cpp:
708         (WebCore::InlineBox::locationIncludingFlipping):
709         (WebCore::InlineBox::flipForWritingMode):
710         * rendering/InlineBox.h:
711         * rendering/InlineFlowBox.cpp:
712         (WebCore::InlineFlowBox::nodeAtPoint):
713         (WebCore::InlineFlowBox::paint):
714         (WebCore::InlineFlowBox::paintBoxDecorations):
715         (WebCore::InlineFlowBox::paintMask):
716         * rendering/InlineTextBox.cpp:
717         (WebCore::InlineTextBox::selectionRect):
718         (WebCore::InlineTextBox::nodeAtPoint):
719         (WebCore::InlineTextBox::paint):
720         (WebCore::InlineTextBox::textPos):
721         (WebCore::InlineTextBox::offsetForPosition):
722         (WebCore::InlineTextBox::positionForOffset):
723         * rendering/RenderBlock.cpp:
724         (WebCore::RenderBlock::paintChildren):
725         (WebCore::RenderBlock::paintFloats):
726         (WebCore::RenderBlock::hitTestFloats):
727         (WebCore::RenderBlock::hitTestContents):
728         * rendering/RenderBox.cpp:
729         (WebCore::RenderBox::computeRectForRepaint):
730         (WebCore::RenderBox::flipForWritingMode):
731         (WebCore::RenderBox::locationOffsetIncludingFlipping):
732         * rendering/RenderBox.h:
733         * rendering/RenderInline.cpp:
734         (WebCore::RenderInline::clippedOverflowRectForRepaint):
735         * rendering/RenderLineBoxList.cpp:
736         (WebCore::RenderLineBoxList::rangeIntersectsRect):
737         (WebCore::RenderLineBoxList::anyLineIntersectsRect):
738         (WebCore::RenderLineBoxList::lineIntersectsDirtyRect):
739         (WebCore::RenderLineBoxList::paint):
740         (WebCore::RenderLineBoxList::hitTest):
741         * rendering/RenderLineBoxList.h:
742         * rendering/RenderText.cpp:
743         (WebCore::RenderText::positionForPoint):
744
745 2010-11-02  Adam Barth  <abarth@webkit.org>
746
747         Reviewed by Eric Seidel.
748
749         JPEG decoders should understand color profiles
750         https://bugs.webkit.org/show_bug.cgi?id=48819
751
752         This patch is currently a no-op because no one defines USE(ICCJPEG).
753         We'll enable this for Chromium Mac once we have ICCJPEG landed in
754         Chromium's third_party directory.
755
756         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
757         (WebCore::readColorProfile):
758         (WebCore::JPEGImageReader::JPEGImageReader):
759         (WebCore::JPEGImageReader::decode):
760         (WebCore::JPEGImageDecoder::outputScanlines):
761         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
762         (WebCore::JPEGImageDecoder::setColorProfile):
763
764 2010-11-02  Mihai Parparita  <mihaip@chromium.org>
765
766         Reviewed by Adam Barth.
767
768         [Chromium] Crash when encountering history.back() call during Page::goToItem execution
769         https://bugs.webkit.org/show_bug.cgi?id=48477
770         
771         For the Chromium port, BackForwardList::itemAtIndex synthesizes a 
772         HistoryItem and saves a pointer to it in m_pendingItem. During 
773         Page::goToItem we call FrameLoader::stopAllLoaders, which can trigger
774         onload handlers (if a subframe was not considered committed by the frame
775         loader). If one of those handlers calls calls history.back() or another
776         operation that ends up in NavigationScheduler::scheduleHistoryNavigation,
777         we would call BackForwardList::itemAtIndex, which means that we would 
778         lose the m_pendingItem RefPtr that pointed to the item being navigated 
779         to, causing its ref count to go to 0*, and thus for the HistoryItem to
780         be deleted before we were done navigating to it.
781         
782         This is fixed in two ways:
783         - Add a protector RefPtr in Page::goToItem to make sure that the item is
784           still around for when we pass it to HistoryController:goToItem.
785         - Change NavigationScheduler::scheduleHistoryNavigation to not use
786           BackForwardList::itemAtIndex and instead look at the
787           forward/backListCount() (since it doesn't actually care about the
788           returned HistoryItem).
789         
790         * Full annotated stack trace of this is at http://crbug.com/59554#c9.        
791
792         Test: http/tests/history/back-during-onload-triggered-by-back.html
793
794         * loader/NavigationScheduler.cpp:
795         (WebCore::NavigationScheduler::scheduleHistoryNavigation):
796         * page/Page.cpp:
797         (WebCore::Page::goToItem):
798
799 2010-10-28  Zhenyao Mo  <zmo@google.com>
800
801         Reviewed by Kenneth Russell.
802
803         Update getUniform for bvec[234] to return boolean[] rather than Uint8Array
804         https://bugs.webkit.org/show_bug.cgi?id=47568
805
806         * html/canvas/WebGLRenderingContext.cpp:
807         (WebCore::WebGLRenderingContext::getUniform):
808
809 2010-11-02  Chris Rogers  <crogers@google.com>
810
811         Reviewed by Kenneth Russell.
812
813         Add RealtimeAnalyserNode files
814         https://bugs.webkit.org/show_bug.cgi?id=48798
815
816         No new tests since audio API is not yet implemented.
817
818         * webaudio/RealtimeAnalyserNode.cpp: Added.
819         (WebCore::RealtimeAnalyserNode::RealtimeAnalyserNode):
820         (WebCore::RealtimeAnalyserNode::~RealtimeAnalyserNode):
821         (WebCore::RealtimeAnalyserNode::process):
822         (WebCore::RealtimeAnalyserNode::pullInputs):
823         (WebCore::RealtimeAnalyserNode::reset):
824         * webaudio/RealtimeAnalyserNode.h: Added.
825         (WebCore::RealtimeAnalyserNode::create):
826         (WebCore::RealtimeAnalyserNode::fftSize):
827         (WebCore::RealtimeAnalyserNode::setFftSize):
828         (WebCore::RealtimeAnalyserNode::frequencyBinCount):
829         (WebCore::RealtimeAnalyserNode::setMinDecibels):
830         (WebCore::RealtimeAnalyserNode::minDecibels):
831         (WebCore::RealtimeAnalyserNode::setMaxDecibels):
832         (WebCore::RealtimeAnalyserNode::maxDecibels):
833         (WebCore::RealtimeAnalyserNode::setSmoothingTimeConstant):
834         (WebCore::RealtimeAnalyserNode::smoothingTimeConstant):
835         (WebCore::RealtimeAnalyserNode::getFloatFrequencyData):
836         (WebCore::RealtimeAnalyserNode::getByteFrequencyData):
837         (WebCore::RealtimeAnalyserNode::getByteTimeDomainData):
838         * webaudio/RealtimeAnalyserNode.idl: Added.
839
840 2010-11-02  Sheriff Bot  <webkit.review.bot@gmail.com>
841
842         Unreviewed, rolling out r71152.
843         http://trac.webkit.org/changeset/71152
844         https://bugs.webkit.org/show_bug.cgi?id=48866
845
846         Causes lots and lots of crashes (Requested by jamesr_ on
847         #webkit).
848
849         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
850         (WebCore::JPEGImageReader::JPEGImageReader):
851         (WebCore::JPEGImageReader::decode):
852         (WebCore::JPEGImageDecoder::outputScanlines):
853         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
854
855 2010-11-02  Alexey Proskuryakov  <ap@apple.com>
856
857         Reviewed by Timothy Hatcher.
858
859         https://bugs.webkit.org/show_bug.cgi?id=48813
860         <rdar://problem/8602552> REGRESSION (r63622): DNS prefetching for <link> tags doesn't work
861         in non-HTTP documents
862
863         Cannot test DNS prefetching.
864
865         * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::process): We should be looking at
866         preferences, not at whether this document has prefetching enabled.
867
868 2010-11-02  Pavel Feldman  <pfeldman@chromium.org>
869
870         Not reviewed: Web Inspector: follow up to r71139. Fixed Mac monospace
871         height style.
872
873         * inspector/front-end/PropertiesSection.js:
874         (WebInspector.PropertiesSection):
875         * inspector/front-end/inspector.css:
876
877 2010-11-02  Adam Barth  <abarth@webkit.org>
878
879         Reviewed by Eric Seidel.
880
881         JPEG decoders should understand color profiles
882         https://bugs.webkit.org/show_bug.cgi?id=48819
883
884         This patch is currently a no-op because no one defines USE(ICCJPEG).
885         We'll enable this for Chromium Mac once we have ICCJPEG landed in
886         Chromium's third_party directory.
887
888         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
889         (WebCore::readColorProfile):
890         (WebCore::JPEGImageReader::JPEGImageReader):
891         (WebCore::JPEGImageReader::decode):
892         (WebCore::JPEGImageDecoder::outputScanlines):
893         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
894         (WebCore::JPEGImageDecoder::setColorProfile):
895
896 2010-11-02  Ilya Sherman  <isherman@chromium.org>
897
898         Reviewed by Simon Fraser.
899
900         Marks selectionStart() and selectionEnd() as const.
901         https://bugs.webkit.org/show_bug.cgi?id=48786
902
903         * html/HTMLFormControlElement.cpp:
904         (WebCore::HTMLTextFormControlElement::selectionStart):
905         (WebCore::HTMLTextFormControlElement::selectionEnd):
906         * html/HTMLFormControlElement.h:
907
908 2010-11-02  Chris Rogers  <crogers@google.com>
909
910         Reviewed by Kenneth Russell.
911
912         Fix license for audio files
913         https://bugs.webkit.org/show_bug.cgi?id=48859
914
915         * webaudio/AudioChannelSplitter.cpp:
916         * webaudio/AudioChannelSplitter.h:
917         * webaudio/AudioDestinationNode.cpp:
918         * webaudio/AudioDestinationNode.h:
919         * webaudio/AudioGainNode.cpp:
920         * webaudio/AudioGainNode.h:
921         * webaudio/AudioPannerNode.cpp:
922         * webaudio/AudioPannerNode.h:
923         * webaudio/AudioPannerNode.idl:
924
925 2010-11-02  Martin Robinson  <mrobinson@igalia.com>
926
927         Reviewed by Xan Lopez.
928
929         Remove special handling of HashTableDeletedValue in PlatformRefPtr and manually manage memory that cannot be controlled by HashTraits
930         https://bugs.webkit.org/show_bug.cgi?id=48841
931
932         Switch to manually managing the memory in FontPlatformDataFreeType. This
933         is necessary because smart pointers do not know how to deal with a pointer
934         value of -1 (HashTableDeletedValue) and HashTraits can only manage the type
935         contained in the HashMap. 
936
937         No new tests as this should not change functionality.
938
939         * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
940         (WebCore::FontPlatformData::FontPlatformData):
941         (WebCore::FontPlatformData::operator=):
942         (WebCore::FontPlatformData::~FontPlatformData):
943         (WebCore::FontPlatformData::operator==):
944         (WebCore::FontPlatformData::initializeWithFontFace):
945         * platform/graphics/cairo/FontPlatformDataFreeType.h:
946         (WebCore::FontPlatformData::FontPlatformData):
947         (WebCore::FontPlatformData::scaledFont):
948         (WebCore::FontPlatformData::hash):
949         (WebCore::FontPlatformData::isHashTableDeletedValue):
950         (WebCore::FontPlatformData::hashTableDeletedFontValue):
951         * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp:
952         (WebCore::GlyphPage::fill):
953         * platform/graphics/cairo/SimpleFontDataCairo.cpp:
954         (WebCore::SimpleFontData::platformInit):
955         (WebCore::SimpleFontData::containsCharacters):
956         (WebCore::SimpleFontData::platformWidthForGlyph):
957
958 2010-11-02  Adam Barth  <abarth@webkit.org>
959
960         Reviewed by Eric Seidel.
961
962         querySelectorAll('body>:last-child') does not work unless HTML file ends with 'new-line'.
963         https://bugs.webkit.org/show_bug.cgi?id=47166
964
965         We need to pop all the open elements when we end the document in the
966         AfterAfterBody state.
967
968         Test: fast/parser/pop-all-after-after-body.html
969
970         * html/parser/HTMLTreeBuilder.cpp:
971         (WebCore::HTMLTreeBuilder::processEndOfFile):
972
973 2010-11-02  Patrick Gansterer  <paroga@webkit.org>
974
975         Reviewed by Adam Roben.
976
977         Cleanup createGlobalImageFileDescriptor in ClipboardWin
978         https://bugs.webkit.org/show_bug.cgi?id=48189
979
980         * platform/win/ClipboardWin.cpp:
981         (WebCore::ClipboardWin::writeURL):
982
983 2010-11-02  Pavel Feldman  <pfeldman@chromium.org>
984
985         Reviewed by Timothy Hatcher.
986
987         Web Inspector: display frame names in the resources panel.
988         https://bugs.webkit.org/show_bug.cgi?id=48839
989
990         * inspector/Inspector.idl:
991         * inspector/InspectorResourceAgent.cpp:
992         (WebCore::frameId):
993         (WebCore::buildObjectForDocumentLoader):
994         (WebCore::buildObjectForFrame):
995         (WebCore::buildObjectForFrameTree):
996         (WebCore::InspectorResourceAgent::didCommitLoad):
997         (WebCore::InspectorResourceAgent::frameDetachedFromParent):
998         (WebCore::InspectorResourceAgent::frameForId):
999         (WebCore::InspectorResourceAgent::resourceContent):
1000         * inspector/InspectorResourceAgent.h:
1001         * inspector/front-end/ResourceManager.js:
1002         (WebInspector.ResourceManager.prototype.didCommitLoadForFrame):
1003         (WebInspector.ResourceManager.prototype._processCachedResources):
1004         (WebInspector.ResourceManager.prototype._addFramesRecursively):
1005         (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame):
1006         (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
1007         * inspector/front-end/StoragePanel.js:
1008         (WebInspector.StoragePanel.prototype.addOrUpdateFrame):
1009         (WebInspector.BaseStorageTreeElement.prototype.get titleText):
1010         (WebInspector.FrameTreeElement):
1011         (WebInspector.FrameTreeElement.prototype.onattach):
1012         (WebInspector.FrameTreeElement.prototype.get nameForSorting):
1013         (WebInspector.FrameTreeElement.prototype.setTitles):
1014         (WebInspector.FrameTreeElement.prototype.set hovered):
1015         * inspector/front-end/inspector.css:
1016         (li.selected .base-storage-tree-element-subtitle):
1017         (.base-storage-tree-element-subtitle):
1018
1019 2010-11-02  Pavel Feldman  <pfeldman@chromium.org>
1020
1021         Not reviewed. Follow up to r71139: removing unused images.
1022         https://bugs.webkit.org/show_bug.cgi?id=48827
1023
1024         * WebCore.gypi:
1025         * inspector/front-end/Images/grayConnectorPoint.png: Removed.
1026         * inspector/front-end/Images/whiteConnectorPoint.png: Removed.
1027         * inspector/front-end/WebKit.qrc:
1028
1029 2010-11-02  Pavel Feldman  <pfeldman@chromium.org>
1030
1031         Reviewed by Timothy Hatcher.
1032
1033         Web Inspector: make properties and event listeners look consistent with the styles section.
1034         https://bugs.webkit.org/show_bug.cgi?id=48827
1035
1036         * inspector/front-end/EventListenersSidebarPane.js:
1037         * inspector/front-end/PropertiesSection.js:
1038         (WebInspector.PropertiesSection):
1039         * inspector/front-end/PropertiesSidebarPane.js:
1040         (WebInspector.PropertiesSidebarPane.prototype.update.callback):
1041         (WebInspector.PropertiesSidebarPane.prototype.update):
1042         * inspector/front-end/inspector.css:
1043         (.events-pane .section:not(:nth-of-type(1))):
1044         (.event-bar:first-child):
1045         (.section .header):
1046         (.section .header::before):
1047         (.section.expanded .header::before):
1048         (.section .header .title, .event-bar .header .title):
1049         (.section .header .subtitle, .event-bar .header .subtitle):
1050         (.section.expanded .properties, .event-bar.expanded .event-properties):
1051         (.properties-tree):
1052         (.event-bar):
1053         (.event-bars .event-bar .header):
1054         (.event-bars .event-bar .header .title):
1055         (.event-bars .event-bar .header::before):
1056
1057 2010-11-02  Dan Bernstein  <mitz@apple.com>
1058
1059         Reviewed by Anders Carlsson.
1060
1061         Remove unused methods and member variables from AutoTableLayout.
1062
1063         * rendering/AutoTableLayout.cpp:
1064         (WebCore::AutoTableLayout::AutoTableLayout): Removed initialization of m_percentagesDirty
1065         and m_totalPercent.
1066         (WebCore::AutoTableLayout::fullRecalc): Removed setting of m_percentagesDirty.
1067         (WebCore::AutoTableLayout::calcPercentages): Removed.
1068         * rendering/AutoTableLayout.h: Removed totalPercent(), m_percentagesDirty, and m_totalPercent.
1069
1070 2010-11-02  Pavel Feldman  <pfeldman@chromium.org>
1071
1072         Reviewed by Timothy Hatcher.
1073
1074         Web Inspector: clear / hide timing information for cached resources.
1075         https://bugs.webkit.org/show_bug.cgi?id=48848
1076
1077         * inspector/front-end/Resource.js:
1078         (WebInspector.Resource.prototype.set cached):
1079         (WebInspector.Resource.prototype.get timing):
1080         (WebInspector.Resource.prototype.set timing):
1081         * inspector/front-end/ResourceManager.js:
1082         (WebInspector.ResourceManager.prototype.markResourceAsCached):
1083
1084 2010-11-02  Pavel Feldman  <pfeldman@chromium.org>
1085
1086         Reviewed by Timothy Hatcher.
1087
1088         Web Inspector: improve network's 'preview close' usability.
1089         https://bugs.webkit.org/show_bug.cgi?id=48846
1090
1091         * inspector/front-end/networkPanel.css:
1092         (#network-close-button:hover):
1093         (#network-close-button:active):
1094
1095 2010-11-02  Pavel Feldman  <pfeldman@chromium.org>
1096
1097         Reviewed by Timothy Hatcher.
1098
1099         Web Inspector: Image heights are displayed as 0.
1100         https://bugs.webkit.org/show_bug.cgi?id=40817
1101
1102         * inspector/front-end/ImageView.js:
1103         (WebInspector.ImageView.prototype.contentTabSelected):
1104         (WebInspector.ImageView.prototype.contentTabSelected.onImageLoad):
1105
1106  2010-10-31  Noam Rosenthal  <noam.rosenthal@nokia.com>
1107
1108         Reviewed by Kenneth Rohde Christiansen.
1109
1110         [Texmap] [Qt] Texture mapper initial implementation
1111         https://bugs.webkit.org/show_bug.cgi?id=47070
1112
1113         Some refactor for texmap to enable WebKit2: remove globals, and allow TextureMapper to exist without a GraphicsContext.
1114         This will allow rendering the TextureMapperNode tree without an active QPainter, into the current GL context.
1115         Most of the changes simply move the globas in TextureMapperGL into members of that class.
1116
1117         No new tests. Old tests in LayoutTests/compositing cover this.
1118
1119         * platform/graphics/opengl/TextureMapperGL.cpp:
1120         (WebCore::TextureMapperGLData::ShaderInfo::getUniformLocation):
1121         (WebCore::TextureMapperGLData::ShaderInfo::createShaderProgram):
1122         (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::findOrCreate):
1123         (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::deref):
1124         (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::DirectlyCompositedImageRepository):
1125         (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::~DirectlyCompositedImageRepository):
1126         (WebCore::TextureMapperGLData::TextureMapperGLData):
1127         (WebCore::TextureMapperGL::TextureMapperGL):
1128         (WebCore::TextureMapperGL::drawTexture):
1129         (WebCore::BitmapTextureGL::setContentsToImage):
1130         (WebCore::BitmapTextureGL::destroy):
1131         (WebCore::TextureMapperGL::~TextureMapperGL):
1132         (WebCore::TextureMapperGL::makeContextCurrent):
1133         (WebCore::TextureMapperGL::obtainCurrentContext):
1134         (WebCore::TextureMapperGL::bindSurface):
1135         (WebCore::TextureMapperGL::paintToTarget):
1136         (WebCore::TextureMapperGL::createTexture):
1137         * platform/graphics/opengl/TextureMapperGL.h:
1138         (WebCore::TextureMapperGL::data):
1139         * platform/graphics/qt/TextureMapperQt.cpp:
1140         (WebCore::TextureMapperQt::TextureMapperQt):
1141         (WebCore::TextureMapperQt::setGraphicsContext):
1142         (WebCore::TextureMapper::create):
1143         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1144         (WebCore::TextureMapperNode::paint):
1145         (WebCore::TextureMapperNode::uploadTextureFromContent):
1146         * platform/graphics/texmap/TextureMapper.h:
1147         (WebCore::TextureMapper::setGraphicsContext):
1148         (WebCore::TextureMapper::setImageInterpolationQuality):
1149         (WebCore::TextureMapper::setTextDrawingMode):
1150         (WebCore::TextureMapper::imageInterpolationQuality):
1151         (WebCore::TextureMapper::textDrawingMode):
1152         (WebCore::TextureMapper::TextureMapper):
1153         * platform/graphics/texmap/TextureMapperPlatformLayer.h:
1154         (WebCore::TextureMapperContentLayer::paint):
1155
1156  2010-11-02  Adele Peterson  <adele@apple.com>
1157
1158         Reviewed by Kent Tamura.
1159
1160         Fix for https://bugs.webkit.org/show_bug.cgi?id=48814
1161         <rdar://problem/8546143> Attempting to redo typing in apple.com/startpage search field causes infinite recursion in TextControlInnerTextElement::defaultEventHandler
1162
1163         Test: editing/undo/redo-after-detach.html
1164
1165         * rendering/TextControlInnerElements.cpp: (WebCore::TextControlInnerTextElement::defaultEventHandler):
1166         A TextControlInnerTextElement will almost always have a shadowAncestorNode, the HTMLInputElement.  In this case, 
1167         after the renderer was destroyed, this shadow node was kept alive by the EditCommand, even though its not hooked up 
1168         anymore to the shadow DOM.  EditCommands can sometimes operate on stale selections and are expected to fail silently.  
1169         So here we prevent the infinite loop during event dispatch, and the rest of the redo operation will fail silently.
1170
1171 2010-11-02  Chris Marrin  <cmarrin@apple.com>
1172
1173         Reviewed by Simon Fraser.
1174
1175         When animations are paused, play-state can cause them to be unpaused.
1176         https://bugs.webkit.org/show_bug.cgi?id=46525
1177
1178         I Changed updatePlayState() to only unpause when both play-state is 
1179         "running" and not suspended. Likewise I pause animation when either
1180         play-state is "paused" or suspended.
1181
1182         Test: animations/play-state-suspend.html
1183
1184         * page/animation/AnimationBase.cpp:
1185         (WebCore::AnimationBase::updatePlayState):
1186
1187 2010-11-02  Chris Marrin  <cmarrin@apple.com>
1188
1189         Reviewed by Adam Roben.
1190
1191         Make RenderStyle::playState() return typed value and cleanup naming in Animation code
1192         https://bugs.webkit.org/show_bug.cgi?id=48844
1193
1194         playState() function was returning unsigned value, but there is a EAnimPlayState
1195         enum type which has the legal playState values. This type is now used everywhere.
1196         I also changed the naming of the m_isSuspended to m_suspended to match the style
1197         elsewhere in the code.
1198
1199         * page/animation/AnimationBase.cpp:
1200         (WebCore::AnimationBase::updatePlayState):
1201         * page/animation/AnimationBase.h:
1202         * page/animation/AnimationController.cpp:
1203         (WebCore::AnimationControllerPrivate::clear):
1204         (WebCore::AnimationControllerPrivate::updateAnimationTimer):
1205         * page/animation/CompositeAnimation.cpp:
1206         (WebCore::CompositeAnimation::updateKeyframeAnimations):
1207         (WebCore::CompositeAnimation::suspendAnimations):
1208         (WebCore::CompositeAnimation::resumeAnimations):
1209         * page/animation/CompositeAnimation.h:
1210         (WebCore::CompositeAnimation::suspended):
1211         (WebCore::CompositeAnimation::CompositeAnimation):
1212         * platform/animation/Animation.h:
1213         (WebCore::Animation::playState):
1214         (WebCore::Animation::setPlayState):
1215         (WebCore::Animation::initialAnimationPlayState):
1216
1217 2010-11-01  Zhenyao Mo  <zmo@google.com>
1218
1219         Reviewed by Andreas Kling.
1220
1221         vertexAttribPointer should generate INVALID_VALUE if the stride exceeds 255
1222         https://bugs.webkit.org/show_bug.cgi?id=48677
1223
1224         Test: fast/canvas/webgl/gl-vertexattribpointer.html
1225
1226         * html/canvas/WebGLRenderingContext.cpp:
1227         (WebCore::WebGLRenderingContext::vertexAttribPointer): Generate INVALID_VALUE if stride > 255.
1228
1229 2010-11-01  Martin Robinson  <mrobinson@igalia.com>
1230
1231         Reviewed by Xan Lopez.
1232
1233         [Soup] Random crashes in http/tests/websocket/tests/workers/worker-handshake-challenge-randomness.html
1234         https://bugs.webkit.org/show_bug.cgi?id=48805
1235
1236         Track active WebSocket handles via a sequential id. This ensures
1237         that when a handle is reallocated into a recently used segment of
1238         memory, it doesn't trigger a false positive in the code which ensures
1239         the original handle is active.
1240
1241         No new tests. This test should stop crashing on the bots, proving the fix.
1242
1243         * platform/network/soup/SocketStreamHandle.h:
1244         (WebCore::SocketStreamHandle::id): Added an m_id member and accessor
1245         to SocketStreamHandle.
1246         * platform/network/soup/SocketStreamHandleSoup.cpp:
1247         (WebCore::getHandleFromId): Updated to work with HashMap of handle ids to
1248         SocketStreamHandle*.
1249         (WebCore::deactivateHandle): Ditto.
1250         (WebCore::activateHandle): Ditto.
1251         (WebCore::SocketStreamHandle::SocketStreamHandle): Ditto.
1252         (WebCore::SocketStreamHandle::connected): Ditto.
1253         (WebCore::SocketStreamHandle::readBytes): Ditto.
1254         (WebCore::SocketStreamHandle::beginWaitingForSocketWritability): Ditto.
1255         (WebCore::connectedCallback): Ditto.
1256         (WebCore::readReadyCallback): Ditto.
1257         (WebCore::writeReadyCallback): Ditto.
1258
1259 2010-11-02  Csaba Osztrogonác  <ossy@webkit.org>
1260
1261         Unreviewed trivial fix.
1262
1263         * WebCore.pro: Remove inspector/InspectorResource.h after r71035.
1264
1265 2010-11-02  Pavel Podivilov  <podivilov@chromium.org>
1266
1267         Reviewed by Pavel Feldman.
1268
1269         Web Inspector: make xhr breakpoints editable
1270         https://bugs.webkit.org/show_bug.cgi?id=48830
1271
1272         * inspector/front-end/BreakpointManager.js:
1273         (WebInspector.Breakpoint.prototype.set sourceText):
1274         (WebInspector.Breakpoint.prototype.click):
1275         (WebInspector.Breakpoint.prototype.populateLabelElement):
1276         (WebInspector.XHRBreakpoint.prototype.populateEditElement):
1277         * inspector/front-end/BreakpointsSidebarPane.js:
1278         (WebInspector.BreakpointsSidebarPane.prototype.addBreakpointItem):
1279         (WebInspector.BreakpointsSidebarPane.prototype._breakpointItemClicked):
1280         (WebInspector.BreakpointsSidebarPane.prototype._contextMenuEventFired):
1281         (WebInspector.BreakpointsSidebarPane.prototype._addListElement):
1282         (WebInspector.BreakpointsSidebarPane.prototype._removeListElement):
1283         (WebInspector.XHRBreakpointsSidebarPane.addButtonClicked):
1284         (WebInspector.XHRBreakpointsSidebarPane):
1285         (WebInspector.XHRBreakpointsSidebarPane.prototype._startEditingBreakpoint):
1286         (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog):
1287         (WebInspector.XHRBreakpointsSidebarPane.prototype._breakpointItemClicked):
1288         (WebInspector.BreakpointItem):
1289         (WebInspector.BreakpointItem.prototype.get element):
1290         (WebInspector.BreakpointItem.prototype.click):
1291         (WebInspector.BreakpointItem.prototype.populateEditElement):
1292         (WebInspector.BreakpointItem.prototype.remove):
1293         (WebInspector.BreakpointItem.prototype._hitStateChanged):
1294         (WebInspector.BreakpointItem.prototype._labelChanged):
1295         (WebInspector.BreakpointItem.prototype._createLabelElement):
1296         * inspector/front-end/inspector.js:
1297         (WebInspector.createJSBreakpointsSidebarPane.breakpointAdded):
1298         (WebInspector.createJSBreakpointsSidebarPane):
1299         (WebInspector.createDOMBreakpointsSidebarPane.breakpointAdded):
1300         (WebInspector.createDOMBreakpointsSidebarPane):
1301         (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):
1302         (WebInspector.createXHRBreakpointsSidebarPane):
1303
1304 2010-11-02  Pavel Podivilov  <podivilov@chromium.org>
1305
1306         Reviewed by Pavel Feldman.
1307
1308         Web Inspector: fix for breakpoints not restored on live edit bug
1309         https://bugs.webkit.org/show_bug.cgi?id=48833
1310
1311         * inspector/front-end/ScriptsPanel.js:
1312         (WebInspector.ScriptsPanel.prototype.debuggerPaused):
1313         * inspector/front-end/inspector.js:
1314         (WebInspector.pausedScript):
1315
1316 2010-11-02  Alexander Pavlov  <apavlov@chromium.org>
1317
1318         Reviewed by Pavel Feldman.
1319
1320         Web Inspector: [REGRESSION] Rule addition/selector editing result in unusable rules
1321         https://bugs.webkit.org/show_bug.cgi?id=48826
1322
1323         * inspector/front-end/CSSStyleModel.js:
1324         (WebInspector.CSSStyleModel.prototype.setRuleSelector):
1325         (WebInspector.CSSStyleModel.prototype.addRule):
1326         * inspector/front-end/StylesSidebarPane.js:
1327         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
1328         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted):
1329
1330 2010-11-02  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1331
1332         Reviewed by Andreas Kling.
1333
1334         [Qt] Don't include Objective-C sources in SOURCES
1335
1336         * WebCore.pro:
1337
1338 2010-11-02  Pavel Podivilov  <podivilov@chromium.org>
1339
1340         Reviewed by Pavel Feldman.
1341
1342         Web Inspector: persist native breakpoints in localStorage
1343         https://bugs.webkit.org/show_bug.cgi?id=48711
1344
1345         * inspector/InspectorController.cpp:
1346         (WebCore::InspectorController::disconnectFrontend):
1347         (WebCore::InspectorController::didCommitLoad):
1348         (WebCore::InspectorController::clearNativeBreakpoints):
1349         * inspector/InspectorController.h:
1350         * inspector/front-end/BreakpointManager.js:
1351         (WebInspector.BreakpointManager):
1352         (WebInspector.DOMBreakpoint):
1353         (WebInspector.EventListenerBreakpoint):
1354         (WebInspector.EventListenerBreakpoint.eventNameForUI):
1355         (WebInspector.EventListenerBreakpoint.prototype._uiEventName):
1356         (WebInspector.XHRBreakpoint):
1357         (WebInspector.XHRBreakpoint.prototype.populateStatusMessageElement):
1358         * inspector/front-end/BreakpointsSidebarPane.js:
1359         (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
1360         (WebInspector.BreakpointsSidebarPane.prototype._breakpointHit):
1361         (WebInspector.BreakpointItem.prototype._hitStateChanged):
1362         (WebInspector.EventListenerBreakpointsSidebarPane):
1363         * inspector/front-end/ConsoleView.js:
1364         * inspector/front-end/EventListenersSidebarPane.js:
1365         * inspector/front-end/NetworkPanel.js:
1366         * inspector/front-end/Panel.js:
1367         * inspector/front-end/ResourceView.js:
1368         * inspector/front-end/ScriptsPanel.js:
1369         * inspector/front-end/Settings.js:
1370         (WebInspector.Settings):
1371         (WebInspector.Settings.prototype.inspectedURLChanged):
1372         (WebInspector.Settings.prototype._formatProjectKey):
1373         * inspector/front-end/StoragePanel.js:
1374         * inspector/front-end/StylesSidebarPane.js:
1375         * inspector/front-end/WatchExpressionsSidebarPane.js:
1376         * inspector/front-end/inspector.css:
1377         (.pane .breakpoint-hit):
1378         * inspector/front-end/inspector.js:
1379         (WebInspector.set currentPanel):
1380         (WebInspector.doLoadedDone.onPopulateScriptObjects):
1381         (WebInspector.doLoadedDone):
1382         (WebInspector.reset):
1383         (WebInspector.inspectedURLChanged):
1384
1385 2010-11-01  Pavel Feldman  <pfeldman@chromium.org>
1386
1387         Reviewed by Joseph Pecoraro.
1388
1389         Web Inspector: use mimeType from cached resource
1390         in case response data contains none.
1391         https://bugs.webkit.org/show_bug.cgi?id=48773
1392
1393         * inspector/InspectorResourceAgent.cpp:
1394         (WebCore::InspectorResourceAgent::didReceiveResponse):
1395         * inspector/front-end/NetworkPanel.js:
1396         (WebInspector.NetworkPanel.prototype._createTable):
1397
1398 2010-11-01  Andrey Kosyakov  <caseq@chromium.org>
1399
1400         Reviewed by Pavel Feldman.
1401
1402         Web Inspector: [Extensions API] expose API to create properties watch sidebar panes
1403         https://bugs.webkit.org/show_bug.cgi?id=48761
1404
1405         * inspector/front-end/ExtensionAPI.js:
1406         (WebInspector.injectedExtensionAPI.PanelImpl.prototype.createSidebarPane):
1407         (WebInspector.injectedExtensionAPI.PanelImpl.prototype.createWatchExpressionSidebarPane.callbackWrapper):
1408         (WebInspector.injectedExtensionAPI.PanelImpl.prototype.createWatchExpressionSidebarPane):
1409         (WebInspector.injectedExtensionAPI):
1410         (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl):
1411         (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setExpression):
1412         (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setObject):
1413         * inspector/front-end/ExtensionPanel.js: Added ExtensionWatchSidebarPane
1414         (WebInspector.ExtensionWatchSidebarPane):
1415         (WebInspector.ExtensionWatchSidebarPane.prototype.setObject):
1416         (WebInspector.ExtensionWatchSidebarPane.prototype.setExpression):
1417         (WebInspector.ExtensionWatchSidebarPane.prototype._onEvaluate):
1418         (WebInspector.ExtensionWatchSidebarPane.prototype._setObject):
1419         * inspector/front-end/ExtensionServer.js:
1420         (WebInspector.ExtensionServer):
1421         (WebInspector.ExtensionServer.prototype.notifyExtensionWatchSidebarUpdated):
1422         (WebInspector.ExtensionServer.prototype._onCreateSidebar):
1423         (WebInspector.ExtensionServer.prototype._onCreateWatchExpressionSidebarPane):
1424         (WebInspector.ExtensionServer.prototype._createSidebar):
1425         (WebInspector.ExtensionServer.prototype._onSetWatchSidebarContent):
1426         * inspector/front-end/InjectedScript.js:
1427         (injectedScriptConstructor.):
1428         * inspector/front-end/RemoteObject.js: Added a wrapper for local JSON object to simulate RemoteObject interface.
1429         (WebInspector.RemoteObject.fromLocalObject):
1430         (WebInspector.LocalJSONObject):
1431         (WebInspector.LocalJSONObject.prototype.get description):
1432         (WebInspector.LocalJSONObject.prototype.get type):
1433         (WebInspector.LocalJSONObject.prototype.get hasChildren):
1434         (WebInspector.LocalJSONObject.prototype.getOwnProperties):
1435         (WebInspector.LocalJSONObject.prototype.getProperties):
1436         (WebInspector.LocalJSONObject.prototype.isError):
1437
1438 2010-11-02  Ryuan Choi  <ryuan.choi@samsung.com>
1439
1440         Unreviewed build fix for EFL build with libcurl
1441
1442         [EFL] remove multiple definition with libcurl
1443         https://bugs.webkit.org/show_bug.cgi?id=48499
1444
1445         Add macro to isolate setCookieStoragePrivateBrowsingEnabled from EFL
1446         build because it was duplicated.
1447
1448         * platform/network/curl/CookieJarCurl.cpp:
1449
1450 2010-11-02  Pavel Feldman  <pfeldman@chromium.org>
1451
1452         Reviewed by Joseph Pecoraro.
1453
1454         Web Inspector: highlight frame on hover in resources panel.
1455         https://bugs.webkit.org/show_bug.cgi?id=48760
1456
1457         * inspector/Inspector.idl:
1458         * inspector/InspectorController.cpp:
1459         (WebCore::InspectorController::highlightFrame):
1460         * inspector/InspectorController.h:
1461         (WebCore::InspectorController::hideFrameHighlight):
1462         * inspector/front-end/StoragePanel.js:
1463         (WebInspector.StoragePanel):
1464         (WebInspector.StoragePanel.prototype.showView):
1465         (WebInspector.StoragePanel.prototype._onmousemove):
1466         (WebInspector.StoragePanel.prototype._onmouseout):
1467         (WebInspector.FrameTreeElement.prototype.onselect):
1468         (WebInspector.FrameTreeElement.prototype.ondeselect):
1469         (WebInspector.FrameTreeElement.prototype.set displayName):
1470         (WebInspector.FrameTreeElement.prototype.set hovered):
1471         * inspector/front-end/inspector.css:
1472         (.storage.panel .sidebar li.selected .selection):
1473         (.storage.panel .sidebar :focus li.selected .selection):
1474         (body.inactive .storage.panel .sidebar li.selected .selection):
1475
1476 2010-11-02  Nikolas Zimmermann  <nzimmermann@rim.com>
1477
1478         Reviewed by Rob Buis.
1479
1480         Convert SVGPreserveAspectRatio to the new SVGPropertyTearOff concept
1481         https://bugs.webkit.org/show_bug.cgi?id=48822
1482
1483         Convert the next type to use the SVGPropertyTearOffConcept. Just SVGAnimatedTransformList/SVGTransform/SVGStringList are missing.
1484
1485         Tests: svg/dom/SVGAnimatedPreserveAspectRatio.html
1486                svg/dom/SVGPreserveAspectRatio.html
1487
1488         * GNUmakefile.am: Add SVGAnimatedPreserveAspectRatio.h to build.
1489         * WebCore.gypi: Ditto.
1490         * WebCore.pro: Ditto.
1491         * WebCore.vcproj/WebCore.vcproj: Ditto.
1492         * WebCore.xcodeproj/project.pbxproj: Ditto.
1493         * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedPreserveAspectRatio as new style animated type.
1494         * bindings/scripts/CodeGeneratorJS.pm: Remove special SVGPreserveAspectRatio handling.
1495         * bindings/scripts/CodeGeneratorObjC.pm: Always include the type wrapped by SVGPropertyTearOff<> - this was missing before, and now become visible as missing include.
1496         * bindings/scripts/CodeGeneratorV8.pm: Remove special SVGPreserveAspectRatio handling.
1497         * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGPreserveAspectRatio handling.
1498         * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
1499         * svg/SVGAnimatedPreserveAspectRatio.h: Added.
1500         * svg/SVGFEImageElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ where SVGPreserveAspectRatio is used.
1501         * svg/SVGFitToViewBox.cpp:
1502         (WebCore::SVGFitToViewBox::viewBoxToViewTransform): SVGPreserveAspectRatio::getCTM doesn't need x/y parameters, they were not used anywhere, remove them.
1503         * svg/SVGFitToViewBox.h: Replace includes by class forwards.
1504         * svg/SVGImageElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ where SVGPreserveAspectRatio is used.
1505         * svg/SVGLocatable.cpp: Add SVGNames.h include, to allow Qt to build (thanks ews!).
1506         * svg/SVGMarkerElement.h: Ditto.
1507         * svg/SVGPatternElement.h: Ditto.
1508         * svg/SVGPreserveAspectRatio.cpp: Modernize code, add error handling for align/meetOrSlice covered by the new tests.
1509         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
1510         (WebCore::SVGPreserveAspectRatio::setAlign):
1511         (WebCore::SVGPreserveAspectRatio::setMeetOrSlice):
1512         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
1513         (WebCore::SVGPreserveAspectRatio::transformRect):
1514         (WebCore::SVGPreserveAspectRatio::getCTM):
1515         (WebCore::SVGPreserveAspectRatio::valueAsString):
1516         * svg/SVGPreserveAspectRatio.h: Reindented header.
1517         (WebCore::SVGPreserveAspectRatio::align): Inlined.
1518         (WebCore::SVGPreserveAspectRatio::meetOrSlice): Inlined.
1519         * svg/SVGPreserveAspectRatio.idl: Enable StrictTypeChecking for the align/meetOrSlice properties.
1520         * svg/SVGSVGElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ where SVGPreserveAspectRatio is used.
1521         * svg/SVGStyledTransformableElement.h: Add SVGAnimatedPropertyMacros.h include, needed by efl to build (thanks ews!).
1522         * svg/SVGSymbolElement.h: Ditto.
1523         * svg/SVGViewElement.h: Ditto.
1524         * svg/SVGViewSpec.h: Ditto.
1525
1526 2010-11-01  MORITA Hajime  <morrita@google.com>
1527
1528         Reviewed by Kent Tamura.
1529
1530         @spellcheck attribute at the child of contentEditable node is ignored.
1531         https://bugs.webkit.org/show_bug.cgi?id=48418
1532
1533         Changed to check spellcheck availability against a node under the
1534         selection (caret) instead of the focus. For shadow elements, the
1535         check now refers its host node.  Note that the original code didn't
1536         care shadows because focus is never set on them.
1537         
1538         Test: editing/spelling/spelling-attribute-at-child.html
1539
1540         * dom/Element.h:
1541         * editing/Editor.cpp:
1542         (WebCore::Editor::markMisspellingsOrBadGrammar):
1543         (WebCore::Editor::isSpellCheckingEnabledFor): 
1544         (WebCore::Editor::isSpellCheckingEnabledInFocusedNode): Now just calling isSpellCheckingEnabledFor()
1545         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1546         * editing/Editor.h:
1547         * platform/ContextMenu.cpp:
1548         (WebCore::ContextMenu::populate):
1549         * rendering/TextControlInnerElements.cpp:
1550         (WebCore::TextControlInnerElement::isSpellCheckingEnabled): Added.
1551         * rendering/TextControlInnerElements.h:
1552
1553 2010-11-01  Martin Robinson  <mrobinson@igalia.com>
1554
1555         Reviewed by Daniel Bates.
1556
1557         [GTK] PopupMenuGtk has a very confusing if-else block
1558         https://bugs.webkit.org/show_bug.cgi?id=48816
1559
1560         Small code cleanup for PopupMenuGtk.
1561
1562         * platform/gtk/PopupMenuGtk.cpp:
1563         (WebCore::PopupMenuGtk::show):
1564
1565 2010-11-01  Adam Barth  <abarth@webkit.org>
1566
1567         Reviewed by Eric Seidel.
1568
1569         [Chromium] Add ICC support for PNG on Mac
1570         https://bugs.webkit.org/show_bug.cgi?id=48170
1571
1572         This just pipes the ICC profile from libpng to CoreGraphics.  This
1573         patch would have been a lot prettier on Snow Leopard, but we have to
1574         use a somewhat ugly API to get this to work on Leopard.
1575
1576         This is covered by about infinite tests.
1577
1578         * platform/image-decoders/ImageDecoder.cpp:
1579         (WebCore::RGBA32Buffer::setColorProfile):
1580         * platform/image-decoders/ImageDecoder.h:
1581         * platform/image-decoders/cg/ImageDecoderCG.cpp:
1582         (WebCore::RGBA32Buffer::asNewNativeImage):
1583         * platform/image-decoders/png/PNGImageDecoder.cpp:
1584         (WebCore::PNGImageDecoder::headerAvailable):
1585         (WebCore::PNGImageDecoder::rowAvailable):
1586         * platform/image-decoders/qt/RGBA32BufferQt.cpp:
1587         (WebCore::RGBA32Buffer::setColorProfile):
1588         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
1589         (WebCore::RGBA32Buffer::setColorProfile):
1590
1591 2010-11-01  Chang Shu  <chang.shu@nokia.com>
1592
1593         Reviewed by Antonio Gomes.
1594
1595         Leave SelectElement key handling without setting event default
1596         handled when the selection reaches the boundary so focus can 
1597         move to neighbor nodes in spatial navigation.
1598         https://bugs.webkit.org/show_bug.cgi?id=48145
1599
1600         * dom/SelectElement.cpp:
1601         (WebCore::SelectElement::listBoxDefaultEventHandler):
1602
1603 2010-11-01  Sheriff Bot  <webkit.review.bot@gmail.com>
1604
1605         Unreviewed, rolling out r71080.
1606         http://trac.webkit.org/changeset/71080
1607         https://bugs.webkit.org/show_bug.cgi?id=48815
1608
1609         This change caused many crashes on the debug bot. (Requested
1610         by mrobinson on #webkit).
1611
1612         * platform/network/soup/SocketStreamHandle.h:
1613         * platform/network/soup/SocketStreamHandleSoup.cpp:
1614         (WebCore::isActiveHandle):
1615         (WebCore::deactivateHandle):
1616         (WebCore::SocketStreamHandle::SocketStreamHandle):
1617         (WebCore::SocketStreamHandle::connected):
1618         (WebCore::SocketStreamHandle::readBytes):
1619         (WebCore::SocketStreamHandle::beginWaitingForSocketWritability):
1620         (WebCore::connectedCallback):
1621         (WebCore::readReadyCallback):
1622         (WebCore::writeReadyCallback):
1623
1624 2010-11-01  Martin Robinson  <mrobinson@igalia.com>
1625
1626         Reviewed by Xan Lopez.
1627
1628         [Soup] Random crashes in http/tests/websocket/tests/workers/worker-handshake-challenge-randomness.html
1629         https://bugs.webkit.org/show_bug.cgi?id=48805
1630
1631         Track active WebSocket handles via a sequential id. This ensures
1632         that when a handle is reallocated into a recently used segment of
1633         memory, it doesn't trigger a false positive in the code which ensures
1634         the original handle is active.
1635
1636         No new tests. This test should stop crashing on the bots, proving the fix.
1637
1638         * platform/network/soup/SocketStreamHandle.h:
1639         (WebCore::SocketStreamHandle::id): Added an m_id member and accessor
1640         to SocketStreamHandle.
1641         * platform/network/soup/SocketStreamHandleSoup.cpp:
1642         (WebCore::getHandleFromId): Updated to work with HashMap of handle ids to
1643         SocketStreamHandle*.
1644         (WebCore::deactivateHandle): Ditto.
1645         (WebCore::activateHandle): Ditto.
1646         (WebCore::SocketStreamHandle::SocketStreamHandle): Ditto.
1647         (WebCore::SocketStreamHandle::connected): Ditto.
1648         (WebCore::SocketStreamHandle::readBytes): Ditto.
1649         (WebCore::SocketStreamHandle::beginWaitingForSocketWritability): Ditto.
1650         (WebCore::connectedCallback): Ditto.
1651         (WebCore::readReadyCallback): Ditto.
1652         (WebCore::writeReadyCallback): Ditto.
1653
1654 2010-11-01  Kent Tamura  <tkent@chromium.org>
1655
1656         Unreviewed. Run sort-Xcode-project-file.
1657
1658         * WebCore.xcodeproj/project.pbxproj:
1659
1660 2010-11-01  Simon Fraser  <simon.fraser@apple.com>
1661
1662         Reviewed by Dan Bernstein.
1663
1664         Assertion failure in FrameView::layout when clicking on a YouTube video on youtube.com front page
1665         https://bugs.webkit.org/show_bug.cgi?id=44287
1666         
1667         When removing subframes, it's possible for layout() to get called on a FrameView
1668         for a Frame that has been removed from the frame tree. This can happen if the parent
1669         document happens to do a layout() while RenderView still has a reference to the widget
1670         for the removed frame; updateWidgetPosition() will try to force a layout() on the 
1671         subframe.
1672         
1673         Fix by checking that the FrameView's Frame still has a reference to the page before
1674         calling layout() on the subframe.
1675
1676         Test: fast/frames/layout-after-destruction.html
1677
1678         * rendering/RenderWidget.cpp:
1679         (WebCore::RenderWidget::updateWidgetPosition):
1680
1681 2010-11-01  Sheriff Bot  <webkit.review.bot@gmail.com>
1682
1683         Unreviewed, rolling out r71065.
1684         http://trac.webkit.org/changeset/71065
1685         https://bugs.webkit.org/show_bug.cgi?id=48801
1686
1687         Seem to breake a lot of tests on Chromium bots (Requested by
1688         dimich on #webkit).
1689
1690         * platform/image-decoders/ImageDecoder.cpp:
1691         * platform/image-decoders/ImageDecoder.h:
1692         * platform/image-decoders/cg/ImageDecoderCG.cpp:
1693         (WebCore::RGBA32Buffer::asNewNativeImage):
1694         * platform/image-decoders/png/PNGImageDecoder.cpp:
1695         (WebCore::PNGImageDecoder::headerAvailable):
1696         (WebCore::PNGImageDecoder::rowAvailable):
1697         * platform/image-decoders/qt/RGBA32BufferQt.cpp:
1698         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
1699
1700 2010-11-01  Matthew Delaney  <mdelaney@apple.com>
1701
1702         Reviewed by Simon Fraser.
1703
1704         Setting attr repeatDur=0 on SVG element causes hang
1705         https://bugs.webkit.org/show_bug.cgi?id=48785
1706
1707         Test: svg/animations/repeatDur-zero.xhtml
1708
1709         * svg/animation/SVGSMILElement.cpp: Fixing bound checking for legal repeatDur values.
1710
1711 2010-10-31  Adam Barth  <abarth@webkit.org>
1712
1713         Reviewed by Eric Seidel.
1714
1715         [Chromium] Add ICC support for PNG on Mac
1716         https://bugs.webkit.org/show_bug.cgi?id=48170
1717
1718         This just pipes the ICC profile from libpng to CoreGraphics.  This
1719         patch would have been a lot prettier on Snow Leopard, but we have to
1720         use a somewhat ugly API to get this to work on Leopard.
1721
1722         This is covered by about infinite tests.
1723
1724         * platform/image-decoders/ImageDecoder.cpp:
1725         (WebCore::RGBA32Buffer::setColorProfile):
1726         * platform/image-decoders/ImageDecoder.h:
1727         * platform/image-decoders/cg/ImageDecoderCG.cpp:
1728         (WebCore::RGBA32Buffer::asNewNativeImage):
1729         * platform/image-decoders/png/PNGImageDecoder.cpp:
1730         (WebCore::PNGImageDecoder::headerAvailable):
1731         (WebCore::PNGImageDecoder::rowAvailable):
1732         * platform/image-decoders/qt/RGBA32BufferQt.cpp:
1733         (WebCore::RGBA32Buffer::setColorProfile):
1734         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
1735         (WebCore::RGBA32Buffer::setColorProfile):
1736
1737 2010-11-01  David Hyatt  <hyatt@apple.com>
1738
1739         Reviewed by Dan Bernstein.
1740
1741         https://bugs.webkit.org/show_bug.cgi?id=48776
1742         
1743         Change isVertical() on InlineBox to isHorizontal() instead.  This makes the horizontal code path come
1744         first if you branch on isHorizontal() and makes the code read better (since that's the more common code
1745         path).
1746
1747         * rendering/InlineBox.cpp:
1748         (WebCore::InlineBox::logicalHeight):
1749         * rendering/InlineBox.h:
1750         (WebCore::InlineBox::InlineBox):
1751         (WebCore::InlineBox::isHorizontal):
1752         (WebCore::InlineBox::setIsHorizontal):
1753         (WebCore::InlineBox::width):
1754         (WebCore::InlineBox::height):
1755         (WebCore::InlineBox::logicalLeft):
1756         (WebCore::InlineBox::setLogicalLeft):
1757         (WebCore::InlineBox::logicalTop):
1758         (WebCore::InlineBox::setLogicalTop):
1759         (WebCore::InlineBox::baselinePosition):
1760         (WebCore::InlineBox::lineHeight):
1761         * rendering/InlineFlowBox.cpp:
1762         (WebCore::InlineFlowBox::addToLine):
1763         (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
1764         (WebCore::InlineFlowBox::computeBlockDirectionOverflow):
1765         (WebCore::InlineFlowBox::paintFillLayer):
1766         (WebCore::InlineFlowBox::paintBoxDecorations):
1767         (WebCore::InlineFlowBox::paintMask):
1768         * rendering/InlineFlowBox.h:
1769         (WebCore::InlineFlowBox::marginLogicalLeft):
1770         (WebCore::InlineFlowBox::marginLogicalRight):
1771         (WebCore::InlineFlowBox::borderLogicalLeft):
1772         (WebCore::InlineFlowBox::borderLogicalRight):
1773         (WebCore::InlineFlowBox::paddingLogicalLeft):
1774         (WebCore::InlineFlowBox::paddingLogicalRight):
1775         (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions):
1776         (WebCore::InlineFlowBox::setBlockDirectionOverflowPositions):
1777         * rendering/InlineTextBox.cpp:
1778         (WebCore::InlineTextBox::selectionRect):
1779         (WebCore::InlineTextBox::applyShadowToGraphicsContext):
1780         (WebCore::paintTextWithShadows):
1781         (WebCore::InlineTextBox::paint):
1782         (WebCore::InlineTextBox::paintDecoration):
1783         * rendering/InlineTextBox.h:
1784         * rendering/RenderBlockLineLayout.cpp:
1785         (WebCore::RenderBlock::createLineBoxes):
1786         * rendering/RenderBox.cpp:
1787         (WebCore::RenderBox::blockDirectionOverflow):
1788         * rendering/RenderBox.h:
1789         * rendering/RenderBoxModelObject.cpp:
1790         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
1791         * rendering/RenderLineBoxList.cpp:
1792         (WebCore::RenderLineBoxList::hitTest):
1793         * rendering/RootInlineBox.cpp:
1794         (WebCore::RootInlineBox::RootInlineBox):
1795         (WebCore::RootInlineBox::placeEllipsis):
1796         * rendering/RootInlineBox.h:
1797         (WebCore::RootInlineBox::baselinePosition):
1798         (WebCore::RootInlineBox::lineHeight):
1799
1800 2010-11-01  Simon Fraser  <simon.fraser@apple.com>
1801
1802         Reviewed by Dave Hyatt.
1803
1804         Multiple background properties are not retrievable via DOM method getComputedStyle
1805         https://bugs.webkit.org/show_bug.cgi?id=23203
1806         
1807         Return lists of values from getComputedStyle() for multiple backgrounds,
1808         and multiple masks.
1809
1810         Test: fast/backgrounds/multiple-backgrounds-computed-style.html
1811
1812         * css/CSSComputedStyleDeclaration.cpp:
1813         (WebCore::fillSizeToCSSValue):
1814         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1815
1816 2010-11-01  David Hyatt  <hyatt@apple.com>
1817
1818         Reviewed by Dan Bernstein.
1819
1820         https://bugs.webkit.org/show_bug.cgi?id=48663
1821
1822         Make repaint invalidation work with vertical lines.  Rewrite linesBoundingBox for RenderText and
1823         RenderInline to give the correct rectangle back for vertical lines.  Also patch linesVisibleOverflowBoundingBox
1824         to give back the correct rectangle for vertical lines.
1825
1826         Fix bugs in the overflow accessors of InlineFlowBox when m_overflow was 0.
1827         
1828         Patch hit testing to also account for "rt" and "bt" blocks.
1829
1830         * rendering/InlineBox.cpp:
1831         (WebCore::InlineBox::adjustForFlippedBlocksWritingMode):
1832         * rendering/InlineFlowBox.cpp:
1833         (WebCore::InlineFlowBox::nodeAtPoint):
1834         * rendering/InlineFlowBox.h:
1835         (WebCore::InlineFlowBox::logicalLeftVisibleOverflow):
1836         (WebCore::InlineFlowBox::logicalRightVisibleOverflow):
1837         (WebCore::InlineFlowBox::bottomLayoutOverflow):
1838         (WebCore::InlineFlowBox::rightLayoutOverflow):
1839         (WebCore::InlineFlowBox::bottomVisualOverflow):
1840         (WebCore::InlineFlowBox::rightVisualOverflow):
1841         * rendering/InlineTextBox.cpp:
1842         (WebCore::InlineTextBox::nodeAtPoint):
1843         * rendering/RenderBlock.cpp:
1844         (WebCore::RenderBlock::hitTestFloats):
1845         (WebCore::RenderBlock::hitTestContents):
1846         * rendering/RenderBox.cpp:
1847         (WebCore::RenderBox::computeRectForRepaint):
1848         (WebCore::RenderBox::adjustForFlippedBlocksWritingMode):
1849         * rendering/RenderBox.h:
1850         * rendering/RenderInline.cpp:
1851         (WebCore::RenderInline::linesBoundingBox):
1852         (WebCore::RenderInline::linesVisibleOverflowBoundingBox):
1853         (WebCore::RenderInline::clippedOverflowRectForRepaint):
1854         * rendering/RenderText.cpp:
1855         (WebCore::RenderText::linesBoundingBox):
1856
1857 2010-11-01  Brady Eidson  <beidson@apple.com>
1858
1859         Reviewed by Anders Carlsson.
1860
1861         <rdar://problem/7660547> and https://bugs.webkit.org/show_bug.cgi?id=48699
1862         Context menu support for WebKit 2.
1863
1864         Add a "showContextMenu" call to Chrome/ChromeClient:
1865         * loader/EmptyClients.h:
1866         (WebCore::EmptyChromeClient::showContextMenu):
1867         * page/Chrome.cpp:
1868         (WebCore::Chrome::showContextMenu):
1869         * page/Chrome.h:
1870         * page/ChromeClient.h:
1871
1872         Add a "platform description to ContextMenuItem" creator, will be needed by WebKit2
1873         * platform/ContextMenu.h:
1874         * platform/mac/ContextMenuMac.mm:
1875         (WebCore::contextMenuItemVector):
1876
1877         * platform/mac/ContextMenuItemMac.mm:
1878         (WebCore::ContextMenuItem::checked): WebKit2 ports now need this implemented.
1879
1880         Stub these out to keep their WK2 ports building:
1881         * platform/qt/ContextMenuItemQt.cpp:
1882         (WebCore::ContextMenuItem::checked):
1883         * platform/qt/ContextMenuQt.cpp:
1884         (WebCore::contextMenuItemVector):
1885         * platform/win/ContextMenuItemWin.cpp:
1886         (WebCore::ContextMenuItem::checked):
1887         * platform/win/ContextMenuWin.cpp:
1888         (WebCore::contextMenuItemVector):
1889
1890 2010-11-01  Eric Carlson  <eric.carlson@apple.com>
1891
1892         Reviewed by Adam Roben.
1893
1894         Seeking by very small increment doesn't generate 'seeked' event
1895         https://bugs.webkit.org/show_bug.cgi?id=48530
1896
1897         Test: media/video-seek-by-small-increment.html
1898
1899         * html/HTMLMediaElement.cpp:
1900         (WebCore::HTMLMediaElement::seek): Ask the media engine for its closest time value so we can
1901         avoid asking it to seek to the current time.
1902
1903         * platform/graphics/MediaPlayer.cpp:
1904         (WebCore::MediaPlayer::mediaTimeForTimeValue): New.
1905         * platform/graphics/MediaPlayer.h:
1906         * platform/graphics/MediaPlayerPrivate.h:
1907         (WebCore::MediaPlayerPrivateInterface::mediaTimeForTimeValue): Ditto.
1908
1909         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1910         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1911         (WebCore::MediaPlayerPrivate::mediaTimeForTimeValue): Return the closest value in the movie's time scale.
1912
1913         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
1914         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::mediaTimeForTimeValue): Ditto
1915         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
1916
1917         * platform/graphics/win/QTMovie.cpp:
1918         (QTMovie::timeScale): Return the movie's time scale.
1919         * platform/graphics/win/QTMovie.h:
1920
1921 2010-11-01  Pavel Feldman  <pfeldman@chromium.org>
1922
1923         Not reviewed: Chromium build fix. Adding missing transitive dependency.
1924
1925         * inspector/InspectorResourceAgent.cpp:
1926
1927 2010-11-01  Pavel Feldman  <pfeldman@chromium.org>
1928
1929         Not reviewed. Removing references to removed file from project files.
1930
1931         * WebCore.gypi:
1932         * inspector/front-end/WebKit.qrc:
1933         * inspector/front-end/inspector.css:
1934
1935 2010-11-01  Pavel Feldman  <pfeldman@chromium.org>
1936
1937         Reviewed by Timothy Hatcher.
1938
1939         Web Inspector: remove old resources panel.
1940         https://bugs.webkit.org/show_bug.cgi?id=45657
1941
1942         * CMakeLists.txt:
1943         * English.lproj/localizedStrings.js:
1944         * GNUmakefile.am:
1945         * WebCore.gypi:
1946         * WebCore.pro:
1947         * WebCore.vcproj/WebCore.vcproj:
1948         * WebCore.xcodeproj/project.pbxproj:
1949         * bindings/js/JSInjectedScriptHostCustom.cpp:
1950         * inspector/InjectedScriptHost.cpp:
1951         * inspector/Inspector.idl:
1952         * inspector/InspectorCSSStore.cpp:
1953         * inspector/InspectorController.cpp:
1954         (WebCore::InspectorController::~InspectorController):
1955         (WebCore::InspectorController::connectFrontend):
1956         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
1957         (WebCore::InspectorController::populateScriptObjects):
1958         (WebCore::InspectorController::unbindAllResources):
1959         (WebCore::InspectorController::didCommitLoad):
1960         (WebCore::InspectorController::frameDetachedFromParent):
1961         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
1962         (WebCore::InspectorController::identifierForInitialRequest):
1963         (WebCore::InspectorController::willSendRequest):
1964         (WebCore::InspectorController::markResourceAsCached):
1965         (WebCore::InspectorController::didReceiveResponse):
1966         (WebCore::InspectorController::didReceiveContentLength):
1967         (WebCore::InspectorController::didFinishLoading):
1968         (WebCore::InspectorController::didFailLoading):
1969         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
1970         (WebCore::InspectorController::scriptImported):
1971         (WebCore::InspectorController::didCreateWebSocket):
1972         (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
1973         (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
1974         (WebCore::InspectorController::didCloseWebSocket):
1975         * inspector/InspectorController.h:
1976         * inspector/InspectorFrontendHost.cpp:
1977         * inspector/InspectorResource.cpp: Removed.
1978         * inspector/InspectorResource.h: Removed.
1979         * inspector/InspectorResourceAgent.cpp:
1980         (WebCore::InspectorResourceAgent::setOverrideContent):
1981         * inspector/InspectorResourceAgent.h:
1982         * inspector/front-end/ConsoleView.js:
1983         (WebInspector.ConsoleView.prototype.addMessage):
1984         (WebInspector.ConsoleView.prototype.clearMessages):
1985         * inspector/front-end/ExtensionServer.js:
1986         (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
1987         * inspector/front-end/Images/resourcesSilhouette.png: Removed.
1988         * inspector/front-end/Resource.js:
1989         * inspector/front-end/ResourceManager.js:
1990         (WebInspector.ResourceManager.getContent):
1991         * inspector/front-end/ResourcesPanel.js: Removed.
1992         * inspector/front-end/Settings.js:
1993         * inspector/front-end/StoragePanel.js:
1994         (WebInspector.StoragePanel):
1995         (WebInspector.StoragePanel.prototype.get toolbarItemLabel):
1996         * inspector/front-end/WebKit.qrc:
1997         * inspector/front-end/inspector.html:
1998         * inspector/front-end/inspector.js:
1999         (WebInspector._createPanels):
2000         (WebInspector.get networkResources):
2001         (WebInspector.forAllResources):
2002         (WebInspector.resourceForURL):
2003         (WebInspector.doLoadedDone.populateInspectorState):
2004         (WebInspector.openResource):
2005         (WebInspector.domContentEventFired):
2006         (WebInspector.loadEventFired):
2007         (WebInspector.reset):
2008         (WebInspector._choosePanelToShowSourceLine):
2009
2010 2010-10-28  Zhenyao Mo  <zmo@google.com>
2011
2012         Reviewed by Kenneth Russell.
2013
2014         Fix enum naming style violation in GraphicsContext3D
2015         https://bugs.webkit.org/show_bug.cgi?id=48441
2016
2017         * platform/graphics/GraphicsContext3D.cpp:
2018         (WebCore::GraphicsContext3D::extractImageData):
2019         (WebCore::GraphicsContext3D::extractTextureData):
2020         (WebCore::doPacking):
2021         (WebCore::GraphicsContext3D::packPixels):
2022         * platform/graphics/GraphicsContext3D.h:
2023         * platform/graphics/cg/GraphicsContext3DCG.cpp:
2024         (WebCore::getSourceDataFormat):
2025         (WebCore::GraphicsContext3D::getImageData):
2026         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2027         (WebCore::GraphicsContext3D::getImageData):
2028
2029 2010-11-01  Martin Robinson  <mrobinson@igalia.com>
2030
2031         Reviewed by Xan Lopez.
2032
2033         [GTK] Pasting markup into Thunderbird compose window produces no text
2034         https://bugs.webkit.org/show_bug.cgi?id=43737
2035
2036         Include a content-type meta tag prefix on all clipboard markup. Programs like
2037         Thunderbird expect this meta tag and will not paste anything unless it is there.
2038
2039         This is covered by changes to WebKit/gtk/tests/testcopyandpaste.c. This patch was
2040         written in such a way as to not affect layout test results, otherwise there
2041         would be many new GTK+-specific results that say "FAIL").
2042
2043         * platform/gtk/PasteboardHelper.cpp:
2044         (WebCore::removeMarkupPrefix): Added this helper which removes the prefix
2045         when found on incoming clipboard and drag-and-drop text.
2046         (WebCore::PasteboardHelper::getClipboardContents): Remove the meta tag prefix.
2047         (WebCore::PasteboardHelper::fillSelectionData): Add the meta tag prefix.
2048         (WebCore::PasteboardHelper::fillDataObjectFromDropData): Remove the meta tag prefix
2049
2050 2010-11-01  Justin Schuh  <jschuh@chromium.org>
2051
2052         Reviewed by Dirk Schulze.
2053
2054         Check for NULL node in SVGUseElement::associateInstancesWithShadowTreeElements loop
2055         https://bugs.webkit.org/show_bug.cgi?id=48741
2056
2057         Test: svg/custom/use-on-use-with-child-and-empty-target.svg
2058
2059         * svg/SVGUseElement.cpp:
2060         (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
2061
2062 2010-11-01  Mario Sanchez Prada  <msanchez@igalia.com>
2063
2064         Reviewed by Martin Robinson.
2065
2066         [Gtk] AtkHyperlink needs to be implemented
2067         https://bugs.webkit.org/show_bug.cgi?id=33785
2068
2069         Implemented the AtkHyperlink/AtkHypertext stuff in the GTK port.
2070
2071         Even thought these kind of tasks are usually about implementing an
2072         interface, in this case it was needed to implement some more
2073         things due to the fact that AtkHyperlink is neither an interface
2074         nor an AtkObject, but just an abstract class child of GObject that
2075         needs to be redefined in a specific subclass of that one. On top
2076         of that, it was needed to implement the AtkAction interface as
2077         well for that new class, so exposed hyperlinks can work as
2078         expected with Assistive Technologies based on ATK.
2079
2080         Furthermore, as there's no mechanism to get an instance of that
2081         AtkHyperlink other than doing it through an AtkObject implementing
2082         the AtkHypertext interface, it was needed to also add the code to
2083         implement that one, so it makes possible to ask for the
2084         'hyperlinks' under an 'hypertext' accessible object.
2085
2086         Finally, to complete the implementation of all this stuff and make
2087         it all consistent, it was needed as well to implement the
2088         AtkHyperlinkImpl interface (providing just one method only) so
2089         that allows retrieving the AtkHyperlink object associated to an
2090         AtkObject implementing such an interface.
2091
2092         * GNUmakefile.am: Add the new WebKitAccessibleHyperlink.[h|cpp]
2093         files to the sources list for the GTK port.
2094
2095         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2096         (core): New function to return the core accessibility object
2097         related to an AtkObject implementing the AtkHypertext interface.
2098         (webkitAccessibleHypertextGetLink): New, part of the
2099         implementation of the AtkHypertext interface.
2100         (webkitAccessibleHypertextGetNLinks): New, likewise.
2101         (webkitAccessibleHypertextGetLinkIndex): New, likewise.
2102         (atkHypertextInterfaceInit): New, initialize the AtkHypertext
2103         interface.
2104         (webkitAccessibleHyperlinkImplGetHyperlink): New, part of the
2105         implementation of the AtkHyperlinkImpl interface.
2106         (atkHyperlinkImplInterfaceInit): New, initialize the
2107         AtkHyperlinkImpl interface.
2108         (GetAtkInterfaceTypeFromWAIType): Add ATK_TYPE_HYPERTEXT and
2109         ATK_TYPE_HYPERLINK_IMPL to the list of recognized types.
2110         (getInterfaceMaskFromObject): Decide when it's needed to add
2111         WAI_HYPERTEXT and WAI_HYPERLINK to the interface mask.
2112
2113         * accessibility/gtk/WebKitAccessibleHyperlink.h: Added.
2114         * accessibility/gtk/WebKitAccessibleHyperlink.cpp: Added.
2115         (returnString): Return (const char*) from String variables.
2116         (core): Return the associated AccessibilityObject.
2117         (webkitAccessibleHyperlinkActionDoAction): Part of the
2118         implementation of the AtkAction interface.
2119         (webkitAccessibleHyperlinkActionGetNActions): Likewise.
2120         (webkitAccessibleHyperlinkActionGetDescription): Likewise.
2121         (webkitAccessibleHyperlinkActionGetKeybinding): Likewise.
2122         (webkitAccessibleHyperlinkActionGetName): Likewise.
2123         (atkActionInterfaceInit): Initialize the AtkAction interface.
2124         (getRangeLengthForObject): Returns the length for a given Range,
2125         considering special cases (e.g. List item markers).
2126         (webkitAccessibleHyperlinkGetURI): Implementation of one of the
2127         methods in the AtkHyperlink abstract class.
2128         (webkitAccessibleHyperlinkGetObject): Likewise.
2129         (webkitAccessibleHyperlinkGetStartIndex): Likewise.
2130         (webkitAccessibleHyperlinkGetEndIndex): Likewise.
2131         (webkitAccessibleHyperlinkIsValid): Likewise.
2132         (webkitAccessibleHyperlinkGetNAnchors): Likewise.
2133         (webkitAccessibleHyperlinkIsSelectedLink): Likewise.
2134         (webkitAccessibleHyperlinkGetProperty): Getter method.
2135         (webkitAccessibleHyperlinkSetProperty): Setter method.
2136         (webkitAccessibleHyperlinkFinalize): Finalize method.
2137         (webkitAccessibleHyperlinkClassInit): Initialize the
2138         WebKitAccessibleHyperlink class.
2139         (webkitAccessibleHyperlinkInit): Initialize the
2140         WebKitAccessibleHyperlink instance.
2141         (webkitAccessibleHyperlinkGetType): Implementation of the
2142         get_type() function for the WebKitAccessibleHyperlink class.
2143         (webkitAccessibleHyperlinkNew): Returns an instance of the class
2144         associated to a given AtkHyperlinkImpl object.
2145         (webkitAccessibleHyperlinkGetAccessibilityObject): Public function
2146         returning the AccessibilityObject associated to the instance of
2147         the WebKitAccessibleHyperlink class.
2148
2149 2010-11-01  Pavel Feldman  <pfeldman@chromium.org>
2150
2151         Not reviewed: simplify inspector styles test to make all bots happy.
2152         (drive-by fix for overriden inspector styles in network panel).
2153
2154         * inspector/InspectorController.h:
2155         * inspector/front-end/networkPanel.css:
2156
2157 2010-11-01  Nikolas Zimmermann  <nzimmermann@rim.com>
2158
2159         Reviewed by Rob Buis.
2160
2161         Enable StrictTypeChecking for all types using SVG(Animated)PropertyTearOff
2162         https://bugs.webkit.org/show_bug.cgi?id=48715
2163
2164         Enable StrictTypeChecking for all readwrite attributes and function calls of all types using the new SVG(Animated)PropertyTearOff concept.
2165         Also enable RequiresAllArguments=Raise for all function calls of these new types. Cover this functionality by tests for each of them.
2166
2167         When testing SVGLength it became obvious that quite a lot of functionality was missing.
2168         Conversion from relative arguments (percentage, ems, exs) to user specified units was missing, added that functionality and tested it.
2169         User units to pt conversion was wrong, fixed that.
2170
2171         Tests: svg/dom/SVGAnimatedAngle.html
2172                svg/dom/SVGAnimatedBoolean.html
2173                svg/dom/SVGAnimatedEnumeration.html
2174                svg/dom/SVGAnimatedInteger.html
2175                svg/dom/SVGAnimatedLength.html
2176                svg/dom/SVGAnimatedLengthList.html
2177                svg/dom/SVGAnimatedRect.html
2178                svg/dom/SVGLength-px-with-context.html
2179                svg/dom/SVGLength-px.html
2180                svg/dom/SVGLength.html
2181
2182         * bindings/js/JSSVGLengthCustom.cpp: These SVGLength methods now take an ExceptionCode parameter, adapt to that. 
2183         (WebCore::JSSVGLength::value):
2184         (WebCore::JSSVGLength::setValue):
2185         (WebCore::JSSVGLength::convertToSpecifiedUnits):
2186         * bindings/scripts/CodeGeneratorObjC.pm: Remove FIXMEs, pass real context instead off null pointer. DOMSVGLength::value is functional now.
2187         * bindings/v8/custom/V8SVGLengthCustom.cpp: These SVGLength methods now take an ExceptionCode parameter, adapt to that.
2188         (WebCore::V8SVGLength::valueAccessorGetter):
2189         (WebCore::V8SVGLength::valueAccessorSetter):
2190         (WebCore::V8SVGLength::convertToSpecifiedUnitsCallback):
2191         * rendering/style/SVGRenderStyle.h: Adapt to SVGLength API changes.
2192         (WebCore::SVGRenderStyle::initialBaselineShiftValue):
2193         (WebCore::SVGRenderStyle::initialKerning):
2194         (WebCore::SVGRenderStyle::initialStrokeDashOffset):
2195         (WebCore::SVGRenderStyle::initialStrokeWidth):
2196         * svg/SVGAngle.idl: Add StrictTypeChecking, RequiresAllArguments=Raise to all methods.
2197         * svg/SVGAnimatedBoolean.idl: Remove StrictTypeChecking from animVal, it's readonly so this is useless.
2198         * svg/SVGAnimatedEnumeration.idl: Add StrictTypeChecking to all attributes.
2199         * svg/SVGAnimatedInteger.idl: Ditto.
2200         * svg/SVGLength.cpp: Implement all missing features of SVGLength. Conform to our style guide (s/.0f// etc)
2201         (WebCore::lengthTypeToString):
2202         (WebCore::SVGLength::SVGLength):
2203         (WebCore::SVGLength::value): Throw NOT_SUPPORTED_ERR when trying to obtain to relative units, when no context is given (SVGLength created by createSVGLength()).
2204         (WebCore::SVGLength::setValue): Ditto, for the setter.
2205         (WebCore::SVGLength::valueAsPercentage): Use m_valueInSpecifiedUnits instead of valueInSpecifiedUnits().
2206         (WebCore::SVGLength::setValueAsString): Throw SYNTAX_ERR if parsing failed.
2207         (WebCore::SVGLength::valueAsString): Use makeString() instead of String and operator+.
2208         (WebCore::SVGLength::newValueSpecifiedUnits): Add ExceptionCode parameter, throw NOT_SUPPORTED_ERR, if the given unit type is invalid.
2209         (WebCore::SVGLength::convertToSpecifiedUnits): Ditto.
2210         (WebCore::SVGLength::determineViewport): Added helper function used by convertValue*Percentage*.
2211         (WebCore::SVGLength::convertValueFromUserUnitsToPercentage): Add new helper functions, used by value/setValue.
2212         (WebCore::SVGLength::convertValueFromPercentageToUserUnits): Ditto.
2213         (WebCore::SVGLength::convertValueFromUserUnitsToEMS): Ditto.
2214         (WebCore::SVGLength::convertValueFromEMSToUserUnits): Ditto.
2215         (WebCore::SVGLength::convertValueFromUserUnitsToEXS): Ditto.
2216         (WebCore::SVGLength::convertValueFromEXSToUserUnits): Ditto.
2217         (WebCore::SVGLength::fromCSSPrimitiveValue): Adapt to newValueSpecifiedUnits API change.
2218         (WebCore::SVGLength::toCSSPrimitiveValue): Remove default switch case.
2219         * svg/SVGLength.h:
2220         (WebCore::SVGLength::valueInSpecifiedUnits): Inlined.
2221         (WebCore::SVGLength::setValueInSpecifiedUnits): Ditto.
2222         (WebCore::SVGLength::isRelative):
2223         * svg/SVGLength.idl: Add StrictTypeChecking for all attributes/functions and RequiresAllArguments=Raise for all functions.
2224         * svg/SVGLengthList.cpp: Adapt to SVGLength API changes.
2225         (WebCore::SVGLengthList::parse):
2226
2227 2010-10-31  Pavel Feldman  <pfeldman@chromium.org>
2228
2229         Reviewed by Timothy Hatcher.
2230
2231         Web Inspector: unhide new network and resources panels.
2232         https://bugs.webkit.org/show_bug.cgi?id=48725
2233
2234         * English.lproj/localizedStrings.js:
2235         * inspector/InspectorController.h:
2236         * inspector/front-end/NetworkPanel.js:
2237         (WebInspector.NetworkPanel):
2238         * inspector/front-end/Settings.js:
2239         * inspector/front-end/StoragePanel.js:
2240         (WebInspector.StoragePanel):
2241         (WebInspector.StoragePanel.prototype.reset):
2242         (WebInspector.StoragePanel.prototype.addResourceToFrame):
2243         (WebInspector.StoragePanel.prototype.addDocumentURL):
2244         (WebInspector.StoragePanel.prototype.showFileSystem):
2245         (WebInspector.FileSystemTreeElement):
2246         (WebInspector.FileSystemTreeElement.prototype.get itemURL):
2247         (WebInspector.FileSystemTreeElement.prototype.onselect):
2248         * inspector/front-end/inspector.js:
2249         (WebInspector.updateResource):
2250         * inspector/front-end/networkPanel.css:
2251         (#network-close-button):
2252         (.network.panel.viewing-resource #network-close-button):
2253
2254 2010-10-26  MORITA Hajime  <morrita@google.com>
2255
2256         Reviewed by Kent Tamura.
2257
2258         Refactoring: Spellchecking related static functions could form a class
2259         https://bugs.webkit.org/show_bug.cgi?id=48287
2260
2261         Extracted spellcheck related static functions to TextCheckingHelper class,
2262         which has EditorClient and Range as its member.
2263         
2264         No new tests. Just a refactoring.
2265
2266         * CMakeLists.txt:
2267         * GNUmakefile.am:
2268         * WebCore.gypi:
2269         * WebCore.pro:
2270         * WebCore.vcproj/WebCore.vcproj:
2271         * WebCore.xcodeproj/project.pbxproj:
2272         * editing/EditingAllInOne.cpp
2273         * editing/Editor.cpp:
2274         (WebCore::Editor::advanceToNextMisspelling):
2275         (WebCore::Editor::isSelectionUngrammatical):
2276         (WebCore::Editor::guessesForUngrammaticalSelection):
2277         (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection):
2278         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
2279         (WebCore::Editor::markMisspellingsOrBadGrammar):
2280         (WebCore::Editor::markMisspellings):
2281         (WebCore::Editor::markBadGrammar):
2282         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
2283         (WebCore::Editor::changeBackToReplacedString):
2284         * editing/Editor.h:
2285         * editing/TextCheckingHelper.cpp: Added.
2286         (WebCore::TextCheckingHelper::TextCheckingHelper):
2287         (WebCore::TextCheckingHelper::~TextCheckingHelper):
2288         (WebCore::TextCheckingHelper::paragraphAlignedRange):
2289         (WebCore::TextCheckingHelper::findFirstMisspelling):
2290         (WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar):
2291         (WebCore::TextCheckingHelper::findFirstGrammarDetail):
2292         (WebCore::TextCheckingHelper::findFirstBadGrammar):
2293         (WebCore::TextCheckingHelper::isUngrammatical):
2294         (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange):
2295         (WebCore::TextCheckingHelper::markAllMisspellings):
2296         (WebCore::TextCheckingHelper::markAllBadGrammar):
2297         * editing/TextCheckingHelper.h: Added.
2298
2299 2010-10-31  Xan Lopez  <xlopez@igalia.com>
2300
2301         Try to fix the GTK+ build.
2302
2303         Do not use broken/deprecated functions that won't be available
2304         with G_DISABLE_DEPRECATED (used in debug builds).
2305
2306         * plugins/gtk/PluginPackageGtk.cpp:
2307         (WebCore::PluginPackage::fetchInfo):
2308
2309 2010-10-31  Kenichi Ishibashi  <bashi@google.com>
2310
2311         Reviewed by Adam Barth.
2312
2313         V8 binding for DOMSettableTokenList
2314         https://bugs.webkit.org/show_bug.cgi?id=47812
2315
2316         Tests for this change will be included in the change for supporting
2317         the <output> element.
2318         See https://bugs.webkit.org/show_bug.cgi?id=29363.
2319
2320         * bindings/v8/custom/V8DOMSettableTokenListCustom.cpp: Implemented.
2321         (WebCore::V8DOMSettableTokenList::indexedPropertyGetter): Just calls DOMSettableTokenList::item(index).
2322
2323 2010-10-31  Robert Hogan  <robert@webkit.org>
2324
2325         Reviewed by Antonio Gomes.
2326
2327         [Qt] [Gtk] Plug-ins having upper case in mime type are failing to load
2328
2329         Qt and Gtk are case-sensitive when storing the declared mime-type
2330         of plugins. Since plugin mime-types are lowercased prior to searching
2331         for them in the plugin database, ensure they are loaded with the
2332         mime-type in lower case too.
2333
2334         https://bugs.webkit.org/show_bug.cgi?id=36815
2335
2336         * plugins/gtk/PluginPackageGtk.cpp:
2337         (WebCore::PluginPackage::fetchInfo):
2338         * plugins/qt/PluginPackageQt.cpp:
2339         (WebCore::PluginPackage::setMIMEDescription):
2340
2341 2010-10-31  Robert Hogan  <robert@webkit.org>
2342
2343         Reviewed by Antonio Gomes.
2344
2345         [Qt] Support nodesFromRect in DRT
2346
2347         Pass a Document object as a QWebElement. 
2348
2349         https://bugs.webkit.org/show_bug.cgi?id=48716
2350
2351         * bridge/qt/qt_runtime.cpp:
2352         (JSC::Bindings::convertValueToQVariant):
2353
2354 2010-10-31  Peter Kasting  <pkasting@google.com>
2355
2356         Reviewed by Adam Barth.
2357
2358         Treat GIFs with no loop count as "loop once".
2359         https://bugs.webkit.org/show_bug.cgi?id=47302
2360
2361         Test: fast/images/gif-loop-count.html
2362
2363         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2364         (WebCore::GIFImageDecoder::repetitionCount):
2365         (WebCore::GIFImageDecoder::gifComplete):
2366
2367 2010-10-31  No'am Rosenthal  <noam.rosenthal@nokia.com>
2368
2369         Reviewed by Andreas Kling.
2370
2371         [Texmap] [Qt] Texture mapper initial implementation
2372         https://bugs.webkit.org/show_bug.cgi?id=47070
2373
2374         Build fix for X11.
2375
2376         No new tests; build fix.
2377
2378         * plugins/qt/PluginViewQt.cpp:
2379         (WebCore::PluginView::invalidateRect):
2380         (WebCore::PluginView::platformStart):
2381
2382 2010-10-31  Andreas Kling  <kling@webkit.org>
2383
2384         Reviewed by Dirk Schulze.
2385
2386         Remove the unused GraphicsContext::clipOutEllipseInRect(IntRect)
2387         https://bugs.webkit.org/show_bug.cgi?id=48727
2388
2389         This function was added in <http://trac.webkit.org/changeset/18654> for CSS3 box-shadows.
2390         All use of the function was removed in <http://trac.webkit.org/changeset/21601>
2391
2392         * platform/graphics/GraphicsContext.h:
2393         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2394         * platform/graphics/cg/GraphicsContextCG.cpp:
2395         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
2396         (WebCore::GraphicsContext::clipOut):
2397         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
2398         * platform/graphics/qt/GraphicsContextQt.cpp:
2399         * platform/graphics/skia/GraphicsContextSkia.cpp:
2400         (WebCore::GraphicsContext::clipOut):
2401         * platform/graphics/wince/GraphicsContextWinCE.cpp:
2402         * platform/graphics/wx/GraphicsContextWx.cpp:
2403
2404 2010-10-31  Andreas Kling  <kling@webkit.org>
2405
2406         Reviewed by Dirk Schulze.
2407
2408         [Qt] Respect the "antialiased" argument in clipConvexPolygon()
2409         https://bugs.webkit.org/show_bug.cgi?id=48734
2410
2411         Set (or unset) the QPainter::Antialiased render hint for antialiased
2412         clipping based on the "antialiased" argument.
2413
2414         No test since Qt doesn't have pixel tests yet.
2415
2416         * platform/graphics/qt/GraphicsContextQt.cpp:
2417         (WebCore::GraphicsContext::clipConvexPolygon):
2418
2419 2010-10-31  Andreas Kling  <kling@webkit.org>
2420
2421         Reviewed by Dirk Schulze.
2422
2423         Remove the unused GraphicsContext::strokeRect(FloatRect)
2424         https://bugs.webkit.org/show_bug.cgi?id=48726
2425
2426         This function was only implemented by GraphicsContextOpenVG and not
2427         called from anywhere.
2428
2429         * platform/graphics/GraphicsContext.h:
2430         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
2431
2432 2010-10-31  Andreas Kling  <kling@webkit.org>
2433
2434         Reviewed by Dirk Schulze.
2435
2436         Remove the unused GraphicsContext::origin()
2437         https://bugs.webkit.org/show_bug.cgi?id=48732
2438
2439         This method was not called from anywhere.
2440
2441         * platform/graphics/GraphicsContext.h:
2442         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2443         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
2444         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
2445         * platform/graphics/qt/GraphicsContextQt.cpp:
2446         * platform/graphics/wince/GraphicsContextWinCE.cpp:
2447
2448 2010-10-31  Andreas Kling  <kling@webkit.org>
2449
2450         Reviewed by Dirk Schulze.
2451
2452         [Qt] Remove GraphicsContext::pen()
2453         https://bugs.webkit.org/show_bug.cgi?id=48733
2454
2455         Have PathQt obtain the pen() through the platformContext() instead.
2456
2457         * platform/graphics/GraphicsContext.h:
2458         * platform/graphics/qt/GraphicsContextQt.cpp:
2459         * platform/graphics/qt/PathQt.cpp:
2460         (WebCore::Path::strokeContains):
2461         (WebCore::Path::strokeBoundingRect):
2462
2463 2010-10-31  Sheriff Bot  <webkit.review.bot@gmail.com>
2464
2465         Unreviewed, rolling out r70959.
2466         http://trac.webkit.org/changeset/70959
2467         https://bugs.webkit.org/show_bug.cgi?id=48731
2468
2469         It broke fast/events/spatial-navigation tests (Requested by
2470         Ossy on #webkit).
2471
2472         * WebCore.xcodeproj/project.pbxproj:
2473         * rendering/InlineBox.cpp:
2474         (WebCore::InlineBox::adjustForFlippedBlocksWritingMode):
2475         * rendering/InlineFlowBox.h:
2476         (WebCore::InlineFlowBox::bottomLayoutOverflow):
2477         (WebCore::InlineFlowBox::rightLayoutOverflow):
2478         (WebCore::InlineFlowBox::bottomVisualOverflow):
2479         (WebCore::InlineFlowBox::rightVisualOverflow):
2480         * rendering/RenderBox.cpp:
2481         * rendering/RenderBox.h:
2482         * rendering/RenderInline.cpp:
2483         (WebCore::RenderInline::linesBoundingBox):
2484         (WebCore::RenderInline::linesVisibleOverflowBoundingBox):
2485         (WebCore::RenderInline::clippedOverflowRectForRepaint):
2486         * rendering/RenderText.cpp:
2487         (WebCore::RenderText::linesBoundingBox):
2488
2489 2010-10-30  Pavel Feldman  <pfeldman@chromium.org>
2490
2491         Reviewed by Timothy Hatcher.
2492
2493         Web Inspector: new resources and network panel usability improvements.
2494         https://bugs.webkit.org/show_bug.cgi?id=48680
2495
2496         By default, navigation clears network log, added 'preserve log' button,
2497         that prevents log from being cleared.
2498
2499         Storing expanded state of all group items, restoring last selected item,
2500         fall back to main frame's main resource by default.
2501         Do not list XHRs and redirects in resources.
2502
2503         * English.lproj/localizedStrings.js:
2504         * inspector/InspectorController.cpp:
2505         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
2506         (WebCore::InspectorController::identifierForInitialRequest):
2507         * inspector/front-end/NetworkPanel.js:
2508         (WebInspector.NetworkPanel.prototype.get statusBarItems):
2509         (WebInspector.NetworkPanel.prototype._positionSummaryBar):
2510         (WebInspector.NetworkPanel.prototype._updateFilter):
2511         (WebInspector.NetworkPanel.prototype._createStatusbarButtons):
2512         (WebInspector.NetworkPanel.prototype._onPreserveLogClicked):
2513         (WebInspector.NetworkPanel.prototype.reset):
2514         (WebInspector.NetworkPanel.prototype.refreshResource):
2515         * inspector/front-end/ResourceManager.js:
2516         (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
2517         (WebInspector.ResourceManager.prototype.willSendRequest):
2518         (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache):
2519         (WebInspector.ResourceManager.prototype.setOverrideContent):
2520         (WebInspector.ResourceManager.prototype.didCreateWebSocket):
2521         * inspector/front-end/StoragePanel.js:
2522         (WebInspector.StoragePanel):
2523         (WebInspector.StoragePanel.prototype.show):
2524         (WebInspector.StoragePanel.prototype._initDefaultSelection):
2525         (WebInspector.StoragePanel.prototype.reset):
2526         (WebInspector.StoragePanel.prototype.addResourceToFrame):
2527         (WebInspector.StoragePanel.prototype.refreshResource):
2528         (WebInspector.StoragePanel.prototype.showDatabase):
2529         (WebInspector.BaseStorageTreeElement.prototype.onselect):
2530         (WebInspector.StorageCategoryTreeElement):
2531         (WebInspector.StorageCategoryTreeElement.prototype.get itemURL):
2532         (WebInspector.StorageCategoryTreeElement.prototype.onselect):
2533         (WebInspector.StorageCategoryTreeElement.prototype.onattach):
2534         (WebInspector.StorageCategoryTreeElement.prototype.onexpand):
2535         (WebInspector.StorageCategoryTreeElement.prototype.oncollapse):
2536         (WebInspector.FrameTreeElement.prototype.get itemURL):
2537         (WebInspector.FrameTreeElement.prototype.onselect):
2538         (WebInspector.FrameResourceTreeElement.prototype.get itemURL):
2539         (WebInspector.FrameResourceTreeElement.prototype.onselect):
2540         (WebInspector.DatabaseTreeElement.prototype.get itemURL):
2541         (WebInspector.DatabaseTreeElement.prototype.onselect):
2542         (WebInspector.DatabaseTableTreeElement.prototype.get itemURL):
2543         (WebInspector.DatabaseTableTreeElement.prototype.onselect):
2544         (WebInspector.DOMStorageTreeElement.prototype.get itemURL):
2545         (WebInspector.DOMStorageTreeElement.prototype.onselect):
2546         (WebInspector.CookieTreeElement.prototype.get itemURL):
2547         (WebInspector.CookieTreeElement.prototype.onselect):
2548         (WebInspector.ApplicationCacheTreeElement.prototype.get itemURL):
2549         (WebInspector.ApplicationCacheTreeElement.prototype.onselect):
2550
2551 2010-10-30  Patrick Gansterer  <paroga@webkit.org>
2552
2553         Unreviewed, build fix after r70846.
2554
2555         * platform/graphics/wince/ImageWinCE.cpp:
2556         (WebCore::RGBA32Buffer::asNewNativeImage):
2557
2558 2010-10-30  Dimitri Glazkov  <dglazkov@chromium.org>
2559
2560         Unreviewed, rolling out r70984.
2561         http://trac.webkit.org/changeset/70984
2562         https://bugs.webkit.org/show_bug.cgi?id=46015
2563
2564         Made media/audio-delete-while-slider-thumb-clicked.html crash.
2565
2566         * Android.mk:
2567         * CMakeLists.txt:
2568         * GNUmakefile.am:
2569         * WebCore.gypi:
2570         * WebCore.pro:
2571         * WebCore.xcodeproj/project.pbxproj:
2572         * dom/ContainerNode.cpp:
2573         (WebCore::notifyChildInserted):
2574         * dom/EventContext.cpp: Removed.
2575         * dom/EventContext.h: Removed.
2576         * dom/Node.cpp:
2577         (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc):
2578         (WebCore::Node::createRendererIfNeeded):
2579         (WebCore::Node::eventParentNode):
2580         (WebCore::Node::enclosingLinkEventParentOrSelf):
2581         (WebCore::eventTargetAsSVGElementInstance):
2582         (WebCore::eventTargetRespectingSVGTargetRules):
2583         (WebCore::Node::eventAncestors):
2584         (WebCore::Node::dispatchGenericEvent):
2585         * dom/Node.h:
2586         * dom/Text.cpp:
2587         (WebCore::Text::createRenderer):
2588         * dom/WindowEventContext.cpp: Removed.
2589         * dom/WindowEventContext.h: Removed.
2590         * inspector/InspectorDOMAgent.cpp:
2591         (WebCore::InspectorDOMAgent::getEventListenersForNode):
2592         * inspector/InspectorInstrumentation.cpp:
2593         (WebCore::eventHasListeners):
2594         (WebCore::InspectorInstrumentation::willDispatchEventImpl):
2595         * inspector/InspectorInstrumentation.h:
2596         (WebCore::InspectorInstrumentation::willDispatchEvent):
2597         * page/EventHandler.cpp:
2598         (WebCore::EventHandler::updateMouseEventTargetNode):
2599         * svg/SVGElement.cpp:
2600         (WebCore::SVGElement::eventParentNode):
2601         * svg/SVGElement.h:
2602
2603 2010-10-30  Dimitri Glazkov  <dglazkov@chromium.org>
2604
2605         Reviewed by Darin Adler.
2606
2607         Implement shadow DOM-aware event targeting and introduce EventContext to track the context of each event dispatch.
2608         https://bugs.webkit.org/show_bug.cgi?id=46015
2609
2610         This patch adds the notion of EventContext (and a very similar-acting WindowEventContext, specifically
2611         for DOMWindow), an abstraction that carries information around dispatching an event for any given Node.
2612
2613         This abstraction is necessary to ensure that events, fired from shadow DOM nodes are properly retargeted to
2614         appear as if they are coming from their host, thus never exposing the shadow DOM nodes to the world outside.
2615
2616         * Android.mk: Added EventContext, WindowEventContext files.
2617         * CMakeLists.txt: Ditto.
2618         * GNUmakefile.am: Ditto.
2619         * WebCore.gypi: Ditto.
2620         * WebCore.pro: Ditto.
2621         * WebCore.xcodeproj/project.pbxproj: Ditto.
2622         * dom/ContainerNode.cpp:
2623         (WebCore::notifyChildInserted): Changed to be shadow DOM-aware.
2624         * dom/EventContext.cpp: Added.
2625         * dom/EventContext.h: Added.
2626         * dom/Node.cpp:
2627         (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Changed to be shadow DOM-aware.
2628         (WebCore::Node::createRendererIfNeeded): Ditto.
2629         (WebCore::Node::parentOrHostNode): Added new helper method.
2630         (WebCore::Node::enclosingLinkEventParentOrSelf): Changed to be shadow DOM-aware.
2631         (WebCore::eventTargetRespectingSVGTargetRules): Collapsed two helper methods into one.
2632         (WebCore::Node::eventAncestors): Refactored to collect a vector of EventContexts.
2633         (WebCore::Node::topEventContext): Added.
2634         (WebCore::eventHasListeners): Changed to use EventContexts.
2635         (WebCore::Node::dispatchGenericEvent): Ditto.
2636         * dom/Node.h: Removed eventParentNode that's no longer needed, added parentOrHostNode decl,
2637             and changed signature of eventAncestors to use EventContexts.
2638         * dom/Text.cpp:
2639         (WebCore::Text::createRenderer): Changed to be shadow DOM-aware.
2640         * inspector/InspectorDOMAgent.cpp:
2641         (WebCore::InspectorDOMAgent::getEventListenersForNode): Changed to use EventContexts.
2642         * page/EventHandler.cpp:
2643         (WebCore::EventHandler::updateMouseEventTargetNode): Removed code that's no longer necessary.
2644         * svg/SVGElement.cpp: Removed eventParentNode that's no longer needed.
2645         * svg/SVGElement.h: Ditto.
2646         * dom/WindowEventContext.cpp: Added.
2647         * dom/WindowEventContext.h: Added.
2648
2649 2010-10-30  Nikolas Zimmermann  <nzimmermann@rim.com>
2650
2651         Reviewed by Rob Buis.
2652
2653         Convert SVGAnimatedNumber/SVGAnimatedNumberList to the new SVGAnimatedPropertyTearOff concept
2654         https://bugs.webkit.org/show_bug.cgi?id=48686
2655
2656         Convert the next set of primitives to use the new SVG(Animated)PropertyTearOff concept.
2657
2658         Tests: svg/dom/SVGAnimatedNumber.html
2659                svg/dom/SVGAnimatedNumberList.html
2660                svg/dom/SVGNumber.html
2661
2662         * GNUmakefile.am: Add SVGAnimatedNumber.h / SVGAnimatedNumberList.h to build.
2663         * WebCore.gypi: Ditto.
2664         * WebCore.pro: Ditto.
2665         * WebCore.vcproj/WebCore.vcproj: Ditto.
2666         * WebCore.xcodeproj/project.pbxproj: Ditto.
2667         * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedNumber/SVGAnimatedNumberList as new style SVG animated properties. Remove SVGNumber from PODType hash.
2668         * bindings/scripts/CodeGeneratorJS.pm: Remove special SVGNumber handing, it's obsolete now.
2669         * bindings/scripts/CodeGeneratorObjC.pm: Add special SVGNumber handling, as it's the first of the converted dynamic SVGAnimatedProperty types that's not in WebCore namespace.
2670         * bindings/scripts/CodeGeneratorV8.pm: Use AvoidInclusionOfType method from CodeGenerator.pm, remove special SVGNumber handling, that's obsolete now.
2671         * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
2672         (WebCore::extractFloatValuesFromSVGNumberList): Adapt to SVGNumberList change, which is a plain Vector<float> now.
2673         * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedNumber/SVGAnimatedNumberList handling.
2674         * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
2675         * svg/SVGAnimatedNumber.h: Added.
2676         * svg/SVGAnimatedNumber.idl: Enable StrictTypeChecking.
2677         * svg/SVGAnimatedNumberList.h: Added.
2678         * svg/SVGAnimatedNumberList.idl: Ditto.
2679         * svg/SVGComponentTransferFunctionElement.cpp: Switch animated float properties to the new SVGAnimatedNumber(List).
2680         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
2681         (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
2682         (WebCore::SVGComponentTransferFunctionElement::transferFunction):
2683         * svg/SVGComponentTransferFunctionElement.h:
2684         * svg/SVGFEColorMatrixElement.cpp: Ditto.
2685         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
2686         (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
2687         (WebCore::SVGFEColorMatrixElement::build):
2688         * svg/SVGFEColorMatrixElement.h:
2689         * svg/SVGFECompositeElement.h: Ditto.
2690         * svg/SVGFEConvolveMatrixElement.cpp: Ditto.
2691         (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement):
2692         (WebCore::SVGFEConvolveMatrixElement::kernelUnitLengthXIdentifier): Added, replacing char[] hack by a static atomic string.
2693         (WebCore::SVGFEConvolveMatrixElement::kernelUnitLengthYIdentifier): Ditto.
2694         (WebCore::SVGFEConvolveMatrixElement::parseMappedAttribute):
2695         (WebCore::SVGFEConvolveMatrixElement::build):
2696         * svg/SVGFEConvolveMatrixElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
2697         * svg/SVGFEDiffuseLightingElement.cpp: Ditto.
2698         (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthXIdentifier): Remove trailing whitespace.
2699         (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthYIdentifier): Ditto.
2700         * svg/SVGFEDiffuseLightingElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
2701         * svg/SVGFEDisplacementMapElement.h: Ditto.
2702         * svg/SVGFEGaussianBlurElement.cpp: Ditto.
2703         (WebCore::SVGFEGaussianBlurElement::stdDeviationXIdentifier): Remove trailing whitespace.
2704         (WebCore::SVGFEGaussianBlurElement::stdDeviationYIdentifier): Ditto.
2705         * svg/SVGFEGaussianBlurElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
2706         * svg/SVGFELightElement.h: Ditto.
2707         * svg/SVGFEMorphologyElement.cpp:
2708         (WebCore::SVGFEMorphologyElement::radiusXIdentifier): Added, replacing char[] hack by a static atomic string.
2709         (WebCore::SVGFEMorphologyElement::radiusYIdentifier): Ditto.
2710         * svg/SVGFEMorphologyElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
2711         * svg/SVGFEOffsetElement.h: Ditto.
2712         * svg/SVGFESpecularLightingElement.cpp:
2713         (WebCore::SVGFESpecularLightingElement::kernelUnitLengthXIdentifier): Remove trailing whitespace.
2714         (WebCore::SVGFESpecularLightingElement::kernelUnitLengthYIdentifier): Ditto.
2715         * svg/SVGFESpecularLightingElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
2716         * svg/SVGFETurbulenceElement.cpp:
2717         (WebCore::SVGFETurbulenceElement::baseFrequencyXIdentifier): Remove trailing whitespace.
2718         (WebCore::SVGFETurbulenceElement::baseFrequencyYIdentifier): Ditto.
2719         * svg/SVGFETurbulenceElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
2720         * svg/SVGFilterElement.cpp:
2721         (WebCore::SVGFilterElement::filterResXIdentifier): Remove trailing whitespace.
2722         (WebCore::SVGFilterElement::filterResYIdentifier): Ditto.
2723         * svg/SVGLengthList.idl: Remove leftover [SVGListProperty] marker.
2724         * svg/SVGMarkerElement.cpp:
2725         (WebCore::SVGMarkerElement::orientTypeIdentifier): Remove trailing whitespace.
2726         (WebCore::SVGMarkerElement::orientAngleIdentifier): Ditto.
2727         * svg/SVGNumber.idl: Remove [PODType] marker, add StrictTypeChecking.
2728         * svg/SVGNumberList.cpp: Convert from SVGPODList<RefPtr<SVGPODListItem<float> > > to plain Vector<float>, just like it has been done for SVGLengthList before.
2729         (WebCore::SVGNumberList::parse):
2730         (WebCore::SVGNumberList::valueAsString):
2731         * svg/SVGNumberList.h:
2732         (WebCore::SVGNumberList::SVGNumberList):
2733         * svg/SVGPathElement.h: Switch animated float properties to the new SVGAnimatedNumber(List).
2734         * svg/SVGStopElement.h: Ditto.
2735         * svg/SVGTextPositioningElement.cpp: Switch animated float properties to the new SVGAnimatedNumber(List).
2736         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
2737         (WebCore::SVGTextPositioningElement::parseMappedAttribute):
2738         * svg/SVGTextPositioningElement.h: Ditto.
2739         * svg/properties/SVGPropertyTraits.h: Add SVGNumberList handling.
2740
2741 2010-10-29  Daniel Bates  <dbates@rim.com>
2742
2743         No review, rolling out 70971.
2744         http://trac.webkit.org/changeset/70971
2745         https://bugs.webkit.org/show_bug.cgi?id=6751
2746
2747         Rolling out changeset 70971 <http://trac.webkit.org/changeset/70971> since
2748         it caused layout test failures on all bots. In particular, the
2749         child count in a generated frame name differs after this patch. We need
2750         to look into this further.
2751
2752         Test: fast/frames/iframe-set-inner-html.html
2753
2754         * html/HTMLFrameElementBase.cpp:
2755         (WebCore::HTMLFrameElementBase::openURL):
2756         (WebCore::HTMLFrameElementBase::setName):
2757         * html/HTMLFrameElementBase.h:
2758         * loader/DocumentLoader.cpp:
2759         (WebCore::DocumentLoader::mainResource):
2760         * loader/FrameLoader.cpp:
2761         (WebCore::FrameLoader::loadURLIntoChildFrame):
2762         (WebCore::FrameLoader::commitProvisionalLoad):
2763         * loader/HistoryController.cpp:
2764         (WebCore::HistoryController::saveDocumentState):
2765         (WebCore::HistoryController::restoreDocumentState):
2766         (WebCore::HistoryController::createItem):
2767         (WebCore::HistoryController::currentFramesMatchItem):
2768         * loader/ProgressTracker.cpp:
2769         (WebCore::ProgressTracker::progressStarted):
2770         (WebCore::ProgressTracker::progressCompleted):
2771         * loader/archive/cf/LegacyWebArchive.cpp:
2772         (WebCore::LegacyWebArchive::create):
2773         * page/FrameTree.cpp:
2774         (WebCore::FrameTree::setName):
2775         (WebCore::FrameTree::clearName):
2776         (WebCore::FrameTree::uniqueChildName):
2777         (WebCore::FrameTree::child):
2778         (WebCore::FrameTree::find):
2779         * page/FrameTree.h:
2780         (WebCore::FrameTree::name):
2781
2782 2010-10-28  Antonio Gomes  <agomes@rim.com>
2783
2784         Reviewed by Ojan Vafai.
2785
2786         Needs a "LinuxEditingBehavior", perhaps with a better name
2787         https://bugs.webkit.org/show_bug.cgi?id=36627
2788
2789         Added EditingUnixBehavior editing type aim to cover the cases when
2790         neither Mac or Windows behaviors are appropriated.
2791
2792         It was decided to name it Unix not Linux.
2793
2794         No new tests. The current editing tests that involve platform specific
2795         bahaviors are coded so that they go through all editing behavior
2796         types possible. There will be a follow up bug where all of them will
2797         be updated to include the new editing behavior ("unix").
2798
2799         * editing/EditingBehaviorTypes.h:
2800         * page/Settings.cpp:
2801         (WebCore::editingBehaviorTypeForPlatform):
2802         (WebCore::Settings::Settings):
2803
2804 2010-10-29  Daniel Bates  <dbates@rim.com>
2805
2806         Reviewed by Adam Barth.
2807
2808         For unnamed frames, window.name returns a generated name
2809         https://bugs.webkit.org/show_bug.cgi?id=6751
2810
2811         Fixes an issue where the window.name of an unnamed frame returns
2812         a unique generated name that is used internally to identify the
2813         frame. Instead, we should return an empty string as implied by
2814         section 5.1.6 of the HTML5 spec. (http://www.w3.org/TR/html5/browsers.html#browsing-context-names).
2815         This section describes that a browsing context can have no name or be
2816         the empty string.
2817
2818         * html/HTMLFrameElementBase.cpp:
2819         (WebCore::HTMLFrameElementBase::openURL): Removed ASSERT for empty
2820         frame name since this is valid as per the HTML5 spec.
2821         (WebCore::HTMLFrameElementBase::setName): Removed the call to FrameTree::uniqueChildName()
2822         since the loader code no longer depends on the frame name being unique.
2823         * html/HTMLFrameElementBase.h:
2824         * loader/DocumentLoader.cpp:
2825         (WebCore::DocumentLoader::mainResource): Use FrameTree::uniqueName().
2826         * loader/FrameLoader.cpp:
2827         (WebCore::FrameLoader::loadURLIntoChildFrame): Ditto.
2828         (WebCore::FrameLoader::commitProvisionalLoad): Ditto.
2829         * loader/HistoryController.cpp:
2830         (WebCore::HistoryController::saveDocumentState): Ditto.
2831         (WebCore::HistoryController::restoreDocumentState): Ditto.
2832         (WebCore::HistoryController::createItem):
2833         (WebCore::HistoryController::currentFramesMatchItem): Ditto.
2834         * loader/ProgressTracker.cpp:
2835         (WebCore::ProgressTracker::progressStarted): Ditto.
2836         (WebCore::ProgressTracker::progressCompleted): Ditto.
2837         * loader/archive/cf/LegacyWebArchive.cpp:
2838         (WebCore::LegacyWebArchive::create): Ditto.
2839         * page/FrameTree.cpp:
2840         (WebCore::FrameTree::setName): Modified to store the DOM-specified
2841         name of the frame.
2842         (WebCore::FrameTree::clearName):
2843         (WebCore::FrameTree::uniqueChildName): Use FrameTree::uniqueName().
2844         (WebCore::FrameTree::child): Ditto.
2845         (WebCore::FrameTree::find): Ditto.
2846         * page/FrameTree.h:
2847         (WebCore::FrameTree::uniqueName): Added.
2848
2849 2010-10-29  Darin Adler  <darin@apple.com>
2850
2851         Try to fix build.
2852
2853         * page/ContextMenuController.cpp: Added include of BackForwardController.h.
2854         * page/DOMWindow.cpp: Ditto.
2855         * page/History.cpp: Ditto.
2856         * platform/ContextMenu.cpp: Ditto.
2857
2858 2010-10-29  Darin Adler  <darin@apple.com>
2859
2860         Reviewed by Sam Weinig.
2861
2862         More back/forward refactoring
2863
2864         * WebCore.exp.in: Updated.
2865
2866         * GNUmakefile.am: Removed BackForwardControllerClient.h.
2867         * WebCore.gypi: Ditto.
2868         * WebCore.pro: Ditto.
2869         * WebCore.vcproj/WebCore.vcproj: Ditto.
2870         * WebCore.xcodeproj/project.pbxproj: Ditto.
2871
2872         * history/BackForwardControllerClient.h: Removed.
2873
2874         * history/BackForwardController.cpp:
2875         (WebCore::BackForwardController::BackForwardController):
2876         Set up just m_client.
2877         (WebCore::BackForwardController::~BackForwardController):
2878         Removed call to backForwardControllerDestroyed.
2879         (WebCore::BackForwardController::canGoBackOrForward): Added.
2880         (WebCore::BackForwardController::goBackOrForward): Added.
2881         (WebCore::BackForwardController::goBack): Added.
2882         (WebCore::BackForwardController::goForward): Added.
2883         (WebCore::BackForwardController::addItem): Added.
2884         (WebCore::BackForwardController::setCurrentItem): Added.
2885         (WebCore::BackForwardController::count): Added.
2886         (WebCore::BackForwardController::backCount): Added.
2887         (WebCore::BackForwardController::forwardCount): Added.
2888         (WebCore::BackForwardController::itemAtIndex): Added.
2889         (WebCore::BackForwardController::isActive): Added.
2890         (WebCore::BackForwardController::close): Added.
2891
2892         * history/BackForwardController.h: Added functions from Page
2893         and BackForwardList that should be called here instead.
2894         Note that BackForwardList is to be renamed BackForwardClient soon.
2895
2896         * history/BackForwardList.h: Removed many now-unneeded
2897         virtual functions.
2898
2899         * history/BackForwardListImpl.h: Moved BackForwardListClient
2900         in here.
2901
2902         * history/PageCache.cpp:
2903         (WebCore::logCanCachePageDecision): Use backForward().
2904         (WebCore::PageCache::canCache): Ditto.
2905
2906         * loader/FrameLoader.cpp:
2907         (WebCore::FrameLoader::transitionToCommitted): Removed unneeded
2908         null check of backFowardList, which is never null.
2909         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Use backForward.
2910         (WebCore::FrameLoader::didFirstLayout): Ditto.
2911         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Ditto.
2912         (WebCore::FrameLoader::checkDidPerformFirstNavigation): Ditto.
2913         * loader/HistoryController.cpp:
2914         (WebCore::HistoryController::goToItem): Ditto.
2915         (WebCore::HistoryController::updateForStandardLoad): Ditto.
2916         (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList): Ditto.
2917         (WebCore::HistoryController::updateBackForwardListClippedAtTarget): Ditto.
2918         (WebCore::HistoryController::pushState): Ditto.
2919         * loader/NavigationScheduler.cpp:
2920         (WebCore::ScheduledHistoryNavigation::fire): Ditto.
2921         (WebCore::NavigationScheduler::scheduleHistoryNavigation): Ditto.
2922         * page/ContextMenuController.cpp:
2923         (WebCore::ContextMenuController::contextMenuItemSelected): Ditto.
2924         * page/DOMWindow.cpp:
2925         (WebCore::DOMWindow::close): Ditto.
2926         * page/History.cpp:
2927         (WebCore::History::length): Ditto.
2928
2929         * page/Page.cpp:
2930         (WebCore::Page::Page): Use more adoptPtr. Use backForwardClient instead of
2931         backForwardControllerClient.
2932         (WebCore::Page::~Page): Use backForward.
2933         (WebCore::Page::backForwardList): Ditto.
2934         (WebCore::Page::goBack): Ditto.
2935         (WebCore::Page::goForward): Ditto.
2936         (WebCore::Page::canGoBackOrForward): Ditto.
2937         (WebCore::Page::goBackOrForward): Ditto.
2938         (WebCore::Page::getHistoryLength): Ditto.
2939         (WebCore::Page::PageClients::PageClients): Made non-inline.
2940         (WebCore::Page::PageClients::~PageClients): Ditto.
2941
2942         * page/Page.h: Made PageClients constructor and destructor non-inline.
2943         Added backForward function. Marked old functions as deprecated.
2944
2945         * page/Settings.cpp:
2946         (WebCore::Settings::setUsesPageCache): Use backForward.
2947         * platform/ContextMenu.cpp:
2948         (WebCore::ContextMenu::populate): Ditto.
2949         (WebCore::ContextMenu::checkOrEnableIfNeeded): Ditto.
2950         * wml/WMLDoElement.cpp:
2951         (WebCore::WMLDoElement::defaultEventHandler): Ditto.
2952         * wml/WMLDocument.cpp:
2953         (WebCore::WMLDocument::finishedParsing): Ditto.
2954         * wml/WMLPageState.cpp:
2955         (WebCore::WMLPageState::reset): Ditto.
2956         (WebCore::tryAccessHistoryURLs): Ditto.
2957         * wml/WMLPrevElement.cpp:
2958         (WebCore::WMLPrevElement::executeTask): Ditto.
2959
2960 2010-10-29  David Hyatt  <hyatt@apple.com>
2961
2962         Reviewed by Sam Weinig.
2963
2964         https://bugs.webkit.org/show_bug.cgi?id=48663
2965
2966         Make repaint invalidation work with vertical lines.  Rewrite linesBoundingBox for RenderText and
2967         RenderInline to give the correct rectangle back for vertical lines.  Also patch linesVisibleOverflowBoundingBox
2968         to give back the correct rectangle for vertical lines.
2969         
2970         Fix bugs in the overflow accessors of InlineFlowBox when m_overflow was 0.
2971
2972         Added fast/repaint/inline-vertical-lr-overflow.html
2973
2974         * rendering/InlineBox.cpp:
2975         (WebCore::InlineBox::adjustForFlippedBlocksWritingMode):
2976         * rendering/InlineFlowBox.h:
2977         (WebCore::InlineFlowBox::logicalLeftVisibleOverflow):
2978         (WebCore::InlineFlowBox::logicalRightVisibleOverflow):
2979         (WebCore::InlineFlowBox::bottomLayoutOverflow):
2980         (WebCore::InlineFlowBox::rightLayoutOverflow):
2981         (WebCore::InlineFlowBox::bottomVisualOverflow):
2982         (WebCore::InlineFlowBox::rightVisualOverflow):
2983         * rendering/RenderBox.cpp:
2984         (WebCore::RenderBox::adjustForFlippedBlocksWritingMode):
2985         * rendering/RenderBox.h:
2986         * rendering/RenderInline.cpp:
2987         (WebCore::RenderInline::linesBoundingBox):
2988         (WebCore::RenderInline::linesVisibleOverflowBoundingBox):
2989         (WebCore::RenderInline::clippedOverflowRectForRepaint):
2990         * rendering/RenderText.cpp:
2991         (WebCore::RenderText::linesBoundingBox):
2992
2993 2010-10-29  Mike Lawther  <mikelawther@chromium.org>
2994
2995         Reviewed by James Robinson.
2996
2997         Fix canvas/philip/tests/2d.imageData.get.source.negative
2998         https://bugs.webkit.org/show_bug.cgi?id=48277
2999
3000         Handle negative width/height.
3001         See http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#pixel-manipulation
3002
3003         * html/canvas/CanvasRenderingContext2D.cpp:
3004         (WebCore::CanvasRenderingContext2D::getImageData):
3005
3006 2010-10-29  Kavita Kanetkar  <kkanetkar@chromium.org>
3007
3008         Reviewed by Pavel Feldman.
3009
3010         Web Inspector: FileSystem integration
3011         https://bugs.webkit.org/show_bug.cgi?id=45982
3012
3013         Adding filesystem support for Inspector under storage tab. This fetches root paths for
3014         temporary and persistent filesystems and allows "reveal folder in OS" option that
3015         launches native file browser. Currently this feature is disabled for non-chromium platforms.
3016
3017         * CMakeLists.txt:
3018         * English.lproj/localizedStrings.js:
3019         * GNUmakefile.am:
3020         * WebCore.gypi:
3021         * WebCore.pro:
3022         * WebCore.vcproj/WebCore.vcproj:
3023         * inspector/CodeGeneratorInspector.pm:
3024         * inspector/Inspector.idl:
3025         * inspector/InspectorController.cpp:
3026         (WebCore::InspectorController::connectFrontend):
3027         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
3028         * inspector/InspectorController.h:
3029         (WebCore::InspectorController::fileSystemAgent):
3030         * inspector/InspectorFileSystemAgent.cpp: Added.
3031         * inspector/InspectorFileSystemAgent.h: Added.
3032         * inspector/front-end/FileSystemView.js: Added.
3033         * inspector/front-end/Settings.js:
3034         * inspector/front-end/StoragePanel.js:
3035         (WebInspector.StoragePanel):
3036         (WebInspector.StoragePanel.prototype.reset):
3037         (WebInspector.StoragePanel.prototype.addFileSystem):
3038         (WebInspector.StoragePanel.prototype.showFileSystem):
3039         (WebInspector.StoragePanel.prototype.updateFileSystemPath):
3040         (WebInspector.StoragePanel.prototype.updateFileSystemError):
3041         (WebInspector.FileSystemTreeElement):
3042         (WebInspector.FileSystemTreeElement.prototype.onselect):
3043         * inspector/front-end/WebKit.qrc:
3044         * inspector/front-end/inspector.css:
3045         (.file-system-storage-tree-item .icon):
3046         * inspector/front-end/inspector.html:
3047         * inspector/front-end/inspector.js:
3048         (WebInspector.updateResource):
3049         (WebInspector._addFileSystemOrigin):
3050         (WebInspector.didGetFileSystemPath):
3051         (WebInspector.didGetFileSystemError):
3052         (WebInspector.reset):
3053         * platform/AsyncFileSystem.h:
3054         (WebCore::AsyncFileSystem::root):
3055         * platform/FileSystem.h:
3056         * platform/chromium/ChromiumBridge.h:
3057         * platform/chromium/FileSystemChromium.cpp:
3058         (WebCore::revealFolderInOS):
3059
3060 2010-10-29  Ryosuke Niwa  <rniwa@webkit.org>
3061
3062         Reviewed by Darin Adler.
3063
3064         Remove RenderTextControl::setSelectionRange
3065         https://bugs.webkit.org/show_bug.cgi?id=47870
3066
3067         Made RenderTextControl::setSelectionRange a global function.
3068         Removed setSelectionStart, setSelectionEnd, and select from RenderTextControl.
3069
3070         No new tests are added since there is no behavioral change.
3071
3072         * accessibility/AccessibilityRenderObject.cpp:
3073         (WebCore::AccessibilityRenderObject::setSelectedTextRange): Calls setSelectedTextRange.
3074         * dom/InputElement.cpp:
3075         (WebCore::InputElement::updateSelectionRange): Ditto.
3076         * html/HTMLFormControlElement.cpp:
3077         (WebCore::HTMLTextFormControlElement::setSelectionStart): Ditto.
3078         (WebCore::HTMLTextFormControlElement::setSelectionEnd): Ditto.
3079         (WebCore::HTMLTextFormControlElement::select): Ditto.
3080         (WebCore::HTMLTextFormControlElement::setSelectionRange): Ditto.
3081         * rendering/RenderTextControl.cpp:
3082         (WebCore::RenderTextControl::hasVisibleTextArea): Added.
3083         (WebCore::setSelectionRange): See above.
3084         * rendering/RenderTextControl.h:
3085
3086 2010-10-29  Carlos Garcia Campos  <cgarcia@igalia.com>
3087
3088         Reviewed by Andreas Kling.
3089
3090         [GTK] Crash in TextEncoding.cpp when using glib unicode
3091         https://bugs.webkit.org/show_bug.cgi?id=48521
3092
3093         When the conversion to UTF-8 fails, try to encode the original string
3094         without normalizing. Fixes tests cases:
3095          fast/url/anchor.html
3096          fast/url/query.html
3097          fast/url/standard-url.html
3098
3099         * platform/text/TextEncoding.cpp:
3100         (WebCore::TextEncoding::encode):
3101
3102 2010-10-29  Benjamin Poulain  <benjamin.poulain@nokia.com>
3103
3104         Reviewed by Antonio Gomes.
3105
3106         TextureMapperGL get the driver info log but do not use it
3107         https://bugs.webkit.org/show_bug.cgi?id=48247
3108
3109         Remove the call to glGetProgramInfoLog().
3110
3111         * platform/graphics/opengl/TextureMapperGL.cpp:
3112         (WebCore::TexmapShaderInfo::createShaderProgram):
3113
3114 2010-10-29  Benjamin Kalman  <kalman@google.com>
3115
3116         Reviewed by Tony Chang.
3117
3118         Deleting contenteditable text to the left of a non-contenteditable span inserts unnecessary placeholder <br/>
3119         https://bugs.webkit.org/show_bug.cgi?id=48658
3120
3121         * WebCore.exp.in: Update is{Start,End}OfParagraph symbols.
3122         * editing/DeleteSelectionCommand.cpp:
3123         (WebCore::DeleteSelectionCommand::doApply): Cross editability boundaries when determining whether to insert placeholder.
3124         * editing/visible_units.cpp: Allow editability boundary to be crossed in {start,end,isStart,isEnd}OfParagraph.
3125         (WebCore::startOfParagraph): Also, avoid returning a position where renderer can't accept caret, like in endOfParagraph.
3126         (WebCore::endOfParagraph):
3127         (WebCore::isStartOfParagraph):
3128         (WebCore::isEndOfParagraph):
3129         * editing/visible_units.h: Ditto.
3130
3131 2010-10-29  Pavel Feldman  <pfeldman@chromium.org>
3132
3133         Reviewed by Timothy Hatcher.
3134
3135         Web Inspector: last active panel is not restored upon opening inspector.
3136         https://bugs.webkit.org/show_bug.cgi?id=48668
3137
3138         * inspector/Inspector.idl:
3139         * inspector/InspectorController.cpp:
3140         (WebCore::InspectorController::InspectorController):
3141         (WebCore::InspectorController::inspect):
3142         (WebCore::InspectorController::showPanel):
3143         (WebCore::InspectorController::disconnectFrontend):
3144         (WebCore::InspectorController::populateScriptObjects):
3145         * inspector/InspectorController.h:
3146         * inspector/InspectorState.cpp:
3147         (WebCore::InspectorState::InspectorState):
3148         * inspector/front-end/Settings.js:
3149         (WebInspector.Settings):
3150         * inspector/front-end/inspector.js:
3151         (WebInspector.set currentPanel):
3152         (WebInspector.doLoadedDone.onPopulateScriptObjects):
3153         (WebInspector.doLoadedDone):
3154         (WebInspector.documentClick.followLink):
3155         (WebInspector.documentClick):
3156
3157 2010-10-28  Michael Nordman  <michaeln@google.com>
3158
3159         Reviewed by ap.
3160
3161         [Chrome] Fix an appcache regression introduced in r69226
3162         https://bugs.webkit.org/show_bug.cgi?id=48592
3163         Define a new ApplicationCacheHost method for the specific case of main resource redirect handling.
3164
3165         Tests: the existing layout test applies
3166
3167         * loader/MainResourceLoader.cpp: use the newly introduced method
3168         (WebCore::MainResourceLoader::willSendRequest):
3169         * loader/appcache/ApplicationCacheHost.cpp:
3170         (WebCore::ApplicationCacheHost::maybeLoadMainResourceForRedirect):
3171         * loader/appcache/ApplicationCacheHost.h:
3172
3173 2010-10-29  Eric Carlson  <eric.carlson@apple.com>
3174
3175         Reviewed by Adam Roben.
3176
3177         Navigating to a .wav file creates a plugin document but should create a media document
3178         https://bugs.webkit.org/show_bug.cgi?id=48546
3179         <rdar://problem/8606105>
3180
3181         Test: media/media-can-play-wav-audio.html
3182
3183         * platform/MIMETypeRegistry.cpp: Add mapping from ".wav" to "audio/x-wav".
3184
3185 2010-10-29  Aaron Colwell  <acolwell@chromium.org>
3186
3187         Reviewed by James Robinson.
3188
3189         Created helper method WebCore::PlatformContextSkia::getNormalizedAlpha()
3190         to centralize alpha rounding & clipping logic. 
3191         https://bugs.webkit.org/show_bug.cgi?id=48094
3192
3193         Test: media/video-canvas-alpha.html
3194
3195         * platform/graphics/skia/ImageSkia.cpp:
3196         (WebCore::paintSkBitmap):
3197         * platform/graphics/skia/PlatformContextSkia.cpp:
3198         (WebCore::PlatformContextSkia::getNormalizedAlpha):
3199         * platform/graphics/skia/PlatformContextSkia.h:
3200
3201 2010-10-29  Nikolas Zimmermann  <nzimmermann@rim.com>
3202
3203         Reviewed by Dirk Schulze.
3204
3205         ASSERT when SVGAnimatedProperty instance is assigned to multiple elements.
3206         https://bugs.webkit.org/show_bug.cgi?id=48555
3207
3208         Test: svg/custom/insertItemBefore-from-non-list-origin.svg
3209
3210         * bindings/scripts/CodeGeneratorJS.pm: Include SVGAnimatedPropertyTearOff.h instead of SVGPropertyTearOff.h
3211         * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
3212         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
3213         * svg/properties/SVGAnimatedListPropertyTearOff.h:
3214         (WebCore::SVGAnimatedListPropertyTearOff::isAnimatedListTearOff): Return true.
3215         (WebCore::SVGAnimatedListPropertyTearOff::removeItemFromList): Devirtualize function.
3216         * svg/properties/SVGAnimatedProperty.h:
3217         (WebCore::SVGAnimatedProperty::isAnimatedListTearOff): Return false.
3218         * svg/properties/SVGListPropertyTearOff.h:
3219         (WebCore::SVGListPropertyTearOff::removeItemFromListIfNeeded): Only try to remove the passed item from its list, if its actually a list and not just a SVGAnimatedProperty.
3220
3221 2010-10-29  David Hyatt  <hyatt@apple.com>
3222
3223         Reviewed by Adam Roben.
3224
3225         https://bugs.webkit.org/show_bug.cgi?id=48444
3226
3227         Fix the dirty rect checks in RenderBoxLineList, InlineFlowBox, InlineTextBox.  They were still assuming horizontal-tb writing-mode.
3228         This patch makes the checks directionally abstract and also refactors the checks in RenderLineBoxList to share code. 
3229
3230         No tests yet, since the invalidation code for inlines still assumes horizontal-tb.  That will be fixed in a follow-up bug,
3231         and then repaint tests will be easy to write.
3232
3233         * rendering/InlineBox.cpp:
3234         (WebCore::InlineBox::adjustForFlippedBlocksWritingMode):
3235         * rendering/InlineBox.h:
3236         * rendering/InlineFlowBox.cpp:
3237         (WebCore::InlineFlowBox::paint):
3238         * rendering/InlineTextBox.cpp:
3239         (WebCore::InlineTextBox::paint):
3240         * rendering/RenderBox.cpp:
3241         (WebCore::RenderBox::convertFromFlippedWritingMode):
3242         * rendering/RenderBox.h:
3243         * rendering/RenderLineBoxList.cpp:
3244         (WebCore::RenderLineBoxList::rangeIntersectsDirtyRect):
3245         (WebCore::RenderLineBoxList::anyLineIntersectsDirtyRect):
3246         (WebCore::RenderLineBoxList::lineIntersectsDirtyRect):
3247         (WebCore::RenderLineBoxList::paint):
3248         (WebCore::RenderLineBoxList::hitTest):
3249         * rendering/RenderLineBoxList.h:
3250
3251 2010-10-29  Patrick Gansterer  <paroga@webkit.org>
3252
3253         Reviewed by Adam Roben.
3254
3255         Cleanup createGlobalImageFileDescriptor in ClipboardWin
3256         https://bugs.webkit.org/show_bug.cgi?id=48189
3257
3258         * platform/win/ClipboardWin.cpp:
3259         (WebCore::createGlobalURLContent):
3260         (WebCore::createGlobalUrlFileDescriptor):
3261         (WebCore::ClipboardWin::writeURL):
3262
3263 2010-10-29  Dmitry Titov  <dimich@chromium.org>
3264
3265         [Chromium clang] Unreviewed fix removing compiler warning.
3266         If GIFImageReader is a struct, don't call it a class.
3267
3268         * platform/image-decoders/gif/GIFImageDecoder.h:
3269
3270 2010-10-29  Alexey Proskuryakov  <ap@apple.com>
3271
3272         Fix the world (d'oh!)
3273
3274         https://bugs.webkit.org/show_bug.cgi?id=48576
3275         Let WebKit2 client know when a frame is a frameset
3276
3277         * html/HTMLFrameSetElement.cpp:
3278         (WebCore::HTMLFrameSetElement::insertedIntoDocument):
3279         (WebCore::HTMLFrameSetElement::removedFromDocument):
3280         Call base class version.
3281
3282 2010-10-29  Jian Li  <jianli@chromium.org>
3283
3284         Unreviewed. Fix chromium build break.
3285
3286         * bindings/v8/custom/V8FileReaderCustom.cpp:
3287         (WebCore::V8FileReader::resultAccessorGetter):
3288
3289 2010-10-29  Jian Li  <jianli@chromium.org>
3290
3291         Reviewed by David Levin.
3292
3293         Support readAsArrayBuffer in FileReader and FileReaderSync
3294         https://bugs.webkit.org/show_bug.cgi?id=47691
3295
3296         Merge the similar code in FileReader and FileReaderSync into
3297         FileReaderLoader.
3298
3299         Test cases have been added to read-file-test-cases.js.
3300
3301         * Android.jscbindings.mk:
3302         * CMakeLists.txt:
3303         * GNUmakefile.am:
3304         * WebCore.gypi:
3305         * WebCore.pro:
3306         * WebCore.vcproj/WebCore.vcproj:
3307         * WebCore.xcodeproj/project.pbxproj:
3308         * bindings/v8/custom/V8FileReaderCustom.cpp: Added.
3309         * fileapi/FileReader.cpp:
3310         (WebCore::FileReader::FileReader):
3311         (WebCore::FileReader::readAsArrayBuffer):
3312         (WebCore::FileReader::readAsBinaryString):
3313         (WebCore::FileReader::readAsText):
3314         (WebCore::FileReader::readAsDataURL):
3315         (WebCore::FileReader::readInternal):
3316         (WebCore::FileReader::doAbort):
3317         (WebCore::FileReader::terminate):
3318         (WebCore::FileReader::start):
3319         (WebCore::FileReader::didStartLoading):
3320         (WebCore::FileReader::didReceiveData):
3321         (WebCore::FileReader::didFinishLoading):
3322         (WebCore::FileReader::didFail):
3323         (WebCore::FileReader::fireEvent):
3324         (WebCore::FileReader::arrayBufferResult):
3325         (WebCore::FileReader::stringResult):
3326         * fileapi/FileReader.h:
3327         (WebCore::FileReader::readType):
3328         * fileapi/FileReader.idl:
3329         * fileapi/FileReaderLoader.cpp: Added.
3330         * fileapi/FileReaderLoader.h: Added.
3331         * fileapi/FileReaderLoaderClient.h: Added.
3332         * fileapi/FileReaderSync.cpp:
3333         (WebCore::FileReaderSync::FileReaderSync):
3334         (WebCore::FileReaderSync::readAsArrayBuffer):
3335         (WebCore::FileReaderSync::readAsBinaryString):
3336         (WebCore::FileReaderSync::readAsText):
3337         (WebCore::FileReaderSync::readAsDataURL):
3338         (WebCore::FileReaderSync::startLoading):
3339         * fileapi/FileReaderSync.h:
3340         * fileapi/FileReaderSync.idl:
3341         * html/canvas/ArrayBuffer.cpp:
3342         (WebCore::ArrayBuffer::create):
3343         * html/canvas/ArrayBuffer.h:
3344         * loader/ThreadableLoaderClient.h:
3345
3346 2010-10-29  Tony Chang  <tony@chromium.org>
3347
3348         Unreviewed, rolling out r70850.
3349         http://trac.webkit.org/changeset/70850
3350         https://bugs.webkit.org/show_bug.cgi?id=45640
3351
3352         chromium and qt pixel test regressions
3353
3354         * dom/Document.cpp:
3355         * dom/Document.h:
3356         * page/FrameView.cpp:
3357         (WebCore::FrameView::invalidateRect):
3358         (WebCore::FrameView::repaintContentRectangle):
3359         (WebCore::FrameView::doDeferredRepaints):
3360         * page/FrameView.h:
3361         * rendering/RenderBlock.cpp:
3362         (WebCore::RenderBlock::paintContents):
3363         * rendering/RenderLayer.cpp:
3364         (WebCore::RenderLayer::paintLayer):
3365
3366 2010-10-29  Alexey Proskuryakov  <ap@apple.com>
3367
3368         Reviewed by Darin Adler.
3369
3370         https://bugs.webkit.org/show_bug.cgi?id=48576
3371         Let WebKit2 client know when a frame is a frameset
3372
3373         This can change in two cases, when document changes, and when frame is navigated to another
3374         document.
3375
3376         * dom/Document.cpp: (WebCore::Document::documentDidBecomeActive): Update the client when
3377         a document is restored from page cache.
3378
3379         * loader/FrameLoaderClient.h: Added a new client call to notify client.
3380
3381         * html/HTMLFrameSetElement.h:
3382         * html/HTMLFrameSetElement.cpp:
3383         (WebCore::HTMLFrameSetElement::insertedIntoDocument):
3384         (WebCore::HTMLFrameSetElement::removedFromDocument):
3385         Update the client when document changes, potentially becoming a frameset. Per WebCore
3386         definition, a document is a frameset when it has a FRAMESET element as direct child of
3387         document element (it may also have body elements).
3388
3389         * loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::dispatchDidBecomeFrameset):
3390         Added an empty implementation.
3391
3392 2010-10-29  Csaba Osztrogonác  <ossy@webkit.org>
3393
3394         Unreviewed fix. Touch WebCorePrefix.h to fix incremental build failure after r70878.
3395
3396         * WebCorePrefix.h:
3397
3398 2010-10-29  Carlos Garcia Campos  <cgarcia@igalia.com>
3399
3400         Reviewed by Martin Robinson.
3401
3402         [GTK] Handle surrogate pairs in TextBreakIteratorGtk
3403         https://bugs.webkit.org/show_bug.cgi?id=48227
3404
3405         TextBreakIteratorGtk uses UTF-8 because it's what pango expects, but we
3406         need to return indices for the given input string that are in UTF-16.
3407         The number of characters is the same for both UTF-16 and UTF-8 except when
3408         the input string contains surrogate pairs. We need to keep both, the
3409         index for the UTF-8 string to be used internally, and the index for the
3410         UTF-16 string to be used as return value of the iterator interface. It
3411         fixes test fast/forms/textarea-maxlength.html
3412
3413         * platform/text/gtk/TextBreakIteratorGtk.cpp:
3414         (WebCore::CharacterIterator::getText):
3415         (WebCore::CharacterIterator::getLength):
3416         (WebCore::CharacterIterator::getSize):
3417         (WebCore::CharacterIterator::getIndex):
3418         (WebCore::CharacterIterator::getUTF16Index):
3419         (WebCore::CharacterIterator::getUTF16Length):
3420         (WebCore::CharacterIterator::characterSize):
3421         (WebCore::CharacterIterator::setText):
3422         (WebCore::CharacterIterator::setIndex):
3423         (WebCore::CharacterIterator::setUTF16Index):
3424         (WebCore::CharacterIterator::first):
3425         (WebCore::CharacterIterator::last):
3426         (WebCore::CharacterIterator::next):
3427         (WebCore::CharacterIterator::previous):
3428         (WebCore::setUpIterator):
3429         (WebCore::textBreakFirst):
3430         (WebCore::textBreakLast):
3431         (WebCore::textBreakNext):
3432         (WebCore::textBreakPrevious):
3433         (WebCore::textBreakPreceding):
3434         (WebCore::textBreakFollowing):
3435         (WebCore::textBreakCurrent):
3436         (WebCore::isTextBreak):
3437
3438 2010-10-29  Alexander Pavlov  <apavlov@chromium.org>
3439
3440         Reviewed by Pavel Feldman.
3441
3442         Web Inspector: [REGRESSION] Addition of a new (blank) style property does not work
3443         https://bugs.webkit.org/show_bug.cgi?id=48631
3444
3445         Test: inspector/styles-add-blank-property.html
3446
3447         * inspector/front-end/StylesSidebarPane.js:
3448         (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty):
3449         (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate):
3450
3451 2010-10-29  Pavel Feldman  <pfeldman@chromium.org>
3452
3453         Reviewed by Timothy Hatcher.
3454
3455         Web Inspector: add close button to network view, make tests pass for
3456         resource manager on all ports.
3457         https://bugs.webkit.org/show_bug.cgi?id=48628
3458
3459         * inspector/InspectorController.cpp:
3460         (WebCore::InspectorController::didCommitLoad):
3461         (WebCore::InspectorController::frameDetachedFromParent):
3462         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
3463         (WebCore::InspectorController::identifierForInitialRequest):
3464         (WebCore::InspectorController::willSendRequest):
3465         (WebCore::InspectorController::markResourceAsCached):
3466         (WebCore::InspectorController::didReceiveResponse):
3467         (WebCore::InspectorController::didReceiveContentLength):
3468         (WebCore::InspectorController::didFinishLoading):
3469         (WebCore::InspectorController::didFailLoading):
3470         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
3471         (WebCore::InspectorController::scriptImported):
3472         (WebCore::InspectorController::didCreateWebSocket):
3473         (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
3474         (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
3475         (WebCore::InspectorController::didCloseWebSocket):
3476         * inspector/front-end/NetworkPanel.js:
3477         (WebInspector.NetworkPanel):
3478         * inspector/front-end/ResourceManager.js:
3479         (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
3480         * inspector/front-end/StoragePanel.js:
3481         (WebInspector.StoragePanel.prototype.addResourceToFrame):
3482         * inspector/front-end/inspector.js:
3483         (WebInspector._createPanels):
3484         * inspector/front-end/networkPanel.css:
3485         (.network-close-button):
3486
3487 2010-10-29  Nikolas Zimmermann  <nzimmermann@rim.com>
3488
3489         Reviewed by Dirk Schulze.
3490
3491         Convert SVGAnimatedEnumeration/Integer to the new SVGAnimatedPropertyTearOff concept
3492         https://bugs.webkit.org/show_bug.cgi?id=48623
3493
3494         Besides converting SVGAnimatedEnumeration/Integer to the new animated property tear off concept, fix support
3495         for multiple wrappers within the new concept, which was broken - covered by existing svg/dynamic-updates/ tests.
3496
3497         Replace all 'extern char[]' usage when using the multiple wrappers macro, by static AtomicStrings.
3498
3499         * GNUmakefile.am: Add SVGAnimatedEnumeration.h / SVGAnimatedInteger.h to build.
3500         * WebCore.gypi: Ditto.
3501         * WebCore.pro: Ditto.
3502         * WebCore.vcproj/WebCore.vcproj: Ditto.
3503         * WebCore.xcodeproj/project.pbxproj: Ditto.
3504         * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedEnumeration / SVGAnimatedInteger as animated types using the new concept.
3505         * bindings/scripts/CodeGeneratorObjC.pm: Touched, to force regenerating ObjC bindings, dependency tracking is obviously broken.
3506         * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedBoolean/Enumeration/Integer handling.
3507         * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
3508         * svg/SVGAnimatedEnumeration.h: Added.
3509         * svg/SVGAnimatedEnumeration.idl:
3510         * svg/SVGAnimatedInteger.h: Added.
3511         * svg/SVGClipPathElement.h: Adapted all code to create new style animated property tear offs for long & int types.
3512         * svg/SVGComponentTransferFunctionElement.h:
3513         * svg/SVGFEBlendElement.h:
3514         * svg/SVGFEColorMatrixElement.h:
3515         * svg/SVGFECompositeElement.h:
3516         * svg/SVGFEConvolveMatrixElement.h:
3517         * svg/SVGFEDiffuseLightingElement.cpp:
3518         (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthXIdentifier): Replaced extern[] char hack using a static AtomicString.
3519         (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthYIdentifier): Ditto.
3520         * svg/SVGFEDiffuseLightingElement.h:
3521         * svg/SVGFEDisplacementMapElement.h:
3522         * svg/SVGFEGaussianBlurElement.cpp:
3523         (WebCore::SVGFEGaussianBlurElement::stdDeviationXIdentifier): Ditto.
3524         (WebCore::SVGFEGaussianBlurElement::stdDeviationYIdentifier): Ditto.
3525         * svg/SVGFEGaussianBlurElement.h:
3526         * svg/SVGFEMorphologyElement.h:
3527         * svg/SVGFESpecularLightingElement.cpp:
3528         (WebCore::SVGFESpecularLightingElement::kernelUnitLengthXIdentifier): Ditto.
3529         (WebCore::SVGFESpecularLightingElement::kernelUnitLengthYIdentifier): Ditto.
3530         * svg/SVGFESpecularLightingElement.h:
3531         * svg/SVGFETurbulenceElement.cpp:
3532         (WebCore::SVGFETurbulenceElement::baseFrequencyXIdentifier): Ditto.
3533         (WebCore::SVGFETurbulenceElement::baseFrequencyYIdentifier): Ditto.
3534         * svg/SVGFETurbulenceElement.h:
3535         * svg/SVGFilterElement.cpp:
3536         (WebCore::SVGFilterElement::filterResXIdentifier): Ditto.
3537         (WebCore::SVGFilterElement::filterResYIdentifier): Ditto.
3538         * svg/SVGFilterElement.h:
3539         * svg/SVGGradientElement.h:
3540         * svg/SVGMarkerElement.cpp:
3541         (WebCore::SVGMarkerElement::orientTypeIdentifier): Ditto.
3542         (WebCore::SVGMarkerElement::orientAngleIdentifier): Ditto.
3543         * svg/SVGMarkerElement.h:
3544         * svg/SVGMaskElement.h:
3545         * svg/SVGPatternElement.h:
3546         * svg/SVGTextContentElement.h:
3547         * svg/SVGTextPathElement.h:
3548         * svg/properties/SVGAnimatedPropertyMacros.h: Add new macro for multiple wrappers using static properties.
3549
3550 2010-10-29  Andreas Kling  <kling@webkit.org>
3551
3552         Reviewed by Kenneth Rohde Christiansen.
3553
3554         [Qt] Make GraphicsContext cheaper to construct
3555         https://bugs.webkit.org/show_bug.cgi?id=48626
3556
3557         Do less unnecessary things when creating the Qt GraphicsContext:
3558         - Don't create a black QBrush that's immediately discarded.
3559         - Don't call setPlatform*(), set the painter brush and pen directly.
3560         - Call setRenderHints() once instead of multiple setRenderHint().
3561
3562         * platform/graphics/qt/GraphicsContextQt.cpp:
3563         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
3564         (WebCore::GraphicsContext::GraphicsContext):
3565
3566 2010-10-29  Andreas Kling  <kling@webkit.org>
3567
3568         Reviewed by Simon Hausmann.
3569
3570         [Qt] GraphicsLayer: Don't notifySyncRequired() more than necessary
3571         https://bugs.webkit.org/show_bug.cgi?id=48624
3572
3573         Don't queue multiple meta method invocations for notifySyncRequired()
3574
3575         4% speedup on <http://ariya.github.com/clock.htm>
3576
3577         * platform/graphics/qt/GraphicsLayerQt.cpp:
3578         (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl):
3579         (WebCore::GraphicsLayerQtImpl::notifySyncRequired):
3580         (WebCore::GraphicsLayerQtImpl::notifyChange):
3581
3582 2010-10-29  Zhenyao Mo  <zmo@google.com>
3583
3584         Reviewed by Chris Marrin.
3585
3586         drawArrays/drawElements with first/offset out of range but size==0 should generate no error
3587         https://bugs.webkit.org/show_bug.cgi?id=48601
3588
3589         * html/canvas/WebGLRenderingContext.cpp:
3590         (WebCore::WebGLRenderingContext::drawArrays):
3591         (WebCore::WebGLRenderingContext::drawElements):
3592
3593 2010-10-29  Leandro Gracia Gil  <leandrogracia@google.com>
3594
3595         Reviewed by Jeremy Orlow.
3596
3597         Patch the current speech input implementation to use the nearest
3598         language tag. The language is now passed to the startRecognition
3599         methods so that language-specific recognition could be used. Also added
3600         a second parameter to setMockSpeechInputResult for the language used in
3601         speech recognition.
3602         https://bugs.webkit.org/show_bug.cgi?id=47089
3603
3604         This is the 2nd of a 4-sided patch in Chromium and WebKit. For more
3605         details see http://codereview.chromium.org/3615005/show,
3606         http://codereview.chromium.org/3595018/show and
3607         https://bugs.webkit.org/show_bug.cgi?id=47420.
3608
3609         Test: fast/speech/input-text-language-tag.html
3610
3611         * page/SpeechInput.cpp:
3612         (WebCore::SpeechInput::startRecognition):
3613         * page/SpeechInput.h:
3614         * page/SpeechInputClient.h:
3615         * platform/mock/SpeechInputClientMock.cpp:
3616         (WebCore::SpeechInputClientMock::startRecognition):
3617         (WebCore::SpeechInputClientMock::setRecognitionResult):
3618         (WebCore::SpeechInputClientMock::timerFired):
3619         * platform/mock/SpeechInputClientMock.h:
3620         * rendering/TextControlInnerElements.cpp:
3621         (WebCore::TextControlInnerElement::attachInnerElement):
3622         (WebCore::SearchFieldCancelButtonElement::detach):
3623         (WebCore::SpinButtonElement::defaultEventHandler):
3624         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
3625         (WebCore::InputFieldSpeechButtonElement::detach):
3626
3627 2010-10-29  Mads Ager  <ager@chromium.org>
3628
3629         Reviewed by Pavel Feldman.
3630
3631         [V8] The DateExtension cannot handle overwritten Date
3632         https://bugs.webkit.org/show_bug.cgi?id=48621
3633
3634         Check that the Date property is an object before attempting to get
3635         hidden properties from it.
3636
3637         Test: fast/dom/Window/slow-unload-handler-overwritten-date.html
3638
3639         * bindings/v8/DateExtension.cpp:
3640         (WebCore::DateExtension::setAllowSleep):
3641
3642 2010-10-27  Nikolas Zimmermann  <nzimmermann@rim.com>
3643
3644         Reviewed by Dirk Schulze.
3645
3646         Convert SVGAnimatedBoolean to the new SVGAnimatedPropertyTearOff concept
3647         https://bugs.webkit.org/show_bug.cgi?id=48469
3648
3649         Convert the next SVG animated primitive type to use the SVGAnimatedPropertyTearOff concept: SVGAnimatedBoolean.
3650         Added new test verifying that StrictTypeChecking is enabled for SVGAnimatedBooleans. It also tests that this type is "static", see LayoutTests/ChangeLog for details.
3651
3652         Add support for StrictTypeChecking for boolean types.
3653
3654         Test: svg/dom/SVGExternalResourcesRequired.html
3655
3656         * GNUmakefile.am: Add SVGAnimatedBoolean.h and SVGAnimatedStaticPropertyTearOff.h to build.
3657         * WebCore.gypi: Ditto.
3658         * WebCore.pro: Ditto.
3659         * WebCore.vcproj/WebCore.vcproj: Ditto.
3660         * WebCore.xcodeproj/project.pbxproj: Ditto.
3661         * bindings/scripts/CodeGenerator.pm: Add SVGAnimatedBoolean to the new style svg animated bindings list.
3662         * bindings/scripts/CodeGeneratorJS.pm: Add StrictTypeChecking support for boolean types.
3663         * bindings/scripts/CodeGeneratorObjC.pm: Ditto. Only generate kit() usage for new style animated types, if the wrapped type needs a tear off.
3664         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
3665         * svg/DeprecatedSVGAnimatedTemplate.h: Remove SVGAnimatedBoolean handling.
3666         * svg/SVGAElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_STATIC_PROPERTY_NEW/ for boolean types everywhere. Include SVGAnimatedPropertyMacros.h where needed.
3667         * svg/SVGAnimatedBoolean.h: Added.
3668         * svg/SVGAnimatedBoolean.idl:
3669         * svg/SVGAnimationElement.h:
3670         * svg/SVGCircleElement.h:
3671         * svg/SVGClipPathElement.h:
3672         * svg/SVGCursorElement.h:
3673         * svg/SVGDefsElement.h:
3674         * svg/SVGEllipseElement.h:
3675         * svg/SVGExternalResourcesRequired.cpp:
3676         * svg/SVGExternalResourcesRequired.h:
3677         (WebCore::SVGExternalResourcesRequired::~SVGExternalResourcesRequired):
3678         * svg/SVGFEConvolveMatrixElement.h:
3679         * svg/SVGFEImageElement.h:
3680         * svg/SVGFilterElement.h:
3681         * svg/SVGFontElement.h:
3682         * svg/SVGForeignObjectElement.h:
3683         * svg/SVGGElement.h:
3684         * svg/SVGGradientElement.h:
3685         * svg/SVGImageElement.h:
3686         * svg/SVGLineElement.h:
3687         * svg/SVGMPathElement.h:
3688         * svg/SVGMarkerElement.h:
3689         * svg/SVGMaskElement.h:
3690         * svg/SVGPathElement.h:
3691         * svg/SVGPatternElement.h:
3692         * svg/SVGPolyElement.h:
3693         * svg/SVGRectElement.h:
3694         * svg/SVGSVGElement.h:
3695         * svg/SVGScriptElement.h:
3696         * svg/SVGSwitchElement.h:
3697         * svg/SVGSymbolElement.h:
3698         * svg/SVGTextContentElement.h:
3699         * svg/SVGUseElement.h:
3700         * svg/SVGViewElement.h:
3701         * svg/properties/SVGAnimatedListPropertyTearOff.h: Moved RefPtr<SVGProperty> m_baseVal/m_animVal from SVGAnimatedProperty, as SVGAnimatedStaticPropertyTearOff doesn't need them.
3702         * svg/properties/SVGAnimatedProperty.h: Remove m_baseVal/m_animVal.
3703         (WebCore::SVGAnimatedProperty::commitChange): New method to share code between the SVGAnimated*PropertyTearOff classes.
3704         * svg/properties/SVGAnimatedPropertyMacros.h: Add new DECLARE_ANIMATED_STATIC_PROPERTY_NEW macro which creates SVGAnimatedStaticPropertyTearOff types.
3705         * svg/properties/SVGAnimatedPropertyTearOff.h: Moved RefPtr<SVGProperty> m_baseVal/m_animVal from SVGAnimatedProperty, as SVGAnimatedStaticPropertyTearOff doesn't need them.
3706         * svg/properties/SVGAnimatedStaticPropertyTearOff.h: Added.
3707         (WebCore::SVGAnimatedStaticPropertyTearOff::baseVal): Directly returns the stored m_property as reference, no tear off is created.
3708         (WebCore::SVGAnimatedStaticPropertyTearOff::animVal): Ditto.
3709         (WebCore::SVGAnimatedStaticPropertyTearOff::setBaseVal): Directly updates the stored m_property reference, and invalidates the SVG attributes.
3710         (WebCore::SVGAnimatedStaticPropertyTearOff::setAnimVal): Not implemented.
3711         (WebCore::SVGAnimatedStaticPropertyTearOff::create):
3712         (WebCore::SVGAnimatedStaticPropertyTearOff::SVGAnimatedStaticPropertyTearOff):
3713         * svg/properties/SVGListPropertyTearOff.h:
3714         (WebCore::SVGListPropertyTearOff::commitChange): Share code, use SVGAnimatedProperty::commitChange.
3715         * svg/properties/SVGPropertyTearOff.h:
3716         (WebCore::SVGPropertyTearOff::commitChange): Ditto.
3717
3718 2010-10-28  MORITA Hajime  <morrita@google.com>
3719
3720         Reviewed by Kent Tamura.
3721
3722         <meter min=0 max=100 value=100> should be optimum.
3723         https://bugs.webkit.org/show_bug.cgi?id=48613
3724
3725         Changed to make the condition inclusive for better case consistently.
3726         - Values on the border between optimum and subsequntial go optimum.
3727         - Values on the border between suboptimal and even-less-than-good go suboptimal.
3728
3729         Test: fast/dom/HTMLMeterElement/meter-boundary-values.html
3730
3731         * html/HTMLMeterElement.cpp:
3732         (WebCore::HTMLMeterElement::gaugeRegion):
3733
3734 2010-10-29  Kenichi Ishibashi  <bashi@google.com>
3735
3736         Reviewed by Kent Tamura.
3737
3738         [HTML5] Add DOMSettableTokenList
3739         https://bugs.webkit.org/show_bug.cgi?id=47810
3740
3741         Adds DOMSettableTokenList interface to support <output> element.
3742         The DOMTokenList interface was refactored since its was tightly coupled
3743         with HTMLElement.classList property.
3744
3745         * Android.derived.jscbindings.mk: Added JSDOMSettableTokenList.h file.
3746         * Android.derived.v8bindings.mk: Added V8DOMSettableTokenList.h file.
3747         * Android.jscbindings.mk: Added JSDOMSettableTokenList.cpp file.
3748         * Android.mk: Added ClassList.cpp file.
3749         * CMakeLists.txt: Added DOMSettableTokenList.{cpp,idl} and ClassList.cpp files.
3750         * DerivedSources.cpp: Added JSDOMSettableTokenList.cpp file.
3751         * DerivedSources.make: Added DOMSettableTokenList entry.
3752         * GNUmakefile.am: Added JSDOMSettableTokenList.{h,cpp} and ClassList.{h,cpp} files.
3753         * WebCore.gypi: Added DOMSettableTokenList.{h,cpp,idl}, V8DOMSettableTokenListCustom.cpp and ClassList.{h,cpp} files.
3754         * WebCore.pri: Added DOMSettableTokenList.idl file.
3755         * WebCore.pro: Added V8DOMSettableTokenListCustom.cpp, ClassList.{h,cpp} and DOMSettableTokenList.{h,cpp} files.
3756         * WebCore.vcproj/WebCore.vcproj: Added JSDOMSettableTokenList.{h,cpp}, ClassList.{h,cpp} and DOMSettableTokenList.{h,cpp} files.
3757         * WebCore.xcodeproj/project.pbxproj: Added ClassList.{h,cpp}, DOMSettabletokenList.{h,cpp} and JSDOMSettableTokenList.{h,cpp}
3758         * bindings/gobject/GNUmakefile.am: Added WebKitDOMDOMSettableTokenList.{h,cpp} and WebKitDOMDOMSettableTokenListPrivate.cpp files.
3759         * bindings/scripts/CodeGeneratorJS.pm: Modified IndexGetterReturnsStrings() returns 1 for DOMSettableTokenList.
3760         * bindings/v8/custom/V8DOMSettableTokenListCustom.cpp: Added.
3761         (WebCore::V8DOMSettableTokenList::indexedPropertyGetter):
3762         * dom/Element.cpp: Replaced DOMTokenList to ClassList.
3763         (WebCore::Element::classList):
3764         * dom/ElementRareData.h: ditto.
3765         * dom/SpaceSplitString.cpp: Added add() and remove() functions.
3766         (WebCore::SpaceSplitStringData::add):
3767         (WebCore::SpaceSplitStringData::remove):
3768         (WebCore::SpaceSplitString::add):
3769         (WebCore::SpaceSplitString::remove):
3770         * dom/SpaceSplitString.h: Added add() and remove() functions.
3771         * dom/StyledElement.cpp: Replaced DOMTokenList to ClassList.
3772         (WebCore::StyledElement::classAttributeChanged):
3773         * dom/StyledElement.h: ditto.
3774         * html/ClassList.cpp: Added, mostly from original DOMTokenList.cpp.
3775         (WebCore::ClassList::ClassList):
3776         (WebCore::ClassList::ref):
3777         (WebCore::ClassList::deref):
3778         (WebCore::ClassList::length):
3779         (WebCore::ClassList::item):
3780         (WebCore::ClassList::contains):
3781         (WebCore::ClassList::containsInternal):
3782         (WebCore::ClassList::add):
3783         (WebCore::ClassList::addInternal):
3784         (WebCore::ClassList::remove):
3785         (WebCore::ClassList::removeInternal):
3786         (WebCore::ClassList::toggle):
3787         (WebCore::ClassList::toString):
3788         (WebCore::ClassList::reset):
3789         (WebCore::ClassList::classNames):
3790         * html/ClassList.h: Added, mostly from original DOMTokenList.h.
3791         (WebCore::ClassList::create):
3792         (WebCore::ClassList::element):
3793         * html/DOMSettableTokenList.cpp: Added.
3794         (WebCore::DOMSettableTokenList::DOMSettableTokenList):
3795         (WebCore::DOMSettableTokenList::~DOMSettableTokenList):
3796         (WebCore::DOMSettableTokenList::item):
3797         (WebCore::DOMSettableTokenList::contains):
3798         (WebCore::DOMSettableTokenList::add):
3799         (WebCore::DOMSettableTokenList::addInternal):
3800         (WebCore::DOMSettableTokenList::remove):
3801         (WebCore::DOMSettableTokenList::removeInternal):
3802         (WebCore::DOMSettableTokenList::toggle):
3803         (WebCore::DOMSettableTokenList::setValue):
3804         * html/DOMSettableTokenList.h: Added.
3805         (WebCore::DOMSettableTokenList::create):
3806         (WebCore::DOMSettableTokenList::ref):
3807         (WebCore::DOMSettableTokenList::deref):
3808         (WebCore::DOMSettableTokenList::length):
3809         (WebCore::DOMSettableTokenList::toString):
3810         (WebCore::DOMSettableTokenList::value):
3811         * html/DOMSettableTokenList.idl: Added.
3812         * html/DOMTokenList.cpp: Refactored to be an abstract interface for both of ClassList and DOMSettableTokenList.
3813         (WebCore::DOMTokenList::validateToken): Changed to be a static member function of DOMTokenList.
3814         (WebCore::DOMTokenList::addToken): Added, mostly from original DOMTokenList::addInternal().
3815         (WebCore::DOMTokenList::removeToken): Added, mostly from original DOMTokenList::removeInternal().
3816         * html/DOMTokenList.h: Refactored to be an abstract interface for both of ClassList and DOMSettableTokenList.
3817         (WebCore::DOMTokenList::~DOMTokenList):
3818         (WebCore::DOMTokenList::element):
3819         * page/DOMWindow.cpp: Added an entry for DOMSettableTokenList.
3820         * page/DOMWindow.idl: ditto.
3821
3822 2010-10-29  Pavel Feldman  <pfeldman@chromium.org>
3823
3824         Reviewed by Timothy Hatcher.
3825
3826         Web Inspector: make legacy resource tracking optional in the native code,
3827         make cookeis work against new resource manager.
3828         https://bugs.webkit.org/show_bug.cgi?id=48532
3829
3830         * inspector/InspectorCSSStore.cpp:
3831         (WebCore::InspectorCSSStore::resourceStyleSheetText):
3832         * inspector/InspectorController.cpp:
3833         (WebCore::InspectorController::InspectorController):
3834         (WebCore::InspectorController::~InspectorController):
3835         (WebCore::InspectorController::connectFrontend):
3836         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
3837         (WebCore::InspectorController::populateScriptObjects):
3838         (WebCore::InspectorController::unbindAllResources):
3839         (WebCore::InspectorController::didCommitLoad):
3840         (WebCore::InspectorController::frameDetachedFromParent):
3841         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
3842         (WebCore::InspectorController::identifierForInitialRequest):
3843         (WebCore::InspectorController::willSendRequest):
3844         (WebCore::InspectorController::markResourceAsCached):
3845         (WebCore::InspectorController::didReceiveResponse):
3846         (WebCore::InspectorController::didReceiveContentLength):
3847         (WebCore::InspectorController::didFinishLoading):
3848         (WebCore::InspectorController::didFailLoading):
3849         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
3850         (WebCore::InspectorController::scriptImported):
3851         (WebCore::InspectorController::setResourceTrackingEnabled):
3852         (WebCore::InspectorController::getCookies):
3853         (WebCore::InspectorController::deleteCookie):
3854         (WebCore::InspectorController::didCreateWebSocket):
3855         (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
3856         (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
3857         (WebCore::InspectorController::didCloseWebSocket):
3858         (WebCore::InspectorController::breakpointsSettingKey):
3859         (WebCore::InspectorController::getResourceContent):
3860         * inspector/InspectorController.h:
3861         * inspector/InspectorResource.cpp:
3862         (WebCore::InspectorResource::updateScriptObject):
3863         (WebCore::InspectorResource::markFailed):
3864         * inspector/InspectorResource.h:
3865         * inspector/InspectorResourceAgent.cpp:
3866         (WebCore::populateObjectWithFrameResources):
3867         * inspector/front-end/CookieItemsView.js:
3868         (WebInspector.CookieItemsView.prototype._updateWithCookies):
3869         (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
3870         * inspector/front-end/Resource.js:
3871         (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
3872         (WebInspector.Resource.prototype._checkWarning):
3873         * inspector/front-end/ResourceManager.js:
3874         (WebInspector.ResourceManager.prototype._updateResourceWithResponse):
3875         (WebInspector.ResourceManager.prototype.didFailLoading):
3876         * inspector/front-end/inspector.js:
3877         (WebInspector.forAllResources):
3878         (WebInspector.updateResource):
3879
3880 2010-10-29  MORITA Hajime <morrita@google.com>
3881
3882         Unreviewed attempt for fixing build break for http://trac.webkit.org/changeset/70847
3883
3884         * editing/EditingAllInOne.cpp:
3885
3886 2010-10-29  Mihai Parparita  <mihaip@chromium.org>
3887
3888         Reviewed by Adam Barth.
3889
3890         Support RegExp in V8 implementation of SerializedScriptValue
3891         https://bugs.webkit.org/show_bug.cgi?id=44809
3892         
3893         Add RegExp serialization/deserialization now that V8 provides API access
3894         to the RegExp type.
3895
3896         * bindings/v8/SerializedScriptValue.cpp:
3897         (WebCore::ZigZag::Writer::writeRegExp):
3898         (WebCore::ZigZag::Serializer::writeRegExp):
3899         (WebCore::ZigZag::Serializer::doSerialize):
3900         (WebCore::ZigZag::Reader::read):
3901         (WebCore::ZigZag::Reader::readRegExp):
3902
3903 2010-10-13  MORITA Hajime  <morrita@google.com>
3904
3905         Reviewed by David Hyatt.
3906
3907         Navigating dark background websites results in blinding white flashes between pages. 
3908         https://bugs.webkit.org/show_bug.cgi?id=45640
3909
3910         This FOUC is caused by an early layout request before the <body> is ready, 
3911         and the page's background style given for <body>, instead of <html>.
3912         So many sites have such stylesheets that we should care them.
3913         
3914         - Some DOM operation such as 'element.offsetLeft' causes page layout.
3915         - The page layout results page repaint
3916         - The page page repaint makes a white screen. because there is nothing to paint
3917           before <body> is available.
3918         
3919         This change:
3920         - extracted existing FOUC check on RenderBlock and RenderLayer to 
3921           Document::mayCauseFlashOfUnstyledContent(),
3922         - checked <body> availability on mayCauseFlashOfUnstyledContent(), and
3923         - added FOUC guards before requesting reapint on FrameView.
3924         
3925         No new tests. The data loading speed matters and it cannot be
3926         captured by DRT.
3927
3928         * dom/Document.cpp:
3929         (WebCore::Document::mayCauseFlashOfUnstyledContent): Added.
3930         * dom/Document.h:
3931         * page/FrameView.cpp:
3932         (WebCore::FrameView::invalidateRect): Added a guard.
3933         (WebCore::FrameView::repaintContentRectangle): Added a guard.
3934         (WebCore::FrameView::doDeferredRepaints): Added a guard.
3935         (WebCore::FrameView::shouldUpdate): Added.
3936         * page/FrameView.h:
3937         * rendering/RenderBlock.cpp:
3938         (WebCore::RenderBlock::paintContents): Replaced FOUC check to use mayCauseFlashOfUnstyledContent
3939         * rendering/RenderLayer.cpp:
3940         (WebCore::RenderLayer::paintLayer): Replaced FOUC check to use mayCauseFlashOfUnstyledContent
3941
3942 2010-10-29  David Hyatt  <hyatt@apple.com>
3943
3944         Reviewed by Dan Bernstein.
3945
3946         https://bugs.webkit.org/show_bug.cgi?id=48618
3947
3948         Backgrounds should clip to the border radius properly for vertical lines.  The code that does this still assumes horizontal lines.
3949         The testcase to cover this used nested spans, which also exposed a bug in the propagation of the vertical bit through the line
3950         box tree.
3951         
3952         Added fast/blockflow/border-radius-clipping-vertical-lr.html.
3953
3954         * rendering/RenderBlockLineLayout.cpp:
3955         (WebCore::RenderBlock::createLineBoxes):
3956         * rendering/RenderBoxModelObject.cpp:
3957         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3958
3959 2010-10-26  MORITA Hajime  <morrita@google.com>
3960
3961         Reviewed by Kent Tamura.
3962
3963         Refactoring: Spellchecking related static functions could form a class
3964         https://bugs.webkit.org/show_bug.cgi?id=48287
3965
3966         Extracted spellcheck related static functions to TextCheckingHelper class,
3967         which has EditorClient and Range as its member.
3968         
3969         No new tests. Just a refactoring.
3970
3971         * CMakeLists.txt:
3972         * GNUmakefile.am:
3973         * WebCore.gypi:
3974         * WebCore.pro:
3975         * WebCore.vcproj/WebCore.vcproj:
3976         * WebCore.xcodeproj/project.pbxproj:
3977         * editing/Editor.cpp:
3978         (WebCore::Editor::advanceToNextMisspelling):
3979         (WebCore::Editor::isSelectionUngrammatical):
3980         (WebCore::Editor::guessesForUngrammaticalSelection):
3981         (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection):
3982         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
3983         (WebCore::Editor::markMisspellingsOrBadGrammar):
3984         (WebCore::Editor::markMisspellings):
3985         (WebCore::Editor::markBadGrammar):
3986         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
3987         (WebCore::Editor::changeBackToReplacedString):
3988         * editing/Editor.h:
3989         * editing/TextCheckingHelper.cpp: Added.
3990         (WebCore::TextCheckingHelper::TextCheckingHelper):
3991         (WebCore::TextCheckingHelper::~TextCheckingHelper):
3992         (WebCore::TextCheckingHelper::paragraphAlignedRange):
3993         (WebCore::TextCheckingHelper::findFirstMisspelling):
3994         (WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar):
3995         (WebCore::TextCheckingHelper::findFirstGrammarDetail):
3996         (WebCore::TextCheckingHelper::findFirstBadGrammar):
3997         (WebCore::TextCheckingHelper::isUngrammatical):
3998         (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange):
3999         (WebCore::TextCheckingHelper::markAllMisspellings):
4000         (WebCore::TextCheckingHelper::markAllBadGrammar):
4001         * editing/TextCheckingHelper.h: Added.
4002
4003 2010-10-28  Adam Barth  <abarth@webkit.org>
4004
4005         Reviewed by Eric Seidel, Peter Kasting, and Darin Fisher.
4006         (Eric reviewed the CoreGraphics interactions, Peter reviewed the image
4007         decoder interaction, and Darin Fisher SGTMed the policy decision.)
4008
4009         [chromium] Chromium Mac should use WebKit's image decoders
4010         https://bugs.webkit.org/show_bug.cgi?id=47974
4011
4012         This patch teaches WebKit's image decoders how to talk to CoreGraphics.
4013         This patch doesn't handle color profiles, but that will come in a
4014         subsequent patch.
4015
4016         * WebCore.gyp/WebCore.gyp:
4017         * WebCore.gypi:
4018         * loader/CachedImage.cpp:
4019         (WebCore::CachedImage::createImage):
4020         * platform/graphics/ImageSource.h:
4021         * platform/image-decoders/ImageDecoder.cpp:
4022         (WebCore::RGBA32Buffer::clear):
4023         (WebCore::RGBA32Buffer::zeroFill):
4024         (WebCore::RGBA32Buffer::copyBitmapData):
4025         (WebCore::RGBA32Buffer::setSize):
4026         * platform/image-decoders/ImageDecoder.h:
4027         (WebCore::RGBA32Buffer::getAddr):
4028         * platform/image-decoders/cg: Added.
4029         * platform/image-decoders/cg/ImageDecoderCG.cpp: Added.
4030         (WebCore::RGBA32Buffer::copyBitmapData):
4031         (WebCore::RGBA32Buffer::setSize):
4032         (WebCore::RGBA32Buffer::asNewNativeImage):
4033
4034 2010-10-28  Sergio Villar Senin  <svillar@igalia.com>
4035
4036         Reviewed by Xan Lopez.
4037
4038         [GTK] GObject bindings generator issues
4039         https://bugs.webkit.org/show_bug.cgi?id=48135
4040
4041         GObject code generator must not generate conditional API's. This
4042         patch also adds an alternative return value for non-void
4043         conditional methods. With this change the conditionalMethods hack
4044         is no longer needed.
4045
4046         * bindings/scripts/CodeGeneratorGObject.pm:
4047
4048 2010-10-28  David Hyatt  <hyatt@apple.com>
4049
4050         Reviewed by Dan Bernstein.
4051
4052         https://bugs.webkit.org/show_bug.cgi?id=48569
4053
4054         Box shadows on vertical inlines don't paint properly.  Fix the paintBoxShadow method to treat the edges to include as
4055         logical (so that top/bottom are used instead of left/right for vertical lines).  In order to make my box-shadow tests
4056         work I had to fix a bug in the transform code of InlineTextBox that was causing the baselines of vertical lines to
4057         be wrong.
4058         
4059         Added fast/blockflow/box-shadow-* tests
4060
4061         * rendering/InlineTextBox.cpp:
4062         (WebCore::InlineTextBox::paint):
4063         * rendering/RenderBoxModelObject.cpp:
4064         (WebCore::RenderBoxModelObject::paintBoxShadow):
4065         * rendering/RenderBoxModelObject.h:
4066
4067 2010-10-28  James Robinson  <jamesr@chromium.org>
4068
4069         Reviewed by Simon Fraser.
4070
4071         iframes forced into slow scrolling mode by containing RenderLayer sometimes
4072         https://bugs.webkit.org/show_bug.cgi?id=48570
4073
4074         Only performs the overlap test for RenderLayers that paint themselves.  This
4075         prevents marking RenderWidgets as being overlapped unnecessarily.
4076
4077         Test: fast/repaint/iframe-scroll-repaint.html
4078
4079         * rendering/RenderLayer.cpp:
4080         (WebCore::RenderLayer::paintLayer):
4081
4082 2010-10-28  Sheriff Bot  <webkit.review.bot@gmail.com>
4083
4084         Unreviewed, rolling out r70814.
4085         http://trac.webkit.org/changeset/70814
4086         https://bugs.webkit.org/show_bug.cgi?id=48612
4087
4088         Caused media/controls-drag-timebar.html to fail on multiple
4089         platforms (Requested by aroben on #webkit).
4090
4091         * html/HTMLMediaElement.cpp:
4092         (WebCore::HTMLMediaElement::seek):
4093         * platform/graphics/MediaPlayer.cpp:
4094         * platform/graphics/MediaPlayer.h:
4095         * platform/graphics/MediaPlayerPrivate.h:
4096         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
4097         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
4098         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
4099         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
4100         * platform/graphics/win/QTMovie.cpp:
4101         * platform/graphics/win/QTMovie.h:
4102
4103 2010-10-28  Dan Bernstein  <mitz@apple.com>
4104
4105         Reviewed by Simon Fraser.
4106
4107         <rdar://problem/8597430> Crash triggered by incremental layout of block truncated by line-clamp
4108         https://bugs.webkit.org/show_bug.cgi?id=48602
4109
4110         Test: fast/flexbox/line-clamp-crash.html
4111
4112         * rendering/RenderFlexibleBox.cpp:
4113         (WebCore::RenderFlexibleBox::applyLineClamp): Even if the child needs layout, call clearTruncation(),
4114         since layout itself may be partial and not touch the truncated line (but touch its markup box).
4115
4116 2010-10-28  Jian Li  <jianli@chromium.org>
4117
4118         Reviewed by Dmitry Titov.
4119
4120         [chromium] UUID generation does not work in Linux that has sandbox
4121         turned on
4122         https://bugs.webkit.org/show_bug.cgi?id=48571
4123
4124         This is because we cannot access /proc when sandbox is on. The fix is to
4125         use random numbers to construct UUID.
4126
4127         * platform/UUID.cpp:
4128         (WebCore::createCanonicalUUIDString):
4129
4130 2010-10-28  Jia Pu  <jpu@apple.com>
4131
4132         Reviewed by Dan Bernstein.
4133
4134         Editing a word with misspell or autocorrection underline should remove the underline when the editing changes the word.
4135         https://bugs.webkit.org/show_bug.cgi?id=48078
4136         <rdar://problem/8579155>
4137
4138         Tests: platform/mac/editing/spelling/editing-multiple-words-with-markers.html
4139                platform/mac/editing/spelling/editing-word-with-marker-1.html
4140                platform/mac/ed