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