aa6abb2779f3d48a1344b96234284d131be94154
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2012-01-25  Sheriff Bot  <webkit.review.bot@gmail.com>
2
3         Unreviewed, rolling out r105906.
4         http://trac.webkit.org/changeset/105906
5         https://bugs.webkit.org/show_bug.cgi?id=77038
6
7         Breaks compositing/visibility/layer-visible-content.html and
8         compositing/visibility/visibility-image-layers-dynamic.html
9         (Requested by leviw|gardening on #webkit).
10
11         * rendering/RenderLayerBacking.cpp:
12         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
13
14 2012-01-25  Mike Fenton  <mifenton@rim.com>
15
16         Page Up and Page Down mappings are backwards on BlackBerry port.
17         https://bugs.webkit.org/show_bug.cgi?id=77021
18
19         Fix Page Up and Page Down mappings as they are reversed.
20
21         Reviewed by Antonio Gomes.
22
23         * platform/blackberry/PlatformKeyboardEventBlackBerry.cpp:
24         (WebCore::keyIdentifierForBlackBerryCharacter):
25         (WebCore::windowsKeyCodeForBlackBerryCharacter):
26
27 2012-01-25  Hajime Morita  <morrita@google.com>
28
29         <content> should create HTMLContentElement object
30         https://bugs.webkit.org/show_bug.cgi?id=76439
31
32         Reviewed by Dimitri Glazkov.
33
34         - Added HTMLContentElement.idl which has @select attribute.
35         - Added "content" element.
36
37         Both are behind ENABLE_SHADOW_DOM.
38
39         Tests: fast/dom/shadow/content-element-api.html
40                fast/dom/shadow/content-element-outside-shadow.html
41
42         * CMakeLists.txt:
43         * DerivedSources.cpp:
44         * DerivedSources.make:
45         * DerivedSources.pri:
46         * GNUmakefile.list.am:
47         * WebCore.gypi:
48         * WebCore.vcproj/WebCore.vcproj:
49         * WebCore.xcodeproj/project.pbxproj:
50         * html/HTMLTagNames.in:
51         * html/shadow/HTMLContentElement.cpp:
52         (WebCore::contentTagName):
53         (WebCore):
54         (WebCore::HTMLContentElement::create):
55         * html/shadow/HTMLContentElement.h:
56         (HTMLContentElement):
57         * html/shadow/HTMLContentElement.idl: Added.
58
59 2012-01-25  Sheriff Bot  <webkit.review.bot@gmail.com>
60
61         Unreviewed, rolling out r105828.
62         http://trac.webkit.org/changeset/105828
63         https://bugs.webkit.org/show_bug.cgi?id=77036
64
65         Caused many crashes in ClusterFuzz and PerformanceTests
66         (Requested by inferno-sec on #webkit).
67
68         * rendering/RenderBlock.cpp:
69         (WebCore::RenderBlock::removeChild):
70         * rendering/RenderBlock.h:
71         (RenderBlock):
72
73 2012-01-25  Shawn Singh  <shawnsingh@chromium.org>
74
75         Fix the semantics of passing contentsVisible flag to GraphicsLayers
76         https://bugs.webkit.org/show_bug.cgi?id=76975
77
78         Reviewed by Simon Fraser.
79
80         This patch is covered by existing tests, in particular
81         compositing/visibility/layer-visible-content.html; its
82         expectations are rebaselined.
83
84         * rendering/RenderLayerBacking.cpp:
85         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
86
87 2012-01-25  Tony Chang  <tony@chromium.org>
88
89         support overflow:auto and overflow:scroll in new flexbox
90         https://bugs.webkit.org/show_bug.cgi?id=76953
91
92         Reviewed by David Hyatt.
93
94         Tests: css3/flexbox/flexbox-overflow-auto-expected.html
95                css3/flexbox/flexbox-overflow-auto.html
96
97         * rendering/RenderBox.cpp:
98         (WebCore::RenderBox::addLayoutOverflow): In the case of reverse flexboxen, we can overflow up or to the left (like horizontal-bt or rtl content).
99         * rendering/RenderFlexibleBox.cpp:
100         (WebCore::RenderFlexibleBox::layoutBlock): Call updateScrollInfoAfterLayout() to add overflow scrollbars.
101         (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): In row-reverse, offset the start of the content by the scrollbar.
102         (WebCore::RenderFlexibleBox::layoutColumnReverse): In column-reverse, offset the start of the content by the scrollbar.
103         * rendering/RenderFlexibleBox.h:
104         (RenderFlexibleBox): Make isHorizontalFlow public.
105         * rendering/style/RenderStyle.h:
106         (WebCore::RenderStyleBitfields::isReverseFlexDirection): Convenience method.
107
108 2012-01-25  Sheriff Bot  <webkit.review.bot@gmail.com>
109
110         Unreviewed, rolling out r105885.
111         http://trac.webkit.org/changeset/105885
112         https://bugs.webkit.org/show_bug.cgi?id=77027
113
114         Causes assertions in Position. (Requested by leviw|gardening
115         on #webkit).
116
117         * dom/Position.cpp:
118         (WebCore::Position::upstream):
119         (WebCore::Position::downstream):
120         * dom/PositionIterator.cpp:
121         * dom/PositionIterator.h:
122         (PositionIterator):
123         * editing/htmlediting.cpp:
124         (WebCore::nextCandidate):
125         (WebCore::nextVisuallyDistinctCandidate):
126         (WebCore::previousCandidate):
127         (WebCore::previousVisuallyDistinctCandidate):
128
129 2012-01-25  Alexis Menard  <alexis.menard@openbossa.org>
130
131         border-image should be implemented like a shorthand.
132         https://bugs.webkit.org/show_bug.cgi?id=76697
133
134         Reviewed by Tony Chang.
135
136         Make sure that border-image is implemented like a shorthand : when we parse
137         it we set the correct value to its longhands. The code was not doing it
138         previously as we inherited the old implementation of -webkit-border-image which
139         is not a shorthand but a regular property. It will then increase
140         style.length for a given element as we now expand the longhands.
141         The behavior stays the same for -webkit-border-image.
142
143         Test: fast/css/border-image-style-length.html
144
145         * css/CSSParser.cpp:
146         (WebCore::CSSParser::parseValue):
147         (WebCore::BorderImageParseContext::BorderImageParseContext):
148         (WebCore::BorderImageParseContext::commitWebKitBorderImage):
149         (WebCore::BorderImageParseContext::commitBorderImage):
150         (BorderImageParseContext):
151         (WebCore::BorderImageParseContext::commitBorderImageProperty):
152         (WebCore::CSSParser::parseBorderImage):
153         * css/CSSParser.h:
154         ():
155         * css/CSSPropertyLonghand.cpp:
156         (WebCore::initShorthandMap):
157         * css/CSSStyleApplyProperty.cpp:
158         ():
159         (WebCore::ApplyPropertyExpanding::applyInheritValue):
160         (WebCore::ApplyPropertyExpanding::applyInitialValue):
161         (WebCore::ApplyPropertyExpanding::applyValue):
162         (WebCore::ApplyPropertyBorderImageModifier::applyInitialValue):
163         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
164         * css/CSSStyleSelector.cpp:
165         (WebCore::CSSStyleSelector::mapNinePieceImage):
166         * page/animation/AnimationBase.cpp:
167         (WebCore::AnimationBase::ensurePropertyMap):
168         (WebCore::addShorthandProperties):
169         * rendering/style/RenderStyle.h:
170         (WebCore::RenderStyleBitfields::borderImageSlices):
171         (WebCore::RenderStyleBitfields::borderImageWidth):
172         (WebCore::RenderStyleBitfields::borderImageOutset):
173         (RenderStyleBitfields):
174         (WebCore::RenderStyleBitfields::setBorderImageSlices):
175         (WebCore::RenderStyleBitfields::setBorderImageWidth):
176         (WebCore::RenderStyleBitfields::setBorderImageOutset):
177
178 2012-01-23  MORITA Hajime  <morrita@google.com>
179
180         [Refactoring][Internals] Should have InternalSettings
181         https://bugs.webkit.org/show_bug.cgi?id=76424
182
183         Reviewed by Kent Tamura.
184
185         This change extracted setting related method from window.internals
186         to window.internals.settings object.
187         - Invoked Internals::reset() in the constructor to employ Document object.
188         - Moved setting and configuration related Internals methods to
189           newly introduced InternalSettings object.
190
191         No new tests, covered by existing tests.
192
193         * DerivedSources.make:
194         * DerivedSources.pri:
195         * GNUmakefile.am:
196         * GNUmakefile.list.am:
197         * Target.pri:
198         * WebCore.gyp/WebCore.gyp:
199         * WebCore.gypi:
200         * WebCore.vcproj/WebCoreTestSupport.vcproj:
201         * WebCore.xcodeproj/project.pbxproj:
202         * testing/InternalSettings.cpp: Added.
203         (WebCore::InternalSettings::create):
204         (WebCore::InternalSettings::~InternalSettings):
205         (WebCore::InternalSettings::InternalSettings):
206         (WebCore::InternalSettings::settings):
207         (WebCore::InternalSettings::document):
208         (WebCore::InternalSettings::page):
209         (WebCore::InternalSettings::setInspectorResourcesDataSizeLimits):
210         (WebCore::InternalSettings::setForceCompositingMode):
211         (WebCore::InternalSettings::setAcceleratedFiltersEnabled):
212         (WebCore::InternalSettings::setEnableCompositingForFixedPosition):
213         (WebCore::InternalSettings::setEnableCompositingForScrollableFrames):
214         (WebCore::InternalSettings::setAcceleratedDrawingEnabled):
215         (WebCore::InternalSettings::setEnableScrollAnimator):
216         (WebCore::InternalSettings::setZoomAnimatorTransform):
217         (WebCore::InternalSettings::setZoomParameters):
218         (WebCore::InternalSettings::setMockScrollbarsEnabled):
219         (WebCore::InternalSettings::setPasswordEchoEnabled):
220         (WebCore::InternalSettings::setPasswordEchoDurationInSeconds):
221         (WebCore::InternalSettings::setShouldLayoutFixedElementsRelativeToFrame):
222         (WebCore::InternalSettings::setUnifiedTextCheckingEnabled):
223         (WebCore::InternalSettings::unifiedTextCheckingEnabled):
224         (WebCore::InternalSettings::pageScaleFactor):
225         (WebCore::InternalSettings::setPageScaleFactor):
226         (WebCore::InternalSettings::setPerTileDrawingEnabled):
227         * testing/InternalSettings.h: Added.
228         * testing/InternalSettings.idl: Added.
229         * testing/Internals.cpp:
230         (WebCore::Internals::create):
231         (WebCore::Internals::Internals):
232         (WebCore::Internals::reset):
233         * testing/Internals.h:
234         (WebCore::Internals::settings):
235         * testing/Internals.idl:
236         * testing/js/WebCoreTestSupport.cpp:
237         (WebCoreTestSupport::injectInternalsObject):
238         * testing/v8/WebCoreTestSupport.cpp:
239         (WebCoreTestSupport::injectInternalsObject):
240
241 2012-01-25  Alexis Menard  <alexis.menard@openbossa.org>
242
243         border-image should not crash when the source is not specified.
244         https://bugs.webkit.org/show_bug.cgi?id=77001
245
246         Reviewed by Andreas Kling.
247
248         This bug was introduced by r105502 but was exposed by r105738.
249         The image-source of a border-image is not mandatory therefore it
250         may happen that you have no value set for it. WebCore::createBorderImageValue
251         was wrongly assuming that the image is always set. This problem also required a bit
252         of refactoring in CSSStyleSelector::mapNinePieceImage to take into account that
253         the image could be optional (just like other properties).
254
255         Test: fast/css/border-image-null-image-crash.html
256
257         * css/CSSBorderImage.cpp:
258         (WebCore::createBorderImageValue):
259         * css/CSSStyleSelector.cpp:
260         (WebCore::CSSStyleSelector::mapNinePieceImage):
261
262 2012-01-25  Kenneth Rohde Christiansen  <kenneth@webkit.org>
263
264         [Qt] Implement tap feedback respecting -webkit-tap-highlight-color
265         https://bugs.webkit.org/show_bug.cgi?id=76914
266
267         Reviewed by Simon Hausmann.
268
269         Implement highlighting of dom nodes with a rounded rect, respecting
270         the color of -webkit-tap-highlight-color and any transform applied
271         to the element.
272
273         Tested with manual test.
274
275         * Target.pri:
276         * page/GestureTapHighlighter.cpp: Added.
277         (WebCore::GestureTapHighlighter::pathForNodeHighlight):
278         * page/GestureTapHighlighter.h: Added.
279
280 2012-01-25  Joshua Bell  <jsbell@chromium.org>
281
282         IndexedDB: Need to distinguish key paths that don't yield value vs. yield invalid key
283         https://bugs.webkit.org/show_bug.cgi?id=76487
284
285         Implement the precondition checks for IDBObjectStore.add/put operations: raise an error
286         if there is a key generator (autoIncrement) and the path yields a value and the value
287         is not a valid key; raise an error if any of the index key paths yield a value which
288         is not a valid key.
289
290         Reviewed by Tony Chang.
291
292         Tests: storage/indexeddb/keypath-edges.html
293                storage/indexeddb/objectstore-basics.html
294
295         * storage/IDBObjectStoreBackendImpl.cpp:
296         (WebCore::IDBObjectStoreBackendImpl::put):
297
298 2012-01-25  Yong Li  <yoli@rim.com>
299
300         https://bugs.webkit.org/show_bug.cgi?id=65377
301         Skip the entire node when it is right to do so, instead of stepping
302         through every character, so we save CPU time on checking every position
303         unnecessarily.
304
305         Reviewed by Darin Adler.
306
307         Test: perf/selection-skip-hidden-node.html
308
309         * dom/Position.cpp:
310         (WebCore::Position::upstream):
311         (WebCore::Position::downstream):
312         * dom/PositionIterator.cpp:
313         (WebCore::PositionIterator::moveToLeafNodeStart):
314         (WebCore::PositionIterator::moveToLeafNodeEnd):
315         * dom/PositionIterator.h:
316         * editing/htmlediting.cpp:
317         (WebCore::nextCandidate):
318         (WebCore::nextVisuallyDistinctCandidate):
319         (WebCore::previousCandidate):
320         (WebCore::previousVisuallyDistinctCandidate):
321
322 2012-01-25  Kaustubh Atrawalkar  <kaustubh@motorola.com>
323
324         Remove unnecessary member variable from PluginView.
325         https://bugs.webkit.org/show_bug.cgi?id=76909
326
327         Reviewed by Adam Roben.
328
329         No new tests needed.
330
331         * plugins/PluginView.cpp:
332         (WebCore::PluginView::getURLNotify):
333         (WebCore::PluginView::getURL):
334         (WebCore::PluginView::PluginView):
335         (WebCore::PluginView::handlePost):
336         (WebCore::PluginView::getValueForURL):
337         (WebCore::PluginView::setValueForURL):
338         * plugins/PluginView.h:
339
340 2012-01-25  Yael Aharon  <yael.aharon@nokia.com>
341
342         [Qt] Build fix when using force_static_libs_as_shared
343         https://bugs.webkit.org/show_bug.cgi?id=76832
344
345         Reviewed by Simon Hausmann.
346
347         Add a dependency on QtWidgets, when compiling against Qt5.
348
349         No new tests. This is a build fix.
350
351         * Target.pri:
352
353 2012-01-25  Sami Kyostila  <skyostil@chromium.org>
354
355         Clipping of render layer boundaries does not take page scale into account
356         https://bugs.webkit.org/show_bug.cgi?id=76850
357
358         Reviewed by Simon Fraser.
359
360         When inserting render layers into the compositor's overlap map, the
361         layer boundaries are clipped against any potential parent clip rects.
362         The clip rects are given in CSS coordinates, while the render layer
363         boundaries are in scaled CSS coordinates, so the result is incorrect.
364         This patch scales the clip rects before calculating the intersection.
365
366         Test: compositing/overflow/overflow-scaled-descendant-overlapping.html
367
368         * rendering/RenderLayerCompositor.cpp:
369         (WebCore::RenderLayerCompositor::addToOverlapMap):
370
371 2012-01-25  Stephen Chenney  <schenney@chromium.org>
372
373         Linecaps wrong for zero length lines
374         https://bugs.webkit.org/show_bug.cgi?id=71820
375
376         Reviewed by Nikolas Zimmermann.
377
378         Total reworking of the method used to draw zero-length linecaps for
379         SVG. This patch works for all zero length sub-paths.
380
381         Tests: svg/stroke/zero-length-path-linecap-rendering.svg
382                svg/stroke/zero-length-subpaths-linecap-rendering.svg
383
384         * rendering/svg/RenderSVGShape.cpp: Significant refactoring to enable
385           new implementation and clarify code.
386         (WebCore::RenderSVGShape::createShape):
387         (WebCore::RenderSVGShape::strokeContains):
388         (WebCore::RenderSVGShape::shouldStrokeZeroLengthSubpath):
389         (WebCore::RenderSVGShape::zeroLengthSubpathRect):
390         (WebCore::RenderSVGShape::zeroLengthLinecapPath):
391         (WebCore::RenderSVGShape::nonScalingStrokePath):
392         (WebCore::RenderSVGShape::setupNonScalingStrokeTransform):
393         (WebCore::RenderSVGShape::fillShape):
394         (WebCore::RenderSVGShape::strokePath):
395         (WebCore::RenderSVGShape::fillAndStrokePath):
396         (WebCore::RenderSVGShape::updateCachedBoundaries):
397         (WebCore::RenderSVGShape::processZeroLengthSubpaths):
398         * rendering/svg/RenderSVGShape.h: Declarations for new methods.
399         * rendering/svg/SVGSubpathData.h: Class for finding zero length subpaths.
400         * svg/SVGPathBuilder.h: Fix typos
401         * svg/SVGPathConsumer.h: Fix typos
402         * svg/SVGPathSegListBuilder.h: Fix typos
403         * svg/SVGPathTraversalStateBuilder.h: Fix typos
404
405 2012-01-23  Yury Semikhatsky  <yurys@chromium.org>
406
407         Web Inspector: show memory counter graphs in timeline panel
408         https://bugs.webkit.org/show_bug.cgi?id=76843
409
410         Timeline panel is extended with several graphs depicting total node count,
411         number of DOM groups and event listeners. This feature is hidden behind
412         experimental setting.
413
414         Reviewed by Pavel Feldman.
415
416         * English.lproj/localizedStrings.js:
417         * inspector/Inspector.json:
418         * inspector/InspectorController.cpp:
419         (WebCore::InspectorController::InspectorController):
420         * inspector/InspectorTimelineAgent.cpp:
421         (WebCore::InspectorTimelineAgent::setDomCountersEnabled):
422         (WebCore::InspectorTimelineAgent::didCallFunction):
423         (WebCore::InspectorTimelineAgent::didDispatchEvent):
424         (WebCore::InspectorTimelineAgent::didWriteHTML):
425         (WebCore::InspectorTimelineAgent::didFireTimer):
426         (WebCore::InspectorTimelineAgent::didEvaluateScript):
427         (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
428         (WebCore::InspectorTimelineAgent::collectDomCounters):
429         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
430         * inspector/InspectorTimelineAgent.h:
431         (WebCore::InspectorTimelineAgent::create):
432         * inspector/TimelineRecordFactory.cpp:
433         * inspector/front-end/Settings.js:
434         (WebInspector.ExperimentsSettings):
435         * inspector/front-end/TimelinePanel.js:
436         (WebInspector.TimelinePanel):
437         (WebInspector.MemoryStatistics):
438         (WebInspector.MemoryStatistics.prototype.setTopPosition):
439         (WebInspector.MemoryStatistics.prototype.setSidebarWidth):
440         (WebInspector.MemoryStatistics.prototype._sidebarResized):
441         (WebInspector.MemoryStatistics.prototype._updateSize):
442         (WebInspector.MemoryStatistics.prototype._updateSidebarSize):
443         (WebInspector.MemoryStatistics.prototype._createCounterSidebarElement):
444         (WebInspector.MemoryStatistics.prototype.addTimlineEvent):
445         (WebInspector.MemoryStatistics.prototype._draw.getGroupCount):
446         (WebInspector.MemoryStatistics.prototype._draw.getNodeCount):
447         (WebInspector.MemoryStatistics.prototype._draw.getListenerCount):
448         (WebInspector.MemoryStatistics.prototype._draw):
449         (WebInspector.MemoryStatistics.prototype._calculateVisibleIndexes):
450         (WebInspector.MemoryStatistics.prototype._onMouseOver):
451         (WebInspector.MemoryStatistics.prototype._refreshCurrentValues):
452         (WebInspector.MemoryStatistics.prototype.visible):
453         (WebInspector.MemoryStatistics.prototype.show):
454         (WebInspector.MemoryStatistics.prototype.refresh):
455         (WebInspector.MemoryStatistics.prototype.hide):
456         (WebInspector.MemoryStatistics.prototype._setVerticalClip):
457         (WebInspector.MemoryStatistics.prototype._calculateXValues):
458         (WebInspector.MemoryStatistics.prototype._drawPolyline):
459         (WebInspector.MemoryStatistics.prototype._drawBottomBound):
460         (WebInspector.MemoryStatistics.prototype._clear):
461         (WebInspector.TimelinePanel.prototype._startSplitterDragging):
462         (WebInspector.TimelinePanel.prototype._splitterDragging):
463         (WebInspector.TimelinePanel.prototype._endSplitterDragging):
464         (WebInspector.TimelinePanel.prototype._setSplitterPosition):
465         (WebInspector.TimelinePanel.prototype.get statusBarItems):
466         (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
467         (WebInspector.TimelinePanel.prototype._toggleMemoryStatistics):
468         (WebInspector.TimelinePanel.prototype._onTimelineEventRecorded):
469         (WebInspector.TimelinePanel.prototype.sidebarResized):
470         (WebInspector.TimelinePanel.prototype._refresh):
471         * inspector/front-end/timelinePanel.css:
472         (#timeline-memory-splitter):
473         (#memory-counters-graph):
474         (#memory-graphs-container):
475         (#memory-graphs-container .split-view-contents):
476         (.timeline-marker):
477         (.memory-counter-sidebar-info):
478         (.memory-counter-sidebar-info.bottom-border-visible):
479
480 2012-01-25  Joseph Pecoraro  <pecoraro@apple.com>
481
482         <http://webkit.org/b/76941> Web Inspector: Remove Unused InspectorFrontendHost.search Stub
483
484         Reviewed by Pavel Feldman.
485
486         * inspector/front-end/InspectorFrontendHostStub.js:
487
488 2012-01-25  Vsevolod Vlasov  <vsevik@chromium.org>
489
490         Unreviewed inspector style fix.
491
492         * inspector/front-end/tabbedPane.css:
493         (.tabbed-pane-header-tab-close-button):
494         (select.tabbed-pane-header-tabs-drop-down-select):
495
496 2012-01-25  Pablo Flouret  <pablof@motorola.com>
497
498         Fix incorrect behavior in HTMLCollection.prototype.item().
499         https://bugs.webkit.org/show_bug.cgi?id=74468
500
501         Reviewed by Adam Barth.
502
503         HTMLCollection.prototype.item("someString") was falling back to
504         .namedItem("someString"), which is wrong per spec. Also align the
505         handling of various other types of objects passed as the argument with
506         the spec and the rest of the browsers.
507
508         Test: fast/dom/collection-item.html
509
510         * bindings/js/JSHTMLCollectionCustom.cpp: Remove custom implementation of item().
511         * bindings/v8/custom/V8HTMLCollectionCustom.cpp: Ditto.
512         * html/HTMLCollection.idl: Remove [Custom] in item(), it's not needed.
513
514 2012-01-25  Sheriff Bot  <webkit.review.bot@gmail.com>
515
516         Unreviewed, rolling out r105858.
517         http://trac.webkit.org/changeset/105858
518         https://bugs.webkit.org/show_bug.cgi?id=77004
519
520         It made many tests crash on Qt (Requested by Ossy on #webkit).
521
522         * GNUmakefile.list.am:
523         * Target.pri:
524         * WebCore.gypi:
525         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
526         (WebCore::GraphicsLayerTextureMapper::addAnimation):
527         (WebCore::GraphicsLayerTextureMapper::pauseAnimation):
528         (WebCore::GraphicsLayerTextureMapper::removeAnimation):
529         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
530         (GraphicsLayerTextureMapper):
531         * platform/graphics/texmap/TextureMapperAnimation.cpp: Removed.
532         * platform/graphics/texmap/TextureMapperAnimation.h: Removed.
533         * platform/graphics/texmap/TextureMapperNode.cpp:
534         (WebCore::TextureMapperNode::syncCompositingStateSelf):
535         (WebCore::TextureMapperNode::descendantsOrSelfHaveRunningAnimations):
536         (WebCore::normalizedAnimationValue):
537         (WebCore):
538         (WebCore::TextureMapperNode::applyOpacityAnimation):
539         (WebCore::solveEpsilon):
540         (WebCore::solveCubicBezierFunction):
541         (WebCore::solveStepsFunction):
542         (WebCore::applyTimingFunction):
543         (WebCore::TextureMapperNode::applyTransformAnimation):
544         (WebCore::TextureMapperNode::applyAnimationFrame):
545         (WebCore::TextureMapperNode::applyAnimation):
546         (WebCore::TextureMapperNode::hasOpacityAnimation):
547         (WebCore::TextureMapperNode::hasTransformAnimation):
548         (WebCore::TextureMapperNode::syncAnimations):
549         (WebCore::TextureMapperNode::syncAnimationsRecursively):
550         (WebCore::TextureMapperNode::syncCompositingState):
551         (WebCore::TextureMapperAnimation::TextureMapperAnimation):
552         * platform/graphics/texmap/TextureMapperNode.h:
553         (TextureMapperAnimation):
554         (WebCore::TextureMapperAnimation::create):
555         (WebCore):
556         (TextureMapperNode):
557
558 2012-01-25  Kenichi Ishibashi  <bashi@chromium.org>
559
560         fast/text/unicode-variation-selector.html doesn't pass on Lion
561         https://bugs.webkit.org/show_bug.cgi?id=76041
562
563         Reviewed by Dan Bernstein.
564
565         Consumes non-BMP marks in advanceByCombiningCharacterSequence() to take into
566         account Ideographic variation selectors (these are non-BMP marks).
567
568         No new tests. fast/text/unicode-variation-selector.html should pass on Lion.
569
570         * platform/graphics/mac/ComplexTextController.cpp:
571         (WebCore::advanceByCombiningCharacterSequence): Use Unicode code point
572         to iterate the loop which consumes marks.
573
574 2012-01-25  Ilya Tikhonovsky  <loislo@chromium.org>
575
576         Web Inspector: DetailedHeapSnapshot: adjust node name cell format for the retainers tree.
577         https://bugs.webkit.org/show_bug.cgi?id=76989
578
579         Reviewed by Pavel Feldman.
580
581         * English.lproj/localizedStrings.js:
582         * inspector/front-end/DetailedHeapshotGridNodes.js:
583         (WebInspector.HeapSnapshotGenericObjectNode.prototype._createObjectCell):
584         (WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
585         (WebInspector.HeapSnapshotObjectNode):
586         (WebInspector.HeapSnapshotObjectNode.prototype._prefixObjectCell):
587         (WebInspector.HeapSnapshotObjectNode.prototype._postfixObjectCell):
588         * inspector/front-end/HeapSnapshot.js:
589         (WebInspector.HeapSnapshotEdgesProvider.prototype._serialize):
590
591 2012-01-25  Vsevolod Vlasov  <vsevik@chromium.org>
592
593         Web Inspector: [InspectorIndexedDB] Pass Database, object stores and indexes meta information to frontend.
594         https://bugs.webkit.org/show_bug.cgi?id=76711
595
596         Reviewed by Yury Semikhatsky.
597
598         * inspector/Inspector.json:
599         * inspector/InspectorIndexedDBAgent.cpp:
600         (WebCore):
601         (WebCore::assertDocument):
602         (WebCore::assertIDBFactory):
603         (WebCore::InspectorIndexedDBAgent::requestDatabaseNamesForFrame):
604         (WebCore::InspectorIndexedDBAgent::requestDatabase):
605         * inspector/InspectorIndexedDBAgent.h:
606         (InspectorIndexedDBAgent):
607         * inspector/front-end/IndexedDBModel.js:
608         (WebInspector.IndexedDBModel):
609         (WebInspector.IndexedDBModel.prototype._frameDetached):
610         (WebInspector.IndexedDBModel.prototype._reset):
611         (WebInspector.IndexedDBModel.prototype._originAddedToFrame):
612         (WebInspector.IndexedDBModel.prototype._originRemovedFromFrame):
613         (WebInspector.IndexedDBModel.prototype._originRemoved):
614         (WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
615         (WebInspector.IndexedDBModel.prototype._databaseRemoved):
616         (WebInspector.IndexedDBModel.prototype._loadDatabaseNamesForFrame):
617         (WebInspector.IndexedDBModel.prototype._loadDatabase):
618         (WebInspector.IndexedDBModel.Frame):
619         (WebInspector.IndexedDBModel.Database):
620         (WebInspector.IndexedDBModel.ObjectStore):
621         (WebInspector.IndexedDBModel.ObjectStoreIndex):
622         (WebInspector.IndexedDBRequestManager.prototype._databaseNamesLoaded):
623         (WebInspector.IndexedDBRequestManager.prototype.requestDatabase.innerCallback):
624         (WebInspector.IndexedDBRequestManager.prototype.requestDatabase):
625         (WebInspector.IndexedDBRequestManager.prototype._databaseLoaded):
626         (WebInspector.IndexedDBRequestManager.prototype._frameDetached):
627         (WebInspector.IndexedDBRequestManager.prototype._databaseRemoved):
628         (WebInspector.IndexedDBRequestManager.prototype._reset):
629         (WebInspector.IndexedDBRequestManager.DatabaseRequest):
630         (WebInspector.IndexedDBDispatcher.prototype.databaseNamesLoaded):
631         (WebInspector.IndexedDBDispatcher.prototype.databaseLoaded):
632
633 2012-01-25  Peter Rybin  <peter.rybin@gmail.com>
634
635         Web Inspector: CodeGeneratorInspector.py: add optional runtime validator
636         https://bugs.webkit.org/show_bug.cgi?id=76676
637
638         Reviewed by Yury Semikhatsky.
639
640         Generator algorithm is redone significantly.
641
642         * inspector/CodeGeneratorInspector.py:
643         (RawTypes.BaseType):
644         (RawTypes.BaseType.request_raw_internal_runtime_cast):
645         (RawTypes.BaseType.generate_validate_method_impl):
646         (RawTypes):
647         (RawTypes.generate_validate_methods):
648         (RawTypes.String):
649         (RawTypes.String.generate_validate_method):
650         (RawTypes.String.get_raw_validator_call_text):
651         (RawTypes.Int):
652         (RawTypes.Int.generate_validate_method):
653         (RawTypes.Int.get_raw_validator_call_text):
654         (RawTypes.Number):
655         (RawTypes.Number.generate_validate_method):
656         (RawTypes.Number.get_raw_validator_call_text):
657         (RawTypes.Bool):
658         (RawTypes.Bool.generate_validate_method):
659         (RawTypes.Bool.get_raw_validator_call_text):
660         (RawTypes.Object):
661         (RawTypes.Object.generate_validate_method):
662         (RawTypes.Object.get_raw_validator_call_text):
663         (RawTypes.Any):
664         (RawTypes.Any.generate_validate_method):
665         (RawTypes.Any.get_raw_validator_call_text):
666         (RawTypes.Array):
667         (RawTypes.Array.generate_validate_method):
668         (RawTypes.Array.get_raw_validator_call_text):
669         (TypeBindings.create_named_type_declaration.Helper):
670         (TypeBindings.create_ad_hoc_type_declaration.Helper):
671         (TypeBindings.create_type_declaration_.EnumBinding):
672         (TypeBindings.create_type_declaration_.EnumBinding.resolve_inner):
673         (TypeBindings.create_type_declaration_.EnumBinding.request_user_runtime_cast):
674         (TypeBindings.create_type_declaration_.EnumBinding.request_internal_runtime_cast):
675         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator):
676         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
677         (TypeBindings.create_type_declaration_.EnumBinding.get_validator_call_text):
678         (TypeBindings.create_type_declaration_.EnumBinding.get_in_c_type_text):
679         (TypeBindings.create_type_declaration_.PlainString):
680         (TypeBindings.create_type_declaration_.PlainString.resolve_inner):
681         (TypeBindings.create_type_declaration_.PlainString.request_user_runtime_cast):
682         (TypeBindings.create_type_declaration_.PlainString.request_internal_runtime_cast):
683         (TypeBindings.create_type_declaration_.PlainString.get_validator_call_text):
684         (TypeBindings.create_type_declaration_.TypedefString):
685         (TypeBindings.create_type_declaration_.TypedefString.resolve_inner):
686         (TypeBindings.create_type_declaration_.TypedefString.request_user_runtime_cast):
687         (TypeBindings.create_type_declaration_.TypedefString.request_internal_runtime_cast):
688         (TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.generate_type_builder):
689         (TypeBindings.create_type_declaration_.TypedefString.get_validator_call_text):
690         (TypeBindings.create_type_declaration_.TypedefString.get_in_c_type_text):
691         (TypeBindings.create_type_declaration_.ClassBinding):
692         (TypeBindings.create_type_declaration_.ClassBinding.resolve_inner):
693         (TypeBindings.create_type_declaration_.ClassBinding.resolve_inner.PropertyData):
694         (TypeBindings.create_type_declaration_.ClassBinding.resolve_inner.ResolveData):
695         (TypeBindings.create_type_declaration_.ClassBinding.request_user_runtime_cast):
696         (TypeBindings.create_type_declaration_.ClassBinding.request_internal_runtime_cast):
697         (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator):
698         (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator.CodeGenerator.generate_type_builder):
699         (get_validator_call_text):
700         (get_in_c_type_text):
701         (AdHocTypeContextImpl):
702         (AdHocTypeContextImpl.__init__):
703         (AdHocTypeContextImpl.get_type_name_fix):
704         (AdHocTypeContextImpl.get_type_name_fix.NameFix):
705         (AdHocTypeContextImpl.get_type_name_fix.NameFix.output_comment):
706         (AdHocTypeContextImpl.add_type):
707         (PlainObjectBinding):
708         (PlainObjectBinding.resolve_inner):
709         (PlainObjectBinding.request_user_runtime_cast):
710         (PlainObjectBinding.request_internal_runtime_cast):
711         (PlainObjectBinding.get_validator_call_text):
712         (ArrayBinding):
713         (ArrayBinding.resolve_inner):
714         (ArrayBinding.resolve_inner.AdHocTypeContext):
715         (ArrayBinding.resolve_inner.AdHocTypeContext.get_type_name_fix):
716         (ArrayBinding.resolve_inner.AdHocTypeContext.get_type_name_fix.NameFix):
717         (ArrayBinding.resolve_inner.AdHocTypeContext.get_type_name_fix.NameFix.output_comment):
718         (ArrayBinding.resolve_inner.AdHocTypeContext.add_type):
719         (ArrayBinding.resolve_inner.ResolveData):
720         (ArrayBinding.request_user_runtime_cast):
721         (ArrayBinding.request_internal_runtime_cast):
722         (ArrayBinding.get_code_generator):
723         (ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder):
724         (ArrayBinding.get_validator_call_text):
725         (ArrayBinding.get_in_c_type_text):
726         (RawTypeBinding.resolve_inner):
727         (RawTypeBinding):
728         (RawTypeBinding.request_user_runtime_cast):
729         (RawTypeBinding.request_internal_runtime_cast):
730         (RawTypeBinding.get_validator_call_text):
731         (TypeData.get_name):
732         (TypeData):
733         (TypeData.get_domain_name):
734         (resolve_param_type):
735         (NeedRuntimeCastRequest):
736         (NeedRuntimeCastRequest.__init__):
737         (NeedRuntimeCastRequest.acknowledge):
738         (NeedRuntimeCastRequest.is_acknowledged):
739         (resolve_all_types):
740         (resolve_all_types.ForwardListener):
741         (resolve_all_types.ForwardListener.add_type_data):
742         (resolve_all_types.ResolveContext):
743         (Generator):
744         (Generator.go):
745         (Generator.process_event):
746         (Generator.process_event.AdHocTypeContext):
747         (Generator.process_event.AdHocTypeContext.add_type):
748         (Generator.process_event.EventForwardListener):
749         (Generator.process_event.EventForwardListener.add_type_data):
750         (Generator.process_event.EventResolveContext):
751         (Generator.process_event.EventGenerateContext):
752         (Generator.process_types.GenerateContext):
753         (Generator.process_types.create_type_builder_caller.call_type_builder):
754         (Generator.process_types.generate_forward_callback):
755         * inspector/InspectorValues.h:
756         (WebCore::InspectorObject::size):
757
758 2012-01-25  Anton Muhin  <antonm@chromium.org>
759
760         Unreview manual revert of r105843.
761
762         * fileapi/EntryBase.cpp:
763         (WebCore::EntryBase::toURL):
764         * page/SecurityOrigin.cpp:
765         (WebCore::extractInnerURL):
766         * platform/KURL.h:
767         (KURL):
768         * platform/KURLGoogle.cpp:
769         (WebCore):
770         (WebCore::KURLGooglePrivate::setUtf8):
771         (WebCore::KURLGooglePrivate::setAscii):
772         (WebCore::KURLGooglePrivate::initProtocolIsInHTTPFamily):
773         (WebCore::KURLGooglePrivate::copyTo):
774         (WebCore::encodeWithURLEscapeSequences):
775         * platform/KURLGooglePrivate.h:
776         (KURLGooglePrivate):
777
778 2012-01-25  Noel Gordon  <noel.gordon@gmail.com>
779
780         Use maximum image dimension definition from libwebp
781         https://bugs.webkit.org/show_bug.cgi?id=76980
782
783         Reviewed by Kent Tamura.
784
785         No new tests, no change in behavior.
786
787         * platform/image-encoders/skia/WEBPImageEncoder.cpp:
788         (WebCore::encodePixels): s/WEBP_MAX_DIMENSION/WEBPImageEncoder::MaximumImageDimension/
789         * platform/image-encoders/skia/WEBPImageEncoder.h:
790         (): Remove local definition of the maximum webp image dimension
791
792 2012-01-25  Noel Gordon  <noel.gordon@gmail.com>
793
794         JPEGDecoder should use imageDecoder colorProfile helpers
795         https://bugs.webkit.org/show_bug.cgi?id=76968
796         
797         Reviewed by Adam Barth.
798
799         No new tests. Cover by existing tests, in particular:
800           fast/images/ycbcr-with-cmyk-color-profile.html
801           fast/images/gray-scale-jpeg-with-color-profile.html
802           fast/images/cmyk-jpeg-with-color-profile.html
803           fast/images/color-jpeg-with-color-profile.html
804
805         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: white-space removals via Xcode.
806         (WebCore::readColorProfile):  Use ImageDecoder.h color profile helper routines.
807         (WebCore::JPEGImageReader::JPEGImageReader):
808         (WebCore::JPEGImageReader::decode):
809
810 2012-01-25  No'am Rosenthal  <noam.rosenthal@nokia.com>
811
812         [Texmap] Divide TextureMapperNode.cpp to 3 files.
813         https://bugs.webkit.org/show_bug.cgi?id=76660
814
815         Reviewed by Kenneth Rohde Christiansen.
816
817         Split the animation part of TextureMapperNode out to a separate file, called
818         TextureMapperAnimation.
819         Provide a clean interface for that class, that allows separating the internals of the scene
820         painting from the internals of the animation interpolation.
821
822         No new tests. Existing animation tests cover this.
823
824         * GNUmakefile.list.am: Added new TextureMapper-related files.
825         * Target.pri: Added new TextureMapper-related files.
826         * WebCore.gypi: Added new TextureMapper-related files.
827         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
828         (WebCore::GraphicsLayerTextureMapper::addAnimation):
829         (WebCore::GraphicsLayerTextureMapper::pauseAnimation):
830         (WebCore::GraphicsLayerTextureMapper::removeAnimation):
831         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
832         * platform/graphics/texmap/TextureMapperAnimation.cpp: Added.
833         * platform/graphics/texmap/TextureMapperAnimation.h: Added.
834         * platform/graphics/texmap/TextureMapperNode.cpp:
835         (WebCore::TextureMapperNode::syncCompositingStateSelf):
836         (WebCore::TextureMapperNode::descendantsOrSelfHaveRunningAnimations):
837         (WebCore::TextureMapperNode::syncAnimations):
838         (WebCore::TextureMapperNode::syncAnimationsRecursively):
839         (WebCore::TextureMapperNode::syncCompositingState):
840         * platform/graphics/texmap/TextureMapperNode.h:
841
842 2012-01-25  Roland Steiner  <rolandsteiner@chromium.org>
843
844         <style scoped>: Implement registering of <style scoped> with the scoping element
845         https://bugs.webkit.org/show_bug.cgi?id=67790
846
847         Implement registering of a <style> element with its parent element if the 'scoped' attribute is set.
848         Update the registration whenever the 'scoped' attribute is changed,
849         or the <style> element eneters or leaves the tree.
850
851         Also, extend windows.internals to allow for testing of the registration ref-counting.
852
853         Reviewed by Dimitri Glazkov.
854
855         Test: fast/css/style-scoped/registering.html
856
857         * WebCore.exp.in:
858         * dom/Element.cpp:
859         (WebCore::Element::hasScopedHTMLStyleChild):
860         (WebCore::Element::numberOfScopedHTMLStyleChildren):
861         (WebCore::Element::registerScopedHTMLStyleChild):
862         (WebCore::Element::unregisterScopedHTMLStyleChild):
863         * dom/Element.h:
864         * dom/ElementRareData.h:
865         (WebCore::ElementRareData::ElementRareData):
866         (WebCore::ElementRareData::registerScopedHTMLStyleChild):
867         (WebCore::ElementRareData::unregisterScopedHTMLStyleChild):
868         (WebCore::ElementRareData::hasScopedHTMLStyleChild):
869         (WebCore::ElementRareData::numberOfScopedHTMLStyleChildren):
870         * html/HTMLStyleElement.cpp:
871         (WebCore::HTMLStyleElement::HTMLStyleElement):
872         (WebCore::HTMLStyleElement::~HTMLStyleElement):
873         (WebCore::HTMLStyleElement::parseMappedAttribute):
874         (WebCore::HTMLStyleElement::registerWithScopingNode):
875         (WebCore::HTMLStyleElement::unregisterWithScopingNode):
876         (WebCore::HTMLStyleElement::insertedIntoDocument):
877         (WebCore::HTMLStyleElement::removedFromDocument):
878         (WebCore::HTMLStyleElement::willRemove):
879         * html/HTMLStyleElement.h:
880         * testing/Internals.cpp:
881         (WebCore::Internals::numberOfScopedHTMLStyleChildren):
882         * testing/Internals.h:
883         * testing/Internals.idl:
884
885 2012-01-24  Daniel Bates  <dbates@webkit.org>
886
887         Attempt to fix Mac build after changeset <http://trac.webkit.org/changeset/105843>
888         (https://bugs.webkit.org/show_bug.cgi?id=75049)
889
890         Don't include NotImplemented.h in KURL.h since NotImplemented.h includes Logging.h, which defines
891         LOG_CHANNEL_PREFIX to be "Log". And this conflicts with the inclusion of WebKitLogging.h in
892         WebHTMLView.mm (which would have defined LOG_CHANNEL_PREFIX to be "WebKitLog").
893
894         * platform/KURL.h:
895         (WebCore::KURL::innerURL):
896
897 2012-01-24  Vangelis Kokkevis  <vangelis@chromium.org>
898
899         [chromium] Ignore m_skipsDraw in TiledLayerChromium::drawsContent()
900         https://bugs.webkit.org/show_bug.cgi?id=76735
901
902         This is to add skipped layers to their RenderSurface's layer list so that they
903         are considered in the next update. Without this change, m_skipsDraw = false sticks
904         with the layer for the remainder of its lifetime.
905
906         Reviewed by James Robinson.
907
908         Tests: Unit test (TiledLayerChromiumTest.cpp)
909
910         * platform/graphics/chromium/TiledLayerChromium.cpp:
911         (WebCore::TiledLayerChromium::drawsContent):
912         * platform/graphics/chromium/TiledLayerChromium.h:
913         (WebCore::TiledLayerChromium::skipsDraw):
914
915 2012-01-24  Kentaro Hara  <haraken@chromium.org>
916
917         Invalidate r105697, r105766, r105809 and r105805
918         https://bugs.webkit.org/show_bug.cgi?id=76970
919
920         Reviewed by Adam Barth.
921
922         I've been trying to stop rebuilding .h/.cpp files generated by
923         unchanged IDLs (bug 76836), but the approach was wrong.
924         This patch invalidates patches committed in r105697, r105766,
925         r105809 and r105805.
926
927         In r105697, r105766, r105809 and r105805, I modified CodeGenerator*.pm
928         so that they overwrite .h/.cpp files only when the bytes differ.
929         By this fix, we were able to stop rebuilding .h/.cpp files that are not
930         changed. However, the fix has made generate-bindings.pl run for almost
931         all IDLs every time. The reason is as follows:
932
933         (0) Assume that there are A.idl, B.idl and C.idl.
934
935         (1) Modify A.idl.
936         (2) First build.
937         (3) supplemental_dependency.tmp is updated.
938         (4) generate-bindings.pl runs for A.idl, B.idl and C.idl.
939         (5) A.h and A.cpp are updated. B.h, B.cpp, C.h and C.cpp are not updated.
940
941         (6) Second build.
942         (7) Since B.h, B.cpp, C.h and C.cpp are older than supplemental_dependency.tmp, generate-bindings.pl runs for B.idl and C.idl.
943         (8) B.h, B.cpp, C.h and C.cpp are not updated.
944
945         (9) Third build.
946         (10) Since B.h, B.cpp, C.h and C.cpp are older than supplemental_dependency.tmp, generate-bindings.pl runs for B.idl and C.idl.
947         (11) B.h, B.cpp, C.h and C.cpp are not updated.
948         ...
949
950         We should fix the bug somehow, but how to fix it is not obvious.
951         For the time being, this patch invalidates r105697, r105766, r105809
952         and r105805.
953
954         No tests. No change in behavior.
955
956         * bindings/scripts/CodeGenerator.pm:
957         (UpdateFile):
958         * bindings/scripts/CodeGeneratorCPP.pm:
959         (WriteData):
960         * bindings/scripts/CodeGeneratorJS.pm:
961         (WriteData):
962         * bindings/scripts/CodeGeneratorObjC.pm:
963         (WriteData):
964         * bindings/scripts/CodeGeneratorV8.pm:
965         (WriteData):
966
967 2012-01-24  Eric Uhrhane  <ericu@chromium.org>
968
969         Add full support for filesystem URLs.
970         https://bugs.webkit.org/show_bug.cgi?id=75049
971
972         Reviewed by Adam Barth.
973
974         No new tests; existing layout tests cover the basic functionality, and
975         the new functionality won't be there until Chromium adds it.  This patch
976         merely enables that, without changing behavior.
977
978         * fileapi/EntryBase.cpp:
979         (WebCore::EntryBase::toURL): Add missing escaping of URL path.
980
981         * page/SecurityOrigin.cpp:
982         (WebCore::extractInnerURL): Use innerURL member, if it's populated.
983
984         * platform/KURL.h:
985         (WebCore::KURL::innerURL): Add innerURL member.
986
987         * platform/KURLGoogle.cpp:
988         (WebCore::KURLGooglePrivate::KURLGooglePrivate):
989         (WebCore::KURLGooglePrivate::operator=):
990         Add copy constructor and operator=, which are now needed since
991         m_innerURL needs special handling.
992         (WebCore::KURLGooglePrivate::setUtf8):
993         (WebCore::KURLGooglePrivate::setAscii):
994         Add calls to initInnerURL.
995         (WebCore::KURLGooglePrivate::initInnerURL):
996         Add method to init/copy m_innerURL.
997         (WebCore::KURLGooglePrivate::copyTo):
998         Handle m_innerURL during copies.
999         (WebCore::encodeWithURLEscapeSequences):
1000         Unescape %2F ['/'] in paths; it's much more readable, and it's safe.
1001
1002         * platform/KURLGooglePrivate.h:
1003         (WebCore::KURLGooglePrivate::innerURL): Add accessor for new m_innerURL.
1004
1005 2012-01-24  Ken Buchanan  <kenrb@chromium.org>
1006
1007         Crash in updateFirstLetter() from unnecessary anonymous block
1008         https://bugs.webkit.org/show_bug.cgi?id=72675
1009
1010         Reviewed by David Hyatt.
1011
1012         There was a problem with anonymous blocks not getting removed when
1013         their only block flow siblings are removed if they also have non-block
1014         flow first-letter siblings (i.e. floats). This patch modifies
1015         RenderBlock::removeChild() to look for this situation and strip out
1016         unnecessary anonymous container blocks if it occurs.
1017
1018         * rendering/RenderBlock.cpp:
1019         (WebCore::RenderBlock::removeChild):
1020         (WebCore::RenderBlock::collapseAnonymousBoxChild): Added
1021         * rendering/RenderBlock.h:
1022         (WebCore::RenderBlock::collapseAnonymousBoxChild): Added
1023
1024 2012-01-24  Daniel Cheng  <dcheng@chromium.org>
1025
1026         [chromium] event.dataTransfer.types should not return "Text" or "URL"
1027         https://bugs.webkit.org/show_bug.cgi?id=76218
1028
1029         Per the spec, "Text" and "URL" are special values handled for IE compatibility reasons in
1030         dataTransfer.setData() and dataTransfer.getData(). These values should not be exposed
1031         elsewhere.
1032
1033         Reviewed by Tony Chang.
1034
1035         Test: fast/events/dropzone-005.html
1036
1037         * platform/chromium/ChromiumDataObject.cpp:
1038         (WebCore::ChromiumDataObject::types):
1039         (WebCore::ChromiumDataObject::getData):
1040         * platform/chromium/DragDataChromium.cpp:
1041         (WebCore::DragData::containsURL):
1042         (WebCore::DragData::asURL):
1043         (WebCore::DragData::canSmartReplace):
1044
1045 2012-01-24  Daniel Cheng  <dcheng@chromium.org>
1046
1047         Make DataTransferItemList::length() const.
1048         https://bugs.webkit.org/show_bug.cgi?id=76946
1049
1050         Just a const-correctness change.
1051
1052         Reviewed by Tony Chang.
1053
1054         No new tests since no functionality changed.
1055
1056         * dom/DataTransferItemList.h:
1057         (DataTransferItemList):
1058         * platform/chromium/DataTransferItemListChromium.cpp:
1059         (WebCore::DataTransferItemListChromium::length):
1060         * platform/chromium/DataTransferItemListChromium.h:
1061         (DataTransferItemListChromium):
1062         * platform/qt/DataTransferItemListQt.cpp:
1063         (WebCore::DataTransferItemListQt::length):
1064         * platform/qt/DataTransferItemListQt.h:
1065         (DataTransferItemListQt):
1066
1067 2012-01-24  Tony Chang  <tony@chromium.org>
1068
1069         REGRESSION(r103245): can't scroll left/up using scrollbar controls of overflowing elements
1070         https://bugs.webkit.org/show_bug.cgi?id=76317
1071
1072         Reviewed by Darin Adler.
1073
1074         Test: scrollbars/scroll-rtl-or-bt-layer.html
1075
1076         * rendering/RenderLayer.cpp:
1077         (WebCore::RenderLayer::updateScrollInfoAfterLayout): Call scrollToOffsetWithoutAnimation since we're always
1078         scrolling to the just computed offset.
1079
1080 2012-01-24  Mark Rowe  <mrowe@apple.com>
1081
1082         Fix all of the builds after r105812.
1083
1084         * loader/EmptyClients.h: Move the #include in to the correct #if.
1085
1086 2012-01-24  Dmitry Lomov  <dslomov@google.com>
1087
1088         [Chromium][V8] DOMWindow::postMessage crashes if window disassociated with frame.
1089         https://bugs.webkit.org/show_bug.cgi?id=76944.
1090
1091         Reviewed by David Levin.
1092
1093         * bindings/v8/V8Proxy.cpp:
1094         (WebCore::V8Proxy::retrieveWindowForCallingContext):
1095         * bindings/v8/V8Proxy.h:
1096         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1097         (WebCore::handlePostMessageCallback):
1098
1099 2012-01-24  Geoffrey Garen  <ggaren@apple.com>
1100
1101         Updated bindings test expectations after my last patch.
1102
1103         Not reviewed.
1104
1105         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
1106         (WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):
1107         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
1108         (WebCore::JSTestEventConstructorConstructor::constructJSTestEventConstructor):
1109         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1110         (WebCore::jsTestEventTargetPrototypeFunctionAddEventListener):
1111         (WebCore::jsTestEventTargetPrototypeFunctionRemoveEventListener):
1112         * bindings/scripts/test/JS/JSTestInterface.cpp:
1113         (WebCore::JSTestInterfaceConstructor::constructJSTestInterface):
1114         (WebCore::setJSTestInterfaceSupplementalStr2):
1115         (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
1116         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
1117         (WebCore::JSTestNamedConstructorNamedConstructor::constructJSTestNamedConstructor):
1118         * bindings/scripts/test/JS/JSTestObj.cpp:
1119         (WebCore::setJSTestObjStringAttr):
1120         (WebCore::setJSTestObjStringAttrWithGetterException):
1121         (WebCore::setJSTestObjStringAttrWithSetterException):
1122         (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
1123         (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
1124         (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
1125         (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
1126         (WebCore::jsTestObjPrototypeFunctionAddEventListener):
1127         (WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
1128         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
1129         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
1130         (WebCore::jsTestObjConstructorFunctionOverloadedMethod12):
1131         (WebCore::jsTestObjPrototypeFunctionStrictFunction):
1132         * bindings/scripts/test/JS/JSTestOverridingNameGetter.cpp:
1133         (WebCore::jsTestOverridingNameGetterPrototypeFunctionAnotherFunction):
1134         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1135         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::constructJSTestSerializedScriptValueInterface):
1136
1137 2012-01-24  Greg Billock  <gbillock@google.com>
1138
1139         Change dispatchIntent API to pure virtual in FrameLoaderClient.
1140
1141         The Windows compiler needs this to deal with the forward declaration
1142         of WebCore::IntentRequest.
1143         https://bugs.webkit.org/show_bug.cgi?id=76940
1144
1145         Reviewed by Adam Barth.
1146
1147         * loader/EmptyClients.h:
1148         (WebCore::EmptyFrameLoaderClient::dispatchIntent):
1149         * loader/FrameLoaderClient.h:
1150
1151 2012-01-24  Kentaro Hara  <haraken@chromium.org>
1152
1153         CodeGeneratorJS.pm should overwrite the output .h/.cpp
1154         only if the bytes differ
1155         https://bugs.webkit.org/show_bug.cgi?id=76922
1156
1157         Reviewed by Darin Adler.
1158
1159         This is one of steps to stop rebuilding .h/.cpp files
1160         generated by unchanged IDLs (bug 76836).
1161         This patch makes a change on CodeGeneratorJS.pm so that
1162         it overwrites the output .h/.cpp only if the bytes differ.
1163
1164         No tests. No change in behavior.
1165         I manually confirmed that when I add a new attribute to Element.idl,
1166         the time-stamps of unrelated JS*.h and JS*.cpp do not change.
1167
1168         * bindings/scripts/CodeGeneratorJS.pm:
1169         (WriteData): Used UpdateFileIfChanged().
1170
1171 2012-01-24  Kentaro Hara  <haraken@chromium.org>
1172
1173         CodeGeneratorCPP.pm should overwrite the output .h/.cpp
1174         only if the bytes differ
1175         https://bugs.webkit.org/show_bug.cgi?id=76926
1176
1177         Reviewed by Adam Barth.
1178
1179         This is one of steps to stop rebuilding .h/.cpp files
1180         generated by unchanged IDLs (bug 76836).
1181         This patch makes a change on CodeGeneratorCPP.pm so that
1182         it overwrites the output .h/.cpp only if the bytes differ.
1183
1184         No tests. No change in behavior.
1185         Manually confirm that when you add a new attribute to Element.idl,
1186         the time-stamps of unrelated WebDOM*.h and WebDOM*.cpp do not change.
1187
1188         * bindings/scripts/CodeGeneratorCPP.pm:
1189         (WriteData): Used UpdateFileIfChanged().
1190
1191 2012-01-24  Sheriff Bot  <webkit.review.bot@gmail.com>
1192
1193         Unreviewed, rolling out r105238.
1194         http://trac.webkit.org/changeset/105238
1195         https://bugs.webkit.org/show_bug.cgi?id=76943
1196
1197         Remove the assert text hack as it served its purpose.
1198         (Requested by dave_levin on #webkit).
1199
1200         * dom/ActiveDOMObject.cpp:
1201         (WebCore::ContextDestructionObserver::ContextDestructionObserver):
1202         (WebCore::ContextDestructionObserver::~ContextDestructionObserver):
1203         (WebCore::ActiveDOMObject::ActiveDOMObject):
1204         (WebCore::ActiveDOMObject::~ActiveDOMObject):
1205         * storage/DatabaseSync.cpp:
1206         (WebCore::DatabaseSync::openDatabaseSync):
1207         (WebCore::DatabaseSync::~DatabaseSync):
1208         (WebCore::DatabaseSync::changeVersion):
1209         (WebCore::DatabaseSync::runTransaction):
1210
1211 2012-01-24  Kentaro Hara  <haraken@chromium.org>
1212
1213         [Refactoring] In CodeGeneratorGObject.pm, merge
1214         GeneratePrivateHeader() into WriteData()
1215         https://bugs.webkit.org/show_bug.cgi?id=76923
1216
1217         Reviewed by Adam Barth.
1218
1219         This patch merges GeneratePrivateHeader() into WriteData(),
1220         so that all code to output .h/.cpp is managed by WriteData(),
1221         just like other CodeGenerator*.pm does.
1222
1223         No tests. No change in behavior.
1224         Confirm that GTK/GObject build passes.
1225
1226         * bindings/scripts/CodeGeneratorGObject.pm:
1227         (Generate):
1228         (WriteData): Copied GeneratePrivateHeader() to here.
1229         Removed $hasLegacyParen, $hasRealParent and $hasParent
1230         since they are not used.
1231         (GenerateInterface):
1232
1233 2012-01-24  Daniel Cheng  <dcheng@chromium.org>
1234
1235         dropzone does not normalize type strings
1236         https://bugs.webkit.org/show_bug.cgi?id=76925
1237
1238         Per the HTML spec, we are supposed to normalize types during dropzone processing by
1239         lowercasing them.
1240
1241         Reviewed by Tony Chang.
1242
1243         Tests: fast/events/dropzone-002.html
1244
1245         * dom/Clipboard.cpp:
1246         (WebCore::Clipboard::hasDropZoneType):
1247
1248 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
1249
1250         [GTK] Refactor GTK's accessibilitity code to be more modular
1251         https://bugs.webkit.org/show_bug.cgi?id=76783
1252
1253         Reviewed by Martin Robinson.
1254
1255         Don't expose functions for the ATK interfaces in header files.
1256
1257         Expose only the initialization function for each interface, and
1258         use the generic functions from ATK interfaces where needed.
1259
1260         * accessibility/gtk/WebKitAccessibleInterfaceAction.cpp:
1261         (webkitAccessibleActionDoAction): Made this function static.
1262         (webkitAccessibleActionGetNActions): Ditto.
1263         (webkitAccessibleActionGetDescription): Ditto.
1264         (webkitAccessibleActionGetKeybinding): Ditto.
1265         (webkitAccessibleActionGetName): Ditto.
1266         (webkitAccessibleActionInterfaceInit): Moved to the bottom.
1267         * accessibility/gtk/WebKitAccessibleInterfaceAction.h: Removed all
1268         functions but the one for initializing the interface from here.
1269
1270         * accessibility/gtk/WebKitAccessibleInterfaceComponent.cpp:
1271         (webkitAccessibleComponentRefAccessibleAtPoint): Made this function static.
1272         (webkitAccessibleComponentGetExtents): Ditto.
1273         (webkitAccessibleComponentGrabFocus): Ditto.
1274         (webkitAccessibleComponentInterfaceInit): Moved to the bottom.
1275         * accessibility/gtk/WebKitAccessibleInterfaceComponent.h: Removed all
1276         functions but the one for initializing the interface from here.
1277
1278         * accessibility/gtk/WebKitAccessibleInterfaceDocument.cpp:
1279         (webkitAccessibleDocumentGetAttributeValue): Made this function static.
1280         (webkitAccessibleDocumentGetAttributes): Ditto.
1281         (webkitAccessibleDocumentGetLocale): Ditto.
1282         (webkitAccessibleDocumentInterfaceInit): Moved to the bottom.
1283         * accessibility/gtk/WebKitAccessibleInterfaceDocument.h: Removed all
1284         functions but the one for initializing the interface from here.
1285
1286         * accessibility/gtk/WebKitAccessibleInterfaceEditableText.cpp:
1287         (webkitAccessibleEditableTextSetRunAttributes): Made this function static.
1288         (webkitAccessibleEditableTextSetTextContents): Ditto.
1289         (webkitAccessibleEditableTextInsertText): Ditto.
1290         (webkitAccessibleEditableTextCopyText): Ditto.
1291         (webkitAccessibleEditableTextCutText): Ditto.
1292         (webkitAccessibleEditableTextDeleteText): Ditto.
1293         (webkitAccessibleEditableTextPasteText): Ditto.
1294         (webkitAccessibleEditableTextInterfaceInit): Moved to the bottom.
1295         * accessibility/gtk/WebKitAccessibleInterfaceEditableText.h: Removed all
1296         functions but the one for initializing the interface from here.
1297
1298         * accessibility/gtk/WebKitAccessibleInterfaceHyperlinkImpl.cpp:
1299         (webkitAccessibleHyperlinkImplGetHyperlink): Made this function static.
1300         (webkitAccessibleHyperlinkImplInterfaceInit): Moved to the bottom.
1301         * accessibility/gtk/WebKitAccessibleInterfaceHyperlinkImpl.h: Removed all
1302         functions but the one for initializing the interface from here.
1303
1304         * accessibility/gtk/WebKitAccessibleInterfaceHypertext.cpp:
1305         (webkitAccessibleHypertextGetLink): Made this function static.
1306         (webkitAccessibleHypertextGetNLinks): Ditto.
1307         (webkitAccessibleHypertextGetLinkIndex): Ditto.
1308         (webkitAccessibleHypertextInterfaceInit): Moved to the bottom.
1309         * accessibility/gtk/WebKitAccessibleInterfaceHypertext.h: Removed all
1310         functions but the one for initializing the interface from here.
1311
1312         * accessibility/gtk/WebKitAccessibleInterfaceImage.cpp:
1313         (webkitAccessibleImageGetImagePosition): Made this function static.
1314         (webkitAccessibleImageGetImageDescription): Ditto.
1315         (webkitAccessibleImageGetImageSize): Ditto.
1316         (webkitAccessibleImageInterfaceInit): Moved to the bottom.
1317         * accessibility/gtk/WebKitAccessibleInterfaceImage.h: Removed all
1318         functions but the one for initializing the interface from here.
1319
1320         * accessibility/gtk/WebKitAccessibleInterfaceSelection.cpp:
1321         (webkitAccessibleSelectionAddSelection): Made this function static.
1322         (webkitAccessibleSelectionClearSelection): Ditto.
1323         (webkitAccessibleSelectionRefSelection): Ditto.
1324         (webkitAccessibleSelectionGetSelectionCount): Ditto.
1325         (webkitAccessibleSelectionIsChildSelected): Ditto.
1326         (webkitAccessibleSelectionRemoveSelection): Ditto.
1327         (webkitAccessibleSelectionSelectAllSelection): Ditto.
1328         (webkitAccessibleSelectionInterfaceInit): Moved to the bottom.
1329         * accessibility/gtk/WebKitAccessibleInterfaceSelection.h: Removed all
1330         functions but the one for initializing the interface from here.
1331
1332         * accessibility/gtk/WebKitAccessibleInterfaceTable.cpp:
1333         (webkitAccessibleTableRefAt): Made this function static.
1334         (webkitAccessibleTableGetIndexAt): Ditto.
1335         (webkitAccessibleTableGetColumnAtIndex): Ditto.
1336         (webkitAccessibleTableGetRowAtIndex): Ditto.
1337         (webkitAccessibleTableGetNColumns): Ditto.
1338         (webkitAccessibleTableGetNRows): Ditto.
1339         (webkitAccessibleTableGetColumnExtentAt): Ditto.
1340         (webkitAccessibleTableGetRowExtentAt): Ditto.
1341         (webkitAccessibleTableGetColumnHeader): Ditto.
1342         (webkitAccessibleTableGetRowHeader): Ditto.
1343         (webkitAccessibleTableGetCaption): Ditto.
1344         (webkitAccessibleTableGetColumnDescription): Ditto.
1345         (webkitAccessibleTableGetRowDescription): Ditto.
1346         (webkitAccessibleTableInterfaceInit): Moved to the bottom.
1347         * accessibility/gtk/WebKitAccessibleInterfaceTable.h: Removed all
1348         functions but the one for initializing the interface from here.
1349
1350         * accessibility/gtk/WebKitAccessibleInterfaceText.cpp:
1351         (textForRenderer): Made this function static.
1352         (textForObject): Ditto.
1353         (webkitAccessibleTextGetText): Ditto.
1354         (webkitAccessibleTextGetTextAfterOffset): Ditto.
1355         (webkitAccessibleTextGetTextAtOffset): Ditto.
1356         (webkitAccessibleTextGetTextBeforeOffset): Ditto.
1357         (webkitAccessibleTextGetCharacterAtOffset): Ditto.
1358         (webkitAccessibleTextGetCaretOffset): Ditto.
1359         (webkitAccessibleTextGetRunAttributes): Ditto.
1360         (webkitAccessibleTextGetDefaultAttributes): Ditto.
1361         (webkitAccessibleTextGetCharacterExtents): Ditto.
1362         (webkitAccessibleTextGetRangeExtents): Ditto.
1363         (webkitAccessibleTextGetCharacterCount): Ditto.
1364         (webkitAccessibleTextGetOffsetAtPoint): Ditto.
1365         (webkitAccessibleTextGetNSelections): Ditto.
1366         (webkitAccessibleTextGetSelection): Ditto.
1367         (webkitAccessibleTextAddSelection): Ditto.
1368         (webkitAccessibleTextSetSelection): Ditto.
1369         (webkitAccessibleTextRemoveSelection): Ditto.
1370         (webkitAccessibleTextSetCaretOffset): Ditto.
1371         (webkitAccessibleTextInterfaceInit): Moved to the bottom.
1372         * accessibility/gtk/WebKitAccessibleInterfaceText.h: Removed all
1373         functions but the one for initializing the interface from here.
1374
1375         * accessibility/gtk/WebKitAccessibleInterfaceValue.cpp:
1376         (webkitAccessibleValueGetCurrentValue): Made this function static.
1377         (webkitAccessibleValueGetMaximumValue): Ditto.
1378         (webkitAccessibleValueGetMinimumValue): Ditto.
1379         (webkitAccessibleValueSetCurrentValue): Ditto.
1380         (webkitAccessibleValueGetMinimumIncrement): Ditto.
1381         (webkitAccessibleValueInterfaceInit): Moved to the bottom.
1382         * accessibility/gtk/WebKitAccessibleInterfaceValue.h: Removed all
1383         functions but the one for initializing the interface from here.
1384
1385         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
1386         (webkitAccessibleGetName): Replace call to
1387         webkitAccessibleTextGetText with atk_text_get_text.
1388
1389 2012-01-24  James Robinson  <jamesr@chromium.org>
1390
1391         [chromium] Add null check for ContentLayerChromium::m_delegate back to ContentLayerChromium::drawsContent()
1392         https://bugs.webkit.org/show_bug.cgi?id=76887
1393
1394         Reviewed by Dimitri Glazkov.
1395
1396         A ContentLayerChromium's m_delegate pointer is nulled out when its owning GraphicsLayerChromium is destroyed.
1397         It's possible in some circumstances for this to happen during painting. The null check for this pointer was
1398         erroneously removed from the base class TiledLayerChromium in r105460.
1399
1400         No new tests since we don't know how to reproduce this sort of layer mutation during paint (not for lack of
1401         trying!). Fix based on crash reports from the field.
1402
1403         * platform/graphics/chromium/ContentLayerChromium.cpp:
1404         (WebCore::ContentLayerChromium::drawsContent):
1405         * platform/graphics/chromium/ContentLayerChromium.h:
1406
1407 2012-01-16  Robert Hogan  <robert@webkit.org>
1408
1409         REGRESSION (r102040): Wrong column widths when row has colspan and unwrappable text
1410         https://bugs.webkit.org/show_bug.cgi?id=74874
1411
1412         Reviewed by Julien Chaffraix.
1413
1414         Tests: fast/css/min-width-with-spanned-cell-fixed.html
1415                fast/css/min-width-with-spanned-cell.html
1416
1417         A cell with unwrappable text must be as wide as the text is long. If it is a colspan in a table whose
1418         columns are all percent and the width of the span cell is wider than the cells it spans in any other 
1419         row then it will squeeze those cells beyond the width required to display their contents.
1420
1421         To fix this ensure that the squeezing of cells within a span respects the minimum width determined by
1422         their contents. The squeezing remains for fixed layout tables as per FF and Opera.
1423
1424         * rendering/AutoTableLayout.cpp:
1425         (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
1426
1427 2012-01-24  Tommy Widenflycht  <tommyw@google.com>
1428
1429         MediaStream API: Split the MediaStream track list into audio/video specific ones.
1430         https://bugs.webkit.org/show_bug.cgi?id=76614
1431
1432         The latest draft of the WebRTC standard have split the MediaStream combined track list
1433         into audio/video specific ones.
1434
1435         Reviewed by Darin Fisher.
1436
1437         Tests for the Media Stream API will be provided by the bug 56587, pending enough landed code.
1438
1439         * mediastream/LocalMediaStream.cpp:
1440         (WebCore::LocalMediaStream::create):
1441         (WebCore::LocalMediaStream::LocalMediaStream):
1442         * mediastream/LocalMediaStream.h:
1443         * mediastream/MediaStream.cpp:
1444         (WebCore::processTrackList):
1445         (WebCore::MediaStream::create):
1446         (WebCore::MediaStream::MediaStream):
1447         * mediastream/MediaStream.h:
1448         (WebCore::MediaStream::audioTracks):
1449         (WebCore::MediaStream::videoTracks):
1450         * mediastream/MediaStream.idl:
1451         * mediastream/MediaStreamTrack.cpp:
1452         (WebCore::MediaStreamTrack::create):
1453         (WebCore::MediaStreamTrack::MediaStreamTrack):
1454         (WebCore::MediaStreamTrack::kind):
1455         (WebCore::MediaStreamTrack::label):
1456         (WebCore::MediaStreamTrack::enabled):
1457         (WebCore::MediaStreamTrack::setEnabled):
1458         (WebCore::MediaStreamTrack::component):
1459         * mediastream/MediaStreamTrack.h:
1460         * mediastream/UserMediaClient.h:
1461         * mediastream/UserMediaRequest.cpp:
1462         (WebCore::UserMediaRequest::mediaStreamSourcesQueryCompleted):
1463         (WebCore::UserMediaRequest::succeed):
1464         * mediastream/UserMediaRequest.h:
1465         * platform/mediastream/MediaStreamCenter.cpp:
1466         (WebCore::MediaStreamCenter::queryMediaStreamSources):
1467         (WebCore::MediaStreamCenter::didSetMediaStreamTrackEnabled):
1468         * platform/mediastream/MediaStreamCenter.h:
1469         * platform/mediastream/MediaStreamDescriptor.h:
1470         (WebCore::MediaStreamDescriptor::create):
1471         (WebCore::MediaStreamDescriptor::numberOfAudioComponents):
1472         (WebCore::MediaStreamDescriptor::audioComponent):
1473         (WebCore::MediaStreamDescriptor::numberOfVideoComponents):
1474         (WebCore::MediaStreamDescriptor::videoComponent):
1475         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor):
1476
1477 2012-01-24  Sheriff Bot  <webkit.review.bot@gmail.com>
1478
1479         Unreviewed, rolling out r105738.
1480         http://trac.webkit.org/changeset/105738
1481         https://bugs.webkit.org/show_bug.cgi?id=76930
1482
1483         caused fast/css/getComputedStyle/computed-style-border-
1484         image.html to crash (Requested by kling on #webkit).
1485
1486         * dom/NamedNodeMap.cpp:
1487         * dom/NamedNodeMap.h:
1488         * dom/StyledElement.cpp:
1489         (WebCore::StyledElement::updateStyleAttribute):
1490         (WebCore::StyledElement::createInlineStyleDecl):
1491         (WebCore::StyledElement::destroyInlineStyleDecl):
1492         (WebCore::StyledElement::ensureInlineStyleDecl):
1493         (WebCore::StyledElement::style):
1494         (WebCore::StyledElement::addSubresourceAttributeURLs):
1495         * dom/StyledElement.h:
1496         (WebCore::StyledElement::inlineStyleDecl):
1497
1498 2012-01-24  Parag Radke  <nrqv63@motorola.com>
1499
1500         REGRESSION (r73385): Marquee with behavior="alternate" is not working
1501         https://bugs.webkit.org/show_bug.cgi?id=64230
1502
1503         Reviewed by Simon Fraser.
1504
1505         This patch gives correct content width for marquee, which computes
1506         correct start position to scroll marquee.
1507
1508         Test: fast/html/marquee-alternate.html
1509
1510         * rendering/RenderBlock.cpp:
1511         (WebCore::RenderBlock::computePreferredLogicalWidths):
1512         We need(style()->marqueeBehavior() != MALTERNATE) check as we always need the marquee's 
1513         actual content width to compute the initial/end position in case of 'MALTERNATE'.
1514         So we need to calculate the logical width in Alternate case even if fixed width is specified
1515         as content has to animate between renderBox().right().x() - contentWidth() and 
1516         renderBox().left().x() + contentWidth().
1517         
1518         * rendering/RenderMarquee.cpp:
1519         (WebCore::RenderMarquee::computePosition):
1520         Using PreferredLogicalWidth in place of LayoutOverflow for calculating correct content width.
1521
1522 2012-01-24  Andreas Kling  <awesomekling@apple.com>
1523
1524         RenderInline: Skip caching the computed line height.
1525         <http://webkit.org/b/76929>
1526
1527         Reviewed by David Hyatt.
1528
1529         Stop caching the computed line height on RenderInline and make retrieving it from
1530         RenderStyle slightly cheaper, freeing up 4 bytes per RenderInline instance.
1531         This appears to be mostly performance neutral, I don't get more than the occasional
1532         sample hit when instrumenting heavier web pages.
1533
1534         This reduces memory consumption by 228 kB (both 32/64-bit) when viewing the full
1535         HTML5 spec at <http://whatwg.org/c>.
1536
1537         * rendering/RenderInline.cpp:
1538         (WebCore::RenderInline::RenderInline):
1539         (WebCore::RenderInline::styleDidChange):
1540         (WebCore::RenderInline::lineHeight):
1541         * rendering/RenderInline.h:
1542         * rendering/style/RenderStyle.h:
1543         (WebCore::RenderStyle::computedLineHeight):
1544
1545             Optimize computedLineHeight() to mitigate some of the damage of calling
1546             it more often.
1547
1548 2012-01-24  Abhishek Arya  <inferno@chromium.org>
1549
1550         Crash when rendering -webkit-column-span.
1551         https://bugs.webkit.org/show_bug.cgi?id=73265
1552
1553         Reviewed by David Hyatt.
1554
1555         This patch addresses 2 problems causing crashes in multi-column layout
1556         1. Trying to render -webkit-column-span for :before, :after caused
1557            re-entrancy in updateBeforeAfterContent while working on splitFlow.
1558         2. Cloning a block which has its :before, :after content not added yet,
1559            caused issues because cloneBlock will definitely have its :before,
1560            :after content created when setStyle() is called. So, we would
1561            overwrite cloneBlock with a wrong childrenInline value.
1562
1563         Tests: fast/multicol/clone-block-children-inline-mismatch-crash.html
1564                fast/multicol/span/generated-child-split-flow-crash.html
1565
1566         * rendering/RenderBlock.cpp:
1567         (WebCore::RenderBlock::clone):
1568         (WebCore::RenderBlock::columnsBlockForSpanningElement):
1569
1570 2012-01-22  Robert Hogan  <robert@webkit.org>
1571
1572         Incorrect positioning of floating pseudo-elements in table captions
1573         https://bugs.webkit.org/show_bug.cgi?id=76664
1574
1575         Reviewed by Julien Chaffraix.
1576
1577         Tests: fast/table/caption-encloses-overhanging-float-expected.html
1578                fast/table/caption-encloses-overhanging-float.html
1579
1580         Allow table captions to expand and enclose overhanging floats. When performing
1581         layout on a caption ensure that its logical top is set so that it does not mistakenly
1582         conclude that floats in a previous sibling are intruding into it when they're not.
1583
1584         Mostly diagnosed by Abhishek Arya.
1585
1586         * rendering/RenderBlock.cpp:
1587         (WebCore::RenderBlock::expandsToEncloseOverhangingFloats): add table captions to the list
1588          that can enclosed overhanging floats.
1589         * rendering/RenderTable.cpp:
1590         (WebCore::RenderTable::layoutCaption): use the best available approximation of the caption's logical
1591          top offset before laying it out.
1592         (WebCore::RenderTable::layout):
1593         * rendering/RenderTable.h:
1594
1595 2012-01-24  Kentaro Hara  <haraken@chromium.org>
1596
1597         In CodeGeneratorV8.pm, overwrite the output .h/.cpp
1598         only if the bytes differ
1599         https://bugs.webkit.org/show_bug.cgi?id=76920
1600
1601         Reviewed by Darin Adler.
1602
1603         This is one of steps to stop rebuilding .h/.cpp files
1604         generated by unchanged IDLs (bug 76836).
1605         This patch makes a change on CodeGeneratorV8.pm so that
1606         it overwrites the output .h/.cpp only if the bytes differ.
1607
1608         No tests. No change in behavior.
1609         I manually confirmed that when I add a new attribute to Element.idl,
1610         the time-stamps of unrelated V8*.h and V8*.cpp do not change.
1611
1612         * bindings/scripts/CodeGeneratorV8.pm:
1613         (WriteData): Used UpdateFileIfChanged().
1614
1615 2012-01-24  Kentaro Hara  <haraken@chromium.org>
1616
1617         [Refactoring] Remove finish() from all CodeGenerator*.pm
1618         https://bugs.webkit.org/show_bug.cgi?id=76918
1619
1620         Reviewed by Darin Adler.
1621
1622         Now finish() is empty in all CodeGenerator*.pm. This patch removes them.
1623
1624         No tests. No change in behavior.
1625
1626         * bindings/scripts/CodeGenerator.pm:
1627         (ProcessDocument):
1628         * bindings/scripts/CodeGeneratorCPP.pm:
1629         * bindings/scripts/CodeGeneratorGObject.pm:
1630         * bindings/scripts/CodeGeneratorJS.pm:
1631         * bindings/scripts/CodeGeneratorObjC.pm:
1632         * bindings/scripts/CodeGeneratorV8.pm:
1633
1634 2012-01-24  Vsevolod Vlasov  <vsevik@chromium.org>
1635
1636         Web Inspector: incorrect highlight position when searching in console
1637         https://bugs.webkit.org/show_bug.cgi?id=76837
1638
1639         Reviewed by Yury Semikhatsky.
1640
1641         * inspector/front-end/ConsoleMessage.js:
1642         (WebInspector.ConsoleMessageImpl.prototype._formatMessage):
1643         (WebInspector.ConsoleMessageImpl.prototype.clearHighlight):
1644         (WebInspector.ConsoleMessageImpl.prototype.highlightSearchResults):
1645         (WebInspector.ConsoleMessageImpl.prototype._highlightSearchResultsInElement):
1646         (WebInspector.ConsoleMessageImpl.prototype.matchesRegex):
1647
1648 2012-01-23  Simon Fraser  <simon.fraser@apple.com>
1649
1650         Show layer borders for scrollbar layers
1651         https://bugs.webkit.org/show_bug.cgi?id=76888
1652
1653         Reviewed by Beth Dakin.
1654         
1655         When compositing layer borders are showing, show the borders
1656         for scrollbars layers. This reduces confusion about whether scrollbars
1657         are rendering into their own layers.
1658         
1659         Requires a new parameter to two GraphicsLayerClient methods.
1660
1661         * platform/graphics/GraphicsLayer.h:
1662         (WebCore::GraphicsLayer::showDebugBorders):
1663         (WebCore::GraphicsLayer::showRepaintCounter):
1664         * platform/graphics/GraphicsLayerClient.h:
1665         * rendering/RenderLayerBacking.cpp:
1666         (WebCore::RenderLayerBacking::showDebugBorders):
1667         (WebCore::RenderLayerBacking::showRepaintCounter):
1668         * rendering/RenderLayerBacking.h:
1669         * rendering/RenderLayerCompositor.cpp:
1670         (WebCore::RenderLayerCompositor::showDebugBorders):
1671         (WebCore::RenderLayerCompositor::showRepaintCounter):
1672         * rendering/RenderLayerCompositor.h:
1673
1674 2012-01-24  David Levin  <levin@chromium.org>
1675
1676         [windows] Convert usage of GetDC to HWndDC Part 3.
1677         https://bugs.webkit.org/show_bug.cgi?id=76889
1678
1679         Reviewed by Adam Roben.
1680
1681         No new functionality so no new tests.
1682
1683         * platform/graphics/win/UniscribeController.cpp:
1684         (WebCore::UniscribeController::shapeAndPlaceItem): Simple replacement.
1685         (WebCore::UniscribeController::shape): Use the delayed allocation.
1686         * platform/win/PopupMenuWin.cpp:
1687         (WebCore::PopupMenuWin::paint): Fix a dc leak and use the dellayed allocation.
1688
1689 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
1690
1691         [GTK] Refactor GTK's accessibilitity code to be more modular
1692         https://bugs.webkit.org/show_bug.cgi?id=76783
1693
1694         Reviewed by Martin Robinson.
1695
1696         Fix coding style in the ATK AccessibilityObject wrapper.
1697
1698         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
1699         (webkitAccessibleGetName):
1700         (webkitAccessibleGetDescription):
1701         (webkitAccessibleGetParent):
1702         (webkitAccessibleGetNChildren):
1703         (webkitAccessibleRefChild):
1704         (webkitAccessibleGetIndexInParent):
1705         (webkitAccessibleGetAttributes):
1706         (atkRole):
1707         (webkitAccessibleGetRole):
1708         (setAtkStateSetFromCoreObject):
1709         (webkitAccessibleRefStateSet):
1710         (webkitAccessibleRefRelationSet):
1711         (webkitAccessibleInit):
1712         (webkitAccessibleFinalize):
1713         (webkit_accessible_class_init):
1714
1715 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
1716
1717         [GTK] Refactor GTK's accessibilitity code to be more modular
1718         https://bugs.webkit.org/show_bug.cgi?id=76783
1719
1720         Reviewed by Martin Robinson.
1721
1722         Cleanup the list of includes in WebKitAccessibleWrapperAtk.cpp.
1723
1724         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Removes
1725         'include' lines that are no longer needed after the refactor.
1726
1727 2012-01-24  Raphael Kubo da Costa  <kubo@profusion.mobi>
1728
1729         [EFL] Remove CookieJarEfl.cpp
1730         https://bugs.webkit.org/show_bug.cgi?id=76916
1731
1732         Reviewed by Gustavo Noronha Silva.
1733
1734         CookieJarEfl.cpp has not been used for years -- we either need
1735         CookieJarCurl or CookieJarSoup depending on the chosen network
1736         backend.
1737
1738         No new tests, just an unused file being removed.
1739
1740         * WebCore.gypi: Remove reference to CookieJarEfl.cpp.
1741         * platform/efl/CookieJarEfl.cpp: Removed.
1742
1743 2012-01-24  Abhishek Arya  <inferno@chromium.org>
1744
1745         Crash when accessing removed parent in InlineTextBox.
1746         https://bugs.webkit.org/show_bug.cgi?id=72982
1747
1748         Reviewed by James Robinson.
1749
1750         The crash happens because:
1751         1. We add heading element(h1) before the span element(span1),
1752            causing splitflow on the anonymous block containing BeforeText,
1753            span1(and SpanText) and AfterText.
1754         2. span1 moves to the cloneBlock (continuation).
1755         3. Our anonymous block and cloneBlock are both marked for layout,
1756            however we still have a copy of our lineboxes with its childs
1757            as the textboxes belonging to SpanText.
1758         4. Our anonymous block only child BeforeText is getting removed,
1759            so we dont have any children anymore and we delete our lineboxes,
1760            leaving behind the children textboxes belonging to SpanText.
1761         5. SpanText is getting destroyed, so it tries to inform removed
1762            parent lineboxes causing the crash.
1763
1764         Test: fast/block/block-remove-child-delete-line-box-crash.html
1765
1766         * rendering/RenderBlock.cpp:
1767         (WebCore::RenderBlock::removeChild):
1768
1769 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
1770
1771         [GTK] Refactor GTK's accessibilitity code to be more modular
1772         https://bugs.webkit.org/show_bug.cgi?id=76783
1773
1774         Reviewed by Martin Robinson.
1775
1776         New files for the implementation of the AtkTable interface,
1777         containing the related code from WebKitAccessibleWrapperAtk.cpp.
1778
1779         * accessibility/gtk/WebKitAccessibleInterfaceTable.cpp: Added.
1780         (core):
1781         (cell):
1782         (cellIndex):
1783         (cellAtIndex):
1784         (webkitAccessibleTableInterfaceInit):
1785         (webkitAccessibleTableRefAt):
1786         (webkitAccessibleTableGetIndexAt):
1787         (webkitAccessibleTableGetColumnAtIndex):
1788         (webkitAccessibleTableGetRowAtIndex):
1789         (webkitAccessibleTableGetNColumns):
1790         (webkitAccessibleTableGetNRows):
1791         (webkitAccessibleTableGetColumnExtentAt):
1792         (webkitAccessibleTableGetRowExtentAt):
1793         (webkitAccessibleTableGetColumnHeader):
1794         (webkitAccessibleTableGetRowHeader):
1795         (webkitAccessibleTableGetCaption):
1796         (webkitAccessibleTableGetColumnDescription):
1797         (webkitAccessibleTableGetRowDescription):
1798         * accessibility/gtk/WebKitAccessibleInterfaceTable.h: Added.
1799         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove code
1800         related to the implementation of the AtkTable interface.
1801
1802         Add new files to build files.
1803
1804         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceTable.[h|cpp].
1805         * WebCore.gypi: Ditto.
1806
1807 2012-01-24  Vsevolod Vlasov  <vsevik@chromium.org>
1808
1809         Web Inspector: Scripts panel tabbed editor container should have gray background when there are no open tabs.
1810         https://bugs.webkit.org/show_bug.cgi?id=76903
1811
1812         Reviewed by Yury Semikhatsky.
1813
1814         * inspector/front-end/TabbedPane.js:
1815         (WebInspector.TabbedPane.prototype._updateTabElements):
1816         * inspector/front-end/tabbedPane.css:
1817         (.tabbed-pane-content.has-no-tabs):
1818
1819 2012-01-24  Vsevolod Vlasov  <vsevik@chromium.org>
1820
1821         Web Inspector: OpenResourceDialog should work when there are no open tabs in scripts panel.
1822         https://bugs.webkit.org/show_bug.cgi?id=76907
1823
1824         Reviewed by Yury Semikhatsky.
1825
1826         * inspector/front-end/FilteredItemSelectionDialog.js:
1827         (WebInspector.OpenResourceDialog.install):
1828         * inspector/front-end/ScriptsPanel.js:
1829
1830 2012-01-24  Peter Rybin  <peter.rybin@gmail.com>
1831
1832         Web Inspector: CodeGeneratorInspector.py: put TypeBuilder namespace in a separate sources
1833         https://bugs.webkit.org/show_bug.cgi?id=76868
1834
1835         Reviewed by Yury Semikhatsky.
1836
1837         Configurations of (hopefully) all build systems are fixed.
1838
1839         * CMakeLists.txt:
1840         * DerivedSources.make:
1841         * DerivedSources.pri:
1842         * GNUmakefile.am:
1843         * GNUmakefile.list.am:
1844         * WebCore.gyp/WebCore.gyp:
1845         * WebCore.gypi:
1846         * WebCore.vcproj/WebCore.vcproj:
1847         * WebCore.xcodeproj/project.pbxproj:
1848         * inspector/CodeGeneratorInspector.py:
1849         (dash_to_camelcase):
1850         (InspectorFrontend_h):
1851         (InspectorBackendDispatcher_h):
1852
1853 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
1854
1855         [GTK] Refactor GTK's accessibilitity code to be more modular
1856         https://bugs.webkit.org/show_bug.cgi?id=76783
1857
1858         Reviewed by Martin Robinson.
1859
1860         New files for the implementation of the AtkText interface,
1861         containing the related code from WebKitAccessibleWrapperAtk.cpp.
1862
1863         * accessibility/gtk/WebKitAccessibleInterfaceText.cpp: Added.
1864         (core):
1865         (textForRenderer):
1866         (textForObject):
1867         (getGailTextUtilForAtk):
1868         (getPangoLayoutForAtk):
1869         (baselinePositionForRenderObject):
1870         (getAttributeSetForAccessibilityObject):
1871         (compareAttribute):
1872         (attributeSetDifference):
1873         (accessibilityObjectLength):
1874         (getAccessibilityObjectForOffset):
1875         (getRunAttributesFromAccesibilityObject):
1876         (textExtents):
1877         (getSelectionOffsetsForObject):
1878         (webkitAccessibleTextInterfaceInit):
1879         (webkitAccessibleTextGetText):
1880         (webkitAccessibleTextGetTextAfterOffset):
1881         (webkitAccessibleTextGetTextAtOffset):
1882         (webkitAccessibleTextGetTextBeforeOffset):
1883         (webkitAccessibleTextGetCharacterAtOffset):
1884         (webkitAccessibleTextGetCaretOffset):
1885         (webkitAccessibleTextGetRunAttributes):
1886         (webkitAccessibleTextGetDefaultAttributes):
1887         (webkitAccessibleTextGetCharacterExtents):
1888         (webkitAccessibleTextGetRangeExtents):
1889         (webkitAccessibleTextGetCharacterCount):
1890         (webkitAccessibleTextGetOffsetAtPoint):
1891         (webkitAccessibleTextGetNSelections):
1892         (webkitAccessibleTextGetSelection):
1893         (webkitAccessibleTextAddSelection):
1894         (webkitAccessibleTextRemoveSelection):
1895         (webkitAccessibleTextSetSelection):
1896         (webkitAccessibleTextSetCaretOffset):
1897         * accessibility/gtk/WebKitAccessibleInterfaceText.h: Added.
1898
1899         Move common function selectionBelongsToObject out from the wrapper
1900         to the utility file, used from WebKitAccessibleInterfaceText.cpp.
1901
1902         * accessibility/gtk/WebKitAccessibleUtil.cpp:
1903         (selectionBelongsToObject): Taken from WebKitAccessibleWrapperAtk.cpp.
1904         * accessibility/gtk/WebKitAccessibleUtil.h:
1905         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove local
1906         implementation of selectionBelongsToObject, and the code related
1907         to the implementation of the AtkText interface.
1908         (webkit_accessible_get_name): Update call to the former function
1909         webkit_accessible_text_get_text and use the new function name.
1910         (webkit_accessible_table_get_column_description): Ditto.
1911         (webkit_accessible_table_get_row_description): Ditto.
1912
1913         Add new files to build files.
1914
1915         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceText.[h|cpp].
1916         * WebCore.gypi: Ditto.
1917
1918 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
1919
1920         [GTK] Refactor GTK's accessibilitity code to be more modular
1921         https://bugs.webkit.org/show_bug.cgi?id=76783
1922
1923         Reviewed by Martin Robinson.
1924
1925         New files for the implementation of the AtkValue interface,
1926         containing the related code from WebKitAccessibleWrapperAtk.cpp.
1927
1928         * accessibility/gtk/WebKitAccessibleInterfaceValue.cpp: Added.
1929         (core):
1930         (webkitAccessibleValueInterfaceInit):
1931         (webkitAccessibleValueGetCurrentValue):
1932         (webkitAccessibleValueGetMaximumValue):
1933         (webkitAccessibleValueGetMinimumValue):
1934         (webkitAccessibleValueSetCurrentValue):
1935         (webkitAccessibleValueGetMinimumIncrement):
1936         * accessibility/gtk/WebKitAccessibleInterfaceValue.h: Added.
1937         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove code
1938         related to the implementation of the AtkValue interface.
1939
1940         Add new files to build files.
1941
1942         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceValue.[h|cpp].
1943         * WebCore.gypi: Ditto.
1944
1945 2012-01-24  Antti Koivisto  <antti@apple.com>
1946
1947         Reduce internal use of CSSStyleDeclaration base class
1948         https://bugs.webkit.org/show_bug.cgi?id=76904
1949
1950         Reviewed by Andreas Kling.
1951
1952         Internally WebCore should use the more specific CSSMutableStyleDeclaration and CSSComputedStyleDeclaration types.
1953         The CSSStyleDeclaration base should be used in the DOM API functions only. This will make it easier to separate 
1954         internal style sheet implementation from the DOM in the future.
1955         
1956         - Switch CSSStyleDeclaration -> CSSMutableStyleDeclaration where feasible
1957         - Use StyledElement::ensureInlineStyleDecl() instead of Element::style() (which is a DOM API function)
1958         - Remove Attribute::style() which looks like a DOM API function but is not exposed.
1959
1960         * css/CSSMutableStyleDeclaration.h:
1961         (WebCore::CSSMutableStyleDeclaration::getPropertyCSSValue):
1962         * dom/Attr.h:
1963         (WebCore::Attr::style):
1964         * dom/Attribute.h:
1965         * editing/EditingStyle.cpp:
1966         (WebCore::HTMLElementEquivalent::propertyExistsInStyle):
1967         (WebCore::HTMLElementEquivalent::valueIsPresentInStyle):
1968         (WebCore::HTMLTextDecorationEquivalent::propertyExistsInStyle):
1969         (WebCore::HTMLTextDecorationEquivalent::valueIsPresentInStyle):
1970         (WebCore::HTMLAttributeEquivalent::valueIsPresentInStyle):
1971         * editing/Editor.cpp:
1972         (WebCore::Editor::applyEditingStyleToElement):
1973         * editing/markup.cpp:
1974         (WebCore::StyledMarkupAccumulator::wrapWithStyleNode):
1975         (WebCore::StyledMarkupAccumulator::appendStyleNodeOpenTag):
1976         (WebCore::propertyMissingOrEqualToNone):
1977         * inspector/InspectorCSSAgent.cpp:
1978         (WebCore::InspectorCSSAgent::buildArrayForAttributeStyles):
1979         * page/DragController.cpp:
1980         (WebCore::DragController::concludeEditDrag):
1981         * page/PageSerializer.cpp:
1982         (WebCore::PageSerializer::serializeFrame):
1983         (WebCore::PageSerializer::retrieveResourcesForCSSDeclaration):
1984         * page/PageSerializer.h:
1985         * rendering/RenderLayer.cpp:
1986         (WebCore::RenderLayer::resize):
1987         * svg/SVGStyledElement.cpp:
1988         (WebCore::SVGStyledElement::getPresentationAttribute):
1989
1990 2012-01-23  Andreas Kling  <awesomekling@apple.com>
1991
1992         Make elements that don't have attributes smaller.
1993         <http://webkit.org/b/76876>
1994
1995         Reviewed by Antti Koivisto.
1996
1997         Move the inline style declaration from StyledElement to NamedNodeMap, since having
1998         an inline style declaration also implies having a style attribute on the element.
1999         This saves one CPU word per element that has no attributes.
2000
2001         This reduces memory consumption by 412 kB (on 64-bit) when viewing the full
2002         HTML5 spec at <http://whatwg.org/c>.
2003
2004         * dom/NamedNodeMap.cpp:
2005         (WebCore::NamedNodeMap::ensureInlineStyleDecl):
2006         (WebCore::NamedNodeMap::destroyInlineStyleDecl):
2007         (WebCore::NamedNodeMap::createInlineStyleDecl):
2008         * dom/NamedNodeMap.h:
2009         (WebCore::NamedNodeMap::inlineStyleDecl):
2010         * dom/StyledElement.cpp:
2011         (WebCore::StyledElement::updateStyleAttribute):
2012         (WebCore::StyledElement::addSubresourceAttributeURLs):
2013         * dom/StyledElement.h:
2014         (WebCore::StyledElement::inlineStyleDecl):
2015         (WebCore::StyledElement::ensureInlineStyleDecl):
2016         (WebCore::StyledElement::destroyInlineStyleDecl):
2017
2018 2012-01-24  No'am Rosenthal  <noam.rosenthal@nokia.com>
2019
2020         [Qt][WK2] Qt's cross-process AC copies images excessively when updating tiles.
2021         https://bugs.webkit.org/show_bug.cgi?id=76877
2022
2023         Reviewed by Kenneth Rohde Christiansen.
2024
2025         Add BitmapTexture::updateRawContents(), which allows uploading image data to a texture
2026         without changing its format or swizzling RGB. The data has to be in the texture's native
2027         format.
2028
2029         No new tests, this affects performance on all existing tests.
2030
2031         * platform/graphics/opengl/TextureMapperGL.cpp:
2032         (WebCore::BitmapTextureGL::updateRawContents):
2033         * platform/graphics/qt/TextureMapperQt.cpp:
2034         * platform/graphics/texmap/TextureMapper.h:
2035         (WebCore::BitmapTexture::updateRawContents):
2036         * platform/graphics/texmap/TextureMapperNode.cpp:
2037         (WebCore::TextureMapperNode::setContentsTileBackBuffer):
2038         * platform/graphics/texmap/TextureMapperNode.h:
2039
2040 2012-01-24  Ilya Tikhonovsky  <loislo@chromium.org>
2041
2042         Web Inspector: inspector/debugger/dom-breakpoints.html started to fail after r105642
2043         https://bugs.webkit.org/show_bug.cgi?id=76908
2044
2045         Reviewed by Yury Semikhatsky.
2046
2047         * css/CSSMutableStyleDeclaration.cpp:
2048
2049 2012-01-24  Csaba Osztrogonác  <ossy@webkit.org>
2050
2051         [Refactoring] Make finish() of CodeGeneratorJS.pm empty
2052         https://bugs.webkit.org/show_bug.cgi?id=76846
2053
2054         Reviewed by Tor Arne Vestbø.
2055
2056         * bindings/scripts/CodeGeneratorJS.pm: Warning fix after r105683.
2057         (WriteData):
2058
2059 2012-01-24  Andras Becsi  <andras.becsi@nokia.com>
2060
2061         [Qt] Fix the build with the newes Qt5 hashes
2062         https://bugs.webkit.org/show_bug.cgi?id=76657
2063
2064         Reviewed by Simon Hausmann.
2065
2066         No new tests needed.
2067
2068         * platform/graphics/cairo/OpenGLShims.cpp:
2069         (WebCore::getProcAddress): Adopt API changes.
2070
2071 2012-01-24  Ádám Kallai  <Kallai.Adam@stud.u-szeged.hu>
2072
2073         [Qt] Incremental build problem.
2074         https://bugs.webkit.org/show_bug.cgi?id=74687
2075
2076         It is necessary to set mathattrs.in dependency for generating MathMLNames.cpp file.
2077
2078         Reviewed by Csaba Osztrogonác.
2079
2080         * DerivedSources.pri:
2081         I added missing depend.
2082
2083 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
2084
2085         [GTK] Refactor GTK's accessibilitity code to be more modular
2086         https://bugs.webkit.org/show_bug.cgi?id=76783
2087
2088         Reviewed by Martin Robinson.
2089
2090         New files for the implementation of the AtkSelection interface,
2091         containing the related code from WebKitAccessibleWrapperAtk.cpp.
2092
2093         * accessibility/gtk/WebKitAccessibleInterfaceSelection.cpp: Added.
2094         (core):
2095         (listObjectForSelection):
2096         (optionFromList):
2097         (optionFromSelection):
2098         (webkitAccessibleSelectionInterfaceInit):
2099         (webkitAccessibleSelectionAddSelection):
2100         (webkitAccessibleSelectionClearSelection):
2101         (webkitAccessibleSelectionRefSelection):
2102         (webkitAccessibleSelectionGetSelectionCount):
2103         (webkitAccessibleSelectionIsChildSelected):
2104         (webkitAccessibleSelectionRemoveSelection):
2105         (webkitAccessibleSelectionSelectAllSelection):
2106         * accessibility/gtk/WebKitAccessibleInterfaceSelection.h: Added.
2107         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove code
2108         related to the implementation of the AtkSelection interface.
2109
2110         Add new files to build files.
2111
2112         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceSelection.[h|cpp].
2113         * WebCore.gypi: Ditto.
2114
2115 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
2116
2117         [GTK] Refactor GTK's accessibilitity code to be more modular
2118         https://bugs.webkit.org/show_bug.cgi?id=76783
2119
2120         Reviewed by Martin Robinson.
2121
2122         New files for the implementation of the AtkImage interface,
2123         containing the related code from WebKitAccessibleWrapperAtk.cpp.
2124
2125         * accessibility/gtk/WebKitAccessibleInterfaceImage.cpp: Added.
2126         (core):
2127         (webkitAccessibleImageInterfaceInit):
2128         (webkitAccessibleImageGetImagePosition):
2129         (webkitAccessibleImageGetImageDescription):
2130         (webkitAccessibleImageGetImageSize):
2131         * accessibility/gtk/WebKitAccessibleInterfaceImage.h: Added.
2132         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove code
2133         related to the implementation of the AtkImage interface.
2134
2135         Add new files to build files.
2136
2137         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceImage.[h|cpp].
2138         * WebCore.gypi: Ditto.
2139
2140 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
2141
2142         [GTK] Refactor GTK's accessibilitity code to be more modular
2143         https://bugs.webkit.org/show_bug.cgi?id=76783
2144
2145         Reviewed by Martin Robinson.
2146
2147         New files for the implementation of the AtkHypertext interface,
2148         containing the related code from WebKitAccessibleWrapperAtk.cpp.
2149
2150         * accessibility/gtk/WebKitAccessibleInterfaceHypertext.cpp: Added.
2151         (core):
2152         (webkitAccessibleHypertextInterfaceInit):
2153         (webkitAccessibleHypertextGetLink):
2154         (webkitAccessibleHypertextGetNLinks):
2155         (webkitAccessibleHypertextGetLinkIndex):
2156         * accessibility/gtk/WebKitAccessibleInterfaceHypertext.h: Added.
2157         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove code
2158         related to the implementation of the AtkHypertext interface.
2159
2160         Add new files to build files.
2161
2162         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceHypertext.[h|cpp].
2163         * WebCore.gypi: Ditto.
2164
2165 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
2166
2167         [GTK] Refactor GTK's accessibilitity code to be more modular
2168         https://bugs.webkit.org/show_bug.cgi?id=76783
2169
2170         Reviewed by Martin Robinson.
2171
2172         New files for the implementation of the AtkHyperlinkImpl interface,
2173         containing the related code from WebKitAccessibleWrapperAtk.cpp.
2174
2175         * accessibility/gtk/WebKitAccessibleInterfaceHyperlinkImpl.cpp: Added.
2176         (webkitAccessibleHyperlinkImplInterfaceInit):
2177         (webkitAccessibleHyperlinkImplGetHyperlink):
2178         * accessibility/gtk/WebKitAccessibleInterfaceHyperlinkImpl.h: Added.
2179         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove code
2180         related to the implementation of the AtkHyperlinkImpl interface.
2181         (webkit_accessible_class_init):
2182
2183         Add new files to build files.
2184
2185         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceHyperlinkImpl.[h|cpp].
2186         * WebCore.gypi: Ditto.
2187
2188 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
2189
2190         [GTK] Refactor GTK's accessibilitity code to be more modular
2191         https://bugs.webkit.org/show_bug.cgi?id=76783
2192
2193         Reviewed by Martin Robinson.
2194
2195         New files for the implementation of the AtkEditableText interface,
2196         containing the related code from WebKitAccessibleWrapperAtk.cpp.
2197
2198         * accessibility/gtk/WebKitAccessibleInterfaceEditableText.cpp: Added.
2199         (core):
2200         (webkitAccessibleEditableTextInterfaceInit):
2201         (webkitAccessibleEditableTextSetRunAttributes):
2202         (webkitAccessibleEditableTextSetTextContents):
2203         (webkitAccessibleEditableTextInsertText):
2204         (webkitAccessibleEditableTextCopyText):
2205         (webkitAccessibleEditableTextCutText):
2206         (webkitAccessibleEditableTextDeleteText):
2207         (webkitAccessibleEditableTextPasteText):
2208         * accessibility/gtk/WebKitAccessibleInterfaceEditableText.h: Added.
2209         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove code
2210         related to the implementation of the AtkEditableText interface.
2211
2212         Add new files to build files.
2213
2214         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceEditableText.[h|cpp].
2215         * WebCore.gypi: Ditto.
2216
2217 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
2218
2219         [GTK] Refactor GTK's accessibilitity code to be more modular
2220         https://bugs.webkit.org/show_bug.cgi?id=76783
2221
2222         Reviewed by Martin Robinson.
2223
2224         New files for the implementation of the AtkDocument interface,
2225         containing the related code from WebKitAccessibleWrapperAtk.cpp.
2226
2227         * accessibility/gtk/WebKitAccessibleInterfaceDocument.cpp: Added.
2228         (core):
2229         (documentAttributeValue):
2230         (webkitAccessibleDocumentInterfaceInit):
2231         (webkitAccessibleDocumentGetAttributeValue):
2232         (webkitAccessibleDocumentGetAttributes):
2233         (webkitAccessibleDocumentGetLocale):
2234         * accessibility/gtk/WebKitAccessibleInterfaceDocument.h: Added.
2235
2236         Move common function addAttributeToSet() out from the wrapper to
2237         the utility file, used from WebKitAccessibleInterfaceDocument.cpp.
2238
2239         * accessibility/gtk/WebKitAccessibleUtil.cpp:
2240         (addToAtkAttributeSet): Taken from WebKitAccessibleWrapperAtk.cpp.
2241         * accessibility/gtk/WebKitAccessibleUtil.h:
2242         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove local
2243         implementation of addAttributeToSet, as well as all the code related
2244         to the implementation of the AtkDocument interface.
2245
2246         Add new files to build files.
2247
2248         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceDocument.[h|cpp].
2249         * WebCore.gypi: Ditto.
2250
2251 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
2252
2253         [GTK] Refactor GTK's accessibilitity code to be more modular
2254         https://bugs.webkit.org/show_bug.cgi?id=76783
2255
2256         Reviewed by Martin Robinson.
2257
2258         New files for the implementation of the AtkComponent interface,
2259         containing the related code from WebKitAccessibleWrapperAtk.cpp.
2260
2261         * accessibility/gtk/WebKitAccessibleInterfaceComponent.cpp: Added.
2262         (core):
2263         (atkToContents):
2264         (webkitAccessibleComponentInterfaceInit):
2265         (webkitAccessibleComponentRefAccessibleAtPoint):
2266         (webkitAccessibleComponentGetExtents):
2267         (webkitAccessibleComponentGrabFocus):
2268         * accessibility/gtk/WebKitAccessibleInterfaceComponent.h: Added.
2269
2270         Move common function contentsToAtk() out from the wrapper to the
2271         utility file, used from WebKitAccessibleInterfaceComponent.cpp.
2272
2273         * accessibility/gtk/WebKitAccessibleUtil.cpp:
2274         (contentsRelativeToAtkCoordinateType): Taken from WebKitAccessibleWrapperAtk.cpp.
2275         * accessibility/gtk/WebKitAccessibleUtil.h:
2276         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove local
2277         implementation of contentsToAtk, as well as all the code related
2278         to the implementation of the AtkComponent interface.
2279
2280         Add new files to build files.
2281
2282         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceComponent.[h|cpp].
2283         * WebCore.gypi: Ditto.
2284
2285 2012-01-24  Kentaro Hara  <haraken@chromium.org>
2286
2287         [Refactoring] Makes finish() of CodeGeneratorV8.pm empty
2288         https://bugs.webkit.org/show_bug.cgi?id=76841
2289
2290         Reviewed by Adam Barth.
2291
2292         This is one of steps to stop rebuilding .h/.cpp files
2293         generated by unchanged IDLs (bug 76836).
2294
2295         As refactoring, we are planning to remove finish() from
2296         all CodeGenerators. This patch makes finish() of
2297         CodeGeneratorV8.pm empty.
2298
2299         No new tests. No change in behavior.
2300
2301         * bindings/scripts/CodeGeneratorV8.pm:
2302         (finish): Made it empty. We will remove finish() after
2303         making finish() of all CodeGenerators empty.
2304         (GenerateInterface): Modified to call WriteData().
2305         (WriteData): Simple code refactoring.
2306         Removed if(defined $IMPL).
2307         Removed if(defined $HEADER).
2308         $IMPL -> IMPL.
2309         $HEADER -> HEADER.
2310
2311 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
2312
2313         Unreviewed build fix for GTK after r105698.
2314
2315         * bindings/js/JSPeerConnectionCustom.cpp:
2316         (WebCore::JSPeerConnectionConstructor::constructJSPeerConnection):
2317
2318 2012-01-24  Kent Tamura  <tkent@chromium.org>
2319
2320         Fix build erros on Mac by r105706.
2321         https://bugs.webkit.org/show_bug.cgi?id=76763
2322
2323         * html/canvas/WebGLRenderingContext.cpp:
2324         (WebCore::WebGLRenderingContext::compressedTexImage2D): Removed unused argument names.
2325         (WebCore::WebGLRenderingContext::compressedTexSubImage2D): ditto.
2326
2327 2012-01-23  Kent Tamura  <tkent@chromium.org>
2328
2329         Introduce RadioButtonGroup class to keep track of the group members and required state
2330         https://bugs.webkit.org/show_bug.cgi?id=74909
2331
2332         Reviewed by Darin Adler.
2333
2334         RadioButtonGroup contains a set of member radio buttons in the group,
2335         and "required" status of the group. This helps implementing correct
2336         radio button validity, and improving performance of updating validity
2337         status of radio buttons.
2338
2339         This change fixes the following bugs:
2340         - A radio button should be "required" if one of a member of the same
2341           group has the "required" attribute.
2342           https://bugs.webkit.org/show_bug.cgi?id=76365
2343         - :invalid style is not applied when a checked radio button is removed
2344           from its radio group
2345           https://bugs.webkit.org/show_bug.cgi?id=74914
2346         - Loading a page with N radio buttons in a group takes O(N^2) time.
2347
2348         Tests: fast/forms/radio/radio-live-validation-style.html
2349                perf/adding-radio-buttons.html
2350
2351         * dom/CheckedRadioButtons.cpp:
2352         (WebCore::RadioButtonGroup::isEmpty):
2353         (WebCore::RadioButtonGroup::isRequired):
2354         (WebCore::RadioButtonGroup::checkedButton):
2355         (WebCore::RadioButtonGroup::RadioButtonGroup):
2356         (WebCore::RadioButtonGroup::create):
2357         (WebCore::RadioButtonGroup::isValid):
2358         (WebCore::RadioButtonGroup::setCheckedButton):
2359         (WebCore::RadioButtonGroup::add):
2360         (WebCore::RadioButtonGroup::updateCheckedState):
2361         (WebCore::RadioButtonGroup::requiredAttributeChanged):
2362         (WebCore::RadioButtonGroup::remove):
2363         (WebCore::RadioButtonGroup::setNeedsValidityCheckForAllButtons):
2364         Add RadioButtonGroup class. It keeps track of pointers to member radio
2365         buttons and required status of the group in addition to the checked
2366         radio button pointer.
2367
2368         (WebCore::CheckedRadioButtons::CheckedRadioButtons):
2369         (WebCore::CheckedRadioButtons::~CheckedRadioButtons):
2370         Define empty constructor and destructor in order to avoid exposing
2371         RadioButtonGroup class.
2372
2373         (WebCore::CheckedRadioButtons::addButton):
2374         (WebCore::CheckedRadioButtons::updateCheckedState):
2375         (WebCore::CheckedRadioButtons::requiredAttributeChanged):
2376         (WebCore::CheckedRadioButtons::checkedButtonForGroup):
2377         (WebCore::CheckedRadioButtons::isInRequiredGroup):
2378         (WebCore::CheckedRadioButtons::removeButton):
2379         Change the HashMap member of this class so that it maps a group name to
2380         a RadioButtonGroup object. These functions just get a RadioButtonGroup
2381         object and call a corresponding member function of RadioButtonGroup.
2382
2383         * dom/CheckedRadioButtons.h: Update declarations.
2384
2385         * html/HTMLFormControlElement.cpp:
2386         (WebCore::HTMLFormControlElement::parseMappedAttribute):
2387         (WebCore::HTMLFormControlElement::requiredAttributeChanged):
2388         Move a part of parseMappedAttribute() into requiredAttributeChanged().
2389         * html/HTMLFormControlElement.h: Add requiredAttributeChanged().
2390         * html/HTMLInputElement.cpp:
2391         (WebCore::HTMLInputElement::valueMissing):
2392         Move required check code to InputType::valueMissing implementations.
2393         RadioInputType needs special handling for checking required state.
2394         readOnly() and disabled() are unnecessary because willValidate() checks them.
2395         (WebCore::HTMLInputElement::setChecked):
2396         Call new function CheckedRadioButtons::updateCheckedState() instead of
2397         removeButton() and updateCheckedRadioButtons().
2398         (WebCore::HTMLInputElement::requiredAttributeChanged):
2399         Override this to call CheckedRadioButtons::requiredAttributeChanged().
2400         * html/HTMLInputElement.h: Add requiredAttributeChanged().
2401         * html/RadioInputType.cpp:
2402         (WebCore::RadioInputType::valueMissing):
2403         Check required state by CheckedRadioButtons::isInRequiredGroup().
2404         * html/RadioInputType.h: Remove attach().
2405
2406         * html/CheckboxInputType.cpp:
2407         (WebCore::CheckboxInputType::valueMissing):
2408           Move required check from HTMLInputElement::valueMissing().
2409         * html/FileInputType.cpp:
2410         (WebCore::FileInputType::valueMissing): ditto.
2411         * html/TextFieldInputType.cpp:
2412         (WebCore::TextFieldInputType::valueMissing): ditto.
2413
2414 2012-01-24  Noel Gordon  <noel.gordon@gmail.com>
2415
2416         [chromium] PNG image with CMYK ICC color profile renders color-inverted and squashed
2417         https://bugs.webkit.org/show_bug.cgi?id=76804
2418
2419         Reviewed by Adam Barth.
2420
2421         Use color profiles for PNG images only if their embedded color profile is from an RGB
2422         color space input device.
2423
2424         Test: fast/images/rgb-png-with-cmyk-color-profile.html
2425
2426         * platform/image-decoders/ImageDecoder.h:
2427         (WebCore::ImageDecoder::rgbColorProfile): Return true if the profile has an RGB color space.
2428         (WebCore::ImageDecoder::inputDeviceColorProfile): Return true if the profile is from an input device.
2429         * platform/image-decoders/png/PNGImageDecoder.cpp:
2430         (WebCore::readColorProfile): Ignore PNG image embedded color profile unless the profile
2431         comes from an RGB color space input device.
2432         (WebCore::PNGImageDecoder::headerAvailable): Minor white-space removals courtesy Xcode.
2433
2434 2012-01-23  Pavel Podivilov  <podivilov@chromium.org>
2435
2436         Web Inspector: fix sticky DOM breakpoints.
2437         https://bugs.webkit.org/show_bug.cgi?id=64437
2438
2439         Reviewed by Yury Semikhatsky.
2440
2441         * inspector/front-end/DOMBreakpointsSidebarPane.js:
2442         (WebInspector.DOMBreakpointsSidebarPane.prototype._inspectedURLChanged):
2443
2444 2012-01-24  Gregg Tavares  <gman@google.com>
2445
2446         Expose WebGL texture compression methods on WebGLRenderingContext
2447         https://bugs.webkit.org/show_bug.cgi?id=76763
2448
2449         Reviewed by Kenneth Russell.
2450
2451         Test: fast/canvas/webgl/compressed-tex-image.html
2452
2453         * html/canvas/WebGLRenderingContext.cpp:
2454         (WebCore::WebGLRenderingContext::compressedTexImage2D):
2455         (WebCore::WebGLRenderingContext::compressedTexSubImage2D):
2456         * html/canvas/WebGLRenderingContext.h:
2457         * html/canvas/WebGLRenderingContext.idl:
2458
2459 2012-01-24  Kenichi Ishibashi  <bashi@chromium.org>
2460
2461         [V8] Add Uint8ClampedArray support
2462         https://bugs.webkit.org/show_bug.cgi?id=76803
2463
2464         Reviewed by Kenneth Russell.
2465
2466         No new tests. fast/js/script-tests/dfg-uint8clampedarray.js should pass on chromium port.
2467
2468         * WebCore.gypi: Added required files.
2469         * bindings/scripts/CodeGeneratorV8.pm:
2470         (IsTypedArrayType): Added Uint8ClampedArray.
2471         * bindings/v8/SerializedScriptValue.cpp: Added the tag for Uint8ClampedArray.
2472         (WebCore::V8ObjectMap::Writer::writeArrayBufferView): Appends the tag when buffer is Uint8ClampedArray.
2473         (WebCore::V8ObjectMap::Reader::readArrayBufferView): Creates Uint8ClampedArray instance when the tag represents Uint8ClampedArray.
2474         * bindings/v8/custom/V8ArrayBufferViewCustomScript.js:
2475         * bindings/v8/custom/V8Uint8ClampedArrayCustom.cpp: Added.
2476         (WebCore::V8Uint8ClampedArray::constructorCallback):
2477         (WebCore::V8Uint8ClampedArray::setCallback):
2478         (WebCore::toV8):
2479         * page/Crypto.cpp: Added isUnsignedByteClampedArray() call to isIntegerArray().
2480         * page/DOMWindow.idl: Removed ifdefs.
2481         * workers/WorkerContext.idl: Added Uint8ArrayConstructor.
2482
2483 2012-01-24  Ilya Tikhonovsky  <loislo@chromium.org>
2484
2485         Unreviewed build fix for GTK Debug build after r105698.
2486
2487         * bindings/js/JSNavigatorCustom.cpp:
2488         (WebCore::JSNavigator::webkitGetUserMedia):
2489
2490 2012-01-23  Scott Graham  <scottmg@chromium.org>
2491
2492         Avoid spurious rebuilds on vs2010 due to DerivedSources not existing
2493         https://bugs.webkit.org/show_bug.cgi?id=76873
2494
2495         Reviewed by Adam Barth.
2496
2497         * WebCore.gyp/WebCore.gyp:
2498
2499 2012-01-23  Geoffrey Garen  <ggaren@apple.com>
2500
2501         JSValue::toString() should return a JSString* instead of a UString
2502         https://bugs.webkit.org/show_bug.cgi?id=76861
2503
2504         Reviewed by Gavin Barraclough.
2505
2506         Mechanical changes to call value() after calling toString(), to
2507         convert from "JS string" (JSString*) to "C++ string" (UString), since
2508         toString() no longer returns a "C++ string".
2509
2510         * bindings/js/IDBBindingUtilities.cpp:
2511         (WebCore::createIDBKeyFromValue):
2512         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2513         (WebCore::JSCSSStyleDeclaration::getPropertyCSSValue):
2514         * bindings/js/JSClipboardCustom.cpp:
2515         (WebCore::JSClipboard::clearData):
2516         (WebCore::JSClipboard::getData):
2517         * bindings/js/JSCustomXPathNSResolver.cpp:
2518         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
2519         * bindings/js/JSDOMBinding.cpp:
2520         (WebCore::valueToStringWithNullCheck):
2521         (WebCore::valueToStringWithUndefinedOrNullCheck):
2522         (WebCore::reportException):
2523         * bindings/js/JSDOMFormDataCustom.cpp:
2524         (WebCore::JSDOMFormData::append):
2525         * bindings/js/JSDOMStringMapCustom.cpp:
2526         (WebCore::JSDOMStringMap::putDelegate):
2527         * bindings/js/JSDOMWindowCustom.cpp:
2528         (WebCore::JSDOMWindow::setLocation):
2529         (WebCore::JSDOMWindow::open):
2530         (WebCore::JSDOMWindow::addEventListener):
2531         (WebCore::JSDOMWindow::removeEventListener):
2532         * bindings/js/JSDeviceMotionEventCustom.cpp:
2533         (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
2534         * bindings/js/JSDeviceOrientationEventCustom.cpp:
2535         (WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):
2536         * bindings/js/JSDictionary.cpp:
2537         (WebCore::JSDictionary::convertValue):
2538         * bindings/js/JSDocumentCustom.cpp:
2539         (WebCore::JSDocument::setLocation):
2540         * bindings/js/JSEventListener.cpp:
2541         (WebCore::JSEventListener::handleEvent):
2542         * bindings/js/JSHTMLAllCollectionCustom.cpp:
2543         (WebCore::callHTMLAllCollection):
2544         (WebCore::JSHTMLAllCollection::item):
2545         (WebCore::JSHTMLAllCollection::namedItem):
2546         * bindings/js/JSHTMLCanvasElementCustom.cpp:
2547         (WebCore::JSHTMLCanvasElement::getContext):
2548         * bindings/js/JSHTMLCollectionCustom.cpp:
2549         (WebCore::JSHTMLCollection::item):
2550         (WebCore::JSHTMLCollection::namedItem):
2551         * bindings/js/JSHTMLDocumentCustom.cpp:
2552         (WebCore::documentWrite):
2553         * bindings/js/JSHTMLInputElementCustom.cpp:
2554         (WebCore::JSHTMLInputElement::setSelectionDirection):
2555         (WebCore::JSHTMLInputElement::setSelectionRange):
2556         * bindings/js/JSInspectorFrontendHostCustom.cpp:
2557         (WebCore::JSInspectorFrontendHost::showContextMenu):
2558         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
2559         (WebCore::JSJavaScriptCallFrame::evaluate):
2560         * bindings/js/JSLocationCustom.cpp:
2561         (WebCore::JSLocation::setHref):
2562         (WebCore::JSLocation::setProtocol):
2563         (WebCore::JSLocation::setHost):
2564         (WebCore::JSLocation::setHostname):
2565         (WebCore::JSLocation::setPort):
2566         (WebCore::JSLocation::setPathname):
2567         (WebCore::JSLocation::setSearch):
2568         (WebCore::JSLocation::setHash):
2569         (WebCore::JSLocation::replace):
2570         (WebCore::JSLocation::assign):
2571         * bindings/js/JSMessageEventCustom.cpp:
2572         (WebCore::handleInitMessageEvent):
2573         * bindings/js/JSSQLTransactionCustom.cpp:
2574         (WebCore::JSSQLTransaction::executeSql):
2575         * bindings/js/JSSQLTransactionSyncCustom.cpp:
2576         (WebCore::JSSQLTransactionSync::executeSql):
2577         * bindings/js/JSSharedWorkerCustom.cpp:
2578         (WebCore::JSSharedWorkerConstructor::constructJSSharedWorker):
2579         * bindings/js/JSStorageCustom.cpp:
2580         (WebCore::JSStorage::putDelegate):
2581         * bindings/js/JSWebGLRenderingContextCustom.cpp:
2582         (WebCore::JSWebGLRenderingContext::getExtension):
2583         * bindings/js/JSWebSocketCustom.cpp:
2584         (WebCore::JSWebSocketConstructor::constructJSWebSocket):
2585         (WebCore::JSWebSocket::send):
2586         (WebCore::JSWebSocket::close):
2587         * bindings/js/JSWorkerContextCustom.cpp:
2588         (WebCore::JSWorkerContext::importScripts):
2589         * bindings/js/JSWorkerCustom.cpp:
2590         (WebCore::JSWorkerConstructor::constructJSWorker):
2591         * bindings/js/JSXMLHttpRequestCustom.cpp:
2592         (WebCore::JSXMLHttpRequest::open):
2593         (WebCore::JSXMLHttpRequest::send):
2594         * bindings/js/JSXSLTProcessorCustom.cpp:
2595         (WebCore::JSXSLTProcessor::setParameter):
2596         (WebCore::JSXSLTProcessor::getParameter):
2597         (WebCore::JSXSLTProcessor::removeParameter):
2598         * bindings/js/ScheduledAction.cpp:
2599         (WebCore::ScheduledAction::create):
2600         * bindings/js/ScriptEventListener.cpp:
2601         (WebCore::eventListenerHandlerBody):
2602         * bindings/js/ScriptValue.cpp:
2603         (WebCore::ScriptValue::toString):
2604         * bindings/scripts/CodeGeneratorJS.pm:
2605         (GenerateEventListenerCall):
2606         (JSValueToNative):
2607         (GenerateConstructorDefinition):
2608         * bridge/c/c_utility.cpp:
2609         (JSC::Bindings::convertValueToNPVariant):
2610         * bridge/jni/jni_jsobject.mm:
2611         (JavaJSObject::convertValueToJObject):
2612         * bridge/jni/jsc/JNIUtilityPrivate.cpp:
2613         (JSC::Bindings::convertArrayInstanceToJavaArray):
2614         (JSC::Bindings::convertValueToJValue):
2615         * bridge/jni/jsc/JavaFieldJSC.cpp:
2616         (JavaField::dispatchValueFromInstance):
2617         (JavaField::valueFromInstance):
2618         (JavaField::dispatchSetValueToInstance):
2619         (JavaField::setValueToInstance):
2620         * bridge/jni/jsc/JavaInstanceJSC.cpp:
2621         (JavaInstance::invokeMethod):
2622         * testing/js/JSInternalsCustom.cpp:
2623         (WebCore::JSInternals::setUserPreferredLanguages):
2624
2625 2012-01-23  Kentaro Hara  <haraken@chromium.org>
2626
2627         In CodeGeneratorObjC.pm, overwrite the output .h/.mm
2628         only if the bytes differ
2629         https://bugs.webkit.org/show_bug.cgi?id=76874
2630
2631         Reviewed by Adam Barth.
2632
2633         This is one of steps to stop rebuilding .h/.cpp/.mm files
2634         generated by unchanged IDLs (bug 76836).
2635         This patch makes a change on CodeGeneratorObjC.pm so that
2636         it overwrites the output .h/.mm only if the bytes differ.
2637
2638         No tests. No change in behavior.
2639         I manually confirmed that when I add a new attribute to Element.idl,
2640         the time-stamps of unrelated DOM*.h and DOM*.mm do not change.
2641
2642         * bindings/scripts/CodeGenerator.pm:
2643         (UpdateFileIfChanged): Added. This method writes data to a file
2644         only if the data is different from the data in the current file.
2645         * bindings/scripts/CodeGeneratorObjC.pm:
2646         (WriteData): Used UpdateFileIfChanged().
2647
2648 2012-01-23  Alexey Proskuryakov  <ap@apple.com>
2649
2650         REGRESSION: Downloaded file name fallback encodings are not set correctly
2651         https://bugs.webkit.org/show_bug.cgi?id=76862
2652
2653         Reviewed by Adam Barth.
2654
2655         Tests: http/tests/download/default-encoding.html
2656                http/tests/download/form-submission-result.html
2657                http/tests/download/inherited-encoding.html
2658                http/tests/download/literal-utf-8.html
2659
2660         * loader/DocumentWriter.cpp:
2661         * loader/DocumentWriter.h:
2662         Removed deprecatedFrameEncoding. Due to changes in Document::encoding behavior, it can now
2663         be used in its place.
2664
2665         * loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest): Instead of hunting
2666         down a correct loader (and active one is not always correct any more), just use opening document's
2667         encoding.
2668
2669 2012-01-23  Ojan Vafai  <ojan@chromium.org>
2670
2671         Implement flex-pack:distribute
2672         https://bugs.webkit.org/show_bug.cgi?id=76864
2673
2674         Reviewed by Tony Chang.
2675
2676         See http://dev.w3.org/csswg/css3-flexbox/#flex-pack.
2677
2678         * css/CSSParser.cpp:
2679         (WebCore::CSSParser::parseValue):
2680         * css/CSSPrimitiveValueMappings.h:
2681         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2682         (WebCore::CSSPrimitiveValue::operator EFlexPack):
2683         * css/CSSValueKeywords.in:
2684         * rendering/RenderFlexibleBox.cpp:
2685         (WebCore::initialPackingOffset):
2686         (WebCore::packingSpaceBetweenChildren):
2687         (WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
2688         (WebCore::RenderFlexibleBox::layoutColumnReverse):
2689         * rendering/style/RenderStyleConstants.h:
2690         * rendering/style/StyleFlexibleBoxData.h:
2691
2692 2012-01-23  Luke Macpherson   <macpherson@chromium.org>
2693
2694         Implement CSS clip property in CSSStyleApplyProperty.
2695         https://bugs.webkit.org/show_bug.cgi?id=74913
2696
2697         Reviewed by Andreas Kling.
2698
2699         No new tests / refactoring only.
2700
2701         * css/CSSPrimitiveValue.h:
2702         * css/CSSPrimitiveValueMappings.h:
2703         (WebCore::CSSPrimitiveValue::convertToLength):
2704         This new function aims to provide a single call for converting many CSSPrimitiveValue
2705         values to Lengths. It is templated to allow the caller to specify which conversions
2706         are appropriate depending on the context in which the value is used.
2707         * css/CSSStyleApplyProperty.cpp:
2708         (WebCore::ApplyPropertyClip::convertToLength):
2709         (WebCore::ApplyPropertyClip::applyInheritValue):
2710         (WebCore::ApplyPropertyClip::applyInitialValue):
2711         (WebCore::ApplyPropertyClip::applyValue):
2712         (WebCore::ApplyPropertyClip::createHandler):
2713         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2714         * css/CSSStyleSelector.cpp:
2715         (WebCore::CSSStyleSelector::applyProperty):
2716
2717 2012-01-23  Tom Sepez  <tsepez@chromium.org>
2718
2719         decodeEscapeSequences() not correct for some encodings (GBK, Big5, ...).
2720         https://bugs.webkit.org/show_bug.cgi?id=71316
2721
2722         Reviewed by Daniel Bates.
2723
2724         Pass trailing unescaped bytes into the character set decoder to get correct
2725         results in the presence of encodings which re-use ASCII values in sequences.
2726         
2727         Tests: http/tests/navigation/anchor-frames-gbk.html
2728                http/tests/security/xssAuditor/iframe-onload-GBK-char.html
2729                http/tests/security/xssAuditor/img-onerror-GBK-char.html
2730                http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-16bit-unicode.html
2731                http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode.html
2732                http/tests/security/xssAuditor/script-tag-Big5-char.html
2733                http/tests/security/xssAuditor/script-tag-Big5-char2.html
2734
2735         * platform/text/DecodeEscapeSequences.h:
2736         (WebCore::Unicode16BitEscapeSequence::findInString):
2737         (WebCore::Unicode16BitEscapeSequence::findEndOfRun):
2738         (WebCore::Unicode16BitEscapeSequence::decodeRun):
2739         (WebCore::URLEscapeSequence::findInString):
2740         (WebCore::URLEscapeSequence::findEndOfRun):
2741         (WebCore::URLEscapeSequence::decodeRun):
2742         (WebCore::decodeEscapeSequences):
2743
2744 2012-01-23  Adam Barth  <abarth@webkit.org>
2745
2746         Fix a build break in a clean compile of the Chromium port (at least
2747         reported by tbreisacher).
2748
2749         * css/CSSStyleDeclaration.cpp:
2750
2751 2012-01-23  Zan Dobersek  <zandobersek@gmail.com>
2752
2753         [GTK] editing/deleting/5408255.html results are incorrect
2754         https://bugs.webkit.org/show_bug.cgi?id=53644
2755
2756         Reviewed by Martin Robinson.
2757
2758         When the WEBKIT_TOP_LEVEL environment variable is set, resources
2759         should be loaded from the source tree to which the variable is
2760         pointing. This approach is used when performing testing on the
2761         Gtk port.
2762
2763         No new tests, changes cause one test to pass.
2764
2765         * platform/graphics/gtk/ImageGtk.cpp:
2766         (getPathToImageResource): Also make changes to the resource path
2767         construction code on Windows.
2768         (WebCore::Image::loadPlatformResource):
2769
2770 2012-01-23  Julien Chaffraix  <jchaffraix@webkit.org>
2771
2772         Crash in WebCore::RenderTableSection::rowLogicalHeightChanged
2773         https://webkit.org/b/76842
2774
2775         Reviewed by Darin Adler.
2776
2777         Test: fast/table/crash-section-logical-height-changed-needsCellRecalc.html
2778
2779         The issue was that we would access our section's structure when it was dirty.
2780
2781         * rendering/RenderTableSection.cpp:
2782         (WebCore::RenderTableSection::rowLogicalHeightChanged):
2783         Bail out if we need cells recalculation as our internal structure is not up-to-date
2784         and we will recompute all the rows' heights as part of the recomputation anyway.
2785
2786 2012-01-23  Kentaro Hara  <haraken@chromium.org>
2787
2788         [Refactoring] Make finish() of CodeGeneratorJS.pm empty
2789         https://bugs.webkit.org/show_bug.cgi?id=76846
2790
2791         Reviewed by Adam Barth.
2792
2793         This is one of steps to stop rebuilding .h/.cpp files generated
2794         by unchanged IDLs (bug 76836).
2795
2796         As a refactoring, we are planning to remove finish() from all
2797         CodeGenerators. In this bug, we make finish() of CodeGeneratorJS.pm
2798         empty.
2799
2800         No new tests. No change in behavior.
2801
2802         * bindings/scripts/CodeGeneratorJS.pm:
2803         (finish): Made it empty. We will remove finish() after
2804         making finish() of all CodeGenerators empty.
2805         (GenerateInterface): Modified to call WriteData().
2806         (WriteData): Simple code refactoring.
2807         Removed if(defined $IMPL).
2808         Removed if(defined $HEADER).
2809         Removed if(defined $DEPS).
2810         $IMPL -> IMPL.
2811         $HEADER -> HEADER.
2812         $DEPS -> DEPS.
2813
2814 2012-01-23  Shawn Singh  <shawnsingh@chromium.org>
2815
2816         [chromium] updateRect is incorrect when contentBounds != bounds
2817         https://bugs.webkit.org/show_bug.cgi?id=72919
2818
2819         Reviewed by James Robinson.
2820
2821         Unit test added to TiledLayerChromiumTest.cpp
2822
2823         The m_updateRect member in LayerChromium types is used to track
2824         what was painted for that layer. For tiled layers (especially
2825         image layers), the updateRect was being given with respect to the
2826         size of the content, rather than the size of the layer. This patch
2827         adds a conversion so that updateRect is always with respect to the
2828         layer size, so that damage tracking will work correctly in those
2829         cases.
2830
2831         * platform/graphics/chromium/LayerChromium.h:
2832         * platform/graphics/chromium/TiledLayerChromium.cpp:
2833         (WebCore::TiledLayerChromium::updateCompositorResources):
2834
2835 2012-01-23  Konrad Piascik  <kpiascik@rim.com>
2836
2837         Web Inspector: Make "Copy as HTML" use the same copy functions as other copy methods.
2838         https://bugs.webkit.org/show_bug.cgi?id=76706
2839
2840         Reviewed by Pavel Feldman.
2841
2842         Changed DOMAgent.copyNode to call getOuterHTML and use the callback function to
2843         return the text to InspectorFrontendHost.copyText.  This will make all copy
2844         functions use the same code path.
2845
2846         Not testable.
2847
2848         * inspector/Inspector.json:
2849         * inspector/InspectorDOMAgent.cpp:
2850         * inspector/InspectorDOMAgent.h:
2851         * inspector/front-end/DOMAgent.js:
2852         (WebInspector.DOMNode.prototype.copyNode.copy):
2853         (WebInspector.DOMNode.prototype.copyNode):
2854
2855 2012-01-23  Luke Macpherson   <macpherson@chromium.org>
2856
2857         Make zoom multiplier float instead of double to match RenderStyle::effectiveZoom etc. and thus avoid unnecessary precision conversions.
2858         https://bugs.webkit.org/show_bug.cgi?id=69490
2859
2860         Reviewed by Andreas Kling.
2861
2862         Covered by existing tests.
2863
2864         * css/CSSPrimitiveValue.cpp:
2865         (WebCore::CSSPrimitiveValue::computeLength):
2866         Use float multiplier instead of double.
2867         (WebCore::CSSPrimitiveValue::computeLengthDouble):
2868         Use float multiplier instead of double.
2869         * css/CSSPrimitiveValue.h:
2870         Change type signatures of computeLength template prototype.
2871
2872 2012-01-23  Priit Laes  <plaes@plaes.org>
2873
2874         [GTK][PATCH] More build silencing with (AM_V_...)
2875         https://bugs.webkit.org/show_bug.cgi?id=76791
2876
2877         Reviewed by Gustavo Noronha Silva.
2878
2879         * GNUmakefile.am: Silence is golden...
2880
2881 2012-01-23  Arko Saha  <nghq36@motorola.com>
2882
2883         MicroData: Remove ExceptionCode& from setAttribute() call.
2884         https://bugs.webkit.org/show_bug.cgi?id=76695
2885
2886         Reviewed by Hajime Morita.
2887
2888         Changeset http://trac.webkit.org/changeset/103296 removed unused
2889         ExceptionCode& argument from Element::setAttribute(QualifiedName).
2890         Hence updating all calls to setAttribute() method in MicroData code.
2891
2892         * html/HTMLAnchorElement.cpp:
2893         (WebCore::HTMLAnchorElement::setItemValueText):
2894         * html/HTMLAreaElement.cpp:
2895         (WebCore::HTMLAreaElement::setItemValueText):
2896         * html/HTMLEmbedElement.cpp:
2897         (WebCore::HTMLEmbedElement::setItemValueText):
2898         * html/HTMLIFrameElement.cpp:
2899         (WebCore::HTMLIFrameElement::setItemValueText):
2900         * html/HTMLImageElement.cpp:
2901         (WebCore::HTMLImageElement::setItemValueText):
2902         * html/HTMLLinkElement.cpp:
2903         (WebCore::HTMLLinkElement::setItemValueText):
2904         * html/HTMLMediaElement.cpp:
2905         (WebCore::HTMLMediaElement::setItemValueText):
2906         * html/HTMLMetaElement.cpp:
2907         (WebCore::HTMLMetaElement::setItemValueText):
2908         * html/HTMLObjectElement.cpp:
2909         (WebCore::HTMLObjectElement::setItemValueText):
2910         * html/HTMLSourceElement.cpp:
2911         (WebCore::HTMLSourceElement::setItemValueText):
2912         * html/HTMLTrackElement.cpp:
2913         (WebCore::HTMLTrackElement::setItemValueText):
2914
2915 2012-01-23  Hayato Ito  <hayato@chromium.org>
2916
2917         Fix crash when a focused node is removed while in processing focusin event.
2918         https://bugs.webkit.org/show_bug.cgi?id=76656
2919
2920         Reviewed by Dimitri Glazkov.
2921
2922         Test: fast/events/focus-remove-focuesed-node.html
2923
2924         * dom/Document.cpp:
2925         (WebCore::Document::setFocusedNode):
2926
2927 2012-01-23  David Levin  <levin@chromium.org>
2928
2929         [windows] Convert usages of GetDC to HWndDC Part 1.
2930         https://bugs.webkit.org/show_bug.cgi?id=76744
2931
2932         Reviewed by Adam Roben.
2933
2934         No new functionality so no new tests.
2935
2936         * platform/graphics/win/FontCacheWin.cpp:
2937         (WebCore::FontCache::getFontDataForCharacters): Changed GetDC to HWndDC
2938         and removed ReleaseDC.
2939         (WebCore::createGDIFont): Ditto.
2940         (WebCore::FontCache::getTraitsInFamily): Ditto.
2941         * platform/graphics/win/FontPlatformDataWin.cpp:
2942         (WebCore::FontPlatformData::FontPlatformData): Ditto.
2943         * platform/graphics/win/SimpleFontDataCGWin.cpp:
2944         (WebCore::SimpleFontData::platformInit): Ditto.
2945         * platform/graphics/win/SimpleFontDataWin.cpp:
2946         (WebCore::SimpleFontData::initGDIFont): Ditto.
2947         (WebCore::SimpleFontData::containsCharacters): Ditto.
2948         (WebCore::SimpleFontData::determinePitch): Ditto.
2949         (WebCore::SimpleFontData::boundsForGDIGlyph): Ditto.
2950         (WebCore::SimpleFontData::widthForGDIGlyph): Ditto.
2951         (WebCore::SimpleFontData::scriptFontProperties): Ditto.
2952         * platform/win/CursorWin.cpp:
2953         (WebCore::createSharedCursor): Ditto.
2954         * platform/win/DragImageCGWin.cpp:
2955         (WebCore::scaleDragImage): Ditto.
2956         (WebCore::createDragImageFromImage): Ditto.
2957         * platform/win/DragImageWin.cpp:
2958         (WebCore::createDragImageForLink): Ditto.
2959         * platform/win/PasteboardWin.cpp:
2960         (WebCore::Pasteboard::writeImage): Ditto.
2961
2962 2012-01-23  Martin Robinson  <mrobinson@igalia.com>
2963
2964         [GTK] Scrollbars do not respect the has-backward-stepper and has-forward-stepper properties
2965         https://bugs.webkit.org/show_bug.cgi?id=76747
2966
2967         Reviewed by Gustavo Noronha Silva.
2968
2969         No new tests. Regressions are covered by existing tests, but testing
2970         different GTK+ theme configurations is not possible yet.
2971
2972         * platform/gtk/ScrollbarThemeGtk.cpp:
2973         (WebCore::ScrollbarThemeGtk::backButtonRect): If there is no back stepper, return an empty rect.
2974         (WebCore::ScrollbarThemeGtk::forwardButtonRect): If there is no forward stepper, return an empty rect.
2975         (WebCore::ScrollbarThemeGtk::trackRect): Adjust track rect calculation to account for when there is
2976         no steppers.
2977         * platform/gtk/ScrollbarThemeGtk.h: New members describing whether there are primary steppers.
2978         * platform/gtk/ScrollbarThemeGtk2.cpp:
2979         (WebCore::ScrollbarThemeGtk::updateThemeProperties): Look at the theme to determine if there
2980         are primary foward and back steppers.
2981         * platform/gtk/ScrollbarThemeGtk3.cpp:
2982         (WebCore::ScrollbarThemeGtk::updateThemeProperties): Ditto.
2983
2984 2012-01-23  Ryosuke Niwa  <rniwa@webkit.org>
2985
2986         REGRESSION(r105396): drag state is not cleared after each drag
2987         https://bugs.webkit.org/show_bug.cgi?id=76878
2988
2989         Reviewed by Alexey Proskuryakov.
2990
2991         Revert a part of r105396 that made performDragAndDrop not call clearDragState
2992         when the default action was not prevented since it caused a regression.
2993
2994         I'm pretty certain always calling clearDragState in performDragAndDrop is wrong
2995         but I can't think of a test case where this becomes a problem at the moment.
2996         Since this area is not well tested, revert the change instead of making further
2997         changes to the code base.
2998
2999         Tests: fast/events/clear-drag-state.html
3000                fast/events/clear-edit-drag-state.html
3001
3002         * page/EventHandler.cpp:
3003         (WebCore::EventHandler::performDragAndDrop):
3004
3005 2012-01-23  Thiago Marcos P. Santos  <tmpsantos@gmail.com>
3006
3007         Fixed typo in exception messages
3008         https://bugs.webkit.org/show_bug.cgi?id=76710
3009
3010         Reviewed by Alexey Proskuryakov.
3011
3012         * dom/DOMCoreException.cpp:
3013         * fileapi/FileException.cpp:
3014         * storage/SQLTransaction.cpp:
3015         (WebCore::SQLTransaction::openTransactionAndPreflight):
3016         (WebCore::SQLTransaction::postflightAndCommit):
3017         * xml/XMLHttpRequestException.cpp:
3018
3019 2012-01-18  David Levin  <levin@chromium.org>
3020
3021         Allow delayed DC allocation in HWndDC.
3022         https://bugs.webkit.org/show_bug.cgi?id=76737
3023
3024         Reviewed by Adam Roben.
3025
3026         No new functionality exposed so no new tests.
3027
3028         * platform/win/HWndDC.h: Changed this slightly to allow
3029         for allocating a window DC after the initial creation since
3030         this pattern occurrs in several places so this makes it easy to
3031         replace them in an upcoming change.
3032         (WebCore::HWndDC::HWndDC):
3033         (WebCore::HWndDC::~HWndDC):
3034         (WebCore::HWndDC::setHWnd):
3035         (WebCore::HWndDC::clear):
3036
3037 2012-01-23  Arko Saha  <nghq36@motorola.com>
3038
3039         MicroData: Compilation error while building Webkit with --microdata.
3040         https://bugs.webkit.org/show_bug.cgi?id=76703
3041
3042         Reviewed by Hajime Morita.
3043
3044         * dom/MicroDataItemList.cpp:
3045         (WebCore::MicroDataItemList::MicroDataItemList):
3046         (WebCore::MicroDataItemList::~MicroDataItemList):
3047         * dom/MicroDataItemList.h:
3048         * dom/NodeRareData.h:
3049         (WebCore::NodeRareData::properties):
3050         * html/HTMLPropertiesCollection.cpp:
3051         (WebCore::HTMLPropertiesCollection::create):
3052         (WebCore::HTMLPropertiesCollection::HTMLPropertiesCollection):
3053         * html/HTMLPropertiesCollection.h:
3054
3055 2012-01-13  David Levin  <levin@chromium.org>
3056
3057         [chromium] Convert uses of GetDC to HWndDC.
3058         https://bugs.webkit.org/show_bug.cgi?id=76290
3059
3060         Reviewed by Dmitry Titov.
3061
3062         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
3063         (WebCore::createFontIndirectAndGetWinName):
3064         (WebCore::fontContainsCharacter):
3065         (WebCore::FontCache::getLastResortFallbackFont):
3066         (WebCore::FontCache::getTraitsInFamily):
3067         * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
3068         (WebCore::FontPlatformData::scriptFontProperties):
3069         * platform/graphics/chromium/FontUtilsChromiumWin.cpp:
3070         (WebCore::FontMap::getAscent):
3071         (WebCore::FontMap::getSpaceGlyph):
3072         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
3073         (WebCore::fillBMPGlyphs):
3074         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
3075         (WebCore::SimpleFontData::platformInit):
3076         (WebCore::SimpleFontData::determinePitch):
3077         (WebCore::SimpleFontData::platformWidthForGlyph):
3078         * platform/graphics/chromium/UniscribeHelper.cpp:
3079         (WebCore::UniscribeHelper::EnsureCachedDCCreated):
3080         * rendering/RenderThemeChromiumWin.cpp:
3081         (WebCore::systemFontSize):
3082         (WebCore::pointsToPixels):
3083
3084 2012-01-23  Joe Thomas  <joethomas@motorola.com>
3085
3086         https://bugs.webkit.org/show_bug.cgi?id=75799
3087         Calling intersectsNode on a detached range should throw.
3088
3089         INVALID_STATE_ERR exception should be thrown if intersectsNode is called on a detached Range.
3090
3091         Reviewed by Darin Adler.
3092
3093         Test: fast/dom/Range/range-intersectsNode-exception.html
3094
3095         * dom/Range.cpp:
3096         (WebCore::Range::intersectsNode): Throwing INVALID_STATE_ERR exception if the range is detached.
3097
3098 2012-01-23  Daniel Cheng  <dcheng@chromium.org>
3099
3100         Convert DataTransferItem/DataTransferItemList back into an interface class
3101         https://bugs.webkit.org/show_bug.cgi?id=76856
3102
3103         When Qt implemented the DataTransferItemList, a lot of logic was moved into the shared
3104         classes since Chromium/Qt happened to implement it the same way. Now that I want to do some
3105         refactoring/cleanup work to better implement DataTransferItemList in Chromium, we won't
3106         share the same data anymore so it doesn't make sense to keep that code in a common location.
3107
3108         Reviewed by David Levin.
3109
3110         Covered by existing tests.
3111
3112         * CMakeLists.txt:
3113         * GNUmakefile.list.am:
3114         * Target.pri:
3115         * WebCore.gypi:
3116         * WebCore.vcproj/WebCore.vcproj:
3117         * WebCore.xcodeproj/project.pbxproj:
3118         * dom/DataTransferItem.cpp:
3119         * dom/DataTransferItem.h:
3120         * dom/DataTransferItemList.cpp: Removed.
3121         * dom/DataTransferItemList.h:
3122         * platform/chromium/ClipboardChromium.cpp:
3123         (WebCore::ClipboardChromium::mayUpdateItems):
3124         * platform/chromium/DataTransferItemChromium.cpp:
3125         (WebCore::DataTransferItemChromium::create):
3126         (WebCore::DataTransferItemChromium::DataTransferItemChromium):
3127         (WebCore::DataTransferItemChromium::getAsString):
3128         (WebCore::DataTransferItemChromium::getAsFile):
3129         (WebCore::DataTransferItemChromium::clipboardChromium):
3130         * platform/chromium/DataTransferItemChromium.h:
3131         (WebCore::DataTransferItemChromium::kind):
3132         (WebCore::DataTransferItemChromium::type):
3133         * platform/chromium/DataTransferItemListChromium.cpp:
3134         (WebCore::DataTransferItemListChromium::DataTransferItemListChromium):
3135         * platform/chromium/DataTransferItemListChromium.h:
3136         * platform/qt/DataTransferItemListQt.cpp:
3137         (WebCore::DataTransferItemListQt::DataTransferItemListQt):
3138         (WebCore::DataTransferItemListQt::length):
3139         (WebCore::DataTransferItemListQt::item):
3140         (WebCore::DataTransferItemListQt::deleteItem):
3141         (WebCore::DataTransferItemListQt::clear):
3142         (WebCore::DataTransferItemListQt::add):
3143         * platform/qt/DataTransferItemListQt.h:
3144         * platform/qt/DataTransferItemQt.cpp:
3145         (WebCore::DataTransferItemQt::create):
3146         (WebCore::DataTransferItemQt::DataTransferItemQt):
3147         (WebCore::DataTransferItemQt::getAsString):
3148         (WebCore::DataTransferItemQt::getAsFile):
3149         * platform/qt/DataTransferItemQt.h:
3150         (WebCore::DataTransferItemQt::kind):
3151         (WebCore::DataTransferItemQt::type):
3152
3153 2012-01-23  Andreas Kling  <awesomekling@apple.com>
3154
3155         Unreviewed buildfix for ENABLE(MUTATION_OBSERVERS) following r105642.
3156
3157         * css/CSSMutableStyleDeclaration.cpp:
3158
3159 2012-01-23  Philip Rogers  <pdr@google.com>
3160
3161         Update uniteIfNonZero to use isZero.
3162         https://bugs.webkit.org/show_bug.cgi?id=76637
3163
3164         Reviewed by Darin Adler.
3165
3166         No new tests. (I found no existing codepath that would be affected by
3167         this change but I think this change is still valuable in preventing
3168         future bugs.)
3169
3170         * platform/graphics/FloatRect.cpp:
3171         (WebCore::FloatRect::uniteIfNonZero):
3172
3173         The following change is a minor followup to
3174         https://bugs.webkit.org/show_bug.cgi?id=76177#c12 and is not directly
3175         related to the rest of this patch.
3176         * rendering/svg/SVGRenderSupport.cpp:
3177         (WebCore::SVGRenderSupport::computeContainerBoundingBoxes):
3178
3179 2012-01-23  Antti Koivisto  <antti@apple.com>
3180
3181         Eliminate CSSElementStyleDeclaration
3182         https://bugs.webkit.org/show_bug.cgi?id=76848
3183
3184         Reviewed by Andreas Kling.
3185
3186         CSSElementStyleDeclaration has little functionality. It can merge with CSSMutableStyleDeclaration simplifying the code.
3187         
3188         Having an element parent is mutually exclusive with having a css rule parent. We can keep them in a union. This also
3189         shrinks all inline style declarations by one pointer.
3190
3191         * CMakeLists.txt:
3192         * GNUmakefile.list.am:
3193         * Target.pri:
3194         * WebCore.gypi:
3195         * WebCore.vcproj/WebCore.vcproj:
3196         * WebCore.xcodeproj/project.pbxproj:
3197         * bindings/js/JSDOMBinding.h:
3198         (WebCore::root):
3199         * css/CSSAllInOne.cpp:
3200         * css/CSSElementStyleDeclaration.cpp: Removed.
3201         * css/CSSElementStyleDeclaration.h: Removed.
3202         * css/CSSMutableStyleDeclaration.cpp:
3203         (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):
3204         * css/CSSMutableStyleDeclaration.h:
3205         (WebCore::CSSMutableStyleDeclaration::createInline):
3206         (WebCore::CSSMutableStyleDeclaration::createForSVGFontFaceElement):
3207         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
3208         * css/CSSStyleDeclaration.cpp:
3209         (WebCore::CSSStyleDeclaration::CSSStyleDeclaration):
3210         (WebCore::CSSStyleDeclaration::parentStyleSheet):
3211         
3212             Merge the CSSElementStyleDeclaration::styleSheet() logic here.
3213         
3214         * css/CSSStyleDeclaration.h:
3215         (WebCore::CSSStyleDeclaration::parentRule):
3216         (WebCore::CSSStyleDeclaration::clearParentRule):
3217         (WebCore::CSSStyleDeclaration::parentElement):
3218         (WebCore::CSSStyleDeclaration::clearParentElement):
3219         * css/CSSStyleRule.cpp:
3220         (WebCore::CSSStyleRule::setSelectorText):
3221         
3222             CSSStyleRule's style declaration can't have isElementStyleDeclaration set, the dead code can be removed.
3223             This is asserted in setDeclaration() and again implicitly in the destructor (by clearParentRule()).
3224         
3225         * dom/StyledElement.cpp:
3226         (WebCore::StyledElement::createInlineStyleDecl):
3227         (WebCore::StyledElement::destroyInlineStyleDecl):
3228         (WebCore::StyledElement::ensureInlineStyleDecl):
3229         (WebCore::StyledElement::copyNonAttributeProperties):
3230         * dom/StyledElement.h:
3231         (WebCore::StyledElement::inlineStyleDecl):
3232         * editing/ApplyStyleCommand.cpp:
3233         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
3234         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
3235         * editing/DeleteButtonController.cpp:
3236         (WebCore::DeleteButtonController::createDeletionUI):
3237         * html/ValidationMessage.cpp:
3238         (WebCore::adjustBubblePosition):
3239         * html/shadow/MediaControlElements.cpp:
3240         (WebCore::MediaControlPanelElement::setPosition):
3241         (WebCore::MediaControlPanelElement::resetPosition):
3242         (WebCore::MediaControlPanelElement::makeOpaque):
3243         (WebCore::MediaControlPanelElement::makeTransparent):
3244         * html/shadow/SliderThumbElement.cpp:
3245         (WebCore::TrackLimiterElement::create):
3246         * svg/SVGFontFaceElement.cpp:
3247         (WebCore::SVGFontFaceElement::SVGFontFaceElement):
3248
3249 2012-01-23  Benjamin Poulain  <bpoulain@apple.com>
3250
3251         Use OVERRIDE for PopupMenuClient's implementations
3252         https://bugs.webkit.org/show_bug.cgi?id=76774
3253
3254         Reviewed by Darin Adler.
3255
3256         * rendering/RenderMenuList.h: Also sort the methods to the same
3257         order as PopupMenuClient.
3258         * rendering/RenderTextControlSingleLine.h:
3259
3260 2012-01-23  Xianzhu Wang  <wangxianzhu@chromium.org>
3261
3262         Basic enhancements to StringBuilder
3263         https://bugs.webkit.org/show_bug.cgi?id=67081
3264
3265         These changes are because we explicitly disallowed StringBuilder's
3266         copy constructor and assignment operator, and the change of return
3267         type of StringBuilder::toString().
3268
3269         Reviewed by Darin Adler.
3270
3271         No new tests. All layout tests and unit tests should run as before.
3272
3273         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
3274         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpCookiesForQuickTime):
3275         * svg/SVGPathStringBuilder.h:
3276         (WebCore::SVGPathStringBuilder::cleanup):
3277
3278 2012-01-23  W. James MacLean  <wjmaclean@chromium.org>
3279
3280         [chromium] Add WebSolidColorLayer interface to draw non-textured color layers from Aura.
3281         https://bugs.webkit.org/show_bug.cgi?id=75732
3282
3283         Reviewed by James Robinson.
3284
3285         Add WebSolidColorLayer to paint solid-color layers without a backing texture.
3286
3287         Test: unit test for CCSolidColorLayerImpl.
3288
3289         * WebCore.gypi:
3290         * platform/graphics/chromium/SolidColorLayerChromium.cpp: Added.
3291         (WebCore::SolidColorLayerChromium::createCCLayerImpl):
3292         (WebCore::SolidColorLayerChromium::create):
3293         (WebCore::SolidColorLayerChromium::SolidColorLayerChromium):
3294         (WebCore::SolidColorLayerChromium::~SolidColorLayerChromium):
3295         * platform/graphics/chromium/SolidColorLayerChromium.h: Added.
3296         * platform/graphics/chromium/cc/CCSolidColorLayerImpl.cpp: Added.
3297         (WebCore::CCSolidColorLayerImpl::CCSolidColorLayerImpl):
3298         (WebCore::CCSolidColorLayerImpl::~CCSolidColorLayerImpl):
3299         (WebCore::CCSolidColorLayerImpl::quadTransform):
3300         (WebCore::CCSolidColorLayerImpl::appendQuads):
3301         * platform/graphics/chromium/cc/CCSolidColorLayerImpl.h: Added.
3302         (WebCore::CCSolidColorLayerImpl::create):
3303         (WebCore::CCSolidColorLayerImpl::layerTypeAsString):
3304
3305 2012-01-23  Antti Koivisto  <antti@apple.com>
3306
3307         Attempt to fix Qt build.
3308     
3309         Not reviewed.
3310
3311         * css/CSSElementStyleDeclaration.cpp:
3312         * css/CSSElementStyleDeclaration.h:
3313         (WebCore::CSSElementStyleDeclaration::createForSVGFontFaceElement):
3314
3315 2012-01-23  Andreas Kling  <awesomekling@apple.com>
3316
3317         Move m_rootEditableElementForSelectionOnMouseDown off of HTMLAnchorElement.
3318         <http://webkit.org/b/76833>
3319
3320         Reviewed by Antti Koivisto.
3321
3322         Move HTMLAnchorElement::m_rootEditableElementForSelectionOnMouseDown to a rare
3323         data-style hashmap, effectively shrinking HTMLAnchorElement by one CPU word.
3324
3325         The pointer is only used during interactive event handling, so it shouldn't have
3326         any noticeable effects on web performance.
3327
3328         This reduces memory consumption by 256 kB (on 64-bit) when viewing the full
3329         HTML5 spec at <http://whatwg.org/c>.
3330
3331         * html/HTMLAnchorElement.cpp:
3332         (WebCore::HTMLAnchorElement::HTMLAnchorElement):
3333         (WebCore::HTMLAnchorElement::~HTMLAnchorElement):
3334         (WebCore::HTMLAnchorElement::defaultEventHandler):
3335         (WebCore::HTMLAnchorElement::treatLinkAsLiveForEventType):
3336         (WebCore::rootEditableElementMap):
3337         (WebCore::HTMLAnchorElement::rootEditableElementForSelectionOnMouseDown):
3338         (WebCore::HTMLAnchorElement::setRootEditableElementForSelectionOnMouseDown):
3339         * html/HTMLAnchorElement.h:
3340
3341 2012-01-23  Antti Koivisto  <antti@apple.com>
3342
3343         Eliminate CSSElementStyleDeclaration subclasses
3344         https://bugs.webkit.org/show_bug.cgi?id=76827
3345
3346         Reviewed by Andreas Kling.
3347
3348         CSSInlineStyleDeclaration and FontFaceStyleDeclaration serve no real purpose.
3349
3350         * GNUmakefile.list.am:
3351         * Target.pri:
3352         * WebCore.gypi:
3353         * WebCore.vcproj/WebCore.vcproj:
3354         * WebCore.xcodeproj/project.pbxproj:
3355         * css/CSSElementStyleDeclaration.cpp:
3356         (WebCore::CSSElementStyleDeclaration::createForSVGFontFaceElement):
3357         (WebCore::CSSElementStyleDeclaration::styleSheet):
3358         * css/CSSElementStyleDeclaration.h:
3359         (WebCore::CSSElementStyleDeclaration::createInline):
3360         (WebCore::toCSSElementStyleDeclaration):
3361         * css/CSSInlineStyleDeclaration.h: Removed.
3362         * css/CSSMutableStyleDeclaration.cpp:
3363         * dom/StyledElement.cpp:
3364         (WebCore::StyledElement::createInlineStyleDecl):
3365         (WebCore::StyledElement::ensureInlineStyleDecl):
3366         (WebCore::StyledElement::copyNonAttributeProperties):
3367         * dom/StyledElement.h:
3368         (WebCore::StyledElement::inlineStyleDecl):
3369         * editing/ApplyStyleCommand.cpp:
3370         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
3371         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
3372         * editing/DeleteButtonController.cpp:
3373         (WebCore::DeleteButtonController::createDeletionUI):
3374         * html/ValidationMessage.cpp:
3375         (WebCore::adjustBubblePosition):
3376         * html/shadow/MediaControlElements.cpp:
3377         (WebCore::MediaControlPanelElement::setPosition):
3378         (WebCore::MediaControlPanelElement::resetPosition):
3379         (WebCore::MediaControlPanelElement::makeOpaque):
3380         (WebCore::MediaControlPanelElement::makeTransparent):
3381         * html/shadow/SliderThumbElement.cpp:
3382         (WebCore::TrackLimiterElement::create):
3383         * svg/SVGFontFaceElement.cpp:
3384         (WebCore::SVGFontFaceElement::SVGFontFaceElement):
3385
3386 2012-01-23  Pavel Feldman  <pfeldman@google.com>
3387
3388         Not reviewed: annotate inspector's js so that it compiled.
3389
3390         * inspector/front-end/ElementsTreeOutline.js:
3391         * inspector/front-end/TextPrompt.js:
3392         (WebInspector.TextPrompt.SuggestBox.prototype.upKeyPressed):
3393         (WebInspector.TextPrompt.SuggestBox.prototype.downKeyPressed):
3394
3395 2012-01-23  Philippe Normand  <pnormand@igalia.com>
3396
3397         [GStreamer] fix WebAudio build after r105431
3398         https://bugs.webkit.org/show_bug.cgi?id=76819
3399
3400         Reviewed by Martin Robinson.
3401
3402         * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
3403         (WebCore::copyGstreamerBuffersToAudioChannel): Use mutableData()
3404         when copying.
3405         * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
3406         (webKitWebAudioSrcLoop): Drop constness when setting the buffer
3407         data pointer.
3408
3409 2012-01-23  Pavel Feldman  <pfeldman@google.com>
3410
3411         Web Inspector: add touch events to the event listeners list.
3412         https://bugs.webkit.org/show_bug.cgi?id=76830
3413
3414         Reviewed by Yury Semikhatsky.
3415
3416         * English.lproj/localizedStrings.js:
3417         * inspector/InjectedScriptSource.js:
3418         (.):
3419         * inspector/front-end/BreakpointsSidebarPane.js:
3420         (WebInspector.EventListenerBreakpointsSidebarPane):
3421
3422 2012-01-23  Pavel Feldman  <pfeldman@google.com>
3423
3424         Web Inspector: inspector close button is missing in the dock-to-right mode.
3425         https://bugs.webkit.org/show_bug.cgi?id=76829
3426
3427         Reviewed by Timothy Hatcher.
3428
3429         * inspector/front-end/inspector.js:
3430         (WebInspector.set attached):
3431         (WebInspector.get _setCompactMode):
3432
3433 2012-01-23  Vsevolod Vlasov  <vsevik@chromium.org>
3434
3435         Web Inspector: IndexedDBModel should keep track of requests sent to the backend.
3436         https://bugs.webkit.org/show_bug.cgi?id=76705
3437
3438         Reviewed by Pavel Feldman.
3439
3440         * inspector/Inspector.json:
3441         * inspector/InspectorIndexedDBAgent.cpp:
3442         (WebCore::InspectorIndexedDBAgent::requestDatabaseNamesForFrame):
3443         * inspector/InspectorIndexedDBAgent.h:
3444         * inspector/front-end/IndexedDBModel.js:
3445         (WebInspector.IndexedDBModel):
3446         (WebInspector.IndexedDBModel.prototype._frameDetached):
3447         (WebInspector.IndexedDBModel.prototype._reset):
3448         (WebInspector.IndexedDBModel.prototype._loadDatabaseNamesForFrame):
3449         (WebInspector.IndexedDBRequestManager):
3450         (WebInspector.IndexedDBRequestManager.prototype.requestDatabaseNamesForFrame.innerCallback):
3451         (WebInspector.IndexedDBRequestManager.prototype.requestDatabaseNamesForFrame):
3452         (WebInspector.IndexedDBRequestManager.prototype._databaseNamesLoaded):
3453         (WebInspector.IndexedDBRequestManager.prototype._requestId):
3454         (WebInspector.IndexedDBRequestManager.prototype._frameDetached):
3455         (WebInspector.IndexedDBRequestManager.prototype._reset):
3456         (WebInspector.IndexedDBRequestManager.DatabasesForFrameRequest):
3457         (WebInspector.IndexedDBDispatcher):
3458         (WebInspector.IndexedDBDispatcher.prototype.databaseNamesLoaded):
3459
3460 2012-01-23  Pavel Feldman  <pfeldman@google.com>
3461
3462         Web Inspector: Inspecting an element inside an iframe no longer works
3463         https://bugs.webkit.org/show_bug.cgi?id=76808
3464
3465         Reviewed by Timothy Hatcher.
3466
3467         Test: http/tests/inspector/inspect-element.html
3468
3469         * inspector/InspectorDOMAgent.cpp:
3470         (WebCore::InspectorDOMAgent::innerParentNode):
3471         * inspector/front-end/DOMAgent.js:
3472         (WebInspector.DOMNode.prototype.getChildNodes.mycallback):
3473         (WebInspector.DOMNode.prototype.getChildNodes):
3474         (WebInspector.DOMNode.prototype._setChildrenPayload):
3475         * inspector/front-end/ElementsTreeOutline.js:
3476         (WebInspector.ElementsTreeOutline.prototype._selectedNodeChanged):
3477
3478 2012-01-23  Andrey Kosyakov  <caseq@chromium.org>
3479
3480         Web Inspector: response.bodySize in HAR is invalid (negative) for cached resources
3481         https://bugs.webkit.org/show_bug.cgi?id=76823
3482
3483         Reviewed by Yury Semikhatsky.
3484
3485         - fix response.bodySize for cached resources;
3486         Also some drive-by fixes:
3487         - pretty-print HAR when exported
3488         - proper annotation for JSON.stringify()
3489         - de-obfuscate a piece of code in TimelinePanel
3490
3491         * inspector/front-end/HAREntry.js:
3492         (WebInspector.HAREntry.prototype.get responseBodySize):
3493         * inspector/front-end/NetworkPanel.js:
3494         (WebInspector.NetworkLogView.prototype._exportAll):