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