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