1ff04a8a6cedd8168d9b5d3d9307784986ee27d0
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-10-27  Steve Block  <steveblock@google.com>
2
3         Numerous debug build fixes
4
5         Unreviewed build fix.
6
7         No new tests, buuld fix only.
8
9         * loader/icon/IconDatabase.cpp: urlForLogging() is used by both LOG() and LOG_ERROR()
10         * storage/AbstractDatabase.h: databaseDebugName() is used by both LOG() and LOG_ERROR()
11         * storage/DatabaseTask.cpp: m_complete is only available when !LOG_DISABLED
12
13 2011-10-27  Vsevolod Vlasov  <vsevik@chromium.org>
14
15         Web Inspector: Refactor ScriptsPanel so that ConsoleView does not depend on it.
16         https://bugs.webkit.org/show_bug.cgi?id=70899
17
18         Moved methods used in console view to DebuggerPresentationModel.
19         Changed debuggerPaused handler logic so that selectedCallFrame is never null when debugger is paused.
20
21         Reviewed by Pavel Feldman.
22
23         * inspector/front-end/ConsoleView.js:
24         * inspector/front-end/DebuggerPresentationModel.js:
25         (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
26         (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
27         (WebInspector.DebuggerPresentationModel.prototype.evaluateInSelectedCallFrame):
28         (WebInspector.DebuggerPresentationModel.prototype.getSelectedCallFrameVariables.propertiesCollected):
29         (WebInspector.DebuggerPresentationModel.prototype.getSelectedCallFrameVariables):
30         (WebInspector.DebuggerPresentationModel.prototype._dispatchExecutionLineChanged):
31         (WebInspector.DebuggerPresentationModel.prototype.get executionLineLocation):
32         * inspector/front-end/ScriptsPanel.js:
33         (WebInspector.ScriptsPanel.prototype._consoleCommandEvaluatedInSelectedCallFrame):
34         (WebInspector.ScriptsPanel.prototype._executionLineChanged):
35         (WebInspector.ScriptsPanel.prototype._updateExecutionLine):
36         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
37         (WebInspector.ScriptsPanel.prototype._updateCallFrame):
38
39 2011-10-27  Vsevolod Vlasov  <vsevik@chromium.org>
40
41         Web Inspector: Add support for advanced search in content scripts.
42         https://bugs.webkit.org/show_bug.cgi?id=70923
43
44         Reviewed by Yury Semikhatsky.
45
46         * English.lproj/localizedStrings.js:
47         * inspector/front-end/ScriptsSearchScope.js:
48         * inspector/front-end/SettingsScreen.js:
49         (WebInspector.SettingsScreen):
50
51 2011-10-27  Ilya Tikhonovsky  <loislo@chromium.org>
52
53         Unreviewed one line fix for DOMStorageItemsView.
54         It have to use this.detachChildViews instead of this.element.removeChildren after r98225.
55
56         * inspector/front-end/DOMStorageItemsView.js:
57         (WebInspector.DOMStorageItemsView.prototype.update):
58
59 2011-10-27  Antti Koivisto  <antti@apple.com>
60
61         Matched declaration cache
62         https://bugs.webkit.org/show_bug.cgi?id=70931
63
64         Reviewed by Darin Adler.
65
66         Sets of style declarations are applied repeatedly for different elements when calculating the document style.
67         The same set of applied declarations results in the same non-inherited style, independent of the element and 
68         its context. We can use this to build a cache to speed up style applying and to share more style data for
69         reduced memory usage.
70         
71         The patch reduces RenderStyle memory use ~40% and total memory use by ~7% over HTML5 spec load.
72         It is also ~10% progression in PerformanceTests/Parser/html5-full-render.html.
73
74         * css/CSSProperty.cpp:
75         (WebCore::CSSProperty::isInheritedProperty):
76         * css/CSSProperty.h:
77         (WebCore::CSSProperty::CSSProperty):
78         (WebCore::CSSProperty::isInherited):
79         
80             We need to know which properties are inherited, something we didn't have available so far.
81         
82         * css/CSSStyleSelector.cpp:
83         (WebCore::CSSStyleSelector::matchAllRules):
84         
85             A set of declarations is only cacheable if it contains no element specific style. This way we
86             don't need to worry about cache invalidation. The whole style selector is reconstructed if the
87             stylesheets change, invalidating the cache too.
88     
89         (WebCore::CSSStyleSelector::styleForElement):
90         
91             Trigger image loads bit earlier so cached style will have them too.
92         
93         (WebCore::CSSStyleSelector::applyDeclaration):
94         (WebCore::CSSStyleSelector::applyDeclarations):
95         
96             Allow skipping over non-inherited properties.
97         
98         (WebCore::CSSStyleSelector::computeDeclarationHash):
99         
100             Hash function for declartion cache lookups.
101         
102         (WebCore::operator==):
103         (WebCore::operator!=):
104         (WebCore::CSSStyleSelector::findFromMatchedDeclarationCache):
105         
106             Lookup from cache.
107         
108         (WebCore::CSSStyleSelector::addToMatchedDeclarationCache):
109         
110             Add to cache.
111         
112         (WebCore::CSSStyleSelector::applyMatchedDeclarations):
113         
114             If cached style is found, copy the non-inherited properties from the cache and apply the inherited properties (if any) only.
115         
116             Font and zoom changes force full applying as they can affect values of other properties (this can be relaxed later).
117         
118         * css/CSSStyleSelector.h:
119         (WebCore::CSSStyleSelector::MatchResult::MatchResult):
120         
121             Cacheability bit.
122         
123         * rendering/style/RenderStyle.cpp:
124         (WebCore::RenderStyle::copyNonInheritedFrom):
125         * rendering/style/RenderStyle.h:
126         * rendering/style/SVGRenderStyle.cpp:
127         (WebCore::SVGRenderStyle::copyNonInheritedFrom):
128         * rendering/style/SVGRenderStyle.h:
129         
130             Functions for assembling RenderStyle from non-inherited parts of the cached style.
131
132 2011-10-27  Andrey Kosyakov  <caseq@chromium.org>
133
134         Web Inspector: [Extensions API] add ignoreCache flag to options of inspectedWindow.reload()
135         https://bugs.webkit.org/show_bug.cgi?id=70926
136
137         Reviewed by Pavel Feldman.
138
139         Test: http/tests/inspector/extensions-ignore-cache.html
140
141         * inspector/front-end/ExtensionServer.js:
142         (WebInspector.ExtensionServer.prototype._onReload):
143         * inspector/front-end/externs.js:
144         ():
145
146 2011-10-26  Steve Falkenburg  <sfalken@apple.com>
147
148         ResourceError doesn't support custom domains on Windows
149         https://bugs.webkit.org/show_bug.cgi?id=70983
150         <rdar://problem/10352145>
151
152         Reviewed by Oliver Hunt.
153
154         * platform/network/cf/ResourceErrorCF.cpp:
155         (WebCore::ResourceError::platformLazyInit): Add fallback case for unknown error types.
156
157 2011-10-26  Dan Bernstein  <mitz@apple.com>
158
159         Fix a slider thumb rendering regression in Chromium on OS X in r98520.
160
161         Reviewed by Anders Carlsson.
162
163         * rendering/RenderThemeMac.mm:
164         (WebCore::RenderThemeMac::paintSliderThumb): Reverted the changes to the Chromium code path.
165
166 2011-10-26  Julien Chaffraix  <jchaffraix@webkit.org>
167
168         Unreviewed, rolling out r98486.
169         http://trac.webkit.org/changeset/98486
170         https://bugs.webkit.org/show_bug.cgi?id=70748
171
172         Broke Chromium's test_expectation.txt
173
174         * platform/graphics/skia/PlatformContextSkia.cpp:
175         (WebCore::PlatformContextSkia::State::State):
176         (WebCore::PlatformContextSkia::State::cloneInheritedProperties):
177         (WebCore::PlatformContextSkia::clipPathAntiAliased):
178         (WebCore::PlatformContextSkia::restore):
179         (WebCore::PlatformContextSkia::applyAntiAliasedClipPaths):
180         * platform/graphics/skia/PlatformContextSkia.h:
181
182 2011-10-26  Dan Bernstein  <mitz@apple.com>
183
184         <rdar://problem/10350775> REGRESSION (r97032): Slider thumb is not drawn
185         https://bugs.webkit.org/show_bug.cgi?id=70891
186
187         Reviewed by Anders Carlsson.
188
189         * platform/mac/ThemeMac.mm:
190         (WebCore::ThemeMac::ensuredView): Set the WebCoreFlippedView’s size, because NSSliderCell
191         always shrinks the slider thumb to fit in the control view’s bounds.
192         * rendering/RenderThemeMac.mm:
193         (WebCore::RenderThemeMac::paintSliderThumb): Removed workaround code no longer needed after
194         r97032.
195
196 2011-10-26  Chris Rogers  <crogers@google.com>
197
198         Add AudioSourceProviderClient and setFormat() method so we can know audio stream format
199         https://bugs.webkit.org/show_bug.cgi?id=70155
200
201         Reviewed by Eric Carlson.
202
203         No new tests.  There isn't yet an implementation to test.
204
205         * html/HTMLMediaElement.cpp:
206         (WebCore::HTMLMediaElement::createMediaPlayer):
207         (WebCore::HTMLMediaElement::setAudioSourceNode):
208         Let MediaPlayer know about the MediaElementAudioSourceNode so it can callback with audio stream format information.
209         * platform/audio/AudioSourceProvider.h:
210         (WebCore::AudioSourceProvider::setClient):
211         Add abstract setClient() method so a client may know about stream format information when it becomes available.
212         * platform/audio/AudioSourceProviderClient.h: Copied from Source/WebCore/webaudio/MediaElementAudioSourceNode.h.
213         (WebCore::AudioSourceProviderClient::~AudioSourceProviderClient):
214         Add abstract class AudioSourceProviderClient which implements setFormat() to receive audio stream format information.
215         * webaudio/MediaElementAudioSourceNode.cpp:
216         (WebCore::MediaElementAudioSourceNode::setFormat):
217         Concrete implementation of setFormat() so MediaElementAudioSourceNode can create necessary audio converters.
218         * webaudio/MediaElementAudioSourceNode.h:
219         Make MediaElementAudioSourceNode implement AudioSourceProviderClient so it can get audio stream format information
220         when its setFormat() method is called.
221
222 2011-10-26  Julien Chaffraix  <jchaffraix@webkit.org>
223
224         Unreviewed, rolling out r98483.
225         http://trac.webkit.org/changeset/98483
226         https://bugs.webkit.org/show_bug.cgi?id=47156
227
228         Change is causing some crashes and ASSERTs.
229
230         * loader/cache/CachedImage.cpp:
231         (WebCore::CachedImage::lookupImageForSize):
232         (WebCore::CachedImage::lookupImageForRenderer):
233         (WebCore::CachedImage::lookupOrCreateImageForRenderer):
234         (WebCore::CachedImage::setContainerSizeForRenderer):
235         (WebCore::CachedImage::imageSizeForRenderer):
236         (WebCore::CachedImage::computeIntrinsicDimensions):
237         (WebCore::CachedImage::createImage):
238         * loader/cache/CachedImage.h:
239         * page/ChromeClient.h:
240         * rendering/ImageBySizeCache.cpp:
241         (WebCore::ImageBySizeCache::addClient):
242         (WebCore::ImageBySizeCache::removeClient):
243         (WebCore::ImageBySizeCache::imageForSize):
244         (WebCore::ImageBySizeCache::sizeForClient):
245         * rendering/ImageBySizeCache.h:
246         * rendering/RenderBoxModelObject.cpp:
247         (WebCore::RenderBoxModelObject::calculateFillTileSize):
248         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
249         (WebCore::RenderBoxModelObject::paintNinePieceImage):
250         * rendering/RenderBoxModelObject.h:
251         * rendering/RenderImage.cpp:
252         (WebCore::RenderImage::RenderImage):
253         (WebCore::RenderImage::imageDimensionsChanged):
254         (WebCore::RenderImage::isLogicalWidthSpecified):
255         (WebCore::RenderImage::isLogicalHeightSpecified):
256         (WebCore::RenderImage::computeReplacedLogicalWidth):
257         (WebCore::RenderImage::computeReplacedLogicalHeight):
258         (WebCore::RenderImage::calcAspectRatioLogicalWidth):
259         (WebCore::RenderImage::calcAspectRatioLogicalHeight):
260         * rendering/RenderImage.h:
261         * rendering/RenderImageResource.cpp:
262         (WebCore::RenderImageResource::setContainerSizeForRenderer):
263         * rendering/RenderImageResourceStyleImage.cpp:
264         * rendering/RenderImageResourceStyleImage.h:
265         (WebCore::RenderImageResourceStyleImage::image):
266         (WebCore::RenderImageResourceStyleImage::setContainerSizeForRenderer):
267         * rendering/RenderListMarker.cpp:
268         (WebCore::RenderListMarker::computePreferredLogicalWidths):
269         * rendering/RenderReplaced.cpp:
270         (WebCore::RenderReplaced::computeIntrinsicLogicalWidth):
271         (WebCore::RenderReplaced::computeIntrinsicLogicalHeight):
272         (WebCore::RenderReplaced::computeReplacedLogicalWidth):
273         * rendering/style/StyleCachedImage.cpp:
274         (WebCore::StyleCachedImage::computeIntrinsicDimensions):
275         (WebCore::StyleCachedImage::setContainerSizeForRenderer):
276         (WebCore::StyleCachedImage::addClient):
277         (WebCore::StyleCachedImage::removeClient):
278         * rendering/style/StyleCachedImage.h:
279         * rendering/style/StyleGeneratedImage.h:
280         (WebCore::StyleGeneratedImage::setContainerSizeForRenderer):
281         * rendering/style/StyleImage.h:
282         * rendering/style/StylePendingImage.h:
283         (WebCore::StylePendingImage::setContainerSizeForRenderer):
284         * rendering/svg/RenderSVGImage.cpp:
285         (WebCore::RenderSVGImage::layout):
286         * rendering/svg/RenderSVGRoot.cpp:
287         (WebCore::RenderSVGRoot::computeIntrinsicWidth):
288         (WebCore::RenderSVGRoot::computeIntrinsicHeight):
289         (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
290         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
291         (WebCore::RenderSVGRoot::layout):
292         (WebCore::RenderSVGRoot::paint):
293         (WebCore::RenderSVGRoot::calcViewport):
294         (WebCore::RenderSVGRoot::computeRectForRepaint):
295         * rendering/svg/RenderSVGRoot.h:
296         * svg/SVGLength.cpp:
297         (WebCore::SVGLength::determineViewport):
298         * svg/SVGSVGElement.cpp:
299         (WebCore::SVGSVGElement::SVGSVGElement):
300         (WebCore::SVGSVGElement::relativeWidthValue):
301         (WebCore::SVGSVGElement::relativeHeightValue):
302         (WebCore::SVGSVGElement::currentViewBoxRect):
303         * svg/SVGSVGElement.h:
304         (WebCore::SVGSVGElement::setContainerSize):
305         (WebCore::SVGSVGElement::containerSize):
306         (WebCore::SVGSVGElement::hasSetContainerSize):
307         * svg/graphics/SVGImage.cpp:
308         (WebCore::SVGImage::setContainerSize):
309         (WebCore::SVGImage::usesContainerSize):
310         (WebCore::SVGImage::size):
311         (WebCore::SVGImage::hasRelativeWidth):
312         (WebCore::SVGImage::hasRelativeHeight):
313         (WebCore::SVGImage::draw):
314         (WebCore::SVGImage::computeIntrinsicDimensions):
315         (WebCore::SVGImage::dataChanged):
316         * svg/graphics/SVGImage.h:
317
318 2011-10-26  Eric Carlson  <eric.carlson@apple.com>
319
320         Constructors for all TextTrack interfaces should be available on DOMWindow
321         https://bugs.webkit.org/show_bug.cgi?id=70734
322
323         Reviewed by Sam Weinig.
324         
325         window-properties-expected.txt and global-constructors-expected.txt updated for this change.
326
327         * page/DOMWindow.idl: Add HTMLTrackElement, TextTrack, and TextTrackCueList.
328
329 2011-10-25  Andy Estes  <aestes@apple.com>
330
331         REGRESSION (r93108): Shadow DOM media controls created for plug-in backed media elements.
332         https://bugs.webkit.org/show_bug.cgi?id=70872
333
334         Reviewed by Eric Carlson.
335
336         r93108 added a call to HTMLMediaElement::configureMediaControls() in
337         HTMLMediaElement::prepareForLoad(), which creates shadow DOM media
338         controls and is only appropriate to call when media elements are not
339         backed by plug-in proxies.
340
341         Resolve this by refactoring configureMediaControls() to do the right
342         thing for the plug-in proxy case by calling MediaPlayer::setControls().
343
344         * html/HTMLMediaElement.cpp:
345         (WebCore::HTMLMediaElement::attributeChanged): Call
346         configureMediaControls() directly and remove the preprocessor
347         conditional.
348         (WebCore::HTMLMediaElement::configureMediaControls): Call
349         MediaPlayer::setControls() if PLUGIN_PROXY_FOR_VIDEO is enabled.
350
351 2011-10-26  Jon Lee  <jonlee@apple.com>
352
353         selectedIndex gets set from -1 to 0 when modifying options
354         https://bugs.webkit.org/show_bug.cgi?id=70547
355         <rdar://problem/8388856>
356
357         Reviewed by Darin Adler.
358
359         Changing the text causes a recalculation of the list items, which in the menu list case
360         forces the first element to be selected. We check the value of the selected option prior,
361         and restore it if it differs.
362
363         Test: fast/dom/HTMLSelectElement/selected-index-preserved-when-option-text-changes.html
364
365         * html/HTMLOptionElement.cpp:
366         (WebCore::HTMLOptionElement::setText):
367         * html/HTMLSelectElement.h: promote usesMenuList() from private to public for use by HTMLOptionElement
368
369 2011-10-25  Alexey Proskuryakov  <ap@apple.com>
370
371         Embedded PDFs should be known to DocumentLoader
372         https://bugs.webkit.org/show_bug.cgi?id=70864
373
374         Reviewed by Darin Adler.
375
376         * WebCore.exp.in: Added exports.
377
378 2011-10-26  Mark Hahnenberg  <mhahnenberg@apple.com>
379
380         Remove getOwnPropertySlotVirtual
381         https://bugs.webkit.org/show_bug.cgi?id=70741
382
383         Reviewed by Geoffrey Garen.
384
385         No new tests.
386
387         Removed all declarations and definitions of getOwnPropertySlotVirtual.
388         Also replaced all call sites to getOwnPropertyVirtualVirtual with a 
389         corresponding lookup in the MethodTable.
390
391         * WebCore.exp.in:
392         * bindings/js/JSDOMWindowCustom.cpp:
393         (WebCore::DialogHandler::returnValue):
394         * bindings/js/JSDOMWindowShell.cpp:
395         (WebCore::JSDOMWindowShell::getOwnPropertySlot):
396         * bindings/js/JSDOMWindowShell.h:
397         * bindings/js/SerializedScriptValue.cpp:
398         (WebCore::CloneSerializer::getSparseIndex):
399         (WebCore::CloneSerializer::getProperty):
400         * bindings/scripts/CodeGeneratorJS.pm:
401         (GenerateHeader):
402         (GenerateImplementation):
403         (GenerateConstructorDeclaration):
404         (GenerateConstructorDefinition):
405         * bridge/objc/objc_runtime.h:
406         * bridge/objc/objc_runtime.mm:
407         * bridge/qt/qt_runtime.cpp:
408         * bridge/qt/qt_runtime.h:
409         * bridge/runtime_array.cpp:
410         * bridge/runtime_array.h:
411         * bridge/runtime_method.cpp:
412         * bridge/runtime_method.h:
413         * bridge/runtime_object.cpp:
414         * bridge/runtime_object.h:
415
416 2011-10-26  Alejandro G. Castro  <alex@igalia.com>
417
418         [GTK] Fix distcheck compilation
419         https://bugs.webkit.org/show_bug.cgi?id=70921
420
421         Add EventTargetFactory.in to the dist files, required after
422         r98388.
423
424         Reviewed by Martin Robinson.
425
426         * GNUmakefile.am:
427
428 2011-10-26  Michael Saboff  <msaboff@apple.com>
429
430         Increase StringImpl Flag Bits for 8 bit Strings
431         https://bugs.webkit.org/show_bug.cgi?id=70937
432
433         Increased the number of bits used for flags in StringImpl
434         from 6 to 8 bits. This frees up 2 flag bits that will be
435         used for 8-bit string support. Updated hash methods accordingly.
436         Changed hash value masking from the low bits to the high
437         bits.
438
439         Reviewed by Darin Adler.
440
441         * bindings/scripts/CodeGeneratorJS.pm:
442         (GenerateHashValue):
443
444 2011-10-26  Dimitri Glazkov  <dglazkov@chromium.org>
445
446         REGRESSION (r94887): Scrolling the HTML spec is more jerky now than it was (regression)
447         https://bugs.webkit.org/show_bug.cgi?id=70857
448
449         Revert r94887, because it regressed performance.
450
451         Rubber-stamped by Antti Koivisto.
452
453         * css/CSSStyleSelector.cpp:
454         (WebCore::CSSStyleSelector::canShareStyleWithElement):
455         (WebCore::parentStylePreventsSharing):
456         * css/SelectorChecker.cpp:
457         (WebCore::SelectorChecker::checkSelector):
458         * dom/Element.cpp:
459         (WebCore::Element::recalcStyle):
460         (WebCore::checkForSiblingStyleChanges):
461         * rendering/style/RenderStyle.cpp:
462         (WebCore::RenderStyle::RenderStyle):
463         * rendering/style/RenderStyle.h:
464         (WebCore::InheritedFlags::childrenAffectedByDirectAdjacentRules):
465         (WebCore::InheritedFlags::setChildrenAffectedByDirectAdjacentRules):
466
467 2011-10-26  Alexander Pavlov  <apavlov@chromium.org>
468
469         Web Inspector: Need workaround for the red crossed circle in the status bar not bringing up the console when clicked
470         https://bugs.webkit.org/show_bug.cgi?id=70928
471
472         Reviewed by Pavel Feldman.
473
474         * inspector/front-end/inspector.css:
475         (#error-count-img):
476         (#error-count + #warning-count-img):
477         (#warning-count-img):
478         * inspector/front-end/inspector.js:
479         (WebInspector._updateErrorAndWarningCounts):
480
481 2011-10-26  Mike Reed  <reed@google.com>
482
483         [skia] replace offscreen technique with native support for antialiased clipping
484         https://bugs.webkit.org/show_bug.cgi?id=70748
485
486         Reviewed by Stephen White.
487
488         ~100 layout tests need to be rebaselined, as the native aa-clipping differs sometimes in the low
489         bits of the result. Other than that, the results should be the same, except that now the drawing
490         can go directly to the canvas, rather than being direct offscreen and then have that result
491         "clipped" during the restore. This has the effect of allowing LCD text to be drawing inside a
492         antialiased clip area.
493
494         * platform/graphics/skia/PlatformContextSkia.cpp:
495         (WebCore::PlatformContextSkia::State::State):
496         (WebCore::PlatformContextSkia::State::cloneInheritedProperties):
497         (WebCore::PlatformContextSkia::clipPathAntiAliased):
498         (WebCore::PlatformContextSkia::restore):
499
500 2011-10-26  Nikolas Zimmermann  <nzimmermann@rim.com>
501
502         CSS 2.1 failure: background-intrinsic-*
503         https://bugs.webkit.org/show_bug.cgi?id=47156
504
505         SVGs do not work as tiled background images
506         https://bugs.webkit.org/show_bug.cgi?id=16281
507
508         Apply preserveAspectRatio and synthesize viewboxes in <img>
509         https://bugs.webkit.org/show_bug.cgi?id=34521
510
511         SVG background doesn't resize properly when dimensions are changed
512         https://bugs.webkit.org/show_bug.cgi?id=42944
513
514         Images with percent height inside a floated div should use intrinsic height.
515         https://bugs.webkit.org/show_bug.cgi?id=45439
516
517         SVG image in HTML changes size as the window is resized
518         https://bugs.webkit.org/show_bug.cgi?id=52045
519
520         Reviewed by Antti Koivisto.
521
522         Implement intrinsic sizing support for SVGImage (svg embedded through <html:img>/<svg:image>/background-image/border-image/...).
523         This is demanded by CSS 2.1, and covered by new layout tests in LayoutTests/css2.1 and several new custom testcases.
524
525         Tests: css2.1/20110323/background-intrinsic-001.htm
526                css2.1/20110323/background-intrinsic-002.htm
527                css2.1/20110323/background-intrinsic-003.htm
528                css2.1/20110323/background-intrinsic-004.htm
529                css2.1/20110323/background-intrinsic-005.htm
530                css2.1/20110323/background-intrinsic-006.htm
531                css2.1/20110323/background-intrinsic-007.htm
532                css2.1/20110323/background-intrinsic-008.htm
533                css2.1/20110323/background-intrinsic-009.htm
534                svg/as-background-image/background-image-preserveaspectRatio-support.html (adapted from testcase from bug 34521)
535                svg/as-background-image/background-image-tiled.html (reduction from bug 16281)
536                svg/as-background-image/same-image-two-instances-background-image.html
537                svg/as-image/img-preserveAspectRatio-support-1.html (reduction from bug 34521)
538                svg/as-image/same-image-two-instances.html
539                svg/as-image/svg-as-relative-image-with-explicit-size.html
540                svg/as-image/svg-image-change-content-size.xhtml (reduction from bug 42944)
541                svg/zoom/page/zoom-img-preserveAspectRatio-support-1.html
542
543         * loader/cache/CachedImage.cpp: Enable SVGImage <-> IntSize cache.
544         (WebCore::CachedImage::lookupImageForSize): Use recently introduced ImageBySizeCache, to lookup an image for a certain size.
545         (WebCore::CachedImage::lookupImageForRenderer): Lookup image by renderer, which first looks up a size for a renderer, then uses lookupImageForSize().
546         (WebCore::createSVGImage): Refactored from createImage(), contains the SVGImage creation part only.
547         (WebCore::CachedImage::lookupOrCreateImageForRenderer): Use recently introduced ImageBySizeCache, to dynamically create copies of m_image if needed.
548         (WebCore::CachedImage::setContainerSizeForRenderer): For SVGImages, pass on container size handling to ImageBySizeCache.
549         (WebCore::CachedImage::imageSizeForRenderer): Figure out the image size, respecting per-renderer overrides, for a certain renderer.
550         (WebCore::CachedImage::computeIntrinsicDimensions): Remove unnecessary RenderObject parameter.
551         (WebCore::CachedImage::addClientForRenderer): Special variant of addClient(), overriding the existing in CachedResource.
552         (WebCore::CachedImage::removeClientForRenderer): Special variant of removeClient(), that also clears the image in the ImageBySizeCache.
553         (WebCore::CachedImage::createImage): Refactor SVGImage creation into createSVGImage() free function, to be useable from lookupOrCreateImageForRenderer().
554         * loader/cache/CachedImage.h: Expose removeClientForRenderer().
555         * page/ChromeClient.h:
556         (WebCore::ChromeClient::isSVGImageChromeClient): Used to identify whether a RenderSVGRoot is embedded through a SVGImage. Returns false, by default.
557         * rendering/ImageBySizeCache.cpp:
558         (WebCore::ImageBySizeCache::addClient): Assert the passed renderer is valid.
559         (WebCore::ImageBySizeCache::removeClient): Ditto. Allow removeClient() to be called w/o prio addClient() usage.
560         (WebCore::ImageBySizeCache::setClient): New helper function, that combines the usage of addClient/removeClient, for the use in CachedImage.
561         (WebCore::ImageBySizeCache::imageForSize): Respect empty sizes, just return 0, instead of asserting.
562         (WebCore::ImageBySizeCache::imageForRenderer): Added a helper that retrieves an image for a renderer, by lookup up its size and using imageForSize().
563         * rendering/ImageBySizeCache.h: Expose setClient() & imageForRenderer().
564         * rendering/RenderBoxModelObject.cpp: Implement CSS 2.1 intrinsic size negotiation for images.
565         (WebCore::resolveWidthForRatio): New inline helper function used bz calculateImageIntrinsicDimensions.
566         (WebCore::resolveHeightForRatio): Ditto.
567         (WebCore::resolveAgainstIntrinsicWidthOrHeightAndRatio): Ditto.
568         (WebCore::resolveAgainstIntrinsicRatio):  Ditto.
569         (WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions): New helper function, containing the main algorithm, which is a pure transcription of the spec.
570         (WebCore::RenderBoxModelObject::calculateFillTileSize): Use new calculateImageIntrinsicDimensions() helper to figure out the intrinsic size.
571         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry): Propagate calculateFillTileSize() result to the image resource, via setContainerSizeForRenderer().
572         (WebCore::RenderBoxModelObject::paintNinePieceImage): Use new calculateImageIntrinsicDimensions() helper to figure out the intrinsic size.
573         * rendering/RenderBoxModelObject.h: Clarify some variable names, added calculateImageIntrinsicDimensions().
574         * rendering/RenderImage.cpp:
575         (WebCore::RenderImage::RenderImage): Use IntSize(), instead of IntSize(0, 0).
576         (WebCore::RenderImage::updateIntrinsicSizeIfNeeded): Refactored from imageDimensionsChanged().
577         (WebCore::RenderImage::imageDimensionsChanged): Use updateIntrinsicSizeIfNeeded().
578         (WebCore::RenderImage::computeReplacedLogicalWidth): Use RenderReplaced::computeReplacedLogicalWidth() exclusively. For this to work, the intrinsic size must be correct.
579         (WebCore::RenderImage::computeIntrinsicRatioInformation): Default implementation for non-SVGImages.
580         (WebCore::RenderImage::needsPreferredWidthsRecalculation): Return true, just like RenderPart, if embeddedContentBox is not null.
581         (WebCore::RenderImage::embeddedContentBox): Returns the RenderSVGRoot* renderer of the embedded SVG, if possible.
582         * rendering/RenderImage.h: Remove isLogicalWidth/HeightSpecified() / computeReplacedLogicalHeight() / calcAspectRatioLogicalWidth/Height().
583         * rendering/RenderImageResource.cpp:
584         (WebCore::RenderImageResource::setContainerSizeForRenderer): Pass around new "float containerZoomFactor" parameter.
585         * rendering/RenderImageResourceStyleImage.cpp:
586         (WebCore::RenderImageResourceStyleImage::image): embeddedContentBox() is now calling image() earlier than before. We now have to handle the case that the image is pending.
587         (WebCore::RenderImageResourceStyleImage::setContainerSizeForRenderer): Pass zoom factor.
588         * rendering/RenderImageResourceStyleImage.h:
589         * rendering/RenderListMarker.cpp:
590         (WebCore::RenderListMarker::computePreferredLogicalWidths): Pass effective zoom to setContainerSizeForRenderer().
591         * rendering/RenderReplaced.cpp:
592         (WebCore::RenderReplaced::computeIntrinsicLogicalWidth): Generalized this code, as RenderImage is using it as well now. Marginal changes needed.
593         (WebCore::RenderReplaced::computeIntrinsicLogicalHeight): Ditto.
594         (WebCore::RenderReplaced::computeReplacedLogicalWidth): Ditto.
595         * rendering/style/StyleCachedImage.cpp:
596         (WebCore::StyleCachedImage::computeIntrinsicDimensions): Stop passing m_renderer to CachedImage, it's no longer needed.
597         (WebCore::StyleCachedImage::setContainerSizeForRenderer): Add "float containerZoomFactor" parameter.
598         (WebCore::StyleCachedImage::addClient): Forward to new addClientForRenderer().
599         (WebCore::StyleCachedImage::removeClient): Call new removeClientForRenderer() instead of removeClient(), so the ImageBySizeCache is also updated.
600         * rendering/style/StyleCachedImage.h: Add "float containerZoomFactor" parameter to setContainerSizeForRenderer.
601         * rendering/style/StyleGeneratedImage.h:
602         (WebCore::StyleGeneratedImage::setContainerSizeForRenderer): Ditto.
603         * rendering/style/StyleImage.h: Ditto.
604         * rendering/style/StylePendingImage.h:
605         (WebCore::StylePendingImage::setContainerSizeForRenderer): Ditto.
606         * rendering/svg/RenderSVGImage.cpp:
607         (WebCore::RenderSVGImage::layout): Always supply a container size when embedding SVGs in <svg:image>.
608         * rendering/svg/RenderSVGRoot.cpp: Move "override container size" from SVGSVGElement into RenderSVGRoot, where it belongs.
609         (WebCore::RenderSVGRoot::isEmbeddedThroughImageElement): Add helper method to determine whether we're loaded through SVGImage.
610         (WebCore::RenderSVGRoot::computeReplacedLogicalWidth): If we have a valid container size, it has precendence (only supplied via external SVGImages).
611         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight): Ditto.
612         (WebCore::RenderSVGRoot::layout): Remove calcViewport() usage, no need to track/override the viewport size anymore, all done in coputeReplacedLogical* now.
613         (WebCore::RenderSVGRoot::paint): Use borderBoxRect() which now always matches the previously computed m_viewportSize. 
614         (WebCore::RenderSVGRoot::computeRectForRepaint): Ditto.
615         * rendering/svg/RenderSVGRoot.h: Move "override container size" from SVGSVGElement into RenderSVGRoot, where it belongs.
616         (WebCore::RenderSVGRoot::containerSize):
617         (WebCore::RenderSVGRoot::setContainerSize):
618         * svg/SVGLength.cpp:
619         (WebCore::SVGLength::determineViewport): Resolve lengths against override container size in documents embedded through SVGImage.
620         * svg/SVGSVGElement.cpp: Remove "override container size" handling from SVGSVGElement.
621         (WebCore::SVGSVGElement::SVGSVGElement): Ditto.
622         (WebCore::SVGSVGElement::currentViewBoxRect): Always synthesize a viewBox, if we're embedded through SVGImage, as demanded by SVG 1.1 2nd Edition.
623         * svg/SVGSVGElement.h:
624         * svg/graphics/SVGImage.cpp:
625         (WebCore::SVGImageChromeClient::setObserver): Helper function.
626         (WebCore::SVGImageChromeClient::isSVGImageChromeClient): Return true, used to identify whether RenderSVGRoot is embedded through SVGImage.
627         (WebCore::SVGImage::setContainerZoom): Forwarded to Page::setPageZoomFactor.
628         (WebCore::SVGImage::setContainerSize): Assert that container size is not empty. We should never receive an empty container size.
629         (WebCore::SVGImage::usesContainerSize): Adapt to override container size changes, it now lives in RenderSVGRoot instead of SVGSVGElement.
630         (WebCore::SVGImage::size): New algorithm to figure out the size of an embedded SVG, as demanded by the CSS/SVG specs.
631         (WebCore::SVGImage::draw): Stop calling layout() while painting!
632         (WebCore::SVGImage::embeddedContentBox): Add helper which returns the RenderSVGRoot of the document.
633         (WebCore::SVGImage::computeIntrinsicDimensions): Implement intrinsic ratio calculation. 
634         (WebCore::SVGImage::dataChanged): Force calling FrameView::setCanHaveScrollbars(false), as SVG images now always synthesize a viewBox, and thus never receive scrollbars.
635         * svg/graphics/SVGImage.h:
636
637 2011-10-26  Kenneth Rohde Christiansen  <kenneth@webkit.org>
638
639         Properly suspend/resume Geolocation/DeviceMotion/DeviceOrientation objects
640         https://bugs.webkit.org/show_bug.cgi?id=70328
641
642         Reviewed by Simon Hausmann.
643
644         Also remove checks for m_client in DeviceMotionController as it can never be null.
645
646         No new tests, as the suspend/resume functionality is not fully working yet.
647
648         * dom/DeviceMotionController.cpp:
649         (WebCore::DeviceMotionController::timerFired):
650         (WebCore::DeviceMotionController::addListener):
651         (WebCore::DeviceMotionController::removeListener):
652         (WebCore::DeviceMotionController::removeAllListeners):
653         (WebCore::DeviceMotionController::suspend):
654         (WebCore::DeviceMotionController::resume):
655         * dom/DeviceMotionController.h:
656         * dom/DeviceOrientationController.cpp:
657         (WebCore::DeviceOrientationController::suspend):
658         (WebCore::DeviceOrientationController::resume):
659         * dom/DeviceOrientationController.h:
660         * dom/Document.cpp:
661         (WebCore::Document::suspendActiveDOMObjects):
662         (WebCore::Document::resumeActiveDOMObjects):
663         (WebCore::Document::stopActiveDOMObjects):
664         * dom/Document.h:
665         * dom/ScriptExecutionContext.h:
666         * page/GeolocationController.cpp:
667         (WebCore::GeolocationController::GeolocationController):
668         (WebCore::GeolocationController::removeObserver):
669         (WebCore::GeolocationController::suspend):
670         (WebCore::GeolocationController::resume):
671         * page/GeolocationController.h:
672
673 2011-10-26  Pavel Feldman  <pfeldman@google.com>
674
675         Not reviewed: follow up to 98236 - moved inspector settings initialization earlier to unbreak settings panel.
676
677         * inspector/front-end/TextEditorModel.js:
678         (WebInspector.TextEditorModel):
679
680 2011-10-26  Zalan Bujtas  <zbujtas@gmail.com>
681
682         Name viewport change event consistently.
683         https://bugs.webkit.org/show_bug.cgi?id=70901
684
685         Reviewed by Kenneth Rohde Christiansen.
686
687         Use ViewportPropertiesDidChange term consistently throughout WebKit.
688
689         No tests needed as the change is only method renaming.
690
691         * page/Chrome.cpp:
692         (WebCore::Chrome::dispatchViewportPropertiesDidChange):
693         * page/Chrome.h:
694         * page/ChromeClient.h:
695         (WebCore::ChromeClient::dispatchViewportPropertiesDidChange):
696         * page/Page.cpp:
697         (WebCore::Page::updateViewportArguments):
698
699 2011-10-25  Stephen White  <senorblanco@chromium.org>
700
701         [chromium] Canvas2D should rate-limit drawing to prevent swamping the GPU process.
702         https://bugs.webkit.org/show_bug.cgi?id=70367
703
704         Reviewed by James Robinson.
705
706         Sadly, we don't have infrastructure to test this kind of GPU swamping
707         yet.
708
709         * WebCore.gypi:
710         Add RateLimiter.* to the Chromium build.
711         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
712         (WebCore::Canvas2DLayerChromium::contentChanged):
713         When the layer is notified that the contents have changed, ping the
714         rate limiter.
715         * platform/graphics/chromium/Canvas2DLayerChromium.h:
716         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
717         (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
718         Call (new) virtual contentChanged() on a layer when its contents have
719         been changed (e.g., by a drawing call).
720         * platform/graphics/chromium/LayerChromium.h:
721         (WebCore::LayerChromium::contentChanged):
722         New virtual contentChanged().
723         * platform/graphics/chromium/RateLimiter.cpp: Added.
724         (WebCore::RateLimiter::create):
725         Rate limiter factory function.
726         (WebCore::RateLimiter::RateLimiter):
727         (WebCore::RateLimiter::start):
728         Public API to start rate limiting a context.
729         (WebCore::RateLimiter::stop):
730         Public API to stop rate limiting a context.
731         (WebCore::RateLimiter::rateLimitContext):
732         Internal timer callback when a context should be rate limited.
733         * platform/graphics/chromium/RateLimiter.h: Added.
734         * platform/graphics/chromium/WebGLLayerChromium.cpp:
735         (WebCore::WebGLLayerChromium::WebGLLayerChromium):
736         Remove rate limiting timer and extension check (moved to RateLimiter).
737         (WebCore::WebGLLayerChromium::contentChanged):
738         The function formerly known as setTextureUpdated(), now renamed to
739         match the base class virtual contentChanged().  Call rate limiter in
740         CCLayerTreeHost (local implementation removed).
741         (WebCore::WebGLLayerChromium::setContext):
742         When the context is changed, stop the pending rate limiter on the old
743         context.  Remove extension check (moved to RateLimiter).
744         * platform/graphics/chromium/WebGLLayerChromium.h:
745         Remove rate limiting timer and extension check (moved to RateLimiter).
746         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
747         (WebCore::CCLayerTreeHost::startRateLimiter):
748         Public API for starting per-context rate limiter.
749         (WebCore::CCLayerTreeHost::stopRateLimiter):
750         Public API for stopping per-context rate limiter.
751         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
752         Implementation of per-GraphicsContext3D RateLimiter.
753
754
755 2011-10-26  Pavel Feldman  <pfeldman@chromium.org>
756
757         Not reviewed: fixing inspector extensions tests.
758
759         * inspector/front-end/ConsoleMessage.js:
760         (WebInspector.ConsoleMessageImpl):
761         * inspector/front-end/ExtensionServer.js:
762         (WebInspector.ExtensionServer.prototype._onAddConsoleMessage):
763
764 2011-10-26  Balazs Kelemen  <kbalazs@webkit.org>
765
766         ParallelJobs path of FEConvolveMatrix is erroneous
767         https://bugs.webkit.org/show_bug.cgi?id=70409
768
769         Reviewed by Zoltan Herczeg.
770
771         Covered by existing tests.
772
773         * platform/graphics/filters/FEConvolveMatrix.cpp:
774         (WebCore::FEConvolveMatrix::fastSetInteriorPixels):
775         Reject the silly idea that bytes per pixel ratio is 3 in preserveAlphaValues mode.
776         The bug was hidden so far because that computation has no effect when we are going
777         with the full inferior area in one round (in that case clipBottom and yEnd are equals
778         and the value of the expression is always 0). With ParallelJobs we process sub-areas
779         on each thread which has triggered the issue.
780
781 2011-10-26  Sheriff Bot  <webkit.review.bot@gmail.com>
782
783         Unreviewed, rolling out r98393.
784         http://trac.webkit.org/changeset/98393
785         https://bugs.webkit.org/show_bug.cgi?id=70892
786
787         "Compilation is broken on Chromium Webkit Mac Builder (dbg) "
788         (Requested by yurys on #webkit).
789
790         * platform/graphics/chromium/LayerChromium.h:
791         (WebCore::LayerChromium::setMasksToBounds):
792         (WebCore::LayerChromium::setMaskLayer):
793
794 2011-10-26  Pavel Feldman  <pfeldman@google.com>
795
796         Web Inspector: order console message parameters for better optional parameters handling.
797         https://bugs.webkit.org/show_bug.cgi?id=70809
798
799         Reviewed by Yury Semikhatsky.
800
801         * inspector/Inspector.json:
802         * inspector/front-end/ConsoleMessage.js:
803         (WebInspector.ConsoleMessageImpl):
804         (WebInspector.ConsoleMessageImpl.prototype._formatMessage):
805         * inspector/front-end/ConsoleModel.js:
806         (WebInspector.ConsoleModel.prototype._messageRepeatCountUpdated):
807         (WebInspector.ConsoleMessage.create):
808         (WebInspector.ConsoleDispatcher.prototype.messageAdded):
809         * inspector/front-end/ConsoleView.js:
810         (WebInspector.ConsoleCommandResult):
811         (WebInspector.ConsoleMessage.create):
812         * inspector/front-end/ExtensionServer.js:
813         (WebInspector.ExtensionServer.prototype._onAddConsoleMessage):
814         * inspector/front-end/NetworkManager.js:
815         (WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
816         * inspector/front-end/inspector.js:
817         (WebInspector.log.logMessage):
818         (WebInspector.log):
819
820 2011-10-26  Vsevolod Vlasov  <vsevik@chromium.org>
821
822         Web Inspector: Debugger fails when there is an invalid watch expression.
823         https://bugs.webkit.org/show_bug.cgi?id=70718
824
825         Reviewed by Pavel Feldman.
826
827         Test: inspector/debugger/watch-expressions-panel-switch.html
828
829         * inspector/front-end/ScriptsPanel.js:
830         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
831
832 2011-10-26  Fady Samuel  <fsamuel@chromium.org>
833
834         Page Scale Factor broken when navigating history on pages with child frames
835         https://bugs.webkit.org/show_bug.cgi?id=70459
836
837         Reviewed by Darin Fisher.
838
839         With frameScaleFactor now always returning 1.0 for subframes and pageScaleFactor for the mainFrame,
840         and there being only a single pageScaleFactor, history for scaling is broken. Scaling history is
841         saved on a per frame basis but restored, overriding the per-page pageScaleFactor multiple times.
842         As a result, sometimes pages that have subframes end up getting a scale factor of 1.0 instead
843         of the correct scale factor that was assigned to the main frame.
844
845         No new tests because I don't know how to test this.
846
847         * loader/HistoryController.cpp:
848         (WebCore::HistoryController::restoreScrollPositionAndViewState):
849
850 2011-10-26  Sheriff Bot  <webkit.review.bot@gmail.com>
851
852         Unreviewed, rolling out r98429.
853         http://trac.webkit.org/changeset/98429
854         https://bugs.webkit.org/show_bug.cgi?id=70881
855
856         "webkit_gpu_tests fail in Chromium" (Requested by yurys on
857         #webkit).
858
859         * platform/graphics/chromium/LayerRendererChromium.cpp:
860         (WebCore::LayerRendererChromium::initialize):
861         * platform/graphics/chromium/WebGLLayerChromium.cpp:
862         (WebCore::WebGLLayerChromium::layerRendererContext):
863         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
864         (WebCore::CCHeadsUpDisplay::enabled):
865         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
866         (WebCore::CCLayerTreeHost::initialize):
867         (WebCore::CCLayerTreeHost::context):
868         (WebCore::CCLayerTreeHost::setNeedsAnimate):
869         (WebCore::CCLayerTreeHost::setNeedsCommitThenRedraw):
870         (WebCore::CCLayerTreeHost::setNeedsRedraw):
871         (WebCore::CCLayerTreeHost::composite):
872         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
873         (WebCore::CCSettings::CCSettings):
874         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
875         (WebCore::CCThreadProxy::setThread):
876         * platform/graphics/chromium/cc/CCThreadProxy.h:
877
878 2011-10-26  Ben Wells  <benwells@chromium.org>
879
880         Canvas drawImage with SourceIn, DestinationIn, SourceOut, DestinationAtop and Copy have errors
881         https://bugs.webkit.org/show_bug.cgi?id=66920
882
883         Reviewed by James Robinson.
884
885         Test: fast/canvas/canvas-composite-image.html
886
887         Use the same method as fills to handle composited drawImage calls that will affect the whole
888         canvas. To do this code used when doing fills has been factored into seperate functions and
889         used by drawImage. Some functions used to do these types of operations have also been renamed.
890
891         * html/canvas/CanvasRenderingContext2D.cpp:
892         (WebCore::isFullCanvasCompositeMode):
893         (WebCore::CanvasRenderingContext2D::fill):
894         (WebCore::CanvasRenderingContext2D::fillRect):
895         (WebCore::CanvasRenderingContext2D::drawImage):
896         (WebCore::CanvasRenderingContext2D::calculateCompositingBufferRect):
897         (WebCore::CanvasRenderingContext2D::createCompositingBuffer):
898         (WebCore::CanvasRenderingContext2D::compositeBuffer):
899         (WebCore::CanvasRenderingContext2D::fullCanvasCompositedDrawImage):
900         (WebCore::CanvasRenderingContext2D::fullCanvasCompositedFill):
901         * html/canvas/CanvasRenderingContext2D.h:
902
903 2011-10-25  Sheriff Bot  <webkit.review.bot@gmail.com>
904
905         Unreviewed, rolling out r98379.
906         http://trac.webkit.org/changeset/98379
907         https://bugs.webkit.org/show_bug.cgi?id=70875
908
909         Did not pass on JSC ports (Requested by abarth on #webkit).
910
911         * bindings/scripts/CodeGeneratorJS.pm:
912         (GenerateHeader):
913         (GenerateImplementation):
914         * bindings/scripts/CodeGeneratorV8.pm:
915         (GenerateHeader):
916         (GenerateArgumentsCountCheck):
917         (GenerateImplementation):
918         * html/canvas/CanvasRenderingContext2D.idl:
919         * page/DOMWindow.idl:
920
921 2011-10-25  Sheriff Bot  <webkit.review.bot@gmail.com>
922
923         Unreviewed, rolling out r98346.
924         http://trac.webkit.org/changeset/98346
925         https://bugs.webkit.org/show_bug.cgi?id=70874
926
927         Breaks JSC-based bots. (Requested by pfeldman on #webkit).
928
929         * inspector/front-end/ScriptsPanel.js:
930         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
931
932 2011-10-25  Nat Duca  <nduca@chromium.org>
933
934         [chromium] Enable threaded compositing via CCThreadProxy::hasThread only
935         https://bugs.webkit.org/show_bug.cgi?id=70838
936
937         Reviewed by James Robinson.
938
939         * platform/graphics/chromium/LayerRendererChromium.cpp:
940         (WebCore::LayerRendererChromium::initialize):
941         * platform/graphics/chromium/WebGLLayerChromium.cpp:
942         (WebCore::WebGLLayerChromium::layerRendererContext):
943         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
944         (WebCore::CCHeadsUpDisplay::enabled):
945         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
946         (WebCore::CCLayerTreeHost::initialize):
947         (WebCore::CCLayerTreeHost::context):
948         (WebCore::CCLayerTreeHost::setNeedsAnimate):
949         (WebCore::CCLayerTreeHost::setNeedsCommitThenRedraw):
950         (WebCore::CCLayerTreeHost::setNeedsRedraw):
951         (WebCore::CCLayerTreeHost::composite):
952         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
953         (WebCore::CCSettings::CCSettings):
954         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
955         (WebCore::CCThreadProxy::hasThread):
956         * platform/graphics/chromium/cc/CCThreadProxy.h:
957
958 2011-10-25  Xiaomei Ji  <xji@chromium.org>
959
960         --webkit-visual-word does not work in multi-line
961         https://bugs.webkit.org/show_bug.cgi?id=61344
962
963         Reviewed by Ryosuke Niwa.
964
965         Get next or previous root inline box (which is not in the same
966         render object as the current root inline box) by traversing DOM node.
967
968         Test: editing/selection/move-by-word-visually-inline-block-positioned-element.html
969
970         * editing/visible_units.cpp:
971         (WebCore::previousRootInlineBox):
972         (WebCore::nextRootInlineBox):
973         (WebCore::leftInlineBox):
974         (WebCore::rightInlineBox):
975
976 2011-10-25  Adam Barth  <abarth@webkit.org>
977
978         JSEventTarget.cpp has a bunch of unnessary includes
979         https://bugs.webkit.org/show_bug.cgi?id=70865
980
981         Reviewed by Eric Seidel.
982
983         In the process of removing these includes, I noticed we had a bunch of
984         non-autogenerated code in this file, which I've now autogenerated.
985
986         * bindings/js/JSEventTarget.cpp:
987         (WebCore::toEventTarget):
988             - One subtly here is the outter static_cast, which is caused by an
989               inheritance infelicity in JavaScriptAudioNode, which I've noted
990               with a FIXME.  In any case, the extra static_cast shouldn't cause
991               any trouble.
992         * webaudio/JavaScriptAudioNode.h:
993
994 2011-10-25  Adam Barth  <abarth@webkit.org>
995
996         V8DOMWrapper.cpp has unneeded header includes
997         https://bugs.webkit.org/show_bug.cgi?id=70863
998
999         Reviewed by Eric Seidel.
1000
1001         * bindings/v8/V8DOMWrapper.cpp:
1002
1003 2011-10-25  Mark Hahnenberg  <mhahnenberg@apple.com>
1004
1005         Resetting baseline for test bindings
1006
1007         Unreviewed preemptive build fix
1008
1009         No new tests.
1010
1011         * bindings/scripts/test/JS/JSTestObj.cpp:
1012         * bindings/scripts/test/JS/JSTestObj.h:
1013
1014 2011-10-25  Mark Hahnenberg  <mhahnenberg@apple.com>
1015
1016         Remove deletePropertyVirtual
1017         https://bugs.webkit.org/show_bug.cgi?id=70738
1018
1019         Reviewed by Geoffrey Garen.
1020
1021         No new tests.
1022
1023         Removed all declarations and definitions of deletePropertyVirtual.
1024         Also replaced all call sites to deletePropertyVirtual with a 
1025         corresponding lookup in the MethodTable.
1026
1027         * WebCore.exp.in:
1028         * bindings/js/JSDOMStringMapCustom.cpp:
1029         (WebCore::JSDOMStringMap::deleteProperty):
1030         * bindings/js/JSDOMWindowCustom.cpp:
1031         (WebCore::JSDOMWindow::deleteProperty):
1032         * bindings/js/JSDOMWindowShell.cpp:
1033         (WebCore::JSDOMWindowShell::deleteProperty):
1034         * bindings/js/JSDOMWindowShell.h:
1035         * bindings/js/JSHistoryCustom.cpp:
1036         (WebCore::JSHistory::deleteProperty):
1037         * bindings/js/JSLocationCustom.cpp:
1038         (WebCore::JSLocation::deleteProperty):
1039         * bindings/js/JSStorageCustom.cpp:
1040         (WebCore::JSStorage::deleteProperty):
1041         * bindings/js/ScriptObject.cpp:
1042         (WebCore::ScriptGlobalObject::remove):
1043         * bindings/objc/WebScriptObject.mm:
1044         (-[WebScriptObject removeWebScriptKey:]):
1045         * bindings/scripts/CodeGeneratorJS.pm:
1046         (GenerateHeader):
1047         * bridge/NP_jsobject.cpp:
1048         (_NPN_RemoveProperty):
1049         * bridge/jni/jni_jsobject.mm:
1050         (JavaJSObject::removeMember):
1051         * bridge/objc/objc_runtime.h:
1052         * bridge/objc/objc_runtime.mm:
1053         * bridge/runtime_array.cpp:
1054         * bridge/runtime_array.h:
1055         * bridge/runtime_object.cpp:
1056         * bridge/runtime_object.h:
1057
1058 2011-10-25  Chris Fleizach  <cfleizach@apple.com>
1059
1060         AX: WebKit does not expose HTML label for slider elements
1061         https://bugs.webkit.org/show_bug.cgi?id=70856
1062
1063         Reviewed by Darin Adler.
1064
1065         Test: platform/mac/accessibility/slider-allows-title-ui-element.html
1066
1067         * accessibility/AccessibilitySlider.h:
1068         (WebCore::AccessibilitySlider::isControl):
1069         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
1070         (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
1071
1072 2011-10-25  Mark Hahnenberg  <mhahnenberg@apple.com>
1073
1074         Remove putVirtual
1075         https://bugs.webkit.org/show_bug.cgi?id=70740
1076
1077         Reviewed by Geoffrey Garen.
1078
1079         No new tests.
1080
1081         Removed all declarations and definitions of putVirtual.
1082         Also replaced all call sites to putVirtual with a 
1083         corresponding lookup in the MethodTable.
1084
1085         * WebCore.exp.in:
1086         * bindings/js/JSDOMWindowCustom.cpp:
1087         * bindings/js/JSDOMWindowShell.cpp:
1088         (WebCore::JSDOMWindowShell::put):
1089         * bindings/js/JSDOMWindowShell.h:
1090         * bindings/js/JSPluginElementFunctions.cpp:
1091         (WebCore::runtimeObjectCustomPut):
1092         * bindings/js/SerializedScriptValue.cpp:
1093         (WebCore::CloneDeserializer::putProperty):
1094         * bindings/objc/WebScriptObject.mm:
1095         (-[WebScriptObject setValue:forKey:]):
1096         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
1097         * bindings/scripts/CodeGeneratorJS.pm:
1098         (GenerateHeader):
1099         (GenerateImplementation):
1100         * bridge/NP_jsobject.cpp:
1101         (_NPN_SetProperty):
1102         * bridge/jni/jni_jsobject.mm:
1103         (JavaJSObject::setMember):
1104         (JavaJSObject::setSlot):
1105         * bridge/objc/objc_runtime.h:
1106         * bridge/objc/objc_runtime.mm:
1107         * bridge/qt/qt_runtime.cpp:
1108         (JSC::Bindings::convertQVariantToValue):
1109         * bridge/runtime_array.cpp:
1110         * bridge/runtime_array.h:
1111         * bridge/runtime_object.cpp:
1112         * bridge/runtime_object.h:
1113         * bridge/testqtbindings.cpp:
1114         (main):
1115
1116 2011-10-25  Adam Barth  <abarth@webkit.org>
1117
1118         EventTargetFactory.in is not sorted
1119         https://bugs.webkit.org/show_bug.cgi?id=70855
1120
1121         Reviewed by Eric Seidel.
1122
1123         This patch sorts the file.  I was not able to measure a performance
1124         difference using the microbenchmark included with this patch.
1125
1126         * dom/EventTargetFactory.in:
1127
1128 2011-10-25  Adam Barth  <abarth@webkit.org>
1129
1130         Attempt to fix the Windows build.  Windows mashes all these files into
1131         one, which doesn't respect the compilation unit rules of C++.
1132
1133         * bindings/js/JSEventCustom.cpp:
1134         * bindings/js/JSEventTarget.cpp:
1135
1136 2011-10-25  Ryosuke Niwa  <rniwa@webkit.org>
1137
1138         Moving to the start of line should not place the caret outside of the table
1139         https://bugs.webkit.org/show_bug.cgi?id=70757
1140
1141         Reviewed by Chang Shu.
1142
1143         The bug was caused by positionAvoidingFirstPositionInTable. Get rid of the function.
1144
1145         Test: editing/selection/table-lineboundary.html
1146
1147         * editing/visible_units.cpp:
1148         (WebCore::startPositionForLine):
1149
1150 2011-10-25  Beth Dakin  <bdakin@apple.com>
1151
1152         https://bugs.webkit.org/show_bug.cgi?id=70852
1153         Setting up a HiDPI base-level GraphicsContext should be more straightforward for 
1154         WebKit2
1155
1156         Reviewed by Dan Bernstein.
1157
1158         This patch removes the old cg-only GraphicsContext::setBaseCTM() api, and adds 
1159         platform-independent GraphicsContext::applyDeviceScaleFactor().
1160         * WebCore.exp.in:
1161         * platform/graphics/GraphicsContext.cpp:
1162         (WebCore::GraphicsContext::platformApplyDeviceScaleFactor):
1163         (WebCore::GraphicsContext::applyDeviceScaleFactor):
1164         * platform/graphics/GraphicsContext.h:
1165         * platform/graphics/cg/GraphicsContextCG.cpp:
1166         (WebCore::GraphicsContext::platformApplyDeviceScaleFactor):
1167
1168         Since this patch removes GraphicsContext::setBaseCTM(), this code has been 
1169         reverted to do what it used to do before that was added; it just calls into 
1170         WebCoreSystemInterface directly.
1171         * platform/graphics/cg/ImageCG.cpp:
1172         (WebCore::Image::drawPattern):
1173
1174 2011-10-25  Anders Carlsson  <andersca@apple.com>
1175
1176         Plug-ins have to use JavaScript to find out the current device scale factor
1177         https://bugs.webkit.org/show_bug.cgi?id=67225
1178
1179         Reviewed by Darin Adler.
1180
1181         Test: platform/mac-wk2/plugins/contents-scale-factor.html
1182
1183         Add NPNVcontentsScaleFactor, as per https://wiki.mozilla.org/NPAPI:ContentsScaleFactor.
1184
1185         * plugins/npapi.h:
1186
1187 2011-10-25  Adam Klein  <adamk@chromium.org>
1188
1189         Forward declare MutationObserverEntry as a struct to fix clang build
1190         https://bugs.webkit.org/show_bug.cgi?id=70853
1191
1192         Reviewed by Ryosuke Niwa.
1193
1194         Node.h forward declared MutationObserverEntry as a class, and clang
1195         complains if the two declarations don't match.
1196
1197         * dom/Node.h:
1198
1199 2011-10-25  Dan Bernstein  <mitz@apple.com>
1200
1201         Caret can be positioned or repainted incorrectly in flipped-blocks multi-column blocks
1202         https://bugs.webkit.org/show_bug.cgi?id=70851
1203
1204         Reviewed by Dave Hyatt.
1205
1206         * manual-tests/caret-in-columns-flipped.html: Added.
1207         * rendering/RenderBlock.cpp:
1208         (WebCore::RenderBlock::adjustForColumns): Removed flipped-blocks writing mode considerations
1209         from this function, since not all callers were expecting it to account for flippedness. This makes
1210         it similar to adjustRectForColumns() in not adjusting for flippedness.
1211         * rendering/RenderBox.cpp:
1212         (WebCore::RenderBox::offsetFromContainer): In the columns case, account for flipped-blocks modes
1213         by first mapping the point and the offset to non-flipped, non-columns space, then adjusting for
1214         columns, then flipping.
1215
1216 2011-10-25  Michal Mocny  <mmocny@google.com>
1217
1218         LayerRendererChromium::setVisible called needlessly without a visibility change
1219         https://bugs.webkit.org/show_bug.cgi?id=70766
1220
1221         Reviewed by Kenneth Russell.
1222
1223         Check that visibility has actually changed before calling LayerRendererChromium::setVisible
1224
1225         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1226         (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
1227         (WebCore::CCLayerTreeHostImpl::setVisible):
1228         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1229
1230 2011-10-25  Anders Carlsson  <andersca@apple.com>
1231
1232         REGRESSION(97821): HistoryController::itemsAreClones crashes a lot
1233         https://bugs.webkit.org/show_bug.cgi?id=70827
1234         <rdar://problem/10342925>
1235
1236         Reviewed by Adam Barth.
1237
1238         Check that m_currentItem is non-null before passing it to itemsAreClones. While I wasn't
1239         able to make a test case that would reproduce this crash, we do check m_currentItem for null
1240         everywhere else, and the crash log indicates that this would fix the crash.
1241
1242         * loader/HistoryController.cpp:
1243         (WebCore::HistoryController::recursiveUpdateForCommit):
1244
1245 2011-10-25  Adam Barth  <abarth@webkit.org>
1246
1247         EventTarget.h shouldn't need to know about every feature and ifdef
1248         https://bugs.webkit.org/show_bug.cgi?id=70659
1249
1250         Reviewed by Darin Adler.
1251
1252         This patch follows the approach of Event.h and introduces an
1253         interfaceName virtual function that returns the name of the DOM
1254         interface for the concrete type of the object.  This function lets us
1255         remove a large number of fake dynamic casts.
1256
1257         * CMakeLists.txt:
1258         * CodeGenerators.pri:
1259         * DerivedSources.make:
1260         * GNUmakefile.am:
1261         * WebCore.gyp/WebCore.gyp:
1262         * WebCore.gyp/scripts/action_makenames.py:
1263             - Teach action_makenames how to handle the new "in" file.
1264         * WebCore.gypi:
1265         * WebCore.vcproj/WebCore.vcproj:
1266         * WebCore.xcodeproj/project.pbxproj:
1267         * bindings/js/JSEventTarget.cpp:
1268         (WebCore::toJS):
1269             - Use the new autogenerated macro to remove a large amount of
1270               feature-specific code.
1271         * bindings/js/WorkerScriptController.cpp:
1272         (WebCore::WorkerScriptController::initScript):
1273         * bindings/objc/DOM.mm:
1274         (kit):
1275             - The SVGElementInstance branch was never taken previously because
1276               SVGElementInstance::toNode returns a non-NULL value. This code
1277               was introduced in http://trac.webkit.org/changeset/42618 and
1278               doesn't appear to have ever worked as the author intended.
1279         * bindings/v8/V8DOMWrapper.cpp:
1280         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1281             - Use the new autogenerated macro to remove a large amount of
1282               feature-specific code.
1283         * dom/EventNames.cpp:
1284         (WebCore::EventNames::EventNames):
1285         * dom/EventNames.h:
1286         * dom/EventTarget.cpp:
1287         * dom/EventTarget.h:
1288         * dom/EventTargetFactory.in: Added.
1289             - Add a new "in" file that lists all the EventTargets.
1290         * dom/LocalMediaStream.cpp:
1291         (WebCore::LocalMediaStream::interfaceName):
1292         * dom/LocalMediaStream.h:
1293         * dom/MediaStream.cpp:
1294         (WebCore::MediaStream::interfaceName):
1295         * dom/MediaStream.h:
1296         * dom/MessagePort.cpp:
1297         (WebCore::MessagePort::interfaceName):
1298         * dom/MessagePort.h:
1299         * dom/Node.cpp:
1300         (WebCore::Node::toNode):
1301         (WebCore::Node::interfaceName):
1302         * dom/Node.h:
1303         * dom/make_event_factory.pl:
1304             - Generalize make_event_factory.pl to be able to generate
1305               interfaces for different namespaces.
1306         * fileapi/FileReader.cpp:
1307         (WebCore::FileReader::interfaceName):
1308         * fileapi/FileReader.h:
1309         * fileapi/FileWriter.cpp:
1310         (WebCore::FileWriter::interfaceName):
1311         * fileapi/FileWriter.h:
1312         * loader/appcache/DOMApplicationCache.cpp:
1313         (WebCore::DOMApplicationCache::interfaceName):
1314         * loader/appcache/DOMApplicationCache.h:
1315         * notifications/Notification.cpp:
1316         (WebCore::Notification::interfaceName):
1317         * notifications/Notification.h:
1318         (WebCore::Notification::scriptExecutionContext):
1319         * p2p/PeerConnection.cpp:
1320         (WebCore::PeerConnection::interfaceName):
1321         * p2p/PeerConnection.h:
1322         * page/DOMWindow.cpp:
1323         (WebCore::DOMWindow::interfaceName):
1324         (WebCore::DOMWindow::toDOMWindow):
1325         * page/DOMWindow.h:
1326         * page/EventSource.cpp:
1327         (WebCore::EventSource::interfaceName):
1328         * page/EventSource.h:
1329         * storage/IDBDatabase.cpp:
1330         (WebCore::IDBDatabase::interfaceName):
1331         * storage/IDBDatabase.h:
1332         * storage/IDBRequest.cpp:
1333         (WebCore::IDBRequest::interfaceName):
1334         * storage/IDBRequest.h:
1335         * storage/IDBTransaction.cpp:
1336         (WebCore::IDBTransaction::interfaceName):
1337         * storage/IDBTransaction.h:
1338         * storage/IDBVersionChangeRequest.cpp:
1339         (WebCore::IDBVersionChangeRequest::interfaceName):
1340         * storage/IDBVersionChangeRequest.h:
1341         * svg/SVGElementInstance.cpp:
1342         (WebCore::SVGElementInstance::interfaceName):
1343         * svg/SVGElementInstance.h:
1344         (WebCore::SVGElementInstance::toNode):
1345         * webaudio/AudioContext.cpp:
1346         (WebCore::AudioContext::interfaceName):
1347         (WebCore::AudioContext::scriptExecutionContext):
1348         * webaudio/AudioContext.h:
1349         * webaudio/JavaScriptAudioNode.cpp:
1350         (WebCore::JavaScriptAudioNode::interfaceName):
1351         * webaudio/JavaScriptAudioNode.h:
1352         * websockets/WebSocket.cpp:
1353         (WebCore::WebSocket::interfaceName):
1354         * websockets/WebSocket.h:
1355         * workers/DedicatedWorkerContext.cpp:
1356         (WebCore::DedicatedWorkerContext::interfaceName):
1357         * workers/DedicatedWorkerContext.h:
1358         * workers/DefaultSharedWorkerRepository.cpp:
1359         (WebCore::SharedWorkerConnectTask::performTask):
1360         * workers/SharedWorker.cpp:
1361         (WebCore::SharedWorker::interfaceName):
1362         * workers/SharedWorker.h:
1363         * workers/SharedWorkerContext.cpp:
1364         (WebCore::SharedWorkerContext::interfaceName):
1365         * workers/SharedWorkerContext.h:
1366         * workers/Worker.cpp:
1367         (WebCore::Worker::interfaceName):
1368         * workers/Worker.h:
1369         * xml/XMLHttpRequest.cpp:
1370         (WebCore::XMLHttpRequest::interfaceName):
1371         * xml/XMLHttpRequest.h:
1372         * xml/XMLHttpRequestUpload.cpp:
1373         (WebCore::XMLHttpRequestUpload::interfaceName):
1374         * xml/XMLHttpRequestUpload.h:
1375
1376 2011-10-25  Pavel Podivilov  <podivilov@chromium.org>
1377
1378         Fix several minor problems in idls.
1379         https://bugs.webkit.org/show_bug.cgi?id=70811
1380
1381         Reviewed by Adam Barth.
1382
1383         This patch does not have any effect on generated bindings.
1384
1385         * dom/DataTransferItems.idl:
1386         * page/History.idl:
1387         * storage/IDBIndex.idl:
1388         * xml/XMLHttpRequest.idl:
1389
1390 2011-10-25  Nate Chapin  <japhet@chromium.org>
1391
1392         Make DocumentThreadableLoader a CachedResourceClient.
1393         This will allow us to cache ThreadableLoaderClients as
1394         appropriate in a later patch.
1395         https://bugs.webkit.org/show_bug.cgi?id=61225
1396
1397         Reviewed by Antti Koivisto.
1398
1399         No new tests, no functionality change intended.
1400
1401         * WebCore.gypi:
1402         * loader/DocumentThreadableLoader.cpp:
1403         (WebCore::DocumentThreadableLoader::notifyFinished): CachedResourceClients don't send separate callbacks
1404             for didFail() and didFinishLoading(), so we need to differentiate here.
1405         (WebCore::DocumentThreadableLoader::loadRequest): Call CachedResourceLoader::requestRawResource()
1406             instead of ResourceLoadScheduler::scheduleSubresourceLoad().
1407         * loader/DocumentThreadableLoader.h:
1408         * loader/cache/CachedRawResource.cpp:
1409         (WebCore::CachedRawResource::data): Handle the complexity of some ThreadableLoaderClients setting
1410             DoNotBufferData in ResoureLoaderOptions. If the DataBufferingPolicy is BufferData, then the
1411             'data' input parameter will contain all data received so far, and we need to determine the
1412             incremental data to forward to the clients. If the policy is DoNotBufferData, 'data' is just
1413             the incremental data.
1414         * loader/cache/CachedRawResource.h:
1415         * loader/cache/CachedResource.cpp:
1416         * loader/cache/CachedResource.h:
1417         (WebCore::CachedResource::preloadResult):
1418         (WebCore::CachedResource::didSendData):
1419         (WebCore::CachedResource::didDownloadData):
1420         (WebCore::CachedResource::setLoadFinishTime):
1421         (WebCore::CachedResource::loadFinishTime):
1422         * loader/cache/CachedResourceClient.h: Add several new callbacks needed by DocumentThreadableLoader.
1423         * loader/cache/CachedResourceRequest.cpp:
1424         (WebCore::CachedResourceRequest::didReceiveResponse): CachedResource::setResponse() can now cancel
1425             the request, so protect appropriately.
1426         * loader/cache/CachedResourceRequest.h:
1427         * loader/chromium/CachedRawResourceChromium.cpp: Added (plumb didDownloadData() to DocumentThreadableLoader).
1428         * loader/chromium/CachedResourceRequestChromium.cpp: Added (plumb didDownloadData() to DocumentThreadableLoader).
1429         * loader/chromium/DocumentThreadableLoaderChromium.cpp:
1430         * platform/network/BlobResourceHandle.cpp:
1431         (WebCore::BlobResourceHandle::notifyResponse): Protect before setting response, since it might kill us.
1432
1433 2011-10-25  Pavel Podivilov  <podivilov@chromium.org>
1434
1435         Get rid of optional parameters in the middle in IDLs.
1436         https://bugs.webkit.org/show_bug.cgi?id=70816
1437
1438         Reviewed by Adam Barth.
1439
1440         Optional parameters in the middle are prohibited by WebIDL spec.
1441
1442         * bindings/scripts/CodeGeneratorJS.pm:
1443         (GenerateHeader):
1444         (GenerateImplementation):
1445         * bindings/scripts/CodeGeneratorV8.pm:
1446         (GenerateHeader):
1447         (GenerateArgumentsCountCheck):
1448         (GenerateImplementation):
1449         * html/canvas/CanvasRenderingContext2D.idl:
1450         * page/DOMWindow.idl:
1451
1452 2011-10-25  Chris Evans  <cevans@google.com>
1453
1454         Manage the CSS property array length correctly
1455         https://bugs.webkit.org/show_bug.cgi?id=70783
1456
1457         Reviewed by Adam Barth.
1458
1459         * css/CSSParser.cpp:
1460         (WebCore::CSSParser::addProperty): don't allow max length to get out of sync with the buffer.
1461
1462 2011-10-25  Tony Chang  <tony@chromium.org>
1463
1464         avoid unnecessary layouts of flex items during the flex pass
1465         https://bugs.webkit.org/show_bug.cgi?id=70557
1466
1467         Reviewed by Ojan Vafai.
1468
1469         If the preferred size of a flex item is provided, we don't need to
1470         layout the flex item when computing the preferred size.  This allows
1471         us to only call layout on each flex item once in the common case.
1472
1473         No new tests, covered by existing tests.
1474
1475         * rendering/RenderFlexibleBox.cpp:
1476         (WebCore::RenderFlexibleBox::flowAwareLogicalWidthLengthForChild):
1477         (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
1478         (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
1479         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
1480         * rendering/RenderFlexibleBox.h:
1481
1482 2011-10-25  Fady Samuel  <fsamuel@chromium.org>
1483
1484         Crash in WebCore::RenderTableSection::addChild due to assert failure
1485         https://bugs.webkit.org/show_bug.cgi?id=70678
1486
1487         Reviewed by David Hyatt.
1488
1489         Tests: fast/table/table-anonymous-cell-bug.html
1490                fast/table/table-anonymous-row-bug.html
1491                fast/table/table-anonymous-section-bug.html
1492
1493         If the child being added is not a Section/Row/Cell, and the previous sibling is not anonymous, 
1494         we need to create a new anonymous Section/Row/Cell respectively, instead of failing an
1495         assert.
1496
1497         * rendering/RenderTable.cpp:
1498         (WebCore::RenderTable::addChild):
1499         * rendering/RenderTableRow.cpp:
1500         (WebCore::RenderTableRow::addChild):
1501         * rendering/RenderTableSection.cpp:
1502         (WebCore::RenderTableSection::addChild):
1503
1504 2011-10-25  Mark Hahnenberg  <mhahnenberg@apple.com>
1505
1506         Add getOwnPropertySlot to MethodTable
1507         https://bugs.webkit.org/show_bug.cgi?id=69807
1508
1509         Reviewed by Oliver Hunt.
1510
1511         No new tests.
1512
1513         * bridge/runtime_method.h: Changed getOwnPropertySlot to be protected so 
1514         subclasses can reference it in their MethodTables.
1515
1516 2011-10-25  Simon Fraser  <simon.fraser@apple.com>
1517
1518         REGRESSION (r88580): Cursor fails to change to pointer on embedded Google maps popups
1519         https://bugs.webkit.org/show_bug.cgi?id=62797
1520
1521         Reviewed by Chris Marrin.
1522         
1523         When hit testing through transformed layers, RenderLayer would simply use
1524         the composited bounds of the layer as the localHitTestRect for hit testing sublayers.
1525         However, this broke hit testing on pages that have a composited, non-transformed layer
1526         which falls outside the bounds of its parent, composited-transformed layer, like Google
1527         Maps.
1528         
1529         Fix by mapping the hitTestRect through transforms. However this is tricky, because
1530         mapping a rect into the coordinate system of a layer can result in invalid rectangles
1531         when point projection results in a negative w component. Fix TransformationMatrix::projectPoint()
1532         to detect this case and replace X and Y with large values, and add boundsOfProjectedQuad(), which 
1533         maps rectangles with possibly-infinite location or bounds into rects which are representable
1534         in an IntRect.
1535
1536         Tests: transforms/3d/hit-testing/composited-hit-test.html
1537                transforms/3d/hit-testing/rotated-hit-test-with-child.html
1538                transforms/3d/hit-testing/rotated-hit-test2.html
1539
1540         * platform/graphics/transforms/TransformationMatrix.cpp:
1541         (WebCore::TransformationMatrix::projectPoint):
1542         (WebCore::TransformationMatrix::projectQuad):
1543         (WebCore::clampEdgeValue):
1544         (WebCore::TransformationMatrix::boundsOfProjectedQuad):
1545         * platform/graphics/transforms/TransformationMatrix.h:
1546         * rendering/HitTestingTransformState.cpp:
1547         (WebCore::HitTestingTransformState::boundsOfMappedQuad):
1548         * rendering/HitTestingTransformState.h:
1549         * rendering/RenderLayer.cpp:
1550         (WebCore::RenderLayer::hitTestLayer):
1551
1552 2011-10-25  Adrienne Walker  <enne@google.com>
1553
1554         [chromium] Batch up texture uploads so that they can be updated incrementally
1555         https://bugs.webkit.org/show_bug.cgi?id=70454
1556
1557         Reviewed by James Robinson.
1558
1559         Because texture uploads can sometimes take more than a frame to
1560         complete, collect all the uploads that need to occur in a
1561         CCTextureUpdater so that we can easily incrementally upload some of
1562         them, interleaving input and drawing so that the compositor thread
1563         continues to appear responsive during a commit.
1564
1565         This change doesn't actually interleave the commits, it just pushes
1566         the infrastructure for doing so up to the CCProxy level so that a
1567         future scheduler can make this decision.
1568
1569         VideoLayerChromium is the only layer type to not use this system. It
1570         needs to be converted to use a texture updater first and it is less of
1571         a priority than the tiled layers.
1572
1573         * WebCore.gypi:
1574         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1575         (WebCore::Canvas2DLayerChromium::updateCompositorResources):
1576         * platform/graphics/chromium/Canvas2DLayerChromium.h:
1577         * platform/graphics/chromium/LayerChromium.h:
1578         (WebCore::LayerChromium::updateCompositorResources):
1579         * platform/graphics/chromium/TiledLayerChromium.cpp:
1580         (WebCore::TiledLayerChromium::updateCompositorResources):
1581         * platform/graphics/chromium/TiledLayerChromium.h:
1582         * platform/graphics/chromium/VideoLayerChromium.cpp:
1583         (WebCore::VideoLayerChromium::updateCompositorResources):
1584         * platform/graphics/chromium/VideoLayerChromium.h:
1585         * platform/graphics/chromium/WebGLLayerChromium.cpp:
1586         (WebCore::WebGLLayerChromium::updateCompositorResources):
1587         * platform/graphics/chromium/WebGLLayerChromium.h:
1588         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1589         (WebCore::CCLayerTreeHost::beginCommitOnImplThread):
1590         (WebCore::CCLayerTreeHost::finishCommitOnImplThread):
1591         (WebCore::CCLayerTreeHost::updateCompositorResources):
1592         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1593         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
1594         (WebCore::CCSingleThreadProxy::setNeedsCommit):
1595         (WebCore::CCSingleThreadProxy::doCommit):
1596         (WebCore::CCSingleThreadProxy::commitIfNeeded):
1597         * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
1598         * platform/graphics/chromium/cc/CCTextureUpdater.cpp: Added.
1599         (WebCore::CCTextureUpdater::CCTextureUpdater):
1600         (WebCore::CCTextureUpdater::~CCTextureUpdater):
1601         (WebCore::CCTextureUpdater::append):
1602         (WebCore::CCTextureUpdater::update):
1603         (WebCore::CCTextureUpdater::clear):
1604         * platform/graphics/chromium/cc/CCTextureUpdater.h: Added.
1605         (WebCore::CCTextureUpdater::allocator):
1606         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1607         (WebCore::CCThreadProxy::commitOnImplThread):
1608
1609 2011-10-24  Jer Noble  <jer.noble@apple.com>
1610
1611         compositing/video tests time out on Lion
1612         https://bugs.webkit.org/show_bug.cgi?id=70448
1613
1614         Reviewed by Simon Fraser.
1615
1616         AVFoundation will not begin loading or decoding media until a consumer for that media is present.
1617         For video-only media, this means that an AVPlayerLayer must be created and attached to the 
1618         AVPlayer before the load state will ever reach "canPlayThrough". Once the metadata for a media
1619         is loaded, create a AVPlayerLayer if the media has a video track.
1620
1621         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1622         (WebCore::MediaPlayerPrivateAVFoundation::updateStates):
1623
1624 2011-10-24  Ryosuke Niwa  <rniwa@webkit.org>
1625
1626         Merge endOfLine with logicalEndOfLine and startOfLine with logicalStartOfLine
1627         https://bugs.webkit.org/show_bug.cgi?id=70755
1628
1629         Reviewed by Chang Shu.
1630
1631         Merged endOfLine with logicalEndOfLine, and startOfLine with logicalStartOfLine
1632         to reduce the code duplication.
1633
1634         * editing/visible_units.cpp:
1635         (WebCore::startPositionForLine):
1636         (WebCore::startOfLine):
1637         (WebCore::logicalStartOfLine):
1638         (WebCore::endPositionForLine):
1639         (WebCore::inSameLogicalLine):
1640         (WebCore::endOfLine):
1641         (WebCore::logicalEndOfLine):
1642         * editing/visible_units.h:
1643
1644 2011-10-25  Arko Saha  <arko@motorola.com>
1645
1646         Microdata: itemtype attribute should be space-separated list to allow multiple types.
1647         https://bugs.webkit.org/show_bug.cgi?id=70501
1648
1649         Reviewed by Ryosuke Niwa.
1650
1651         Tests: fast/dom/MicroData/getitems-multiple-itemtypes.html
1652                fast/dom/MicroData/itemtype-add-remove-tokens.html
1653                fast/dom/MicroData/itemtype-attribute-test.html
1654
1655         * dom/MicroDataItemList.cpp:
1656         (WebCore::MicroDataItemList::nodeMatches):
1657         * html/DOMSettableTokenList.h:
1658         (WebCore::DOMSettableTokenList::tokens):
1659         * html/HTMLElement.cpp:
1660         (WebCore::HTMLElement::parseMappedAttribute):
1661         (WebCore::HTMLElement::setItemValueText):
1662         (WebCore::HTMLElement::itemType):
1663         (WebCore::HTMLElement::setItemType):
1664         * html/HTMLElement.h:
1665         * html/HTMLElement.idl:
1666
1667 2011-10-25  Dan Bernstein  <mitz@apple.com>
1668
1669         <rdar://problem/10337033> DOMRangeOfString:relativeTo:options has problems with -webkit-user-select: none
1670
1671         Reviewed by Adam Roben.
1672
1673         Test: added to TestWebKitAPI/Tests/mac/DOMRangeOfString.mm
1674
1675         * page/Page.cpp:
1676         (WebCore::Page::rangeOfString): This function was incorrectly adding the StartInSelection option to
1677         the initial search.
1678
1679 2011-10-25  Yury Semikhatsky  <yurys@chromium.org>
1680
1681         Web Inspector: redesign workers sidebar pane
1682         https://bugs.webkit.org/show_bug.cgi?id=70815
1683
1684         Changed workers sidebar pane design.
1685
1686         Now there is a link to worker inspector for each dedicated worker created
1687         by inspected page. The sidebar display a link to a page with list of all
1688         shared workers if there one is supported by the WebKit port. Also there
1689         is a checkbox that allows pause all new workers on first statements.
1690
1691         Reviewed by Pavel Feldman.
1692
1693         * inspector/front-end/Settings.js:
1694         * inspector/front-end/StylesSidebarPane.js:
1695         (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
1696         * inspector/front-end/WorkerManager.js:
1697         (WebInspector.WorkerManager.prototype.openWorkerInspector):
1698         (WebInspector.WorkerManager.prototype._workerInspectorClosing):
1699         * inspector/front-end/WorkersSidebarPane.js:
1700         (WebInspector.WorkerListSidebarPane):
1701         (WebInspector.WorkerListSidebarPane.prototype._workerRemoved):
1702         (WebInspector.WorkerListSidebarPane.prototype._workersCleared):
1703         (WebInspector.WorkerListSidebarPane.prototype._addWorker):
1704         (WebInspector.WorkerListSidebarPane.prototype._workerItemClicked):
1705         (WebInspector.WorkerListSidebarPane.prototype._autoattachToWorkersClicked):
1706         (WebInspector.WorkerListSidebarPane.prototype._createSharedWorkersLink.link.onclick):
1707         (WebInspector.WorkerListSidebarPane.prototype._createSharedWorkersLink):
1708         * inspector/front-end/elementsPanel.css:
1709         * inspector/front-end/inspectorCommon.css:
1710         (.sidebar-separator):
1711         (.sidebar-label):
1712         * inspector/front-end/scriptsPanel.css:
1713         (.dedicated-worker-item):
1714         (#shared-workers-list):
1715         (#pause-workers-checkbox > input):
1716
1717 2011-10-25  Nico Weber  <thakis@chromium.org>
1718
1719         [chromium/mac] Fix an ODR violation.
1720         https://bugs.webkit.org/show_bug.cgi?id=70753
1721
1722         Reviewed by Anders Carlsson.
1723
1724         Both ScrollAnimatorNone and ScrollAnimatorMac define ScrollAnimator::create() on OS X.
1725         Remove the unused one.
1726
1727         * WebCore.gyp/WebCore.gyp:
1728
1729 2011-10-25  Vsevolod Vlasov  <vsevik@chromium.org>
1730
1731         Web Inspector: Debugger fails when there is an invalid watch expression.
1732         https://bugs.webkit.org/show_bug.cgi?id=70718
1733
1734         Reviewed by Pavel Feldman.
1735
1736         Test: inspector/debugger/watch-expressions-panel-switch.html
1737
1738         * inspector/front-end/ScriptsPanel.js:
1739         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
1740
1741 2011-10-24  Pavel Podivilov  <podivilov@chromium.org>
1742
1743         Web Inspector: fix empty line handling in source maps.
1744         https://bugs.webkit.org/show_bug.cgi?id=70726
1745
1746         Reviewed by Yury Semikhatsky.
1747
1748         * inspector/front-end/CompilerSourceMapping.js:
1749         (WebInspector.ClosureCompilerSourceMapping.prototype._parseMappings):
1750
1751 2011-10-25  Justin Schuh  <jschuh@chromium.org>
1752
1753         Check for empty string in parseArcFlag
1754         https://bugs.webkit.org/show_bug.cgi?id=70763
1755
1756         Reviewed by Dirk Schulze.
1757
1758         Test: svg/path-invalid.html
1759
1760         * svg/SVGParserUtilities.cpp:
1761         (WebCore::parseArcFlag):
1762
1763 2011-10-24  Pavel Podivilov  <podivilov@chromium.org>
1764
1765         Web Inspector: keep old source mapping when new one could not be loaded.
1766         https://bugs.webkit.org/show_bug.cgi?id=70729
1767
1768         Reviewed by Yury Semikhatsky.
1769
1770         * inspector/front-end/RawSourceCode.js:
1771         (WebInspector.RawSourceCode.prototype._updateSourceMapping.didCreateSourceMapping):
1772         (WebInspector.RawSourceCode.prototype._updateSourceMapping):
1773         (WebInspector.RawSourceCode.prototype._createSourceMapping.didLoadSourceMapping):
1774
1775 2011-10-25  Sachin Puranik  <sachin.puranik@motorola.com>
1776
1777         Double number step=.5 should be considered valid in <input type="number" step=".5">
1778         https://bugs.webkit.org/show_bug.cgi?id=70320
1779
1780         Reviewed by Kent Tamura.
1781
1782         Test: fast/forms/input-step-as-double.html
1783
1784         * html/parser/HTMLParserIdioms.cpp:
1785         (WebCore::parseToDoubleForNumberType): Changed the function to consider
1786         step as valid even if it starts with "."
1787
1788 2011-10-25  Alexander Pavlov  <apavlov@chromium.org>
1789
1790         Web Inspector: [Chromium] Audits panel context menu for links not working properly
1791         https://bugs.webkit.org/show_bug.cgi?id=70813
1792
1793         Reviewed by Pavel Feldman.
1794
1795         * inspector/front-end/AuditResultView.js:
1796         (WebInspector.AuditResultView):
1797         (WebInspector.AuditResultView.prototype._contextMenuEventFired):
1798
1799 2011-10-25  Vsevolod Vlasov  <vsevik@chromium.org>
1800
1801         Web Inspector: Resources panel: display the current search match index in the toolbar.
1802         https://bugs.webkit.org/show_bug.cgi?id=66050
1803
1804         Reviewed by Pavel Feldman.
1805
1806         Test: http/tests/inspector/search/resources-search-match-index.html
1807
1808         * inspector/front-end/ResourcesPanel.js:
1809         (WebInspector.ResourcesPanel.prototype.performSearch.callback):
1810         (WebInspector.ResourcesPanel.prototype.performSearch):
1811         (WebInspector.ResourcesPanel.prototype._showSearchResult.callback):
1812         (WebInspector.ResourcesPanel.prototype._showSearchResult):
1813         (WebInspector.BaseStorageTreeElement.prototype.get searchMatchesCount):
1814         (WebInspector.ResourcesSearchController):
1815         (WebInspector.ResourcesSearchController.prototype.nextSearchResult):
1816         (WebInspector.ResourcesSearchController.prototype.previousSearchResult):
1817         (WebInspector.ResourcesSearchController.prototype._searchResult):
1818         (WebInspector.SearchResultsTreeElementsTraverser.prototype.next):
1819         (WebInspector.SearchResultsTreeElementsTraverser.prototype.previous):
1820         (WebInspector.SearchResultsTreeElementsTraverser.prototype.matchIndex):
1821         (WebInspector.SearchResultsTreeElementsTraverser.prototype._elementSearchMatchesCount):
1822         (WebInspector.SearchResultsTreeElementsTraverser.prototype._traverseNext):
1823         (WebInspector.SearchResultsTreeElementsTraverser.prototype._traversePrevious):
1824         * inspector/front-end/treeoutline.js:
1825
1826 2011-10-25  Andrey Kosyakov  <caseq@chromium.org>
1827
1828         Web Inspector: JS exception in JavaScriptSourceFrame.onShowPopover/showObjectPopover()
1829         https://bugs.webkit.org/show_bug.cgi?id=70812
1830
1831         Reviewed by Pavel Feldman.
1832
1833         Check if highlighted element is present while displaying object popover.
1834
1835         * inspector/front-end/JavaScriptSourceFrame.js:
1836         (WebInspector.JavaScriptSourceFrame.prototype.onShowPopover.showObjectPopover):
1837         (WebInspector.JavaScriptSourceFrame.prototype.onShowPopover):
1838
1839 2011-10-21  Nat Duca  <nduca@chromium.org>
1840
1841         [chromium] Route Console::time and Console::timeEnd to trace_event
1842         https://bugs.webkit.org/show_bug.cgi?id=70620
1843
1844         Reviewed by Pavel Feldman.
1845
1846         * page/Console.cpp:
1847         (WebCore::Console::time):
1848         (WebCore::Console::timeEnd):
1849
1850 2011-10-21  Andrey Kosyakov  <caseq@chromium.org>
1851
1852         Web Inspector: [Extensions API] allow extensions to specify script to be injected on reload
1853         https://bugs.webkit.org/show_bug.cgi?id=70600
1854
1855         Reviewed by Pavel Feldman.
1856
1857         - change webInspector.inspectedPage.reload() to accept multiple options in an object
1858         - add an ability to inject a script upon a page reload
1859         - return script id in addScriptToEvaluateOnLoad()
1860         - provide removeScriptToEvaluateOnLoad()
1861         - store scripts to evaluate on load in inspector state cookie
1862
1863         Test: inspector/extensions/extensions-reload.html
1864
1865         * inspector/Inspector.json:
1866         * inspector/InspectorPageAgent.cpp:
1867         (WebCore::InspectorPageAgent::InspectorPageAgent):
1868         (WebCore::InspectorPageAgent::restore):
1869         (WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad):
1870         (WebCore::InspectorPageAgent::removeScriptToEvaluateOnLoad):
1871         (WebCore::InspectorPageAgent::removeAllScriptsToEvaluateOnLoad):
1872         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
1873         (WebCore::InspectorPageAgent::frameNavigated):
1874         * inspector/InspectorPageAgent.h:
1875         * inspector/front-end/ExtensionAPI.js:
1876         (injectedExtensionAPI.InspectedWindow.prototype.reload):
1877         * inspector/front-end/ExtensionServer.js:
1878         (WebInspector.ExtensionServer.prototype._onReload):
1879         * inspector/front-end/WorkersSidebarPane.js:
1880         (WebInspector.WorkersSidebarPane.prototype.setInstrumentation.callback):
1881         (WebInspector.WorkersSidebarPane.prototype.setInstrumentation):
1882
1883 2011-10-24  Pavel Feldman  <pfeldman@google.com>
1884
1885         Web Inspector: print expired message count before remaining messages.
1886         https://bugs.webkit.org/show_bug.cgi?id=70736
1887
1888         Reviewed by Yury Semikhatsky.
1889
1890         * inspector/Inspector-0.1.json:
1891         * inspector/Inspector.json:
1892         * inspector/InspectorConsoleAgent.cpp:
1893         (WebCore::InspectorConsoleAgent::enable):
1894         (WebCore::InspectorConsoleAgent::restore):
1895         * inspector/InspectorConsoleAgent.h:
1896         * inspector/front-end/ConsoleModel.js:
1897
1898 2011-10-25  Sheriff Bot  <webkit.review.bot@gmail.com>
1899
1900         Unreviewed, rolling out r98309.
1901         http://trac.webkit.org/changeset/98309
1902         https://bugs.webkit.org/show_bug.cgi?id=70801
1903
1904         Test fails on mac (Requested by benwells on #webkit).
1905
1906         * html/canvas/CanvasRenderingContext2D.cpp:
1907         (WebCore::CanvasRenderingContext2D::fill):
1908         (WebCore::CanvasRenderingContext2D::fillRect):
1909         (WebCore::CanvasRenderingContext2D::drawImage):
1910         (WebCore::CanvasRenderingContext2D::shouldDisplayTransparencyElsewhere):
1911         (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
1912         * html/canvas/CanvasRenderingContext2D.h:
1913
1914 2011-10-24  Geoffrey Garen  <ggaren@apple.com>
1915
1916         Chromium build fix: #include window.h for HANDLE.
1917
1918         * platform/graphics/opentype/OpenTypeUtilities.h:
1919
1920 2011-10-24  Ryosuke Niwa  <rniwa@webkit.org>
1921
1922         Include ThreadSafeRefCounted.h since the class declared in this header file
1923         inherits from ThreadSafeRefCounted.
1924
1925         * storage/IDBIndexBackendInterface.h:
1926
1927 2011-10-24  Ryosuke Niwa  <rniwa@webkit.org>
1928
1929         Fix a typo.
1930
1931         * bindings/v8/JavaScriptCallFrame.h:
1932
1933 2011-10-24  Geoffrey Garen  <ggaren@apple.com>
1934
1935         Removed SharedUChar and tightened language around its previous uses
1936         https://bugs.webkit.org/show_bug.cgi?id=70698
1937
1938         Reviewed by David Levin.
1939
1940         - Renamed "threadSafeCopy" and "crossThreadCopy" to "isolatedCopy" because
1941         the former names gave the dangerous misimpression that the resulting object
1942         was thread-safe, which is not true.
1943         
1944         - Updated a bunch of files for header dependency changes, now that
1945         CrossThreadRefCounted is gone.
1946
1947         * ForwardingHeaders/wtf/CrossThreadRefCounted.h: Removed.
1948         * WebCore.exp.in:
1949         * bindings/js/ScriptHeapSnapshot.h:
1950         * bindings/v8/SerializedScriptValue.cpp:
1951         (WebCore::SerializedScriptValue::release):
1952         (WebCore::SerializedScriptValue::SerializedScriptValue):
1953         * css/CSSPropertySourceData.h:
1954         * css/CSSValue.h:
1955         * css/StyleMedia.h:
1956         * css/WebKitCSSMatrix.h:
1957         * dom/QualifiedName.h:
1958         * fileapi/LocalFileSystem.h:
1959         (WebCore::LocalFileSystem::SystemBasePath::operator String):
1960         * history/CachedFrame.h:
1961         * history/CachedPage.h:
1962         * history/HistoryItem.h:
1963         * html/canvas/CanvasStyle.h:
1964         * inspector/InspectorResourceAgent.h:
1965         * loader/FormState.h:
1966         * loader/TextResourceDecoder.h:
1967         * loader/WorkerThreadableLoader.cpp:
1968         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
1969         * loader/icon/IconDatabase.cpp:
1970         (WebCore::IconDatabase::open):
1971         (WebCore::IconDatabase::synchronousIconForPageURL):
1972         (WebCore::IconDatabase::synchronousIconURLForPageURL):
1973         (WebCore::IconDatabase::retainIconForPageURL):
1974         (WebCore::IconDatabase::releaseIconForPageURL):
1975         (WebCore::IconDatabase::setIconDataForIconURL):
1976         (WebCore::IconDatabase::setIconURLForPageURL):
1977         (WebCore::IconDatabase::databasePath):
1978         (WebCore::IconDatabase::defaultDatabaseFilename):
1979         (WebCore::ImportedIconURLForPageURLWorkItem::ImportedIconURLForPageURLWorkItem):
1980         (WebCore::ImportedIconDataForPageURLWorkItem::ImportedIconDataForPageURLWorkItem):
1981         * page/ContentSecurityPolicy.h:
1982         * page/Coordinates.h:
1983         (WebCore::Coordinates::isolatedCopy):
1984         * page/Geoposition.h:
1985         (WebCore::Geoposition::isolatedCopy):
1986         * page/SecurityOrigin.cpp:
1987         (WebCore::SecurityOrigin::SecurityOrigin):
1988         (WebCore::SecurityOrigin::isolatedCopy):
1989         * page/SecurityOrigin.h:
1990         * page/animation/AnimationBase.h:
1991         * platform/CrossThreadCopier.cpp:
1992         (WebCore::::copy):
1993         * platform/FileChooser.h:
1994         * platform/KURL.cpp:
1995         (WebCore::KURL::copy):
1996         * platform/cf/SchedulePair.h:
1997         * platform/network/BlobData.cpp:
1998         (WebCore::BlobDataItem::detachFromCurrentThread):
1999         (WebCore::BlobData::detachFromCurrentThread):
2000         * platform/network/HTTPHeaderMap.cpp:
2001         (WebCore::HTTPHeaderMap::copyData):
2002         * platform/network/MIMEHeader.h:
2003         * platform/network/ResourceErrorBase.cpp:
2004         (WebCore::ResourceErrorBase::copy):
2005         * platform/network/ResourceLoadInfo.h:
2006         * platform/network/ResourceRequestBase.cpp:
2007         (WebCore::ResourceRequestBase::copyData):
2008         * platform/network/ResourceResponseBase.cpp:
2009         (WebCore::ResourceResponseBase::copyData):
2010         * platform/sql/SQLValue.cpp:
2011         (WebCore::SQLValue::SQLValue):
2012         (WebCore::SQLValue::string):
2013         * rendering/style/QuotesData.h:
2014         * storage/AbstractDatabase.cpp:
2015         (WebCore::updateGuidVersionMap):
2016         (WebCore::AbstractDatabase::AbstractDatabase):
2017         (WebCore::AbstractDatabase::performOpenAndVerify):
2018         (WebCore::AbstractDatabase::stringIdentifier):
2019         (WebCore::AbstractDatabase::displayName):
2020         (WebCore::AbstractDatabase::fileName):
2021         (WebCore::AbstractDatabase::setExpectedVersion):
2022         (WebCore::AbstractDatabase::getCachedVersion):
2023         * storage/ChangeVersionWrapper.cpp:
2024         (WebCore::ChangeVersionWrapper::ChangeVersionWrapper):
2025         * storage/Database.cpp:
2026         (WebCore::Database::Database):
2027         (WebCore::Database::tableNames):
2028         * storage/DatabaseDetails.h:
2029         * storage/DatabaseTracker.cpp:
2030         (WebCore::DatabaseTracker::setDatabaseDirectoryPath):
2031         (WebCore::DatabaseTracker::databaseDirectoryPath):
2032         (WebCore::DatabaseTracker::trackerDatabasePath):
2033         (WebCore::DatabaseTracker::canEstablishDatabase):
2034         (WebCore::DatabaseTracker::originPath):
2035         (WebCore::DatabaseTracker::fullPathForDatabase):
2036         (WebCore::DatabaseTracker::populateOrigins):
2037         (WebCore::DatabaseTracker::databaseNamesForOrigin):
2038         (WebCore::DatabaseTracker::addOpenDatabase):
2039         (WebCore::DatabaseTracker::setQuota):
2040         (WebCore::DatabaseTracker::recordCreatingDatabase):
2041         (WebCore::DatabaseTracker::recordDeletingDatabase):
2042         (WebCore::DatabaseTracker::recordDeletingOrigin):
2043         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
2044         * storage/OriginQuotaManager.cpp:
2045         (WebCore::OriginQuotaManager::trackOrigin):
2046         (WebCore::OriginQuotaManager::addDatabase):
2047         * storage/SQLError.h:
2048         (WebCore::SQLError::message):
2049         (WebCore::SQLError::SQLError):
2050         * storage/SQLResultSetRowList.h:
2051         * storage/SQLStatement.cpp:
2052         (WebCore::SQLStatement::SQLStatement):
2053         * storage/StorageAreaSync.cpp:
2054         (WebCore::StorageAreaSync::StorageAreaSync):
2055         (WebCore::StorageAreaSync::syncTimerFired):
2056         * storage/StorageAreaSync.h:
2057         * storage/StorageMap.cpp:
2058         (WebCore::StorageMap::importItem):
2059         * storage/StorageNamespaceImpl.cpp:
2060         (WebCore::StorageNamespaceImpl::StorageNamespaceImpl):
2061         * storage/StorageSyncManager.cpp:
2062         (WebCore::StorageSyncManager::StorageSyncManager):
2063         * storage/StorageTracker.cpp:
2064         (WebCore::StorageTracker::StorageTracker):
2065         (WebCore::StorageTracker::syncImportOriginIdentifiers):
2066         (WebCore::StorageTracker::syncFileSystemAndTrackerDatabase):
2067         (WebCore::StorageTracker::setOriginDetails):
2068         (WebCore::StorageTracker::willDeleteAllOrigins):
2069         * svg/SVGPathSeg.h:
2070         * workers/DefaultSharedWorkerRepository.cpp:
2071         (WebCore::SharedWorkerProxy::url):
2072         (WebCore::SharedWorkerProxy::name):
2073         (WebCore::SharedWorkerProxy::SharedWorkerProxy):
2074         (WebCore::DefaultSharedWorkerRepository::getProxy):
2075         * workers/SharedWorkerThread.cpp:
2076         (WebCore::SharedWorkerThread::SharedWorkerThread):
2077         * workers/WorkerMessagingProxy.cpp:
2078         (WebCore::WorkerExceptionTask::WorkerExceptionTask):
2079         (WebCore::PostMessageToPageInspectorTask::PostMessageToPageInspectorTask):
2080         * workers/WorkerRunLoop.cpp:
2081         (WebCore::WorkerRunLoop::postTaskForMode):
2082         (WebCore::WorkerRunLoop::Task::Task):
2083         * workers/WorkerThread.cpp:
2084         (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
2085
2086 2011-10-24  Adam Barth  <abarth@webkit.org>
2087
2088         Remove empty directory.
2089
2090         * p2p: Removed.
2091
2092 2011-10-24  Shawn Singh  <shawnsingh@chromium.org>
2093
2094         [chromium] Refactor painting/updating/drawing code.
2095         https://bugs.webkit.org/show_bug.cgi?id=70057
2096
2097         Reviewed by James Robinson.
2098
2099         This refactoring separates the "early exits" from the actual loop
2100         that draws layers. As part of this, it was also appropriate to
2101         clean up the way that masks and replicas are dealt with when
2102         painting and updating. The purpose of all this is to make things
2103         easier to test, and for a scissoring optimization that needs to
2104         know exatly what gets drawn. Existing layout tests were able to
2105         verify the refactoring did not change behavior.
2106
2107         * platform/graphics/chromium/LayerRendererChromium.cpp:
2108         (WebCore::LayerRendererChromium::drawLayersOntoRenderSurfaces):
2109         (WebCore::LayerRendererChromium::drawLayersInternal):
2110         (WebCore::LayerRendererChromium::drawLayer):
2111         * platform/graphics/chromium/LayerRendererChromium.h:
2112         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2113         (WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface):
2114         (WebCore::CCLayerTreeHost::paintLayerContents):
2115         (WebCore::CCLayerTreeHost::updateCompositorResources):
2116         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2117         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
2118         (WebCore::layerShouldBeAppended):
2119         (WebCore::calculateDrawTransformsAndVisibilityInternal):
2120         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.h:
2121         (WebCore::CCLayerTreeHostCommon::calculateVisibleLayerRect):
2122
2123 2011-10-24  Luke Macpherson   <macpherson@chromium.org>
2124
2125         REGRESSION(80893): HTML5 spec takes 2s longer to load due to time spent in CSSStyleSelector
2126         https://bugs.webkit.org/show_bug.cgi?id=68944
2127
2128         Reviewed by Antti Koivisto.
2129
2130         No new tests / Covered by existing tests.
2131
2132         Removes all virtual dispatch from CSSStyleApplyProperty by converting to use static function pointers for dispatch.
2133         Uses class templates instead of function templates to allow default parameters and also to share parameter declarations across static functions.
2134         All constructor parameters become template parameters. This improves the level of compiler optimization that can be achieved.
2135         Overall this achieved a ~2% overall speedup on run-safari PerformanceTests/Parser/html5-full-render.html,
2136         and profiling showed a reduction in the time spent inside CSSStyleSelector::applyProperty().
2137
2138         * css/CSSStyleApplyProperty.cpp:
2139         (WebCore::ApplyPropertyExpanding::applyInheritValue):
2140         (WebCore::ApplyPropertyExpanding::applyInitialValue):
2141         (WebCore::ApplyPropertyExpanding::applyValue):
2142         (WebCore::ApplyPropertyExpanding::createHandler):
2143         (WebCore::ApplyPropertyDefaultBase::setValue):
2144         (WebCore::ApplyPropertyDefaultBase::value):
2145         (WebCore::ApplyPropertyDefaultBase::initial):
2146         (WebCore::ApplyPropertyDefaultBase::applyInheritValue):
2147         (WebCore::ApplyPropertyDefaultBase::applyInitialValue):
2148         (WebCore::ApplyPropertyDefaultBase::applyValue):
2149         (WebCore::ApplyPropertyDefaultBase::createHandler):
2150         (WebCore::ApplyPropertyDefault::setValue):
2151         (WebCore::ApplyPropertyDefault::applyValue):
2152         (WebCore::ApplyPropertyDefault::createHandler):
2153         (WebCore::ApplyPropertyStyleImage::applyValue):
2154         (WebCore::ApplyPropertyStyleImage::createHandler):
2155         (WebCore::ApplyPropertyAuto::setValue):
2156         (WebCore::ApplyPropertyAuto::value):
2157         (WebCore::ApplyPropertyAuto::hasAuto):
2158         (WebCore::ApplyPropertyAuto::setAuto):
2159         (WebCore::ApplyPropertyAuto::applyInheritValue):
2160         (WebCore::ApplyPropertyAuto::applyInitialValue):
2161         (WebCore::ApplyPropertyAuto::applyValue):
2162         (WebCore::ApplyPropertyAuto::createHandler):
2163         (WebCore::defaultInitialColor):
2164         (WebCore::ApplyPropertyColor::applyInheritValue):
2165         (WebCore::ApplyPropertyColor::applyInitialValue):
2166         (WebCore::ApplyPropertyColor::applyValue):
2167         (WebCore::ApplyPropertyColor::createHandler):
2168         (WebCore::ApplyPropertyDirection::applyValue):
2169         (WebCore::ApplyPropertyDirection::createHandler):
2170         (WebCore::ApplyPropertyLength::setValue):
2171         (WebCore::ApplyPropertyLength::applyValue):
2172         (WebCore::ApplyPropertyLength::createHandler):
2173         (WebCore::ApplyPropertyString::setValue):
2174         (WebCore::ApplyPropertyString::applyValue):
2175         (WebCore::ApplyPropertyString::createHandler):
2176         (WebCore::ApplyPropertyBorderRadius::setValue):
2177         (WebCore::ApplyPropertyBorderRadius::applyValue):
2178         (WebCore::ApplyPropertyBorderRadius::createHandler):
2179         (WebCore::ApplyPropertyFillLayer::applyInheritValue):
2180         (WebCore::ApplyPropertyFillLayer::applyInitialValue):
2181         (WebCore::ApplyPropertyFillLayer::applyValue):
2182         (WebCore::ApplyPropertyFillLayer::createHandler):
2183         (WebCore::ApplyPropertyComputeLength::setValue):
2184         (WebCore::ApplyPropertyComputeLength::applyValue):
2185         (WebCore::ApplyPropertyComputeLength::createHandler):
2186         (WebCore::ApplyPropertyFont::applyInheritValue):
2187         (WebCore::ApplyPropertyFont::applyInitialValue):
2188         (WebCore::ApplyPropertyFont::applyValue):
2189         (WebCore::ApplyPropertyFont::createHandler):
2190         (WebCore::ApplyPropertyFontWeight::applyValue):
2191         (WebCore::ApplyPropertyFontWeight::createHandler):
2192         (WebCore::ApplyPropertyCounter::emptyFunction):
2193         (WebCore::ApplyPropertyCounter::applyValue):
2194         (WebCore::ApplyPropertyCounter::createHandler):
2195         (WebCore::ApplyPropertyCursor::applyInheritValue):
2196         (WebCore::ApplyPropertyCursor::applyInitialValue):
2197         (WebCore::ApplyPropertyCursor::applyValue):
2198         (WebCore::ApplyPropertyCursor::createHandler):
2199         (WebCore::ApplyPropertyTextEmphasisStyle::applyInheritValue):
2200         (WebCore::ApplyPropertyTextEmphasisStyle::applyInitialValue):
2201         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
2202         (WebCore::ApplyPropertyTextEmphasisStyle::createHandler):
2203         (WebCore::ApplyPropertyAnimation::setValue):
2204         (WebCore::ApplyPropertyAnimation::value):
2205         (WebCore::ApplyPropertyAnimation::test):
2206         (WebCore::ApplyPropertyAnimation::clear):
2207         (WebCore::ApplyPropertyAnimation::initial):
2208         (WebCore::ApplyPropertyAnimation::map):
2209         (WebCore::ApplyPropertyAnimation::accessAnimations):
2210         (WebCore::ApplyPropertyAnimation::animations):
2211         (WebCore::ApplyPropertyAnimation::applyInheritValue):
2212         (WebCore::ApplyPropertyAnimation::applyInitialValue):
2213         (WebCore::ApplyPropertyAnimation::applyValue):
2214         (WebCore::ApplyPropertyAnimation::createHandler):
2215         (WebCore::ApplyPropertyOutlineStyle::applyInheritValue):
2216         (WebCore::ApplyPropertyOutlineStyle::applyInitialValue):
2217         (WebCore::ApplyPropertyOutlineStyle::applyValue):
2218         (WebCore::ApplyPropertyOutlineStyle::createHandler):
2219         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2220         * css/CSSStyleApplyProperty.h:
2221         (WebCore::PropertyHandler::PropertyHandler):
2222         (WebCore::PropertyHandler::applyInheritValue):
2223         (WebCore::PropertyHandler::applyInitialValue):
2224         (WebCore::PropertyHandler::applyValue):
2225         (WebCore::PropertyHandler::isValid):
2226         (WebCore::PropertyHandler::inheritFunction):
2227         (WebCore::PropertyHandler::initialFunction):
2228         (WebCore::PropertyHandler::applyFunction):
2229         (WebCore::CSSStyleApplyProperty::propertyHandler):
2230         (WebCore::CSSStyleApplyProperty::setPropertyHandler):
2231         * css/CSSStyleSelector.cpp:
2232         (WebCore::CSSStyleSelector::applyProperty):
2233         * rendering/style/RenderStyle.h:
2234         (WebCore::InheritedFlags::invalidColor):
2235
2236 2011-10-24  Ben Wells  <benwells@chromium.org>
2237
2238         Canvas drawImage with SourceIn, DestinationIn, SourceOut, DestinationAtop and Copy have errors
2239         https://bugs.webkit.org/show_bug.cgi?id=66920
2240
2241         Reviewed by James Robinson.
2242
2243         Test: fast/canvas/canvas-composite-image.html
2244
2245         Use the same method as fills to handle composited drawImage calls that will affect the whole
2246         canvas. To do this code used when doing fills has been factored into seperate functions and
2247         used by drawImage. Some functions used to do these types of operations have also been renamed.
2248
2249         * html/canvas/CanvasRenderingContext2D.cpp:
2250         (WebCore::isFullCanvasCompositeMode):
2251         (WebCore::CanvasRenderingContext2D::fill):
2252         (WebCore::CanvasRenderingContext2D::fillRect):
2253         (WebCore::CanvasRenderingContext2D::drawImage):
2254         (WebCore::CanvasRenderingContext2D::calculateCompositingBufferRect):
2255         (WebCore::CanvasRenderingContext2D::createCompositingBuffer):
2256         (WebCore::CanvasRenderingContext2D::compositeBuffer):
2257         (WebCore::CanvasRenderingContext2D::fullCanvasCompositedDrawImage):
2258         (WebCore::CanvasRenderingContext2D::fullCanvasCompositedFill):
2259         * html/canvas/CanvasRenderingContext2D.h:
2260
2261 2011-10-24  Sheriff Bot  <webkit.review.bot@gmail.com>
2262
2263         Unreviewed, rolling out r98294 and r98306.
2264         http://trac.webkit.org/changeset/98294
2265         http://trac.webkit.org/changeset/98306
2266         https://bugs.webkit.org/show_bug.cgi?id=70790
2267
2268         the first patch broke chromium-mac and the second gclient
2269         (Requested by jchaffraix on #webkit).
2270
2271         * WebCore.gyp/WebCore.gyp:
2272
2273 2011-10-24  Ryosuke Niwa  <rniwa@webkit.org>
2274
2275         Build fix after r98300.
2276
2277         * WebCore.gypi:
2278         * WebCore.pro:
2279
2280 2011-10-24  Anders Carlsson  <andersca@apple.com>
2281
2282         It should be possible for Widget subclasses to control whether transforms affect the frame rect
2283         https://bugs.webkit.org/show_bug.cgi?id=70787
2284
2285         Reviewed by Sam Weinig.
2286
2287         Currently RenderWidget sets the frame rect of it's hosted widget to the bounding box of the transformed
2288         content box rect (unless the Widget is a frame view). It should be possible for Widget subclasses to override
2289         this behavior and have the frame rect set to the absolute content box without any transforms applied.
2290
2291         * platform/Widget.h:
2292         (WebCore::Widget::transformsAffectFrameRect):
2293         Add new member function.
2294
2295         * rendering/RenderWidget.cpp:
2296         (WebCore::RenderWidget::updateWidgetGeometry):
2297         Move shared code from setWidget and updateWidgetPosition out into a new function. If transformsAffectFrameRect returns 
2298         false, just set the frame rect to the absolute content box.
2299
2300         (WebCore::RenderWidget::setWidget):
2301         (WebCore::RenderWidget::updateWidgetPosition):
2302         Call updateWidgetGeometry.
2303
2304         * rendering/RenderWidget.h:
2305
2306 2011-10-24  Arko Saha  <arko@motorola.com>
2307
2308         Microdata: Add itemprop, itemref, itemvalue attributes.
2309         https://bugs.webkit.org/show_bug.cgi?id=69839
2310
2311         Reviewed by Ryosuke Niwa.
2312
2313         Tests: fast/dom/MicroData/itemprop-add-remove-tokens.html
2314                fast/dom/MicroData/itemprop-for-an-element-must-be-correct.html
2315                fast/dom/MicroData/itemprop-must-be-read-only.html
2316                fast/dom/MicroData/itemprop-reflected-by-itemProp-property.html
2317                fast/dom/MicroData/itemref-add-remove-tokens.html
2318                fast/dom/MicroData/itemref-attribute-reflected-by-itemRef-property.html
2319                fast/dom/MicroData/itemref-for-an-element-must-be-correct.html
2320                fast/dom/MicroData/itemref-must-be-read-only.html
2321                fast/dom/MicroData/itemvalue-reflects-data-attr-on-object-element.html
2322                fast/dom/MicroData/itemvalue-reflects-href-attr.html
2323                fast/dom/MicroData/itemvalue-reflects-src-attribute-on-img-element.html
2324                fast/dom/MicroData/itemvalue-reflects-the-content-attr-on-meta-element.html
2325                fast/dom/MicroData/itemvalue-reflects-the-src-attr.html
2326                fast/dom/MicroData/itemvalue-returns-element-itself.html
2327                fast/dom/MicroData/itemvalue-returns-null.html
2328                fast/dom/MicroData/itemvalue-throws-excpetion-onsetting-001.html
2329                fast/dom/MicroData/itemvalue-throws-excpetion-onsetting-002.html
2330
2331         * CMakeLists.txt:
2332         * GNUmakefile.list.am:
2333         * WebCore.gypi:
2334         * WebCore.pro:
2335         * WebCore.vcproj/WebCore.vcproj:
2336         * bindings/js/JSHTMLElementCustom.cpp:
2337         (WebCore::toJS):
2338         (WebCore::JSHTMLElement::itemValue):
2339         (WebCore::JSHTMLElement::setItemValue):
2340         * bindings/v8/custom/V8HTMLElementCustom.cpp:
2341         (WebCore::toV8Object):
2342         (WebCore::V8HTMLElement::itemValueAccessorGetter):
2343         (WebCore::V8HTMLElement::itemValueAccessorSetter):
2344         * dom/MicroDataItemList.cpp:
2345         * html/HTMLAnchorElement.cpp:
2346         (WebCore::HTMLAnchorElement::itemValueText):
2347         (WebCore::HTMLAnchorElement::setItemValueText):
2348         * html/HTMLAnchorElement.h:
2349         * html/HTMLAreaElement.cpp:
2350         (WebCore::HTMLAreaElement::itemValueText):
2351         (WebCore::HTMLAreaElement::setItemValueText):
2352         * html/HTMLAreaElement.h:
2353         * html/HTMLAttributeNames.in:
2354         * html/HTMLElement.cpp:
2355         (WebCore::HTMLElement::parseMappedAttribute):
2356         (WebCore::HTMLElement::itemProp): Returns element's itemprop content attribute.
2357         (WebCore::HTMLElement::setItemProp): Sets itemprop value on changing elemet's
2358         itemprop attribute.
2359         (WebCore::HTMLElement::itemRef): Returns element's itemref content attribute.
2360         (WebCore::HTMLElement::setItemRef): Sets itemref value on changing elemet's
2361         itemref attribute.
2362         (WebCore::HTMLElement::setItemValue): Sets element's itemvalue. If the element has no
2363         itemprop attribute or if element has an itemscope attribute, it throws INVALID_ACCESS_ERR
2364         exception.
2365         (WebCore::HTMLElement::itemValue): Returns the elements itemvalue.
2366
2367         If the element has no itemprop attribute it returns null.
2368         If the element has an itemscope attribute, it returns the element itself.
2369         If the element is a meta element: It acts as it would if it was reflecting the element's
2370         content content attribute.
2371         If the element is an audio, embed, iframe, img, source, track, or video element: It acts
2372         as it would if it was reflecting the element's src content attribute.
2373         If the element is an a, area, or link element: It act as it would if it was reflecting the
2374         href content attribute.
2375         If the element is an object element: It acts as  it would if it was reflecting the element's
2376         data content attribute.
2377
2378         (WebCore::HTMLElement::itemValueText):
2379         (WebCore::HTMLElement::setItemValueText):
2380         * html/HTMLElement.h:
2381         * html/HTMLElement.idl:
2382         * html/HTMLEmbedElement.cpp:
2383         (WebCore::HTMLEmbedElement::itemValueText):
2384         (WebCore::HTMLEmbedElement::setItemValueText):
2385         * html/HTMLEmbedElement.h:
2386         * html/HTMLIFrameElement.cpp:
2387         (WebCore::HTMLIFrameElement::itemValueText):
2388         (WebCore::HTMLIFrameElement::setItemValueText):
2389         * html/HTMLIFrameElement.h:
2390         * html/HTMLImageElement.cpp:
2391         (WebCore::HTMLImageElement::itemValueText):
2392         (WebCore::HTMLImageElement::setItemValueText):
2393         * html/HTMLImageElement.h:
2394         * html/HTMLLinkElement.cpp:
2395         (WebCore::HTMLLinkElement::itemValueText):
2396         (WebCore::HTMLLinkElement::setItemValueText):
2397         * html/HTMLLinkElement.h:
2398         * html/HTMLMediaElement.cpp:
2399         (WebCore::HTMLMediaElement::itemValueText):
2400         (WebCore::HTMLMediaElement::setItemValueText):
2401         * html/HTMLMediaElement.h:
2402         * html/HTMLMetaElement.cpp:
2403         (WebCore::HTMLMetaElement::itemValueText):
2404         (WebCore::HTMLMetaElement::setItemValueText):
2405         * html/HTMLMetaElement.h:
2406         * html/HTMLObjectElement.cpp:
2407         (WebCore::HTMLObjectElement::itemValueText):
2408         (WebCore::HTMLObjectElement::setItemValueText):
2409         * html/HTMLObjectElement.h:
2410         * html/HTMLSourceElement.cpp:
2411         (WebCore::HTMLSourceElement::itemValueText):
2412         (WebCore::HTMLSourceElement::setItemValueText):
2413         * html/HTMLSourceElement.h:
2414         * html/HTMLTrackElement.cpp:
2415         (WebCore::HTMLTrackElement::itemValueText):
2416         (WebCore::HTMLTrackElement::setItemValueText):
2417         * html/HTMLTrackElement.h:
2418         * html/MicroDataItemValue.cpp: Added.
2419         (WebCore::MicroDataItemValue::MicroDataItemValue):
2420         (WebCore::MicroDataItemValue::createFromString):
2421         (WebCore::MicroDataItemValue::createFromNode):
2422         * html/MicroDataItemValue.h: Added.
2423         (WebCore::MicroDataItemValue::isNode):
2424         (WebCore::MicroDataItemValue::getNode):
2425         (WebCore::MicroDataItemValue::getString):
2426
2427 2011-10-24  Joseph Pecoraro  <joepeck@webkit.org>
2428
2429         Remove unused instance variable
2430         https://bugs.webkit.org/show_bug.cgi?id=70750
2431
2432         Reviewed by Dimitri Glazkov.
2433
2434         * rendering/RenderTextControl.h:
2435
2436 2011-10-24  Nico Weber  <thakis@chromium.org>
2437
2438         [chromium/mac] Fix an ODR violation.
2439         https://bugs.webkit.org/show_bug.cgi?id=70753
2440
2441         Reviewed by Anders Carlsson.
2442
2443         Both ScrollAnimatorNone and ScrollAnimatorMac define ScrollAnimator::create() on OS X.
2444         Remove the unused one.
2445
2446         * WebCore.gyp/WebCore.gyp:
2447
2448 2011-10-24  Tim Horton  <timothy_horton@apple.com>
2449
2450         feColorMatrix doesn't use the correct default "matrix" type when no type attribute is specified
2451         https://bugs.webkit.org/show_bug.cgi?id=70035
2452         <rdar://problem/10280177>
2453
2454         Reviewed by Nikolas Zimmermann.
2455
2456         Make feColorMatrix's type attribute be "matrix" by default.
2457
2458         Test: svg/filters/feColorMatrix-default-type.svg
2459
2460         * svg/SVGFEColorMatrixElement.cpp:
2461         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
2462
2463 2011-10-24  Joshua Bell  <jsbell@chromium.org>
2464
2465         Unbreak binding generation tests
2466         https://bugs.webkit.org/show_bug.cgi?id=70768
2467
2468         Reviewed by Darin Adler.
2469
2470         Update the expected output of V8 binding tests to match
2471         results c/o https://bugs.webkit.org/show_bug.cgi?id=70065
2472
2473         * bindings/scripts/test/V8/V8TestObj.cpp:
2474         (WebCore::TestObjInternal::idbKeyCallback):
2475
2476 2011-10-21  Nat Duca  <nduca@chromium.org>
2477
2478         [chromium] Add isTraceEventEnabled to PlatformSupport.
2479         https://bugs.webkit.org/show_bug.cgi?id=70618
2480
2481         Reviewed by Darin Fisher.
2482
2483         * platform/chromium/PlatformSupport.h:
2484
2485 2011-10-24  Mihnea Ovidenie  <mihnea@adobe.com>
2486
2487         Use StringBuilder in CSSRuleList::rulesText()/CSSSelectorList::selectorsText()
2488         https://bugs.webkit.org/show_bug.cgi?id=70746
2489
2490         Reviewed by Tony Chang.
2491
2492         Covered by existing tests.
2493
2494         * css/CSSRuleList.cpp:
2495         (WebCore::CSSRuleList::rulesText):
2496         * css/CSSSelectorList.cpp:
2497         (WebCore::CSSSelectorList::selectorsText):
2498         * css/WebKitCSSKeyframesRule.cpp:
2499         (WebCore::WebKitCSSKeyframesRule::cssText): Use CSSRuleList::rulesText() method instead of explicit loop.
2500
2501 2011-10-24  Michael Saboff  <msaboff@apple.com>
2502
2503         WebKit doesn't build with recent changes to libdispatch
2504         https://bugs.webkit.org/show_bug.cgi?id=70737
2505
2506         Added initialization for new WebKitSystemInterface function 
2507         CreateVMPressureDispatchOnMainQueue.  Changed MemoryPressureHandler::install
2508         to use new function.
2509
2510         Reviewed by Geoffrey Garen.
2511
2512         No new tests.  Moved functionality to WebKitSystemInterface.
2513
2514         * WebCore.exp.in:
2515         * platform/mac/MemoryPressureHandlerMac.mm:
2516         (WebCore::MemoryPressureHandler::install):
2517         * platform/mac/WebCoreSystemInterface.h:
2518         * platform/mac/WebCoreSystemInterface.mm:
2519
2520 2011-10-24  Joshua Bell  <jsbell@chromium.org>
2521
2522         IndexedDB: Throw DATA_ERR on invalid keys, remove null key support
2523         https://bugs.webkit.org/show_bug.cgi?id=70065
2524
2525         Reviewed by Tony Chang.
2526
2527         Part 1 of a two-sided commit. Renames IDBKey::NullType to
2528         IDBKey::InvalidType. JS binding yields this type rather
2529         than throwing immediately so the correct exception type can
2530         be raised. Checks for invalid keys added to front-end classes.
2531
2532         * bindings/js/JSIDBKeyCustom.cpp:
2533         (WebCore::toJS):
2534         * bindings/scripts/CodeGeneratorV8.pm:
2535         (TypeCanFailConversion):
2536         * bindings/v8/IDBBindingUtilities.cpp:
2537         (WebCore::createIDBKeyFromValue):
2538         * bindings/v8/custom/V8IDBKeyCustom.cpp:
2539         (WebCore::toV8):
2540         * storage/IDBCursor.cpp:
2541         (WebCore::IDBCursor::continueFunction):
2542         * storage/IDBFactory.cpp:
2543         (WebCore::IDBFactory::cmp):
2544         * storage/IDBIndex.cpp:
2545         (WebCore::IDBIndex::get):
2546         (WebCore::IDBIndex::getKey):
2547         * storage/IDBKey.cpp:
2548         (WebCore::IDBKey::IDBKey):
2549         (WebCore::IDBKey::compare):
2550         * storage/IDBKey.h:
2551         (WebCore::IDBKey::createInvalid):
2552         * storage/IDBKeyRange.cpp:
2553         (WebCore::IDBKeyRange::only):
2554         (WebCore::IDBKeyRange::lowerBound):
2555         (WebCore::IDBKeyRange::upperBound):
2556         (WebCore::IDBKeyRange::bound):
2557         * storage/IDBKeyRange.h:
2558         (WebCore::IDBKeyRange::lowerBound):
2559         (WebCore::IDBKeyRange::upperBound):
2560         (WebCore::IDBKeyRange::bound):
2561         * storage/IDBKeyRange.idl:
2562         * storage/IDBLevelDBCoding.cpp:
2563         (WebCore::IDBLevelDBCoding::encodeIDBKey):
2564         (WebCore::IDBLevelDBCoding::decodeIDBKey):
2565         * storage/IDBObjectStore.cpp:
2566         (WebCore::IDBObjectStore::get):
2567         (WebCore::IDBObjectStore::add):
2568         (WebCore::IDBObjectStore::put):
2569         (WebCore::IDBObjectStore::deleteFunction):
2570         * storage/IDBObjectStoreBackendImpl.cpp:
2571         (WebCore::IDBObjectStoreBackendImpl::put):
2572         (WebCore::IDBObjectStoreBackendImpl::putInternal):
2573         (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
2574         * storage/IDBSQLiteBackingStore.cpp:
2575         (WebCore::whereSyntaxForKey):
2576         (WebCore::bindKeyToQuery):
2577         (WebCore::lowerCursorWhereFragment):
2578         (WebCore::upperCursorWhereFragment):
2579         (WebCore::bindKeyToQueryWithNulls):
2580         (WebCore::keyFromQuery):
2581
2582 2011-10-24  Alok Priyadarshi  <alokp@chromium.org>
2583
2584         [chromium] Make accelerated drawing work with threaded compositing
2585         https://bugs.webkit.org/show_bug.cgi?id=70656
2586
2587         Reviewed by James Robinson.
2588
2589         Make sure that the compositor context is not used outside LayerTextureUpdater::updateTextureRect().
2590         Created a FrameBuffer class that wraps skia gpu canvas and manages GL resources.
2591
2592         * platform/graphics/chromium/ContentLayerChromium.cpp:
2593         (WebCore::ContentLayerChromium::createTextureUpdater):
2594         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
2595         (WebCore::FrameBuffer::FrameBuffer::FrameBuffer):
2596         (WebCore::FrameBuffer::FrameBuffer::~FrameBuffer):
2597         (WebCore::FrameBuffer::FrameBuffer::initialize):
2598         (WebCore::LayerTextureUpdaterSkPicture::LayerTextureUpdaterSkPicture):
2599         (WebCore::LayerTextureUpdaterSkPicture::~LayerTextureUpdaterSkPicture):
2600         (WebCore::LayerTextureUpdaterSkPicture::prepareToUpdate):
2601         (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
2602         * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
2603         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2604         (WebCore::CCLayerTreeHost::initialize):
2605
2606 2011-10-24  Adam Klein  <adamk@chromium.org>
2607
2608         Optimize Node::isInShadowTree to execute in constant-time
2609         https://bugs.webkit.org/show_bug.cgi?id=67686
2610
2611         Reviewed by Dimitri Glazkov.
2612
2613         No expected change in behavior, so no new tests.
2614
2615         * dom/Node.cpp:
2616         (WebCore::Node::isInShadowTree):
2617
2618 2011-10-24  Nat Duca  <nduca@chromium.org>
2619
2620         [chromium] Expose WebThread::postDelayedTask to CCThread
2621         https://bugs.webkit.org/show_bug.cgi?id=70712
2622
2623         Reviewed by James Robinson.
2624
2625         * platform/graphics/chromium/cc/CCThread.h:
2626
2627 2011-10-24  Levi Weintraub  <leviw@chromium.org>
2628
2629         <svg> fails to use explicit width and height inside <html> inside IFRAME
2630         https://bugs.webkit.org/show_bug.cgi?id=64823
2631
2632         Reviewed by Nikolas Zimmermann.
2633
2634         Checking that embedded SVG is in an SVG document before negotiating size
2635         with the host document.
2636
2637         Test: svg/as-object/svg-embedded-in-html-in-iframe.html
2638
2639         * rendering/svg/RenderSVGRoot.cpp:
2640         (WebCore::isEmbeddedThroughFrameContainingSVGDocument):
2641         (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
2642         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
2643
2644 2011-10-24  Rafael Weinstein  <rafaelw@chromium.org>
2645
2646         Node::registeredMutationObserversOfType should be prefixed by "get"
2647         https://bugs.webkit.org/show_bug.cgi?id=70359
2648
2649         Reviewed by Ojan Vafai.
2650
2651         This change renames Node::registeredMutationObserversOfType to
2652         Node::getRegisteredMutationObserversOfType per the WebKit style guide.
2653
2654         No tests needed as the change is only method renaming.
2655
2656         * dom/CharacterData.cpp:
2657         (WebCore::CharacterData::dispatchModifiedEvent):
2658         * dom/ChildListMutationScope.cpp:
2659         (WebCore::MutationAccumulationRouter::MutationAccumulationRouter::incrementScopingLevel):
2660         * dom/Element.cpp:
2661         (WebCore::enqueueAttributesMutationRecord):
2662         * dom/Node.cpp:
2663         (WebCore::Node::getRegisteredMutationObserversOfType):
2664         * dom/Node.h:
2665
2666 2011-10-24  Mark Hahnenberg  <mhahnenberg@apple.com>
2667
2668         Rename static getOwnPropertySlot to getOwnPropertySlotByIndex
2669         https://bugs.webkit.org/show_bug.cgi?id=70271
2670
2671         Reviewed by Darin Adler.
2672
2673         No new tests.
2674
2675         Renaming versions of getOwnPropertySlot that use an unsigned as the property
2676         name to "getOwnPropertySlotByIndex" in preparation for adding them to the 
2677         MethodTable, which requires unique names for each method.
2678
2679         * bindings/js/SerializedScriptValue.cpp:
2680         (WebCore::CloneSerializer::getSparseIndex):
2681         * bindings/scripts/CodeGeneratorJS.pm:
2682         (GenerateHeader):
2683         (GenerateImplementation):
2684         * bridge/runtime_array.cpp:
2685         (JSC::RuntimeArray::getOwnPropertySlotVirtual):
2686         (JSC::RuntimeArray::getOwnPropertySlotByIndex):
2687         * bridge/runtime_array.h:
2688
2689 2011-10-24  Joshua Bell  <jsbell@chromium.org>
2690
2691         IndexedDB add should fail adding an inline and passed key simultaneously
2692         https://bugs.webkit.org/show_bug.cgi?id=58598
2693
2694         Reviewed by Tony Chang.
2695
2696         Test: storage/indexeddb/mozilla/key-requirements-inline-and-passed.html
2697
2698         Implement the spec clause: passing a key into add() or put() when
2699         the object store has a key path ("inline key") is an error.
2700
2701         * storage/IDBObjectStoreBackendImpl.cpp:
2702         (WebCore::IDBObjectStoreBackendImpl::put):
2703
2704 2011-10-24  Simon Fraser  <simon.fraser@apple.com>
2705
2706         Improve debug compositing border colors
2707         https://bugs.webkit.org/show_bug.cgi?id=70742
2708
2709         Reviewed by Dean Jackson.
2710
2711         Improve the appearance of the debug borders used to indicate compositing:
2712         1. Use green for normal layers, orange for tiled layers
2713         2. Make the repaint counter translucent
2714         3. Change the color of the repaint counter to show when accelerated drawing is enabled.
2715
2716         * platform/graphics/GraphicsLayer.cpp:
2717         (WebCore::GraphicsLayer::updateDebugIndicators):
2718         * platform/graphics/mac/WebLayer.mm:
2719         (drawLayerContents):
2720
2721 2011-10-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2722
2723         [GTK] Fix make distcheck build
2724         https://bugs.webkit.org/show_bug.cgi?id=69745
2725
2726         Reviewed by Martin Robinson.
2727
2728         * GNUmakefile.am:
2729         * GNUmakefile.list.am:
2730
2731 2011-10-24  Alexander Pavlov  <apavlov@chromium.org>
2732
2733         Web Inspector: [Styles] Adding a new style rule breaks things
2734         https://bugs.webkit.org/show_bug.cgi?id=70721
2735
2736         Reviewed by Pavel Feldman.
2737
2738         We had used to swap BlankStylePropertiesSection prototype and recently got rid of this hack,
2739         but still had dependencies on the old behavior.
2740
2741         * inspector/front-end/StylesSidebarPane.js:
2742         (WebInspector.StylesSidebarPane.prototype._refreshStyleRules):
2743         (WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace):
2744         (WebInspector.BlankStylePropertiesSection.prototype.get isBlank):
2745         (WebInspector.BlankStylePropertiesSection.prototype.expand):
2746         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
2747         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted):
2748         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCancelled):
2749         (WebInspector.BlankStylePropertiesSection.prototype.makeNormal):
2750
2751 2011-10-24  Pavel Feldman  <pfeldman@google.com>
2752
2753         Web Inspector: do not force document loading on reload (should happen on demand).
2754         https://bugs.webkit.org/show_bug.cgi?id=70724
2755
2756         Reviewed by Yury Semikhatsky.
2757
2758         * inspector/front-end/ConsoleMessage.js:
2759         (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsNode):
2760         * inspector/front-end/DOMAgent.js:
2761         (WebInspector.DOMAgent.prototype._documentUpdated):
2762         * inspector/front-end/ElementsPanel.js:
2763         (WebInspector.ElementsPanel.prototype.wasShown):
2764         * inspector/front-end/ElementsTreeOutline.js:
2765         (WebInspector.ElementsTreeOutline.prototype.setVisible):
2766
2767 2011-10-24  Eric Carlson  <eric.carlson@apple.com>
2768
2769         Drop MutableTextTrack and make TextTrack always mutable
2770         https://bugs.webkit.org/show_bug.cgi?id=62890
2771
2772         The MutableTextTrack type was removed from the spec, all text tracks are now mutable.
2773
2774         Reviewed by Sam Weinig.
2775
2776         No new tests needed, the changes just refactor existing code.
2777
2778         * CMakeLists.txt: Remove all traces of MutableTextTrack.
2779         * CodeGenerators.pri: Ditto.
2780         * DerivedSources.cpp: Ditto.
2781         * DerivedSources.make: Ditto.
2782         * GNUmakefile.list.am: Ditto.
2783         * WebCore.gypi: Ditto.
2784         * WebCore.pro: Ditto.
2785         * WebCore.xcodeproj/project.pbxproj: Ditto.
2786         * bindings/gobject/GNUmakefile.am: Ditto.
2787         * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp: Ditto.
2788         * bindings/js/JSBindingsAllInOne.cpp: Ditto.
2789
2790         * bindings/js/JSTextTrackCustom.cpp: Removed.
2791
2792         * html/HTMLMediaElement.cpp:
2793         (WebCore::HTMLMediaElement::addTrack): Return a TextTrack instead of a MutableTextTrack.
2794         * html/HTMLMediaElement.h:
2795         * html/HTMLMediaElement.idl:
2796
2797         * html/LoadableTextTrack.cpp:
2798         (WebCore::LoadableTextTrack::LoadableTextTrack): Return a TextTrack instead of a MutableTextTrack.
2799
2800         * html/MutableTextTrack.cpp: Removed.
2801         * html/MutableTextTrack.h: Removed.
2802         * html/MutableTextTrack.idl: Removed.
2803
2804         * html/TextTrack.cpp:
2805         (WebCore::TextTrack::TextTrack): Remove Type parameter.
2806         (WebCore::TextTrack::addCue): New, moved from MutableTextTrack.
2807         (WebCore::TextTrack::removeCue): Ditto.
2808         (WebCore::TextTrack::newCuesLoaded): Ditto.
2809         (WebCore::TextTrack::fetchNewestCues): Ditto.
2810         * html/TextTrack.h:
2811         (WebCore::TextTrack::create): Remove Type parameter
2812         * html/TextTrack.idl: Add addCue and removeCue.
2813
2814 2011-10-24  Yury Semikhatsky  <yurys@chromium.org>
2815
2816         Web Inspector: allow debugging dedicated worker initialization
2817         https://bugs.webkit.org/show_bug.cgi?id=70723
2818
2819         Now it is possible to pause each new dedicated worker on start. The user
2820         needs to select a checkbox and then each newly created dedicated worker
2821         will be paused on the first statement until the user resumes it explicitely.
2822
2823         Reviewed by Pavel Feldman.
2824
2825         * inspector/Inspector.json: resume command is added. It is similar to GDB's run
2826         command, i.e. worker execution will be paused until explicit "resume" command is
2827         received.
2828         * inspector/InspectorInstrumentation.cpp:
2829         (WebCore::InspectorInstrumentation::shouldPauseDedicatedWorkerOnStartImpl):
2830         * inspector/InspectorInstrumentation.h:
2831         (WebCore::InspectorInstrumentation::shouldPauseDedicatedWorkerOnStart):
2832         * inspector/InspectorRuntimeAgent.cpp:
2833         (WebCore::InspectorRuntimeAgent::resume):
2834         (WebCore::InspectorRuntimeAgent::pauseWorkerContext):
2835         * inspector/InspectorRuntimeAgent.h:
2836         * inspector/InspectorWorkerAgent.cpp:
2837         (WebCore::InspectorWorkerAgent::shouldPauseDedicatedWorkerOnStart): returns true
2838         if the user chose to automatically pause all new workers.
2839         * inspector/InspectorWorkerAgent.h:
2840         * inspector/WorkerInspectorController.cpp:
2841         (WebCore::WorkerInspectorController::resume):
2842         * inspector/front-end/WorkerManager.js:
2843         (WebInspector.WorkerManager.loaded):
2844         (WebInspector.WorkerManager.loadCompleted):
2845         (WebInspector.WorkerManager.prototype._workerCreated):
2846         (WebInspector.WorkerManager.prototype.openWorkerInspector):
2847         (WebInspector.WorkerManager.prototype._openInspectorWindow):
2848         * inspector/front-end/inspector.js:
2849         (WebInspector.loaded):
2850         * workers/Worker.cpp:
2851         (WebCore::Worker::notifyFinished):
2852         * workers/WorkerContextProxy.h:
2853         * workers/WorkerMessagingProxy.cpp:
2854         (WebCore::WorkerMessagingProxy::startWorkerContext): additional flag specifying
2855         worker initial state(paused/not paused) is added to the factory method. The flag
2856         will be carried to the corresponding WorkerThread.
2857         (WebCore::WorkerMessagingProxy::connectToInspector):
2858         * workers/WorkerMessagingProxy.h:
2859
2860 2011-10-21  Nikita Vasilyev  <me@elv1s.ru>
2861
2862         Web Inspector: Make indent configurable
2863         https://bugs.webkit.org/show_bug.cgi?id=69986
2864
2865         Add a setting to choose an indent from "8 spaces", "4 spaces" (default), "2 spaces", or "Tab character".
2866
2867         Reviewed by Pavel Feldman.
2868
2869         * English.lproj/localizedStrings.js:
2870         * inspector/front-end/SettingsScreen.js:
2871         (WebInspector.SettingsScreen):
2872         (WebInspector.SettingsScreen.prototype._createSelectSetting.get p):
2873         (WebInspector.SettingsScreen.prototype._createSelectSetting.changeListener):
2874         * inspector/front-end/TextEditorModel.js:
2875         (WebInspector.TextEditorModel):
2876         * inspector/front-end/TextViewer.js:
2877
2878 2011-10-17  Andrey Kosyakov  <caseq@chromium.org>
2879
2880         Web Inspector: add "Add to Watch" option to context menu on selection in source frame
2881         https://bugs.webkit.org/show_bug.cgi?id=69924
2882
2883         Reviewed by Pavel Feldman.
2884
2885         - added 'Add to Watch' context menu item in scripts panel;
2886         - include both default and custom items into a context menu if selection is present;
2887
2888         * inspector/front-end/ScriptsPanel.js:
2889         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.suggestedFileName):
2890         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.addToWatch):
2891         * inspector/front-end/SourceFrame.js:
2892         (WebInspector.SourceFrame.prototype.populateSelectionContextMenu):
2893         (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateSelectionContextMenu):
2894         (WebInspector.SourceFrameDelegate.prototype.suggestedFileName):
2895         (WebInspector.SourceFrameDelegate.prototype.addToWatch):
2896         * inspector/front-end/TextViewer.js:
2897         (WebInspector.TextViewer.prototype._contextMenu):
2898         (WebInspector.TextViewerDelegate.prototype.populateSelectionContextMenu):
2899         * inspector/front-end/WatchExpressionsSidebarPane.js:
2900         (WebInspector.WatchExpressionsSidebarPane.prototype.addExpression):
2901         (WebInspector.WatchExpressionsSidebarPane.prototype._addButtonClicked):
2902         (WebInspector.WatchExpressionsSection.prototype.addExpression):
2903         (WebInspector.WatchExpressionsSection.prototype.addNewExpressionAndEdit):
2904         * page/ContextMenuController.cpp:
2905         (WebCore::ContextMenuController::showContextMenu):
2906
2907 2011-10-21  Alexander Pavlov  <apavlov@chromium.org>
2908
2909         Web Inspector: Audits hang on pages without img[src] elements
2910         https://bugs.webkit.org/show_bug.cgi?id=70604
2911
2912         Reviewed by Pavel Feldman.
2913
2914         Test: inspector/audits/audits-panel-noimages-functional.html
2915
2916         * inspector/front-end/AuditRules.js:
2917         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
2918
2919 2011-10-24  Deepak Sherveghar  <bpwv64@motorola.com>
2920
2921         [Qt] fast/events/media-focus-in-standalone-media-document.html fails
2922         https://bugs.webkit.org/show_bug.cgi?id=70110
2923
2924         Reviewed by Simon Hausmann.
2925
2926         ExtensionMap should also include media files mapping.
2927
2928         * platform/qt/MIMETypeRegistryQt.cpp: Added media files mapping.
2929
2930 2011-10-24  Pavel Feldman  <pfeldman@google.com>
2931
2932         Not reviewed: [chromium] follow up to 98228 - added missing css.
2933
2934         * WebCore.gypi:
2935
2936 2011-10-24  Pavel Feldman  <pfeldman@chromium.org>
2937
2938         Web Inspector: Make CSS files load upon View demand; split inspector.css into views.
2939         https://bugs.webkit.org/show_bug.cgi?id=70694
2940
2941         Reviewed by Yury Semikhatsky.
2942
2943         * WebCore.gypi:
2944         * WebCore.vcproj/WebCore.vcproj:
2945         * inspector/front-end/AuditsPanel.js:
2946         (WebInspector.AuditsPanel):
2947         * inspector/front-end/DataGrid.js:
2948         (WebInspector.DataGrid):
2949         * inspector/front-end/ElementsPanel.js:
2950         * inspector/front-end/NetworkPanel.js:
2951         (WebInspector.NetworkLogView):
2952         * inspector/front-end/PanelEnablerView.js:
2953         * inspector/front-end/ProfilesPanel.js:
2954         * inspector/front-end/ResourceView.js:
2955         (WebInspector.ResourceView):
2956         * inspector/front-end/ResourcesPanel.js:
2957         * inspector/front-end/ScriptsPanel.js:
2958         * inspector/front-end/TextViewer.js:
2959         * inspector/front-end/TimelinePanel.js:
2960         (WebInspector.TimelinePanel):
2961         * inspector/front-end/WebKit.qrc:
2962         * inspector/front-end/WelcomeView.js:
2963         (WebInspector.WelcomeView):
2964         * inspector/front-end/auditsPanel.css: Renamed from Source/WebCore/inspector/front-end/audits.css.
2965
2966 2011-10-24  Pavel Feldman  <pfeldman@chromium.org>
2967
2968         Web Inspector: make view load CSS files upon show.
2969         https://bugs.webkit.org/show_bug.cgi?id=70696
2970
2971         Reviewed by Yury Semikhatsky.
2972
2973         Test: inspector/view-css.html
2974
2975         * inspector/front-end/View.js:
2976         (WebInspector.View):
2977         (WebInspector.View.prototype._callOnVisibleChildren):
2978         (WebInspector.View.prototype._processWillShow):
2979         (WebInspector.View.prototype._processWasShown):
2980         (WebInspector.View.prototype._processWillHide):
2981         (WebInspector.View.prototype._processWasHidden):
2982         (WebInspector.View.prototype._processOnResize):
2983         (WebInspector.View.prototype.show):
2984         (WebInspector.View.prototype.detach):
2985         (WebInspector.View.prototype.registerRequiredCSS):
2986         (WebInspector.View.prototype._loadCSSIfNeeded):
2987         (WebInspector.View.prototype._doLoadCSS):
2988         (WebInspector.View.prototype._disableCSSIfNeeded):
2989         (WebInspector.View.prototype._doUnloadCSS):
2990
2991 2011-10-24  Pavel Feldman  <pfeldman@chromium.org>
2992
2993         Web Inspector: make DataGrid a view
2994         https://bugs.webkit.org/show_bug.cgi?id=70695
2995
2996         Reviewed by Yury Semikhatsky.
2997
2998         * inspector/front-end/ApplicationCacheItemsView.js:
2999         (WebInspector.ApplicationCacheItemsView.prototype._createDataGrid):
3000         * inspector/front-end/CookieItemsView.js:
3001         (WebInspector.CookieItemsView.prototype._updateWithCookies):
3002         (WebInspector.SimpleCookiesTable):
3003         (WebInspector.SimpleCookiesTable.prototype.setCookies):
3004         * inspector/front-end/CookiesTable.js:
3005         (WebInspector.CookiesTable):
3006         * inspector/front-end/DOMStorageItemsView.js:
3007         (WebInspector.DOMStorageItemsView.prototype._showDOMStorageEntries):
3008         * inspector/front-end/DataGrid.js:
3009         (WebInspector.DataGrid):
3010         (WebInspector.DataGrid.prototype.onResize):
3011         * inspector/front-end/DatabaseQueryView.js:
3012         (WebInspector.DatabaseQueryView.prototype._queryFinished):
3013         (WebInspector.DatabaseQueryView.prototype._queryError):
3014         (WebInspector.DatabaseQueryView.prototype._appendViewQueryResult):
3015         (WebInspector.DatabaseQueryView.prototype._appendErrorQueryResult):
3016         (WebInspector.DatabaseQueryView.prototype._appendQueryResult):
3017         * inspector/front-end/DatabaseTableView.js:
3018         (WebInspector.DatabaseTableView.prototype._queryFinished):
3019         * inspector/front-end/DetailedHeapshotView.js:
3020         (WebInspector.DetailedHeapshotView.prototype.wasShown.profileCallback2):
3021         (WebInspector.DetailedHeapshotView.prototype.wasShown):
3022         (WebInspector.DetailedHeapshotView.prototype.onResize):
3023         * inspector/front-end/NetworkPanel.js:
3024         (WebInspector.NetworkLogView.prototype.onResize):
3025         (WebInspector.NetworkLogView.prototype._createTable):
3026         * inspector/front-end/ProfileView.js:
3027         * inspector/front-end/ResourceCookiesView.js:
3028         (WebInspector.ResourceCookiesView.prototype._buildCookiesTable):
3029         * inspector/front-end/ResourceView.js:
3030         (WebInspector.ResourceView):
3031
3032 2011-10-24  Yosifumi Inoue  <yosin@chromium.org>
3033
3034         [Forms] Setting defaultValue should hide an input placeholder.
3035         https://bugs.webkit.org/show_bug.cgi?id=70586
3036
3037         Reviewed by Kent Tamura.
3038
3039         Tests: fast/forms/placeholder-and-default-value-expected.html
3040                fast/forms/placeholder-and-default-value.html
3041
3042         When input element has default value, we should not display
3043         placeholder. Changing default value should tell rendering engine about
3044         changing display of input element.
3045
3046         * html/HTMLInputElement.cpp:
3047         (WebCore::HTMLInputElement::parseMappedAttribute): Calls updatePlaceholderVisibility for valueAttr if it doesn't have dirty value.
3048
3049 2011-10-23  Darin Adler  <darin@apple.com>
3050
3051         Eliminate OptionElement (second and final part)
3052         https://bugs.webkit.org/show_bug.cgi?id=70710
3053
3054         Reviewed by Kent Tamura.
3055
3056         * CMakeLists.txt: Removed OptionElement.h and OptionElement.cpp.
3057         * GNUmakefile.list.am: Ditto.
3058         * WebCore.gypi: Ditto.
3059         * WebCore.pro: Ditto.
3060         * WebCore.vcproj/WebCore.vcproj: Ditto.
3061         * WebCore.xcodeproj/project.pbxproj: Ditto.
3062         * dom/DOMAllInOne.cpp: Ditto.
3063
3064         * dom/OptionElement.cpp: Removed.
3065         * dom/OptionElement.h: Removed.
3066
3067         * html/HTMLSelectElement.cpp:
3068         (WebCore::HTMLSelectElement::saveLastSelection): Eliminate use of the
3069         toOptionElement function. Use hasTagName and toHTMLOptionElement instead.
3070         (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex): Ditto.
3071         (WebCore::HTMLSelectElement::updateListBoxSelection): Ditto.
3072         (WebCore::HTMLSelectElement::listBoxOnChange): Ditto.
3073         (WebCore::HTMLSelectElement::recalcListItems): Ditto.
3074         (WebCore::HTMLSelectElement::selectedIndex): Ditto.
3075         (WebCore::HTMLSelectElement::setSelectedIndex): Ditto.
3076         (WebCore::HTMLSelectElement::deselectItemsWithoutValidation): Ditto.
3077         (WebCore::HTMLSelectElement::saveFormControlState): Ditto.
3078         (WebCore::HTMLSelectElement::restoreFormControlState): Ditto.
3079         (WebCore::HTMLSelectElement::appendFormData): Ditto.
3080         (WebCore::HTMLSelectElement::reset): Ditto.
3081         (WebCore::HTMLSelectElement::updateSelectedState): Ditto.
3082         (WebCore::HTMLSelectElement::lastSelectedListIndex): Ditto.
3083         (WebCore::HTMLSelectElement::typeAheadFind): Ditto.
3084         (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): Ditto.
3085
3086         * html/HTMLSelectElement.h: Changed the argument type of the
3087         deselectItemsWithoutValidation function to HTMLElement* since that's
3088         the type of an item in our items vector now.
3089
3090 2011-10-23  Yuzo Fujishima  <yuzo@google.com>
3091
3092         [chromium] Attempt to fix compilation error for Chromium OS.
3093
3094         Unreviewed.
3095
3096         * mediastream/MediaStreamTrack.cpp:
3097         (WebCore::MediaStreamTrack::kind):
3098
3099 2011-10-23  Adam Barth  <abarth@webkit.org>
3100
3101         <img crossorigin> should fail to load when CORS check fails
3102         https://bugs.webkit.org/show_bug.cgi?id=69732
3103
3104         Reviewed by Darin Adler.
3105
3106         When loading an image with the crossorigin attribute, the spec says
3107         that we're not supposed to load the image if the CORS check fails.
3108         This "fails fast" behavior is intended to help developers understand
3109         whether they've configured CORS correctly (instead of only catching the
3110         error later when trying to read back the canvas).
3111
3112         Our new behavior matches the spec and Firefox.
3113
3114         Test: http/tests/security/img-with-failed-cors-check-fails-to-load.html
3115
3116         * loader/ImageLoader.cpp:
3117         (WebCore::ImageLoader::notifyFinished):
3118
3119 2011-10-23  Noel Gordon  <noel.gordon@gmail.com>
3120
3121         [chromium] Remove GeolocationServiceGtk.{h,cpp} from the gyp projects
3122         https://bugs.webkit.org/show_bug.cgi?id=70702
3123
3124         Reviewed by Kent Tamura.
3125
3126         platform/gtk/GeolocationServiceGtk.{h,cpp} were removed in r97746, so
3127         remove references to these files from the gyp files.
3128
3129         * WebCore.gypi:
3130
3131 2011-10-23  Andreas Kling  <kling@webkit.org>
3132
3133         Move StyleSheet::addSubresourceStyleURLs() to CSSStyleSheet.
3134         https://bugs.webkit.org/show_bug.cgi?id=70690
3135
3136         Reviewed by Antti Koivisto.
3137
3138         This method isn't part of the StyleSheet DOM interface, nor is it used by
3139         XSLStyleSheet, so move it down to CSSStyleSheet and make it non-virtual.
3140         Also remove some nearby unneeded casts from CSSStyleSheet* to StyleSheet*.
3141
3142         * css/CSSStyleSheet.h:
3143         * css/StyleSheet.h:
3144         * html/HTMLLinkElement.cpp:
3145         (WebCore::HTMLLinkElement::isLoading):
3146         (WebCore::HTMLLinkElement::addSubresourceAttributeURLs):
3147         * html/HTMLStyleElement.cpp:
3148         (WebCore::HTMLStyleElement::addSubresourceAttributeURLs):
3149         (WebCore::HTMLStyleElement::disabled):
3150         (WebCore::HTMLStyleElement::setDisabled):
3151
3152 2011-10-23  Andreas Kling  <kling@webkit.org>
3153
3154         Remove style sheet constructors that take a style sheet parent.
3155         https://bugs.webkit.org/show_bug.cgi?id=70692
3156
3157         Reviewed by Antti Koivisto.
3158
3159         Style sheets are never directly parented by other style sheets, they always
3160         go via a rule (such as @import.)
3161
3162         * css/CSSStyleSheet.cpp:
3163         * css/CSSStyleSheet.h:
3164         (WebCore::CSSStyleSheet::create):
3165         * css/StyleSheet.cpp:
3166         * css/StyleSheet.h:
3167
3168 2011-10-23  Mark Hahnenberg  <mhahnenberg@apple.com>
3169
3170         Add deleteProperty to the MethodTable
3171         https://bugs.webkit.org/show_bug.cgi?id=70162
3172
3173         Reviewed by Sam Weinig.
3174
3175         No new tests.
3176
3177         * WebCore.exp.in:
3178
3179 2011-10-23  Adam Barth  <abarth@webkit.org>
3180
3181         Update baselines for run-bindings-tests.
3182
3183         * bindings/scripts/test/JS/JSTestInterface.cpp:
3184         * bindings/scripts/test/JS/JSTestInterface.h:
3185         * bindings/scripts/test/JS/JSTestObj.cpp:
3186
3187 2011-10-23  Mark Hahnenberg  <mhahnenberg@apple.com>
3188
3189         Remove getConstructDataVirtual
3190         https://bugs.webkit.org/show_bug.cgi?id=70638
3191
3192         Reviewed by Darin Adler.
3193
3194         No new tests.
3195
3196         Removed all declarations and definitions of getConstructDataVirtual.
3197         Also replaced all call sites to getConstructDataVirtual with a 
3198         corresponding lookup in the MethodTable.
3199
3200         * WebCore.exp.in:
3201         * bindings/js/JSAudioConstructor.cpp:
3202         * bindings/js/JSAudioConstructor.h:
3203         * bindings/js/JSImageConstructor.cpp:
3204         * bindings/js/JSImageConstructor.h:
3205         * bindings/js/JSOptionConstructor.cpp:
3206         * bindings/js/JSOptionConstructor.h:
3207         * bindings/js/ScriptFunctionCall.cpp:
3208         (WebCore::ScriptFunctionCall::construct):
3209         * bindings/scripts/CodeGeneratorJS.pm:
3210         (GenerateConstructorDeclaration):
3211         (GenerateConstructorDefinition):
3212         * bridge/runtime_object.cpp:
3213         * bridge/runtime_object.h:
3214
3215 2011-10-22  Geoffrey Garen  <ggaren@apple.com>
3216
3217         Separated string lifetime bits from character buffer state bits
3218         https://bugs.webkit.org/show_bug.cgi?id=70673
3219
3220         Reviewed by Anders Carlsson.
3221
3222         * bindings/scripts/CodeGeneratorJS.pm:
3223         (GenerateHashValue): Updated for string hashing changes in JavaScriptCore.
3224
3225 2011-10-22  Pratik Solanki  <psolanki@apple.com>
3226
3227         HTTPBodyStream in NSURLRequest gets lost when using CFNetwork loader
3228         https://bugs.webkit.org/show_bug.cgi?id=70583
3229         <rdar://problem/10281227>
3230
3231         Reviewed by Darin Adler.
3232
3233         Call WebCore::setHTTPBody() only if we actually have a FormData. Unconditionally calling it
3234         results in us passing 0 to wkCFURLRequestSetHTTPRequestBodyParts() which resets any input
3235         stream specified by the user on the NSURLRequest. This code matches the behavior in the
3236         Foundation version of doUpdatePlatformRequest().
3237
3238         * platform/network/cf/ResourceRequestCFNet.cpp:
3239         (WebCore::ResourceRequest::doUpdatePlatformRequest):
3240
3241 2011-10-22  Adam Bergkvist  <adam.bergkvist@ericsson.com>
3242
3243         Move all MediaStream and PeerConnection related non-platform files to WebCore/mediastream
3244         https://bugs.webkit.org/show_bug.cgi?id=70233
3245
3246         Reviewed by Adam Barth.
3247
3248         Removed affected files from build systems that don't have a MEDIA_STREAM build flag.
3249
3250         No new tests since we're just moving files.
3251
3252         * CMakeLists.txt:
3253         * CodeGenerators.pri:
3254         * DerivedSources.cpp:
3255         * DerivedSources.make:
3256         * GNUmakefile.am:
3257         * GNUmakefile.list.am:
3258         * UseJSC.cmake:
3259         * WebCore.gyp/WebCore.gyp:
3260         * WebCore.gypi:
3261         * WebCore.pro:
3262         * WebCore.vcproj/WebCore.vcproj:
3263         * WebCore.xcodeproj/project.pbxproj:
3264         * bindings/js/JSBindingsAllInOne.cpp:
3265         * dom/DOMAllInOne.cpp:
3266         * dom/DispatchTask.h: Removed unused file.
3267         * dom/ScriptExecutionContext.cpp:
3268         * mediastream/LocalMediaStream.cpp: Renamed from Source/WebCore/dom/LocalMediaStream.cpp.
3269         (WebCore::LocalMediaStream::create):
3270         (WebCore::LocalMediaStream::LocalMediaStream):
3271         (WebCore::LocalMediaStream::stop):
3272         (WebCore::LocalMediaStream::stopTimerFired):
3273         (WebCore::LocalMediaStream::~LocalMediaStream):
3274         (WebCore::LocalMediaStream::toLocalMediaStream):
3275         * mediastream/LocalMediaStream.h: Renamed from Source/WebCore/dom/LocalMediaStream.h.
3276         * mediastream/LocalMediaStream.idl: Renamed from Source/WebCore/dom/LocalMediaStream.idl.
3277         * mediastream/MediaStream.cpp: Renamed from Source/WebCore/dom/MediaStream.cpp.
3278         (WebCore::MediaStream::create):
3279         (WebCore::MediaStream::MediaStream):
3280         (WebCore::MediaStream::~MediaStream):
3281         (WebCore::MediaStream::readyState):
3282         (WebCore::MediaStream::toMediaStream):
3283         (WebCore::MediaStream::streamEnded):
3284         (WebCore::MediaStream::scriptExecutionContext):
3285         (WebCore::MediaStream::eventTargetData):
3286         (WebCore::MediaStream::ensureEventTargetData):
3287         * mediastream/MediaStream.h: Renamed from Source/WebCore/dom/MediaStream.h.
3288         (WebCore::MediaStream::label):
3289         (WebCore::MediaStream::tracks):
3290         (WebCore::MediaStream::descriptor):
3291         (WebCore::MediaStream::refEventTarget):
3292         (WebCore::MediaStream::derefEventTarget):
3293         * mediastream/MediaStream.idl: Renamed from Source/WebCore/dom/MediaStream.idl.
3294         * mediastream/MediaStreamClient.h: Renamed from Source/WebCore/page/MediaStreamClient.h.
3295         (WebCore::MediaStreamClient::~MediaStreamClient):
3296         * mediastream/MediaStreamController.cpp: Renamed from Source/WebCore/page/MediaStreamController.cpp.
3297         (WebCore::MediaStreamController::Request::Request):
3298         (WebCore::MediaStreamController::Request::localId):
3299         (WebCore::MediaStreamController::Request::frameController):
3300         (WebCore::MediaStreamController::MediaStreamController):
3301         (WebCore::MediaStreamController::~MediaStreamController):
3302         (WebCore::MediaStreamController::isClientAvailable):
3303         (WebCore::MediaStreamController::unregisterFrameController):
3304         (WebCore::MediaStreamController::registerRequest):
3305         (WebCore::MediaStreamController::generateStream):
3306         (WebCore::MediaStreamController::streamGenerated):
3307         (WebCore::MediaStreamController::streamGenerationFailed):
3308         * mediastream/MediaStreamController.h: Renamed from Source/WebCore/page/MediaStreamController.h.
3309         * mediastream/MediaStreamEvent.cpp: Renamed from Source/WebCore/p2p/MediaStreamEvent.cpp.
3310         (WebCore::MediaStreamEvent::create):
3311         (WebCore::MediaStreamEvent::MediaStreamEvent):
3312         (WebCore::MediaStreamEvent::~MediaStreamEvent):
3313         (WebCore::MediaStreamEvent::initMediaStreamEvent):
3314         (WebCore::MediaStreamEvent::stream):
3315         * mediastream/MediaStreamEvent.h: Renamed from Source/WebCore/p2p/MediaStreamEvent.h.
3316         (WebCore::MediaStreamEvent::isMediaStreamEvent):
3317         * mediastream/MediaStreamEvent.idl: Renamed from Source/WebCore/p2p/MediaStreamEvent.idl.
3318         * mediastream/MediaStreamFrameController.cpp: Renamed from Source/WebCore/page/MediaStreamFrameController.cpp.
3319         (WebCore::MediaStreamFrameController::Request::~Request):
3320         (WebCore::MediaStreamFrameController::Request::scriptExecutionContext):
3321         (WebCore::MediaStreamFrameController::Request::isGenerateStreamRequest):
3322         (WebCore::MediaStreamFrameController::Request::Request):
3323         (WebCore::MediaStreamFrameController::GenerateStreamRequest::create):
3324         (WebCore::MediaStreamFrameController::GenerateStreamRequest::~GenerateStreamRequest):
3325         (WebCore::MediaStreamFrameController::GenerateStreamRequest::isGenerateStreamRequest):
3326         (WebCore::MediaStreamFrameController::GenerateStreamRequest::abort):
3327         (WebCore::MediaStreamFrameController::GenerateStreamRequest::successCallback):
3328         (WebCore::MediaStreamFrameController::GenerateStreamRequest::errorCallback):
3329         (WebCore::MediaStreamFrameController::GenerateStreamRequest::GenerateStreamRequest):
3330         (WebCore::MediaStreamFrameController::RequestMap::abort):
3331         (WebCore::MediaStreamFrameController::RequestMap::abortAll):
3332         (WebCore::MediaStreamFrameController::MediaStreamFrameController):
3333         (WebCore::MediaStreamFrameController::~MediaStreamFrameController):
3334         (WebCore::MediaStreamFrameController::securityOrigin):
3335         (WebCore::MediaStreamFrameController::scriptExecutionContext):
3336         (WebCore::MediaStreamFrameController::pageController):
3337         (WebCore::MediaStreamFrameController::enterDetachedState):
3338         (WebCore::MediaStreamFrameController::isClientAvailable):
3339         (WebCore::MediaStreamFrameController::disconnectPage):
3340         (WebCore::MediaStreamFrameController::disconnectFrame):
3341         (WebCore::MediaStreamFrameController::transferToNewPage):
3342         (WebCore::MediaStreamFrameController::parseGenerateStreamOptions):
3343         (WebCore::MediaStreamFrameController::generateStream):
3344         (WebCore::MediaStreamFrameController::streamGenerated):
3345         (WebCore::MediaStreamFrameController::streamGenerationFailed):
3346         * mediastream/MediaStreamFrameController.h: Renamed from Source/WebCore/page/MediaStreamFrameController.h.
3347         (WebCore::MediaStreamFrameController::IdGenerator::IdGenerator):
3348         (WebCore::MediaStreamFrameController::IdGenerator::getNextId):
3349         * mediastream/MediaStreamList.cpp: Renamed from Source/WebCore/dom/MediaStreamList.cpp.
3350         (WebCore::MediaStreamList::create):
3351         (WebCore::MediaStreamList::MediaStreamList):
3352         (WebCore::MediaStreamList::~MediaStreamList):
3353         (WebCore::MediaStreamList::length):
3354         (WebCore::MediaStreamList::item):
3355         (WebCore::MediaStreamList::append):
3356         (WebCore::MediaStreamList::remove):
3357         (WebCore::MediaStreamList::contains):
3358         * mediastream/MediaStreamList.h: Renamed from Source/WebCore/dom/MediaStreamList.h.
3359         * mediastream/MediaStreamList.idl: Renamed from Source/WebCore/dom/MediaStreamList.idl.
3360         * mediastream/MediaStreamRegistry.cpp: Renamed from Source/WebCore/platform/MediaStreamRegistry.cpp.
3361         (WebCore::MediaStreamRegistry::registry):
3362         (WebCore::MediaStreamRegistry::registerMediaStreamURL):
3363         (WebCore::MediaStreamRegistry::unregisterMediaStreamURL):
3364         (WebCore::MediaStreamRegistry::mediaStream):
3365         * mediastream/MediaStreamRegistry.h: Renamed from Source/WebCore/platform/MediaStreamRegistry.h.
3366         * mediastream/MediaStreamTrack.cpp: Renamed from Source/WebCore/dom/MediaStreamTrack.cpp.
3367         (WebCore::MediaStreamTrack::create):
3368         (WebCore::MediaStreamTrack::MediaStreamTrack):
3369         (WebCore::MediaStreamTrack::~MediaStreamTrack):
3370         (WebCore::MediaStreamTrack::kind):
3371         (WebCore::MediaStreamTrack::label):
3372         (WebCore::MediaStreamTrack::enabled):
3373         (WebCore::MediaStreamTrack::setEnabled):
3374         * mediastream/MediaStreamTrack.h: Renamed from Source/WebCore/dom/MediaStreamTrack.h.
3375         * mediastream/MediaStreamTrack.idl: Renamed from Source/WebCore/dom/MediaStreamTrack.idl.
3376         * mediastream/MediaStreamTrackList.cpp: Renamed from Source/WebCore/dom/MediaStreamTrackList.cpp.
3377         (WebCore::MediaStreamTrackList::create):
3378         (WebCore::MediaStreamTrackList::MediaStreamTrackList):
3379         (WebCore::MediaStreamTrackList::~MediaStreamTrackList):
3380         (WebCore::MediaStreamTrackList::length):
3381         (WebCore::MediaStreamTrackList::item):
3382         * mediastream/MediaStreamTrackList.h: Renamed from Source/WebCore/dom/MediaStreamTrackList.h.
3383         * mediastream/MediaStreamTrackList.idl: Renamed from Source/WebCore/dom/MediaStreamTrackList.idl.
3384         * mediastream/PeerConnection.cpp: Renamed from Source/WebCore/p2p/PeerConnection.cpp.
3385         (WebCore::PeerConnection::create):
3386         (WebCore::PeerConnection::PeerConnection):
3387         (WebCore::PeerConnection::~PeerConnection):
3388         (WebCore::PeerConnection::processSignalingMessage):
3389         (WebCore::PeerConnection::readyState):
3390         (WebCore::PeerConnection::send):
3391         (WebCore::PeerConnection::addStream):
3392         (WebCore::PeerConnection::removeStream):
3393         (WebCore::PeerConnection::localStreams):
3394         (WebCore::PeerConnection::remoteStreams):
3395         (WebCore::PeerConnection::close):
3396         (WebCore::PeerConnection::iceProcessingCompleted):
3397         (WebCore::PeerConnection::sdpGenerated):
3398         (WebCore::PeerConnection::dataStreamMessageReceived):
3399         (WebCore::PeerConnection::remoteStreamAdded):
3400         (WebCore::PeerConnection::remoteStreamRemoved):
3401         (WebCore::PeerConnection::toPeerConnection):
3402         (WebCore::PeerConnection::scriptExecutionContext):
3403         (WebCore::PeerConnection::stop):
3404         (WebCore::PeerConnection::eventTargetData):
3405         (WebCore::PeerConnection::ensureEventTargetData):
3406         (WebCore::PeerConnection::scheduleInitialNegotiation):
3407         (WebCore::PeerConnection::initialNegotiationTimerFired):
3408         (WebCore::PeerConnection::ensureStreamChangeScheduled):
3409         (WebCore::PeerConnection::streamChangeTimerFired):
3410         (WebCore::PeerConnection::scheduleReadyStateChange):
3411         (WebCore::PeerConnection::readyStateChangeTimerFired):
3412         (WebCore::PeerConnection::changeReadyState):
3413         * mediastream/PeerConnection.h: Renamed from Source/WebCore/p2p/PeerConnection.h.
3414         (WebCore::PeerConnection::refEventTarget):
3415         (WebCore::PeerConnection::derefEventTarget):
3416         * mediastream/PeerConnection.idl: Renamed from Source/WebCore/p2p/PeerConnection.idl.
3417         * mediastream/SignalingCallback.h: Renamed from Source/WebCore/p2p/SignalingCallback.h.
3418         (WebCore::SignalingCallback::~SignalingCallback):
3419         * mediastream/SignalingCallback.idl: Renamed from Source/WebCore/p2p/SignalingCallback.idl.
3420         * page/Frame.cpp:
3421         * page/Navigator.cpp:
3422         * page/Page.cpp:
3423
3424 2011-10-20  Pavel Feldman  <pfeldman@google.com>
3425
3426         Web Inspector: get rid of View::hide, View::set visible, View::attach,
3427         View::set visible.
3428         https://bugs.webkit.org/show_bug.cgi?id=70523
3429
3430         This change also introduces assetions that forces view attach / detach operations
3431         to be performed explicitly.
3432
3433         Reviewed by Yury Semikhatsky.
3434
3435         * inspector/front-end/ApplicationCacheItemsView.js:
3436         (WebInspector.ApplicationCacheItemsView.prototype.wasShown):
3437         (WebInspector.ApplicationCacheItemsView.prototype.willHide):
3438         (WebInspector.ApplicationCacheItemsView.prototype._updateCallback):
3439         * inspector/front-end/AuditsPanel.js:
3440         (WebInspector.AuditsPanel.prototype.wasShown):
3441         * inspector/front-end/ConsolePanel.js:
3442         (WebInspector.ConsolePanel.prototype.wasShown):
3443         (WebInspector.ConsolePanel.prototype.willHide):
3444         * inspector/front-end/ConsoleView.js:
3445         (WebInspector.ConsoleView.prototype.wasShown):
3446         * inspector/front-end/CookieItemsView.js:
3447         (WebInspector.CookieItemsView.prototype.wasShown):
3448         (WebInspector.CookieItemsView.prototype.willHide):
3449         (WebInspector.CookieItemsView.prototype._updateWithCookies):
3450         * inspector/front-end/DOMStorageItemsView.js:
3451         (WebInspector.DOMStorageItemsView.prototype.wasShown):
3452         (WebInspector.DOMStorageItemsView.prototype.willHide):
3453         * inspector/front-end/DatabaseQueryView.js:
3454         * inspector/front-end/DatabaseTableView.js:
3455         (WebInspector.DatabaseTableView.prototype.wasShown):
3456         * inspector/front-end/DetailedHeapshotView.js:
3457         (WebInspector.DetailedHeapshotView.prototype.willHide):
3458         (WebInspector.DetailedHeapshotView.prototype._changeView):
3459         * inspector/front-end/Drawer.js:
3460         (WebInspector.Drawer.prototype.hide):
3461         * inspector/front-end/ElementsPanel.js:
3462         (WebInspector.ElementsPanel.prototype.wasShown):
3463         (WebInspector.ElementsPanel.prototype.willHide):
3464         * inspector/front-end/EmptyView.js:
3465         (WebInspector.EmptyView.prototype.wasShown):
3466         * inspector/front-end/FontView.js:
3467         (WebInspector.FontView.prototype.wasShown):
3468         * inspector/front-end/IFrameView.js:
3469         (WebInspector.IFrameView):
3470         * inspector/front-end/ImageView.js:
3471         (WebInspector.ImageView.prototype.wasShown):
3472         * inspector/front-end/NetworkItemView.js:
3473         (WebInspector.NetworkItemView.prototype.wasShown):
3474         (WebInspector.ResourceContentView.prototype.wasShown):
3475         * inspector/front-end/NetworkPanel.js:
3476         (WebInspector.NetworkLogView.prototype.wasShown):
3477         (WebInspector.NetworkLogView.prototype.willHide):
3478         (WebInspector.NetworkPanel.prototype.wasShown):
3479         * inspector/front-end/Panel.js:
3480         (WebInspector.Panel):
3481         (WebInspector.Panel.prototype.show):
3482         (WebInspector.Panel.prototype.wasShown):
3483         (WebInspector.Panel.prototype.willHide):
3484         * inspector/front-end/PanelEnablerView.js:
3485         * inspector/front-end/ProfileView.js:
3486         (WebInspector.CPUProfileView.prototype.willHide):
3487         * inspector/front-end/ProfilesPanel.js:
3488         (WebInspector.ProfilesPanel.prototype.wasShown):
3489         (WebInspector.ProfilesPanel.prototype._addProfileHeader):
3490         (WebInspector.ProfilesPanel.prototype._updateInterface):
3491         (WebInspector.ProfilesPanel.prototype._enableDetailedHeapProfiles):
3492         * inspector/front-end/ResourceCookiesView.js:
3493         (WebInspector.ResourceCookiesView.prototype.wasShown):
3494         * inspector/front-end/ResourceHTMLView.js:
3495         (WebInspector.ResourceHTMLView.prototype.wasShown):
3496         (WebInspector.ResourceHTMLView.prototype.willHide):
3497         * inspector/front-end/ResourceJSONView.js:
3498         (WebInspector.ResourceJSONView.parseJSON.WebInspector.ResourceJSONView.prototype.wasShown):
3499         * inspector/front-end/ResourceTimingView.js:
3500         (WebInspector.ResourceTimingView.prototype.wasShown):
3501         * inspector/front-end/ResourcesPanel.js:
3502         (WebInspector.ResourcesPanel.prototype.wasShown):
3503         * inspector/front-end/ScriptsPanel.js:
3504         (WebInspector.ScriptsPanel.prototype.wasShown):
3505         (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons):
3506         * inspector/front-end/SourceFrame.js:
3507         (WebInspector.SourceFrame.prototype.wasShown):
3508         * inspector/front-end/TimelinePanel.js:
3509         (WebInspector.TimelinePanel.prototype.wasShown):
3510         (WebInspector.TimelinePanel.prototype.willHide):
3511         * inspector/front-end/View.js:
3512         (WebInspector.View):
3513         (WebInspector.View.prototype.get visible):
3514         (WebInspector.View.prototype.setHideOnDetach):
3515         (WebInspector.View.prototype._wasShown):
3516         (WebInspector.View.prototype._willHide):
3517         (WebInspector.View.prototype._onResize):
3518         (WebInspector.View.prototype.wasShown):
3519         (WebInspector.View.prototype.willHide):
3520         (WebInspector.View.prototype.onResize):
3521         (WebInspector.View.prototype.show):
3522         (WebInspector.View.prototype.detach):
3523         (WebInspector.View.prototype.doResize):
3524         (WebInspector.View.prototype.dispatchToSelfAndChildren):
3525         (WebInspector.View.prototype.dispatchToChildren):
3526         (WebInspector.View.prototype._handleInsertedIntoDocument):
3527
3528 2011-10-22  Kent Tamura  <tkent@chromium.org>
3529
3530         REGRESSION(r92480): Passing uninitialized variable in HTMLElement::calculateAndAdjustDirectionality()
3531         https://bugs.webkit.org/show_bug.cgi?id=70582
3532
3533         Reviewed by Darin Adler.
3534
3535         No new tests. It's very hard to make a reliable test.
3536
3537         * html/HTMLElement.cpp:
3538         (WebCore::HTMLElement::directionality):
3539         Clear *strongDirectionalityTextNode even if hasStrongDirectionality is false.
3540
3541 2011-10-21  Dan Bernstein  <mitz@apple.com>
3542
3543         Caret is drawn in the wrong place in multi-column blocks
3544         https://bugs.webkit.org/show_bug.cgi?id=70662
3545
3546         Reviewed by Gavin Barraclough.
3547
3548         * manual-tests/caret-in-columns.html: Added.
3549         * rendering/RenderBlock.cpp:
3550         (WebCore::RenderBlock::paintCaret): Removed the call to offsetForContents(). That function takes
3551         a point in local coordinates, whereas this function was applying it to a point in painting root
3552         coordinates. The desired effect was only to undo the scroll adjustment done by the caller,
3553         paintObject().
3554         (WebCore::RenderBlock::paintObject): Pass the original, rather than scroll-adjusted, paint offset
3555         to paintCaret().
3556
3557 2011-10-21  Nat Duca  <nduca@chromium.org>
3558
3559         [chromium] Make setVisibility extension- and thread-correct
3560         https://bugs.webkit.org/show_bug.cgi?id=70635
3561
3562         Reviewed by Kenneth Russell.
3563
3564         * platform/graphics/chromium/Extensions3DChromium.h:
3565         * platform/graphics/chromium/LayerRendererChromium.cpp:
3566         (WebCore::LayerRendererChromium::initialize):
3567         (WebCore::LayerRendererChromium::setVisible):
3568         * platform/graphics/chromium/LayerRendererChromium.h:
3569         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3570         (WebCore::LayerRendererCapabilities::LayerRendererCapabilities):
3571         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
3572         (WebCore::CCLayerTreeHostImpl::setVisible):
3573
3574 2011-10-21  Beth Dakin  <bdakin@apple.com>
3575
3576         https://bugs.webkit.org/show_bug.cgi?id=70647
3577         Common but unreproducible crash under [ScrollbarPartAnimation setCurrentProgress:]
3578         -and corresponding-
3579         <rdar://problem/9542018>
3580
3581         Reviewed by Sam Weinig.
3582
3583         This patch implements two speculative fixes for this crash.
3584
3585         First, block exceptions around all of the code responsible for calling 
3586         stopAnimation. If that code throws any exceptions, we want to make sure the other 
3587         animations are still stopped.
3588         * platform/mac/ScrollAnimatorMac.mm:
3589         (-[WebScrollbarPartAnimation scrollAnimatorDestroyed]):
3590         (-[WebScrollbarPainterDelegate scrollAnimatorDestroyed]):
3591         (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
3592
3593         Only send AppKit these notifications for active pages. I originally made these 
3594         assertions, and I found that they were hit a surprising number of times. If we 
3595         only send notifications for active pages, then we should greatly reduce and 
3596         possibly eliminate our chances of hitting this crash.
3597         (WebCore::ScrollAnimatorMac::notifyPositionChanged):
3598         (WebCore::ScrollAnimatorMac::contentAreaWillPaint):
3599         (WebCore::ScrollAnimatorMac::mouseEnteredContentArea):
3600         (WebCore::ScrollAnimatorMac::mouseExitedContentArea):
3601         (WebCore::ScrollAnimatorMac::mouseMovedInContentArea):
3602         (WebCore::ScrollAnimatorMac::willStartLiveResize):
3603         (WebCore::ScrollAnimatorMac::contentsResized):
3604         (WebCore::ScrollAnimatorMac::willEndLiveResize):
3605         (WebCore::ScrollAnimatorMac::contentAreaDidShow):
3606         (WebCore::ScrollAnimatorMac::contentAreaDidHide):
3607         (WebCore::ScrollAnimatorMac::didBeginScrollGesture):
3608         (WebCore::ScrollAnimatorMac::didEndScrollGesture):
3609
3610 2011-10-21  Mark Hahnenberg  <mhahnenberg@apple.com>
3611
3612         Add put to the MethodTable
3613         https://bugs.webkit.org/show_bug.cgi?id=70439
3614
3615         Reviewed by Oliver Hunt.
3616
3617         No new tests.
3618
3619         * WebCore.exp.in:
3620         * bindings/js/JSDOMWindowCustom.cpp: Added static put since it was overlooked in 
3621         previous patches.
3622         (WebCore::JSDOMWindow::putVirtual):
3623         (WebCore::JSDOMWindow::put):
3624         * bindings/js/JSDOMWindowShell.cpp: Ditto.
3625         (WebCore::JSDOMWindowShell::putVirtual):
3626         (WebCore::JSDOMWindowShell::put):
3627         * bindings/js/JSDOMWindowShell.h:
3628
3629 2011-10-21  Dmitry Lomov  <dslomov@google.com>
3630
3631         https://bugs.webkit.org/show_bug.cgi?id=70580
3632         [Chromium] Implement MessagePort transfer in chromium port of webkit.
3633
3634         Reviewed by David Levin.
3635
3636         * bindings/v8/SerializedScriptValue.cpp:
3637         (WebCore::V8ObjectMap::Writer::writeTransferredMessagePort):
3638         (WebCore::V8ObjectMap::Serializer::Serializer):
3639         (WebCore::V8ObjectMap::Serializer::doSerialize):
3640         (WebCore::V8ObjectMap::Reader::read):
3641         (WebCore::V8ObjectMap::Deserializer::Deserializer):
3642         (WebCore::V8ObjectMap::Deserializer::tryGetTransferredMessagePort):
3643         (WebCore::SerializedScriptValue::SerializedScriptValue):
3644         (WebCore::SerializedScriptValue::deserialize):
3645
3646 2011-10-21  Ojan Vafai  <ojan@chromium.org>
3647
3648         r97693 caused 42 failures on the chromium mac bots
3649         https://bugs.webkit.org/show_bug.cgi?id=70300
3650
3651         Can't test this until https://bugs.webkit.org/show_bug.cgi?id=70660
3652         is fixed. The fix for that bug will test this codepath as well though.
3653
3654         * rendering/RenderBlock.cpp:
3655         (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
3656
3657 2011-10-21  Vineet Chaudhary  <vineet.chaudhary@motorola.com>
3658
3659         Setting form.enctype reflected attribute behaves strangely.
3660         https://bugs.webkit.org/show_bug.cgi?id=44879
3661
3662         Reviewed by Darin Adler.
3663
3664         The spec says form.enctype should be application/x-www-form-urlencoded,
3665         So as "text", "plain", "multipart" or "form-data" these are not a valid value so must be ignored.
3666
3667         * loader/FormSubmission.cpp:
3668         (WebCore::FormSubmission::Attributes::parseEncodingType):
3669
3670 2011-10-21  Matthew Delaney  <mdelaney@apple.com>
3671
3672         Ensure periodic flushing of canvas drawing context
3673         https://bugs.webkit.org/show_bug.cgi?id=70646
3674
3675         Reviewed by Simon Fraser.
3676
3677         No new tests. No current way to track tests that cause hangs or
3678         non-deterministic drops in performance.
3679
3680         * platform/graphics/cg/ImageBufferDataCG.h: Adds a timestamp of last tracked flush.
3681         * platform/graphics/cg/ImageBufferCG.cpp: Ensures periodic flushes on the drawing context.
3682         (WebCore::ImageBuffer::ImageBuffer):
3683         (WebCore::ImageBuffer::context): Flushes context if we're beyond flush interval.
3684         (WebCore::ImageBuffer::copyNativeImage): Updates last flush timestamp.
3685         (WebCore::ImageBuffer::getUnmultipliedImageData): Updates last flush timestamp.
3686         (WebCore::ImageBuffer::getPremultipliedImageData): Updates last flush timestamp.
3687         (WebCore::ImageBuffer::putUnmultipliedImageData): Updates last flush timestamp.
3688         (WebCore::ImageBuffer::putPremultipliedImageData): Updates last flush timestamp.
3689
3690 2011-10-21  Adam Barth  <abarth@webkit.org>
3691
3692         Introduce Event::hasInterface to make uses of interfaceName more readable
3693         https://bugs.webkit.org/show_bug.cgi?id=70652
3694
3695         Reviewed by Eric Seidel.
3696
3697         Eric felt that this approach would be more readable because it requires
3698         less syntax at each callsite.
3699
3700         * bindings/js/JSErrorHandler.cpp:
3701         (WebCore::JSErrorHandler::handleEvent):
3702         * bindings/objc/DOMEvents.mm:
3703         (kitClass):
3704         * bindings/v8/V8WindowErrorHandler.cpp:
3705         (WebCore::V8WindowErrorHandler::callListenerFunction):
3706         * bindings/v8/V8WorkerContextErrorHandler.cpp:
3707         (WebCore::V8WorkerContextErrorHandler::callListenerFunction):
3708         * dom/Event.cpp:
3709         (WebCore::Event::hasInterface):
3710         * dom/Event.h:
3711         * dom/EventDispatcher.cpp:
3712         (WebCore::EventDispatcher::determineDispatchBehavior):
3713         * dom/Node.cpp:
3714         (WebCore::Node::defaultEventHandler):
3715         * html/HTMLInputElement.cpp:
3716         (WebCore::HTMLInputElement::defaultEventHandler):
3717         * html/HTMLTextAreaElement.cpp:
3718         (WebCore::HTMLTextAreaElement::defaultEventHandler):
3719         * html/TextFieldInputType.cpp:
3720         (WebCore::TextFieldInputType::forwardEvent):
3721         (WebCore::TextFieldInputType::shouldSubmitImplicitly):
3722         * inspector/InspectorDOMStorageResource.cpp:
3723         (WebCore::InspectorDOMStorageResource::handleEvent):
3724
3725 2011-10-21  Adam Klein  <adamk@chromium.org>
3726
3727         [MutationObservers] Implement basic subtree observation
3728         https://bugs.webkit.org/show_bug.cgi?id=70436
3729
3730         Reviewed by Ryosuke Niwa.
3731
3732         Note that this patch only implements "basic" subtree semantics,
3733         not the fully robust semantics described in
3734         http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/1622.html.
3735         Most importantly, this change does not handle the case where mutations
3736         occur in a temporarily detached subtree.
3737
3738         The plan is to implement those semantics in a followup to avoid
3739         blocking other parts of the MutationObserver spec that rely on
3740         the existence of subtree observation but not its specific
3741         implementation.
3742
3743         Test: fast/mutation/observe-subtree.html
3744
3745         * dom/Node.cpp:
3746         (WebCore::addMatchingObservers): Static helper method for registeredMutationObserversOfType().
3747         (WebCore::Node::registeredMutationObserversOfType): Walk up the tree looking for observers.
3748         * dom/NodeRareData.h:
3749         (WebCore::MutationObserverEntry::hasAllOptions): A stricter, renamed from matches().
3750
3751 2011-10-21  Joshua Bell  <jsbell@chromium.org>
3752
3753         IndexedDB: objectStore.transaction property should be readonly
3754         https://bugs.webkit.org/show_bug.cgi?id=62395
3755
3756         Reviewed by Tony Chang.
3757
3758         Implement the IDBObjectStore.transaction property defined by the spec.
3759
3760         Test: storage/indexeddb/readonly-properties.html
3761
3762         * storage/IDBObjectStore.cpp:
3763         (WebCore::IDBObjectStore::transaction):
3764         * storage/IDBObjectStore.h:
3765         * storage/IDBObjectStore.idl:
3766
3767 2011-10-21  Adam Barth  <abarth@webkit.org>
3768
3769         Event.h has too many virtual isMumbleEvent() functions
3770         https://bugs.webkit.org/show_bug.cgi?id=70636
3771
3772         Reviewed by Dimitri Glazkov.
3773
3774         We should use the new interfaceName() way of doing run-time type inference.
3775
3776         * bindings/js/JSErrorHandler.cpp:
3777         (WebCore::JSErrorHandler::handleEvent):
3778         * bindings/js/JSEventCustom.cpp:
3779         (WebCore::JSEvent::clipboardData):
3780         * bindings/objc/DOMEvents.mm:
3781         (kitClass):
3782         * bindings/v8/V8WindowErrorHandler.cpp:
3783         (WebCore::V8WindowErrorHandler::callListenerFunction):
3784         * bindings/v8/V8WorkerContextErrorHandler.cpp:
3785         (WebCore::V8WorkerContextErrorHandler::callListenerFunction):
3786         * bindings/v8/custom/V8EventCustom.cpp:
3787         (WebCore::V8Event::clipboardDataAccessorGetter):
3788         * dom/BeforeLoadEvent.h:
3789         (WebCore::BeforeLoadEvent::interfaceName):
3790         * dom/BeforeTextInsertedEvent.h:
3791         * dom/ClipboardEvent.cpp:
3792         * dom/ClipboardEvent.h:
3793         * dom/CompositionEvent.cpp:
3794         * dom/CompositionEvent.h:
3795         * dom/ErrorEvent.cpp:
3796         * dom/ErrorEvent.h:
3797         * dom/Event.cpp:
3798         (WebCore::Event::storesResultAsString):
3799         (WebCore::Event::storeResult):
3800         (WebCore::Event::clipboardData):
3801         * dom/Event.h:
3802         * dom/Event.idl:
3803             - Remove this interface from the CPP bindings because this function
3804               no longer exists.  It's unclear to me how strong our API
3805               commitments are in the CPP bindings.
3806         * dom/EventDispatcher.cpp:
3807         (WebCore::EventDispatcher::determineDispatchBehavior):
3808         * dom/MessageEvent.cpp:
3809         * dom/MessageEvent.h:
3810         * dom/MutationEvent.cpp:
3811         * dom/MutationEvent.h:
3812         * dom/Node.cpp:
3813         (WebCore::Node::defaultEventHandler):
3814         * dom/OverflowEvent.cpp:
3815         * dom/OverflowEvent.h:
3816         * dom/PageTransitionEvent.h:
3817         * dom/ProgressEvent.h:
3818         * dom/TextEvent.cpp:
3819         * dom/TextEvent.h:
3820         * dom/WheelEvent.cpp:
3821         * dom/WheelEvent.h:
3822         * html/HTMLInputElement.cpp:
3823         (WebCore::HTMLInputElement::defaultEventHandler):
3824         * html/HTMLTextAreaElement.cpp:
3825         (WebCore::HTMLTextAreaElement::defaultEventHandler):
3826         * html/TextFieldInputType.cpp:
3827         (WebCore::TextFieldInputType::forwardEvent):
3828         (WebCore::TextFieldInputType::shouldSubmitImplicitly):
3829         * html/shadow/TextControlInnerElements.cpp:
3830         (WebCore::TextControlInnerTextElement::defaultEventHandler):
3831         * svg/SVGZoomEvent.cpp:
3832         * svg/SVGZoomEvent.h:
3833
3834 2011-10-21  Raymond Toy  <rtoy@google.com>
3835
3836         Flush denormals in Biquad, ZeroPole, and DynamicsCompressor.
3837
3838         We only flush when saving the state variables instead of in the
3839         loops so that we don't impact performance too much when there are
3840         no denormals.  This will at least not propagate the denormals any
3841         further within the class.
3842         
3843         https://bugs.webkit.org/show_bug.cgi?id=70626
3844
3845         Reviewed by Kenneth Russell.
3846
3847         * platform/audio/Biquad.cpp:
3848         (WebCore::Biquad::process):
3849         Flush denormals when storing the filter state back in to class
3850         filter state.  
3851         * platform/audio/DynamicsCompressorKernel.cpp:
3852         (WebCore::DynamicsCompressorKernel::process):
3853         Ditto.
3854         * platform/audio/ZeroPole.cpp:
3855         (WebCore::ZeroPole::process):
3856         Ditto.
3857
3858 2011-10-21  Vsevolod Vlasov  <vsevik@chromium.org>
3859
3860         Web Inspector: Advanced search results should be cleared on navigation.
3861         https://bugs.webkit.org/show_bug.cgi?id=70627
3862
3863         Reviewed by Pavel Feldman.
3864
3865         * inspector/front-end/AdvancedSearchController.js:
3866         (WebInspector.AdvancedSearchController):
3867         (WebInspector.AdvancedSearchController.prototype._frameNavigated):
3868
3869 2011-10-21  Rafael Weinstein  <rafaelw@chromium.org>
3870
3871         [MutationObservers] Implement WebKitMutationObserver.observe for childList changes
3872         https://bugs.webkit.org/show_bug.cgi?id=68955
3873
3874         Reviewed by Ryosuke Niwa.
3875
3876         This patch adds a ChildListMutationScope object which manages the coalescing of
3877         multiple child removals and additions within DOM operations into single childList
3878         mutation records.
3879
3880         Note that this patch doesn't cover all the cases which can be coalesced (it only
3881         covers ContainerNode.*, and Node.innerHTML/innerText). A separate bug,
3882         https://bugs.webkit.org/show_bug.cgi?id=70385, has been opened to track the
3883         remaining cases.
3884
3885         Test: fast/mutation/observe-childList.html
3886
3887         * CMakeLists.txt:
3888         * GNUmakefile.list.am:
3889         * WebCore.gypi:
3890         * WebCore.pro:
3891         * WebCore.vcproj/WebCore.vcproj:
3892         * WebCore.xcodeproj/project.pbxproj:
3893         * dom/ChildListMutationScope.cpp: Added.
3894         (WebCore::ChildListAccumulation::ChildListAccumulation::ChildListAccumulation):
3895         (WebCore::ChildListAccumulation::ChildListAccumulation::~ChildListAccumulation):
3896         (WebCore::ChildListAccumulation::ChildListAccumulation::childAdded):
3897         (WebCore::ChildListAccumulation::ChildListAccumulation::willRemoveChild):
3898         (WebCore::ChildListAccumulation::ChildListAccumulation::dispatch):
3899         (WebCore::ChildListAccumulation::ChildListAccumulation::clear):
3900         (WebCore::ChildListAccumulation::ChildListAccumulation::isEmpty):
3901         (WebCore::ChildListAccumulation::ChildListAccumulator::ChildListAccumulator):
3902         (WebCore::ChildListAccumulation::ChildListAccumulator::~ChildListAccumulator):
3903         (WebCore::ChildListAccumulation::ChildListAccumulator::initialize):
3904         (WebCore::ChildListAccumulation::ChildListAccumulator::instance):
3905         (WebCore::ChildListAccumulation::ChildListAccumulator::childAdded):
3906         (WebCore::ChildListAccumulation::ChildListAccumulator::willRemoveChild):
3907         (WebCore::ChildListAccumulation::ChildListAccumulator::incrementScopingLevel):
3908         (WebCore::ChildListAccumulation::ChildListAccumulator::decrementScopingLevel):
3909         (WebCore::ChildListMutationScope::ChildListMutationScope):
3910         (WebCore::ChildListMutationScope::~ChildListMutationScope):
3911         (WebCore::ChildListMutationScope::childAdded):
3912         (WebCore::ChildListMutationScope::willRemoveChild):
3913         * dom/ChildListMutationScope.h: Added.
3914         * dom/ContainerNode.cpp:
3915         (WebCore::ContainerNode::insertBefore):
3916         (WebCore::ContainerNode::replaceChild):
3917         (WebCore::willRemoveChildren):
3918         (WebCore::dispatchChildInsertionEvents):
3919         (WebCore::dispatchChildRemovalEvents):
3920         * dom/Element.cpp:
3921         (WebCore::enqueueAttributesMutationRecord):
3922         * dom/Node.cpp:
3923         (WebCore::Node::setTextContent):
3924         (WebCore::Node::registeredMutationObserversOfType):
3925         * dom/WebKitMutationObserver.cpp:
3926         (WebCore::WebKitMutationObserver::disconnect):
3927         * html/HTMLElement.cpp:
3928         (WebCore::replaceChildrenWithFragment):
3929         (WebCore::replaceChildrenWithText):
3930
3931 2011-10-21  Sheriff Bot  <webkit.review.bot@gmail.com>
3932
3933         Unreviewed, rolling out r98079.
3934         http://trac.webkit.org/changeset/98079
3935         https://bugs.webkit.org/show_bug.cgi?id=70624
3936
3937         The extensions tests enabled are failing on the Chromium Win
3938         Dbg bot (Requested by jchaffraix on #webkit).
3939
3940         * inspector/front-end/ExtensionAPI.js:
3941         (buildExtensionAPIInjectedScript):
3942
3943 2011-10-21  Dan Bernstein  <mitz@apple.com>
3944
3945         Column rules positioned incorrectly in vertical-rl block with horizontal border or padding
3946         https://bugs.webkit.org/show_bug.cgi?id=70622
3947
3948         Reviewed by Beth Dakin.
3949
3950         Tests: fast/multicol/vertical-lr/rules-with-border-before.html
3951                fast/multicol/vertical-rl/rules-with-border-before.html
3952
3953         * rendering/RenderBlock.cpp:
3954         (WebCore::RenderBlock::paintColumnRules): Changed to use the physical left border and padding for the
3955         left edge of the horizontal column rule.
3956
3957 2011-10-21  Simon Fraser  <simon.fraser@apple.com>
3958
3959         Fix Windows build.
3960
3961         * rendering/RenderLayerCompositor.cpp:
3962         (WebCore::RenderLayerCompositor::hasAnyAdditionalCompositedLayers):
3963
3964 2011-10-21  Devdatta Deshpande  <pwjd73@motorola.com>
3965
3966         [Gtk] mousemove event always has metaKey == true
3967         https://bugs.webkit.org/show_bug.cgi?id=35299
3968
3969         Reviewed by Martin Robinson.
3970
3971         GDK_MOD2_MASK doesn't always mean meta so we can't use it to identify
3972         the meta key state. Use GDK_META_MASK instead.
3973
3974         Test: platform/gtk/fast/events/event-sender-metakey.html
3975
3976         * platform/gtk/PlatformMouseEventGtk.cpp:
3977         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3978
3979 2011-10-21  Andreas Kling  <kling@webkit.org>
3980
3981         Style and Link elements' sheet() should return CSSStyleSheet.
3982         https://bugs.webkit.org/show_bug.cgi?id=70608
3983
3984         Reviewed by Antti Koivisto.
3985
3986         Return a CSSStyleSheet* instead of a StyleSheet* in these functions
3987         since we know they are always CSSStyleSheets.
3988         Also remove some now-unnecessary isCSSStyleSheet() checks.
3989
3990         * dom/StyleElement.h:
3991         (WebCore::StyleElement::sheet):
3992         * html/HTMLLinkElement.cpp:
3993         * html/HTMLLinkElement.h:
3994         (WebCore::HTMLLinkElement::sheet):
3995         * page/PageSerializer.cpp:
3996         (WebCore::PageSerializer::serializeFrame):
3997
3998 2011-10-21  Vsevolod Vlasov  <vsevik@chromium.org>
3999
4000         Web Inspector: Advanced search is working very slowly and does not show searching progress.
4001         https://bugs.webkit.org/show_bug.cgi?id=70611
4002
4003         Search implementation changed so that we do not start searching in the next file unless
4004         the previous one was already searched. This allows to interrupt search.
4005         Not all search matches are added on UI by default now, only first 20 for each file.
4006         Search progress information and search stop button were added to drawer status bar.
4007
4008         Reviewed by Pavel Feldman.
4009
4010         * English.lproj/localizedStrings.js:
4011         * inspector/ContentSearchUtils.cpp:
4012         (WebCore::ContentSearchUtils::getRegularExpressionMatchesByLines):
4013         (WebCore::ContentSearchUtils::countRegularExpressionMatches):
4014         * inspector/front-end/AdvancedSearchController.js:
4015         (WebInspector.AdvancedSearchController.prototype._onSearchResult):
4016         (WebInspector.AdvancedSearchController.prototype._onSearchFinished):
4017         (WebInspector.AdvancedSearchController.prototype.startSearch):
4018         (WebInspector.AdvancedSearchController.prototype.resetSearch):
4019         (WebInspector.AdvancedSearchController.prototype.stopSearch):
4020         (WebInspector.SearchView):
4021         (WebInspector.SearchView.prototype.get statusBarItems):
4022         (WebInspector.SearchView.prototype.get counterElement):
4023         (WebInspector.SearchView.prototype.set resultsPane):
4024         (WebInspector.SearchView.prototype.searchStarted):
4025         (WebInspector.SearchView.prototype._updateSearchResultsMessage):
4026         (WebInspector.SearchView.prototype._updateSearchProgress):
4027         (WebInspector.SearchView.prototype.resetResults):
4028         (WebInspector.SearchView.prototype._resetCounters):
4029         (WebInspector.SearchView.prototype.nothingFound):
4030         (WebInspector.SearchView.prototype.addSearchResult):
4031         (WebInspector.SearchView.prototype.searchFinished):
4032         (WebInspector.SearchView.prototype._searchStopButtonPressed):
4033         (WebInspector.SearchResultsPane):
4034         (WebInspector.FileBasedSearchResultsPane):
4035         (WebInspector.FileBasedSearchResultsPane.prototype.addSearchResult):
4036         (WebInspector.FileBasedSearchResultsPane.prototype._fileTreeElementExpanded):
4037         (WebInspector.FileBasedSearchResultsPane.prototype._appendSearchMatches):
4038         (WebInspector.FileBasedSearchResultsPane.prototype._appendShowMoreMatchesElement):
4039         (WebInspector.FileBasedSearchResultsPane.prototype._showMoreMatchesElementSelected):
4040         (WebInspector.FileBasedSearchResultsPane.prototype._addFileTreeElement):
4041         (WebInspector.FileBasedSearchResultsPane.prototype._regexMatchRanges):
4042         * inspector/front-end/Drawer.js:
4043         (WebInspector.Drawer.prototype.hide):
4044         * inspector/front-end/Images/statusbarButtonGlyphs.png:
4045         * inspector/front-end/ScriptsSearchScope.js:
4046         (WebInspector.ScriptsSearchScope):
4047  &